
  /* ── CSS VARIABLES ── */
  :root {
    --p1: #002868;
    --p1d: #00183F;
    --p8: #BF0A30;
    --p8h: #a30828;
    --p9: #00875A;
    --p9h: #006644;
    --white: #FFFFFF;
    --charcoal: #1D1D1F;
    --gray-text: #5F6368;
    --border: #E0E4E8;
    --bg-light: #F7F9FC;
    --shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);
    --shadow-md: 0 4px 16px rgba(0,40,104,.10);
  }

  *, *::before, *::after { box-sizing: border-box; }

  body {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: var(--charcoal);
    background: var(--bg-light);
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
  }

  /* ── LAYOUT ── */
  .calc-wrap {
    max-width: 1240px;
    margin: 40px auto;
    padding: 0 20px 80px;
  }

  /* ── TITLE BAR ── */
  .calc-title-bar {
    background: var(--p1);
    color: #fff;
    border-radius: 12px 12px 0 0;
    padding: 24px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    border-bottom: 4px solid var(--p8);
    position: relative;
    overflow: hidden;
  }
  .calc-title-bar::before {
    content: '';
    position: absolute;
    top: -50px;
    right: -5%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(191,10,48,.15) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
  }
  .calc-title-left {
    display: flex;
    align-items: center;
    gap: 16px;
    z-index: 1;
  }
  .calc-title-icon {
    width: 50px;
    height: 50px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: var(--white);
    flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(0,0,0,.12);
  }
  .calc-title-bar h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0;
    letter-spacing: -.5px;
    color: #fff !important;
  }
  .calc-title-bar .badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 1;
  }
  .calc-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.18);
    color: #fff !important;
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: .02em;
    padding: 6px 12px;
    border-radius: 6px;
    white-space: nowrap;
    backdrop-filter: blur(4px);
  }
  .calc-badge i { color: #4ade80; font-size: 11px; }

  /* ── BODY LAYOUT ── */
  .calc-body {
    display: grid;
    grid-template-columns: 1fr 440px;
    gap: 0;
    background: #fff;
    border: 1px solid var(--border);
    border-top: none;
    border-radius: 0 0 12px 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,40,104,.08);
  }
  .inputs-col {
    padding: 28px 28px 40px;
    border-right: 1px solid #e8eaf0;
    overflow-y: auto;
  }
  .results-panel {
    background: #f0f4fb;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: sticky;
    top: 20px;
    align-self: start;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
  }

  /* ── MODE TABS ── */
  .mode-tabs {
    display: flex;
    gap: 6px;
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 5px;
    margin-bottom: 24px;
  }
  .mode-tab {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 10px 8px;
    border-radius: 7px;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: var(--gray-text);
    cursor: pointer;
    border: none;
    background: transparent;
    transition: all 200ms ease;
    white-space: nowrap;
    letter-spacing: .01em;
  }
  .mode-tab i { font-size: 13px; }
  .mode-tab:hover { color: var(--p1); background: rgba(0,40,104,.06); }
  .mode-tab.active {
    background: var(--p1);
    color: #fff;
    box-shadow: 0 2px 8px rgba(0,40,104,.25);
  }
  .mode-tab.active i { color: #fff; }

  /* ── SECTION TITLES ── */
  .section-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--p1);
    margin: 24px 0 14px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--bg-light);
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .section-title:first-child { margin-top: 0; }
  .section-title i { color: var(--p9); font-size: 13px; }
  .section-title .new-badge {
    margin-left: auto;
    background: linear-gradient(135deg, #BF0A30, #ff4d6d);
    color: #fff;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .08em;
    padding: 3px 9px;
    border-radius: 9999px;
    text-transform: uppercase;
  }

  /* ── FORM ELEMENTS ── */
  .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
  .form-grid.cols3 { grid-template-columns: 1fr 1fr 1fr; }
  .form-grid.cols1 { grid-template-columns: 1fr; }
  .field { display: flex; flex-direction: column; gap: 5px; }
  .field.full { grid-column: 1 / -1; }
  .field label {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--charcoal);
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .field label .hint {
    font-weight: 400;
    color: var(--gray-text);
    font-size: 11px;
  }
  .input-wrap { position: relative; display: flex; align-items: center; }
  .input-wrap .prefix, .input-wrap .suffix {
    position: absolute;
    font-size: 13px;
    font-weight: 600;
    color: var(--gray-text);
    pointer-events: none;
    z-index: 5;
  }
  .input-wrap .prefix { left: 12px; }
  .input-wrap .suffix { right: 12px; }

  /* Nuclear input overrides */
  .calc-body input[type="text"],
  .calc-body input[type="number"],
  .calc-body select,
  .calc-body input[type="range"] {
    width: 100% !important;
    padding: 9px 12px !important;
    border: 1.5px solid var(--border) !important;
    border-radius: 8px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    color: var(--charcoal) !important;
    background-color: #ffffff !important;
    background-image: none !important;
    transition: all .2s !important;
    outline: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
    height: 40px !important;
  }
  .calc-body input[type="range"] {
    padding: 0 !important;
    height: 6px !important;
    background: var(--border) !important;
    border-radius: 9999px !important;
    accent-color: var(--p1);
  }
  .calc-body input:focus, .calc-body select:focus {
    border-color: var(--p1) !important;
    box-shadow: 0 0 0 3px rgba(0,40,104,.1) !important;
  }
  .calc-body input:read-only { background: #f9fafb !important; color: #9ca3af !important; cursor: default !important; }
  .input-wrap.has-prefix input { padding-left: 26px !important; }
  .input-wrap.has-suffix input { padding-right: 28px !important; }
  select {
    cursor: pointer !important;
    padding-right: 30px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%235F6368'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E") no-repeat right 10px center / 12px #ffffff !important;
  }

  /* Radio toggle */
  .radio-toggle {
    display: flex;
    gap: 0;
    background: var(--bg-light);
    border: 1.5px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    height: 40px;
  }
  .radio-toggle label {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--gray-text);
    cursor: pointer;
    transition: all 180ms ease;
    padding: 0 10px;
    border-right: 1px solid var(--border);
  }
  .radio-toggle label:last-child { border-right: none; }
  .radio-toggle input[type="radio"] { display: none !important; width: 0 !important; height: 0 !important; min-height: 0 !important; border: none !important; }
  .radio-toggle input[type="radio"]:checked + span {
    background: var(--p1);
    color: #fff;
  }
  .radio-toggle label:has(input:checked) {
    background: var(--p1);
    color: #fff;
  }

  /* Checkbox */
  .check-field {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 8px;
    cursor: pointer;
  }
  .check-field input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 4px !important;
    accent-color: var(--p1);
    cursor: pointer;
    flex-shrink: 0;
  }
  .check-field span {
    font-size: 13px;
    font-weight: 600;
    color: var(--charcoal);
  }
  .check-field small {
    font-size: 11px;
    color: var(--gray-text);
    display: block;
    margin-top: 2px;
  }

  /* Tooltip */
  .tooltip-wrap { position: relative; display: inline-block; }
  .tooltip-icon {
    color: var(--gray-text);
    font-size: 12px;
    cursor: help;
  }
  .tooltip-text {
    display: none;
    position: absolute;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
    background: var(--charcoal);
    color: #fff;
    font-size: 11.5px;
    font-weight: 400;
    padding: 8px 12px;
    border-radius: 6px;
    width: 220px;
    z-index: 100;
    line-height: 1.5;
    box-shadow: 0 4px 12px rgba(0,0,0,.25);
    white-space: normal;
  }
  .tooltip-wrap:hover .tooltip-text { display: block; }

  /* Auto-calculated display */
  .auto-calc {
    padding: 10px 14px;
    background: rgba(0,135,90,.06);
    border: 1px solid rgba(0,135,90,.2);
    border-radius: 8px;
    font-size: 13.5px;
    font-weight: 700;
    color: var(--p9);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .auto-calc .ac-label { font-size: 11.5px; font-weight: 600; color: var(--gray-text); }

  /* ── TOGGLE/ACCORDION ── */
  .toggle-section {
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 10px;
    margin-top: 16px;
    overflow: hidden;
  }
  .toggle-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 16px;
    cursor: pointer;
    user-select: none;
    transition: background 180ms;
  }
  .toggle-header:hover { background: rgba(0,40,104,.03); }
  .toggle-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--p1);
    display: flex;
    align-items: center;
    gap: 9px;
  }
  .toggle-label i { font-size: 13px; color: var(--p9); }
  .toggle-badge {
    background: #e8f4f5;
    color: var(--p9);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 9999px;
  }
  .toggle-badge.red {
    background: #fff0f3;
    color: var(--p8);
  }
  .chevron { color: #9ca3af; transition: transform 200ms ease; font-size: 12px; }
  .toggle-header.open .chevron { transform: rotate(180deg); }
  .toggle-body { padding: 16px; border-top: 1px solid var(--border); display: none; }
  .toggle-body.open { display: block; }

  /* Mode sections visibility */
  .mode-section { display: none; }
  .mode-section.active { display: block; }

  /* ── RESULTS PANEL ── */
  .results-placeholder {
    text-align: center;
    padding: 48px 20px;
    color: #9ca3af;
  }
  .results-placeholder i { font-size: 44px; margin-bottom: 16px; color: #d1d5db; display: block; }
  .results-placeholder p { font-size: 13.5px; line-height: 1.6; }

  .kpi-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .kpi {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 14px 12px;
    transition: box-shadow 200ms;
  }
  .kpi:hover { box-shadow: var(--shadow-sm); }
  .kpi.featured {
    background: var(--p1);
    border-color: var(--p1);
    grid-column: 1 / -1;
  }
  .kpi-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--gray-text);
    margin-bottom: 5px;
  }
  .kpi.featured .kpi-label { color: rgba(255,255,255,.7); }
  .kpi-val {
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    color: var(--p1);
    font-variant-numeric: tabular-nums;
    line-height: 1;
  }
  .kpi.featured .kpi-val { color: #fff; font-size: 28px; }
  .kpi-sub { font-size: 11px; color: #9ca3af; margin-top: 3px; }
  .kpi.featured .kpi-sub { color: rgba(255,255,255,.6); }
  .kpi-val.green { color: var(--p9); }
  .kpi-val.red { color: var(--p8); }
  .kpi-val.amber { color: #d97706; }

  /* ── DONUT CHART ── */
  .donut-wrap {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 16px;
  }
  .donut-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--gray-text);
    margin-bottom: 14px;
  }
  .donut-chart-container {
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .donut-canvas-wrap {
    position: relative;
    width: 110px;
    height: 110px;
    flex-shrink: 0;
  }
  .donut-svg {
    width: 110px;
    height: 110px;
    transform: rotate(-90deg);
  }
  .donut-center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
  }
  .donut-center-pct {
    font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: 900;
    color: var(--p9);
    line-height: 1;
  }
  .donut-center-label {
    font-size: 9px;
    font-weight: 600;
    color: var(--gray-text);
    text-transform: uppercase;
    letter-spacing: .03em;
  }
  .donut-legend { flex: 1; display: flex; flex-direction: column; gap: 5px; }
  .legend-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    font-size: 11px;
  }
  .legend-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
  }
  .legend-name { flex: 1; color: var(--charcoal); font-weight: 500; }
  .legend-amt { font-weight: 700; color: var(--charcoal); font-variant-numeric: tabular-nums; font-size: 10.5px; }
  .legend-pct { color: var(--gray-text); width: 35px; text-align: right; font-size: 10.5px; }

  /* ── BREAKDOWN TABLE ── */
  .breakdown-wrap {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
  }
  .breakdown-header {
    background: var(--p1);
    color: #fff;
    padding: 10px 16px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .breakdown-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
  }
  .breakdown-table th {
    background: #f8f9fb;
    padding: 8px 12px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: var(--gray-text);
    text-align: right;
    border-bottom: 1px solid var(--border);
    font-size: 10px;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .breakdown-table th:first-child { text-align: left; }
  .breakdown-table td {
    padding: 8px 12px;
    border-bottom: 1px solid #f1f5f9;
    font-variant-numeric: tabular-nums;
    color: var(--charcoal);
    text-align: right;
  }
  .breakdown-table td:first-child { text-align: left; font-weight: 500; }
  .breakdown-table tr:last-child td { border-bottom: none; }
  .breakdown-table tr.total-row td {
    font-weight: 800;
    background: rgba(0,40,104,.04);
    color: var(--p1);
    border-top: 1.5px solid var(--border);
    font-size: 12.5px;
  }
  .breakdown-table tr.subtotal-row td { background: rgba(0,135,90,.04); font-weight: 600; }
  .breakdown-table .negative { color: var(--p8); }
  .breakdown-table .positive { color: var(--p9); }

  /* ── OBBB BOX ── */
  .obbb-savings-box {
    background: linear-gradient(135deg, rgba(0,135,90,.06), rgba(0,135,90,.02));
    border: 1.5px solid rgba(0,135,90,.3);
    border-radius: 10px;
    padding: 14px 16px;
    display: none;
  }
  .obbb-savings-box.active { display: block; }
  .obbb-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--p9);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .obbb-total {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 900;
    color: var(--p9);
    margin-bottom: 10px;
  }
  .obbb-row {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(0,135,90,.12);
    color: var(--charcoal);
  }
  .obbb-row:last-child { border-bottom: none; }
  .obbb-row span:last-child { font-weight: 700; color: var(--p9); }

  /* ── QUARTERLY CARD ── */
  .quarterly-card {
    background: #fff;
    border: 1.5px solid #d97706;
    border-radius: 10px;
    overflow: hidden;
    display: none;
  }
  .quarterly-card.active { display: block; }
  .quarterly-header {
    background: linear-gradient(135deg, #d97706, #f59e0b);
    color: #fff;
    padding: 10px 16px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 7px;
  }
  .quarterly-body { padding: 12px 16px; }
  .q-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 7px 0;
    border-bottom: 1px solid #f1f5f9;
    font-size: 12.5px;
  }
  .q-row:last-child { border-bottom: none; font-weight: 800; color: var(--charcoal); }
  .q-label { font-weight: 600; color: var(--charcoal); }
  .q-date { font-size: 11px; color: var(--gray-text); }
  .q-amt { font-weight: 700; color: var(--p1); font-variant-numeric: tabular-nums; }

  /* ── S-CORP CARD ── */
  .scorp-card {
    background: linear-gradient(135deg, rgba(0,40,104,.04), rgba(0,40,104,.01));
    border: 1.5px solid rgba(0,40,104,.2);
    border-radius: 10px;
    padding: 14px 16px;
    display: none;
  }
  .scorp-card.active { display: block; }
  .scorp-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--p1);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .scorp-savings {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 900;
    color: var(--p9);
    margin-bottom: 10px;
  }
  .scorp-row {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(0,40,104,.08);
    color: var(--charcoal);
  }
  .scorp-row:last-child { border-bottom: none; }
  .scorp-row span:last-child { font-weight: 700; }

  /* ── RAISE PLANNER ── */
  .raise-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 14px 16px;
  }
  .raise-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--gray-text);
    margin-bottom: 12px;
  }
  .raise-slider-wrap { margin-bottom: 10px; }
  .raise-slider-label {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--charcoal);
  }
  .raise-result {
    font-size: 12.5px;
    color: var(--charcoal);
    line-height: 1.6;
    background: var(--bg-light);
    border-radius: 6px;
    padding: 10px 12px;
  }
  .raise-result strong { color: var(--p9); }

  /* ── ACTION BUTTONS ── */
  .calc-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 4px;
  }
  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 11px 16px;
    border-radius: 8px;
    font-size: 12.5px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    border: none;
    cursor: pointer;
    transition: all 180ms ease;
  }
  .btn-pdf { background: var(--p1); color: #fff; flex: 1; }
  .btn-pdf:hover { background: var(--p1d); box-shadow: 0 4px 12px rgba(0,40,104,.25); transform: translateY(-1px); }
  .btn-wa { background: var(--p9); color: #fff; flex: 1; }
  .btn-wa:hover { background: var(--p9h); box-shadow: 0 4px 12px rgba(0,135,90,.25); transform: translateY(-1px); }
  .btn-reset { background: #fff; color: var(--charcoal); border: 1.5px solid var(--border) !important; width: 100%; }
  .btn-reset:hover { border-color: var(--p8) !important; color: var(--p8); background: #fff7f7; }
    /* ══════════════════════════════════════════════════════════════
     HOW IT WORKS — CONTENT SECTION
     ══════════════════════════════════════════════════════════════ */
  .content-section {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .hiw-section {
    margin-top: 48px;
    margin-bottom: 0;
  }

  /* Section Header */
  .hiw-section-header {
    text-align: center;
    margin-bottom: 40px;
  }
  .hiw-section-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(0,40,104,.06);
    border: 1px solid rgba(0,40,104,.12);
    color: var(--p1);
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 9999px;
    margin-bottom: 16px;
  }
  .hiw-section-badge i { color: var(--p9); font-size: 11px; }
  .hiw-section-header h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 900;
    color: var(--p1);
    margin: 0 0 12px;
    letter-spacing: -.3px;
    line-height: 1.25;
  }
  .hiw-section-header p {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px;
    color: var(--gray-text);
    max-width: 640px;
    margin: 0 auto;
    line-height: 1.7;
  }

  /* Steps Grid */
  .hiw-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    position: relative;
  }

  /* Connector line behind cards */
  .hiw-steps-grid::before {
    content: '';
    position: absolute;
    top: 52px;
    left: calc(12.5% + 20px);
    right: calc(12.5% + 20px);
    height: 2px;
    background: repeating-linear-gradient(
      90deg,
      var(--border) 0,
      var(--border) 6px,
      transparent 6px,
      transparent 12px
    );
    z-index: 0;
  }

  /* Individual Step Card */
  .hiw-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 14px;
    position: relative;
    z-index: 1;
  }

  /* Step Number Circle */
  .hiw-step-number {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 900;
    color: #fff;
    margin-bottom: 20px;
    position: relative;
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(0,40,104,.2);
  }
  .hiw-step:nth-child(1) .hiw-step-number { background: var(--p1); }
  .hiw-step:nth-child(2) .hiw-step-number { background: var(--p9); }
  .hiw-step:nth-child(3) .hiw-step-number { background: var(--p8); }
  .hiw-step:nth-child(4) .hiw-step-number { background: var(--p1); }

  /* Pulse ring on number */
  .hiw-step-number::after {
    content: '';
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 2px solid currentColor;
    opacity: .15;
  }
  .hiw-step:nth-child(1) .hiw-step-number::after { border-color: var(--p1); }
  .hiw-step:nth-child(2) .hiw-step-number::after { border-color: var(--p9); }
  .hiw-step:nth-child(3) .hiw-step-number::after { border-color: var(--p8); }
  .hiw-step:nth-child(4) .hiw-step-number::after { border-color: var(--p1); }

  /* Step Content Card */
  .hiw-step-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 22px 18px 24px;
    width: 100%;
    transition: box-shadow 280ms ease, transform 280ms ease;
    position: relative;
  }
  .hiw-step-card:hover {
    box-shadow: 0 8px 28px rgba(0,40,104,.1);
    transform: translateY(-3px);
  }

  /* Colored top accent on card */
  .hiw-step:nth-child(1) .hiw-step-card { border-top: 3px solid var(--p1); }
  .hiw-step:nth-child(2) .hiw-step-card { border-top: 3px solid var(--p9); }
  .hiw-step:nth-child(3) .hiw-step-card { border-top: 3px solid var(--p8); }
  .hiw-step:nth-child(4) .hiw-step-card { border-top: 3px solid var(--p1); }

  .hiw-step-icon {
    font-size: 20px;
    margin-bottom: 12px;
    display: block;
  }
  .hiw-step:nth-child(1) .hiw-step-icon { color: var(--p1); }
  .hiw-step:nth-child(2) .hiw-step-icon { color: var(--p9); }
  .hiw-step:nth-child(3) .hiw-step-icon { color: var(--p8); }
  .hiw-step:nth-child(4) .hiw-step-icon { color: var(--p1); }

  .hiw-step-card h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: var(--charcoal);
    margin: 0 0 8px;
    line-height: 1.3;
  }
  .hiw-step-card p {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--gray-text);
    line-height: 1.65;
    margin: 0 0 14px;
  }

  /* Detail list inside card */
  .hiw-detail-list {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: left;
  }
  .hiw-detail-list li {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--charcoal);
    padding: 5px 0;
    border-bottom: 1px solid #f1f5f9;
    display: flex;
    align-items: baseline;
    gap: 7px;
    line-height: 1.5;
  }
  .hiw-detail-list li:last-child { border-bottom: none; }
  .hiw-detail-list li i {
    color: var(--p9);
    font-size: 9px;
    flex-shrink: 0;
    margin-top: 2px;
  }

  /* Bottom Formula Banner */
  .hiw-formula-banner {
    margin-top: 36px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 24px 28px;
    display: flex;
    align-items: center;
    gap: 24px;
    box-shadow: var(--shadow-sm);
  }
  .hiw-formula-icon {
    width: 52px;
    height: 52px;
    background: var(--p1);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }
  .hiw-formula-icon i { color: #fff; font-size: 20px; }
  .hiw-formula-content { flex: 1; min-width: 0; }
  .hiw-formula-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--gray-text);
    margin-bottom: 6px;
  }
  .hiw-formula-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--charcoal);
    line-height: 1.6;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
  }
  .hiw-formula-text .f-var {
    background: rgba(0,40,104,.07);
    color: var(--p1);
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 5px;
    font-size: 12.5px;
    white-space: nowrap;
  }
  .hiw-formula-text .f-op {
    color: var(--p8);
    font-weight: 800;
    font-size: 15px;
  }
  .hiw-formula-text .f-eq {
    color: var(--p9);
    font-weight: 900;
    font-size: 15px;
  }

  /* Modes strip */
  .hiw-modes-strip {
    margin-top: 20px;
    display: flex;
    gap: 10px;
  }
  .hiw-mode-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 16px;
    flex: 1;
    transition: box-shadow 200ms ease;
  }
  .hiw-mode-chip:hover { box-shadow: var(--shadow-sm); }
  .hiw-mode-chip i {
    font-size: 14px;
    color: var(--p1);
    flex-shrink: 0;
  }
  .hiw-mode-chip-text {
    display: flex;
    flex-direction: column;
  }
  .hiw-mode-chip-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 800;
    color: var(--charcoal);
  }
  .hiw-mode-chip-desc {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--gray-text);
    line-height: 1.4;
  }

  /* ══════════════════════════════════════════════════════════════
     RESPONSIVE — HOW IT WORKS
     ══════════════════════════════════════════════════════════════ */

  /* Tablet */
  @media (max-width: 900px) {
    .hiw-steps-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 28px 16px;
    }
    .hiw-steps-grid::before { display: none; }

    .hiw-formula-banner { flex-direction: column; text-align: center; gap: 16px; }
    .hiw-formula-text { justify-content: center; }
    .hiw-modes-strip { flex-wrap: wrap; }
    .hiw-mode-chip { flex: 1 1 calc(50% - 5px); min-width: 0; }
  }

  /* Mobile */
  @media (max-width: 600px) {
    .hiw-section { margin-top: 36px; }
    .hiw-section-header { margin-bottom: 28px; }
    .hiw-section-header h2 { font-size: 21px; }
    .hiw-section-header p { font-size: 13.5px; }

    .hiw-steps-grid {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .hiw-step {
      flex-direction: row;
      text-align: left;
      align-items: flex-start;
      padding: 0;
      gap: 14px;
    }
    .hiw-step-number {
      width: 40px;
      height: 40px;
      font-size: 15px;
      margin-bottom: 0;
      margin-top: 18px;
      flex-shrink: 0;
    }
    .hiw-step-number::after { inset: -4px; }
    .hiw-step-card { padding: 18px 16px 20px; }
    .hiw-step-card h3 { font-size: 13.5px; }

    .hiw-formula-banner { padding: 18px 16px; gap: 14px; }
    .hiw-formula-icon { width: 44px; height: 44px; }
    .hiw-formula-icon i { font-size: 17px; }
    .hiw-formula-text { font-size: 12.5px; gap: 4px; }
    .hiw-formula-text .f-var { font-size: 11.5px; padding: 2px 8px; }

    .hiw-modes-strip { flex-direction: column; gap: 8px; }
    .hiw-mode-chip { flex: 1 1 100%; padding: 10px 14px; }
  }
/* ══════════════════════════════════════════════════════════════
     EDUCATIONAL CONTENT SECTION
     ══════════════════════════════════════════════════════════════ */

  /* Section Wrapper */
  .edu-section {
    margin-top: 48px;
    margin-bottom: 0;
  }
  .edu-section-header {
    text-align: center;
    margin-bottom: 40px;
  }
  .edu-section-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(0,40,104,.06);
    border: 1px solid rgba(0,40,104,.12);
    color: var(--p1);
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 9999px;
    margin-bottom: 16px;
  }
  .edu-section-badge i { color: var(--p9); font-size: 11px; }
  .edu-section-header h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 900;
    color: var(--p1);
    margin: 0 0 12px;
    letter-spacing: -.3px;
    line-height: 1.25;
  }
  .edu-section-header p {
    font-family: 'Inter', sans-serif;
    font-size: 14.5px;
    color: var(--gray-text);
    max-width: 680px;
    margin: 0 auto;
    line-height: 1.7;
  }

  /* ── Main 2-Column Grid ── */
  .edu-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  .edu-grid .full-span { grid-column: 1 / -1; }

  /* ── Standard Card ── */
  .edu-card {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
    transition: box-shadow 280ms ease;
  }
  .edu-card:hover { box-shadow: 0 6px 24px rgba(0,40,104,.08); }
  .edu-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    border-bottom: 1px solid var(--border);
    background: var(--bg-light);
  }
  .edu-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 16px;
  }
  .edu-card-icon.navy { background: rgba(0,40,104,.1); color: var(--p1); }
  .edu-card-icon.green { background: rgba(0,135,90,.1); color: var(--p9); }
  .edu-card-icon.red { background: rgba(191,10,48,.1); color: var(--p8); }
  .edu-card-icon.amber { background: rgba(217,119,6,.1); color: #d97706; }
  .edu-card-icon.purple { background: rgba(109,40,217,.1); color: #6d28d9; }

  .edu-card-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 13.5px;
    font-weight: 800;
    color: var(--charcoal);
    line-height: 1.3;
  }
  .edu-card-title small {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    color: var(--gray-text);
    margin-top: 2px;
  }
  .edu-card-body { padding: 18px 20px; }
  .edu-card-body p {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--charcoal);
    line-height: 1.7;
    margin: 0 0 14px;
  }
  .edu-card-body p:last-child { margin-bottom: 0; }

  /* ── Tax Bracket Table ── */
  .edu-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .edu-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
  }
  .edu-table thead th {
    background: var(--p1);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 10px 14px;
    text-align: right;
    white-space: nowrap;
  }
  .edu-table thead th:first-child { text-align: center; border-radius: 0; }
  .edu-table tbody td {
    padding: 9px 14px;
    border-bottom: 1px solid #f1f5f9;
    text-align: right;
    font-variant-numeric: tabular-nums;
    color: var(--charcoal);
  }
  .edu-table tbody td:first-child {
    text-align: center;
    font-weight: 800;
    color: var(--p1);
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
  }
  .edu-table tbody tr:hover { background: rgba(0,40,104,.02); }
  .edu-table tbody tr:last-child td { border-bottom: none; }
  .edu-table .highlight-row { background: rgba(0,40,104,.04); }
  .edu-table .highlight-row td { font-weight: 600; }

  /* ── FICA Visual Bar ── */
  .fica-bar-group { margin-bottom: 14px; }
  .fica-bar-group:last-child { margin-bottom: 0; }
  .fica-bar-label {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 6px;
  }
  .fica-bar-name {
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--charcoal);
  }
  .fica-bar-rate {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 800;
    color: var(--p1);
  }
  .fica-bar-track {
    height: 10px;
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 9999px;
    overflow: hidden;
    position: relative;
  }
  .fica-bar-fill {
    height: 100%;
    border-radius: 9999px;
    transition: width 600ms ease;
  }
  .fica-bar-fill.navy { background: linear-gradient(90deg, var(--p1), #1a4fa0); }
  .fica-bar-fill.green { background: linear-gradient(90deg, var(--p9), #22b573); }
  .fica-bar-fill.red { background: linear-gradient(90deg, var(--p8), #e8365a); }
  .fica-bar-sub {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--gray-text);
    margin-top: 4px;
    line-height: 1.5;
  }

  /* ── Key-Value Rows ── */
  .edu-kv-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 0;
    border-bottom: 1px solid #f1f5f9;
    font-family: 'Inter', sans-serif;
    font-size: 12.5px;
  }
  .edu-kv-row:last-child { border-bottom: none; }
  .edu-kv-label {
    color: var(--charcoal);
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .edu-kv-label i { font-size: 11px; color: var(--p9); }
  .edu-kv-value {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--p1);
  }

  /* ── OBBB New Deductions Card ── */
  .obbb-edu-card .edu-card-header { background: linear-gradient(135deg, rgba(0,135,90,.06), rgba(0,135,90,.02)); border-bottom-color: rgba(0,135,90,.15); }
  .obbb-edu-item {
    display: flex;
    gap: 14px;
    padding: 14px 0;
    border-bottom: 1px solid #f1f5f9;
  }
  .obbb-edu-item:last-child { border-bottom: none; }
  .obbb-edu-num {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--p9);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
  }
  .obbb-edu-content { flex: 1; min-width: 0; }
  .obbb-edu-name {
    font-family: 'Montserrat', sans-serif;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 3px;
  }
  .obbb-edu-desc {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--gray-text);
    line-height: 1.6;
    margin: 0;
  }
  .obbb-edu-limit {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: rgba(0,135,90,.08);
    color: var(--p9);
    font-size: 10.5px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    margin-top: 6px;
    font-family: 'Inter', sans-serif;
  }

  /* ── Comparison Boxes (Effective vs Marginal) ── */
  .edu-compare-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .edu-compare-box {
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 16px;
    text-align: center;
  }
  .edu-compare-box.navy-accent { border-top: 3px solid var(--p1); }
  .edu-compare-box.red-accent { border-top: 3px solid var(--p8); }
  .edu-compare-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--gray-text);
    margin-bottom: 6px;
  }
  .edu-compare-value {
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 6px;
  }
  .edu-compare-value.navy { color: var(--p1); }
  .edu-compare-value.red { color: var(--p8); }
  .edu-compare-desc {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--gray-text);
    line-height: 1.5;
  }

  /* ── Callout / Highlight Box ── */
  .edu-callout {
    display: flex;
    gap: 14px;
    padding: 16px 18px;
    border-radius: 8px;
    margin-top: 14px;
  }
  .edu-callout.tip {
    background: rgba(0,135,90,.05);
    border: 1px solid rgba(0,135,90,.15);
  }
  .edu-callout.warning {
    background: rgba(217,119,6,.05);
    border: 1px solid rgba(217,119,6,.15);
  }
  .edu-callout.info {
    background: rgba(0,40,104,.04);
    border: 1px solid rgba(0,40,104,.1);
  }
  .edu-callout-icon {
    flex-shrink: 0;
    font-size: 14px;
    margin-top: 1px;
  }
  .edu-callout.tip .edu-callout-icon { color: var(--p9); }
  .edu-callout.warning .edu-callout-icon { color: #d97706; }
  .edu-callout.info .edu-callout-icon { color: var(--p1); }
  .edu-callout-text {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--charcoal);
    line-height: 1.65;
  }
  .edu-callout-text strong { font-weight: 700; }

  /* ── Self-Employment Visual ── */
  .se-visual {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 12px 0;
  }
  .se-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    border-radius: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    font-weight: 700;
  }
  .se-pill.navy { background: rgba(0,40,104,.08); color: var(--p1); }
  .se-pill.green { background: rgba(0,135,90,.08); color: var(--p9); }
  .se-pill.red { background: rgba(191,10,48,.08); color: var(--p8); }
  .se-pill.amber { background: rgba(217,119,6,.08); color: #d97706; }
  .se-arrow { color: var(--gray-text); font-size: 12px; }

  /* ── State Tax Map Legend ── */
  .state-tax-groups {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .state-tax-group {
    padding: 12px 14px;
    border-radius: 8px;
    border: 1px solid var(--border);
    background: var(--bg-light);
  }
  .state-tax-group-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .state-tax-group-label .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
  }
  .state-tax-group-label .dot.green-dot { background: var(--p9); }
  .state-tax-group-label .dot.navy-dot { background: var(--p1); }
  .state-tax-group-label .dot.amber-dot { background: #d97706; }
  .state-tax-group-label .dot.red-dot { background: var(--p8); }
  .state-tax-group-states {
    font-family: 'Inter', sans-serif;
    font-size: 11.5px;
    color: var(--gray-text);
    line-height: 1.6;
  }

  /* ══════════════════════════════════════════════════════════════
     RESPONSIVE — EDUCATIONAL SECTION
     ══════════════════════════════════════════════════════════════ */
  @media (max-width: 900px) {
    .edu-grid { grid-template-columns: 1fr; }
    .edu-compare-grid { grid-template-columns: 1fr 1fr; }
    .state-tax-groups { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 600px) {
    .edu-section { margin-top: 36px; }
    .edu-section-header { margin-bottom: 28px; }
    .edu-section-header h2 { font-size: 21px; }
    .edu-section-header p { font-size: 13.5px; }
    .edu-card-header { padding: 14px 16px; gap: 10px; }
    .edu-card-icon { width: 34px; height: 34px; font-size: 14px; }
    .edu-card-title { font-size: 12.5px; }
    .edu-card-body { padding: 16px; }
    .edu-card-body p { font-size: 12.5px; }
    .edu-table { font-size: 11.5px; }
    .edu-table thead th { font-size: 9px; padding: 8px 10px; }
    .edu-table tbody td { padding: 8px 10px; }
    .edu-compare-grid { grid-template-columns: 1fr; }
    .edu-compare-value { font-size: 18px; }
    .state-tax-groups { grid-template-columns: 1fr; }
    .se-visual { gap: 6px; }
    .se-pill { font-size: 10.5px; padding: 5px 9px; }
    .obbb-edu-item { gap: 10px; }
    .edu-kv-row { font-size: 12px; }
  }

  /* ══════════════════════════════════════════════════════════════
     2026 FEDERAL TAX BRACKETS — INTERACTIVE REFERENCE
     ══════════════════════════════════════════════════════════════ */
  .brackets-section { margin-top: 48px; margin-bottom: 0; }
  .brackets-section-header { text-align: center; margin-bottom: 40px; }
  .brackets-section-badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(0,40,104,.06); border: 1px solid rgba(0,40,104,.12);
    color: var(--p1); font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: .08em;
    text-transform: uppercase; padding: 6px 16px; border-radius: 9999px; margin-bottom: 16px;
  }
  .brackets-section-badge i { color: var(--p9); font-size: 11px; }
  .brackets-section-header h2 {
    font-family: 'Montserrat', sans-serif; font-size: 26px; font-weight: 900;
    color: var(--p1); margin: 0 0 12px; letter-spacing: -.3px; line-height: 1.25;
  }
  .brackets-section-header p {
    font-family: 'Inter', sans-serif; font-size: 14.5px; color: var(--gray-text);
    max-width: 700px; margin: 0 auto; line-height: 1.7;
  }

  /* Wrapper Card */
  .brackets-card {
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    overflow: hidden; box-shadow: var(--shadow-sm);
  }

  /* Filing Status Tabs */
  .brackets-tabs {
    display: flex; gap: 0; background: var(--bg-light);
    border-bottom: 1px solid var(--border); padding: 6px 6px;
  }
  .brackets-tab {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 7px;
    padding: 10px 8px; border-radius: 7px;
    font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700;
    color: var(--gray-text); cursor: pointer; border: none; background: transparent;
    transition: all 200ms ease; white-space: nowrap; letter-spacing: .01em;
  }
  .brackets-tab i { font-size: 13px; }
  .brackets-tab:hover { color: var(--p1); background: rgba(0,40,104,.06); }
  .brackets-tab.active {
    background: var(--p1); color: #fff;
    box-shadow: 0 2px 8px rgba(0,40,104,.25);
  }
  .brackets-tab.active i { color: #fff; }

  /* Table Panels */
  .brackets-panel { display: none; }
  .brackets-panel.active { display: block; }

  /* Main Table */
  .brackets-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .brackets-table {
    width: 100%; border-collapse: collapse;
    font-family: 'Inter', sans-serif; font-size: 13px;
  }
  .brackets-table thead th {
    background: var(--p1); color: #fff;
    font-family: 'Montserrat', sans-serif; font-size: 10px; font-weight: 800;
    letter-spacing: .05em; text-transform: uppercase;
    padding: 12px 16px; text-align: right; white-space: nowrap;
  }
  .brackets-table thead th:first-child { text-align: center; width: 72px; }
  .brackets-table thead th:nth-child(2) { text-align: left; }
  .brackets-table tbody td {
    padding: 0; border-bottom: 1px solid #f1f5f9;
    text-align: right; font-variant-numeric: tabular-nums; color: var(--charcoal);
  }
  .brackets-table tbody tr:last-child td { border-bottom: none; }

  /* Rate badge in first column */
  .bracket-rate-cell {
    text-align: center !important; padding: 14px 12px !important;
    width: 72px;
  }
  .bracket-rate-badge {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 44px; padding: 4px 10px; border-radius: 6px;
    font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 900;
    color: #fff; letter-spacing: -.02em;
  }
  .bracket-rate-badge.r10 { background: #22c55e; }
  .bracket-rate-badge.r12 { background: #16a34a; }
  .bracket-rate-badge.r22 { background: #d97706; }
  .bracket-rate-badge.r24 { background: #ea580c; }
  .bracket-rate-badge.r32 { background: #dc2626; }
  .bracket-rate-badge.r35 { background: #b91c1c; }
  .bracket-rate-badge.r37 { background: #991b1b; }

  /* Range and tax cells */
  .bracket-range-cell {
    text-align: left !important; padding: 14px 16px !important;
    font-weight: 600; color: var(--charcoal); font-size: 13px;
  }
  .bracket-tax-cell {
    padding: 14px 16px !important; font-weight: 600;
    color: var(--p1); font-size: 12.5px;
  }
  .bracket-cumulative-cell {
    padding: 14px 16px !important; font-weight: 700;
    color: var(--p8); font-size: 12.5px;
  }

  /* Hover highlight */
  .brackets-table tbody tr {
    transition: background 150ms ease; cursor: default;
  }
  .brackets-table tbody tr:hover { background: rgba(0,40,104,.03); }
  .brackets-table tbody tr.user-bracket {
    background: rgba(0,40,104,.06);
    box-shadow: inset 3px 0 0 var(--p1);
  }
  .brackets-table tbody tr.user-bracket td { font-weight: 700; }

  /* Income Highlighter */
  .brackets-highlighter {
    display: flex; align-items: center; gap: 16px;
    padding: 16px 20px; border-bottom: 1px solid var(--border);
    background: var(--bg-light); flex-wrap: wrap;
  }
  .brackets-hl-label {
    font-family: 'Montserrat', sans-serif; font-size: 11px; font-weight: 800;
    letter-spacing: .05em; text-transform: uppercase; color: var(--gray-text);
    display: flex; align-items: center; gap: 7px; flex-shrink: 0;
  }
  .brackets-hl-label i { color: var(--p9); font-size: 12px; }
  .brackets-hl-input-wrap {
    position: relative; display: flex; align-items: center; flex: 1; max-width: 260px;
  }
  .brackets-hl-input-wrap .prefix {
    position: absolute; left: 12px; font-size: 13px; font-weight: 700;
    color: var(--gray-text); pointer-events: none; z-index: 5;
  }
  .brackets-hl-input {
    width: 100% !important; padding: 9px 12px 9px 24px !important;
    border: 1.5px solid var(--border) !important; border-radius: 8px !important;
    font-family: 'Inter', sans-serif !important; font-size: 13.5px !important;
    font-weight: 600 !important; color: var(--charcoal) !important;
    background: #fff !important; outline: none !important;
    transition: all .2s !important; height: 40px !important;
    -webkit-appearance: none !important; box-shadow: none !important;
  }
  .brackets-hl-input:focus {
    border-color: var(--p1) !important;
    box-shadow: 0 0 0 3px rgba(0,40,104,.1) !important;
  }

  /* Result pill row */
  .brackets-hl-results {
    display: flex; gap: 10px; flex-wrap: wrap; align-items: center;
  }
  .brackets-hl-pill {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 6px 12px; border-radius: 6px;
    font-family: 'Inter', sans-serif; font-size: 11.5px; font-weight: 700;
    white-space: nowrap;
  }
  .brackets-hl-pill.navy { background: rgba(0,40,104,.08); color: var(--p1); }
  .brackets-hl-pill.green { background: rgba(0,135,90,.08); color: var(--p9); }
  .brackets-hl-pill.red { background: rgba(191,10,48,.08); color: var(--p8); }
  .brackets-hl-pill.amber { background: rgba(217,119,6,.08); color: #d97706; }

  /* Bottom Summary Strip */
  .brackets-summary {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 0; border-top: 1px solid var(--border); background: var(--bg-light);
  }
  .brackets-summary-item {
    padding: 16px; text-align: center;
    border-right: 1px solid var(--border);
  }
  .brackets-summary-item:last-child { border-right: none; }
  .brackets-summary-label {
    font-family: 'Montserrat', sans-serif; font-size: 9px; font-weight: 800;
    letter-spacing: .06em; text-transform: uppercase; color: var(--gray-text);
    margin-bottom: 5px;
  }
  .brackets-summary-value {
    font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: 900;
    font-variant-numeric: tabular-nums; line-height: 1;
  }
  .brackets-summary-value.navy { color: var(--p1); }
  .brackets-summary-value.green { color: var(--p9); }
  .brackets-summary-value.red { color: var(--p8); }
  .brackets-summary-sub {
    font-family: 'Inter', sans-serif; font-size: 10.5px;
    color: var(--gray-text); margin-top: 3px;
  }

  /* Progressive Visual Bar */
  .brackets-visual {
    padding: 18px 20px; border-top: 1px solid var(--border);
  }
  .brackets-visual-label {
    font-family: 'Montserrat', sans-serif; font-size: 10px; font-weight: 800;
    letter-spacing: .06em; text-transform: uppercase; color: var(--gray-text);
    margin-bottom: 10px; display: flex; align-items: center; gap: 7px;
  }
  .brackets-visual-label i { color: var(--p9); font-size: 11px; }
  .brackets-bar-track {
    display: flex; height: 18px; border-radius: 9999px; overflow: hidden;
    background: var(--bg-light); border: 1px solid var(--border);
  }
  .brackets-bar-seg {
    height: 100%; transition: width 400ms ease;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Montserrat', sans-serif; font-size: 8.5px; font-weight: 800;
    color: #fff; overflow: hidden; white-space: nowrap;
  }
  .brackets-bar-seg.s10 { background: #22c55e; }
  .brackets-bar-seg.s12 { background: #16a34a; }
  .brackets-bar-seg.s22 { background: #d97706; }
  .brackets-bar-seg.s24 { background: #ea580c; }
  .brackets-bar-seg.s32 { background: #dc2626; }
  .brackets-bar-seg.s35 { background: #b91c1c; }
  .brackets-bar-seg.s37 { background: #991b1b; }
  .brackets-bar-seg.snet { background: var(--p9); }
  .brackets-bar-legend {
    display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px;
  }
  .brackets-bar-legend-item {
    display: flex; align-items: center; gap: 5px;
    font-family: 'Inter', sans-serif; font-size: 11px; color: var(--gray-text);
  }
  .brackets-bar-legend-dot {
    width: 10px; height: 10px; border-radius: 3px; flex-shrink: 0;
  }

  /* ── RESPONSIVE — BRACKETS ── */
  @media (max-width: 900px) {
    .brackets-summary { grid-template-columns: repeat(2, 1fr); }
    .brackets-summary-item:nth-child(2) { border-right: none; }
    .brackets-summary-item:nth-child(-n+2) { border-bottom: 1px solid var(--border); }
    .brackets-highlighter { gap: 12px; }
    .brackets-hl-input-wrap { max-width: 100%; flex: 1 1 200px; }
  }
  @media (max-width: 600px) {
    .brackets-section { margin-top: 36px; }
    .brackets-section-header { margin-bottom: 28px; }
    .brackets-section-header h2 { font-size: 21px; }
    .brackets-section-header p { font-size: 13.5px; }
    .brackets-tabs { padding: 5px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .brackets-tab { font-size: 10.5px; padding: 9px 6px; gap: 5px; min-width: 0; }
    .brackets-tab i { font-size: 11px; }
    .brackets-tab span.tab-full { display: none; }
    .brackets-tab span.tab-short { display: inline; }
    .brackets-table { font-size: 12px; }
    .brackets-table thead th { font-size: 9px; padding: 10px 10px; }
    .bracket-rate-cell { padding: 10px 8px !important; width: 56px; }
    .bracket-rate-badge { font-size: 11px; min-width: 36px; padding: 3px 7px; }
    .bracket-range-cell { padding: 10px !important; font-size: 12px; }
    .bracket-tax-cell, .bracket-cumulative-cell { padding: 10px !important; font-size: 11px; }
    .brackets-highlighter { padding: 14px 16px; flex-direction: column; align-items: stretch; gap: 10px; }
    .brackets-hl-input-wrap { max-width: 100%; }
    .brackets-hl-results { gap: 6px; }
    .brackets-hl-pill { font-size: 10.5px; padding: 5px 9px; }
    .brackets-summary { grid-template-columns: repeat(2, 1fr); }
    .brackets-summary-value { font-size: 15px; }
    .brackets-visual { padding: 14px 16px; }
    .brackets-bar-legend { gap: 8px; }
    .brackets-bar-legend-item { font-size: 10px; }
  }
 /* ══════════════════════════════════════════════════════════════
     ONE BIG BEAUTIFUL BILL DEDUCTIONS SECTION
     ══════════════════════════════════════════════════════════════ */
  .obbb-section { margin-top: 48px; margin-bottom: 0; }
  .obbb-section-header { text-align: center; margin-bottom: 40px; }
  .obbb-section-badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(0,135,90,.06); border: 1px solid rgba(0,135,90,.15);
    color: var(--p9); font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: .08em;
    text-transform: uppercase; padding: 6px 16px; border-radius: 9999px; margin-bottom: 16px;
  }
  .obbb-section-badge i { color: var(--p9); font-size: 11px; }
  .obbb-section-header h2 {
    font-family: 'Montserrat', sans-serif; font-size: 26px; font-weight: 900;
    color: var(--p1); margin: 0 0 12px; letter-spacing: -.3px; line-height: 1.25;
  }
  .obbb-section-header p {
    font-family: 'Inter', sans-serif; font-size: 14.5px; color: var(--gray-text);
    max-width: 700px; margin: 0 auto; line-height: 1.7;
  }

  /* Timeline Layout */
  .obbb-timeline { position: relative; padding-left: 40px; }
  .obbb-timeline::before {
    content: ''; position: absolute; left: 15px; top: 0; bottom: 0;
    width: 2px; background: linear-gradient(to bottom, var(--p9), var(--p1), var(--p8), #d97706);
    border-radius: 999px;
  }

  /* Deduction Card */
  .obbb-deduction {
    position: relative; background: #fff; border: 1px solid var(--border);
    border-radius: 10px; margin-bottom: 24px; overflow: hidden;
    transition: box-shadow 280ms ease;
  }
  .obbb-deduction:last-child { margin-bottom: 0; }
  .obbb-deduction:hover { box-shadow: 0 6px 24px rgba(0,40,104,.08); }

  /* Timeline dot */
  .obbb-dot {
    position: absolute; left: -33px; top: 24px;
    width: 28px; height: 28px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; color: #fff; z-index: 2;
    box-shadow: 0 0 0 4px #fff, 0 2px 8px rgba(0,0,0,.12);
  }
  .obbb-dot.green { background: var(--p9); }
  .obbb-dot.navy { background: var(--p1); }
  .obbb-dot.red { background: var(--p8); }
  .obbb-dot.amber { background: #d97706; }

  /* Card Header */
  .obbb-card-header {
    display: flex; align-items: center; gap: 14px;
    padding: 18px 22px; background: var(--bg-light);
    border-bottom: 1px solid var(--border);
  }
  .obbb-card-icon {
    width: 42px; height: 42px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; flex-shrink: 0;
  }
  .obbb-card-icon.green { background: rgba(0,135,90,.1); color: var(--p9); }
  .obbb-card-icon.navy { background: rgba(0,40,104,.08); color: var(--p1); }
  .obbb-card-icon.red { background: rgba(191,10,48,.08); color: var(--p8); }
  .obbb-card-icon.amber { background: rgba(217,119,6,.08); color: #d97706; }
  .obbb-card-header-info { flex: 1; min-width: 0; }
  .obbb-card-title {
    font-family: 'Montserrat', sans-serif; font-size: 15px;
    font-weight: 800; color: var(--charcoal); line-height: 1.3;
  }
  .obbb-card-subtitle {
    font-family: 'Inter', sans-serif; font-size: 12px;
    color: var(--gray-text); margin-top: 2px;
  }
  .obbb-card-header-tags { display: flex; gap: 6px; flex-wrap: wrap; flex-shrink: 0; }
  .obbb-card-tag {
    display: inline-flex; align-items: center; gap: 4px;
    font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 700;
    padding: 4px 10px; border-radius: 9999px; white-space: nowrap;
  }
  .obbb-card-tag.green { background: rgba(0,135,90,.08); color: var(--p9); }
  .obbb-card-tag.navy { background: rgba(0,40,104,.08); color: var(--p1); }
  .obbb-card-tag.amber { background: rgba(217,119,6,.08); color: #d97706; }

  /* Card Body */
  .obbb-card-body { padding: 20px 22px; }

  /* Key Details Grid */
  .obbb-details-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
    margin-bottom: 18px;
  }
  .obbb-detail-box {
    background: var(--bg-light); border: 1px solid var(--border);
    border-radius: 8px; padding: 14px 16px;
  }
  .obbb-detail-label {
    font-family: 'Montserrat', sans-serif; font-size: 9px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text); margin-bottom: 4px;
  }
  .obbb-detail-value {
    font-family: 'Montserrat', sans-serif; font-size: 18px;
    font-weight: 900; line-height: 1; font-variant-numeric: tabular-nums;
  }
  .obbb-detail-value.green { color: var(--p9); }
  .obbb-detail-value.navy { color: var(--p1); }
  .obbb-detail-value.red { color: var(--p8); }
  .obbb-detail-value.amber { color: #d97706; }
  .obbb-detail-note {
    font-family: 'Inter', sans-serif; font-size: 11px;
    color: var(--gray-text); margin-top: 4px; line-height: 1.4;
  }

  /* Eligibility Checklist */
  .obbb-checklist {
    list-style: none; padding: 0; margin: 0 0 18px;
  }
  .obbb-checklist li {
    display: flex; align-items: flex-start; gap: 10px;
    font-family: 'Inter', sans-serif; font-size: 13px; color: var(--charcoal);
    line-height: 1.6; padding: 7px 0;
    border-bottom: 1px solid #f1f5f9;
  }
  .obbb-checklist li:last-child { border-bottom: none; }
  .obbb-checklist li i {
    flex-shrink: 0; margin-top: 3px; font-size: 12px; width: 16px; text-align: center;
  }
  .obbb-checklist li i.check { color: var(--p9); }
  .obbb-checklist li i.warn { color: #d97706; }
  .obbb-checklist li i.cross { color: var(--p8); }

  /* Phase-out Visual */
  .obbb-phaseout {
    background: var(--bg-light); border: 1px solid var(--border);
    border-radius: 8px; padding: 16px; margin-bottom: 18px;
  }
  .obbb-phaseout-title {
    font-family: 'Montserrat', sans-serif; font-size: 10px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text); margin-bottom: 10px;
    display: flex; align-items: center; gap: 6px;
  }
  .obbb-phaseout-title i { color: var(--p8); font-size: 11px; }
  .obbb-phaseout-bar {
    position: relative; height: 28px; border-radius: 999px;
    overflow: hidden; background: #e8ecf1;
  }
  .obbb-phaseout-fill {
    height: 100%; border-radius: 999px; display: flex;
    align-items: center; padding: 0 12px;
    font-family: 'Montserrat', sans-serif; font-size: 10px;
    font-weight: 800; color: #fff; white-space: nowrap;
  }
  .obbb-phaseout-fill.green { background: linear-gradient(90deg, var(--p9), #16a34a); }
  .obbb-phaseout-fill.navy { background: linear-gradient(90deg, var(--p1), #1a4fa0); }
  .obbb-phaseout-markers {
    display: flex; justify-content: space-between; margin-top: 6px;
  }
  .obbb-phaseout-marker {
    font-family: 'Inter', sans-serif; font-size: 10.5px;
    color: var(--gray-text); font-weight: 600;
  }
  .obbb-phaseout-marker strong { color: var(--charcoal); }

  /* Example Box */
  .obbb-example {
    background: rgba(0,40,104,.02); border: 1px solid rgba(0,40,104,.1);
    border-radius: 8px; padding: 16px; margin-bottom: 0;
  }
  .obbb-example-title {
    font-family: 'Montserrat', sans-serif; font-size: 10px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--p1); margin-bottom: 10px;
    display: flex; align-items: center; gap: 6px;
  }
  .obbb-example-title i { font-size: 11px; }
  .obbb-example-row {
    display: flex; justify-content: space-between; align-items: center;
    padding: 5px 0; font-family: 'Inter', sans-serif; font-size: 12.5px;
    border-bottom: 1px solid rgba(0,40,104,.06);
  }
  .obbb-example-row:last-child { border-bottom: none; }
  .obbb-example-label { color: var(--charcoal); font-weight: 500; }
  .obbb-example-value { font-weight: 700; font-variant-numeric: tabular-nums; }
  .obbb-example-value.green { color: var(--p9); }
  .obbb-example-value.navy { color: var(--p1); }
  .obbb-example-value.red { color: var(--p8); }
  .obbb-example-row.total {
    background: var(--p1); margin: 8px -16px -16px; padding: 12px 16px;
    border-radius: 0 0 8px 8px; border-bottom: none;
  }
  .obbb-example-row.total .obbb-example-label { color: #fff; font-weight: 700; }
  .obbb-example-row.total .obbb-example-value { color: #fff; font-weight: 900; font-family: 'Montserrat', sans-serif; font-size: 14px; }

  /* Bottom Savings Summary */
  .obbb-savings-banner {
    display: flex; align-items: center; gap: 16px;
    padding: 20px 24px; margin-top: 32px;
    background: linear-gradient(135deg, rgba(0,135,90,.06), rgba(0,40,104,.04));
    border: 1px solid rgba(0,135,90,.15); border-radius: 10px;
  }
  .obbb-savings-icon {
    width: 52px; height: 52px; border-radius: 50%; flex-shrink: 0;
    background: var(--p9); color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; box-shadow: 0 4px 14px rgba(0,135,90,.25);
  }
  .obbb-savings-info { flex: 1; }
  .obbb-savings-label {
    font-family: 'Montserrat', sans-serif; font-size: 11px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text); margin-bottom: 3px;
  }
  .obbb-savings-value {
    font-family: 'Montserrat', sans-serif; font-size: 24px;
    font-weight: 900; color: var(--p9); line-height: 1;
  }
  .obbb-savings-desc {
    font-family: 'Inter', sans-serif; font-size: 12.5px;
    color: var(--gray-text); margin-top: 5px; line-height: 1.5;
  }
  .obbb-savings-kpis {
    display: flex; gap: 20px; flex-shrink: 0;
  }
  .obbb-savings-kpi { text-align: center; }
  .obbb-savings-kpi-label {
    font-family: 'Montserrat', sans-serif; font-size: 9px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text);
  }
  .obbb-savings-kpi-value {
    font-family: 'Montserrat', sans-serif; font-size: 16px;
    font-weight: 900; color: var(--p1); line-height: 1.2;
  }

  /* ── RESPONSIVE — OBBB ── */
  @media (max-width: 900px) {
    .obbb-savings-banner { flex-direction: column; text-align: center; gap: 14px; }
    .obbb-savings-kpis { justify-content: center; }
    .obbb-card-header { flex-wrap: wrap; }
    .obbb-card-header-tags { width: 100%; }
  }
  @media (max-width: 600px) {
    .obbb-section { margin-top: 36px; }
    .obbb-section-header { margin-bottom: 28px; }
    .obbb-section-header h2 { font-size: 21px; }
    .obbb-section-header p { font-size: 13.5px; }
    .obbb-timeline { padding-left: 32px; }
    .obbb-timeline::before { left: 11px; }
    .obbb-dot { left: -28px; top: 20px; width: 24px; height: 24px; font-size: 10px; }
    .obbb-card-header { padding: 14px 16px; gap: 10px; }
    .obbb-card-icon { width: 36px; height: 36px; font-size: 15px; }
    .obbb-card-title { font-size: 13.5px; }
    .obbb-card-subtitle { font-size: 11px; }
    .obbb-card-tag { font-size: 9.5px; padding: 3px 8px; }
    .obbb-card-body { padding: 16px; }
    .obbb-details-grid { grid-template-columns: 1fr; gap: 10px; }
    .obbb-detail-value { font-size: 16px; }
    .obbb-checklist li { font-size: 12px; gap: 8px; }
    .obbb-phaseout { padding: 12px; }
    .obbb-phaseout-fill { font-size: 9px; padding: 0 8px; }
    .obbb-phaseout-marker { font-size: 9.5px; }
    .obbb-example { padding: 12px; }
    .obbb-example-row { font-size: 12px; }
    .obbb-example-row.total { margin: 8px -12px -12px; padding: 10px 12px; }
    .obbb-savings-banner { padding: 16px; margin-top: 24px; }
    .obbb-savings-icon { width: 44px; height: 44px; font-size: 18px; }
    .obbb-savings-value { font-size: 20px; }
    .obbb-savings-kpis { gap: 16px; }
    .obbb-savings-kpi-value { font-size: 14px; }
  }
 /* ══════════════════════════════════════════════════════════════
     REAL-WORLD CASE STUDIES SECTION
     ══════════════════════════════════════════════════════════════ */
  .cases-section { margin-top: 48px; margin-bottom: 0; }
  .cases-section-header { text-align: center; margin-bottom: 40px; }
  .cases-section-badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(0,40,104,.06); border: 1px solid rgba(0,40,104,.12);
    color: var(--p1); font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: .08em;
    text-transform: uppercase; padding: 6px 16px; border-radius: 9999px; margin-bottom: 16px;
  }
  .cases-section-badge i { color: var(--p9); font-size: 11px; }
  .cases-section-header h2 {
    font-family: 'Montserrat', sans-serif; font-size: 26px; font-weight: 900;
    color: var(--p1); margin: 0 0 12px; letter-spacing: -.3px; line-height: 1.25;
  }
  .cases-section-header p {
    font-family: 'Inter', sans-serif; font-size: 14.5px; color: var(--gray-text);
    max-width: 680px; margin: 0 auto; line-height: 1.7;
  }

  /* Case Card */
  .case-card {
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    overflow: hidden; margin-bottom: 20px;
    transition: box-shadow 280ms ease;
  }
  .case-card:last-child { margin-bottom: 0; }
  .case-card:hover { box-shadow: 0 6px 24px rgba(0,40,104,.08); }

  /* Case Header */
  .case-header {
    display: flex; align-items: center; gap: 16px;
    padding: 18px 22px; border-bottom: 1px solid var(--border);
    background: var(--bg-light); cursor: pointer; user-select: none;
    transition: background 180ms;
  }
  .case-header:hover { background: rgba(0,40,104,.03); }
  .case-avatar {
    width: 46px; height: 46px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,.08);
  }
  .case-avatar.navy { background: var(--p1); color: #fff; }
  .case-avatar.green { background: var(--p9); color: #fff; }
  .case-avatar.red { background: var(--p8); color: #fff; }
  .case-avatar.amber { background: #d97706; color: #fff; }
  .case-avatar.purple { background: #6d28d9; color: #fff; }
  .case-header-info { flex: 1; min-width: 0; }
  .case-name {
    font-family: 'Montserrat', sans-serif; font-size: 14px;
    font-weight: 800; color: var(--charcoal); line-height: 1.3;
  }
  .case-tagline {
    font-family: 'Inter', sans-serif; font-size: 12px;
    color: var(--gray-text); margin-top: 2px;
  }
  .case-header-tags { display: flex; gap: 6px; flex-wrap: wrap; flex-shrink: 0; }
  .case-tag {
    display: inline-flex; align-items: center; gap: 4px;
    font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 700;
    padding: 4px 10px; border-radius: 9999px; white-space: nowrap;
  }
  .case-tag.navy { background: rgba(0,40,104,.08); color: var(--p1); }
  .case-tag.green { background: rgba(0,135,90,.08); color: var(--p9); }
  .case-tag.amber { background: rgba(217,119,6,.08); color: #d97706; }
  .case-tag.red { background: rgba(191,10,48,.08); color: var(--p8); }
  .case-chevron {
    color: #9ca3af; transition: transform 200ms ease; font-size: 12px; flex-shrink: 0;
  }
  .case-header.open .case-chevron { transform: rotate(180deg); }

  /* Case Body */
  .case-body { display: none; }
  .case-body.open { display: block; }

  /* Profile Strip */
  .case-profile {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0; border-bottom: 1px solid var(--border);
  }
  .case-profile-item {
    padding: 12px 18px; border-right: 1px solid var(--border);
    display: flex; flex-direction: column; gap: 2px;
  }
  .case-profile-item:last-child { border-right: none; }
  .case-profile-label {
    font-family: 'Montserrat', sans-serif; font-size: 9px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text);
  }
  .case-profile-value {
    font-family: 'Inter', sans-serif; font-size: 13px;
    font-weight: 700; color: var(--charcoal);
    font-variant-numeric: tabular-nums;
  }

  /* Calculation Waterfall */
  .case-calc-wrap { padding: 20px 22px; }
  .case-calc-title {
    font-family: 'Montserrat', sans-serif; font-size: 10px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text); margin-bottom: 14px;
    display: flex; align-items: center; gap: 7px;
  }
  .case-calc-title i { color: var(--p9); font-size: 11px; }

  .case-waterfall { width: 100%; }
  .case-wf-row {
    display: flex; align-items: center; justify-content: space-between;
    padding: 8px 0; border-bottom: 1px solid #f1f5f9;
    font-family: 'Inter', sans-serif; font-size: 12.5px;
  }
  .case-wf-row:last-child { border-bottom: none; }
  .case-wf-label {
    display: flex; align-items: center; gap: 8px;
    color: var(--charcoal); font-weight: 500;
  }
  .case-wf-label i { font-size: 10px; width: 14px; text-align: center; }
  .case-wf-value {
    font-weight: 700; font-variant-numeric: tabular-nums; text-align: right;
  }
  .case-wf-value.positive { color: var(--p9); }
  .case-wf-value.negative { color: var(--p8); }
  .case-wf-value.navy { color: var(--p1); }
  .case-wf-row.subtotal {
    background: rgba(0,40,104,.03); margin: 4px -22px;
    padding: 10px 22px; border-bottom: none;
  }
  .case-wf-row.subtotal .case-wf-label { font-weight: 700; color: var(--p1); }
  .case-wf-row.subtotal .case-wf-value { font-weight: 800; color: var(--p1); font-size: 13px; }
  .case-wf-row.result {
    background: var(--p1); margin: 8px -22px -20px;
    padding: 14px 22px; border-bottom: none; border-radius: 0 0 10px 10px;
  }
  .case-wf-row.result .case-wf-label { color: #fff; font-weight: 800; font-size: 13px; }
  .case-wf-row.result .case-wf-value { color: #fff; font-weight: 900; font-size: 16px; font-family: 'Montserrat', sans-serif; }

  /* KPI Strip at bottom */
  .case-kpi-strip {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 0; border-top: 1px solid var(--border);
  }
  .case-kpi {
    padding: 14px 16px; text-align: center;
    border-right: 1px solid var(--border);
  }
  .case-kpi:last-child { border-right: none; }
  .case-kpi-label {
    font-family: 'Montserrat', sans-serif; font-size: 9px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--gray-text); margin-bottom: 4px;
  }
  .case-kpi-value {
    font-family: 'Montserrat', sans-serif; font-size: 17px;
    font-weight: 900; font-variant-numeric: tabular-nums; line-height: 1;
  }
  .case-kpi-value.navy { color: var(--p1); }
  .case-kpi-value.green { color: var(--p9); }
  .case-kpi-value.red { color: var(--p8); }
  .case-kpi-value.amber { color: #d97706; }
  .case-kpi-sub {
    font-family: 'Inter', sans-serif; font-size: 10.5px;
    color: var(--gray-text); margin-top: 3px;
  }

  /* Insight Box */
  .case-insight {
    display: flex; gap: 12px; padding: 14px 18px; margin: 0 22px 18px;
    border-radius: 8px; background: rgba(0,135,90,.04);
    border: 1px solid rgba(0,135,90,.12);
  }
  .case-insight i { color: var(--p9); font-size: 13px; flex-shrink: 0; margin-top: 2px; }
  .case-insight-text {
    font-family: 'Inter', sans-serif; font-size: 12px;
    color: var(--charcoal); line-height: 1.65;
  }
  .case-insight-text strong { font-weight: 700; }

  /* ── RESPONSIVE — CASE STUDIES ── */
  @media (max-width: 900px) {
    .case-header { flex-wrap: wrap; gap: 12px; }
    .case-header-tags { width: 100%; }
    .case-profile { grid-template-columns: repeat(3, 1fr); }
    .case-kpi-strip { grid-template-columns: repeat(2, 1fr); }
    .case-kpi { border-bottom: 1px solid var(--border); }
  }
  @media (max-width: 600px) {
    .cases-section { margin-top: 36px; }
    .cases-section-header { margin-bottom: 28px; }
    .cases-section-header h2 { font-size: 21px; }
    .cases-section-header p { font-size: 13.5px; }
    .case-header { padding: 14px 16px; gap: 10px; }
    .case-avatar { width: 40px; height: 40px; font-size: 15px; }
    .case-name { font-size: 13px; }
    .case-tagline { font-size: 11px; }
    .case-tag { font-size: 9.5px; padding: 3px 8px; }
    .case-profile { grid-template-columns: repeat(2, 1fr); }
    .case-profile-item { padding: 10px 14px; }
    .case-calc-wrap { padding: 16px; }
    .case-wf-row { font-size: 12px; }
    .case-wf-row.subtotal { margin: 4px -16px; padding: 10px 16px; }
    .case-wf-row.result { margin: 8px -16px -16px; padding: 12px 16px; }
    .case-wf-row.result .case-wf-value { font-size: 14px; }
    .case-kpi-strip { grid-template-columns: repeat(2, 1fr); }
    .case-kpi { padding: 12px; }
    .case-kpi-value { font-size: 15px; }
    .case-insight { margin: 0 16px 16px; padding: 12px 14px; }
    .case-insight-text { font-size: 11.5px; }
  }
  /* ══════════════════════════════════════════════════════════════
     PRO TIPS / EXPERT TIPS SECTION
     ══════════════════════════════════════════════════════════════ */
  .protips-section{margin-top:48px;margin-bottom:0}
  .protips-header{text-align:center;margin-bottom:40px}
  .protips-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.12);color:var(--p1);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:9999px;margin-bottom:16px}
  .protips-badge i{color:var(--p9);font-size:11px}
  .protips-header h2{font-family:'Montserrat',sans-serif;font-size:26px;font-weight:900;color:var(--p1);margin:0 0 12px;letter-spacing:-.3px;line-height:1.25}
  .protips-header p{font-family:'Inter',sans-serif;font-size:14.5px;color:var(--gray-text);max-width:700px;margin:0 auto;line-height:1.7}

  /* Tips Grid */
  .protips-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .protips-grid .protip-card:first-child{grid-column:1/-1}

  /* Card */
  .protip-card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:box-shadow .28s ease,transform .28s ease}
  .protip-card:hover{box-shadow:0 8px 28px rgba(0,40,104,.09);transform:translateY(-2px)}

  /* Featured (first card) */
  .protip-card.featured{border-color:rgba(0,40,104,.18)}
  .protip-card.featured .protip-card-top{background:linear-gradient(135deg,var(--p1) 0%,#0d3b7a 100%);color:#fff}
  .protip-card.featured .protip-num{background:rgba(255,255,255,.2);color:#fff}
  .protip-card.featured .protip-card-title{color:#fff}
  .protip-card.featured .protip-card-subtitle{color:rgba(255,255,255,.7)}
  .protip-card.featured .protip-tag{background:rgba(255,255,255,.15);color:#fff}

  /* Card Top */
  .protip-card-top{display:flex;align-items:center;gap:14px;padding:18px 22px;border-bottom:1px solid var(--border);background:var(--bg-light)}
  .protip-num{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-size:16px;font-weight:900;background:rgba(0,40,104,.08);color:var(--p1);flex-shrink:0}
  .protip-card-info{flex:1;min-width:0}
  .protip-card-title{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--charcoal);line-height:1.3}
  .protip-card-subtitle{font-family:'Inter',sans-serif;font-size:11.5px;color:var(--gray-text);margin-top:2px}
  .protip-card-tags{display:flex;gap:5px;flex-wrap:wrap;flex-shrink:0}
  .protip-tag{display:inline-flex;align-items:center;gap:4px;font-family:'Inter',sans-serif;font-size:10px;font-weight:700;padding:3px 9px;border-radius:9999px;white-space:nowrap}
  .protip-tag.green{background:rgba(0,135,90,.08);color:var(--p9)}
  .protip-tag.navy{background:rgba(0,40,104,.08);color:var(--p1)}
  .protip-tag.amber{background:rgba(217,119,6,.08);color:#d97706}
  .protip-tag.red{background:rgba(191,10,48,.08);color:var(--p8)}

  /* Card Body */
  .protip-body{padding:20px 22px}
  .protip-body-text{font-family:'Inter',sans-serif;font-size:13.5px;color:var(--charcoal);line-height:1.72;margin-bottom:16px}
  .protip-body-text strong{font-weight:700}

  /* Action Items */
  .protip-actions{list-style:none;padding:0;margin:0 0 16px}
  .protip-actions li{display:flex;align-items:flex-start;gap:10px;font-family:'Inter',sans-serif;font-size:12.5px;color:var(--charcoal);line-height:1.6;padding:8px 0;border-bottom:1px solid #f1f5f9}
  .protip-actions li:last-child{border-bottom:none}
  .protip-actions li i{flex-shrink:0;margin-top:3px;font-size:11px;width:14px;text-align:center}
  .protip-actions li i.green{color:var(--p9)}
  .protip-actions li i.navy{color:var(--p1)}
  .protip-actions li i.amber{color:#d97706}

  /* Impact Box */
  .protip-impact{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:8px;border:1px solid var(--border);background:var(--bg-light)}
  .protip-impact-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
  .protip-impact-icon.green{background:rgba(0,135,90,.1);color:var(--p9)}
  .protip-impact-icon.navy{background:rgba(0,40,104,.08);color:var(--p1)}
  .protip-impact-icon.red{background:rgba(191,10,48,.08);color:var(--p8)}
  .protip-impact-icon.amber{background:rgba(217,119,6,.08);color:#d97706}
  .protip-impact-info{flex:1}
  .protip-impact-label{font-family:'Montserrat',sans-serif;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-text)}
  .protip-impact-value{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:900;line-height:1.1}
  .protip-impact-value.green{color:var(--p9)}
  .protip-impact-value.navy{color:var(--p1)}
  .protip-impact-value.red{color:var(--p8)}
  .protip-impact-value.amber{color:#d97706}
  .protip-impact-sub{font-family:'Inter',sans-serif;font-size:10.5px;color:var(--gray-text);margin-top:2px}

  /* Featured split layout */
  .protip-featured-body{display:grid;grid-template-columns:1fr 260px;gap:20px}
  .protip-featured-sidebar{display:flex;flex-direction:column;gap:12px}
  .protip-sidebar-kpi{background:var(--bg-light);border:1px solid var(--border);border-radius:8px;padding:14px 16px;text-align:center}
  .protip-sidebar-kpi-label{font-family:'Montserrat',sans-serif;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-text);margin-bottom:4px}
  .protip-sidebar-kpi-value{font-family:'Montserrat',sans-serif;font-size:22px;font-weight:900;line-height:1}
  .protip-sidebar-kpi-value.green{color:var(--p9)}
  .protip-sidebar-kpi-value.navy{color:var(--p1)}
  .protip-sidebar-kpi-sub{font-family:'Inter',sans-serif;font-size:10.5px;color:var(--gray-text);margin-top:3px}

  /* ── RESPONSIVE — PRO TIPS ── */
  @media(max-width:900px){
    .protips-grid{grid-template-columns:1fr}
    .protips-grid .protip-card:first-child{grid-column:auto}
    .protip-featured-body{grid-template-columns:1fr}
    .protip-featured-sidebar{flex-direction:row;flex-wrap:wrap}
    .protip-sidebar-kpi{flex:1;min-width:140px}
  }
  @media(max-width:600px){
    .protips-section{margin-top:36px}
    .protips-header{margin-bottom:28px}
    .protips-header h2{font-size:21px}
    .protips-header p{font-size:13.5px}
    .protips-grid{gap:16px}
    .protip-card-top{padding:14px 16px;gap:10px;flex-wrap:wrap}
    .protip-num{width:32px;height:32px;font-size:14px;border-radius:8px}
    .protip-card-title{font-size:13px}
    .protip-card-subtitle{font-size:11px}
    .protip-card-tags{width:100%}
    .protip-tag{font-size:9.5px;padding:3px 7px}
    .protip-body{padding:16px}
    .protip-body-text{font-size:12.5px;margin-bottom:12px}
    .protip-actions li{font-size:12px;gap:8px;padding:7px 0}
    .protip-impact{padding:12px;gap:10px;flex-wrap:wrap}
    .protip-impact-icon{width:36px;height:36px;font-size:14px}
    .protip-impact-value{font-size:15px}
    .protip-featured-body{gap:14px}
    .protip-featured-sidebar{gap:10px}
    .protip-sidebar-kpi{padding:10px 12px}
    .protip-sidebar-kpi-value{font-size:18px}
  }

  /* ══════════════════════════════════════════════════════════════
     FAQ SECTION — 30+ QUESTIONS
     ══════════════════════════════════════════════════════════════ */
  .faq-section{margin-top:48px;margin-bottom:0}
  .faq-header{text-align:center;margin-bottom:40px}
  .faq-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.12);color:var(--p1);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:9999px;margin-bottom:16px}
  .faq-badge i{color:var(--p9);font-size:11px}
  .faq-header h2{font-family:'Montserrat',sans-serif;font-size:26px;font-weight:900;color:var(--p1);margin:0 0 12px;letter-spacing:-.3px;line-height:1.25}
  .faq-header p{font-family:'Inter',sans-serif;font-size:14.5px;color:var(--gray-text);max-width:700px;margin:0 auto;line-height:1.7}

  /* Category Tabs */
  .faq-cat-tabs{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:28px}
  .faq-cat-tab{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border-radius:8px;border:1px solid var(--border);background:#fff;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;color:var(--gray-text);cursor:pointer;transition:all .2s}
  .faq-cat-tab:hover{border-color:var(--p1);color:var(--p1);background:rgba(0,40,104,.03)}
  .faq-cat-tab.active{background:var(--p1);color:#fff;border-color:var(--p1)}
  .faq-cat-tab.active i{color:#fff}
  .faq-cat-tab i{font-size:11px;color:var(--gray-text)}
  .faq-cat-tab .faq-cat-count{font-size:10px;font-weight:800;background:rgba(0,0,0,.08);padding:1px 6px;border-radius:99px;margin-left:2px}
  .faq-cat-tab.active .faq-cat-count{background:rgba(255,255,255,.25)}

  /* FAQ List */
  .faq-list{max-width:860px;margin:0 auto}
  .faq-item{background:#fff;border:1px solid var(--border);border-radius:10px;margin-bottom:10px;overflow:hidden;transition:box-shadow .2s}
  .faq-item:hover{box-shadow:0 3px 14px rgba(0,40,104,.06)}
  .faq-item:last-child{margin-bottom:0}
  .faq-q{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;user-select:none;transition:background .15s}
  .faq-q:hover{background:rgba(0,40,104,.02)}
  .faq-q-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;background:rgba(0,40,104,.06);color:var(--p1);transition:all .2s}
  .faq-item.open .faq-q-icon{background:var(--p1);color:#fff}
  .faq-q-text{flex:1;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;color:var(--charcoal);line-height:1.45}
  .faq-q-chevron{color:#9ca3af;font-size:11px;transition:transform .2s;flex-shrink:0}
  .faq-item.open .faq-q-chevron{transform:rotate(180deg);color:var(--p1)}
  .faq-a{display:none;padding:0 20px 18px 60px;font-family:'Inter',sans-serif;font-size:13.5px;color:var(--charcoal);line-height:1.75}
  .faq-item.open .faq-a{display:block}
  .faq-a p{margin-bottom:10px}
  .faq-a p:last-child{margin-bottom:0}
  .faq-a strong{font-weight:700}
  .faq-a ul{margin:8px 0;padding-left:20px}
  .faq-a ul li{margin-bottom:4px;line-height:1.65}
  .faq-a .faq-highlight{background:rgba(0,135,90,.06);border-left:3px solid var(--p9);padding:10px 14px;border-radius:0 6px 6px 0;margin:10px 0;font-size:13px}
  .faq-a code{background:rgba(0,40,104,.06);padding:2px 6px;border-radius:4px;font-size:12px;font-family:'Inter',sans-serif;font-weight:600;color:var(--p1)}

  /* Search */
  .faq-search-wrap{max-width:480px;margin:0 auto 24px;position:relative}
  .faq-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--gray-text);font-size:13px;pointer-events:none}
  .faq-search{width:100%!important;padding:11px 14px 11px 38px!important;border:1.5px solid var(--border)!important;border-radius:10px!important;font-family:'Inter',sans-serif!important;font-size:13.5px!important;color:var(--charcoal)!important;background:#fff!important;outline:none!important;transition:all .2s!important;height:auto!important;-webkit-appearance:none!important;box-shadow:none!important}
  .faq-search:focus{border-color:var(--p1)!important;box-shadow:0 0 0 3px rgba(0,40,104,.1)!important}
  .faq-search::placeholder{color:#b0b5bc}

  /* No results */
  .faq-no-results{display:none;text-align:center;padding:40px 20px;color:var(--gray-text);font-family:'Inter',sans-serif;font-size:14px}
  .faq-no-results i{font-size:28px;margin-bottom:10px;display:block;color:#d1d5db}

  /* ── RESPONSIVE — FAQ ── */
  @media(max-width:600px){
    .faq-section{margin-top:36px}
    .faq-header{margin-bottom:28px}
    .faq-header h2{font-size:21px}
    .faq-header p{font-size:13.5px}
    .faq-cat-tabs{gap:4px}
    .faq-cat-tab{font-size:11px;padding:6px 10px}
    .faq-q{padding:14px 16px;gap:10px}
    .faq-q-icon{width:24px;height:24px;font-size:10px;border-radius:6px}
    .faq-q-text{font-size:13px}
    .faq-a{padding:0 16px 16px 50px;font-size:12.5px}
    .faq-search{font-size:13px!important;padding:10px 12px 10px 36px!important}
  }
 /* ══════════════════════════════════════════════════════════════
     RELATED CALCULATORS SECTION
     ══════════════════════════════════════════════════════════════ */
  .related-section{margin-top:48px;margin-bottom:0}
  .related-header{text-align:center;margin-bottom:36px}
  .related-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.12);color:var(--p1);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:9999px;margin-bottom:16px}
  .related-badge i{color:var(--p9);font-size:11px}
  .related-header h2{font-family:'Montserrat',sans-serif;font-size:26px;font-weight:900;color:var(--p1);margin:0 0 12px;letter-spacing:-.3px;line-height:1.25}
  .related-header p{font-family:'Inter',sans-serif;font-size:14.5px;color:var(--gray-text);max-width:700px;margin:0 auto;line-height:1.7}

  /* Category Row Label */
  .related-cat-label{display:flex;align-items:center;gap:10px;margin-bottom:14px;margin-top:28px}
  .related-cat-label:first-of-type{margin-top:0}
  .related-cat-icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}
  .related-cat-icon.navy{background:rgba(0,40,104,.08);color:var(--p1)}
  .related-cat-icon.green{background:rgba(0,135,90,.08);color:var(--p9)}
  .related-cat-icon.red{background:rgba(191,10,48,.08);color:var(--p8)}
  .related-cat-icon.amber{background:rgba(217,119,6,.08);color:#d97706}
  .related-cat-icon.purple{background:rgba(109,40,217,.08);color:#6d28d9}
  .related-cat-name{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);text-transform:uppercase;letter-spacing:.04em}
  .related-cat-line{flex:1;height:1px;background:var(--border)}

  /* Cards Grid */
  .related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
  .related-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:18px 16px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;transition:all .22s ease;position:relative;overflow:hidden}
  .related-card:hover{border-color:var(--p1);box-shadow:0 6px 24px rgba(0,40,104,.09);transform:translateY(-2px)}
  .related-card:hover .related-card-arrow{opacity:1;transform:translateX(0)}

  /* Card Top Row */
  .related-card-top{display:flex;align-items:center;gap:10px}
  .related-card-emoji{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
  .related-card-emoji.navy{background:rgba(0,40,104,.07)}
  .related-card-emoji.green{background:rgba(0,135,90,.07)}
  .related-card-emoji.red{background:rgba(191,10,48,.07)}
  .related-card-emoji.amber{background:rgba(217,119,6,.07)}
  .related-card-emoji.purple{background:rgba(109,40,217,.07)}
  .related-card-title{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:700;color:var(--charcoal);line-height:1.35;flex:1}
  .related-card-arrow{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:var(--p1);color:#fff;font-size:9px;flex-shrink:0;opacity:0;transform:translateX(-4px);transition:all .22s ease}

  /* Card Description */
  .related-card-desc{font-family:'Inter',sans-serif;font-size:11.5px;color:var(--gray-text);line-height:1.55;flex:1}

  /* Card Footer Tag */
  .related-card-tag{display:inline-flex;align-items:center;gap:4px;font-family:'Inter',sans-serif;font-size:10px;font-weight:700;padding:3px 8px;border-radius:9999px;width:fit-content}
  .related-card-tag.navy{background:rgba(0,40,104,.06);color:var(--p1)}
  .related-card-tag.green{background:rgba(0,135,90,.06);color:var(--p9)}
  .related-card-tag.red{background:rgba(191,10,48,.06);color:var(--p8)}
  .related-card-tag.amber{background:rgba(217,119,6,.06);color:#d97706}
  .related-card-tag.purple{background:rgba(109,40,217,.06);color:#6d28d9}

  /* View All CTA */
  .related-view-all{display:flex;justify-content:center;margin-top:28px}
  .related-view-all a{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:10px;border:1.5px solid var(--p1);background:transparent;color:var(--p1);font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s}
  .related-view-all a:hover{background:var(--p1);color:#fff}
  .related-view-all a i{font-size:11px}

  /* ── RESPONSIVE — RELATED ── */
  @media(max-width:900px){
    .related-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:600px){
    .related-section{margin-top:36px}
    .related-header{margin-bottom:24px}
    .related-header h2{font-size:21px}
    .related-header p{font-size:13.5px}
    .related-grid{grid-template-columns:1fr;gap:10px}
    .related-card{padding:14px;gap:8px}
    .related-card-emoji{width:32px;height:32px;font-size:16px;border-radius:7px}
    .related-card-title{font-size:12px}
    .related-card-desc{font-size:11px}
    .related-card-arrow{opacity:1;transform:translateX(0)}
    .related-cat-label{margin-bottom:10px;margin-top:22px}
    .related-cat-icon{width:24px;height:24px;font-size:10px;border-radius:6px}
    .related-cat-name{font-size:11.5px}
  }
 /* ══════════════════════════════════════════════════════════════
     LEGAL DISCLAIMER & EDITORIAL TRANSPARENCY SECTION
     ══════════════════════════════════════════════════════════════ */
  .disclaimer-section{margin-top:48px;margin-bottom:0}
  .disclaimer-header{text-align:center;margin-bottom:32px}
  .disclaimer-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.12);color:var(--p1);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:9999px;margin-bottom:16px}
  .disclaimer-badge i{color:var(--p9);font-size:11px}
  .disclaimer-header h2{font-family:'Montserrat',sans-serif;font-size:26px;font-weight:900;color:var(--p1);margin:0 0 12px;letter-spacing:-.3px;line-height:1.25}
  .disclaimer-header p{font-family:'Inter',sans-serif;font-size:14.5px;color:var(--gray-text);max-width:700px;margin:0 auto;line-height:1.7}

  /* Two-column layout */
  .disclaimer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}

  /* Card */
  .disclaimer-card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}
  .disclaimer-card.full-width{grid-column:1/-1}
  .disclaimer-card-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--bg-light)}
  .disclaimer-card-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
  .disclaimer-card-icon.navy{background:rgba(0,40,104,.08);color:var(--p1)}
  .disclaimer-card-icon.green{background:rgba(0,135,90,.08);color:var(--p9)}
  .disclaimer-card-icon.red{background:rgba(191,10,48,.08);color:var(--p8)}
  .disclaimer-card-icon.amber{background:rgba(217,119,6,.08);color:#d97706}
  .disclaimer-card-title{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);text-transform:uppercase;letter-spacing:.03em}
  .disclaimer-card-body{padding:18px 20px}
  .disclaimer-card-body p{font-family:'Inter',sans-serif;font-size:13px;color:#4a4f56;line-height:1.72;margin-bottom:12px}
  .disclaimer-card-body p:last-child{margin-bottom:0}
  .disclaimer-card-body strong{font-weight:700;color:var(--charcoal)}
  .disclaimer-card-body ul{list-style:none;padding:0;margin:0}
  .disclaimer-card-body ul li{display:flex;align-items:flex-start;gap:10px;font-family:'Inter',sans-serif;font-size:12.5px;color:#4a4f56;line-height:1.6;padding:7px 0;border-bottom:1px solid #f3f5f8}
  .disclaimer-card-body ul li:last-child{border-bottom:none}
  .disclaimer-card-body ul li i{flex-shrink:0;margin-top:3px;font-size:10px;width:14px;text-align:center}
  .disclaimer-card-body ul li i.green{color:var(--p9)}
  .disclaimer-card-body ul li i.navy{color:var(--p1)}
  .disclaimer-card-body ul li i.amber{color:#d97706}
  .disclaimer-card-body ul li i.red{color:var(--p8)}

  /* Gov Sources Grid */
  .gov-sources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
  .gov-source-link{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg-light);text-decoration:none;color:inherit;transition:all .2s}
  .gov-source-link:hover{border-color:var(--p1);background:rgba(0,40,104,.03);box-shadow:0 3px 12px rgba(0,40,104,.06)}
  .gov-source-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;background:rgba(0,40,104,.07);color:var(--p1)}
  .gov-source-info{flex:1;min-width:0}
  .gov-source-name{font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:700;color:var(--charcoal);line-height:1.3}
  .gov-source-url{font-family:'Inter',sans-serif;font-size:10px;color:var(--gray-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
  .gov-source-arrow{font-size:10px;color:#b0b5bc;transition:all .2s;flex-shrink:0}
  .gov-source-link:hover .gov-source-arrow{color:var(--p1);transform:translateX(2px)}

  /* Last Updated Bar */
  .disclaimer-updated{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding:16px 20px;border-radius:10px;border:1px solid var(--border);background:var(--bg-light);margin-top:20px}
  .disclaimer-updated-item{display:flex;align-items:center;gap:6px;font-family:'Inter',sans-serif;font-size:11.5px;color:var(--gray-text)}
  .disclaimer-updated-item i{font-size:10px}
  .disclaimer-updated-item strong{font-weight:700;color:var(--charcoal)}
  .disclaimer-updated-divider{width:1px;height:16px;background:var(--border)}

  /* Site Policy Links */
  .disclaimer-links{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:16px}
  .disclaimer-link{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:8px;border:1px solid var(--border);background:#fff;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;color:var(--gray-text);text-decoration:none;transition:all .18s}
  .disclaimer-link:hover{border-color:var(--p1);color:var(--p1);background:rgba(0,40,104,.03)}
  .disclaimer-link i{font-size:9px}

  /* ── RESPONSIVE — DISCLAIMER ── */
  @media(max-width:900px){
    .disclaimer-grid{grid-template-columns:1fr}
    .disclaimer-card.full-width{grid-column:auto}
    .gov-sources-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:600px){
    .disclaimer-section{margin-top:36px}
    .disclaimer-header{margin-bottom:24px}
    .disclaimer-header h2{font-size:21px}
    .disclaimer-header p{font-size:13.5px}
    .disclaimer-card-head{padding:14px 16px;gap:10px}
    .disclaimer-card-icon{width:28px;height:28px;font-size:12px;border-radius:7px}
    .disclaimer-card-title{font-size:12px}
    .disclaimer-card-body{padding:14px 16px}
    .disclaimer-card-body p{font-size:12.5px}
    .disclaimer-card-body ul li{font-size:12px;gap:8px}
    .gov-sources-grid{grid-template-columns:1fr;gap:8px}
    .gov-source-link{padding:10px 12px}
    .gov-source-icon{width:32px;height:32px;font-size:13px}
    .gov-source-name{font-size:11px}
    .disclaimer-updated{padding:12px 14px;gap:10px}
    .disclaimer-updated-item{font-size:10.5px}
    .disclaimer-links{gap:6px}
    .disclaimer-link{font-size:10.5px;padding:5px 10px}
  }


/* ==========================================================
   RAISE PLANNER INLINE TEXT FIX
   ========================================================== */
#raiseResult strong {
    display: inline !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    vertical-align: baseline !important;
    line-height: inherit !important;
}

/* ==========================================================
   MOBILE RESPONSIVENESS FIX (MAIN CALCULATOR)
   ========================================================== */

@media (max-width: 900px) {
    /* 1. Stack the Inputs and Results panels vertically */
    .calc-body {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    /* 2. Make the side-by-side input fields stack on small screens */
    .row2, .row3 {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    /* 3. Allow Mode Tabs (W-2, Freelance, Business) to wrap naturally */
    .mode-tabs {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .mode-tab {
        flex: 1 1 calc(50% - 8px) !important; /* Forces tabs to share space nicely */
        text-align: center !important;
        padding: 10px !important;
        font-size: 13px !important;
    }

    /* 4. Fix the 4 KPI cards at the top of the Results Dashboard */
    .results-top {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important; /* 2 columns on tablet/large phones */
        gap: 12px !important;
    }
}

@media (max-width: 480px) {
    /* 5. For very small phone screens, stack the KPI cards fully */
    .results-top {
        grid-template-columns: 1fr !important; /* 1 column on small phones */
    }
    
    .mode-tab {
        flex: 1 1 100% !important; /* Full width tabs on tiny screens */
    }
}