:root{--paper:#f3efe6;--ink:#19251f;--green:#244b3e;--orange:#ed6947;--muted:#77766e;--line:rgba(25,37,31,.22);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.site-header{height:94px;padding:0 5.2vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.wordmark{font-weight:700;letter-spacing:-.08em;font-size:21px;line-height:.73;color:var(--ink);text-decoration:none;position:relative}.wordmark span{font-size:12px;letter-spacing:.08em}.wordmark i{font:normal 8px var(--mono);position:absolute;right:-15px;top:0}.main-nav{display:flex;gap:clamp(22px,4vw,64px);align-items:center}.main-nav a,.lang-switch,.side-note,.section-label,.eyebrow,.hero-image figcaption,.image-index,.fact-row,.video-caption,.archive-photo figcaption,.archive-years,.social-link,.site-footer,.instagram-small{font:10px var(--mono);letter-spacing:.04em;text-transform:uppercase}.main-nav a{color:var(--ink);text-decoration:none;transition:color .2s}.main-nav .video-nav-link{color:var(--green);border-bottom:1px solid var(--orange);padding-bottom:5px}.main-nav .video-nav-link:before{content:"▶";font-size:.72em;color:var(--orange);margin-right:6px;vertical-align:1px}.social-feature[id="video"]{scroll-margin-top:18px}.main-nav a:hover,.text-link:hover{color:var(--orange)}.header-tools{display:flex;gap:24px;align-items:center}.lang-switch{border:0;background:none;color:var(--ink);cursor:pointer;padding:10px 0}.lang-switch span{opacity:.45;margin:0 5px}.lang-switch.is-en{color:var(--orange)}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{width:22px;height:1px;background:var(--ink);display:block;margin:5px}.hero{min-height:calc(100vh - 94px);padding:7.2vh 9vw 7vh 12vw;position:relative;display:grid;grid-template-columns:.93fr 1.07fr;align-items:center;gap:5vw;overflow:hidden}.hero-copy{position:relative;z-index:1;padding-top:1vh}.eyebrow{color:var(--green);margin:0 0 28px}.spark{font-size:17px;vertical-align:-2px;color:var(--orange);padding-right:8px}.hero h1,.intro h2,.archive-title h2,.social-content h2,.contact-grid h2{font:500 clamp(52px,7.2vw,108px)/.94 var(--serif);letter-spacing:-.055em;margin:0}.hero h1 em,.intro h2 em,.archive-title h2 em,.social-content h2 em,.contact-grid h2 em{font-weight:500;color:var(--green)}.hero-bottom{display:flex;align-items:center;gap:32px;margin-top:42px}.hero-bottom p{max-width:290px;font-size:14px;line-height:1.65;margin:0;color:#555c55}.round-link{width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;color:var(--ink);text-decoration:none;transition:.25s}.round-link:hover{background:var(--orange);border-color:var(--orange);transform:translateY(3px)}.hero-image{margin:0;position:relative;height:min(67vh,640px);min-height:420px}.hero-image:before{content:"";position:absolute;z-index:1;inset:-15px 20px 18px -18px;border:1px solid rgba(25,37,31,.3);pointer-events:none}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-image figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:rgba(243,239,230,.92);display:flex;justify-content:space-between}.image-index{position:absolute;top:16px;right:16px;color:#fff;text-shadow:0 1px 8px #000}.image-index span{color:var(--orange);padding:0 4px}.side-note{position:absolute;right:3vw;top:48%;writing-mode:vertical-rl;transform:rotate(180deg);color:var(--muted)}.side-note span{color:var(--orange);padding-top:10px}.section-pad{padding:125px 12vw}.section-label{color:var(--muted)}.section-label span:first-child{color:var(--orange);margin-right:10px}.intro{background:#e8e4da}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;margin-top:55px;align-items:end}.intro h2{font-size:clamp(54px,7vw,100px)}.intro-text{max-width:400px;padding-bottom:7px}.lead{font:500 clamp(17px,1.65vw,22px)/1.55 var(--sans);letter-spacing:-.025em;margin:0 0 30px}.text-link{font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:10px;display:inline-flex;gap:30px;transition:color .2s}.text-link b{font-size:14px;color:var(--orange);font-weight:400}.fact-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:90px;border-top:1px solid var(--line);padding-top:18px;color:#5f625b;gap:20px}.fact-row div{display:flex;gap:14px;align-items:center}.fact-num{color:var(--orange)}.video-section{background:var(--green);color:var(--paper);padding:105px 12vw 112px}.video-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.light{color:rgba(243,239,230,.62)}.video-heading p{font:italic 20px var(--serif);margin:0;color:#f3efe6}.video-frame{position:relative;aspect-ratio:16/8.4;background:#10241d;box-shadow:0 20px 70px rgba(0,0,0,.18)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-caption{display:flex;justify-content:space-between;margin-top:14px;color:rgba(243,239,230,.7)}.video-caption b{color:var(--orange);font-size:14px;margin-left:7px}.archive-section{padding-top:120px;padding-bottom:130px}.archive-top{display:flex;justify-content:space-between;align-items:center}.archive-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;margin-top:52px;align-items:center}.archive-title h2{font-size:clamp(54px,7.2vw,102px)}.archive-title>p{font-size:14px;line-height:1.6;color:#5d625c;max-width:270px;margin:30px 0}.archive-years{color:var(--orange)}.archive-photo{margin:0;position:relative}.archive-photo img{display:block;width:100%;aspect-ratio:1.15;object-fit:cover}.archive-photo figcaption{display:flex;justify-content:space-between;padding-top:14px}.archive-photo figcaption span:last-child{color:var(--orange)}.social-section{min-height:590px;background:var(--ink);color:var(--paper);padding:95px 12vw;display:grid;grid-template-columns:1fr .82fr;gap:9vw;align-items:center;position:relative;overflow:hidden}.social-content{position:relative;z-index:1}.social-kicker{font:italic 18px var(--serif);color:#b4c6b9;margin:44px 0 14px}.social-content h2{font-size:clamp(52px,6.4vw,86px)}.social-content h2 em{color:#a8c1ae}.social-link{margin-top:31px;display:flex;width:min(330px,100%);align-items:center;justify-content:space-between;border-bottom:1px solid rgba(243,239,230,.35);padding:0 0 12px;color:var(--paper);text-decoration:none}.social-link b{font-size:16px;color:var(--orange);font-weight:400}.social-note{font-size:12px;color:rgba(243,239,230,.62);max-width:280px;line-height:1.6}.social-image{height:390px;position:relative;display:block;transform:rotate(2deg)}.social-image:before{content:"";position:absolute;inset:-12px 10px 12px -12px;border:1px solid rgba(243,239,230,.35)}.social-image img{height:100%;width:100%;object-fit:cover}.ig-sticker{position:absolute;width:61px;height:61px;border-radius:50%;right:-25px;top:-20px;display:grid;place-content:center;text-align:center;background:var(--orange);font:10px/1.4 var(--mono);color:var(--ink);transform:rotate(-12deg)}.social-orbit{position:absolute;right:34%;top:6%;font-size:160px;color:rgba(255,255,255,.035)}.contact-section{padding-top:125px;padding-bottom:130px}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;margin-top:52px;align-items:end}.contact-grid h2{font-size:clamp(58px,8vw,112px)}.contact-side{max-width:310px;padding-bottom:12px}.contact-side>p{font:500 19px/1.5 var(--serif);margin:0 0 24px}.contact-person{display:grid;gap:7px;margin:0 0 24px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-person span{font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.contact-person strong{font:500 17px var(--sans)}.contact-person a{font:14px var(--sans);color:var(--green);text-decoration:none;width:max-content}.contact-person a:hover{color:var(--orange)}.contact-button{background:var(--orange);display:flex;align-items:center;justify-content:space-between;padding:17px 19px;color:var(--ink);font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:background .2s}.contact-button:hover{background:#f48a68}.contact-button b{font-size:16px;font-weight:400}.instagram-small{display:inline-block;color:var(--ink);text-decoration:none;margin-top:20px}.site-footer{min-height:100px;border-top:1px solid var(--line);padding:25px 5.2vw;display:flex;align-items:center;justify-content:space-between;color:#73766f;font-size:9px}.footer-mark{color:var(--ink);font-size:18px}.footer-mark span{font-size:10px}.site-footer>a:not(.wordmark){color:var(--ink);text-decoration:none}
.photo-archive{background:#e8e4da;padding-top:95px;padding-bottom:105px}.photo-archive-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw;align-items:end;margin-bottom:38px}.photo-archive-heading .eyebrow{grid-column:1/-1}.photo-archive-heading h2{font:500 clamp(48px,6vw,82px)/.97 var(--serif);letter-spacing:-.055em;margin:20px 0 0}.photo-archive-heading h2 em{color:var(--green);font-weight:500}.photo-archive-heading>p:last-child{max-width:470px;color:#555c55;font-size:14px;line-height:1.75;margin:0 0 4px}.photo-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-archive-grid figure{margin:0;background:#f3efe6}.photo-archive-grid img{width:100%;height:270px;object-fit:cover;display:block}.photo-archive-grid figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;font:12px var(--mono)}.photo-archive-grid small{font-size:8px;color:var(--muted);letter-spacing:.08em}.material-gallery{background:transparent}.material-gallery-grid{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:18px;align-items:start}.material-gallery-grid figure{margin:0}.material-gallery-grid figure:nth-child(2){margin-top:54px}.material-gallery-grid figure:nth-child(3){margin-top:108px}.material-gallery-grid img{width:100%;height:320px;object-fit:cover;display:block}.material-gallery-grid figcaption{padding:11px 0;font:10px var(--mono);letter-spacing:.04em;color:var(--muted)}.project-archive-preview{display:grid;grid-template-columns:1fr 1.05fr .8fr;gap:18px;align-items:end;margin:85px 0 45px}.project-archive-preview>div{padding:20px 0}.project-archive-preview h2{font:500 clamp(40px,5vw,66px)/.98 var(--serif);letter-spacing:-.05em;margin:24px 0}.project-archive-preview h2 em{color:var(--green);font-weight:500}.project-archive-preview figure{margin:0}.project-archive-preview img{width:100%;height:300px;object-fit:cover;display:block}.project-archive-preview figure:last-child{margin-bottom:65px}

.documented-projects{background:#e8e4da}.documented-projects-heading h2{font:500 clamp(48px,6vw,82px)/.97 var(--serif);letter-spacing:-.055em;margin:22px 0 42px}.documented-projects-heading h2 em{color:var(--green);font-weight:500}.documented-projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.documented-projects-grid a{color:inherit;text-decoration:none}.documented-projects-grid img{width:100%;height:310px;object-fit:cover;display:block;margin-bottom:17px}.documented-projects-grid span{font:9px var(--mono);letter-spacing:.07em;color:var(--muted)}.documented-projects-grid h3{font:500 26px/1.15 var(--serif);margin:10px 0}.documented-projects-grid a:hover h3{text-decoration:underline;text-underline-offset:4px}

@media(max-width:800px){.site-header{height:75px;padding:0 6vw}.main-nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:26px 7vw 32px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px}.main-nav.open{display:flex}.menu-toggle{display:block}.hero{min-height:auto;display:flex;flex-direction:column;padding:64px 8vw 70px;gap:45px;align-items:stretch}.hero h1{font-size:clamp(58px,12vw,92px)}.hero-copy{padding:0}.eyebrow{margin-bottom:24px}.hero-bottom{margin-top:27px}.hero-image{height:65vw;min-height:340px}.side-note{display:none}.section-pad{padding:82px 8vw}.intro-grid,.archive-grid,.contact-grid{grid-template-columns:1fr;gap:35px;margin-top:38px}.intro-text{max-width:540px}.fact-row{margin-top:54px;grid-template-columns:1fr;gap:15px}.video-section{padding:80px 8vw}.video-heading{align-items:flex-start;gap:20px;flex-direction:column}.video-frame{aspect-ratio:16/10}.archive-top{align-items:flex-start;gap:24px;flex-direction:column}.archive-grid{gap:45px}.archive-photo{margin:0 0 0 8vw}.social-section{padding:78px 8vw 85px;grid-template-columns:1fr;gap:48px}.social-image{height:76vw;max-height:480px;margin:0 5vw}.social-content h2{font-size:clamp(58px,12vw,84px)}.contact-grid{gap:30px}.site-footer{padding:24px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:24px}.site-footer span:nth-child(2),.site-footer>a:nth-child(3){justify-self:end;text-align:right}}@media(max-width:430px){.hero h1{font-size:56px}.hero-image{min-height:300px}.section-pad{padding-top:70px;padding-bottom:70px}.intro h2,.archive-title h2{font-size:54px}.video-section{padding-top:68px;padding-bottom:72px}.video-caption{font-size:8px}.site-footer{font-size:8px}.social-section{padding-top:68px}.social-image{height:80vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Live Instagram highlight */
.instagram-latest{overflow:visible;text-decoration:none;color:var(--paper)}
.instagram-latest img{display:block}
.instagram-latest-meta{position:absolute;z-index:1;left:0;right:0;bottom:0;min-height:74px;padding:14px 16px 13px;background:linear-gradient(transparent,rgba(12,23,18,.92));display:flex;flex-direction:column;justify-content:flex-end;gap:5px;color:#fff;transform:rotate(-2deg)}
.instagram-latest-label{font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f5a48d}
.instagram-latest-caption{font:12px/1.4 var(--sans);max-width:95%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.instagram-latest-caption[hidden]{display:none}
.instagram-latest.has-post img{transition:transform .4s}
.instagram-latest.has-post:hover img{transform:scale(1.025)}
.header-logo{display:block;width:112px;flex:0 0 112px;font-size:0;line-height:0}
.header-logo img{display:block;width:100%;height:auto;mix-blend-mode:normal}
@media(max-width:800px){.header-logo{width:96px;flex-basis:96px}}
.models-section{background:#e8e4da}
.models-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end;margin-top:46px}
.models-intro h2{font:500 clamp(48px,6.3vw,82px)/.96 var(--serif);letter-spacing:-.055em;margin:0}
.models-intro h2 em{font-weight:500;color:var(--green)}
.models-intro>p{max-width:440px;margin:0;color:#555c55;font-size:15px;line-height:1.7}
.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:58px;align-items:stretch}
.model-card{background:var(--paper);padding:24px 23px 22px;border-top:2px solid var(--green);display:flex;flex-direction:column;min-width:0}
.model-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.model-code,.model-max{font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.model-capacity{font:500 40px/.95 var(--serif);letter-spacing:-.04em;color:var(--green);text-align:right;white-space:nowrap}
.model-capacity small{display:block;margin-top:6px;font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.model-card h3{font:500 25px/1.1 var(--serif);margin:22px 0 19px;color:var(--ink)}
.model-specs{margin:0;display:grid;gap:0}
.model-specs>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.35}
.model-specs dt{color:#686b63}.model-specs dd{margin:0;color:var(--ink);text-align:right}
.model-max{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--line);color:var(--orange)}
.models-footnote{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px;font-size:11px;line-height:1.6;color:#676b64}
.models-footnote p{margin:0}.models-footnote p:first-child{color:var(--ink)}
@media(max-width:800px){.models-intro{grid-template-columns:1fr;gap:24px;margin-top:38px}.model-grid{grid-template-columns:1fr;gap:14px;margin-top:38px}.model-card{padding:23px}.models-footnote{grid-template-columns:1fr;gap:10px}}

/* Multipage editorial sections */
.main-nav a.active{color:var(--orange)}
.inner-page{min-height:70vh}
.inner-hero{min-height:calc(88vh - 94px);padding:8vh 10vw 9vh 12vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center}
.inner-hero h1,.inner-page-heading h1,.case-head h1{font:500 clamp(58px,7.5vw,112px)/.94 var(--serif);letter-spacing:-.055em;margin:0}
.inner-hero h1 em,.inner-page-heading h1 em,.case-head h1 em,.editorial-grid h2 em,.image-text-band h2 em,.archive-feature-copy h2 em,.case-next h2 em{font-weight:500;color:var(--green)}
.inner-lead{font:500 clamp(18px,1.8vw,24px)/1.45 var(--serif);max-width:380px;margin:28px 0 0;color:#4e5a52}
.inner-hero-image{margin:0;position:relative;height:min(65vh,620px);min-height:380px}
.inner-hero-image:before{content:"";position:absolute;inset:-14px 18px 18px -16px;border:1px solid var(--line);pointer-events:none}
.inner-hero-image img{width:100%;height:100%;object-fit:cover}
.inner-hero-image figcaption{position:absolute;left:0;right:0;bottom:0;background:rgba(243,239,230,.94);padding:13px 16px;font:9px var(--mono);letter-spacing:.07em}
.editorial-section{background:#e8e4da}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:50px;align-items:end}
.editorial-grid h2,.image-text-band h2,.archive-feature-copy h2,.case-next h2{font:500 clamp(50px,6.7vw,96px)/.96 var(--serif);letter-spacing:-.055em;margin:0}
.editorial-copy{max-width:480px;color:#555c55;font-size:15px;line-height:1.75}
.editorial-copy .lead{color:var(--ink);font:500 clamp(17px,1.6vw,21px)/1.58 var(--sans);letter-spacing:-.02em;margin:0 0 22px}
.editorial-copy p{margin:0 0 24px}
.image-text-band{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;align-items:center;padding:100px 12vw}
.image-text-band figure{margin:0;height:min(56vw,610px);min-height:360px}
.image-text-band figure img{height:100%;width:100%;object-fit:cover}
.image-text-band>div>p:not(.eyebrow){max-width:440px;font-size:15px;line-height:1.75;color:#555c55;margin:24px 0 30px}
.cta-band{background:var(--green);color:var(--paper);position:relative}
.cta-band .eyebrow{color:rgba(243,239,230,.68);margin:0 0 30px}
.cta-band h2{font:500 clamp(58px,8vw,112px)/.94 var(--serif);letter-spacing:-.055em;margin:0 0 40px}
.cta-band h2 em{font-weight:500;color:#a8c1ae}
.cta-band .contact-button{max-width:310px}
.inner-page-heading{padding-top:105px;padding-bottom:85px}
.inner-page-heading>h1{max-width:1000px;margin-top:42px}
.heading-aside{max-width:460px;margin:44px 0 0 auto;color:#555c55;font-size:15px;line-height:1.75}
.heading-aside p{margin:0 0 24px}
.project-grid-section{background:#e8e4da;padding-top:10px}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 30px}
.project-card{display:block;color:var(--ink);text-decoration:none;min-width:0}
.project-card figure{margin:0 0 18px;overflow:hidden;background:#ded9ce}
.project-card img{display:block;width:100%;height:clamp(280px,37vw,520px);object-fit:cover;transition:transform .5s}
.project-card:hover img{transform:scale(1.025)}
.project-card-meta{display:flex;justify-content:space-between;gap:15px;font:9px var(--mono);letter-spacing:.07em;color:var(--muted);text-transform:uppercase}
.project-card h2{font:500 clamp(30px,3vw,44px)/1.1 var(--serif);letter-spacing:-.035em;margin:13px 0 9px}
.project-card p{font-size:14px;line-height:1.65;color:#555c55;max-width:450px;margin:0 0 14px}
.project-card-more{font:9px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--green)}
.archive-note{max-width:560px;margin:70px auto 0;text-align:center;color:var(--muted);font-size:13px;line-height:1.7}
.service-image{position:relative;margin:0 12vw 80px;height:min(56vw,670px);min-height:340px;background:var(--ink)}
.service-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.service-image-caption{position:absolute;left:0;right:0;bottom:0;padding:15px 18px;background:rgba(25,37,31,.83);color:var(--paper);display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:.06em}
.service-case-note{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;align-items:start;background:var(--paper)}
.service-case-copy{max-width:760px}
.service-case-copy .eyebrow{margin-bottom:24px}
.service-case-copy h2{font:500 clamp(42px,5.5vw,76px)/.98 var(--serif);letter-spacing:-.05em;margin:0 0 22px}
.service-case-copy h2 em{font-weight:500;color:var(--green)}
.service-case-copy>p:not(.eyebrow){max-width:560px;color:#555c55;font-size:15px;line-height:1.75;margin:0}
.service-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);margin-top:46px;border:1px solid var(--line)}
.curator-collab-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-card-grid article{background:var(--paper);padding:30px;min-height:250px;display:flex;flex-direction:column}
.service-card-examples{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:auto;padding-top:22px}
.service-card-example{display:inline-flex;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--line);color:var(--green);font:10px var(--mono);letter-spacing:.045em;text-decoration:none;text-transform:uppercase}
.service-card-example:hover{color:var(--orange);border-color:var(--orange)}
.service-card-example:focus-visible{outline:2px solid var(--green);outline-offset:4px}
.service-card-grid article>span,.process-list article>span{font:10px var(--mono);color:var(--orange)}
.service-card-grid h2{font:500 clamp(24px,2.5vw,34px)/1.15 var(--serif);margin:26px 0 10px}
.service-card-grid p{font-size:14px;line-height:1.65;color:#5e625b;max-width:430px;margin:0}
.process-section{background:#e8e4da}
.process-list{margin-top:45px;border-top:1px solid var(--line)}
.process-list article{display:grid;grid-template-columns:80px 1fr;gap:30px;border-bottom:1px solid var(--line);padding:24px 0}
.process-list article>span{padding-top:7px}
.process-list h2{font:500 clamp(23px,2.7vw,36px)/1.15 var(--serif);margin:0 0 8px}
.process-list p{font-size:14px;line-height:1.6;color:#62665f;margin:0}
.fine-print{max-width:600px;margin:25px 0 0 auto;color:#73766f;font-size:11px;line-height:1.7}
.archive-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:9vw;align-items:center;background:#e8e4da}
.archive-feature figure{margin:0;position:relative}
.archive-feature figure img{width:100%;height:min(57vw,620px);object-fit:cover;display:block}
.archive-feature figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:13px 15px;background:rgba(243,239,230,.92);font:9px var(--mono);letter-spacing:.05em}
.archive-feature-copy h2{font-size:clamp(44px,5.3vw,74px);margin:38px 0 22px}
.archive-feature-copy>p{max-width:440px;color:#555c55;font-size:14px;line-height:1.75;margin:0}
.archive-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.archive-mini-grid article{background:#e8e4da}
.archive-mini-grid img{width:100%;height:260px;object-fit:cover;display:block}
.archive-mini-grid article>div{padding:16px}
.archive-mini-grid article span{font:9px var(--mono);letter-spacing:.06em;color:var(--muted)}
.archive-mini-grid h2{font:500 25px/1.15 var(--serif);margin:12px 0 5px}
.case-hero{padding:70px 12vw 0}
.case-hero>.eyebrow{margin:0 0 36px}
.case-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:35px}
.case-head h1{max-width:850px;font-size:clamp(52px,7.2vw,102px)}
.case-tag{font:9px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--green);max-width:200px;line-height:1.6}
.case-cover{margin:0;position:relative;height:min(62vw,710px);min-height:340px}
.case-cover img{height:100%;width:100%;object-fit:cover;display:block}
.case-photo-cover{height:auto;aspect-ratio:1.8/1;min-height:0;overflow:hidden}
.case-photo-cover img{object-fit:cover;object-position:center 55%}
.case-wedding-cover{height:auto;aspect-ratio:3/2;min-height:0;overflow:hidden}
.case-wedding-cover img{object-position:center 50%}
.case-wedding-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:42px 0}
.case-wedding-gallery figure{position:relative;margin:0;min-width:0}
.case-wedding-gallery img{display:block;width:100%;height:clamp(230px,30vw,440px);object-fit:cover}
.case-wedding-gallery figcaption{padding:11px 0;font:9px var(--mono);letter-spacing:.06em}
.case-cover figcaption{position:absolute;left:0;right:0;bottom:0;padding:15px 17px;display:flex;justify-content:space-between;background:rgba(243,239,230,.92);font:9px var(--mono);letter-spacing:.06em}
.format-visual{margin:58px 0 0;position:relative;overflow:hidden;background:#e4dfd4}
.format-visual img{display:block;width:100%;height:clamp(260px,42vw,580px);object-fit:cover;object-position:center}
#format-public .format-visual img{object-position:center 68%}
.format-visual figcaption{position:absolute;left:0;right:0;bottom:0;padding:15px 18px;background:rgba(243,239,230,.92);font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase}
.external-project-link{margin-top:14px}
.case-related{display:grid;grid-template-columns:1.08fr .92fr;gap:9vw;align-items:center;padding:90px 12vw}
.case-related figure{margin:0;position:relative}
.case-related figure img{display:block;width:100%;height:min(49vw,560px);object-fit:cover}
.case-related figcaption{position:absolute;bottom:0;left:0;right:0;padding:13px 15px;background:rgba(243,239,230,.92);display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:.05em}
.case-related h2{font:500 clamp(44px,5.5vw,76px)/.96 var(--serif);letter-spacing:-.05em;margin:28px 0 20px}
.case-related h2 em{font-weight:500;color:var(--green)}
.case-related>div>p:not(.eyebrow){max-width:430px;color:#555c55;font-size:14px;line-height:1.75;margin:0}
.case-story{background:#e8e4da}
.case-endnote{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:14px;margin-top:55px;font:9px var(--mono);letter-spacing:.05em;color:var(--muted);text-transform:uppercase}
.case-next{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}
.case-next .text-link{grid-column:1/-1;justify-self:start}
.case-next h2{margin:0}
.case-next .contact-button{justify-self:end;width:min(310px,100%)}
.contact-page-heading .contact-grid{margin-top:50px}
.contact-page-heading h1{font-size:clamp(58px,8.3vw,118px)}
.contact-details{background:#e8e4da}
@media(max-width:800px){.case-wedding-gallery{grid-template-columns:1fr}.case-wedding-gallery img{height:68vw;max-height:440px}.inner-hero{min-height:auto;padding:65px 8vw 72px;display:flex;flex-direction:column;align-items:stretch;gap:42px}.inner-hero h1{font-size:clamp(56px,11vw,84px)}.inner-hero-image{height:70vw;min-height:320px}.editorial-grid,.image-text-band,.archive-feature,.case-related,.service-case-note{grid-template-columns:1fr;gap:35px}.editorial-grid{margin-top:38px}.documented-projects-grid{grid-template-columns:1fr;gap:30px}.documented-projects-grid img{height:65vw;max-height:420px}.documented-projects-heading h2{font-size:clamp(48px,10vw,70px)}.image-text-band{padding:75px 8vw}.image-text-band figure{height:70vw;min-height:300px}.inner-page-heading{padding:75px 8vw 65px}.inner-page-heading>h1{font-size:clamp(50px,10vw,78px);margin-top:35px}.heading-aside{margin:32px 0 0}.project-grid-section{padding:0 8vw 80px}.project-grid{grid-template-columns:1fr;gap:46px}.project-card img{height:72vw;max-height:490px}.service-image{margin:0 8vw 65px;height:68vw}.service-card-grid{grid-template-columns:1fr;margin-top:34px}.service-card-grid article{min-height:190px}.process-list article{grid-template-columns:45px 1fr;gap:14px}.archive-feature{padding:72px 8vw}.archive-feature figure img{height:65vw}.archive-mini-grid{padding:70px 8vw;grid-template-columns:1fr;gap:22px}.photo-archive{padding:70px 8vw}.photo-archive-heading{grid-template-columns:1fr;gap:20px}.photo-archive-heading h2{margin:0}.photo-archive-grid{grid-template-columns:1fr 1fr;gap:12px}.photo-archive-grid figure,.photo-archive-grid figure:nth-child(4){grid-column:auto}.photo-archive-grid img{height:48vw;max-height:320px}.material-gallery-grid{grid-template-columns:1fr 1fr}.material-gallery-grid figure:nth-child(2),.material-gallery-grid figure:nth-child(3){margin-top:0}.material-gallery-grid figure:last-child{display:none}.material-gallery-grid img{height:52vw}.project-archive-preview{grid-template-columns:1fr 1fr;margin:60px 0 35px}.project-archive-preview>div{grid-column:1/-1}.project-archive-preview img{height:48vw}.project-archive-preview figure:last-child{margin-bottom:0}.archive-mini-grid img{height:65vw;max-height:420px}.case-hero{padding:58px 8vw 0}.case-head{display:block}.case-head h1{font-size:clamp(50px,10.5vw,78px)}.case-tag{max-width:none;margin:20px 0 0}.case-cover{height:70vw}.case-related{padding:70px 8vw}.case-related figure img{height:68vw}.case-next{grid-template-columns:1fr}.case-next .text-link{grid-column:auto}.case-next .contact-button{justify-self:start}.case-endnote{flex-direction:column}.contact-page-heading .contact-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}}
@media(max-width:430px){.inner-hero h1,.inner-page-heading h1{font-size:52px}.case-head h1{font-size:49px}.editorial-grid h2,.image-text-band h2,.archive-feature-copy h2,.case-next h2{font-size:50px}.service-image{min-height:280px}.archive-mini-grid img{min-height:270px}.case-cover{min-height:280px}}
@media(max-width:800px){.format-visual{margin-top:38px}.format-visual img{height:68vw;max-height:440px}.case-photo-cover{aspect-ratio:4/3}}

.faq-section{background:#e8e4da}.faq-list{max-width:900px;margin:35px 0 0 auto;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);padding:0}.faq-item summary{cursor:pointer;list-style:none;padding:22px 38px 22px 0;font:500 clamp(21px,2.4vw,30px)/1.2 var(--serif);position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:5px;top:20px;color:var(--orange);font:20px var(--mono)}.faq-item[open] summary:after{content:"−"}.faq-item p{max-width:720px;margin:0 45px 24px 0;color:#555c55;font-size:14px;line-height:1.75}
.faq-reference-links{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;font:9px var(--mono)!important;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)!important}
.faq-reference-links a{color:var(--green);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.faq-reference-links a:hover{color:var(--orange)}.content-list{padding-left:20px;color:#555c55;font-size:14px;line-height:1.8}.case-text-cover{background:linear-gradient(135deg,#213e35,#376454 52%,#ef704b);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(24px,5vw,60px);color:var(--paper)}.case-text-cover p{font:clamp(34px,7vw,90px)/.95 var(--serif);max-width:600px;margin:0 0 18px}.case-text-cover span{font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase}

.draft-status{border:1px solid var(--line);padding:20px;margin:28px 0;background:rgba(243,239,230,.55);font-size:13px;line-height:1.6}.draft-status strong{font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--orange)}.draft-status ul{margin:12px 0 0;padding-left:18px;color:#555c55}
.home-facts{display:flex;gap:32px;margin:28px 0 24px}.home-facts div{display:flex;flex-direction:column;gap:3px}.home-facts strong{font:500 34px/1 var(--serif);color:var(--green)}.home-facts span{font:9px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.home-next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:40px;background:var(--line);border:1px solid var(--line)}.home-next-grid>a{display:flex;flex-direction:column;align-items:flex-start;background:var(--paper);padding:28px;text-decoration:none;color:var(--ink);min-height:280px}.home-next-grid>a>span{font:10px var(--mono);color:var(--orange)}.home-next-grid h2{font:500 clamp(32px,4vw,56px)/.96 var(--serif);letter-spacing:-.05em;margin:32px 0 14px}.home-next-grid h2 em{font-weight:500;color:var(--green)}.home-next-grid p{font-size:13px;line-height:1.65;color:#555c55;max-width:280px;margin:0 0 20px}.home-next-grid b{margin-top:auto;font:17px var(--mono);color:var(--green)}
@media(max-width:800px){.home-next-grid{grid-template-columns:1fr}.home-next-grid>a{min-height:220px}.home-facts{gap:22px}}
.project-card-art{height:clamp(280px,37vw,520px);display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#1d332d,#31574b 48%,#dd7659);color:var(--paper);font:500 clamp(34px,5vw,74px)/.94 var(--serif);letter-spacing:-.045em;text-align:center}
.project-card-art span{transition:transform .45s}
.project-card:hover .project-card-art span{transform:scale(1.045)}
@media(max-width:800px){.project-card-art{height:72vw;max-height:490px}}
.social-feature{background:#e8e4da}.social-feature-heading{display:grid;grid-template-columns:1fr .8fr;gap:3vw 8vw;align-items:end;margin:42px 0 36px}.social-feature-heading .eyebrow{grid-column:1/-1;margin:0}.social-feature-heading h2,.instagram-feature h2{font:500 clamp(45px,6.4vw,88px)/.94 var(--serif);letter-spacing:-.05em;margin:0;max-width:800px}.social-feature-heading h2 em,.instagram-feature h2 em{font-weight:500;color:var(--green)}.social-feature-heading>p:last-child,.instagram-feature>div>p:not(.eyebrow){max-width:400px;margin:0;color:#555c55;font-size:14px;line-height:1.75}.vimeo-frame{position:relative;aspect-ratio:16/9;background:#17211c}.vimeo-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.instagram-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}.instagram-feature h2{font-size:clamp(44px,5.6vw,76px);margin:30px 0 20px}.instagram-feature .text-link{margin-top:26px}.instagram-latest{display:block;color:var(--ink);text-decoration:none}.instagram-latest figure{margin:0;position:relative;overflow:hidden;background:#ddd7ca;aspect-ratio:1.25}.instagram-latest img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s}.instagram-latest:hover img{transform:scale(1.025)}.instagram-latest figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:14px 16px;background:rgba(243,239,230,.92);font:9px var(--mono);letter-spacing:.06em}.instagram-latest.has-post figcaption{color:var(--green)}
@media(max-width:800px){.social-feature-heading,.instagram-feature{grid-template-columns:1fr;gap:30px}.social-feature-heading h2,.instagram-feature h2{font-size:clamp(46px,10vw,72px)}.instagram-feature{padding-top:70px;padding-bottom:70px}.vimeo-frame{margin-top:30px}}
/* Progressive navigation: simplify before the full menu becomes crowded. */
@media(max-width:1500px){.site-header{padding-left:3.5vw;padding-right:3.5vw}.header-logo{width:100px;flex-basis:100px}.main-nav{gap:clamp(17px,2vw,28px)}.main-nav a{white-space:nowrap;font-size:9px}.header-tools{gap:14px}.main-nav>a:nth-child(2),.main-nav>a:nth-child(5){display:none}}
@media(max-width:1140px){.site-header{height:78px;padding:0 6vw}.header-logo{width:94px;flex-basis:94px}.main-nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:24px 7vw 30px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px}.main-nav.open{display:flex}.main-nav>a:nth-child(2),.main-nav>a:nth-child(5){display:block}.main-nav a{font-size:10px}.menu-toggle{display:block;border:0;background:none;padding:10px;cursor:pointer}.menu-toggle span{width:24px;height:1px;background:var(--ink);display:block;margin:6px 0}}

.geography-section{background:var(--paper);padding-top:105px;padding-bottom:110px}.geography-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:7vw;align-items:end;margin-bottom:45px}.geography-heading .eyebrow{grid-column:1/-1;margin-bottom:20px}.geography-heading h2{font:500 clamp(52px,6.5vw,88px)/.94 var(--serif);letter-spacing:-.055em;margin:0}.geography-heading h2 em{color:var(--green);font-weight:500}.geography-heading>p:last-child{max-width:440px;margin:0 0 5px;color:#555c55;font-size:15px;line-height:1.75}.geography-content{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:7vw;align-items:center}.geography-map{margin:0;min-width:0}.geography-map svg{width:100%;display:block;overflow:visible}.map-land{fill:#e5e0d6;stroke:#d3cec3;stroke-width:1.5;stroke-linejoin:round}.map-route{fill:none;stroke:#e9785f;stroke-width:2;stroke-dasharray:5 8;opacity:.8}.map-points circle{fill:#e9785f;stroke:var(--paper);stroke-width:4}.map-label{font:11px var(--mono);letter-spacing:.12em;fill:var(--ink)}.map-label--ny{ text-anchor:middle}.map-label--eu{ text-anchor:middle}.map-note{font:10px var(--mono);letter-spacing:.08em;fill:var(--muted);text-transform:uppercase}.geography-map figcaption{font:10px var(--mono);letter-spacing:.035em;color:var(--muted);margin-top:12px}.geography-list{border-top:1px solid var(--line)}.geography-list>a,.geography-list>.geo-place{display:grid;grid-template-columns:32px 1fr 16px;gap:10px;align-items:start;padding:17px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.geography-list>a:hover strong{color:var(--green)}.geo-index{font:10px var(--mono);color:var(--coral);padding-top:3px}.geography-list strong{display:block;font:500 23px/1.1 var(--serif)}.geography-list small{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.5}.geography-list b{font:14px var(--mono);font-weight:400;color:var(--green);padding-top:3px}

@media(max-width:800px){.geography-section{padding:72px 8vw 80px}.geography-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.geography-heading .eyebrow{margin:0}.geography-heading h2{font-size:clamp(52px,10vw,76px)}.geography-heading>p:last-child{margin:0}.geography-content{grid-template-columns:1fr;gap:26px}.geography-map svg{max-height:340px}.geography-list strong{font-size:21px}}

.instagram-cases-section{background:#e8e4da;padding-top:92px;padding-bottom:105px}.instagram-cases-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw;align-items:end;margin-bottom:42px}.instagram-cases-heading .eyebrow{grid-column:1/-1;margin-bottom:20px}.instagram-cases-heading h2{font:500 clamp(48px,6vw,80px)/.96 var(--serif);letter-spacing:-.055em;margin:0}.instagram-cases-heading h2 em{color:var(--green);font-weight:500}.instagram-cases-heading>p:last-child{max-width:450px;margin:0 0 4px;color:#555c55;font-size:14px;line-height:1.75}.instagram-cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 30px}.instagram-cases-grid .project-card img{height:clamp(280px,34vw,460px)}.instagram-cases-grid .project-card h3{font:500 clamp(30px,3vw,44px)/1.1 var(--serif);letter-spacing:-.035em;margin:13px 0 9px;color:var(--ink)}.instagram-cases-grid .project-card:hover h3{color:var(--green)}.case-instagram-gallery{background:#e8e4da;padding-top:75px;padding-bottom:75px}.case-instagram-gallery-heading{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end;margin-bottom:30px}.case-instagram-gallery-heading .eyebrow{grid-column:1/-1;margin-bottom:0}.case-instagram-gallery-heading h2{font:500 clamp(42px,5vw,68px)/.98 var(--serif);letter-spacing:-.05em;margin:0}.case-instagram-gallery-heading h2 em{color:var(--green);font-weight:500}.case-instagram-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.case-instagram-gallery-grid figure{margin:0;background:#ded9ce;min-width:0}.case-instagram-gallery-grid figure:nth-child(2){margin-top:0}.case-instagram-gallery-grid img{width:100%;height:clamp(230px,28vw,390px);object-fit:cover;display:block}.gallery-trigger{display:block;width:100%;padding:0;border:0;position:relative;background:#d5d0c5;cursor:zoom-in;overflow:hidden}.gallery-trigger:after{content:"↗";position:absolute;right:12px;top:12px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(243,239,230,.94);color:var(--ink);font:15px var(--mono);opacity:.9;transform:none;transition:.2s}.gallery-trigger:hover:after,.gallery-trigger:focus-visible:after{opacity:1;transform:scale(1.08)}.gallery-trigger:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.case-instagram-gallery-grid figcaption{padding:12px 14px;font:10px var(--mono);letter-spacing:.035em;text-transform:uppercase;line-height:1.5}.case-instagram-gallery-note{margin:18px 0 0;font:10px var(--mono);color:var(--muted);letter-spacing:.03em}
.photo-lightbox{width:min(94vw,1380px);max-width:none;max-height:94vh;padding:0;border:0;background:transparent;color:var(--paper);overflow:visible}.photo-lightbox::backdrop{background:rgba(12,18,15,.92);backdrop-filter:blur(4px)}.photo-lightbox__layout{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;grid-template-rows:auto minmax(0,1fr);gap:14px;align-items:center;max-height:94vh}.photo-lightbox__close{grid-column:1/-1;justify-self:end;width:42px;height:42px;border:1px solid rgba(243,239,230,.5);border-radius:50%;background:transparent;color:var(--paper);font:24px var(--sans);cursor:pointer}.photo-lightbox__step{width:48px;height:48px;border:1px solid rgba(243,239,230,.5);border-radius:50%;background:rgba(243,239,230,.12);color:var(--paper);font:22px var(--sans);cursor:pointer}.photo-lightbox__step:hover,.photo-lightbox__close:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}.photo-lightbox figure{margin:0;min-width:0;text-align:center}.photo-lightbox img{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;margin:0 auto;object-fit:contain}.photo-lightbox figcaption{margin-top:12px;color:rgba(243,239,230,.8);font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase}.photo-lightbox[open]{display:block}
@media(max-width:800px){.instagram-cases-section{padding:70px 8vw 78px}.instagram-cases-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.instagram-cases-heading .eyebrow{margin:0}.instagram-cases-heading h2{font-size:clamp(46px,9vw,72px)}.instagram-cases-heading>p:last-child{margin:0}.instagram-cases-grid{grid-template-columns:1fr;gap:38px}.instagram-cases-grid .project-card img{height:68vw;max-height:430px}.case-instagram-gallery{padding:65px 8vw}.case-instagram-gallery-heading{grid-template-columns:1fr;gap:20px}.case-instagram-gallery-heading .eyebrow{margin:0}.case-instagram-gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.case-instagram-gallery-grid figure:nth-child(2){margin-top:0}.case-instagram-gallery-grid img{height:48vw;max-height:320px}.photo-lightbox__layout{grid-template-columns:38px minmax(0,1fr) 38px;gap:8px}.photo-lightbox__step{width:36px;height:36px;font-size:18px}.photo-lightbox img{max-height:70vh}}

/* Clear, scannable homepage directory for the project's main formats. */
.home-formats{background:#e8e4da;padding-top:95px;padding-bottom:105px}.home-formats-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start;margin-top:30px}.home-formats-grid>div:first-child h2{font:500 clamp(48px,6vw,82px)/.97 var(--serif);letter-spacing:-.055em;margin:20px 0}.home-formats-grid>div:first-child h2 em{color:var(--green);font-weight:500}.home-formats-grid>div:first-child>p:not(.eyebrow){max-width:440px;color:#555c55;font-size:15px;line-height:1.75}.home-format-links{border-top:1px solid var(--line)}.home-format-links a{display:grid;grid-template-columns:42px 1fr 20px;gap:12px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font:13px var(--mono);letter-spacing:.01em}.home-format-links a>span:first-child{color:var(--muted);font-size:10px}.home-format-links a b{font-size:15px;font-weight:400}.home-format-links a:hover span:nth-child(2){text-decoration:underline;text-underline-offset:4px}
@media(max-width:1180px){.site-header{position:relative}.main-nav{display:none;position:absolute;z-index:20;top:100%;left:0;right:0;background:var(--paper);padding:26px 7vw 32px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px}.main-nav.open{display:flex}.menu-toggle{display:block}}
@media(max-width:800px){.home-formats{padding-top:66px;padding-bottom:76px}.home-formats-grid{grid-template-columns:1fr;gap:35px;margin-top:18px}.home-format-links a{padding:15px 0;font-size:11px}}

.lang-switch{appearance:none;-webkit-appearance:none;border:0;border-radius:0;background:transparent;color:var(--ink);font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:10px 18px 10px 0;min-width:44px}
.lang-switch:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.lang-switch option{font:14px var(--mono);text-transform:none}

/* Current audit improvements */
.skip-link{position:fixed;z-index:100;left:16px;top:12px;padding:12px 16px;background:var(--ink);color:var(--paper);transform:translateY(-160%);transition:transform .2s;font:12px var(--mono)}
.skip-link:focus{transform:translateY(0);outline:3px solid var(--orange);outline-offset:3px}
.hero-actions{display:flex;align-items:center;gap:22px;flex:none}
.hero-video-link{display:inline-flex;gap:9px;align-items:center;color:var(--green);font:10px var(--mono);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--line);padding:8px 0}
.hero-video-link b{font-size:14px;color:var(--orange);font-weight:400}
.hero-video-link:hover{color:var(--orange)}
.map-points .map-point-country{fill:var(--paper);stroke:#ed6947;stroke-width:2.4}
.jordi-bio{background:#e8e4da}
.celebration-proof{padding-top:18px;padding-bottom:70px;background:#e8e4da}
.celebration-proof figure{margin:0;max-width:960px;margin-left:auto}
.celebration-proof a{position:relative;display:block;color:var(--paper);overflow:hidden;text-decoration:none}
.celebration-proof img{display:block;width:100%;height:clamp(300px,48vw,640px);object-fit:cover;object-position:center 54%;transition:transform .4s}
.celebration-proof a:hover img{transform:scale(1.015)}
.celebration-proof-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:end;gap:15px;padding:35px 20px 16px;background:linear-gradient(transparent,rgba(12,23,18,.86));font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.celebration-proof-caption b{font-weight:400;color:#fff}
.contact-page-heading .contact-button{margin-top:12px}
@media(max-width:800px){.hero-actions{gap:16px}.hero-video-link{font-size:9px}.celebration-proof{padding:10px 8vw 54px}.celebration-proof img{height:64vw;min-height:260px}.celebration-proof-caption{font-size:8px;padding:28px 12px 12px}}

/* World map: larger canvas, legible location markers, and Catalonia as the home region. */
.geography-content{grid-template-columns:minmax(0,1fr);gap:34px;align-items:start}
.geography-map{width:100%}
.geography-map svg{width:100%;height:auto;max-height:none;overflow:visible}
.geography-map .map-points .map-point{r:9px;fill:#ed6947;stroke:#fffaf1;stroke-width:3.2}
.geography-map .map-points .map-point-catalonia{r:12px;fill:#244b3e;stroke:#fffaf1;stroke-width:4}
.geography-map .map-points .map-point-country{r:13px;fill:#fffaf1;stroke:#ed6947;stroke-width:3.5}
.map-city-labels{font:13px var(--mono);letter-spacing:.015em;fill:var(--ink);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round}
.geography-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 22px;border-top:0}
.geography-list>a,.geography-list>.geo-place{grid-template-columns:26px 1fr 12px;gap:8px;padding:15px 0;border-top:1px solid var(--line);border-bottom:0}
.geography-list .geo-catalonia{background:rgba(36,75,62,.07);padding:15px 10px;border-top:2px solid var(--green)}
.geography-list .geo-catalonia .geo-index{font-weight:500}
@media(max-width:800px){.geography-content{gap:22px}.geography-map svg{width:116%;max-width:none;margin-left:-8%}.map-city-labels{display:none}.geography-map .map-points .map-point{r:13px;stroke-width:4}.geography-map .map-points .map-point-catalonia{r:16px}.geography-map .map-points .map-point-country{r:17px}.geography-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.geography-list>a,.geography-list>.geo-place{grid-template-columns:24px 1fr 12px}.geography-list small{font-size:10px}}

/* Editorial images added to pages that previously had no body photography. */
.faq-image-feature{margin:0 12vw 74px;position:relative;overflow:hidden}
.faq-image-feature img{display:block;width:100%;height:clamp(260px,38vw,500px);object-fit:cover;object-position:center 48%}
.faq-image-feature figcaption,.contact-photo-feature figcaption{padding:12px 0;color:var(--muted);font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.contact-photo-feature{margin:0 12vw 80px auto;width:min(48%,620px)}
.contact-photo-feature img{display:block;width:100%;height:clamp(340px,43vw,600px);object-fit:cover;object-position:center 35%}
.case-photo-cover{overflow:hidden}
.case-photo-cover img{object-fit:cover}
.case-photo-cover figcaption{gap:18px;line-height:1.45}
@media(max-width:800px){.faq-image-feature{margin:0 8vw 55px}.faq-image-feature img{height:58vw;min-height:240px}.contact-photo-feature{width:84%;margin:0 8vw 55px auto}.contact-photo-feature img{height:74vw;min-height:300px}.case-photo-cover figcaption{font-size:8px;align-items:flex-start}}

/* Four-image project gallery in the homepage hero. */
.hero-gallery{isolation:isolate}
.hero-gallery-slides{position:absolute;inset:0}
.hero-gallery-slide{position:absolute;inset:0;display:block;color:var(--paper);text-decoration:none;overflow:hidden}
.hero-gallery-slide[hidden]{display:none}
.hero-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s}
.hero-gallery-slide:hover img{transform:scale(1.018)}
.hero-gallery-slide-link{position:absolute;right:17px;top:17px;width:37px;height:37px;border:1px solid rgba(255,255,255,.75);border-radius:50%;display:grid;place-items:center;color:#fff;font:16px var(--mono);background:rgba(20,29,24,.22)}
.hero-gallery figcaption{z-index:2;gap:12px;align-items:center;min-height:51px}
.hero-gallery-caption{font:9px var(--mono);letter-spacing:.055em;text-transform:uppercase}
.hero-gallery-controls{display:flex;align-items:center;gap:9px;flex:none}
.hero-gallery-count{font:9px var(--mono);white-space:nowrap;color:var(--muted)}
.hero-gallery-count [data-current-slide]{color:var(--ink)}
.hero-gallery-controls button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font:15px var(--mono);cursor:pointer;display:grid;place-items:center}
.hero-gallery-controls button:hover{background:var(--orange);border-color:var(--orange)}
.hero-gallery-controls button:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.footer-faq-link{font:9px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.footer-faq-link:hover{color:var(--orange)}
@media(max-width:800px){.hero-gallery figcaption{gap:8px}.hero-gallery-caption{font-size:8px}.hero-gallery-controls{gap:6px}.hero-gallery-controls button{width:34px;height:34px}.hero-gallery-count{font-size:8px}.site-footer .footer-faq-link{justify-self:start}}
@media(max-width:430px){.hero-gallery-caption{max-width:180px;line-height:1.35}.hero-gallery-controls{gap:4px}.hero-gallery-controls button{width:32px;height:32px}}

/* Homepage carousel: eight editorial images, stepped through with a clear horizontal motion. */
.hero-gallery{overflow:visible;touch-action:pan-y}
.hero-gallery-slides{overflow:hidden;background:#ded9ce}
.hero-gallery-slide{background:#ded9ce}
.hero-gallery-slide img{display:block}
.hero-gallery-slide.is-entering{animation:hero-gallery-enter .52s cubic-bezier(.2,.72,.25,1) both}
.hero-gallery[data-direction="previous"] .hero-gallery-slide.is-entering{animation-name:hero-gallery-enter-reverse}
@keyframes hero-gallery-enter{from{transform:translateX(7%);opacity:.5}to{transform:translateX(0);opacity:1}}
@keyframes hero-gallery-enter-reverse{from{transform:translateX(-7%);opacity:.5}to{transform:translateX(0);opacity:1}}
.hero-gallery .image-index{z-index:2;left:18px;right:auto;top:18px;font-size:10px}
.hero-gallery figcaption{z-index:2;min-height:54px;padding:10px 14px;background:rgba(243,239,230,.94)}
.hero-gallery-caption{flex:1;min-width:0;line-height:1.4}
.hero-gallery-controls button{width:34px;height:34px}
.hero-gallery-slide:focus-visible{outline:3px solid var(--orange);outline-offset:-5px}
.hero-actions{align-items:flex-start}
.hero-action-stack{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.hero-instagram-link{margin-top:2px}
@media(max-width:800px){.hero-gallery{width:100%}.hero-gallery figcaption{min-height:52px}.hero-action-stack{gap:0}.hero-instagram-link{font-size:8px}}
@media(prefers-reduced-motion:reduce){.hero-gallery-slide.is-entering{animation:none}.hero-gallery-slide img{transition:none}}

/* Press dossier */
.press-heading { padding-bottom: 3rem; }
.press-feature { margin: 0 clamp(1.25rem, 7vw, 7rem) 5rem; position: relative; }
.press-feature img { display:block; width:100%; max-height:34rem; object-fit:cover; object-position:center 58%; }
.press-feature figcaption { display:flex; justify-content:space-between; gap:1rem; padding:.9rem 0; border-bottom:1px solid var(--line, #b9b5ab); font: .7rem/1.4 var(--mono, monospace); letter-spacing:.08em; }
.press-section-heading { display:grid; grid-template-columns:minmax(12rem,.7fr) 1.3fr; gap:3rem; align-items:start; margin-bottom:2.5rem; }
.press-section-heading p { max-width:43rem; margin:0; font-size:1.15rem; line-height:1.65; }
.press-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line, #b9b5ab); }
.press-card { display:flex; flex-direction:column; min-height:19rem; padding:1.7rem 1.8rem 1.6rem 0; border-bottom:1px solid var(--line, #b9b5ab); }
.press-card:nth-child(odd) { padding-right:2.6rem; }
.press-card:nth-child(even) { padding-left:2.6rem; border-left:1px solid var(--line, #b9b5ab); }
.press-card-meta { display:flex; justify-content:space-between; gap:1rem; color:var(--ink-soft, #53615a); font: .68rem/1.5 var(--mono, monospace); letter-spacing:.08em; }
.press-kind { margin-top:1.3rem; color:var(--accent, #db7156); font: .66rem/1.5 var(--mono, monospace); letter-spacing:.08em; }
.press-card h2 { margin:.6rem 0 .7rem; font: 500 clamp(1.35rem,2.1vw,2rem)/1.14 var(--serif, Georgia,serif); }
.press-card p { margin:0 0 1.2rem; color:var(--ink-soft, #59635d); line-height:1.6; }
.press-card>a { margin-top:auto; width:max-content; color:var(--ink, #17231f); font: .75rem/1.5 var(--mono, monospace); letter-spacing:.04em; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:.3rem; }
.press-card>a:hover { color:var(--accent, #db7156); }
.press-archive-note { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; border-top:1px solid var(--line, #b9b5ab); }
.press-archive-note h2 { margin:.7rem 0 0; font: 500 clamp(2rem,4vw,3.7rem)/1 var(--serif, Georgia,serif); }
.press-archive-note p { max-width:40rem; line-height:1.7; }
@media (max-width:760px) {
 .press-feature { margin:0 1rem 3rem; }
 .press-feature figcaption { font-size:.58rem; }
 .press-section-heading,.press-archive-note { grid-template-columns:1fr; gap:1.3rem; }
 .press-grid { grid-template-columns:1fr; }
 .press-card,.press-card:nth-child(odd),.press-card:nth-child(even) { min-height:0; padding:1.4rem 0; border-left:0; }
 .press-card-meta { font-size:.58rem; }
 .press-card h2 { font-size:1.65rem; }
}

/* Press dossier hierarchy: dedicated coverage leads; incidental mentions follow. */
.press-grid-primary { border-top:2px solid var(--ink, #17231f); }
.press-card-primary { min-height:21rem; padding-top:1.9rem; background:linear-gradient(180deg,rgba(23,35,31,.045),rgba(23,35,31,0) 78%); }
.press-card-primary .press-kind { color:var(--ink, #17231f); font-weight:700; }
.press-card-primary h2 { font-size:clamp(1.55rem,2.35vw,2.2rem); }
.press-mentions-heading { margin-top:5rem; }
.press-grid-mentions { grid-template-columns:repeat(3,minmax(0,1fr)); }
.press-card-mention { min-height:17rem; padding:1.4rem 1.2rem 1.4rem 0; }
.press-card-mention:nth-child(odd),.press-card-mention:nth-child(even) { padding-right:1.2rem; padding-left:1.2rem; }
.press-card-mention:nth-child(3n+1) { padding-left:0; }
.press-card-mention:nth-child(3n) { border-left:1px solid var(--line, #b9b5ab); }
.press-card-mention h2 { font-size:clamp(1.2rem,1.65vw,1.65rem); }
@media (max-width:900px) {
 .press-grid-mentions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .press-card-mention:nth-child(3n+1) { padding-left:1.2rem; }
 .press-card-mention:nth-child(odd) { padding-left:0; }
 .press-card-mention:nth-child(even) { border-left:1px solid var(--line, #b9b5ab); }
}
@media (max-width:760px) {
 .press-mentions-heading { margin-top:3rem; }
 .press-card-primary { min-height:0; padding-top:1.4rem; }
 .press-grid-mentions { grid-template-columns:1fr; }
 .press-card-mention,.press-card-mention:nth-child(odd),.press-card-mention:nth-child(even),.press-card-mention:nth-child(3n+1),.press-card-mention:nth-child(3n) { min-height:0; padding:1.4rem 0; border-left:0; }
}

/* Homepage recognition panel */
.recognitions-band { padding-top:clamp(4rem,8vw,7.5rem); padding-bottom:clamp(4rem,8vw,7.5rem); background:var(--ink,#17231f); color:var(--paper,#f3efe6); }
.recognitions-heading { display:grid; grid-template-columns:minmax(15rem,.9fr) 1.1fr; gap:1.5rem 5vw; align-items:end; margin-bottom:3rem; }
.recognitions-heading .eyebrow { grid-column:1/-1; margin:0; color:#e9a082; }
.recognitions-heading h2 { margin:0; font:500 clamp(2.8rem,6.2vw,5.7rem)/.92 var(--serif,Georgia,serif); letter-spacing:-.055em; }
.recognitions-heading h2 em { color:#b8d1c0; font-weight:500; }
.recognitions-intro { max-width:35rem; margin:0 0 .25rem auto; color:rgba(243,239,230,.75); font-size:1rem; line-height:1.7; }
.recognitions-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border:1px solid rgba(243,239,230,.22); background:rgba(243,239,230,.22); }
.recognition-card { display:flex; flex-direction:column; min-height:23rem; padding:1.65rem 1.55rem 1.5rem; background:var(--ink,#17231f); }
.recognition-year { color:#e9a082; font:500 clamp(2.3rem,4vw,3.5rem)/1 var(--serif,Georgia,serif); letter-spacing:-.05em; }
.recognition-kind { margin:1.6rem 0 .45rem; color:rgba(243,239,230,.62); font: .62rem/1.45 var(--mono,monospace); letter-spacing:.09em; }
.recognition-card h3 { max-width:19rem; margin:0 0 .8rem; font:500 clamp(1.35rem,2vw,1.8rem)/1.08 var(--serif,Georgia,serif); }
.recognition-card>p:not(.recognition-kind) { margin:0 0 1.2rem; color:rgba(243,239,230,.76); font-size:.85rem; line-height:1.65; }
.recognition-card>a { display:flex; justify-content:space-between; gap:1rem; margin-top:auto; padding-top:.85rem; border-top:1px solid rgba(243,239,230,.25); color:var(--paper,#f3efe6); font: .65rem/1.5 var(--mono,monospace); letter-spacing:.04em; text-decoration:none; }
.recognition-card>a:hover { color:#e9a082; }
.recognition-card>a b { color:#e9a082; font-weight:400; }
@media(max-width:900px) { .recognitions-grid { grid-template-columns:1fr 1fr; } .recognition-card:last-child { grid-column:1/-1; min-height:0; } }
@media(max-width:700px) { .recognitions-heading { grid-template-columns:1fr; gap:1rem; margin-bottom:2rem; } .recognitions-heading .eyebrow { grid-column:auto; } .recognitions-intro { margin:0; } .recognitions-grid { grid-template-columns:1fr; } .recognition-card,.recognition-card:last-child { grid-column:auto; min-height:0; } .recognition-card { padding:1.35rem; } .recognition-kind { margin-top:1.2rem; } }


/* Official publication marks, kept local and visually quiet. */
.press-publication { display:inline-flex; align-items:center; gap:.65rem; min-width:0; color:var(--ink,#17231f); }
.press-logo { display:block; flex:0 0 auto; width:auto; max-width:5.2rem; height:auto; max-height:2rem; padding:.12rem .2rem; object-fit:contain; background:#fff; border:1px solid rgba(23,35,31,.12); border-radius:2px; }
.press-logo-dark { padding:.28rem .38rem; background:#17231f; border-color:#17231f; }
.press-outlet { max-width:12rem; font:700 .65rem/1.35 var(--mono,monospace); letter-spacing:.035em; }
@media(max-width:760px) { .press-logo { max-width:4.1rem; max-height:1.7rem; } .press-outlet { max-width:10rem; font-size:.56rem; } }

/* Expanded project drafts: milestones, recognitions and documentary media. */
.case-awards{background:#e8e4da}
.case-awards>.eyebrow{margin:0 0 24px}
.case-awards-heading{display:grid;grid-template-columns:1fr .72fr;gap:7vw;align-items:end}
.case-awards-heading h2,.case-sequence>h2,.case-film-grid h2{font:500 clamp(46px,6vw,78px)/.96 var(--serif);letter-spacing:-.055em;margin:0}
.case-awards-heading h2 em{font-weight:500;color:var(--green)}
.case-awards-heading>p,.case-film-grid>div>p:not(.eyebrow){max-width:450px;margin:0 0 5px;color:#555c55;font-size:14px;line-height:1.75}
.case-awards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:42px;background:var(--line);border:1px solid var(--line)}
.case-awards-grid article{min-height:220px;padding:24px;background:var(--paper)}
.case-awards-grid article>span,.case-sequence-grid article>span{font:10px var(--mono);letter-spacing:.06em;color:var(--orange)}
.case-awards-grid h3{font:500 clamp(25px,3vw,38px)/1.04 var(--serif);letter-spacing:-.035em;margin:40px 0 10px}
.case-awards-grid article p{font-size:13px;line-height:1.6;color:#555c55;margin:0}
.case-awards>.fine-print{margin-top:18px}
.case-sequence{background:#e8e4da}
.case-sequence .section-label{margin-bottom:30px}
.case-sequence>h2{max-width:850px}
.case-sequence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:45px;background:var(--line);border:1px solid var(--line)}
.case-sequence-grid article{padding:24px;background:var(--paper);min-height:205px}
.case-sequence-grid h3{font:500 32px/1 var(--serif);margin:34px 0 12px}
.case-sequence-grid article p{font-size:13px;line-height:1.65;color:#555c55;margin:0;max-width:300px}
.case-sequence>.fine-print{margin:24px 0 0;max-width:700px;color:#555c55;font-size:13px;line-height:1.7}
.case-film{background:#e8e4da}
.case-film-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center;margin-top:28px}
.case-film-grid h2{margin:24px 0}
.case-film-grid .text-link{margin-top:24px}
.case-film>.fine-print{margin-top:18px}
.case-wedding-gallery:has(figure:only-child){grid-template-columns:minmax(0,1fr);max-width:800px}
@media(max-width:800px){.case-awards-heading,.case-awards-grid,.case-sequence-grid,.case-film-grid{grid-template-columns:1fr}.case-awards-heading{gap:22px}.case-awards-grid{margin-top:30px}.case-awards-grid article{min-height:170px}.case-awards-grid h3{margin-top:28px}.case-sequence-grid{margin-top:30px}.case-sequence-grid article{min-height:160px}.case-sequence-grid h3{margin-top:25px}.case-film-grid{gap:28px}.case-film-grid h2{font-size:clamp(46px,10vw,70px)}}


/* Legal information page */
.legal-page .inner-page-heading{padding:105px 12vw 68px}
.legal-page .inner-page-heading>h1{max-width:900px;margin-top:34px}
.legal-intro{max-width:620px;margin:26px 0 0;color:#555c55;font-size:17px;line-height:1.7}
.legal-draft-note{display:grid;grid-template-columns:46px minmax(0,760px);gap:22px;align-items:start;margin:0 12vw 28px;padding:28px;background:#e8e4da;border:1px solid var(--line,#c9c4b8)}
.legal-draft-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #df7357;border-radius:50%;color:#df7357;font:16px var(--mono,monospace)}
.legal-draft-note h2{margin:2px 0 12px;font:500 22px/1.2 var(--serif,Georgia,serif)}
.legal-draft-note p,.legal-draft-note li{color:#555c55;font-size:13px;line-height:1.7}
.legal-draft-note p{margin:0 0 7px}.legal-draft-note ul{margin:0;padding-left:18px}
.legal-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;border-top:1px solid var(--line,#c9c4b8)}
.legal-section .section-label{align-self:start}.legal-copy{max-width:680px;color:#555c55;font-size:14px;line-height:1.8}
.legal-copy h2{margin:0 0 22px;color:var(--ink,#17231f);font:500 clamp(30px,3.3vw,44px)/1.05 var(--serif,Georgia,serif);letter-spacing:-.035em}
.legal-copy p{margin:0 0 20px}.legal-copy a{color:var(--ink,#17231f);text-underline-offset:3px}.legal-pending,.legal-updated{font:11px/1.7 var(--mono,monospace);letter-spacing:.02em;color:#687169!important}
.legal-last{padding-bottom:110px}
.site-footer .footer-legal-link{white-space:nowrap}
@media(max-width:800px){.legal-page .inner-page-heading{padding:76px 8vw 52px}.legal-draft-note{margin:0 8vw 20px;padding:22px;grid-template-columns:34px 1fr;gap:14px}.legal-section{grid-template-columns:1fr;gap:28px}.legal-last{padding-bottom:75px}}

/* Footer policy links and privacy controls */
.site-footer{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:20px 28px;align-items:center;min-height:120px}
.site-footer .footer-links{grid-column:1/3;display:flex;flex-wrap:wrap;gap:9px 20px}
.site-footer .footer-links a{color:var(--ink);text-decoration:none;font:9px var(--mono);letter-spacing:.04em;text-transform:uppercase}
.site-footer .footer-links a:hover{color:var(--orange)}
.site-footer .footer-top-link{justify-self:end}
.site-footer>span:last-child{justify-self:end;text-align:right}
.privacy-consent{position:fixed;z-index:40;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 38px;padding:18px 5.2vw;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 36px rgba(25,37,31,.12);color:var(--ink)}
.privacy-consent[hidden]{display:none}
.privacy-consent h2{font:500 20px/1.15 var(--serif);margin:0 0 6px}
.privacy-consent p{font-size:12px;line-height:1.5;color:#555c55;max-width:850px;margin:0 0 5px}
.privacy-consent-copy>a{font:10px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--green);text-underline-offset:3px}
.privacy-consent-actions{display:flex;gap:8px;align-items:center}
.privacy-choice-button{font:9px var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:12px 14px;min-height:42px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;white-space:nowrap}
.privacy-choice-button[data-privacy-choice="accept"]{background:var(--green);border-color:var(--green);color:var(--paper)}
.privacy-choice-button[data-privacy-choice="accept"]:hover,.privacy-choice-button[data-privacy-choice="accept"]:focus-visible{background:#19372d;border-color:#19372d;color:var(--paper)}
.privacy-choice-button:hover,.privacy-choice-button:focus-visible{background:var(--ink);color:var(--paper)}
.vimeo-frame{position:relative;overflow:hidden}
.vimeo-frame iframe[src]{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
.vimeo-frame iframe:not([src]){display:none}
.vimeo-consent{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:var(--green);color:var(--paper);text-align:center}
.vimeo-consent p{font-size:13px;line-height:1.5;max-width:440px;margin:0}
.vimeo-consent-play,.vimeo-consent a{font:9px var(--mono);letter-spacing:.04em;text-transform:uppercase}
.vimeo-consent-play{padding:12px 16px;border:1px solid var(--paper);background:transparent;color:var(--paper);cursor:pointer}
.vimeo-consent-play:hover,.vimeo-consent-play:focus-visible{background:var(--paper);color:var(--ink)}
.vimeo-consent a{color:var(--paper);text-underline-offset:3px}
.vimeo-frame[data-external-loaded="true"] .vimeo-consent{display:none}
.faq-reference-links{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;font:9px var(--mono)!important;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)!important}
.faq-reference-links a{color:var(--green);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
.faq-reference-links a:hover{color:var(--orange)}
@media(max-width:800px){
 .site-footer{grid-template-columns:1fr 1fr;gap:22px 16px;min-height:auto}
 .site-footer .footer-links{grid-column:1/-1;gap:12px 16px}
 .site-footer .footer-top-link{justify-self:end}
 .site-footer>span:last-child{grid-column:1/-1;justify-self:start;text-align:left}
 .privacy-consent{grid-template-columns:1fr;gap:12px;padding:16px 7vw;max-height:48vh;overflow:auto}
 .privacy-consent-actions{display:grid;grid-template-columns:1fr 1fr}
 .privacy-choice-button{white-space:normal;line-height:1.35}
}
.privacy-consent-actions{flex-wrap:wrap}
.privacy-settings{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px;align-items:center;border-top:1px solid var(--line);padding-top:14px}
.privacy-settings[hidden]{display:none}
.privacy-settings label{display:flex;gap:8px;align-items:center;font:9px var(--mono);letter-spacing:.03em;text-transform:uppercase;color:var(--ink);cursor:pointer}
.privacy-settings input{accent-color:var(--green);width:16px;height:16px;margin:0}
.privacy-settings button{justify-self:start}
@media(max-width:800px){.privacy-settings{grid-template-columns:1fr;gap:12px}.privacy-settings button{justify-self:stretch}}


/* Home hero: keep Instagram visible immediately and show a range of work at once. */
.hero-eyebrow-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.hero-eyebrow-row .eyebrow{margin:0}
.hero-instagram-link{display:inline-flex;align-items:center;gap:7px;color:var(--green);font:9px var(--mono);letter-spacing:.035em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--line);padding:6px 0;white-space:nowrap}
.hero-instagram-link b{color:var(--orange);font-size:13px;font-weight:400}
.hero-instagram-link:hover{color:var(--orange)}
.hero-copy>.hero-eyebrow-row+h1{font-size:clamp(50px,6.65vw,98px)}
.hero-mosaic{height:min(67vh,640px);min-height:420px}
.hero-mosaic:before{inset:-15px 20px 18px -18px}
.hero-mosaic-grid{height:100%;display:grid;grid-template-columns:1.43fr 1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:9px}
.hero-mosaic-tile{position:relative;display:block;overflow:hidden;color:#fff;background:#d9d4ca;text-decoration:none;isolation:isolate}
.hero-mosaic-main{grid-row:1/4}
.hero-mosaic-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hero-mosaic-tile:hover img{transform:scale(1.025)}
.hero-mosaic-tile:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(12,19,15,.64));pointer-events:none}
.hero-mosaic-caption{position:absolute;z-index:1;left:12px;right:42px;bottom:12px;font:8px/1.35 var(--mono);letter-spacing:.035em;text-transform:uppercase;text-shadow:0 1px 5px rgba(0,0,0,.4)}
.hero-mosaic-main .hero-mosaic-caption{left:16px;bottom:16px;font-size:10px}
.hero-mosaic-tile .hero-gallery-slide-link{z-index:1;right:9px;top:9px;width:28px;height:28px;font-size:13px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:800px){.hero-eyebrow-row{align-items:flex-start;gap:5px 14px;margin-bottom:24px}.hero-instagram-link{font-size:9px}.hero-copy>.hero-eyebrow-row+h1{font-size:clamp(56px,11vw,88px)}.hero-mosaic{height:70vw;min-height:340px;max-height:520px}.hero-mosaic-grid{grid-template-columns:1.2fr 1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:6px}.hero-mosaic-caption{left:8px;right:30px;bottom:8px;font-size:7px}.hero-mosaic-main .hero-mosaic-caption{left:11px;bottom:11px;font-size:8px}.hero-mosaic-tile .hero-gallery-slide-link{right:6px;top:6px;width:23px;height:23px;font-size:11px}}
@media(max-width:430px){.hero-eyebrow-row{gap:8px 12px}.hero-eyebrow-row .eyebrow{font-size:9px}.hero-instagram-link{font-size:8px}.hero-mosaic{height:82vw;min-height:300px}.hero-mosaic-grid{gap:5px}.hero-mosaic-caption{font-size:6.5px;letter-spacing:0}.hero-mosaic-main .hero-mosaic-caption{font-size:7px}}

/* Make the language selector visibly interactive and keep the hero mosaic styled after cache refreshes. */
.language-control{display:inline-flex;align-items:center;gap:11px;min-height:38px;padding:0 14px 0 12px;border:1px solid rgba(25,37,31,.12);border-radius:999px;background:rgba(25,37,31,.035);color:var(--ink)}
.language-globe{font:18px/1 system-ui,sans-serif;line-height:1}
.language-control:after{content:"";width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:1px}
.language-control .lang-switch{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:var(--ink);cursor:pointer;font:600 13px var(--sans);letter-spacing:.04em;text-transform:uppercase;padding:8px 0;min-width:29px}
.language-control .lang-switch:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:2px}
.language-control .lang-switch option{font:14px var(--sans);text-transform:none}
.hero-mosaic{display:block;min-width:0;overflow:visible}
.hero-mosaic-grid{width:100%;min-width:0}
.hero-mosaic-tile{color:#fff!important;text-decoration:none!important}
.hero-mosaic-caption{color:#fff}


/* Homepage pacing: alternate light and dark story bands, with the film early in the journey. */
.social-feature{background:var(--ink);color:var(--paper)}
.social-feature .section-label{color:rgba(243,239,230,.62)}
.social-feature .social-feature-heading .eyebrow{color:rgba(243,239,230,.76)}
.social-feature-heading h2{color:var(--paper)}
.social-feature-heading h2 em{color:#a8c1ae}
.social-feature-heading>p:last-child{color:rgba(243,239,230,.78)}
.image-text-band{background:var(--ink);color:var(--paper)}
.image-text-band .eyebrow{color:rgba(243,239,230,.76)}
.image-text-band h2{color:var(--paper)}
.image-text-band h2 em{color:#a8c1ae}
.image-text-band>div>p:not(.eyebrow){color:rgba(243,239,230,.78)}
.image-text-band .text-link{color:var(--paper)}
.home-next{background:var(--ink);color:var(--paper)}
.home-next .section-label{color:rgba(243,239,230,.62)}
.home-next-grid{background:rgba(243,239,230,.32);border-color:rgba(243,239,230,.32)}
.home-next-grid>a{background:#24352e;color:var(--paper)}
.home-next-grid>a>span,.home-next-grid b{color:var(--orange)}
.home-next-grid h2 em{color:#a8c1ae}
.home-next-grid p{color:rgba(243,239,230,.78)}
