/* The Republic bright investor theme. Page-scoped overrides of the dark site.css,
   shared by the-republic.html (the pre-webinar landing page) and
   the-republic-recording.html (the post-webinar recording page), so the two stay
   visually identical siblings. Lifted verbatim out of the-republic.html on
   2026-08-14; before that it lived inline there. */
/* ===== The Republic · BRIGHT investor theme (page-scoped overrides of the dark site.css) ===== */
.rep-lite{
  --ink:#0C1636; --body:#454E68; --muted:#7C86A0; --line:#E3E8F2; --card:#FFFFFF;
  --blue:#1E3A8A; --blue-hi:#2E5BD8; --blue-deep:#122A63;
  --claret:#7E2A38; --claret-hi:#A94152;
  background:
    radial-gradient(115% 80% at 82% -8%, #E8EFFC 0%, transparent 55%),
    radial-gradient(90% 70% at -5% 108%, #F3ECF3 0%, transparent 58%),
    linear-gradient(180deg,#F8FAFE 0%, #EEF2FA 100%);
  color:var(--body);
}
.rep-lite::after{display:none}                 /* drop the dark grain overlay */
.rep-lite #bg{display:none}                     /* drop the WebGL navy ground */
.rep-lite ::selection{background:var(--blue-hi);color:#fff}

/* type + accents */
.rep-lite h1,.rep-lite .big{color:var(--ink)}
.rep-lite h1 .gw,.rep-lite .big .gw{color:var(--blue-hi)}
.rep-lite .lede{color:var(--body)}
.rep-lite .lede strong{color:var(--ink)}
.rep-lite .eyeb{color:var(--blue-hi)}
.rep-lite .mono-note,.rep-lite .repnote{color:var(--muted)}
.rep-lite .repnote strong{color:var(--body)}

/* nav: darkened so the white logo + links stay legible on the bright page */
.rep-lite .gnav{background:rgba(12,20,44,.9);border-color:rgba(255,255,255,.12);box-shadow:0 14px 40px rgba(12,22,54,.28)}
.rep-lite .gnav.scrolled{background:rgba(12,20,44,.95)}
.rep-lite .gnav .tix{background:linear-gradient(120deg,var(--blue-deep),var(--blue-hi));color:#fff}
.rep-lite .gnav .tix:hover{color:#fff;filter:brightness(1.08)}
.rep-lite .gnav a.active{color:var(--gold-hi)}
.rep-lite .gnav a:hover{color:var(--gold-hi)}
.rep-lite .side-brand{position:absolute}   /* over the dark hero band: no box, scrolls away */

/* blue CTA (the glow, in blue) — replaces the gold .btn-core on this page */
.rep-cta{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-width:230px;height:62px;padding:0 40px;border-radius:16px;border:0;cursor:pointer;text-decoration:none;
  font-family:var(--display);font-weight:400;font-size:11px;letter-spacing:.28em;text-indent:.28em;text-transform:uppercase;color:#fff;
  background:linear-gradient(120deg,var(--blue-deep),var(--blue) 52%,var(--blue-hi));
  box-shadow:0 16px 36px rgba(30,58,138,.4), inset 0 1px 0 rgba(255,255,255,.28);
  transition:transform .22s cubic-bezier(.34,1.4,.5,1), box-shadow .3s var(--ease)}
.rep-cta:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(46,91,216,.52), inset 0 1px 0 rgba(255,255,255,.34)}
.rep-cta:active{transform:translateY(1px) scale(.99)}
.rep-cta span{position:relative;z-index:1}
.rep-cta::before{content:"";position:absolute;inset:0;transform:translateX(-101%);background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.42) 50%,transparent 68%);transition:transform .9s var(--ease)}
.rep-cta:hover::before{transform:translateX(101%)}
/* secondary (light) button */
.rep-lite .btn-glass{color:var(--ink);background:rgba(255,255,255,.78);border:1px solid var(--line);box-shadow:0 6px 18px rgba(20,34,80,.07);-webkit-backdrop-filter:none;backdrop-filter:none}
.rep-lite .btn-glass:hover{border-color:var(--blue-hi);color:var(--blue-hi)}
.rep-lite .ctas:has(.rep-cta) .btn-glass{height:62px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;padding:0 34px}

/* countdown (light) */
.rep-lite .count .cell{background:var(--card);border:1px solid var(--line);box-shadow:0 12px 28px rgba(20,34,80,.07)}
.rep-lite .count b{color:var(--blue)}
.rep-lite .count small{color:var(--muted)}

/* cards / cover items / metrics / faq / timeline / pics -> light */
.rep-lite .card{background:var(--card);border:1px solid var(--line);box-shadow:0 18px 40px rgba(20,34,80,.08);color:var(--body)}
.rep-lite .card .tag{color:var(--blue-hi)}
.rep-lite .card h3{color:var(--ink)}
.rep-lite .card p{color:var(--body)}
.rep-lite .cover-item{background:var(--card);border:1px solid var(--line);box-shadow:0 14px 32px rgba(20,34,80,.07);-webkit-backdrop-filter:none;backdrop-filter:none;align-items:baseline;gap:18px;padding:24px 26px}
.rep-lite .cover-item .no{color:var(--blue-hi);font-size:16px;line-height:1.5}
.rep-lite .cover-item h3{color:var(--ink);margin-bottom:7px;font-weight:700}
.rep-lite .card h3,.rep-lite .tl h3{font-weight:700}
.rep-lite .cover-item p{color:var(--body)}
.rep-lite .metric{background:var(--card);border:1px solid var(--line);box-shadow:0 14px 32px rgba(20,34,80,.07)}
.rep-lite .metric::after{background:linear-gradient(90deg,transparent,rgba(46,91,216,.55),transparent)}
.rep-lite .metric b{color:var(--blue)}
.rep-lite .metric span{color:var(--muted)}
.rep-lite .faq details{background:var(--card);border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}
.rep-lite .faq summary{color:var(--ink)}
.rep-lite .faq summary::after{color:var(--blue-hi)}
.rep-lite .faq details p{color:var(--body)}
.rep-lite .tl{border-left-color:var(--line)}
.rep-lite .tl div::before{background:var(--blue-hi);box-shadow:0 0 0 4px rgba(46,91,216,.14)}
.rep-lite .tl h3{color:var(--ink)}
.rep-lite .tl p{color:var(--body)}
.rep-lite .pic img{border:1px solid var(--line);box-shadow:0 26px 60px rgba(20,34,80,.16)}
.rep-lite .pic figcaption{color:var(--muted)}
.rep-lite .panel{background:var(--card);border:1px solid var(--line);box-shadow:0 30px 66px rgba(20,34,80,.14);-webkit-backdrop-filter:none;backdrop-filter:none}
/* two columns: sit the intro with the heading, not floating at the top */
.rep-lite .txtsplit{align-items:center}
/* footer (light) */
.rep-lite .foot{border-top:1px solid var(--line)}
.rep-lite .foot .socials a{color:var(--muted)}
.rep-lite .foot .socials a:hover{color:var(--blue-hi)}
.rep-lite .foot .col{color:#5A6480}
.rep-lite .foot .tmline{color:#9AA3B8}

/* ---- page-specific pieces ---- */
/* full-bleed image hero (dark veil so the white logo needs no box); two columns */
.rep-hero{position:relative;width:100%;min-height:90svh;display:flex;align-items:center;overflow:hidden;padding:148px clamp(20px,5vw,60px) 74px}
.rep-hero .rep-bg{position:absolute;inset:0;z-index:0}
.rep-hero .rep-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 56%}
.rep-hero .rep-bg::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(6,11,28,.85),rgba(6,11,28,.5) 42%,rgba(6,11,28,.76)),
  linear-gradient(90deg,rgba(6,11,28,.86),rgba(6,11,28,.34) 60%,rgba(6,11,28,.52))}
.rep-hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%;display:grid;gap:clamp(26px,4vw,54px);grid-template-columns:1fr;align-items:center}
@media(min-width:900px){.rep-hero-inner{grid-template-columns:1.05fr .95fr}}
.rep-hero h1{text-align:left;max-width:15ch;font-size:clamp(28px,4vw,52px);letter-spacing:.02em;line-height:1.12;color:#F4F7FD}
.rep-hero h1 .gw{color:var(--gold-hi)}
.rep-hero .sub{max-width:52ch;margin-top:20px;color:#C4CCE0;font-size:16px}
.rep-hero .sub + .sub{margin-top:12px}
.rep-hero .sub strong{color:#FFFFFF;font-weight:600}
.rep-hero .ctas{justify-content:flex-start;margin-top:28px}
.rep-hero .count{justify-content:flex-start;margin-top:28px}
.rep-hero .count .cell{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.rep-hero .count b{color:#9CB6FF}
.rep-hero .count small{color:#93A0C0}
.rep-hero .btn-glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.26);color:#EAF0FA;box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.rep-hero .btn-glass:hover{border-color:#8AA6FF;color:#fff}
.rep-badge{display:inline-flex;align-items:center;gap:9px;margin-bottom:20px;padding:9px 16px;border-radius:999px;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  background:linear-gradient(100deg,rgba(169,65,82,.28),rgba(169,65,82,.1));border:1px solid rgba(169,65,82,.6);color:#EBA6B1}
.rep-badge .dot{width:7px;height:7px;border-radius:50%;background:#EBA6B1;box-shadow:0 0 0 3px rgba(169,65,82,.28)}
.rep-when{margin-top:22px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#D79AA6;line-height:1.9}
/* hero stat cards (right column, glass over the image) */
.rep-hero-side{display:grid;gap:12px}
.rep-stat{border-radius:16px;padding:20px 22px;background:rgba(12,20,44,.46);border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 20px 44px rgba(3,8,24,.38)}
.rep-stat.hot{background:linear-gradient(120deg,rgba(126,42,56,.55),rgba(126,42,56,.2));border-color:rgba(169,65,82,.72)}
.rep-stat .lab{font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:#A6B4D6}
.rep-stat.hot .lab{color:#EBB6BF}
.rep-stat.gold{border-color:rgba(217,179,108,.42)}
.rep-stat.gold .lab{color:#CBA96C}
.rep-stat.blue{border-color:rgba(138,166,255,.42)}
.rep-stat.blue .lab{color:#9FB0D4}
.rep-stat .val{font-family:var(--display);font-weight:700;letter-spacing:.03em;color:#fff;line-height:1.04;margin-top:7px;font-size:clamp(24px,2.6vw,34px)}
.rep-stat.hot .val{font-size:clamp(30px,3.4vw,44px);color:var(--gold-hi)}
.rep-stat.gold .val{color:var(--gold-hi)}
.rep-stat.blue .val{color:#8AA6FF}
.rep-stat .sub2{font-size:11.5px;color:#AEB8D2;margin-top:5px}
.rep-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rep-hero-note{margin-top:4px}
.rep-hero-note .sub{max-width:none;margin-top:0}
.rep-hero-note .sub + .sub{margin-top:12px}
/* horizontal photo gallery under the hero (touch / scroll-snap) */
.repgal-sec{padding:clamp(32px,4vh,54px) 0 clamp(24px,3vh,36px)}
.repgal-label{padding:0 clamp(20px,5vw,60px);margin-bottom:16px}
.repgal{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:6px clamp(20px,5vw,60px) 18px}
.repgal::-webkit-scrollbar{height:8px}
.repgal::-webkit-scrollbar-track{background:transparent}
.repgal::-webkit-scrollbar-thumb{background:rgba(46,91,216,.4);border-radius:8px}
.repgal figure{flex:0 0 auto;width:min(540px,84vw);scroll-snap-align:center;margin:0;border-radius:var(--r-card);overflow:hidden;border:1px solid var(--line);box-shadow:0 20px 44px rgba(20,34,80,.12);background:#fff}
.repgal img{width:100%;height:clamp(230px,30vw,350px);object-fit:cover;display:block}
.repgal figcaption{padding:11px 16px;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
/* mobile: stack the hero stat cards and fit the countdown so nothing overflows */
@media(max-width:600px){
  .rep-stat-row{grid-template-columns:1fr}
  .rep-hero{padding-top:130px}
  .rep-hero .count{gap:8px;flex-wrap:nowrap}
  .rep-hero .count .cell{flex:1 1 0;width:auto;min-width:0;padding:14px 3px 10px}
  .rep-hero .count b{font-size:22px}
  .rep-hero .count small{font-size:7.5px;letter-spacing:.14em}
}
/* stat band */
.statband{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
@media(min-width:720px){.statband{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1040px){.statband{grid-template-columns:repeat(6,1fr)}}
.statband .metric{padding:22px 12px}
.statband .metric b{font-size:clamp(20px,2vw,27px);white-space:nowrap}
.statband .metric span{font-size:9.5px;margin-top:8px}
.repnote{font-size:12.5px;margin-top:18px;line-height:1.6}
.leadfacts{display:flex;flex-wrap:wrap;gap:26px 40px;margin-top:26px}
.leadfacts div{min-width:118px}
.leadfacts b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(24px,2.6vw,32px);color:var(--blue);letter-spacing:.03em;line-height:1.1}
.leadfacts span{display:block;margin-top:6px;font-size:12.5px;color:var(--body)}
.founder{display:flex;align-items:center;gap:16px;margin-top:24px;padding:16px 20px;border-radius:var(--r-inner);background:var(--card);border:1px solid var(--line);box-shadow:0 12px 30px rgba(20,34,80,.06)}
.founder img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 26%;border:1px solid var(--line);background:#0C1636;flex:none}
.founder b{display:block;font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.founder span{display:block;margin-top:4px;font-size:12.5px;color:var(--muted)}
/* returns ladder */
.ladder{margin-top:30px;display:grid;gap:10px;max-width:780px}
.ladder .rung{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:16px 22px;border-radius:var(--r-inner);background:var(--card);border:1px solid var(--line)}
.ladder .rung.us{background:linear-gradient(100deg,rgba(46,91,216,.12),rgba(46,91,216,.03));border-color:var(--blue-hi);box-shadow:0 14px 30px rgba(30,58,138,.12)}
.ladder .rung .k{font-size:14.5px;color:var(--body)}
.ladder .rung.us .k{color:var(--ink);font-weight:600}
.ladder .rung .v{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.04em;color:var(--muted)}
.ladder .rung.us .v{color:var(--blue)}
/* register (Zoom) card */
.reg-when{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:18px 0 6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--claret-hi)}
.disc{margin-top:8px;font-size:11.5px;line-height:1.7;color:var(--muted)}
.disc strong{color:var(--body);font-weight:600}

/* Manrope ligates "(c)" into a copyright glyph, so "Rule 506(c)" renders as
   "Rule 506©". Only font-variant-ligatures:none suppresses it (no-contextual and
   no-discretionary both leave it in place). Applied to the whole page rather than
   to individual blocks, because "506(c)" turns up in body copy, in legal text and
   inside data tables, and one missed spot silently prints the wrong thing. */
.rep-lite{font-variant-ligatures:none}

/* ---- the CRM form on the bright pages ----
   site.css styles .ta-form for the dark ground (gold labels, glass inputs on
   navy). On the light investor pages it needs the opposite treatment, so this
   is the light counterpart. Submit is the blue .rep-cta rather than the gold
   .btn-core, so .ta-form__submit stays hidden the same way. */
.rep-lite .ta-form{max-width:none}
.rep-lite .ta-form__label{color:var(--blue-hi)}
.rep-lite .ta-form input,
.rep-lite .ta-form select,
.rep-lite .ta-form textarea{
  background:#fff;border:1px solid var(--line);color:var(--ink);
  -webkit-backdrop-filter:none;backdrop-filter:none;
  box-shadow:0 1px 2px rgba(20,34,80,.04)}
.rep-lite .ta-form input::placeholder,
.rep-lite .ta-form textarea::placeholder{color:#9AA3B8}
.rep-lite .ta-form input:focus,
.rep-lite .ta-form select:focus,
.rep-lite .ta-form textarea:focus{border-color:var(--blue-hi);box-shadow:0 0 0 3px rgba(46,91,216,.13)}
.rep-lite .ta-form__phone-country{color:var(--ink)}
.rep-lite .ta-form__phone-country option{background:#fff;color:var(--ink)}
.rep-lite .ta-form__check{color:var(--body)}
.rep-lite .ta-form__check input{accent-color:var(--blue-hi)}
.rep-lite .ta-form__helper{color:var(--muted)}
.rep-lite .ta-form__legal{color:var(--muted)}
.rep-lite .ta-form__legal a{color:var(--blue-hi);border-bottom-color:rgba(46,91,216,.35)}
.rep-lite .ta-form__legal a:hover{color:var(--blue)}
.rep-lite .ta-status{color:var(--blue)}
.rep-lite .form-note{color:var(--muted)}
.rep-lite .ta-form .rep-cta{align-self:flex-start;margin-top:10px}
