/* RIG Bright Design System — Light Theme for Lead Magnets & Verticals */
/* Positive, approachable, Apple-inspired spacing */

:root {
  /* === Surfaces === */
  --b-s0: #FBF9F5;   /* warm white page */
  --b-s1: #F5F0E8;   /* card background */
  --b-s2: #EDE7DC;   /* hover */
  --b-s3: #E2DBCD;   /* elevated */

  /* === Gold === */
  --b-gold: #B8860B;
  --b-gold-h: #D4A017;
  --b-gold-l: #F0C75E;
  --b-gold-sub: rgba(184,134,11,.06);
  --b-gold-bd: rgba(184,134,11,.15);
  --b-glow: rgba(184,134,11,.1);

  /* === Positive Accents === */
  --b-success: #2D7A2D;
  --b-energy: #E65C00;
  --b-trust: #1A5276;

  /* === Text === */
  --b-t1: #1C1814;
  --b-t2: #4A4036;
  --b-t3: #7A6E60;
  --b-t4: #A89E90;

  /* === Borders === */
  --b-bd: rgba(28,24,20,.06);
  --b-bd-s: rgba(28,24,20,.12);
  --b-bd-l: rgba(28,24,20,.2);

  /* === Shadows === */
  --b-sh-sm: 0 1px 3px rgba(28,24,20,.04);
  --b-sh-md: 0 2px 12px rgba(28,24,20,.06);
  --b-sh-lg: 0 8px 32px rgba(28,24,20,.08);
  --b-sh-gold: 0 4px 20px rgba(184,134,11,.1);
  --b-sh-gold-h: 0 6px 28px rgba(184,134,11,.18);

  /* === Type === */
  --b-serif: "Cormorant Garamond", Georgia, serif;
  --b-sans: "Hanken Grotesk", system-ui, sans-serif;
  --b-mono: "JetBrains Mono", monospace;

  /* === Spacing (4px grid) === */
  --b-sp-1: .25rem;   /* 4px */
  --b-sp-2: .5rem;    /* 8px */
  --b-sp-3: .75rem;   /* 12px */
  --b-sp-4: 1rem;     /* 16px */
  --b-sp-5: 1.5rem;   /* 24px */
  --b-sp-6: 2rem;     /* 32px */
  --b-sp-7: 3rem;     /* 48px */
  --b-sp-8: 4rem;     /* 64px */
  --b-sp-9: 6rem;     /* 96px */
  --b-sp-10: 8rem;    /* 128px */

  /* === Radius === */
  --b-r: 12px;
  --b-r-lg: 16px;
  --b-r-xl: 24px;
  --b-r-pill: 999px;

  /* === Motion === */
  --b-ease: cubic-bezier(.16,1,.3,1);
  --b-ease-snap: cubic-bezier(.34,1.56,.64,1);
  --b-dur: .25s;
  --b-dur-slow: .5s;
}

/* === Reset === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* === Base === */
body[data-theme="bright"]{
  background:var(--b-s0);
  color:var(--b-t1);
  font-family:var(--b-sans);
  font-weight:300;
  line-height:1.47;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* === Typography === */
.b-overline{font-family:var(--b-mono);font-size:.6875rem;font-weight:600;color:var(--b-gold);text-transform:uppercase;letter-spacing:.12em}
.b-h1{font-family:var(--b-serif);font-weight:500;font-size:clamp(2rem,6vw,3.5rem);line-height:1.05;letter-spacing:-.02em}
.b-h1 em,.b-h2 em{color:var(--b-gold);font-style:italic}
.b-h2{font-family:var(--b-serif);font-weight:500;font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.1;letter-spacing:-.015em}
.b-h3{font-family:var(--b-sans);font-weight:600;font-size:1.125rem;line-height:1.3}
.b-lede{font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.5;color:var(--b-t2);max-width:55ch;font-weight:300}
.b-body{font-size:.9375rem;line-height:1.6;color:var(--b-t2)}
.b-small{font-size:.8125rem;color:var(--b-t3)}
.b-caption{font-family:var(--b-mono);font-size:.6875rem;color:var(--b-t3)}

/* === Layout === */
.b-wrap{max-width:680px;margin:0 auto;padding:0 1.5rem}
.b-wrap-wide{max-width:1080px;margin:0 auto;padding:0 1.5rem}
.b-section{padding:clamp(3.5rem,9vw,6rem) 0}

/* === Buttons === */
.b-btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2.4rem;border:none;cursor:pointer;font-family:var(--b-sans);font-weight:600;font-size:.9rem;border-radius:var(--b-r);text-decoration:none;transition:all var(--b-dur) var(--b-ease)}
.b-btn-gold{background:linear-gradient(135deg,var(--b-gold-h),var(--b-gold));color:#fff;box-shadow:var(--b-sh-gold)}
.b-btn-gold:hover{transform:translateY(-2px);box-shadow:var(--b-sh-gold-h)}
.b-btn-ghost{background:transparent;color:var(--b-t1);border:1px solid var(--b-bd-s)}
.b-btn-ghost:hover{background:var(--b-s1);border-color:var(--b-bd-l)}

/* === Cards === */
.b-card{background:var(--b-s1);border:1px solid var(--b-bd-s);border-radius:var(--b-r-lg);padding:clamp(1.5rem,3vw,2.25rem);transition:all var(--b-dur) var(--b-ease)}
.b-card:hover{box-shadow:var(--b-sh-md);transform:translateY(-2px)}
.b-card-gold{border-color:var(--b-gold-bd);background:linear-gradient(180deg,var(--b-gold-sub),transparent)}
.b-card-pad{padding:clamp(1.5rem,3vw,2.25rem)}

/* === Trust Strip === */
.b-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(1.5rem,5vw,3rem);padding:1.5rem;text-align:center}
.b-trust-stat{font-family:var(--b-mono)}
.b-trust-stat b{font-family:var(--b-serif);font-size:1.3rem;color:var(--b-gold);display:block;line-height:1.2}
.b-trust-stat span{font-size:.7rem;color:var(--b-t3);text-transform:uppercase;letter-spacing:.08em}

/* === Checklist === */
.b-checklist{background:var(--b-s1);border:1px solid var(--b-bd-s);border-radius:var(--b-r-lg);padding:clamp(2rem,4vw,3rem);margin:2rem 0}
.b-check-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--b-bd);align-items:flex-start}
.b-check-item:last-child{border-bottom:none}
.b-check-num{font-family:var(--b-mono);font-size:.7rem;font-weight:700;color:var(--b-gold);background:var(--b-gold-sub);border:1px solid var(--b-gold-bd);border-radius:4px;padding:.15rem .4rem;flex-shrink:0}

/* === Scoring Dashboard === */
.b-score-card{background:var(--b-s1);border:1px solid var(--b-bd-s);border-radius:var(--b-r-lg);padding:1.5rem;margin-bottom:1rem;transition:all var(--b-dur) var(--b-ease)}
.b-score-card:hover{box-shadow:var(--b-sh-md)}
.b-score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}
.b-score-cat{font-family:var(--b-sans);font-weight:600;font-size:.9rem}
.b-score-val{font-family:var(--b-mono);font-weight:700;font-size:1.1rem}
.b-score-bar{height:6px;background:var(--b-s2);border-radius:3px;overflow:hidden}
.b-score-fill{height:100%;border-radius:3px;transition:width 1s var(--b-ease)}
.b-score-fill.high{background:linear-gradient(90deg,var(--b-success),#4CAF50)}
.b-score-fill.strong{background:linear-gradient(90deg,var(--b-gold),var(--b-gold-h))}
.b-score-fill.mid{background:linear-gradient(90deg,var(--b-energy),#FF9800)}
.b-score-fill.low{background:linear-gradient(90deg,#d32f2f,#f44336)}
.b-score-meta{display:flex;justify-content:space-between;font-family:var(--b-mono);font-size:.65rem;color:var(--b-t3);margin-top:.4rem}

/* === FAQ === */
.b-faq details{border:1px solid var(--b-bd-s);border-radius:var(--b-r);margin-bottom:.5rem;background:var(--b-s1);overflow:hidden}
.b-faq summary{padding:1.1rem 1.4rem;cursor:pointer;font-weight:500;font-size:.95rem;list-style:none}
.b-faq summary::after{content:'+';float:right;color:var(--b-gold);font-size:1.2rem;font-weight:300}
.b-faq details[open] summary::after{content:'−'}
.b-faq p{padding:0 1.4rem 1.2rem;font-size:.875rem;color:var(--b-t2);line-height:1.5}

/* === Grid === */
.b-grid{display:grid;gap:1rem}
.b-grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.b-grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

/* === Badge === */
.b-badge{display:inline-block;font-family:var(--b-mono);font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .6rem;border-radius:var(--b-r-pill);border:1px solid}
.b-badge-gold{color:var(--b-gold);border-color:var(--b-gold-bd);background:var(--b-gold-sub)}
.b-badge-green{color:var(--b-success);border-color:rgba(45,122,45,.2);background:rgba(45,122,45,.06)}
.b-badge-orange{color:var(--b-energy);border-color:rgba(230,92,0,.2);background:rgba(230,92,0,.06)}

/* === Section Divider === */
.b-divider{height:1px;background:linear-gradient(90deg,transparent,var(--b-bd-s),transparent);margin:0}

/* === Vertical Nav === */
.b-vnav{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:2rem 1.5rem}
.b-vnav a{padding:.5rem 1rem;border-radius:var(--b-r-pill);font-size:.8rem;font-weight:500;color:var(--b-t2);background:var(--b-s1);border:1px solid var(--b-bd-s);transition:all var(--b-dur) var(--b-ease)}
.b-vnav a:hover{color:var(--b-gold);border-color:var(--b-gold-bd);background:var(--b-gold-sub)}

/* === Responsive === */
@media(max-width:680px){
  .b-trust{flex-direction:column;gap:1rem}
  .b-grid-2,.b-grid-3{grid-template-columns:1fr}
}
