/* ===================================================================
   ForgeLaunchLabs — Unified Light Theme (2026-06)
   ONE design system for the whole site, based on the homepage:
   Plus Jakarta Sans, white/soft-gray surfaces, ink #111827,
   rust accent #c2410c. Loaded LAST in <head> so it wins the cascade
   over each page's legacy inline <style>. Copy is untouched.

   It re-skins the shared class vocabularies of all three legacy
   page families:
     A) .nav/.navin/.wrap pages   (pricing, results, industries…)
     B) styles.css pages          (contact, case studies, policies…)
     C) book/calculator pages     (.container/.kicker/.booking…)
   =================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

/* ---- Tokens: keep legacy variable NAMES so inline rules that
        consume them inherit the new light values automatically ---- */
:root{
  --bg:#ffffff;
  --paper:#ffffff;
  --panel:#ffffff;
  --panel2:#f4f4f4;
  --soft:#f4f4f4;
  --card:#ffffff;
  --card2:#f4f4f4;
  --ink:#111827;
  --text:#111827;
  --muted:#5b6675;
  --dim:#6b7280;
  --line:#d0d7de;
  --border:#d0d7de;
  --orange:#c2410c;
  --orange-dark:#9a3412;
  --accent:#c2410c;
  --accent-2:#9a3412;
  --gold:#c2410c;        /* legacy name → accent */
  --teal:#0f766e;        /* legacy name → deep teal, used sparingly */
  --blue:#1d4ed8;
  --navy:#111827;
  --green:#047857;
  --risk:#b91c1c;
  --shadow:0 1px 2px rgba(17,24,39,.06);
  --radius:12px;
  --max:1180px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --font:'Plus Jakarta Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
}

/* ---- Base ---- */
html{scroll-behavior:smooth;background:#ffffff}
body{
  font-family:var(--font);
  background:#ffffff;
  color:var(--ink);
  letter-spacing:-.008em;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::before{content:none} /* kill legacy grain/orb overlays */
.hero-orb,.hero-orb-1,.hero-orb-2{display:none}
a{color:inherit}
a:hover{color:var(--orange)}

/* ---- Typography ---- */
h1,h2,h3,.h1,.h2{
  font-family:var(--font);
  color:var(--ink);
  font-weight:800;
}
.h1,h1{
  font-size:clamp(36px,5vw,58px);
  line-height:1.06;
  letter-spacing:-.03em;
  max-width:none;
}
.h2,h2{
  font-size:clamp(26px,3.2vw,40px);
  line-height:1.12;
  letter-spacing:-.025em;
}
h3,.card h3{font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.card h3{font-size:19px}
.lead{
  font-size:clamp(16px,1.4vw,19px);
  line-height:1.6;
  color:#374151;
  font-weight:500;
}
.muted,.card p,.note,.mini,.source,.breadcrumbs,.price-sub,.pricing-intro,
.booking p,.side p,.side li,.trust p,.steps,.foot{color:var(--muted)}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs a:hover{color:var(--orange)}

/* Eyebrow / kicker — small caps label with rust tick */
.eyebrow,.kicker{
  display:inline-flex;align-items:center;gap:10px;
  color:var(--orange);
  font-weight:800;font-size:12px;
  text-transform:uppercase;letter-spacing:.14em;
}
.eyebrow::before,.kicker::before{
  content:"";width:20px;height:2px;background:var(--orange);display:inline-block;
}

/* ---- Legacy headers (replaced by .site-shell markup, kept safe) ---- */
.nav,.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  box-shadow:none;
}
.brand,.brand a,.brand span{color:var(--ink)}
.brand small{color:var(--muted)}
.links,.nav-links{color:var(--muted)}
.links a:not(.btn):hover,.nav-links a:hover{color:var(--ink)}
.hamburger span{background:var(--ink)}
@media(max-width:1023px){
  .links{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}
  .links a{color:var(--ink);border-bottom:1px solid var(--line)}
}

/* ---- Buttons: accessible, consistent ---- */
.btn,.button,a.btn,a.button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font);
  font-weight:700;letter-spacing:0;
  border-radius:10px;
  padding:12px 20px;
  background:var(--orange);
  color:#ffffff;
  border:1px solid var(--orange-dark);
  box-shadow:none;
  text-decoration:none;
  transition:background .18s var(--ease),transform .18s var(--ease);
}
.btn:hover,.button:hover{background:var(--orange-dark);color:#ffffff;transform:translateY(-1px)}
.btn:active,.button:active{transform:translateY(0)}
.btn.secondary,.button.secondary,.btn-ghost{
  background:#ffffff;
  color:var(--ink);
  border:1px solid var(--line);
  box-shadow:none;
}
.btn.secondary:hover,.button.secondary:hover,.btn-ghost:hover{
  background:var(--soft);color:var(--ink);border-color:#9aa4b2;
}
.industry-card .btn.secondary{
  background:var(--orange);color:#fff;border-color:var(--orange-dark);
}
.industry-card .btn.secondary:hover{background:var(--orange-dark)}

/* ---- Chips / badges ---- */
.chip,.badge,.pill{
  background:var(--soft);
  border:1px solid var(--line);
  border-radius:8px;
  padding:7px 12px;
  color:#374151;font-weight:600;font-size:12.5px;
  box-shadow:none;
}

/* ---- Cards & surfaces ---- */
.card,.panel,.step,.metric,.calc-out,.cta,.price,.stat,
.onboarding-form,.mini-cta,.builder-panel,.featured,.trust .card,
.side .card,.hero-card,.booking,.fallback,.hero-list li{
  background:#ffffff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  color:inherit;
}
.card{border-radius:var(--radius);padding:24px;transition:border-color .2s var(--ease)}
.card:hover{transform:none;border-color:#9aa4b2;background:#ffffff;box-shadow:var(--shadow)}
.card ul{color:#374151}
.card ul li{margin:6px 0}
.industry-card{min-height:0;border-radius:var(--radius)}
.panel{border-radius:14px}
.metric{background:var(--soft);border-radius:10px}
.metric b{font-family:var(--font);font-weight:800;font-size:28px;color:var(--orange);letter-spacing:-.02em}
.metric span{color:var(--muted);font-size:13px}
.flow div{
  background:var(--soft);
  border:1px solid var(--line);
  border-left:3px solid var(--orange);
  font-weight:600;color:#374151;border-radius:8px;
}
.stat{border-left:3px solid var(--orange);background:var(--soft)}
.stat strong{font-family:var(--font);font-weight:800;color:var(--ink)}
.source a{color:var(--orange)}
.hero-list strong,.trust strong,.trust-grid strong,.price strong{color:var(--ink)}
.price span{color:var(--muted)}
.section.alt,.trust-strip{background:var(--soft);border-color:var(--line)}

/* ---- Hero ---- */
.hero{padding:72px 0 56px;background:none}
.hero-grid{gap:42px}
.pulse{background:var(--green);box-shadow:0 0 0 6px rgba(4,120,87,.12)}
.dash-top{border-bottom:1px solid var(--line)}
.dash-top strong{font-weight:700}

/* ---- Steps ---- */
.step{border-radius:var(--radius)}
.step:before{
  background:var(--orange);
  color:#ffffff;font-family:var(--font);font-weight:800;
  box-shadow:none;
}

/* ---- Calculator / CTA bands ---- */
.calc-row{border-bottom:1px solid var(--line)}
.calc-row b{color:var(--ink)}
.calc-out{
  background:var(--soft);
  border:1px solid var(--line);border-left:4px solid var(--orange);
  border-radius:var(--radius);
}
.calc-out b{font-family:var(--font);font-weight:800;color:var(--orange-dark)}
.cta{
  background:var(--soft);
  border:1px solid var(--line);
  border-radius:16px;padding:36px;
}
.warn{border-color:#fca5a5;background:#fef2f2}

/* ---- Forms ---- */
.input,.form input,.form textarea,.form select,
.lead-form input,.lead-form textarea,.lead-form select,
.inline-form input,.inline-form textarea,.inline-form select,
input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{
  background:#ffffff;
  border:1px solid var(--line);
  border-radius:10px;color:var(--ink);
  transition:border-color .15s var(--ease),box-shadow .15s var(--ease);
}
.input::placeholder,input::placeholder,textarea::placeholder{color:#9ca3af}
.input:focus,.form input:focus,.form textarea:focus,.form select:focus,
input:focus,textarea:focus,select:focus{
  outline:none;border-color:var(--orange);
  box-shadow:0 0 0 3px rgba(194,65,12,.14);
}
label,.lead-form label{color:#374151}

/* ---- Sections rhythm ---- */
.section{padding:72px 0}
.section + .section{border-top:1px solid var(--soft)}

/* ---- Footer ---- */
.footer,footer{border-top:1px solid var(--line);color:var(--muted);background:#ffffff}
.footlinks a,.footer a{color:#374151;font-weight:600}
.footlinks a:hover,.footer a:hover{color:var(--orange)}
.contact a,.social-links a{color:var(--orange-dark)}
.social-links a{border-color:var(--line)}

/* ---- Dark accent panels (intentional, homepage-style): readable text ---- */
.panel.dashboard,.platform-card,.dark,.final{color:#e5e7eb}
.panel.dashboard .metric,.dark .card{background:#1f2937;border-color:#374151}
.panel.dashboard .metric b{color:#fdba74}
.panel.dashboard .metric span,.dark .card p{color:#9ca3af}
.panel.dashboard .dash-top strong,.dark h2,.dark h3,.final h2{color:#f9fafb}
.panel.dashboard .flow div{background:#1f2937;border-color:#374151;border-left-color:#c2410c;color:#d1d5db}

/* ---- Motion: content is NEVER hidden waiting for a scroll trigger ---- */
.reveal{opacity:1;transform:none;transition:none}
.reveal.in-view{opacity:1;transform:none}
@keyframes forge-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.hero .eyebrow,.hero .h1,.hero .lead,.hero .actions{
  animation:forge-rise .45s var(--ease) both;
}
.hero .h1{animation-delay:.05s}
.hero .lead{animation-delay:.10s}
.hero .actions{animation-delay:.15s}
/* everything else renders immediately */
.hero .muted,.hero .chips,.hero .panel{animation:none;opacity:1}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
