/* Studio's editorial surfaces, scoped to marketing routes. Authentication and the
   independent trainer retain their own styles. Existing engineering SVGs survive. */
@font-face{font-family:'Geist Mono';src:url('/fonts/geist-mono-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
html body.locked:has(#loginGate .public-site.studio-public .public-page.active-public-page:not(#loginPanel):not(#signupPanel):not([data-public-page='checkout'])){
  background:#ededed!important;
  & #loginGate,& #loginGate .public-site.studio-public{background:#ededed!important}
}
html body.locked #loginGate .public-site.studio-public{
  --public-frame-max:1440px;--public-frame-gutter:48px;--public-frame-space:64px;
  --studio-paper:#ededed;--studio-ink:#212529;--studio-muted:#595f65;--studio-line:#ccc;--studio-area:#002fa7;--studio-navy:#081a2b;
  font-family:'Manrope',sans-serif;
  & .public-nav{background:var(--studio-navy)!important;border-bottom:1px solid #ffffff30!important;box-shadow:none!important;backdrop-filter:none!important}
  & .public-nav :is(a,button){font-family:'Geist Mono',monospace!important;font-weight:400!important;font-size:11px!important;letter-spacing:.04em!important;text-transform:uppercase!important;border-radius:0!important}
  & .public-nav .public-nav-login{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px!important;visibility:visible!important;opacity:1!important}
  & #publicNavLogin{background:var(--studio-area)!important;color:#fff!important;border:1px solid var(--studio-area)!important;box-shadow:none!important}
  & .public-nav nav #publicNavLogin{border-radius:2px!important}
  & .public-nav a{color:#fff!important;-webkit-text-fill-color:currentColor!important}
  & .public-scroll:not(:has(> :is(#loginPanel,#signupPanel,[data-public-page='checkout']).active-public-page)){background:var(--studio-paper)!important}
  & :is(#publicHome,.public-page):not(#loginPanel):not(#signupPanel):not(#checkoutPanel):not([data-public-page='checkout']){
    --home-night:#081a2b;--home-raised:#fff;--home-ink:#212529;--home-paper:#ededed;--home-muted:#595f65;--home-line:#ccc;--home-signal:#002fa7;--home-cobalt:#002fa7;--home-cobalt-hover:#00237d;
    --product-ink:#212529;--product-muted:#595f65;--product-line:#ccc;--product-paper:#fff;--product-cobalt:#002fa7;--product-action:#002fa7;--product-hover:#00237d;
    --resources-ink:#212529;--resources-muted:#595f65;--resources-line:#ccc;--resources-cobalt:#002fa7;
    --stage-text:#212529;--stage-muted:#595f65;--stage-line:#ccc;--stage-accent:#002fa7;--stage-bg:#ededed;--stage-panel:#fff;--stage-night:#ededed;--stage-raised:#fff;--stage-action:#002fa7;--stage-action-hover:#00237d;
    --process-ink:#ededed;--process-navy:#fff;--process-ground:#fff;--process-pale:#ededed;--process-steel:#595f65;--process-cobalt:#002fa7;--process-signal:#002fa7;
    background:var(--studio-paper)!important;color:var(--studio-ink)!important;border:0!important;box-shadow:none!important;color-scheme:light;
    & :is(h1,h2,h3,h4,h5,p,small,span,strong,dt,dd,li,a,summary,figcaption,label){-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
    & :is(h1,h2,h3,h4,h5){font-family:'Manrope',sans-serif!important;font-weight:400!important;color:var(--studio-ink)!important;letter-spacing:-.025em!important}
    & h1{font-size:clamp(40px,5.1vw,76px)!important;line-height:1.08!important}
    & h2{font-size:clamp(28px,3.1vw,44px)!important;line-height:1.15!important}
    & h3{font-size:22px!important;line-height:1.3!important}
    & :is(p,li,dd){font-family:'Manrope',sans-serif!important;font-weight:400!important;color:var(--studio-muted)!important;line-height:1.65!important}
    & :is(code,pre){font-family:'Geist Mono',monospace!important;color:var(--studio-ink)!important;-webkit-text-fill-color:currentColor!important;background:#fff!important;border-color:var(--studio-line)!important}
    & :is(strong,b){font-weight:400!important}
    & :is(.home-eyebrow,.home-section-index,.product-showcase-eyebrow,.resources-eyebrow,.resources-meta,.resources-guide-number,.public-clear-label,.public-clear-item-number,.public-clear-step-number,dt,label){font:400 11px/1.5 'Geist Mono',monospace!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--studio-muted)!important}
    & :is(button,.public-primary,.public-secondary,.home-button,.model-library-action,.resources-actions a,.product-showcase-index a){font:400 11px/1.5 'Geist Mono',monospace!important;letter-spacing:.04em!important;text-transform:uppercase!important;border-radius:0!important;box-shadow:none!important;min-height:44px}
    & :is(a,summary){color:var(--studio-area)!important}
    & :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--studio-area)!important;outline-offset:4px!important}
    & :is(a,button,summary)::after,& :is(a,button,summary)::before{content:none!important}
    & :is(.icon,.arrow,.resources-disclosure-icon,.product-showcase-tool-arrow,[data-lucide],a>svg,button>svg){display:none!important}
    & :is(.model-library-select,.model-library-action)>[aria-hidden='true']{display:none!important}
    & :is(.public-primary,.home-button-primary,.product-showcase-calculate,.model-library-action:not(.secondary)){background:var(--studio-area)!important;color:#fff!important;border:1px solid var(--studio-area)!important;box-shadow:none!important}
    & :is(.public-primary,.home-button-primary,.product-showcase-calculate,.model-library-action:not(.secondary)):hover{background:#00237d!important;color:#fff!important}
    & :is(.public-secondary,.home-button-secondary){background:#fff!important;border:1px solid var(--studio-line)!important;color:var(--studio-ink)!important}
    & :is(.home-text-link,.product-showcase-link){font:400 13px/1.5 'Manrope',sans-serif!important;text-decoration:underline!important;text-underline-offset:4px}
    & :is(input:not([type='range']),select,textarea){background:#fff!important;color:var(--studio-ink)!important;border:1px solid #8c8c8c!important;border-radius:0!important;font:400 15px/1.5 'Manrope',sans-serif!important}
    & :is(.home-editorial-hero,.home-workflow,.home-reactors,.home-start,.home-reference,.product-showcase-surface,.resources-surface,.public-clear-page-hero,.public-clear-section,.public-clear-callout){background:transparent!important;border-radius:0!important;box-shadow:none!important;background-image:none!important}
    & :is(.home-editorial-hero,.home-workflow,.home-reactors,.home-start,.home-reference)::before,& :is(.home-editorial-hero,.home-workflow,.home-reactors,.home-start,.home-reference)::after{content:none!important}
    & :is(.public-clear-callout,.product-showcase-geometry,.resources-column,[class$='-card']){background:#fff!important;border:1px solid var(--studio-line)!important;border-radius:0!important;box-shadow:none!important}
    & :is(.public-product-device,.home-product-device){background:transparent!important;box-shadow:none!important;filter:none!important}
    /* Hardware stays outside the complete capture; the notch occupies the top bezel. */
    & :is(.public-product-device-display,.home-device-screen){position:relative!important;display:block!important;box-sizing:border-box!important;width:92%!important;margin-inline:auto!important;padding:clamp(14px,1.8vw,20px) clamp(5px,.8vw,10px) clamp(6px,.9vw,11px)!important;border:1px solid #73777d!important;border-radius:clamp(12px,1.6vw,20px) clamp(12px,1.6vw,20px) 5px 5px!important;background:linear-gradient(145deg,#33363b,#121416 45%,#25282c)!important;box-shadow:0 16px 28px -18px #081a2b66,inset 0 1px 0 #ffffff36,inset 0 0 0 2px #0a0b0d!important;overflow:visible!important}
    & :is(.public-product-device-display,.home-device-screen)::before{content:''!important;position:absolute;top:2px;left:50%;width:12%;max-width:100px;height:clamp(9px,1.15vw,14px);border-radius:0 0 5px 5px;background:#08090b;transform:translateX(-50%);pointer-events:none}
    & :is(.public-product-device-display,.home-device-screen)::after{content:''!important;position:absolute;top:5px;left:50%;width:3px;height:3px;border:1px solid #343b43;border-radius:50%;background:#172432;transform:translateX(-50%);pointer-events:none}
    & .public-product-device-camera{display:none!important}
    & :is(.public-product-device-base,.home-device-base){position:relative!important;display:block!important;box-sizing:border-box!important;width:100%!important;height:clamp(9px,1.4vw,17px)!important;margin:-1px 0 0!important;border:1px solid #969ba2!important;border-top-color:#e0e3e7!important;border-radius:2px 2px 12% 12% / 2px 2px 80% 80%!important;background:linear-gradient(180deg,#e0e3e7 0%,#b6bbc2 34%,#969ca5 72%,#c3c8cf 90%,#747b85 100%)!important;box-shadow:0 12px 20px -12px #081a2b66,inset 0 1px 0 #ffffffb3!important}
    & :is(.public-product-device-base,.home-device-base)::before{content:''!important;position:absolute;top:-1px;left:41%;width:18%;height:35%;border-radius:0 0 5px 5px;background:linear-gradient(180deg,#8c939d,#c2c7ce)!important;pointer-events:none}
    & :is(.public-product-device-base,.home-device-base)::after{content:'';position:absolute;top:-3px;left:7%;width:86%;height:2px;border-radius:2px;background:linear-gradient(90deg,#555a62,#171a1e 15%,#171a1e 85%,#555a62);pointer-events:none}
    & .home-device-base>span{display:none!important}
    & :is(.home-device-screen,.public-product-device-display) img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:2px!important;filter:none!important}
    & figcaption{color:var(--studio-muted)!important;background:transparent!important;font:400 12px/1.6 'Manrope',sans-serif!important}
    & figcaption :is(span,small,strong,b){font-family:inherit!important}
    & :is(.public-clear-details,.resources-disclosure,.resources-row,.resources-guide-row){border-color:var(--studio-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
    & :is(.technical-guide-toc,.public-page-index,.intent-page-index) strong{background:transparent!important;color:var(--studio-ink)!important;font:400 11px/1.5 'Geist Mono',monospace!important}
    & .product-showcase-tool-list button{background:transparent!important;color:var(--studio-ink)!important;border:0!important;border-bottom:1px solid var(--studio-line)!important}
    & .product-showcase-tool-list button:hover{background:#fff!important;color:var(--studio-area)!important;border-bottom-color:var(--studio-area)!important}
    & .product-showcase-tool-list button[aria-pressed='true']{background:#fff!important;color:var(--studio-area)!important;box-shadow:inset 0 -2px 0 var(--studio-area)!important}
    & .product-showcase-tool-list button :is(strong,small){font-family:'Manrope',sans-serif!important;color:inherit!important;text-transform:none!important;letter-spacing:0!important}
    & .product-showcase-hotspots button{background:var(--studio-area)!important;color:#fff!important;border-radius:0!important}
    & .product-showcase-inspector{background:#fff!important;border-left:2px solid var(--studio-area)!important}
    & .resources-actions a{background:#fff!important;color:var(--studio-area)!important;border:1px solid var(--studio-line)!important;padding:10px 12px!important;text-decoration:none!important}
    & .resources-row:focus-within,& .resources-disclosure>summary:is(:hover,:focus-visible){background:#fff!important}
    & .resources-column{padding:28px!important}
    & .resources-download-library{gap:24px!important}
    & .home-hero-grid{grid-template-columns:1fr!important;gap:40px!important;padding-block:64px!important}
    & .home-hero-copy{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;gap:16px 48px!important;max-width:none!important}
    & .home-hero-copy>.home-eyebrow{grid-column:1/-1}
    & #home-title{max-width:22ch!important;margin:0!important}
    & .home-title-emphasis{color:inherit!important;font-style:normal!important}
    & .home-hero-description{display:block!important;align-self:end!important;padding:0!important;margin:0!important;max-width:52ch!important}
    & .home-hero-description .home-actions{margin-top:28px!important;gap:20px!important;justify-content:flex-start!important}
    & .home-lead{font-size:16px!important}
    & .home-product-evidence{width:100%!important;max-width:none!important;margin:0!important}
    & .home-product-device{width:100%!important;max-width:1200px!important;margin-inline:auto!important}
    & .home-capabilities{gap:24px!important}
    & .home-capabilities article{padding:28px 0!important;background:transparent!important;border:0!important;border-top:1px solid var(--studio-line)!important;border-radius:0!important;box-shadow:none!important}
    & .home-start{background:var(--studio-paper)!important}
    & .abv{--abv-night:#081a2b;--abv-paper:#fff;--abv-muted:#bdcddd;--abv-signal:#9bbcff;background:#081a2b!important;color:#fff!important;border-radius:2px!important}
    & .abv :is(p,label,small,figcaption,.abv-kicker){color:#bdcddd!important}
    & .abv button{color:#e3edf7!important;background:transparent!important;border-color:#8094aa!important}
    & .abv button:is(:hover,:focus-visible,[aria-pressed='true']){color:#081a2b!important;background:#fff!important}
    & .abv button span{color:inherit!important}
    & .abv :is(button,input):focus-visible{outline-color:#9bbcff!important}
    & .home-experience{box-sizing:border-box;background:#fff!important;border:1px solid var(--studio-line)!important;padding:24px clamp(20px,2vw,32px)!important}
    & #home-experience-title,& .home-experience-heading p{color:var(--studio-ink)!important}
    & .home-experience-logos{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:24px!important}
    & .home-experience-logos img{filter:brightness(0)!important;opacity:1!important}
    & .home-experience-logos img.home-experience-logo-lmu{filter:grayscale(1) contrast(8)!important}
    & :is(.product-showcase-hero,.resources-hero,.public-clear-page-hero){padding-block:64px!important}
    & :is(.product-showcase-heading,.public-clear-section){gap:48px!important}
    & .resources-hero{gap:40px!important}
    & .resources-hero h1{max-width:24ch!important}
    & .home-footer{background:var(--studio-navy)!important;color:#fff!important}
    & .home-footer :is(p,a,small){color:#fff!important}
  }
  & main.public-scroll:not(:has(> :is(#loginPanel,#signupPanel,[data-public-page='checkout']).active-public-page))>footer.public-route-footer{background:var(--studio-navy)!important;border-top:1px solid #ffffff30!important}
  & .public-route-footer nav strong{font:400 11px/1.5 'Geist Mono',monospace!important;text-transform:uppercase;letter-spacing:.04em;color:#fff!important}
  & .public-route-footer a:focus-visible{outline-color:#fff!important}
}
@media(max-width:1199px){
  html body.locked #loginGate .public-site.studio-public :is(#publicHome,.public-page):not(#loginPanel):not(#signupPanel):not(#checkoutPanel):not([data-public-page='checkout']) .home-experience-logos{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:800px){
  html body.locked #loginGate .public-site.studio-public{
    --public-frame-gutter:20px;--public-frame-space:40px;
    & .public-nav{padding-inline:20px!important;gap:12px!important}
    & .public-nav nav{gap:8px!important}
    & .public-brand{max-width:110px!important;flex-shrink:1!important}
    & .public-brand img{max-width:110px!important;height:auto!important}
    & #publicNavLogin{padding-inline:10px!important;white-space:nowrap!important}
    & :is(#publicHome,.public-page):not(#loginPanel):not(#signupPanel):not(#checkoutPanel):not([data-public-page='checkout']){
      --home-gutter:20px;--home-section-space:40px;
      & :is(.home-hero-grid,.product-showcase-hero,.resources-hero,.public-clear-page-hero){padding-block:40px!important}
      & .home-hero-copy{grid-template-columns:1fr!important;gap:24px!important}
      & .home-hero-description{max-width:none!important}
      & :is(.home-capabilities,.product-showcase-heading,.product-showcase-study-copy,.product-showcase-explorer-copy,.public-clear-section){grid-template-columns:1fr!important;gap:24px!important}
      & .product-showcase-study-copy>*{grid-column:auto!important;grid-row:auto!important}
      & .product-showcase-tool-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
      & .resources-column{padding:20px!important}
      & .home-experience-logos{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
      & :is(a,button,summary){min-height:44px}
    }
  }
}
@media(prefers-reduced-motion:reduce){
  html body.locked #loginGate .public-site.studio-public .public-product-device{transform:none!important;transition:none!important}
}
@media(max-width:380px){
  html body.locked #loginGate .public-site.studio-public{
    & .public-nav nav{gap:6px!important}
    & .public-nav nav :is(#publicNavLogin,.public-menu-toggle){padding-inline:6px!important}
    & .public-brand{width:76px!important;max-width:100%!important}
    & .public-brand :is(.brand-lockup-copy,.brand-wordmark-image,img){width:100%!important;max-width:100%!important}
  }
}
