@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f5f5f3;--ink:#191919;--muted:#686862;--line:#d7d7d1;--lime:#d4f765;--dark:#191b18;--gutter:clamp(22px,4.5vw,80px);--max:1600px;font-family:'DM Sans','PingFang SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper);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:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #75983a;outline-offset:5px}img,video{max-width:100%;display:block}button{color:inherit}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:500}p{line-height:1.8}::selection{background:var(--lime);color:var(--ink)}.shell{max-width:var(--max);margin:auto;padding:0 var(--gutter)}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:500}.muted{color:var(--muted)}.skip{position:absolute;left:12px;top:-80px;padding:12px;background:var(--lime);z-index:10}.skip:focus{top:12px}
.site-header{background:#fff;border-bottom:1px solid #e7e7e2}.header{min-height:84px;display:flex;justify-content:space-between;align-items:center;gap:20px 32px;flex-wrap:wrap;padding:16px 0}.brand{display:flex;gap:12px;align-items:center}.brand img{width:52px;height:52px;object-fit:contain;background:#fff}.brand-words{display:flex;align-items:baseline;gap:13px;line-height:1.2;white-space:nowrap}.brand-words strong{font-size:22px;font-weight:600;letter-spacing:.015em}.brand-words span{display:block;font-family:Manrope,sans-serif;font-size:16px;font-weight:500;letter-spacing:0;color:#52524e}.nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav a{padding:10px 0}.nav a:hover{opacity:.6}.nav-cta{border-bottom:1px solid var(--ink)}.edition{font-size:11px;letter-spacing:.14em;color:var(--muted)}
.hero{padding-top:36px}.hero-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;margin-bottom:32px}.hero-title>.eyebrow{color:var(--muted);margin-bottom:14px}.hero h1{font-size:clamp(32px,3.6vw,56px);letter-spacing:-.045em;line-height:1.22;font-weight:500}.hero h1 em{font-family:Georgia,'Songti SC',serif;font-weight:400;font-style:italic}.hero-aside{max-width:250px;padding:0;font-size:14px;line-height:1.8;color:var(--muted)}.hero-aside .eyebrow{display:block;margin-bottom:12px}.hero-film{position:relative;background:#192930;aspect-ratio:2.16;overflow:hidden;color:#fff}.hero-film>img,.hero-film>video{width:100%;height:100%;object-fit:cover}.hero-film>video{position:absolute;inset:0}.hero-film:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65));pointer-events:none}.hero-film-info{position:absolute;bottom:32px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:end;z-index:1;gap:20px}.hero-film-info h2{font-size:25px;margin-top:6px}.pill{display:inline-flex;align-items:center;gap:11px;border:1px solid currentColor;padding:11px 18px;border-radius:30px;background:none;font-size:13px;white-space:nowrap}.pill:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}.play-disc{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.motion-toggle{position:absolute;top:22px;right:22px;z-index:2;border:1px solid #ffffff80;background:#0005;color:#fff;border-radius:50%;width:40px;height:40px;font-size:15px}.hero-bottom{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:18px 0;font-size:11px;letter-spacing:.08em}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:94px 0 84px}.intro h2{font-size:clamp(24px,3vw,42px);line-height:1.55;letter-spacing:-.03em;max-width:900px}.intro .eyebrow{padding-top:12px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:25px;border-top:1px solid var(--ink);padding-top:22px;margin-bottom:38px}.section-top h2{font-size:clamp(32px,4vw,58px);letter-spacing:-.05em}.section-top p{font-size:14px;color:var(--muted);max-width:340px}.works{padding-bottom:105px}.work-grid{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(0,1fr);gap:32px;align-items:start}.work-column{display:grid;gap:48px;align-content:start;min-width:0}.work-card{display:block;min-width:0}.work-card .frame{overflow:hidden;background:#e8e6df;position:relative}.work-card .frame>img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.work-card:hover .frame>img{transform:scale(1.035)}.work-card .frame.landscape{aspect-ratio:1.6}.work-card .frame.portrait{height:auto;aspect-ratio:9/16;background:transparent}.work-card .frame.portrait>img{position:absolute;inset:0;object-fit:cover}.work-card.whisky{margin-top:0;width:100%}.frame-badge{position:absolute;left:18px;top:18px;background:#f5f5f3ed;border-radius:18px;font-size:11px;padding:6px 11px;letter-spacing:.04em}.frame-open{position:absolute;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f5f5f3;color:#191919;font-size:14px}.work-caption{display:flex;justify-content:space-between;gap:18px;align-items:start;padding-top:18px}.work-caption h3{font-size:24px;letter-spacing:-.035em}.work-caption p{font-size:13px;color:var(--muted);margin-top:6px}.work-caption>span{font-size:12px;color:var(--muted);padding-top:7px}.work-note{align-self:center;max-width:350px;padding:0 0 0 20px}.work-note .index{font-family:Georgia,serif;font-size:80px;font-style:italic;line-height:1}.work-note h3{font-size:28px;line-height:1.5;margin:22px 0 12px}.work-note p{font-size:15px;color:var(--muted)}
.craft{background:var(--dark);color:var(--paper);padding:90px 0}.craft .section-top{border-color:#ffffff50}.craft .section-top p{color:#b7bbb2}.craft-head{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:38px}.craft-head h2{font-size:clamp(36px,5.2vw,72px);line-height:1.18;letter-spacing:-.05em}.craft-head p{font-size:15px;max-width:450px;color:#b7bbb2;justify-self:end}.compare{position:relative;aspect-ratio:1600/893;overflow:hidden;background:#29343d;--reveal:50%}.compare img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.compare .compare-front{clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.compare .compare-line{position:absolute;top:0;bottom:0;width:2px;background:white;left:var(--reveal);pointer-events:none}.compare .compare-line:after{content:'Ⅱ';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:white;color:#191919;display:grid;place-items:center;font-size:18px}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize;z-index:2}.compare:focus-within{outline:3px solid var(--lime);outline-offset:4px}.compare-labels{position:absolute;bottom:18px;left:20px;right:20px;display:flex;justify-content:space-between;gap:16px;pointer-events:none;z-index:1}.compare-labels span{font-size:12px;color:white;background:#0009;padding:7px 12px;border-radius:20px}.compare-description{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:20px;font-size:14px;color:#c4c7bf}.compare-description a{color:var(--lime);border-bottom:1px solid var(--lime);white-space:nowrap}.craft-points{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:64px}.craft-points article{border-top:1px solid #ffffff40;padding-top:20px}.craft-points .eyebrow{color:#91978c}.craft-points h3{font-size:21px;margin:22px 0 12px}.craft-points p{font-size:14px;color:#b7bbb2}
.services{padding:100px 0}.service-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:28px;border-bottom:1px solid var(--line);padding:30px 0}.service-row>span{font-size:13px;padding-top:5px;color:var(--muted)}.service-row h3{font-size:27px;letter-spacing:-.02em}.service-row p{font-size:15px;color:var(--muted);max-width:430px}.service-row small{display:block;font-size:11px;letter-spacing:.08em;margin-top:9px;color:var(--muted)}
.about{border-top:1px solid var(--ink);padding:65px 0 85px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{font-size:clamp(35px,4vw,56px);letter-spacing:-.04em;line-height:1.35;margin-top:25px}.about-copy p{font-size:17px;margin:0 0 22px}.about-copy .muted{font-size:14px}.contact-details{font-size:16px;display:flex;gap:22px;flex-wrap:wrap;margin-top:25px}.contact-details a{border-bottom:1px solid var(--ink);padding-bottom:5px}.footer{background:var(--lime);padding:45px 0 30px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;gap:25px;font-size:13px}.footer-wordmark{font-family:'Manrope',sans-serif;font-size:clamp(88px,21vw,310px);letter-spacing:-.085em;font-weight:500;line-height:1.12;margin:18px 0 25px}.footer-bottom{display:flex;justify-content:space-between;gap:22px;padding-top:17px;border-top:1px solid #19191960;font-size:11px;letter-spacing:.05em}
.case-breadcrumb{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0;font-size:12px;color:var(--muted)}.case-heading{padding:38px 0 35px}.case-heading .eyebrow{color:var(--muted);margin-bottom:18px}.case-heading h1{font-size:clamp(42px,7vw,92px);line-height:1.12;letter-spacing:-.055em}.case-heading .sub{font-size:clamp(18px,2.5vw,29px);margin-top:22px;color:var(--muted)}.case-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.case-tags span{font-size:12px;padding:6px 12px;border:1px solid var(--line);border-radius:20px}.case-film{background:#111;position:relative}.case-film video{width:100%;max-height:78vh;min-height:250px;object-fit:contain}.case-film.portrait{width:min(100%,440px,47.25vh);aspect-ratio:9/16;margin-inline:auto;background:transparent}.case-film.portrait video{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}.film-meta{display:flex;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted);padding:16px 0;border-bottom:1px solid var(--line)}.case-summary{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding:72px 0}.case-summary h2{font-size:28px}.case-summary p{font-size:20px;line-height:1.8;max-width:800px}.case-summary .small{font-size:14px;color:var(--muted);margin-top:22px}.case-tabs{display:flex;gap:28px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:18px 0;font-size:14px}.process-section{padding:62px 0}.process-heading{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;margin-bottom:30px}.process-heading h2{font-size:32px;letter-spacing:-.03em}.process-heading h2 small{font-size:12px;display:block;color:var(--muted);letter-spacing:.1em;margin-bottom:15px}.process-heading p{font-size:16px;color:var(--muted)}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.asset-grid.trio{grid-template-columns:repeat(3,minmax(0,1fr))}.asset-grid img{width:100%;aspect-ratio:1.79;object-fit:contain;background:#e6e6df}.asset-grid.vertical img{aspect-ratio:9/16;background:#e6e3de;object-fit:contain;max-height:610px}.asset-grid figcaption{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.6}.asset-single img{width:100%;max-height:670px;object-fit:contain;background:#e9e8e3}.asset-single figcaption{font-size:13px;color:var(--muted);margin-top:12px}.case-proof{background:#eaece3;padding:38px;margin:40px 0 0;display:grid;grid-template-columns:1fr 2fr;gap:36px}.case-proof h3{font-size:22px}.case-proof p{font-size:15px;color:#555b4d}.case-next{border-top:1px solid var(--ink);padding:44px 0 65px;display:flex;justify-content:space-between;gap:30px;align-items:center}.case-next h2{font-size:36px;margin-top:12px;letter-spacing:-.035em}.case-next img{width:240px;aspect-ratio:1.7;object-fit:cover}.case-compare .compare-description{color:var(--muted)}.case-compare .compare-description a{color:var(--ink)}
@media(min-width:1600px){.hero-film{max-height:640px}}
@media(max-width:1000px){.header{min-height:80px}.edition{display:none}.hero h1{font-size:clamp(32px,4.5vw,48px)}.hero-aside{max-width:190px}.work-card .frame.portrait{height:auto}.work-card.whisky{margin-top:0}.work-note{padding-left:0}.work-note .index{font-size:60px}.work-note h3{font-size:24px}.intro{gap:30px}.craft-head{gap:35px}.case-summary{gap:35px}.process-heading{gap:35px}}
@media(max-width:680px){.header{min-height:76px;gap:12px;padding:12px 0}.brand{gap:8px}.brand img{width:42px;height:42px}.brand-words{gap:8px}.brand-words strong{font-size:20px}.brand-words span{font-size:14px}.nav{gap:14px;font-size:13px}.nav-cta{display:none}.hero{padding-top:27px}.hero-line{display:block;margin-bottom:24px}.hero-title>.eyebrow{font-size:11px;margin-bottom:13px;letter-spacing:.08em}.hero h1{font-size:clamp(28px,7.8vw,38px);line-height:1.3}.hero-aside{max-width:none;margin-top:17px;font-size:13px}.hero-aside br{display:none}.hero-aside p{max-width:30em}.hero-aside .eyebrow{margin:0;min-width:94px;font-size:10px}.hero-film{aspect-ratio:4/4.4}.hero-film>img,.hero-film>video{object-position:48% center}.hero-film-info{left:20px;right:20px;bottom:23px;display:block}.hero-film-info h2{font-size:23px}.hero-film-info .pill{margin-top:18px;padding:8px 14px}.hero-bottom{font-size:10px;gap:18px}.hero-bottom span:last-child{display:none}.intro{grid-template-columns:1fr;gap:20px;padding:60px 0}.intro h2{font-size:24px;line-height:1.6}.intro .eyebrow{padding:0}.section-top{align-items:start;margin-bottom:26px;display:block}.section-top p{margin-top:16px;font-size:14px}.section-top h2{font-size:36px}.works{padding-bottom:62px}.work-grid{grid-template-columns:1fr;gap:35px}.work-column{display:contents}.work-card.peace{order:1}.work-card.honor{order:2}.work-card.whisky{order:3}.work-note{order:4}.work-card .frame.portrait{height:auto}.work-card.whisky{margin-top:0;grid-column:auto}.work-card .frame.landscape{aspect-ratio:1.35}.work-caption h3{font-size:22px}.work-note{grid-column:auto;max-width:none;border-top:1px solid var(--line);padding-top:30px}.work-note .index{display:none}.work-note h3{font-size:24px;margin:0 0 12px}.craft{padding:60px 0}.craft-head{grid-template-columns:1fr;gap:23px}.craft-head h2{font-size:42px}.craft-head p{justify-self:start}.compare-labels{left:10px;right:10px;bottom:10px}.compare-labels span{font-size:10px;padding:5px 8px}.compare .compare-line:after{width:36px;height:36px}.compare-description{align-items:start;flex-direction:column;gap:12px;font-size:13px}.craft-points{grid-template-columns:1fr;gap:30px;margin-top:40px}.craft-points h3{margin-top:15px}.services{padding:65px 0}.service-row{grid-template-columns:30px 1fr;gap:10px 18px;padding:27px 0}.service-row p{grid-column:2;font-size:14px}.service-row h3{font-size:23px}.about{grid-template-columns:1fr;gap:30px;padding:45px 0 55px}.about h2{font-size:37px;margin-top:20px}.about-copy p{font-size:16px}.footer{padding-top:30px}.footer-top{font-size:12px}.footer-wordmark{font-size:23vw;margin:25px 0 30px}.footer-bottom{font-size:10px;gap:15px;flex-wrap:wrap}.case-heading{padding:28px 0}.case-heading h1{font-size:44px}.case-heading .sub{font-size:19px}.case-film video{min-height:0;max-height:650px}.case-film.portrait video{height:100%}.case-summary{grid-template-columns:1fr;gap:25px;padding:42px 0}.case-summary h2{font-size:25px}.case-summary p{font-size:17px}.case-tabs{gap:22px;font-size:13px;flex-wrap:wrap}.process-section{padding:42px 0}.process-heading{grid-template-columns:1fr;gap:22px}.process-heading h2{font-size:28px}.process-heading p{font-size:15px}.asset-grid,.asset-grid.trio{grid-template-columns:1fr}.asset-grid.vertical{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.asset-grid.vertical img{max-height:none}.case-proof{padding:24px;grid-template-columns:1fr;gap:15px}.case-proof h3{font-size:21px}.case-next{padding:30px 0 40px}.case-next h2{font-size:28px}.case-next img{width:120px}.film-meta{font-size:11px;gap:12px}.case-breadcrumb{font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-film>video{display:none}.motion-toggle{display:none}}

.revision-grid{align-items:start}.revision-source{aspect-ratio:716/560;overflow:hidden;background:#000}.revision-source img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 56.7%}.revision-grid>figure:nth-child(2) img{aspect-ratio:716/560;object-fit:contain;background:#e6e6df}

@media(max-width:380px){.header{row-gap:8px}.header .nav{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:6px}.hero-title>.eyebrow{font-size:10px}}
/* Detailed project archives continue the existing portfolio system. */
.work-new-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:52px;padding-top:42px;border-top:1px solid var(--line)}.work-new-grid .frame{aspect-ratio:1.6!important;height:auto!important;background:#e6e4dd}.work-new-grid .frame>img{position:static!important;object-fit:cover!important}.work-new-grid .work-card{margin:0}.process-intro{display:grid;gap:16px}.detailed-section+.detailed-section{border-top:1px solid var(--line)}.evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.evidence-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.evidence-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.evidence-grid.single{grid-template-columns:1fr}.evidence-media{min-width:0}.evidence-media img,.evidence-media video{width:100%;aspect-ratio:16/9;object-fit:contain;background:#e8e7e0}.evidence-media.portrait img,.evidence-media.portrait video{aspect-ratio:9/16;max-height:660px}.evidence-media.document img{aspect-ratio:auto;max-height:780px}.evidence-media.square img{aspect-ratio:1}.evidence-media figcaption{font-size:13px;line-height:1.7;color:var(--muted);margin-top:12px}.evidence-note{font-size:13px!important;color:var(--muted);border-left:2px solid #b1b6a6;padding-left:15px;margin-top:25px;max-width:850px}.process-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0 0 30px}.process-notes article{border-top:1px solid var(--line);padding-top:20px}.process-notes h3{font-size:19px;line-height:1.5;margin-bottom:10px}.process-notes p{font-size:14px;color:var(--muted)}.film-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:30px}.film-chapters button{display:grid;grid-template-columns:1fr auto;align-content:start;text-align:left;background:var(--paper);border:0;padding:26px;gap:13px;position:relative}.film-chapters button:hover{background:#e9ecdF}.film-chapters button>span:first-child{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.film-chapters strong{font-size:21px;font-weight:500;grid-column:1/-1}.film-chapters .chapter-copy{font-size:14px;line-height:1.75;color:var(--muted);grid-column:1/-1}.chapter-play{grid-column:2;grid-row:1;font-size:19px}.case-timeline{list-style:none;margin:25px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px}.case-timeline li{display:grid;grid-template-columns:74px 1fr;gap:20px;border-top:1px solid var(--line);padding:24px 0}.case-timeline li>span{font-size:13px;color:var(--muted);padding-top:5px;font-variant-numeric:tabular-nums}.case-timeline h3{font-size:21px;line-height:1.5;margin-bottom:10px}.case-timeline p{font-size:14px;color:var(--muted)}
@media(max-width:1000px){.evidence-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.process-notes{gap:20px}.film-chapters button{padding:22px}.case-timeline{gap:0 30px}}
@media(max-width:680px){.work-new-grid{grid-template-columns:1fr;gap:35px;padding-top:35px;margin-top:35px}.evidence-grid,.evidence-grid.three{grid-template-columns:1fr;gap:26px}.evidence-grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}.evidence-media.portrait{max-width:420px;justify-self:center;width:100%}.evidence-media.portrait img,.evidence-media.portrait video{max-height:none}.evidence-media figcaption{font-size:12px}.process-notes,.film-chapters,.case-timeline{grid-template-columns:1fr}.process-notes{gap:20px}.film-chapters button{padding:22px}.case-timeline li{grid-template-columns:62px 1fr;gap:16px}.case-timeline h3{font-size:19px}.case-tabs{row-gap:12px}.evidence-grid .evidence-media.document img{max-height:none}}
.evidence-group{margin-top:38px}.evidence-subheading{font-size:22px;line-height:1.6;margin:0 0 22px}.evidence-grid.turnarounds .evidence-media img{aspect-ratio:1.79;background:#f0f0ea}.process-intro p+p{margin-top:0}.evidence-grid.stills-pair{max-width:1080px;margin-inline:auto}
@media(max-width:680px){.evidence-subheading{font-size:20px}.evidence-group{margin-top:30px}}
.evidence-media.portrait{width:100%;max-width:372px;justify-self:center}.case-tabs{flex-wrap:wrap}.process-section{scroll-margin-top:25px}
@media(max-width:680px){.evidence-media.portrait{max-width:420px}.case-heading h1{overflow-wrap:anywhere}.case-breadcrumb>span{text-align:right}.case-tabs{gap:12px 22px}}
/* Film-specific close readings: authentic frames link back to the film. */
.shot-grid{display:grid;gap:30px 24px;align-items:start;margin-top:34px}.landscape-shots{grid-template-columns:repeat(3,minmax(0,1fr))}.portrait-shots{grid-template-columns:repeat(4,minmax(0,1fr))}.shot-card{display:block;border:0;padding:0;background:transparent;text-align:left;min-width:0;width:100%}.shot-image{display:block;position:relative;overflow:hidden;background:#e4e4de}.shot-image img{width:100%;aspect-ratio:16/9;object-fit:contain;transition:filter .25s}.portrait-shots .shot-image img{aspect-ratio:9/16}.shot-time{position:absolute;left:10px;top:10px;background:#181b17e8;color:#fff;padding:6px 9px;font-size:11px;line-height:1;letter-spacing:.06em;font-variant-numeric:tabular-nums}.shot-play{position:absolute;bottom:12px;right:12px;background:var(--lime);width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:10px}.shot-text{display:block;padding-top:16px}.shot-text strong{display:block;font-size:19px;line-height:1.5;font-weight:500;margin-bottom:8px}.shot-text>span{display:block;font-size:14px;line-height:1.8;color:var(--muted)}.shot-card:hover .shot-image img{filter:brightness(1.06)}.shot-card:hover .shot-text strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.film-analysis .process-heading h2 small{color:#5a7239}.production-archive .process-heading h2 small{color:#746a60}.film-analysis .process-heading h2 small:before,.production-archive .process-heading h2 small:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:9px}.case-reading-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:20px}.detailed-section .process-heading h2{line-height:1.4}.case-tabs a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1100px){.portrait-shots{grid-template-columns:repeat(3,minmax(0,1fr))}.landscape-shots{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-grid{gap:28px 20px}}
@media(max-width:680px){.portrait-shots{grid-template-columns:repeat(2,minmax(0,1fr))}.landscape-shots{grid-template-columns:1fr}.shot-grid{gap:27px 14px;margin-top:28px}.shot-text strong{font-size:17px;line-height:1.5}.shot-text>span{font-size:13px}.shot-time{font-size:10px;left:7px;top:7px;padding:5px 7px}.shot-play{height:27px;width:27px;bottom:9px;right:9px}.shot-text{padding-top:12px}.case-tabs{padding:17px 0}.detailed-section .process-heading h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.shot-image img{transition:none}}
.evidence-grid.wide{grid-template-columns:1fr}.evidence-grid.wide .evidence-media{max-width:1100px;margin:auto;width:100%}.evidence-grid.wide img{aspect-ratio:auto;max-height:none}
@media(min-width:1101px){.portrait-shots.compact-shots{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1100px;margin-inline:auto}}
.evidence-media.revision img{aspect-ratio:716/560;object-fit:cover;object-position:50% 56.7%;background:#000}.evidence-grid.revision-grid .evidence-media:nth-child(2) img{aspect-ratio:716/560;object-fit:contain}.evidence-grid.single .evidence-media{width:100%}
/* Independent review surface, shared by every route. */
.preview-banner{background:#263329;color:#f4f6ec;display:flex;justify-content:center;align-items:center;gap:16px;padding:11px 24px;font-size:13px;line-height:1.5}.preview-banner>span{font-weight:600;white-space:nowrap;border:1px solid #b3c49c;padding:3px 9px;border-radius:20px}.preview-banner p{margin:0}.brands{padding-bottom:90px}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.brand-tile{min-height:145px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center}.brand-tile strong{font-size:clamp(21px,2.5vw,34px);font-weight:550;letter-spacing:-.025em;line-height:1.25}.brand-tile span{font-size:13px;color:var(--muted)}a.brand-tile:hover{background:#e8eadf}.brand-footnote{font-size:13px;color:var(--muted);margin-top:16px}.text-link{font-size:15px;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap}.collection-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:55px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.collection-nav a{font-size:14px;border:1px solid var(--line);padding:8px 13px;border-radius:24px}.collection-nav a:hover{background:#e5e8dc}.collection-nav span{margin-left:7px;color:var(--muted);font-size:12px}.collection-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:48px}.collection-heading h3{font-size:28px;font-weight:500;letter-spacing:-.03em}.collection-heading>span{font-size:12px;white-space:nowrap;color:var(--muted)}.work-collection .work-new-grid{margin-top:23px;padding-top:0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}.work-collection .work-caption h3{font-size:20px}.work-collection .work-caption>span{white-space:nowrap}.work-collection .frame.portrait img{object-fit:contain!important;background:#e5e5df}.work-collection{scroll-margin-top:25px}.series-nav{border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:180px 1fr;gap:18px}.series-nav>span{font-size:14px;color:var(--muted)}.series-nav nav{display:flex;flex-wrap:wrap;gap:8px}.series-nav a{font-size:13px;padding:6px 10px;border:1px solid var(--line);border-radius:18px}.series-nav a.current{background:var(--ink);color:var(--paper);border-color:var(--ink)}.service-page-head{padding-top:65px;padding-bottom:75px}.service-page-head h1{font-size:clamp(40px,6vw,78px);line-height:1.2;letter-spacing:-.05em;margin:25px 0}.service-page-head>p:last-child{font-size:20px;color:var(--muted);line-height:1.8}.service-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:60px}.service-detail{display:grid;grid-template-columns:44px 1fr;gap:18px;border-top:1px solid var(--ink);padding:35px 0 45px;min-width:0}.service-number{font-size:15px;color:var(--muted)}.service-detail h2{font-size:30px;letter-spacing:-.035em;line-height:1.4;margin-top:13px}.service-intro{font-size:17px;line-height:1.85;color:var(--muted);margin:18px 0}.service-detail ul{padding-left:20px;margin:22px 0;font-size:16px;line-height:1.95}.service-proof{display:flex;flex-wrap:wrap;gap:9px 15px;font-size:14px;line-height:1.7;margin-top:26px}.service-proof span{color:var(--muted);width:100%;font-size:12px}.service-proof a{border-bottom:1px solid var(--line)}.service-closing{padding-top:38px;padding-bottom:95px}.service-closing h2{font-size:36px;letter-spacing:-.035em}.service-closing p{font-size:17px;color:var(--muted);max-width:780px;margin:18px 0 26px;line-height:1.85}@media(max-width:1000px){.work-collection .work-new-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-detail-grid{column-gap:28px}.service-detail{grid-template-columns:30px 1fr;gap:12px}.nav{gap:18px}}@media(max-width:680px){.preview-banner{padding:9px 18px;gap:10px;font-size:12px}.preview-banner>span{padding:2px 7px}.header{flex-wrap:wrap}.nav{gap:17px;font-size:13px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-tile{min-height:118px;padding:17px}.brand-tile strong{font-size:24px}.brands{padding-bottom:60px}.collection-heading h3{font-size:24px}.work-collection .work-new-grid{grid-template-columns:1fr;gap:32px}.collection-nav{margin-top:36px}.series-nav{grid-template-columns:1fr;gap:12px}.service-page-head{padding-top:35px;padding-bottom:45px}.service-page-head>p:last-child{font-size:17px}.service-detail-grid{grid-template-columns:1fr}.service-detail{padding:30px 0 36px}.service-detail h2{font-size:28px}.service-closing{padding-bottom:60px}.service-closing h2{font-size:30px}}

/* Homepage archive disclosure. Native hidden keeps collapsed links unfocusable. */
#more-work[hidden]{display:none!important}.work-disclosure{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:42px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.work-count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.work-toggle{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:48px;min-width:176px;border:1px solid var(--ink);border-radius:30px;background:transparent;padding:12px 23px;font-size:15px;line-height:1.4}.work-toggle:hover{background:var(--ink);color:var(--paper)}.work-toggle-icon{font-size:22px;line-height:1}.archive-note{border-top:1px solid var(--line);margin-top:48px;padding-top:25px;display:flex;align-items:start;gap:35px}.archive-note h3{font-size:24px;flex:1}.archive-note p{font-size:14px;color:var(--muted);flex:1}.work-card.fourth-card .frame.portrait{aspect-ratio:9/12}.work-card.fourth-card .frame.portrait img{object-fit:contain;background:#e5e5df}
@media(max-width:680px){.work-card.fourth-card{order:4}.work-card.fourth-card .frame.portrait{aspect-ratio:9/12}.work-disclosure{margin-top:30px;padding:20px 0;gap:12px}.work-toggle{min-width:145px;gap:20px;padding:12px 18px}.work-count{font-size:12px}.archive-note{display:block}.archive-note p{margin-top:12px}}

/* Authentic logos only, evenly centered on a single white surface. */
.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:0;background:transparent}
.brand-tile{grid-column:auto;min-height:152px;padding:30px 20px;border:0;background:#fff;display:flex;align-items:center;justify-content:center;transition:box-shadow .2s}
.brand-tile .brand-logo-stage{display:flex;align-items:center;justify-content:center;width:100%;height:80px;margin:0;padding:0;background:transparent;border-radius:0}
.brand-logo-stage img{display:block;width:var(--logo-width);height:var(--logo-height);max-width:100%;object-fit:contain}
.brand-logo-monochrome img{filter:brightness(0)}
a.brand-tile:hover{background:#fff;box-shadow:inset 0 -2px 0 #989d8d}
a.brand-tile:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}
@media(max-width:1000px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-tile{min-height:132px;padding:24px 14px}.brand-tile .brand-logo-stage{height:72px}.brand-logo-stage img{width:calc(var(--logo-width)*.86);height:calc(var(--logo-height)*.86)}}

/* Homepage selected works: aligned rows, full compositions, natural reading order. */
.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px;align-items:start}
.featured-grid>.work-card{width:100%;margin:0;order:initial}
.featured-grid .work-card .frame{height:auto;aspect-ratio:16/9;background:#e8e6df}
.featured-grid .work-card .frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent;transition:filter .25s}
.featured-grid .work-card:hover .frame>img{transform:none;filter:brightness(1.035)}
.featured-grid .work-caption{gap:16px;padding-top:17px;min-height:86px}
.featured-grid .work-caption>div{min-width:0}
.featured-grid .work-caption h3{font-size:clamp(20px,1.8vw,26px);line-height:1.45;overflow-wrap:anywhere}
.featured-grid .work-caption>span{flex:none;white-space:nowrap;font-variant-numeric:tabular-nums;padding-top:5px}
@media(max-width:1000px){.featured-grid{gap:34px 22px}.featured-grid .frame-badge{left:12px;top:12px}.featured-grid .frame-open{right:12px;bottom:12px;width:38px;height:38px}}
@media(max-width:680px){.featured-grid{grid-template-columns:minmax(0,1fr);gap:30px}.featured-grid .work-card .frame{aspect-ratio:16/9}.featured-grid .work-caption{min-height:0;padding-top:14px;gap:12px}.featured-grid .work-caption h3{font-size:21px}.featured-grid .work-caption p{font-size:12px;margin-top:5px}}

/* A single reading axis and consistent metadata rhythm for selected work. */
#work>.section-top{display:block;margin-bottom:32px;padding-top:26px}
#work>.section-top .eyebrow{display:block;font-size:12px;line-height:1.5;margin-bottom:12px}
#work>.section-top h2{font-size:clamp(32px,3.5vw,50px);line-height:1.25;letter-spacing:-.035em}
#work>.section-top>p{max-width:none;font-size:14px;line-height:1.8;margin-top:16px}
.featured-grid{row-gap:36px}
.featured-grid .work-caption{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;min-height:100px;padding:18px 0 20px;border-bottom:1px solid var(--line)}
.featured-grid .work-caption h3{font-size:clamp(20px,1.65vw,24px);line-height:1.5;letter-spacing:-.025em}
.featured-grid .work-caption p{font-size:14px;line-height:1.6;margin-top:7px}
.featured-grid .work-caption>span{font-size:13px;line-height:1.6;padding:0;align-self:end}
.featured-grid .frame-badge{font-size:12px;line-height:1.5;padding:6px 12px}
@media(max-width:680px){#work>.section-top{margin-bottom:24px;padding-top:22px}#work>.section-top>p{margin-top:12px;max-width:30em}.featured-grid{row-gap:28px}.featured-grid .work-caption{min-height:0;padding:14px 0 18px;gap:12px}.featured-grid .work-caption h3{font-size:20px}.featured-grid .work-caption p{font-size:13px}.featured-grid .work-caption>span{font-size:12px}}

/* Consistent 16:9 covers across featured and expanded work cards. */
#work .work-card .frame{height:auto!important;aspect-ratio:16/9!important}
#work .work-card .frame>img{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover!important;object-position:center;background:transparent}
#work .cover-panels{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:hidden}
#work .cover-panels>img{width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:center}

/* Suppress drag saving and the iOS image/video long-press callout. */
img, video { -webkit-user-drag: none; -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; }
