@font-face{font-family:Manrope;src:url('/assets/manrope-latin.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--bg:#080809;--surface:#111114;--text:#f4f3ef;--muted:#aaa9b0;--line:#323236;--pink:#ed3d89;--accent:#fa6aa8;--header:rgba(8,8,9,.85);--pad:clamp(22px,5.2vw,88px);color-scheme:dark}
:root[data-theme=light]{--bg:#faf9f7;--surface:#f0eeed;--text:#20191f;--muted:#625c62;--line:#d2ccd0;--pink:#c51663;--accent:#b30c56;--header:rgba(250,249,247,.9);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;transition:background .4s,color .4s}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}::selection{color:#080809;background:#f870ac}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{background:none;border:0}img,video{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.05;letter-spacing:-.055em}p{color:var(--muted)}.wrap{padding-inline:var(--pad);max-width:1720px;margin:auto}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--pink);padding:10px 20px;color:white}.skip-link:focus{top:15px}.site-header{position:relative;z-index:30;height:112px}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:32px}.brand{position:relative;display:block;width:88px;height:65px;flex:none}.brand img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.logo-positive{opacity:0}.logo-negative{opacity:1}[data-theme=light] .logo-positive{opacity:1}[data-theme=light] .logo-negative{opacity:0}.nav{display:flex;gap:35px;align-items:center;margin-left:auto}.nav a{font-size:14px;position:relative;padding:10px 0}.nav a:after{content:'';position:absolute;bottom:3px;left:0;right:100%;height:2px;background:var(--pink);transition:right .25s}.nav a:hover:after,.nav a[aria-current=page]:after{right:0}.header-controls{display:flex;gap:10px}.icon-button{display:grid;place-items:center;border:1px solid var(--line);width:44px;height:44px;border-radius:50%;transition:border-color .2s,transform .3s}.icon-button:hover{border-color:var(--pink);transform:rotate(12deg)}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;min-height:min(820px,calc(100svh - 112px));display:flex;flex-direction:column;justify-content:center}.hero-main{position:relative;z-index:2;padding:45px 0 68px;pointer-events:none}.hero-main a{pointer-events:auto}.hero h1{font-size:clamp(74px,8.6vw,146px);font-weight:500;line-height:.99;max-width:780px;letter-spacing:-.07em}.accent{color:var(--pink)}.hero-description{font-size:clamp(16px,1.3vw,20px);line-height:1.65;margin:29px 0 28px;max-width:470px;color:var(--muted)}.pill-button{display:inline-flex;align-items:center;gap:35px;padding:17px 25px;border-radius:60px;background:var(--pink);color:white;font-size:14px;font-weight:600;border:1px solid transparent;transition:background .25s,transform .25s}.pill-button:hover{background:#d52b75;transform:translateY(-3px)}.pill-button .icon{width:19px;height:19px}.hero-art{position:absolute;width:68%;right:-6%;top:-6%;height:95%;z-index:0;pointer-events:none;overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:cover;mix-blend-mode:screen;mask-image:linear-gradient(to right,transparent,black 17%,black 84%,transparent)}[data-theme=light] .hero-art img{mix-blend-mode:multiply;filter:invert(1) hue-rotate(165deg) saturate(.65)}.hero-rail{border-top:1px solid var(--line);padding:20px 0 24px;display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:2;margin-top:auto}.hero-rail a{font-size:12px;letter-spacing:.12em}.hero-rail a:last-child{text-align:right}.hero-rail span{color:var(--muted);margin-right:12px}.hero-rail a:hover{color:var(--pink)}.section{padding-block:130px}.section-label{font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);margin-bottom:30px}.section-title{font-size:clamp(42px,5.3vw,84px);max-width:1000px}.intro-copy{max-width:440px;margin:45px 0 0 auto;font-size:18px}.text-link{display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid var(--text);padding-bottom:5px;margin-top:25px;font-size:14px}.text-link:hover{color:var(--pink);border-color:var(--pink)}.border-top{border-top:1px solid var(--line)}.site-footer{padding-block:85px 30px;border-top:1px solid var(--line)}.footer-heading{display:flex;align-items:center;justify-content:space-between;gap:50px}.footer-heading h2{font-size:clamp(44px,5.7vw,92px);max-width:1050px}.round-link{flex:none;width:115px;height:115px;border:1px solid var(--text);border-radius:50%;display:grid;place-items:center;transition:background .3s,color .3s,transform .4s}.round-link .icon{width:55px;height:55px;stroke-width:1}.round-link:hover{background:var(--pink);color:white;border-color:var(--pink);transform:rotate(45deg)}.footer-contact{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-block:52px}.contact-links{display:grid;font-size:clamp(24px,2.7vw,42px);line-height:1.5;letter-spacing:-.035em}.contact-links a:hover{color:var(--pink)}.footer-bottom{padding-top:26px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--muted);font-size:12px}.footer-legal{display:flex;gap:24px}.copyright{font-size:12px}.socials{display:flex;gap:25px;font-size:13px}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(32px);transition:opacity .8s,transform .8s}.js .reveal.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:1700px){.hero-art{right:-2%}}
@media(max-width:900px){.site-header{height:92px}.brand{width:72px;height:55px}.nav{gap:23px}.hero{min-height:700px}.hero h1{font-size:90px}.hero-art{width:85%;right:-20%;opacity:.75}.hero-main{padding-block:90px}.section{padding-block:90px}.hero-description{max-width:365px}.footer-heading{gap:20px}.round-link{width:80px;height:80px}.round-link .icon{width:40px;height:40px}}
@media(max-width:640px){.site-header{height:84px}.header-inner{gap:20px}.menu-toggle{display:grid}.nav{position:absolute;left:0;right:0;top:84px;display:none;padding:30px var(--pad) 40px;background:var(--bg);border-bottom:1px solid var(--line)}.nav.is-open{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.nav a{font-size:26px}.hero{min-height:760px;overflow:hidden}.hero-main{padding:25px 0 250px}.hero h1{font-size:clamp(58px,15.4vw,84px);letter-spacing:-.065em}.hero-description{font-size:15px;margin:23px 0;max-width:300px}.hero-art{top:auto;bottom:25px;right:-28%;width:115%;height:55%;opacity:.82}.hero-rail{padding:18px 0;gap:8px}.hero-rail a{font-size:10px;letter-spacing:.06em}.hero-rail span{margin-right:4px}.pill-button{padding:14px 19px;font-size:13px;gap:24px}.section{padding-block:75px}.section-title{font-size:43px}.intro-copy{font-size:16px;margin-top:30px}.section-label{margin-bottom:22px}.footer-heading{align-items:flex-start}.footer-heading h2{font-size:43px}.round-link{width:50px;height:50px}.round-link .icon{width:25px;height:25px}.footer-contact{align-items:start;flex-direction:column;padding-block:35px}.footer-bottom{flex-wrap:wrap;gap:20px}.footer-legal{gap:15px}.copyright{width:100%;font-size:11px}.site-footer{padding-block:65px 25px}.socials{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
.intro-location{margin-top:18px;font-size:15px}.service-list{margin-top:62px}.service-row{display:grid;grid-template-columns:.5fr 1.4fr 2fr 60px;gap:25px;align-items:center;padding:38px 0;border-bottom:1px solid var(--line);position:relative;transition:padding .3s,background .3s}.service-row:first-child{padding-block:55px}.service-number,.small-number{font-size:13px;color:var(--muted)}.service-row h3{font-size:clamp(35px,4vw,64px);transition:color .25s}.service-row:first-child h3{font-size:clamp(52px,5.2vw,82px)}.service-row p{font-size:17px;max-width:360px}.service-arrow .icon{width:38px;height:38px;stroke-width:1;transition:transform .3s,color .3s}.service-row:hover{padding-left:15px}.service-row:hover h3,.service-row:hover .icon{color:var(--pink)}.service-row:hover .icon{transform:translate(4px,-4px)}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:45px;margin-top:65px}.value h3{font-size:26px;letter-spacing:-.04em;margin:18px 0 15px}.value p{font-size:15px;line-height:1.7}.footer-services{display:flex;gap:28px;margin-bottom:30px;font-size:13px}.footer-services a:hover{color:var(--pink)}.motion-toggle{font-size:12px;padding:0;text-align:left;color:var(--muted)}.motion-toggle:hover{color:var(--pink)}.motion-section{position:relative;height:240svh;background:#080809;color:#f4f3ef}.motion-sticky{height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden}.motion-stage{position:absolute;inset:0}.particle-video{width:100%;height:100%;object-fit:cover}.motion-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,9,.68),transparent 75%)}.motion-text{position:relative;z-index:1;padding-top:20svh;pointer-events:none}.motion-text h2{font-size:clamp(52px,6.5vw,102px);max-width:770px;line-height:1.03}.motion-text .accent{color:#ed3d89}.motion-text .section-label{color:#ff8bbb}.motion-caption{font-size:20px;color:#d4ccd1;margin-top:30px}.motion-bottom{position:absolute;bottom:40px;left:0;right:0;display:flex;align-items:center;gap:28px;font-size:12px;letter-spacing:.04em}.motion-track{height:2px;flex:1;background:#48444a;overflow:hidden}.motion-track span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:#ed3d89}.motion-bottom button{border-bottom:1px solid #f4f3ef;color:#f4f3ef;padding:6px 0;font-size:12px}.page-hero{padding-block:95px 105px}.page-hero h1{font-size:clamp(58px,7.5vw,118px);max-width:1300px}.page-hero>p{max-width:690px;font-size:19px;line-height:1.75;margin-top:40px;margin-left:auto}.back-link{display:inline-block;font-size:13px;color:var(--muted);margin-bottom:40px}.back-link:hover{color:var(--pink)}.split-section{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.split-section .section-title{font-size:clamp(36px,4vw,64px)}.body-copy{font-size:17px}.body-copy p+p{margin-top:24px}.body-copy .pill-button{margin-top:30px}.process-list{margin-top:60px}.process-step{display:grid;grid-template-columns:.3fr 1fr 1.5fr;gap:35px;border-top:1px solid var(--line);padding-block:35px}.process-step>span{font-size:12px;color:var(--accent)}.process-step h3{font-size:34px}.process-step p{max-width:530px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 55px}.offer{padding-top:25px;border-top:1px solid var(--line)}.offer h3{font-size:29px;line-height:1.15;margin:20px 0}.offer p{font-size:15px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px;margin-top:60px}.portfolio-item{margin:0}.portfolio-item img{width:100%;aspect-ratio:1.5;object-fit:cover;background:#ddd}.portfolio-item figcaption{font-size:13px;color:var(--muted);padding-top:14px}.video-list{margin-top:60px}.video-link{display:flex;gap:30px;align-items:center;padding:35px 0;border-bottom:1px solid var(--line)}.video-link h3{font-size:30px;line-height:1.2}.video-link>span:last-child{margin-left:auto;display:flex;align-items:center;gap:15px;white-space:nowrap;font-size:12px}.video-link:hover{color:var(--pink)}.play-icon{width:45px;height:45px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:12px;flex:none}.compact{padding-top:0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-info>a{display:block;font-size:clamp(25px,3vw,45px);letter-spacing:-.04em}.contact-info>a:hover{color:var(--pink)}.contact-info>p:last-child{margin-top:35px}.contact-form h2{font-size:36px;letter-spacing:-.045em;margin-bottom:20px}.contact-form>p{font-size:14px}.contact-form>label,.contact-form legend{display:block;font-size:14px;margin:28px 0 10px}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;padding:14px 0;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--text);font-size:16px;resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted);opacity:.75}.contact-form fieldset{padding:0;border:0;margin:0}.service-choices{display:flex;gap:8px;flex-wrap:wrap}.service-choices label{position:relative;cursor:pointer}.service-choices input{position:absolute;width:1px;height:1px;opacity:0}.service-choices span{display:block;padding:8px 20px;border:1px solid var(--line);border-radius:30px;font-size:14px}.service-choices input:checked+span{background:var(--pink);border-color:var(--pink);color:#fff}.service-choices input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.form-privacy{font-size:12px!important;margin:25px 0!important}.form-privacy a{text-decoration:underline}.contact-form .pill-button{width:100%;justify-content:space-between}.contact-form #form-status{margin-top:20px;color:var(--accent)}[hidden]{display:none!important}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px 30px}.journal-image{overflow:hidden;aspect-ratio:1.5;background:var(--surface)}.journal-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.journal-card a:hover img{transform:scale(1.045)}.journal-meta{display:flex;gap:20px;justify-content:space-between;color:var(--muted);font-size:12px;margin:19px 0}.journal-meta span{color:var(--accent)}.journal-card h2{font-size:27px;line-height:1.2;letter-spacing:-.045em}.journal-card .text-link{font-size:12px;margin-top:20px}.journal-card a:hover h2{color:var(--pink)}.pagination{display:flex;gap:10px;justify-content:center;margin-top:70px}.pagination a{width:45px;height:45px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:14px}.pagination a[aria-current=page],.pagination a:hover{background:var(--pink);color:white;border-color:var(--pink)}.article-image img{width:100%;height:auto;max-height:720px;object-fit:contain;background:var(--surface)}.article-body{max-width:800px;margin:0 auto;padding:75px var(--pad) 110px;box-sizing:content-box;font-size:18px}.article-body h2{font-size:34px;letter-spacing:-.04em;line-height:1.2;margin:42px 0 22px}.article-body p{margin:20px 0}.article-body a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.article-body li{color:var(--muted);margin:12px 0}.article-body blockquote{margin:35px 0;padding-left:25px;border-left:2px solid var(--pink);font-size:24px}.article-cta{margin-top:60px;padding-top:10px;border-top:1px solid var(--line)}.sitemap-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.sitemap-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:20px;font-size:16px}.sitemap-list .icon{flex:none}.sitemap-list>a:hover{color:var(--pink)}
[data-motion=reduced] .motion-section{height:100svh}[data-motion=reduced] .motion-sticky{position:relative}[data-motion=reduced] .reveal{opacity:1;transform:none}[data-motion=reduced] *{animation:none!important;transition:none!important}[data-motion=reduced]{scroll-behavior:auto}
@media(min-width:1000px) and (prefers-reduced-motion:no-preference){.hero-art img{animation:hero-drift 12s ease-in-out infinite}@keyframes hero-drift{50%{transform:translateY(-15px) rotate(2deg) scale(1.02)}}}
@media(max-width:900px){.service-row{grid-template-columns:.35fr 1.2fr 1.8fr 35px;gap:20px}.service-row p{font-size:15px}.values-grid{gap:25px;grid-template-columns:1fr 1fr}.value p{max-width:300px}.split-section{gap:50px;grid-template-columns:1fr 1fr}.offer-grid{grid-template-columns:1fr 1fr;gap:40px}.page-hero{padding-block:70px 80px}.page-hero h1{font-size:70px}.contact-layout{gap:50px;grid-template-columns:.85fr 1.15fr}.journal-grid{grid-template-columns:1fr 1fr}.video-link h3{font-size:24px}.footer-legal{flex-wrap:wrap}.motion-text h2{font-size:75px}.motion-shade{background:linear-gradient(90deg,rgba(8,8,9,.7),transparent)}.particle-video{object-fit:cover}.motion-bottom{bottom:30px}.article-body{padding-top:45px}}
@media(max-width:640px){.service-list{margin-top:40px}.service-row{grid-template-columns:30px 1fr 30px;gap:10px;padding:27px 0}.service-row:first-child{padding-block:35px}.service-row h3{font-size:38px}.service-row:first-child h3{font-size:52px}.service-row p{grid-column:2;grid-row:2;font-size:14px;max-width:270px;margin-top:4px}.service-arrow{grid-column:3;grid-row:1}.service-arrow .icon{width:27px;height:27px}.service-number{font-size:11px}.values-grid{margin-top:40px;gap:32px 25px}.value h3{font-size:22px}.value p{font-size:14px}.footer-services{font-size:12px;gap:25px}.footer-legal{gap:15px}.motion-section{height:190svh}.motion-sticky{min-height:650px}.motion-text{padding-top:65px}.motion-text h2{font-size:48px;max-width:350px}.motion-caption{font-size:16px;margin-top:20px}.motion-shade{background:linear-gradient(180deg,rgba(8,8,9,.65),transparent 85%)}.particle-video{object-fit:cover;object-position:60% center}.motion-stage{top:20%}.motion-bottom{flex-wrap:wrap;gap:15px;font-size:10px;bottom:25px}.motion-bottom>span{flex:1}.motion-track{flex-basis:100%;order:3}.motion-bottom button{font-size:11px}.page-hero{padding-block:55px 65px}.page-hero h1{font-size:clamp(44px,11.8vw,63px);overflow-wrap:break-word}.page-hero>p{font-size:16px;margin-top:30px}.back-link{margin-bottom:26px}.split-section{grid-template-columns:1fr;gap:30px}.split-section .section-title{font-size:40px}.body-copy{font-size:16px}.process-list{margin-top:35px}.process-step{grid-template-columns:25px 1fr;gap:15px;padding-block:28px}.process-step h3{font-size:30px}.process-step p{grid-column:2;font-size:14px}.offer-grid{grid-template-columns:1fr;gap:32px}.offer h3{font-size:26px;margin:14px 0}.offer p{max-width:420px}.portfolio-grid{grid-template-columns:1fr;gap:35px;margin-top:40px}.portfolio-item figcaption{font-size:12px}.video-list{margin-top:30px}.video-link{gap:15px;flex-wrap:wrap}.video-link h3{font-size:22px;flex:1}.video-link>span:last-child{font-size:11px;flex-basis:100%;margin-left:60px}.contact-layout{grid-template-columns:1fr;gap:65px}.contact-form h2{font-size:32px}.contact-info>a{font-size:32px}.contact-info>p:last-child{font-size:14px;margin-top:20px}.journal-grid{grid-template-columns:1fr;gap:45px}.journal-card h2{font-size:28px}.journal-card .text-link{margin-top:16px}.article-body{font-size:16px;padding-top:35px;padding-bottom:70px}.article-body h2{font-size:29px}.article-body ul,.article-body ol{padding-left:22px}.sitemap-list{grid-template-columns:1fr}.sitemap-list>a{font-size:14px}}
@media(prefers-reduced-motion:reduce){.motion-section{height:100svh}.motion-sticky{position:relative}}
/* Keep the first composition within the viewport while reserving space for its service rail. */
.hero{overflow:hidden}.hero h1{font-weight:600}
@media(min-width:901px){.hero h1{font-size:clamp(74px,8vw,138px)}.hero-main{padding:20px 0 40px}.hero-art{top:-2%;height:100%}}
@media(min-width:641px) and (max-width:900px){.hero-main{padding-block:50px}.hero h1{font-size:83px}}
@media(max-width:640px){.motion-stage{top:32%;bottom:50px;left:-5%;right:-5%}.particle-video{object-fit:contain;object-position:center}.motion-shade{background:linear-gradient(180deg,#080809 0%,transparent 25%,transparent 80%,#080809 100%)}.motion-text{padding-top:65px}}
h2{font-weight:600;letter-spacing:-.045em}.footer-heading h2 .accent{display:inline-block;margin-left:.12em}

/* Immersive home: native sticky scenes, each with its own media timeline. */
.is-home .site-header{position:absolute;top:0;left:0;right:0}
.hero-scroll{height:240svh;position:relative}.hero-sticky{position:sticky;top:0;height:100svh;overflow:hidden;background:var(--bg)}
.hero-sticky .hero{height:100%;min-height:0;padding-top:112px;padding-bottom:62px;overflow:visible}
.hero-sticky .hero-main{padding:14px 0 22px;margin:auto 0}
.hero-sticky .hero h1{font-size:clamp(68px,7.8vw,136px)}
.hero-sticky .hero-description{margin:22px 0 24px}
.hero-sticky .hero-art{right:-5%;width:74%;height:91%;opacity:1}
.hero-art .particle-video{object-fit:cover;mask-image:linear-gradient(90deg,transparent,black 20%,black 90%,transparent);mix-blend-mode:screen}
[data-theme=light] .hero-art .particle-video{mix-blend-mode:multiply;filter:invert(1) hue-rotate(165deg) saturate(.65)}
.hero-sticky .hero-rail{padding:15px 0;margin-top:0}
.hero-sticky .motion-bottom{bottom:18px;color:var(--muted)}.hero-sticky .motion-bottom button{color:var(--text);border-color:var(--line)}
.hero-sticky .motion-track{background:var(--line)}
.motion-sticky{min-height:0}.motion-stage{inset:0}.motion-stage .particle-video{object-fit:cover;object-position:center}
.motion-shade{background:linear-gradient(90deg,#080809 0%,rgba(8,8,9,.75) 30%,transparent 70%)}
.studio-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:8%;align-items:center;margin-top:55px}
.studio-image{margin:0;overflow:hidden;aspect-ratio:1.5;background:#080809}
.studio-image img{width:100%;height:100%;object-fit:cover;object-position:85% center;transform:scale(1.18)}
.studio-grid .intro-copy{margin:0;font-size:18px}
/* Each inner hero has an original image with quiet space on the left. */
.page-hero{position:relative;isolation:isolate;overflow:hidden;padding-block:90px 110px;min-height:620px;display:flex;align-items:center;margin-bottom:70px}
.page-hero-art{position:absolute;inset:0;z-index:-2;background:#080809}
.page-hero-art img{width:100%;height:100%;object-fit:cover;object-position:right center}
.page-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bg) 2%,rgba(8,8,9,.5) 40%,transparent 85%),linear-gradient(0deg,var(--bg),transparent 18%,transparent 86%,var(--bg))}
.page-hero-content{width:100%;position:relative}.page-hero h1{max-width:1100px;font-size:clamp(58px,7vw,112px)}
.page-hero-content>p{max-width:660px;font-size:18px;line-height:1.75;margin:32px 0 0;color:var(--text)}
.page-hero .back-link{color:var(--text)}
[data-theme=light] .page-hero-art img{opacity:.55;filter:invert(1) hue-rotate(165deg) saturate(.6)}
[data-theme=light] .page-hero-art{background:var(--bg)}
[data-theme=light] .page-hero:after{background:linear-gradient(90deg,var(--bg) 2%,rgba(250,249,247,.72) 40%,transparent 85%),linear-gradient(0deg,var(--bg),transparent 18%,transparent 86%,var(--bg))}
/* A shallow opposing parallax adds depth without moving any text. */
.services-scene{position:relative;isolation:isolate;overflow:hidden;background:#080809;color:#f4f3ef}
.parallax-art{position:absolute;inset:-45px;z-index:-3;will-change:transform}
.parallax-art img{width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:.7}
.services-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,8,9,.62),rgba(8,8,9,.15)),linear-gradient(0deg,#080809,transparent 20%,transparent 80%,#080809)}
.services-content .service-row{border-color:#ffffff30}.services-content .service-row p{color:#d8d4d9}.services-content .service-number{color:#b5afb8}.services-content .section-label{color:#ff8bbb}
.services-content .service-row:hover{background:#08080955}.services-content .service-row:hover h3{color:#fa6aa8}
/* Four distinct, silent, locally hosted cinematic service backgrounds. */
.cinema-section{position:relative;isolation:isolate;overflow:hidden;min-height:660px;background:#080809;color:#f4f3ef;margin-bottom:80px}
.cinema-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:-3}
.cinema-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,8,9,.93),rgba(8,8,9,.7) 40%,transparent 85%),linear-gradient(0deg,#080809,transparent 20%,transparent 90%,#080809)}
.cinema-content{padding-block:105px 120px}.cinema-content .section-title{font-size:clamp(42px,5.1vw,80px);max-width:950px}.cinema-content .body-copy{max-width:555px;margin-top:35px}.cinema-content p{color:#d4cdd5}.cinema-content .section-label{color:#ff8bbb}.cinema-content .pill-button{background:#ed3d89}
.cinema-control{position:absolute;right:var(--pad);bottom:30px;font-size:12px;color:#f4f3ef;padding:7px 0;border-bottom:1px solid #777}
@media(min-width:641px) and (max-height:760px){.hero-sticky .hero h1{font-size:clamp(68px,7.2vw,110px)}.hero-sticky .hero-description{font-size:16px;margin:15px 0 18px}.hero-sticky .hero-main{padding-block:6px}.hero-sticky .hero-rail{padding-block:10px}}
@media(max-width:900px){.hero-sticky .hero{padding-top:92px}.hero-sticky .hero h1{font-size:82px}.hero-sticky .hero-art{width:95%;right:-24%}.page-hero{min-height:540px;padding-block:70px 80px}.page-hero h1{font-size:68px}.page-hero-content>p{max-width:590px}.studio-grid{gap:45px;grid-template-columns:1fr 1fr}.studio-grid .intro-copy{font-size:16px}.cinema-content .body-copy{max-width:520px}}
@media(max-width:640px){
 .hero-scroll{height:230svh}.hero-sticky .hero{padding-top:84px;padding-bottom:75px;justify-content:flex-start}.hero-sticky .hero-main{padding:25px 0 0;margin:0}.hero-sticky .hero h1{font-size:clamp(55px,15vw,82px)}.hero-sticky .hero-description{font-size:15px;margin:20px 0;max-width:305px}.hero-sticky .hero-art{top:30%;bottom:auto;right:-39%;height:64%;width:138%;opacity:.85}.hero-sticky .hero-rail{margin-top:auto;padding:14px 0}.hero-sticky .motion-bottom{bottom:17px;gap:10px}.hero-sticky .motion-bottom>span{font-size:10px}.hero-sticky .motion-track{flex-basis:100%}
 .motion-section{height:220svh}.motion-text{padding-top:60px}.motion-text h2{font-size:clamp(43px,12.3vw,58px)}.motion-stage{inset:21% -15% 40px -45%}.motion-stage .particle-video{object-fit:contain}.motion-shade{background:linear-gradient(180deg,#080809 0%,transparent 32%,transparent 85%,#080809)}.motion-caption{max-width:230px}.motion-bottom{bottom:25px}
 .studio-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.studio-image{aspect-ratio:1.4}.studio-image img{transform:scale(1.15)}
 .page-hero{min-height:620px;padding-block:45px 70px;margin-bottom:35px;align-items:flex-start}.page-hero h1{font-size:clamp(43px,11.2vw,63px)}.page-hero-content>p{font-size:16px;line-height:1.7;margin-top:25px;max-width:100%}.page-hero-art{top:0;left:-100%;bottom:0;right:-5%;opacity:.8}.page-hero-art img{object-position:right center}.page-hero:after{background:linear-gradient(90deg,rgba(8,8,9,.72),rgba(8,8,9,.35)),linear-gradient(0deg,var(--bg) 0%,transparent 30%,rgba(8,8,9,.55) 100%)}
 [data-theme=light] .page-hero:after{background:linear-gradient(90deg,rgba(250,249,247,.85),rgba(250,249,247,.45)),linear-gradient(0deg,var(--bg),transparent 30%,rgba(250,249,247,.5))}
 .services-scene{padding-block:80px}.parallax-art{inset:-25px -65%}.parallax-art img{opacity:.5}.services-shade{background:linear-gradient(90deg,rgba(8,8,9,.6),rgba(8,8,9,.3)),linear-gradient(0deg,#080809,transparent 25%,transparent 75%,#080809)}
 .cinema-section{min-height:760px;margin-bottom:35px}.cinema-content{padding-block:65px 170px}.cinema-content .section-title{font-size:42px}.cinema-content .body-copy{margin-top:25px;font-size:16px}.cinema-video{width:190%;max-width:none;left:-90%;object-position:right center}.cinema-shade{background:linear-gradient(180deg,rgba(8,8,9,.85),rgba(8,8,9,.72) 50%,transparent 88%,#080809),linear-gradient(90deg,rgba(8,8,9,.3),transparent)}
}
@media(max-width:640px) and (max-height:700px){.hero-sticky .hero h1{font-size:48px}.hero-sticky .hero-main{padding-top:8px}.hero-sticky .hero-description{font-size:14px;margin:13px 0}.hero-sticky .hero-art{top:34%;height:58%}.hero-sticky .hero-rail{padding:10px 0}.motion-text{padding-top:35px}.motion-text h2{font-size:43px}}
[data-motion=reduced] .scroll-scene{height:auto}[data-motion=reduced] [data-scroll-sticky]{position:relative}[data-motion=reduced] .parallax-art{transform:none!important}
@media(prefers-reduced-motion:reduce){.scroll-scene{height:auto}[data-scroll-sticky]{position:relative}.parallax-art{transform:none!important}}

/* A quiet autonomous float replaces pointer parallax. */
[data-float] .parallax-art{animation:services-float 22s ease-in-out infinite;animation-play-state:paused;transform:scale(1.035)}
[data-float].is-floating .parallax-art{animation-play-state:running}
@keyframes services-float{0%,100%{transform:translate3d(-12px,9px,0) rotate(-.35deg) scale(1.035)}50%{transform:translate3d(15px,-12px,0) rotate(.4deg) scale(1.06)}}
/* Navigation is always legible over photographic and cinematic backgrounds. */
.nav{gap:6px;background:rgba(19,18,23,.94);border:0;border-radius:60px;padding:7px;box-shadow:0 8px 35px #0003;backdrop-filter:blur(16px)}
.nav a{font-size:15px;line-height:1.2;font-weight:700;letter-spacing:.015em;color:#f7f5f7;padding:12px 18px;border-radius:40px;transition:background .25s,color .25s}
.nav a:after{display:none}.nav a:hover{background:#ffffff14;color:#ff8bbb}.nav a[aria-current=page]{background:#ed3d89;color:white;box-shadow:0 3px 16px #ed3d8926}
.header-controls .icon-button{background:#141317e8;border-color:#ffffff45;color:#fff}
[data-theme=light] .nav{background:rgba(255,255,255,.96);border-color:#c9c1c7;box-shadow:0 8px 35px #25101d12}
[data-theme=light] .nav a{color:#30222b}[data-theme=light] .nav a:hover{background:#f3e5ec;color:#a51252}[data-theme=light] .nav a[aria-current=page]{background:#b41459;color:#fff}
[data-theme=light] .header-controls .icon-button{background:#fff;border-color:#b6a9b2;color:#34232e}
/* GSAP owns text reveals; the CSS observer remains the no-library fallback. */
.gsap-text .reveal,.gsap-text .reveal.is-visible{opacity:1;transform:none;transition:none}
.text-word{perspective:700px}.text-char{backface-visibility:hidden}.text-line-mask{padding-block:.09em;margin-block:-.09em}
.page-hero-art img{transform-origin:75% center;will-change:transform}.hero-art .particle-video{transform-origin:65% center}
/* About: animated relationships, real project imagery, and a drawn process. */
.about-connection{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center}
.connection-copy .section-title{font-size:clamp(40px,4.7vw,74px)}
.connection-copy>p:not(.section-label){font-size:18px;max-width:530px;margin-top:30px}
.connection-diagram{position:relative;margin:0;height:500px;isolation:isolate}
.connection-diagram svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.diagram-orbit{fill:none;stroke:var(--line);stroke-width:1;stroke-dasharray:2 9}
.diagram-path{fill:none;stroke:var(--muted);stroke-width:1.25}.diagram-path-web{stroke:var(--pink);stroke-width:2.5}
.diagram-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:148px;height:148px;border:1px solid var(--pink);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--bg);box-shadow:0 0 65px #ed3d891a}
.diagram-core span{font-size:14px;color:var(--muted)}.diagram-core strong{font-size:43px;letter-spacing:-.07em;font-weight:600;color:var(--pink);line-height:1.2}
.diagram-node{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:12px;padding:15px 22px;border:1px solid var(--line);border-radius:40px;background:var(--bg);white-space:nowrap}
.diagram-node span{color:var(--muted);font-size:12px}.diagram-node strong{font-size:19px;font-weight:600}.diagram-node:hover{border-color:var(--pink)}
.diagram-web{left:50%;top:9.6%;border-color:var(--pink);background:var(--pink);color:white;padding:17px 27px}.diagram-web span{color:#fff9}
.diagram-graphics{left:87%;top:50%}.diagram-photo{left:50%;top:90.4%}.diagram-video{left:13%;top:50%}
.about-facts{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:5%;padding-block:50px 60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-facts>div{border-left:1px solid var(--line);padding-left:35px}.about-facts>div:first-child{border:0;padding-left:0}
.fact-number{display:block;font-size:clamp(70px,8vw,120px);letter-spacing:-.075em;line-height:1.1;font-weight:500;font-variant-numeric:tabular-nums;color:var(--pink)}.about-facts p{font-size:16px;margin-top:15px}
.about-work-heading{margin-bottom:55px}.about-image-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:60px 35px}.about-image-card:nth-child(even){padding-top:90px}
.about-image-card figure{margin:0}.about-image-card img{width:100%;height:auto;aspect-ratio:1.45;object-fit:cover;background:var(--surface);transition:filter .4s}
.about-image-card:hover img{filter:brightness(1.1)}.about-image-card figcaption{padding-top:19px;display:grid;gap:10px}.about-image-card figcaption>span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}.about-image-card figcaption strong{font-size:25px;letter-spacing:-.04em;font-weight:500}
.about-process .process-list{position:relative}.process-spine{position:absolute;left:20px;top:38px;bottom:80px;width:1px;background:var(--line)}.process-spine i{display:block;width:100%;height:100%;background:var(--pink);transform-origin:top}
.about-process .process-step{position:relative;grid-template-columns:60px 1fr 1.5fr}.about-process .process-step>span{position:relative;z-index:1;border:1px solid var(--pink);border-radius:50%;background:var(--bg);width:41px;height:41px;display:grid;place-items:center;color:var(--pink)}
@media(min-width:641px) and (max-width:1050px){.nav a{font-size:14px;padding:11px 12px}.nav{gap:2px}.header-inner{gap:20px}.connection-diagram{height:440px}.diagram-node{padding:12px 15px;gap:7px}.diagram-node strong{font-size:16px}.diagram-core{width:120px;height:120px}}
@media(max-width:900px){.about-connection{grid-template-columns:1fr;gap:45px}.connection-diagram{width:100%;max-width:650px;margin:auto}.connection-copy>p:not(.section-label){max-width:650px}.about-image-grid{gap:45px 25px}.about-facts>div{padding-left:20px}.about-facts p{font-size:14px}}
@media(max-width:640px){
 .nav{left:18px;right:18px;top:78px;padding:16px;border-radius:22px;box-shadow:0 18px 45px #0006}.nav.is-open{gap:5px;align-items:stretch}.nav a{font-size:25px;line-height:1.25;padding:13px 18px;border-radius:12px}
 .header-controls .icon-button{width:44px;height:44px}
 .connection-copy .section-title{font-size:42px}.connection-copy>p:not(.section-label){font-size:16px}
 .connection-diagram{height:370px;max-width:420px}.diagram-core{width:108px;height:108px}.diagram-core strong{font-size:35px}.diagram-core span{font-size:12px}.diagram-node{padding:11px 13px;gap:6px}.diagram-node span{font-size:10px}.diagram-node strong{font-size:15px}.diagram-web{padding:14px 25px}.diagram-video{left:14%}.diagram-graphics{left:85%}
 .about-facts{grid-template-columns:1fr 1fr;gap:30px 20px;padding-block:35px}.about-facts>div:first-child{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:25px}.about-facts>div:nth-child(2){border:0;padding:0}.fact-number{font-size:74px}.about-facts>div:first-child .fact-number{font-size:95px}.about-facts p{font-size:14px;max-width:150px}
 .about-image-grid{grid-template-columns:1fr;gap:35px}.about-image-card:nth-child(even){padding-top:0}.about-image-card figcaption strong{font-size:24px}.about-work-heading{margin-bottom:35px}
 .about-process .process-step{grid-template-columns:42px 1fr;gap:14px}.about-process .process-step>span{width:34px;height:34px;font-size:11px}.about-process .process-spine{left:16px;top:32px;bottom:95px}.about-process .process-step h3{font-size:28px}.about-process .process-step>p{grid-column:2}
}
[data-motion=reduced] .page-hero-art img,[data-motion=reduced] .hero-art .particle-video{transform:none!important}
@media(prefers-reduced-motion:reduce){.page-hero-art img,.hero-art .particle-video{transform:none!important}}
@media(prefers-reduced-motion:reduce){.hero-scroll,.motion-section{height:auto}}
html:not(.js) .scroll-scene{height:auto}

/* Portfolio: a photographic project index, with accessible category controls. */
.work-section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:65px}.work-section-heading .text-link{flex:none;margin-bottom:10px}.work-section-heading .section-title{font-size:clamp(42px,5vw,76px)}
.work-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:5px 0 35px;border-bottom:1px solid var(--line);margin-bottom:55px}.work-filters{display:flex;gap:10px;flex-wrap:wrap}.work-filters button{display:flex;align-items:center;gap:18px;padding:13px 22px;border:1px solid var(--line);border-radius:40px;font-size:15px;font-weight:600;transition:background .25s,border-color .25s,color .25s}.work-filters button span{font-size:11px;opacity:.7;font-variant-numeric:tabular-nums}.work-filters button:hover{border-color:var(--pink);color:var(--accent)}.work-filters button[aria-pressed=true]{background:var(--pink);border-color:var(--pink);color:#fff}.work-result-count{white-space:nowrap;font-size:12px;min-width:110px;text-align:right}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 36px;align-items:start}.work-card{min-width:0}.work-card>a{display:block}.work-image{position:relative;overflow:hidden;aspect-ratio:16/9;background:#e9e7e5}.work-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.3,1),filter .5s}.work-card a:hover img,.work-card a:focus-visible img{transform:scale(1.045);filter:brightness(.92)}.work-open{position:absolute;right:20px;bottom:20px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#080809e8;color:#fff;transition:background .3s,transform .3s}.work-open .icon{width:22px;height:22px}.work-card a:hover .work-open,.work-card a:focus-visible .work-open{background:#ed3d89;transform:rotate(45deg)}.work-meta{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;margin:23px 0 12px;color:var(--muted)}.work-meta>span:first-child{color:var(--accent)}.work-card h2,.work-card h3{font-size:clamp(28px,3vw,43px);line-height:1.15;letter-spacing:-.045em;transition:color .25s}.work-card a:hover h2,.work-card a:hover h3{color:var(--accent)}.work-card p{font-size:15px;line-height:1.7;max-width:450px;margin-top:13px}.work-discover{display:inline-flex;gap:16px;align-items:center;font-size:12px;margin-top:22px;border-bottom:1px solid var(--line);padding-bottom:6px}
.work-grid-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.work-grid-preview h3{font-size:30px}.work-grid-preview .work-image{aspect-ratio:16/9}.home-portfolio-cta{display:flex;justify-content:center;margin-top:65px}
.project-hero h1{font-size:clamp(48px,6.3vw,100px);max-width:1150px}.project-hero .page-hero-art{opacity:.65}.project-facts{display:grid;grid-template-columns:1.15fr .5fr .85fr 1fr;gap:30px;margin:0;padding:35px 0 45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-facts dt{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.project-facts dd{margin:0;font-size:16px;line-height:1.6;max-width:280px}.project-story{display:grid;grid-template-columns:1fr 1.15fr;gap:12%;padding-top:75px}.project-story h2{font-size:clamp(36px,3.5vw,55px);max-width:500px}.project-story .body-copy{max-width:650px}.project-gallery-section{padding-top:90px}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:45px 30px;align-items:start}.project-photo{margin:0;min-width:0}.project-photo:first-child,.project-photo:last-child:nth-child(even){grid-column:1/-1}.project-photo-frame{background:#f3f2f0;overflow:hidden;display:flex;justify-content:center}.project-photo img{width:100%;max-height:850px;object-fit:contain;height:auto}.project-photo figcaption{font-size:12px;line-height:1.7;color:var(--muted);padding-top:15px}.project-photo .provisional-caption{color:var(--accent)}.project-credits{border-top:1px solid var(--line);padding-top:25px;margin-top:45px;font-size:13px;line-height:1.8;max-width:900px}.project-credits strong{color:var(--text);font-weight:600}
[data-theme=light] .work-filters button[aria-pressed=true]{background:#b41459;border-color:#b41459}.footer-services{flex-wrap:wrap}
@media(min-width:641px) and (max-width:900px){.menu-toggle{display:grid}.header-controls{margin-left:auto}.nav{position:absolute;left:var(--pad);right:var(--pad);top:84px;display:none;border-radius:22px;padding:16px;box-shadow:0 18px 45px #0006}.nav.is-open{display:flex;flex-direction:column;gap:5px;align-items:stretch}.nav a{font-size:25px;line-height:1.25;padding:13px 18px;border-radius:12px}}
@media(max-width:900px){.work-filter-bar{align-items:start;flex-direction:column;gap:20px}.work-result-count{text-align:left}.work-grid{gap:50px 25px}.work-grid-preview{grid-template-columns:1fr 1fr}.work-grid-preview .work-card:nth-child(3){padding-top:0}.project-facts{grid-template-columns:1fr 1fr;gap:30px}.project-story{gap:45px}.project-hero h1{font-size:65px}.work-section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:45px}}
@media(max-width:640px){.work-filters{gap:8px}.work-filters button{padding:11px 15px;gap:10px;font-size:13px}.work-filter-bar{padding-bottom:25px;margin-bottom:35px}.work-grid{grid-template-columns:1fr;gap:45px}.work-grid-preview .work-card:nth-child(n){padding-top:0}.work-image,.work-grid-preview .work-image{aspect-ratio:16/9}.work-card h2,.work-card h3{font-size:31px}.work-card p{font-size:14px}.work-meta{margin-top:19px}.work-open{width:43px;height:43px;right:15px;bottom:15px}.work-section-heading .section-title{font-size:43px}.project-hero h1{font-size:clamp(42px,10.8vw,63px)}.project-facts{gap:25px 20px;padding-block:25px 35px}.project-facts dd{font-size:14px}.project-story{grid-template-columns:1fr;padding-top:45px;gap:25px}.project-story h2{font-size:36px}.project-gallery-section{padding-top:60px}.project-gallery{grid-template-columns:1fr;gap:30px}.project-photo:nth-child(n){grid-column:auto}.project-photo figcaption{font-size:11px}.work-grid-related .work-card h3{font-size:30px}.project-story .pill-button{gap:12px;font-size:12px}}
/* Keep graphic identities fully visible, including in the square home selection. */
[data-work-card][data-categories~="grafica"] .work-image{background:#f3f2f0}
[data-work-card][data-categories~="grafica"] .work-image img{object-fit:contain}

/* Smooth service emphasis without resizing the row or fighting GSAP reveals. */
.service-row,.gsap-text .service-row.reveal{transition:background-color .55s ease}
.service-row:hover{padding-left:0}
.service-row>h3,.service-row>p,.service-row>.service-number{transition:transform .65s cubic-bezier(.22,1,.36,1),color .45s ease}
.service-row:hover>h3,.service-row:hover>p,.service-row:hover>.service-number,.service-row:focus-visible>h3,.service-row:focus-visible>p{transform:translateX(12px)}
.service-arrow .icon{transition:transform .65s cubic-bezier(.22,1,.36,1),color .45s ease}
.nav,[data-theme=light] .nav{border:0}

/* Shared category pictograms keep text labels readable and controls recognizable. */
.work-filters .category-icon{width:19px;height:19px;flex:none;stroke-width:1.5}
.work-filters button .filter-label{font-size:14px;opacity:1}
.work-filters button .filter-count{font-size:12px;opacity:.7}
.work-filters button{gap:11px}
/* A distinct collaboration panel: all copy on the left, creative tools on the right. */
.talent-section{background:#21151e;padding-block:110px;margin-bottom:100px}
[data-theme=light] .talent-section{background:#f4e5ed}
.talent-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:7%}
.talent-copy .section-title{font-size:clamp(40px,4.5vw,68px);max-width:640px}
.talent-copy .body-copy{margin-top:32px;max-width:550px}
.talent-image{margin:0;overflow:hidden;aspect-ratio:1.03;background:#130f12}
.talent-image img{width:100%;height:100%;object-fit:cover;object-position:85% center}
/* Four cinematic service destinations with continuous image and arrow motion. */
.service-showcase{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.service-card{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:490px;overflow:hidden;background:#080809;color:#fff;padding:38px}
.service-card>img{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scale(1.01);transition:transform 1.2s cubic-bezier(.22,1,.36,1),filter .8s}
.service-card-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,rgba(8,8,9,.93),rgba(8,8,9,.35) 45%,transparent),linear-gradient(90deg,rgba(8,8,9,.5),transparent 75%)}
.service-card:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 30%,#ed3d891f,transparent 65%);opacity:0;transition:opacity .75s}
.service-card-top{display:flex;align-items:center;justify-content:space-between;color:#ddd4db;font-size:14px;letter-spacing:.1em}
.service-card-top .icon{width:32px;height:32px;color:#ff91c0}
.service-card-copy{margin-top:auto;padding-top:130px;max-width:450px}
.service-card h2{font-size:clamp(58px,5.5vw,86px);letter-spacing:-.055em}
.service-card:first-child h2{color:#ff84b8}
.service-card p{font-size:17px;color:#e6dfe4;margin:22px 0 26px;max-width:340px;line-height:1.65}
.service-card-link{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #ffffff35;padding-top:20px;font-size:14px;max-width:340px}
.service-card-link .icon{transition:transform .75s cubic-bezier(.22,1,.36,1);width:26px;height:26px}
.service-card:hover>img,.service-card:focus-visible>img{transform:scale(1.075);filter:brightness(1.12)}
.service-card:hover:after,.service-card:focus-visible:after{opacity:1}
.service-card:hover .service-card-link .icon,.service-card:focus-visible .service-card-link .icon{transform:translate(5px,-5px)}
/* Full-archive search and category filters, with static pagination as fallback. */
.journal-tools{margin-bottom:48px}
.journal-search{max-width:760px;margin-bottom:30px}
.journal-search>label{display:block;font-size:14px;margin-bottom:12px;color:var(--text)}
.journal-search-field{display:flex;align-items:center;gap:17px;border:1px solid var(--line);border-radius:40px;padding:10px 10px 10px 22px;background:var(--surface)}
.journal-search-field>.icon{flex:none;color:var(--accent)}
.journal-search input{background:none;border:0;color:var(--text);padding:10px 0;min-width:0;flex:1;font-size:16px;width:100%}
.journal-search input::placeholder{color:var(--muted);opacity:1}
.journal-search input:focus-visible{outline-offset:3px}
.journal-search button{background:var(--pink);color:#fff;border-radius:30px;padding:12px 24px;font-size:14px;min-height:46px}
.journal-filters{gap:10px}
.journal-results-info{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:27px 0 22px}
.journal-results-info p,.journal-reset{font-size:14px}
.journal-reset{color:var(--accent);padding:5px 0;display:flex;align-items:center;gap:15px;text-decoration:underline;text-underline-offset:4px}
.journal-reset span{font-size:23px;text-decoration:none}
.journal-empty{padding:50px 0 90px;max-width:670px}
.journal-empty h2{font-size:42px;line-height:1.15}.journal-empty p{margin:22px 0 30px;font-size:16px}
.journal-noscript{margin-top:30px}html:not(.js) .journal-tools{display:none}
@media(max-width:900px){.talent-layout{gap:40px}.talent-copy .section-title{font-size:43px}.talent-image{aspect-ratio:.8}.talent-section{padding-block:80px;margin-bottom:80px}.service-card{min-height:450px;padding:28px}.service-card h2{font-size:62px}.service-card p{font-size:16px}.service-card-copy{padding-top:110px}.journal-filters{gap:8px}.journal-filters button{padding:12px 17px}}
@media(max-width:640px){.work-filters button{gap:8px}.work-filters .category-icon{width:17px;height:17px}.work-filters button .filter-label{font-size:14px}.talent-layout{grid-template-columns:1fr;gap:35px}.talent-section{padding-block:60px;margin-bottom:60px}.talent-copy .section-title{font-size:40px}.talent-copy .body-copy{margin-top:25px}.talent-image{aspect-ratio:1.15}.service-showcase{grid-template-columns:1fr;gap:20px}.service-card{min-height:430px;padding:27px}.service-card-copy{padding-top:105px}.service-card h2{font-size:64px}.journal-search-field{gap:10px;padding-left:16px}.journal-search button{padding-inline:18px}.journal-search input{font-size:16px}.journal-search input::placeholder{font-size:14px}.journal-filters button{padding:11px 13px}.journal-results-info{align-items:start;flex-direction:column;gap:12px;padding-top:22px}.journal-empty{padding-block:25px 60px}.journal-empty h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.service-row:hover>h3,.service-row:hover>p,.service-row:hover>.service-number,.service-row:focus-visible>h3,.service-row:focus-visible>p{transform:none}.service-card:hover>img,.service-card:focus-visible>img{transform:none}}
[data-motion=reduced] .service-row>h3,[data-motion=reduced] .service-row>p,[data-motion=reduced] .service-row>.service-number,[data-motion=reduced] .service-card>img{transform:none!important}

/* Let the hero film fill the desktop viewport; shade only the copy area. */
.hero-sticky .hero-art{mix-blend-mode:screen}
[data-theme=light] .hero-sticky .hero-art{mix-blend-mode:multiply}
.hero-sticky .hero-art .particle-video{mix-blend-mode:normal}
@media(min-width:641px){
 .hero-sticky .hero{width:100%;max-width:none;margin:0}
 .hero-sticky .hero:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 94%,transparent) 22%,color-mix(in srgb,var(--bg) 55%,transparent) 39%,transparent 62%)}
 .hero-sticky .hero-art{inset:0;width:100%;height:100%;display:block;mask-image:none}
 .hero-sticky .hero-art .particle-video{width:100%;height:100%;object-fit:cover;object-position:center;transform-origin:center;mask-image:none}
}

/* Mobile hero: copy and film occupy separate rows within the pinned viewport. */
@media(max-width:640px){
 .hero-sticky .hero{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:94px 0 66px;align-content:stretch;justify-content:normal;overflow:hidden}
 .hero-sticky .hero-main{grid-row:1;padding:8px var(--pad) 0;margin:0;min-width:0}
 .hero-sticky .hero h1{font-size:clamp(48px,14vw,68px)}
 .hero-sticky .hero-description{font-size:15px;line-height:1.6;margin:18px 0 20px;max-width:100%}
 .hero-sticky .hero-art{grid-row:2;position:relative;inset:auto;width:100%;height:100%;min-height:0;opacity:1;align-self:stretch;display:flex;align-items:center;justify-content:center}
 .hero-sticky .hero-art .particle-video{width:100%;height:auto;max-height:100%;aspect-ratio:16/9;object-fit:contain;object-position:center;transform-origin:center;mask-image:radial-gradient(ellipse at center,black 50%,transparent 70%)}
 .hero-sticky .motion-bottom{bottom:calc(15px + env(safe-area-inset-bottom,0px));gap:10px;font-size:11px}
 .hero-sticky .motion-bottom>span{font-size:11px}
}
@media(max-width:640px) and (max-height:700px){
 .hero-sticky .hero{padding-top:84px;padding-bottom:60px;gap:6px}
 .hero-sticky .hero-main{padding-top:3px}
 .hero-sticky .hero h1{font-size:clamp(43px,12.6vw,52px)}
 .hero-sticky .hero-description{font-size:14px;margin:13px 0 15px}
 .hero-sticky .hero-main .pill-button{padding-block:12px}
}
/* On very short screens, keep the film and controls reachable in normal flow. */
@media(max-width:640px) and (max-height:520px){
 .hero-scroll{height:auto}.hero-sticky{position:relative;height:auto}
 .hero-sticky .hero{height:auto;grid-template-rows:auto 220px;padding-bottom:10px}
 .hero-sticky .motion-bottom{position:relative;bottom:auto;padding-bottom:20px}
}

/* Service overview: one deliberate playback per entry, holding its last frame. */
.service-card-video{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
.service-card-main{display:flex;flex-direction:column;flex:1;min-width:0}
.service-card:hover .service-card-video,.service-card:focus-within .service-card-video{transform:scale(1.045)}
.service-card-control{position:absolute;top:32px;right:88px;z-index:4;display:flex;gap:9px;align-items:center;background:#08080985;border:1px solid #ffffff4d;border-radius:30px;padding:8px 14px;color:#fff;font-size:12px;min-height:42px;backdrop-filter:blur(12px)}
.card-play-symbol{font-size:19px;line-height:1}.service-card-main:focus-visible{outline-offset:12px}
/* A persistent index and four visual chapters, inspired by the reference's rhythm. */
.capability-section{background:var(--bg);border-top:1px solid var(--line)}
.capability-intro{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;margin-bottom:110px}
.capability-intro>p{font-size:20px;line-height:1.6;max-width:330px;color:var(--text)}
.capability-intro .section-title{font-size:clamp(43px,4.6vw,74px)}
.capability-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;align-items:start}
.capability-index{position:sticky;top:70px;padding-top:10px}
.capability-index .section-label{margin-bottom:40px}
.capability-index nav{display:grid;gap:9px}
.capability-index a{display:flex;align-items:center;gap:20px;font-size:clamp(42px,4.7vw,74px);line-height:1.3;letter-spacing:-.055em;color:var(--muted);opacity:.52;transition:color .5s,opacity .5s,transform .6s cubic-bezier(.22,1,.36,1)}
.capability-index a>span{font-size:13px;letter-spacing:0;align-self:center;font-variant-numeric:tabular-nums}.capability-index .icon{margin-left:auto;width:30px;height:30px;opacity:0;transform:translateX(-12px);transition:opacity .5s,transform .5s}
.capability-index a.is-active,.capability-index a:hover,.capability-index a:focus-visible{color:var(--text);opacity:1;transform:translateX(5px)}
.capability-index a.is-active .icon{color:var(--accent);opacity:1;transform:none}
.capability-index a.is-active>span{color:var(--accent)}
.capability-cards{min-width:0}.capability{padding-bottom:90px;scroll-margin-top:60px}.capability:last-child{padding-bottom:0}
.capability-visual{display:block;position:relative;aspect-ratio:1.15;overflow:hidden;border-radius:8px;background:#080809;color:#fff}
.capability-visual{box-shadow:0 0 0 1px rgba(237,61,137,.28),0 0 34px rgba(237,61,137,.16);transition:box-shadow .65s cubic-bezier(.22,1,.36,1)}
.capability-visual img{width:100%;height:100%;object-fit:cover;transition:transform 1.5s cubic-bezier(.22,1,.36,1)}
.capability-visual .capability-art-white{display:block}
.capability-visual .capability-art-dark{display:none}
.capability-visual:hover{box-shadow:0 0 0 1px rgba(237,61,137,.48),0 0 48px rgba(237,61,137,.24)}
.capability-visual:hover img{transform:scale(1.055)}
.capability-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#080809a0,transparent 45%)}
.capability-visual-label{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;display:flex;align-items:center;gap:18px;font-size:clamp(32px,3vw,48px);letter-spacing:-.04em}
.capability-visual-label .icon{width:32px;height:32px;color:#ff80b6}
[data-theme=light] .capability-visual{box-shadow:0 0 0 1px rgba(197,22,99,.18),0 0 28px rgba(197,22,99,.1)}
[data-theme=light] .capability-visual:hover{box-shadow:0 0 0 1px rgba(197,22,99,.32),0 0 38px rgba(197,22,99,.16)}
[data-theme=light] .capability-visual .capability-art-white{display:none}
[data-theme=light] .capability-visual .capability-art-dark{display:block}
.capability-heading{margin-top:26px}.capability-heading>span{font-size:12px;letter-spacing:.1em;color:var(--accent)}
.capability h3{font-size:clamp(28px,2.3vw,40px);margin-top:13px;line-height:1.13}
.capability>p{font-size:17px;margin-top:20px;line-height:1.75}.capability .text-link{margin-top:20px}
/* Timeline: all chapters are readable before enhancement and with reduced motion. */
.history-section{background:#101014;color:#faf9f7;border-block:1px solid #ffffff20;position:relative}
.history-inner{padding-block:70px 55px}.history-heading{display:flex;justify-content:space-between;gap:35px;align-items:flex-start;margin-bottom:65px}
.history-heading .section-label{color:#ff80b6;margin-bottom:16px}.history-heading h2{font-size:clamp(30px,3vw,48px);line-height:1.1;letter-spacing:-.045em}
.history-demo{font-size:12px;line-height:1.7;color:#a8a6b0;text-align:right}
.history-panels{position:relative;min-width:0}.history-panel{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;position:relative;padding-block:45px;scroll-margin-top:30px}
.history-copy{position:relative;padding-top:75px;max-width:510px}.history-year{position:absolute;top:0;left:-6px;font-size:clamp(85px,11vw,174px);letter-spacing:-.075em;line-height:1;color:transparent;-webkit-text-stroke:1px #ffffff20;pointer-events:none}
.history-chapter{position:relative;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#ff80b6;margin-bottom:20px}
.history-copy h3{position:relative;font-size:clamp(34px,3.5vw,55px);line-height:1.08;max-width:480px}.history-copy>p:last-child{position:relative;color:#b9b6c1;font-size:17px;line-height:1.8;margin-top:24px}
.history-image{margin:0;aspect-ratio:1.35;border-radius:6px;overflow:hidden;background:#080809}.history-image img{width:100%;height:100%;object-fit:cover}
.history-body{position:relative;color:#b9b6c1;font-size:17px;line-height:1.65;margin-top:20px}.history-body p+p{margin-top:14px}
.history-image-brand{background:#faf9f7;display:grid;place-items:center}.history-image-brand img{object-fit:contain;width:65%;height:65%}
.history-image-connections img{object-position:right center}
.is-immersive .history-copy{padding-top:48px}.is-immersive .history-copy h3{font-size:clamp(30px,2.8vw,45px)}
.is-immersive .history-image-brand img{height:65%}
@media(max-width:900px){.history-body{font-size:16px}}
.history-navigation{margin-top:65px}.history-line{position:relative;height:1px;background:#ffffff30;margin-inline:8px}
.history-progress{position:absolute;inset:0;background:#ed3d89;transform:scaleX(0);transform-origin:left}
.history-dot{position:absolute;left:0;top:0;width:11px;height:11px;border-radius:50%;background:#ff78b1;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #ed3d8918,0 0 22px #ed3d89aa}
.history-years{display:flex;justify-content:space-between;gap:8px;padding-top:20px}.history-years a{display:grid;gap:8px;max-width:130px;color:#8c8996;transition:color .4s;min-height:48px}
.history-years a:first-child{text-align:left}.history-years a:last-child{text-align:right}.history-years strong{font-weight:500;font-size:17px;font-variant-numeric:tabular-nums}.history-years span{font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.history-years a[aria-current=true],.history-years a:hover,.history-years a:focus-visible{color:#fff}
.history-section.is-immersive{height:440svh}.is-immersive .history-sticky{position:sticky;top:0;height:100svh;overflow:hidden}
.is-immersive .history-inner{height:100%;display:flex;flex-direction:column;padding-top:45px;padding-bottom:35px}.is-immersive .history-heading{flex:none;margin-bottom:20px}
.is-immersive .history-panels{flex:1;min-height:0}.is-immersive .history-panel{position:absolute;inset:0;padding-block:15px;grid-template-rows:minmax(0,1fr)}
.is-immersive .history-image{height:min(100%,430px);max-width:100%;aspect-ratio:auto}.is-immersive .history-image img{height:100%}
.is-immersive .history-navigation{flex:none;margin-top:30px}
/* Each project starts as a full frame, then makes space for its story. */
.story-section-heading{padding-bottom:65px}.project-story-scene{position:relative;border-top:1px solid var(--line)}
.project-story-stage{max-width:1720px;margin:auto;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:70px var(--pad);min-height:660px}
.project-story-media{position:relative;margin:0;overflow:hidden;background:var(--surface);aspect-ratio:1.15;border-radius:5px}
.project-story-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.project-story-image-label{position:absolute;left:35px;bottom:30px;color:white;font-size:20px;letter-spacing:-.02em;text-shadow:0 2px 12px #0009;display:none}
.project-story-copy{max-width:510px}.project-story-copy .section-label{margin-bottom:20px}.project-story-copy h3{font-size:clamp(36px,3.8vw,64px);line-height:1.07}
.project-story-copy>p:not(.section-label){font-size:17px;line-height:1.8;margin-top:25px}.project-story-copy .text-link{margin-top:30px}
.project-story-scene.is-immersive{height:210svh}.is-immersive .project-story-stage{position:sticky;top:0;height:100svh;min-height:0;max-width:none;padding:0;display:block;overflow:hidden}
.is-immersive .project-story-media{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0}
.is-immersive .project-story-image-label{display:block}.is-immersive .project-story-copy{position:absolute;left:56%;right:6%;top:50%;transform:translateY(-50%);max-width:540px}
[data-mask-reveal]{will-change:clip-path}
@media(max-width:900px){
 .capability-intro,.capability-layout{gap:7%;grid-template-columns:.8fr 1.2fr}.capability-intro{margin-bottom:70px}.capability-intro>p{font-size:17px}.capability-index a{font-size:44px;gap:12px}.capability-index .icon{width:24px;height:24px}.capability-index .section-label{font-size:11px}.capability h3{font-size:30px}.capability-visual{aspect-ratio:1}.capability-visual-label{bottom:22px;left:22px}
 .project-story-stage{min-height:550px;gap:7%}.project-story-copy h3{font-size:38px}.project-story-copy>p:not(.section-label){font-size:16px}
 .history-panel{gap:6%}.history-copy>p:last-child{font-size:16px}.history-copy h3{font-size:36px}.history-demo{font-size:11px}
}
@media(max-width:767px){
 .service-card-control{top:22px;right:76px;font-size:12px}.capability-intro{display:block;margin-bottom:45px}.capability-intro>p{margin-bottom:25px;font-size:16px}.capability-intro .section-title{font-size:44px}
 .capability-layout{display:block}.capability-index{position:sticky;top:var(--capability-header-offset,var(--site-header-height,84px));z-index:40;margin:0 calc(-1 * var(--pad)) 35px;padding:12px var(--pad) 8px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 10px 24px #00000012;transition:top .38s cubic-bezier(.22,1,.36,1)}.capability-index .section-label{margin-bottom:6px}.capability-index nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:0}.capability-index a{font-size:clamp(14px,4.2vw,20px);gap:5px;min-height:44px;white-space:nowrap;opacity:.75}.capability-index .icon{display:none}.capability-index a>span{font-size:11px}.capability-index a.is-active{transform:none}.capability{padding-bottom:65px}.capability-visual{aspect-ratio:1.2}.capability>p{font-size:16px}
 .history-inner{padding-block:55px 35px}.history-heading{display:block;margin-bottom:30px}.history-heading h2{font-size:35px}.history-demo{text-align:left;margin-top:20px;font-size:12px}.history-panel{grid-template-columns:1fr;gap:28px;padding-block:35px}.history-copy{padding-top:50px}.history-year{font-size:108px}.history-copy h3{font-size:35px}.history-image{aspect-ratio:1.55}.history-years span{display:none}.history-years strong{font-size:13px}.history-navigation{margin-top:30px}.history-dot{width:9px;height:9px}
 .project-story-stage{grid-template-columns:1fr;gap:35px;padding-block:45px;min-height:0}.project-story-media{aspect-ratio:1.18}.project-story-copy{max-width:none}.project-story-copy h3{font-size:39px}.project-story-copy .section-label{margin-bottom:15px}.project-story-copy>p:not(.section-label){margin-top:18px}.story-section-heading{padding-bottom:45px}
 .project-story-scene.is-immersive{height:190svh}.is-immersive .project-story-copy{left:var(--pad);right:var(--pad);top:44%;transform:none}.is-immersive .project-story-copy h3{font-size:clamp(27px,8vw,32px)}.is-immersive .project-story-copy>p:not(.section-label){font-size:15px;line-height:1.65}.is-immersive .project-story-copy .text-link{margin-top:18px}.is-immersive .project-story-image-label{left:22px;bottom:22px}
}
@media(prefers-reduced-motion:reduce){.service-card:hover .service-card-video,.service-card:focus-within .service-card-video{transform:none}}
[data-motion=reduced] .service-card-video{transform:none!important}
@media(max-width:767px) and (min-height:740px){
 .is-immersive .history-inner{padding-top:28px;padding-bottom:25px}.is-immersive .history-heading{margin-bottom:12px}.is-immersive .history-heading h2{font-size:27px}.is-immersive .history-heading .section-label{font-size:10px;margin-bottom:10px}.is-immersive .history-demo{margin-top:12px;font-size:10px;line-height:1.5}.is-immersive .history-demo br{display:none}
 .is-immersive .history-panel{grid-template-rows:auto minmax(0,1fr);gap:22px;padding-block:8px}.is-immersive .history-copy{padding-top:24px}.is-immersive .history-year{font-size:78px}.is-immersive .history-chapter{font-size:10px;margin-bottom:10px}.is-immersive .history-copy h3{font-size:29px}.is-immersive .history-copy>p:last-child{font-size:14px;line-height:1.65;margin-top:12px}.is-immersive .history-image{height:100%;width:100%;max-height:280px;align-self:center}.is-immersive .history-navigation{margin-top:22px}.is-immersive .history-years{padding-top:16px}
}

/* Navigation returns as soon as the visitor scrolls upward. */
.has-smart-header{--site-header-height:112px}
.has-smart-header .inner-page{padding-top:var(--site-header-height)}
.has-smart-header .site-header{position:fixed;inset:0 0 auto;height:var(--site-header-height);z-index:60;transform:translateY(0);transition:transform .38s cubic-bezier(.22,1,.36,1),background-color .3s,box-shadow .3s}
.has-smart-header .site-header.is-scrolled{background:var(--bg);background:color-mix(in srgb,var(--bg) 95%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 30px #0000000d}
.has-smart-header .site-header.is-hidden{transform:translateY(calc(-100% - 12px));pointer-events:none}
@media(max-width:900px){
 .has-smart-header{--site-header-height:92px}
 .has-smart-header .nav.is-open{max-height:calc(100svh - var(--site-header-height) - 18px);max-height:calc(100dvh - var(--site-header-height) - 18px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:640px){.has-smart-header{--site-header-height:84px}}
@media(prefers-reduced-motion:reduce){.has-smart-header .site-header{transition:none}}
[data-motion=reduced].has-smart-header .site-header{transition:none}

/* Alternate the final compositions while keeping the full-frame opening. */
@media(min-width:768px){
 .story-reversed .project-story-media{grid-column:2;grid-row:1}
 .story-reversed .project-story-copy{grid-column:1;grid-row:1}
 .story-reversed.is-immersive .project-story-copy{left:6%;right:56%}
}
.process-step-heading{display:flex;align-items:center;gap:16px;min-width:0}
.process-step-heading>.icon{width:30px;height:30px;flex:none;color:var(--accent);stroke-width:1.4}
.process-step-heading h3{min-width:0}
.about-values-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:stretch}
.values-image{margin:0;overflow:hidden;border-radius:6px;min-height:500px;background:#080809}
.values-image img{width:100%;height:100%;object-fit:cover;object-position:85% center}
.values-copy .section-title{font-size:clamp(39px,4.3vw,68px)}
.about-values .values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 35px;margin-top:50px}
.about-values .value{padding-top:20px;border-top:1px solid var(--line)}
.about-values .value h3{font-size:27px;margin-top:15px}.about-values .value p{font-size:16px;line-height:1.7}
.talent-section{position:relative;isolation:isolate;overflow:hidden;background:var(--surface)}
[data-theme=light] .talent-section{background:var(--surface)}
.talent-atmosphere{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.talent-atmosphere img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scaleX(-1);opacity:.55}
.talent-section:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(17,17,20,.62),rgba(17,17,20,.4) 48%,rgba(17,17,20,.15))}
[data-theme=light] .talent-atmosphere img{filter:invert(1) hue-rotate(165deg) saturate(.65);opacity:.7}
[data-theme=light] .talent-section:before{background:linear-gradient(90deg,rgba(240,238,237,.7),rgba(240,238,237,.45) 48%,rgba(240,238,237,.15))}
.work-filter-bar{flex-direction:column;align-items:center;justify-content:center;gap:22px}
.work-filters{justify-content:center}
.work-result-count{text-align:center}
.journal-search{margin-inline:auto;width:100%}
.journal-filters{justify-content:center}
@media(max-width:900px){
 .about-values-layout{grid-template-columns:1fr;gap:40px}.values-image{min-height:0;height:400px}.values-image img{object-position:center 60%}.about-values .values-grid{gap:35px;margin-top:35px}
 .process-step-heading{gap:12px}.process-step-heading>.icon{width:25px;height:25px}
}
@media(max-width:640px){
 .values-image{height:300px}.about-values .values-grid{gap:28px 20px}.about-values .value h3{font-size:22px}.about-values .value p{font-size:15px}.values-copy .section-title{font-size:40px}
 .process-step-heading{gap:10px}.process-step-heading>.icon{width:23px;height:23px}.about-process .process-step h3{font-size:26px}
}
/* A brief animated introduction built from the original SVG logo. */
.page-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--bg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .26s ease,visibility 0s .26s}
.is-loading .page-loader,.is-leaving .page-loader{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s}
html.is-loading{overflow:hidden}
.loader-feedback{position:absolute;top:calc(50% + clamp(80px,8vw,110px));left:50%;transform:translateX(-50%);width:min(340px,calc(100% - 44px));text-align:center;font-size:14px;line-height:1.6;color:var(--muted)}
.loader-feedback progress{display:block;width:150px;height:3px;margin:18px auto;accent-color:var(--pink);border:0;border-radius:3px;overflow:hidden;background:var(--line)}
.loader-feedback progress::-webkit-progress-bar{background:var(--line)}.loader-feedback progress::-webkit-progress-value{background:var(--pink)}.loader-feedback progress::-moz-progress-bar{background:var(--pink)}
.loader-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:22px}.loader-actions button{padding:10px 16px;border:1px solid var(--line);border-radius:30px;font-size:14px}.loader-actions button:first-child{background:var(--pink);border-color:var(--pink);color:#fff}.loader-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.loader-logo{width:clamp(125px,15vw,210px);height:auto;overflow:visible}
.page-loader:after{content:'';position:absolute;top:calc(50% + clamp(55px,6vw,85px));left:50%;width:88px;height:3px;border-radius:3px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#ed3d89,transparent) -44px 0/44px 100% no-repeat,rgba(237,61,137,.15);animation:loader-flow 1.1s ease-in-out infinite;animation-play-state:paused}
.is-loading .page-loader:after,.is-leaving .page-loader:after{animation-play-state:running}
@keyframes loader-flow{from{background-position:-44px 0,0 0}to{background-position:88px 0,0 0}}
@media(prefers-reduced-motion:reduce){.page-loader:after{animation:none;background:#ed3d89}}
[data-motion=reduced] .page-loader:after{animation:none;background:#ed3d89}
.loader-ink{fill:var(--text)}.loader-accent{fill:#ed3d89}
.loader-piece{transform-box:fill-box;transform-origin:center}
.is-loading:not([data-page-arrival=transition]) .loader-piece{animation:loader-assemble .52s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--part)*.035s)}
.is-leaving .loader-logo{animation:loader-arrive .22s ease-out both}
@keyframes loader-assemble{from{opacity:0;transform:translateY(16px) scale(.9);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes loader-arrive{from{opacity:.3;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.page-loader{transition:none!important}.loader-logo,.loader-piece{animation:none!important}}
[data-motion=reduced] .page-loader{transition:none!important}[data-motion=reduced] .loader-logo,[data-motion=reduced] .loader-piece{animation:none!important}

.project-video{margin:45px 0}.project-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:6px;background:#090909}.project-video figcaption{margin-top:12px;font-size:14px;color:var(--muted)}

@media(max-width:767px){:root:has(.site-header.is-hidden){--capability-header-offset:0px}.capability{scroll-margin-top:100px}}
@media(prefers-reduced-motion:reduce){.capability-index{transition:none!important}}
