:root{--pine:#0d271f;--pine2:#143b30;--mint:#dff5e7;--cream:#fbf8ee;--paper:#fffdf7;--ink:#18231f;--muted:#65746d;--line:#dde6df;--amber:#fff4d8;--shadow:0 20px 55px rgba(13,39,31,.10);--radius:28px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,#fbf8ee 0,#fffdf8 38%,#f6fbf7 100%);color:var(--ink);font-size:16px;line-height:1.55}a{color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}.narrow{max-width:850px}.site-nav{position:sticky;top:0;z-index:50;background:rgba(251,248,238,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(13,39,31,.08)}.nav-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-mark{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:var(--pine);color:#fff;font-weight:900;box-shadow:0 12px 28px rgba(13,39,31,.2)}.brand strong{display:block;letter-spacing:-.03em}.brand small{display:block;color:var(--muted);font-size:.76rem}.nav-links{display:flex;gap:4px;align-items:center}.nav-links a{text-decoration:none;color:#33413b;padding:10px 12px;border-radius:999px;font-size:.94rem}.nav-links a.active,.nav-links a:hover{background:#ecf6ef;color:var(--pine)}.nav-actions{display:flex;gap:10px;align-items:center}.menu-btn{display:none;border:0;background:#fff;border-radius:14px;padding:10px 12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 18px;text-decoration:none;font-weight:800;cursor:pointer;transition:.2s transform,.2s box-shadow,.2s background}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--pine);color:#fff;box-shadow:0 14px 30px rgba(13,39,31,.22)}.btn-secondary{background:#fff;color:var(--pine);border:1px solid var(--line)}.btn-small{padding:9px 14px;font-size:.9rem}.hero{position:relative;overflow:hidden;padding:84px 0 62px}.hero:before{content:"";position:absolute;inset:-35% -15% auto auto;width:520px;height:520px;background:radial-gradient(circle,#c7efd7 0,rgba(199,239,215,.5) 35%,transparent 68%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.hero h1,.page-title{font-size:clamp(2.8rem,6.2vw,6.2rem);line-height:.94;letter-spacing:-.075em;margin:0;color:var(--pine)}.hero-lead{font-size:clamp(1.08rem,1.7vw,1.35rem);color:#40504a;max-width:760px;margin:22px 0 0}.kicker{text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#507466;font-size:.78rem;margin:0 0 12px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.trust-row span{background:rgba(255,255,255,.7);border:1px solid var(--line);padding:8px 12px;border-radius:999px;color:#50645b;font-weight:700;font-size:.88rem}.hero-panel{background:linear-gradient(145deg,rgba(255,255,255,.85),rgba(240,250,243,.72));border:1px solid rgba(13,39,31,.12);border-radius:36px;box-shadow:var(--shadow);padding:22px;backdrop-filter:blur(20px)}.path-preview{display:grid;gap:14px}.path-node{padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line)}.path-node b{display:block;color:var(--pine);font-size:1.1rem}.section{padding:72px 0}.section.tinted{background:rgba(226,242,233,.48);border-block:1px solid rgba(13,39,31,.06)}.section-head{max-width:760px;margin:0 auto 32px;text-align:center}.section-head h2,.split h2{font-size:clamp(2rem,3.3vw,3.4rem);line-height:1;letter-spacing:-.055em;margin:0 0 14px;color:var(--pine)}.flow-strip{position:sticky;top:77px;z-index:45;background:rgba(255,253,247,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(13,39,31,.08)}.flow-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0}.breadcrumbs{display:flex;gap:8px;align-items:center;color:#60746a;font-weight:800;font-size:.9rem}.breadcrumbs span{padding:6px 10px;border-radius:999px;background:#fff;border:1px solid var(--line)}.progress{height:8px;background:#e7eee9;border-radius:999px;overflow:hidden;min-width:160px}.progress i{display:block;height:100%;width:25%;background:linear-gradient(90deg,var(--pine),#4db076)}.decision-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.decision-card,.topic-card,.action-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 10px 30px rgba(13,39,31,.06);text-decoration:none}.decision-card{cursor:pointer;transition:.2s}.decision-card:hover,.decision-card.selected{transform:translateY(-3px);border-color:#9bcfac;box-shadow:var(--shadow)}.decision-card span{font-size:1.7rem}.decision-card h3,.topic-card h3{margin:10px 0 8px;color:var(--pine);letter-spacing:-.02em}.decision-card p,.topic-card p{color:var(--muted);margin:0}.wizard{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:start}.wizard-panel{background:var(--pine);color:#fff;border-radius:36px;padding:28px;box-shadow:var(--shadow);position:sticky;top:150px}.wizard-panel h2{font-size:2.2rem;line-height:1;letter-spacing:-.05em;margin:0 0 12px}.wizard-panel p{color:#d9eee2}.wizard-steps{background:#fff;border:1px solid var(--line);border-radius:36px;padding:24px;box-shadow:var(--shadow)}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.choice{padding:18px;border:1px solid var(--line);border-radius:22px;background:#fbfdf9;cursor:pointer;text-align:left;font-weight:800;color:var(--pine)}.choice small{display:block;color:var(--muted);font-weight:600;margin-top:4px}.choice.active{background:#e8f7ec;border-color:#81c995}.path-output{display:none;margin-top:20px}.path-output.show{display:block}.path-list{display:grid;gap:10px;margin:18px 0}.path-step{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:20px;background:#f6fbf7;border:1px solid var(--line);text-decoration:none}.path-step i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--pine);color:#fff;font-style:normal;font-weight:900;flex:0 0 30px}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:start}.lane-grid{display:grid;gap:14px}.lane{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:22px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 24px rgba(13,39,31,.05)}.lane-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.tag{border-radius:999px;padding:7px 10px;background:#eef7f1;color:#35604f;font-weight:800;font-size:.82rem}.learn-shell{display:grid;grid-template-columns:320px 1fr;gap:24px;align-items:start}.learn-rail{position:sticky;top:140px;background:#fff;border:1px solid var(--line);border-radius:30px;padding:18px;box-shadow:0 10px 26px rgba(13,39,31,.06)}.rail-button{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:18px;padding:13px 14px;font-weight:850;color:#4b5d55;cursor:pointer}.rail-button.active,.rail-button:hover{background:#eaf7ee;color:var(--pine)}.topic-stream{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.topic-card{cursor:pointer}.topic-card .branch{display:inline-flex;border-radius:999px;background:#eff7f2;color:#3c6c58;padding:6px 9px;font-weight:850;font-size:.78rem}.topic-view{display:none;background:#fff;border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow);overflow:hidden}.topic-view.show{display:block}.topic-hero{padding:34px;background:linear-gradient(135deg,#f7fff8,#eef7ff)}.topic-hero h1{font-size:clamp(2.1rem,4vw,4.4rem);line-height:.98;letter-spacing:-.065em;color:var(--pine);margin:8px 0 18px}.topic-body{padding:34px;display:grid;gap:22px;max-width:850px}.answer-lead{font-size:1.25rem;color:#263832}.info-card{padding:22px;border-radius:24px;background:#f5fbf7;border:1px solid var(--line)}.variable-box{padding:22px;border-radius:24px;background:var(--amber);border:1px solid #efd899}.key-list{display:grid;gap:10px}.key-list li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px}.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.planner-grid,.ask-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}.planner-form,.chat-shell{background:#fff;border:1px solid var(--line);border-radius:36px;padding:24px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-grid label{font-weight:800;color:var(--pine)}.form-grid input,.search,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:#fff;margin-top:6px}.planner-results{background:var(--pine);color:#fff;border-radius:36px;padding:28px;box-shadow:var(--shadow);position:sticky;top:140px}.monthly-big{font-size:clamp(3rem,7vw,5.5rem);line-height:.9;font-weight:950;letter-spacing:-.07em}.breakdown{display:grid;gap:8px;margin:24px 0}.breakdown div{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.16);padding-bottom:8px}.comfort{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:22px;padding:18px;margin:16px 0}.chat-thread{min-height:260px;background:#f8fbf8;border:1px solid var(--line);border-radius:24px;padding:16px;display:grid;gap:12px;margin-bottom:14px}.message{padding:14px 16px;border-radius:20px;background:#fff;border:1px solid var(--line)}.message.user{background:#e8f7ec}.prompt-panel{display:grid;gap:14px}.prompt-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px}.pulse-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.footer{padding:60px 0 30px;background:#10251d;color:#eef8f1}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}.footer a{display:block;color:#dcebe2;text-decoration:none;margin:8px 0}.footer p{color:#bfd0c7}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:20px;color:#bfd0c7}.sticky-next{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:80;width:min(720px,calc(100% - 24px));display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(13,39,31,.92);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:10px 12px 10px 18px;color:#fff;box-shadow:0 22px 48px rgba(0,0,0,.24)}.sticky-next b{font-size:.92rem}.sticky-next span{color:#c8dfd2;font-size:.82rem}.drawer{display:none}.empty{padding:24px;border-radius:24px;background:#fff;border:1px dashed var(--line);color:var(--muted)}@media(max-width:920px){.nav-links{display:none}.menu-btn{display:block}.hero-grid,.wizard,.split,.learn-shell,.planner-grid,.ask-layout,.footer-grid{grid-template-columns:1fr}.decision-grid,.topic-stream,.pulse-grid{grid-template-columns:1fr 1fr}.hero{padding:58px 0 42px}.wizard-panel,.learn-rail,.planner-results{position:relative;top:auto}.drawer.open{display:block;position:fixed;inset:0;z-index:99}.drawer-bg{position:absolute;inset:0;background:rgba(0,0,0,.28);border:0}.drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(360px,88vw);background:#fff;padding:22px;box-shadow:var(--shadow)}.drawer-links{display:grid;gap:8px;margin:24px 0}.drawer-links a{text-decoration:none;padding:14px;border-radius:18px;background:#f6fbf7}.drawer-top{display:flex;justify-content:space-between;align-items:center}.drawer-close{border:0;background:#f2f6f2;border-radius:12px;padding:10px}}@media(max-width:640px){.wrap{width:min(100% - 24px,var(--max))}.hero h1{font-size:3.1rem}.decision-grid,.choice-grid,.topic-stream,.action-grid,.pulse-grid,.form-grid{grid-template-columns:1fr}.flow-inner{align-items:flex-start;flex-direction:column}.breadcrumbs{overflow:auto;max-width:100%;padding-bottom:2px}.sticky-next{border-radius:22px;align-items:flex-start}.sticky-next .btn{padding:10px 12px}.footer-bottom{display:block}.lane{grid-template-columns:1fr}.hero-actions .btn{width:100%}}/* v2.1 connection + viewport QA patch */
#guided,#explore,#path-builder,.topic-view{scroll-margin-top:160px}.card-actions{margin-top:14px;color:var(--pine);font-weight:900}.topic-card:focus{outline:3px solid #9bd7ad;outline-offset:3px}.lane-tags a,.lane-tags span{border-radius:999px;padding:7px 10px;background:#eef7f1;color:#35604f;font-weight:800;font-size:.82rem;text-decoration:none}.lane-tags a:hover{background:#dff5e7}.decision-card{min-height:168px;display:block}.topic-view.show{animation:topicIn .22s ease-out}@keyframes topicIn{from{opacity:.25;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

/* v3 interaction wiring fixes */
.path-step{width:100%;border:0;background:#fff;text-align:left;cursor:pointer;font:inherit}
.path-step:hover,.topic-card:hover,.action-card:hover,.decision-card:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(16,37,29,.12)}
.mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}
.mode-tabs button{border:1px solid rgba(16,37,29,.14);background:#fff;border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer;color:#10251d}
.mode-tabs button.active{background:#10251d;color:#fff}
.topic-view.show{display:block;min-height:70vh;scroll-margin-top:140px}
#explore,#guided,#path-output,.topic-view{scroll-margin-top:140px}
.topic-card,.decision-card,.action-card,.lane,.path-step,.rail-button,.choice{transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
.lane-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(16,37,29,.08);font-size:22px;margin-bottom:8px}
.breakdown{display:grid;gap:8px;margin:18px 0}.breakdown span{display:flex;justify-content:space-between;border-bottom:1px solid rgba(16,37,29,.08);padding-bottom:6px}
.message.pending{opacity:.72}.message.user{background:#10251d;color:#fff}.message.user p{color:#fff}
.sticky-next a{white-space:nowrap}
@media(max-width:760px){.mode-tabs{position:sticky;top:108px;z-index:7;background:#fbfaf6;padding:8px 0}.topic-view.show{min-height:85vh}.sticky-next{gap:10px}.sticky-next span{display:inline-block;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* v4 production content system */
.meta-pill{font-size:.75rem;border:1px solid rgba(16,37,29,.14);background:rgba(255,255,255,.7);border-radius:999px;padding:5px 9px;color:#315247}.production-badge{display:inline-flex;border-radius:999px;padding:6px 10px;background:#ecf7f0;color:#173d2b;font-weight:700;font-size:.78rem}.answer-lead{font-size:1.22rem;line-height:1.65}.topic-body{max-width:900px}.variable-box{border-left:5px solid #d9a441}.key-list li{margin-bottom:10px}

/* v6 expert-avatar additions */
.audience-pill{display:inline-block;border-radius:999px;padding:5px 10px;font-size:.74rem;font-weight:850;letter-spacing:.02em;text-transform:uppercase;border:1px solid transparent;margin-right:6px}
.audience-pill.buyer{background:#e8f4ff;color:#10497a;border-color:#bcdcfa}
.audience-pill.loan_officer{background:#fff1d8;color:#7a4810;border-color:#f5d496}
.audience-pill.both{background:#e9f6eb;color:#1f5c2c;border-color:#bbe2c0}
.cadence-pill{display:inline-block;border-radius:999px;padding:4px 9px;font-size:.7rem;font-weight:800;background:#f0f4f1;color:#3a4f44;border:1px solid #d5e0d8;margin-left:6px;text-transform:lowercase}
.cadence-pill.daily{background:#fee9e2;color:#80331a;border-color:#f6c2b1}
.cadence-pill.weekly{background:#fff4d8;color:#7a5210;border-color:#f1d692}
.cadence-pill.monthly{background:#e6f0ff;color:#1d4c8c;border-color:#b9d2fa}
.cadence-pill.quarterly{background:#ecf2ff;color:#3b3d8a;border-color:#c8cdf2}
.cadence-pill.annually{background:#eee;color:#444;border-color:#ccc}
.audience-toggle{display:inline-flex;background:#f4f7f5;border:1px solid var(--line);border-radius:999px;padding:4px;gap:4px;margin:0 0 12px}
.audience-toggle button{background:transparent;border:0;border-radius:999px;padding:8px 16px;font-weight:800;font-size:.88rem;color:#506257;cursor:pointer}
.audience-toggle button.active{background:var(--pine);color:#fff}
.sponsored-card{position:relative;border:1px dashed #d6c79e;background:linear-gradient(135deg,#fffaee,#fff7e0)}
.sponsored-tag{position:absolute;top:14px;right:14px;background:#7a5210;color:#fff;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:4px 9px;border-radius:999px}
.lopro-locked{position:relative;background:linear-gradient(180deg,#fff,#f6fbf7);border:1px solid var(--line);border-radius:24px;padding:24px;overflow:hidden}
.lopro-locked::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.96) 78%);pointer-events:none}
.lopro-locked .lock-cta{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:2}
.lopro-locked h3{color:var(--pine);margin:0 0 12px}
.lopro-locked .lock-icon{position:absolute;top:18px;right:18px;font-size:1.2rem;background:var(--pine);color:#fff;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;z-index:2}
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}
.tier-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 14px 32px rgba(13,39,31,.08);position:relative;display:flex;flex-direction:column;gap:14px}
.tier-card.featured{border-color:#9bcfac;background:linear-gradient(180deg,#f4fbf6,#fff);transform:translateY(-4px)}
.tier-card .ribbon{position:absolute;top:-12px;right:22px;background:var(--pine);color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.08em;padding:5px 11px;border-radius:999px;text-transform:uppercase}
.tier-card h3{color:var(--pine);margin:0;letter-spacing:-.02em;font-size:1.4rem}
.tier-card .price{font-size:2.4rem;font-weight:900;color:var(--pine);letter-spacing:-.05em}
.tier-card .price small{font-size:.92rem;color:var(--muted);font-weight:700}
.tier-card ul{list-style:none;padding:0;margin:8px 0;display:grid;gap:8px;color:#3c4d45;font-size:.94rem}
.tier-card li::before{content:"✓ ";color:#3a8c52;font-weight:900;margin-right:4px}
.avatar-hero{padding:84px 0 40px;background:linear-gradient(155deg,#f0f8f3 0,#fffdf7 60%,#fff8e9 100%);border-bottom:1px solid var(--line)}
.avatar-portrait{width:120px;height:120px;border-radius:50%;background:linear-gradient(145deg,var(--pine),#3a7757);display:grid;place-items:center;color:#fff;font-size:2.6rem;font-weight:900;box-shadow:0 18px 40px rgba(13,39,31,.22);margin-bottom:24px}
.years-badge{display:inline-block;background:var(--pine);color:#fff;font-weight:900;font-size:.86rem;padding:7px 14px;border-radius:999px;letter-spacing:.05em;text-transform:uppercase}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0}
.value-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 8px 24px rgba(13,39,31,.06)}
.value-card h3{margin:0 0 8px;color:var(--pine);font-size:1.1rem;letter-spacing:-.02em}
.value-card p{margin:0;color:#4a5b53;font-size:.95rem;line-height:1.55}
.cadence-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0}
.cadence-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;text-align:center}
.cadence-card b{display:block;color:var(--pine);font-size:1.05rem;letter-spacing:-.02em;margin-bottom:4px;text-transform:capitalize}
.cadence-card small{color:var(--muted);font-size:.82rem;line-height:1.4;display:block}
.lo-signup{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow);max-width:560px;margin:32px auto}
.lo-signup h3{margin:0 0 8px;color:var(--pine)}
.lo-signup .form-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.lo-signup input,.lo-signup select{flex:1;min-width:180px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}
.lo-signup .form-msg{margin-top:10px;padding:10px 12px;border-radius:12px;font-size:.9rem;display:none}
.lo-signup .form-msg.show{display:block}
.lo-signup .form-msg.ok{background:#e8f7ec;color:#1b5a30;border:1px solid #a9d6b6}
.lo-signup .form-msg.err{background:#fde9e2;color:#7a2a14;border:1px solid #f1bba6}
.expert-callout{background:linear-gradient(135deg,#10251d,#1d4737);color:#fff;border-radius:32px;padding:32px;margin:24px 0;box-shadow:var(--shadow)}
.expert-callout h2{color:#fff;margin:0 0 12px;letter-spacing:-.04em}
.expert-callout p{color:#cfe6d8;margin:0 0 16px}
.expert-callout .btn-secondary{background:#fff;color:var(--pine)}
.lopro-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0}
.lopro-feature{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px}
.lopro-feature h3{color:var(--pine);margin:0 0 8px;font-size:1.1rem}
.lopro-feature .feature-icon{font-size:1.6rem;margin-bottom:10px;display:block}
@media(max-width:920px){.tier-grid,.lopro-feature-grid,.values-grid{grid-template-columns:1fr}.cadence-grid{grid-template-columns:repeat(2,1fr)}.tier-card.featured{transform:none}}

/* v6.1 B2B unlock state for paid members */
.lopro-locked.unlocked::after{display:none}
.lopro-locked.unlocked .lock-icon{background:#3a8c52;content:"✓"}
.lopro-locked.unlocked .lock-icon::after{content:"✓";display:none}
.lopro-locked.unlocked .lock-cta{display:none}
.lopro-locked.unlocked{background:#fff;border-color:#bce0c7}

/* v6.2 professional polish */
/* Cap oversized hero H1s so they don't dominate */
.hero h1, .page-title { font-size: clamp(2.4rem, 4.4vw, 3.8rem); letter-spacing: -.045em; line-height: 1.04; }
.hero { padding: 64px 0 50px; }
@media (max-width: 640px) {
  .hero h1, .page-title { font-size: clamp(2rem, 8vw, 2.6rem); }
  .hero { padding: 44px 0 32px; }
}

/* WCAG touch target: min 44px tap area on mobile nav */
@media (max-width: 920px) {
  .drawer-links a { min-height: 48px; display: flex; align-items: center; padding: 12px 16px; font-weight: 700; }
  .nav-links a { min-height: 44px; padding: 12px 14px; }
  .footer a { min-height: 36px; display: inline-flex; align-items: center; padding: 6px 0; }
}
.menu-btn { min-width: 48px; min-height: 48px; }

/* Pagination "show more" button styling */
.show-more-wrap { grid-column: 1 / -1; text-align: center; padding: 24px 0 8px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.show-more-wrap .btn { min-width: 220px; }
.muted-line { color: var(--muted); font-size: .88rem; margin: 0; }

/* Empty state inside topic stream — span full grid */
#topic-stream .empty { grid-column: 1 / -1; }

/* Topic card meta: cleaner branch+audience layout */
.topic-card .card-meta { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 8px; }

/* Sticky-next: tighter, less shouty */
.sticky-next { padding: 8px 10px 8px 16px; }
.sticky-next b { font-weight: 800; }

/* Page-spec: avatar hero portrait sized down on mobile */
@media (max-width: 640px) {
  .avatar-portrait { width: 88px; height: 88px; font-size: 2rem; margin-bottom: 16px; }
  .avatar-hero { padding: 50px 0 30px; }
}

/* Pulse cards: a real grid on /news (not 3 hardcoded items) */
#pulse-grid .topic-card .card-actions, #pulse-grid .topic-card a { margin-top: auto; }

/* Fix for .topic-stream when only 1-2 items — left-align rather than stretch */
.topic-stream { align-items: start; }

/* ==========================================================================
   v6.3 DESIGN SYSTEM REFRESH — purely visual, no content changes
   Goals: unified scale, modern restraint, distinguished typography,
          coherent surfaces, brand-aligned interaction states.
   ========================================================================== */

:root {
  /* Refined design tokens */
  --pine: #0d271f;
  --pine-2: #143b30;
  --pine-3: #1f4f3e;
  --pine-soft: #2a6b54;
  --moss: #3a8c52;
  --sage: #b8d4c0;
  --mint: #e6f3eb;
  --cream: #faf6ec;
  --paper: #fdfbf3;
  --ink: #14201c;
  --ink-2: #2a3a32;
  --muted: #6a7872;
  --muted-2: #8a988f;
  --line: #e1e8e3;
  --line-2: #ecf1ed;
  --amber: #f4d699;
  --amber-soft: #fef5dc;

  /* 4px-based radius scale */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 20px;
  --r-2xl: 24px;
  --r-pill: 999px;

  /* 3-step shadow ramp */
  --shadow-1: 0 1px 2px rgba(13, 39, 31, 0.06), 0 1px 3px rgba(13, 39, 31, 0.04);
  --shadow-2: 0 4px 12px rgba(13, 39, 31, 0.06), 0 2px 6px rgba(13, 39, 31, 0.04);
  --shadow-3: 0 16px 40px rgba(13, 39, 31, 0.10), 0 6px 16px rgba(13, 39, 31, 0.06);

  /* 4px-based spacing */
  --s-1: 4px;  --s-2: 8px;  --s-3: 12px;  --s-4: 16px;
  --s-5: 20px; --s-6: 24px; --s-8: 32px;  --s-10: 40px;
  --s-12: 48px; --s-16: 64px; --s-20: 80px; --s-24: 96px;
}

/* Typography refinement — modern restraint */
body {
  background: var(--paper);
  color: var(--ink);
  font-feature-settings: "ss01", "cv11", "kern";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: -0.005em;
}

/* Base section rhythm — ONE unified vertical scale */
.section { padding: var(--s-16) 0; }
.section + .section { padding-top: 0; }
@media (max-width: 760px) { .section { padding: var(--s-12) 0; } }

/* Hero rhythm — calmer, more confident */
.hero, .avatar-hero {
  padding: var(--s-16) 0 var(--s-12);
  position: relative;
  overflow: hidden;
}
@media (max-width: 760px) { .hero, .avatar-hero { padding: var(--s-12) 0 var(--s-10); } }

/* Replace the bright green radial blob with a subtle on-brand gradient mesh */
.hero::before {
  content: '';
  position: absolute;
  inset: -20% -10% auto auto;
  width: 60vw; height: 60vw;
  max-width: 700px; max-height: 700px;
  background: radial-gradient(ellipse at 70% 30%, rgba(184, 212, 192, 0.35), transparent 60%);
  pointer-events: none;
  z-index: 0;
}
.hero::after {
  content: '';
  position: absolute;
  bottom: -30%;
  left: -10%;
  width: 40vw; height: 40vw;
  max-width: 500px; max-height: 500px;
  background: radial-gradient(circle, rgba(244, 214, 153, 0.18), transparent 60%);
  pointer-events: none;
  z-index: 0;
}
.hero > .wrap, .avatar-hero > .wrap { position: relative; z-index: 1; }

/* Add subtle hero gradient to ALL pages, not just home */
body[data-page="homebuying"] .hero,
body[data-page="learn"] .hero,
body[data-page="mortgages"] .hero,
body[data-page="ask-learn"] .hero,
body[data-page="news"] .hero,
body[data-page="contact"] .hero,
body[data-page="privacy"] .hero,
body[data-page="terms"] .hero,
body[data-page="404"] .hero {
  background: linear-gradient(180deg, var(--mint) 0%, transparent 60%);
}

/* Headlines — tighter, more confident */
.hero h1, .page-title {
  font-size: clamp(2rem, 4.2vw, 3.4rem);
  letter-spacing: -0.035em;
  line-height: 1.05;
  font-weight: 800;
  color: var(--pine);
}
@media (max-width: 640px) {
  .hero h1, .page-title { font-size: clamp(1.75rem, 7.5vw, 2.4rem); letter-spacing: -0.03em; }
}

.section-head h2,
.split h2,
section h2 {
  font-size: clamp(1.5rem, 2.8vw, 2.25rem);
  letter-spacing: -0.025em;
  line-height: 1.15;
  font-weight: 800;
  color: var(--pine);
  margin: 0 0 var(--s-3);
}

h3 {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  color: var(--pine);
}

.hero-lead {
  font-size: clamp(1rem, 1.4vw, 1.18rem);
  color: var(--ink-2);
  line-height: 1.55;
  max-width: 640px;
  font-weight: 400;
}

/* Modern eyebrow — drop the dated tracking */
.kicker {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 700;
  font-size: 0.82rem;
  color: var(--pine-soft);
  margin: 0 0 var(--s-3);
  display: inline-flex;
  align-items: center;
  gap: var(--s-2);
}
.kicker::before {
  content: '';
  width: 18px;
  height: 1.5px;
  background: currentColor;
  border-radius: 2px;
  display: inline-block;
}

/* Unified surface system — one card style, three sizes */
.decision-card,
.topic-card,
.action-card,
.lopro-feature,
.value-card,
.tier-card,
.cadence-card,
.lane,
.path-node,
.prompt-card,
.info-card,
.variable-box,
.hero-panel,
.lo-signup,
.planner-form,
.chat-shell,
.wizard-steps,
.learn-rail {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-2xl);
  box-shadow: var(--shadow-1);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

/* Interactive cards lift on hover */
.decision-card,
.topic-card,
.action-card {
  cursor: pointer;
}
.decision-card:hover,
.topic-card:hover,
.action-card:hover,
.path-step:hover {
  transform: translateY(-2px);
  border-color: var(--sage);
  box-shadow: var(--shadow-2);
}
.decision-card:focus-visible,
.topic-card:focus-visible,
.action-card:focus-visible,
.path-step:focus-visible {
  outline: 2px solid var(--moss);
  outline-offset: 3px;
}

/* Smaller surfaces — pills, tags, badges */
.tag, .meta-pill, .audience-pill, .cadence-pill, .branch {
  border-radius: var(--r-pill);
  font-weight: 600;
  font-size: 0.78rem;
  letter-spacing: 0;
  padding: 4px 10px;
  border: 1px solid transparent;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.branch {
  background: var(--mint);
  color: var(--pine-3);
  font-weight: 700;
}

.audience-pill.buyer { background: #e8f1fc; color: #0e3f72; border-color: #c4dbf3; }
.audience-pill.loan_officer { background: #fbeed4; color: #6a3f0d; border-color: #efd596; }
.audience-pill.both { background: var(--mint); color: var(--pine-3); border-color: var(--sage); }
.cadence-pill { background: #f1f4f2; color: var(--ink-2); border-color: var(--line); }

/* Buttons — refined system */
.btn {
  border-radius: var(--r-md);
  padding: 11px 20px;
  font-weight: 600;
  font-size: 0.95rem;
  letter-spacing: -0.005em;
  transition: background 180ms ease, transform 120ms ease, box-shadow 180ms ease, color 180ms ease;
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--s-2);
  border: 1px solid transparent;
  cursor: pointer;
  min-height: 44px;
}
.btn-primary {
  background: var(--pine);
  color: #fff;
  box-shadow: var(--shadow-2);
}
.btn-primary:hover {
  background: var(--pine-2);
  transform: translateY(-1px);
  box-shadow: var(--shadow-3);
}
.btn-secondary {
  background: #fff;
  color: var(--pine);
  border-color: var(--line);
}
.btn-secondary:hover {
  background: var(--mint);
  border-color: var(--sage);
  transform: translateY(-1px);
}
.btn-small {
  padding: 8px 14px;
  font-size: 0.88rem;
  min-height: 36px;
}

/* Form inputs — match card system */
.form-grid input,
.search,
textarea,
select,
.lo-signup input,
.lo-signup select {
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: 11px 14px;
  background: #fff;
  font-size: 0.95rem;
  color: var(--ink);
  transition: border-color 180ms ease, box-shadow 180ms ease;
  min-height: 44px;
}
.form-grid input:hover, .search:hover, textarea:hover, select:hover {
  border-color: var(--muted-2);
}
.form-grid input:focus, .search:focus, textarea:focus, select:focus,
.lo-signup input:focus, .lo-signup select:focus {
  outline: none;
  border-color: var(--moss);
  box-shadow: 0 0 0 4px rgba(58, 140, 82, 0.12);
}
.form-grid label {
  font-weight: 600;
  font-size: 0.88rem;
  color: var(--ink-2);
  letter-spacing: -0.005em;
}

/* Site nav — refined */
.site-nav {
  background: rgba(253, 251, 243, 0.85);
  backdrop-filter: saturate(160%) blur(20px);
  -webkit-backdrop-filter: saturate(160%) blur(20px);
  border-bottom: 1px solid var(--line-2);
}
.nav-inner { min-height: 68px; }
.brand-mark {
  width: 38px; height: 38px;
  border-radius: var(--r-md);
  font-size: 0.92rem;
  background: linear-gradient(135deg, var(--pine), var(--pine-3));
  box-shadow: var(--shadow-1);
}
.brand strong { font-size: 1.02rem; letter-spacing: -0.015em; }
.brand small { font-size: 0.72rem; color: var(--muted); }
.nav-links a {
  font-size: 0.91rem;
  color: var(--ink-2);
  font-weight: 500;
  padding: 8px 12px;
  border-radius: var(--r-md);
  transition: background 150ms ease, color 150ms ease;
}
.nav-links a:hover, .nav-links a.active {
  background: var(--mint);
  color: var(--pine);
  font-weight: 600;
}

/* Drawer (mobile menu) refresh */
@media (max-width: 920px) {
  .drawer-panel { padding: var(--s-6); }
  .drawer-links a {
    background: var(--mint);
    color: var(--pine);
    font-weight: 600;
    border-radius: var(--r-md);
    padding: 14px 16px;
    min-height: 48px;
    display: flex;
    align-items: center;
  }
  .drawer-links a:hover { background: var(--sage); }
}

/* Flow-strip — quieter, more refined */
.flow-strip {
  background: rgba(253, 251, 243, 0.85);
  backdrop-filter: saturate(160%) blur(20px);
  -webkit-backdrop-filter: saturate(160%) blur(20px);
  border-bottom: 1px solid var(--line-2);
}
.flow-inner { padding: 10px 0; }
.breadcrumbs span {
  background: transparent;
  border: 0;
  padding: 4px 8px;
  color: var(--muted);
  font-weight: 500;
  font-size: 0.82rem;
  letter-spacing: 0;
}
.breadcrumbs span:not(:last-child)::after {
  content: '/';
  margin-left: 12px;
  color: var(--line);
  font-weight: 400;
}
.breadcrumbs span:last-child { color: var(--pine); font-weight: 600; }
.progress {
  height: 3px;
  background: var(--line);
  border-radius: 999px;
  min-width: 120px;
  overflow: hidden;
}
.progress i {
  background: linear-gradient(90deg, var(--pine), var(--moss));
  border-radius: 999px;
  transition: width 400ms ease;
}

/* Topic detail view — on-brand gradient (no more random blue) */
.topic-view {
  border-radius: var(--r-2xl);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-2);
  overflow: hidden;
}
.topic-hero {
  padding: var(--s-8) var(--s-8) var(--s-6);
  background: linear-gradient(135deg, var(--mint) 0%, var(--paper) 70%);
  border-bottom: 1px solid var(--line-2);
}
.topic-hero h1 {
  font-size: clamp(1.6rem, 2.8vw, 2.1rem);
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: var(--pine);
  margin: var(--s-3) 0 var(--s-4);
  font-weight: 800;
}
.topic-body {
  padding: var(--s-8);
  display: grid;
  gap: var(--s-5);
  max-width: 780px;
}
.topic-body h3 { font-size: 1.05rem; }
.answer-lead {
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--ink-2);
  font-weight: 400;
}
.info-card { background: var(--mint); border-color: var(--sage); padding: var(--s-5); }
.variable-box {
  background: var(--amber-soft);
  border-color: var(--amber);
  border-left: 3px solid #c89730;
  padding: var(--s-5);
  border-radius: var(--r-md);
}
.key-list li {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: var(--s-4);
  font-size: 0.95rem;
  line-height: 1.55;
}

/* Decision-grid / topic-stream / action-grid — consistent gap */
.decision-grid, .topic-stream, .action-grid, .pulse-grid, .lopro-feature-grid, .values-grid, .cadence-grid, .tier-grid {
  gap: var(--s-4);
}

/* Icon system — replace emoji with actual icon spans we'll style */
.decision-card span:first-child,
.lane-icon,
.lopro-feature .feature-icon,
.cadence-card b::before {
  /* visually hide the emoji glyphs and show our own */
  font-size: 0;
  line-height: 0;
  display: inline-block;
  width: 36px; height: 36px;
  border-radius: var(--r-md);
  background: var(--mint);
  color: var(--pine);
  position: relative;
  margin-bottom: var(--s-3);
}
.decision-card span:first-child::after,
.lane-icon::after,
.lopro-feature .feature-icon::after {
  content: '';
  position: absolute;
  inset: 8px;
  background: currentColor;
  -webkit-mask: var(--icon-mask, none) center/20px no-repeat;
  mask: var(--icon-mask, none) center/20px no-repeat;
}

/* Default icon if none specified — a clean dot */
.decision-card span:first-child::before,
.lane-icon::before,
.lopro-feature .feature-icon::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: var(--r-md);
  background: linear-gradient(135deg, var(--mint), var(--sage));
  opacity: 0.5;
}

/* Decision cards */
.decision-card {
  padding: var(--s-6);
  min-height: 160px;
  display: flex;
  flex-direction: column;
  gap: var(--s-2);
}
.decision-card h3 {
  font-size: 1.05rem;
  margin: var(--s-2) 0 var(--s-1);
  color: var(--pine);
}
.decision-card p {
  font-size: 0.92rem;
  color: var(--muted);
  line-height: 1.5;
}

/* Topic cards */
.topic-card {
  padding: var(--s-5);
  display: flex;
  flex-direction: column;
  gap: var(--s-2);
}
.topic-card h3 {
  font-size: 1.02rem;
  margin: var(--s-1) 0;
  letter-spacing: -0.015em;
  line-height: 1.3;
}
.topic-card p {
  font-size: 0.9rem;
  color: var(--muted);
  line-height: 1.5;
}
.topic-card .card-actions {
  margin-top: auto;
  color: var(--moss);
  font-weight: 600;
  font-size: 0.88rem;
  padding-top: var(--s-2);
}

/* Action cards (CTA grid in topic view) */
.action-card {
  padding: var(--s-5);
  text-decoration: none;
}
.action-card b {
  display: block;
  font-size: 0.98rem;
  color: var(--pine);
  margin-bottom: var(--s-1);
  letter-spacing: -0.01em;
}
.action-card p {
  font-size: 0.86rem;
  color: var(--muted);
  margin: 0;
}

/* Tier cards (LO Pro pricing) */
.tier-card {
  padding: var(--s-8);
  display: flex; flex-direction: column;
  gap: var(--s-3);
}
.tier-card.featured {
  border-color: var(--sage);
  background: linear-gradient(180deg, var(--mint) 0%, #fff 30%);
  box-shadow: var(--shadow-3);
  transform: translateY(-4px);
}
.tier-card .ribbon {
  background: var(--moss);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 5px 12px;
  border-radius: var(--r-pill);
  text-transform: uppercase;
}
.tier-card .price {
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: var(--pine);
  line-height: 1;
}
.tier-card .price small {
  font-size: 0.92rem;
  color: var(--muted);
  font-weight: 500;
}
.tier-card ul { font-size: 0.92rem; color: var(--ink-2); }

/* Avatar hero — refined portrait */
.avatar-portrait {
  width: 96px; height: 96px;
  border-radius: var(--r-pill);
  background: linear-gradient(135deg, var(--pine), var(--pine-3));
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  box-shadow: var(--shadow-2);
  border: 3px solid #fff;
}
.years-badge {
  background: var(--pine);
  color: #fff;
  border-radius: var(--r-pill);
  padding: 6px 14px;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}

/* Expert callout (the dark-pine CTA panels) */
.expert-callout {
  background: linear-gradient(135deg, var(--pine) 0%, var(--pine-3) 100%);
  border-radius: var(--r-2xl);
  padding: var(--s-8) var(--s-8);
  box-shadow: var(--shadow-3);
  position: relative;
  overflow: hidden;
}
.expert-callout::before {
  content: '';
  position: absolute;
  top: -30%; right: -10%;
  width: 50%; height: 200%;
  background: radial-gradient(circle, rgba(184, 212, 192, 0.12), transparent 60%);
  pointer-events: none;
}
.expert-callout h2 { color: #fff; margin: 0 0 var(--s-3); position: relative; }
.expert-callout p { color: var(--sage); margin: 0 0 var(--s-4); position: relative; line-height: 1.55; }
.expert-callout .btn-secondary { background: #fff; color: var(--pine); border-color: transparent; }

/* Footer — more breathing room, refined */
.footer {
  padding: var(--s-16) 0 var(--s-8);
  background: var(--pine);
  color: var(--mint);
}
.footer-grid { gap: var(--s-8); }
.footer h3 {
  color: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 var(--s-3);
}
.footer a {
  color: var(--sage);
  font-size: 0.92rem;
  margin: 6px 0;
  font-weight: 400;
  transition: color 150ms ease;
}
.footer a:hover { color: #fff; }
.footer p { color: var(--sage); font-size: 0.92rem; line-height: 1.55; }
.footer-bottom {
  margin-top: var(--s-12);
  padding-top: var(--s-5);
  border-top: 1px solid rgba(255,255,255,0.10);
  color: var(--sage);
  font-size: 0.82rem;
}

/* Lane (situation) cards on /homebuying */
.lane {
  padding: var(--s-6);
  border-radius: var(--r-2xl);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--s-4);
  align-items: start;
}
.lane h3 { margin: var(--s-2) 0; font-size: 1.05rem; color: var(--pine); }
.lane p { color: var(--muted); font-size: 0.92rem; line-height: 1.5; margin: 0 0 var(--s-3); }

/* Wizard panel (path builder) */
.wizard-panel {
  background: linear-gradient(135deg, var(--pine) 0%, var(--pine-3) 100%);
  color: #fff;
  border-radius: var(--r-2xl);
  padding: var(--s-8);
  box-shadow: var(--shadow-3);
  border: 0;
  position: relative;
  overflow: hidden;
}
.wizard-panel::before {
  content: '';
  position: absolute;
  top: -40%; right: -20%;
  width: 80%; height: 200%;
  background: radial-gradient(circle, rgba(184, 212, 192, 0.10), transparent 60%);
}
.wizard-panel h2 { color: #fff; font-size: 1.6rem; position: relative; }
.wizard-panel p { color: var(--sage); position: relative; line-height: 1.55; }

/* Choice cards in wizard */
.choice {
  padding: var(--s-4) var(--s-5);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  background: #fff;
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--ink);
  letter-spacing: -0.005em;
  cursor: pointer;
  transition: all 180ms ease;
}
.choice small {
  display: block;
  color: var(--muted);
  font-weight: 400;
  margin-top: 4px;
  font-size: 0.85rem;
}
.choice:hover { border-color: var(--sage); background: var(--mint); }
.choice.active {
  background: var(--pine);
  color: #fff;
  border-color: var(--pine);
}
.choice.active small { color: var(--sage); }

/* Path-step (the numbered list inside wizard) */
.path-step {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: var(--s-4);
  display: flex;
  gap: var(--s-3);
  align-items: flex-start;
}
.path-step i {
  background: var(--pine);
  color: #fff;
  width: 28px; height: 28px;
  border-radius: var(--r-pill);
  font-size: 0.82rem;
  flex: 0 0 28px;
  font-style: normal;
  font-weight: 700;
  display: grid;
  place-items: center;
}
.path-step b { font-size: 0.95rem; color: var(--pine); display: block; }
.path-step small { color: var(--muted); font-size: 0.86rem; line-height: 1.45; display: block; margin-top: 2px; }

/* Audience toggle (segmented control) */
.audience-toggle {
  display: inline-flex;
  background: var(--line-2);
  padding: 3px;
  border-radius: var(--r-md);
  gap: 2px;
}
.audience-toggle button {
  background: transparent;
  border: 0;
  border-radius: calc(var(--r-md) - 3px);
  padding: 8px 16px;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--muted);
  cursor: pointer;
  transition: all 180ms ease;
  min-height: 36px;
}
.audience-toggle button:hover { color: var(--pine); }
.audience-toggle button.active {
  background: #fff;
  color: var(--pine);
  box-shadow: var(--shadow-1);
}

/* Mode tabs (Guided/Explore/Continue) — same family as audience toggle */
.mode-tabs {
  display: inline-flex;
  background: var(--line-2);
  padding: 3px;
  border-radius: var(--r-md);
  gap: 2px;
  margin: 0 0 var(--s-6);
}
.mode-tabs button {
  background: transparent;
  border: 0;
  border-radius: calc(var(--r-md) - 3px);
  padding: 8px 16px;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--muted);
  cursor: pointer;
  transition: all 180ms ease;
  min-height: 36px;
}
.mode-tabs button:hover { color: var(--pine); }
.mode-tabs button.active {
  background: var(--pine);
  color: #fff;
}

/* Learn rail (left sidebar with branches) */
.learn-rail {
  padding: var(--s-4);
  border-radius: var(--r-2xl);
  box-shadow: var(--shadow-1);
  position: sticky;
  top: 92px;
}
.rail-button {
  display: block;
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  border-radius: var(--r-md);
  padding: 10px 12px;
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--ink-2);
  cursor: pointer;
  transition: all 150ms ease;
  letter-spacing: -0.005em;
}
.rail-button small { color: var(--muted); font-weight: 400; margin-left: 4px; font-size: 0.82rem; }
.rail-button:hover { background: var(--mint); color: var(--pine); }
.rail-button.active {
  background: var(--pine);
  color: #fff;
  font-weight: 600;
}
.rail-button.active small { color: var(--sage); }

/* Show-more pagination button */
.show-more-wrap {
  grid-column: 1 / -1;
  text-align: center;
  padding: var(--s-6) 0 var(--s-2);
  display: flex; flex-direction: column;
  align-items: center;
  gap: var(--s-2);
}
.muted-line {
  color: var(--muted);
  font-size: 0.85rem;
  margin: 0;
}

/* Empty state */
.empty {
  padding: var(--s-8);
  border-radius: var(--r-2xl);
  background: #fff;
  border: 1px dashed var(--line);
  color: var(--muted);
  text-align: center;
}
.empty h3 { margin: 0 0 var(--s-2) 0; color: var(--pine); }
.empty p { margin: var(--s-2) 0; }

/* Planner results panel (right column) */
.planner-results {
  background: linear-gradient(135deg, var(--pine) 0%, var(--pine-3) 100%);
  color: #fff;
  border-radius: var(--r-2xl);
  padding: var(--s-8);
  box-shadow: var(--shadow-3);
  position: sticky;
  top: 92px;
  border: 0;
  overflow: hidden;
}
.planner-results::before {
  content: '';
  position: absolute;
  top: -30%; right: -20%;
  width: 80%; height: 200%;
  background: radial-gradient(circle, rgba(184, 212, 192, 0.10), transparent 60%);
  pointer-events: none;
}
.planner-results > * { position: relative; }
.planner-results .kicker { color: var(--sage); }
.planner-results .kicker::before { background: var(--sage); }
.monthly-big {
  font-size: clamp(2.4rem, 5vw, 3.6rem);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1;
  margin: var(--s-2) 0;
}
.breakdown { gap: var(--s-2); margin: var(--s-5) 0; }
.breakdown span {
  display: flex; justify-content: space-between;
  border-bottom: 1px solid rgba(255,255,255,0.12);
  padding: 6px 0;
  font-size: 0.92rem;
  color: var(--sage);
}
.breakdown span b { color: #fff; font-weight: 600; }
.comfort {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--r-md);
  padding: var(--s-4);
  margin: var(--s-4) 0;
  font-size: 0.92rem;
}
.comfort strong { color: #fff; }

/* Chat thread — refined */
.chat-thread {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: var(--s-4);
  display: grid;
  gap: var(--s-3);
  margin-bottom: var(--s-3);
  min-height: 240px;
}
.message {
  padding: var(--s-4);
  border-radius: var(--r-md);
  background: #fff;
  border: 1px solid var(--line);
  font-size: 0.94rem;
  line-height: 1.55;
}
.message strong { color: var(--pine); display: block; margin-bottom: 4px; font-size: 0.82rem; font-weight: 600; }
.message.user { background: var(--pine); color: #fff; border-color: var(--pine); }
.message.user strong { color: var(--sage); }

/* Prompt cards (in /ask-learn aside) */
.prompt-card {
  padding: var(--s-5);
  border-radius: var(--r-2xl);
}
.prompt-card h3 { font-size: 0.95rem; margin: 0 0 var(--s-2); }
.prompt-card p { font-size: 0.9rem; color: var(--muted); margin: 0; line-height: 1.55; }

/* LO signup form */
.lo-signup {
  background: #fff;
  border-radius: var(--r-2xl);
  padding: var(--s-8);
  box-shadow: var(--shadow-2);
  border: 1px solid var(--line);
}
.lo-signup h3 { margin: 0 0 var(--s-1); font-size: 1.1rem; }
.lo-signup p { color: var(--muted); font-size: 0.92rem; margin: 0; }

/* Trust row pills (under hero on home) */
.trust-row span {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-pill);
  padding: 6px 12px;
  color: var(--muted);
  font-weight: 500;
  font-size: 0.84rem;
  letter-spacing: 0;
}

/* Sponsored card variant */
.sponsored-card {
  background: linear-gradient(135deg, var(--amber-soft), #fff);
  border: 1px solid var(--amber);
  border-style: dashed;
}
.sponsored-tag {
  background: #8b5a0e;
  color: #fff;
  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 3px 8px;
  border-radius: var(--r-pill);
}

/* LO Pro locked card */
.lopro-locked {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--r-2xl);
  padding: var(--s-6);
  box-shadow: var(--shadow-1);
  position: relative;
  overflow: hidden;
}
.lopro-locked::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 50%;
  background: linear-gradient(180deg, transparent, rgba(255,255,255,0.96) 75%);
  pointer-events: none;
}
.lopro-locked .lock-icon {
  background: var(--pine);
  color: #fff;
  width: 32px; height: 32px;
  border-radius: var(--r-pill);
  font-size: 0.92rem;
  display: grid; place-items: center;
  position: absolute;
  top: var(--s-4); right: var(--s-4);
  z-index: 2;
}
.lopro-locked .lock-cta {
  position: absolute;
  left: 50%; bottom: var(--s-4);
  transform: translateX(-50%);
  z-index: 2;
}

/* Selection style */
::selection { background: var(--sage); color: var(--pine); }

/* Smooth scroll to anchored sections (offset for sticky nav) */
[id] { scroll-margin-top: 90px; }

/* Mobile refinements */
@media (max-width: 920px) {
  .nav-inner { min-height: 60px; }
  .brand-mark { width: 34px; height: 34px; font-size: 0.86rem; }
  .brand strong { font-size: 0.95rem; }
  .brand small { display: none; }
  .menu-btn {
    border: 1px solid var(--line);
    border-radius: var(--r-md);
    padding: 10px 12px;
    background: #fff;
    min-width: 44px; min-height: 44px;
  }
}
@media (max-width: 640px) {
  .section { padding: var(--s-12) 0; }
  .hero, .avatar-hero { padding: var(--s-10) 0 var(--s-8); }
  .topic-hero { padding: var(--s-5); }
  .topic-body { padding: var(--s-5); }
  .planner-results { position: relative; top: auto; }
  .learn-rail { position: relative; top: auto; }
  .footer { padding: var(--s-12) 0 var(--s-6); }
  .footer-bottom { flex-direction: column; gap: var(--s-2); align-items: flex-start; }
  .lane { grid-template-columns: 1fr; }
  .tier-card.featured { transform: none; }
}

/* Print-friendly */
@media print {
  .site-nav, .flow-strip, footer { display: none; }
}

/* mode-tabs prepended into decision-grid — span full width */
.decision-grid > .mode-tabs {
  grid-column: 1 / -1;
  margin-bottom: var(--s-2);
}


/* Topic-card layout fix: don't let pills stretch to full width.
   Use block layout for the card itself, then a flex row of pills via
   display:inline-flex on each pill (already set above) plus a tiny
   first-letter spacing trick to keep them inline. */
.topic-stream .topic-card,
#pulse-grid .topic-card,
#lopro-free .topic-card {
  display: block;
}
.topic-card > .branch,
.topic-card > .audience-pill,
.topic-card > .cadence-pill,
.topic-card > .meta-pill,
.topic-card > .sponsored-tag {
  display: inline-flex;
  vertical-align: middle;
  margin-right: 6px;
  margin-bottom: var(--s-2);
}
.topic-card > h3 {
  margin: var(--s-2) 0 var(--s-1);
}
.topic-card > p {
  margin-bottom: var(--s-3);
}
.topic-card > a, .topic-card > .card-actions {
  display: inline-flex;
  margin-top: var(--s-2);
  font-weight: 600;
  color: var(--moss);
  text-decoration: none;
}
.topic-card > a:hover { color: var(--pine); }

/* Sponsored card needs the tag to position absolutely (already styled) */
.sponsored-card .sponsored-tag {
  position: absolute;
  top: var(--s-3);
  right: var(--s-3);
  margin: 0;
}
.sponsored-card { position: relative; padding-top: var(--s-8); }

/* Pulse grid: 3-up on desktop, 2-up on tablet, 1-up on mobile */
.pulse-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--s-4);
}
@media (max-width: 920px) { .pulse-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .pulse-grid { grid-template-columns: 1fr; } }

/* Topic stream: 2-up on desktop, 1-up on mobile */
.topic-stream {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--s-4);
}
@media (max-width: 760px) { .topic-stream { grid-template-columns: 1fr; } }


/* v6.4 monetization and conversion refresh */
.home-reframe .hero-grid{grid-template-columns:1fr .86fr;gap:42px}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.74);border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:#47675a;font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.hero-proof{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;max-width:640px}.proof-tile{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:20px;padding:14px}.proof-tile b{display:block;color:var(--pine);font-size:1.05rem}.proof-tile span{display:block;color:var(--muted);font-size:.9rem;margin-top:3px}.monetization-preview{display:grid;gap:14px}.mini-dashboard{background:#fff;border:1px solid var(--line);border-radius:28px;padding:18px}.mini-dashboard .row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf2ee;padding:12px 0}.mini-dashboard .row:last-child{border-bottom:0}.mini-dashboard small{display:block;color:var(--muted);font-weight:700}.mini-dashboard b{color:var(--pine)}.conversion-band{position:relative;overflow:hidden}.conversion-shell{background:linear-gradient(135deg,#ffffff 0%,#f1fbf4 100%);border:1px solid rgba(13,39,31,.11);border-radius:34px;box-shadow:var(--shadow);padding:30px;display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}.conversion-shell h2,.conversion-shell h3{margin:0 0 10px;color:var(--pine);letter-spacing:-.045em;line-height:1.02}.conversion-shell p{margin:0;color:#42534b}.conversion-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.conversion-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.conversion-list li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:13px 14px;color:#35453e;font-weight:700}.lane-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.lane-choice{display:flex;flex-direction:column;min-height:235px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;text-decoration:none;box-shadow:0 12px 30px rgba(13,39,31,.06);transition:.2s}.lane-choice:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#9bcfac}.lane-choice small{font-weight:900;color:#507466;text-transform:uppercase;letter-spacing:.11em}.lane-choice h3{margin:12px 0 8px;color:var(--pine);letter-spacing:-.03em;font-size:1.35rem}.lane-choice p{color:#52665d;margin:0 0 18px}.lane-choice span{margin-top:auto;color:var(--pine);font-weight:900}.positioning-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.positioning-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 10px 30px rgba(13,39,31,.05)}.positioning-card b{display:block;color:var(--pine);font-size:1.1rem;margin-bottom:8px}.positioning-card p{margin:0;color:#52655c}.tool-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:0 10px 30px rgba(13,39,31,.06)}.tool-card h3{margin:0 0 8px;color:var(--pine);letter-spacing:-.03em}.tool-card p{color:#52655c;margin:0 0 18px}.revenue-panel{background:var(--pine);color:#fff;border-radius:36px;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center;box-shadow:0 24px 60px rgba(13,39,31,.22)}.revenue-panel h2{font-size:clamp(2rem,3.2vw,3.3rem);line-height:1;letter-spacing:-.055em;margin:0 0 14px}.revenue-panel p{color:#d8eadf}.revenue-panel .btn-secondary{border-color:rgba(255,255,255,.25)}.pricing-mini{display:grid;gap:10px}.pricing-mini div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:14px;display:flex;justify-content:space-between;gap:12px}.pricing-mini b{color:#fff}.pricing-mini span{color:#d8eadf}.capture-card{background:#fff;border:1px solid var(--line);border-radius:32px;padding:24px;box-shadow:var(--shadow)}.capture-form{display:grid;grid-template-columns:1fr 190px;gap:10px;margin-top:18px}.capture-form input,.capture-form select,.capture-form textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:13px 14px;color:var(--ink)}.capture-form textarea{grid-column:1/-1;min-height:88px;resize:vertical}.capture-form .btn{grid-column:auto}.capture-msg{display:none;margin-top:10px;border-radius:14px;padding:10px 12px;font-weight:800}.capture-msg.show{display:block}.capture-msg.ok{background:#ecf8ef;color:#14542c}.capture-msg.err{background:#fff0ef;color:#7a261f}.funnel-step-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.funnel-step{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px}.funnel-step b{display:block;color:var(--pine)}.funnel-step small{display:block;color:#65746d;margin-top:6px}.page-monetization-note{background:#fffdf7;border:1px dashed #b8cbbb;border-radius:24px;padding:18px;color:#43554c}.section .muted-copy{color:#60746a}.lo-chip{display:inline-flex;align-items:center;border-radius:999px;background:#ecf6ef;border:1px solid var(--line);padding:7px 10px;font-weight:900;color:var(--pine);font-size:.85rem}.bridge-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bridge-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:22px}.bridge-card h3{margin-top:0;color:var(--pine);letter-spacing:-.03em}@media(max-width:960px){.home-reframe .hero-grid,.conversion-shell,.revenue-panel{grid-template-columns:1fr}.lane-choice-grid,.positioning-grid,.tool-stack,.funnel-step-grid{grid-template-columns:1fr 1fr}.capture-form{grid-template-columns:1fr}.capture-form .btn{grid-column:1/-1}}@media(max-width:640px){.hero-proof,.lane-choice-grid,.positioning-grid,.tool-stack,.funnel-step-grid,.bridge-two{grid-template-columns:1fr}.conversion-shell,.revenue-panel{padding:22px}.capture-card{padding:20px}}

.capture-form .capture-msg{grid-column:1/-1}


/* Content credibility styles */
.credibility-sprint .section-head p{max-width:760px}
.credibility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.credibility-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:22px;box-shadow:0 12px 34px rgba(13,39,31,.06);text-decoration:none;color:inherit;display:flex;flex-direction:column;min-height:250px;transition:.2s}
.credibility-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#9bcfac}
.credibility-card small{font-weight:900;color:#547264;text-transform:uppercase;letter-spacing:.1em}
.credibility-card h3{margin:12px 0 8px;color:var(--pine);letter-spacing:-.035em;font-size:1.35rem;line-height:1.08}
.credibility-card p{margin:0;color:#52655c}
.credibility-card span{margin-top:auto;color:var(--pine);font-weight:900;padding-top:18px}
.credibility-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}
.credibility-stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;text-align:center}
.credibility-stat b{display:block;color:var(--pine);font-size:1.25rem}.credibility-stat small{color:var(--muted);font-weight:800}
.depth-pill{background:#fff5db;border-color:#ead59a;color:#6f4b08;text-transform:capitalize}
.credibility-deep,.playbook-deep,.market-deep{border:1px solid var(--line);border-radius:28px;padding:22px;background:#fff;box-shadow:0 12px 30px rgba(13,39,31,.05);margin:20px 0}
.playbook-deep{background:#f6fbf7}.market-deep{background:#fffdf6}.credibility-deep h3,.playbook-deep h3,.market-deep h3{margin:0 0 14px;color:var(--pine);letter-spacing:-.035em}
.deep-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.deep-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}.deep-card.wide{grid-column:1/-1}.deep-card.caution{border-color:#ead59a;background:#fff9e8}.deep-card b{display:block;color:var(--pine);margin-bottom:8px}.deep-card p{margin:0;color:#44564e}.deep-card .key-list{margin:0;padding-left:18px}.deep-card .key-list li{padding:4px 0;border:0;background:transparent}
.beta-banner{background:#fff8e6;border:1px solid #ead59a;border-radius:24px;padding:18px;display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:18px}.beta-banner b{color:#6f4b08}.beta-banner span{color:#6a5a31}
.credibility-roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.roadmap-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px}.roadmap-card b{display:block;color:var(--pine);margin-bottom:8px}.roadmap-card p{margin:0;color:#52655c}
.fineprint-block{background:#fff;border:1px dashed #c9d8ce;border-radius:20px;padding:16px;color:#52655c;font-size:.94rem}
@media(max-width:900px){.credibility-grid,.credibility-stat-row,.deep-grid,.credibility-roadmap{grid-template-columns:1fr 1fr}.beta-banner{display:block}.beta-banner .btn{margin-top:12px}}
@media(max-width:640px){.credibility-grid,.credibility-stat-row,.deep-grid,.credibility-roadmap{grid-template-columns:1fr}.deep-card.wide{grid-column:auto}}


/* v6.7 stable next-phase affordability and validation engine */
.affordability-hero .hero-lead{max-width:820px}.engine-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.engine-strip span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:#4d6258;font-weight:850;font-size:.88rem}.affordability-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:24px;align-items:start}.affordability-form,.affordability-results,.scenario-save-card{background:#fff;border:1px solid var(--line);border-radius:32px;padding:24px;box-shadow:var(--shadow)}.affordability-form h2,.affordability-results h2{margin:0 0 10px;color:var(--pine);letter-spacing:-.04em}.affordability-form p,.affordability-results p{color:#52655c}.engine-fieldset{border:0;margin:0 0 20px;padding:0}.engine-fieldset legend{font-weight:950;color:var(--pine);margin-bottom:10px;letter-spacing:-.02em}.engine-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.engine-grid label{font-weight:850;color:var(--pine)}.engine-grid input,.engine-grid select{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:#fff;margin-top:6px}.engine-help{font-size:.88rem;color:var(--muted);margin:8px 0 0}.affordability-results{position:sticky;top:140px}.signal-card{border-radius:26px;padding:22px;margin-bottom:18px;background:#f4fbf6;border:1px solid var(--line)}.signal-card.red{background:#fff0eb;border-color:#f0baa8}.signal-card.yellow{background:#fff8e6;border-color:#ead59a}.signal-card.green{background:#edf9f0;border-color:#a9d6b6}.signal-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:950;font-size:.72rem;color:#60746a;margin:0 0 6px}.signal-title{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1;letter-spacing:-.055em;color:var(--pine);margin:0}.signal-summary{margin:10px 0 0;color:#394a43}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0}.metric-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px}.metric-card small{display:block;color:#6b7c74;font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.metric-card b{display:block;color:var(--pine);font-size:1.25rem;letter-spacing:-.03em;margin-top:4px}.engine-breakdown{display:grid;gap:8px;margin:18px 0}.engine-breakdown div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px}.engine-breakdown span{color:#53645d}.risk-list,.next-step-list{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.risk-list li,.next-step-list li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;color:#3d5047}.engine-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.scenario-save-card{margin-top:18px}.scenario-save-card h3{margin:0 0 8px;color:var(--pine);letter-spacing:-.03em}.scenario-save-card .capture-form{display:grid;grid-template-columns:1.2fr .8fr auto;gap:10px;align-items:start}.scenario-save-card .capture-form input,.scenario-save-card .capture-form select{margin-top:0}.scenario-save-card textarea[hidden]{display:none}.comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.comparison-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px}.comparison-card h3{margin:0 0 8px;color:var(--pine);letter-spacing:-.03em}.comparison-card p{margin:0;color:#52655c}.anchor-link-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:18px}.anchor-link-row a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 13px;text-decoration:none;font-weight:850;color:var(--pine)}.engine-disclaimer{background:#fff;border:1px dashed #c9d8ce;border-radius:20px;padding:16px;color:#52655c;font-size:.94rem}.lo-scenario-panel{background:linear-gradient(135deg,#10251d,#1d4737);color:#fff;border-radius:32px;padding:28px;box-shadow:var(--shadow)}.lo-scenario-panel h2{color:#fff;margin:0 0 10px;letter-spacing:-.04em}.lo-scenario-panel p{color:#d7eadf}.lo-scenario-panel .btn-secondary{background:#fff;color:var(--pine)}
@media(max-width:920px){.affordability-grid{grid-template-columns:1fr}.affordability-results{position:static}.comparison-grid{grid-template-columns:1fr}.scenario-save-card .capture-form{grid-template-columns:1fr}.engine-grid{grid-template-columns:1fr}}
@media(max-width:640px){.metric-grid{grid-template-columns:1fr}.engine-actions{display:grid}.engine-actions .btn{width:100%}}


/* v6.7 validation accents */
.validation-note{background:#f7fbf8;border:1px solid var(--line);border-radius:24px;padding:18px;color:#53645d}.validation-note b{color:var(--pine)}


/* v6.8 Trust + Content Authority release */
.v68-nav .nav-links{gap:8px}.v68-nav .nav-links a{font-weight:850}.v68-hero .hero-panel img,.v68-hero-card img{width:100%;display:block;border-radius:24px;border:1px solid var(--line);background:#fff}.hero-card-note{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}.hero-card-note b{color:var(--pine)}.hero-card-note p{margin:6px 0 0;color:var(--muted)}.v68-lane-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.v68-lane-card{display:flex;flex-direction:column;min-height:300px;text-decoration:none;border:1px solid var(--line);border-radius:34px;padding:30px;background:#fff;box-shadow:0 18px 44px rgba(13,39,31,.08);transition:.2s}.v68-lane-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.v68-lane-card.buyer{background:linear-gradient(135deg,#fff,#eefaf2)}.v68-lane-card.pro{background:linear-gradient(135deg,#fff,#f7f0df)}.v68-lane-card small,.room-card small{text-transform:uppercase;letter-spacing:.13em;font-weight:950;color:#507466}.v68-lane-card h3{font-size:clamp(1.8rem,3vw,3rem);line-height:1;letter-spacing:-.05em;color:var(--pine);margin:16px 0 12px}.v68-lane-card p{color:#4d6158;font-size:1.08rem}.v68-lane-card span{margin-top:auto;color:var(--pine);font-weight:950}.decision-room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;text-decoration:none;box-shadow:0 10px 28px rgba(13,39,31,.06);transition:.2s}.room-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#a8d8b6}.room-card b{display:block;color:var(--pine);font-size:1.24rem;margin-bottom:8px}.room-card p{margin:0;color:#5d6e66}.visual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.visual-grid article{background:#fff;border:1px solid var(--line);border-radius:28px;padding:16px;box-shadow:0 10px 28px rgba(13,39,31,.06)}.visual-grid img{width:100%;border-radius:20px;border:1px solid var(--line);display:block}.visual-grid h3{color:var(--pine);margin:14px 0 6px}.visual-grid p{margin:0;color:var(--muted)}.v68-authority-panel{background:linear-gradient(135deg,#0d271f,#1d4c3d);color:#fff;border-radius:36px;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center;box-shadow:0 22px 55px rgba(13,39,31,.2)}.v68-authority-panel h2{font-size:clamp(2rem,3vw,3.4rem);line-height:1;letter-spacing:-.055em;margin:0 0 12px}.v68-authority-panel p,.v68-authority-panel li{color:#dcefe4}.authority-steps{display:grid;gap:10px;margin:0}.authority-steps li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:12px 14px}.room-pill{background:#f5f0df!important;color:#6d5325!important}.quality-pill{background:#eaf7ee!important;color:#235a3c!important}.full-guide-pill{background:#0d271f!important;color:#fff!important;text-decoration:none}.authority-article .article-hero{padding-top:54px}.article-breadcrumbs{font-size:.88rem;color:#65746d;margin:0 0 14px}.article-breadcrumbs a{color:#456b5b;text-decoration:none;font-weight:850}.article-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.article-body{display:grid;gap:20px;max-width:850px}.article-section{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:0 8px 26px rgba(13,39,31,.05)}.article-section h2{margin:0 0 12px;color:var(--pine);letter-spacing:-.035em}.article-section p{color:#40504a;margin:0}.quote-card{background:linear-gradient(135deg,#f6fbf7,#fffdf7);border-color:#b9d7c4}.caution{background:#fff8ea;border-color:#efd899}.email-template{background:#f6fbf7;border:1px solid var(--line);border-radius:18px;padding:18px;color:#344840}.source-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.source-links a{border:1px solid var(--line);border-radius:999px;padding:8px 12px;text-decoration:none;color:#365f4e;background:#fff;font-weight:800;font-size:.88rem}.article-aside{position:sticky;top:148px;display:grid;gap:16px}.article-aside .btn{margin-top:8px}.feature-icon{font-family:inherit}.drawer-close{cursor:pointer}.source-note p{font-size:.95rem;color:#65746d}.lo-signup{max-width:880px;margin:auto}.hero-eyebrow{background:#fffdf7}.fineprint-block a{font-weight:850;color:var(--pine)}
@media(max-width:1000px){.visual-grid{grid-template-columns:repeat(2,1fr)}.decision-room-grid{grid-template-columns:repeat(2,1fr)}.article-layout,.v68-authority-panel{grid-template-columns:1fr}.article-aside{position:relative;top:auto}.v68-lane-grid{grid-template-columns:1fr}.hero-grid{grid-template-columns:1fr}}@media(max-width:640px){.visual-grid,.decision-room-grid{grid-template-columns:1fr}.v68-lane-card{min-height:auto}.authority-article .hero h1{font-size:2.2rem}.article-section{padding:20px}.v68-authority-panel{padding:24px}.nav-actions .btn{display:none}}

/* v6.9 Authority Deepening */
.depth-release .hero-lead{max-width:760px}.depth-release .article-body{gap:24px}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.snapshot-card{background:#f8fbf8;border:1px solid var(--line);border-radius:20px;padding:16px}.snapshot-card b{display:block;color:var(--pine);margin-bottom:8px}.numbered-list{counter-reset:item}.comparison-table{display:grid;gap:8px;margin-top:12px}.comparison-table div{display:grid;grid-template-columns:210px 1fr;gap:14px;align-items:start;background:#f8fbf8;border:1px solid var(--line);border-radius:16px;padding:12px 14px}.comparison-table b{color:var(--pine)}.comparison-table span{color:#40504a}.script-box{background:linear-gradient(135deg,#0d271f,#235d49);border-radius:22px;padding:22px;color:#fff;box-shadow:0 18px 45px rgba(13,39,31,.18)}.script-box p{color:#fff!important;font-size:1.08rem;line-height:1.65}.email-template pre{white-space:pre-wrap;margin:0;font-family:inherit;line-height:1.55;color:#344840}.faq-stack{display:grid;gap:10px}.faq-stack details{background:#f8fbf8;border:1px solid var(--line);border-radius:16px;padding:14px}.faq-stack summary{cursor:pointer;font-weight:900;color:var(--pine)}.faq-stack p{margin-top:8px!important}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.related-grid a{display:block;text-decoration:none;background:#f8fbf8;border:1px solid var(--line);border-radius:18px;padding:15px}.related-grid small{display:block;text-transform:uppercase;letter-spacing:.1em;color:#60746a;font-weight:900}.related-grid b{display:block;color:var(--pine);margin:6px 0}.related-grid span{color:#5f7169;font-size:.92rem}.depth-release .article-section h2{font-size:1.55rem}.depth-release .article-section p,.depth-release .article-section li{font-size:1.01rem;line-height:1.72}.depth-release .source-note{background:#fbfaf6}.authority-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.authority-index-grid a{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;text-decoration:none;box-shadow:0 8px 22px rgba(13,39,31,.05)}.authority-index-grid small{display:block;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#60746a}.authority-index-grid b{display:block;color:var(--pine);font-size:1.1rem;margin:8px 0 5px}.authority-index-grid span{color:#52655c}@media(max-width:820px){.snapshot-grid,.related-grid,.authority-index-grid{grid-template-columns:1fr}.comparison-table div{grid-template-columns:1fr}}


/* v6.10 implementation upgrade: audience architecture, room pages, and polish */
.home-upgrade .hero-lead{max-width:760px}.journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.journey-grid.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.journey-card,.topic-mini-card,.callout-box{display:flex;flex-direction:column;gap:10px;border:1px solid rgba(16,37,29,.12);background:#fff;border-radius:22px;padding:22px;text-decoration:none;color:var(--ink);box-shadow:0 12px 34px rgba(13,31,25,.07)}.journey-card:hover,.topic-mini-card:hover,.room-card-rich:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(13,31,25,.11)}.journey-card small,.topic-mini-card small,.room-card-rich small{letter-spacing:.11em;text-transform:uppercase;color:var(--pine);font-weight:800;font-size:.74rem}.journey-card h3{font-size:1.35rem;margin:0}.journey-card p,.topic-mini-card span,.callout-box p{color:var(--muted);margin:0;line-height:1.58}.journey-card span,.room-card-rich span{font-weight:800;color:var(--pine)}.pro-card{background:linear-gradient(180deg,#fff,#f6f3ec)}.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.topic-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.topic-mini-card b{font-size:1.02rem;line-height:1.35}.check-list{display:grid;gap:12px;margin:18px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:30px;color:var(--ink);line-height:1.55}.check-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--pine);font-weight:900}.callout-box{background:linear-gradient(180deg,#fff,#f7f9f4)}.trust-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trust-stack span,.meta-pill{display:inline-flex;align-items:center;border:1px solid rgba(16,37,29,.13);background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;color:var(--pine);text-decoration:none}.related-strip{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border:1px solid rgba(16,37,29,.12);background:#fff;border-radius:22px;padding:20px;box-shadow:0 10px 28px rgba(13,31,25,.06)}.related-strip div{display:flex;flex-wrap:wrap;gap:10px}.room-card-rich{min-height:190px}.authority-index-grid a,.credibility-card,.room-card,.journey-card,.topic-mini-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.nav-links a[href="/learn/decision-rooms/"]{font-weight:800}@media (max-width:980px){.journey-grid,.journey-grid.four-up,.topic-mini-grid,.decision-room-grid.four-up{grid-template-columns:1fr 1fr}.trust-stack{grid-template-columns:1fr}}@media (max-width:680px){.journey-grid,.journey-grid.four-up,.topic-mini-grid,.decision-room-grid.four-up{grid-template-columns:1fr}.related-strip{display:block}.related-strip div{margin-top:12px}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%;justify-content:center}}


/* v6.11 polish: global Non-QM tab, visitor-safe language, and currency inputs */
.nonqm-tabs{position:sticky;top:125px;z-index:40;background:rgba(255,253,247,.94);border-top:1px solid rgba(13,39,31,.08);border-bottom:1px solid rgba(13,39,31,.08);backdrop-filter:blur(14px)}
.nonqm-tabs .wrap{display:flex;gap:10px;overflow-x:auto;padding:12px 0;scrollbar-width:none}.nonqm-tabs .wrap::-webkit-scrollbar{display:none}.nonqm-tabs a{white-space:nowrap;text-decoration:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:850;color:var(--pine)}.nonqm-tabs a:hover{background:#ecf6ef}.nav-links a[href="/non-qm-guide/"]{font-weight:900}.nav-links a[href="/non-qm-guide/"].active{background:#fff4d8;color:#6a4d00}.drawer-links a[href="/non-qm-guide/"]{font-weight:900}.form-grid input[data-money-input],.engine-grid input[data-money-input]{font-variant-numeric:tabular-nums;letter-spacing:.01em}.planner-results .btn + .btn,.affordability-results .btn + .btn{margin-top:10px}
@media(max-width:700px){.nonqm-tabs{top:118px}.nonqm-tabs .wrap{width:calc(100% - 24px)}}


/* Portal workspace / saved context panels */
.portal-workspace{padding-top:42px;padding-bottom:42px}.portal-shell{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:22px;align-items:stretch}.portal-resume-card,.portal-side{background:rgba(255,255,255,.92);border:1px solid rgba(16,37,29,.12);border-radius:28px;box-shadow:0 18px 55px rgba(16,37,29,.08)}.portal-resume-card{padding:30px;display:flex;flex-direction:column;gap:16px}.portal-resume-card h2{max-width:760px;margin:0;color:var(--pine);font-size:clamp(1.65rem,3.2vw,2.65rem);line-height:1.05}.portal-summary{max-width:780px;margin:0;color:var(--muted);font-size:1.05rem;line-height:1.65}.portal-context{display:flex;gap:13px;align-items:flex-start;padding:14px 16px;border:1px solid rgba(16,37,29,.12);border-radius:18px;background:#f8fbf7;max-width:780px}.portal-context b{display:block;color:var(--pine);margin-bottom:2px}.portal-context span{color:var(--muted);line-height:1.45}.portal-context-icon{width:26px;height:26px;border-radius:50%;position:relative;flex:0 0 auto;background:#dbe8de;border:1px solid rgba(16,37,29,.18);margin-top:1px}.portal-context.question .portal-context-icon::before{content:"";position:absolute;inset:6px;border:2px solid #2f6b50;border-radius:50%}.portal-context.question .portal-context-icon::after{content:"";position:absolute;width:7px;height:2px;background:#2f6b50;right:3px;bottom:4px;transform:rotate(45deg);border-radius:2px}.portal-context.room .portal-context-icon::before{content:"";position:absolute;left:7px;top:6px;width:12px;height:14px;border:2px solid #72572a;border-radius:4px}.portal-context.room .portal-context-icon::after{content:"";position:absolute;left:10px;top:10px;width:6px;height:2px;background:#72572a;box-shadow:0 4px 0 #72572a;border-radius:2px}.portal-context.affordability .portal-context-icon::before{content:"";position:absolute;left:6px;right:6px;top:8px;height:10px;border:2px solid #7a4810;border-radius:3px}.portal-context.affordability .portal-context-icon::after{content:"";position:absolute;left:10px;top:6px;width:6px;height:14px;border-left:2px solid #7a4810;border-right:2px solid #7a4810}.portal-context.fresh .portal-context-icon::before{content:"";position:absolute;left:7px;top:7px;width:10px;height:10px;border:2px solid #406055;border-radius:50%}.portal-context.question{background:#f3f9f6;border-color:rgba(47,107,80,.24)}.portal-context.room{background:#fbf7ef;border-color:rgba(114,87,42,.24)}.portal-context.affordability{background:#fff6ea;border-color:rgba(122,72,16,.25)}.portal-context.fresh{background:#f7faf8}.portal-action-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:2px}.portal-clear{border:0;background:transparent;color:var(--muted);font-weight:800;cursor:pointer;padding:10px 8px;text-decoration:underline;text-underline-offset:3px}.portal-clear:hover{color:var(--pine)}.portal-reset-note{margin:0;color:#2f6b50;font-weight:800;background:#f0f8f3;border:1px solid rgba(47,107,80,.2);border-radius:14px;padding:10px 12px;max-width:780px}.portal-side{padding:22px;display:flex;flex-direction:column;gap:16px;justify-content:space-between}.portal-status-grid{display:grid;grid-template-columns:1fr;gap:10px}.portal-status-card{padding:14px 15px;border-radius:18px;background:#f8fbf7;border:1px solid rgba(16,37,29,.1)}.portal-status-card small{display:block;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800;margin-bottom:4px}.portal-status-card b{display:block;color:var(--pine);font-size:1rem;line-height:1.3}.portal-lane-links{display:grid;grid-template-columns:1fr 1fr;gap:9px}.portal-lane-links a{border:1px solid rgba(16,37,29,.12);border-radius:999px;padding:10px 12px;text-align:center;color:var(--pine);font-weight:900;background:#fff;text-decoration:none;font-size:.92rem}.portal-lane-links a:hover{background:#f5f0e4}.state-question .portal-status-card:first-child{background:#f3f9f6}.state-room .portal-status-card:first-child{background:#fbf7ef}.state-affordability .portal-status-card:first-child{background:#fff6ea}@media (max-width:860px){.portal-shell{grid-template-columns:1fr}.portal-resume-card{padding:24px}.portal-lane-links{grid-template-columns:1fr}}
.rail-guide{padding:2px 4px 16px;border-bottom:1px solid var(--line);margin-bottom:12px}
.hierarchy-block + .hierarchy-block{margin-top:6px}
.hierarchy-children{padding:6px 0 4px 10px}
.hierarchy-grandchildren{padding:6px 0 2px 14px}
.rail-sub{font-weight:780;font-size:.94rem}
.rail-focus{font-weight:720;font-size:.88rem;color:#61746d}
.hierarchy-card h3{min-height:68px}

/* v7.1 mortgage check polish */
.v71-mortgage-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 25% 15%, rgba(201,155,79,.22), transparent 34%),linear-gradient(135deg,#0f261f 0%,#12382e 52%,#f7efe2 100%)}
.v71-mortgage-hero .hero-lead{max-width:820px}
.v71-grid{align-items:start;grid-template-columns:minmax(0,1.02fr) minmax(360px,.82fr);gap:28px}
.v71-form{display:flex;flex-direction:column;gap:18px}
.form-intro-card{padding:22px;border:1px solid rgba(16,37,29,.12);border-radius:24px;background:linear-gradient(180deg,#fff,#fbf8f1);box-shadow:0 18px 45px rgba(16,37,29,.08)}
.form-intro-card h2{margin:.1rem 0 .35rem;color:var(--pine)}
.intake-mode-note{margin-top:14px;padding:12px 14px;border-radius:16px;background:#eef7f1;color:#173d32;border:1px solid rgba(16,37,29,.1);font-weight:700;line-height:1.45}
.engine-fieldset label{position:relative}
.field-help{display:block;margin-top:6px;color:#69736d;font-size:.82rem;line-height:1.35;font-weight:500}
.lane-panel{border-color:rgba(201,155,79,.45);background:linear-gradient(180deg,#fffaf1,#fff)}
.lane-explainer{margin:0 0 14px;padding:12px 14px;border-radius:16px;background:#fff4d8;border:1px solid rgba(201,155,79,.32);color:#3a2c16;line-height:1.45}
.result-board-v71{position:sticky;top:92px;display:flex;flex-direction:column;gap:18px}
.result-headline-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}
.result-headline-grid>div{padding:14px 16px;border-radius:18px;background:#fff;border:1px solid rgba(16,37,29,.1);box-shadow:0 12px 28px rgba(16,37,29,.06)}
.result-headline-grid small{display:block;color:#66726c;font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
.result-headline-grid b{display:block;margin-top:4px;color:var(--pine);font-size:1.35rem;line-height:1.1}
.scenario-read-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.read-card{padding:15px;border-radius:20px;background:linear-gradient(180deg,#fff,#fbf7ef);border:1px solid rgba(16,37,29,.1)}
.read-card small{display:block;color:#67726d;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}
.read-card b{display:block;margin:.35rem 0;color:#10251d;font-size:1.05rem;line-height:1.25}
.read-card p{margin:0;color:#55615b;font-size:.9rem;line-height:1.42}
.lane-reasons{padding:16px;border-radius:20px;background:#f4f7f2;border:1px solid rgba(16,37,29,.1)}
.lane-reasons h3{margin:0 0 8px;color:var(--pine)}
.lane-reasons ul{margin:0;padding-left:18px;color:#45514b}
.result-board-actions{display:flex;gap:10px;flex-wrap:wrap}
.engine-breakdown div{gap:16px}
@media (max-width: 980px){.v71-grid{grid-template-columns:1fr}.result-board-v71{position:static}.scenario-read-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 680px){.scenario-read-grid,.engine-grid{grid-template-columns:1fr}.result-headline-grid b{font-size:1.15rem}.form-intro-card,.lane-panel,.result-board-v71{border-radius:18px}.v71-mortgage-hero h1{font-size:clamp(2.15rem,12vw,3rem)}.result-board-actions .btn{width:100%;justify-content:center}}

/* v7.1 visual QA fixes */
.v71-mortgage-hero h1,
.v71-mortgage-hero .hero-lead,
.v71-mortgage-hero .kicker { color: #fff; }
.v71-mortgage-hero .hero-lead { opacity: .94; }
body[data-page="affordability"] .sticky-next { display: none; }
.footer a { display: block; }
@media (max-width: 920px){ .footer a { display: block; min-height: auto; padding: 4px 0; } }
.room-entry-state{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:0 16px 40px rgba(13,39,31,.08)}.room-entry-state h2{margin:0;color:var(--pine);font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.05;letter-spacing:-.04em}.room-entry-reminder{margin:12px 0 0;color:#53645d;font-weight:800}.room-entry-detail{margin:10px 0 0;color:#2f6b50;font-weight:800}.room-entry-summary p{margin:12px 0 0;color:#4c5d55;line-height:1.65}.room-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.room-entry-grid>div{background:#f8fbf7;border:1px solid rgba(16,37,29,.08);border-radius:22px;padding:18px}.room-entry-grid h3{margin:0 0 10px;color:var(--pine)}.room-entry-grid ul{margin:0;padding-left:18px;color:#42524b}.room-entry-grid li{padding:4px 0}.room-entry-stale{margin:16px 0 0;color:#7a4810;font-weight:800}.room-entry-footer{margin:14px 0 0;color:#66736d;font-size:.94rem}.result-resume-card{background:rgba(255,255,255,.94);border:1px solid rgba(16,37,29,.12);border-radius:28px;padding:24px;box-shadow:0 18px 44px rgba(16,37,29,.08)}.result-resume-card h2{margin:0;color:var(--pine);font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.05}.result-resume-summary{margin:12px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.6}.result-resume-detail{margin:10px 0 0;color:#2f6b50;font-weight:800}.result-resume-stale{margin:12px 0 0;color:#7a4810;font-weight:800}.recommended-room{position:relative;border-color:rgba(16,37,29,.22)!important;box-shadow:0 0 0 4px rgba(47,107,80,.08)!important}.recommended-tag{display:inline-flex;align-items:center;margin-top:10px;padding:7px 10px;border-radius:999px;background:#eef7f1;color:#2f6b50;font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
@media (max-width: 760px){.room-entry-grid{grid-template-columns:1fr}}
