/* Cashew build: components added on top of the AICRO template (trial, Q&A, prep list). */
.qa-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.trial-track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.trial-step {
  background:#fff; border:1px solid var(--mist); border-radius:14px;
  padding:22px; display:flex; flex-direction:column; gap:10px;
}
.trial-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; margin-top:22px; }
.prep-row {
  display:flex; align-items:flex-start; gap:12px; padding:9px 10px; border-radius:8px;
  font-size:13.5px; line-height:1.45; cursor:pointer; transition:background .15s ease;
}
.prep-row:hover { background:#F6F8FB; }
.prep-row input { width:16px; height:16px; margin-top:2px; accent-color:#0E9F66; flex-shrink:0; cursor:pointer; }
.dark-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:9px; }
.dark-list li { font-size:13.5px; line-height:1.5; color:rgba(255,255,255,0.72); padding-left:16px; position:relative; }
.dark-list li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; border-radius:50%; background:#3DDC97; }
.dark-list strong { color:#fff; font-weight:600; }
.sample-badge {
  display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:99px;
  background:rgba(255,133,89,0.14); color:#FF8559; border:1px solid rgba(255,133,89,0.35);
  font-family:'JetBrains Mono',monospace; font-size:10px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase;
}
.seg-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.econ-math { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:22px; }

@media (max-width:960px) {
  .qa-grid, .trial-split, .econ-math { grid-template-columns:1fr; }
  .trial-track { grid-template-columns:1fr 1fr; }
  .seg-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .trial-track, .seg-grid { grid-template-columns:1fr; }
}

.hero-stats { margin-top:36px; padding-top:24px; border-top:1px solid rgba(255,255,255,0.10); display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; max-width:960px; }
.hero.light .hero-stats { border-top-color:var(--border); }
.plan-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.plan-list li { font-size:13.5px; line-height:1.55; color:var(--slate-500); padding-left:16px; position:relative; }
.plan-list li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; border-radius:50%; background:#21A8F2; }
.plan-list strong { color:var(--shark); font-weight:600; }
.cs-grid-r { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
@media (max-width:960px) {
  .hero-stats { grid-template-columns:1fr 1fr; }
  .cs-grid-r { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .hero-stats, .cs-grid-r { grid-template-columns:1fr; }
  .nav-links { display:none !important; }
}

/* Template conflict: styles.css paints .es-cta green, styles-v2 sets blue text absolutely. */
.executive-summary .es-cta { background:transparent; padding:0; margin-top:0; }
.executive-summary .es-cta { display:none; }

/* v2: what we heard */
.heard-list { display:flex; flex-direction:column; gap:14px; }
.heard-row {
  display:grid; grid-template-columns:minmax(0,0.85fr) minmax(0,1.4fr); background:#fff;
  border:1px solid var(--mist); border-radius:16px; overflow:hidden;
}
.heard-said { padding:26px 28px; background:#F6F8FB; border-right:1px solid var(--mist); display:flex; flex-direction:column; gap:12px; }
.heard-tag { align-self:flex-start; padding:3px 10px; border-radius:99px; color:#fff; font-family:'JetBrains Mono',monospace; font-size:9.5px; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; }
.heard-who { font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:0.1em; text-transform:uppercase; color:var(--slate-400); }
.heard-quote { font-size:16px; line-height:1.5; color:var(--slate-700); font-style:italic; }
.heard-answer { padding:26px 30px; display:flex; flex-direction:column; gap:10px; }
.heard-headline { font-size:20px; font-weight:600; color:var(--shark); letter-spacing:-0.01em; line-height:1.3; }
.heard-detail { font-size:14px; color:var(--slate-500); line-height:1.65; margin:0; }
.heard-proof { margin-top:4px; padding-left:12px; border-left:3px solid; font-size:12.5px; color:var(--slate-700); font-family:'JetBrains Mono',monospace; letter-spacing:0.01em; line-height:1.5; }

/* v2: plan */
.plan-kicker { font-family:'JetBrains Mono',monospace; font-size:10.5px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700; margin-bottom:12px; }
.work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.seq-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }

/* v2: calculator */
.calc { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:18px; align-items:start; }
.calc-inputs { padding:24px 26px; display:flex; flex-direction:column; gap:20px; }
.calc-row { display:flex; flex-direction:column; gap:8px; }
.calc-row input[type=range] { width:100%; accent-color:#21A8F2; cursor:pointer; }
.calc-reset { align-self:flex-start; background:none; border:1px solid var(--mist); border-radius:99px; padding:7px 14px; font-size:12.5px; color:var(--slate-700); cursor:pointer; }
.calc-reset:hover { background:#fff; border-color:#21A8F2; color:#0E7DBC; }
.calc-out { display:flex; flex-direction:column; gap:14px; }
.calc-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.calc-foot { margin-top:18px; font-size:12px; color:var(--slate-500); line-height:1.6; max-width:900px; }

@media (max-width:960px) {
  .heard-row, .calc { grid-template-columns:1fr; }
  .heard-said { border-right:none; border-bottom:1px solid var(--mist); }
  .work-grid { grid-template-columns:1fr; }
  .seq-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .seq-grid, .calc-tiles { grid-template-columns:1fr; }
}
.calc-row input[type=range] { -webkit-appearance:none; appearance:none; height:6px; border-radius:99px; background:#E2E8F0; outline:none; }
.calc-row input[type=range]::-webkit-slider-thumb { -webkit-appearance:none; width:18px; height:18px; border-radius:50%; background:#21A8F2; border:3px solid #fff; box-shadow:0 0 0 1px #21A8F2, 0 2px 6px rgba(33,168,242,.35); cursor:pointer; }
.calc-row input[type=range]::-moz-range-thumb { width:14px; height:14px; border-radius:50%; background:#21A8F2; border:3px solid #fff; box-shadow:0 0 0 1px #21A8F2; cursor:pointer; }
.calc-row input[type=range]:focus-visible { box-shadow:0 0 0 3px rgba(33,168,242,.35); }
.heard-points { padding:12px 16px; background:#F6F8FB; border:1px solid var(--mist); border-radius:10px; }
.heard-points-label { font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; margin-bottom:8px; }
.heard-points ul { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:6px 18px; }
.heard-points li { font-size:13px; color:var(--slate-700); line-height:1.45; padding-left:14px; position:relative; }
.heard-points li::before { content:"×"; position:absolute; left:0; top:0; color:var(--slate-400); font-weight:700; }
@media (max-width:620px) { .heard-points ul { grid-template-columns:1fr; } }
.commit-split { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:16px; margin-bottom:22px; }
.commit-card { padding:22px 24px; display:flex; flex-direction:column; gap:10px; }
.commit-label { font-family:'JetBrains Mono',monospace; font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; }
.commit-card ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:7px; }
.commit-card li { font-size:13.5px; color:var(--slate-700); line-height:1.5; padding-left:16px; position:relative; }
.commit-card li::before { content:""; position:absolute; left:0; top:8px; width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.35; }
.commit-card p { font-size:12.5px; color:var(--slate-500); line-height:1.6; margin:4px 0 0; }
@media (max-width:960px) { .commit-split { grid-template-columns:1fr; } }
