/* Wyrestone B2B Conversion UI — specificity, risk reversal, contrast, progressive commitment */
:root { --c-green:#2ed078; --c-navy:#09233e; --c-deep:#061a2d; --c-ink:#152536; --c-muted:#607284; --c-line:#dce4ea; --c-soft:#f5f8fa; }
.b2b-page { background:#fff; color:var(--c-ink); }
.b2b-hero { background:radial-gradient(circle at 82% 12%,rgba(46,208,120,.14),transparent 28%),linear-gradient(155deg,var(--c-navy) 0%,var(--c-deep) 76%); color:#fff; padding:92px 0 88px; overflow:hidden; }
.b2b-hero__grid { display:grid; grid-template-columns:1.08fr .92fr; gap:70px; align-items:center; }
.b2b-kicker { display:inline-flex; align-items:center; gap:9px; color:#8df0ba; font:700 12px/1 var(--font-mono); letter-spacing:.09em; text-transform:uppercase; }
.pulse-dot { width:8px; height:8px; border-radius:999px; background:var(--c-green); box-shadow:0 0 0 6px rgba(46,208,120,.12); }
.b2b-hero h1,.assessment-copy h1 { color:#fff; margin:18px 0 0; font-size:clamp(46px,6vw,76px); line-height:.96; letter-spacing:-.03em; max-width:830px; }
.b2b-hero h1 span,.assessment-copy h1 span { color:#8df0ba; }
.b2b-hero__lead { max-width:760px; margin-top:25px; font-size:18px; line-height:1.68; color:rgba(255,255,255,.75); }
.b2b-hero__actions { display:flex; flex-wrap:wrap; gap:13px; margin-top:30px; }
.btn--lg { padding:15px 23px; font-size:15px; }
.b2b-risk-reversal { display:flex; flex-wrap:wrap; gap:12px 20px; margin-top:23px; color:rgba(255,255,255,.61); font-size:12.5px; }
.b2b-risk-reversal span::before { content:"✓"; color:#8df0ba; font-weight:800; margin-right:7px; }
.b2b-diagnostic { border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:28px; background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04)); box-shadow:0 26px 70px rgba(0,0,0,.22); }
.b2b-diagnostic__top { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.eyebrow { font:700 11px/1.2 var(--font-mono); letter-spacing:.09em; text-transform:uppercase; color:var(--c-green); }
.b2b-diagnostic__tag { font-size:11px; color:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.14); border-radius:999px; padding:6px 9px; }
.b2b-diagnostic h2 { color:#fff; font-size:26px; margin:10px 0 20px; }
.diagnostic-list { display:grid; gap:10px; }
.diagnostic-item { display:grid; grid-template-columns:34px 1fr; gap:12px; align-items:start; padding:12px 0; border-top:1px solid rgba(255,255,255,.09); }
.diagnostic-item span { display:grid; place-items:center; width:30px; height:30px; border-radius:8px; background:rgba(46,208,120,.12); color:#8df0ba; font:700 11px var(--font-mono); }
.diagnostic-item p { color:rgba(255,255,255,.78); font-size:14px; line-height:1.5; margin:3px 0 0; }
.text-link { display:inline-block; margin-top:19px; color:#8df0ba; font-weight:700; }
.trust-ribbon { border-bottom:1px solid var(--c-line); background:#fff; }
.trust-ribbon__inner { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.trust-ribbon__inner div { padding:24px 22px; border-right:1px solid var(--c-line); }
.trust-ribbon__inner div:first-child { border-left:1px solid var(--c-line); }
.trust-ribbon strong { display:block; color:var(--c-navy); font-size:15px; }
.trust-ribbon span { display:block; color:var(--c-muted); font-size:12px; margin-top:4px; }
.b2b-section { padding:92px 0; }
.b2b-section--white { background:#fff; }
.b2b-section--soft { background:var(--c-soft); }
.b2b-section--ink { background:var(--c-deep); color:#fff; }
.b2b-section__heading { margin-bottom:42px; }
.split-heading { display:grid; grid-template-columns:1.08fr .72fr; gap:80px; align-items:end; }
.b2b-section__heading h2 { font-size:clamp(34px,4vw,54px); line-height:1.03; color:var(--c-navy); margin-top:10px; max-width:840px; }
.b2b-section__heading p { color:var(--c-muted); font-size:17px; line-height:1.65; }
.compact-heading { max-width:810px; }
.compact-heading p { margin-top:12px; }
.outcome-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.outcome-card { border:1px solid var(--c-line); border-radius:14px; padding:26px; background:#fff; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.outcome-card:hover { transform:translateY(-3px); box-shadow:0 18px 40px rgba(9,35,62,.08); border-color:#bdcbd4; }
.outcome-card__index { font:700 12px var(--font-mono); color:var(--green); }
.outcome-card h3 { margin:12px 0 8px; color:var(--c-navy); font-size:21px; }
.outcome-card p { color:var(--c-muted); font-size:14px; line-height:1.55; min-height:87px; }
.outcome-card ul { list-style:none; padding:16px 0 0; margin:16px 0 0; border-top:1px solid var(--c-line); display:grid; gap:8px; }
.outcome-card li { font-size:12.5px; color:var(--c-ink); }
.outcome-card li::before { content:"✓"; color:var(--green); font-weight:800; margin-right:7px; }
.contrast-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:74px; align-items:center; }
.section-eyebrow--light { color:#8df0ba; }
.contrast-copy h2 { color:#fff; font-size:clamp(36px,4.5vw,58px); line-height:1; margin:10px 0 16px; }
.contrast-copy p { color:rgba(255,255,255,.69); font-size:17px; line-height:1.65; margin-bottom:25px; }
.btn--ghost-light { display:inline-flex; padding:13px 18px; border:1px solid rgba(255,255,255,.24); border-radius:7px; color:#fff; font-weight:700; }
.contrast-table { border:1px solid rgba(255,255,255,.12); border-radius:14px; overflow:hidden; background:rgba(255,255,255,.04); }
.contrast-row { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:17px 20px; border-top:1px solid rgba(255,255,255,.1); }
.contrast-row:first-child { border-top:0; }
.contrast-row span { color:rgba(255,255,255,.55); }
.contrast-row strong { color:#fff; }
.contrast-row--head { background:rgba(255,255,255,.06); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.contrast-row--head span:last-child { color:#8df0ba; }
.baseline-preview { display:grid; grid-template-columns:.72fr 1.28fr; gap:54px; align-items:center; max-width:940px; }
.baseline-score { text-align:center; }
.score-dial { width:210px; height:210px; margin:0 auto; border-radius:50%; display:grid; place-content:center; background:conic-gradient(var(--c-green) 0 67%,#dfe6eb 67%); position:relative; }
.score-dial::before { content:""; position:absolute; inset:16px; background:var(--c-soft); border-radius:50%; }
.score-dial span,.score-dial small { position:relative; z-index:1; }
.score-dial span { color:var(--c-navy); font-size:64px; font-weight:800; line-height:1; }
.score-dial small { color:var(--c-muted); font:700 10px var(--font-mono); text-transform:uppercase; letter-spacing:.08em; margin-top:6px; }
.baseline-score p { color:var(--c-muted); font-size:11px; max-width:230px; margin:12px auto 0; }
.baseline-findings { display:grid; gap:11px; }
.finding { display:grid; grid-template-columns:92px 1fr; gap:14px; align-items:center; padding:15px 16px; border-radius:9px; background:#fff; border:1px solid var(--c-line); }
.finding span { font:800 11px var(--font-mono); text-transform:uppercase; }
.finding--good span { color:#128249; }.finding--warn span { color:#9b6500; }.finding--bad span { color:#aa3030; }
.finding strong { color:var(--c-navy); font-size:14px; }
.microcopy { text-align:center; color:var(--c-muted); font-size:11.5px; margin-top:-2px; }
.process-v2__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.process-v2__grid article { padding:28px; border-left:3px solid var(--c-green); background:var(--c-soft); }
.process-v2__grid span { font:700 12px var(--font-mono); color:var(--green); }
.process-v2__grid h3 { color:var(--c-navy); margin:10px 0 7px; font-size:20px; }
.process-v2__grid p { color:var(--c-muted); font-size:14px; }
.b2b-final-cta { padding:68px 0; background:linear-gradient(135deg,#0a2846,#061a2d); }
.b2b-final-cta__inner { display:grid; grid-template-columns:1.25fr .75fr; gap:50px; align-items:center; }
.b2b-final-cta h2 { color:#fff; font-size:clamp(32px,4vw,48px); line-height:1.03; margin:10px 0 12px; }
.b2b-final-cta p { color:rgba(255,255,255,.68); max-width:760px; }
.b2b-final-cta__actions { display:grid; gap:12px; justify-items:stretch; }
.b2b-phone { color:#fff; text-align:center; font-weight:750; padding:8px; }
.mobile-conversion-bar { display:none; }

/* Assessment */
.assessment-header-note { margin-left:auto; margin-right:20px; color:var(--c-muted); font-size:12px; }
.assessment-hero { background:radial-gradient(circle at 12% 14%,rgba(46,208,120,.1),transparent 28%),linear-gradient(155deg,var(--c-navy),var(--c-deep)); padding:82px 0 90px; }
.assessment-hero__grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:70px; align-items:start; }
.assessment-copy { padding-top:26px; }
.assessment-copy h1 { font-size:clamp(44px,5.3vw,68px); }
.assessment-copy>p { color:rgba(255,255,255,.72); font-size:17px; line-height:1.7; margin-top:22px; }
.assessment-promise { display:grid; gap:13px; margin-top:30px; }
.assessment-promise div { display:grid; grid-template-columns:125px 1fr; gap:14px; border-top:1px solid rgba(255,255,255,.11); padding-top:13px; }
.assessment-promise strong { color:#8df0ba; font-size:13px; }.assessment-promise span { color:rgba(255,255,255,.62); font-size:13px; }
.assessment-form-shell { background:#fff; border-radius:18px; padding:30px; box-shadow:0 28px 80px rgba(0,0,0,.27); min-height:610px; }
.assessment-form-shell__header { display:flex; justify-content:space-between; gap:18px; align-items:start; }
.assessment-form-shell__header h2 { color:var(--c-navy); font-size:25px; margin-top:7px; }
.form-time { padding:7px 10px; border-radius:999px; background:var(--c-soft); color:var(--c-muted); font:700 10px var(--font-mono); white-space:nowrap; }
.form-progress { height:4px; border-radius:99px; background:#edf1f4; margin:23px 0 10px; overflow:hidden; }
.form-progress__bar { display:block; height:100%; width:33.333%; background:var(--c-green); transition:width .25s ease; }
.form-step-label { display:flex; justify-content:space-between; color:var(--c-muted); font-size:11px; margin-bottom:24px; }
.conversion-form { background:transparent!important; padding:0!important; border:0!important; box-shadow:none!important; }
.form-step { display:none; }.form-step.is-active { display:block; animation:formFade .18s ease; }
@keyframes formFade { from{opacity:.35;transform:translateY(4px)} to{opacity:1;transform:none} }
.form-step h3 { color:var(--c-navy); font-size:20px; margin-bottom:20px; }
.conversion-form .form-row { margin-bottom:17px; }
.conversion-form label { color:var(--c-ink); font-weight:700; }
.conversion-form input,.conversion-form textarea,.conversion-form select { width:100%; border:1px solid #cfd9e0; background:#fff; border-radius:8px; padding:12px 13px; color:var(--c-ink); outline:none; transition:border .15s ease,box-shadow .15s ease; }
.conversion-form input:focus,.conversion-form textarea:focus,.conversion-form select:focus { border-color:var(--c-green); box-shadow:0 0 0 3px rgba(46,208,120,.13); }
.conversion-form .form-row small { display:block; color:var(--c-muted); font-size:11px; margin-top:6px; }
.optional { color:var(--c-muted); font-weight:500; font-size:11px; }
.form-step-actions { display:grid; grid-template-columns:auto 1fr; gap:10px; margin-top:7px; }
.choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:17px; }
.choice-card { position:relative; display:block; cursor:pointer; }
.choice-card input { position:absolute; opacity:0; pointer-events:none; }
.choice-card span { display:block; height:100%; padding:15px; border:1px solid var(--c-line); border-radius:9px; background:#fff; transition:border .15s ease,background .15s ease,box-shadow .15s ease; }
.choice-card strong { display:block; color:var(--c-navy); font-size:13px; }.choice-card small { display:block; color:var(--c-muted); font-size:11px; margin-top:5px; line-height:1.4; }
.choice-card input:checked+span { border-color:var(--c-green); background:#f1fbf5; box-shadow:0 0 0 2px rgba(46,208,120,.12); }
.form-privacy { color:var(--c-muted); font-size:10.5px; line-height:1.45; margin-top:12px; }
.assessment-reassurance { color:var(--c-muted); font-size:13px; line-height:1.5; margin:10px 0 18px; }
.form-success-panel { text-align:center; padding:28px 8px 6px; }
.success-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:50%; background:#e7f9ef; color:#13834a; font-size:28px; font-weight:900; margin:0 auto 14px; }
.form-success-panel h3 { color:var(--c-navy); font-size:28px; }.form-success-panel>p { color:var(--c-muted); max-width:430px; margin:8px auto 24px; }
.success-next { display:grid; grid-template-columns:32px 1fr; gap:12px; text-align:left; padding:12px 0; border-top:1px solid var(--c-line); }
.success-next span { width:28px; height:28px; display:grid; place-items:center; border-radius:8px; background:var(--c-soft); color:var(--green); font:700 11px var(--font-mono); }.success-next p { margin:0; color:var(--c-muted); font-size:12px; }.success-next strong { color:var(--c-navy); }
.assessment-proof { background:#fff; border-bottom:1px solid var(--c-line); padding:58px 0; }
.assessment-proof__grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:center; }
.assessment-proof h2 { color:var(--c-navy); font-size:34px; line-height:1.05; margin-top:8px; }
.assessment-proof__list { display:flex; flex-wrap:wrap; gap:9px; }
.assessment-proof__list span { padding:9px 12px; border-radius:999px; background:var(--c-soft); color:var(--c-ink); font-size:12px; border:1px solid var(--c-line); }
.form-row.has-error input,.form-row.has-error select,.form-row.has-error textarea { border-color:#c94a4a; box-shadow:0 0 0 3px rgba(201,74,74,.08); }
.choice-grid.has-error .choice-card span { border-color:#e1aaaa; }

@media (max-width:980px) {
  .b2b-hero__grid,.split-heading,.contrast-grid,.baseline-preview,.b2b-final-cta__inner,.assessment-hero__grid,.assessment-proof__grid{grid-template-columns:1fr}.b2b-hero__grid,.assessment-hero__grid{gap:38px}.trust-ribbon__inner{grid-template-columns:repeat(2,1fr)}.outcome-grid{grid-template-columns:repeat(2,1fr)}.split-heading{gap:20px}.contrast-grid{gap:38px}.assessment-copy{padding-top:0}.assessment-form-shell{min-height:auto}
}
@media (max-width:620px) {
  .b2b-hero,.assessment-hero{padding:64px 0 72px}.b2b-hero h1,.assessment-copy h1{font-size:43px}.b2b-hero__lead{font-size:16px}.trust-ribbon__inner{grid-template-columns:1fr 1fr}.trust-ribbon__inner div{padding:18px 14px}.outcome-grid,.process-v2__grid,.choice-grid{grid-template-columns:1fr}.outcome-card p{min-height:0}.b2b-section{padding:68px 0}.contrast-row{grid-template-columns:1fr;gap:5px}.contrast-row--head{display:none}.finding{grid-template-columns:78px 1fr}.b2b-final-cta{padding-bottom:94px}.mobile-conversion-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:55;background:rgba(6,26,45,.97);padding:10px 14px;border-top:1px solid rgba(255,255,255,.12)}.mobile-conversion-bar a{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#fff}.mobile-conversion-bar span{font-size:11px;color:rgba(255,255,255,.62)}.mobile-conversion-bar strong{font-size:13px;color:#8df0ba}.assessment-form-shell{padding:22px 18px}.form-step-actions{grid-template-columns:1fr}.assessment-promise div{grid-template-columns:1fr;gap:4px}.score-dial{width:180px;height:180px}
}
