@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,800;1,700;1,800&family=Inter:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --black:#0B0C0E;--dark:#0f1118;--dark2:#161b27;
  --teal:#00C48C;--teal2:#33d9a8;--teal-dim:rgba(0,196,140,.14);
  --hybrid-bg:#F7F7F5;--hybrid-text:#111827;--hybrid-muted:#6B7280;
  --hybrid-card:#FFFFFF;--hybrid-border:#E5E7EB;
  --indigo:#1e1b4b;--gold:#c8a96e;--gold2:#e8c98e;
  --cream:#fafaf8;--white:#fff;
  --ok:#15803d;--warn:#b45309;--bad:#b91c1c;
  --ok-bg:rgba(21,128,61,.12);--warn-bg:rgba(180,83,9,.12);--bad-bg:rgba(185,28,28,.1);
  --f-d:'Playfair Display',Georgia,serif;
  --f-s:'Inter',-apple-system,sans-serif;
  --f-m:'DM Mono',monospace;
  --ease:cubic-bezier(.22,.61,.36,1);
}
html{scroll-behavior:smooth}
body{background:var(--black);color:#fff;font-family:var(--f-s);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
img{display:block}

/* ── NAV ── */
.nav{position:fixed;inset:0 0 auto 0;z-index:300;height:56px;
  display:flex;align-items:center;padding:0 32px;gap:0;
  background:rgba(8,9,12,.88);
  border-bottom:1px solid rgba(255,255,255,.06);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.nav-brand{display:flex;align-items:center;gap:10px;margin-right:32px;flex-shrink:0}
.nav-brand img{width:28px;height:28px;border-radius:6px;background:#fff;flex-shrink:0}
.nav-wordmark{font-family:var(--f-d);font-weight:800;font-size:17px;letter-spacing:-.02em}
.nav-wordmark em{font-style:italic;color:var(--teal)}
.nav-links{display:flex;align-items:center;gap:2px;flex:1}
.nav-link{font-size:13px;font-weight:500;color:rgba(255,255,255,.58);
  padding:6px 14px;border-radius:6px;
  transition:color .2s,background .2s;white-space:nowrap;
  position:relative}
.nav-link:hover,.nav-link.active{color:#fff;background:rgba(255,255,255,.06)}
/* dropdown */
.nav-dd{position:relative}
.nav-dd>.nav-link::after{content:'›';display:inline-block;transform:rotate(90deg);
  font-size:14px;margin-left:4px;transition:transform .2s;opacity:.5}
.nav-dd:hover>.nav-link::after{transform:rotate(270deg);opacity:1}
.dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;
  background:rgba(15,17,24,.96);border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:8px;
  backdrop-filter:blur(20px);
  opacity:0;pointer-events:none;transform:translateY(-6px);
  transition:opacity .2s,transform .2s;z-index:100}
.nav-dd:hover .dropdown{opacity:1;pointer-events:all;transform:none}
.dropdown a{display:flex;align-items:center;gap:10px;padding:9px 12px;
  border-radius:6px;font-size:13px;color:rgba(255,255,255,.65);
  transition:color .15s,background .15s}
.dropdown a:hover{color:#fff;background:rgba(255,255,255,.06)}
.dropdown .dd-icon{width:28px;height:28px;border-radius:6px;
  display:grid;place-items:center;font-size:14px;flex-shrink:0}
.dropdown-divider{height:1px;background:rgba(255,255,255,.06);margin:6px 0}
.nav-cta{margin-left:auto;padding:8px 20px;border-radius:999px;
  background:var(--teal);color:#fff;font-size:13px;font-weight:600;
  transition:background .2s,transform .15s;flex-shrink:0}
.nav-cta:hover{background:#0bbf94;transform:translateY(-1px)}

/* ── REVEAL ── */
.rv{opacity:0;transform:translateY(24px);
  transition:opacity .85s var(--ease),transform .85s var(--ease);
  transition-delay:var(--d,0ms)}
.rv.in{opacity:1;transform:none}
.rv-l{opacity:0;transform:translateX(-32px);
  transition:opacity .85s var(--ease),transform .85s var(--ease);
  transition-delay:var(--d,0ms)}
.rv-l.in{opacity:1;transform:none}
.rv-r{opacity:0;transform:translateX(32px);
  transition:opacity .85s var(--ease),transform .85s var(--ease);
  transition-delay:var(--d,0ms)}
.rv-r.in{opacity:1;transform:none}

/* ── LAYOUT ── */
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.sec{padding:140px 0;position:relative;overflow:hidden}
.sec-dark{background:var(--dark)}
.sec-darker{background:var(--black)}
.sec-light{background:var(--cream);color:var(--black)}
.sec-indigo{background:var(--indigo)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
@media(max-width:900px){.two-col{grid-template-columns:1fr;gap:48px}}

/* ── TYPOGRAPHY ── */
.kicker{font-family:var(--f-m);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--teal);margin-bottom:20px;font-weight:500}
.kicker.dim{color:rgba(255,255,255,.3)}
.kicker.dim em{color:var(--teal)}
.kicker.ink{color:rgba(0,0,0,.35)}
.sh{font-family:var(--f-d);font-weight:800;
  font-size:clamp(36px,4.5vw,64px);line-height:.98;letter-spacing:-.03em;
  max-width:15ch;text-wrap:balance;margin-bottom:20px}
.sh em{font-style:italic;color:var(--teal)}
.sh.on-dark{color:#fff}
.sh.on-light{color:var(--black)}
.sp{font-size:clamp(16px,1.3vw,18px);line-height:1.65;max-width:50ch;font-weight:400;text-wrap:pretty}
.sp.on-dark{color:rgba(255,255,255,.5)}
.sp.on-light{color:rgba(0,0,0,.5)}

/* ── BUTTONS ── */
.btn-p{display:inline-block;padding:14px 32px;border-radius:999px;
  background:var(--teal);color:#fff;font-size:15px;font-weight:600;
  transition:background .2s,transform .15s}
.btn-p:hover{background:#0bbf94;transform:translateY(-1px)}
.btn-p.dark{background:#fff;color:#111}
.btn-p.dark:hover{background:#f0f0f0}
.btn-g{display:inline-flex;align-items:center;gap:6px;padding:14px 24px;
  font-size:15px;font-weight:500;color:rgba(255,255,255,.6)}
.btn-g::after{content:"›";font-size:19px;transition:transform .2s}
.btn-g:hover::after{transform:translateX(4px)}
.btn-g:hover{color:#fff}
.btn-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

.article-link{color:var(--teal,#0d9488);font-weight:500;text-decoration:underline;text-underline-offset:2px}
.article-link:hover{color:#0f766e}

/* ── MODULE CARD SHELL ── */
.mod{background:var(--dark2);border:1px solid rgba(255,255,255,.07);
  border-radius:12px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.5)}
.mod.light{background:#fff;border-color:rgba(0,0,0,.08);
  box-shadow:0 20px 60px rgba(0,0,0,.12)}
.mod-bar{display:flex;align-items:center;gap:6px;
  padding:11px 16px;border-bottom:1px solid rgba(255,255,255,.06);
  font-family:var(--f-m);font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(255,255,255,.3)}
.mod-bar.light-bar{border-bottom-color:rgba(0,0,0,.08);color:rgba(0,0,0,.35)}
.dot{width:8px;height:8px;border-radius:50%}
.mod-body{padding:20px}

/* ── LOGO BAR ── */
.logo-bar{border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
  padding:28px 0;overflow:hidden;position:relative;
  background:rgba(255,255,255,.015)}
.logo-bar::before,.logo-bar::after{content:'';position:absolute;top:0;bottom:0;
  width:120px;z-index:2;pointer-events:none}
.logo-bar::before{left:0;background:linear-gradient(90deg,var(--black),transparent)}
.logo-bar::after{right:0;background:linear-gradient(270deg,var(--black),transparent)}
.logo-track{display:flex;gap:64px;align-items:center;
  animation:marquee 28s linear infinite;width:max-content}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.logo-ph{font-family:var(--f-m);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:rgba(255,255,255,.18);white-space:nowrap}

/* ── CTA SECTION ── */
.cta-sec{background:var(--indigo);text-align:center;padding:140px 0;position:relative;overflow:hidden;max-width:100%}
.cta-sec::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 800px 500px at 50% 50%,rgba(10,158,122,.18),transparent 70%)}
.cta-h{font-family:var(--f-d);font-weight:800;
  font-size:clamp(44px,6vw,80px);line-height:.97;letter-spacing:-.035em;
  color:#fff;max-width:18ch;margin:0 auto 24px;text-wrap:balance}
.cta-h em{font-style:italic;color:var(--teal)}
.cta-p{font-size:18px;color:rgba(255,255,255,.45);max-width:52ch;margin:0 auto 44px;line-height:1.55}

/* ── FOOTER ── */
.footer{background:var(--black);padding:64px 0 32px;color:#9CA3AF}
.footer-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;margin-bottom:48px}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr;gap:32px}}
.footer-brand-col{display:flex;flex-direction:column;gap:16px}
.footer-brand{display:inline-flex;align-items:center}
.footer-brand img{width:32px;height:32px;border-radius:6px;background:#fff}
.footer-tagline{font-size:14px;line-height:1.6;color:#9CA3AF;max-width:28ch;margin:0}
.footer-heading{font-family:var(--f-m);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--teal);margin-bottom:16px;font-weight:500}
.footer-nav{display:flex;flex-direction:column;gap:10px}
.footer-nav a{font-size:14px;color:#9CA3AF;transition:color .2s}
.footer-nav a:hover{color:#fff}
.footer-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;
  flex-wrap:wrap;padding-top:32px;border-top:1px solid #1F2937;
  font-size:13px;color:#6B7280}
.footer-bar p{margin:0;line-height:1.5}
@media(max-width:600px){.footer-bar{flex-direction:column;align-items:flex-start}}

/* ── STATUS TAGS ── */
.tag{display:inline-flex;padding:3px 9px;border-radius:2px;
  font-family:var(--f-m);font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.tag.go{background:rgba(10,158,122,.18);color:#34d4a8}
.tag.warn{background:rgba(200,169,110,.18);color:#d9bc8a}
.tag.bad{background:rgba(185,28,28,.2);color:#f08070}

/* ── SCROLL CUE ── */
.scroll-cue{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);
  font-family:var(--f-m);font-size:9px;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.2);display:flex;flex-direction:column;align-items:center;gap:8px}
.scroll-cue::after{content:'';width:1px;height:28px;
  background:linear-gradient(var(--teal),transparent);
  animation:drip 2.2s ease-in-out infinite}
@keyframes drip{
  0%{transform:scaleY(0);transform-origin:top}
  50%{transform:scaleY(1);transform-origin:top}
  50.01%{transform:scaleY(1);transform-origin:bottom}
  100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(10,158,122,.5)}50%{box-shadow:0 0 0 8px transparent}}

/* ── FORM ELEMENTS ── */
.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.form-group label{font-family:var(--f-m);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(255,255,255,.4)}
.form-group input,.form-group select,.form-group textarea{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
  border-radius:6px;padding:12px 14px;color:#fff;font:inherit;font-size:15px;
  transition:border-color .2s,background .2s;outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
  border-color:var(--teal);background:rgba(10,158,122,.05)}
.form-group select option{background:#1a1a2e;color:#fff}
.form-group textarea{resize:vertical;min-height:80px}

/* ── THEME TOGGLE BUTTON ── */
.theme-toggle{width:34px;height:34px;border-radius:8px;margin-left:8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  display:grid;place-items:center;cursor:pointer;flex-shrink:0;
  transition:background .2s,border-color .2s;font-size:15px}
.theme-toggle:hover{background:rgba(255,255,255,.1)}
[data-theme="light"] .theme-toggle{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.1)}
[data-theme="light"] .theme-toggle:hover{background:rgba(0,0,0,.08)}

/* ══ LIGHT THEME ══════════════════════════════════════════ */
[data-theme="light"]{
  --black:#f5f5f2;
  --dark:#ededea;
  --dark2:#e6e6e2;
}
[data-theme="light"] body{background:#f5f5f2;color:#111}
[data-theme="light"] .nav{background:rgba(245,245,242,.92);border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .nav-wordmark{color:#111}
[data-theme="light"] .nav-link{color:rgba(0,0,0,.5)}
[data-theme="light"] .nav-link:hover,[data-theme="light"] .nav-link.active{color:#111;background:rgba(0,0,0,.05)}
[data-theme="light"] .dropdown{background:rgba(250,250,248,.97);border-color:rgba(0,0,0,.1)}
[data-theme="light"] .dropdown a{color:rgba(0,0,0,.6)}
[data-theme="light"] .dropdown a:hover{color:#111;background:rgba(0,0,0,.05)}
[data-theme="light"] .mod-nav{background:rgba(245,245,242,.92);border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .mn-link{color:rgba(0,0,0,.45)}
[data-theme="light"] .mn-link:hover,[data-theme="light"] .mn-link.active{color:var(--teal);border-bottom-color:var(--teal)}

/* sections */
[data-theme="light"] .sec-dark{background:#ededea}
[data-theme="light"] .sec-darker{background:#f5f5f2}
[data-theme="light"] .sec-dark .sh.on-dark{color:#111}
[data-theme="light"] .sec-dark .sp.on-dark{color:rgba(0,0,0,.5)}
[data-theme="light"] .sec-dark .kicker.dim{color:rgba(0,0,0,.35)}
[data-theme="light"] .sec-dark .kicker.dim em{color:var(--teal)}
[data-theme="light"] .sec-dark .stat{background:#e6e6e2}
[data-theme="light"] .sec-dark .stat-n{color:#111}

/* cards */
[data-theme="light"] .mod{background:#fff;border-color:rgba(0,0,0,.1);
  box-shadow:0 4px 24px rgba(0,0,0,.06)}
[data-theme="light"] .mod-bar{background:#fafaf8;border-bottom-color:rgba(0,0,0,.08);color:rgba(0,0,0,.4)}
[data-theme="light"] .tease{background:#fff;border-color:rgba(0,0,0,.09)}
[data-theme="light"] .tease h3{color:#111}
[data-theme="light"] .tease p{color:rgba(0,0,0,.5)}
[data-theme="light"] .mini-cockpit{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.07)}
[data-theme="light"] .mini-kpi-row{color:rgba(0,0,0,.4);border-bottom-color:rgba(0,0,0,.06)}
[data-theme="light"] .mini-ring-num{color:#111}
[data-theme="light"] .scenario{background:#fff;border-color:rgba(0,0,0,.09)}
[data-theme="light"] .scenario-head .title{color:rgba(0,0,0,.4)}
[data-theme="light"] .scenario-head .score{color:#111}
[data-theme="light"] .inc-item{background:#fff;border-color:rgba(0,0,0,.08)}
[data-theme="light"] .inc-item h4{color:#111}
[data-theme="light"] .inc-item p{color:rgba(0,0,0,.5)}
[data-theme="light"] .stat-pill{background:#fff;border-color:rgba(0,0,0,.08)}
[data-theme="light"] .stat-pill .n{color:#111}
[data-theme="light"] .calc{background:#fff;border-color:rgba(0,0,0,.09)}
[data-theme="light"] .form-card{background:#fff;border-color:rgba(0,0,0,.1)}
[data-theme="light"] .form-card h2{color:#111}
[data-theme="light"] .form-card .form-sub{color:rgba(0,0,0,.45)}
[data-theme="light"] .form-group label{color:rgba(0,0,0,.45)}
[data-theme="light"] .form-group input,[data-theme="light"] .form-group select,
[data-theme="light"] .form-group textarea{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.12);color:#111}
[data-theme="light"] .faq-item{border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .faq-q{color:#111}
[data-theme="light"] .faq-a{color:rgba(0,0,0,.5)}
[data-theme="light"] .phil-item{background:#fff;border-color:rgba(0,0,0,.08)}
[data-theme="light"] .phil-item h4{color:#111}
[data-theme="light"] .phil-item p{color:rgba(0,0,0,.45)}
[data-theme="light"] .ind-tab{color:rgba(0,0,0,.45)}
[data-theme="light"] .ind-tab.active{color:#111}
[data-theme="light"] .ind-tabs{background:rgba(245,245,242,.92);border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .quote-block{background:#ededea}
[data-theme="light"] .quote-text{color:rgba(0,0,0,.65)}
[data-theme="light"] .quote-attr{color:rgba(0,0,0,.35)}

/* hero on light */
[data-theme="light"] .hero h1{color:#111}
[data-theme="light"] .hero-sub{color:rgba(0,0,0,.5)}
[data-theme="light"] .hero::before{background:
  radial-gradient(ellipse 900px 500px at 50% 0%,rgba(10,158,122,.1),transparent 65%),
  radial-gradient(ellipse 700px 600px at 80% 80%,rgba(30,27,75,.08),transparent 60%)}
[data-theme="light"] .verdict-strip{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08)}
[data-theme="light"] .vs-item{border-right-color:rgba(0,0,0,.08)}
[data-theme="light"] .vs-item .v{color:rgba(0,0,0,.4)}
[data-theme="light"] .vs-item .n{color:#111}
[data-theme="light"] .logo-bar{background:rgba(0,0,0,.015);
  border-top-color:rgba(0,0,0,.06);border-bottom-color:rgba(0,0,0,.06)}
[data-theme="light"] .logo-bar::before{background:linear-gradient(90deg,var(--black),transparent)}
[data-theme="light"] .logo-bar::after{background:linear-gradient(270deg,var(--black),transparent)}
[data-theme="light"] .logo-ph{color:rgba(0,0,0,.2)}
[data-theme="light"] .scroll-cue{color:rgba(0,0,0,.3)}
[data-theme="light"] .page-hero h1{color:#111}
[data-theme="light"] .page-hero p{color:rgba(0,0,0,.5)}
[data-theme="light"] .cta-sec{background:#1e1b4b}
[data-theme="light"] .footer{background:var(--black);color:#9CA3AF}
[data-theme="light"] .footer-tagline,[data-theme="light"] .footer-nav a{color:#9CA3AF}
[data-theme="light"] .footer-nav a:hover{color:#fff}
[data-theme="light"] .footer-bar{color:#6B7280;border-top-color:#1F2937}
[data-theme="light"] .kicker{color:var(--teal)}
[data-theme="light"] .sh.on-dark{color:#111}
[data-theme="light"] .sp.on-dark{color:rgba(0,0,0,.5)}

/* ledger / cockpit on light */
[data-theme="light"] .ct-row{border-bottom-color:rgba(0,0,0,.06)}
[data-theme="light"] .ct-head{color:rgba(0,0,0,.4);border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .ct-name{color:rgba(0,0,0,.8)}
[data-theme="light"] .skill-bar{background:rgba(0,0,0,.06)}
[data-theme="light"] .ck{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08)}
[data-theme="light"] .kpi{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08)}
[data-theme="light"] .kpi-l{color:rgba(0,0,0,.4)}
[data-theme="light"] .ledger-head{background:rgba(0,0,0,.03);color:rgba(0,0,0,.4);border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .l-row{border-bottom-color:rgba(0,0,0,.06)}
[data-theme="light"] .l-time{color:rgba(0,0,0,.4)}
[data-theme="light"] .l-evt{color:rgba(0,0,0,.8)}
[data-theme="light"] .l-actor{color:rgba(0,0,0,.4)}
[data-theme="light"] .dial-sub{color:rgba(0,0,0,.4)}
[data-theme="light"] .dial-big{color:#111}
[data-theme="light"] .st{background:rgba(0,0,0,.08)}
[data-theme="light"] .stations-grid.lit .st.ok{background:var(--teal)}
[data-theme="light"] .stations-grid.lit .st.warn{background:var(--gold)}
[data-theme="light"] .tl-content .tl-desc{color:rgba(0,0,0,.45)}
[data-theme="light"] .tl-content .tl-what{color:#111}
[data-theme="light"] .verdict-sec .verdict-word{color:rgba(0,0,0,.05)}
[data-theme="light"] .verdict-caption{color:rgba(0,0,0,.5)}
[data-theme="light"] .comp-table th{color:rgba(0,0,0,.4);border-bottom-color:rgba(0,0,0,.1)}
[data-theme="light"] .comp-table td{color:rgba(0,0,0,.6);border-bottom-color:rgba(0,0,0,.06)}
[data-theme="light"] .comp-table td.hl{background:rgba(10,158,122,.05);color:#111}
[data-theme="light"] .price-big{color:#111}
[data-theme="light"] .price-currency{color:rgba(0,0,0,.35)}
[data-theme="light"] .price-sub{color:rgba(0,0,0,.45)}
[data-theme="light"] .stats-bar{background:#ededea;border-top-color:rgba(0,0,0,.07);border-bottom-color:rgba(0,0,0,.07)}
[data-theme="light"] .stats-grid{background:rgba(0,0,0,.07)}
[data-theme="light"] .stat{background:#ededea}
[data-theme="light"] .stat-n{color:#111}
[data-theme="light"] .stat-l{color:rgba(0,0,0,.35)}
[data-theme="light"] .calc-result{background:rgba(10,158,122,.07);border-color:rgba(10,158,122,.2)}

/* smooth theme transition */
body,body *{transition-property:background-color,border-color,color;
  transition-duration:200ms;transition-timing-function:ease}

/* ── HYBRID LIGHT CONTENT SECTIONS ── */
.sec-hybrid-light{background:var(--hybrid-bg);color:var(--hybrid-text)}
.sec-hybrid-light .kicker{color:var(--teal)}
.sec-hybrid-light .sh.on-dark{color:var(--hybrid-text)}
.sec-hybrid-light .sh.on-dark em{color:var(--teal)}
.sec-hybrid-light .sp.on-dark{color:var(--hybrid-muted)}
.hybrid-divider{height:1px;background:rgba(255,255,255,.08);border:0;margin:0}

/* module cards on light */
.sec-hybrid-light .tease{background:var(--hybrid-card);border:1px solid var(--hybrid-border);
  box-shadow:0 1px 3px rgba(0,0,0,.04)}
.sec-hybrid-light .tease::before{background:radial-gradient(ellipse 300px 200px at 0% 0%,rgba(0,196,140,.05),transparent 60%)}
.sec-hybrid-light .tease h3{color:var(--hybrid-text)}
.sec-hybrid-light .tease p{color:var(--hybrid-muted)}
.sec-hybrid-light .mini-cockpit{background:rgba(0,0,0,.02);border-color:var(--hybrid-border)}
.sec-hybrid-light .mini-kpi-row{color:var(--hybrid-muted);border-bottom-color:var(--hybrid-border)}
.sec-hybrid-light .mini-ring-num{color:var(--hybrid-text)}
.sec-hybrid-light .verdict-caption{color:var(--hybrid-muted)}
.sec-hybrid-light .verdict-word{color:rgba(17,24,39,.06)}
.sec-hybrid-light .btn-g{color:var(--hybrid-muted)}
.sec-hybrid-light .btn-g:hover{color:var(--hybrid-text)}

/* pricing cards */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}}
.pricing-card{background:var(--hybrid-card);border:1px solid var(--hybrid-border);
  border-radius:12px;padding:32px;display:flex;flex-direction:column}
.pricing-tier{font-family:var(--f-m);font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--teal);margin-bottom:12px;font-weight:500}
.pricing-card h3{font-family:var(--f-d);font-weight:800;font-size:28px;
  letter-spacing:-.02em;color:var(--hybrid-text);margin-bottom:4px}
.pricing-price{font-family:var(--f-d);font-weight:800;font-size:42px;
  letter-spacing:-.03em;color:var(--hybrid-text);line-height:1;margin:16px 0 4px}
.pricing-price.contact{font-size:28px}
.pricing-annual{font-size:14px;color:var(--hybrid-muted);margin-bottom:20px}
.pricing-band{font-size:14px;color:var(--hybrid-muted);line-height:1.5;margin-bottom:8px}
.pricing-note{margin-top:40px;padding-top:24px;border-top:1px solid var(--hybrid-border);
  font-size:14px;color:var(--hybrid-muted);line-height:1.7;text-align:center}
.pricing-note strong{color:var(--hybrid-text);font-weight:600}
.pricing-trial{text-align:center;margin-top:24px;font-family:var(--f-m);
  font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}

/* hero readiness gauge */
@property --gauge-pct{syntax:'<percentage>';inherits:false;initial-value:0%}
.hero-gauge-wrap{width:280px;height:280px;margin:0 auto 36px;position:relative}
.hero-gauge-card{width:280px;height:280px;background:#15171A;border-radius:12px;
  display:grid;place-items:center;position:relative}
.hero-gauge{--gauge-pct:0%;position:relative;width:200px;height:200px;border-radius:50%;
  background:conic-gradient(var(--teal) var(--gauge-pct),rgba(255,255,255,.08) 0);
  display:grid;place-items:center}
.hero-gauge::before{content:'';position:absolute;inset:14px;border-radius:50%;background:#15171A}
.hero-gauge-inner{position:relative;z-index:1;text-align:center}
.hero-gauge-pct{font-family:var(--f-d);font-weight:800;font-size:32px;color:#fff;line-height:1}
.hero-gauge-label{font-family:var(--f-m);font-size:11px;letter-spacing:.28em;
  text-transform:uppercase;color:var(--teal);margin-top:8px;opacity:0;
  transition:opacity .4s ease-out}
.hero-gauge-wrap.animated .hero-gauge{animation:gauge-fill 1.2s ease-out forwards}
.hero-gauge-wrap.animated .hero-gauge-label{animation:gauge-label-in 1.2s ease-out forwards}
@keyframes gauge-fill{to{--gauge-pct:92%}}
@keyframes gauge-label-in{0%,75%{opacity:0}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){
  .hero-gauge-wrap.animated .hero-gauge{animation:none;--gauge-pct:92%}
  .hero-gauge-wrap.animated .hero-gauge-label{animation:none;opacity:1}
}

/* compliance matrix animation */
.compliance-matrix{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:16px 0}
.cm-cell{aspect-ratio:1;border-radius:3px;opacity:0;transform:scale(.8);
  background:rgba(0,0,0,.06);transition:opacity .35s ease-out,transform .35s ease-out,background .35s}
.cm-cell.ok{background:#00C48C}.cm-cell.warn{background:#F59E0B}.cm-cell.bad{background:#EF4444}
.compliance-matrix.animated .cm-cell{opacity:1;transform:scale(1)}
@media(prefers-reduced-motion:reduce){
  .compliance-matrix .cm-cell{opacity:1;transform:scale(1)}
}
html:not(.js) .hero-gauge-wrap{--gauge-pct:92%}
html:not(.js) .hero-gauge-pct::after{content:none}
html:not(.js) .hero-gauge-label{opacity:1}
html:not(.js) .cm-cell{opacity:1;transform:scale(1)}
html:not(.js) #skillDebtAmount::before{content:'12 400 kr'}
html:not(.js) #skillDebtAmount{font-size:0}
html:not(.js) .skill-debt-demo .sd-badge{opacity:1}

/* skill debt counter */
.skill-debt-demo{margin:16px 0;padding:14px;background:rgba(0,0,0,.02);
  border:1px solid var(--hybrid-border);border-radius:8px}
.sd-row{display:flex;justify-content:space-between;align-items:center;
  font-size:12px;color:var(--hybrid-muted);padding:8px 0;border-bottom:1px solid var(--hybrid-border)}
.sd-row:last-child{border-bottom:0}
.sd-amount{font-family:var(--f-d);font-weight:800;font-size:28px;color:var(--hybrid-text);
  letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.sd-badge{font-family:var(--f-m);font-size:9px;letter-spacing:.1em;text-transform:uppercase;
  background:#EF4444;color:#fff;border-radius:4px;padding:2px 8px;opacity:0;
  transition:opacity .3s ease-out}
.skill-debt-demo.animated .sd-badge{opacity:1}
@media(prefers-reduced-motion:reduce){.skill-debt-demo .sd-badge{opacity:1}}

.teasers-6{grid-template-columns:repeat(3,1fr)}
@media(max-width:1100px){.teasers-6{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.teasers-6{grid-template-columns:1fr}}

/* platform hallbarhet */
.hall-list{list-style:none;margin-top:28px}
.hall-list li{font-size:16px;line-height:1.65;color:var(--hybrid-muted);
  padding:12px 0 12px 24px;border-bottom:1px solid var(--hybrid-border);position:relative}
.hall-list li::before{content:'—';position:absolute;left:0;color:var(--teal)}
.hall-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
@media(max-width:800px){.hall-cards{grid-template-columns:1fr}}
.hall-card{background:var(--hybrid-card);border:1px solid var(--hybrid-border);
  border-radius:10px;padding:24px}
.hall-card h4{font-family:var(--f-d);font-weight:700;font-size:18px;color:var(--hybrid-text);margin-bottom:8px}
.hall-card p{font-size:14px;line-height:1.6;color:var(--hybrid-muted)}
.hall-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
@media(max-width:800px){.hall-steps{grid-template-columns:1fr}}
.hall-step-num{font-family:var(--f-m);font-size:10px;letter-spacing:.2em;color:var(--teal);margin-bottom:12px}
.hall-step h4{font-family:var(--f-d);font-weight:700;font-size:20px;color:var(--hybrid-text);margin-bottom:8px}
.hall-step p{font-size:14px;line-height:1.65;color:var(--hybrid-muted)}
.hall-callout{text-align:center;padding:48px;background:var(--hybrid-card);
  border:1px solid var(--hybrid-border);border-radius:12px;margin-top:48px}

.footer-full {
  border-top: 1px solid rgba(255,255,255,0.07);
  padding: 64px 0 0;
  background: var(--dark1, #0a0b0f);
}
.footer-inner {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 48px;
  padding-bottom: 48px;
}
@media(max-width:768px) {
  .footer-inner { grid-template-columns: 1fr; gap: 40px; }
}
.footer-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}
.footer-brand-name {
  font-family: var(--f-d);
  font-weight: 800;
  font-size: 18px;
  color: #fff;
  letter-spacing: -.03em;
}
.footer-brand-name em { font-style: italic; color: var(--teal); }
.footer-tagline {
  font-size: 13px;
  line-height: 1.65;
  color: rgba(255,255,255,0.35);
  margin-bottom: 24px;
}
.footer-legal {
  font-size: 11px;
  line-height: 1.8;
  color: rgba(255,255,255,0.2);
  font-family: var(--f-m, monospace);
}
.footer-col-title {
  font-family: var(--f-m);
  font-size: 9px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.25);
  margin-bottom: 16px;
  font-weight: 500;
}
.footer-col a {
  display: block;
  font-size: 13px;
  color: rgba(255,255,255,0.45);
  text-decoration: none;
  margin-bottom: 10px;
  transition: color .2s;
}
.footer-col a:hover { color: var(--teal); }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.06);
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  color: rgba(255,255,255,0.2);
  font-family: var(--f-m);
}
@media(max-width:600px) {
  .footer-bottom { flex-direction: column; gap: 8px; text-align: center; }
}
.footer-made { color: rgba(0,196,140,0.4); }

/* Safety: ensure CTA buttons are always interactive */
.cta-sec a,
.btn-row a,
.btn-p,
.btn-g {
  pointer-events: auto !important;
}

/* ── Avtal spotlight (index) ── */
.avtal-spotlight {
  padding: 96px 0;
  background: var(--dark1, #0a0b0f);
  border-top: 1px solid rgba(255,255,255,0.06);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.avtal-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}
@media(max-width: 900px) {
  .avtal-split { grid-template-columns: 1fr; gap: 40px; }
}
@media(max-width: 768px) {
  .avtal-spotlight { padding: 64px 0; }
  .avtal-h2 { font-size: 24px; }
  .avtal-row-right { flex-direction: column; align-items: flex-end; gap: 4px; }
}
.avtal-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--teal, #00c48c);
  margin-bottom: 16px;
}
.avtal-eyebrow-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--teal, #00c48c);
  animation: avtal-pulse 2s infinite;
}
@keyframes avtal-pulse { 0%,100%{opacity:1} 50%{opacity:.35} }
.avtal-h2 {
  font-family: var(--f-d);
  font-size: clamp(24px, 3.5vw, 36px);
  font-weight: 800;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -.03em;
  margin-bottom: 16px;
}
.avtal-sub {
  font-size: 15px;
  line-height: 1.65;
  color: rgba(255,255,255,0.5);
  margin-bottom: 24px;
  max-width: 440px;
}
.avtal-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
}
.avtal-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,0.1);
  font-size: 11px;
  color: rgba(255,255,255,0.55);
  background: rgba(255,255,255,0.04);
}
.avtal-pill-dot {
  width: 6px; height: 6px; border-radius: 50%;
}
.dot-green { background: #00c48c; }
.dot-blue { background: #378ADD; }
.dot-amber { background: #EF9F27; }
.dot-teal { background: #5DCAA5; }
.avtal-feats {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 32px;
}
.avtal-feat {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255,255,255,0.6);
}
.avtal-feat svg {
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--teal, #00c48c);
}
.avtal-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--teal, #00c48c);
  color: #0a0b0f;
  font-size: 13px;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  transition: opacity .2s;
}
.avtal-cta:hover { opacity: .85; }
.avtal-mock-wrap {
  position: relative;
}
.avtal-mock {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  overflow: hidden;
}
.avtal-mock-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  background: rgba(255,255,255,0.04);
  border-bottom: 1px solid rgba(255,255,255,0.07);
}
.avtal-mock-title {
  font-size: 11px;
  font-weight: 500;
  color: rgba(255,255,255,0.7);
}
.avtal-mock-live {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  color: var(--teal, #00c48c);
}
.avtal-live-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--teal, #00c48c);
  animation: avtal-pulse 2s infinite;
}
.avtal-mock-body { padding: 14px; }
.avtal-risk-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 14px;
}
.avtal-risk-count {
  font-size: 12px;
  font-weight: 500;
  color: rgba(255,255,255,0.8);
}
.avtal-risk-sub {
  font-size: 10px;
  color: rgba(255,255,255,0.35);
  margin-top: 2px;
}
.avtal-exposure { text-align: right; }
.avtal-exposure-n {
  font-size: 16px;
  font-weight: 600;
  color: #E24B4A;
  font-variant-numeric: tabular-nums;
}
.avtal-exposure-l {
  font-size: 9px;
  color: rgba(255,255,255,0.3);
  margin-top: 2px;
  max-width: 140px;
  line-height: 1.4;
}
.avtal-rows { display: flex; flex-direction: column; gap: 0; margin-bottom: 14px; }
.avtal-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.avtal-row:last-child { border-bottom: none; }
.avtal-row-crit { background: rgba(226,75,74,0.04); padding-left: 6px; padding-right: 6px; border-radius: 6px; margin: 0 -6px; }
.avtal-row-name {
  font-size: 12px;
  font-weight: 500;
  color: rgba(255,255,255,0.85);
}
.avtal-row-type {
  font-size: 10px;
  color: rgba(255,255,255,0.3);
  margin-top: 2px;
}
.avtal-row-right {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.avtal-days {
  font-size: 11px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.avtal-days-red { color: #E24B4A; }
.avtal-days-amber { color: #EF9F27; }
.avtal-days-green { color: #00c48c; }
.avtal-tag {
  font-size: 10px;
  font-weight: 500;
  padding: 2px 8px;
  border-radius: 20px;
}
.avtal-tag-red { background: rgba(226,75,74,0.15); color: #E24B4A; }
.avtal-tag-amber { background: rgba(239,159,39,0.15); color: #EF9F27; }
.avtal-tag-green { background: rgba(0,196,140,0.12); color: #00c48c; }
.avtal-station-preview {
  border-top: 1px solid rgba(255,255,255,0.07);
  padding-top: 12px;
}
.avtal-station-label {
  font-size: 9px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.25);
  margin-bottom: 8px;
}
.avtal-stations { display: flex; flex-direction: column; gap: 6px; }
.avtal-station {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  color: rgba(255,255,255,0.55);
}
.avtal-sdot {
  width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0;
}
.avtal-sdot-red { background: #E24B4A; }
.avtal-sdot-amber { background: #EF9F27; }
.avtal-srev {
  margin-left: auto;
  font-size: 10px;
  color: rgba(255,255,255,0.3);
  font-variant-numeric: tabular-nums;
}
