.nav-toggle{position:relative;width:3rem;height:3rem;padding:0;background:transparent;border:1px solid var(--line-new);border-radius:50%}.nav-toggle span:not(.sr-only){position:absolute;top:50%;left:50%;display:block;width:1.15rem;height:1.5px;background:currentColor;transition:transform .25s var(--ease)}.nav-toggle span:nth-of-type(2){transform:translate(-50%,-4px)}.nav-toggle span:nth-of-type(3){transform:translate(-50%,4px)}.nav-toggle[aria-expanded="true"] span:nth-of-type(2){transform:translate(-50%,0) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-of-type(3){transform:translate(-50%,0) rotate(-45deg)}
@media(max-width:1023px){.main-nav{width:auto;justify-self:stretch}.nav-open .site-header{background:transparent;border-color:transparent;backdrop-filter:none}.nav-open .brand-name span{color:var(--accent)}}
@media(max-width:699px){.lab-hero__visual{min-height:24rem}.float-ui--product{display:none}.lab-console{inset:7% 0 10%}.lab-console__chart{height:6rem}.float-ui--search{top:0}.float-ui--ai{bottom:0}}

/* Readability and optical balance */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.brand-mark{display:grid;width:2.25rem;height:2.25rem;color:var(--brand-mark-ink);background:var(--accent);border-radius:.55rem;place-items:center}
.brand-mark>span{font-size:.78rem;font-weight:850;letter-spacing:-.06em;line-height:1}
.main-nav__list>li>a,.nav-services>summary{font-size:.82rem}
.section-code,.service-label{font-size:.75rem;line-height:1.35}

.lab-hero h1{max-width:10.5ch;font-size:clamp(3.8rem,6.5vw,6.8rem);line-height:.9;letter-spacing:-.065em}
.lab-hero h1 em{letter-spacing:-.045em}
.editorial-heading h2,.inside-lab h2,.why-lab__intro h2,.compact-process h2,.selected-work__head h2,.concise-faq h2{font-size:clamp(2.5rem,4.4vw,4.6rem);line-height:.98;letter-spacing:-.055em}
.studio-statement h2{font-size:clamp(2.2rem,4.2vw,4.5rem);line-height:1.02;letter-spacing:-.05em}
.project-cta h2{max-width:15ch;font-size:clamp(2.8rem,5.3vw,5.7rem);line-height:.94;letter-spacing:-.055em}

.service-hero-new h1{max-width:17ch;font-size:clamp(3rem,5.2vw,5.8rem);line-height:.94;letter-spacing:-.055em}
.service-problem h2,.service-fit-new h2,.service-process-new h2,.service-faq-new h2{font-size:clamp(2.3rem,4.2vw,4.4rem);line-height:.98;letter-spacing:-.045em}
.service-principle h2{font-size:clamp(2.1rem,3.7vw,3.8rem);line-height:1}

.about-hero-new h1{max-width:14ch;font-size:clamp(3.1rem,5.6vw,6.1rem);line-height:.94;letter-spacing:-.055em}
.about-truth h2,.about-collab h2{font-size:clamp(2.3rem,4vw,4.2rem);line-height:1;letter-spacing:-.045em}
.form-hero h1,.resource-hero h1,.legal-hero h1{max-width:16ch!important;font-size:clamp(3rem,5.4vw,5.8rem)!important;line-height:.95!important;letter-spacing:-.055em!important}
.article-hero h1,.detail-hero h1{font-size:clamp(2.8rem,5vw,5.4rem)!important;line-height:.96!important}

.lab-console__metric span,.float-ui small,.lab-console__route,.service-selector__nav span,.service-preview__copy>p,.lab-method__items span,.project-cta__meta,.footer-kicker,.footer-nav h3,.service-hero-new__meta,.service-signal span,.scope-list span,.problem-outcome span,.service-process-new li>span,.related-services-new p{font-size:.72rem;line-height:1.35}
.float-ui--search strong,.float-ui--product b,.float-ui--ai strong,.service-selector__nav small,.service-preview__copy li,.service-preview__copy a,.lab-method__items p,.why-lab__list p,.service-process-new p,.scope-list p,.footer-brand p,.footer-nav a{font-size:.78rem;line-height:1.5}
.footer-bottom p,.footer-bottom a,.footer-cookie-button{font-size:.72rem;line-height:1.45}
.demo-phone>span,.preview-browser>div span,.demo-web small,.demo-shop small,.shop-product>span,.shop-cart>span,.preview-search>div small,.service-extensions__ai small,.lab-method__rail,.work-empty__visual span,.lab-console__bar,.lab-live,.hero-proof,.product-demo>header{font-size:.72rem;line-height:1.35}
.principle-diagram{font-size:.72rem;line-height:1.35}

/* Crisp CSS graphics replace scaled inline SVG artwork */
.data-chart{display:flex!important;height:7rem;margin-top:1.5rem!important;align-items:flex-end;gap:.55rem;border-bottom:2px solid #3d4248}
.data-chart i{display:block;flex:1;height:var(--value);background:linear-gradient(to top,rgba(8,127,112,.18),var(--accent));border-radius:2px 2px 0 0}
.about-collab__map>strong{position:absolute;right:1.5rem;bottom:1.5rem;z-index:2;font:700 .68rem/1 ui-monospace,monospace}
.collab-route{position:absolute;inset:4rem 3rem}
.collab-route i{position:absolute;display:block;height:2px;background:currentColor;transform-origin:left center}
.collab-route i:nth-child(1){width:56%;left:5%;bottom:23%;transform:rotate(-18deg)}
.collab-route i:nth-child(2){width:43%;left:60%;bottom:42%;transform:rotate(-24deg)}
.collab-route i:nth-child(3){display:none}
.collab-route b{position:absolute;width:.9rem;height:.9rem;background:currentColor;border:3px solid #d9d4ca;border-radius:50%;box-shadow:0 0 0 2px currentColor}
.collab-route b:nth-of-type(1){left:3%;bottom:20%}
.collab-route b:nth-of-type(2){left:59%;bottom:39%}
.collab-route::after{position:absolute;width:.9rem;height:.9rem;right:-.2rem;top:10%;background:currentColor;border:3px solid #d9d4ca;border-radius:50%;box-shadow:0 0 0 2px currentColor;content:""}

@media(min-width:1024px){
  .lab-hero__grid{grid-template-columns:1fr 1fr;gap:5rem}
  .service-hero-new__grid{grid-template-columns:1fr 1fr;gap:6rem}
  .about-hero-new__grid{grid-template-columns:1.05fr .95fr;gap:6rem}
  .editorial-heading{grid-template-columns:1.15fr .85fr;gap:5rem}
  .project-cta__main{grid-template-columns:1.15fr .85fr;gap:5rem}
}

@media(max-width:699px){
  .lab-hero h1{font-size:clamp(3rem,14vw,4.25rem);line-height:.93;letter-spacing:-.055em}
  .service-hero-new h1,.about-hero-new h1,.form-hero h1,.resource-hero h1,.legal-hero h1{font-size:clamp(2.8rem,12vw,4rem)!important;line-height:.96!important}
  .editorial-heading h2,.inside-lab h2,.why-lab__intro h2,.compact-process h2,.selected-work__head h2,.concise-faq h2,.project-cta h2{font-size:clamp(2.3rem,10vw,3.4rem);line-height:1}
  .float-ui--search{width:11rem}.float-ui--ai{width:12rem}
}
