@font-face{font-family:Hub;src:local('Helvetica Neue');font-weight:100 900;font-display:swap}
:root{--red:#a51d20;--ink:#16181b;--muted:#686c72;--grey:#f1f2f3;--line:#d5d8db;--max:1440px;color:var(--ink);background:#fff;font-family:Hub,Arial,Helvetica,sans-serif;font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button{color:inherit}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}.wrap{width:min(calc(100% - 112px),var(--max));margin-inline:auto}.section{padding-block:110px}.grey{background:var(--grey)}.red{color:var(--red)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:600;margin-bottom:24px;line-height:1.5}h1,h2{font-weight:400;letter-spacing:-.052em;line-height:1.03}h1{font-size:clamp(3.7rem,6.7vw,7rem)}h2{font-size:clamp(2.3rem,4.2vw,4.5rem)}h3{font-size:1.5rem;font-weight:400;letter-spacing:-.03em}.lead{font-size:clamp(1.1rem,1.5vw,1.45rem);line-height:1.5;margin-top:24px;letter-spacing:-.02em}.small-label,figcaption{font-size:.8rem;color:var(--muted);line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 28px;border-radius:50px;font-size:.9rem;transition:background .2s,transform .2s;white-space:nowrap}.button-red{background:var(--red);color:#fff}.button-red:hover{background:#7f1014;transform:translateY(-2px)}.skip-link{position:absolute;top:0;left:20px;padding:15px;background:white;z-index:100;transform:translateY(-110%)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.header{position:absolute;top:0;left:0;right:0;z-index:20;padding:26px 56px;display:flex;align-items:center;justify-content:space-between;color:white}.brand{width:138px;display:block}.brand img{filter:drop-shadow(0 1px 1px #0003)}.header nav{display:flex;align-items:center;gap:38px;font-size:.9rem}.header nav>a:not(.button){position:relative;padding:10px 0}.header nav>a:not(.button):after{content:'';position:absolute;bottom:3px;left:0;width:0;height:1px;background:currentColor;transition:width .25s}.header nav>a:hover:after{width:100%}.menu-toggle{display:none}
.hero-journey{height:220svh;min-height:1100px;background:#0a0908;position:relative}.hero{position:sticky;top:0;height:100svh;min-height:670px;overflow:hidden;color:#fff}.hero-poster,#venue,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-poster{object-fit:cover;object-position:center}.hero #venue{opacity:0;transition:opacity .5s}.hero #venue.ready{opacity:1}.hero-shade{background:linear-gradient(180deg,#03020155 0%,transparent 30%,#02020125 45%,#020201c9 100%);pointer-events:none}.hero-copy{position:absolute;left:0;right:0;bottom:170px;will-change:opacity,transform}.hero .eyebrow{font-size:.75rem;color:#fff;margin-bottom:22px}.text-button{background:transparent;color:inherit;display:inline-flex;gap:17px;align-items:center;padding:0;margin-top:30px;font-size:.95rem;min-height:48px}.play-icon{display:inline-block;width:38px;height:38px;border:1px solid #ffffffba;border-radius:50%;position:relative}.play-icon:after{content:'';position:absolute;left:15px;top:12px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid white}.hero-bottom{position:absolute;bottom:58px;left:0;right:0;display:flex;align-items:center;gap:26px}.journey-tabs{position:relative;display:flex;border-top:1px solid #ffffff66;flex:1;justify-content:space-between;padding-top:18px}.journey-tabs button{background:none;padding:5px 0;color:#bbb;font-size:.9rem;min-width:100px;text-align:left;transition:color .2s}.journey-tabs button span{margin-right:9px}.journey-tabs button[aria-pressed=true]{color:#f15a54}.journey-progress{position:absolute;top:-1px;left:0;width:10%;height:2px;background:#db292c}.scroll-hint{font-size:.8rem}.motion-toggle{font-size:.75rem;background:none;color:#ccc;padding:8px;border-bottom:1px solid #777}.concept-credit{position:absolute;bottom:18px;right:56px;color:#c7c3c0;font-size:.65rem}.hero-caption{position:absolute;inset:auto 0 170px;opacity:0;pointer-events:none}.hero-caption p:last-child{font-size:clamp(2.6rem,5vw,5rem);line-height:1.08;letter-spacing:-.04em;max-width:680px}.hero-caption .eyebrow{margin-bottom:20px}
.process{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;padding-bottom:125px;min-height:650px}.process-intro{padding-top:14px}.process-visual{min-width:0}.process-main{position:relative;overflow:hidden}.process-main img{aspect-ratio:1.55;object-fit:cover;transition:opacity .2s}.process-main figcaption{position:absolute;bottom:14px;right:16px;color:#fff;font-size:.7rem;text-shadow:0 1px 4px black}.process-tabs{display:flex;justify-content:space-around;gap:10px;padding:17px 0}.process-tabs button{background:none;min-height:44px;padding:5px 8px;color:#666;font-size:.85rem;position:relative}.process-tabs button[aria-selected=true]{color:var(--red)}.process-tabs button[aria-selected=true]:after{content:'';position:absolute;bottom:0;left:8px;right:8px;height:2px;background:var(--red)}.design-sheet{position:absolute;width:31%;left:17%;bottom:85px;z-index:2;background:white;padding:9px;box-shadow:0 10px 45px #00000012;border:1px solid #ddd}.design-sheet img{aspect-ratio:1.8;object-fit:cover;filter:grayscale(1) brightness(1.7)}.design-sheet figcaption{padding:9px 0 0;font-size:.7rem}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:50px}.section-heading .small-label{white-space:nowrap;margin-bottom:10px}.project{display:grid;gap:34px;margin-bottom:58px}.project-one{grid-template-columns:2.3fr 1fr}.project-two{grid-template-columns:1fr 2.3fr;margin-bottom:0;padding-top:34px;border-top:1px solid var(--line)}.image-button{padding:0;background:transparent;position:relative;overflow:hidden;display:block;width:100%;text-align:left}.project-main{min-height:420px}.project-main img{height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-one .project-main img{object-position:center 42%}.image-button:hover>img{transform:scale(1.035)}.image-action{position:absolute;bottom:22px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:.8rem;background:#10101066;backdrop-filter:blur(12px);padding:13px 18px;border:1px solid #ffffff55;opacity:0;transform:translateY(10px);transition:all .25s}.image-action span{font-size:1.3rem}.image-button:hover .image-action,.image-button:focus-visible .image-action{opacity:1;transform:none}.project-info{display:flex;flex-direction:column;align-items:flex-start}.project-number{font-size:clamp(4rem,7.5vw,8rem);line-height:1;letter-spacing:-.08em;color:#c5c8cd;margin-bottom:9px}.red-rule{width:44px;height:2px;background:var(--red);margin:13px 0 18px}.project-info h3{margin-bottom:8px}.project-info>p{font-size:.9rem;color:var(--muted);margin-bottom:22px}.detail-crop{height:175px;margin-top:auto}.detail-crop img{height:100%;object-fit:cover;transition:transform .8s}.project-one .detail-crop img{object-position:50% 14%;transform:scale(1.7)}.project-two .detail-crop img{object-position:25% 0%;transform:scale(1.7)}
.expertise{display:grid;grid-template-columns:1.35fr 1fr;gap:70px}.expertise-image{margin-top:38px}.expertise-image img{aspect-ratio:2.6;object-fit:cover;transition:opacity .2s}.expertise-image figcaption{display:flex;gap:24px;padding-top:15px;color:var(--ink)}.expertise-image figcaption span:first-child{color:var(--red)}.service-list{padding-top:65px}.service-list details{border-top:1px solid var(--line)}.service-list details:last-child{border-bottom:1px solid var(--line)}.service-list summary{list-style:none;display:flex;align-items:center;gap:24px;cursor:pointer;padding:24px 0;min-height:76px}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span:first-child{font-size:.8rem}.service-list h3{font-size:1rem;letter-spacing:-.02em;flex:1}.plus{position:relative;width:14px;height:14px;flex:0 0 14px}.plus:before,.plus:after{content:'';position:absolute;background:currentColor;left:0;top:6px;width:14px;height:1px}.plus:after{transform:rotate(90deg);transition:transform .2s}.service-list details[open] .plus:after{transform:rotate(0)}.service-list details[open] summary{color:var(--red)}.service-list details>p{font-size:1rem;line-height:1.65;color:var(--muted);padding:0 22px 28px 42px;max-width:520px}
.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.studio-more{margin-top:28px}.studio-more summary{cursor:pointer;list-style:none;display:inline-block;border-bottom:1px solid var(--red);padding-bottom:6px;font-size:.9rem}.studio-more summary::-webkit-details-marker{display:none}.studio-more>p{margin-top:18px;line-height:1.65;color:var(--muted);max-width:450px;font-size:1rem}.craft-details{display:grid;grid-template-columns:1fr 1fr;gap:17px}.craft-crop{height:260px;overflow:hidden}.craft-crop img{height:100%;object-fit:cover;max-width:none}.structure img{transform:scale(2.8);object-position:72% 30%}.finish img{transform:scale(2.7);object-position:65% 32%}.craft-details figcaption{grid-column:1/-1;font-size:.75rem}.contact{position:relative;overflow:hidden;padding-block:90px 95px}.contact h2{color:var(--red);font-size:clamp(3rem,6vw,6.3rem);position:relative}.contact-actions{display:flex;align-items:center;gap:35px;flex-wrap:wrap;margin-top:35px;position:relative}.email-link{font-size:1rem}.email-link:hover{text-decoration:underline}.phone-link{display:inline-block;color:var(--muted);margin-top:24px;font-size:.9rem;position:relative}.contact-lines{position:absolute;right:-130px;top:40px;width:580px;height:350px;border:1px solid #ddd;border-radius:50%;transform:rotate(20deg);pointer-events:none}.contact-lines:after,.contact-lines:before{content:'';position:absolute;inset:20px -30px;border:1px solid #ddd;border-radius:50%}.contact-lines:after{inset:45px -50px}.footer{padding-block:40px}.footer-inner{display:flex;align-items:center;gap:40px;font-size:.8rem}.footer img{width:105px}.footer-inner>span{color:var(--muted)}.footer nav{margin-left:auto;display:flex;gap:25px}.footer a:hover{color:var(--red)}.back-top{color:var(--muted)}
dialog{border:0;padding:0;max-width:1100px;width:calc(100% - 56px);max-height:90svh;background:white;color:var(--ink)}dialog::backdrop{background:#080808c9;backdrop-filter:blur(7px)}.dialog-close{position:sticky;top:0;float:right;z-index:2;display:flex;gap:25px;align-items:center;background:#fff;padding:18px 25px;font-size:.9rem}.dialog-close span{font-size:1.4rem}.dialog-image{clear:both;background:#eee}.dialog-image img{max-height:55svh;object-fit:contain}.dialog-content{padding:35px}.dialog-content h2{font-size:2.5rem}.dialog-content>p:not(.eyebrow){margin:20px 0 25px;font-size:1rem;line-height:1.65;max-width:680px}body.dialog-open{overflow:hidden}
@media(min-width:1700px){.header{padding-inline:calc((100% - 1440px)/2)}.hero-copy{bottom:200px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.section{padding-block:80px}.header{padding:24px 32px}.header nav{gap:24px}.brand{width:120px}.hero{min-height:650px}.hero-copy{bottom:170px}.process{gap:30px;padding-bottom:120px}.process-intro h2{font-size:3rem}.design-sheet{left:12%;bottom:64px;width:34%}.project-main{min-height:350px}.expertise{gap:35px;grid-template-columns:1.2fr 1fr}.expertise h2{font-size:2.65rem}.studio-grid{gap:40px}.scroll-hint{display:none}.craft-crop{height:220px}.footer-inner{gap:24px}.back-top{display:none}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.section{padding-block:64px}h2{font-size:2.6rem}.eyebrow{font-size:.7rem;margin-bottom:18px}.header{padding:20px;align-items:flex-start}.brand{width:108px}.menu-toggle{display:flex;align-items:center;gap:20px;background:#10101055;color:white;padding:10px 14px;border:1px solid #ffffff4d;border-radius:3px;font-size:.85rem}.header nav{display:none;position:absolute;top:96px;right:20px;left:20px;background:#fff;color:#111;padding:24px;box-shadow:0 12px 40px #0003;flex-direction:column;align-items:stretch;gap:14px}.header nav.open{display:flex}.header nav .button{align-self:flex-start}.hero{height:100svh;min-height:620px}.hero-journey{min-height:1100px;height:190svh}.hero-poster{object-position:60% center}.hero-copy{bottom:154px}.hero h1{font-size:clamp(2.8rem,10.5vw,4.4rem)}.hero .eyebrow{font-size:.65rem;max-width:270px}.hero-bottom{bottom:54px;gap:12px}.journey-tabs{padding-top:12px;gap:15px}.journey-tabs button{font-size:.75rem;min-width:0}.journey-tabs button span{display:block;margin:0 0 6px}.motion-toggle{font-size:.65rem;width:60px;line-height:1.4}.concept-credit{bottom:17px;right:20px;font-size:.6rem}.hero-caption{bottom:165px}.hero-caption p:last-child{font-size:2.8rem}.process{display:block;padding-bottom:60px}.process-intro h2{font-size:2.7rem}.process-intro .lead br{display:none}.process-visual{margin-top:30px}.design-sheet{position:relative;left:auto;bottom:auto;width:65%;margin-top:-2px;box-shadow:none;margin-left:0}.process-main figcaption{font-size:.65rem;max-width:75%}.process-tabs button{font-size:.75rem}.section-heading{display:block;margin-bottom:32px}.section-heading .small-label{display:none}.project{gap:18px;margin-bottom:35px;grid-template-columns:1fr}.project-main{min-height:340px}.project-info{display:grid;grid-template-columns:55px 1fr;align-items:center;column-gap:15px}.project-number{font-size:3.5rem;grid-row:1/3;margin:0}.red-rule{display:none}.project-info h3{font-size:1.4rem;margin:0}.project-info>p{grid-column:2;font-size:.85rem;margin:4px 0 0}.detail-crop{display:none}.project-two .project-main{grid-row:1}.project-two{padding-top:24px;margin-bottom:0}.project-two .project-info{grid-row:2}.expertise{display:block}.expertise h2{font-size:2.65rem}.expertise-image{margin-top:26px}.service-list{padding-top:30px}.service-list summary{padding:21px 0;min-height:70px;gap:18px}.service-list details>p{padding-left:35px}.studio-grid{display:block}.craft-details{margin-top:35px;gap:13px}.craft-crop{height:230px}.contact h2{font-size:3.4rem}.contact-actions{gap:24px;margin-top:28px;align-items:flex-start;flex-direction:column}.contact-lines{right:-420px;opacity:.5}.footer-inner{flex-wrap:wrap;gap:26px}.footer nav{width:100%;margin:0;justify-content:space-between}.footer img{width:100px}.footer-inner>span{font-size:.8rem}dialog{width:calc(100% - 24px);max-height:92svh}.dialog-content{padding:24px}.dialog-content h2{font-size:2rem}.image-action{opacity:1;transform:none}}
.design-sheet img{filter:none}.process-main img{transform:scale(1.8);transform-origin:70% 35%}.structure img{transform:scale(6);transform-origin:70% 25%}.finish img{transform:scale(5);transform-origin:88% 25%}
@media(max-width:700px){.journey-tabs button{font-size:.8125rem}.hero .eyebrow{font-size:.75rem}}
@media(min-width:701px){.hero{height:100svh;min-height:580px}.hero-copy{bottom:max(100px,11.5%)}.hero h1{font-size:clamp(3.4rem,5.9vw,6rem);line-height:.91}.hero-copy .eyebrow{margin-bottom:16px}.hero .text-button{margin-top:20px;min-height:38px}.hero-bottom{bottom:25px}.concept-credit{bottom:5px}.header .brand img{filter:brightness(1.25) saturate(1.15)}}
.inner-page .header{position:relative;color:var(--ink);border-bottom:1px solid var(--line)}.inner-page .brand img{filter:none}.inner-page .menu-toggle{background:transparent;color:var(--ink);border-color:var(--line)}.header [aria-current=page]{color:var(--red)}.page-intro{padding-block:85px 75px}.page-intro h1{font-size:clamp(3.3rem,6.5vw,6.8rem);max-width:1100px}.page-intro .lead{max-width:680px;color:var(--muted)}.page-cta{padding:65px 0}.page-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.page-cta h2{font-size:clamp(2rem,4vw,3.8rem)}.section-link{display:inline-block;color:var(--red);font-size:1rem;border-bottom:1px solid var(--red);padding-bottom:8px;margin-top:28px}.project-cover img{max-height:75svh;object-fit:contain;background:#111}.project-cover figcaption{margin-top:16px}.project-story{display:grid;grid-template-columns:1fr 1fr;gap:60px}.project-story .lead{margin:0}.project-story ul{padding:20px 0;list-style:none}.project-story li{padding:17px 0;border-bottom:1px solid var(--line)}.studio-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.studio-principles h2{font-size:2.2rem;margin-bottom:22px}.studio-principles article>p:last-child{font-size:1rem;line-height:1.7;color:var(--muted)}.contact-note .small-label{margin-top:26px}.page-contact .contact{padding-top:25px}.inner-page .section:first-child+.work .section-heading{display:none}
@media(max-width:700px){.page-intro{padding-block:55px}.page-intro h1{font-size:3.2rem}.page-cta .wrap{align-items:flex-start;flex-direction:column}.project-story,.studio-principles{grid-template-columns:1fr;gap:32px}.inner-page .header{min-height:105px}.inner-page .header nav{z-index:50}.hero .motion-toggle{font-size:.75rem}.hero .concept-credit{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-journey{height:auto;min-height:0}.hero{position:relative}.hero-copy{opacity:1!important;transform:none!important}.hero-caption{display:none}}

/* Shared finishing pass: readable controls, truthful media and distinct routes. */
[hidden]{display:none!important}
.header .nav-cta[aria-current=page]{color:#fff;box-shadow:0 0 0 3px #a51d2026}
.header .brand img{filter:none}
body:not(.inner-page) .brand{position:relative}
.brand .brand-descriptor{position:absolute;inset:0;clip-path:inset(81% 0 0 0);filter:brightness(0) invert(1)!important}
.inner-page .brand-descriptor{display:none}
.header nav,.button,.journey-tabs button,.motion-toggle,.process-tabs button,.service-list h3,.studio-more summary,.footer-inner,.project-info>p,.phone-link{font-size:.875rem}
.eyebrow,.small-label,figcaption,.concept-credit,.process-main figcaption,.design-sheet figcaption,.craft-details figcaption,.scroll-hint{font-size:.75rem}
.lead,.service-list details>p{font-size:1.0625rem;line-height:1.6}
p{text-wrap:pretty}
.hero-copy h1{letter-spacing:-.055em}
.hero-copy[aria-hidden=true]{pointer-events:none}
.hero-bottom{gap:22px}
.journey-tabs button{min-height:44px}
.hero-caption .eyebrow{display:block}
.hero-caption p:last-child{font-size:clamp(2.2rem,4.5vw,4.4rem);max-width:780px}
.static-venue{height:auto;min-height:0}
.static-venue .hero{position:relative}
.static-venue .hero-copy{opacity:1!important;pointer-events:auto}
.static-venue .hero-caption,.static-venue .journey-tabs,.static-venue .motion-toggle{display:none}
.process-visual{display:flex;flex-direction:column}
.process-main{order:0}
.process-tabs{order:1}
.process-main img{transform:scale(1.55);transform-origin:73% 28%}
.design-sheet{width:34%;left:16%;bottom:68px}
.project-one .project-main img{object-fit:contain;object-position:center;background:#141313}
.project-main{min-height:440px}
.project-info>p{line-height:1.5}
.project-info .project-name{font-size:1.5rem;letter-spacing:-.03em;margin-bottom:8px}
.expertise-image{overflow:hidden}
.expertise-image img{aspect-ratio:2.45}
.expertise-image:has(img[src*="brand-system"]) img,.expertise-image:has(img[src*="digital-campaign"]) img{object-fit:contain;background:#f1f2f3}
.craft-crop img,.structure img,.finish img{transform:none;object-position:center;object-fit:cover}
.craft-crop{height:300px}
.section-intro{font-size:1rem;line-height:1.6;max-width:380px;color:var(--muted)}
.page-intro{padding-block:80px 64px}
.page-intro .lead{max-width:720px;font-size:1.2rem}
.page-work .work{padding-top:64px}
.editorial-pair{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;align-items:center}
.editorial-pair p:not(.eyebrow){font-size:1.0625rem;line-height:1.7;margin-top:24px}
.identity-board{padding:24px;background:var(--grey);margin-bottom:56px}
.identity-board img{width:100%;height:auto}
.identity-board figcaption,.editorial-pair figcaption{padding-top:16px}
.portfolio-notes h3{font-size:2rem}
.discipline-nav{display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:16px 40px;border-bottom:1px solid var(--line)}
.discipline-nav a{font-size:.875rem;min-height:44px;display:flex;align-items:center;gap:10px}
.discipline-nav span{color:var(--red);font-size:.75rem}
.discipline{scroll-margin-top:24px}
.discipline-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}
.discipline h2{font-size:clamp(2.4rem,3.4vw,3.9rem)}
.discipline-image img{object-fit:contain;max-height:600px;background:var(--grey)}
.discipline-image figcaption{padding-top:15px}
.capability-list{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.capability-list li{border-top:1px solid var(--line);padding:15px 0;font-size:.9375rem;line-height:1.5}
.broadcast-flow{padding:36px;background:var(--grey)}
.broadcast-flow>div{display:grid;grid-template-columns:32px 1fr;column-gap:20px;border-top:1px solid var(--line);padding:26px 0}
.broadcast-flow>div>span{color:var(--red);font-size:.875rem;padding-top:4px}
.broadcast-flow p{grid-column:2;margin-top:12px;line-height:1.6;color:var(--muted)}
.studio-manifesto .editorial-pair{align-items:start}
.studio-manifesto p.lead{margin-top:0;font-size:1.5rem;color:var(--ink)}
.craft-spread{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.craft-spread img{aspect-ratio:1;object-fit:cover}
.craft-spread figcaption{padding-top:16px}
.studio-principles{border-top:1px solid var(--line)}
.contact-page{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:start;padding-block:85px}
.contact-page h1{color:var(--red);font-size:clamp(3.8rem,6.3vw,6.5rem)}
.contact-directory{margin:45px 0 0}
.contact-directory>div{display:grid;grid-template-columns:90px 1fr;padding:20px 0;border-top:1px solid var(--line);line-height:1.6}
dt{font-size:.875rem;color:var(--muted)}dd{margin:0;font-size:1rem}
.contact-directory a:hover{text-decoration:underline}
.brief-note{background:var(--grey);padding:40px}
.brief-note h2{font-size:clamp(2rem,3vw,3rem)}
.brief-note ol{padding:0;list-style:none;counter-reset:brief;margin:36px 0}
.brief-note li{counter-increment:brief;padding:20px 0 20px 35px;border-top:1px solid var(--line);position:relative}
.brief-note li:before{content:'0' counter(brief);position:absolute;left:0;top:25px;color:var(--red);font-size:.75rem}
.brief-note h3{font-size:1.125rem}
.brief-note li p{margin-top:10px;line-height:1.6;color:var(--muted)}
.project-intro{padding-block:42px 48px}
.back-link{display:inline-block;padding:10px 0;margin-bottom:35px;border-bottom:1px solid var(--red);font-size:.875rem}
.project-intro h1{font-size:clamp(3rem,6vw,6rem)}
.project-opening{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;padding-bottom:80px}
.project-full img{width:100%;height:auto}
.project-full figcaption{margin-top:16px}
.project-opening h2{font-size:clamp(2rem,3.3vw,3.7rem)}
.project-facts{margin-top:35px}
.project-facts>div{border-top:1px solid var(--line);padding:20px 0;display:grid;gap:8px}
.page-hospitality .project-opening{grid-template-columns:1.5fr 1fr}
.observation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}
.observation-grid .project-number{display:block;font-size:4rem;margin-bottom:20px}
.observation-grid h2{font-size:2.2rem;margin-bottom:20px}
.observation-grid p{font-size:1.0625rem;line-height:1.7;color:var(--muted)}
.project-detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-bottom:36px}
.project-detail-image{overflow:hidden;display:grid;grid-template-rows:320px auto}
.project-detail-image img{height:320px;width:100%;object-fit:cover}
.project-detail-image figcaption{padding:16px 0;background:white;position:relative}
.dakar-detail-a img{object-position:50% 18%}.dakar-detail-b img{object-position:50% 95%}
.hospitality-detail-a img{object-position:15% 0%}.hospitality-detail-b img{object-position:85% 100%}
.project-source{padding-bottom:70px}
.project-source p{font-size:.875rem;line-height:1.7;color:var(--muted);max-width:800px}
.next-project{padding:50px 0;border-bottom:1px solid var(--line)}
.next-project>a{display:block}.next-project h2{font-size:clamp(2.3rem,4vw,4.5rem)}
.next-project .section-link{margin-top:22px}
@media(max-width:1050px){.editorial-pair,.discipline-layout,.project-opening{gap:40px}.contact-page{gap:40px}.brief-note{padding:28px}.capability-list{grid-template-columns:1fr}.craft-crop{height:250px}.project-main{min-height:390px}.hero-bottom{bottom:22px}.concept-credit{bottom:3px}.observation-grid{gap:28px}}
@media(max-width:700px){
 .header nav{font-size:1rem}.header nav a:not(.button){min-height:44px}.hero{min-height:650px}.hero-copy{bottom:178px}.hero h1{font-size:clamp(2.55rem,10.5vw,4.4rem)}
 .hero-bottom{bottom:48px;gap:10px}.journey-tabs{gap:10px}.journey-tabs button{font-size:.875rem}.motion-toggle{font-size:.75rem!important;width:70px;min-height:44px}.concept-credit{bottom:15px}.hero-caption{bottom:185px}.hero-caption p:last-child{font-size:2.3rem}
 .process-tabs button{font-size:.875rem;padding-inline:2px}.process-main figcaption{font-size:.75rem;max-width:90%;right:10px}.design-sheet{width:76%;left:auto;bottom:auto;margin-top:10px}
 .process-main img{transform:scale(1.35)}.project-main{min-height:350px}.project-one .project-main{aspect-ratio:950/892;min-height:0}.project-one .project-main img{object-fit:cover}.craft-crop{height:235px}
 .page-intro{padding-block:50px}.page-intro h1{font-size:clamp(2.6rem,10.5vw,3.4rem)}.page-intro .lead{font-size:1.0625rem}
 .editorial-pair,.discipline-layout,.project-opening,.page-hospitality .project-opening,.contact-page{grid-template-columns:1fr;gap:32px}
 .section-heading .section-intro{margin-top:22px}.identity-board{padding:10px;margin-bottom:32px}.discipline-nav{gap:5px 22px;padding-bottom:25px}.discipline h2{font-size:2.6rem}
 .capability-list{grid-template-columns:1fr}.craft-spread{gap:15px}.craft-spread figcaption{font-size:.75rem}.studio-manifesto p.lead{font-size:1.25rem}.broadcast-flow{padding:25px}
 .contact-page{padding-block:50px}.contact-page h1{font-size:clamp(2.8rem,12vw,4rem)}.contact-directory>div{grid-template-columns:1fr;gap:7px}.contact-directory dd{overflow-wrap:anywhere}.brief-note{padding:28px}.brief-note h2{font-size:2.3rem}
 .project-intro{padding-block:25px 40px}.project-intro h1{font-size:clamp(2.5rem,10vw,3.5rem)}.project-opening{padding-bottom:55px}.project-opening h2{font-size:2.5rem}.project-detail-pair{gap:20px;grid-template-columns:1fr}.project-detail-image{grid-template-rows:280px auto}.project-detail-image img{height:280px}
 .observation-grid{grid-template-columns:1fr;gap:35px}.observation-grid article{border-top:1px solid var(--line);padding-top:25px}.observation-grid .project-number{font-size:3rem}.observation-grid h2{font-size:2rem}.project-source{padding-bottom:45px}
 .footer-inner>span{font-size:.875rem}.footer nav{gap:14px;flex-wrap:wrap}.footer nav a{min-height:44px;display:flex;align-items:center}.page-work .work{padding-top:40px}
}
@media(prefers-reduced-motion:reduce){.hero .motion-toggle,.hero .journey-tabs,.hero .scroll-hint{display:none}.hero-copy{bottom:90px}}
.call-link{display:inline-flex;align-items:center;gap:18px;min-height:54px;padding:12px 20px;border:1px solid #bcb9b5;border-radius:32px;background:#fff;color:var(--ink);position:relative;transition:border-color .2s,background .2s}
.call-link>span:first-child{font-size:.875rem;color:var(--muted)}
.call-number{font-size:1rem;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.call-link:hover{border-color:var(--red);background:#faf7f5}
.contact-email{display:inline-flex;align-items:center;min-height:44px;margin-top:18px;position:relative}
.contact-directory a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:1.125rem;letter-spacing:.02em}
@media(max-width:700px){.contact-actions{gap:16px}.call-link{padding:12px 18px;gap:14px}.contact-email{margin-top:12px}}
.closing-cta{background:#efefed;padding:96px 0 48px;color:#202020}
.closing-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:64px 64px}
.closing-kicker{font-size:.875rem;letter-spacing:.14em;text-transform:uppercase;color:#62605d;margin:0 0 38px}
.closing-copy h2{font-size:clamp(4rem,7.5vw,7rem);font-weight:400;letter-spacing:-.065em;line-height:.96;color:var(--red);margin:0 0 38px}
.closing-intro{font-size:1.125rem;line-height:1.6;color:#5b5957;margin:0 0 34px}
.closing-action{gap:24px;min-height:56px;font-size:1rem;padding:17px 24px}
.closing-action svg{flex:none}
.closing-photo{position:relative;margin:0;min-height:440px;overflow:hidden;background:#34251f}
.closing-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 50%}
.closing-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:70px 26px 24px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:1rem;line-height:1.5}
.closing-photo figcaption span{display:block;font-size:.75rem;letter-spacing:.08em;color:#ddd;margin-top:10px;text-transform:uppercase}
.closing-details{grid-column:1/-1;border-top:1px solid #cfceca;padding-top:28px;display:flex;align-items:flex-end;gap:64px;flex-wrap:wrap}
.closing-label{display:block;font-size:.75rem;letter-spacing:.12em;color:#62605d;margin-bottom:7px;text-transform:uppercase}
.closing-details a{display:inline-flex;align-items:center;min-height:44px;font-size:1.125rem;text-decoration:none;border-bottom:1px solid transparent}
.closing-details a:hover{border-color:var(--red);color:var(--red)}
.closing-phone{white-space:nowrap;font-variant-numeric:tabular-nums}
.closing-location{margin-left:auto;font-size:.875rem;color:#62605d;padding-bottom:13px}
@media(max-width:1000px){.closing-grid{gap:42px 32px}.closing-cta{padding:64px 0 36px}.closing-photo{min-height:380px}.closing-copy h2{font-size:4.5rem}.closing-details{gap:32px}.closing-action{font-size:.875rem;padding-inline:20px}}
@media(max-width:700px){.closing-grid{grid-template-columns:1fr;gap:32px}.closing-cta{padding:48px 0 32px}.closing-copy h2{font-size:clamp(3.7rem,15vw,5rem);margin-bottom:28px}.closing-kicker{margin-bottom:28px}.closing-intro{font-size:1rem;margin-bottom:28px}.closing-photo{min-height:320px}.closing-photo figcaption{padding:50px 20px 20px}.closing-details{display:grid;gap:24px;padding-top:24px}.closing-details a{font-size:1rem}.closing-location{margin:0;padding:0}.closing-action{gap:16px}}
