:root{--ink:#191e1b;--night:#111714;--paper:#f2f0e9;--muted:#a7aaa2;--green:#a8bd8f;--line:rgba(25,30,27,.18);--white:#f6f4ed;--sans:'DM Sans',Arial,sans-serif;--ui:'Manrope',Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{height:74px;position:absolute;top:0;left:0;right:0;z-index:8;padding:0 clamp(22px,5.5vw,92px);display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff30}.wordmark{display:flex;align-items:center;gap:11px}.wordmark-symbol{width:34px;height:34px;border:1px solid #ffffff8f;display:grid;place-items:center;font:italic 19px var(--serif)}.wordmark-name{font:700 10px/1.2 var(--ui);letter-spacing:.18em}.wordmark-name span{display:block;margin-top:5px;color:#ffffffa0;font:500 8px var(--ui);letter-spacing:.15em}.nav,.top-actions{display:flex;align-items:center;gap:clamp(18px,3vw,42px)}.nav a,.language-toggle,.book-link{font:600 9px var(--ui);letter-spacing:.14em;text-transform:uppercase}.nav a{position:relative;color:#ffffffe0}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--green);transition:right .25s}.nav a:hover:after{right:0}.top-actions{gap:22px}.language-toggle{color:#fff;background:none;border:0;padding:8px;cursor:pointer}.language-toggle span{opacity:.48;padding:0 5px}.book-link{padding:11px 14px;border:1px solid #ffffff70;transition:background .2s,color .2s}.book-link span{margin-left:14px;color:var(--green)}.book-link:hover{background:var(--paper);color:var(--ink)}.menu-toggle{display:none}.hero{min-height:790px;height:min(100svh,1050px);max-height:1080px;position:relative;overflow:hidden;background:#1a2420;color:#fff;display:flex;align-items:flex-end}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:contain;object-position:center top;background:#111714;opacity:1;transition:opacity .45s ease}.hero-image.is-changing{opacity:.25}.hero-shade{background:linear-gradient(90deg,rgba(9,14,12,.78),rgba(9,14,12,.3) 53%,rgba(9,14,12,.08)),linear-gradient(0deg,rgba(9,14,12,.57),transparent 46%)}.hero-topline,.hero-bottom{position:absolute;left:clamp(24px,5.5vw,92px);right:clamp(24px,5.5vw,92px);display:flex;justify-content:space-between;align-items:center;color:#ffffffb7;font:500 9px var(--ui);letter-spacing:.14em;text-transform:uppercase}.hero-topline{top:103px}.hero-copy{position:relative;z-index:1;width:min(930px,78vw);padding:0 0 clamp(100px,13vh,148px) clamp(24px,10vw,165px)}.eyebrow{margin:0 0 18px;color:#d1dbca;font:600 9px var(--ui);letter-spacing:.2em;text-transform:uppercase}.hero h1,.section-heading h2,.about-main h2,.services-heading h2,.contact-main h2{margin:0;font:400 clamp(58px,9vw,130px)/.91 var(--serif);letter-spacing:-.055em}.hero h1 em,.section-heading h2 em,.about-main h2 em,.services-heading h2 em,.contact-main h2 em{font-weight:400;color:var(--green)}.hero-intro{max-width:500px;margin:24px 0 0;color:#ffffffd1;font-size:14px;line-height:1.85}.hero-buttons{display:flex;align-items:center;gap:28px;margin-top:31px}.button-light{display:inline-flex;align-items:center;gap:34px;background:var(--paper);color:var(--ink);padding:14px 18px;font:700 9px var(--ui);letter-spacing:.14em;text-transform:uppercase;transition:background .2s,transform .2s}.button-light:hover{background:#fff;transform:translateY(-2px)}.button-light span{color:#56704f;font-size:15px}.hero-contact{font:600 9px var(--ui);letter-spacing:.13em;text-transform:uppercase;color:#ffffffd0}.hero-contact span{margin-left:8px;color:var(--green)}.hero-bottom{bottom:28px}.hero-index{display:flex;align-items:center;gap:9px;color:#fff}.hero-index i{width:42px;height:1px;background:var(--green)}.hero-controls{display:flex;align-items:center;gap:8px}.hero-controls button{width:22px;height:2px;padding:0;border:0;background:#ffffff65;cursor:pointer;transition:background .2s,width .2s}.hero-controls button[aria-pressed=true]{width:38px;background:var(--green)}.hero-controls button:focus-visible{outline:2px solid white;outline-offset:4px}.intro-band{background:var(--green);padding:15px clamp(24px,10vw,165px);display:flex;justify-content:space-between;gap:20px;color:#182019;font:600 9px var(--ui);letter-spacing:.12em;text-transform:uppercase}.intro-band p{margin:0}.section-wrap{padding:clamp(80px,10vw,150px) clamp(24px,10vw,165px)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:42px}.dark-eyebrow{color:#718267}.section-heading h2,.about-main h2,.services-heading h2{font-size:clamp(46px,6.7vw,88px);line-height:1.01}.quiet-link{padding-bottom:7px;border-bottom:1px solid #8e9788;font:700 9px var(--ui);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.quiet-link span{padding-left:18px;color:#657b58}.featured-grid{display:grid;grid-template-columns:1.1fr .9fr;column-gap:clamp(20px,4vw,60px);row-gap:62px;align-items:start}.feature-card{border:0;padding:0;background:none;text-align:left;color:var(--ink);cursor:zoom-in;min-width:0}.feature-portrait{margin-top:115px}.feature-wide{grid-column:1/-1;width:75%;margin-left:auto}.feature-img{display:block;overflow:hidden;background:#c3c5be}.feature-large .feature-img,.feature-portrait .feature-img,.feature-wide .feature-img{aspect-ratio:auto}.feature-img img{width:100%;height:auto;display:block;object-fit:contain;transition:filter .5s}.feature-card:hover .feature-img img{filter:saturate(1.06)}.feature-card:focus-visible,.tile:focus-visible{outline:2px solid #657b58;outline-offset:5px}.feature-caption{display:flex;align-items:center;justify-content:space-between;padding:15px 0 0}.feature-caption small{display:block;color:#727a71;font:600 8px var(--ui);letter-spacing:.17em;text-transform:uppercase}.feature-caption strong{display:block;margin-top:6px;font:400 clamp(19px,2.2vw,27px) var(--serif)}.feature-caption i{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:#53654b;font:normal 13px var(--sans);transition:background .2s,color .2s}.feature-card:hover .feature-caption i{background:var(--ink);color:var(--paper)}.work-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:62px;color:#727a71;font-size:12px}.button-outline{display:inline-flex;align-items:center;gap:28px;border:1px solid #8e9788;padding:13px 16px;color:var(--ink);font:700 8px var(--ui);letter-spacing:.12em;text-transform:uppercase;transition:background .2s,color .2s}.button-outline:hover{background:var(--ink);color:var(--paper)}.button-outline span{font-size:14px;color:#718267}.statement-section{display:grid;grid-template-columns:1.05fr .95fr;min-height:620px;background:var(--night);color:var(--white)}.statement-photo{min-height:500px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#111714}.statement-photo img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;filter:grayscale(1);opacity:.78}.statement-copy{padding:clamp(50px,8vw,120px) clamp(26px,8vw,118px);display:flex;flex-direction:column;justify-content:center}.statement-copy .eyebrow{color:var(--green)}.statement{margin:18px 0 24px;font:400 clamp(35px,4.6vw,62px)/1.11 var(--serif);letter-spacing:-.03em}.signature{color:var(--green);font:italic 400 34px var(--serif)}.about-section{display:grid;grid-template-columns:.35fr 1fr;gap:clamp(28px,6vw,90px)}.about-side{display:flex;flex-direction:column;justify-content:space-between;align-items:start}.about-index{color:#8a9187;font:500 9px var(--ui);letter-spacing:.14em}.about-main h2{margin-bottom:38px}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;max-width:850px}.about-columns p{margin:0;color:#60675f;font-size:13px;line-height:1.9}.about-columns .about-lead{color:#292f2a;font-size:15px}.about-facts{display:flex;gap:clamp(24px,5vw,70px);margin-top:58px;padding-top:25px;border-top:1px solid var(--line)}.about-facts span{display:flex;flex-direction:column;gap:6px}.about-facts b{font:400 18px var(--serif)}.about-facts small{color:#778075;font:500 8px var(--ui);letter-spacing:.09em;text-transform:uppercase}.services-section{background:#17201b;color:var(--white)}.services-inner{padding:clamp(80px,10vw,140px) clamp(24px,10vw,165px)}.services-heading{align-items:end}.services-heading h2{font-size:clamp(44px,6vw,78px)}.service-intro{max-width:300px;margin:0 0 8px;color:#bac1b7;font-size:13px;line-height:1.8}.service-list{border-top:1px solid #ffffff36;margin-top:45px}.service-row{display:grid;grid-template-columns:55px 1.1fr 1fr 30px;align-items:center;gap:18px;padding:21px 0;border-bottom:1px solid #ffffff36;transition:padding .25s,color .25s}.service-row:hover{padding-left:12px;color:var(--green)}.service-no{color:var(--green);font:500 9px var(--ui);letter-spacing:.12em}.service-row h3{margin:0;font:400 clamp(20px,2.3vw,28px) var(--serif)}.service-row p{margin:0;max-width:350px;color:#aeb6ac;font-size:11px;line-height:1.7}.service-row i{font-style:normal;color:var(--green)}.contact-section{background:#829477;color:#141b15;padding:clamp(30px,5vw,70px) clamp(24px,10vw,165px) clamp(75px,9vw,120px)}.contact-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #18251c55;padding:0 0 16px}.contact-top .eyebrow{color:#243326;margin:0}.contact-number{margin:0;color:#253228a0;font:500 9px var(--ui);letter-spacing:.13em}.contact-main{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:50px;padding-top:62px}.contact-main h2{font-size:clamp(60px,9vw,115px)}.contact-main h2 em{color:#f1efe6}.contact-right{max-width:330px;padding-bottom:9px}.contact-right p{margin:0 0 23px;max-width:300px;font-size:13px;line-height:1.8}.contact-right .button-light{background:#17201b;color:white}.contact-right .button-light span{color:var(--green)}.contact-email{display:block;margin-top:19px;font:600 10px var(--ui);letter-spacing:.04em}.footer{min-height:78px;background:var(--night);color:#d9ddd5;padding:18px clamp(24px,5.5vw,92px);display:flex;align-items:center;justify-content:space-between;gap:15px;font:500 8px var(--ui);letter-spacing:.11em;text-transform:uppercase}.footer a:hover{color:var(--green)}.footer-brand{font-weight:700;letter-spacing:.16em}.footer-brand span{display:block;margin-top:4px;color:#92998e;font-size:7px}.lightbox{position:fixed;width:min(1280px,calc(100vw - 32px));height:min(900px,calc(100dvh - 32px));max-width:none;max-height:none;padding:52px 70px 42px;border:1px solid #ffffff26;background:#101512;color:white;box-shadow:0 24px 100px #000a}.lightbox::backdrop{background:#090d0be8;backdrop-filter:blur(9px)}.lightbox figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.lightbox figure img{display:block;max-width:100%;max-height:calc(100% - 38px);object-fit:contain}.lightbox figcaption{color:#e5e9e2;font:500 9px var(--ui);letter-spacing:.13em;text-transform:uppercase}.lightbox button{position:absolute;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff4d;background:#ffffff0a;color:white;cursor:pointer}.lightbox-close{top:10px;right:10px;font-size:25px}.lightbox-prev{top:50%;left:12px;font-size:22px}.lightbox-next{top:50%;right:12px;font-size:22px}.lightbox button:hover{background:#ffffff28}.lightbox-count{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);margin:0;color:#ffffffa3;font:9px var(--ui);letter-spacing:.14em}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
/* Complete gallery page */
.gallery-page{background:var(--paper)}.gallery-header{background:var(--night);color:white}.gallery-header .topbar{position:relative}.gallery-intro{padding:clamp(65px,9vw,120px) clamp(24px,10vw,165px) 48px}.gallery-intro .eyebrow{color:var(--green)}.gallery-intro h1{margin:0;font:400 clamp(62px,10vw,130px)/.92 var(--serif);letter-spacing:-.06em}.gallery-intro h1 em{color:var(--green);font-weight:400}.gallery-intro p:last-child{max-width:480px;margin:24px 0 0;color:#c0c6be;font-size:13px;line-height:1.85}.filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin:0 clamp(24px,10vw,165px) 38px}.filter-chip{padding:9px 13px;border:1px solid #ffffff43;background:transparent;color:#e5e8e1;cursor:pointer;font:600 8px var(--ui);letter-spacing:.13em;text-transform:uppercase;transition:background .2s,color .2s}.filter-chip:hover,.filter-chip[aria-pressed=true]{background:var(--green);border-color:var(--green);color:var(--night)}.gallery-grid{padding:0 clamp(24px,10vw,165px) clamp(80px,10vw,140px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 15px}.gallery-grid .tile{min-width:0;border:0;padding:0;background:none;color:var(--ink);text-align:left;cursor:zoom-in}.gallery-grid .tile[hidden]{display:none}.gallery-grid .tile-image{display:block;position:relative;overflow:hidden;background:#d2d3cd}.gallery-grid .tile img{display:block;width:100%;height:auto;object-fit:contain;transition:filter .4s}.gallery-grid .tile:hover img{filter:saturate(1.08)}.gallery-grid .tile-caption{display:flex;justify-content:space-between;gap:8px;padding:9px 1px 0;color:#626a61;font:600 8px var(--ui);letter-spacing:.1em;text-transform:uppercase}.gallery-grid .tile-caption i{font-style:normal;color:#637854}.gallery-end{display:flex;justify-content:space-between;align-items:center;padding:0 clamp(24px,10vw,165px) 45px;color:#747c72;font-size:11px}
@media(max-width:850px){.topbar{padding:0 24px}.nav{gap:18px}.top-actions{gap:12px}.hero{min-height:700px}.hero-copy{width:88vw;padding-left:8vw}.hero h1{font-size:clamp(60px,10vw,100px)}.featured-grid{column-gap:25px}.feature-wide{width:88%}.statement-section{min-height:510px}.about-section{grid-template-columns:.25fr 1fr;gap:30px}.services-inner{padding-left:8vw;padding-right:8vw}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-intro{padding-left:8vw;padding-right:8vw}.filter-bar,.gallery-grid,.gallery-end{margin-left:0;margin-right:0}.filter-bar{padding:0 8vw}.gallery-grid{padding-left:8vw;padding-right:8vw}.gallery-end{padding-left:8vw;padding-right:8vw}}
@media(max-width:620px){html{scroll-padding-top:65px}.topbar{height:65px;padding:0 18px}.wordmark-symbol{width:30px;height:30px}.wordmark-name{font-size:9px}.wordmark-name span{font-size:7px}.menu-toggle{display:flex;flex-direction:column;gap:5px;margin-left:auto;margin-right:12px;border:0;background:none;padding:10px;z-index:3}.menu-toggle span{width:20px;height:1px;background:white;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.nav{display:none;position:absolute;top:65px;left:0;right:0;background:#111714f5;padding:20px 22px 26px;flex-direction:column;align-items:flex-start;gap:17px;border-bottom:1px solid #ffffff30}.nav.open{display:flex}.nav a{font-size:10px}.top-actions{gap:5px}.language-toggle{font-size:8px;padding:7px 4px}.language-toggle span{padding:0 2px}.book-link{padding:9px;font-size:8px}.book-link span{margin-left:5px}.hero{height:92svh;min-height:680px;max-height:850px;align-items:flex-end}.hero-image{object-position:center}.hero-shade{background:linear-gradient(0deg,#090e0ce8 0%,#090e0c6b 55%,#090e0c12 100%)}.hero-topline{top:83px;left:20px;right:20px;font-size:7px;letter-spacing:.1em}.hero-topline span:last-child{display:none}.hero-copy{width:100%;padding:0 20px 110px}.hero-copy .eyebrow{font-size:8px;margin-bottom:14px}.hero h1{font-size:clamp(54px,14vw,78px)}.hero-intro{font-size:13px;line-height:1.75;margin-top:19px;max-width:390px}.hero-buttons{gap:14px;flex-wrap:wrap;margin-top:24px}.button-light{gap:21px;padding:13px;font-size:8px}.hero-contact{font-size:8px}.hero-bottom{left:20px;right:20px;bottom:20px;font-size:7px}.intro-band{padding:15px 20px;overflow:hidden;gap:32px;width:100%;justify-content:flex-start}.intro-band p{white-space:nowrap;font-size:7px}.intro-band p:first-child{display:none}.section-wrap{padding:74px 20px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:28px}.section-heading h2,.about-main h2{font-size:clamp(43px,12vw,64px)}.dark-eyebrow{font-size:8px}.quiet-link{font-size:8px}.featured-grid{grid-template-columns:1fr;gap:31px}.feature-portrait{margin:0 0 0 14%}.feature-wide{grid-column:auto;width:100%;margin:0}.feature-caption{padding-top:11px}.feature-caption strong{font-size:20px}.feature-caption small{font-size:7px}.work-bottom{padding-top:32px;align-items:flex-start;flex-direction:column;font-size:11px}.statement-section{grid-template-columns:1fr}.statement-photo{min-height:0;height:auto;max-height:none}.statement-photo img{width:100%;max-height:none}.statement-copy{padding:45px 23px 54px}.statement{font-size:39px}.about-section{display:block}.about-side{flex-direction:row;align-items:center}.about-index{margin:0}.about-main{margin-top:28px}.about-main h2{margin-bottom:25px}.about-columns{grid-template-columns:1fr;gap:17px}.about-columns .about-lead{font-size:14px}.about-columns p{font-size:12px}.about-facts{gap:20px;margin-top:35px;padding-top:20px}.about-facts b{font-size:15px}.about-facts small{font-size:6px;max-width:95px;line-height:1.5}.services-inner{padding:74px 20px}.services-heading{flex-direction:column}.services-heading h2{font-size:clamp(42px,11vw,59px)}.service-intro{font-size:12px}.service-list{margin-top:28px}.service-row{grid-template-columns:27px 1fr 18px;gap:9px;padding:17px 0}.service-row h3{font-size:20px}.service-row p{grid-column:2;grid-row:2;font-size:10px}.service-row i{grid-column:3;grid-row:1}.service-no{grid-row:1/3;align-self:start;padding-top:5px;font-size:8px}.contact-section{padding:24px 20px 65px}.contact-main{grid-template-columns:1fr;gap:30px;padding-top:40px}.contact-main h2{font-size:clamp(58px,14vw,83px)}.contact-right{max-width:none}.contact-right p{font-size:12px}.footer{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:17px;font-size:7px}.footer>*:nth-child(even){text-align:right}.footer-brand{font-size:8px}.lightbox{width:calc(100vw - 12px);height:calc(100dvh - 12px);padding:48px 43px 38px}.lightbox-close{top:6px;right:6px;width:36px;height:36px}.lightbox-prev{left:4px;width:32px;height:38px}.lightbox-next{right:4px;width:32px;height:38px}.gallery-intro{padding:63px 20px 34px}.gallery-intro h1{font-size:clamp(58px,15vw,84px)}.gallery-intro p:last-child{font-size:12px}.filter-bar{padding:0 20px;margin-bottom:24px;gap:7px}.filter-chip{font-size:7px;padding:8px 10px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 10px;padding:0 20px 70px}.gallery-grid .tile-caption{font-size:7px}.gallery-end{padding:0 20px 30px;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Photo-led palette and persistent image overlay */
:root{--ink:#202521;--night:#111815;--paper:#f0efe9;--muted:#a5a9a0;--green:#a3ad9a;--line:rgba(32,37,33,.18)}
.topbar{position:fixed;background:linear-gradient(180deg,rgba(17,24,21,.76),rgba(17,24,21,.26));backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);border-bottom-color:#ffffff24}
.gallery-header .topbar{position:fixed}
.gallery-intro{padding-top:calc(clamp(65px,9vw,120px) + 74px)}
.intro-band{background:#a3ad9a;color:#202521}
.contact-section{background:#89917f;color:#171d18}
.filter-chip:hover,.filter-chip[aria-pressed=true]{background:#a3ad9a;border-color:#a3ad9a;color:#111815}
@media(max-width:620px){.gallery-intro{padding-top:calc(63px + 65px)}.topbar{background:linear-gradient(180deg,rgba(17,24,21,.82),rgba(17,24,21,.25))}}
@media(min-width:621px){.hero{height:min(66.6667vw,100svh,1050px);min-height:680px}.hero-copy{padding-bottom:clamp(44px,6vh,76px)}}
@media(max-width:620px){.hero{height:92svh;min-height:680px;max-height:850px}.hero-copy{padding:0 20px 110px}}

/* A cleaner, image-first gallery with natural photo proportions */
.gallery-grid{display:block;columns:4;column-gap:16px}
.gallery-grid .tile{display:inline-block;vertical-align:top;width:100%;margin:0 0 16px;break-inside:avoid;transition:transform .35s ease}
.gallery-grid .tile-caption{display:none}
.gallery-grid .tile-image{display:block;overflow:hidden;background:#d2d3cd}
.gallery-grid .tile img{width:100%;height:auto;display:block;object-fit:contain;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s}
.gallery-grid .tile:hover img{transform:scale(1.025);filter:saturate(1.05)}
#gallery-caption{display:none}
@media(max-width:1100px){.gallery-grid{columns:3}}
@media(max-width:620px){.gallery-grid{display:block;columns:2;column-gap:10px}.gallery-grid .tile{margin-bottom:10px}.gallery-nav{top:65px}}
.gallery-meta{display:flex;justify-content:center;gap:22px;margin:10px 0 0;color:#d4dad1;font:500 9px var(--ui);letter-spacing:.12em;text-transform:uppercase}
.gallery-meta[hidden]{display:none}
@media(max-width:620px){.gallery-nav{top:65px}}

/* Interactive polaroid stack for the homepage stories section */
.polaroid-experience{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(320px,1.28fr);gap:clamp(24px,7vw,112px);align-items:center;min-height:clamp(470px,52vw,680px);padding:clamp(22px,4vw,54px) 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.polaroid-intro{align-self:start;padding-top:20px;display:flex;flex-direction:column;gap:24px;color:#62675f;font:500 12px/1.7 var(--ui);letter-spacing:.02em}
.polaroid-intro p{max-width:210px;margin:0}
.polaroid-count{font:500 10px var(--ui);letter-spacing:.16em;color:#7b8178}
.polaroid-count i{font-style:normal;color:#adb0a8;padding:0 5px}
.polaroid-deck{--pointer-x:0px;--pointer-y:0px;position:relative;min-height:clamp(390px,42vw,580px);display:grid;place-items:center;perspective:1300px;touch-action:pan-y}
.polaroid-stack{position:relative;width:min(100%,570px);height:clamp(350px,39vw,520px);isolation:isolate}
.polaroid-card{position:absolute;left:50%;top:50%;width:min(72%,400px);padding:0;border:0;background:none;text-align:left;cursor:pointer;transform:translate(calc(-50% + var(--offset-x) + var(--pointer-x)),calc(-50% + var(--offset-y) + var(--pointer-y))) rotate(var(--turn));transform-origin:50% 60%;transition:transform .68s cubic-bezier(.2,.75,.2,1),filter .55s,opacity .5s;filter:brightness(calc(1 - var(--depth)*.055));}
.polaroid-card:not(.is-front){cursor:pointer}
.polaroid-card.is-front{filter:drop-shadow(0 28px 25px #1a1b192f);}
.polaroid-card:focus-visible{outline:2px solid #8b3446;outline-offset:8px}
.polaroid-frame{display:block;background:#faf9f4;padding:clamp(9px,1.2vw,16px) clamp(9px,1.2vw,16px) 0;box-shadow:0 3px 6px #15171324,0 20px 45px #1b1b1820;}
.polaroid-image{display:flex;width:100%;height:clamp(205px,23vw,315px);align-items:center;justify-content:center;overflow:hidden;background:#e5e4de;}
.polaroid-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .7s cubic-bezier(.2,.75,.2,1);}
.polaroid-card.is-front:hover .polaroid-image img{transform:scale(1.025)}
.polaroid-label{min-height:clamp(55px,6vw,76px);padding:10px 4px 13px;display:flex;flex-direction:column;justify-content:center;gap:2px;color:#242623;font-family:'Segoe Print','Bradley Hand',cursive;transform:rotate(-.5deg)}
.polaroid-label strong{font-size:clamp(11px,1.05vw,14px);font-weight:500;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.polaroid-label small{font-size:clamp(9px,.82vw,11px);color:#64665e;line-height:1.3}
.polaroid-next{position:absolute;right:clamp(0px,2vw,24px);bottom:clamp(18px,4vw,50px);z-index:10;width:48px;height:48px;border:1px solid #8b34465e;border-radius:50%;background:#f6f4ed;color:#8b3446;font-size:21px;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.polaroid-next:hover{background:#8b3446;color:#fff;transform:rotate(45deg)}
.polaroid-note{position:absolute;right:0;top:50%;writing-mode:vertical-rl;color:#81847d;font:600 8px var(--ui);letter-spacing:.15em;text-transform:uppercase}
.polaroid-loading{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);color:#777;font:italic 20px var(--serif)}
@media(max-width:760px){.polaroid-experience{grid-template-columns:1fr;gap:6px;min-height:0;padding:22px 0 18px}.polaroid-intro{padding:0 0 0 8px;flex-direction:row;justify-content:space-between;align-items:center;font-size:11px}.polaroid-intro p{max-width:240px}.polaroid-deck{min-height:390px;margin:0 -8px}.polaroid-stack{height:340px;width:min(88%,440px)}.polaroid-card{width:min(76%,340px)}.polaroid-image{height:220px}.polaroid-label{min-height:60px}.polaroid-note{right:4px;font-size:7px}.polaroid-next{right:6px;bottom:16px;width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.polaroid-card,.polaroid-image img,.polaroid-next{transition:none}}

/* Let the stack breathe like scattered prints; match each frame to its photo. */
.polaroid-experience{grid-template-columns:minmax(150px,.55fr) minmax(480px,1.45fr)}
.polaroid-deck{min-height:clamp(470px,48vw,650px);overflow:visible}
.polaroid-stack{width:min(100%,820px);height:clamp(440px,45vw,610px)}
.polaroid-card{width:350px}
.polaroid-card.is-landscape{width:min(55%,430px)}
.polaroid-card.is-portrait{width:min(39%,305px)}
.polaroid-image{height:auto;aspect-ratio:4 / 3}
.polaroid-card.is-portrait .polaroid-image{aspect-ratio:3 / 4}
.polaroid-frame{padding:clamp(9px,1vw,15px) clamp(9px,1vw,15px) 0}
.polaroid-label{min-height:clamp(55px,5vw,70px)}
@media(max-width:900px){.polaroid-experience{grid-template-columns:minmax(125px,.42fr) minmax(400px,1.58fr);gap:28px}.polaroid-card.is-landscape{width:min(57%,390px)}.polaroid-card.is-portrait{width:min(43%,280px)}}
@media(max-width:760px){.polaroid-experience{grid-template-columns:1fr;gap:6px}.polaroid-deck{min-height:440px}.polaroid-stack{width:min(100%,600px);height:390px}.polaroid-card.is-landscape{width:min(68%,360px)}.polaroid-card.is-portrait{width:min(48%,250px)}.polaroid-image{aspect-ratio:4/3}.polaroid-card.is-portrait .polaroid-image{aspect-ratio:3/4}}
@media(max-width:430px){.polaroid-deck{min-height:390px}.polaroid-stack{height:340px}.polaroid-card.is-landscape{width:min(72%,300px)}.polaroid-card.is-portrait{width:min(53%,220px)}.polaroid-card{--offset-y:0px}.polaroid-image{aspect-ratio:4/3}.polaroid-card.is-portrait .polaroid-image{aspect-ratio:3/4}}
.gallery-grid{columns:auto;display:block}
.gallery-group{margin:0 0 clamp(38px,6vw,72px)}
.gallery-group[hidden]{display:none}
.gallery-group-head{display:flex;align-items:center;gap:14px;margin:0 0 16px;color:#667064}
.gallery-group-head h2{margin:0;font:500 9px var(--ui);letter-spacing:.18em;text-transform:uppercase}
.gallery-group-head span{color:#969d91;font:500 8px var(--ui);letter-spacing:.14em}
.gallery-group-head:after{content:"";height:1px;background:rgba(25,30,27,.16);flex:1}
.gallery-group-grid{display:block;columns:4;column-gap:16px}
@media(max-width:1100px){.gallery-group-grid{columns:3}}
@media(max-width:620px){.gallery-group-grid{columns:2;column-gap:10px}}

/* Gallery lightbox: restrained silver-grey surface, metadata sits over the image. */
.gallery-page .lightbox{background:#c9cbc5;color:#20241f;border:1px solid #f4f5f1;box-shadow:0 24px 100px #0008}
.gallery-page .lightbox::backdrop{background:#737872d9;backdrop-filter:blur(8px)}
.gallery-page .lightbox figure{height:100%;min-height:0}
.gallery-page .lightbox-photo-frame{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;overflow:hidden}
.gallery-page .lightbox-photo-frame img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.gallery-page .gallery-meta{position:absolute;left:12px;right:12px;bottom:12px;z-index:1;display:flex;justify-content:space-between;gap:14px;margin:0;padding:11px 14px;background:#30332ed9;color:#fff;font:600 9px var(--ui);letter-spacing:.13em;text-transform:uppercase;backdrop-filter:blur(8px)}
.gallery-page .lightbox button{border-color:#30332e66;background:#f1f2edc7;color:#20241f}
.gallery-page .lightbox button:hover{background:#fff}
.gallery-page .lightbox-count{color:#30332e}
@media(max-width:620px){.gallery-page .lightbox{padding:46px 39px 38px}.gallery-page .gallery-meta{left:6px;right:6px;bottom:6px;gap:8px;padding:9px 10px;font-size:7px;letter-spacing:.09em}}

/* Peakframe palette: monochrome foundations, restrained blue, a small burgundy accent. */
:root{--ink:#191d24;--night:#111722;--paper:#f3f4f5;--muted:#9ba2ac;--green:#809bc0;--line:rgba(25,31,40,.17);--white:#f7f7f8;--blue:#809bc0;--blue-dark:#526d91;--blue-pale:#dce4ee;--wine:#71384b}
.topbar,.gallery-page .gallery-nav.open{background-color:#111722}
.topbar{background:linear-gradient(180deg,rgba(17,23,34,.82),rgba(17,23,34,.25))}
.nav a:after,.hero-index i{background-color:var(--blue)}
.book-link span,.hero-contact span,.button-light span,.button-outline span,.service-row i,.contact-top .eyebrow,.contact-main h2 em{color:var(--wine)}
.hero{background:#111722}
.hero-image{background:#111722}
.hero-shade{background:linear-gradient(90deg,rgba(8,12,19,.8),rgba(8,12,19,.31) 53%,rgba(8,12,19,.08)),linear-gradient(0deg,rgba(8,12,19,.58),transparent 46%)}
.eyebrow{color:#d5dfed}
.intro-band{background:var(--blue-pale);color:#202a38}
.dark-eyebrow,.quiet-link span{color:var(--blue-dark)}
.feature-img,.gallery-grid .tile-image{background:#e0e3e7}
.feature-card:focus-visible,.tile:focus-visible{outline-color:var(--blue-dark)}
.feature-caption i{color:var(--wine)}
.feature-card:hover .feature-caption i{background:var(--wine);color:#fff}
.work-bottom,.about-columns p,.about-index,.about-facts small{color:#69717c}
.about-columns .about-lead{color:#252b34}
.services-section{background:#171e2b}
.statement-photo{background:#111722}
.contact-section{background:#dce4ee;color:#1c222c}
.contact-top{border-bottom-color:rgba(25,31,40,.24)}
.contact-top .eyebrow{color:var(--wine)}
.contact-number{color:#526071}
.contact-main h2 em{color:var(--wine)}
.contact-right .button-light{background:#182131;color:#fff}
.contact-right .button-light span{color:#c18b9a}
.footer{background:#111722}
.footer a:hover{color:var(--wine)}
.gallery-header{background:#111722}
.filter-chip:hover:not([aria-pressed=true]){border-color:var(--wine);color:#e6d4da}
.gallery-group-head{color:#526071}
.gallery-group-head span{color:#8290a1}
.gallery-page .lightbox{background:#d0d3d7;color:#1d222a}
.gallery-page .lightbox::backdrop{background:#555e6bd9}
.gallery-page .gallery-meta{background:#182131e8;border-left:2px solid var(--wine)}
.gallery-page .lightbox button{border-color:#29354866;background:#f4f5f6d9;color:#1d222a}
.gallery-page .lightbox button:hover{background:#fff}
.gallery-page .lightbox-count{color:#343b47}

/* Personal image panels, with the deep blue statement area kept between them. */
.about-section{position:relative;isolation:isolate;overflow:hidden;color:#f7f8fa;background:#111722 url("optimized/1920/images/11/Photo32_31A-Edit.webp") center 56%/cover no-repeat}
.about-section::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,18,29,.87) 0%,rgba(12,18,29,.72) 50%,rgba(12,18,29,.34) 100%),linear-gradient(0deg,rgba(12,18,29,.54),rgba(12,18,29,.18))}
.about-section .dark-eyebrow,.about-section .about-index,.about-section .about-columns p,.about-section .about-columns .about-lead,.about-section .about-facts small{color:#e3e7ed}
.about-section .about-main h2{color:#fff}
.about-section .about-main h2 em{color:#a9bddc}
.about-section .about-facts{border-top-color:#ffffff45}
.about-section .about-facts b{color:#fff}
.statement-section{background:#17253b}
.statement-photo{background:#17253b}
.statement-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 52%;filter:none;opacity:.88}
.statement-copy{background:#17253b}
@media(max-width:620px){.about-section{background-position:64% center}.about-section::before{background:linear-gradient(90deg,rgba(12,18,29,.78),rgba(12,18,29,.53)),linear-gradient(0deg,rgba(12,18,29,.8),rgba(12,18,29,.18))}.statement-photo{height:auto;aspect-ratio:1.8}.statement-photo img{height:100%;object-fit:cover}}

/* Let the full coastal panorama breathe; place the quote over its open sky. */
.statement-section{display:block;position:relative;min-height:clamp(520px,58vw,760px);overflow:hidden;background:#17253b;color:#17253b}
.statement-photo{position:absolute;inset:0;min-height:0;height:100%;display:flex;align-items:center;justify-content:center;background:#17253b}
.statement-photo img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;filter:none;opacity:1}
.statement-copy{position:absolute;z-index:1;inset:8% auto auto 9%;width:min(700px,69%);padding:clamp(18px,4vw,54px);color:#17253b;text-shadow:0 1px 12px rgba(255,255,255,.42)}
.statement-copy .eyebrow,.signature{color:#243d60}
.statement{max-width:650px;color:#17253b;font-size:clamp(35px,4.6vw,62px);text-shadow:0 2px 16px rgba(255,255,255,.58)}
.about-section{grid-template-columns:.22fr minmax(0,.78fr);background-position:right center}
.about-section::before{background:linear-gradient(90deg,rgba(12,18,29,.16) 0%,rgba(12,18,29,.1) 48%,rgba(12,18,29,.03) 100%),linear-gradient(0deg,rgba(12,18,29,.18),rgba(12,18,29,.02))}
.about-section .about-main{max-width:790px}
.about-section .about-columns{grid-template-columns:1fr;max-width:690px;gap:18px}
.about-section .about-columns p,.about-section .about-columns .about-lead,.about-section .dark-eyebrow,.about-section .about-index,.about-section .about-facts small{color:#17202d;text-shadow:0 1px 9px rgba(255,255,255,.56)}
.about-section .about-main h2,.about-section .about-facts b{color:#111a26;text-shadow:0 1px 12px rgba(255,255,255,.5)}
.about-section .about-main h2 em{color:#526d91}
.about-section .about-facts{border-top-color:#17202d60}
@media(max-width:850px){.about-section{grid-template-columns:.18fr minmax(0,.82fr)}}
@media(max-width:620px){.statement-section{min-height:420px;aspect-ratio:auto}.statement-photo img{object-fit:contain}.statement-copy{inset:4% 4% auto;width:92%;padding:18px}.statement{font-size:clamp(29px,8vw,42px)}.about-section{background-position:65% center}.about-section .about-columns{grid-template-columns:1fr}.about-section .about-side{align-items:flex-start}.about-section .about-main{margin-top:28px}}

/* Let the full coastal panorama breathe; place the quote over its open sky. */
.statement-section{display:block;position:relative;min-height:clamp(520px,58vw,760px);overflow:hidden;background:#17253b;color:#17253b}
.statement-photo{position:absolute;inset:0;min-height:0;height:100%;display:flex;align-items:center;justify-content:center;background:#17253b}
.statement-photo img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;filter:none;opacity:1}
.statement-copy{position:absolute;z-index:1;inset:8% auto auto 9%;width:min(700px,69%);padding:clamp(18px,4vw,54px);color:#17253b;text-shadow:0 1px 12px rgba(255,255,255,.42)}
.statement-copy .eyebrow,.signature{color:#243d60}
.statement{max-width:650px;color:#17253b;font-size:clamp(35px,4.6vw,62px);text-shadow:0 2px 16px rgba(255,255,255,.58)}
.about-section{grid-template-columns:.22fr minmax(0,.78fr);background-position:right center}
.about-section::before{background:linear-gradient(90deg,rgba(12,18,29,.16) 0%,rgba(12,18,29,.1) 48%,rgba(12,18,29,.03) 100%),linear-gradient(0deg,rgba(12,18,29,.18),rgba(12,18,29,.02))}
.about-section .about-main{max-width:790px}
.about-section .about-columns{grid-template-columns:1fr;max-width:690px;gap:18px}
.about-section .about-columns p,.about-section .about-columns .about-lead,.about-section .dark-eyebrow,.about-section .about-index,.about-section .about-facts small{color:#17202d;text-shadow:0 1px 9px rgba(255,255,255,.56)}
.about-section .about-main h2,.about-section .about-facts b{color:#111a26;text-shadow:0 1px 12px rgba(255,255,255,.5)}
.about-section .about-main h2 em{color:#526d91}
.about-section .about-facts{border-top-color:#17202d60}
@media(max-width:850px){.about-section{grid-template-columns:.18fr minmax(0,.82fr)}}
@media(max-width:620px){.statement-section{min-height:420px;aspect-ratio:auto}.statement-photo img{object-fit:contain}.statement-copy{inset:4% 4% auto;width:92%;padding:18px}.statement{font-size:clamp(29px,8vw,42px)}.about-section{background-position:65% center}.about-section .about-columns{grid-template-columns:1fr}.about-section .about-side{align-items:flex-start}.about-section .about-main{margin-top:28px}}

/* Quote sits directly over the bright sea, with the whole panorama visible. */
.statement-section{display:block;position:relative;height:clamp(360px,33.333vw,760px);min-height:360px;overflow:hidden;background:#17253b;color:#17253b}
.statement-photo{position:absolute;inset:0;min-height:0;height:100%;display:flex;align-items:center;justify-content:center;background:#17253b}
.statement-photo img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;filter:none;opacity:1}
.statement-copy{position:absolute;z-index:1;inset:50% 6% auto auto;transform:translateY(-50%);width:min(34%,510px);padding:0;color:#17253b;text-shadow:none}
.statement-copy .eyebrow{color:#243d60;text-shadow:0 1px 5px #fff8}
.statement{max-width:none;margin:14px 0 20px;color:#17253b;font-size:clamp(25px,3.4vw,48px);line-height:1.08;text-shadow:0 1px 8px #fff9}
.signature{color:#71384b;text-shadow:0 1px 5px #fff8}
/* Keep all biography copy on the open left side of the palms photograph. */
.about-section{position:relative;display:block;min-height:700px;background-position:center 58%;}
.about-section::before{background:linear-gradient(90deg,rgba(242,245,248,.26) 0%,rgba(242,245,248,.2) 48%,rgba(242,245,248,.02) 78%),linear-gradient(0deg,rgba(242,245,248,.1),rgba(242,245,248,.02))}
.about-section .about-side{position:absolute;top:clamp(35px,5vw,70px);right:clamp(24px,10vw,165px);left:auto;display:block;text-align:right}
.about-section .about-side .dark-eyebrow{color:#111a26;text-shadow:0 1px 8px #fff9}
.about-section .about-index{display:none}
.about-section .about-main{width:min(66%,850px);max-width:850px;margin:0}
.about-section .about-main h2{color:#111a26;text-shadow:0 1px 12px #fff9}
.about-section .about-main h2 em{color:#526d91}
.about-section .about-columns{display:grid;grid-template-columns:1fr;gap:18px;max-width:650px}
.about-section .about-columns p,.about-section .about-columns .about-lead,.about-section .about-facts small{color:#17202d;text-shadow:0 1px 8px #fff9}
.about-section .about-facts{width:min(650px,100%);border-top-color:#17202d55}
.about-section .about-facts b{color:#111a26;text-shadow:0 1px 8px #fff9}
@media(max-width:850px){.about-section{min-height:680px}.about-section .about-main{width:72%}.about-section .about-side{right:8vw}}
@media(max-width:620px){.statement-section{height:clamp(300px,66vw,420px);min-height:300px}.statement-photo img{object-fit:contain}.statement-copy{right:4%;width:38%;}.statement-copy .eyebrow{font-size:7px}.statement{font-size:clamp(18px,5.2vw,28px);margin:8px 0 10px}.signature{font-size:24px}.about-section{min-height:780px;background-position:65% center}.about-section .about-main{width:88%}.about-section .about-side{top:26px;right:20px}.about-section .about-side .dark-eyebrow{font-size:7px}.about-section .about-columns{grid-template-columns:1fr}.about-section .about-facts{gap:14px;flex-wrap:wrap}.about-section .about-facts small{font-size:6px}}

/* The quote is part of the photograph, with no blue panel behind it. */
.statement-copy{background:transparent!important;box-shadow:none!important;text-shadow:none!important}
.statement-copy .eyebrow,.statement,.signature{background:transparent!important;box-shadow:none!important;text-shadow:0 1px 2px rgba(255,255,255,.22)!important}
.statement-copy .eyebrow{color:#17253b}
.statement{color:#17253b}
.signature{color:#71384b}

/* Lighter hero typography lets each photograph take the lead. */
.hero-copy{width:min(760px,64vw);padding-left:clamp(24px,8vw,132px);padding-bottom:clamp(76px,9vh,112px)}
.hero-copy .eyebrow{font-size:8px;margin-bottom:13px}
.hero h1{font-size:clamp(48px,6.4vw,90px);line-height:.98;max-width:720px}
.hero-intro{max-width:420px;margin-top:16px;font-size:12px;line-height:1.65}
.hero-buttons{margin-top:22px}
.hero-buttons .button-light{padding:12px 15px;gap:22px;font-size:8px}
.hero-caption-band{justify-content:space-between;align-items:center;min-height:58px;padding-top:16px;padding-bottom:16px;gap:20px}
.hero-caption-band p{display:block!important;white-space:normal;font-size:10px;letter-spacing:.1em}
.hero-caption-contact{display:inline-flex;align-items:center;gap:12px;color:#202a38;font-size:8px;white-space:nowrap}
.hero-caption-contact span{margin-left:2px;color:#71384b}
@media(max-width:850px){.hero-copy{width:min(700px,72vw);padding-left:8vw}.hero h1{font-size:clamp(48px,7.5vw,80px)}}
@media(max-width:620px){.hero-copy{width:100%;padding:0 20px 94px}.hero-copy .eyebrow{font-size:7px;margin-bottom:10px}.hero h1{max-width:92%;font-size:clamp(42px,11vw,64px);line-height:1}.hero-intro{max-width:340px;font-size:11px;line-height:1.55;margin-top:14px}.hero-buttons{margin-top:16px}.hero-caption-band{min-height:52px;gap:10px;padding:13px 20px;justify-content:space-between}.hero-caption-band p{display:block!important;font-size:8px;letter-spacing:.07em}.hero-caption-contact{font-size:7px;gap:5px}}

/* Fill the full Stories canvas with a loose, overlapping print pile. */
.polaroid-experience{position:relative;display:block;min-height:clamp(620px,66vw,790px);padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:visible}
.polaroid-intro{position:absolute;z-index:12;top:22px;left:0;width:100%;padding:0;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;pointer-events:none}
.polaroid-intro p{display:none}
.polaroid-count{padding:5px 9px;background:#f2f0e9c9;backdrop-filter:blur(5px)}
.polaroid-deck{position:absolute;inset:0;min-height:0;margin:0;overflow:visible}
.polaroid-stack{position:absolute;inset:0;width:100%;height:100%;max-width:none}
.polaroid-card.is-landscape{width:min(48%,500px)}
.polaroid-card.is-portrait{width:min(34%,350px)}
.polaroid-image{aspect-ratio:4/3}
.polaroid-card.is-portrait .polaroid-image{aspect-ratio:3/4}
.polaroid-next{right:2%;bottom:7%;}
.polaroid-note{right:0;top:50%;}
@media(max-width:760px){.polaroid-experience{min-height:clamp(540px,150vw,720px)}.polaroid-intro{top:12px}.polaroid-stack{height:100%}.polaroid-card.is-landscape{width:min(70%,350px)}.polaroid-card.is-portrait{width:min(50%,250px)}.polaroid-next{right:4%;bottom:4%}.polaroid-note{right:2px;font-size:7px}}
@media(max-width:430px){.polaroid-experience{min-height:560px}.polaroid-card.is-landscape{width:min(74%,300px)}.polaroid-card.is-portrait{width:min(54%,220px)}}

/* Keep the editorial copy legible above the prints and use marker-like captions. */
.polaroid-intro{z-index:24;justify-content:space-between;align-items:flex-start;pointer-events:none}
.polaroid-intro p{display:block;max-width:230px;margin:20px 0 0;padding:7px 10px;background:#f2f0e9df;color:#343630;font:500 12px/1.65 var(--ui);letter-spacing:.01em;backdrop-filter:blur(6px)}
.polaroid-count{position:relative;z-index:25}
.polaroid-note{z-index:20;padding:5px 7px;background:#f2f0e9d9;color:#343630;backdrop-filter:blur(5px)}
.polaroid-label{position:relative;z-index:2;min-height:clamp(65px,6vw,84px);padding:11px 7px 15px;color:#171916;font-family:'Permanent Marker','Comic Sans MS',cursive;transform:rotate(-1deg)}
.polaroid-label strong{font-size:clamp(12px,1.2vw,16px);font-weight:400;line-height:1.35;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.polaroid-label small{font-family:'Permanent Marker','Comic Sans MS',cursive;font-size:clamp(9px,.92vw,12px);color:#343630;line-height:1.5}
.polaroid-card.is-front .polaroid-label{min-height:78px}
@media(max-width:760px){.polaroid-intro p{max-width:195px;margin-top:13px;font-size:10px;padding:5px 7px}.polaroid-label{min-height:64px;padding:9px 5px 12px}.polaroid-label strong{font-size:12px}.polaroid-label small{font-size:9px}}

/* A lived-in tabletop for the hand-written story stack. */
.section-heading h2{font-family:'Permanent Marker','Segoe Print',cursive;font-size:clamp(38px,5.2vw,70px);line-height:1.12;letter-spacing:-.035em;transform:rotate(-1deg);transform-origin:left center;color:#25303d}
.section-heading h2 em{font-style:normal;color:#783d4a;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.polaroid-experience{background-color:#c8b99f;background-image:repeating-linear-gradient(2deg,transparent 0 24px,#4438240a 25px,transparent 28px),radial-gradient(ellipse at 50% 45%,#e7dbc4 0%,#c8b99f 76%);border:0;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #77664b35;overflow:hidden}
.polaroid-experience:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 48% 54%,transparent 42%,#463a2914 100%);}
.polaroid-intro{z-index:24;justify-content:space-between;align-items:flex-start;pointer-events:none}
.polaroid-intro p{max-width:260px;margin:30px 0 0 22px;padding:0;background:none;color:#27303a;font:400 clamp(17px,1.7vw,23px)/1.4 'Permanent Marker','Segoe Print',cursive;letter-spacing:0;transform:rotate(-4deg);text-shadow:0 1px #ffffff55}
.polaroid-count{background:#efe8d8c9;color:#3e403b;border:1px solid #4e453720}
.polaroid-card{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.polaroid-image img{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.polaroid-note{background:#efe8d8cf;color:#343630}
.polaroid-print-prompt{position:fixed;z-index:100;display:flex;flex-direction:column;gap:9px;width:min(320px,calc(100vw - 32px));padding:23px 22px 20px;background:#f2f0e9;color:#1d2733;border:1px solid #202a3826;box-shadow:0 18px 60px #12182040;font-family:var(--ui)}
.polaroid-print-prompt[hidden]{display:none}
.polaroid-print-kicker{color:#7b3e4b;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.polaroid-print-prompt strong{max-width:260px;font:400 23px/1.15 var(--serif)}
.polaroid-print-prompt small{color:#666b70;font-size:10px;line-height:1.5}
.polaroid-print-prompt a{display:flex;justify-content:space-between;align-items:center;margin-top:5px;padding-top:11px;border-top:1px solid #1d27332b;color:#27384e;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.polaroid-print-prompt a span{color:#7b3e4b;font-size:15px}
.polaroid-print-close{position:absolute;top:8px;right:9px;border:0;background:none;color:#3d4651;font-size:20px;cursor:pointer}
@media(max-width:760px){.polaroid-intro p{max-width:195px;margin:13px 0 0 12px;padding:0;background:none;font:400 15px/1.35 'Permanent Marker','Segoe Print',cursive;text-shadow:0 1px #ffffff55}.polaroid-deck{z-index:1}.polaroid-print-prompt{left:16px!important;right:16px;top:auto!important;bottom:16px;width:auto}}

/* Whiteboard: keep the writing clear above a full-width spread of physical prints. */
.work-section.section-wrap{position:relative;isolation:isolate;padding:clamp(64px,8vw,112px) 0 clamp(34px,5vw,64px);background:#f4f5f2;background-image:linear-gradient(112deg,#ffffffd9 0%,#f6f7f4 43%,#ffffff 76%,#f0f2ef 100%);border-top:1px solid #c4c9c6;border-bottom:1px solid #c4c9c6;box-shadow:0 5px 20px #1e293014,inset 0 1px #fff}
.work-section:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 18% 17%,#8290950a 0,transparent 20%),radial-gradient(ellipse at 81% 64%,#65727508 0,transparent 24%),linear-gradient(180deg,#aeb7b31a,transparent 13%,transparent 88%,#b7c0bc16)}
.work-section .section-heading{position:relative;margin:0;padding:0 clamp(24px,10vw,165px) 24px;align-items:flex-end}
.work-section .section-heading h2{position:relative;z-index:2;max-width:900px;font-family:'Permanent Marker','Segoe Print',cursive;font-size:clamp(38px,5.2vw,70px);line-height:1.12;letter-spacing:-.035em;transform:rotate(-1deg);transform-origin:left center;color:#26313b}
.work-section .section-heading h2 em{font-style:normal;color:#26313b;text-decoration:none}
.work-section .polaroid-experience{min-height:clamp(940px,80vw,1150px);margin:0;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}
.work-section .polaroid-experience:before{display:none}
.work-section .polaroid-intro{z-index:10;top:5px;left:clamp(24px,10vw,165px);right:clamp(24px,10vw,165px);width:auto;align-items:center}
.work-section .polaroid-intro p{max-width:310px;margin:0;padding:0;background:transparent;color:#26313b;font:400 clamp(16px,1.8vw,23px)/1.4 'Permanent Marker','Segoe Print',cursive;letter-spacing:0;transform:rotate(-2.5deg);text-shadow:none}
.work-section .polaroid-count{background:transparent;border:0;color:#515b61;font:400 11px 'Permanent Marker','Segoe Print',cursive;transform:rotate(2deg)}
.work-section .polaroid-deck{top:240px;right:clamp(12px,4vw,64px);bottom:24px;left:clamp(12px,4vw,64px);}
.work-section .polaroid-stack{inset:0}
.work-section .polaroid-card{filter:drop-shadow(0 16px 17px #28313a20) brightness(calc(1 - var(--depth)*.035))}
.work-section .polaroid-card.is-front{filter:drop-shadow(0 22px 24px #28313a35)}
.work-section .polaroid-note{z-index:10;top:auto;right:0;bottom:8px;padding:0;background:transparent;color:#46515a;font:400 11px 'Permanent Marker','Segoe Print',cursive;letter-spacing:0;text-transform:none;transform:rotate(-2deg)}
.work-section .polaroid-next{right:1%;bottom:3%;background:#ffffffd9;border-color:#59656b61;color:#34404a}
.work-section .work-bottom{padding:0 clamp(24px,10vw,165px);color:#36414a}
.work-section .work-bottom>span{font:400 14px 'Permanent Marker','Segoe Print',cursive;transform:rotate(-1.5deg)}
/* Use the photo's real aspect ratio inside one clean white print border. */
.work-section .polaroid-image{display:block;width:100%;height:auto;aspect-ratio:auto;background:transparent;overflow:hidden}
.work-section .polaroid-image img{display:block;width:100%;height:auto;max-height:none;object-fit:initial}
.work-section .polaroid-card.is-portrait .polaroid-image{aspect-ratio:auto}
.wordmark{position:relative;isolation:isolate;gap:0;min-height:48px;padding:10px 4px}
.wordmark-watermark{position:absolute;z-index:-1;left:-8px;top:50%;width:174px;height:48px;transform:translateY(-50%);background:url('peakframe-wordmark.svg') center/contain no-repeat;opacity:.24;pointer-events:none}
.wordmark-name{position:relative;z-index:1;padding-left:5px;text-shadow:0 1px 8px #10182155}
.wordmark-name span{letter-spacing:.12em}
@media(max-width:760px){
  .work-section.section-wrap{padding:54px 0 34px}
  .work-section .section-heading{padding:0 20px 12px;gap:15px}
  .work-section .section-heading h2{font-size:clamp(34px,9.6vw,54px);line-height:1.08}
  .work-section .polaroid-experience{min-height:clamp(760px,190vw,1000px)}
  .work-section .polaroid-intro{top:9px;left:20px;right:20px;align-items:flex-start}
  .work-section .polaroid-intro p{max-width:190px;margin:0;font-size:15px;line-height:1.3}
  .work-section .polaroid-deck{top:132px;left:0;right:0;bottom:20px;min-height:0}
  .work-section .polaroid-stack{height:100%;width:100%}
  .work-section .polaroid-card.is-landscape{width:min(70%,350px)}
  .work-section .polaroid-card.is-portrait{width:min(50%,250px)}
  .work-section .polaroid-note{right:12px;bottom:8px;font-size:9px}
  .work-section .polaroid-next{right:4%;bottom:2%}
  .work-section .work-bottom{padding:0 20px;gap:20px}
  .work-section .work-bottom>span{font-size:12px}
  .wordmark{min-height:44px;padding:8px 2px}
  .wordmark-watermark{left:-7px;width:151px;height:42px}
  .wordmark-name{padding-left:4px}
}

/* Mobile hero: use portrait gallery frames and let wide originals crop into them. */
@media(max-width:620px){
  .hero-image{width:100%;height:100%;object-fit:cover;object-position:center}
  .statement-section{display:flex;flex-direction:column;height:auto;min-height:0;aspect-ratio:auto;background:#17253b;color:#f4f4f1;overflow:hidden}
  .statement-photo{position:relative;inset:auto;width:100%;height:clamp(210px,58vw,310px);min-height:0;max-height:none;flex:0 0 auto;background:#111722}
  .statement-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;filter:grayscale(.35);opacity:.82}
  .statement-copy{position:relative;inset:auto;width:auto;min-height:0;padding:20px 22px 26px;display:flex;flex-direction:column;align-items:flex-start}
  .statement-copy .eyebrow{margin:0;color:#aebbd1;font-size:7px;letter-spacing:.16em}
  .statement{max-width:22ch;margin:9px 0 13px;font-size:clamp(24px,6.6vw,32px);line-height:1.14;letter-spacing:-.025em}
  .signature{align-self:flex-end;margin:0 0 2px;color:#d1a2aa;font-size:20px;white-space:nowrap}
}

/* Keep the mobile print pile inside the viewport so the page never pans sideways. */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .work-section{overflow:hidden}
  .work-section .polaroid-experience{overflow:hidden}
  .work-section .polaroid-card.is-landscape{width:min(64vw,300px)}
  .work-section .polaroid-card.is-portrait{width:min(46vw,225px)}
}

/* Place the mobile hero copy in the clear upper-right area of the portrait frames. */
@media(max-width:620px){
  .hero-copy{position:absolute;top:clamp(116px,15vh,142px);right:20px;bottom:auto;left:auto;width:min(76vw,330px);padding:0;text-align:right;z-index:2}
  .hero-copy .eyebrow{margin:0 0 9px;font-size:7px;line-height:1.4;text-shadow:0 1px 10px #09100fc9}
  .hero h1{max-width:none;font-size:clamp(30px,9.1vw,40px);line-height:1.02;text-shadow:0 2px 18px #09100fa8}
  .hero-intro{max-width:31ch;margin:12px 0 0 auto;font-size:10px;line-height:1.5;text-shadow:0 1px 10px #09100fd9}
  .hero-buttons{justify-content:flex-end;margin-top:14px}
  .hero-shade{background:linear-gradient(180deg,#09100f55 0%,transparent 37%),linear-gradient(270deg,#09100f45 0%,transparent 76%),linear-gradient(0deg,#090e0ce8 0%,#090e0c6b 55%,#090e0c12 100%)}
  .statement-photo img{object-position:26% center;filter:none;opacity:1}
  .statement-copy{color:#f4f4f1}
  .statement-copy .eyebrow{color:#d1d9e6!important;text-shadow:none!important}
  .statement{color:#f4f4f1!important;text-shadow:none!important}
  .signature{color:#d1a2aa!important;text-shadow:none!important}
}

/* Give the upper-right hero copy breathing room and anchor its action low. */
@media(max-width:620px){
  .hero-copy{top:clamp(116px,15vh,142px);right:20px;bottom:68px;display:flex;flex-direction:column;align-items:flex-end}
  .hero-copy .eyebrow,.hero h1,.hero-intro{width:100%}
  .hero-buttons{margin-top:auto;padding-top:18px}
  .hero-shade{background:radial-gradient(ellipse at 87% 24%,rgba(4,10,17,.74) 0%,rgba(4,10,17,.38) 34%,transparent 72%),linear-gradient(180deg,#09100f4d 0%,transparent 38%),linear-gradient(270deg,#09100f45 0%,transparent 76%),linear-gradient(0deg,#090e0ce8 0%,#090e0c6b 55%,#090e0c12 100%)}
}

/* Lock out document-level sideways panning on narrow touch screens. */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  @supports (overflow:clip){
    html,body{overflow-x:clip!important}
  }
  body{position:relative;left:0;right:0}
  #top,main,.topbar,.hero,.intro-band,.work-section,.about-section,.services-section,.contact-section,.footer{max-width:100%;}
  .work-section,.work-section .polaroid-experience{overflow-x:clip}
}

/* Keep the full statement and signature comfortably inside the photo's text area. */
@media(min-width:761px){
  .statement-copy{width:min(30%,440px);right:7%}
  .statement{font-size:clamp(20px,2.35vw,34px);line-height:1.12;margin:10px 0 12px}
  .signature{display:inline-block;font-size:18px;line-height:1.2}
}

/* Give the mobile Polaroid pile more width and a little more lateral spread. */
@media(max-width:760px){
  .work-section .polaroid-card.is-landscape{width:min(68vw,330px)}
  .work-section .polaroid-card.is-portrait{width:min(53vw,260px)}
}
