/* =====================================================================
 * Lok-N-Blok — Hero + Trust Rail + Three-Track CTA
 * Consumes tokens from lnb-tokens.css. Scoped to .lnb-v2-* classnames
 * so it composes cleanly with existing page styles.
 * ===================================================================== */

/* ---------- shared icon sizing ---------- */
.i{display:inline-block;flex:none;width:1em;height:1em;stroke:currentColor;fill:none;vertical-align:-0.12em}
.i-16{width:16px;height:16px}
.i-18{width:18px;height:18px}
.i-22{width:22px;height:22px}
.i-28{width:28px;height:28px}
.i-40{width:40px;height:40px}

/* ---------- hero v2 ---------- */
.lnb-v2-hero{
  position:relative;
  padding:clamp(64px, 10vw, 120px) 24px clamp(48px, 7vw, 88px);
  overflow:hidden;
  isolation:isolate;
}
.lnb-v2-hero::before{
  content:'';position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(ellipse 60% 40% at 18% 10%, rgba(61,204,110,.10), transparent 70%),
    radial-gradient(ellipse 60% 40% at 82% 90%, rgba(240,195,90,.08), transparent 70%);
}
.lnb-v2-hero .wrap{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:1.15fr .9fr;gap:48px;align-items:center}
@media(max-width:960px){.lnb-v2-hero .wrap{grid-template-columns:1fr;gap:32px}}

/* Kevin Harrington banner — above the fold, above headline */
.lnb-v2-kh{
  display:inline-flex;align-items:center;gap:14px;
  padding:10px 14px 10px 10px;
  background:linear-gradient(135deg, rgba(240,195,90,.14), rgba(240,195,90,.06));
  border:1px solid rgba(240,195,90,.38);
  border-radius:999px;
  color:var(--text);
  font-size:.8rem;
  margin-bottom:20px;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  text-decoration:none;
  transition:all .2s var(--ease);
  max-width:100%;
}
.lnb-v2-kh:hover{transform:translateY(-1px);border-color:rgba(240,195,90,.6);box-shadow:0 10px 28px rgba(240,195,90,.18)}
.lnb-v2-kh .kh-avatar{
  width:40px;height:40px;border-radius:50%;overflow:hidden;
  box-shadow:0 0 0 2px var(--gold), 0 0 14px rgba(240,195,90,.45);
  background:#2a1f08;flex:none;
}
.lnb-v2-kh .kh-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}
.lnb-v2-kh .kh-text{line-height:1.35}
.lnb-v2-kh .kh-eyebrow{
  display:block;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:2px;
}
.lnb-v2-kh .kh-body{color:var(--text-2);font-weight:500}
.lnb-v2-kh .kh-body strong{color:var(--text);font-weight:700}
.lnb-v2-kh .kh-arrow{color:var(--gold);margin-left:4px;flex:none}

/* Headline */
.lnb-v2-h1{
  font-family:var(--font-display);
  font-size:clamp(2.2rem, 5vw, 4.25rem);
  line-height:1.02;
  letter-spacing:-.025em;
  font-weight:800;
  margin:0 0 18px;
  color:var(--text);
}
.lnb-v2-h1 .g{
  background:var(--grad-hero);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:inline-block;
}
.lnb-v2-sub{
  font-size:clamp(1.02rem, 1.45vw, 1.2rem);
  line-height:1.6;color:var(--text-2);
  max-width:640px;margin:0 0 28px;
}
.lnb-v2-sub strong{color:var(--text);font-weight:600}

/* Three-track CTA */
.lnb-v2-tracks{
  display:grid;grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;max-width:680px;margin-bottom:22px;
}
@media(max-width:640px){.lnb-v2-tracks{grid-template-columns:1fr}}
.lnb-v2-track{
  display:flex;align-items:center;gap:12px;
  padding:14px 16px;border-radius:14px;
  text-decoration:none;transition:all .2s var(--ease);
  border:1px solid var(--line);
  background:var(--card);color:var(--text);
  min-height:64px;
}
.lnb-v2-track:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.lnb-v2-track .t-ico{
  width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  flex:none;
}
.lnb-v2-track .t-body{display:flex;flex-direction:column;line-height:1.2}
.lnb-v2-track .t-head{font-weight:700;font-size:.95rem;letter-spacing:-.01em}
.lnb-v2-track .t-sub{font-size:.72rem;color:var(--mute);margin-top:2px;font-weight:500;letter-spacing:.02em}

.lnb-v2-track.track-invest{
  border-color:rgba(240,195,90,.35);
  background:linear-gradient(180deg, rgba(240,195,90,.09), rgba(240,195,90,.03));
}
.lnb-v2-track.track-invest:hover{border-color:var(--gold);box-shadow:var(--shadow-gold)}
.lnb-v2-track.track-invest .t-ico{background:var(--grad-gold);color:var(--bg)}
.lnb-v2-track.track-invest .t-head{color:var(--gold)}

.lnb-v2-track.track-build{
  border-color:rgba(61,204,110,.3);
  background:linear-gradient(180deg, rgba(39,165,86,.08), rgba(39,165,86,.02));
}
.lnb-v2-track.track-build:hover{border-color:var(--g-400);box-shadow:var(--shadow-primary)}
.lnb-v2-track.track-build .t-ico{background:var(--grad-primary);color:var(--bg)}
.lnb-v2-track.track-build .t-head{color:var(--g-300)}

.lnb-v2-track.track-learn{background:var(--card);color:var(--text)}
.lnb-v2-track.track-learn:hover{border-color:var(--text-2)}
.lnb-v2-track.track-learn .t-ico{background:rgba(255,255,255,.05);color:var(--text-2)}

.lnb-v2-risk{
  display:inline-flex;align-items:center;gap:10px;color:var(--mute);font-size:.82rem;
  padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid var(--line-soft);
}
.lnb-v2-risk strong{color:var(--gold);font-weight:600}

/* Right column: proof dashboard */
.lnb-v2-proof{
  position:relative;
  background:linear-gradient(180deg, var(--card), var(--card-2));
  border:1px solid var(--line);
  border-radius:20px;
  padding:24px;
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}
.lnb-v2-proof::before{
  content:'';position:absolute;top:-1px;left:24px;right:24px;height:2px;
  background:linear-gradient(90deg, transparent, var(--g-400), var(--gold), transparent);
}
.lnb-v2-proof-eyebrow{
  display:flex;align-items:center;gap:8px;
  font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--mute);font-weight:700;margin-bottom:14px;
}
.lnb-v2-proof-eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--g-400);box-shadow:0 0 10px var(--g-400);animation:lnb-pulse 2s infinite}
@keyframes lnb-pulse{0%,100%{opacity:1}50%{opacity:.4}}
.lnb-v2-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lnb-v2-stat{
  padding:14px 14px 12px;border-radius:12px;background:rgba(255,255,255,.02);
  border:1px solid var(--line-soft);
}
.lnb-v2-stat .v{font-family:var(--font-display);font-size:1.65rem;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--text)}
.lnb-v2-stat .v .unit{font-size:.68em;color:var(--mute);font-weight:600;margin-left:2px}
.lnb-v2-stat .l{font-size:.72rem;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-top:6px}
.lnb-v2-stat.green .v{color:var(--g-300)}
.lnb-v2-stat.gold .v{color:var(--gold)}

.lnb-v2-proof-footer{
  margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);
  display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--text-2);
}
.lnb-v2-proof-footer .i{color:var(--g-300)}
.lnb-v2-proof-footer a{color:var(--gold);text-decoration:none}
.lnb-v2-proof-footer a:hover{color:#fff}

/* ---------- trust rail ---------- */
.lnb-v2-trust{
  padding:28px 24px;
  background:linear-gradient(180deg, rgba(5,10,7,0), rgba(10,21,16,.55));
  border-top:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
}
.lnb-v2-trust .wrap{max-width:1220px;margin:0 auto}
.lnb-v2-trust-top{
  display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;
}
@media(max-width:900px){.lnb-v2-trust-top{grid-template-columns:1fr;text-align:center;gap:18px}}

.lnb-v2-trust-label{
  font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);font-weight:700;
}
.lnb-v2-press{
  display:flex;flex-wrap:wrap;align-items:center;gap:22px 28px;
}
.lnb-v2-press-item{
  font-family:var(--font-display);font-size:.88rem;font-weight:600;
  color:var(--text-2);letter-spacing:.02em;
  opacity:.82;transition:opacity .2s;white-space:nowrap;
}
.lnb-v2-press-item:hover{opacity:1;color:var(--text)}

.lnb-v2-reservation{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;border-radius:999px;
  background:rgba(39,165,86,.08);border:1px solid rgba(39,165,86,.28);
  color:var(--g-300);font-size:.78rem;font-weight:600;white-space:nowrap;
}
.lnb-v2-reservation .num{font-family:var(--font-display);font-weight:800;color:var(--text);font-size:.92rem;letter-spacing:-.01em}

/* badges row */
.lnb-v2-badges{
  margin-top:22px;padding-top:20px;border-top:1px dashed var(--line-soft);
  display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:16px;
}
.lnb-v2-badge{
  display:flex;align-items:center;gap:12px;padding:10px 14px;
  background:var(--card);border:1px solid var(--line);border-radius:10px;
  text-decoration:none;color:inherit;transition:border-color .2s;
}
.lnb-v2-badge:hover{border-color:var(--line-soft)}
.lnb-v2-badge .b-ico{
  width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  background:rgba(39,165,86,.12);color:var(--g-300);flex:none;
}
.lnb-v2-badge.gold .b-ico{background:rgba(240,195,90,.12);color:var(--gold)}
.lnb-v2-badge .b-title{font-size:.86rem;font-weight:700;color:var(--text);letter-spacing:-.01em;line-height:1.2}
.lnb-v2-badge .b-sub{font-size:.7rem;color:var(--mute);line-height:1.3;margin-top:2px}

/* ---------- sticky mobile CTA ---------- */
.lnb-v2-sticky-cta{
  display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;
  padding:10px;border-radius:14px;
  background:rgba(10,21,16,.92);backdrop-filter:blur(14px);
  border:1px solid var(--line);box-shadow:var(--shadow-lg);
  gap:8px;
}
.lnb-v2-sticky-cta a{
  flex:1;text-align:center;padding:12px 10px;border-radius:10px;
  font-weight:700;font-size:.86rem;text-decoration:none;line-height:1;
}
.lnb-v2-sticky-cta .gold{background:var(--grad-gold);color:var(--bg)}
.lnb-v2-sticky-cta .green{background:var(--grad-primary);color:var(--bg)}
@media(max-width:640px){
  .lnb-v2-sticky-cta{display:flex}
  body{padding-bottom:80px}
}
