/* ============================================================
   Wheelchair Ramp Cost Calculator — Stylesheet v1.0
   THEME RESET at top neutralises global theme rules.
   All rules scoped to .wrc-wrap — zero bleed outside.
   ============================================================ */

/* ── THEME RESET — scoped to .wrc-wrap ──────────────────── */
.wrc-wrap p               { max-width:none!important; margin-bottom:0!important; font-size:inherit!important; line-height:inherit!important; color:inherit!important; }
.wrc-wrap h2,.wrc-wrap h3,.wrc-wrap h4,.wrc-wrap h5,.wrc-wrap h6 { font-size:inherit!important; line-height:inherit!important; letter-spacing:normal!important; margin:0!important; color:inherit!important; }
.wrc-wrap ul,.wrc-wrap ol { padding-left:0!important; margin:0!important; list-style:none!important; }
.wrc-wrap li              { margin:0!important; padding:0!important; }
.wrc-wrap button          { font-family:inherit!important; cursor:pointer!important; }
.wrc-wrap input           { font-family:inherit!important; }
.wrc-wrap a               { text-decoration:none!important; }
.wrc-wrap img             { display:inline!important; }
.wrc-wrap table           { border-collapse:collapse; width:100%; }
/* ── End theme reset ─────────────────────────────────────── */

/* ── Root vars ───────────────────────────────────────────── */
.wrc-wrap {
    --wrc-primary:       #2E7D5E;
    --wrc-primary-dark:  #1f5c43;
    --wrc-primary-light: #E8F5F0;
    --wrc-amber:         #F4A835;
    --wrc-amber-dark:    #d4922b;
    --wrc-text:          #1A1A2E;
    --wrc-muted:         #6B7280;
    --wrc-border:        #E2E8F0;
    --wrc-white:         #ffffff;
    --wrc-radius:        12px;
    --wrc-radius-sm:     8px;
    --wrc-shadow:        0 2px 8px rgba(0,0,0,0.07);
    --wrc-shadow-lg:     0 8px 32px rgba(0,0,0,0.12);
    --wrc-font:          'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    --wrc-font-h:        'Lora',Georgia,serif;
}

.wrc-wrap, .wrc-wrap *, .wrc-wrap *::before, .wrc-wrap *::after {
    box-sizing: border-box;
}

.wrc-wrap {
    font-family: var(--wrc-font);
    color: var(--wrc-text);
    font-size: 15px;
    line-height: 1.6;
    width: 100%;
    max-width: 860px;
    margin: 0 auto 48px;
    background: var(--wrc-white);
    border-radius: var(--wrc-radius);
    box-shadow: var(--wrc-shadow-lg);
    overflow: hidden;
    position: relative;
}

/* ── Hero / Intro ─────────────────────────────────────────── */
.wrc-hero {
    background: linear-gradient(135deg, #2E7D5E 0%, #1a4d38 100%);
    padding: 48px 40px 40px;
    text-align: center;
    color: var(--wrc-white);
    position: relative;
}

.wrc-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.04'%3E%3Cpath d='M20 20.5V18H0v5h5v5H0v5h20v-9.5zm-2 4.5h-1v-1h1v1zm1-10V14H0v2h19v-1zm-1 6h-1v-1h1v1zM15 0H0v10h15V0zm-2 8H2V2h11v6zm22 2h2V0H20v10h2V2h13v8zm-5-4h-1V5h1v1z'/%3E%3C/g%3E%3C/svg%3E") repeat;
    pointer-events: none;
}

.wrc-hero-badge {
    display: inline-block;
    background: rgba(255,255,255,0.18);
    border: 1px solid rgba(255,255,255,0.28);
    color: var(--wrc-white);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 20px;
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
}

.wrc-hero-title {
    font-family: var(--wrc-font-h) !important;
    font-size: clamp(22px, 4vw, 30px) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin-bottom: 14px !important;
    color: var(--wrc-white) !important;
    position: relative;
    z-index: 1;
}

.wrc-hero-sub {
    font-size: 15px;
    color: rgba(255,255,255,0.88);
    max-width: 600px;
    margin: 0 auto 26px;
    line-height: 1.75;
    position: relative;
    z-index: 1;
}

.wrc-hero-stats {
    display: inline-flex;
    align-items: center;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: var(--wrc-radius);
    padding: 12px 24px;
    margin-bottom: 28px;
    position: relative;
    z-index: 1;
}

.wrc-stat            { display:flex; flex-direction:column; align-items:center; padding:0 18px; }
.wrc-stat-num        { font-family:var(--wrc-font-h); font-size:22px; font-weight:700; color:#fff; line-height:1; }
.wrc-stat-lbl        { font-size:11px; color:rgba(255,255,255,0.75); margin-top:3px; white-space:nowrap; }
.wrc-stat-div        { width:1px; height:30px; background:rgba(255,255,255,0.22); flex-shrink:0; }

.wrc-start-btn {
    position: relative;
    z-index: 1;
    font-size: 16px;
    padding: 14px 36px;
}

/* ── Progress bar ─────────────────────────────────────────── */
.wrc-progress-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 36px;
    background: var(--wrc-primary-light);
    border-bottom: 1px solid var(--wrc-border);
}

.wrc-progress-track {
    flex: 1;
    height: 8px;
    background: var(--wrc-border);
    border-radius: 99px;
    overflow: hidden;
}

.wrc-progress-fill {
    height: 100%;
    background: var(--wrc-primary);
    border-radius: 99px;
    transition: width 0.35s ease;
}

.wrc-progress-text {
    font-size: 12px;
    font-weight: 700;
    color: var(--wrc-primary);
    white-space: nowrap;
    min-width: 80px;
    text-align: right;
}

/* ── Quiz step ────────────────────────────────────────────── */
.wrc-step {
    padding: 36px 40px 28px;
    min-height: 340px;
    display: flex;
    flex-direction: column;
}

.wrc-step-icon {
    font-size: 36px;
    margin-bottom: 10px;
    line-height: 1;
    display: block;
}

.wrc-step-q {
    font-family: var(--wrc-font-h) !important;
    font-size: clamp(18px, 3.5vw, 23px) !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    line-height: 1.3 !important;
    margin-bottom: 10px !important;
}

.wrc-step-sub {
    font-size: 14px;
    color: var(--wrc-muted);
    line-height: 1.75;
    margin-bottom: 24px;
    max-width: 680px;
}

/* ── Options ──────────────────────────────────────────────── */
.wrc-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 24px;
    flex: 1;
}

.wrc-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 18px;
    border: 2px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    background: var(--wrc-white);
    cursor: pointer;
    font-family: var(--wrc-font);
    font-size: 14px;
    font-weight: 500;
    color: var(--wrc-text);
    text-align: left;
    line-height: 1.4;
    transition: border-color 0.18s, background 0.18s, color 0.18s;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
}

.wrc-option:hover {
    border-color: var(--wrc-primary);
    background: var(--wrc-primary-light);
}

.wrc-option.wrc-option-selected {
    border-color: var(--wrc-primary);
    background: var(--wrc-primary-light);
    color: var(--wrc-primary-dark);
    font-weight: 600;
}

.wrc-option:focus-visible {
    outline: 2px solid var(--wrc-primary);
    outline-offset: 2px;
}

.wrc-option-label { flex: 1; }

.wrc-option-check {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid var(--wrc-border);
    background: var(--wrc-white);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: transparent;
    transition: background 0.18s, border-color 0.18s, color 0.18s;
}

.wrc-option.wrc-option-selected .wrc-option-check {
    background: var(--wrc-primary);
    border-color: var(--wrc-primary);
    color: var(--wrc-white);
}

/* ── Step nav ─────────────────────────────────────────────── */
.wrc-step-nav {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 4px;
    border-top: 1px solid var(--wrc-border);
    margin-top: auto;
}

/* ── Buttons ──────────────────────────────────────────────── */
.wrc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 11px 22px;
    font-family: var(--wrc-font);
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--wrc-radius-sm);
    border: 2px solid transparent;
    cursor: pointer;
    transition: background 0.18s, color 0.18s, border-color 0.18s, transform 0.12s;
    text-decoration: none !important;
    line-height: 1;
    -webkit-appearance: none;
    appearance: none;
    white-space: nowrap;
}

.wrc-btn:disabled      { opacity:0.4; cursor:not-allowed; }
.wrc-btn:active:not(:disabled) { transform:scale(0.97); }

.wrc-btn-amber   { background:var(--wrc-amber); color:#fff; border-color:var(--wrc-amber); }
.wrc-btn-amber:hover:not(:disabled) { background:var(--wrc-amber-dark); border-color:var(--wrc-amber-dark); color:#fff; }

.wrc-btn-outline { background:transparent; color:var(--wrc-primary); border-color:var(--wrc-primary); }
.wrc-btn-outline:hover:not(:disabled) { background:var(--wrc-primary-light); }

.wrc-btn-ghost   { background:transparent; color:var(--wrc-muted); border-color:var(--wrc-border); }
.wrc-btn-ghost:hover:not(:disabled) { background:#f9fafb; }

/* ── Lead gate ────────────────────────────────────────────── */
.wrc-lead-gate { padding: 36px 40px; }

.wrc-lead-inner {
    background: linear-gradient(135deg, #f0fdf8 0%, #fefce8 100%);
    border: 2px solid var(--wrc-primary);
    border-radius: var(--wrc-radius);
    padding: 40px 36px;
    text-align: center;
}

.wrc-lead-badge {
    display: inline-block;
    background: var(--wrc-primary);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 20px;
    margin-bottom: 14px;
}

.wrc-lead-icon  { font-size: 44px; display:block; margin-bottom:12px; line-height:1; }

.wrc-lead-title {
    font-family: var(--wrc-font-h) !important;
    font-size: clamp(18px, 3.5vw, 22px) !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    margin-bottom: 10px !important;
}

.wrc-lead-sub {
    font-size: 14px;
    color: var(--wrc-muted);
    max-width: 500px;
    margin: 0 auto 26px;
    line-height: 1.7;
}

.wrc-lead-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 14px;
    text-align: left;
}

.wrc-lead-field  { display:flex; flex-direction:column; gap:5px; }
.wrc-lead-label  { font-size:13px; font-weight:600; color:var(--wrc-text); }

.wrc-lead-input {
    width: 100%;
    padding: 11px 13px;
    border: 1.5px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    font-family: var(--wrc-font);
    font-size: 14px;
    color: var(--wrc-text);
    background: var(--wrc-white);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    -webkit-appearance: none;
    appearance: none;
}

.wrc-lead-input:focus {
    border-color: var(--wrc-primary);
    box-shadow: 0 0 0 3px rgba(46,125,94,0.14);
}

.wrc-lead-submit {
    width: 100%;
    padding: 15px;
    font-size: 15px;
    border-radius: var(--wrc-radius-sm);
    margin-bottom: 12px;
}

.wrc-lead-privacy {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 12px;
    color: var(--wrc-muted);
}

.wrc-lead-error {
    margin-top: 12px;
    padding: 10px 14px;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: var(--wrc-radius-sm);
    color: #B91C1C;
    font-size: 13px;
    text-align: left;
}

/* ── Results ──────────────────────────────────────────────── */
.wrc-results { padding: 0 40px 40px; }

.wrc-results-inner { animation: wrcFadeUp 0.4s ease; }

@keyframes wrcFadeUp {
    from { opacity:0; transform:translateY(14px); }
    to   { opacity:1; transform:translateY(0); }
}

.wrc-results-header {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 32px 0 22px;
    border-bottom: 1px solid var(--wrc-border);
    margin-bottom: 28px;
}

.wrc-results-emoji { font-size: 40px; flex-shrink:0; }

.wrc-results-title {
    font-family: var(--wrc-font-h) !important;
    font-size: clamp(18px, 3.5vw, 23px) !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    margin-bottom: 6px !important;
}

.wrc-results-sub { font-size:14px; color:var(--wrc-muted); line-height:1.6; }

/* ── Specs banner ─────────────────────────────────────────── */
.wrc-specs-banner {
    display: flex;
    align-items: center;
    gap: 12px;
    background: linear-gradient(135deg, #2E7D5E, #1a4d38);
    border-radius: var(--wrc-radius);
    padding: 24px 28px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.wrc-spec-box {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 100px;
    text-align: center;
}

.wrc-spec-highlight {
    background: rgba(255,255,255,0.15);
    border-radius: var(--wrc-radius-sm);
    padding: 12px 16px;
    border: 1px solid rgba(255,255,255,0.25);
}

.wrc-spec-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: rgba(255,255,255,0.75);
}

.wrc-spec-value {
    font-family: var(--wrc-font-h);
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    line-height: 1.1;
}

.wrc-spec-note {
    font-size: 11px;
    color: rgba(255,255,255,0.7);
}

.wrc-spec-arrow {
    font-size: 22px;
    color: rgba(255,255,255,0.5);
    flex-shrink: 0;
}

/* ── Callouts ─────────────────────────────────────────────── */
.wrc-callout {
    padding: 14px 18px;
    border-radius: var(--wrc-radius-sm);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 20px;
    border: 1px solid;
}

.wrc-callout-green { background:#E8F5F0; border-color:#6EE7B7; color:#064e3b; }
.wrc-callout-amber { background:#FFFBEB; border-color:#FCD34D; color:#78350f; }

/* ── Section headings / leads ─────────────────────────────── */
.wrc-section-heading {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    margin-bottom: 8px !important;
    padding-top: 28px !important;
}

.wrc-section-lead {
    font-size: 14px;
    color: var(--wrc-muted);
    line-height: 1.65;
    margin-bottom: 16px;
}

/* ── Top recommendation card ──────────────────────────────── */
.wrc-top-card {
    border: 2px solid var(--wrc-primary);
    border-radius: var(--wrc-radius);
    padding: 24px;
    background: var(--wrc-primary-light);
    margin-bottom: 28px;
    position: relative;
}

.wrc-top-badge {
    display: inline-block;
    background: var(--wrc-primary);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 4px;
    margin-bottom: 14px;
}

.wrc-top-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
}

.wrc-top-emoji { font-size: 36px; flex-shrink:0; line-height:1; }

.wrc-top-name {
    font-family: var(--wrc-font-h) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    margin-bottom: 5px !important;
}

.wrc-top-bestfor { font-size:13px; color:var(--wrc-muted); line-height:1.6; }

.wrc-top-cost {
    display: flex;
    flex-direction: column;
    gap: 3px;
    background: var(--wrc-white);
    border: 1px solid #6EE7B7;
    border-radius: var(--wrc-radius-sm);
    padding: 16px 20px;
    margin-bottom: 18px;
}

.wrc-top-cost-label { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; color:var(--wrc-muted); }
.wrc-top-cost-value { font-family:var(--wrc-font-h); font-size:30px; font-weight:700; color:var(--wrc-primary); line-height:1.1; }
.wrc-top-cost-note  { font-size:12px; color:var(--wrc-muted); }

.wrc-top-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 16px;
}

.wrc-top-col h6 {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--wrc-text) !important;
    margin-bottom: 8px !important;
}

.wrc-top-col ul { display:flex; flex-direction:column; gap:5px; }

.wrc-top-col li {
    font-size: 13px;
    color: var(--wrc-muted);
    line-height: 1.5;
    padding-left: 12px;
    position: relative;
}

.wrc-top-col li::before {
    content: '–';
    position: absolute;
    left: 0;
    color: var(--wrc-primary);
}

.wrc-top-meta {
    display: flex;
    gap: 0;
    border: 1px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    background: var(--wrc-white);
    overflow: hidden;
}

.wrc-top-meta-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 12px 14px;
    border-right: 1px solid var(--wrc-border);
}

.wrc-top-meta-item:last-child { border-right: none; }
.wrc-top-meta-item span { font-size:11px; color:var(--wrc-muted); font-weight:600; text-transform:uppercase; letter-spacing:0.4px; }
.wrc-top-meta-item strong { font-size:13px; color:var(--wrc-text); font-weight:600; }

/* ── Comparison table ─────────────────────────────────────── */
.wrc-table-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; border-radius:var(--wrc-radius-sm); border:1px solid var(--wrc-border); margin-bottom:24px; }

.wrc-compare-table { min-width:640px; font-size:13px; }
.wrc-compare-table thead { background:var(--wrc-primary); color:#fff; }
.wrc-compare-table thead th { padding:12px 14px; font-size:12px; font-weight:600; text-align:left; white-space:nowrap; }
.wrc-compare-table tbody tr:nth-child(even) { background:#f9fafb; }
.wrc-compare-table tbody tr:nth-child(odd)  { background:var(--wrc-white); }
.wrc-compare-table td { padding:12px 14px; border-bottom:1px solid var(--wrc-border); vertical-align:middle; }
.wrc-compare-table tbody tr:last-child td { border-bottom:none; }
.wrc-row-top { background:#f0fdf8 !important; }

.wrc-td-name { min-width:180px; }
.wrc-td-name strong { display:block; font-weight:600; margin-bottom:3px; }
.wrc-td-cost { font-weight:600; color:var(--wrc-primary); white-space:nowrap; }

.wrc-best-tag {
    display:inline-block;
    background:var(--wrc-primary);
    color:#fff;
    font-size:10px;
    font-weight:700;
    padding:2px 7px;
    border-radius:4px;
    margin-left:5px;
    vertical-align:middle;
}

.wrc-diy-tag {
    display:inline-block;
    background:#DBEAFE;
    color:#1d4ed8;
    font-size:10px;
    font-weight:700;
    padding:2px 7px;
    border-radius:4px;
    margin-left:5px;
    vertical-align:middle;
}

/* ── Cost breakdown ───────────────────────────────────────── */
.wrc-breakdown-list {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    overflow: hidden;
    margin-bottom: 28px;
}

.wrc-breakdown-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--wrc-border);
    font-size: 13px;
}

.wrc-breakdown-row:last-child { border-bottom: none; }
.wrc-breakdown-row span { color:var(--wrc-muted); }
.wrc-breakdown-row strong { color:var(--wrc-text); font-weight:600; }
.wrc-breakdown-note { background:#f9fafb; }
.wrc-breakdown-note span,.wrc-breakdown-note strong { color:var(--wrc-primary); }

.wrc-breakdown-total {
    background: var(--wrc-primary-light);
    font-weight: 700;
}

.wrc-breakdown-total span { font-size:14px; font-weight:700; color:var(--wrc-text); }
.wrc-breakdown-total strong { font-size:16px; color:var(--wrc-primary); }

/* ── Financial assistance ─────────────────────────────────── */
.wrc-assistance { margin-bottom: 24px; }

.wrc-assistance-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.wrc-assist-card {
    border: 1.5px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    padding: 16px;
    background: var(--wrc-white);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.wrc-assist-type {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 2px 8px;
    border-radius: 4px;
    width: fit-content;
}

.wrc-assist-federal  { background:#DBEAFE; color:#1d4ed8; }
.wrc-assist-state    { background:#F3E8FF; color:#7c3aed; }
.wrc-assist-insurance{ background:#DCFCE7; color:#15803d; }
.wrc-assist-local    { background:#FEF3C7; color:#92400e; }
.wrc-assist-tax      { background:#CCFBF1; color:#0f766e; }

.wrc-assist-name { font-size:13px !important; font-weight:700 !important; color:var(--wrc-text) !important; line-height:1.35 !important; }
.wrc-assist-desc { font-size:12px; color:var(--wrc-muted); line-height:1.55; flex:1; }
.wrc-assist-link { font-size:12px; font-weight:600; color:var(--wrc-primary) !important; text-decoration:underline !important; margin-top:auto; }

/* ── Related tools / next steps ───────────────────────────── */
.wrc-next-steps { margin-bottom: 20px; }

.wrc-next-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.wrc-next-card {
    display: flex;
    flex-direction: column;
    background: var(--wrc-white);
    border: 1.5px solid var(--wrc-border);
    border-radius: var(--wrc-radius-sm);
    padding: 18px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.wrc-next-card:hover {
    border-color: var(--wrc-primary);
    box-shadow: var(--wrc-shadow);
}

.wrc-next-icon { font-size:26px; display:block; margin-bottom:8px; line-height:1; }

.wrc-next-card h5 { font-size:13px !important; font-weight:700 !important; color:var(--wrc-text) !important; margin-bottom:5px !important; line-height:1.35 !important; }
.wrc-next-card p  { font-size:12px !important; color:var(--wrc-muted) !important; line-height:1.6 !important; flex:1; margin-bottom:8px !important; }
.wrc-next-link    { font-size:12px; font-weight:700; color:var(--wrc-primary); }

/* ── Recalc row ───────────────────────────────────────────── */
.wrc-recalc-row {
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

/* ── Disclaimer ───────────────────────────────────────────── */
.wrc-disclaimer {
    font-size: 11px;
    color: var(--wrc-muted);
    line-height: 1.6;
    padding: 14px 0;
    border-top: 1px solid var(--wrc-border);
    text-align: center;
}

/* ── Utility ──────────────────────────────────────────────── */
.wrc-hidden { display: none !important; }

/* ── Print ────────────────────────────────────────────────── */
@media print {
    .wrc-intro, .wrc-quiz, .wrc-lead-gate, .wrc-recalc-row { display: none !important; }
    .wrc-results { padding: 0; }
    .wrc-wrap { box-shadow: none; border: 1px solid #ccc; }
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 680px) {
    .wrc-hero         { padding: 32px 20px 28px; }
    .wrc-step         { padding: 24px 20px 20px; min-height: auto; }
    .wrc-options      { grid-template-columns: 1fr; }
    .wrc-progress-wrap{ padding: 12px 20px; }
    .wrc-lead-gate    { padding: 20px; }
    .wrc-lead-inner   { padding: 28px 18px; }
    .wrc-lead-fields  { grid-template-columns: 1fr; }
    .wrc-results      { padding: 0 20px 28px; }
    .wrc-specs-banner { flex-direction: column; align-items: stretch; gap: 8px; padding: 18px; }
    .wrc-spec-arrow   { display: none; }
    .wrc-top-grid     { grid-template-columns: 1fr; }
    .wrc-top-meta     { flex-direction: column; }
    .wrc-top-meta-item{ border-right: none; border-bottom: 1px solid var(--wrc-border); }
    .wrc-top-meta-item:last-child { border-bottom: none; }
    .wrc-assistance-grid { grid-template-columns: 1fr; }
    .wrc-next-grid    { grid-template-columns: 1fr; }
    .wrc-hero-stats   { flex-direction: column; gap: 10px; padding: 14px; }
    .wrc-stat-div     { width: 40px; height: 1px; }
}
