@font-face{font-family:Manrope;src:url('assets/fonts/manrope-latin-wght-normal.woff2') format('woff2-variations'),url('assets/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
/* NOMALIX polish layer — loaded last. Small, targeted changes only. */

/* Home headline: Better systems, better health */
.opening .opening-copy h1.serif-hero{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;letter-spacing:-.015em;line-height:.96;font-size:clamp(64px,7.6vw,124px);max-width:none}
.opening .opening-copy h1.serif-hero em{font-style:italic;color:#a9d4ff}
@media(max-width:900px){.opening .opening-copy h1.serif-hero{font-size:clamp(52px,11vw,76px)}}
@media(max-width:560px){.opening .opening-copy h1.serif-hero{font-size:clamp(46px,13vw,60px)}}

/* Cursor: light only — no trail line, no dot */
#cursor-trail,.cursor-dot{display:none!important}

/* Accessibility: simple round button + Display preferences panel */
.access.access-round{width:58px;height:58px;padding:0;border-radius:50%;justify-content:center;gap:0;background:#1f6a8c;color:#fff;border:2px solid rgba(255,255,255,.75);box-shadow:0 10px 26px rgba(8,40,62,.32)}
.access.access-round svg{width:30px;height:30px;stroke-width:1.9}
.access.access-round span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.access.access-round:hover{background:#185673}
.prefs-panel{position:fixed;left:22px;bottom:92px;z-index:80;width:min(300px,calc(100vw - 44px));padding:22px 20px 20px;border-radius:22px;background:#fff;color:#14283a;box-shadow:0 24px 60px rgba(8,30,50,.28);font-family:'DM Sans',Inter,system-ui,sans-serif}
.prefs-panel[hidden]{display:none}
.prefs-panel strong{display:block;color:#14283a;font-size:19px;font-weight:700;margin:0 2px 14px}
.prefs-panel button{display:block!important;width:100%!important;margin:0 0 10px!important;padding:14px 12px!important;border-radius:12px!important;border:1px solid #cfdfe6!important;background:#ebf3f7!important;color:#14283a!important;box-shadow:none!important;backdrop-filter:none!important;font:500 17px 'DM Sans',Inter,system-ui,sans-serif!important;text-align:center!important;cursor:pointer;transform:none!important}
.prefs-panel button:last-child{margin-bottom:0}
.prefs-panel button[aria-pressed=true]{background:#1f6a8c!important;border-color:#1f6a8c!important;color:#fff!important}
.prefs-panel button:focus-visible{outline:3px solid #1f6a8c;outline-offset:2px}

/* Implementation Perspectives: square image cards, side by side */
.implementation-notes .pgrid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.pgrid.pgrid-more{display:grid;gap:40px;grid-template-columns:repeat(3,minmax(0,1fr))}
.psq{position:relative;display:block;aspect-ratio:1/1;border-radius:24px;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate;box-shadow:0 18px 44px rgba(20,40,70,.14);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.psq img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.psq{background:#eef4f8;border:1px solid rgba(20,50,80,.08)}
.psq:hover,.psq:focus-visible{transform:translateY(-8px);box-shadow:0 30px 60px rgba(20,40,70,.24)}
.psq:hover img{transform:scale(1.06)}
.psq:focus-visible{outline:3px solid #2f4fd6;outline-offset:4px}
.psq-body{position:absolute;left:14px;right:14px;bottom:14px;padding:20px 20px 18px;border-radius:18px;background:rgba(255,255,255,.78);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(10,40,70,.08)}
.psq-tag{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#2f4fd6;margin-bottom:10px}
.psq h3{font-family:Manrope,'DM Sans',system-ui,sans-serif!important;font-weight:400!important;font-size:clamp(24px,2.1vw,31px)!important;line-height:1.08!important;margin:0 0 10px!important;color:#111a24!important;letter-spacing:-.005em}
.psq p{margin:0 0 12px;font-size:14px!important;line-height:1.5!important;color:#4c5966!important}
.psq-read{font-size:13px;font-weight:600;color:#111a24;display:inline-flex;gap:8px;align-items:center}
.p-empty{grid-column:1/-1;color:var(--muted)}
@media(max-width:1000px){.implementation-notes .pgrid,.pgrid.pgrid-more{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}
@media(max-width:620px){.implementation-notes .pgrid,.pgrid.pgrid-more{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:82%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;-webkit-overflow-scrolling:touch}.psq{scroll-snap-align:start}}

/* Article page */
.perspective-article{max-width:1180px;margin:0 auto;padding:130px 5vw 40px}
.perspective-article .back{display:inline-block;font-size:13px;font-weight:600;color:var(--accent);margin-bottom:34px;text-decoration:none}
.perspective-article .meta{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 18px;display:flex;gap:14px;flex-wrap:wrap}
.perspective-article h1{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;font-size:clamp(44px,5.6vw,84px);line-height:1;letter-spacing:-.015em;margin:0 0 22px;max-width:16ch;color:var(--ink)}
.perspective-article .lede{font-size:20px;line-height:1.6;color:var(--muted);max-width:680px;margin:0}
.perspective-hero{margin:48px 0 0;aspect-ratio:21/9;border-radius:28px;overflow:hidden}
.perspective-hero img{width:100%;height:100%;object-fit:cover;display:block}
.perspective-body{max-width:700px;margin:64px auto 30px;font-size:18px;line-height:1.8;color:var(--ink)}
.perspective-body h2{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;font-size:34px;line-height:1.12;margin:48px 0 14px;letter-spacing:-.005em}
.perspective-body p,.perspective-body li{color:var(--muted)}
.perspective-body strong{color:var(--ink)}
.perspective-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.perspective-body code{font-size:.88em;background:var(--panel);padding:.1em .4em;border-radius:6px}
.perspective-body img{max-width:100%;border-radius:18px}
.perspective-more{max-width:1180px;margin:0 auto;padding:40px 5vw 110px}
.perspective-more h2{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;font-size:clamp(34px,3.6vw,52px);margin:0 0 28px;color:var(--ink)}
@media(max-width:700px){.perspective-article{padding-top:110px}.perspective-hero{aspect-ratio:4/3;border-radius:20px}.perspective-body{font-size:17px;margin-top:44px}}

/* Home closing CTA: smaller */
body .closing h2{font-size:clamp(32px,3.4vw,50px)!important;line-height:1.12!important;letter-spacing:-.035em!important}
@media(max-width:700px){body .closing h2{font-size:30px!important}}


/* Accessibility button: always bottom-left, panel directly above it */
.access.access-round{position:fixed!important;left:22px!important;bottom:22px!important;right:auto!important;top:auto!important;z-index:90!important;margin:0!important}
.prefs-panel{left:22px!important;bottom:94px!important}
@media(max-width:600px){.access.access-round{left:14px!important;bottom:14px!important;width:52px;height:52px}.prefs-panel{left:14px!important;bottom:78px!important}}

/* Footer */
.footer{background:#08121e!important;color:#c9d6e2!important;padding:0!important}
.nf{width:min(1320px,calc(100% - 12vw));margin:0 auto;padding:90px 0 60px;display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:48px}
.nf .logo{font-size:34px!important;color:#fff!important;letter-spacing:.02em;display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.nf-brand p{margin:18px 0 26px;max-width:320px;font-size:15px;line-height:1.6;color:#93a7b8}
.nf-cta{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;color:#08121e!important;background:linear-gradient(180deg,#fff,#dfe9f2);font-weight:600;font-size:14px;text-decoration:none;box-shadow:inset 0 1px 0 #fff}
.nf-col h4{font:600 11px Inter,system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#6f8aa0;margin:6px 0 20px}
.nf-col a,.nf-col button{display:block;margin:0 0 13px;padding:0;background:none;border:0;font:400 15px Inter,system-ui,sans-serif;color:#dbe5ee;text-decoration:none;cursor:pointer;text-align:left}
.nf-col a:hover,.nf-col button:hover{color:#8fd9f2}
.nf-bottom{width:min(1320px,calc(100% - 12vw));margin:0 auto;padding:22px 0 30px;border-top:1px solid #1b2a3a;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:#7d91a3}
.footer .footer-line,.footer .footer-copyright{display:none!important}
@media(max-width:900px){.nf{grid-template-columns:1fr 1fr;gap:36px}.nf-brand{grid-column:1/-1}}
@media(max-width:520px){.nf{grid-template-columns:1fr;padding-top:64px}}

/* Cookie notice */
.cookie{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:95;width:min(620px,calc(100vw - 180px));display:flex;align-items:center;gap:18px;padding:16px 16px 16px 22px;border-radius:20px;background:rgba(255,255,255,.86);backdrop-filter:blur(20px) saturate(170%);-webkit-backdrop-filter:blur(20px) saturate(170%);border:1px solid rgba(255,255,255,.95);box-shadow:0 20px 50px rgba(8,30,50,.22);color:#14283a;font:400 14px/1.5 Inter,system-ui,sans-serif}
.cookie[hidden]{display:none}
.cookie p{margin:0;flex:1}
.cookie a{color:#2f4fd6;text-decoration:underline;text-underline-offset:3px}
.cookie button{flex:none;padding:11px 20px;border-radius:999px;border:0;background:#0f2238;color:#fff;font:600 14px Inter,system-ui,sans-serif;cursor:pointer}
.cookie button:focus-visible{outline:3px solid #2f4fd6;outline-offset:2px}
@media(max-width:760px){.cookie{left:14px;right:14px;transform:none;width:auto;bottom:78px;flex-direction:column;align-items:stretch;gap:12px}}

/* Legal pages */
.legal{width:min(760px,calc(100% - 40px));margin:0 auto;padding:clamp(120px,15vh,170px) 0 100px;color:var(--ink)}
.legal .legal-cap{font:500 12px 'DM Sans',Inter,system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.legal h1{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;font-size:clamp(48px,6vw,84px);line-height:1;letter-spacing:-.015em;margin:0 0 18px;color:var(--ink)}
.legal .updated{color:var(--muted);font-size:14px;margin:0 0 48px}
.legal h2{font-family:Manrope,'DM Sans',system-ui,sans-serif;font-weight:400;font-size:30px;line-height:1.15;margin:46px 0 12px;color:var(--ink)}
.legal p,.legal li{font-size:16.5px;line-height:1.75;color:var(--muted)}
.legal strong{color:var(--ink)}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.legal ul{padding-left:1.2em}

/* Site typography: Manrope headings, DM Sans text — no serif, no italics */
.opening .opening-copy h1.serif-hero{font-family:Manrope,'DM Sans',system-ui,sans-serif!important;font-weight:700!important;letter-spacing:-.055em!important;line-height:.98!important;font-size:clamp(60px,7vw,116px)!important}
.opening .opening-copy h1.serif-hero em{font-style:normal!important;color:#7fd3ec!important}
.psq h3{font-weight:700!important;letter-spacing:-.035em!important;font-size:clamp(20px,1.7vw,25px)!important;line-height:1.15!important}
.perspective-article h1,.legal h1{font-weight:700;letter-spacing:-.05em;line-height:1.02}
.perspective-body h2,.legal h2,.perspective-more h2{font-weight:700;letter-spacing:-.035em}
.perspective-body h2,.legal h2{font-size:26px}

/* Cookie notice: compact, and never hides the footer */
.cookie{width:auto!important;max-width:min(560px,calc(100vw - 200px));padding:10px 10px 10px 18px!important;gap:14px!important;font-size:13px!important;border-radius:999px!important}
.cookie button{padding:9px 18px!important;font-size:13px!important}
html.cookie-open .footer{padding-bottom:96px!important}
@media(max-width:760px){.cookie{max-width:none;left:78px!important;right:14px!important;bottom:14px!important;border-radius:18px!important;flex-direction:row!important;align-items:center!important;padding:10px 10px 10px 14px!important;font-size:12px!important}html.cookie-open .footer{padding-bottom:110px!important}html.cookie-open .chat-launch{bottom:84px!important}}
@media(max-width:760px){.cookie .ck-long{display:none}.cookie{left:76px!important;right:12px!important;padding:8px 8px 8px 14px!important;border-radius:999px!important}html.cookie-open .footer{padding-bottom:80px!important}}
.nf-col button{background:none!important;border:0!important;box-shadow:none!important;color:#dbe5ee!important;-webkit-user-select:none;user-select:none}
@media(max-width:760px){.footer{padding-bottom:96px!important}html.cookie-open .footer{padding-bottom:160px!important}}

/* Leadership credentials */
.creds{width:min(1320px,calc(100% - 12vw));margin:0 auto;padding:40px 0 120px}
.creds h2{font:700 clamp(36px,3.6vw,56px)/1.05 Manrope,'DM Sans',sans-serif;letter-spacing:-.05em;margin:0 0 36px;color:var(--ink)}
.creds-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 48px}
.creds h3{font:600 12px 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}
.creds p{margin:0 0 8px;font-size:16px;line-height:1.6;color:var(--muted)}
@media(max-width:900px){.creds-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.creds-grid{grid-template-columns:1fr}}

/* ===== Insights opening: Manrope heading + natural laptop ===== */
.insights-opening h1{font-size:clamp(42px,4.4vw,68px)!important;font-family:Manrope,'DM Sans',system-ui,sans-serif!important;font-weight:700!important;letter-spacing:-.05em!important;line-height:1.02!important}
.insights-opening h1 em{font-style:normal!important;color:#4a8fc0}
body.dark .insights-opening h1 em{color:#7fd3ec}
.insights-opening{min-height:min(640px,calc(100svh - 88px))!important;align-items:center!important}
.insights-device{display:flex;justify-content:center;align-items:center}
.insights-css-laptop{min-height:0!important;aspect-ratio:auto!important;height:clamp(300px,38vw,470px)!important;width:100%!important;max-width:620px!important}
.insights-css-laptop .l3-scene{perspective:2600px!important;perspective-origin:50% 20%!important}
.insights-css-laptop .l3-rig,
.insights-css-laptop.is-open .l3-rig{top:62%!important;top:66%!important;transform:scale(var(--ls,.62)) rotateX(64deg) rotateZ(-14deg)!important}
.insights-css-laptop .l3-base{margin:0!important}
.insights-css-laptop .l3-lid,
.insights-css-laptop.is-open .l3-lid{transform:rotateX(-108deg)!important}
@media(max-width:1100px){.insights-css-laptop{--ls:.52}}
@media(max-width:900px){.insights-css-laptop{height:330px!important;--ls:.5}}
@media(max-width:560px){.insights-css-laptop{height:250px!important;--ls:.38}}

/* ===== Cookie card: small, bottom-right, above Ask Nomalix ===== */
html.cookie-open .footer{padding-bottom:0!important}
.cookie.ck-card{position:fixed!important;left:auto!important;right:22px!important;bottom:86px!important;transform:none!important;width:300px!important;max-width:calc(100vw - 44px)!important;display:block!important;padding:18px 18px 16px!important;border-radius:18px!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(15,34,56,.08)!important;box-shadow:0 24px 60px -24px rgba(10,25,45,.45)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#1b2733;font:400 13.5px/1.5 'DM Sans',Inter,system-ui,sans-serif!important;z-index:96}
.cookie.ck-card[hidden]{display:none!important}
.ck-card .ck-t{margin:0 0 6px!important;font:700 16px Manrope,'DM Sans',sans-serif!important;letter-spacing:-.01em;color:#0f1a26}
.ck-card .ck-x{margin:0 0 14px!important;color:#4f5c69;font-size:13.5px!important;line-height:1.5!important}
.ck-card a{color:#2f4fd6}
.ck-card .ck-b{display:flex;gap:8px}
.ck-card .ck-b button{flex:1;padding:10px 12px!important;border-radius:12px!important;font:600 13.5px 'DM Sans',Inter,sans-serif!important;cursor:pointer;box-shadow:none!important;transform:none!important}
.ck-card [data-ck=declined]{background:#eef1f4!important;color:#1b2733!important;border:1px solid #dfe4ea!important}
.ck-card [data-ck=accepted]{background:#0f2238!important;color:#fff!important;border:1px solid #0f2238!important}
body.dark .cookie.ck-card{background:rgba(16,24,34,.94)!important;border-color:rgba(255,255,255,.1)!important;color:#dbe5ee}
body.dark .ck-card .ck-t{color:#fff}body.dark .ck-card .ck-x{color:#a6b4c2}body.dark .ck-card a{color:#9bb8ff}
body.dark .ck-card [data-ck=declined]{background:rgba(255,255,255,.06)!important;color:#dbe5ee!important;border-color:rgba(255,255,255,.12)!important}
@media(max-width:760px){.cookie.ck-card{right:12px!important;left:auto!important;bottom:80px!important;width:280px!important}html.cookie-open .footer,.footer{padding-bottom:0!important}}

/* ===== Footer: slimmer, no CTA, no bottom rule ===== */
.nf{padding:56px 0 24px!important}
.nf-cta{display:none!important}
.nf-brand p{margin:14px 0 0!important}
.nf-bottom{border-top:0!important;padding:8px 0 26px!important}
@media(max-width:760px){.footer{padding-bottom:84px!important}}

/* ===== About page ===== */
.about{--h:Manrope,'DM Sans',system-ui,sans-serif;--b:'DM Sans',Inter,system-ui,sans-serif;font-family:var(--b);color:#121a24}
body.dark .about{color:#eef2f6}
.ab-hero{text-align:center;max-width:1000px;margin:0 auto;padding:clamp(110px,15vh,170px) 6vw clamp(60px,9vh,100px)}
.about .st-kicker{font:600 13px var(--b);letter-spacing:.22em;text-transform:uppercase;color:#2f6fd6;margin:0 0 22px}
.ab-hero h1{font:700 clamp(42px,5.4vw,84px)/1.03 var(--h);letter-spacing:-.05em;margin:0}
.ab-hero h1 span{color:#4a8fc0;font-weight:600}
.ab-lede{font-size:clamp(17px,1.35vw,21px);line-height:1.6;color:#5b6672;max-width:640px;margin:26px auto 0}
body.dark .ab-lede{color:#9aa7b4}
.ab-principles{width:min(1240px,calc(100% - 10vw));margin:0 auto clamp(80px,12vh,140px);display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ab-principles article{padding:32px 30px;border-radius:24px;background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.9);box-shadow:0 20px 50px -30px rgba(20,40,70,.35);backdrop-filter:blur(14px)}
body.dark .ab-principles article{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.ab-principles span{font:600 13px var(--b);letter-spacing:.16em;color:#2f6fd6}
.ab-principles h2{font:700 26px/1.15 var(--h);letter-spacing:-.03em;margin:16px 0 12px}
.ab-principles p{margin:0;font-size:16px;line-height:1.6;color:#5b6672}
body.dark .ab-principles p{color:#9aa7b4}
.ab-scale{background:#141414;color:#f4f1ea;padding:clamp(90px,12vh,140px) 0}
.ab-wrap{width:min(1320px,calc(100% - 10vw));margin:0 auto}
.ab-scale .st-kicker{color:#8fd3ec}
.ab-scale h2{font:700 clamp(38px,4.4vw,70px)/1.02 var(--h);letter-spacing:-.05em;margin:0;color:#fff}
.ab-sub{font-size:17px;line-height:1.6;color:#a9a9a2;max-width:620px;margin:20px 0 46px}
.ab-acts{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:10px}
.ab-acts .st-lab{color:#f4f1ea;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
@media(max-width:900px){.ab-principles{grid-template-columns:1fr}}

/* ===== Home: 18-second story film ===== */
.nx-reel{background:#060c18;padding:clamp(70px,10vh,120px) 0;text-align:center}
.nx-reel-k{font:600 13px 'DM Sans',Inter,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#8fd3ec;margin:0 0 28px}
.nx-reel-frame{position:relative;width:min(1180px,calc(100% - 10vw));margin:0 auto;border-radius:26px;overflow:hidden;box-shadow:0 60px 140px -60px rgba(60,120,255,.45),0 0 0 1px rgba(150,180,255,.14);aspect-ratio:16/9;background:#060c18}
.nx-reel-frame video{display:block;width:100%;height:100%;object-fit:cover}
.nx-reel-replay{position:absolute!important;right:18px;bottom:18px;padding:10px 18px!important;border-radius:999px!important;font:600 13px 'DM Sans',sans-serif!important;color:#fff!important;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.22)!important;backdrop-filter:blur(10px);cursor:pointer;opacity:0;transition:opacity .4s;box-shadow:none!important}
.nx-reel.is-ended .nx-reel-replay,.nx-reel-frame:hover .nx-reel-replay{opacity:1}
@media(max-width:600px){.nx-reel-frame{width:calc(100% - 28px);border-radius:16px}}

/* ===== Header: slimmer, compact dropdowns (replaces the large preview panel) ===== */
#nav-preview,.mega-menu{display:none!important}
@media(min-width:901px){
  .header{height:72px!important}
  .header .links a,.header .links .dropbtn{font-size:15.5px!important;font-weight:500!important;padding:8px 12px!important;border-radius:999px;transition:background .2s}
  .header .links a:hover,.header .links a[aria-expanded=true]{background:rgba(20,40,80,.06)}
  .header .logo{font-size:22px!important}
  .header-cta{font-size:14.5px!important;padding:10px 18px!important}
  .header .clock{font-size:12px!important}
  .discovery-pin,.laptop-pin,.capability-pin,.st-pin{top:72px!important}
  .laptop-pin,.st-pin{height:calc(100svh - 72px)!important}
}
.nx-dd{position:fixed;z-index:120;min-width:330px;padding:8px;border-radius:18px;background:rgba(255,255,255,.97);border:1px solid rgba(15,30,55,.08);box-shadow:0 24px 60px -24px rgba(10,25,45,.35),0 2px 6px rgba(10,25,45,.05);opacity:0;transform:translateY(-6px);transition:opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1)}
.nx-dd.is-on{opacity:1;transform:none}
.nx-dd[hidden]{display:none}
.nx-dd a{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:12px;text-decoration:none;color:#121a24}
.nx-dd a:hover,.nx-dd a:focus-visible{background:#f2f5fb;outline:none}
.nx-dd i{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eef1fb;color:#3d5fd6}
.nx-dd i svg{width:18px;height:18px}
.nx-dd b{display:block;font:600 15px/1.25 'DM Sans',Inter,sans-serif;color:#121a24}
.nx-dd small{display:block;font:400 13px/1.35 'DM Sans',Inter,sans-serif;color:#6b7684;margin-top:2px}
body.dark .nx-dd{background:rgba(14,21,32,.97);border-color:rgba(255,255,255,.08)}
body.dark .nx-dd a{color:#eef2f6}body.dark .nx-dd b{color:#eef2f6}body.dark .nx-dd small{color:#97a4b3}
body.dark .nx-dd a:hover{background:rgba(255,255,255,.06)}body.dark .nx-dd i{background:rgba(120,150,255,.12);color:#9bb8ff}

/* ===== Insights opening: the laptop on the rock ===== */
.ins-rock{position:relative;height:150svh;background:radial-gradient(ellipse at 50% 70%,#1c4570 0%,#08172c 55%,#050c19 100%)!important;color:#f0f6ff}
.ins-rock .laptop-pin{position:sticky;top:72px;height:calc(100svh - 72px);min-height:560px;display:flex;flex-direction:column;align-items:center;overflow:hidden;padding:34px 4% 8px}
.ins-rock .laptop-intro{text-align:center;position:relative;z-index:2;flex-shrink:0}
.ins-rock .laptop-intro h1{font:700 clamp(40px,4.6vw,72px)/1.02 Manrope,'DM Sans',sans-serif;letter-spacing:-.05em;margin:0;color:#fff}
.ins-rock .laptop-intro h1 span{color:#7fd3ec;font-weight:600}
.ins-rock .laptop-mount{position:relative;width:min(1150px,100%);flex:1;min-height:330px;margin-top:0}
.ins-rock .laptop-mount>canvas{display:block;width:100%;height:100%;pointer-events:none}
.ins-rock .laptop-fallback{position:absolute;inset:12% 14%;display:flex;align-items:center;justify-content:center}
.ins-rock .screen-fallback{font:500 18px 'DM Sans',sans-serif;color:#bed5ed;text-align:center}
.implementation-notes{padding-top:70px!important}
@media(max-width:760px){.ins-rock{height:120svh}.ins-rock .laptop-pin{min-height:480px}}
.ins-rock .render-ready .laptop-fallback{opacity:0;pointer-events:none}.ins-rock .laptop-fallback{transition:opacity .6s}

/* ===== Footer: no top rule ===== */
.footer{border-top:0!important;box-shadow:none!important}
.closing{border-bottom:0!important;box-shadow:none!important}

/* ===== Services hero laptop: faces the copy ===== */
.services-hero{min-height:560px!important}
.services-hero .l3-rig{transform:scale(var(--sls,.64)) rotateX(60deg) rotateZ(12deg)!important;top:62%!important}
.services-hero .l3-scene{transform:rotateY(-6deg)!important}
@media(max-width:1100px){.services-hero{--sls:.56}}
@media(max-width:900px){.services-hero{--sls:.5}}
@media(max-width:650px){.services-hero{--sls:.4}}

/* ===== Light theme: soft colour and depth ===== */
body:not(.dark){--aurora:radial-gradient(55% 45% at 8% 12%,rgba(127,211,236,.28),transparent 70%),radial-gradient(45% 40% at 92% 30%,rgba(140,155,255,.22),transparent 70%),radial-gradient(50% 45% at 60% 100%,rgba(95,224,200,.16),transparent 70%)}
body:not(.dark) .pipeline,body:not(.dark) .tool-story,body:not(.dark) .implementation-notes,body:not(.dark) .ab-hero,body:not(.dark) .st-hero,body:not(.dark) .insights-consulting{background:var(--aurora),#f3f6fa!important}
body:not(.dark) .st-page{background:radial-gradient(40% 30% at 85% 8%,rgba(140,155,255,.14),transparent 70%),radial-gradient(40% 30% at 5% 40%,rgba(127,211,236,.16),transparent 70%),radial-gradient(40% 30% at 90% 75%,rgba(95,224,200,.12),transparent 70%),#f4f6f9!important}

/* ===== Home: How we work ===== */














@keyframes hwblink{50%{opacity:.55}}

















/* ===== Lab: the loop opens the page ===== */










/* ===== Header v3: smaller, chevrons, theme switch ===== */
@media(min-width:901px){
  .header{height:64px!important}
  .header .links a,.header .links .dropbtn{font-size:14.5px!important;padding:7px 11px!important}
  .header .logo{font-size:20px!important}
  .header-cta{font-size:13.5px!important;padding:9px 16px!important}
  .header .clock{font-size:11.5px!important}
  .discovery-pin,.laptop-pin,.capability-pin,.st-pin,.ins-rock .laptop-pin{top:64px!important}
  .laptop-pin,.st-pin,.ins-rock .laptop-pin{height:calc(100svh - 64px)!important}
}
.nx-chev{width:11px;height:11px;margin-left:5px;vertical-align:1px;opacity:.65;transition:transform .2s}
.nav-trigger[aria-expanded=true] .nx-chev{transform:rotate(180deg);opacity:1}
.nx-theme{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;border:1px solid rgba(20,40,80,.14);background:rgba(255,255,255,.5)}
.nx-theme button{width:30px!important;height:30px!important;padding:0!important;border-radius:50%!important;border:0!important;background:transparent!important;color:#5b6672!important;display:grid;place-items:center;cursor:pointer;box-shadow:none!important;transform:none!important;min-height:0!important}
.nx-theme button svg{width:16px;height:16px}
.nx-theme button[aria-checked=true]{background:#fff!important;color:#121a24!important;box-shadow:0 1px 3px rgba(10,25,45,.15)!important}
body.dark .nx-theme{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.04)}
body.dark .nx-theme button{color:#9aa7b4!important}
body.dark .nx-theme button[aria-checked=true]{background:rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:none!important}
@media(max-width:900px){.nx-theme button{width:28px!important;height:28px!important}}

/* ===== Footer: hero image behind CTA + menu (wins over earlier rules) ===== */
.footer{background:#04142a url(assets/site/connected-glass.png) center 35%/cover no-repeat!important;position:relative;isolation:isolate}
.footer:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,20,42,.62),rgba(4,20,42,.86) 50%,rgba(3,14,30,.95))}
.nx-cta,.nf,.nf-bottom{border:0!important;background:transparent!important}
.tr h2,.about .tr h2{color:#fff!important;font-family:Manrope,sans-serif!important}.tr h2 span{color:#8fd3ec!important}

/* ===================== v6 ===================== */
/* Distance animation: crisp labels in every browser (Inter is not loaded) */
.d-err{font:600 11.5px 'DM Sans',system-ui,sans-serif!important;letter-spacing:.04em!important;color:#ffc79a!important;border-style:solid!important;border-color:rgba(255,164,92,.6)!important}
.d-lane,.d-tag small,.d-ruler span{font-family:'DM Sans',system-ui,sans-serif!important;font-weight:600!important}
.ch-label{font-family:'DM Sans',system-ui,sans-serif!important;font-weight:600!important}
.neon{color:#39ff9c;text-shadow:0 0 14px rgba(57,255,156,.55);font-weight:600}
.nx-brand{color:#8fd3ec;font-weight:700;letter-spacing:.02em}
.dbeat h2 em .nx-brand{color:inherit}
/* In transit truck */
.d-truck-row{display:flex!important;align-items:center;gap:14px}
.d-truck{position:relative;display:inline-block;width:92px;height:44px;overflow:hidden}
.d-truck svg{position:absolute;left:0;top:0;width:92px;height:43px;animation:tkbob .5s ease-in-out infinite alternate}
.d-truck .tk-wheel{animation:tkspin .6s linear infinite;transform-box:fill-box;transform-origin:center}
.tk-road{position:absolute;left:0;right:0;bottom:0;height:2px;background:repeating-linear-gradient(90deg,rgba(255,164,92,.8) 0 10px,transparent 10px 18px);animation:tkroad .6s linear infinite}
@keyframes tkspin{to{transform:rotate(360deg)}}
@keyframes tkbob{to{transform:translateY(-1px)}}
@keyframes tkroad{to{background-position:-18px 0}}
body.reduce-motion .d-truck *{animation:none!important}
/* From data to decisions */
.pipeline .kicker.pipe-big{font:700 clamp(15px,1.2vw,18px)/1.2 Manrope,'DM Sans',sans-serif!important;letter-spacing:.24em!important;color:#fff!important;display:inline-block;padding:10px 18px;border-radius:999px;background:linear-gradient(90deg,#061a35,#0c2a4f);box-shadow:0 10px 30px -14px rgba(6,26,53,.7)}
.pipeline .kicker.pipe-big span{color:#8fd3ec}
.pipe-controls{margin:10px 0 34px!important}
.pipe-controls .kicker{font:700 13px 'DM Sans',sans-serif!important;letter-spacing:.16em!important;color:#0c2a4f!important}
body.dark .pipe-controls .kicker{color:#8fd3ec!important}
.fault-row{gap:10px!important}
.fault{background:#0c2a4f!important;color:#fff!important;border:1px solid #0c2a4f!important;border-radius:10px!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;font:600 14px 'DM Sans',sans-serif!important;padding:11px 16px!important}
.fault[aria-pressed=true]{background:#ffa45c!important;border-color:#ffa45c!important;color:#1b0e02!important}
.fault.fault-reset{background:transparent!important;color:#0c2a4f!important;border-color:rgba(12,42,79,.35)!important}
body.dark .fault.fault-reset{color:#fff!important;border-color:rgba(255,255,255,.3)!important}
.pipe-meters span{font:700 12px 'DM Sans',sans-serif!important;letter-spacing:.16em!important;color:#0c2a4f!important}
body.dark .pipe-meters span{color:#cfe3f5!important}
.pipe-meters b{font:800 34px/1.1 Manrope,sans-serif!important}
.pipe-inspector .kicker,.io-label{font:700 12.5px 'DM Sans',sans-serif!important;letter-spacing:.18em!important;color:#fff!important}
/* Header clock pill */
.header .clock{display:inline-flex!important;align-items:center;height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(20,40,80,.14);background:rgba(255,255,255,.5);font:700 12.5px 'DM Sans',sans-serif!important;letter-spacing:.04em;color:#0c2a4f!important}
body.dark .header .clock{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#e8eef6!important}
/* Footer: an inch shorter, image fitted to the footer */
.footer{background-size:cover!important;background-position:center!important}
.nx-cta{padding:44px 0 10px!important}

.nf{padding:26px 0 10px!important}
.nf-bottom{padding:4px 0 18px!important}

/* ===== One continuous light background per page: no hard section edges ===== */
:root{--flow-light:radial-gradient(60% 30% at 12% 0%,rgba(143,211,236,.32),transparent 70%),radial-gradient(50% 25% at 92% 18%,rgba(42,93,154,.16),transparent 70%),radial-gradient(60% 30% at 40% 55%,rgba(143,211,236,.16),transparent 70%),radial-gradient(50% 25% at 85% 85%,rgba(42,93,154,.14),transparent 70%),linear-gradient(180deg,#eaf2fa,#e3edf8 50%,#eaf2fa);--flow-dark:radial-gradient(60% 30% at 12% 0%,rgba(42,93,154,.45),transparent 70%),radial-gradient(50% 25% at 92% 30%,rgba(143,211,236,.1),transparent 70%),radial-gradient(60% 30% at 30% 75%,rgba(42,93,154,.3),transparent 70%),linear-gradient(180deg,#061a35,#04142a 50%,#061a35)}
body:not(.dark) .ab-hero,body:not(.dark) .st-hero,body:not(.dark) .implementation-notes,body:not(.dark) .insights-consulting{background:transparent!important}
.v4.sv,.v4.sc,main.ins-flow{background:var(--flow-light)!important}
body.dark .v4.sv,body.dark .v4.sc,body.dark main.ins-flow{background:var(--flow-dark)!important}
main.ins-flow>section:not(.ins-rock){background:transparent!important;border:0!important;box-shadow:none!important}
.ab6 .tr h2,.about .tr h2{color:#0c2a4f!important}.ab6 .tr h2 span{color:#2a5d9a!important}
body.dark .ab6 .tr h2{color:#fff!important}body.dark .ab6 .tr h2 span{color:#8fd3ec!important}
body.dark .ab6 .ab-lede,body.dark .ab-lede{color:#fff!important}
.ins-rock:after{content:'';position:absolute;left:0;right:0;bottom:0;height:220px;background:linear-gradient(180deg,transparent,#eaf2fa);pointer-events:none;z-index:3}
body.dark .ins-rock:after{background:linear-gradient(180deg,transparent,#061a35)}
.implementation-notes{padding-top:20px!important}
.d-truck{width:132px!important;height:62px!important}.d-truck svg{width:132px!important;height:61px!important}
.ins-rock:after{height:110px!important}
.headright{gap:8px!important}
.header .clock{height:34px!important;padding:0 11px!important;font-size:11.5px!important;white-space:nowrap}
@media(max-width:1500px){.header .links a,.header .links .dropbtn{padding:7px 8px!important}}
@media(max-width:1360px){.header .clock{display:none!important}}

/* ===================== v7 ===================== */
/* Ship Inter with the site so every browser renders the same weights */
@font-face{font-family:Inter;src:url(assets/fonts/Inter-variable.ttf) format('truetype');font-weight:100 900;font-display:swap}
/* Readable "Try it" notes on light sections */
.workflow-products .hx-try,.mw-head .hx-try{background:rgba(12,42,79,.06)!important;border-color:rgba(12,42,79,.16)!important;color:#1d3350!important}
.workflow-products .hx-try b{color:#0c2a4f}
body.dark .workflow-products .hx-try{background:rgba(143,211,236,.08)!important;border-color:rgba(143,211,236,.2)!important;color:#dbe9f7!important}
body.dark .workflow-products .hx-try b{color:#fff}

/* Footer = one full-screen closing panel that meets the header, image fitted, soft top edge */
.footer{min-height:calc(100svh - 64px)!important;display:flex!important;flex-direction:column;justify-content:space-between;background:transparent!important;padding:0!important;margin-top:0!important}
.footer:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,20,42,.55),rgba(4,20,42,.82) 55%,rgba(3,14,30,.95)),#04142a url(assets/site/connected-glass.png) center/cover no-repeat;-webkit-mask:linear-gradient(180deg,transparent,#000 160px);mask:linear-gradient(180deg,transparent,#000 160px)}
.nx-cta{flex:1;display:flex;align-items:center;padding:200px 0 30px!important}

.nf{padding:30px 0 10px!important}
@media(max-width:900px){.footer{min-height:0!important}.nx-cta{padding:160px 0 20px!important}}
main>section:last-child,main>section:last-of-type{margin-bottom:0!important}
html,body{background:#eaf2fa!important}
html:has(body.dark),body.dark{background:#04142a!important}
/* Film: title-card thumbnail with a play button */
.nx-reel-frame{cursor:pointer}
.nx-reel-play{position:absolute!important;left:50%;top:50%;width:84px!important;height:84px!important;margin:-42px 0 0 -42px;border-radius:50%!important;display:grid!important;place-items:center;padding:0!important;border:1px solid rgba(255,255,255,.35)!important;background:rgba(255,255,255,.14)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff!important;box-shadow:0 20px 50px -14px rgba(0,0,0,.6)!important;transition:transform .3s,opacity .3s!important;cursor:pointer;top:auto;bottom:16%}
.nx-reel-play svg{width:30px;height:30px;margin-left:4px}
.nx-reel-play:hover{transform:scale(1.07)}
.nx-reel-frame.is-playing .nx-reel-play{opacity:0;pointer-events:none}
/* Case studies: story labels back to their original small caps */
.cx .st-beat h3,.v4 .st-beat h3{font:600 13px/1.2 'DM Sans',Inter,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#5b6672!important}
body.dark .cx .st-beat h3{color:#9aa7b4!important}
.cx .st-rail li{font:600 11px 'DM Sans',sans-serif!important}
.nx-reel-play{top:auto!important;bottom:7%!important;margin-top:0!important}
/* Home: soft hand-off from the dark film into the light sections */
.nx-reel{position:relative;padding-bottom:clamp(140px,18vh,200px)!important}
.nx-reel:after{content:'';position:absolute;left:0;right:0;bottom:0;height:180px;background:linear-gradient(180deg,rgba(234,242,250,0),#eaf2fa);pointer-events:none}
body.dark .nx-reel:after{background:linear-gradient(180deg,rgba(4,20,42,0),#04142a)}
.pipeline,.gq{background:transparent!important}
body.dark .pipeline{background:transparent!important}
.opening{position:relative}
.opening:after{content:'';position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(180deg,rgba(3,8,18,0),#030a14);pointer-events:none;z-index:1}
.opening-bottom{z-index:2}
.nx-reel{background:linear-gradient(180deg,#030a14,#04142a 40%)!important}

/* ===== Header: quiet, centred navigation, one filled call to action ===== */
@media(min-width:901px){
  .header{background:rgba(234,242,250,.78)!important;backdrop-filter:blur(18px) saturate(1.4)!important;-webkit-backdrop-filter:blur(18px) saturate(1.4)!important;box-shadow:none!important;border:0!important;transition:background .35s,color .35s!important;display:flex!important;justify-content:space-between!important}
  body.dark .header{background:rgba(4,20,42,.72)!important}
  .header .links{position:absolute;left:50%;transform:translateX(-50%);gap:4px!important}
  .header .links a,.header .links .dropbtn{font:500 14.5px 'DM Sans',sans-serif!important;color:#1d3350!important}
  body.dark .header .links a,body.dark .header .links .dropbtn{color:#dbe6f2!important}
  .header-cta{background:#0c2a4f!important;color:#fff!important;border:0!important;box-shadow:0 8px 20px -10px rgba(12,42,79,.7)!important;font-weight:600!important}
  body.dark .header-cta{background:#fff!important;color:#0c2a4f!important}
  .header-cta span{color:inherit!important}
  .header.on-footer{background:rgba(4,20,42,.55)!important}
  .header.on-footer .links a,.header.on-footer .links .dropbtn,.header.on-footer .logo{color:#fff!important}
  .header.on-footer .clock,.header.on-footer .nx-theme{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}
  .header.on-footer .nx-theme button{color:#cfdcea!important}
  .header.on-footer .header-cta{background:#fff!important;color:#0c2a4f!important}
}
@media(min-width:901px) and (max-width:1250px){.header .links{position:static;transform:none}}
/* Footer fills the screen under the header when you reach the end */
.footer{min-height:100svh!important}
.footer:before{-webkit-mask:linear-gradient(180deg,transparent,#000 64px)!important;mask:linear-gradient(180deg,transparent,#000 64px)!important}
.nx-cta{padding:120px 0 30px!important}
/* Home film section follows the theme: light page in light mode, navy in dark mode */
body:not(.dark) .nx-reel{background:transparent!important}
body:not(.dark) .nx-reel-copy h2{color:#0c2a4f!important}
body:not(.dark) .nx-reel-copy h2 span{color:#2a5d9a!important}
body:not(.dark) .nx-reel-copy .v4-btn{background:#0c2a4f!important;color:#fff!important;border-color:#0c2a4f!important}
body:not(.dark) .nx-reel-frame{box-shadow:0 40px 90px -40px rgba(12,42,79,.55)!important}

/* ===================== v9: Home clarity + proof ===================== */
.opening-copy .hero-what{font:500 clamp(17px,1.35vw,20px)/1.5 'DM Sans',sans-serif!important;color:#e6f0fa!important;max-width:34ch!important;margin:0 0 18px!important}
.hero-proof{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.hero-proof li{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font:500 13.5px 'DM Sans',sans-serif;color:#dbe8f5}
.hero-proof b{font:800 14.5px Manrope,sans-serif;color:#8fd3ec;margin-right:4px}
.orgs{background:#030a14;padding:34px 5vw 40px;text-align:center}
.orgs p{margin:0 0 18px;font:600 12px 'DM Sans',sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#7f95ab}
.orgs-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:14px 46px;color:#cfdcea}
.orgs-row span{white-space:nowrap;opacity:.82;transition:opacity .3s}
.orgs-row span:hover{opacity:1}
.orgs-row .f0{font:800 24px Manrope,sans-serif;letter-spacing:-.02em}
.orgs-row .f1{font:600 15px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.orgs-row .f2{font:500 20px Manrope,sans-serif;letter-spacing:-.02em}
.opening:after{display:none!important}
.distance-pin{background:radial-gradient(70% 60% at 50% 62%,#0a2036 0%,#040b16 60%,#030a14 100%)!important}

/* ===================== v11 ===================== */
/* Organisations strip: label pulses, names drift */
.orgs{overflow:hidden;padding:40px 0 46px!important}
.orgs .orgs-k{display:inline-block;margin:0 0 22px!important;font:800 13.5px 'DM Sans',sans-serif!important;letter-spacing:.24em!important;color:#e8f2fb!important;animation:orgzoom 4.5s ease-in-out infinite;transform-origin:center}
@keyframes orgzoom{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.09);opacity:1}}
.orgs-track{display:flex;width:max-content;animation:orgslide 38s linear infinite;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.orgs:hover .orgs-track{animation-play-state:paused}
.orgs-track .orgs-row{flex-wrap:nowrap!important;gap:0 64px!important;padding-right:64px;align-items:center!important}
@keyframes orgslide{to{transform:translateX(-50%)}}
.orgs-row .f0{font:800 28px Manrope,sans-serif!important;letter-spacing:-.04em!important}
.orgs-row .f1{font:500 14px 'Geist Mono',ui-monospace,monospace!important;letter-spacing:.12em!important;text-transform:uppercase;color:#8fd3ec}
.orgs-row .f2{font:300 24px Manrope,sans-serif!important;letter-spacing:-.03em!important}
.orgs-row .f3{font:italic 500 22px 'DM Sans',sans-serif;letter-spacing:-.01em}
.orgs-row .f4{font:700 15px 'DM Sans',sans-serif;letter-spacing:.32em;text-transform:uppercase;padding:6px 12px;border:1px solid rgba(207,220,234,.35);border-radius:8px}
body.reduce-motion .orgs-track,body.reduce-motion .orgs .orgs-k{animation:none}

/* Standards scroller on Home */
.v4 main .cx-std,main .cx-std{padding:clamp(50px,8vh,90px) 0!important}

/* Good questions: navy in dark theme */
body.dark .gq-answer{background:#10274a!important}
body.dark .gq-a{background:#0a1b35!important;color:#eef4fb!important;box-shadow:0 14px 34px -20px rgba(0,0,0,.6)}
body.dark .gq-q{color:#a9bfd8!important}
body.dark .gq-a a{color:#8fd3ec!important}

/* Lab dark: the same night sky as the Case Studies runner */
html:has(body.dark .lab-page){background:radial-gradient(60% 55% at 72% 30%,rgba(63,182,224,.16) 0%,transparent 60%),radial-gradient(120% 90% at 50% 100%,#050d18 0%,transparent 70%),linear-gradient(180deg,#0a1a2c 0%,#050d18 45%,#02060c 100%) fixed!important}
body.dark .lab-page .hx,body.dark .lab-page .agent-section{background:radial-gradient(90% 80% at 20% 0%,#15305a 0%,#0d1d3a 45%,#0a1427 100%)!important;border:1px solid rgba(143,211,236,.14);box-shadow:0 60px 140px -60px rgba(63,182,224,.35),inset 0 1px 0 rgba(255,255,255,.06)!important}

/* Closing CTA: image mosaic */
.nx-close{position:relative;overflow:hidden;background:#04080f;color:#fff;min-height:clamp(460px,72vh,720px);display:grid;place-items:center;isolation:isolate}
.nx-mosaic{position:absolute;inset:-10% -4%;display:grid;grid-template-columns:repeat(6,1fr);gap:14px;transform:rotate(-6deg);z-index:-2}
.nx-mcol{display:flex;flex-direction:column;gap:14px;animation:mosdown var(--d,50s) linear infinite}
.nx-mcol.up{animation-name:mosup}
.nx-mcol span{display:block;aspect-ratio:4/5;border-radius:14px;background-size:cover;background-position:center;filter:saturate(.75) brightness(.8)}
@keyframes mosdown{from{transform:translateY(-50%)}to{transform:translateY(0)}}
@keyframes mosup{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.nx-close:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 60% at 50% 50%,rgba(4,8,15,.9) 0%,rgba(4,8,15,.72) 45%,rgba(4,8,15,.35) 100%),linear-gradient(180deg,#04080f 0%,transparent 18%,transparent 82%,#04080f 100%)}
.nx-close-in{text-align:center;padding:0 6vw;max-width:900px}
.nx-close h2{margin:0;font:800 clamp(40px,5.4vw,84px)/1 Manrope,sans-serif;letter-spacing:-.05em;color:#fff;text-wrap:balance}
.nx-close-b{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:34px}
.nx-close-b a{display:inline-flex;align-items:center;height:50px;padding:0 26px;border-radius:999px;font:600 16px 'DM Sans',sans-serif;text-decoration:none;transition:transform .25s,background .25s}
.nx-btn-w{background:#fff;color:#06101e}
.nx-btn-g{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.nx-close-b a:hover{transform:translateY(-2px)}.nx-btn-g:hover{background:rgba(255,255,255,.18)}
body.reduce-motion .nx-mcol{animation:none}
.nx-cta-empty{min-height:120px}
@media(max-width:700px){.nx-mosaic{grid-template-columns:repeat(3,1fr)}.nx-mcol:nth-child(n+4){display:none}}

/* About principles: compact cards, description opens as a tip */
.ab-tips{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1040px;gap:18px!important}
.ab-tips article{position:relative;cursor:pointer;padding:24px 24px 22px!important;display:flex;flex-direction:column;gap:2px;transition:transform .3s,border-color .3s}
.ab-tips article:hover,.ab-tips article.open,.ab-tips article:focus-visible{transform:translateY(-3px);border-color:rgba(47,111,214,.45)!important;outline:none}
.ab-tips h2{font-size:21px!important;margin:12px 0 0!important}
.ab-tips h2:after{content:'+';display:inline-block;margin-left:10px;font:500 18px 'DM Sans';color:#2f6fd6;transition:transform .3s}
.ab-tips article.open h2:after{transform:rotate(45deg)}
.ab-tips p{position:absolute;left:12px;right:12px;bottom:calc(100% + 12px);z-index:5;padding:16px 18px;border-radius:16px;background:#0c2140;color:#eaf2fb!important;font-size:15px!important;line-height:1.55!important;box-shadow:0 24px 50px -20px rgba(6,20,45,.55);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .25s,transform .25s}
.ab-tips p:after{content:'';position:absolute;left:32px;top:100%;border:8px solid transparent;border-top-color:#0c2140}
body.dark .ab-tips p{background:#e9f1fb;color:#0b1b30!important}body.dark .ab-tips p:after{border-top-color:#e9f1fb}
.ab-tips article:hover p,.ab-tips article.open p,.ab-tips article:focus-visible p{opacity:1;transform:none;pointer-events:auto}
@media(max-width:820px){.ab-tips{grid-template-columns:1fr}.ab-tips p{position:static;opacity:1;transform:none;display:none;margin-top:12px!important;box-shadow:none}.ab-tips article.open p{display:block}.ab-tips p:after{display:none}}
@media(hover:none){.ab-tips article:hover p{opacity:0}.ab-tips article.open p{opacity:1}}

/* Services: bolder headline, like the Lab */
.sv-hero h1.sv-title{font:800 clamp(54px,7vw,112px)/.98 Manrope,sans-serif!important;letter-spacing:-.06em!important;color:#0c2a4f!important}
.sv-hero h1.sv-title .ch{color:inherit!important;font:inherit!important}
.sv-hero h1.sv-title .sv-l2,.sv-hero h1.sv-title .sv-l2 .ch{color:#2a5d9a!important}
body.dark .sv-hero h1.sv-title{color:#fff!important}
body.dark .sv-hero h1.sv-title,body.dark .sv-hero h1.sv-title>.ch{color:#fff!important}body.dark .sv-hero h1.sv-title .sv-l2,body.dark .sv-hero h1.sv-title .sv-l2 .ch{color:#8fd3ec!important}
body.dark .sv-feature{background:radial-gradient(90% 80% at 20% 0%,#1d3f70 0%,#122a4f 50%,#0a1427 100%)!important;border:1px solid rgba(143,211,236,.18)!important}

/* Services grid: Scan stands tall on the left, the rest sit beside it */
@media(min-width:1001px){
.sv-chain{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:dense}
.sv-chain .sv-feature{grid-column:1!important;grid-row:1/span 2!important;padding:34px!important;justify-content:flex-start}
.sv-feature h2{font-size:clamp(34px,3vw,46px)!important;margin-top:auto!important}
}
.sv-feature .sv-art{display:none!important}
.sv-feature{position:relative;overflow:hidden}
.sv-feature:after{content:'';position:absolute;right:-90px;bottom:-90px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(143,211,236,.25);box-shadow:0 0 0 40px rgba(143,211,236,.04),0 0 0 80px rgba(143,211,236,.03);pointer-events:none}
.sv-feature .sv-open{margin-top:22px!important;padding-bottom:30px}
.sv-more{text-decoration:none;color:inherit;border:1px dashed rgba(42,93,154,.35)!important;background:transparent!important}
body.dark .sv-more{border-color:rgba(143,211,236,.3)!important}

/* Service drawer: clearer process steps */
.sv-steps{counter-reset:st}
.sv-steps li{counter-increment:st;position:relative;padding-left:58px!important}
.sv-steps li:before{content:counter(st);position:absolute;left:18px;top:16px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:700 13px 'DM Sans',sans-serif;background:#2a5d9a;color:#fff}
.sv-steps span{font-size:15.5px!important;color:#24384f!important}
body.dark .sv-steps b{color:#fff}
body.dark .sv-steps span{color:#e6eef8!important}
body.dark .sv-steps li:before{background:#8fd3ec;color:#06101e}

/* Perspectives: compact "In short" box with bullets */
.perspective-article #p-lede{max-width:640px!important;margin:22px 0 28px!important;padding:18px 22px 16px!important;border-radius:16px;font-size:16px!important;line-height:1.5!important;list-style:none}
.perspective-article ul#p-lede li{position:relative;padding-left:20px;margin:0 0 6px}
.perspective-article ul#p-lede li:last-child{margin:0}
.perspective-article ul#p-lede li:before{content:'';position:absolute;left:2px;top:.6em;width:7px;height:7px;border-radius:50%;background:#5b46d6}
.perspective-article #p-lede:before{font-size:11.5px!important;margin-bottom:10px!important}
body.dark .perspective-article #p-lede{background:#14233f!important;border-color:rgba(143,211,236,.22)!important;color:#eef4fb!important}
body.dark .perspective-article #p-lede:before{color:#8fd3ec!important}
body.dark .perspective-article ul#p-lede li:before{background:#8fd3ec}

/* Case study slide: tilted browser on the left, dark panel on the right */
.cs-slide{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;gap:0!important;padding:0!important;border-radius:28px!important;overflow:hidden;background:radial-gradient(80% 90% at 0% 0%,#cfe4f6 0%,#e8f1fa 60%,#f4f8fc 100%)!important;color:inherit;text-decoration:none;box-shadow:0 50px 100px -60px rgba(6,26,53,.55);perspective:1600px}
body.dark .cs-slide{background:radial-gradient(80% 90% at 0% 0%,#15305a 0%,#0d1d3a 55%,#0a1427 100%)!important;border:1px solid rgba(143,211,236,.14)}
.cs-browser{padding:clamp(28px,4vw,56px) 0 clamp(28px,4vw,56px) clamp(24px,4vw,56px);display:flex;align-items:center;min-width:0}
.cs-browser .cr-app{width:118%;transform:rotateY(14deg) rotateX(4deg) rotateZ(-2deg);transform-origin:left center;transition:transform .7s cubic-bezier(.2,.8,.2,1);box-shadow:0 60px 90px -40px rgba(6,26,53,.55)}
.cs-slide:hover .cs-browser .cr-app{transform:rotateY(8deg) rotateX(2deg) rotateZ(-1deg)}
.cs-browser .cr-app table{font-size:13px}.cs-browser .cr-app td,.cs-browser .cr-app th{padding:10px 14px}
.cs-panel{position:relative;z-index:1;background:#06101e;color:#fff;padding:clamp(28px,3.4vw,48px);display:flex;flex-direction:column;gap:18px;justify-content:center}
.cs-tag{font:700 11.5px 'DM Sans',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#8fd3ec}
.cs-panel q{font:700 clamp(22px,2.1vw,30px)/1.2 Manrope,sans-serif;letter-spacing:-.03em;quotes:'“' '”'}
.cs-num{display:flex;flex-direction:column;gap:4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}
.cs-num b{font:800 clamp(52px,5.6vw,84px)/.95 Manrope,sans-serif;letter-spacing:-.05em;color:#fff}
.cs-num small{font:500 15px 'DM Sans',sans-serif;color:#b9c9db}
.cs-title{font:700 18px/1.3 Manrope,sans-serif!important;letter-spacing:-.02em;color:#e8f2fb}
.cs-link{align-self:flex-start;display:inline-flex;gap:8px;align-items:center;padding:12px 20px;border-radius:999px;background:#fff;color:#06101e;font:600 15px 'DM Sans',sans-serif;text-decoration:none;transition:transform .25s}
.cs-slide:hover .cs-link,.cs-link:hover{transform:translateX(4px)}
.cr-shot.cs-slide{width:min(1180px,calc(100% - 10vw));margin:40px auto 0}
@media(max-width:900px){.cs-slide{grid-template-columns:1fr}.cs-browser{padding:28px 0 10px 22px;overflow:hidden}.cs-browser .cr-app{width:130%}}
.cx-feature.cs-slide{margin:0 0 22px}
.cx-feature.cs-slide .cr-app b{font:600 13.5px/1.35 'DM Sans',sans-serif;letter-spacing:0;color:#0c2a4f}
body.dark .cx-feature.cs-slide .cr-app b{color:#fff}
.cx-feature.cs-slide .cr-app i{font:400 12.5px 'DM Sans',sans-serif;white-space:nowrap;padding:7px 14px;border-radius:10px;background:transparent;color:#8a97a6;border:1px solid rgba(12,42,79,.12)}
body.dark .cx-feature.cs-slide .cr-app i{border-color:rgba(255,255,255,.12);color:#8a9bb0}
.cx-feature.cs-slide .cs-num small{font:500 15px 'DM Sans',sans-serif;letter-spacing:0;text-transform:none;color:#b9c9db;margin:0}
.cx-feature.cs-slide .cs-num b{font:800 clamp(52px,5.6vw,84px)/.95 Manrope,sans-serif;letter-spacing:-.05em}
.cx-feature.cs-slide .cs-title{font:700 18px/1.3 Manrope,sans-serif}
.cx-feature.cs-slide .cs-panel{border-radius:0}
.ab-tips h2{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.ab-tips article{min-height:0!important}

/* Services hero: two drifting rows of real work */
.sv-reel{position:relative;width:100%;margin:clamp(34px,5vh,56px) 0 0;display:grid;gap:14px;transform:rotate(-3deg);-webkit-mask:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);pointer-events:none}
.sv-reel-row{display:flex;gap:14px;width:max-content;animation:svreel 70s linear infinite}
.sv-reel-row.rev{animation-direction:reverse;animation-duration:85s}
.sv-reel-row span{flex:none;width:clamp(200px,20vw,300px);aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:#0c2a4f;box-shadow:0 20px 40px -24px rgba(6,26,53,.55);border:1px solid rgba(255,255,255,.5)}
body.dark .sv-reel-row span{border-color:rgba(143,211,236,.15)}
.sv-reel-row img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
@keyframes svreel{to{transform:translateX(-50%)}}
body.reduce-motion .sv-reel-row{animation:none}
.sv-hero{overflow:hidden}

@media(max-width:600px){.sv-hero h1.sv-title{font-size:clamp(34px,10.4vw,46px)!important}.sv-reel-row span{width:170px}}

/* Home: From source to care (3D laptop with record cards) */
.nx-lap-home{height:230svh!important;background:radial-gradient(ellipse at 50% 40%,#2a4a7c 0%,#13284a 55%,#0a1630 100%)!important;color:#f1f6ff}
.nx-lap-home .laptop-intro h2{font:700 clamp(40px,5vw,76px)/1.02 Manrope,sans-serif;letter-spacing:-.05em;color:#fff;margin:6px 0 10px}
.nx-lap-home .laptop-intro p{font-size:clamp(16px,1.4vw,21px);color:#d4e2f4}
.nx-lap-home .laptop-intro .eyebrow{color:#8fd3ec}
.nx-lap-home .laptop-layers{display:block!important}
.nx-lap-home .layer-source{left:2%!important;top:24%!important;right:auto!important}
.nx-lap-home .layer-map{left:auto!important;right:2%!important;top:4%!important}
.nx-lap-home .layer-check{right:2%!important;top:54%!important;left:auto!important}
.nx-lap-home .screen-source{color:#9fb6d4}

/* Services: interactive architecture (system view) */
.sv-arch{width:min(1080px,calc(100% - 10vw));margin:clamp(40px,6vh,70px) auto 0;padding:clamp(24px,3vw,40px);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(244,248,254,.9));border:1px solid rgba(12,42,79,.08);box-shadow:0 40px 90px -60px rgba(6,26,53,.45);text-align:left}
body.dark .sv-arch{background:radial-gradient(80% 80% at 50% 40%,#132a50 0%,#0b1730 70%);border-color:rgba(143,211,236,.14)}
.sv-arch .architecture{position:relative;max-width:none}
.sv-arch .arch-top,.sv-arch .arch-base{display:flex;justify-content:space-between;gap:15px;font:500 11.5px 'Geist Mono',ui-monospace,monospace;letter-spacing:.14em;color:#6b7da8}
.sv-arch .arch-base{justify-content:flex-end;margin-top:14px}
.sv-arch .arch-live{color:#3159dc}
body.dark .sv-arch .arch-top,body.dark .sv-arch .arch-base{color:#a2b6dd}body.dark .sv-arch .arch-live{color:#99baff}
.sv-arch .arch-map{position:relative;height:clamp(360px,42vw,520px);margin-top:10px}
.sv-arch .arch-map>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sv-arch .arch-wires path{fill:none;stroke:#7e9bdb77;stroke-width:1.5}
body.dark .sv-arch .arch-wires path{stroke:#7296d47a}
.sv-arch .arch-wires .review-wire{stroke:#be986c99;stroke-dasharray:5 5}
.sv-arch .arch-signals path{fill:none;stroke:url(#signal);stroke-width:2.4;stroke-dasharray:4 55;animation:svsignal 7s linear infinite}
@keyframes svsignal{to{stroke-dashoffset:-300}}
.sv-arch .arch-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;justify-content:center;gap:4px;width:clamp(110px,14vw,160px);height:clamp(84px,10vw,112px);border:1px solid #c0d0ed;border-radius:16px;background:linear-gradient(135deg,#fff,#f1f6ff);color:#121a33;box-shadow:0 12px 30px -14px rgba(30,60,120,.35);cursor:pointer;font:inherit;padding:8px;transition:border-color .25s,box-shadow .25s}
.sv-arch .arch-node>i{font:22px/1 Arial,sans-serif;color:#385de6;font-style:normal;margin-bottom:4px}
.sv-arch .arch-node strong{font:700 14px/1.2 Manrope,sans-serif;letter-spacing:-.02em}
.sv-arch .arch-node small{font:500 11px/1.3 'DM Sans',sans-serif;color:#6f86b0;text-align:center}
.sv-arch .arch-node.core{background:#2750df;color:#fff;border-color:#5e80eb;box-shadow:0 16px 44px -10px rgba(52,86,212,.55);height:clamp(96px,11.5vw,128px)}
.sv-arch .arch-node.core i{color:#bce2ff;font-size:34px}.sv-arch .arch-node.core small{color:#d4e2ff}
.sv-arch .arch-node.gate{background:#e7eeff;border-color:#b4c5ed}
.sv-arch .arch-node.hold>i{color:#a77942}
.sv-arch .arch-node.selected,.sv-arch .arch-node:hover,.sv-arch .arch-node:focus-visible{border-color:#345df1;box-shadow:0 0 0 4px rgba(67,106,245,.12),0 14px 34px -12px rgba(43,77,146,.4);outline:none}
body.dark .sv-arch .arch-node{background:linear-gradient(130deg,#192c51,#101c38);border-color:#3a5383;color:#e8f0ff}
body.dark .sv-arch .arch-node small{color:#a2b9e0}body.dark .sv-arch .arch-node i{color:#9ec7ff}
body.dark .sv-arch .arch-node.core{background:#2b4fc3;border-color:#6c8be4}body.dark .sv-arch .arch-node.gate{background:#1b305a}
.sv-arch .arch-inspector{min-height:84px;padding:18px 0 0;max-width:640px}
.sv-arch .arch-inspector>span{font:600 11.5px 'Geist Mono',ui-monospace,monospace;letter-spacing:.14em;color:#4666aa}
.sv-arch .arch-inspector p{font-size:16px;line-height:1.6;margin:8px 0 0;color:#4a5f86}
body.dark .sv-arch .arch-inspector p{color:#d3e0f2}body.dark .sv-arch .arch-inspector>span{color:#8fd3ec}
body.reduce-motion .sv-arch .arch-signals path{animation:none}
@media(max-width:700px){.sv-arch{padding:18px 12px}.sv-arch .arch-map{height:340px}.sv-arch .arch-node{width:86px;height:72px;border-radius:12px;padding:4px}.sv-arch .arch-node strong{font-size:10.5px}.sv-arch .arch-node small{display:none}.sv-arch .arch-node>i{font-size:16px}.sv-arch .arch-node.core{height:84px}.sv-arch .arch-top{font-size:9px;letter-spacing:.06em}.sv-arch .arch-base{font-size:9px}}
.sv-arch .arch-map svg path{marker:none!important;marker-start:none!important;marker-end:none!important}
.sv-arch .arch-wires path{stroke-dasharray:none!important;stroke-width:1.6!important;opacity:1!important}
.sv-arch .arch-wires .review-wire{stroke-dasharray:6 6!important}
.sv-arch .arch-node{width:15%!important;height:19%!important;min-width:0}
.sv-arch .arch-node.core{height:22%!important}
.sv-arch .arch-node{background:linear-gradient(135deg,#fff,#f1f6ff)!important;border:1px solid #c0d0ed!important;border-radius:16px!important;backdrop-filter:none!important;transform:translate(-50%,-50%)!important;color:#121a33!important}
.sv-arch .arch-node.core{background:#2750df!important;border-color:#5e80eb!important;color:#fff!important}
.sv-arch .arch-node.gate{background:#e7eeff!important}
body.dark .sv-arch .arch-node{background:linear-gradient(130deg,#192c51,#101c38)!important;border-color:#3a5383!important;color:#e8f0ff!important}
body.dark .sv-arch .arch-node.core{background:#2b4fc3!important;border-color:#6c8be4!important}
body.dark .sv-arch .arch-node.gate{background:#1b305a!important}
.sv-arch .arch-node.selected,.sv-arch .arch-node:hover{border-color:#345df1!important}
.sv-arch .arch-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:700px){.sv-arch .arch-map{min-width:620px;height:360px!important}.sv-arch .arch-node small{display:none}.sv-arch .arch-node strong{font-size:11px}}
.sv-arch .arch-node{width:16.5%!important;height:22%!important}.sv-arch .arch-node.core{height:24%!important}
.sv-arch .arch-node strong{font-size:13.5px}.sv-arch .arch-node small{font-size:10.5px}

/* Technical performance and compatibility fixes; retain existing composition. */
.optimized-picture{display:contents}
.motion-offscreen,.motion-offscreen *{animation-play-state:paused!important}
.footer{background-image:url(assets/site/connected-glass.jpg)!important;background-image:image-set(url(assets/site/connected-glass.webp) type("image/webp"),url(assets/site/connected-glass.jpg) type("image/jpeg"))!important}
.footer:before{background-image:linear-gradient(180deg,rgba(4,20,42,.55),rgba(4,20,42,.82) 55%,rgba(3,14,30,.95)),url(assets/site/connected-glass.jpg);background-image:linear-gradient(180deg,rgba(4,20,42,.55),rgba(4,20,42,.82) 55%,rgba(3,14,30,.95)),image-set(url(assets/site/connected-glass.webp) type("image/webp"),url(assets/site/connected-glass.jpg) type("image/jpeg"))}

/* Safari 17 prefixed-only glass support; modern browsers retain original rules. */
@supports (-webkit-backdrop-filter:blur(1px)){
@supports not (backdrop-filter:blur(1px)){
.header{-webkit-backdrop-filter:blur(25px)}
.asset-label{-webkit-backdrop-filter:blur(10px)}
.chat-launch{-webkit-backdrop-filter:blur(20px)}
.floating-interface{-webkit-backdrop-filter:blur(18px)}
.hero-data-label.target{-webkit-backdrop-filter:blur(14px)}
.access-dialog::backdrop{-webkit-backdrop-filter:blur(7px)}
.header-cta{-webkit-backdrop-filter:blur(18px)}
.home .header{-webkit-backdrop-filter:blur(24px)}
.glass-button{-webkit-backdrop-filter:blur(18px)}
.laptop-bar button{-webkit-backdrop-filter:blur(12px)}
.glass-button,.header-cta{-webkit-backdrop-filter:none}
.home .header{-webkit-backdrop-filter:none}
.laptop-layer{-webkit-backdrop-filter:blur(16px)}
.lab-next .btn{-webkit-backdrop-filter:blur(12px)}
.btn,.glass-button,.header-cta,.scan-actions>[data-scan],.lab-next .btn{-webkit-backdrop-filter:blur(18px) saturate(140%)}
.scan-right .scan-workbench{-webkit-backdrop-filter:blur(20px)}
:where(button,.btn,.glass-button,.header-cta){-webkit-backdrop-filter:blur(22px) saturate(185%)}
.nav-trigger{-webkit-backdrop-filter:none}
.liquid-circle{-webkit-backdrop-filter:blur(20px) saturate(170%)}
.implementation-notes>article,.implementation-notes summary{-webkit-backdrop-filter:blur(20px) saturate(160%)}
.d-lane{-webkit-backdrop-filter:blur(8px)}
.pipe-viz{-webkit-backdrop-filter:blur(18px)}
.st-index a{-webkit-backdrop-filter:blur(16px) saturate(1.4)}
.st-watch{-webkit-backdrop-filter:blur(14px)}
.nx-film::backdrop{-webkit-backdrop-filter:blur(10px)}
.hx-tags span{-webkit-backdrop-filter:blur(12px)}
.hx .pipeline-console{-webkit-backdrop-filter:blur(14px)}
.st-watch2{-webkit-backdrop-filter:blur(14px)}
.lc{-webkit-backdrop-filter:blur(10px)}
.gq-list button{-webkit-backdrop-filter:none!important}
.reel .hud{-webkit-backdrop-filter:blur(14px)}
.reel .net-label{-webkit-backdrop-filter:blur(10px)}
.v4-btn.ghost{-webkit-backdrop-filter:blur(12px)}
.sv-card{-webkit-backdrop-filter:blur(14px)}
.sv-modal::backdrop{-webkit-backdrop-filter:blur(6px)}
.lab-page .agent-section{-webkit-backdrop-filter:blur(6px)}
.lab-page .hx{-webkit-backdrop-filter:blur(6px)}
.lb-m{-webkit-backdrop-filter:blur(14px)}
.psq-body{-webkit-backdrop-filter:none!important}
.ag-tool .agent-network button{-webkit-backdrop-filter:none!important}
.sv-pick{-webkit-backdrop-filter:blur(14px)}
.sk-box{-webkit-backdrop-filter:blur(14px)}
.prefs-panel button{-webkit-backdrop-filter:none!important}
.psq-body{-webkit-backdrop-filter:blur(16px) saturate(160%)}
.cookie{-webkit-backdrop-filter:blur(20px) saturate(170%)}
.cookie.ck-card{-webkit-backdrop-filter:blur(18px)}
.ab-principles article{-webkit-backdrop-filter:blur(14px)}
.nx-reel-replay{-webkit-backdrop-filter:blur(10px)}
.fault{-webkit-backdrop-filter:none!important}
.nx-reel-play{-webkit-backdrop-filter:blur(10px)}
@media(min-width:901px){.header{-webkit-backdrop-filter:blur(18px) saturate(1.4)!important}
}
.hero-proof li{-webkit-backdrop-filter:blur(10px)}
.nx-btn-g{-webkit-backdrop-filter:blur(8px)}
.sv-arch .arch-node{-webkit-backdrop-filter:none!important}
}
}

/* ===== v8 (Oct 27) ===== */
/* Footer: closing question lives in the footer again, no image mosaic */
.footer{min-height:0!important}
.footer .ft-cta{flex:none;display:block;padding:clamp(110px,16vh,170px) 0 clamp(36px,6vh,64px)!important}
.ft-cta-in{width:min(1100px,calc(100% - 12vw));margin:0 auto;text-align:center}
.footer .ft-cta h2{margin:0 auto;max-width:18ch;font:800 clamp(38px,5vw,76px)/1 Manrope,sans-serif;letter-spacing:-.05em;color:#fff;text-wrap:balance}
.footer .ft-cta .nx-close-b{margin-top:30px}

/* Home proof: "Live" status heading, standards strip above the cards, tighter spacing */
#track-record{padding:clamp(56px,8vh,92px) 0 clamp(24px,4vh,44px)!important}
#track-record .tr-head{margin-bottom:22px}
#track-record h2{max-width:none}
#track-record h2 .tr-live{color:#3fd68a!important;display:inline;font:inherit!important;letter-spacing:inherit!important}
#track-record .tr-live i{display:inline-block;width:.22em;height:.22em;margin:0 .2em 0 0;vertical-align:.2em;border-radius:50%;background:#3fd68a;animation:trlive 2s ease-out infinite}
@keyframes trlive{0%{box-shadow:0 0 0 0 rgba(63,214,138,.6)}70%{box-shadow:0 0 0 .3em rgba(63,214,138,0)}100%{box-shadow:0 0 0 0 rgba(63,214,138,0)}}
body.reduce-motion #track-record .tr-live i{animation:none}
@media(prefers-reduced-motion:reduce){#track-record .tr-live i{animation:none}}
#track-record .tr-std{padding:4px 0 0!important;border:0!important;background:transparent!important;-webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
#track-record .tr-std .cx-std-row span{color:#e8eef6!important}
#track-record .tr-std .cx-std-row .f1{color:#8fd3ec!important}
#track-record .tr-std .cx-std-row .f3{color:#9fb3cc!important}
#track-record .tr-rail{padding:26px 6vw 30px}

/* Services: dark gallery behind the headline, gentle drift */
.sv-flora{--sh:clamp(480px,70vh,660px);--g:16px;position:relative;height:var(--sh);overflow:hidden;background:#04080f;display:grid;place-items:center;isolation:isolate}
.sv-flora .sv-reel{position:absolute;inset:0;width:auto;margin:0;transform:none;display:grid;align-content:center;gap:var(--g);-webkit-mask:none;mask:none;z-index:-2}
.sv-flora .sv-reel-row{--th:clamp(170px,26vh,250px);gap:var(--g);animation:svflora 140s linear infinite}
.sv-flora .sv-reel-row.rev{animation:svflora-r 160s linear infinite}
@keyframes svflora{from{transform:translateX(0)}to{transform:translateX(calc(-100%/3))}}
@keyframes svflora-r{from{transform:translateX(calc(-100%/3))}to{transform:translateX(0)}}
.sv-flora .sv-reel-row span{height:var(--th);width:auto;aspect-ratio:3/2;border-radius:14px;border:0;box-shadow:none;background:#0b1424}
.sv-flora .sv-reel-row span.p{aspect-ratio:2/3}
.sv-flora .sv-reel-row span.w{aspect-ratio:21/10}
.sv-flora .sv-reel-row img{object-position:center}
.sv-flora:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50% 44% at 50% 50%,rgba(4,8,15,.6),rgba(4,8,15,.2) 72%,transparent),linear-gradient(rgba(4,8,15,.5),rgba(4,8,15,.5)),linear-gradient(180deg,#04080f 0,transparent 14%,transparent 86%,#04080f 100%)}
.sv-flora h1.sv-title{position:relative;z-index:1;margin:0;padding:0 6vw;text-align:center;font:800 clamp(52px,7.4vw,124px)/.96 Manrope,sans-serif!important;letter-spacing:-.06em!important;color:#fff!important;text-shadow:0 4px 40px rgba(0,0,0,.5)}
.sv-flora h1.sv-title .ch{color:inherit!important;font:inherit!important}
.sv-flora h1.sv-title .sv-l2,.sv-flora h1.sv-title .sv-l2 .ch{color:#8fd3ec!important}
.sv-flora + .sv-hero{padding-top:clamp(40px,7vh,72px)!important}
body.reduce-motion .sv-flora .sv-reel-row{animation:none!important}
@media(max-width:600px){.sv-flora{--sh:min(480px,72svh);--g:10px}.sv-flora .sv-reel-row{--th:150px}.sv-flora h1.sv-title{font-size:clamp(32px,9.6vw,44px)!important}.sv-flora .sv-reel-row span{border-radius:10px}}
.sv-flora h1.sv-title .w,.sv-flora h1.sv-title .word{white-space:nowrap}
/* Perspectives: keep the laptop clear of the fade into the page */
.ins-rock .laptop-pin{padding-bottom:110px!important}
.ins-rock:after{height:90px!important}
/* v9 */
.orgs-row span{opacity:1!important}
.orgs-row .f0{font-weight:900!important}.orgs-row .f1{font-weight:700!important}.orgs-row .f2{font-weight:500!important}.orgs-row .f3{font-weight:700!important}.orgs-row .f4{font-weight:800!important}
#track-record h2{font-size:clamp(34px,4vw,62px)!important}
.cx-std-row .rx{text-transform:none!important;letter-spacing:.04em!important}
.trc b{text-wrap:balance}


/* v10: requested card, service, contact, and image delivery refinements. */
@font-face{font-family:'Instrument Serif';src:url('assets/fonts/instrument-serif-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('assets/fonts/instrument-serif-latin-400-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
.tr-rail .trc{width:300px;height:460px;min-height:460px;padding:20px 22px 22px;overflow:hidden}
.tr-rail .trc-img{display:block;width:100%;height:132px;flex:0 0 132px;object-fit:cover;margin:0 0 14px}
.tr-rail .trc-org{min-height:30px;line-height:1.3}
.tr-rail .trc b{font-size:44px;line-height:1.08;min-height:66px;margin:5px 0 10px;padding:0;overflow-wrap:normal;word-break:normal}
.tr-rail .trc b.trc-long{font-size:27px;line-height:1.15}
.tr-rail .trc p{font-size:14px;line-height:1.43}
.tr-rail .trc a{margin-top:auto}
@media(max-width:600px){.tr-rail .trc{width:290px;height:460px;min-height:460px}.tr-rail .trc b{font-size:40px}.tr-rail .trc b.trc-long{font-size:26px}}
.sv-flora{height:calc(100svh - 64px);min-height:0}
.sv-flora:before{background:radial-gradient(50% 44% at 50% 50%,rgba(4,8,15,.46),rgba(4,8,15,.12) 72%,transparent),linear-gradient(rgba(4,8,15,.29),rgba(4,8,15,.29)),linear-gradient(180deg,#04080f 0,transparent 14%,transparent 86%,#04080f 100%)}
.sv-flora h1.sv-title,.sv-flora h1.sv-title .ch{font-family:'Instrument Serif',Georgia,serif!important;font-weight:400!important;letter-spacing:-.035em!important}
.sv-flora h1.sv-title{font-size:clamp(58px,8vw,132px)!important}
.sv-flora h1.sv-title .sv-l2,.sv-flora h1.sv-title .sv-l2 .ch{font-family:inherit!important;font-weight:inherit!important}
.sv-arch{width:min(1240px,calc(100% - 10vw));margin:36px auto 0}
.sv-arch .arch-map{height:auto;aspect-ratio:16/5}
.sv-arch .arch-node{width:15%!important;height:27%!important}
.sv-arch .arch-node.core{height:30%!important}
.sv-faq{position:relative;width:min(980px,calc(100% - 10vw));max-width:980px;grid-template-columns:minmax(0,590px) minmax(0,340px)!important;gap:28px;padding-top:62px}
.sv-faq #sv-faq-t{position:absolute;top:0;left:0;margin:0;font:800 26px/1.1 Manrope,sans-serif;letter-spacing:-.04em;text-transform:none;color:var(--ink)}
.sv-faq .sv-notsure{position:relative;top:0}
.sv-faq .sv-q summary{padding:12px 16px!important}
.contact-layout .founder-led{font:800 15px/1.2 Manrope,sans-serif;letter-spacing:.02em;text-transform:none}
.contact-note{font:800 15px/1.5 Manrope,sans-serif;color:#111}
.contact-note .location-pin{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-right:4px}
.contact-note small{font:700 12px/1.5 Manrope,sans-serif;color:#111}
body.dark .contact-note,body.dark .contact-note small{color:#fff}
.consultancy-copy .text-link{font-weight:800}
.footer{background:#04142a image-set(url('assets/site/connected-glass.webp') type('image/webp'),url('assets/site/connected-glass.jpg') type('image/jpeg')) center 35%/cover no-repeat!important}
.scan-backdrop{background-image:linear-gradient(105deg,#eaf3facf,#eaf3fa95),image-set(url('assets/site/scan-droplet-backdrop.webp') type('image/webp'),url('assets/site/scan-droplet-backdrop.jpg') type('image/jpeg'))}
.scan-backdrop:before{background-image:image-set(url('assets/site/scan-droplet-backdrop.webp') type('image/webp'),url('assets/site/scan-droplet-backdrop.jpg') type('image/jpeg'))}
.dark .scan-backdrop{background-image:linear-gradient(105deg,#041727df,#092c43a8),image-set(url('assets/site/scan-droplet-backdrop.webp') type('image/webp'),url('assets/site/scan-droplet-backdrop.jpg') type('image/jpeg'))}
@media(min-width:701px) and (max-width:900px){.sv-flora{height:calc(100svh - 76px)}}
@media(max-width:700px){.sv-flora{height:calc(100svh - 72px);min-height:0}.sv-flora h1.sv-title{font-size:clamp(38px,10vw,54px)!important}.sv-arch .arch-map{min-width:620px;height:360px!important;aspect-ratio:auto}.sv-faq{grid-template-columns:minmax(0,1fr)!important}.ab-f-card{min-width:0}.ab-f-main,.ab-f-side,.ab-box{min-width:0}.ab-cred li{flex-wrap:wrap}.ab-cred b{white-space:normal}.ab-hero h1{overflow-wrap:normal}.sk-box{min-width:0;overflow-wrap:break-word}}

.footer:before{background:linear-gradient(180deg,rgba(4,20,42,.55),rgba(4,20,42,.82) 55%,rgba(3,14,30,.95)),#04142a image-set(url('assets/site/connected-glass.webp') type('image/webp'),url('assets/site/connected-glass.jpg') type('image/jpeg')) center/cover no-repeat}

/* ===== v11 ===== */
/* Track-record cards: one size, one line, same layout */
.tr-rail{align-items:stretch!important}
.tr-rail .trc{--r:0deg!important;--y:0px!important;transform:none;width:300px;height:470px;min-height:470px}
.tr-rail .trc:hover{transform:translateY(-8px)}
.tr-rail .trc-img{height:140px;flex:0 0 140px;object-position:center}
.tr-rail .trc-org{min-height:30px}
.tr-rail .trc b{min-height:0;margin:8px 0 10px}
@media(max-width:600px){.tr-rail .trc{width:280px;height:470px;min-height:470px}}

/* Services hero: Flora-style gallery. Portrait cards on top, wide cards below */
.sv-flora{--g:14px;height:calc(100svh - 64px);min-height:560px}
.sv-flora .sv-reel{align-content:center;gap:var(--g);padding:0}
.sv-flora .sv-reel-row{gap:var(--g);animation:svflora 150s linear infinite}
.sv-flora .sv-reel-row.rev{animation:svflora-r 170s linear infinite}
.sv-flora .sv-reel-row span.p{height:calc((100svh - 64px)*.44);aspect-ratio:3/4;border-radius:16px}
.sv-flora .sv-reel-row span.w{height:calc((100svh - 64px)*.40);aspect-ratio:16/10;border-radius:16px}
.sv-flora .sv-reel-row img{width:100%;height:100%;object-fit:cover}
.sv-flora:before{background:radial-gradient(48% 40% at 50% 50%,rgba(4,8,15,.5),rgba(4,8,15,.1) 75%,transparent),linear-gradient(rgba(4,8,15,.22),rgba(4,8,15,.22))!important}
.sv-flora h1.sv-title,.sv-flora h1.sv-title .ch{font-family:Manrope,sans-serif!important;font-weight:800!important;letter-spacing:-.06em!important}
.sv-flora h1.sv-title{font-size:clamp(52px,7.4vw,124px)!important;line-height:.96!important;text-shadow:0 6px 40px rgba(0,0,0,.55)}
@media(max-width:700px){.sv-flora{height:calc(100svh - 72px);min-height:0}.sv-flora .sv-reel-row span.p{height:min(240px,34svh)}.sv-flora .sv-reel-row span.w{height:min(200px,28svh)}.sv-flora h1.sv-title{font-size:clamp(34px,10vw,48px)!important}}
