/* ============================================================
   Yurek Global — VARIANT B: dark intelligence-grade aesthetic
   ============================================================ */
:root {
  --bg: #070c0b;
  --panel: #0c1412;
  --panel2: #101a17;
  --line: rgba(143, 176, 163, 0.16);
  --line-strong: rgba(143, 176, 163, 0.32);
  --txt: #e9f0ec;
  --muted: #8fa39c;
  --sig: #35d98a;        /* signal green */
  --sig-dim: rgba(53, 217, 138, 0.14);
  --flag: #ff5d4d;
  --flag-dim: rgba(255, 93, 77, 0.12);
  --maxw: 1160px;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  background: var(--bg);
  color: var(--txt);
  font-family: "Public Sans", -apple-system, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 28px; }
h1, h2, h3 { font-family: "Archivo", sans-serif; font-weight: 800; letter-spacing: -0.02em; line-height: 1.04; }
a { color: inherit; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--sig); outline-offset: 3px; }
.mono { font-family: "IBM Plex Mono", monospace; }
::selection { background: var(--sig); color: #04140c; }

/* ---------- nav ---------- */
header.site {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  transition: background 0.3s ease, border-color 0.3s ease;
  border-bottom: 1px solid transparent;
}
header.site.solid { background: rgba(7,12,11,0.88); backdrop-filter: blur(10px); border-color: var(--line); }
.nav { display: flex; align-items: center; justify-content: space-between; max-width: var(--maxw); margin: 0 auto; padding: 20px 28px; }
.brand .dot { color: var(--sig); }
.nav-links { display: flex; gap: 28px; align-items: center; list-style: none; }
.nav-links a { text-decoration: none; font-size: 14px; color: var(--muted); letter-spacing: 0.02em; }
.nav-links a:hover { color: var(--txt); }
.btn {
  display: inline-block; text-decoration: none;
  font-family: "Archivo", sans-serif; font-weight: 700; font-size: 15px;
  padding: 13px 26px; border-radius: 3px;
  background: var(--sig); color: #04140c; border: 1px solid var(--sig);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.btn:hover { box-shadow: 0 0 28px rgba(53,217,138,0.35); transform: translateY(-1px); }
.btn.ghost { background: transparent; color: var(--txt); border-color: var(--line-strong); }
.btn.ghost:hover { border-color: var(--sig); color: var(--sig); box-shadow: none; }
.btn.small { padding: 9px 18px; font-size: 13.5px; }
.nav-links a.btn { color: #04140c; }
.nav-links a.btn:hover { color: #04140c; }

/* ---------- hero ---------- */
.hero { position: relative; min-height: 100svh; display: flex; align-items: center; padding: 140px 0 90px; }
#net { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; opacity: 0.6; }
.hero::before { /* radial vignette */
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(1100px 600px at 30% 35%, rgba(53,217,138,0.07), transparent 60%),
              radial-gradient(900px 500px at 85% 80%, rgba(53,217,138,0.05), transparent 60%);
}
.hero .wrap { position: relative; z-index: 2; width: 100%; }
.hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 64px; align-items: center; }
.kicker {
  font-family: "IBM Plex Mono", monospace; font-size: 12.5px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--sig); margin-bottom: 26px;
  display: flex; align-items: center; gap: 12px;
}
.kicker::before { content: ""; width: 34px; height: 1px; background: var(--sig); }
.hero h1 { font-size: clamp(42px, 5.6vw, 72px); margin-bottom: 26px; }
.hero h1 .ghosted { color: var(--muted); }
.hero p.lead { font-size: 19px; color: var(--muted); max-width: 46ch; margin-bottom: 38px; }
.hero p.lead b { color: var(--txt); font-weight: 600; }
.hero-ctas { display: flex; gap: 16px; flex-wrap: wrap; }

/* ---------- terminal ---------- */
.term {
  background: linear-gradient(180deg, var(--panel) 0%, #0a100e 100%);
  border: 1px solid var(--line); border-radius: 6px;
  font-family: "IBM Plex Mono", monospace; font-size: 13.5px;
  box-shadow: 0 40px 80px -40px rgba(0,0,0,0.8), 0 0 60px rgba(53,217,138,0.05);
  position: relative;
}
.term::before, .term::after,
.hud::before, .hud::after { /* HUD corner brackets */
  content: ""; position: absolute; width: 14px; height: 14px; border-color: var(--sig); border-style: solid;
}
.term::before, .hud::before { top: -1px; left: -1px; border-width: 2px 0 0 2px; }
.term::after, .hud::after { bottom: -1px; right: -1px; border-width: 0 2px 2px 0; }
.term-head {
  display: flex; justify-content: space-between; padding: 12px 18px;
  border-bottom: 1px solid var(--line); color: var(--muted);
  font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
}
.term-head .live { color: var(--sig); }
.term-head .live::before { content: "●"; margin-right: 7px; animation: blink 1.6s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0.25; } }
.term-body { padding: 20px 20px 24px; min-height: 258px; }
.tl { display: flex; gap: 12px; padding: 5px 0; opacity: 0; }
.tl.show { opacity: 1; }
.tl .st { margin-left: auto; font-weight: 600; letter-spacing: 0.08em; font-size: 11.5px; padding: 2px 8px; border-radius: 2px; }
.st.pass { color: var(--sig); background: var(--sig-dim); }
.st.gap { color: var(--flag); background: var(--flag-dim); animation: gpulse 2.2s ease-in-out infinite; }
@keyframes gpulse { 50% { box-shadow: 0 0 0 5px rgba(255,93,77,0.09); } }
.tl.verdict { color: var(--flag); border-top: 1px dashed var(--line); margin-top: 10px; padding-top: 14px; }
.tl.close { color: var(--sig); }
.caret { display: inline-block; width: 8px; height: 15px; background: var(--sig); vertical-align: -2px; animation: blink 1s steps(1) infinite; }

/* ---------- ticker ---------- */
.ticker { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); overflow: hidden; padding: 16px 0; background: var(--panel); }
.ticker-track { display: flex; gap: 56px; white-space: nowrap; font-family: "IBM Plex Mono", monospace; font-size: 12.5px; letter-spacing: 0.2em; color: var(--muted); animation: tick 36s linear infinite; width: max-content; }
.ticker-track span::before { content: "//"; color: var(--sig); margin-right: 14px; }
@keyframes tick { to { transform: translateX(-50%); } }

/* ---------- sections ---------- */
section { padding: 110px 0; position: relative; }
.chapter {
  font-family: "IBM Plex Mono", monospace; font-size: 12.5px; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--sig); margin-bottom: 22px;
}
.chapter b { color: var(--muted); font-weight: 400; }
section h2 { font-size: clamp(32px, 4.4vw, 52px); margin-bottom: 22px; max-width: 22ch; }
section p.intro { color: var(--muted); font-size: 18.5px; max-width: 64ch; }
section p.intro b, section p.intro strong { color: var(--txt); }

/* reveal-on-scroll */
html.js .rv { opacity: 0; transform: translateY(26px); transition: opacity 0.7s ease, transform 0.7s ease; }
html.js .rv.in { opacity: 1; transform: none; }

/* ---------- stats ---------- */
.stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); margin-top: 56px; }
.stat { background: var(--panel); padding: 30px 26px; }
.stat .n { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(30px, 3.4vw, 44px); color: var(--sig); }
.stat .l { font-family: "IBM Plex Mono", monospace; font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); margin-top: 8px; }

/* ---------- offer cards ---------- */
.cards { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 54px; }
.hud { position: relative; background: var(--panel); border: 1px solid var(--line); padding: 38px 34px; transition: border-color 0.25s ease, transform 0.25s ease; }
.hud:hover { border-color: var(--line-strong); transform: translateY(-4px); }
.hud h3 { font-size: 23px; margin-bottom: 6px; }
.price { font-family: "IBM Plex Mono", monospace; color: var(--sig); font-size: 14px; letter-spacing: 0.06em; margin-bottom: 24px; }
.hud ul { list-style: none; margin-bottom: 26px; }
.hud li { padding: 11px 0 11px 30px; position: relative; color: var(--muted); border-bottom: 1px solid var(--line); font-size: 16px; }
.hud li:last-child { border-bottom: 0; }
.hud li::before { content: "▸"; position: absolute; left: 4px; color: var(--sig); }
.gnote { border: 1px solid var(--line); border-left: 3px solid var(--sig); padding: 14px 16px; font-size: 14.5px; color: var(--muted); }
.gnote b { color: var(--sig); }

.advisory { margin-top: 40px; border: 1px solid var(--line); background: linear-gradient(120deg, var(--panel) 0%, var(--panel2) 100%); padding: 40px 36px; display: grid; grid-template-columns: 1fr auto; gap: 34px; align-items: center; }
.advisory p { color: var(--muted); max-width: 66ch; }

/* ---------- who ---------- */
.who { border-top: 1px solid var(--line); }
.who .cols { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 60px; margin-top: 10px; }
.who p { color: var(--muted); margin-bottom: 20px; }
.who p b { color: var(--txt); }
.creds { list-style: none; }
.creds li {
  font-family: "IBM Plex Mono", monospace; font-size: 13px; color: var(--muted);
  padding: 14px 4px; border-bottom: 1px solid var(--line); display: flex; gap: 12px;
}
.creds li::before { content: "[+]"; color: var(--sig); }
.pull { border-left: 2px solid var(--sig); padding-left: 20px; font-size: 18px; font-weight: 600; color: var(--txt); margin-top: 28px; }

/* ---------- CTA band ---------- */
.ctaband { text-align: center; padding: 130px 0; background: radial-gradient(700px 380px at 50% 55%, rgba(53,217,138,0.09), transparent 70%); border-top: 1px solid var(--line); }
.ctaband h2 { margin: 0 auto 20px; }
.ctaband p { color: var(--muted); max-width: 56ch; margin: 0 auto 40px; }

footer { border-top: 1px solid var(--line); padding: 40px 0 54px; color: var(--muted); font-size: 14px; }
footer .frow { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 18px; align-items: center; }
footer a { color: var(--txt); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .rv { opacity: 1; transform: none; transition: none; }
  .ticker-track, .st.gap, .term-head .live::before, .caret { animation: none !important; }
  #net { display: none; }
  .tl { opacity: 1 !important; }
}
@media (max-width: 900px) {
  .hero { padding: 120px 0 70px; min-height: auto; }
  .hero-grid, .cards, .who .cols { grid-template-columns: 1fr; gap: 40px; }
  .advisory { grid-template-columns: 1fr; }
  .stats { grid-template-columns: 1fr; }
  .nav-links { gap: 16px; }
  .hide-m { display: none; }
  section { padding: 76px 0; }
}

/* ============ subpages (insights / results / self-check) ============ */
body.sub { padding-top: 78px; }
body.sub header.site { background: rgba(7,12,11,0.9); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.pagehead { padding: 58px 0 40px; }
.pagehead h1 { font-size: clamp(30px, 4.4vw, 46px); margin-bottom: 16px; }
.pagehead p { color: var(--muted); max-width: 64ch; }
.eyebrow {
  font-family: "IBM Plex Mono", monospace; font-size: 12.5px; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--sig); margin-bottom: 18px;
  display: flex; align-items: center; gap: 12px;
}
.eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--sig); }
.entry { border: 1px solid var(--line); background: var(--panel); padding: 30px 32px; margin-bottom: 20px; transition: border-color 0.2s ease, transform 0.2s ease; }
.entry:hover { border-color: var(--line-strong); transform: translateY(-2px); }
.entry h2 { font-size: 22px; margin-bottom: 10px; }
.entry h2 a { text-decoration: none; }
.entry h2 a:hover { color: var(--sig); }
.entry p { color: var(--muted); font-size: 16px; }
.entry .mono { color: var(--txt); }
.empty { border: 1px dashed var(--line); padding: 44px 30px; text-align: center; color: var(--muted); }
.empty a { color: var(--sig); }
.article { padding: 10px 0 80px; }
.article .body { max-width: 70ch; }
.article .body h2 { font-size: 24px; margin: 40px 0 14px; }
.article .body p { color: var(--muted); margin-bottom: 16px; }
.article .body p strong, .article .body b { color: var(--txt); }
.article .body a { color: var(--sig); }
.qblock { background: var(--panel); border: 1px solid var(--line); border-left: 3px solid var(--flag); padding: 16px 18px; font-family: "IBM Plex Mono", monospace; font-size: 14px; margin: 22px 0 14px; color: var(--txt); }
.step { display: grid; grid-template-columns: 92px 1fr; gap: 18px; padding: 18px 0; border-top: 1px solid var(--line); }
.step .d { font-family: "IBM Plex Mono", monospace; font-size: 13px; color: var(--sig); padding-top: 3px; }
.step p { color: var(--muted); font-size: 16px; }
.step b { color: var(--txt); }
.honesty { margin-top: 30px; border-left: 3px solid var(--sig); padding: 6px 0 6px 18px; color: var(--muted); font-size: 16.5px; }
.honesty b, .honesty strong { color: var(--txt); }
/* self-check */
.sc-dim { background: var(--panel); border: 1px solid var(--line); padding: 22px 26px; margin-bottom: 16px; }
.sc-dim h3 { font-size: 17px; margin-bottom: 10px; display: flex; gap: 10px; align-items: baseline; color: var(--txt); }
.sc-dim h3 .mono { color: var(--sig); font-size: 12px; }
.sc-q { display: flex; gap: 14px; align-items: flex-start; padding: 11px 0; border-top: 1px dashed var(--line); font-size: 15.5px; color: var(--muted); }
.sc-q label { display: flex; gap: 10px; align-items: center; cursor: pointer; }
.sc-q input { accent-color: var(--sig); width: 16px; height: 16px; }
.sc-note { color: var(--muted); font-size: 13.5px; margin: 28px 0 10px; }
.sc-note a { color: var(--sig); }
#sc { margin-bottom: 48px; }

/* footer affiliation row */
.affrow { border-top: 1px solid var(--line); margin-top: 26px; padding-top: 20px; font-family: "IBM Plex Mono", monospace; font-size: 12px; letter-spacing: 0.08em; color: var(--muted); text-transform: uppercase; }

/* ============ particle wave (pure HTML+CSS, no JS/SVG) ============ */
.pwave { position: absolute; left: -6%; right: -6%; bottom: -70px; height: 44vh; min-height: 300px; perspective: 640px; pointer-events: none; z-index: 1; overflow: visible; }
.pgrid { position: absolute; inset: 0; transform: rotateX(58deg) translateZ(-40px); transform-style: preserve-3d; display: grid; grid-template-rows: repeat(12, 1fr); }
.prow { display: flex; justify-content: space-between; align-items: center; }
.prow i { width: 3px; height: 3px; border-radius: 50%; background: var(--c, var(--sig)); box-shadow: 0 0 7px var(--c, var(--sig)); opacity: 0.9; animation: bob 4.2s ease-in-out infinite; animation-delay: var(--d, 0s); will-change: transform; }
@keyframes bob { 0%, 100% { transform: translateY(10px); opacity: 0.35; } 50% { transform: translateY(-30px); opacity: 1; } }
.hero .wrap { z-index: 3; }
@media (prefers-reduced-motion: reduce) { .prow i { animation: none; opacity: 0.5; } }
@media (max-width: 900px) { .pwave { height: 30vh; min-height: 200px; bottom: -50px; } }

/* ============================================================
   ADAPTIVE LIGHT THEME — activates automatically from the
   visitor's browser/OS setting. Markup and text identical.
   ============================================================ */
:root { color-scheme: dark light; }

@media (prefers-color-scheme: light) {
  :root {
    --bg: #fafaf7;
    --panel: #ffffff;
    --panel2: #f1f2ec;
    --line: rgba(19, 28, 26, 0.14);
    --line-strong: rgba(19, 28, 26, 0.30);
    --txt: #131c1a;
    --muted: #5c6b66;
    --sig: #1e7a4c;                 /* deeper green for light-bg contrast */
    --sig-dim: rgba(30, 122, 76, 0.12);
    --flag: #c63a2f;
    --flag-dim: rgba(198, 58, 47, 0.10);
  }
  ::selection { background: var(--sig); color: #fff; }
  header.site.solid, body.sub header.site { background: rgba(250,250,247,0.9); }
  .hero::before {
    background: radial-gradient(1100px 600px at 30% 35%, rgba(30,122,76,0.06), transparent 60%),
                radial-gradient(900px 500px at 85% 80%, rgba(30,122,76,0.04), transparent 60%);
  }
  .btn { color: #fff; }
  .btn:hover { box-shadow: 0 0 24px rgba(30,122,76,0.28); }
  .nav-links a.btn, .nav-links a.btn:hover { color: #fff; }
  .term {
    background: #fff;
    box-shadow: 0 28px 56px -34px rgba(19,28,26,0.35);
  }
  .hud:hover { box-shadow: 0 18px 36px -26px rgba(19,28,26,0.28); }
  .advisory { background: linear-gradient(120deg, var(--panel2) 0%, #fff 100%); }
  .ctaband { background: radial-gradient(700px 380px at 50% 55%, rgba(30,122,76,0.08), transparent 70%); }
  .prow i { opacity: 0.55; box-shadow: 0 0 4px var(--c, var(--sig)); }
  @keyframes bob { 0%, 100% { transform: translateY(10px); opacity: 0.25; } 50% { transform: translateY(-30px); opacity: 0.7; } }
}

/* ============ brand: logo + wordmark, sized to fill the nav ============ */
.brand { display: inline-flex; align-items: center; gap: 14px; text-decoration: none; }
.brand .brandmark { height: 40px; width: auto; flex-shrink: 0; }
.brand .brandtext {
  font-family: "Montserrat", "Archivo", sans-serif;
  font-weight: 700;
  font-size: 26px;
  letter-spacing: 0.02em;
  color: var(--txt);
}
@media (max-width: 560px) {
  .brand .brandmark { height: 32px; }
  .brand .brandtext { font-size: 21px; }
}

/* ============ presence badge (India · UAE · EU · USA) ============ */
.presence { margin-top: 32px; }
.presence .plabel {
  font-family: "IBM Plex Mono", monospace; font-size: 11.5px; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--muted); margin-bottom: 14px;
}
.presence-row { display: flex; flex-wrap: wrap; gap: 12px; }
.presence-pill {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--line); border-radius: 999px;
  padding: 8px 18px; font-family: "IBM Plex Mono", monospace; font-size: 13px;
  letter-spacing: 0.05em; color: var(--txt); background: var(--panel);
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.presence-pill:hover { border-color: var(--sig); transform: translateY(-2px); }
.presence-pill .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--sig); box-shadow: 0 0 6px var(--sig); flex-shrink: 0; }
@media (max-width: 560px) { .presence-row { gap: 9px; } .presence-pill { padding: 7px 14px; font-size: 12px; } }

/* ============ privacy policy page ============ */
.legal { padding: 24px 0 80px; max-width: 74ch; }
.legal h1 { font-size: clamp(28px, 4vw, 40px); margin-bottom: 8px; }
.legal .updated { color: var(--muted); font-size: 13.5px; font-family: "IBM Plex Mono", monospace; margin-bottom: 40px; }
.legal h2 { font-size: 19px; margin: 34px 0 12px; }
.legal p, .legal li { color: var(--muted); font-size: 16px; margin-bottom: 12px; }
.legal ul { padding-left: 20px; }
.legal a { color: var(--sig); }

/* ============ current-page nav indicator (underline only — no text-color change) ============ */
.nav-links a[aria-current="page"] { position: relative; }
.nav-links a[aria-current="page"]::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -8px;
  height: 3px;
  background: #f2283b; /* logo red — scoped to the nav only, rest of the site stays green */
  border-radius: 1px;
}

/* ============ self-check result bar (real classes: .sc-bar / .verdict — the previous CSS
   targeted the wrong class names and never actually applied) ============ */
.sc-bar {
  position: sticky; bottom: 16px; margin-top: 26px;
  background: var(--panel2); border: 2px solid var(--line-strong); border-radius: 8px;
  padding: 22px 26px; display: flex; gap: 18px; align-items: center; justify-content: space-between; flex-wrap: wrap;
  box-shadow: 0 18px 44px -18px rgba(0,0,0,0.7);
  transition: background-color 0.25s ease, border-color 0.25s ease;
}
.sc-bar .verdict {
  font-family: "Archivo", sans-serif; font-weight: 800; font-size: 20px;
  color: var(--txt); transition: color 0.2s ease; margin-bottom: 4px;
}
.sc-bar #score { color: var(--muted); }

.verdict.ok { color: var(--sig); }
.verdict.warn { color: #f2c14e; }
.verdict.bad { color: #f2283b; }

.sc-bar:has(.verdict.ok) { border-color: var(--sig); background: #163929; }
.sc-bar:has(.verdict.warn) { border-color: #f2c14e; background: #343520; }
.sc-bar:has(.verdict.bad) { border-color: #f2283b; background: #341c1d; }

@media (prefers-color-scheme: light) {
  .sc-bar:has(.verdict.ok) { background: #d3e1d6; }
  .sc-bar:has(.verdict.warn) { background: #f1ebd6; }
  .sc-bar:has(.verdict.bad) { background: #f1d6d3; }
}

@media (max-width: 560px) { .sc-bar .verdict { font-size: 18px; } }


