/* ================================================================
   Softline Defense — framer.css
   The Softline family's dark Framer-style system in the Defense palette:
   night graphite, olive/sage glow, glass surfaces, tactical corner marks,
   mono labels, Inter. Loaded after softline.css; re-maps its --c-* tokens.
   ================================================================ */

@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url(/assets/fonts/jetbrains-mono-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 800;font-display:swap;src:url(/assets/fonts/jetbrains-mono-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --o-bg:#090B0A;
  --o-bg-2:#0D100E;
  --o-surface:#121612;
  --o-surface-2:#171C16;
  --o-glass:linear-gradient(180deg,rgba(38,48,30,.52),rgba(12,15,12,.78));
  --o-line:rgba(190,210,160,.12);
  --o-line-2:rgba(196,218,158,.26);
  --o-text:#ECEFE6;
  --o-text-2:rgba(232,237,224,.74);
  --o-text-3:rgba(232,237,224,.57);
  --o-olive:#6E8452;
  --o-sage:#A9C07F;
  --o-sage-2:#C9DCA6;
  --o-ok:#7FD69A;
  --o-grad:linear-gradient(95deg,#F1F7E2 0%,#CFE0AC 34%,#A9C07F 66%,#7C9560 100%);
  --o-btn:linear-gradient(180deg,#C6D99F,#93AC6C);
  --o-r:18px;
  --o-r-lg:26px;
  --o-ease:cubic-bezier(.22,1,.36,1);
  --o-font:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --o-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Consolas,monospace;
  --o-header-h:72px;

  /* softline.css tokens, re-mapped */
  --c-primary:#6E8452;
  --c-dark:#090B0A;
  --c-darker:#060807;
  --c-accent:#A9C07F;
  --c-accent-hover:#C9DCA6;
  --c-accent-glow:rgba(169,192,127,.20);
  --c-accent-subtle:rgba(169,192,127,.08);
  --c-accent-border:rgba(169,192,127,.28);
  --c-bg:#090B0A;
  --c-bg-elevated:#121612;
  --c-bg-deep:#0D100E;
  --c-surface:#171C16;
  --c-heading:#F4F6EE;
  --c-text:#E6EAE0;
  --c-text-secondary:rgba(232,237,224,.74);
  --c-text-muted:rgba(232,237,224,.57);
  --c-border:rgba(190,210,160,.12);
  --c-divider:rgba(190,210,160,.08);
  --font:var(--o-font);
  --mono:var(--o-mono);
  --radius:16px;
  --radius-lg:22px;
  --shadow-md:0 18px 50px -24px rgba(0,0,0,.8);
  --shadow-lg:0 30px 80px -30px rgba(0,0,0,.85);
  color-scheme:dark;
}

/* --- Base --- */
html{background:var(--o-bg)}
body{font-family:var(--o-font)!important;background:var(--o-bg)!important;color:var(--o-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:'cv11','ss01'}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(1200px 700px at 50% -10%,rgba(169,192,127,.08),transparent 60%)}
::selection{background:rgba(169,192,127,.35);color:#fff}
:focus-visible{outline:2px solid var(--o-sage);outline-offset:3px}
#main-content{position:relative;isolation:isolate}
h1,h2,h3,h4{font-family:var(--o-font);letter-spacing:-.03em}

/* --- Header: transparent over the hero, glass once scrolled --- */
.header{position:sticky;top:0;z-index:100;background:rgba(9,11,10,.35)!important;border-bottom:1px solid transparent!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .4s var(--o-ease),border-color .4s,box-shadow .4s}
.header.is-condensed{background:rgba(7,9,8,.82)!important;border-bottom-color:var(--o-line)!important;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);box-shadow:0 12px 40px -18px rgba(0,0,0,.85)}
/* Menu: visible hover, highlighted current section (set by site-header.html), pressed feedback */
.nav{gap:4px!important}
.nav-item{padding:8px 14px!important;border-radius:999px!important;color:rgba(232,237,224,.76)!important;font-weight:500!important;transition:color .25s,background .25s,box-shadow .25s,transform .2s!important}
.nav-item:hover,.nav-item:focus-visible,.nav-item.has-sub:focus-within{color:#fff!important;background:rgba(169,192,127,.15)!important;box-shadow:inset 0 0 0 1px rgba(201,220,166,.24)}
.nav-item:active{transform:scale(.96);background:rgba(169,192,127,.24)!important}
.nav-item.active{color:#E6F0D2!important;background:linear-gradient(180deg,rgba(169,192,127,.24),rgba(169,192,127,.10))!important;box-shadow:inset 0 0 0 1px rgba(201,220,166,.40),0 8px 24px -12px rgba(169,192,127,.65)}
.nav-item.active::before{content:'';position:absolute;left:50%;bottom:-8px;width:6px;height:6px;background:var(--o-sage);transform:translateX(-50%) rotate(45deg);box-shadow:0 0 10px var(--o-sage)}
.dropdown a.active{background:rgba(169,192,127,.16)!important;color:#fff!important;box-shadow:inset 2px 0 0 var(--o-sage)}
.mobile-primary-list a.active{color:var(--o-sage-2)!important}
.dropdown{background:rgba(10,13,11,.96)!important;border:1px solid var(--o-line-2)!important;border-radius:18px!important;box-shadow:0 30px 80px -20px rgba(0,0,0,.85)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.dropdown a{border-radius:10px!important;color:rgba(232,237,224,.78)!important}
.dropdown a:hover{background:rgba(169,192,127,.12)!important;color:#fff!important}
.header-cta,.btn-p{background:var(--o-btn)!important;color:#0B0E09!important;border:0!important;border-radius:999px!important;font-weight:600!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 0 1px rgba(201,220,166,.35),0 14px 36px -14px rgba(169,192,127,.75)!important;transition:transform .5s var(--o-ease),box-shadow .35s,filter .3s!important}
.header-cta:hover,.btn-p:hover{color:#0B0E09!important;filter:brightness(1.06);transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 0 1px rgba(214,232,180,.55),0 20px 50px -14px rgba(169,192,127,.95)!important}
.btn-g{border-radius:999px!important;border:1px solid var(--o-line-2)!important;background:rgba(255,255,255,.04)!important;color:var(--o-text)!important;font-weight:600!important;transition:background .3s,border-color .3s!important}
.btn-g:hover{background:rgba(255,255,255,.09)!important;border-color:rgba(201,220,166,.5)!important}
.mobile-nav{background:rgba(7,9,8,.97)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}

/* --- Signature: mono labels with a diamond "status" mark --- */
.sd-hero__mark,.sec-mark,.sd-context-eyebrow,.sd-exec-eyebrow,.sd-journey-kicker,.sd-proof-kicker,.kb-eyebrow,.callout-impl-label{font-family:var(--o-mono)!important;letter-spacing:.12em!important}
.sd-hero__mark,.sec-mark{display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 12px;border:1px solid var(--o-line-2);border-radius:999px;background:linear-gradient(180deg,rgba(169,192,127,.14),rgba(169,192,127,.03));color:#DDE9C6!important;font-size:11px!important;font-weight:500!important;text-transform:uppercase;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.sd-hero__mark::before,.sec-mark::before{content:'';flex:0 0 auto;width:7px;height:7px;background:var(--o-sage);transform:rotate(45deg);box-shadow:0 0 0 2px rgba(169,192,127,.18),0 0 12px var(--o-sage);animation:o-pulse 2.8s ease-in-out infinite}
@keyframes o-pulse{50%{opacity:.45}}
.sd-hero__mark .sd-hero__mark-divider{background:rgba(201,220,166,.35)!important}

/* --- Hero (every page): night field, olive glow, fine grid --- */
.sd-hero{position:relative;background:radial-gradient(900px 520px at 78% -10%,rgba(169,192,127,.20),transparent 62%),radial-gradient(700px 420px at 0% 110%,rgba(110,132,82,.18),transparent 60%),var(--o-bg)!important;border-bottom:1px solid var(--o-line)!important;overflow:hidden;isolation:isolate}
.sd-hero::before{background-image:linear-gradient(rgba(201,220,166,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(201,220,166,.06) 1px,transparent 1px)!important;background-size:56px 56px!important;-webkit-mask-image:radial-gradient(ellipse 70% 90% at 60% 0%,#000 10%,transparent 75%);mask-image:radial-gradient(ellipse 70% 90% at 60% 0%,#000 10%,transparent 75%)}
.sd-hero::after{opacity:.0!important}
.sd-hero h1{color:#fff!important;font-weight:600!important;letter-spacing:-.045em!important;line-height:1.04!important;text-wrap:balance}
.sd-hero h1 em,.sd-hero h1 em .w__i{font-style:normal;background:var(--o-grad);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.sd-hero h1 em:has(.w__i){background:none}
.sd-hero__sub{color:var(--o-text-2)!important}
.sd-hero__sub a{color:var(--o-sage-2)!important}
.sd-hero__crumbs,.sd-hero__crumbs a{color:var(--o-text-3)!important;font-family:var(--o-mono);font-size:12px}
.sd-hero__crumbs a:hover{color:#fff!important}
.sd-hero__meta span{border-color:var(--o-line)!important;color:var(--o-text-2)!important}
.sd-hero__meta strong{color:var(--o-sage-2)!important;font-family:var(--o-mono);font-weight:500}
.sd-hero__cta{gap:12px}

/* Home hero: copy left, live radar right */
.sd-hero--home{min-height:min(860px,100svh)}
.sd-hero--home h1{font-size:clamp(2.4rem,min(3.9vw,7.4vh),4.1rem)!important}
.sd-keyfacts{gap:1px!important;border:1px solid var(--o-line-2)!important;border-radius:var(--o-r)!important;background:var(--o-line)!important;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 30px 70px -40px rgba(169,192,127,.5)}
.sd-keyfact{background:linear-gradient(180deg,rgba(22,28,20,.92),rgba(10,13,11,.95))!important}
.sd-keyfact-val{color:#fff!important;font-family:var(--o-mono);font-weight:600!important;letter-spacing:-.02em}
.sd-keyfact-key{color:var(--o-text-3)!important;font-family:var(--o-mono)}
.ox-radar{position:absolute;z-index:2;top:calc(var(--o-header-h) + clamp(96px,11vh,150px));right:max(var(--gutter,24px),calc((100vw - var(--max-w,1200px))/2 + var(--gutter,24px)));width:clamp(360px,36vw,500px);aspect-ratio:1;pointer-events:none}
.ox-radar::before{content:'';position:absolute;inset:-12%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(169,192,127,.16),transparent);filter:blur(10px)}
.ox-radar__svg{display:block;width:100%;height:100%;overflow:visible}
.ox-radar .rings circle{fill:none;stroke:rgba(201,220,166,.18);stroke-width:1}
.ox-radar .rings circle:last-child{stroke:rgba(201,220,166,.34)}
.ox-radar .cross line{stroke:rgba(201,220,166,.14);stroke-width:1}
.ox-radar .cross .diag{stroke-dasharray:3 6}
.ox-radar .t-s{stroke:rgba(201,220,166,.22);stroke-width:1}
.ox-radar .t-l{stroke:rgba(201,220,166,.5);stroke-width:1.4}
.ox-radar .deg{fill:rgba(201,220,166,.42);font:500 9px var(--o-mono);text-anchor:middle}
.ox-radar .sweep{transform-origin:260px 260px;animation:o-sweep 7s linear infinite}
.ox-radar .beam{stroke:#D7E8B6;stroke-width:1.6;filter:drop-shadow(0 0 4px rgba(201,220,166,.9))}
@keyframes o-sweep{to{transform:rotate(360deg)}}
.ox-radar .blip{animation:o-blip 7s linear infinite}
.ox-radar .b-dot{fill:#D7E8B6}
.ox-radar .b-ring{fill:none;stroke:#C9DCA6;stroke-width:1.2}
.ox-radar .b-label{fill:#DDE9C6;font:500 11px var(--o-mono);letter-spacing:.02em}
@keyframes o-blip{0%{opacity:1}6%{opacity:1}55%{opacity:.28}100%{opacity:.28}}
.ox-radar .core-ring{fill:none;stroke:rgba(201,220,166,.5);stroke-dasharray:4 5;transform-origin:260px 260px;animation:o-sweep 24s linear infinite reverse}
.ox-radar .core-fill{fill:rgba(14,18,13,.92);stroke:rgba(201,220,166,.42)}
.ox-radar .core-shield{fill:none;stroke:#C9DCA6;stroke-width:1.6;stroke-linejoin:round}
.ox-radar .core-check{fill:none;stroke:var(--o-ok);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ox-radar__corner{position:absolute;width:22px;height:22px;border-color:rgba(201,220,166,.55);border-style:solid;border-width:0}
.ox-radar__corner--tl{left:-6px;top:-6px;border-left-width:1.5px;border-top-width:1.5px}
.ox-radar__corner--tr{right:-6px;top:-6px;border-right-width:1.5px;border-top-width:1.5px}
.ox-radar__corner--bl{left:-6px;bottom:-6px;border-left-width:1.5px;border-bottom-width:1.5px}
.ox-radar__corner--br{right:-6px;bottom:-6px;border-right-width:1.5px;border-bottom-width:1.5px}
.ox-radar__readout{position:absolute;color:rgba(221,233,198,.62);font:500 10.5px var(--o-mono);letter-spacing:.12em}
.ox-radar__readout--tl{left:18px;top:-30px}
.ox-radar__readout--br{right:18px;bottom:-30px}
.ox-radar__readout--bl{left:18px;bottom:-30px;display:inline-flex;align-items:center;gap:8px}
.ox-radar__readout--bl i{width:7px;height:7px;border-radius:50%;background:var(--o-ok);box-shadow:0 0 10px var(--o-ok);animation:o-pulse 2s ease-in-out infinite}
@media (min-width:1100px){.sd-hero--home .sd-hero__inner{max-width:min(640px,54%)!important;margin-left:0!important}}
@media (max-width:1099px){.ox-radar{display:none}}

/* --- Section heads --- */
.sec-title-big,.sd-context-title,.sd-journey-title,.sd-exec-title,.sd-proof-title{color:#fff!important;font-weight:600!important;letter-spacing:-.04em!important;text-wrap:balance}
.sec-lead,.sd-context-lead,.sd-journey-lead,.sd-exec-lead,.sd-proof-lead{color:var(--o-text-2)!important}
.sec-deep{background:radial-gradient(900px 420px at 50% 0%,rgba(169,192,127,.07),transparent 70%),var(--o-bg-2)!important}

/* --- Panels and cards: one glass grammar with tactical corner marks --- */
.sd-context-panel,.sd-exec-summary,.sd-inline-cta,.sd-proof-strip,.sd-journey-panel{border:1px solid var(--o-line-2)!important;border-radius:var(--o-r-lg)!important;background:radial-gradient(700px 260px at 0% 0%,rgba(169,192,127,.12),transparent 70%),var(--o-glass)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 40px 100px -50px rgba(0,0,0,.9)!important}
.sd-context-card,.sd-exec-card,.sd-journey-step,.sd-proof-item,.sd-feature,.sd-usecase,.sd-hub-card,.sd-news-card,.sd-news-featured,.sd-team-card,.sd-doc-nav-link,.hub-card,.kb-topic-card,.gl-term,.sd-tier-grid{position:relative;border:1px solid var(--o-line)!important;border-radius:var(--o-r)!important;background:var(--o-glass)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;transition:transform .6s var(--o-ease),border-color .4s,box-shadow .5s!important}
.sd-feature:hover,.sd-usecase:hover,.sd-hub-card:hover,.sd-news-card:hover,.sd-news-card:focus-within,.sd-doc-nav-link:hover,.hub-card:hover,.kb-topic-card:hover,.gl-term:hover,.sd-team-card:hover{transform:translateY(-4px);border-color:var(--o-line-2)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 30px 70px -32px rgba(169,192,127,.45)!important}
/* corner ticks appear on hover — the "target acquired" cue */
.sd-feature::after,.sd-usecase::after,.sd-hub-card::after,.sd-news-card::after,.hub-card::after,.kb-topic-card::after{content:''!important;position:absolute!important;inset:8px!important;width:auto!important;height:auto!important;background:linear-gradient(var(--o-sage-2),var(--o-sage-2)) left top/12px 1.5px,linear-gradient(var(--o-sage-2),var(--o-sage-2)) left top/1.5px 12px,linear-gradient(var(--o-sage-2),var(--o-sage-2)) right bottom/12px 1.5px,linear-gradient(var(--o-sage-2),var(--o-sage-2)) right bottom/1.5px 12px!important;background-repeat:no-repeat!important;opacity:0;transform:scale(1.03);transition:opacity .4s,transform .5s var(--o-ease)!important;pointer-events:none;border-radius:0!important}
.sd-feature:hover::after,.sd-usecase:hover::after,.sd-hub-card:hover::after,.sd-news-card:hover::after,.hub-card:hover::after,.kb-topic-card:hover::after{opacity:.9;transform:none}
.sd-usecase::before,.sd-hub-card::before{opacity:0!important}
.sd-feature-num,.sd-usecase-tag,.sd-tier-id,.kb-topic-num,.sd-doc-nav-dir,.sd-hub-cta,.sd-usecase-arrow,.sd-subnav-link-num{color:var(--o-sage)!important;font-family:var(--o-mono)}
.sd-feature-title,.sd-usecase-title,.sd-hub-title,.sd-team-name,.sd-tier-title,.kb-topic-title,.sd-doc-nav-title{color:#fff!important;font-weight:600!important;letter-spacing:-.02em}
.sd-feature-desc,.sd-usecase-desc,.sd-hub-desc,.sd-team-bio,.sd-tier-body{color:var(--o-text-2)!important}
.sd-hub-icon{border-radius:12px!important;border-color:var(--o-line-2)!important;background:linear-gradient(180deg,rgba(169,192,127,.22),rgba(169,192,127,.05))!important;color:var(--o-sage-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 8px 24px -10px rgba(169,192,127,.7)}
.sd-team-role{color:var(--o-sage)!important}

/* Final CTA: glowing band */
.sd-final-cta{position:relative;background:radial-gradient(800px 360px at 50% 0%,rgba(169,192,127,.24),transparent 68%),var(--o-bg)!important;border-top:1px solid var(--o-line)!important;border-bottom:1px solid var(--o-line)!important;overflow:hidden}
.sd-final-cta::before{background-image:linear-gradient(rgba(201,220,166,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(201,220,166,.06) 1px,transparent 1px)!important;background-size:56px 56px!important;-webkit-mask-image:radial-gradient(ellipse 60% 90% at 50% 0%,#000,transparent 75%);mask-image:radial-gradient(ellipse 60% 90% at 50% 0%,#000,transparent 75%)}
.sd-final-cta h2{color:#fff!important;font-weight:600!important;letter-spacing:-.04em}
.sd-final-cta p{color:var(--o-text-2)!important}

/* --- Documentation pages --- */
.sd-subnav{background:rgba(7,9,8,.82)!important;border-bottom-color:var(--o-line)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.sd-subnav-link{color:var(--o-text-2)!important}
.sd-subnav-link:hover{color:#fff!important}
.sd-subnav-link.is-active{color:#fff!important;border-bottom-color:var(--o-sage)!important}
.sd-toc__label{color:var(--o-text-3)!important;font-family:var(--o-mono);letter-spacing:.1em}
.sd-toc__link{color:var(--o-text-3)!important}
.sd-toc__link:hover{color:#fff!important}
.sd-toc__link.is-active{color:#fff!important;border-left-color:var(--o-sage)!important;background:rgba(169,192,127,.10)!important}
.sd-toc__progress-fill{background:linear-gradient(90deg,#7C9560,#C9DCA6)!important}
.edu-prose{color:var(--o-text-2)!important}
.edu-prose h2,.edu-prose h3{color:#fff!important;font-weight:600!important}
.edu-prose h2{border-top-color:var(--o-line)!important}
.edu-prose h4{color:var(--o-sage-2)!important}
.edu-prose strong{color:var(--o-text)}
.edu-prose a{color:var(--o-sage-2)}
.edu-prose-lead{color:var(--o-text)!important}
.norm-cite{color:var(--o-sage-2)!important;border-bottom-color:rgba(201,220,166,.35)!important}
.callout-impl{border-radius:var(--o-r)!important;border:1px solid var(--o-line-2)!important;border-left:3px solid var(--o-sage)!important;background:radial-gradient(500px 180px at 0% 0%,rgba(169,192,127,.14),transparent 70%),var(--o-glass)!important}
.callout-impl-title{color:#fff!important}
.callout-impl-body{color:var(--o-text-2)!important}
.callout-impl-link{color:var(--o-sage-2)!important}
.heat-map th,.heat-map td{background:rgba(18,22,18,.85)!important;border-color:var(--o-line)!important}
.heat-map thead th{background:rgba(169,192,127,.10)!important;color:var(--o-sage-2)!important;font-family:var(--o-mono)}
.heat-map tbody td:first-child{color:var(--o-text-3)!important}
.hm-supported{background:rgba(127,214,154,.12)!important;color:#A8EBBE!important}
.hm-supported::before{background:#8FE1AA!important;box-shadow:0 0 8px rgba(127,214,154,.6)!important}
.sd-tabs__nav{border-bottom-color:var(--o-line)!important}
.sd-tabs__btn{color:var(--o-text-3)!important}
.sd-tabs__btn:hover{color:#fff!important}
.sd-tabs__btn.is-active{color:#fff!important;border-bottom-color:var(--o-sage)!important}
.sd-diagram{border:1px solid var(--o-line-2);border-radius:var(--o-r-lg);background:radial-gradient(500px 300px at 50% 40%,rgba(169,192,127,.10),transparent 70%),var(--o-glass)}
.sd-diagram-caption{color:var(--o-text-3)!important;font-family:var(--o-mono)}
.tag,.sd-cap-badge{border-radius:999px!important;font-family:var(--o-mono)}
.sd-expert-comment{border-radius:var(--o-r)!important;border:1px solid var(--o-line-2)!important;background:var(--o-glass)!important}

/* --- News --- */
.sd-news-meta{color:var(--o-text-3)!important;font-family:var(--o-mono)}
.sd-news-cta{color:var(--o-sage-2)!important}
.sd-news-featured{background:radial-gradient(700px 300px at 100% 0%,rgba(169,192,127,.18),transparent 70%),var(--o-glass)!important;border-color:var(--o-line-2)!important}
.sd-news-featured::after,.sd-news-card::after{height:auto!important}

/* --- Footer --- */
.footer{position:relative;background:radial-gradient(1000px 360px at 50% 0%,rgba(169,192,127,.08),transparent 70%),linear-gradient(180deg,#0B0E0B,#060807)!important;border-top:1px solid var(--o-line)}
.footer::before{content:'';position:absolute;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(201,220,166,.5),transparent)}
.footer-col h4{color:var(--o-text-3)!important;font-family:var(--o-mono);letter-spacing:.14em}
.footer a{color:var(--o-text-2)}
.footer a:hover{color:#fff!important}
.footer-address strong{color:var(--o-text-2)!important}

/* --- Motion utilities (active only when framer.js runs; .fx-js is set by fx-boot.js) --- */
.fx-js [data-reveal]{opacity:0;transform:translate3d(0,24px,0);transition:opacity .9s var(--o-ease),transform 1s var(--o-ease)!important;transition-delay:var(--d,0ms)!important}
.fx-js [data-reveal].is-in{opacity:1;transform:none}
.fx-js [data-split]:not(.is-split){opacity:0}
.is-split .w{display:inline-block;white-space:nowrap}
.is-split .w__i{display:inline-block;opacity:0;filter:blur(8px);transform:translate3d(0,.35em,0);transition:opacity .9s var(--o-ease),filter .9s var(--o-ease),transform 1s var(--o-ease);transition-delay:calc(var(--i,0)*40ms)}
.is-split.is-in .w__i{opacity:1;filter:none;transform:none}
.spot{--mx:50%;--my:50%}
@media (prefers-reduced-motion:reduce){
  .fx-js [data-reveal],.fx-js [data-split],.is-split .w__i{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .ox-radar *,.sd-hero__mark::before,.sec-mark::before{animation:none!important}
  .ox-radar .blip{opacity:1}
}

/* --- Contrast pass --- */
.footer-bottom-l,.footer-bottom-r,.footer-bottom a{color:var(--o-text-3)!important}
.footer-ci,.footer-address,.footer-desc{color:var(--o-text-2)!important}
.sd-exec-eyebrow,.sd-proof-kicker,.sd-context-eyebrow,.sd-journey-kicker{color:#C7D7A8!important}
.sd-proof-note,.kb-art .m,.hub-card .meta,.sd-news-meta{color:var(--o-text-3)!important}
.sl-contact__fallback-btn{background:var(--o-btn)!important;color:#0B0E09!important;border:0!important;border-radius:999px!important;font-weight:600!important}
