/* Paint animated glyphs only at the leaf. Nested background-clip:text surfaces
   can paint overlapping copies while Chromium composites transformed children. */
html body.home-page main#top [data-masked],
html body.home-page main#top [data-masked] .motion-line,
html body.home-page main#top [data-masked] .motion-line>span:has(.title-word),
html body.home-page main#top [data-masked] .title-word-mask{background:none!important;background-image:none!important;}
html body.home-page main#top .cuberto-title .title-word{background-image:linear-gradient(125deg,#d3b393,#fff 38%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
html body :is(.editorial-title,.page-scroll-motion):has(.editorial-line-content){background:none!important;}
html{scrollbar-gutter:stable;}
html body .services-faq h2+.faq-item{border-top:1px solid rgba(211,179,147,.35);}
html body .services-faq .faq-question{line-height:1.2!important;}
html body .services-faq .faq-answer p{line-height:1.45!important;}
html body .contact-page .services-faq h2{font:500 clamp(28px,3.9vw,56px)/1.25 Helixa,sans-serif;}
.founder-photo-enter{opacity:0;translate:0 28px;transition:opacity 650ms ease,translate 750ms cubic-bezier(.22,1,.36,1);}
.founder-photo-enter.founder-photo-ready{opacity:1;translate:0 0;}
html body .celebration-copy h2{font-family:'GC Gudlak',sans-serif;line-height:1.15;letter-spacing:0;}
html body .celebration-copy :is(p,a,small),html body .celebration-close{font-family:Helixa,sans-serif;}
@media(max-width:1023px){
 html body.home-page main#top .compact-scroll-stories .stories-layout{height:var(--compact-track-height)!important;min-height:0!important;display:block!important;}
 html body.home-page main#top .compact-scroll-stories .testimonial-stack-pin{position:sticky!important;top:var(--compact-pin-top)!important;height:auto!important;}
 html body.home-page main#top .compact-scroll-stories .stories-stage{display:grid!important;width:100%!important;overflow:visible!important;}
 html body.home-page main#top .compact-scroll-stories .story-panel{grid-area:1/1!important;width:100%!important;min-width:0!important;position:relative!important;transition:none!important;}
 html body.home-page main#top .compact-scroll-stories .story-panel :is(blockquote,figcaption){transition:none!important;}
 html body.home-page main#top .compact-scroll-stories .story-panel blockquote{font-size:clamp(18px,2.8vw,25px)!important;line-height:1.4!important;}
 html body .studio-process li::before,html body .editorial-values li::before{top:0!important;align-self:start!important;}
 html body .contact-work li{align-items:flex-start!important;}
 html body .contact-work li::before{margin-top:3px!important;}
 html body .studio-belief{margin-bottom:48px!important;}
 html body .studio-belief+.stats{margin-top:0!important;}
 html body.home-page main#top .home-belief+.clients.page-section{padding-top:40px!important;}
}
@media(max-width:599px){
 html body.home-page #top .hero{min-height:100svh!important;}
 html body.home-page #top .hero-model{width:100%!important;max-width:none!important;}
 html body.home-page main#top #statement-title{font-size:clamp(36px,10.6vw,62px)!important;line-height:1.1!important;}
 html body.home-page main#top #statement-title .motion-line{white-space:normal!important;}
 html body .intro-studio-link,html body .founder-copy>a{margin-top:24px!important;padding-top:0!important;padding-bottom:8px!important;}
 html body.home-page #top .why-contact{gap:12px!important;margin-top:24px!important;}
 html body .founder-copy p{font-size:22px!important;line-height:1.45!important;}
 html body .studio-belief p,html body.home-page .home-belief p{font-size:26px!important;line-height:1.4!important;}
 html body footer.contact-panel .contact-copy h2{font-size:clamp(38px,10.8vw,48px)!important;line-height:1.12!important;}
 html body footer.contact-panel .contact-copy>p{max-width:270px!important;}
 html body footer.contact-panel .contact-details>a{font-size:22px!important;line-height:1.4!important;}
 html body .services-page.services-redesign .service-hero h1{font-size:clamp(38px,10.9vw,64px)!important;line-height:1.1!important;overflow-wrap:normal!important;word-break:normal!important;}
 html body .services-page.services-redesign .service-hero h1 *{line-height:inherit!important;}
 html body .contact-page>.enquiry-form.wide-surface{padding-block:36px!important;}
 html body .contact-page .enquiry-form legend{font-size:clamp(18px,5.4vw,26px)!important;font-weight:700!important;white-space:nowrap;line-height:1.3!important;}
 html body .contact-page .enquiry-field{font-size:24px!important;line-height:34px!important;}
 html body .contact-page .contact-work h2.editorial-title,html body .contact-page .contact-work h2.editorial-title *{font-size:clamp(44px,12.6vw,68px)!important;line-height:1.1!important;}
 html body main.case-study .case-related>h2{font-size:clamp(28px,8.5vw,42px)!important;white-space:nowrap!important;}
 html body main.case-study .case-related>h2 .editorial-line-mask{display:inline!important;}
 html body main.case-study .case-related h3{font-size:24px!important;line-height:1.3!important;}
 html body main.case-study .case-related-grid{row-gap:48px!important;}
 html body .services-faq .faq-question{font-size:20px!important;line-height:1.2!important;}
}
@media(prefers-reduced-motion:reduce){.founder-photo-enter{opacity:1;translate:none;transition:none;}}
.detail-number,.intro-studio-link.detail-draw{opacity:0;translate:0 14px;transition:opacity 500ms ease,translate 650ms cubic-bezier(.22,1,.36,1);}
.detail-number.detail-arrived,.intro-studio-link.detail-arrived{opacity:1;translate:0 0;}
html body .services-faq h2+.faq-motion{border-top-color:transparent;}
html body .services-faq h2+.faq-motion::before{content:'';position:absolute;inset:0 0 auto;height:1px;background:rgba(211,179,147,.35);transform:scaleX(0);transform-origin:left;transition:transform 650ms ease;}
html body .services-faq h2+.faq-motion.faq-visible::before{transform:scaleX(1);}
@media(prefers-reduced-motion:reduce){.detail-number,.intro-studio-link.detail-draw{opacity:1;translate:none;transition:none;}}

html body .services-page.services-redesign .services-faq .faq-question{line-height:1.2!important;}
html body .services-page.services-redesign .services-faq .faq-answer{line-height:1.45!important;}
@media(prefers-reduced-motion:reduce) and (max-width:1023px){
 html body.home-page main#top .stories-stage{display:flex!important;flex-direction:column!important;gap:24px!important;height:auto!important;}
 html body.home-page main#top .story-panel{position:relative!important;display:block!important;transform:none!important;opacity:1!important;visibility:visible!important;background:#fff!important;}
 html body.home-page main#top .story-panel :is(blockquote,figcaption){visibility:visible!important;opacity:1!important;}
}

/* Restore the orange panel’s solid ink, independent of dark-section headings. */
html body.home-page main#top #philosophy-title,
html body.home-page main#top #philosophy-title .title-word{background:none!important;background-image:none!important;color:#201e1c!important;-webkit-text-fill-color:#201e1c!important;}

/* Desktop refinements requested October 1; compact layouts retain their spacing. */
@media(min-width:1024px){
 html body .services-faq .faq-item,html body .services-page #services-faq-title + .faq-item{padding-top:32px!important;}
 html body .contact-page>.services-faq{margin-top:64px!important;padding-top:0!important;}
 html body .contact-page>.stats{padding-bottom:0!important;margin-bottom:0!important;}
 html body.editorial-page main.editorial-main .studio-years p.editorial-lead{width:30.40625em!important;max-width:100%!important;margin-top:24px!important;}
 html body .studio-page .studio-years .studio-years-copy-break{display:none!important;}
 html body .studio-page .studio-collage{margin-top:48px!important;}
 html body.work-page #work .work-lead{width:28.03125em!important;max-width:100%!important;margin-top:24px!important;}
 html body.editorial-page main.editorial-main .service-hero>p{width:32.875em!important;max-width:100%!important;margin-top:24px!important;}
}

html body.work-page .work-showcase>.projects{margin-top:80px!important;}
@media(max-width:1023px){html body.work-page .work-showcase>.projects{margin-top:40px!important;}}

@media(min-width:1024px){.footer-fast-line{display:block;will-change:transform;}footer.contact-panel .contact-details .footer-line-mask{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em;}}

html body.home-page .scroll-letter{transition:color 180ms ease;color:#A5968C;}
@media(prefers-reduced-motion:reduce){html body.home-page .scroll-letter{color:#fff!important;transition:none;}}

@media(min-width:1024px){html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title),html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title) .motion-line{line-height:1.08!important;}}

@media(min-width:1920px){
 html body.home-page main#top #about #studio-title.studio-description,
 html body.home-page main#top .home-belief p{font-size:63.36px!important;line-height:1.3!important;max-width:100%!important;}
}

html body footer.contact-panel .contact-copy>h2,html body footer.contact-panel .contact-copy>h2 *,html body footer.contact-panel .contact-details>a,html body footer.contact-panel .contact-details>a *{background-image:none!important;color:#201e1c!important;-webkit-text-fill-color:#201e1c!important;}

@media(max-width:1023px) and (prefers-reduced-motion:no-preference){
 html body.home-page main#top #hero-statement.intro-scroll-enabled{height:290svh!important;padding-block:0!important;}
 html body.home-page main#top #hero-statement .intro-scroll-stage{position:sticky!important;top:0!important;height:100svh!important;display:grid!important;align-items:center!important;}
 html body.home-page main#top #hero-statement.intro-scroll-enabled :is(.hero-statement-inner,#about){grid-area:1/1!important;margin:0!important;padding:0!important;width:100%!important;position:relative!important;}
 html body.home-page main#top .editorial-title-track.is-pinned-title{height:175svh!important;position:relative!important;margin-bottom:0!important;}
 html body.home-page main#top .is-pinned-title :is(.center-heading,.stories-heading){position:sticky!important;top:0!important;height:100svh!important;display:grid!important;place-items:center!important;padding:32px 0!important;}
 html body.home-page main#top .home-belief.belief-scroll-enabled{height:200svh!important;padding-block:0!important;}
 html body.home-page main#top .belief-scroll-enabled .belief-scroll-stage{position:sticky!important;top:0!important;height:100svh!important;display:grid!important;place-items:center!important;}
 html body.home-page .intro-mouse-cue.is-active{display:block!important;position:fixed;left:50%;bottom:28px;width:36px;height:40px;border:0!important;border-radius:0;background:url('/assets/icons/swipe-up.svg') center/contain no-repeat;transform:translateX(-50%);z-index:40;pointer-events:none;}
 html body.home-page .intro-mouse-cue::after{display:none!important;}
}
@media(max-width:1023px){
 html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title),html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title) *{text-align:center!important;}
 html body.home-page main#top :is(.hero-statement-inner,.stories-heading,.center-heading){text-align:center!important;align-items:center!important;justify-items:center!important;}
}

@media(max-width:1023px){html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title) :is(span,.motion-line,.title-word-mask,.title-word){text-align:center!important;}}

/* Mobile Figma 209:757: full-bleed viewport hero and authored reading sizes. */
@media(max-width:1023px){
 html:has(body.home-page){scrollbar-gutter:auto;}
 html body.home-page main#top .hero{width:100%;height:100svh!important;min-height:100svh!important;max-height:100svh;padding:0!important;margin:0!important;overflow:hidden;}
 html body.home-page main#top .hero .hero-model{inset:0!important;width:100%!important;height:100%!important;margin:0!important;transform:none!important;max-width:none!important;}
 html body.home-page main#top .hero .hero-copy{position:absolute;inset:0;display:block;}
 html body.home-page main#top .hero .hero-details{position:absolute;display:flex;flex-direction:column;top:clamp(100px,14svh,144px)!important;left:24px!important;bottom:auto!important;width:289px!important;max-width:calc(100% - 48px)!important;gap:24px!important;}
 html body.home-page main#top .hero .hero-intro{font-size:24px!important;line-height:32px!important;margin:0!important;}
 html body.home-page main#top .hero .hero-details .button{margin:0!important;height:60px;min-height:60px;font-size:20px!important;line-height:24px;padding:18px 28px;}
 html body.home-page main#top .why .why-grid{margin-top:24px!important;}
 html body.home-page main#top .stories-heading{margin-bottom:0!important;}
 html body.home-page main#top .home-belief+.clients{margin-top:0!important;}
}
@media(max-width:599px){
 html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title){font-size:clamp(29px,8.9552vw,36px)!important;line-height:1.111111!important;letter-spacing:.02em!important;margin-inline:auto!important;width:100%!important;}
 html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title) .motion-line{line-height:inherit!important;white-space:nowrap!important;}
 html body.home-page main#top #about #studio-title.studio-description{font-size:20px!important;line-height:28px!important;width:304px!important;max-width:calc(100vw - 64px)!important;margin-inline:auto!important;text-align:center!important;}
 html body.home-page main#top .home-belief p{font-size:20px!important;line-height:28px!important;width:324px!important;max-width:calc(100vw - 64px)!important;margin-inline:auto!important;text-align:center!important;}
}
@media(max-width:1023px){
 html body.home-page main#top .editorial-title-track.is-pinned-title .editorial-title-content{width:100%!important;justify-self:center!important;margin-inline:auto!important;}

}
@media(max-width:599px){
 html body.home-page main#top .why #why-title,
 html body.home-page main#top .testimonials #testimonials-title{font-size:clamp(29px,8.9552vw,36px)!important;line-height:1.111111!important;width:100%!important;max-width:286px!important;margin-inline:auto!important;}
}

/* Centre inner hero headings only, not section headings or project captions. */
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study) h1,
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study) h1 *{text-align:center!important;}
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study) h1{margin-inline:auto!important;}

/* Centre only inner hero supporting copy; retain authored widths and breaks. */
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p),
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p) *{
 text-align:center!important;
}
html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p){margin-inline:auto!important;}

/* Contact hero: Figma 160:1610, centred title/copy/email stack. */
html body.editorial-page main.editorial-main.contact-page .contact-intro{display:flex!important;flex-direction:column!important;align-items:center!important;gap:0!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro>div{width:100%!important;max-width:998px;container-type:normal!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro h1{font-size:clamp(40px,8.333333vw,120px)!important;line-height:1.066667!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro .editorial-lead{width:668px!important;max-width:100%!important;margin-top:32px!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro aside{display:flex!important;position:static!important;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px!important;margin:48px 0 0!important;text-align:center!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro aside :is(p,a){font-size:24px!important;line-height:36px!important;margin:0!important;}
html body.editorial-page main.editorial-main.contact-page .contact-intro aside a{color:#FF933C!important;}
@media(max-width:599px){
 html body.editorial-page main.editorial-main.contact-page .contact-intro aside{margin-top:24px!important;gap:8px!important;}
 html body.editorial-page main.editorial-main.contact-page .contact-intro aside :is(p,a){font-size:16px!important;line-height:24px!important;}
}

/* Stable desktop spacing from the last hero text to the following content. */
@media(min-width:1024px){
 html body.editorial-page main.editorial-main :is(.service-hero,.contact-intro){padding-bottom:0!important;margin-bottom:120px!important;}
 html body.editorial-page main.editorial-main .service-offerings{margin-top:0!important;padding-top:0!important;}
 html body.work-page main#top .work-showcase>.projects{margin-top:144px!important;}
 html body.editorial-page main.editorial-main .studio-intro-photo,
 html body.editorial-page main.case-study .case-hero>:is(.case-image,picture,.case-mobile-artwork){margin-top:120px!important;}
 html body.editorial-page main.case-study .case-hero>p{margin-bottom:120px!important;}
 html body.editorial-page main.case-study .case-hero>p+:is(.case-image,picture,.case-mobile-artwork){margin-top:0!important;}
}
/* Each authored hero line remains a line at every screen size. */
html body:not(.home-page) main :is(.service-hero,.case-hero,.work-showcase) h1 .editorial-line-content{white-space:nowrap!important;}

/* Case artwork stays still: no entrance, scale, parallax, or opacity transitions. */
html body.editorial-page main.case-study :is(.case-image,.case-artwork,.case-brand-tile,.case-desktop-artwork,.case-mobile-artwork),
html body.editorial-page main.case-study :is(.case-image,.case-artwork,.case-brand-tile,.case-desktop-artwork,.case-mobile-artwork) img{
 animation:none!important;transition:none!important;transform:none!important;translate:none!important;scale:none!important;opacity:1!important;will-change:auto!important;
}

/* Desktop inner hero H1s: 20% larger, scoped to hero containers. */
@media(min-width:1024px){
 html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1{font-size:clamp(86.4px,9.84vw,144px)!important;}
 html body.editorial-page main.editorial-main.contact-page .contact-intro h1{font-size:clamp(48px,10vw,144px)!important;}
 html body.editorial-page main.editorial-main.contact-page .contact-intro>div{max-width:1198px;}
}
@media(min-width:1024px) and (max-width:1600px){
 html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1{font-size:clamp(81.6px,8.333333vw,134.4px)!important;}
}

/* Scoped title rhythm: hero and colored statement panels only. */
html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1:is(#work-page-title,.editorial-title,h1),
html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1:is(#work-page-title,.editorial-title,h1) *{line-height:var(--inner-hero-leading,1)!important;}
html body main:is(#top,#main-content,.editorial-main,.case-study) :is(.service-promise,.services-mix,.studio-thinking,.case-statement,#approach) :is(h2,h2 *),
html body footer.contact-panel .contact-copy :is(h2,h2 *){line-height:1.05!important;}
/* Keep the native hand above custom cursor layers, including icon descendants. */
html body #site-mobile-menu :is(a,button),html body #site-mobile-menu :is(a,button) *,
html body .site-header button.editorial-menu-button,html body .site-header button.editorial-menu-button *{cursor:pointer!important;}
html body #site-mobile-menu :is(a,button)::before,html body #site-mobile-menu :is(a,button)::after,
html body .site-header button.editorial-menu-button::before,html body .site-header button.editorial-menu-button::after{cursor:pointer!important;pointer-events:none!important;}
html:has(#site-mobile-menu[open]) body :is(.work-cursor,.stories-cursor){display:none!important;}

/* Home reading rhythm and separation. */
html body.home-page main#top #about #studio-title.studio-description,
html body.home-page main#top .home-belief p{line-height:1.25!important;}
html body.home-page main#top .testimonials{margin-top:40px!important;}
html body.home-page main#top #founder.founder.page-section>.founder-copy{position:relative;top:-24px;}
html body.home-page main#top #founder.founder.page-section .founder-copy>.line-link{margin-top:32px!important;}
@media(max-width:1023px){html body.home-page main#top #founder.founder.page-section>.founder-copy{top:-12px;}html body.home-page main#top .testimonials{margin-top:24px!important;}}
.footer-fast-line{display:block;}
footer.contact-panel .footer-line-mask{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em;}

/* More breathing room between Home service rows and the following statement. */
html body.home-page main#top #services .expertise-row{padding-block:32px!important;}
html body.home-page main#top .panel-reading-track:has(>#approach),
html body.home-page main#top>#approach{margin-top:40px!important;}
html body.editorial-page main.services-page .service-hero{margin-bottom:144px!important;}
html body.home-page main#top section.testimonials.page-section.stories-stack-section{margin-top:40px!important;}
@media(max-width:1023px){
 html body.home-page main#top #services .expertise-row{padding-block:28px!important;}
 html body.home-page main#top .panel-reading-track:has(>#approach),html body.home-page main#top>#approach{margin-top:24px!important;}
 html body.home-page main#top section.testimonials.page-section.stories-stack-section{margin-top:24px!important;}
}

/* Contact: numbers share the heading's top edge; FAQ has balanced row spacing. */
html body.editorial-page main.contact-page .editorial-values li{position:relative!important;padding-left:56px!important;}
html body.editorial-page main.contact-page .editorial-values li::before{position:absolute!important;top:0!important;left:0!important;margin:0!important;line-height:1.2!important;text-align:left!important;}
html body.editorial-page main.contact-page .editorial-values li h3{margin-top:0!important;}
html body.editorial-page main.contact-page #contact-faq{padding-top:24px!important;margin-top:32px!important;padding-bottom:0!important;margin-bottom:120px!important;}
html body.editorial-page main.contact-page #contact-faq .faq-item{padding-top:32px!important;padding-bottom:32px!important;}
html body .site-header.editorial-header:not(.header-scroll-hidden)>button.editorial-menu-button{pointer-events:auto!important;cursor:pointer!important;}
html body .site-header.editorial-header>button.editorial-menu-button *{pointer-events:none!important;cursor:pointer!important;}
@media(max-width:599px){html body.editorial-page main.contact-page #contact-faq{margin-bottom:80px!important;}html body.editorial-page main.contact-page #contact-faq .faq-item{padding-block:24px!important;}}

/* Triple the current 40px / 24px gap above the Home orange panel. */
html body.home-page main#top>.panel-reading-track:has(>#approach){margin-top:120px!important;}
@media(max-width:1023px){html body.home-page main#top>.panel-reading-track:has(>#approach){margin-top:72px!important;}}
html body.editorial-page main.editorial-main.contact-page .editorial-values li::before{top:0!important;}

html body.editorial-page main.case-study .case-hero>p:has(+.inner-hero-scroll-cue){margin-bottom:0!important;}

/* Center only the Home editorial headlines and their supporting copy on compact screens. */
@media(max-width:1023px){
 html body.home-page main#top .testimonials .editorial-title-track,
 html body.home-page main#top .testimonials .stories-heading{width:100%!important;max-width:none!important;justify-self:stretch!important;align-self:stretch!important;justify-items:center!important;}
 html body.home-page main#top :is(#statement-title,#why-title,#testimonials-title){text-align:center!important;margin-inline:auto!important;}
 html body.home-page main#top #about #studio-title.studio-description,
 html body.home-page main#top .home-belief p,
 html body.home-page main#top .intro-studio-link,
 html body.home-page main#top .why-contact{text-align:center!important;align-items:center!important;justify-content:center!important;margin-inline:auto!important;}
 html body.home-page main#top .intro-studio-link *,html body.home-page main#top .why-contact *{text-align:center!important;}
}
@media(max-width:1023px){html body.home-page main#top section.home-belief p,html body.home-page main#top section.home-belief p *{text-align:center!important;}}
@media(max-width:1023px){html body.home-page main#top .stories-heading .editorial-title-content{width:100%!important;justify-self:stretch!important;text-align:center!important;}html body.home-page main#top .stories-heading .editorial-title-content #testimonials-title{margin-inline:auto!important;}}
/* FAQ copy and rules enter together; accordion height remains independently controlled. */
@media(prefers-reduced-motion:no-preference){
 html body .services-faq .faq-item.faq-motion .faq-answer-inner{opacity:0;translate:0 18px;transition:opacity 550ms ease,translate 650ms cubic-bezier(.22,1,.36,1);}
 html body .services-faq .faq-item.faq-motion.faq-visible .faq-answer-inner{opacity:1;translate:0 0;}
}

/* Twice the approved Home services-to-panel spacing. */
html body.home-page main#top>.panel-reading-track:has(>#approach){margin-top:240px!important;}
@media(max-width:1023px){html body.home-page main#top>.panel-reading-track:has(>#approach){margin-top:144px!important;}}

/* Compact editorial layout: override the legacy left-aligned reading layouts. */
@media(max-width:1023px){
 html body.home-page main#top #about .intro-studio-link{align-items:center!important;justify-content:center!important;text-align:center!important;margin:24px auto 0!important;gap:8px!important;}
 html body.home-page main#top #about .intro-studio-link>*{align-self:center!important;text-align:center!important;margin-inline:auto!important;}
 html body.home-page main#top section.home-belief.page-section .belief-scroll-copy,
 html body.home-page main#top section.home-belief.page-section .belief-scroll-copy p,
 html body.home-page main#top section.home-belief.page-section .belief-scroll-copy p>*{text-align:center!important;margin-inline:auto!important;}
 html body.home-page main#top section.testimonials.stories-stack-section .stories-heading .editorial-title-content{width:100%!important;max-width:none!important;justify-self:center!important;align-self:center!important;margin:0!important;}
 html body.home-page main#top section.testimonials.stories-stack-section #testimonials-title{width:100%!important;max-width:100%!important;margin:0 auto!important;text-align:center!important;}
 html body.home-page main#top section.testimonials.stories-stack-section #testimonials-title *{text-align:center!important;}
 html body.home-page main#top #hero-statement.intro-scroll-enabled{height:240svh!important;}
 html body.home-page main#top .editorial-title-track.is-pinned-title{height:145svh!important;}
 html body.home-page main#top section.home-belief.belief-scroll-enabled{height:145svh!important;}
 html body.home-page main#top .testimonials .stories-layout{margin-top:0!important;margin-bottom:0!important;padding-block:0!important;}
 html body.home-page main#top section.home-belief+.clients.page-section{padding-top:24px!important;margin-top:0!important;}
 html body .studio-page .studio-belief p{font-size:clamp(20px,3.2vw,28px)!important;line-height:1.4!important;}
}
/* Orange surfaces always use solid dark ink, including animated line children. */
html body :is(#approach,.service-promise,.services-mix,.studio-thinking,.case-statement) h2,
html body :is(#approach,.service-promise,.services-mix,.studio-thinking,.case-statement) h2 *{background:none!important;background-image:none!important;color:#201e1c!important;-webkit-text-fill-color:#201e1c!important;}
@media(max-width:1023px){
 html body.home-page main#top .stories-heading:has(#testimonials-title){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:1fr!important;}
 html body.home-page main#top .stories-heading:has(#testimonials-title) .editorial-title-content{grid-column:1/-1!important;grid-row:1!important;width:100%!important;}
}
@media(max-width:599px){
 html body.editorial-page main.editorial-main.contact-page .editorial-values li{padding-left:0!important;}
 html body.editorial-page main.editorial-main.contact-page .editorial-values li::before{position:static!important;display:block!important;margin:0 0 12px!important;}
 html body.editorial-page main.contact-page .contact-work li{flex-direction:column!important;align-items:flex-start!important;gap:8px!important;}
 html body.home-page main#top section.home-belief.page-section p{font-size:20px!important;line-height:1.4!important;}
}
@media(prefers-reduced-motion:no-preference){
 html body.home-page #services .expertise-row.detail-rule{position:relative;border-bottom-color:transparent!important;}
 html body.home-page #services .expertise-row.detail-rule::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#a5968c66;transform:scaleX(0);transform-origin:left;transition:transform 650ms cubic-bezier(.22,1,.36,1);}
 html body.home-page #services .expertise-row.detail-rule.detail-arrived::after{transform:scaleX(1);}
}
@media(max-width:599px){
 html body :is(main#top,main.editorial-main) #founder.founder.page-section .founder-copy>p:not(.eyebrow){font-size:22px!important;line-height:1.45!important;}
 html body.editorial-page main.editorial-main.studio-page section.studio-process ol li,
 html body.editorial-page main.editorial-main.studio-page .editorial-values li{padding-left:0!important;}
 html body.editorial-page main.editorial-main.studio-page section.studio-process ol li::before,
 html body.editorial-page main.editorial-main.studio-page .editorial-values li::before{position:static!important;display:block!important;margin:0 0 12px!important;}
 html body.editorial-page main:is(#top,.editorial-main).services-page.services-redesign .service-hero h1.editorial-title{font-size:clamp(38px,10.9vw,64px)!important;line-height:1.1!important;}
 html body.editorial-page main:is(#top,.editorial-main).services-page.services-redesign .service-hero h1.editorial-title *{line-height:inherit!important;}
}
@media(max-width:1023px){
 html body.editorial-page main.case-study .case-related>h2{width:max-content!important;max-width:100%!important;white-space:nowrap!important;}
 html body.editorial-page main.case-study .case-related>h2 .editorial-line-mask,
 html body.editorial-page main.case-study .case-related>h2 .editorial-line-content{display:inline-block!important;white-space:nowrap!important;}
 html body.editorial-page main.case-study .case-related>h2 .editorial-line-mask+.editorial-line-mask{margin-left:.22em!important;}
}
@media(prefers-reduced-motion:no-preference){
 html body .detail-index::before{opacity:0;translate:0 10px;transition:opacity 450ms ease,translate 550ms cubic-bezier(.22,1,.36,1);}
 html body .detail-index.detail-arrived::before{opacity:1;translate:0 0;}
}

@media(max-width:599px){.services-redesign .service-hero h1{--inner-hero-leading:1.1;}}

/* Compact desktops: keep the complete hero group inside the viewport. */
@media(min-width:1024px) and (max-width:1600px){
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p),
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p) *{font-size:clamp(20px,1.75vw,26px)!important;line-height:1.4!important;}
}
@media(min-width:1024px){
 html body.editorial-page main.contact-page #contact-faq{margin-top:0!important;padding-top:144px!important;}
 html body.editorial-page main.contact-page .contact-reach{margin-bottom:0!important;}
}

@media(min-width:600px) and (max-width:1023px){
 html body.editorial-page main.contact-page #contact-faq{margin-top:0!important;padding-top:104px!important;}
 html body.editorial-page main.contact-page .contact-reach{margin-bottom:0!important;}
}
@media(max-width:599px){
 html body.editorial-page main.contact-page #contact-faq{margin-top:0!important;padding-top:80px!important;}
 html body.editorial-page main.contact-page .contact-reach{margin-bottom:0!important;}
 html body .services-faq .faq-question .faq-toggle-icon{width:16px!important;height:16px!important;min-width:16px!important;flex:0 0 16px!important;}
}
/* Separate inner-page content from the footer; founder pages remain flush. */
html body.work-page footer#contact.contact-panel,
html body.editorial-page:has(main:not(.studio-page)) footer#contact.contact-panel{margin-top:120px!important;}
@media(max-width:1023px){
 html body.work-page footer#contact.contact-panel,
 html body.editorial-page:has(main:not(.studio-page)) footer#contact.contact-panel{margin-top:80px!important;}
}
/* Home studio introduction: centered on every screen, with room before its CTA. */
html body.home-page main#top #about #studio-title.studio-description,
html body.home-page main#top #about #studio-title.studio-description *{text-align:center!important;}
html body.home-page main#top #about #studio-title.studio-description{margin-inline:auto!important;}
html body.home-page main#top #about .intro-studio-link{align-items:center!important;justify-content:center!important;text-align:center!important;margin:40px auto 0!important;}
html body.home-page main#top #about .intro-studio-link>*{align-self:center!important;text-align:center!important;margin-inline:auto!important;}
@media(min-width:1024px){html body.home-page main#top #about .intro-studio-link{margin-top:56px!important;}}

/* Tablet portrait refinements from Figma 252:904. */
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body.home-page main#top .hero .hero-details{left:40px!important;top:clamp(170px,20svh,240px)!important;width:335px!important;gap:24px!important;}
 html body.home-page main#top .hero .hero-intro{font-size:28px!important;line-height:36px!important;}
 html body.home-page main#top .hero .hero-details .button{width:max-content!important;max-width:100%;}
 html body.home-page main#top #hero-statement.intro-scroll-enabled{height:205svh!important;min-height:205svh!important;}
 html body.home-page main#top #about #studio-title.studio-description{font-size:32px!important;line-height:44px!important;width:602px!important;max-width:calc(100vw - 96px)!important;}
 html body.home-page main#top #about #studio-title .intro-line-break{display:inline!important;}
 html body.home-page main#top #about #studio-title .intro-first-break{display:none!important;}
 html body.home-page main#top .compact-scroll-stories .story-panel{min-height:420px!important;padding:52px!important;border-radius:16px!important;}
 html body.home-page main#top .compact-scroll-stories .story-panel blockquote{font-size:26px!important;line-height:34.6px!important;}
 html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1{font-size:clamp(64px,9.1vw,96px)!important;}
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p){font-size:22px!important;line-height:1.45!important;width:80%!important;max-width:80%!important;margin-inline:auto!important;}
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p) *{font-size:inherit!important;line-height:inherit!important;}
 html body.work-page main#top .work-caption,html body.work-page main#top .work-caption a{font-size:30px!important;line-height:1.25!important;}
 html body.editorial-page main.case-study .case-facts{display:flex!important;flex-direction:column!important;grid-column:1/-1!important;gap:28px!important;margin-left:0!important;}
 html body.editorial-page main.case-study .case-facts>div{width:100%!important;margin:0!important;}
 html body.editorial-page main.studio-page .clients .clients-heading{width:calc(100% - 96px)!important;margin-inline:48px!important;text-align:left!important;}
}
html body main :is(.project-media,.project-media picture,.project-media img,.work-card,.work-card img){border-radius:16px!important;}
html body main .project-media{overflow:hidden!important;}
/* Stable paint surfaces for clipped text, including WebKit. */
html body .editorial-line-mask,html body .motion-line{overflow:hidden!important;}
html body .editorial-line-content,html body .motion-line>span{-webkit-backface-visibility:hidden;backface-visibility:hidden;}
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body.editorial-page main.studio-page .clients.page-section{width:calc(100% - 96px)!important;margin-inline:48px!important;}
 html body.editorial-page main.studio-page .clients .clients-heading{width:100%!important;margin-inline:0!important;}
}
html body.home-page main#top #work :is(.work-slide,.work-slide-image,.work-slide-image picture,.work-slide-image img){border-radius:16px!important;}
html body.home-page main#top #work .work-slide-image{overflow:hidden!important;}
/* No empty spacer or exposed background seam between the room and introduction. */
html body.home-page main#top #hero-statement{margin-top:0!important;background:#201e1c!important;}
@media(max-width:1100px){
 html body.home-page main#top #hero-statement .intro-scroll-stage{align-items:start!important;padding-top:80px!important;box-sizing:border-box;}
 html body.home-page main#top #hero-statement .hero-statement-inner{align-self:start!important;}
 html body.home-page main#top #hero-statement #about{align-self:center!important;}
}
/* Tablet portrait only: compact links and a calmer section-title hierarchy. */
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body.home-page main#top #about .intro-studio-link,
 html body.home-page main#top .why-contact{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;width:max-content!important;max-width:100%!important;column-gap:16px!important;row-gap:8px!important;margin-inline:auto!important;}
 html body.home-page main#top #about .intro-studio-link>*,
 html body.home-page main#top .why-contact>*{margin-inline:0!important;flex:0 0 auto!important;width:auto!important;}
 html body main:is(#top,#main-content,.editorial-main,.case-study) h2{font-size:48px!important;line-height:1.15!important;}
 html body.home-page main#top :is(#why-title,#testimonials-title){font-size:64px!important;line-height:1.15!important;}
 html body main:is(#top,#main-content,.editorial-main,.case-study) :is(#approach,.service-promise,.services-mix,.studio-thinking,.case-statement) h2{font-size:60px!important;line-height:1.15!important;}
 html body.work-page main#top h2.work-caption{font-size:30px!important;}
 html body footer#contact.contact-panel .contact-copy h2{font-size:60px!important;line-height:1.1!important;}
 html body main.case-study .case-related>h2{font-size:40px!important;}
 html body .services-faq .faq-item .faq-question{font-size:24px!important;line-height:1.35!important;}
 html body.editorial-page main.contact-page #contact-faq{padding-top:128px!important;}
 html body.editorial-page main .services-faq:not(#contact-faq){padding-top:32px!important;}
 html body.editorial-page main.contact-page .contact-intro .contact-hero-copy-break{display:block!important;}
 html body.home-page main#top #work :is(.work-slide,.work-slide-image,.work-slide-image picture,.work-slide-image img),
 html body.work-page main#top :is(.project-media,.project-media picture,.project-media img),
 html body main.case-study .case-related :is(a,picture,img){border-radius:16px!important;}
}
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body.home-page main#top #hero-statement .intro-scroll-stage{align-items:center!important;padding-top:0!important;}
 html body.home-page main#top #hero-statement .hero-statement-inner{align-self:center!important;}
 html body.home-page main#top .why #why-title,
 html body.home-page main#top .testimonials #testimonials-title{font-size:64px!important;line-height:1.15!important;}
 html body.home-page .intro-mouse-cue.is-active{display:block!important;visibility:visible!important;}
}
/* Mobile typography: a stronger hero with quieter, narrower supporting copy. */
@media(max-width:599px){
 html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1,
 html body.editorial-page main.editorial-main.contact-page .contact-intro h1,
 html body.editorial-page main:is(#top,.editorial-main).services-page.services-redesign .service-hero h1.editorial-title{font-size:clamp(38px,11.7vw,48px)!important;}
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p){font-size:18px!important;line-height:1.45!important;width:80%!important;max-width:80%!important;margin-inline:auto!important;}
 html body:not(.home-page):is(.editorial-page,.work-page) main:is(#main-content,#top,.editorial-main,.case-study,.work-showcase) :is(.editorial-intro .editorial-lead,.service-hero>p,.work-lead,.case-hero>p) *{font-size:inherit!important;line-height:inherit!important;}
 html body.home-page main#top #hero-statement #statement-title{font-size:clamp(31px,9.7vw,40px)!important;line-height:1.12!important;}
 html body.editorial-page main.contact-page .enquiry-form .enquiry-field :is(input,textarea){font-size:20px!important;line-height:1.4!important;}
 html body.editorial-page main.contact-page .enquiry-form .service-options label span{font-size:16px!important;}
 html body.editorial-page main.contact-page #contact-faq{padding-top:104px!important;}
}
html body.home-page main#top .why #why-title br{display:block!important;}
html body.home-page main#top .why #why-title .motion-line{display:block!important;white-space:nowrap!important;}
@media(max-width:599px){html body.home-page main#top .why #why-title{width:100%!important;max-width:100%!important;font-size:clamp(27px,8.3vw,36px)!important;}}
/* Contact tablet portrait: use the same section-heading scale above and below stats. */
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body.editorial-page main.contact-page .contact-reach>h2.editorial-title,
 html body.editorial-page main.contact-page #contact-faq #contact-faq-title{font-size:clamp(36px,5.4vw,54px)!important;line-height:1.2!important;font-weight:500!important;letter-spacing:0!important;}
 html body.editorial-page main.contact-page .enquiry-form .enquiry-field :is(input,textarea){font-size:24px!important;line-height:1.4!important;}
 html body.editorial-page main.contact-page .enquiry-form .service-options label span{font-size:18px!important;}
}
/* Shared scroll-drawn rules; the border stays hidden while its rule reveals. */
@media(prefers-reduced-motion:no-preference){
 html body .services-faq .faq-item.faq-motion{border-bottom-color:transparent!important;}
 html body .services-faq h2+.faq-item.faq-motion{border-top-color:transparent!important;}
 html body .services-faq .faq-motion::after,
 html body .services-faq h2+.faq-motion::before,
 html body.home-page #services .expertise-row.detail-rule::after{transform-origin:left center!important;transition:transform 800ms cubic-bezier(.22,1,.36,1)!important;}
}
@media(max-width:599px){
 html body main .services-faq .faq-item{padding-block:24px!important;}
 html body main .services-faq .faq-question{line-height:1.2!important;}
 html body main .services-faq .faq-answer p{line-height:1.4!important;}
}
/* Social navigation stays at the panel bottom without overlapping short screens. */
html body dialog.editorial-menu#site-mobile-menu[open]{display:flex!important;flex-direction:column!important;padding-bottom:max(40px,env(safe-area-inset-bottom))!important;}
html body #site-mobile-menu nav.menu-primary{flex-shrink:0!important;}
html body #site-mobile-menu nav.menu-social{flex-shrink:0!important;margin-top:auto!important;margin-bottom:0!important;padding-top:32px!important;}
@media(min-width:600px) and (max-width:1100px) and (orientation:portrait){
 html body:not(.home-page) main:is(#top,#main-content,.editorial-main,.case-study) :is(.editorial-intro,.service-hero,.case-hero,.work-showcase) h1,
 html body.editorial-page main.editorial-main.contact-page .contact-intro h1{font-size:clamp(68px,9.65vw,102px)!important;}
}
