
:root{
  --midnight:#0A1330;
  --midnight-2:#111C42;
  --porcelain:#F3F5F8;
  --paper:#FFFFFF;
  --ink:#0E1A2E;
  --slate:#5B6678;
  --rule:#DCE1E8;
  --gold:#FF9A1F;
  --gold-deep:#C86A00;
  --teal:#2B8BD6;
  --teal-deep:#1B75BC;
  --on-dark:#EEF2FA;
  --on-dark-mute:#A3AECB;
  --on-dark-rule:rgba(238,242,250,.14);
  --display:'Bricolage Grotesque', 'Avenir Next', 'Segoe UI', sans-serif;
  --body:'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --max:75rem;
  --header-h:4.5rem;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --porcelain:#0C1428; --paper:#121C35; --ink:#E9EDF5; --slate:#A3AECB; --rule:rgba(238,242,250,.12);
    --gold-deep:#FF9A1F; --teal-deep:#5AA9EC;
  }
}
:root[data-theme="dark"]{
  --porcelain:#0C1428; --paper:#121C35; --ink:#E9EDF5; --slate:#A3AECB; --rule:rgba(238,242,250,.12);
  --gold-deep:#FF9A1F; --teal-deep:#5AA9EC;
}
*,*::before,*::after{box-sizing:border-box;}
html{font-size:clamp(15px, calc(0.3vw + 12.2px), 20px);scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + env(safe-area-inset-top,0px));background:var(--porcelain);}
body{margin:0;background:var(--porcelain);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
img,svg,canvas{max-width:100%;}
a{color:inherit;}
p{margin:0;}
h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:600;letter-spacing:-0.022em;line-height:1.08;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 2rem;}
:focus-visible{outline:2px solid var(--gold);outline-offset:0.1875rem;border-radius:0.25rem;}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-delay:0s !important;transition-duration:.001ms !important;}
  html{scroll-behavior:auto;}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:0.625rem;font-family:var(--body);font-weight:600;font-size:.92rem;line-height:1.2;text-decoration:none;padding:.7rem 1.25rem;border-radius:62.4375rem;border:1px solid transparent;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;}
.btn-gold{background:var(--gold);color:#1A1204;}
.btn-gold:hover{background:#FFAE4A;}
.btn-line{border-color:var(--on-dark-rule);color:var(--on-dark);background:transparent;}
.btn-line:hover{border-color:var(--on-dark);}
.btn-ink,.btn-primary{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.btn-ink:hover,.btn-primary:hover{background:var(--teal-deep);border-color:var(--teal-deep);color:#fff;}
.btn-ghost{border-color:var(--rule);color:var(--ink);background:transparent;}
.btn-ghost:hover{border-color:var(--ink);}
.text-link{font-weight:600;color:var(--teal-deep);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;}
.text-link:hover{color:var(--gold-deep);}

/* ---------- Header ---------- */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;color:var(--on-dark);background:transparent;border-bottom:1px solid transparent;transition:background .25s ease,color .25s ease,border-color .25s ease;}
header.site.solid{background:color-mix(in srgb, var(--porcelain) 90%, transparent);-webkit-backdrop-filter:blur(0.875rem);backdrop-filter:blur(0.875rem);color:var(--ink);border-bottom-color:var(--rule);}
.nav{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;max-width:var(--max);margin:0 auto;padding:0 2rem;}
.brand{display:flex;align-items:center;gap:0.6875rem;text-decoration:none;color:inherit;}
.brand svg{width:2rem;height:2rem;flex:none;}
.brand-word{font-family:var(--display);font-size:1.4rem;font-weight:600;letter-spacing:-0.03em;}
nav.links{display:flex;align-items:center;gap:1.875rem;}
nav.links > a, .nav-drop-btn{font-family:var(--body);font-size:.95rem;font-weight:500;color:inherit;text-decoration:none;background:none;border:none;padding:0.375rem 0;cursor:pointer;opacity:.86;}
nav.links > a:hover, .nav-drop-btn:hover{opacity:1;}
.nav-dropdown{position:relative;}
.nav-drop-btn{display:flex;align-items:center;gap:0.4375rem;}
.nav-drop-btn .caret{width:0.4375rem;height:0.4375rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px;}
.nav-dropdown-menu{display:none;position:absolute;top:calc(100% + 1.125rem);left:-18px;min-width:18.75rem;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:1rem;padding:0.5rem;flex-direction:column;box-shadow:0 1.5rem 3.75rem -20px rgba(10,19,48,.35);}
.nav-dropdown-menu.open{display:flex;}
.nav-dropdown-menu a{padding:0.75rem 0.875rem;border-radius:0.625rem;text-decoration:none;font-size:.95rem;font-weight:500;}
.nav-dropdown-menu a:hover{background:var(--porcelain);color:var(--teal-deep);}
nav.links > a.nav-cta{opacity:1;background:var(--gold);color:#1A1204;padding:0.625rem 1.25rem;border-radius:62.4375rem;font-weight:600;}
nav.links > a.nav-cta:hover{background:#FFAE4A;}
.menu-btn{display:none;width:2.625rem;height:2.625rem;border-radius:62.4375rem;border:1px solid currentColor;background:transparent;color:inherit;position:relative;cursor:pointer;opacity:.8;}
.menu-btn span{position:absolute;left:0.75rem;right:0.75rem;height:1.5px;background:currentColor;}
.menu-btn span:nth-child(1){top:0.9375rem;} .menu-btn span:nth-child(2){top:1.25rem;} .menu-btn span:nth-child(3){top:1.5625rem;}
@media (max-width:960px){
  .menu-btn{display:block;}
  nav.links{position:fixed;left:0;right:0;top:calc(var(--header-h) + env(safe-area-inset-top,0px));bottom:0;background:var(--porcelain);color:var(--ink);flex-direction:column;align-items:stretch;gap:0;padding:0.75rem 2rem 2.5rem;overflow-y:auto;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease;border-top:1px solid var(--rule);}
  nav.links.open{opacity:1;pointer-events:auto;transform:none;}
  nav.links > a, .nav-drop-btn{padding:1rem 0;border-bottom:1px solid var(--rule);font-size:1.05rem;width:100%;text-align:left;justify-content:space-between;}
  .nav-dropdown-menu{position:static;box-shadow:none;border:none;min-width:0;padding:0.25rem 0 0.5rem 0.75rem;background:transparent;}
  nav.links > a.nav-cta{margin-top:1.375rem;text-align:center;border-bottom:none;padding:0.9375rem 1.25rem;}
}

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--midnight);color:var(--on-dark);margin-top:calc(-1 * var(--header-h));padding-top:calc(var(--header-h) + 2.5rem);overflow:hidden;isolation:isolate;}
.hero-bg{position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(60% 55% at 78% 45%, rgba(43,139,214,.20), transparent 70%),
    radial-gradient(45% 40% at 70% 35%, rgba(255,154,31,.16), transparent 70%),
    radial-gradient(70% 60% at 0% 100%, rgba(17,28,66,1), transparent 70%);}
.hero-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(238,242,250,.10) 1px, transparent 1.2px);background-size:1.75rem 1.75rem;-webkit-mask-image:radial-gradient(70% 70% at 70% 45%, #000, transparent 75%);mask-image:radial-gradient(70% 70% at 70% 45%, #000, transparent 75%);}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:1.5rem;align-items:center;min-height:min(78vh,47.5rem);}
.hero-kicker{display:inline-flex;align-items:center;gap:0.625rem;font-size:.92rem;color:var(--on-dark-mute);padding:0.4375rem 0.875rem 0.4375rem 0.75rem;border:1px solid var(--on-dark-rule);border-radius:62.4375rem;background:rgba(238,242,250,.03);}
.pulse-dot{width:0.5rem;height:0.5rem;border-radius:50%;background:var(--teal);box-shadow:0 0 0 0 rgba(43,139,214,.6);animation:vn-pulse 2.4s ease-out infinite;}
@keyframes vn-pulse{0%{box-shadow:0 0 0 0 rgba(43,139,214,.55);}80%,100%{box-shadow:0 0 0 0.625rem rgba(43,139,214,0);}}
.hero-title{font-size:clamp(2.3rem,3.9vw,3.45rem);font-weight:600;letter-spacing:-0.04em;line-height:.98;margin-top:0;}
.hero-title .ln{display:block;overflow:hidden;padding-bottom:.06em;}
@media (max-width:560px){.hero-title .ln{white-space:normal;}}
.hero-title .ln > span{display:block;transform:translateY(105%);animation:vn-rise .9s cubic-bezier(.2,.7,.1,1) forwards;}
.hero-title .ln:nth-child(2) > span{animation-delay:.12s;}
.hero-title .ln:nth-child(3) > span{animation-delay:.24s;color:var(--gold);}
@keyframes vn-rise{to{transform:none;}}
.hero-dek{font-size:1.14rem;line-height:1.6;color:var(--on-dark-mute);max-width:32.5rem;margin-top:1.75rem;opacity:0;animation:vn-fade .8s ease forwards .5s;}
.hero-ctas{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:2.25rem;opacity:0;animation:vn-fade .8s ease forwards .65s;}
@keyframes vn-fade{to{opacity:1;}}
.hero-visual{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
#heroCanvas{display:block;width:100%;aspect-ratio:1/1;max-height:40rem;}
.visual-caption{font-size:.84rem;color:var(--on-dark-mute);text-align:center;max-width:22.5rem;margin:-8px auto 0;opacity:.8;}
.hero-foot{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--on-dark-rule);margin-top:2.5rem;}
.hero-foot div{padding:1.625rem 1.5rem 2.125rem;border-left:1px solid var(--on-dark-rule);}
.hero-foot div:first-child{border-left:none;padding-left:0;}
.hero-foot strong{display:block;font-family:var(--display);font-size:1.25rem;font-weight:600;letter-spacing:-0.02em;color:var(--on-dark);}
.hero-foot span{display:block;font-size:.9rem;color:var(--on-dark-mute);margin-top:0.25rem;line-height:1.45;}
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;min-height:0;gap:0.5rem;}
  .hero-visual{max-width:42rem;margin:0 auto;width:100%;}
  #heroCanvas{width:100% !important;}
  .hero-foot{grid-template-columns:1fr 1fr;}
  .hero-foot div:nth-child(3){border-left:none;padding-left:0;}
  .hero-foot div:nth-child(n+3){border-top:1px solid var(--on-dark-rule);}
}
@media (max-width:520px){.hero-foot{grid-template-columns:1fr;} .hero-foot div{border-left:none;padding-left:0;border-top:1px solid var(--on-dark-rule);} .hero-foot div:first-child{border-top:none;}}

/* ---------- Shared section heads ---------- */
.block{padding:7.5rem 0;}
.section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3rem;align-items:center;margin-bottom:4rem;}
.section-head p{border-left:1px solid var(--rule);padding:0.35rem 0 0.35rem 2.5rem;}
.section-head h2{font-size:clamp(2.1rem,4.4vw,3.6rem);letter-spacing:-0.035em;max-width:45rem;}
.section-head p{color:var(--slate);font-size:1.06rem;max-width:26.25rem;}
@media (max-width:860px){.section-head{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2.75rem;} .section-head p{border-left:none;padding:0;} .block{padding:5.5rem 0;}}

/* ---------- About statement ---------- */
.about{background:var(--porcelain);}
.about-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.9fr);gap:4.5rem;align-items:start;}
.statement{font-size:clamp(1.8rem,3.4vw,2.85rem);font-weight:500;letter-spacing:-0.03em;line-height:1.16;}
.statement .soft{color:var(--slate);}
.about-side > p{color:var(--slate);font-size:1.04rem;}
.about-facts{margin:1.875rem 0 1.875rem;display:grid;gap:0;}
.about-facts div{display:grid;grid-template-columns:6.875rem 1fr;gap:1rem;padding:0.875rem 0;border-top:1px solid var(--rule);}
.about-facts div:last-child{border-bottom:1px solid var(--rule);}
.about-facts dt{font-weight:600;font-size:.94rem;}
.about-facts dd{margin:0;color:var(--slate);font-size:.94rem;}
@media (max-width:900px){.about-grid{grid-template-columns:1fr;gap:2.5rem;}}

/* ---------- Practices (interactive) ---------- */
.practices{background:var(--paper);}
.svc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3.5rem;align-items:stretch;}
.svc-list{border-top:1px solid var(--rule);}
.svc-row{position:relative;display:grid;grid-template-columns:2.75rem 1fr 2.5rem;gap:1.125rem;align-items:center;width:100%;padding:1.75rem 0.25rem;border:none;border-bottom:1px solid var(--rule);background:none;font:inherit;color:var(--slate);text-align:left;text-decoration:none;cursor:pointer;transition:color .2s ease;}
.svc-row::before{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:linear-gradient(90deg,var(--gold),var(--teal));transition:width .45s cubic-bezier(.2,.7,.1,1);}
.svc-row.is-active,.svc-row:hover{color:var(--ink);}
.svc-row.is-active::before{width:100%;}
.svc-glyph{width:2.75rem;height:2.75rem;border-radius:0.75rem;border:1px solid var(--rule);display:grid;place-items:center;transition:border-color .2s ease,background .2s ease;}
.svc-glyph svg{width:1.375rem;height:1.375rem;}
.svc-row.is-active .svc-glyph{border-color:transparent;background:var(--midnight);color:var(--gold);}
.svc-name{font-family:var(--display);font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:600;letter-spacing:-0.025em;line-height:1.15;display:block;}
.svc-short{display:block;font-size:.95rem;color:var(--slate);margin-top:0.25rem;}
.svc-go{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--rule);display:grid;place-items:center;transition:transform .25s ease,background .2s ease,border-color .2s ease;}
.svc-go svg{width:1rem;height:1rem;}
.svc-row.is-active .svc-go{background:var(--gold);border-color:var(--gold);color:#1A1204;transform:rotate(-45deg);}
.svc-panel{position:relative;contain:size;background:var(--midnight);color:var(--on-dark);border-radius:1.5rem;padding:2.25rem;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;padding:1.75rem 2rem;}
.svc-panel::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(80% 60% at 100% 0%, rgba(43,139,214,.22), transparent 70%),radial-gradient(60% 50% at 0% 100%, rgba(255,154,31,.14), transparent 70%);}
.svc-art{height:11.875rem;margin:-6px -6px 1.375rem;border-radius:1rem;border:1px solid var(--on-dark-rule);background:rgba(238,242,250,.02);display:grid;place-items:center;}
.svc-art svg{width:100%;height:100%;}
.svc-panel h3{font-size:1.9rem;letter-spacing:-0.03em;}
.svc-panel p{color:var(--on-dark-mute);margin-top:0.875rem;font-size:1rem;line-height:1.6;}
.svc-chips{list-style:none;padding:0;margin:1.375rem 0 1.75rem;display:flex;flex-wrap:wrap;gap:0.5rem;}
.svc-chips li{font-size:.86rem;padding:0.375rem 0.75rem;border-radius:62.4375rem;border:1px solid var(--on-dark-rule);color:var(--on-dark);}
.svc-panel .btn{margin-top:auto;align-self:flex-start;}
.svc-panel .swap{animation:vn-swap .35s ease;}
@keyframes vn-swap{from{opacity:0;transform:translateY(0.375rem);}to{opacity:1;transform:none;}}
@media (max-width:900px){
  .svc{grid-template-columns:1fr;}
  .svc-panel{display:none;}
  .svc-row{grid-template-columns:2.75rem 1fr 2.5rem;}
}

/* ---------- AI capability terrace ---------- */
.ai{background:var(--midnight);color:var(--on-dark);position:relative;overflow:hidden;isolation:isolate;}
.ai::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 60% at 90% 90%, rgba(43,139,214,.18), transparent 70%);}
.ai-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4.5rem;align-items:start;}
.ai-copy{position:sticky;top:calc(var(--header-h) + 2.5rem);}
.ai-copy h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;}
.ai-copy p{color:var(--on-dark-mute);margin-top:1.375rem;font-size:1.06rem;max-width:28.75rem;}
.ai-copy .ai-note{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--on-dark-rule);font-size:.95rem;}
.terrace{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.75rem;counter-reset:lvl;}
.terrace li{--i:0;width:calc(64% + var(--i) * 9%);align-self:center;display:grid;grid-template-columns:3.25rem 1fr;gap:1.125rem;align-items:start;padding:1.5rem 1.625rem;border-radius:1.125rem;border:1px solid var(--on-dark-rule);background:linear-gradient(135deg, rgba(238,242,250,.05), rgba(238,242,250,.01));transition:border-color .25s ease, background .25s ease;}
.terrace li:hover{border-color:rgba(43,139,214,.55);background:linear-gradient(135deg, rgba(43,139,214,.12), rgba(238,242,250,.01));}
.terrace .lvl{font-family:var(--display);font-size:1.05rem;font-weight:600;color:var(--gold);}
.terrace .bars{display:flex;gap:0.1875rem;margin-top:0.5rem;}
.terrace .bars i{width:0.375rem;height:0.875rem;border-radius:2px;background:rgba(238,242,250,.14);}
.terrace .bars i.on{background:var(--teal);}
.terrace h3{font-size:1.28rem;letter-spacing:-0.02em;}
.terrace p{color:var(--on-dark-mute);font-size:.96rem;margin-top:0.375rem;line-height:1.55;}
@media (max-width:900px){.ai-grid{grid-template-columns:1fr;gap:2.75rem;} .ai-copy{position:static;} .terrace li{width:calc(84% + var(--i) * 4%);}}

/* ---------- Oracle managed services ---------- */
.oracle{background:var(--porcelain);}
.oracle-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4.5rem;align-items:start;}
.cycle{position:relative;}
.cycle svg{width:100%;height:auto;display:block;}
.cycle-legend{display:grid;grid-template-columns:1fr 1fr;gap:0 1.75rem;margin-top:0.625rem;}
.cycle-legend div{padding:1rem 0;border-top:1px solid var(--rule);}
.cycle-legend strong{font-family:var(--display);font-size:1.08rem;font-weight:600;letter-spacing:-0.015em;}
.cycle-legend p{color:var(--slate);font-size:.93rem;margin-top:0.25rem;line-height:1.5;}
.readiness h3{font-size:1.7rem;letter-spacing:-0.03em;}
.readiness > p{color:var(--slate);margin-top:0.75rem;max-width:30rem;}
.steps{list-style:none;margin:1.75rem 0 0;padding:0;counter-reset:st;}
.steps li{counter-increment:st;display:grid;grid-template-columns:2.5rem 1fr;gap:0.875rem;padding:0.9375rem 0;border-top:1px solid var(--rule);font-weight:500;}
.steps li:last-child{border-bottom:1px solid var(--rule);}
.steps li::before{content:counter(st);font-family:var(--display);font-weight:600;color:var(--teal-deep);}
.modules{margin-top:2.25rem;}
.modules h4{font-family:var(--body);font-size:.95rem;font-weight:600;}
.modules p{color:var(--slate);margin-top:0.375rem;font-size:.98rem;line-height:1.7;}
.oracle-cta{margin-top:2rem;display:flex;gap:0.75rem;flex-wrap:wrap;}
@media (max-width:900px){.oracle-grid{grid-template-columns:1fr;gap:3rem;}}

/* ---------- Process ---------- */
.process-sec{background:var(--paper);}
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;}
.timeline::before{content:"";position:absolute;left:0;right:0;top:1.375rem;height:1px;background:var(--rule);}
.timeline li{position:relative;padding-right:1.5rem;}
.timeline .node{position:relative;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--paper);border:1px solid var(--rule);display:grid;place-items:center;font-family:var(--display);font-weight:600;color:var(--ink);}
.timeline::after{content:"";position:absolute;left:1.375rem;top:1.375rem;height:2px;margin-top:-0.5px;width:var(--tl,0%);background:linear-gradient(90deg,var(--gold),var(--teal));transition:width .55s cubic-bezier(.4,0,.2,1);}
.timeline .node{transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease;z-index:1;}
.timeline li.is-lit .node{background:var(--midnight);color:var(--gold);border-color:var(--midnight);transform:scale(1.08);}
.timeline li.is-current .node{box-shadow:0 0 0 0.375rem rgba(255,154,31,.18);}
.timeline h3,.timeline p{transition:opacity .45s ease;}
.timeline li:not(.is-lit) h3,.timeline li:not(.is-lit) p{opacity:.38;}
.timeline.no-anim li h3,.timeline.no-anim li p{opacity:1;}
.timeline h3{font-size:1.3rem;margin-top:1.375rem;letter-spacing:-0.02em;}
.timeline p{color:var(--slate);font-size:.96rem;margin-top:0.5rem;line-height:1.55;}
.constants{margin-top:4rem;padding-top:1.75rem;border-top:1px solid var(--rule);display:grid;grid-template-columns:12.5rem 1fr;gap:1.75rem;}
.constants h4{font-family:var(--body);font-size:.98rem;font-weight:600;}
.constants p{color:var(--slate);font-size:1.02rem;max-width:47.5rem;}
@media (max-width:900px){
  .timeline{grid-template-columns:1fr;gap:0;}
  .timeline::before{left:1.375rem;right:auto;top:0;bottom:0;width:1px;height:auto;}
  .timeline::after{left:1.375rem;top:0;width:2px;margin-top:0;margin-left:-0.5px;height:var(--tlv,0%);transition:height .55s cubic-bezier(.4,0,.2,1);}
  .timeline li{display:grid;grid-template-columns:2.75rem 1fr;column-gap:1.25rem;padding:0 0 1.875rem;}
  .timeline h3{margin-top:0.5rem;} .timeline p{grid-column:2;}
  .timeline .node{grid-row:span 2;}
  .constants{grid-template-columns:1fr;gap:0.625rem;}
}

/* ---------- Clients ---------- */
.clients-sec{background:var(--porcelain);padding:4.5rem 0;}
.clients-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;}
.clients-row h2{font-family:var(--body);font-size:1rem;font-weight:600;letter-spacing:0;color:var(--slate);flex:0 0 auto;}
.wordmarks{display:flex;flex-wrap:wrap;align-items:center;gap:1.375rem 3.25rem;color:var(--slate);}
.wm{font-size:1.45rem;line-height:1;transition:color .2s ease;}
.wm:hover{color:var(--ink);}
.wm-oracle{font-family:var(--body);font-weight:700;letter-spacing:.14em;font-size:1.2rem;}
.wm-telus{font-family:var(--display);font-weight:700;letter-spacing:-.01em;}
.wm-rogers{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:600;}
.wm-jll{font-family:var(--display);font-weight:700;letter-spacing:-.05em;font-size:1.6rem;}
.wm-descartes{font-family:var(--body);font-weight:400;letter-spacing:.02em;}
.wm-huron{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:.04em;}

/* ---------- Home insights ---------- */
.insights-home{background:var(--paper);}
.insight-list{border-top:1px solid var(--rule);}
.insight-list .insight-card{display:grid;grid-template-columns:13.75rem minmax(0,1fr) 8.75rem;gap:2rem;align-items:baseline;width:100%;padding:1.875rem 0;border:none;border-bottom:1px solid var(--rule);background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;}
.insight-list .insight-card .tag{font-size:.9rem;font-weight:600;color:var(--teal-deep);}
.insight-list .insight-card h3{font-size:clamp(1.25rem,2vw,1.6rem);letter-spacing:-0.02em;line-height:1.2;transition:color .2s ease;}
.insight-list .insight-card p{grid-column:2;color:var(--slate);font-size:.98rem;margin-top:-18px;max-width:40rem;}
.insight-list .insight-card .meta{grid-column:3;grid-row:1;text-align:right;font-size:.88rem;color:var(--slate);}
.insight-list .insight-card:hover h3{color:var(--teal-deep);}
.insights-foot{margin-top:2.5rem;}
@media (max-width:860px){
  .insight-list .insight-card{grid-template-columns:1fr;gap:0.5rem;}
  .insight-list .insight-card p{grid-column:1;margin-top:0;}
  .insight-list .insight-card .meta{grid-column:1;grid-row:auto;text-align:left;}
}

/* ---------- Contact band ---------- */
.contact{background:var(--midnight);color:var(--on-dark);position:relative;overflow:hidden;isolation:isolate;padding:8.125rem 0 6.875rem;}
.contact::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(45% 70% at 85% 50%, rgba(255,154,31,.18), transparent 70%),radial-gradient(40% 60% at 10% 100%, rgba(43,139,214,.16), transparent 70%);}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:4rem;align-items:end;}
.contact h2{font-size:clamp(2.4rem,5.4vw,4.6rem);letter-spacing:-0.04em;line-height:1;}
.contact-lede{color:var(--on-dark-mute);font-size:1.1rem;max-width:35rem;margin-top:1.625rem;}
.contact .hero-ctas{opacity:1;animation:none;}
.contact-points{list-style:none;margin:0;padding:0;}
.contact-points li{padding:0.8rem 0;border-top:1px solid var(--on-dark-rule);color:var(--on-dark-mute);font-size:.98rem;}
.contact-points li:last-child{border-bottom:1px solid var(--on-dark-rule);}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:2.75rem;}}

/* ---------- Footer ---------- */
footer{background:var(--midnight-2);color:var(--on-dark-mute);padding:4.5rem 0 0;overflow:hidden;}
.foot-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:2.5rem;}
.foot-brand p{margin-top:1rem;font-size:.94rem;max-width:18.75rem;line-height:1.6;}
footer h5{font-family:var(--body);font-size:.92rem;font-weight:600;color:var(--on-dark);margin:0 0 1rem;}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.625rem;}
footer a{text-decoration:none;color:var(--on-dark-mute);font-size:.94rem;}
footer a:hover{color:var(--gold);}
.foot-office{font-size:.94rem;line-height:1.6;margin-bottom:1.25rem;}
.foot-office strong{display:block;color:var(--on-dark);font-weight:600;margin-bottom:0.25rem;}
.foot-social{display:flex;gap:0.625rem;margin-top:1.375rem;}
.foot-social a{width:2.375rem;height:2.375rem;border-radius:50%;border:1px solid var(--on-dark-rule);display:grid;place-items:center;}
.foot-social a:hover{border-color:var(--gold);}
.foot-bottom{margin-top:3.5rem;padding:1.375rem 0;border-top:1px solid var(--on-dark-rule);display:flex;justify-content:space-between;flex-wrap:wrap;gap:0.75rem;font-size:.86rem;}
.foot-giant{font-family:var(--display);font-weight:700;letter-spacing:-0.06em;line-height:.8;font-size:clamp(6rem,24vw,21rem);color:transparent;-webkit-text-stroke:1px rgba(238,242,250,.12);text-align:center;margin-top:1.5rem;user-select:none;transform:translateY(12%);}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr;}}

/* ---------- Secondary views (service, insights, article, products, industries, careers) ---------- */
#main-view.hidden{display:none;}
.app-view{display:none;background:var(--porcelain);}
.app-view.active{display:block;}
.back-link{font-family:var(--body);font-size:.95rem;font-weight:500;color:var(--slate);background:none;border:none;cursor:pointer;padding:0;}
.back-link:hover{color:var(--teal-deep);}
.eyebrow-line{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.375rem;}
.eyebrow-line .tick{width:1.5rem;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--teal));}
.eyebrow-line span:not(.tick){font-size:.92rem;font-weight:600;color:var(--teal-deep);}
.view-hero{padding:3.5rem 2rem 1.5rem;}
.view-hero h1{font-size:clamp(2.2rem,4.8vw,3.8rem);letter-spacing:-0.035em;max-width:51.25rem;margin-top:0.875rem;line-height:1.04;}
.view-hero p.dek{color:var(--slate);font-size:1.1rem;max-width:38.75rem;margin-top:1.25rem;}
.service-head{margin-top:1.875rem;max-width:51.25rem;}
.service-head .tag, .article-head .tag{font-size:.92rem;font-weight:600;color:var(--teal-deep);}
.service-head h1{font-size:clamp(2.2rem,4.8vw,3.8rem);letter-spacing:-0.035em;margin-top:0.75rem;line-height:1.04;}
.service-head p.dek{color:var(--slate);font-size:1.1rem;margin-top:1.25rem;max-width:40rem;}
.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:2.5rem;padding-bottom:7.5rem;}
.service-detail-grid h3{font-family:var(--body);font-size:1rem !important;font-weight:600;}
.service-cap-list{list-style:none;margin:0.875rem 0 0;padding:0;}
.service-cap-list li{padding:1.125rem 0;border-top:1px solid var(--rule);font-size:1.02rem;}
.service-cap-list li:last-child{border-bottom:1px solid var(--rule);}
.service-approach p{color:var(--slate);font-size:1.04rem;line-height:1.7;margin:0.875rem 0 1.125rem;}
@media (max-width:860px){.service-detail-grid{grid-template-columns:1fr;gap:2.5rem;}}
.filter-row{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:2.125rem;}
.filter-chip{font-family:var(--body);font-size:.9rem;font-weight:500;padding:0.5625rem 1rem;border-radius:62.4375rem;border:1px solid var(--rule);background:var(--paper);color:var(--slate);cursor:pointer;}
.filter-chip.active{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.full-insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;padding-bottom:7.5rem;}
.full-insight-grid .insight-card{display:flex;flex-direction:column;gap:0.75rem;padding:1.75rem;border-radius:1.25rem;border:1px solid var(--rule);background:var(--paper);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease;}
.full-insight-grid .insight-card:hover{border-color:var(--teal);}
.full-insight-grid .insight-card .tag{font-size:.88rem;font-weight:600;color:var(--teal-deep);}
.full-insight-grid .insight-card h3{font-size:1.3rem;letter-spacing:-0.02em;line-height:1.2;}
.full-insight-grid .insight-card p{color:var(--slate);font-size:.95rem;}
.full-insight-grid .insight-card .meta{margin-top:auto;font-size:.86rem;color:var(--slate);}
@media (max-width:900px){.full-insight-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.full-insight-grid{grid-template-columns:1fr;}}
#article-view .wrap{padding-bottom:7.5rem;}
.article-head{max-width:47.5rem;margin-top:1.875rem;}
.article-head h1{font-size:clamp(2rem,4.4vw,3.2rem);letter-spacing:-0.03em;margin-top:0.75rem;line-height:1.08;}
.article-head .meta{margin-top:1rem;color:var(--slate);font-size:.94rem;}
.article-body{max-width:43.75rem;margin-top:2.5rem;padding-top:2.25rem;border-top:1px solid var(--rule);}
.article-body p{font-size:1.1rem;line-height:1.75;margin-bottom:1.375rem;}
.article-cta{max-width:43.75rem;margin-top:2.5rem;padding:1.875rem;border-radius:1.25rem;background:var(--midnight);color:var(--on-dark);}
.article-cta p{color:var(--on-dark-mute);margin-bottom:1.125rem;}
.article-cta .btn-primary{background:var(--gold);border-color:var(--gold);color:#1A1204;}
.page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.75rem;}
.page-card{padding:1.875rem;border-radius:1.25rem;border:1px solid var(--rule);background:var(--paper);}
.page-card h3{font-size:1.25rem;letter-spacing:-0.02em;}
.page-card p{color:var(--slate);font-size:.97rem;margin-top:0.625rem;}
.page-body-pad{padding-bottom:7.5rem;}
.page-body-pad .hero-ctas{opacity:1;animation:none;}
.app-view .hero-ctas{opacity:1;animation:none;}
@media (max-width:900px){.page-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.page-grid{grid-template-columns:1fr;}}

/* ---------- Logo ---------- */
.brand .logo{display:block;height:1.9rem;width:auto;}
.brand .logo-on-dark{display:none;}
footer .brand .logo{height:2rem;}

/* ---------- Practice panes: all the same size ---------- */
.svc-panes{display:grid;flex:1;}
.svc-pane{grid-area:1/1;display:flex;flex-direction:column;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility 0s linear .3s;}
.svc-pane.is-on{visibility:visible;opacity:1;transition:opacity .3s ease;}
.svc-pane .btn{margin-top:auto;align-self:flex-start;}
.svc-art{height:auto !important;flex:1 1 0;min-height:4.5rem;margin:0 0 1.125rem !important;}
.svc-pane{min-height:0;}
.svc-pane h3{font-size:1.55rem !important;}
.svc-pane p{margin-top:0.625rem !important;font-size:.97rem !important;}
.svc-pane .svc-chips{margin:1rem 0 1.25rem !important;}
.svc-row{padding-top:2.1rem !important;padding-bottom:2.1rem !important;}

/* ---------- Insight illustrations ---------- */
.thumb{aspect-ratio:16/10;border-radius:0.875rem;overflow:hidden;background:#0F1B3D;}
.thumb svg,.article-hero svg{display:block;width:100%;height:100%;}
.insight-list .insight-card{grid-template-columns:13.75rem minmax(0,1fr) 8.75rem !important;align-items:start !important;}
.insight-list .insight-card .card-body{min-width:0;}
.insight-list .insight-card .card-body p{margin-top:0.5rem !important;grid-column:auto !important;}
.insight-list .insight-card .card-body .tag{margin-bottom:0.5rem;}
.insight-list .insight-card .meta{grid-column:3 !important;grid-row:1 !important;padding-top:0.25rem;}
.insight-list .insight-card:hover .thumb{outline:2px solid var(--gold);outline-offset:-2px;}
.full-insight-grid .insight-card .thumb{margin:-0.75rem -0.75rem 0.25rem;}
.full-insight-grid .insight-card .card-body{display:flex;flex-direction:column;gap:0.75rem;}
.article-hero{max-width:50rem;aspect-ratio:16/10;border-radius:1.25rem;overflow:hidden;margin-top:2rem;background:#0F1B3D;}
@media (max-width:860px){
  .insight-list .insight-card{grid-template-columns:1fr !important;}
  .insight-list .insight-card .meta{grid-column:1 !important;grid-row:auto !important;text-align:left;}
}
#heroCanvas{width:calc(100% + min(19%, max(1.5rem, (100vw - 75rem) / 2 + 1.5rem)));max-width:none;margin:0;max-height:none !important;}
.tagline{width:calc(100% + min(19%, max(1.5rem, (100vw - 75rem) / 2 + 1.5rem)));margin:-22% 0 0;text-align:center;font-family:var(--body);font-size:.9rem;position:relative;font-weight:400;letter-spacing:0.01em;color:rgba(163,174,203,.7);opacity:0;animation:vn-fade .8s ease forwards 1.3s;}
.tagline .tg-core{color:inherit;font-weight:500;}
.tagline .tg-at{color:rgba(255,140,0,.75);padding:0 0.02em;}
.tagline .tg-it{color:inherit;font-weight:500;}
@media (max-width:980px){.tagline{width:100%;margin-top:-17%;}}

/* ---------- AI capability builder ---------- */
.ai .section-head h2{color:var(--on-dark);}
.ai .section-head p{color:var(--on-dark-mute);border-left-color:var(--on-dark-rule);}
.ai-stage-wrap{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr);gap:2.5rem;align-items:stretch;}
.ai-tabs{display:flex;flex-direction:column;border-top:1px solid var(--on-dark-rule);}
.ai-tab{position:relative;flex:1;display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;align-items:center;padding:1.15rem 0.75rem 1.15rem 0;background:none;border:none;border-bottom:1px solid var(--on-dark-rule);color:var(--on-dark-mute);text-align:left;font:inherit;cursor:pointer;transition:color .25s ease;}
.ai-num{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--on-dark-rule);display:grid;place-items:center;font-family:var(--display);font-weight:600;transition:background .25s ease,color .25s ease,border-color .25s ease;}
.ai-txt strong{display:block;font-family:var(--display);font-size:1.12rem;font-weight:600;letter-spacing:-0.015em;color:inherit;}
.ai-txt em{display:block;font-style:normal;font-size:.9rem;margin-top:0.125rem;opacity:.8;}
.ai-tab:hover{color:var(--on-dark);}
.ai-tab.is-done .ai-num{border-color:var(--teal);color:var(--teal);}
.ai-tab[aria-selected="true"]{color:var(--on-dark);}
.ai-tab[aria-selected="true"] .ai-num{background:var(--gold);border-color:var(--gold);color:#1A1204;}
.ai-prog{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;}
.ai-tab[aria-selected="true"] .ai-prog{transform:scaleX(1);}
.ai-tabs.playing .ai-tab[aria-selected="true"] .ai-prog{animation:ai-fill 5s linear forwards;}
@keyframes ai-fill{from{transform:scaleX(0);}to{transform:scaleX(1);}}
.ai-stage{display:flex;flex-direction:column;border:1px solid var(--on-dark-rule);border-radius:1.5rem;overflow:hidden;background:radial-gradient(90% 70% at 70% 30%, rgba(43,139,214,.12), transparent 70%),rgba(238,242,250,.02);}
.ai-dg{display:block;width:100%;height:auto;aspect-ratio:680/452;padding:1.25rem 1.25rem 0.5rem;box-sizing:border-box;background-image:radial-gradient(rgba(238,242,250,.08) 1px, transparent 1.2px);background-size:1.5rem 1.5rem;}
.ai-dg text{font-family:var(--body);font-size:13px;fill:#EEF2FA;}
.ai-dg .sub{font-size:11px;fill:#A3AECB;}
.ai-dg .box{fill:rgba(238,242,250,.04);stroke:rgba(238,242,250,.3);stroke-width:1.2;transition:stroke .4s ease,fill .4s ease;}
.ai-dg .box.ghost{fill:rgba(238,242,250,.03);}
.ai-dg .lnk{fill:none;stroke:rgba(238,242,250,.28);stroke-width:1.4;transition:stroke .4s ease;}
.ai-dg .orch{fill:rgba(43,139,214,.06);stroke:#2B8BD6;stroke-width:1.2;stroke-dasharray:5 6;}
.ai-dg .dot{fill:#FF9A1F;}
.ai-dg .mcp{fill:#1B75BC;stroke:#2B8BD6;stroke-width:1;}
.ai-dg .a2a{fill:rgba(43,139,214,.35);stroke:#2B8BD6;stroke-width:1;}
.ai-dg .mcp-t{font-size:10px;font-weight:600;fill:#FFFFFF;letter-spacing:.04em;}
.ai-dg .gov rect{fill:rgba(43,139,214,.08);stroke:rgba(43,139,214,.45);stroke-width:1;stroke-dasharray:4 5;}
.ai-dg .gov text{font-size:12px;fill:#A3AECB;}
.ai-dg .lv{opacity:0;transition:opacity .5s ease;}
.ai-dg .lv.on{opacity:1;}
.ai-dg .lv .dot{visibility:hidden;}
.ai-dg .lv.is-new .dot{visibility:visible;}
.ai-dg .lv.is-new .box{stroke:#FF9A1F;fill:rgba(255,154,31,.1);}
.ai-dg .lv.is-new .lnk{stroke:#FF9A1F;stroke-dasharray:5 5;animation:ai-flow 1s linear infinite;}
@keyframes ai-flow{to{stroke-dashoffset:-10;}}
.ai-caption{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1.75rem;padding:1.5rem 1.75rem 1.75rem;border-top:1px solid var(--on-dark-rule);}
.ai-caption h3{font-size:1.35rem;letter-spacing:-0.02em;}
.ai-caption p{color:var(--on-dark-mute);font-size:.97rem;margin-top:0.4rem;line-height:1.55;}
.ai-guard{padding-left:1.5rem;border-left:1px solid var(--on-dark-rule);}
.ai-guard strong{font-size:.9rem;font-weight:600;color:var(--gold);}
.ai-caption .swap-in{animation:ai-swap .4s ease;}
@keyframes ai-swap{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}
@media (max-width:900px){
  .ai-stage-wrap{grid-template-columns:1fr;gap:1.5rem;}
  .ai-tabs{flex-direction:row;overflow-x:auto;border-top:none;gap:0.5rem;scrollbar-width:none;}
  .ai-tab{flex:0 0 auto;grid-template-columns:2rem auto;padding:0.6rem 1rem 0.6rem 0.6rem;border:1px solid var(--on-dark-rule);border-radius:999px;}
  .ai-num{width:2rem;height:2rem;font-size:.9rem;}
  .ai-txt em{display:none;}
  .ai-txt strong{font-size:.95rem;white-space:nowrap;}
  .ai-prog{display:none;}
  .ai-caption{grid-template-columns:1fr;gap:1rem;}
  .ai-guard{padding-left:0;border-left:none;padding-top:1rem;border-top:1px solid var(--on-dark-rule);}
}
@media (prefers-reduced-motion: reduce){.ai-dg .lv.is-new .lnk{animation:none;stroke-dasharray:none;} .ai-dg .dot{display:none;}}

/* ---------- Hero path for founders ---------- */
.hero-paths{margin-top:2.75rem;font-size:.95rem;color:var(--on-dark-mute);opacity:0;animation:vn-fade .8s ease forwards .8s;}
.hero-paths a{color:var(--on-dark-mute);font-weight:500;text-decoration:none;border-bottom:1px solid rgba(255,154,31,.6);padding-bottom:2px;}
.hero-paths a:hover{color:var(--on-dark);}
.hero-paths a:hover{color:var(--gold);}
.hero-ctas.static{opacity:1;animation:none;}

/* ---------- Leader ---------- */
.leader{grid-column:1 / -1;display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:2rem;align-items:center;margin-top:4rem;padding-top:3rem;border-top:1px solid var(--rule);}
.portrait{width:7.5rem;height:7.5rem;border-radius:50%;background:linear-gradient(135deg,var(--midnight),#1B75BC);display:grid;place-items:center;color:rgba(238,242,250,.6);font-size:.85rem;}
.leader-quote{font-family:var(--display);font-size:clamp(1.25rem,2vw,1.6rem);font-weight:500;letter-spacing:-0.02em;line-height:1.3;max-width:48rem;}
.leader-name{margin-top:0.75rem;font-size:.98rem;}
.leader-bio{color:var(--slate);font-size:.95rem;margin-top:0.25rem;}
@media (max-width:600px){.leader{grid-template-columns:1fr;gap:1.25rem;}}

/* ---------- Proof ---------- */
.proof{background:var(--porcelain);}
.proof-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1.5rem;align-items:stretch;}
.story{border-radius:1.5rem;overflow:hidden;display:flex;flex-direction:column;}
.story-dark{background:var(--midnight);color:var(--on-dark);}
.story-light{background:var(--paper);border:1px solid var(--rule);}
.story-art{aspect-ratio:16/10;overflow:hidden;background:#0F1B3D;}
.story-art svg{display:block;width:100%;height:100%;}
.story-body{padding:2rem 2rem 2.25rem;display:flex;flex-direction:column;gap:1rem;flex:1;}
.story-tag{font-size:.9rem;font-weight:600;color:var(--teal-deep);}
.story-dark .story-tag{color:var(--gold);}
.story h3{font-size:clamp(1.4rem,2.2vw,1.8rem);letter-spacing:-0.025em;line-height:1.15;}
.story blockquote{margin:0.25rem 0 0;padding:0 0 0 1.25rem;border-left:2px solid var(--gold);}
.story blockquote p{font-family:var(--display);font-size:1.15rem;line-height:1.45;font-weight:500;letter-spacing:-0.01em;}
.story blockquote footer{background:none;padding:0;overflow:visible;display:flex;align-items:center;gap:0.75rem;margin-top:1rem;font-size:.9rem;color:var(--on-dark-mute);line-height:1.35;}
.story blockquote footer strong{color:var(--on-dark);}
.avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--gold);color:#1A1204;display:grid;place-items:center;font-weight:700;font-size:.85rem;flex:none;}
.story-text{color:var(--slate);font-size:1rem;}
.story-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:auto 0 0;padding-top:1.25rem;border-top:1px solid var(--rule);}
.story-dark .story-stats{border-top-color:var(--on-dark-rule);}
.story-stats div{padding-right:1rem;}
.story-stats dt{font-family:var(--display);font-weight:600;font-size:1.1rem;letter-spacing:-0.015em;}
.story-stats dd{margin:0.15rem 0 0;font-size:.86rem;color:var(--slate);}
.story-dark .story-stats dd{color:var(--on-dark-mute);}
.story-link{align-self:flex-start;background:none;border:none;border-bottom:1px solid currentColor;font:inherit;font-weight:600;cursor:pointer;padding:0 0 2px;}
.text-link.on-dark{color:var(--gold);}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr;}}
@media (max-width:480px){.story-stats{grid-template-columns:1fr;gap:0.75rem;} .story-body{padding:1.5rem;}}

/* ---------- Founders ---------- */
.founders{background:var(--paper);}
.founders-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;align-items:center;}
.founders-copy h2{font-size:clamp(2rem,3.4vw,2.9rem);letter-spacing:-0.035em;}
.founders-copy > p{color:var(--slate);font-size:1.06rem;margin-top:1.25rem;max-width:34rem;}
.promise{list-style:none;margin:1.75rem 0 2rem;padding:0;}
.promise li{padding:0.9rem 0 0.9rem 2rem;border-top:1px solid var(--rule);position:relative;color:var(--slate);font-size:.98rem;}
.promise li:last-child{border-bottom:1px solid var(--rule);}
.promise li::before{content:"";position:absolute;left:0.2rem;top:1.25rem;width:0.9rem;height:0.5rem;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg);}
.promise strong{color:var(--ink);font-weight:600;}
.mvp{background:var(--midnight);color:var(--on-dark);border-radius:1.5rem;padding:2.25rem;}
.mvp h3{font-size:1.5rem;letter-spacing:-0.02em;}
.mvp-sub{color:var(--on-dark-mute);margin-top:0.35rem;font-size:.97rem;}
.gantt{margin-top:1.75rem;display:flex;flex-direction:column;gap:0.9rem;}
.g-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr) 7rem;gap:1rem;align-items:center;}
.g-name{font-weight:600;font-size:.95rem;}
.g-wk{font-size:.85rem;color:var(--on-dark-mute);text-align:right;}
.g-track{position:relative;height:0.9rem;border-radius:1rem;background:rgba(238,242,250,.06);}
.g-bar{position:absolute;top:0;bottom:0;left:calc(var(--s) / 18 * 100%);width:calc(var(--w) / 18 * 100%);border-radius:1rem;background:linear-gradient(90deg,#1B75BC,#2B8BD6);transform-origin:left;}
.g-launch{background:var(--gold);}
.g-grow{background:repeating-linear-gradient(90deg,rgba(255,154,31,.7) 0 6px,transparent 6px 10px);width:calc(2 / 18 * 100%);}
.mvp.animate .g-bar{animation:g-in .7s cubic-bezier(.2,.7,.1,1) both;}
.mvp.animate .g-row:nth-child(2) .g-bar{animation-delay:.15s;} .mvp.animate .g-row:nth-child(3) .g-bar{animation-delay:.3s;}
.mvp.animate .g-row:nth-child(4) .g-bar{animation-delay:.45s;} .mvp.animate .g-row:nth-child(5) .g-bar{animation-delay:.6s;}
@keyframes g-in{from{transform:scaleX(0);}to{transform:scaleX(1);}}
.g-scale{display:flex;justify-content:space-between;margin:0.9rem 8rem 0 6.5rem;font-size:.78rem;color:var(--on-dark-mute);}
@media (max-width:900px){.founders-grid{grid-template-columns:1fr;gap:2.5rem;}}
@media (max-width:480px){.g-row{grid-template-columns:4.5rem minmax(0,1fr);} .g-wk{grid-column:2;text-align:left;margin-top:-0.4rem;} .g-scale{display:none;} .mvp{padding:1.5rem;}}

/* ---------- Process facts ---------- */
.facts4{margin-top:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.facts4 div{padding:1.5rem;border-radius:1.125rem;background:var(--porcelain);}
.facts4 strong{font-family:var(--display);font-size:1.15rem;font-weight:600;letter-spacing:-0.015em;}
.facts4 p{color:var(--slate);font-size:.94rem;margin-top:0.4rem;line-height:1.5;}
@media (max-width:900px){.facts4{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.facts4{grid-template-columns:1fr;}}

/* ---------- Engagement models ---------- */
.engage{background:var(--porcelain);}
.engage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;align-items:stretch;}
.model{display:flex;flex-direction:column;gap:0.8rem;padding:2rem;border-radius:1.5rem;background:var(--paper);border:1px solid var(--rule);}
.model-feature{background:var(--midnight);color:var(--on-dark);border-color:var(--midnight);}
.model-for{font-size:.88rem;font-weight:600;color:var(--teal-deep);}
.model-feature .model-for{color:var(--gold);}
.model h3{font-size:1.6rem;letter-spacing:-0.025em;}
.model > p:not(.model-for){color:var(--slate);font-size:.98rem;}
.model-feature > p:not(.model-for){color:var(--on-dark-mute);}
.model dl{margin:0.5rem 0 1.25rem;}
.model dl div{padding:0.8rem 0;border-top:1px solid var(--rule);}
.model-feature dl div{border-top-color:var(--on-dark-rule);}
.model dt{font-size:.82rem;color:var(--slate);}
.model-feature dt{color:var(--on-dark-mute);}
.model dd{margin:0.15rem 0 0;font-weight:600;}
.model .btn{margin-top:auto;align-self:flex-start;}
.trust{list-style:none;margin:2.5rem 0 0;padding:1.25rem 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;border-radius:1.125rem;background:var(--paper);border:1px solid var(--rule);}
.trust li{display:flex;align-items:center;gap:0.65rem;font-size:.94rem;font-weight:500;}
.trust svg{width:1.4rem;height:1.4rem;flex:none;fill:none;stroke:var(--teal-deep);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
@media (max-width:980px){.engage-grid{grid-template-columns:1fr;} .trust{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.trust{grid-template-columns:1fr;}}

/* ---------- Section backgrounds after reorder ---------- */
.clients-sec{background:var(--paper);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
.insights-home{background:var(--porcelain);}

/* ---------- Booking dialog ---------- */
dialog.book{border:none;border-radius:1.5rem;padding:0;width:min(40rem, calc(100vw - 2rem));max-height:calc(100dvh - 2rem);background:var(--paper);color:var(--ink);box-shadow:0 2.5rem 6rem -1.5rem rgba(10,19,48,.55);}
dialog.book::backdrop{background:rgba(10,19,48,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.book-form{position:relative;padding:2.25rem;overflow:auto;}
.book-form h2{font-size:1.8rem;letter-spacing:-0.03em;}
.book-sub{color:var(--slate);margin-top:0.5rem;font-size:.98rem;}
.book-close{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--rule);background:none;color:var(--ink);font-size:1.4rem;cursor:pointer;line-height:1;}
.book-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;}
.book-form label{display:flex;flex-direction:column;gap:0.35rem;font-size:.88rem;font-weight:600;}
.book-form input:not([type=radio]),.book-form select,.book-form textarea{font:inherit;font-weight:400;font-size:1rem;padding:0.7rem 0.85rem;border-radius:0.75rem;border:1px solid var(--rule);background:var(--porcelain);color:var(--ink);}
.book-form input:focus,.book-form select:focus,.book-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.book-topics{border:none;margin:1.25rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0.5rem;}
.book-topics legend{font-size:.88rem;font-weight:600;margin-bottom:0.6rem;padding:0;}
.book-topics label{flex-direction:row;align-items:center;gap:0;font-weight:500;}
.book-topics input{position:absolute;opacity:0;pointer-events:none;}
.book-topics label span,.book-topics label{cursor:pointer;}
.book-topics label{padding:0.5rem 0.9rem;border-radius:999px;border:1px solid var(--rule);font-size:.9rem;}
.book-topics label:has(input:checked){background:var(--ink);color:var(--paper);border-color:var(--ink);}
.book-topics label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px;}
.book-msg{margin-top:1.25rem;}
.book-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;}
.book-note{font-size:.85rem;color:var(--slate);}
@media (max-width:560px){.book-fields{grid-template-columns:1fr;} .book-form{padding:1.5rem;}}

/* ---------- Oracle page ---------- */
.oracle-page{padding-top:3rem;}
.oracle-eyebrow{margin-top:1.75rem;}
.section-head h1{font-size:clamp(2.2rem,4.8vw,3.8rem);letter-spacing:-0.035em;line-height:1.04;max-width:45rem;}
.oracle-start{background:var(--paper);}
.ostart{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;counter-reset:os;}
.ostart li{counter-increment:os;padding:1.75rem;border-radius:1.25rem;background:var(--porcelain);}
.ostart li::before{content:counter(os);display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--midnight);color:var(--gold);font-family:var(--display);font-weight:600;margin-bottom:1rem;}
.ostart strong{font-family:var(--display);font-size:1.25rem;font-weight:600;letter-spacing:-0.015em;}
.ostart p{color:var(--slate);font-size:.95rem;margin-top:0.4rem;}
.oracle-closing{margin-top:3rem;padding:2rem 2.25rem;border-radius:1.5rem;background:var(--midnight);color:var(--on-dark);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.oracle-closing p{font-family:var(--display);font-size:1.3rem;font-weight:500;letter-spacing:-0.015em;max-width:36rem;}
@media (max-width:900px){.ostart{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.ostart{grid-template-columns:1fr;}}

/* ---------- Full-width layout variant ---------- */
:root{--gutter:max(clamp(1.5rem, 5vw, 7rem), min(18rem, calc(5vw + (100vw - 1600px) * 0.18)));}
.wrap,.nav{max-width:none !important;padding-left:var(--gutter) !important;padding-right:var(--gutter) !important;}
#heroCanvas,.tagline{width:calc(100% + min(19%, var(--gutter) - 0.5rem)) !important;}
.view-hero{padding-left:var(--gutter) !important;padding-right:var(--gutter) !important;}
.hero-copy{max-width:44rem;}
.section-head h2,.section-head h1{max-width:56rem;}
.section-head p{max-width:30rem;}
.statement{max-width:60rem;}
@media (max-width:980px){#heroCanvas,.tagline{width:100% !important;}}

/* ---------- Wider gaps between columns on large screens only ---------- */
:root{--gap-boost:clamp(0px, (100vw - 1600px) * 0.045, 3.5rem);}
@media (min-width:1600px){
  .about-grid{column-gap:calc(4.5rem + var(--gap-boost)) !important;}
  .section-head{column-gap:calc(3rem + var(--gap-boost)) !important;}
  .svc{column-gap:calc(3.5rem + var(--gap-boost)) !important;}
  .ai-stage-wrap{column-gap:calc(2.5rem + var(--gap-boost)) !important;}
  .oracle-grid{column-gap:calc(4.5rem + var(--gap-boost)) !important;}
  .contact-grid{column-gap:calc(4rem + var(--gap-boost)) !important;}
  .foot-grid{column-gap:calc(2.5rem + var(--gap-boost)) !important;}
  .proof-grid{column-gap:calc(1.5rem + var(--gap-boost)) !important;}
  .founders-grid{column-gap:calc(4rem + var(--gap-boost)) !important;}
  .facts4{column-gap:calc(1.5rem + var(--gap-boost)) !important;}
  .engage-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}
  .ostart{column-gap:calc(1.25rem + var(--gap-boost)) !important;}
  .page-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}
  .full-insight-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}
  .service-detail-grid{column-gap:calc(4rem + var(--gap-boost)) !important;}
  .trust{column-gap:calc(1rem + var(--gap-boost)) !important;}
  .insight-list .insight-card{column-gap:calc(2rem + var(--gap-boost)) !important;}
}

/* ---------- Hero layout: map centred on the copy, link and tagline on one line ---------- */
.hero-grid{grid-template-areas:"copy visual" "path tag";row-gap:0.5rem !important;min-height:0 !important;align-items:center;padding-top:clamp(1rem,4vh,3.5rem);}
.hero-copy{grid-area:copy;}
.hero-visual{grid-area:visual;align-self:center !important;}
#heroCanvas{aspect-ratio:16/10 !important;}
.hero-paths,.tagline{align-self:center;margin:0 !important;padding:0.5rem 0 1rem;text-align:center;font-family:var(--body);font-size:.9rem;font-weight:400;letter-spacing:1.2px;color:rgba(163,174,203,.72);}
.hero-paths{grid-area:path;}
.tagline{grid-area:tag;}
.hero-paths a{color:inherit;text-decoration:none;border-bottom:none !important;padding-bottom:0;transition:color .2s ease;}
.hero-paths a:hover{color:var(--on-dark);}
.tagline .tg-core,.tagline .tg-it{font-weight:400;color:inherit;}
.tagline .tg-at{color:rgba(255,140,0,.7);padding:0;}
@media (max-width:980px){
  .hero-grid{grid-template-areas:"copy" "path" "visual" "tag";}
  .hero-paths{text-align:left;padding:1.75rem 0 0;}
}

/* ---------- Hero captions pinned to the edges; about statement with divider ---------- */
.hero-paths{text-align:left !important;}
.tagline{width:auto !important;justify-self:stretch;text-align:right !important;}
.about-grid{align-items:center;}
.about-side{border-left:1px solid var(--rule);padding-left:clamp(2rem,3.5vw,4rem);}
@media (max-width:900px){.about-side{border-left:none;padding-left:0;} .tagline{text-align:left !important;}}

/* ---------- Smart header: hide on scroll down, reveal on scroll up ---------- */
header.site{transition:transform .32s cubic-bezier(.2,.7,.1,1),background .25s ease,color .25s ease,border-color .25s ease;}
header.site.is-hidden{transform:translateY(calc(-100% - env(safe-area-inset-top,0px) - 2px));}
.mini-nav,.to-top{position:fixed;z-index:70;background:rgba(10,19,48,.84);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(238,242,250,.16);box-shadow:0 0.75rem 2rem -0.75rem rgba(10,19,48,.55);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;}
.mini-nav{top:calc(env(safe-area-inset-top,0px) + 0.75rem);right:var(--gutter,1.5rem);display:flex;align-items:center;gap:0.375rem;padding:0.3rem;border-radius:999px;transform:translateY(-0.5rem) scale(.96);}
.mini-nav.show{opacity:1;transform:none;pointer-events:auto;}
.mini-btn{width:2.6rem;height:2.6rem;border-radius:50%;border:none;background:rgba(238,242,250,.08);color:#EEF2FA;display:grid;place-items:center;cursor:pointer;transition:background .2s ease;}
.mini-btn:hover{background:rgba(238,242,250,.16);}
.mini-btn svg{width:1.15rem;height:1.15rem;}
.mini-cta{background:var(--gold);color:#1A1204;font-weight:600;font-size:.92rem;padding:0.65rem 1.15rem;border-radius:999px;text-decoration:none;white-space:nowrap;}
.mini-cta:hover{background:#FFAE4A;}
.to-top{right:var(--gutter,1.5rem);bottom:calc(env(safe-area-inset-bottom,0px) + 1.25rem);width:3rem;height:3rem;border-radius:50%;color:#EEF2FA;display:grid;place-items:center;cursor:pointer;transform:translateY(0.5rem);}
.to-top.show{opacity:1;transform:none;pointer-events:auto;}
.to-top:hover{background:rgba(27,117,188,.9);}
.to-top svg{width:1.2rem;height:1.2rem;}
@media (max-width:960px){.mini-nav,.to-top{right:max(1rem, var(--gutter,1rem));}}
@media (max-width:360px){.mini-cta{padding:0.6rem 0.9rem;font-size:.86rem;}}
@media print{.mini-nav,.to-top{display:none;} header.site{position:static;transform:none;}}

/* Keep the blur on a backing layer so the mobile menu panel can size to the screen */
header.site.solid{-webkit-backdrop-filter:none !important;backdrop-filter:none !important;background:transparent !important;}
header.site::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:color-mix(in srgb, var(--porcelain) 90%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:opacity .25s ease;pointer-events:none;}
header.site.solid::before{opacity:1;}
header.site{isolation:isolate;}

/* Floating controls hug the right edge of the screen */
.mini-nav,.to-top{right:calc(env(safe-area-inset-right,0px) + clamp(0.875rem, 1.5vw, 1.75rem)) !important;}
.to-top{bottom:calc(env(safe-area-inset-bottom,0px) + clamp(0.875rem, 1.5vw, 1.75rem)) !important;}

/* ---------- Dark menu whenever it's shown away from the hero ---------- */
header.site.solid{color:var(--on-dark) !important;border-bottom-color:rgba(238,242,250,.12) !important;}
header.site::before{background:rgba(10,19,48,.96) !important;}
.nav-dropdown-menu{background:#111C42 !important;color:var(--on-dark) !important;border-color:rgba(238,242,250,.14) !important;box-shadow:0 1.5rem 3.5rem -1.25rem rgba(0,0,0,.6) !important;}
.nav-dropdown-menu a:hover{background:rgba(238,242,250,.08) !important;color:var(--gold) !important;}
@media (max-width:960px){
  nav.links{background:var(--midnight) !important;color:var(--on-dark) !important;border-top-color:rgba(238,242,250,.12) !important;}
  nav.links > a, .nav-drop-btn{border-bottom-color:rgba(238,242,250,.12) !important;}
  .nav-dropdown-menu{background:transparent !important;box-shadow:none !important;}
}

/* ---------- Freeze review adjustments ---------- */
.hero-paths,.tagline{color:var(--on-dark-mute) !important;}
.tagline .tg-at{color:#FF9A1F !important;}
.hero-foot .fact-link{display:block;color:inherit;text-decoration:none;}
.hero-foot .fact-link strong{transition:color .2s ease;}
.hero-foot .fact-link:hover strong{color:var(--gold);}
.about{background:var(--paper) !important;}
.proof{background:var(--porcelain) !important;}
.practices{background:var(--paper) !important;}
.founders{background:var(--porcelain) !important;}
.section-head h2,.founders-copy h2,.contact h2,.statement{text-wrap:balance;}

/* ---------- Client logos ---------- */
.clients-row{align-items:center;flex-wrap:nowrap;gap:clamp(2rem,5vw,6rem);}
.logo-grid{list-style:none;margin:0;padding:0;flex:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.75rem clamp(1.5rem,3vw,3.5rem);align-items:center;}
.logo-grid li{display:flex;align-items:center;justify-content:center;min-height:3.5rem;}
.logo-grid img{display:block;height:var(--h);width:auto;max-width:100%;object-fit:contain;filter:brightness(0);opacity:.55;transition:filter .3s ease,opacity .3s ease;}
.logo-grid li:hover img{filter:none;opacity:1;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo-grid img{filter:brightness(0) invert(1);opacity:.55;}}
:root[data-theme="dark"] .logo-grid img{filter:brightness(0) invert(1);opacity:.55;}
@media (max-width:1100px){.clients-row{flex-direction:column;align-items:flex-start;} .logo-grid{width:100%;}}
@media (max-width:700px){.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem 1.25rem;}}
@media (max-width:420px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* ---------- Statement band ---------- */
.about.block{padding:clamp(4.5rem,9vw,8rem) 0;}
.about-grid{grid-template-columns:1fr !important;}
.about .statement{font-size:clamp(1.9rem,3.8vw,3.4rem);line-height:1.12;max-width:62rem;letter-spacing:-0.035em;}
.leader[hidden]{display:none !important;}

/* ---------- Dark mode: keep dark cards separated from dark sections ---------- */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .story-dark,
  :root:not([data-theme="light"]) .mvp,
  :root:not([data-theme="light"]) .model-feature,
  :root:not([data-theme="light"]) .svc-panel,
  :root:not([data-theme="light"]) .oracle-closing,
  :root:not([data-theme="light"]) .article-cta,
  :root:not([data-theme="light"]) .thumb,
  :root:not([data-theme="light"]) .article-hero,
  :root:not([data-theme="light"]) .story-art{box-shadow:0 0 0 1px rgba(238,242,250,.14);}
}
:root[data-theme="dark"] .story-dark,:root[data-theme="dark"] .mvp,:root[data-theme="dark"] .model-feature,
:root[data-theme="dark"] .svc-panel,:root[data-theme="dark"] .oracle-closing,:root[data-theme="dark"] .article-cta,
:root[data-theme="dark"] .thumb,:root[data-theme="dark"] .article-hero{box-shadow:0 0 0 1px rgba(238,242,250,.14);}

/* ===================== Product engineering page ===================== */
.pe .wrap{position:relative;}
.pe-hero{background:var(--midnight);color:var(--on-dark);position:relative;overflow:hidden;isolation:isolate;padding:clamp(2.5rem,5vw,4rem) 0 0;}
.pe-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 60% at 80% 40%, rgba(43,139,214,.2), transparent 70%),radial-gradient(40% 45% at 90% 20%, rgba(255,154,31,.12), transparent 70%);}
.pe-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,4vw,4rem);align-items:center;}
.back-link.on-dark{color:var(--on-dark-mute);}
.back-link.on-dark:hover{color:var(--gold);}
.pe-eyebrow{margin-top:1.75rem;font-size:.95rem;font-weight:600;color:var(--gold);}
.pe-hero h1{font-size:clamp(2.4rem,4.6vw,4rem);letter-spacing:-0.04em;line-height:1.02;margin-top:0.75rem;text-wrap:balance;}
.pe-dek{color:var(--on-dark-mute);font-size:1.12rem;line-height:1.6;max-width:34rem;margin-top:1.5rem;}
.pe-ctas{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:2rem;}
.pe-flow{width:100%;height:auto;display:block;}
.pe-stage{opacity:0;animation:vn-fade .6s ease forwards;}
.pe-stage.s1{animation-delay:.2s;} .pe-stage.s2{animation-delay:.5s;} .pe-stage.s3{animation-delay:.8s;} .pe-stage.s4{animation-delay:1.1s;}
.pe-grow{stroke-dasharray:140;stroke-dashoffset:140;animation:vn-draw 1.2s ease forwards 1.4s;}
@keyframes vn-draw{to{stroke-dashoffset:0;}}
@media (prefers-reduced-motion: reduce){.pe-stage{opacity:1;animation:none;} .pe-grow{stroke-dashoffset:0;animation:none;} .pe-dot{display:none;}}
.pe-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:clamp(2rem,4vw,3rem) 0 0;border-top:1px solid var(--on-dark-rule);}
.pe-facts div{padding:1.5rem 1.5rem 2rem;border-left:1px solid var(--on-dark-rule);}
.pe-facts div:first-child{border-left:none;padding-left:0;}
.pe-facts dt{font-family:var(--display);font-size:1.25rem;font-weight:600;letter-spacing:-0.02em;}
.pe-facts dd{margin:0.25rem 0 0;color:var(--on-dark-mute);font-size:.92rem;}
@media (max-width:900px){.pe-hero-grid{grid-template-columns:1fr;} .pe-hero-visual{max-width:34rem;} .pe-facts{grid-template-columns:1fr 1fr;} .pe-facts div:nth-child(3){border-left:none;padding-left:0;} .pe-facts div:nth-child(n+3){border-top:1px solid var(--on-dark-rule);}}
@media (max-width:480px){.pe-facts{grid-template-columns:1fr;} .pe-facts div{border-left:none;padding-left:0;border-top:1px solid var(--on-dark-rule);} .pe-facts div:first-child{border-top:none;}}

.pe-block{padding:clamp(4.5rem,8vw,7rem) 0;}
.pe-triggers,.pe-build,.pe-quality,.pe-proof,.pe-faq{background:var(--paper);}
.pe-own,.pe-path,.pe-stack,.pe-ways{background:var(--porcelain);}
.pe-trig{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;}
.pe-trig li{padding:1.5rem;border-radius:1.25rem;background:var(--porcelain);border-top:3px solid var(--gold);}
.pe-trig strong{font-family:var(--display);font-size:1.12rem;font-weight:600;letter-spacing:-0.015em;display:block;}
.pe-trig p{color:var(--slate);font-size:.94rem;margin-top:0.5rem;line-height:1.5;}
@media (max-width:1100px){.pe-trig{grid-template-columns:repeat(3,1fr);}}
@media (max-width:700px){.pe-trig{grid-template-columns:1fr;}}

.pe-group{font-family:var(--body);font-size:.95rem;font-weight:600;color:var(--teal-deep);margin:0 0 1rem;letter-spacing:0;}
.pe-group:not(:first-of-type){margin-top:2.75rem;}
.pe-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;}
.pe-prods.two{grid-template-columns:repeat(2,1fr);}
.pe-prods.two .pe-prod{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);}
.pe-prods.two .pe-part{aspect-ratio:auto;min-height:100%;}
.pe-prod{background:var(--paper);border:1px solid var(--rule);border-radius:1.25rem;overflow:hidden;display:flex;flex-direction:column;}
.pe-part{aspect-ratio:16/10;background:#0F1B3D;}
.pe-part svg{display:block;width:100%;height:100%;}
.pe-pbody{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;gap:0.5rem;flex:1;}
.pe-kind{font-size:.85rem;font-weight:600;color:var(--teal-deep);}
.pe-prod h3{font-size:1.35rem;letter-spacing:-0.02em;}
.pe-prod p:not(.pe-kind){color:var(--slate);font-size:.94rem;line-height:1.5;}
.pe-plink{margin-top:auto;padding-top:0.5rem;font-weight:600;font-size:.92rem;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold);align-self:flex-start;}
.pe-plink:hover{color:var(--gold-deep);}
.pe-plink.muted{color:var(--slate);border-bottom-color:var(--rule);}
.pe-more{margin-top:2rem;}
@media (max-width:1100px){.pe-prods{grid-template-columns:repeat(2,1fr);}}
@media (max-width:820px){.pe-prods.two{grid-template-columns:1fr;}}
@media (max-width:600px){.pe-prods{grid-template-columns:1fr;} .pe-prods.two .pe-prod{grid-template-columns:1fr;} .pe-prods.two .pe-part{aspect-ratio:16/10;}}

.pe-caps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;}
.pe-caps li{padding:1.75rem 1.5rem;border:1px solid var(--rule);border-radius:1.25rem;}
.pe-ic{width:2.75rem;height:2.75rem;border-radius:0.8rem;background:var(--midnight);display:grid;place-items:center;margin-bottom:1.1rem;}
.pe-ic svg{width:1.35rem;height:1.35rem;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pe-caps strong{font-family:var(--display);font-size:1.12rem;font-weight:600;letter-spacing:-0.015em;display:block;}
.pe-caps p{color:var(--slate);font-size:.94rem;margin-top:0.5rem;line-height:1.5;}
@media (max-width:1100px){.pe-caps{grid-template-columns:repeat(3,1fr);}}
@media (max-width:700px){.pe-caps{grid-template-columns:1fr;}}

.pe-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;counter-reset:ps;}
.pe-steps li{counter-increment:ps;position:relative;padding:1.75rem 1.5rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.5rem;}
.pe-steps li::before{content:counter(ps);position:absolute;top:1.5rem;right:1.5rem;font-family:var(--display);font-weight:600;font-size:2rem;line-height:1;color:var(--rule);}
.pe-wk{font-size:.85rem;font-weight:600;color:var(--teal-deep);}
.pe-steps h3{font-size:1.35rem;letter-spacing:-0.02em;}
.pe-steps p{color:var(--slate);font-size:.94rem;line-height:1.5;}
.pe-steps .pe-get{margin-top:auto;padding-top:0.9rem;border-top:1px solid var(--rule);color:var(--ink);}
.pe-get strong{display:block;font-size:.82rem;color:var(--gold-deep);margin-bottom:0.2rem;}
@media (max-width:1100px){.pe-steps{grid-template-columns:repeat(3,1fr);}}
@media (max-width:700px){.pe-steps{grid-template-columns:1fr;}}

.pe-ai{background:var(--midnight);color:var(--on-dark);}
.pe-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;}
.pe-ai h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;}
.pe-pull{margin:1.75rem 0 0;padding-left:1.5rem;border-left:3px solid var(--gold);font-family:var(--display);font-size:clamp(1.25rem,2vw,1.6rem);font-weight:500;line-height:1.35;letter-spacing:-0.015em;}
.pe-ai-note{color:var(--on-dark-mute);margin-top:1.5rem;font-size:1rem;}
.pe-ai-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.pe-ai-list li{padding:1.5rem;border-radius:1.25rem;border:1px solid var(--on-dark-rule);background:rgba(238,242,250,.03);}
.pe-ai-list strong{font-family:var(--display);font-size:1.12rem;font-weight:600;display:block;}
.pe-ai-list p{color:var(--on-dark-mute);font-size:.93rem;margin-top:0.45rem;line-height:1.5;}
@media (max-width:900px){.pe-ai-grid{grid-template-columns:1fr;}}
@media (max-width:520px){.pe-ai-list{grid-template-columns:1fr;}}

.pe-q{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule);}
.pe-q li{padding:1.5rem 1.5rem 1.5rem 0;border-bottom:1px solid var(--rule);}
.pe-q strong{font-family:var(--display);font-size:1.12rem;font-weight:600;}
.pe-q p{color:var(--slate);font-size:.94rem;margin-top:0.35rem;}
@media (max-width:820px){.pe-q{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.pe-q{grid-template-columns:1fr;}}

.pe-tech{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0;}
.pe-tech div{padding:1.5rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);}
.pe-tech dt{font-size:.85rem;font-weight:600;color:var(--teal-deep);}
.pe-tech dd{margin:0.4rem 0 0;font-family:var(--display);font-size:1.12rem;font-weight:500;letter-spacing:-0.01em;}
@media (max-width:820px){.pe-tech{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.pe-tech{grid-template-columns:1fr;}}

.pe-proof-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.5rem;align-items:stretch;}
.pe-feature .story-body{padding:2.25rem;}
.pe-quotes{display:flex;flex-direction:column;gap:1.25rem;}
.pe-quotes figure{margin:0;flex:1;padding:1.75rem;border-radius:1.25rem;background:var(--porcelain);display:flex;flex-direction:column;justify-content:space-between;gap:1rem;}
.pe-quotes blockquote{margin:0;font-family:var(--display);font-size:1.1rem;font-weight:500;line-height:1.45;letter-spacing:-0.01em;}
.pe-quotes figcaption{font-size:.9rem;color:var(--slate);}
@media (max-width:900px){.pe-proof-grid{grid-template-columns:1fr;}}

.pe-ways-grid{grid-template-columns:repeat(3,1fr) !important;}
@media (max-width:980px){.pe-ways-grid{grid-template-columns:1fr !important;}}

.pe-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,5rem);align-items:start;}
.pe-faq h2{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-0.035em;text-wrap:balance;}
.pe-faq-list{border-top:1px solid var(--rule);}
.pe-faq details{border-bottom:1px solid var(--rule);}
.pe-faq summary{list-style:none;cursor:pointer;padding:1.25rem 2.5rem 1.25rem 0;position:relative;font-family:var(--display);font-size:1.15rem;font-weight:600;letter-spacing:-0.015em;}
.pe-faq summary::-webkit-details-marker{display:none;}
.pe-faq summary::after{content:"";position:absolute;right:0.5rem;top:50%;width:0.65rem;height:0.65rem;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:translateY(-70%) rotate(45deg);transition:transform .2s ease;}
.pe-faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg);}
.pe-faq details p{color:var(--slate);padding:0 2.5rem 1.4rem 0;font-size:1rem;line-height:1.6;}
@media (max-width:900px){.pe-faq-grid{grid-template-columns:1fr;}}

.pe-close{background:var(--midnight);color:var(--on-dark);padding:clamp(4rem,7vw,6rem) 0;position:relative;overflow:hidden;isolation:isolate;}
.pe-close::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(45% 80% at 85% 50%, rgba(255,154,31,.16), transparent 70%);}
.pe-close-grid{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;}
.pe-close h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-0.035em;max-width:40rem;}
.pe-close .pe-ctas{margin-top:0;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pe-part,:root:not([data-theme="light"]) .pe-feature{box-shadow:0 0 0 1px rgba(238,242,250,.14);}}
@media (min-width:1600px){.pe-trig,.pe-prods,.pe-caps,.pe-steps,.pe-tech,.pe-proof-grid,.pe-ai-grid,.pe-faq-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

.visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.pe-prods.two .pe-part{display:flex;align-items:center;}
.pe-hero{padding-top:clamp(3rem,6vw,5rem) !important;}

/* ===================== Products page ===================== */
.pp-mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:0.9rem;transform:rotate(-3deg);padding:1rem 0;}
.pp-tile{border-radius:1rem;overflow:hidden;aspect-ratio:16/10;box-shadow:0 1rem 2.5rem -1rem rgba(0,0,0,.6),0 0 0 1px rgba(238,242,250,.12);opacity:0;animation:vn-fade .6s ease forwards;}
.pp-tile svg{display:block;width:100%;height:100%;}
.pp-tile.t1,.pp-tile.t4{transform:translateY(1.5rem);}
.pp-tile.t0{animation-delay:.1s}.pp-tile.t1{animation-delay:.2s}.pp-tile.t2{animation-delay:.3s}.pp-tile.t3{animation-delay:.4s}.pp-tile.t4{animation-delay:.5s}.pp-tile.t5{animation-delay:.6s}
@media (prefers-reduced-motion: reduce){.pp-tile{opacity:1;animation:none;}}
.pp-jump{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:2rem;}
.pp-jump a{font-size:.9rem;font-weight:500;color:var(--on-dark);text-decoration:none;padding:0.5rem 0.95rem;border-radius:999px;border:1px solid var(--on-dark-rule);transition:border-color .2s ease,color .2s ease;}
.pp-jump a:hover{border-color:var(--gold);color:var(--gold);}
@media (max-width:900px){.pp-mosaic{transform:none;max-width:34rem;} .pp-tile.t1,.pp-tile.t4{transform:none;}}
@media (max-width:520px){.pp-mosaic{grid-template-columns:repeat(2,1fr);} .pp-tile.t4,.pp-tile.t5{display:none;}}

.pp-own{background:var(--paper);}
.pp-partner{background:var(--porcelain);}
.pp-acc{background:var(--paper);}
.pp-why{background:var(--midnight);color:var(--on-dark);}
.pp-why h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;text-wrap:balance;}
.pp-list{display:flex;flex-direction:column;gap:clamp(3rem,6vw,5rem);}
.pp-spot{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center;scroll-margin-top:calc(var(--header-h) + 2rem);}
.pp-spot.flip .pp-art{order:2;}
.pp-art{border-radius:1.5rem;overflow:hidden;aspect-ratio:16/10;background:#0F1B3D;box-shadow:0 1.5rem 3rem -1.75rem rgba(10,19,48,.55);}
.pp-art svg{display:block;width:100%;height:100%;}
.pp-kind{font-size:.92rem;font-weight:600;color:var(--teal-deep);}
.pp-body h3{font-size:clamp(1.9rem,3.2vw,2.6rem);letter-spacing:-0.035em;margin-top:0.35rem;}
.pp-tags{list-style:none;margin:0.9rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0.4rem;}
.pp-tags li{font-size:.8rem;font-weight:600;padding:0.3rem 0.7rem;border-radius:999px;background:var(--porcelain);color:var(--ink);border:1px solid var(--rule);}
.pp-partner .pp-tags li{background:var(--paper);}
.pp-lead{color:var(--slate);font-size:1.05rem;line-height:1.6;margin-top:1.1rem;max-width:36rem;}
.pp-points{list-style:none;margin:1.1rem 0 0;padding:0;max-width:36rem;}
.pp-points li{position:relative;padding:0.55rem 0 0.55rem 1.6rem;border-top:1px solid var(--rule);font-size:.97rem;}
.pp-points li:last-child{border-bottom:1px solid var(--rule);}
.pp-points li::before{content:"";position:absolute;left:0.15rem;top:0.95rem;width:0.75rem;height:0.42rem;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg);}
.pp-sub{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;margin-top:1.25rem;}
.pp-sub div{padding:1rem 1.1rem;border-radius:1rem;background:var(--porcelain);border:1px solid var(--rule);}
.pp-sub strong{font-family:var(--display);font-size:1.1rem;font-weight:600;}
.pp-sub p{color:var(--slate);font-size:.88rem;margin-top:0.3rem;line-height:1.45;}
.pp-link{margin-top:1.5rem;}
.pp-link svg{width:0.9rem;height:0.9rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pp-soon{display:inline-block;margin-top:1.5rem;font-size:.92rem;font-weight:600;color:var(--slate);padding:0.7rem 1.2rem;border-radius:999px;border:1px dashed var(--rule);}
@media (max-width:900px){.pp-spot{grid-template-columns:1fr;} .pp-spot.flip .pp-art{order:0;}}
@media (max-width:560px){.pp-sub{grid-template-columns:1fr;}}

.pp-comp{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.pp-comp li{padding:1.4rem 1.5rem;border-radius:1.25rem;border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.6rem;}
.pp-comp strong{font-family:var(--display);font-size:1.1rem;font-weight:600;letter-spacing:-0.015em;line-height:1.25;}
.pp-comp span{font-size:.84rem;font-weight:600;color:var(--teal-deep);margin-top:auto;}
@media (max-width:1100px){.pp-comp{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.pp-comp{grid-template-columns:1fr;}}
.pp-close-sub{color:var(--on-dark-mute);margin-top:0.9rem;max-width:36rem;}
@media (min-width:1600px){.pp-spot,.pp-comp{column-gap:calc(clamp(2rem,5vw,5rem) + var(--gap-boost)) !important;}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pp-art{box-shadow:0 0 0 1px rgba(238,242,250,.14);}}

.pe-close h2{text-wrap:balance;}

/* ===================== Application modernization page ===================== */
.am-flow{width:100%;height:auto;display:block;}
.am-move rect{animation:am-shift 5.5s cubic-bezier(.5,0,.2,1) infinite;}
.am-move .m1{--tx:236px;--ty:-52px;animation-delay:.2s;}
.am-move .m2{--tx:310px;--ty:-2px;animation-delay:2s;}
.am-move .m3{--tx:292px;--ty:74px;animation-delay:3.6s;}
@keyframes am-shift{0%,12%{transform:translate(0,0);opacity:1;}45%{transform:translate(var(--tx),var(--ty));opacity:1;}55%,100%{transform:translate(var(--tx),var(--ty));opacity:0;}}
.am-svc{opacity:0;animation:vn-fade .6s ease forwards;}
.am-svc.s1{animation-delay:.4s}.am-svc.s2{animation-delay:.7s}.am-svc.s3{animation-delay:1s}.am-svc.s4{animation-delay:1.3s}
.am-pulse{stroke-dasharray:600;stroke-dashoffset:600;animation:am-line 4s linear infinite;}
@keyframes am-line{to{stroke-dashoffset:-600;}}
@media (prefers-reduced-motion: reduce){.am-move rect,.am-pulse{animation:none;} .am-pulse{stroke-dasharray:none;stroke-dashoffset:0;} .am-svc{opacity:1;animation:none;}}

.am-signs,.am-paths,.am-process,.am-keep,.am .pe-faq{background:var(--paper);}
.am-under,.am-from,.am-proof,.am .pe-ways{background:var(--porcelain);}
.am-under-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2.5rem,5vw,5rem);align-items:start;}
.am-under h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;text-wrap:balance;}
.am-under-lead{color:var(--slate);font-size:1.08rem;margin-top:1.25rem;max-width:30rem;}
.am-list{list-style:none;margin:0;padding:0;counter-reset:am;}
.am-list li{counter-increment:am;display:grid;grid-template-columns:3rem 1fr;column-gap:1rem;padding:1.25rem 0;border-top:1px solid var(--rule);}
.am-list li:last-child{border-bottom:1px solid var(--rule);}
.am-list li::before{content:"0" counter(am);grid-row:span 2;font-family:var(--display);font-weight:600;font-size:1.1rem;color:var(--gold-deep);}
.am-list strong{font-family:var(--display);font-size:1.15rem;font-weight:600;}
.am-list p{color:var(--slate);font-size:.96rem;margin-top:0.25rem;}
@media (max-width:900px){.am-under-grid{grid-template-columns:1fr;}}

.am-rs{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.am-rs article{padding:1.75rem 1.5rem;border-radius:1.25rem;border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.75rem;}
.am-rhead{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;}
.am-rs h3{font-size:1.45rem;letter-spacing:-0.02em;}
.am-bars{display:flex;gap:3px;}
.am-bars i{width:0.4rem;height:1.05rem;border-radius:2px;background:var(--rule);}
.am-bars i.on{background:var(--gold);}
.am-what{font-size:1rem;}
.am-when{color:var(--slate);font-size:.94rem;margin-top:auto;padding-top:0.85rem;border-top:1px solid var(--rule);}
.am-when strong{display:block;font-size:.82rem;color:var(--teal-deep);margin-bottom:0.2rem;}
.am-note{margin-top:1.5rem;color:var(--slate);font-size:.98rem;}
.am-rs article::after{content:"Effort";display:none;}
@media (max-width:1100px){.am-rs{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.am-rs{grid-template-columns:1fr;}}

.am-rows{list-style:none;margin:0;padding:0;}
.am-rows li{display:grid;grid-template-columns:minmax(0,.8fr) 3.5rem minmax(0,1.2fr);align-items:center;gap:1rem;padding:1.25rem 1.5rem;border-radius:1.1rem;background:var(--paper);border:1px solid var(--rule);margin-bottom:0.75rem;}
.am-src{font-family:var(--display);font-size:1.15rem;font-weight:600;letter-spacing:-0.015em;}
.am-dst{color:var(--slate);font-size:1rem;}
.am-arrow{height:2px;background:linear-gradient(90deg,var(--rule),var(--gold));position:relative;}
.am-arrow::after{content:"";position:absolute;right:-1px;top:50%;width:0.5rem;height:0.5rem;border-top:2px solid var(--gold);border-right:2px solid var(--gold);transform:translateY(-50%) rotate(45deg);}
@media (max-width:700px){.am-rows li{grid-template-columns:1fr;gap:0.5rem;} .am-arrow{width:2.5rem;}}

.am-story-text{color:var(--on-dark-mute);font-size:1rem;line-height:1.6;}
.am-reads{justify-content:flex-start !important;}
.am-reads-h{font-size:.9rem;font-weight:600;color:var(--slate);}
.am-read{display:block;text-align:left;background:none;border:none;border-bottom:1px solid var(--rule);padding:0.8rem 0;font:inherit;font-family:var(--display);font-size:1.05rem;font-weight:600;color:var(--ink);cursor:pointer;letter-spacing:-0.01em;}
.am-read:hover{color:var(--teal-deep);}
@media (min-width:1600px){.am-rs,.am-under-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

.am-bars{align-items:center;}
.am-bars::before{content:"Effort";font-size:.75rem;font-weight:600;color:var(--slate);margin-right:0.4rem;}

/* ===================== Data engineering page ===================== */
.dm-flow{width:100%;height:auto;display:block;}
.dm-src,.dm-plat,.dm-out,.dm-pipe,.dm-rec{opacity:0;animation:vn-fade .6s ease forwards;}
.dm-src.d0{animation-delay:.1s}.dm-src.d1{animation-delay:.2s}.dm-src.d2{animation-delay:.3s}.dm-src.d3{animation-delay:.4s}
.dm-pipe{animation-delay:.6s}.dm-plat{animation-delay:.8s}.dm-out.o1{animation-delay:1s}.dm-out.o2{animation-delay:1.1s}.dm-rec{animation-delay:1.4s}
@media (prefers-reduced-motion: reduce){.dm-src,.dm-plat,.dm-out,.dm-pipe,.dm-rec{opacity:1;animation:none;} .dm-dot{display:none;}}
.dm-signs,.dm-mig,.dm-fit,.dm .pe-faq{background:var(--paper);}
.dm-caps-sec,.dm-stack,.dm .pe-ways{background:var(--porcelain);}
.dm-caps{grid-template-columns:repeat(3,1fr) !important;}
.dm-caps li{background:var(--paper);}
@media (max-width:900px){.dm-caps{grid-template-columns:1fr 1fr !important;}}
@media (max-width:600px){.dm-caps{grid-template-columns:1fr !important;}}
.dm-mig-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;}
.dm-mig-head{grid-template-columns:1fr !important;gap:1rem !important;margin-bottom:2rem !important;}
.dm-mig-head p{border-left:none !important;padding:0 !important;max-width:none !important;}
.dm-steps{list-style:none;margin:0;padding:0;counter-reset:ds;}
.dm-steps li{counter-increment:ds;display:grid;grid-template-columns:2.5rem 1fr;column-gap:1rem;padding:1rem 0;border-top:1px solid var(--rule);}
.dm-steps li:last-child{border-bottom:1px solid var(--rule);}
.dm-steps li::before{content:counter(ds);grid-row:span 2;width:2rem;height:2rem;border-radius:50%;background:var(--midnight);color:var(--gold);display:grid;place-items:center;font-family:var(--display);font-weight:600;font-size:.95rem;}
.dm-steps strong{font-family:var(--display);font-size:1.12rem;font-weight:600;}
.dm-steps p{color:var(--slate);font-size:.95rem;margin-top:0.2rem;}
.dm-report{margin:0;background:var(--midnight);color:var(--on-dark);border-radius:1.5rem;padding:1.75rem;box-shadow:0 1.5rem 3rem -1.75rem rgba(10,19,48,.55);}
.dm-report figcaption{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;}
.dm-report figcaption span{font-family:var(--display);font-size:1.2rem;font-weight:600;}
.dm-report figcaption em{font-style:normal;font-size:.8rem;color:var(--on-dark-mute);padding:0.25rem 0.65rem;border:1px solid var(--on-dark-rule);border-radius:999px;}
.dm-report table{width:100%;border-collapse:collapse;font-size:.93rem;}
.dm-report th,.dm-report td{padding:0.7rem 0.5rem;text-align:left;border-top:1px solid var(--on-dark-rule);}
.dm-report thead th{font-size:.8rem;font-weight:600;color:var(--on-dark-mute);border-top:none;}
.dm-report tbody th{font-weight:500;}
.dm-report td:nth-child(2),.dm-report td:nth-child(3){font-variant-numeric:tabular-nums;color:var(--on-dark);}
.dm-ok,.dm-flag{font-size:.78rem;font-weight:600;padding:0.2rem 0.6rem;border-radius:999px;white-space:nowrap;}
.dm-ok{background:rgba(43,139,214,.22);color:#9FCBF2;}
.dm-flag{background:rgba(255,154,31,.2);color:#FFB861;}
.dm-note{color:var(--on-dark-mute);font-size:.88rem;margin-top:1rem;}
@media (max-width:900px){.dm-mig-grid{grid-template-columns:1fr;}}
@media (max-width:480px){.dm-report{padding:1.25rem;} .dm-report table{font-size:.82rem;}}
.dm-links{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.dm-link{display:flex;flex-direction:column;gap:0.6rem;padding:1.75rem;border-radius:1.25rem;border:1px solid var(--rule);text-decoration:none;color:var(--ink);transition:border-color .2s ease,transform .2s ease;}
.dm-link:hover{border-color:var(--gold);}
.dm-link strong{font-family:var(--display);font-size:1.3rem;font-weight:600;letter-spacing:-0.02em;}
.dm-link p{color:var(--slate);font-size:.96rem;}
.dm-link span{margin-top:auto;padding-top:0.75rem;font-size:.9rem;font-weight:600;color:var(--teal-deep);}
@media (max-width:900px){.dm-links{grid-template-columns:1fr;}}
@media (min-width:1600px){.dm-mig-grid,.dm-links{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

/* ---------- Cloud capability band ---------- */
.cl-band{margin-top:clamp(3rem,6vw,4.5rem);padding:clamp(1.75rem,3vw,2.5rem);border-radius:1.5rem;background:var(--midnight);color:var(--on-dark);position:relative;overflow:hidden;isolation:isolate;}
.cl-band::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 80% at 100% 0%, rgba(43,139,214,.22), transparent 70%);}
.cl-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2rem;align-items:end;}
.cl-head h3{font-size:clamp(1.6rem,2.8vw,2.3rem);letter-spacing:-0.03em;}
.cl-head p{color:var(--on-dark-mute);font-size:1rem;}
.cl-tiles{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0.75rem;}
.cl-tiles li{padding:1.1rem 1.25rem;border-radius:1rem;border:1px solid var(--on-dark-rule);background:rgba(238,242,250,.04);display:flex;flex-direction:column;gap:0.2rem;}
.cl-tiles strong{font-family:var(--display);font-size:1.3rem;font-weight:600;letter-spacing:-0.02em;}
.cl-tiles span{font-size:.85rem;color:var(--gold);font-weight:600;}
.cl-caps{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;border-top:1px solid var(--on-dark-rule);padding-top:1.5rem;}
.cl-caps strong{font-family:var(--display);font-size:1.02rem;font-weight:600;}
.cl-caps p{color:var(--on-dark-mute);font-size:.88rem;margin-top:0.35rem;line-height:1.5;}
@media (max-width:1100px){.cl-caps{grid-template-columns:repeat(3,1fr);}}
@media (max-width:820px){.cl-head{grid-template-columns:1fr;gap:0.75rem;} .cl-tiles{grid-template-columns:1fr 1fr;} .cl-caps{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.cl-caps{grid-template-columns:1fr;}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .cl-band{box-shadow:0 0 0 1px rgba(238,242,250,.14);}}

/* ---------- Oracle consultants ---------- */
.oracle-staff{background:var(--paper);}
.oracle-start{background:var(--porcelain) !important;}
.os-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.1fr);gap:1.25rem;align-items:stretch;}
.os-card{padding:2rem;border-radius:1.5rem;border:1px solid var(--rule);background:var(--paper);}
.os-card h3{font-size:1.5rem;letter-spacing:-0.025em;margin-top:0.35rem;}
.os-list{list-style:none;margin:1.25rem 0 0;padding:0;}
.os-list li{position:relative;padding:0.7rem 0 0.7rem 1.5rem;border-top:1px solid var(--rule);font-size:.97rem;}
.os-list li::before{content:"";position:absolute;left:0.1rem;top:1.1rem;width:0.7rem;height:0.4rem;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg);}
.os-why{padding:2rem;border-radius:1.5rem;background:var(--midnight);color:var(--on-dark);display:flex;flex-direction:column;}
.os-why h3{font-size:1.5rem;letter-spacing:-0.025em;}
.os-why ul{list-style:none;margin:1.25rem 0 1.75rem;padding:0;}
.os-why li{padding:0.75rem 0;border-top:1px solid var(--on-dark-rule);display:flex;flex-direction:column;gap:0.2rem;}
.os-why li strong{font-weight:600;}
.os-why li span{color:var(--on-dark-mute);font-size:.92rem;}
.os-why .btn{margin-top:auto;align-self:flex-start;}
@media (max-width:1000px){.os-grid{grid-template-columns:1fr 1fr;} .os-why{grid-column:1 / -1;}}
@media (max-width:600px){.os-grid{grid-template-columns:1fr;}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .os-why{box-shadow:0 0 0 1px rgba(238,242,250,.14);}}

.oracle-start .ostart li{background:var(--paper) !important;border:1px solid var(--rule);}

/* ===================== Oracle page (rebuilt) ===================== */
.or-flow{width:100%;height:auto;display:block;}
.or-rel{opacity:0;animation:vn-fade .5s ease forwards;}
.or-rel.r0{animation-delay:.2s}.or-rel.r1{animation-delay:.45s}.or-rel.r2{animation-delay:.7s}.or-rel.r3{animation-delay:.95s}
.or-line{stroke-dasharray:600;stroke-dashoffset:600;animation:vn-draw 1.6s ease forwards 1.1s;}
@media (prefers-reduced-motion: reduce){.or-rel{opacity:1;animation:none;} .or-line{stroke-dashoffset:0;animation:none;}}
.or-reality,.or-qr-plain,.or-apex,.orp .pe-faq{background:var(--paper);}
.or-ms,.or-first{background:var(--porcelain);}
.or-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.or-groups article{padding:1.75rem;border-radius:1.25rem;background:var(--porcelain);border-top:3px solid var(--gold);}
.or-groups h3{font-size:1.3rem;letter-spacing:-0.02em;}
.or-groups ul{list-style:none;margin:1rem 0 0;padding:0;}
.or-groups li{padding:0.65rem 0;border-top:1px solid var(--rule);color:var(--slate);font-size:.97rem;}
@media (max-width:820px){.or-groups{grid-template-columns:1fr;}}
.or-ms-grid{align-items:start;}
.or-sub{font-family:var(--body);font-size:1rem;font-weight:600;margin:0 0 1rem;letter-spacing:0;}
.or-mods{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;}
.or-mods li{padding:1.1rem 1.2rem;border-radius:1rem;background:var(--paper);border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.3rem;}
.or-mods strong{font-family:var(--display);font-size:1.08rem;font-weight:600;}
.or-mods span{color:var(--slate);font-size:.9rem;line-height:1.45;}
@media (max-width:520px){.or-mods{grid-template-columns:1fr;}}
.or-qr{background:var(--midnight);color:var(--on-dark);}
.or-qr-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:start;}
.or-qr h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;margin-top:0.75rem;}
.or-qr-lead{color:var(--on-dark-mute);font-size:1.06rem;margin-top:1.25rem;max-width:34rem;}
.or-free{margin-top:2rem;padding:1.5rem;border-radius:1.25rem;border:1px solid rgba(255,154,31,.45);background:rgba(255,154,31,.06);}
.or-free strong{font-family:var(--display);font-size:1.2rem;font-weight:600;}
.or-free p{color:var(--on-dark-mute);font-size:.96rem;margin:0.4rem 0 1.1rem;}
.or-pack{padding:2rem;border-radius:1.5rem;background:rgba(238,242,250,.04);border:1px solid var(--on-dark-rule);}
.or-pack h3{font-size:1.3rem;}
.or-pack ol{list-style:none;margin:1.1rem 0 0;padding:0;counter-reset:op;}
.or-pack li{counter-increment:op;display:grid;grid-template-columns:2.25rem 1fr;align-items:center;padding:0.8rem 0;border-top:1px solid var(--on-dark-rule);}
.or-pack li::before{content:counter(op);width:1.75rem;height:1.75rem;border-radius:50%;background:var(--gold);color:#1A1204;font-weight:700;font-size:.85rem;display:grid;place-items:center;}
.or-outcome{margin-top:1.25rem;color:var(--on-dark-mute);}
.or-outcome strong{color:var(--gold);}
@media (max-width:900px){.or-qr-grid{grid-template-columns:1fr;}}
.or-apex-list li{padding-top:1.5rem !important;}
.or-apex-note{margin-top:1.75rem;color:var(--slate);font-size:1rem;max-width:52rem;}
.or-link{background:none;border:none;border-bottom:1px solid currentColor;cursor:pointer;font:inherit;font-weight:600;padding:0;}
.or-first .ostart li{background:var(--paper);border:1px solid var(--rule);}
.or-partner{margin-top:2rem;padding:1.75rem 2rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);border-left:4px solid var(--gold);}
.or-partner strong{font-family:var(--display);font-size:1.25rem;font-weight:600;}
.or-partner p{color:var(--slate);margin-top:0.4rem;max-width:56rem;}
@media (min-width:1600px){.or-groups,.or-qr-grid,.or-mods{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

.orp .oracle-staff{background:var(--porcelain) !important;}
.orp .or-first{background:var(--paper) !important;}
.orp .or-first .ostart li{background:var(--porcelain) !important;border:none;}
.orp .or-first .or-partner{background:var(--porcelain);border-color:transparent;border-left-color:var(--gold);}
.orp .pe-faq{background:var(--porcelain) !important;}

/* ===================== About page ===================== */
.ab-flow{width:100%;height:auto;display:block;}
.ab-node,.ab-time{opacity:0;animation:vn-fade .6s ease forwards;}
.ab-node.n1{animation-delay:.2s}.ab-node.n2{animation-delay:.45s}.ab-time{animation-delay:.8s}
@media (prefers-reduced-motion: reduce){.ab-node,.ab-time{opacity:1;animation:none;}}
.ab-phil{background:var(--paper);padding:clamp(4rem,8vw,7rem) 0 !important;}
.ab-kicker{font-size:.95rem;font-weight:600;color:var(--gold-deep);}
.ab-statement{font-family:var(--display);font-size:clamp(1.9rem,3.8vw,3.3rem);font-weight:500;letter-spacing:-0.035em;line-height:1.14;max-width:62rem;margin-top:1rem;text-wrap:balance;}
.ab-statement span{color:var(--slate);}
.ab-who{background:var(--porcelain);}
.ab-who-grid,.ab-lead-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:start;}
.ab-who h2,.ab-lead-sec h2{font-size:clamp(2.1rem,4vw,3.3rem);letter-spacing:-0.035em;}
.ab-lead{color:var(--slate);font-size:1.06rem;line-height:1.65;margin-top:1.25rem;max-width:36rem;}
.ab-do{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.ab-do a{display:flex;flex-direction:column;gap:0.4rem;height:100%;padding:1.5rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);text-decoration:none;color:var(--ink);transition:border-color .2s ease;}
.ab-do a:hover{border-color:var(--gold);}
.ab-do strong{font-family:var(--display);font-size:1.3rem;font-weight:600;letter-spacing:-0.02em;}
.ab-do strong::after{content:" \2192";color:var(--gold-deep);}
.ab-do span{color:var(--slate);font-size:.95rem;line-height:1.5;}
.ab-approach{background:var(--paper);}
.ab-princ{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;counter-reset:ap;}
.ab-princ li{counter-increment:ap;padding:1.75rem 1.5rem;border-radius:1.25rem;background:var(--porcelain);}
.ab-princ li::before{content:"0" counter(ap);display:block;font-family:var(--display);font-weight:600;color:var(--gold-deep);margin-bottom:0.9rem;}
.ab-princ strong{font-family:var(--display);font-size:1.2rem;font-weight:600;letter-spacing:-0.015em;}
.ab-princ p{color:var(--slate);font-size:.95rem;margin-top:0.5rem;line-height:1.5;}
.ab-why{background:var(--paper);}
.ab-reasons{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid var(--rule);}
.ab-reasons li{padding:1.5rem 1.5rem 1.5rem 0;border-bottom:1px solid var(--rule);}
.ab-reasons strong{font-family:var(--display);font-size:1.15rem;font-weight:600;}
.ab-reasons p{color:var(--slate);font-size:.94rem;margin-top:0.4rem;line-height:1.5;}
.ab-ind{background:var(--porcelain);}
.ab-inds{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.ab-inds article{padding:1.75rem 1.5rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.5rem;}
.ab-inds h3{font-size:1.35rem;letter-spacing:-0.02em;}
.ab-inds p{color:var(--slate);font-size:.95rem;}
.ab-proof{margin-top:auto;padding-top:1rem;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem 0.9rem;min-height:3.5rem;}
.ab-logo{width:auto;display:block;filter:brightness(0);opacity:.6;}
.ab-chip{font-size:.85rem;font-weight:600;padding:0.3rem 0.7rem;border-radius:999px;background:var(--porcelain);border:1px solid var(--rule);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ab-logo{filter:brightness(0) invert(1);}}
.ab-model{background:var(--paper);}
.ab-model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.ab-model-grid article{padding:2rem;border-radius:1.5rem;border:1px solid var(--rule);display:flex;flex-direction:column;gap:0.6rem;}
.ab-model-grid h3{font-size:1.45rem;letter-spacing:-0.02em;}
.ab-model-grid p:not(.model-for){color:var(--slate);font-size:.97rem;}
.ab-model-grid address{font-style:normal;margin-top:auto;padding-top:1rem;border-top:1px solid var(--rule);font-size:.9rem;color:var(--slate);}
.ab-lead-sec{background:var(--porcelain);}
.ab-quotes{display:flex;flex-direction:column;gap:1rem;}
.ab-quotes figure{margin:0;padding:1.5rem 1.75rem;border-radius:1.25rem;background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--gold);}
.ab-quotes blockquote{margin:0;font-family:var(--display);font-size:1.08rem;font-weight:500;line-height:1.45;letter-spacing:-0.01em;}
.ab-quotes figcaption{margin-top:0.75rem;font-size:.9rem;color:var(--slate);}
@media (max-width:1100px){.ab-princ{grid-template-columns:1fr 1fr;} .ab-reasons{grid-template-columns:repeat(3,1fr);} .ab-inds{grid-template-columns:1fr 1fr;}}
@media (max-width:900px){.ab-who-grid,.ab-lead-grid{grid-template-columns:1fr;} .ab-model-grid{grid-template-columns:1fr;}}
@media (max-width:600px){.ab-do,.ab-princ,.ab-inds{grid-template-columns:1fr;} .ab-reasons{grid-template-columns:1fr;}}
@media (min-width:1600px){.ab-who-grid,.ab-lead-grid,.ab-princ,.ab-inds,.ab-model-grid{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

.dm-quotes{background:var(--paper);}
.dm .pe-ways{background:var(--porcelain) !important;}
.dm-q{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;}
.dm-q figure{margin:0;padding:2rem;border-radius:1.5rem;background:var(--porcelain);border-left:3px solid var(--gold);display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem;}
.dm-q blockquote{margin:0;font-family:var(--display);font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:500;line-height:1.4;letter-spacing:-0.015em;}
.dm-q figcaption{color:var(--slate);font-size:.92rem;}
@media (max-width:760px){.dm-q{grid-template-columns:1fr;}}
@media (min-width:1600px){.dm-q{column-gap:calc(1.25rem + var(--gap-boost)) !important;}}

/* ---------- Header: no divider line under the dark menu ---------- */
header.site.solid{border-bottom-color:transparent !important;}
/* ---------- Inner pages without back links ---------- */
.pe-hero-copy > .pe-eyebrow:first-child{margin-top:0;}
#careers-view .view-hero > .eyebrow-line:first-child{margin-top:0 !important;}
/* ---------- Statement with chart ---------- */
.stmt-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;}
.stmt-kicker{font-size:.95rem;font-weight:600;color:var(--gold-deep);margin-bottom:1rem;}
.about .stmt-grid .statement{font-size:clamp(1.8rem,3.2vw,2.9rem);max-width:none;}
.stmt-fig{margin:0;padding:clamp(1.25rem,2.5vw,2rem);border-radius:1.5rem;background:var(--porcelain);border:1px solid var(--rule);}
.stmt-chart{display:block;width:100%;height:auto;}
.stmt-chart .stmt-build,.stmt-chart .stmt-down,.stmt-chart .stmt-up{stroke-dasharray:700;stroke-dashoffset:700;}
.stmt-chart .stmt-down{stroke-dasharray:7 7;stroke-dashoffset:0;opacity:0;}
.stmt-chart .stmt-dots,.stmt-chart .stmt-l1,.stmt-chart .stmt-l2,.stmt-chart .stmt-zone,.stmt-chart .stmt-pt{opacity:0;}
.stmt-fig.in .stmt-build{animation:vn-draw .7s ease forwards;}
.stmt-fig.in .stmt-pt{animation:vn-fade .3s ease forwards .6s;}
.stmt-fig.in .stmt-zone{animation:vn-fade .6s ease forwards .7s;}
.stmt-fig.in .stmt-down{animation:vn-fade .8s ease forwards .9s;}
.stmt-fig.in .stmt-l2{animation:vn-fade .5s ease forwards 1.5s;}
.stmt-fig.in .stmt-up{animation:vn-draw 1.3s ease forwards 1.6s;}
.stmt-fig.in .stmt-dots{animation:vn-fade .5s ease forwards 2.6s;}
.stmt-fig.in .stmt-l1{animation:vn-fade .5s ease forwards 2.7s;}
@media (prefers-reduced-motion: reduce){.stmt-chart *{animation:none !important;opacity:1 !important;stroke-dashoffset:0 !important;}}
@media (max-width:900px){.stmt-grid{grid-template-columns:1fr;}}
@media (min-width:1600px){.stmt-grid{column-gap:calc(clamp(2.5rem,5vw,5rem) + var(--gap-boost));}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .stmt-chart text[fill="#0E1A2E"]{fill:#E9EDF5;} :root:not([data-theme="light"]) .stmt-chart .stmt-pt{fill:#121C35;stroke:#E9EDF5;}}

header.site::before{bottom:-1px !important;}

/* ---------- Inner-page heroes sit under the menu, like the home hero ---------- */
.app-view > .pe-hero:first-child{margin-top:calc(-1 * var(--header-h) - 1px);padding-top:calc(var(--header-h) + clamp(3rem,6vw,5rem)) !important;}
/* ---------- White menu on light pages (Insights, articles, Careers) ---------- */
header.site.light-menu{color:var(--ink) !important;}
header.site.light-menu::before{opacity:1 !important;background:rgba(255,255,255,.94) !important;box-shadow:0 1px 0 var(--rule);}
.app-view:not(:has(> .pe-hero)) .view-hero{padding-top:clamp(2.5rem,5vw,4rem);}

/* ---------- Light-page menu blends into the page ---------- */
header.site.light-menu::before{background:rgba(243,245,248,.94) !important;box-shadow:none !important;}
header.site.light-menu.scrolled::before{box-shadow:0 1px 0 var(--rule) !important;}
/* ---------- Contact page ---------- */
.ct{padding-bottom:clamp(4rem,8vw,7rem);}
.ct-hero h1{max-width:52rem;text-wrap:balance;}
.ct-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:clamp(2rem,4vw,4rem);align-items:start;margin-top:clamp(1.5rem,3vw,2.5rem);}
.ct-form{padding:clamp(1.5rem,3vw,2.5rem);border-radius:1.5rem;background:var(--paper);border:1px solid var(--rule);}
.ct-form label{display:flex;flex-direction:column;gap:0.35rem;font-size:.88rem;font-weight:600;}
.ct-form input:not([type=radio]),.ct-form select,.ct-form textarea{font:inherit;font-weight:400;font-size:1rem;padding:0.75rem 0.9rem;border-radius:0.75rem;border:1px solid var(--rule);background:var(--porcelain);color:var(--ink);}
.ct-form input:focus,.ct-form select:focus,.ct-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.ct-form .book-fields{margin-top:0;}
.ct-form .book-topics label{flex-direction:row;}
.ct-side{display:flex;flex-direction:column;gap:1.25rem;}
.ct-card{padding:1.75rem;border-radius:1.5rem;background:var(--paper);border:1px solid var(--rule);}
.ct-card h2{font-size:1.4rem;letter-spacing:-0.02em;}
.ct-steps{list-style:none;margin:1.1rem 0 0;padding:0;counter-reset:cs;}
.ct-steps li{counter-increment:cs;display:grid;grid-template-columns:2.25rem 1fr;column-gap:0.75rem;padding:0.8rem 0;border-top:1px solid var(--rule);}
.ct-steps li::before{content:counter(cs);grid-row:span 2;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--midnight);color:var(--gold);display:grid;place-items:center;font-family:var(--display);font-weight:600;font-size:.9rem;}
.ct-steps strong{font-weight:600;}
.ct-steps span{color:var(--slate);font-size:.93rem;}
.ct-info{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem;}
.ct-info h3{font-family:var(--body);font-size:.85rem;font-weight:600;color:var(--gold-deep);letter-spacing:0;margin-bottom:0.3rem;}
.ct-info a{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1px solid var(--gold);word-break:break-all;}
.ct-info address{font-style:normal;color:var(--slate);font-size:.94rem;line-height:1.55;}
.ct-note{grid-column:1 / -1;color:var(--slate);font-size:.9rem;padding-top:1rem;border-top:1px solid var(--rule);}
.ct-sent{padding:1rem 1.25rem;border-radius:0.9rem;background:rgba(255,154,31,.1);border:1px solid rgba(255,154,31,.4);margin-top:1rem;font-size:.95rem;}
@media (max-width:900px){.ct-grid{grid-template-columns:1fr;}}
@media (max-width:480px){.ct-info{grid-template-columns:1fr;}}
@media (min-width:1600px){.ct-grid{column-gap:calc(clamp(2rem,4vw,4rem) + var(--gap-boost));}}

.ct-info > div:nth-child(-n+2){grid-column:1 / -1;}
.ct-info a{word-break:normal !important;overflow-wrap:anywhere;}

/* ---------- Honeypot field (invisible to people) ---------- */
.hp-field{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden;}
/* ---------- Insights navy hero ---------- */
.ins-hero{padding-bottom:clamp(2.5rem,5vw,3.5rem) !important;}
.ins-hero h1{font-size:clamp(2.4rem,4.6vw,4rem);letter-spacing:-0.04em;line-height:1.04;margin-top:0.75rem;max-width:52rem;text-wrap:balance;}
.ins-hero .pe-eyebrow{margin-top:0;}
.ins-hero .filter-row{margin-top:2rem;}
.ins-hero .filter-chip{background:transparent;border-color:var(--on-dark-rule);color:var(--on-dark);}
.ins-hero .filter-chip:hover{border-color:var(--gold);color:var(--gold);}
.ins-hero .filter-chip.active{background:var(--gold);border-color:var(--gold);color:#1A1204;}
#insights-view .full-insight-grid{margin-top:clamp(2.5rem,5vw,3.5rem);}
/* ===== Home hero: darker background ===== */
.hero{background:#03061A !important;}
.hero-bg{background:
  radial-gradient(55% 50% at 78% 45%, rgba(43,139,214,.10), transparent 70%),
  radial-gradient(40% 35% at 72% 38%, rgba(255,154,31,.07), transparent 70%),
  radial-gradient(70% 60% at 0% 100%, rgba(10,19,48,.9), transparent 70%) !important;}
.hero-bg::after{background-image:radial-gradient(rgba(238,242,250,.07) 1px, transparent 1.2px) !important;}
.hero-foot{border-top-color:rgba(238,242,250,.10) !important;}

/* ---------- Multi-page additions ---------- */
#page-main{display:block;}
.ts-slot{margin-top:1.25rem;min-height:0;}
.form-status{margin-top:1rem;padding:0.9rem 1.1rem;border-radius:0.9rem;background:rgba(43,139,214,.1);border:1px solid rgba(43,139,214,.35);font-size:.95rem;}
.form-status.bad{background:rgba(255,154,31,.1);border-color:rgba(255,154,31,.45);}
.foot-legal{color:var(--on-dark-mute) !important;text-decoration:none;}
.foot-legal:hover{color:var(--gold) !important;}
.foot-sep{display:inline-block;width:1px;height:0.8em;background:var(--on-dark-rule);margin:0 0.8rem;vertical-align:middle;}
a.svc-row{color:inherit;}
.legal{padding-bottom:clamp(4rem,8vw,7rem);}
.legal-body{max-width:46rem;margin-top:1rem;}
.legal-body h2{font-size:1.35rem;letter-spacing:-0.02em;margin:2.25rem 0 0.6rem;}
.legal-body p,.legal-body li{color:var(--slate);font-size:1.02rem;line-height:1.7;}
.legal-body ul{padding-left:1.25rem;}
.legal-note{padding:1rem 1.25rem;border-radius:0.9rem;background:rgba(255,154,31,.08);border:1px solid rgba(255,154,31,.35);font-size:.95rem;color:var(--ink);}
.nf{min-height:60vh;display:flex;align-items:center;}
.nf .btn{margin-top:1.5rem;}

a.insight-card,a.am-read,a.or-link,a.story-link,a.svc-row{text-decoration:none;}
a.insight-card{color:inherit;}
a.am-read{color:var(--ink);}
a.svc-row .svc-name{color:inherit;}

.insight-card[hidden]{display:none !important;}
