/* ============================================================
   RocketCourt — home v4 (light · courtside editorial)
   Loaded ONLY by index.html, on top of site.css.
   Light throughout; the hero commits to the lime as a court
   panel with white lines, and the savings calculator reads as
   a matte scoreboard. Elsewhere blue carries the weight.
   ============================================================ */
.home{
  --ink:#0f1620;
  --ink-2:#2a3340;
  --slate:#586374;
  --slate-2:#8893a3;
  --line:#e7ebf1;
  --line-2:#eef1f6;
  --bg2:#f6f8fb;            /* cool off-white section tint */
  --blue:#1f6feb;
  --blue-700:#1850ac;
  --lime:#c3f53c;
  --ff-d:'Schibsted Grotesk','Hanken Grotesk',system-ui,sans-serif;
}
body.home{background:#fff;color:var(--ink);}

/* clean grotesque display — confident weight, tight tracking */
.home h1,.home h2,.home h3,.home h4{font-weight:700;letter-spacing:-.022em;}
.home .head h2{font-weight:700;letter-spacing:-.028em;}
.home .eyebrow{color:var(--blue);font-family:var(--ff-b);font-weight:700;font-size:12.5px;letter-spacing:.14em;}
.home .eyebrow.on-dark{color:var(--blue);}
.home .eyebrow::before{background:var(--lime);}

/* ---------- NAV (solid + light from the top) ---------- */
.home .nav{background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-bottom:1px solid transparent;}
.home .nav.scrolled{background:rgba(255,255,255,.9);border-color:var(--line);box-shadow:0 1px 0 rgba(15,22,32,.03);}
.home .nav .brand,.home .nav .nav-links a,.home .nav .signin{color:var(--ink);}
.home .nav .nav-links a{font-family:var(--ff-b);}
.home .nav .nav-links a:hover{color:var(--blue);}
.home .nav .nav-links a.active{color:var(--ink);}
.home .nav .nav-links a.active::after{background:var(--lime);}
.home .nav-burger svg{stroke:var(--ink);}
.home .btn-primary{background:var(--ink);box-shadow:none;}
.home .btn-primary:hover{background:#000;}

/* =====================================================================
   HERO — courtside editorial: plain-spoken copy on paper, and the
   calculator recast as a matte scoreboard standing on a lime court
   ===================================================================== */
.hx{position:relative;background:#fff;padding:150px 0 92px;overflow:hidden;border-bottom:1px solid var(--line);}
.hx-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(40px,5.5vw,88px);align-items:center;}

.hx-kicker{font-family:var(--ff-b);font-size:16px;font-weight:600;color:var(--slate);}
.hx-title{font-family:var(--ff-d);font-weight:800;font-size:clamp(46px,6.2vw,84px);line-height:.99;letter-spacing:-.045em;margin:16px 0 0;color:var(--ink);text-wrap:balance;}
.hx-title em{font-style:normal;box-shadow:inset 0 -.3em 0 0 var(--lime);}
.hx-sub{font-family:var(--ff-b);font-size:18.5px;line-height:1.6;color:var(--slate);max-width:520px;margin:26px 0 0;}
.hx-sub b{color:var(--ink);font-weight:700;}
.hx-cta{display:flex;align-items:center;gap:14px 28px;margin-top:34px;flex-wrap:wrap;}
.hx-link{font-family:var(--ff-d);font-weight:700;font-size:16.5px;color:var(--ink);border-bottom:2.5px solid var(--lime);padding-bottom:2px;transition:border-color .15s;}
.hx-link:hover{border-color:var(--ink);}
.hx-note{margin-top:22px;font-family:var(--ff-b);font-size:14px;color:var(--slate-2);}

/* the court: a lime panel with white court lines crossing its corner;
   the scoreboard stands offset on top of it */
.hx-board{position:relative;padding:46px 0 38px 58px;}
.hx-board::before{content:"";position:absolute;inset:0 -48px 0 0;border-radius:20px;
  transform:rotate(-1.4deg);
  background:
    linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)) no-repeat 0 27px / 100% 2.5px,
    linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)) no-repeat 27px 0 / 2.5px 100%,
    var(--lime);}

/* ---------- the scoreboard ---------- */
.score{position:relative;background:linear-gradient(180deg,#161e29,#0d131b);border:1px solid #2b3542;border-radius:16px;
  padding:24px 26px 22px;color:#dbe4f1;
  box-shadow:0 44px 80px -42px rgba(15,22,32,.6),inset 0 1px 0 rgba(255,255,255,.07);}
.score-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;
  font-family:var(--ff-m);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#8b96a6;
  padding-bottom:14px;border-bottom:1px solid #242e3b;}
.score-head b{color:var(--lime);font-weight:700;white-space:nowrap;}
.score-board{margin-top:18px;}
.score-board .lab{font-family:var(--ff-m);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#8b96a6;}
.score-big{font-family:var(--ff-m);font-weight:700;font-size:clamp(42px,4.8vw,58px);line-height:1;
  letter-spacing:-.01em;color:var(--lime);margin:10px 0 6px;font-variant-numeric:tabular-nums;}
.score-board .per{font-family:var(--ff-b);font-size:13.5px;color:#93a0b4;}
.score-rows{margin-top:22px;padding-top:20px;border-top:1px solid #242e3b;display:flex;flex-direction:column;gap:20px;}
.score-row .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.score-row label{font-family:var(--ff-b);font-size:14px;color:#dbe4f1;font-weight:600;}
.score-row .out{font-family:var(--ff-m);font-weight:700;font-size:14px;color:var(--lime);background:#0a0f15;
  border:1px solid #242e3b;border-radius:7px;padding:4px 10px;font-variant-numeric:tabular-nums;}
.score-foot{font-family:var(--ff-b);margin-top:20px;font-size:13px;color:#93a0b4;line-height:1.55;}
.score-foot b{color:#fff;}

/* =====================================================================
   Re-skin the inherited dark sections to LIGHT
   ===================================================================== */
.home .problem{background:var(--bg2);color:var(--ink);}
.home .problem .head p{color:var(--slate);}
.home .problem .figure > div{background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,22,32,.04);}
.home .problem .big{color:var(--ink);font-family:var(--ff-d);font-weight:600;}
.home .problem .big.good{color:var(--blue);}
.home .problem .cap{color:var(--slate);}
.home .problem .ledger{color:var(--slate);}
.home .problem .ledger strong{color:var(--ink);}

.home .bucket.b2{background:#fff;color:var(--ink);border-color:var(--line);}
.home .bucket.b2 .tag{color:var(--blue);}
.home .bucket.b2 li{color:var(--ink-2);}
.home .bucket.b2 li > :first-child{color:#5a8a00;}
.home .bucket.b2 li b{color:var(--ink);}
.home .bucket h3,.home .step h3,.home .plan h3{font-family:var(--ff-d);font-weight:600;}

.home .plan.feature{background:#fff;color:var(--ink);border:1.5px solid var(--blue);box-shadow:0 24px 60px -34px rgba(31,111,235,.45);}
.home .plan.feature .desc{color:var(--slate);}
.home .plan.feature li{color:var(--ink-2);}
.home .plan.feature li b{color:var(--ink);}
.home .plan .price{font-family:var(--ff-d);font-weight:600;}

/* =====================================================================
   THE WEDGE — light cards, blue-emphasised middle
   ===================================================================== */
.wedge{background:#fff;border-bottom:1px solid var(--line);}
.wedge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px;}
.wedge-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 26px;}
.wedge-card .n{font-family:var(--ff-b);font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--blue);}
.wedge-card h3{font-family:var(--ff-d);font-weight:600;font-size:23px;margin:14px 0 10px;letter-spacing:-.01em;}
.wedge-card p{font-family:var(--ff-b);color:var(--slate);font-size:15px;line-height:1.55;}
.wedge-card .vs{margin-top:16px;display:flex;align-items:center;gap:6px;font-family:var(--ff-b);font-size:13px;color:var(--slate-2);
  border-top:1px solid var(--line);padding-top:14px;width:100%;}
.wedge-card .vs b{color:var(--ink-2);font-weight:600;}
.wedge-card.lit{border:1.5px solid var(--blue);box-shadow:0 24px 60px -36px rgba(31,111,235,.5);}
.wedge-card.lit .n{color:var(--blue);}

/* =====================================================================
   FOUNDER / TRUST BAND — light
   ===================================================================== */
.founder{background:var(--bg2);color:var(--ink);position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.founder .court-strip{position:absolute;top:0;right:-8%;width:50%;height:100%;opacity:.5;pointer-events:none;}
.founder .court-strip rect,.founder .court-strip line{stroke:#dbe6f2;fill:none;}
.founder .court-strip .net{stroke:#cdd9e8;stroke-dasharray:2 7;stroke-width:2;}
.founder .wrap{position:relative;z-index:2;}
.founder .eyebrow.on-dark{color:var(--blue);}
.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start;}
.founder-note{font-family:var(--ff-b);font-size:17px;line-height:1.6;color:var(--slate);}
.founder-note .big{font-family:var(--ff-d);font-weight:500;font-size:clamp(23px,2.5vw,30px);line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin-bottom:18px;}
.founder-sign{display:flex;align-items:center;gap:13px;margin-top:24px;}
.founder-sign .av{width:46px;height:46px;border-radius:13px;background:var(--ink);color:#fff;
  display:flex;align-items:center;justify-content:center;font-family:var(--ff-d);font-weight:600;font-size:17px;flex:none;}
.founder-sign .nm{font-family:var(--ff-b);font-weight:700;font-size:15px;color:var(--ink);}
.founder-sign .ro{font-family:var(--ff-b);font-size:13px;color:var(--slate-2);}
.pillars{display:flex;flex-direction:column;gap:13px;}
.pillar{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 20px;display:flex;gap:15px;align-items:flex-start;box-shadow:0 1px 2px rgba(15,22,32,.04);}
.pillar .ic{width:38px;height:38px;border-radius:11px;background:#eef4fe;color:var(--blue);
  display:flex;align-items:center;justify-content:center;flex:none;}
.pillar .ic svg{width:20px;height:20px;}
.pillar h4{font-family:var(--ff-d);font-weight:600;font-size:16.5px;margin-bottom:4px;color:var(--ink);}
.pillar p{font-family:var(--ff-b);font-size:14px;color:var(--slate);line-height:1.5;}
.founding{margin-top:24px;background:#f4fbe2;border:1px solid #dcefae;border-radius:15px;padding:18px 22px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.founding .badge{font-family:var(--ff-b);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:var(--lime);color:#27340a;padding:7px 13px;border-radius:99px;flex:none;}
.founding p{font-family:var(--ff-b);font-size:14.5px;color:var(--slate);margin:0;}
.founding b{color:var(--ink);}

/* =====================================================================
   FINAL CTA — contained blue panel on light (no dark mode)
   ===================================================================== */
.home .final{background:#fff;color:var(--ink);text-align:left;padding:40px 0 96px;}
.home .final::before{content:none;}
.home .final .court-strip{display:none;}
.home .final .wrap{position:relative;background:linear-gradient(180deg,#f3f7ff,#eaf1fe);color:var(--ink);border:1px solid #d9e7fd;border-radius:28px;padding:60px 56px;overflow:hidden;}
.home .final .fc-court{position:absolute;top:0;right:-4%;width:46%;height:100%;opacity:.7;pointer-events:none;}
.home .final .fc-court rect,.home .final .fc-court line{stroke:rgba(31,111,235,.16);fill:none;}
.home .final .fc-court .net{stroke:rgba(31,111,235,.18);stroke-dasharray:2 7;stroke-width:2;}
.home .final .eyebrow.on-dark{color:var(--blue);justify-content:flex-start!important;}
.home .final h2{font-family:var(--ff-d);font-weight:800;color:var(--ink);font-size:clamp(32px,4.4vw,52px);letter-spacing:-.03em;margin:18px 0;}
.home .final h2 .lime{color:var(--blue);}
.home .final p{font-family:var(--ff-b);color:var(--slate);font-size:18px;max-width:520px;margin:0 0 30px;}
.home .final .hero-cta{justify-content:flex-start!important;}
.home .final .micro{font-family:var(--ff-m);color:var(--slate-2);text-align:left;}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width:960px){
  .hx{padding:124px 0 68px;}
  .hx-grid{grid-template-columns:1fr;gap:52px;}
  .hx-sub{max-width:560px;}
  .hx-board{max-width:560px;padding:38px 0 32px 36px;}
  .hx-board::before{inset:0 -22px 0 0;}
  .wedge-grid{grid-template-columns:1fr;}
  .founder-grid{grid-template-columns:1fr;gap:34px;}
  .founder .court-strip{display:none;}
  .home .final .wrap{padding:44px 28px;}
}
@media (max-width:560px){
  .hx-board{padding:26px 0 22px 20px;}
  .hx-board::before{inset:0 -14px 0 -6px;border-radius:14px;
    background:
      linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)) no-repeat 0 17px / 100% 2px,
      linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)) no-repeat 17px 0 / 2px 100%,
      var(--lime);}
  .score{padding:20px 18px 18px;}
}

/* ============================================================
   Operator tour: large desktop shots + a mobile admin row
   ============================================================ */
.op-desktops{display:flex;flex-direction:column;gap:32px;max-width:920px;margin:0 auto;}
.op-shot{margin:0;}
.op-shot figcaption{font-family:var(--ff-b);font-size:15px;color:var(--slate);line-height:1.55;
  margin:14px auto 0;text-align:center;max-width:640px;}
.op-shot figcaption b{color:var(--ink);font-weight:700;}
.op-mob-head{text-align:center;font-family:var(--ff-d);font-weight:700;font-size:clamp(20px,2.4vw,26px);
  letter-spacing:-.02em;color:var(--ink);margin:60px 0 32px;}
.screens.admin-phones{grid-template-columns:repeat(3,1fr);max-width:760px;margin:0 auto;}
@media (max-width:760px){ .screens.admin-phones{grid-template-columns:1fr;max-width:330px;} }
