/* Light editorial theme + segmented content layout.
   Keeps the build-log / proof-table idea but reads like a teaching service, not a dark landing page. */

/* ---- top consultation bar ---- */
.consult-bar{background:#eaf1ff;border-bottom:1px solid #d6e2fb;color:#1d2b45}
.consult-bar__inner{max-width:var(--max);margin:0 auto;padding:8px var(--pad);display:flex;align-items:center;gap:12px;min-height:42px}
.consult-bar__badge{flex:0 0 auto;font:600 11px var(--sans);color:#fff;background:var(--blue);padding:4px 9px;border-radius:2px;letter-spacing:.02em}
.consult-bar__text{font-size:12px;line-height:1.5;color:#4d5b73;flex:1;min-width:0}
.consult-bar__link{flex:0 0 auto;font-size:12px;font-weight:600;color:var(--blue);text-decoration:none;white-space:nowrap}
.consult-bar__link:hover{text-decoration:underline}

/* ---- light hero ---- */
.hero{background:#f4f7fd;color:var(--ink);border-bottom:1px solid #dfe6f2}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(30,77,255,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(30,77,255,.065) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 88%);
}
.hero::after{
  content:"";position:absolute;width:620px;height:620px;right:-120px;top:-240px;border-radius:50%;
  background:radial-gradient(circle,rgba(30,77,255,.16),transparent 66%);filter:blur(4px);pointer-events:none;
}
.hero__inner{position:relative;z-index:1}
.hero__eyebrow{color:var(--blue)}
.hero h1{color:var(--ink)}
.hero__lead{color:#43526a}
.hero__minor{color:#6b7a91}
.hero__facts{border-top-color:#d6e0ef}
.hero__fact{border-right-color:#dbe4f1}
.hero__fact strong{color:var(--ink)}
.hero__fact span{color:#6b7a91}
.hero__actions .btn--ghost-light{color:var(--ink);border-color:#b9c7dd;background:transparent}
.hero__actions .btn--ghost-light:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.hero__panel{filter:none}

.hero .code-window{background:#fff;border-color:#d5dfef;box-shadow:0 18px 46px rgba(38,63,112,.12)}
.hero .code-window__bar{background:#f1f5fc;border-bottom-color:#e1e8f3}
.hero .code-window__bar span{color:#52637c}
.hero .code-window__bar i:nth-child(1){background:#ff7a59}
.hero .code-window__bar i:nth-child(2){background:#efc45a}
.hero .code-window__bar i:nth-child(3){background:#4d7cff}
.hero .code-window__body{background:#fff;color:#243249}
.hero .code-window__body>div{border-bottom-color:#edf1f7}
.hero .code-window__body .dim{color:#6f7f96}
.hero .code-window__body .blue{color:var(--blue)}
.hero .code-window__body .green{color:#187a55}
.hero .code-window__body .orange{color:#bd4b25}
.hero .code-window__foot{background:#f7f9fd;border-top-color:#e1e8f3;color:#6f7f96}

#how,#outcomes,#resources,#faq,#case,#for-you{scroll-margin-top:78px}

/* ---- v4 content layout: one clear hero column, segmented sections, cards ---- */
.hero--center .hero__inner{grid-template-columns:1fr;max-width:1080px;padding-top:clamp(38px,4.8vw,58px);padding-bottom:clamp(38px,4.8vw,54px)}
.hero--center .hero__copy{max-width:900px;margin:0 auto;padding-bottom:0;text-align:center}
.hero--center .hero__eyebrow{color:var(--blue);margin-bottom:14px}
.hero--center h1{text-wrap:balance;max-width:900px;margin:0 auto}
.hero--center .hero__lead{max-width:760px;margin:18px auto 0;font-size:17px;line-height:1.8;color:#43526a}
.hero--center .hero__actions{justify-content:center;margin-top:24px}
.hero--center .hero__minor{margin-top:12px;color:#6b7a91}
.hero--center .hero__facts{max-width:780px;margin:26px auto 0;text-align:left}
.hero--center .hero__fact strong::before{content:"✓";color:#2d7a58;font-size:11px;margin-right:6px;vertical-align:1px}
.hero--center .hero__panel{display:none}

/* section headings: stacked + centered, content-section rhythm */
.section{border-top:0}
.sec-head{display:block;text-align:center;border-top:1px solid var(--line);padding-top:26px;margin-bottom:28px}
.sec-head .h2{max-width:820px;margin:0 auto}
.sec-head .lead{max-width:680px;margin:10px auto 0}
.note-line{text-align:center}

/* audience cards */
.audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border:0}
.audience{background:var(--white);border:1px solid var(--line);padding:22px 20px;border-right:1px solid var(--line)}
.audience:last-child{border-right:1px solid var(--line)}
.audience--primary{background:#eef3ff;border-top:3px solid var(--blue);padding-top:20px}
.audience__number{font:11px var(--mono);color:var(--blue)}
.audience h3{font-size:18px;line-height:1.4;margin:8px 0 7px}
.audience p{font-size:14px;line-height:1.75;margin:0;color:var(--ink-2)}

/* scenario grid replaces the hero-side table */
.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.scenario{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1.2fr);align-items:center;gap:10px;padding:16px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.55)}
.scenario__from{font-size:13px;color:#66758c;line-height:1.5}
.scenario__arrow{font-family:var(--mono);font-size:12px;color:var(--blue);text-align:center}
.scenario__to{font-size:14px;line-height:1.5;color:var(--ink);font-weight:600}

/* pain points as three cards */
.symptom-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-top:0;margin-top:0}
.symptom{display:block;padding:20px;background:var(--white);border:1px solid var(--line)}
.symptom__tag{padding-top:0;margin-bottom:9px;font-size:11px}
.symptom h3{font-size:17px;line-height:1.45;margin:0 0 8px}
.symptom p{font-size:14px;line-height:1.7;color:#5d6a7e}

@media (max-width:980px){
  .consult-bar__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .audience-grid,.scenario-grid,.symptom-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scenario:nth-child(2n){border-right:1px solid var(--line)}
}
@media (max-width:760px){
  .consult-bar{display:none}
  .hero::after{width:420px;height:420px;right:-180px;top:-160px}
  .hero--center .hero__inner{padding-top:30px;padding-bottom:30px}
  .hero--center .hero__lead{font-size:15px;line-height:1.75}
  .hero--center .hero__facts{grid-template-columns:1fr 1fr;margin-top:20px}
  .hero--center .hero__facts .hero__fact:nth-child(2){border-right:0}
  .sec-head{padding-top:20px;margin-bottom:20px}
  .sec-head .h2{font-size:clamp(24px,6.5vw,30px)}
  .audience-grid,.scenario-grid,.symptom-list{grid-template-columns:1fr}
  .audience,.scenario,.symptom{border-right:1px solid var(--line)}
  .scenario{grid-template-columns:minmax(0,1fr) 18px minmax(0,1.2fr);padding:14px 12px}
  .hero--center .hero__actions .btn{flex:1;min-width:0;text-align:center}
}
