/* Shared responsive scale. Figma desktop sizes are ceilings, not viewport multipliers.
   Phone <=600, portrait tablet <=900, landscape tablet <=1199, desktop >=1200. */
:root{
 --layout-gutter:clamp(20px,8.333333vw,160px);
 --layout-width:1440px;
 --type-display:clamp(36px,6.666667vw,96px);
 --type-lead:clamp(20px,calc(14px + 1.25vw),32px);
 --space-section:clamp(80px,16.666667vw,240px);
 --space-content:clamp(48px,8.333333vw,120px);
}
@media(min-width:1920px){:root{--layout-gutter:max(160px,calc((100vw - var(--layout-width))/2));}}
body .editorial-main{--editorial-gutter:var(--layout-gutter);}
body .editorial-container,body.work-page .work-showcase{width:calc(100% - 2 * var(--layout-gutter));max-width:var(--layout-width);margin-inline:auto;}
body .editorial-intro,body.work-page .work-showcase{padding-top:clamp(144px,16.736111vw,241px);}
body .editorial-main .editorial-title,body.work-page #work-page-title{font-size:var(--type-display);line-height:1.041667;}
body .editorial-intro .editorial-lead,body .services-page .services-intro .editorial-lead,body.work-page .work-lead{font-size:var(--type-lead);line-height:1.375;max-width:min(100%,919px);}
body .studio-page .studio-lead{max-width:min(100%,904px);}
body.work-page .work-lead{max-width:min(100%,877px);}
body .contact-intro .editorial-lead{max-width:min(100%,707px);}
body .editorial-section,body .studio-thinking,body .studio-belief,body .services-mix{margin-top:var(--space-section);}
body .editorial-intro .editorial-lead,body.work-page .work-lead{margin-top:clamp(32px,4.166667vw,60px);}
body .studio-intro-photo,body .services-details,body.work-page .work-showcase .projects{margin-top:var(--space-content);}
body .editorial-split>* ,body .contact-intro>*,body .services-detail-card>*,body .contact-top>*{min-width:0;}
body .editorial-values h3,body .studio-page .editorial-values h3,body .services-principles .editorial-values h3{font-size:clamp(26px,2.5vw,36px);line-height:1.111111;white-space:normal;}
body .studio-process h3{font-size:clamp(32px,3.888889vw,56px);}
body .studio-belief p,body .services-statement{font-size:clamp(28px,3.888889vw,56px);line-height:1.214286;}
body .studio-thinking h2,body .services-mix h2{font-size:clamp(40px,8.333333vw,120px);min-height:0;max-width:100%;}
body .studio-thinking,body .services-mix{padding-block:var(--space-content);}
body .services-mix-copy{margin-top:clamp(36px,5.555556vw,80px);gap:clamp(32px,5.486111vw,79px);}
body .services-statement{min-height:0;margin-block:clamp(80px,11.111111vw,160px);}
body .services-detail-card{padding:clamp(24px,4.166667vw,60px);gap:clamp(28px,4.166667vw,60px);min-height:0;}
body .services-detail-heading h2{font-size:clamp(28px,3.333333vw,48px);margin-top:clamp(24px,3.333333vw,48px);}
body .services-detail-copy{font-size:clamp(18px,1.666667vw,24px);line-height:1.5;}
body .services-detail-heading ul{font-size:clamp(16px,1.388889vw,20px);line-height:1.5;}
body .services-principles{margin-bottom:var(--space-section);}
.editorial-title .title-mobile-lines{display:none;}
@media(max-width:600px){
 .editorial-title .title-desktop-lines{display:none;}
 .editorial-title .title-mobile-lines{display:block;}
}
.footer-mobile-break{display:none;}
@media(max-width:600px){.footer-mobile-break{display:block;}}
/* Shared mobile footer rhythm, including the Home-specific stylesheet. */
@media(max-width:600px){
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact{display:flex;flex-direction:column;padding:44px 24px 36px;width:calc(100% - 16px);max-width:none;margin:0 8px 8px;box-sizing:border-box;border-radius:16px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-top{grid-template-columns:1fr;gap:44px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-top h2{font-size:36px;line-height:44px;max-width:274px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-top p{font-size:18px;line-height:24px;margin:28px 0 32px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .footer-project-link{font-size:20px;line-height:32px;width:180px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-details{padding:0;gap:18px;align-items:flex-start;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-details a{font-size:24px;line-height:32px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .contact-details a:last-child{font-size:22px;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .footer-bottom{order:2;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px;line-height:24px;margin-top:56px;padding:0 0 8px;border-top:0;border-bottom:1px solid currentColor;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .footer-bottom nav{display:none;}
 body:is(.home-page,.work-page,.editorial-page) footer.contact-panel#contact .footer-wordmark{order:3;width:100%;height:auto;margin:24px 0 0;}
}
/* Portraits sit on the footer edge; copy never pushes them above it. */
body .studio-founder,body .founder.page-section{align-items:end;margin-bottom:0;padding-bottom:0;overflow:visible;}
body .studio-founder figure,body .founder .founder-photo{align-self:end;margin-bottom:0;overflow:visible;}
body .studio-founder-photo,body .founder .founder-photo>img{display:block;width:100%;height:auto;object-fit:contain;object-position:center bottom;}
body .studio-founder>div{padding-bottom:64px;}
body.editorial-page:has(.studio-founder) .contact-panel{margin-top:0;}
body .studio-founder figure{max-width:560px;}
body .studio-founder p{font-size:clamp(18px,1.666667vw,24px);line-height:1.5;}
body .studio-founder figcaption{max-width:100%;white-space:normal;}
body .contact-intro{grid-template-columns:minmax(0,707fr) minmax(220px,373fr);gap:clamp(32px,5vw,72px);padding-bottom:var(--space-content);}
body .contact-intro aside{font-size:clamp(18px,1.666667vw,24px);}
body .contact-intro aside a{font-size:clamp(20px,1.944444vw,28px);overflow-wrap:anywhere;white-space:normal;}
body .enquiry-form{padding-block:clamp(40px,5.555556vw,80px);}
body .enquiry-form legend{font-size:clamp(26px,2.5vw,36px);line-height:1.333333;}
body .service-options{gap:clamp(12px,1.666667vw,24px);}
body .service-options span{font-size:clamp(16px,1.666667vw,24px);line-height:1.333333;padding:clamp(12px,1.111111vw,16px) clamp(16px,1.666667vw,24px);}
body .enquiry-field{font-size:clamp(20px,2.222222vw,32px);line-height:1.375;}
body .enquiry-field input,body .enquiry-field textarea{min-width:0;max-width:100%;}
body .enquiry-field+.enquiry-field{margin-top:clamp(36px,4.444444vw,64px);}
body .contact-page .editorial-split,body .contact-work{margin-top:clamp(80px,11.111111vw,160px);}
body .contact-work{padding-block:var(--space-content);}
body .contact-work li{font-size:clamp(22px,1.944444vw,28px);line-height:1.3;}
body .contact-reach{margin-block:clamp(96px,12.5vw,180px);}
body.work-page .work-showcase .projects{row-gap:var(--space-content);}
body.work-page .work-showcase .work-caption{font-size:clamp(20px,1.944444vw,28px);line-height:1.285714;}
body .site-header,body .site-header.editorial-header{padding-block:clamp(24px,3.333333vw,48px);}
body .site-header .site-nav,body.work-page .site-header .site-nav{top:calc(clamp(24px,3.333333vw,48px) + 3px);gap:clamp(24px,3.333333vw,48px);font-size:clamp(17px,1.388889vw,20px);}
body .editorial-menu{max-height:calc(100dvh - 32px);overflow:auto;}
body .editorial-menu-button{min-width:44px;min-height:44px;}
body .editorial-menu>button{min-height:44px;}
body .contact-panel .contact-top h2{font-size:clamp(32px,5vw,72px);}
body .contact-panel .contact-top p{font-size:clamp(18px,1.666667vw,24px);}
body .contact-panel .footer-wordmark{margin-top:clamp(48px,6.944444vw,100px);}
body .contact-panel .footer-bottom,body .contact-panel .footer-bottom nav{flex-wrap:wrap;}
body .contact-panel .footer-bottom nav{gap:12px 24px;}
body .contact-panel a{overflow-wrap:anywhere;}
/* Home: cap oversized desktop details while preserving the WebGL scene. */
body:not(.editorial-page):not(.work-page){--section-gutter:var(--layout-gutter);}
body .hero{--hero-content-gutter:var(--layout-gutter);}
body .hero .hero-intro{font-size:clamp(18px,1.944444vw,28px);}
body .hero .hero-intro span{white-space:normal;}
body .hero-statement h1{font-size:clamp(36px,10vw,144px);}
body .services-section .services-heading h2{font-size:clamp(36px,10.277778vw,148px);}
body #approach #philosophy-title{font-size:clamp(36px,8.333333vw,120px);}
body #services .service-card h3{font-size:clamp(28px,3.333333vw,48px);}
body .story-panel blockquote{font-size:clamp(22px,2.5vw,36px);line-height:1.333333;}
body .story-panel{padding:clamp(28px,4.722222vw,68px);}
@media(min-width:901px) and (max-width:1199px){
 body .studio-page .editorial-split,body .services-principles,body .contact-page .editorial-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;}
 body .editorial-split>.editorial-title{font-size:clamp(40px,5vw,60px);}
 body .studio-process li,body .studio-process li:nth-child(n){width:60%;}
 body .studio-process li:nth-child(2){margin-left:13%;}body .studio-process li:nth-child(3){margin-left:26%;}body .studio-process li:nth-child(4){margin-left:40%;}
 body #services .service-card{padding-right:24px;}
 body #services .service-card:nth-child(even){padding-left:24px;padding-right:0;}
 body .services-detail-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
}
@media(max-width:900px){
 :root{--layout-gutter:clamp(20px,5vw,44px);--space-section:clamp(80px,12vw,108px);}
 body .site-header .site-nav,body.work-page .site-header .site-nav{display:none;}
 body .editorial-menu-button{display:block;background:none;border:0;padding:8px;cursor:pointer;}
 body .editorial-menu-button img{display:block;}
 body .studio-page .editorial-split,body .services-principles,body .contact-page .editorial-split{grid-template-columns:1fr;gap:48px;}
 body .contact-intro{grid-template-columns:1fr;gap:32px;}
 body .contact-intro aside{text-align:left;}
 body .studio-process li,body .studio-process li:nth-child(n){width:100%;margin-left:0;}
 body .studio-founder{grid-template-columns:minmax(0,1fr);gap:48px;}
 body .studio-founder figure{width:min(75%,400px);margin-inline:auto;}
 body .studio-founder figure,body .founder .founder-photo{grid-row:2;}
 body .studio-founder>div,body .founder .founder-copy{grid-row:1;padding-bottom:0;}
 body .studio-founder figcaption{position:absolute;left:auto;right:0;bottom:5%;max-width:65%;}
 body .studio-founder figcaption strong{font-size:16px;line-height:1.4;}
 body .studio-founder figcaption span{font-size:12px;line-height:1.4;}
 body .studio-founder figcaption img{width:100px;height:60px;}
 body .founder.page-section{grid-template-columns:minmax(0,1fr);gap:48px;}
 body .founder .founder-photo{width:min(75%,400px);justify-self:center;}
 body .services-detail-card{grid-template-columns:1fr;gap:32px;}
 body .services-detail-heading h2{margin-top:24px;}
 body .services-mix-copy{grid-template-columns:1fr;gap:28px;}
 body .enquiry-actions,body .contact-work-bottom{flex-direction:column;align-items:flex-start;gap:32px;}
 body .contact-panel .contact-top{grid-template-columns:1fr;gap:32px;}
 body .contact-panel .contact-details{align-items:flex-start;}
 body .contact-panel .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;}
 body .contact-panel .footer-bottom nav{justify-content:flex-start;}
 body #services .services-grid{grid-template-columns:1fr;}
 body #services .service-card,body #services .service-card:nth-child(n){padding:32px 0;border-left:0;border-top:1px solid #37322f;}
 body .hero .hero-details{max-width:42%;}
}
@media(min-width:601px) and (max-width:900px){
 body .contact-reach .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
 body .contact-reach .stats article{padding:24px;min-width:0;}
 body .contact-reach .stats strong{font-size:48px;}
 body .contact-reach .stats span{font-size:16px;}
 body .studio-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 body .studio-gallery .wide{grid-column:span 2;}
}
@media(max-width:600px){
 :root{--layout-gutter:24px;--type-display:clamp(32px,8.5vw,48px);--type-lead:clamp(20px,5.2vw,24px);}
 body .editorial-main{--editorial-gutter:24px;}
 body .wide-surface{width:calc(100% - 16px);margin-inline:8px;box-sizing:border-box;}
 body .wide-surface>.editorial-container{width:calc(100% - 48px);margin-inline:24px;}
 body .services-details.editorial-container{width:calc(100% - 16px);margin-inline:8px;}
 body .services-detail-card{padding-inline:24px;}
 body .services-details .services-statement{margin-inline:16px;font-size:32px;line-height:40px;}
 body .studio-gallery{margin-inline:8px;}
 body .contact-reach .stats{width:calc(100% - 16px);margin-inline:8px;}
 body .site-header,body .site-header.editorial-header{padding:20px var(--layout-gutter);}
 body .editorial-intro,body.work-page .work-showcase{padding-top:144px;}
 body .editorial-main .editorial-title,body .services-page .services-intro .editorial-title{font-size:var(--type-display);letter-spacing:.02em;}
 body.work-page #work-page-title{font-size:clamp(28px,6.8vw,40px);letter-spacing:.02em;}
 body .editorial-intro .editorial-lead,body.work-page .work-lead{margin-top:32px;}
 body .editorial-values li{padding-left:36px;}
 body .studio-gallery{margin-inline:8px;gap:12px;}
 body .services-detail-heading ul{display:block;}
 body .services-detail-heading li{display:inline;}
 body .services-detail-heading li+li::before{margin-inline:6px;}
 body .service-options{gap:10px;}
 body .service-options span{font-size:16px;padding:12px 18px;}
 body .enquiry-actions button{width:100%;justify-content:space-between;padding:20px;white-space:normal;}
 body .contact-work li{gap:12px;}
 body .contact-reach .stats{grid-template-columns:1fr;}
 body .contact-panel .footer-bottom{display:grid;grid-template-columns:1fr;}
 body .hero .hero-details{max-width:none;width:min(76%,300px);}
 body .hero .hero-details .button{padding:16px 20px;min-height:48px;}
 body .hero-statement h1{font-size:clamp(32px,8.5vw,52px);}
 body .hero .hero-intro{font-size:20px;}
 body .services-section .services-heading h2{font-size:clamp(30px,8.5vw,52px);}
 body #approach #philosophy-title{max-width:100%;font-size:clamp(32px,8vw,48px);}
 body .work-showcase .work-item{width:100%;grid-column:1;grid-row:auto;}
 body.work-page .work-showcase .projects{grid-template-columns:1fr;row-gap:56px;}
}
@media(max-height:600px) and (orientation:landscape){
 body .site-header,body .site-header.editorial-header{padding-block:16px;}
 body .site-header .site-nav,body.work-page .site-header .site-nav{top:19px;}
 body .hero{min-height:560px;}
 body .editorial-menu nav{gap:16px;margin-block:20px;}
 body .editorial-menu nav a{font-size:28px;}
}

/* Inner-page Figma typography refresh, September 20. */
body .editorial-main .editorial-lead,body.work-page .work-lead{font-family:'Helixa',sans-serif;font-weight:400;letter-spacing:0;line-height:1.375;}
body .studio-page .studio-lead{max-width:min(100%,935px);}
body.work-page .work-lead{max-width:min(100%,760px);}
body .services-page .services-intro .editorial-lead{max-width:min(100%,893px);}
body .contact-intro .editorial-lead{max-width:min(100%,676px);}
body .studio-years .editorial-lead{font-size:var(--type-lead);max-width:785px;}
body .editorial-main .editorial-split>.editorial-title,body .editorial-main .studio-founder .editorial-title{font:500 clamp(32px,3.888889vw,56px)/1.142857 Arturm,sans-serif;letter-spacing:.02em;text-transform:none;}
body .studio-page .editorial-values h3,body .services-principles .editorial-values h3,body .contact-page .editorial-values h3{font:500 clamp(26px,2.222222vw,32px)/1.25 'Helixa',sans-serif;letter-spacing:0;white-space:normal;}
body .editorial-values p{margin-top:12px;line-height:28px;}
body .editorial-values li{margin-bottom:60px;}
body .studio-process h3{font:500 clamp(28px,2.777778vw,40px)/1.2 'Helixa',sans-serif;letter-spacing:0;background:none;color:#fff;}
body .studio-belief p,body .services-statement{font-family:'Helixa',sans-serif;letter-spacing:0;}
body .studio-thinking h2,body .services-mix h2{font-size:clamp(36px,6.666667vw,96px);line-height:1.041667;padding:0;}
body .studio-thinking h2{max-width:750px;}
body .services-mix h2{max-width:979px;}
body .services-mix-copy{margin-top:60px;}
body .services-detail-heading h2{font:500 clamp(28px,2.777778vw,40px)/1.2 'Helixa',sans-serif;letter-spacing:0;margin:48px 0 12px;}
body .services-detail-heading ul{font-size:16px;line-height:24px;}
body .services-detail-copy{font-size:clamp(18px,1.388889vw,20px);line-height:1.6;align-self:end;margin-bottom:0;}
body.work-page .work-showcase .work-caption{font:400 clamp(22px,2.222222vw,32px)/1.25 'Helixa',sans-serif;letter-spacing:0;}
body .contact-work li{font:500 clamp(24px,2.222222vw,32px)/1.25 'Helixa',sans-serif;letter-spacing:0;}
/* Mobile inner-page titles and the same compact stats used on Home. */
@media(max-width:600px){
 body .editorial-main .editorial-split>h2.editorial-title,
 body .editorial-main .studio-founder h2.editorial-title{font-size:36px;line-height:40px;letter-spacing:.02em;}
 body .editorial-main,body.work-page{--inner-mobile-heading:clamp(36px,10.5vw,56px);}
 body .editorial-main .editorial-title,
 body .editorial-main .studio-thinking h2,
 body .editorial-main .services-mix h2{font-size:var(--inner-mobile-heading);line-height:1.08;letter-spacing:.04em;}
 body.work-page .work-showcase .work-item .project,
 body.home-page .work-slide,
 body.home-page .work-slide-image,
 body .editorial-main .studio-photo,
 body .editorial-main .studio-intro-photo,
 body .editorial-main .contact-work{border-radius:16px;clip-path:inset(0 round 16px);overflow:hidden;}
 body .editorial-main h1.editorial-title,
 body .services-page .services-intro h1.editorial-title,
 body.work-page h1#work-page-title{font-size:var(--inner-mobile-heading);line-height:1.08;letter-spacing:.04em;max-width:100%;}
 body .editorial-main h1 .editorial-line-content,
 body.work-page h1#work-page-title .editorial-line-content{white-space:normal;max-width:100%;}
 body .contact-reach .stats.page-section{width:calc(100% - 16px);max-width:none;margin:40px 8px 0;gap:12px;padding:0;box-sizing:border-box;}
 body .contact-reach .stats article{display:flex;flex-direction:row;justify-content:space-between;align-items:center;box-sizing:border-box;min-height:88px;padding:20px 24px;gap:16px;}
 body .contact-reach .stats strong{font-size:36px;line-height:48px;}
 body .contact-reach .stats span{font-size:16px;line-height:24px;text-align:right;max-width:191px;}
}
@media(max-width:900px){
 body .editorial-values li{margin-bottom:40px;}
 body .services-detail-heading h2{margin-top:24px;}
 body .services-mix-copy{margin-top:36px;}
}
/* Match Home and the overlay header without a size or position jump. */
@media(min-width:601px) and (max-width:1199px){
 body.home-page .work-contact{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:12px 24px;text-align:left;font-size:24px;line-height:32px;}
 body.home-page .work-contact>p{margin:0;font-size:inherit;line-height:inherit;}
 body.home-page .work-contact .line-link{display:inline-flex;align-items:center;gap:16px;width:max-content;min-width:0;max-width:100%;padding:0 0 8px;margin:0;font-size:24px;line-height:32px;}
 body.home-page .work-contact .line-link img{width:24px;height:24px;}
}
body .studio-collage{width:calc(100% - 48px);max-width:1392px;margin:var(--space-content) auto 0;}
body .studio-collage>img{display:block;width:100%;height:auto;object-fit:contain;}
@media(max-width:600px){
 body .studio-collage{width:calc(100% - 16px);}
 body .studio-belief+.studio-years{margin-top:120px;}
 /* Touch screens must not depend on hover to show the founder CTA line. */
 body .studio-founder .studio-founder-link::after,
 body.home-page .founder .founder-copy .line-link::after{content:'';display:block;position:absolute;left:0;right:0;bottom:-5px;width:100%;height:1px;background:#FF933C;opacity:1;transform:scaleX(1);}
 body :is(main,footer) :is(h1,h2,h3,h4,h5,h6){text-align:left;}
 body .clients.page-section .clients-heading{width:100%;max-width:none;margin-inline:0;text-align:left;}
 body .clients.page-section #clients-title,
 body .editorial-main .editorial-title,
 body .contact-reach>.editorial-title{text-align:left;}
 body.editorial-page .clients.page-section .clients-heading{box-sizing:border-box;width:calc(100vw - 48px);margin-left:calc((100% - 100vw)/2 + 24px);}
 body.editorial-page .clients.page-section #clients-title{font-size:48px;line-height:54px;letter-spacing:.04em;white-space:normal;max-width:100%;margin:0;}
 body.editorial-page .clients .client-rows{width:100vw;max-width:none;margin-top:48px;margin-inline:calc((100% - 100vw)/2);gap:12px;}
 body.editorial-page .clients .client-row{padding-inline:0;gap:12px;}
 body.editorial-page .clients .client-row>li{width:180px;flex-basis:180px;height:120px;border-radius:8px;}
 body.editorial-page .clients .client-row>li img{max-width:110px;max-height:60px;}
 body .site-header.editorial-header{padding:24px;}
 body .site-header.editorial-header .wordmark,
 body .site-header.editorial-header .wordmark img{width:116px;height:24px;}
 body .site-header.editorial-header .editorial-menu-button{padding:0;width:32px;height:32px;min-width:32px;min-height:32px;}
}
