:root{--paper:#fff;--ink:#242424;--muted:#777;--line:#e4e4e1;--accent:#66564d;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:'Montserrat',Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}button:disabled{cursor:default}::selection{background:#e5ded6}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #66564d;outline-offset:5px}.wrap{width:calc(100% - 112px);max-width:1328px;margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;z-index:50;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}
.topbar{height:112px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;border:0;z-index:5}.brand{display:flex;flex-direction:column;flex-shrink:0;line-height:1.25}.brand strong{font-size:19px;font-weight:400;letter-spacing:-.5px}.brand span{font-size:7px;letter-spacing:1.15px;text-transform:uppercase;margin-top:5px}.nav{display:flex;align-items:center;justify-content:center;gap:27px;font-size:10px;text-transform:uppercase;letter-spacing:1.05px;line-height:1.6}.nav a{white-space:nowrap}.nav a:hover{color:var(--muted)}.lang{display:flex;gap:8px;font-size:9px;align-items:center;margin-left:9px;letter-spacing:.5px}.lang a[aria-current]{border-bottom:1px solid;padding-bottom:2px}.lang span{color:#b8b8b8}.menu-toggle{display:none;border:0;background:none;padding:12px 0 12px 16px;font-size:11px;letter-spacing:.8px;text-transform:uppercase}
.collage-hero{position:relative;overflow:hidden;width:100%;padding-bottom:33px}.collage-stage{position:relative;max-width:1680px;width:100%;height:clamp(540px,calc(100svh - 158px),850px);margin-inline:auto}.collage-frame{position:absolute;display:block;overflow:hidden;background:#f4f4f2}.collage-frame img{width:100%;height:100%;object-fit:cover;transition:opacity .35s}.collage-frame:hover img{opacity:.93}.frame-1{left:-2%;top:0;width:18%;height:65%;z-index:1}.frame-2{left:12%;top:20%;width:16%;height:45%;z-index:2}.frame-3{left:27%;top:8%;width:14%;height:35%;z-index:3}.frame-4{left:38%;top:0;width:31%;height:84%;z-index:4}.frame-5{left:27%;top:53%;width:18%;height:44%;z-index:5}.frame-6{left:82%;top:0;width:20%;height:62%;z-index:1}.frame-7{left:67%;top:47%;width:18%;height:43%;z-index:6}.frame-1 img{object-position:center 35%}.frame-3 img{object-position:center 32%}.frame-4 img{object-position:center 30%}.frame-6 img{object-position:center 40%}.collage-scroll{display:block;width:42px;margin:15px auto 0;text-align:center;font-size:24px;line-height:1;font-weight:300;color:#777}.hero-identity{text-align:center;max-width:760px;padding-block:55px 65px}.eyebrow{text-transform:uppercase;letter-spacing:1.9px;font-size:9px;line-height:1.7}.hero-identity .eyebrow{color:var(--muted)}h1{font-family:var(--serif);font-size:clamp(36px,4.5vw,62px);font-weight:400;line-height:1.15;letter-spacing:-1.5px}h1 em,h2 em{font-style:normal;font-weight:400}.hero-identity h1{font-family:var(--sans);font-size:clamp(26px,2.6vw,38px);letter-spacing:.1px;line-height:1.35;margin:18px 0}.hero-identity p{font-size:13px;max-width:600px;color:var(--muted);margin-inline:auto;line-height:1.9}.text-link{display:inline-flex;gap:28px;align-items:center;font-size:12px;padding:10px 0;border-bottom:1px solid #a9a9a3;transition:color .2s}.text-link:hover{color:var(--muted)}.text-link b{font-size:17px;font-weight:400}.intro-line{padding-block:40px;display:grid;grid-template-columns:1fr 2fr;gap:50px;border-top:1px solid var(--line)}.intro-line p{font-family:var(--serif);font-size:30px;line-height:1.4;letter-spacing:-.3px}.section{padding-block:65px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-label{color:var(--muted);margin-bottom:14px}.section-title{font-family:var(--serif);font-weight:400;font-size:clamp(29px,3vw,40px);line-height:1.23;letter-spacing:-.7px}.section-sub{font-size:12px;line-height:1.85;color:var(--muted);max-width:285px}.filters{display:flex;flex-wrap:wrap;gap:30px;margin-bottom:30px}.filter{background:none;border:0;border-bottom:1px solid transparent;padding:4px 0 6px;font-size:11px;color:var(--muted)}.filter[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px;align-items:start}.photo-card{min-width:0;padding:0}.photo-card[hidden]{display:none}.photo-button{display:block;border:0;background:#f5f5f2;padding:0;width:100%;position:relative;overflow:hidden}.photo-button img{aspect-ratio:3/4;object-fit:cover;object-position:center;transition:opacity .35s}.photo-button:hover img{opacity:.94}.photo-button:after{content:'↗';position:absolute;right:12px;bottom:12px;width:27px;height:27px;background:#ffffffd9;display:grid;place-items:center;font-size:17px;opacity:0;transition:opacity .2s}.photo-button:hover:after,.photo-button:focus-visible:after{opacity:1}.photo-caption{display:flex;justify-content:space-between;gap:15px;padding-top:12px;font-size:11px;line-height:1.55;letter-spacing:.1px}.photo-caption span:last-child{font-size:9px;color:#999}.gallery-after,.gallery-expand{display:flex;justify-content:center;padding-top:36px}.gallery-more{background:transparent;min-width:270px}.gallery-more[hidden]{display:none}.gallery-more:hover{background:#f7f7f5}.gallery-after{padding-top:28px}.empty-gallery{border:1px solid var(--line);padding:65px 25px;text-align:center;font-family:var(--serif);font-size:27px}
.services{border-top:1px solid var(--line);margin-top:20px}.service-row{display:grid;grid-template-columns:48px 1.2fr 1fr 30px;align-items:center;gap:25px;padding:27px 0;border-bottom:1px solid var(--line)}.service-row:hover .service-name{color:var(--muted)}.service-index{font-size:10px;color:var(--muted)}.service-name{font-family:var(--serif);font-size:27px;line-height:1.35;letter-spacing:-.3px;font-weight:400;transition:color .2s}.service-desc{font-size:12px;color:var(--muted);max-width:335px;line-height:1.8}.service-arrow{font-size:24px;font-weight:300}.micro-note{margin-top:22px;font-size:12px;color:var(--muted)}
.pricing-section{scroll-margin-top:25px}.tariff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 30px;margin-top:40px}.tariff-card{min-width:0}.tariff-preview{display:block;width:100%;border:0;padding:0;background:#101012;overflow:hidden;cursor:zoom-in}.tariff-preview img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;transition:opacity .3s}.tariff-preview:hover img{opacity:.96}.tariff-caption{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-top:18px;font-size:14px;line-height:1.7}.tariff-caption h3{font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.6;letter-spacing:.2px}.tariff-caption p{color:var(--muted);font-size:13px;margin-top:3px}.tariff-book{flex-shrink:0;font-size:12px;border-bottom:1px solid #9d9d94;padding-block:3px;white-space:nowrap}.tariff-book:hover{color:var(--muted)}.tariff-details{margin-top:14px;border-bottom:1px solid var(--line)}.tariff-details summary{font-size:13px;padding-block:15px}.tariff-details ul{padding:0 20px 18px 17px;margin:0;color:var(--muted);font-size:14px;line-height:1.85}.tariff-details li+li{margin-top:5px}.pricing-note{font-size:13px;line-height:1.85;color:var(--muted);max-width:780px;margin-top:28px}.pricing-note+.pricing-note{margin-top:10px}.pricing-section>.text-link{margin-top:20px}
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:95px;align-items:center;padding-block:85px}.about-image{max-width:460px;width:100%;margin-inline:auto;position:relative}.about-image img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center top}.about-image figcaption{padding-top:13px;font-size:9px;letter-spacing:.6px;color:var(--muted)}.about-copy .section-title{font-size:40px}.about-copy p{font-size:13px;line-height:1.95;color:var(--muted);margin-top:23px;max-width:420px}.about-copy .text-link{margin-top:20px}.signature{font-family:var(--serif);font-style:italic;font-size:27px;margin-top:27px;letter-spacing:-.4px}.process{border-top:1px solid var(--line);padding-block:65px 80px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;margin-top:40px}.step>span{font-size:10px;color:var(--muted)}.step h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:14px 0 12px;line-height:1.3}.step p{color:var(--muted);font-size:12px;line-height:1.85;max-width:300px}.faq-section{padding-block:15px 80px;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:21px 35px 21px 0;list-style:none;position:relative;font-size:13px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:20px;font-weight:300;top:16px}details[open] summary:after{content:'−'}details>p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 25px 22px 0;max-width:650px}
.contact{background:#f7f7f4;color:var(--ink);padding-block:70px}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:110px}.contact h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,58px);line-height:1.2;letter-spacing:-1px;margin:24px 0}.contact p{font-size:13px;color:var(--muted);max-width:350px}.contact .text-link{margin-top:20px}.contact-channels{display:flex;flex-wrap:wrap;gap:25px;margin-top:20px;font-size:12px;color:var(--muted)}.contact-channels a:hover{color:var(--ink)}.contact-location{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-location p{margin-top:20px}.enquiry{padding-top:0}.enquiry label{display:block;font-size:10px;letter-spacing:.5px;margin-top:17px}.enquiry input,.enquiry textarea,.enquiry select{width:100%;background:transparent;border:0;border-bottom:1px solid #c9c9c3;border-radius:0;padding:12px 0;color:var(--ink);outline-offset:2px;font-size:13px;appearance:none}.enquiry input::placeholder,.enquiry textarea::placeholder{color:#999}.enquiry select{background-image:linear-gradient(45deg,transparent 50%,#777 50%),linear-gradient(135deg,#777 50%,transparent 50%);background-position:calc(100% - 5px) 55%,100% 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:20px}.enquiry option{color:var(--ink);background:var(--paper)}.enquiry textarea{resize:vertical;min-height:70px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--paper);border:1px solid #bfbfb8;color:var(--ink);font-size:12px;padding:13px 19px;min-height:46px;border-radius:0}.button:hover{background:#efefeb}.button:disabled{opacity:.5}.enquiry .button{margin-top:24px}.form-note{font-size:11px!important;line-height:1.8;margin-top:14px;max-width:420px!important}.status{font-size:11px!important;color:var(--accent)!important;min-height:1.6em;margin-top:8px}.draft-result{margin-top:18px;padding:18px;border:1px solid #d7d7d0}.draft-result[hidden]{display:none}.draft-result textarea{height:140px;font-size:12px;line-height:1.8}.draft-result .copy-draft{margin:12px 0;background:transparent;color:var(--ink);border:1px solid #bcbcb4;font-size:11px;padding:9px 13px}.draft-result .text-link{margin-left:18px;font-size:11px;gap:15px}footer{padding-block:29px;font-size:10px;color:var(--muted)}.footer-line{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-links{display:flex;gap:25px}.credits{font-size:9px}
.lightbox-open{overflow:hidden}.lightbox{border:0;background:#151515;color:#f5f5f0;padding:0;max-width:96vw;max-height:96svh;width:max-content;overflow:visible}.lightbox::backdrop{background:#111e}.lightbox img{display:block;width:auto;max-width:90vw;height:auto;max-height:76svh;object-fit:contain}.lightbox figcaption{padding:14px 20px;font-size:11px;line-height:1.6;max-width:90vw}.lightbox-close{position:absolute;right:0;top:-40px;border:0;background:none;color:#fff;font-size:27px;line-height:1;width:40px;height:40px}.lightbox-nav{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:0 15px 15px;font-size:10px}.lightbox-nav button{border:0;background:none;color:#f5f5f0;font-size:11px;padding:8px}.lightbox-counter{color:#bbb}.breadcrumb{font-size:10px;color:var(--muted);padding-top:28px}.breadcrumb a{border-bottom:1px solid var(--line)}.service-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center;padding-block:40px 75px}.service-hero h1{font-size:clamp(38px,4.3vw,60px);letter-spacing:-1.4px;margin:23px 0}.service-hero p{font-size:13px;line-height:1.95;color:var(--muted);max-width:450px}.service-hero img{aspect-ratio:4/5;max-height:620px;object-fit:cover}.service-hero .text-link{margin-top:24px}.editorial-content{max-width:770px;margin-inline:auto;padding:10px 0 65px}.editorial-content h2{font-family:var(--serif);font-size:30px;line-height:1.3;font-weight:400;letter-spacing:-.5px;margin:32px 0 18px}.editorial-content p{font-size:13px;color:var(--muted);line-height:1.95}.service-images{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:65px}.service-images img{aspect-ratio:4/5;object-fit:cover}.service-images.landscape img{aspect-ratio:3/2}.service-portfolio{padding-block:0 70px}.service-portfolio>.section-label{margin-bottom:25px}.back-services{margin-bottom:70px}.privacy{max-width:760px;margin:60px auto 95px}.privacy h1{font-size:44px;letter-spacing:-1px;margin:28px 0}.privacy h2{font:normal 26px var(--serif);margin:30px 0 13px}.privacy p{font-size:13px;color:var(--muted);margin-bottom:18px}.page404{min-height:60svh;padding-block:100px}.page404 h1{font-size:60px}
@media(min-width:1500px){.topbar{max-width:1440px}.nav{position:absolute;left:50%;transform:translateX(-50%)}.collage-stage{height:min(850px,calc(100svh - 165px))}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.nav{gap:20px;font-size:9px;letter-spacing:.6px}.brand strong{font-size:17px}.brand span{font-size:6px}.lang{margin-left:0}.about{gap:60px}.contact-inner{gap:65px}.service-row{grid-template-columns:35px 1.1fr 1fr 25px}.service-name{font-size:25px}.faq-section{gap:45px}.service-hero{gap:45px}.steps{gap:40px}}
@media(max-width:980px){.topbar{height:88px}.menu-toggle{display:block}.nav{display:none;position:absolute;transform:none;z-index:9;top:88px;left:-32px;right:-32px;background:#fff;padding:28px 32px 32px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px;font-size:12px;letter-spacing:.8px}.nav.is-open{display:flex}.brand strong{font-size:19px}.brand span{font-size:7px}.lang{font-size:11px;margin:0;padding-top:3px}.collage-stage{height:clamp(520px,calc(100svh - 135px),760px)}.collage-hero{padding-bottom:20px}.gallery{gap:32px 18px}.photo-caption{font-size:10px}.tariff-grid{gap:40px 24px}.tariff-caption{gap:12px}.tariff-caption h3{font-size:15px}.tariff-book{font-size:11px}.about{gap:45px}.about-copy .section-title{font-size:35px}}
@media(max-width:760px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.topbar{height:78px}.brand strong{font-size:19px}.brand span{font-size:6px;letter-spacing:1.2px}.menu-toggle{font-size:10px}.nav{top:78px;left:-20px;right:-20px;padding:25px 20px 30px}.collage-hero{padding-bottom:24px}.collage-stage{height:min(690px,calc(100svh - 120px));min-height:500px;max-height:710px}.frame-1{left:-13%;top:10%;width:36%;height:48%;z-index:1}.frame-2{left:10%;top:31%;width:32%;height:38%;z-index:2}.frame-3{left:14%;top:1%;width:31%;height:34%;z-index:3}.frame-4{left:38%;top:15%;width:48%;height:60%;z-index:4}.frame-5{left:6%;top:69%;width:34%;height:30%;z-index:5}.frame-6{left:77%;top:0;width:35%;height:44%;z-index:2}.frame-7{left:63%;top:66%;width:42%;height:30%;z-index:6}.collage-scroll{margin-top:17px;font-size:22px}.hero-identity{padding-block:35px 40px}.hero-identity h1{font-size:28px;margin:15px 0}.hero-identity p{font-size:12px;line-height:1.9;max-width:460px}.hero-identity .eyebrow{font-size:8px}.intro-line{padding-block:30px;grid-template-columns:1fr;gap:19px}.intro-line p{font-size:27px}.section{padding-block:45px}.section-top{align-items:start;margin-bottom:27px;gap:20px}.section-title{font-size:31px;letter-spacing:-.5px}.section-sub{max-width:165px;font-size:11px}.filters{gap:13px 24px;margin-bottom:24px}.filter{font-size:11px;min-height:34px;padding-block:5px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.photo-caption{font-size:10px;gap:8px;line-height:1.6;padding-top:10px}.photo-caption span:last-child{display:none}.photo-button:after{width:25px;height:25px;font-size:15px;right:8px;bottom:8px}.gallery-expand{padding-top:30px}.gallery-more{width:100%;min-width:0}.gallery-after{padding-top:24px}.service-row{grid-template-columns:24px 1fr 22px;gap:13px;padding-block:23px}.service-name{font-size:25px}.service-desc{grid-column:2;grid-row:2;max-width:100%;font-size:11px}.service-arrow{grid-column:3;grid-row:1/3}.service-index{align-self:start;margin-top:7px}.micro-note{font-size:11px}.tariff-grid{grid-template-columns:1fr;gap:35px;margin-top:28px}.tariff-caption{margin-top:15px;gap:18px}.tariff-caption h3{font-size:16px}.tariff-caption p{font-size:13px}.tariff-book{font-size:12px}.tariff-details{margin-top:10px}.tariff-details summary{font-size:13px}.tariff-details ul{font-size:14px}.pricing-note{font-size:12px;margin-top:25px}.about{grid-template-columns:1fr;gap:32px;padding-block:55px}.about-image{max-width:460px}.about-copy .section-title{font-size:35px}.about-copy p{max-width:100%;font-size:12px;margin-top:19px}.signature{font-size:26px}.process{padding-block:45px}.steps{grid-template-columns:1fr;gap:28px;margin-top:28px}.step{display:grid;grid-template-columns:25px 1fr;column-gap:15px}.step>span{grid-row:1/3;margin-top:4px}.step h3{margin:0 0 10px;font-size:25px}.step p{grid-column:2;max-width:100%;font-size:12px}.faq-section{padding-block:15px 55px;grid-template-columns:1fr;gap:26px}.contact{padding-block:50px}.contact-inner{grid-template-columns:1fr;gap:35px}.contact h2{font-size:43px;letter-spacing:-.6px}.contact p{max-width:100%;font-size:12px}.contact-channels{font-size:12px}.enquiry{padding-top:0}.enquiry input,.enquiry textarea,.enquiry select{font-size:16px}.footer-line{flex-direction:column;align-items:flex-start;gap:15px}.footer-links{flex-wrap:wrap;gap:21px}footer{padding-block:26px;font-size:9px}.service-hero{grid-template-columns:1fr;gap:33px;padding-block:28px 42px}.service-hero h1{font-size:42px;letter-spacing:-1px}.service-hero img{max-height:590px}.service-hero p{font-size:12px}.editorial-content{width:calc(100% - 40px);padding:0 0 40px}.editorial-content h2{font-size:28px}.editorial-content p{font-size:12px}.service-images{gap:14px;padding-bottom:40px}.service-portfolio{padding-bottom:40px}.back-services{margin-bottom:45px}.privacy{padding-inline:20px;margin-block:40px 65px}.privacy h1{font-size:36px}.draft-result .text-link{margin-left:0;display:flex;width:max-content}.draft-result textarea{font-size:14px}.lightbox-close{top:0;background:#0008;z-index:2}.lightbox{max-width:96vw}.lightbox img{max-width:96vw;max-height:72svh}.lightbox figcaption{max-width:94vw;font-size:10px;padding:12px 15px}.lightbox-nav{gap:15px;padding:0 8px 10px}.lightbox-nav button{font-size:10px}.credits{max-width:290px}}
@media(max-width:400px){.section-title{font-size:29px}.section-sub{max-width:130px;font-size:10px}.hero-identity h1{font-size:25px}.filters{gap:10px 19px}.service-hero h1{font-size:38px}.tariff-caption{gap:12px}.tariff-caption h3{font-size:15px}.tariff-book{font-size:11px}.collage-stage{min-height:470px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Calm, colour-led collections. Original photographs keep their colours. */
.curated-hero{padding:20px 0 28px}.curated-hero .collage-stage{position:relative;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:30px;align-items:center;width:calc(100% - 112px);max-width:1240px;height:auto;min-height:0;padding-block:20px 0}.curated-hero .collage-frame{position:relative;left:auto;top:auto;width:100%;height:auto;z-index:auto;aspect-ratio:3/4;background:#f7f7f7}.curated-hero .frame-1{transform:translateY(24px)}.curated-hero .frame-2{transform:none}.curated-hero .frame-3{transform:translateY(-20px)}.curated-hero .collage-frame img{width:100%;height:100%;object-position:center}.curated-hero .collage-scroll{margin-top:45px}.photo-collection{padding-block:40px 65px;border-top:1px solid var(--line)}.photo-collection[hidden]{display:none}.collection-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:28px}.collection-heading>div{display:flex;gap:20px;align-items:baseline}.collection-heading .eyebrow{color:#999}.collection-heading h3{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.4px;line-height:1.25}.collection-heading p{font-size:12px;max-width:310px;color:var(--muted);line-height:1.8}.collection-size-4 .gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.collection-size-2 .gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:940px;margin-inline:auto}.collection-size-7 .gallery{grid-template-columns:repeat(6,minmax(0,1fr))}.collection-size-7 .photo-card{grid-column:span 2}.collection-size-7 .photo-card:nth-child(n+4){grid-column:span 3}.photo-collection .photo-caption span:last-child{display:inline;white-space:nowrap;color:#777}.filters{gap:14px 27px;margin-bottom:32px}.photo-collection:last-child{padding-bottom:0}@media(max-width:1100px){.curated-hero .collage-stage{width:calc(100% - 64px);gap:22px}.collection-size-4 .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading p{max-width:260px}}@media(max-width:760px){.curated-hero{padding-block:7px 15px}.curated-hero .collage-stage{display:block;width:calc(100% - 40px);max-width:460px;padding:0;min-height:0;height:auto}.curated-hero .frame-1,.curated-hero .frame-3{display:none}.curated-hero .frame-2{display:block;width:100%;height:auto;transform:none;aspect-ratio:3/4}.curated-hero .collage-scroll{margin-top:22px}.photo-collection{padding-block:29px 38px}.collection-heading{display:block;margin-bottom:20px}.collection-heading>div{gap:13px}.collection-heading h3{font-size:26px}.collection-heading p{max-width:100%;font-size:11px;margin-top:12px}.photo-collection .gallery,.collection-size-7 .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.collection-size-7 .photo-card,.collection-size-7 .photo-card:nth-child(n+4){grid-column:span 1}.collection-size-7 .photo-card:last-child{grid-column:1/-1;width:75%;justify-self:center}.collection-size-2 .gallery{max-width:100%}.photo-collection .photo-caption span:last-child{font-size:9px;display:inline}.filters{gap:9px 20px}.filter{font-size:11px}}
@media(max-width:760px){#portfolio>.section-top{display:block}#portfolio>.section-top .section-sub{max-width:300px;margin-top:16px}}

/* Direct contact links only. */
.contact-links-only{display:flex;justify-content:space-between;align-items:center;gap:28px}.contact-links-only h2{margin:0}.contact-links{display:flex;flex-wrap:wrap;gap:38px}.contact-links .text-link{margin-top:0;font-size:16px;gap:24px}@media(max-width:760px){.contact-links-only{flex-direction:column;align-items:flex-start;gap:24px}.contact-links{gap:30px}}

/* Clear actions for the only two contact channels. */
.contact-links-only{display:grid;grid-template-columns:minmax(190px,.6fr) minmax(0,1.4fr);gap:45px;align-items:center}.contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%}.contact-action{display:flex;align-items:center;gap:14px;min-height:78px;padding:19px 22px;border:1px solid transparent;border-radius:10px;font-size:15px;font-weight:500;line-height:1.45;transition:background .2s,transform .2s}.contact-action svg{width:26px;height:26px;flex-shrink:0}.contact-action span{flex:1}.contact-action b{font-size:22px;font-weight:400;line-height:1}.contact-instagram{background:#242424;color:#fff}.contact-instagram:hover{background:#414141}.contact-whatsapp{background:#176c40;color:#fff}.contact-whatsapp:hover{background:#115332}.contact-action:active{transform:translateY(1px)}.tariff-clean-photo img{object-fit:cover;object-position:center 35%}.tariff-card-localized .tariff-caption h3{font-family:var(--serif);font-size:26px;line-height:1.3}.tariff-card-localized .tariff-details summary{font-size:12px}.tariff-card-localized .tariff-details ul{font-size:13px}@media(max-width:1100px){.contact-links-only{grid-template-columns:1fr;gap:25px}.contact-links{max-width:760px}.contact-action{min-height:74px}}@media(max-width:600px){.contact-links{grid-template-columns:1fr;gap:13px}.contact-action{font-size:16px;min-height:74px;padding:19px 21px}.tariff-card-localized .tariff-caption h3{font-size:25px}}

/* Optional statistics begin only after the visitor chooses to allow them. */
.footer-links [data-cookie-settings]{border:0;background:transparent;padding:0;font:inherit;line-height:inherit;color:inherit;text-align:left}.footer-links [data-cookie-settings]:hover{color:var(--ink)}.footer-links [data-cookie-settings][hidden]{display:none}.cookie-banner{position:fixed;z-index:30;right:24px;bottom:24px;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;width:min(620px,calc(100vw - 48px));max-height:calc(100svh - 48px);overflow-y:auto;padding:26px;background:#fff;border:1px solid #c9c9c3;box-shadow:0 8px 35px #2424241a;color:var(--ink);font-size:13px;line-height:1.7}.cookie-banner[hidden]{display:none}.cookie-banner h2{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.25;letter-spacing:-.3px;margin:0 0 12px}.cookie-banner p{font-size:12px;line-height:1.8;margin:0;color:#565656}.cookie-privacy{display:inline-block;margin-top:10px;font-size:11px;text-decoration:underline;text-underline-offset:3px}.cookie-banner-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cookie-choice{display:flex;align-items:center;justify-content:center;min-height:48px;padding:11px 14px;border:1px solid #52524d;border-radius:0;background:#fff;color:var(--ink);font-size:12px;font-weight:500;line-height:1.5;text-align:center}.cookie-choice:hover{background:#f0f0ed}.cookie-choice:active{background:#e6e6e0}.cookie-choice:focus-visible,.cookie-privacy:focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media(max-width:600px){.cookie-banner{right:12px;bottom:12px;width:calc(100vw - 24px);max-height:calc(100svh - 24px);padding:22px 20px;gap:18px}.cookie-banner h2{font-size:24px}.cookie-banner-actions{gap:10px}.cookie-choice{min-height:52px;padding:11px 10px}.footer-links{flex-wrap:wrap}}
