@font-face{font-family:Sans;src:url('/assets/sans.otf')}@font-face{font-family:Sans;src:url('/assets/sans-bold.otf');font-weight:700}@font-face{font-family:Editorial;src:url('/assets/serif.otf')}@font-face{font-family:Narrow;src:url('/assets/narrow.otf')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f5f0;color:#111;font-family:Sans,Arial,sans-serif;font-size:18px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #e3292e;outline-offset:6px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:5}header{height:112px;padding:0 4.8%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-size:30px;letter-spacing:2px;font-weight:700;white-space:nowrap}.brand span{color:#e3292e}nav{display:flex;gap:44px;align-items:center}nav a,.login,.eyebrow,.text-link{font-size:14px;letter-spacing:2px;text-transform:uppercase}nav a{position:relative;padding:10px 0}nav a.active:after{content:'';height:1px;position:absolute;bottom:3px;left:0;right:0;background:#111}.login{border:1px solid #222;padding:17px 30px}.login:hover{background:#111;color:#fff}.eyebrow{display:flex;align-items:center;gap:24px;margin-bottom:27px}.eyebrow:before{content:'';height:1px;width:58px;min-width:58px;background:#888}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Editorial,Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-2px}.home-hero{display:grid;grid-template-columns:40% 60%;min-height:calc(100svh - 215px);margin-left:4.8%;padding-bottom:30px}.home-copy{padding:64px 30px 10px 0;align-self:center}.home-copy h1{font-family:Narrow,Arial,sans-serif;font-size:clamp(70px,7.9vw,144px);line-height:.95;letter-spacing:-5px;text-transform:uppercase;font-weight:400}.home-copy h1 span{display:block}.home-copy h1 strong{font-family:Sans;font-weight:700;letter-spacing:-6px}.home-copy p{font-size:25px;line-height:1.35;max-width:425px;margin:25px 0 35px}.text-link{display:inline-block;border-bottom:1px solid #444;padding:9px 0;background:none;border-top:0;border-left:0;border-right:0}.text-link:hover{color:#b62025;border-color:#b62025}.home-visual{position:relative;overflow:hidden;min-height:560px}.home-visual img{width:100%;height:100%;position:absolute;object-fit:cover;transition:opacity .3s}.slide-controls{position:absolute;right:36px;bottom:25px;display:flex;gap:22px;align-items:center;color:white;font-size:16px;text-shadow:0 1px 5px #000}.slide-controls button{background:transparent;border:0;color:#fff;padding:8px 12px;font-size:26px}.slide-controls span{padding-right:15px;border-right:1px solid #ddd}.about-hero{display:grid;grid-template-columns:46% 54%;margin-left:4.8%;min-height:550px}.about-copy{align-self:center;padding:45px 40px 45px 0}.about-copy h1{font-size:clamp(48px,5.8vw,88px);max-width:610px}.about-copy p{font-size:25px;max-width:440px;margin-top:30px}.about-hero img{width:100%;height:100%;max-height:630px;object-fit:cover}.section{margin:36px 3.5% 0;border-top:1px solid #c6c4bf;padding:52px 1.3% 55px}.strategy-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:0}.strategy-grid h2{font-size:72px;max-width:280px}.strategy-card{padding:0 40px;border-left:1px solid #bcbab5}.number{font-size:14px;letter-spacing:1px;margin-bottom:24px}.strategy-card h3{font-size:32px;letter-spacing:-1px;margin-bottom:20px}.strategy-card p{font-size:21px}.approach{display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:40px}.approach h2{font-size:68px;margin-bottom:25px;max-width:650px}.approach p{max-width:670px;font-size:20px;line-height:1.6}.approach img{width:100%;height:100%;max-height:480px;object-fit:cover}.team-main{border-top:1px solid #c6c4bf;margin:0 3.5%;padding:55px 2% 60px}.team-main h1{font-size:clamp(48px,6.2vw,90px)}.team-subtitle{font-family:Editorial;font-size:32px;color:#666;margin-top:17px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;max-width:1110px;margin:60px auto 10px}.person img{width:245px;max-width:100%;height:245px;object-fit:cover;display:block}.person h2{font-size:28px;letter-spacing:-.7px;margin-top:20px}.role{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#737575;line-height:1.6;margin-top:10px;min-height:40px}.person-links{display:flex;gap:25px;align-items:center;margin-top:15px}.person-links .text-link{font-size:12px;letter-spacing:1.7px}.person-links a{border-left:1px solid #bbb;padding-left:22px}footer{border-top:1px solid #cbc8c2;margin:0 2.5%;padding:27px 2.3% 30px;display:flex;gap:30px;align-items:center}footer .brand{font-size:19px;letter-spacing:1.2px}footer p{font-size:12px;line-height:1.5;max-width:720px;flex:1}footer .small-link{font-size:12px;background:none;border:0;padding:0}footer .copyright{font-size:12px;white-space:nowrap}.modal{position:fixed;inset:0;z-index:10;background:#0008;display:none;align-items:center;justify-content:center;padding:24px}.modal.open{display:flex}.modal-content{background:#f7f5f0;max-width:650px;padding:45px;position:relative;max-height:85vh;overflow:auto}.modal-content h2{font-size:40px;margin:15px 0 25px}.modal-content p{line-height:1.7}.close{position:absolute;top:12px;right:18px;background:none;border:0;font-size:30px}.modal-role{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#666}.menu-toggle{display:none}@media(min-width:1600px){header,.home-hero,.about-hero,.section,.team-main,footer{max-width:1800px;margin-left:auto;margin-right:auto}.home-hero{padding-left:5%}}@media(max-width:1000px){header{gap:20px}.brand{font-size:24px}nav{gap:24px}.login{padding:14px 18px;font-size:12px}.home-copy h1{font-size:9vw;letter-spacing:-3px}.home-copy h1 strong{letter-spacing:-3px}.home-copy p{font-size:21px}.home-visual{min-height:550px}.about-copy p{font-size:21px}.strategy-card{padding:0 25px}.strategy-grid h2{font-size:58px}.approach h2{font-size:54px}.team-grid{gap:35px}.person img{width:220px;height:220px}.person-links{gap:15px}footer{flex-wrap:wrap}footer p{min-width:50%}}@media(max-width:700px){header{height:auto;min-height:92px;padding:24px 6%;flex-wrap:wrap}.brand{font-size:23px}.menu-toggle{display:block;background:none;border:1px solid #aaa;font-size:14px;padding:7px 12px}nav{display:none;width:100%;gap:25px;justify-content:flex-start}header.menu-open nav{display:flex}header>.login{display:none}header.menu-open>.login{display:block;font-size:12px}.home-hero{display:flex;flex-direction:column;margin:0 6%;min-height:0;padding-bottom:30px}.home-copy{padding:35px 0}.home-copy h1{font-size:clamp(64px,15vw,100px);letter-spacing:-3px}.home-copy h1 span{display:inline}.home-copy h1 span:after{content:' '}.home-copy p{font-size:21px;max-width:360px}.home-visual{min-height:440px}.slide-controls{right:15px;bottom:12px}.about-hero{display:flex;flex-direction:column;margin:0 6%}.about-copy{padding:35px 0}.about-copy h1{font-size:54px;max-width:420px}.about-copy p{font-size:22px}.about-hero img{height:400px}.section{margin:30px 6% 0;padding:35px 0}.strategy-grid{grid-template-columns:1fr}.strategy-grid h2{font-size:56px;max-width:none;margin-bottom:30px}.strategy-card{border-left:0;border-top:1px solid #c6c4bf;padding:28px 0}.number{margin-bottom:12px}.strategy-card h3{font-size:31px}.approach{grid-template-columns:1fr;gap:30px}.approach h2{font-size:50px}.approach p{font-size:18px}.approach img{height:360px}.team-main{margin:0 6%;padding:35px 0}.team-main h1{font-size:53px}.team-subtitle{font-size:26px;line-height:1.3}.team-grid{grid-template-columns:1fr;gap:44px;margin-top:40px}.person{max-width:340px;margin:0 auto;width:100%}.person img{width:245px;height:245px}.role{min-height:0}.person h2{font-size:28px}footer{margin:0 6%;padding:25px 0;gap:20px}footer p{flex-basis:100%;order:3}footer .copyright{margin-left:auto;font-size:11px}.modal-content{padding:34px 25px}}

/* Refined editorial rhythm and quiet motion. */
footer{gap:24px;flex-wrap:nowrap}footer .disclaimer{max-width:none;font-size:12px;white-space:nowrap} .footer-links{display:flex;justify-content:flex-end;align-items:center;gap:24px;margin-left:auto;flex-shrink:0}.footer-links>*+*{border-left:1px solid #cbc8c2;padding-left:24px}footer .footer-links button{border-top:0;border-bottom:0;border-right:0}.small-link{transition:color .2s}.small-link:hover{color:#c62329}
.home-page header{position:sticky;top:0;z-index:4;background:rgba(247,245,240,.96);transition:height .35s,box-shadow .35s;backdrop-filter:blur(12px)}.home-page.scrolled header{box-shadow:0 1px 0 #cbc8c2}.home-page .home-hero{min-height:calc(100svh - 112px);padding-bottom:40px;grid-template-columns:40% 60%}.home-page .home-copy{padding-top:45px;padding-bottom:45px;padding-right:40px}.home-page .home-copy h1{font-size:clamp(66px,7.25vw,128px);line-height:1;letter-spacing:-3px}.home-page .home-copy h1 span,.home-page .home-copy h1 strong{display:block;white-space:nowrap}.home-page .home-copy h1 strong{font-family:Narrow;font-weight:700;letter-spacing:-3px}.home-page .home-copy p{font-size:clamp(20px,1.85vw,27px);max-width:390px;line-height:1.4;margin:30px 0 28px;text-wrap:pretty}.home-page .eyebrow{font-size:13px;letter-spacing:2.3px;margin-bottom:30px}.home-visual{--image-shift:0px;--image-zoom:1.02}.home-visual img{transform:translateY(var(--image-shift)) scale(var(--image-zoom));transition:opacity .5s ease,scale 1s ease;will-change:transform}.home-visual:hover{--image-zoom:1.055}.home-visual img.switching{opacity:0}.slide-controls button{border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;transition:background .25s,transform .25s}.slide-controls button:hover{background:#ffffff26;transform:scale(1.08)}.text-link{position:relative;transition:color .25s,letter-spacing .25s}.text-link:hover{letter-spacing:2.8px}.brand{transition:opacity .25s}.brand:hover{opacity:.7}nav a:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:1px;background:#111;transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover:after,nav a.active:after{transform:scaleX(1)}.login{transition:background .25s,color .25s}.home-copy>*{animation:editorial-in .85s both}.home-copy .eyebrow{animation-delay:.05s}.home-copy h1{animation-delay:.15s}.home-copy p{animation-delay:.25s}.home-copy .text-link{animation-delay:.35s}.home-page footer{opacity:1;transform:translateY(0);transition:opacity .8s,transform .8s}.home-page.motion-ready footer:not(.in-view){opacity:0;transform:translateY(16px)}@keyframes editorial-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1250px){footer{display:grid;grid-template-columns:auto 1fr;gap:18px 24px}footer .disclaimer{grid-row:2;grid-column:1/-1}.footer-links{grid-column:2;grid-row:1}.home-page .home-copy{padding-right:25px}.home-page .home-copy h1{font-size:7.6vw;letter-spacing:-2px}.home-page .home-copy p{font-size:22px}}@media(max-width:700px){.home-page header{position:relative}.home-page .home-hero{min-height:0;display:flex}.home-page .home-copy{padding:30px 0 38px}.home-page .home-copy h1{font-size:clamp(62px,14vw,98px);letter-spacing:-2px}.home-page .home-copy h1 span:after{content:none}.home-page .home-copy h1 strong{letter-spacing:-2px}.home-page .home-copy p{font-size:21px;max-width:340px;margin-top:23px}.home-page .home-visual{min-height:460px}footer{display:flex;flex-wrap:wrap;gap:20px}.footer-links{margin-left:0;width:100%;justify-content:flex-start;gap:18px;order:2}.footer-links>*+*{padding-left:18px}footer .disclaimer{white-space:normal;order:3;font-size:12px}.footer-links .copyright{margin-left:0}.home-page footer{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.home-visual img{transform:none!important}.home-page.motion-ready footer:not(.in-view){opacity:1;transform:none}}

/* A shared content edge across every route. */
:root{--page-gutter:5vw}header{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.home-page .home-hero,.home-hero,.about-hero{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}.section{margin-left:var(--page-gutter);margin-right:var(--page-gutter);padding-left:0;padding-right:0}.team-main{margin-left:var(--page-gutter);margin-right:var(--page-gutter);padding-left:0;padding-right:0}.team-grid{max-width:none;margin-left:0;margin-right:0}.eyebrow:before{display:none}.eyebrow:after{content:'';width:58px;height:1px;background:#888}.home-page .home-hero{grid-template-columns:minmax(0,48fr) minmax(0,52fr)}.home-page .home-copy h1{font-size:clamp(54px,5.9vw,104px);line-height:1.08;letter-spacing:-2px}.home-page .home-copy h1 span{display:block;white-space:nowrap}.home-page .home-copy p{max-width:510px;width:100%;text-wrap:pretty}.about-hero{grid-template-columns:minmax(0,50fr) minmax(0,50fr)}.about-copy p{max-width:550px;width:100%;text-wrap:pretty}.about-copy{padding-right:45px}footer{margin-left:var(--page-gutter);margin-right:var(--page-gutter);padding-left:0;padding-right:0;display:grid;grid-template-columns:auto 1fr;gap:18px 24px}footer .brand{grid-column:1;grid-row:1}.footer-links{grid-column:2;grid-row:1;justify-self:end}footer .disclaimer{grid-column:1/-1;grid-row:2;white-space:nowrap;max-width:none;margin:0;font-size:12px}.footer-links>*+*{border-left:1px solid #bcbab5;padding-left:24px}footer .footer-links button{border-left:1px solid #bcbab5}
@media(min-width:1600px){header,.home-hero,.about-hero,.section,.team-main,footer{max-width:none}.home-hero{padding-left:0}}@media(max-width:1100px){footer .disclaimer{white-space:normal}.home-page .home-copy p{font-size:21px}.about-copy p{font-size:22px}}@media(max-width:700px){:root{--page-gutter:6vw}header{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.home-page .home-copy h1{font-size:clamp(35px,10.7vw,70px);letter-spacing:-1px}.home-page .home-copy p{max-width:100%;font-size:21px}.about-copy{padding-right:0}.about-copy p{max-width:100%}.team-grid{margin-left:0;margin-right:0}.person{margin-left:0}.home-page .home-visual{min-height:460px}footer{display:flex;flex-wrap:wrap}.footer-links{justify-content:flex-end;width:100%;margin-left:auto;gap:16px}.footer-links>*+*{padding-left:16px}.footer-links .copyright{font-size:11px}.about-hero{display:flex}.eyebrow{gap:20px}}

/* Footer sits in reading order, with evenly spaced separators. */
footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;align-items:center}footer .brand{grid-column:1;grid-row:1}footer .disclaimer{grid-column:2;grid-row:1;white-space:normal;font-size:12px;line-height:1.5}footer .footer-links{grid-column:3;grid-row:1;gap:0;width:auto;justify-content:flex-end}footer .footer-links>*{border:0!important;padding:0!important;display:inline-flex;align-items:center;white-space:nowrap;margin:0}footer .footer-links>*+*:before{content:'';display:inline-block;width:1px;height:18px;background:#bcbab5;margin:0 20px;flex-shrink:0}.home-page .home-visual{--image-zoom:1}.home-page .home-visual:hover{--image-zoom:1}.home-page .home-visual img{object-view-box:inset(0 0 12% 0);transform:translateY(var(--image-shift));transition:none}.slide-controls{display:none!important}.team-grid{grid-template-columns:repeat(3,minmax(0,235px));justify-content:center;gap:45px;max-width:795px;margin:50px auto 15px}.person{width:235px;max-width:100%;margin:0}.person img{width:210px;height:210px}.person h2{font-size:25px;margin-top:16px}.person .role{font-size:12px;letter-spacing:1.2px;min-height:58px}.person-links{gap:20px;margin-top:10px}.person-links .text-link{font-size:12px}.modal-content{max-width:780px}.modal-content p{font-size:17px;line-height:1.7}
@media(max-width:1000px){footer{grid-template-columns:auto 1fr;gap:20px}footer .disclaimer{grid-column:1/-1;grid-row:2}.footer-links,footer .footer-links{grid-column:2;grid-row:1}.team-grid{gap:25px;grid-template-columns:repeat(3,minmax(0,210px));max-width:680px}.person{width:210px}.person img{width:190px;height:190px}.person-links{gap:12px}.person-links a{padding-left:12px}}@media(max-width:700px){footer{display:flex;flex-wrap:wrap;gap:18px}footer .brand{order:1}footer .disclaimer{order:2;flex-basis:100%}footer .footer-links{order:3;width:100%;justify-content:flex-end}footer .footer-links>*+*:before{margin:0 16px}.team-grid{grid-template-columns:235px;gap:38px;margin:40px auto 10px;max-width:235px}.person{width:235px;margin:0 auto}.person img{width:210px;height:210px}.person .role{min-height:0}.person-links{margin-top:15px}}

/* Separate roles and separators from link underline borders. */
.person .role span{display:block}.person-links{display:flex;align-items:center;gap:18px}.person-links a.text-link{border-left:0;padding-left:0}.bio-divider{display:block;flex:0 0 1px;width:1px;height:24px;background:#bcbab5;align-self:center}.person-links .text-link{padding:8px 0;border-bottom:1px solid #777}.person img{object-fit:cover;image-rendering:auto}@media(max-width:1000px){.person-links{gap:14px}}@media(max-width:700px){.person-links{gap:18px}}

/* Shared headline face and restrained typography-only motion. */
.about-copy h1,.team-main h1{font-family:Narrow,Arial,sans-serif;text-transform:uppercase;font-weight:400;letter-spacing:-2px;line-height:1.08}.about-copy h1{font-size:clamp(48px,5.9vw,104px)}.team-main h1{font-size:clamp(48px,5.9vw,104px)}header{position:sticky;top:0;z-index:4;background:rgba(247,245,240,.97);backdrop-filter:blur(12px);transition:box-shadow .3s}body.scrolled header{box-shadow:0 1px 0 #cbc8c2}header:after{content:'';position:absolute;top:0;left:0;height:2px;width:100%;background:#d9292f;transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}.text-reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}.text-reveal.revealed{opacity:1;transform:translateY(0)}.text-link{transition:color .25s,border-color .25s}.text-link:hover{letter-spacing:inherit}.person-links .text-link:hover{letter-spacing:1.7px;color:#b62025;border-color:#b62025}.home-copy .text-link:hover{letter-spacing:2px}.modal.open .modal-content{animation:dialog-enter .3s ease both}.modal-content a{color:#b62025;text-decoration:underline;text-underline-offset:3px}.close{transition:color .2s}.close:hover{color:#b62025}@keyframes dialog-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
/* Images remain static, including on scroll and hover. */
.home-page .home-visual img,.home-visual img,.about-hero img,.approach img,.person img{transform:none!important;transition:none!important;animation:none!important}.home-page.motion-ready footer:not(.in-view){opacity:1;transform:none}@media(max-width:700px){header{position:relative}.about-copy h1,.team-main h1{font-size:clamp(43px,11vw,65px);letter-spacing:-1px}.text-reveal{transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){.text-reveal{opacity:1;transform:none;transition:none}header:after{display:none}.modal.open .modal-content{animation:none}}

/* Smaller page titles, with an intentional two-line About headline. */
.about-copy h1,.team-main h1{font-size:clamp(42px,5.2vw,92px)}.about-copy h1 span{display:block;white-space:nowrap}.about-copy h1{font-size:clamp(36px,4.6vw,81px);letter-spacing:-1.5px}@media(max-width:700px){.about-copy h1{font-size:clamp(29px,8.9vw,56px);letter-spacing:-1px}.team-main h1{font-size:clamp(38px,9.8vw,58px)}}

/* Identical About and Team hero title sizing at every breakpoint. */
.about-copy h1,.team-main h1{font-size:clamp(42px,5.2vw,92px)}@media(max-width:700px){.about-copy h1,.team-main h1{font-size:clamp(38px,9.8vw,58px)}}

/* Slow crossfades, without controls or image movement. */
.home-page .home-visual img.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:brightness(.97);transition:opacity 2.6s ease-in-out,filter 2.6s ease-in-out!important;transform:none!important;animation:none!important;pointer-events:none;object-view-box:inset(0)}.home-page .home-visual img.hero-original{object-view-box:inset(0 0 12% 0)}.home-page .home-visual img.hero-slide.is-visible{opacity:1;filter:brightness(1)}@media(prefers-reduced-motion:reduce){.home-page .home-visual img.hero-slide{transition:none!important}}

/* Mobile-compatible crop excludes controls embedded in the original photo. */
@media(max-width:700px){.home-page .home-visual{overflow:hidden}.home-page .home-visual img.hero-original{object-view-box:inset(0);top:0;bottom:auto;height:115%;object-position:center top}}

/* Shared hero scale and clear separation on laptop and desktop. */
.home-page .home-copy h1,.about-copy h1,.team-main h1{font-size:clamp(36px,4.6vw,81px);line-height:1.08;letter-spacing:-1.5px}
@media(min-width:701px){.home-page .home-hero,.about-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(24px,2.4vw,44px)}.home-page .home-copy,.about-copy{padding-right:0}.about-copy h1{max-width:none}}
@media(max-width:700px){.home-page .home-copy h1,.about-copy h1,.team-main h1{font-size:clamp(29px,8.9vw,56px);letter-spacing:-1px}}

/* Keep the scope heading on one line within its column. */
.strategy-grid h2{white-space:nowrap;max-width:none;font-size:clamp(28px,3.2vw,56px);letter-spacing:-1.5px}
@media(max-width:700px){.strategy-grid h2{font-size:clamp(28px,8vw,56px)}}

/* Desktop columns follow the headline width instead of leaving a wide empty area. */
@media(min-width:1600px){.home-page .home-hero,.about-hero{grid-template-columns:minmax(0,44fr) minmax(0,56fr);column-gap:32px}}
.strategy-grid h2,.approach h2{font-size:68px;letter-spacing:-2px}
@media(min-width:701px){.strategy-grid{grid-template-columns:minmax(max-content,.9fr) minmax(0,1fr) minmax(0,1fr)}.strategy-grid h2{padding-right:36px}}
@media(max-width:1000px){.strategy-grid h2,.approach h2{font-size:54px}}
@media(max-width:700px){.strategy-grid h2,.approach h2{font-size:clamp(34px,10vw,50px)}}

/* Metropolis fills the complete hero, with a quiet film credit. */
.home-page .home-hero.metropolis-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;min-height:calc(100svh - 112px);margin:0;padding:70px var(--page-gutter) 110px;background:#191919 url('/assets/metropolis-1927.jpg') center center/cover no-repeat;color:#fff}
.metropolis-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 45%,rgba(0,0,0,.13) 100%)}
.home-page .metropolis-hero .home-copy{align-self:flex-start;max-width:760px;padding:35px 0}.home-page .metropolis-hero .home-copy p{max-width:550px}.metropolis-hero .eyebrow:after{background:#ffffff85}.metropolis-hero .text-link{border-color:#ffffff90}.metropolis-hero .text-link:hover{color:#fff;border-color:#fff}
.hero-film-credit{position:absolute;left:var(--page-gutter);right:var(--page-gutter);bottom:27px;border-top:1px solid #ffffff70;padding-top:14px;font-size:12px;letter-spacing:1.6px;line-height:1.5}
@media(max-width:700px){.home-page .home-hero.metropolis-hero{min-height:calc(100svh - 92px);padding-top:55px;padding-bottom:110px;background-position:58% center}.metropolis-hero:before{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.4))}.home-page .metropolis-hero .home-copy{max-width:100%;padding:25px 0}.hero-film-credit{font-size:12px;letter-spacing:1px}}

/* Discreet credits sit over the bottom edge of each film still. */
.metropolis-hero .hero-film-credit{color:rgba(255,255,255,.62);border-color:rgba(255,255,255,.4)}
.film-image{position:relative;isolation:isolate;margin:0;overflow:hidden;background:#191919;min-width:0}.about-film{min-height:550px;max-height:630px}.approach-film{min-height:400px;max-height:480px}.about-hero .film-image img,.approach .film-image img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;max-height:none}.film-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75));z-index:1;pointer-events:none}.image-film-credit{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;border-top:1px solid rgba(255,255,255,.4);padding-top:13px;color:rgba(255,255,255,.7);font-size:12px;line-height:1.5;letter-spacing:1.2px}
@media(max-width:700px){.about-film{height:400px;min-height:400px;width:100%}.approach-film{height:360px;min-height:360px}.image-film-credit{left:18px;right:18px;bottom:18px;letter-spacing:.8px}}

/* Preserve headroom in Nosferatu and unify the portrait tonal treatment. */
.about-hero .about-film img{object-position:center 20%}
.person img{filter:grayscale(1) brightness(.9) contrast(.95)}
