/* Vis-Sol Spatial Production v1 — reversible presentation layer */
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact){--sp-bg:#02070c;--sp-bg2:#041018;--sp-bg3:#071722;--sp-ink:#f4fbff;--sp-muted:#91a5ad;--sp-muted2:#607985;--sp-cyan:#18e5e8;--sp-cyan2:#79fff6;--sp-line:rgba(121,255,246,.16);--sp-line2:rgba(255,255,255,.1);--sp-ease:cubic-bezier(.22,.61,.36,1);background:var(--sp-bg);color:var(--sp-ink);overflow-x:hidden}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact)::before{content:"";position:fixed;inset:0;z-index:-5;pointer-events:none;background-image:linear-gradient(rgba(24,229,232,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(24,229,232,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 80%)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .container{width:min(calc(100% - clamp(36px,8vw,128px)),1320px);max-width:none}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) #main-content{background:transparent}

/* top shell */
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact)>header.nav{position:sticky;top:0;z-index:120;background:rgba(2,7,12,.94);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px);box-shadow:none}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact)>header.nav.scrolled{background:rgba(2,7,12,.985);border-color:rgba(121,255,246,.15);box-shadow:0 12px 34px rgba(0,0,0,.24)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-inner{min-height:76px;gap:24px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .brand-mark{width:44px;height:44px;filter:drop-shadow(0 0 12px rgba(24,229,232,.2))}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .brand-copy strong{font-size:.98rem;letter-spacing:.08em}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-links{gap:18px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group{position:relative;display:flex;align-items:center}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group>a{padding:25px 0 23px;border-bottom:1px solid transparent;background:none!important;border-radius:0!important;font-size:.88rem;font-weight:750;color:#b8c7cc}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group.active>a,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group>a:hover{color:#fff;border-bottom-color:var(--sp-cyan)}
.spatial-nav-expander{width:28px;height:32px;padding:0;border:0;background:transparent;color:#66858e;font:inherit;font-size:.95rem;cursor:pointer;transition:.2s var(--sp-ease)}
.spatial-nav-group.is-open .spatial-nav-expander{transform:rotate(180deg);color:var(--sp-cyan)}
.spatial-nav-submenu{position:absolute;z-index:150;left:-18px;top:calc(100% - 4px);min-width:250px;max-width:330px;padding:10px;background:rgba(3,13,19,.99);border:1px solid rgba(121,255,246,.18);box-shadow:0 22px 50px rgba(0,0,0,.42);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s var(--sp-ease),transform .24s var(--sp-ease),visibility .2s}
.spatial-nav-submenu:before{content:"";position:absolute;left:17px;top:-1px;width:44px;height:1px;background:var(--sp-cyan);box-shadow:0 0 14px rgba(24,229,232,.35)}
.spatial-nav-submenu a{display:block;padding:10px 11px;border-bottom:1px solid rgba(255,255,255,.065);color:#9eb2b8;font-size:.74rem;font-weight:650;line-height:1.25}
.spatial-nav-submenu a:last-child{border-bottom:0}.spatial-nav-submenu a:hover,.spatial-nav-submenu a:focus-visible{color:#fff;background:rgba(24,229,232,.06)}
.spatial-nav-group:hover>.spatial-nav-submenu,.spatial-nav-group:focus-within>.spatial-nav-submenu,.spatial-nav-group.is-open>.spatial-nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-cta{border:1px solid rgba(121,255,246,.42)!important;background:linear-gradient(135deg,rgba(24,229,232,.08),rgba(24,229,232,.015))!important;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px));border-radius:0!important;padding:11px 15px!important;color:#eef8f9!important}

/* typography and primary rhythm */
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .eyebrow{color:var(--sp-cyan);font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) h1,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.06em;text-wrap:balance}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 72% 38%,rgba(24,229,232,.12),transparent 30%),linear-gradient(180deg,#02070c,#02070c 82%,#031018);border-bottom:1px solid var(--sp-line2)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero{min-height:calc(100svh - 76px);display:flex;align-items:center}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero-grid{padding:clamp(80px,9vw,140px) 0;gap:clamp(46px,6vw,92px);align-items:center}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero h1{font-size:clamp(4.2rem,7.5vw,8.2rem);line-height:.84;font-weight:520;max-width:9.7ch}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero .lead{max-width:720px;color:#b5c5c9;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.72}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .architecture{background:linear-gradient(180deg,rgba(7,23,34,.74),rgba(3,12,18,.86));border:1px solid var(--sp-line);box-shadow:none;border-radius:0;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .journey-list span{border-color:var(--sp-line)!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .proof-strip{background:#02070c;border-block:1px solid var(--sp-line2)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .proof-grid>*{border-color:var(--sp-line2)!important}

:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero>.container{min-height:700px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.72fr);gap:70px;align-items:center;padding-block:clamp(86px,10vw,138px)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero-copy{max-width:780px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero h1{font-size:clamp(3.8rem,6.6vw,7.4rem);line-height:.86;font-weight:520;margin:.2em 0 .28em}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero .lead{color:#b5c5c9;line-height:1.72}

:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section{padding:clamp(88px,9vw,145px) 0;background:transparent}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-tint{background:#041018}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.55fr);gap:60px;align-items:end;margin-bottom:54px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-head h2{font-size:clamp(3rem,5.7vw,6.4rem);line-height:.9;font-weight:520;margin:.12em 0 0}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-head>p{color:var(--sp-muted);line-height:1.75}

/* flatten old cards into spatial rails */
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .grid{gap:0!important;border-top:1px solid var(--sp-line);border-left:1px solid var(--sp-line)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .card{border-radius:0!important;background:linear-gradient(180deg,rgba(7,23,34,.48),rgba(3,12,18,.6))!important;border:0!important;border-right:1px solid var(--sp-line)!important;border-bottom:1px solid var(--sp-line)!important;box-shadow:none!important;padding:30px 26px!important;min-height:280px;display:flex;flex-direction:column}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .card h3{font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.04em;line-height:1.08;margin-top:auto}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .card p{color:var(--sp-muted)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .offer-number{font-size:clamp(3.2rem,4.5vw,5rem);line-height:.86;color:#0d3943;font-weight:850;letter-spacing:-.08em}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .card-link,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .text-link{color:var(--sp-cyan)!important;font-weight:800}

:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .btn{border-radius:0!important;min-height:50px;padding-inline:22px;clip-path:polygon(0 0,calc(100% - 11px) 0,100% 11px,100% 100%,11px 100%,0 calc(100% - 11px));font-size:.75rem;font-weight:850;box-shadow:none!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .btn-primary{background:linear-gradient(135deg,var(--sp-cyan),#50dfe5)!important;border-color:transparent!important;color:#001012!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .btn-secondary{background:transparent!important;border-color:rgba(121,255,246,.34)!important;color:#dce9eb!important}

:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .case-panel{border-radius:0!important;border:1px solid var(--sp-line)!important;background:#030b10!important;box-shadow:none!important;overflow:hidden}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .case-stat{border-color:var(--sp-line2)!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .split{gap:clamp(44px,6vw,82px)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .stat-box,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .entity-map{border-radius:0!important;background:linear-gradient(180deg,rgba(7,23,34,.6),rgba(3,12,18,.8))!important;border-color:var(--sp-line)!important;box-shadow:none!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .cta-panel{border-radius:0!important;border:1px solid rgba(121,255,246,.24)!important;background:linear-gradient(135deg,rgba(24,229,232,.065),rgba(3,12,18,.92))!important;box-shadow:none!important}

/* footer */
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) footer.footer{background:#02070c;border-top:1px solid var(--sp-line2)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .footer-top{border-color:var(--sp-line)!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .footer-column a,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .footer-bottom a{color:#8ea4ab}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .footer-column a:hover,
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .footer-bottom a:hover{color:var(--sp-cyan)}

@media(max-width:1160px){
.spatial-nav-expander{display:block;position:absolute;right:0;top:10px}.spatial-nav-submenu{position:static;display:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;min-width:0;max-width:none;width:100%;border:0;border-left:1px solid var(--sp-line);box-shadow:none;background:transparent;margin:0 0 8px 14px;padding:0 0 0 10px}.spatial-nav-group.is-open>.spatial-nav-submenu{display:block}.spatial-nav-submenu:before{display:none}.spatial-nav-submenu a{padding:9px 8px;font-size:.78rem}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group{display:block;position:relative}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .nav-group>a{padding:13px 42px 13px 0!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-head{grid-template-columns:1fr;gap:22px}
}
@media(max-width:720px){
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .container{width:min(calc(100% - 36px),1320px)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .brand-mark{width:38px;height:38px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero{min-height:auto}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero-grid{padding:88px 0 96px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .hero h1{font-size:clamp(3.6rem,17vw,5.6rem);line-height:.87}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero>.container{min-height:640px;display:block;padding-block:100px 90px}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .page-hero h1{font-size:clamp(3.4rem,15vw,5rem);line-height:.88}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section{padding:82px 0}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .section-head h2{font-size:clamp(2.9rem,13vw,4.6rem)}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .grid{grid-template-columns:1fr!important}
:is(body.page-home,body.page-offer,body.page-ai-platform,body.page-deployments,body.page-knowledge-hub,body.page-tools,body.page-about,body.page-author,body.page-contact) .card{min-height:230px!important}
}
@media(prefers-reduced-motion:reduce){.spatial-nav-submenu,.spatial-nav-expander{transition:none!important}}


/* 2026-09-25 author/mobile shell correction */
@media(max-width:720px){
  body.page-author .nav-inner{
    width:calc(100% - 24px)!important;
    min-height:60px!important;
    gap:8px!important;
    padding:0!important;
  }
  body.page-author .brand-cluster{min-width:0!important;gap:8px!important}
  body.page-author .brand-copy small{display:none!important}
  body.page-author .menu-btn{
    min-width:72px!important;
    width:auto!important;
    height:40px!important;
    margin-left:auto!important;
    padding:0 10px!important;
    gap:8px!important;
  }
  body.page-author .breadcrumbs{
    position:relative!important;
    top:auto!important;
    padding-top:26px!important;
  }
  body.page-author .breadcrumbs + .page-hero{padding-top:0!important}
  body.page-author .page-hero>.container{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    padding-block:38px 64px!important;
  }
  body.page-author .page-hero h1{
    font-size:clamp(3rem,14vw,4.25rem)!important;
    line-height:.89!important;
  }
  body.page-author .page-hero .reveal{
    opacity:1!important;
    transform:none!important;
  }
  body.page-author .author-portrait{
    width:100%!important;
    max-width:360px!important;
    margin:0 auto!important;
  }
}
