/* Builder training pages (pitch, objections, call scripts). Sits on top of ../../programs.css.
   Deep green/teal + gold for builder pieces, clean lining numerals, and a letter-size print layout. */
:root{--green:#0F3236;--gold-d:#9A7A12;--goldbg:#FBF7EA}
body{font-variant-numeric:lining-nums tabular-nums}
header .bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
header .logo-dark{height:30px;width:auto;display:block}
.logo-light,.print-only{display:none}
.hdr-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;align-items:center}
.btn.gold{background:var(--gold);color:#2b2205}
.btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
button.btn{border:0;cursor:pointer}
header .status{margin-top:0}
.status.int{background:#fff;color:var(--green)}

/* big short headlines */
section>h2{font-size:22px}
.big{font:800 clamp(22px,4vw,30px)/1.15 Poppins,system-ui,sans-serif;color:var(--deep);margin:0 0 10px;text-wrap:balance;max-width:30ch}
.big span{color:var(--teal-d)}
.kicker{font:700 11.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d);margin:0 0 6px}

/* the money comparison */
.versus{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch;margin:6px 0 12px}
.versus .side{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff;min-width:0}
.versus .side.win{border:2px solid var(--teal);background:var(--tint)}
.versus .lab{font:700 11.5px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.versus .num{font:800 clamp(28px,6vw,40px)/1.1 Poppins,sans-serif;color:var(--deep);margin:4px 0 2px}
.versus .win .num{color:var(--teal-d)}
.versus .sub{font-size:14px;color:var(--muted)}
.versus .vs{align-self:center;font:800 15px Poppins,sans-serif;color:var(--gold-d)}
.callout{background:var(--green);color:#fff;border-radius:12px;padding:14px 18px;font:700 18px/1.35 Poppins,sans-serif;max-width:none}
.callout b{color:#F2D675}
.fine{font-size:12.5px;color:var(--muted);line-height:1.5;max-width:none}

/* steps */
.steps{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;max-width:none}
.steps li{margin:0;border-radius:10px;background:var(--tint);padding:12px 14px;font-size:14.5px;counter-increment:s;position:relative}
.steps{counter-reset:s}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--green);color:#fff;font:700 12.5px Poppins,sans-serif;margin-bottom:6px}
.steps li b{display:block;color:var(--deep)}

/* what to say */
.say{font-style:normal;font-size:16.5px;line-height:1.55;color:#2a2410;margin:0 0 12px}
.say .who{display:block;font:700 10.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d);margin-bottom:4px;font-style:normal}
.fill{border-bottom:1.5px dashed #b9a35a;padding:0 2px;white-space:nowrap}
.lo{font-weight:600}
.ph{background:#FFE9C2;color:#7a4b00;padding:0 3px;border-radius:2px;font-style:normal;white-space:nowrap}
.lo-note{font-size:13px;color:var(--muted);margin:0}
.lo-note a,.note a{color:var(--teal-d)}

/* objection cards */
.obj{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:0 0 12px;break-inside:avoid}
.obj h3{margin:0 0 8px;font-size:18px}
.obj dl{margin:0;display:grid;grid-template-columns:7.5em 1fr;gap:6px 12px}
.obj dt{font:700 11px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.obj dd{margin:0;font-size:14.5px}
.obj dd.s{font-size:15.5px;color:#2a2410;background:var(--goldbg);border-left:3px solid var(--gold);padding:6px 10px;border-radius:0 8px 8px 0}
.obj dd.no{color:#8A2B1D}

/* two-key grid */
.keys4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
.keys4 div{border-radius:10px;padding:12px 14px;background:var(--tint);font-size:14px}
.keys4 div.bite{background:#FBE9E6}
.keys4 b{display:block;font:700 14px Poppins,sans-serif;color:var(--deep)}
.keys4 strong{display:block;font:800 17px Poppins,sans-serif;color:var(--teal-d);margin:2px 0}
.keys4 .bite strong{color:#A23B23}

/* checklists and lists */
ul.check{list-style:none;padding:0;max-width:none}
ul.check li{padding-left:30px;position:relative;margin:8px 0;font-size:15px}
ul.check li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border:2px solid var(--teal);border-radius:4px}
ol.qs{padding-left:1.4em;max-width:none}
ol.qs li{margin:7px 0;font-size:15.5px}
ol.qs li::marker{font-weight:700;color:var(--teal-d)}
.copybox{border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#fff;white-space:pre-line;font-size:15px;line-height:1.55;margin:0 0 8px}
.copybtn{font:700 13px Poppins,sans-serif;border:1.5px solid var(--teal);background:#fff;color:var(--teal-d);border-radius:8px;padding:7px 12px;cursor:pointer}
.rules{background:var(--warnbg);border:1px solid #f3dfbd}
.rules li{font-size:14px}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.toc a{font:600 13px Inter,sans-serif;color:var(--teal-d);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;text-decoration:none}
.foot{font-size:12px;color:var(--muted);text-align:center;margin:4px 0 0}

@media (max-width:620px){
  .versus{grid-template-columns:1fr}
  .versus .vs{justify-self:center}
  .keys4{grid-template-columns:1fr}
  .obj dl{grid-template-columns:1fr;gap:2px}
  .obj dt{padding-top:6px}
  .fill,.ph{white-space:normal}
}

.print-foot{display:none}

/* ---------- print: letter, white, logo on light, no buttons ---------- */
@page{size:letter;margin:.5in .55in}
@media print{
  html,body{background:#fff !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{font-size:11.5pt;line-height:1.45}
  .ch,.noprint,.hdr-actions,.toc,.copybtn,#tellwillis,[class*="tellwillis"]{display:none !important}
  header{background:#fff !important;color:var(--ink);padding:0 0 10px;border-bottom:3px solid var(--teal);margin-bottom:12px}
  header .in{max-width:none}
  header a{display:none}
  header .logo-dark{display:none}
  header .logo-light{display:block;height:34px;width:auto}
  header h1{color:var(--deep);font-size:24pt;margin:8px 0 2px}
  header p{color:var(--muted)}
  header .status{display:none}
  .print-only{display:block}
  .wrap{max-width:none;padding:0;gap:12px}
  .lo-note,#lo-note{display:none !important}
  body>*:not(header):not(main){display:none !important}
  section{border:0;padding:0;border-radius:0;break-inside:auto}
  section>h2{font-size:15pt;break-after:avoid;margin-bottom:6px}
  section>h2 .n{background:var(--green)}
  h3{break-after:avoid}
  .say,.obj,.versus,.keys4,.steps li,.copybox,.callout,.box,ol.qs li,ul.check li{break-inside:avoid}
  .say{font-size:11.5pt}
  .big{font-size:18pt}
  .versus .num{font-size:24pt}
  .callout{font-size:13pt}
  .lo-note{display:none}
  .steps{grid-template-columns:repeat(4,1fr)}
  .say,.copybox{padding:8px 12px}
  .fine{break-inside:avoid}
  .print-foot{max-width:none;margin:0;break-inside:avoid;display:block;border-top:1px solid var(--line);padding-top:8px;font-size:9pt;color:var(--muted);text-align:center}
  a{color:inherit;text-decoration:none}
}
