
/* =====================================================
   CO-SIGNER RISK & LIABILITY CALCULATOR — CSS
   USFinanceCalculators.com | Kadence Integration
   ===================================================== */
:root {
  --cs-blue:    var(--global-palette1, #002868);
  --cs-charcoal:var(--global-palette3, #1D1D1F);
  --cs-gray:    var(--global-palette4, #5F6368);
  --cs-border:  var(--global-palette5, #E0E4E8);
  --cs-bg:      var(--global-palette6, #F7F9FC);
  --cs-white:   var(--global-palette7, #FFFFFF);
  --cs-red:     var(--global-palette8, #BF0A30);
  --cs-green:   var(--global-palette9, #00875A);
  --cs-amber:   #D97706;
  --cs-orange:  #EA580C;
  --cs-purple:  #7C3AED;
}

#csWrapper {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  max-width: 1160px;
  margin: 0 auto 32px; 
  color: var(--cs-charcoal);
  -webkit-font-smoothing: antialiased;
}

/* ---- HEADER ---- */
.cs-header {
  background: linear-gradient(135deg, #1a0050 0%, var(--cs-blue) 50%, #001a4d 100%);
  border-radius: 18px;
  padding: 36px 32px 28px;
  text-align: center;
  margin-bottom: 24px;
  position: relative;
  overflow: hidden;
}
.cs-header::before {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(circle at 20% 50%, rgba(124,58,237,0.15) 0%, transparent 50%),
                    radial-gradient(circle at 80% 50%, rgba(191,10,48,0.1) 0%, transparent 50%);
  pointer-events: none;
}
.cs-header::after {
  content: '';
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
                    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}
.cs-header-icon { font-size: 2.8rem; display: block; margin-bottom: 12px; position: relative; z-index: 1; }
.cs-title {
  font-family: 'Montserrat', 'Inter', sans-serif !important;
  font-size: clamp(1.3rem, 3vw, 1.9rem) !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 10px !important;
  line-height: 1.2 !important;
  position: relative; z-index: 1;
}
.cs-subtitle {
  font-size: 0.875rem; color: rgba(255,255,255,0.75);
  max-width: 780px; margin: 0 auto 22px;
  line-height: 1.65; position: relative; z-index: 1;
}
.cs-badges {
  display: flex; flex-wrap: wrap; gap: 8px; justify-content: center;
  position: relative; z-index: 1;
}
.cs-badge {
  background: rgba(255,255,255,0.11);
  border: 1px solid rgba(255,255,255,0.22);
  color: rgba(255,255,255,0.9);
  font-size: 0.71rem; font-weight: 600;
  padding: 4px 11px; border-radius: 20px; letter-spacing: 0.02em;
}

/* ---- LOAN TYPE SELECTOR ---- */
.cs-loan-type-bar {
  display: flex; justify-content: center; margin-bottom: 24px;
}
.cs-loan-toggle {
  display: inline-flex;
  background: var(--cs-white);
  border: 1.5px solid var(--cs-border);
  border-radius: 12px;
  padding: 4px; gap: 3px; flex-wrap: wrap; justify-content: center;
}
.cs-loan-btn {
  padding: 9px 18px;
  border: none; background: transparent;
  color: var(--cs-gray);
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.77rem; font-weight: 700;
  border-radius: 9px; cursor: pointer;
  transition: all 0.2s; letter-spacing: 0.02em;
}
.cs-loan-btn.active { background: var(--cs-blue); color: #fff; box-shadow: 0 2px 10px rgba(0,40,104,0.25); }
.cs-loan-btn.business-active { background: var(--cs-purple); color: #fff; box-shadow: 0 2px 10px rgba(124,58,237,0.3); }

/* ---- GRID ---- */
.cs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px; align-items: start;
}

/* ---- PANELS ---- */
.cs-input-panel {
  background: var(--cs-white);
  border: 1px solid var(--cs-border);
  border-radius: 16px; padding: 28px;
}
.cs-results-panel {
  background: var(--cs-bg);
  border: 1px solid var(--cs-border);
  border-radius: 16px; padding: 28px;
}

/* ---- SECTION LABEL ---- */
.cs-sec {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--cs-blue);
  margin: 0 0 14px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--cs-border);
  display: flex; align-items: center; gap: 7px;
}
.cs-gap { margin-top: 22px; }

/* ---- FORM FIELDS ---- */
.cs-field { margin-bottom: 13px; }
.cs-field label {
  display: block; font-size: 0.78rem; font-weight: 600;
  color: var(--cs-charcoal); margin-bottom: 5px;
}
.cs-field label .hint { font-weight: 400; color: var(--cs-gray); font-size: 0.71rem; margin-left: 4px; }
.cs-iw {
  display: flex; align-items: center;
  border: 1.5px solid var(--cs-border); border-radius: 9px;
  overflow: hidden; background: var(--cs-white); transition: border-color 0.2s;
}
.cs-iw:focus-within { border-color: var(--cs-blue); }
.cs-pre, .cs-suf {
  background: var(--cs-bg); color: var(--cs-gray);
  font-size: 0.82rem; font-weight: 600;
  padding: 0 10px; height: 40px;
  display: flex; align-items: center; flex-shrink: 0;
  border-right: 1.5px solid var(--cs-border);
}
.cs-suf { border-right: none; border-left: 1.5px solid var(--cs-border); }
.cs-iw input, .cs-iw select {
  flex: 1; height: 40px; border: none; outline: none;
  background: transparent; font-size: 0.88rem;
  color: var(--cs-charcoal); padding: 0 10px; min-width: 0;
}
.cs-sel {
  width: 100%; height: 40px;
  border: 1.5px solid var(--cs-border); border-radius: 9px;
  background: var(--cs-white); font-size: 0.88rem;
  color: var(--cs-charcoal); padding: 0 10px; outline: none; cursor: pointer;
  transition: border-color 0.2s;
}
.cs-sel:focus { border-color: var(--cs-blue); }

/* ---- TOGGLE GROUP ---- */
.cs-tg {
  display: flex; border: 1.5px solid var(--cs-border);
  border-radius: 9px; overflow: hidden;
}
.cs-to {
  flex: 1; text-align: center;
  padding: 9px 6px; font-size: 0.77rem; font-weight: 600;
  cursor: pointer; background: var(--cs-white);
  color: var(--cs-gray); border: none; transition: all 0.2s; line-height: 1.3;
}
.cs-to + .cs-to { border-left: 1.5px solid var(--cs-border); }
.cs-to.active { background: var(--cs-blue); color: #fff; }

/* ---- AD PLACEHOLDER ---- */
.ad-container.ad-in-calc {
  background: var(--cs-bg); border: 1.5px dashed var(--cs-border);
  border-radius: 10px; min-height: 90px;
  display: flex; align-items: center; justify-content: center;
  color: var(--cs-gray); font-size: 0.72rem; text-align: center;
  margin: 20px 0;
}

/* ---- BUTTONS ---- */
.cs-calc-btn {
  width: 100%; padding: 14px;
  background: var(--cs-blue); color: #fff;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 1rem; font-weight: 800; border: none;
  border-radius: 10px; cursor: pointer; letter-spacing: 0.04em;
  transition: all 0.2s; display: flex; align-items: center;
  justify-content: center; gap: 8px; margin-top: 6px;
}
.cs-calc-btn:hover { background: #001a4d; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(0,40,104,0.3); }
.cs-reset-btn {
  width: 100%; padding: 10px; background: transparent;
  color: var(--cs-gray); font-size: 0.78rem; font-weight: 600;
  border: 1.5px solid var(--cs-border); border-radius: 10px;
  cursor: pointer; margin-top: 8px; transition: all 0.2s;
}
.cs-reset-btn:hover { border-color: var(--cs-red); color: var(--cs-red); }

/* ---- ERROR ---- */
.cs-err {
  background: #FFF5F7; border: 1.5px solid var(--cs-red);
  border-radius: 10px; padding: 10px 14px; margin-bottom: 12px;
  font-size: 0.82rem; color: var(--cs-red); display: none; gap: 8px; align-items: center;
}
.cs-err.show { display: flex; }

/* ---- EMPTY STATE ---- */
.cs-empty {
  text-align: center; padding: 48px 20px; color: var(--cs-gray);
}
.cs-empty-icon { font-size: 3rem; margin-bottom: 14px; display: block; opacity: 0.35; }
.cs-empty p { font-size: 0.85rem; line-height: 1.65; }

/* ---- RESULTS ---- */
.cs-results { display: none; }
.cs-results.show { display: block; }

/* ---- RISK SCORE HERO ---- */
.cs-risk-hero {
  border-radius: 16px; padding: 22px 20px;
  text-align: center; margin-bottom: 18px;
  position: relative; overflow: hidden;
}
.cs-risk-hero.low    { background: linear-gradient(135deg, #065f46, #047857); }
.cs-risk-hero.medium { background: linear-gradient(135deg, #92400e, #b45309); }
.cs-risk-hero.high   { background: linear-gradient(135deg, #9a3412, #c2410c); }
.cs-risk-hero.very-high { background: linear-gradient(135deg, #7f1d1d, #991b1b); }
.cs-risk-eyebrow {
  font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: rgba(255,255,255,0.65); margin-bottom: 6px;
}
.cs-risk-badge-wrap { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 8px; }
.cs-risk-icon { font-size: 2rem; }
.cs-risk-level {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  font-weight: 900; color: #fff; line-height: 1;
}
.cs-risk-score-num {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 1rem; font-weight: 700;
  background: rgba(255,255,255,0.2);
  color: #fff; padding: 3px 10px;
  border-radius: 20px; display: inline-block; margin-bottom: 8px;
}
.cs-risk-desc { font-size: 0.8rem; color: rgba(255,255,255,0.8); line-height: 1.5; max-width: 380px; margin: 0 auto; }

/* ---- MAX LIABILITY HERO ---- */
.cs-liability-hero {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 14px; padding: 18px 20px;
  text-align: center; margin-bottom: 18px;
}
.cs-lib-label {
  font-size: 0.68rem; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--cs-gray); margin-bottom: 4px;
}
.cs-lib-value {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: clamp(1.9rem, 4.5vw, 2.5rem);
  font-weight: 900; color: var(--cs-red); line-height: 1; margin-bottom: 5px;
}
.cs-lib-sub { font-size: 0.75rem; color: var(--cs-gray); }
.cs-lib-sub span { color: var(--cs-charcoal); font-weight: 600; }

/* ---- STATS GRID ---- */
.cs-stats {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 10px; margin-bottom: 18px;
}
.cs-stat {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 10px; padding: 12px 14px; text-align: center;
}
.cs-stat.red { border-color: rgba(191,10,48,0.25); background: #FFF5F7; }
.cs-stat.green { border-color: rgba(0,135,90,0.25); background: #F0FBF6; }
.cs-stat.amber { border-color: rgba(217,119,6,0.25); background: #FFFBEB; }
.cs-stat.purple { border-color: rgba(124,58,237,0.25); background: #F5F3FF; }
.cs-stat-label { font-size: 0.66rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: var(--cs-gray); margin-bottom: 4px; }
.cs-stat-value { font-family: 'Montserrat', 'Inter', sans-serif; font-size: 1.1rem; font-weight: 800; color: var(--cs-charcoal); }
.cs-stat.red .cs-stat-value { color: var(--cs-red); }
.cs-stat.green .cs-stat-value { color: var(--cs-green); }
.cs-stat.amber .cs-stat-value { color: var(--cs-amber); }
.cs-stat.purple .cs-stat-value { color: var(--cs-purple); }

/* ---- DTI PANEL ---- */
.cs-dti-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-dti-head {
  background: var(--cs-bg); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: var(--cs-blue);
  border-bottom: 1px solid var(--cs-border);
}
.cs-dti-body { padding: 14px 16px; }
.cs-dti-row {
  display: flex; align-items: center; gap: 12px; margin-bottom: 10px;
}
.cs-dti-row:last-child { margin-bottom: 0; }
.cs-dti-lbl { font-size: 0.78rem; font-weight: 600; color: var(--cs-charcoal); min-width: 130px; }
.cs-dti-bar-wrap { flex: 1; background: var(--cs-bg); border-radius: 6px; height: 20px; overflow: hidden; position: relative; }
.cs-dti-bar { height: 100%; border-radius: 6px; transition: width 0.5s; display: flex; align-items: center; justify-content: flex-end; padding-right: 6px; }
.cs-dti-bar-val { font-size: 0.7rem; font-weight: 800; color: #fff; white-space: nowrap; }
.cs-dti-zone {
  font-size: 0.68rem; font-weight: 700; padding: 3px 8px;
  border-radius: 20px; white-space: nowrap;
}
.dti-safe { background: #D1FAE5; color: #065f46; }
.dti-caution { background: #FEF3C7; color: #92400e; }
.dti-danger { background: #FEE2E2; color: #991b1b; }

/* ---- BORROWING POWER ---- */
.cs-bp-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-bp-head {
  background: var(--cs-bg); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: var(--cs-blue);
  border-bottom: 1px solid var(--cs-border);
}
.cs-bp-body { padding: 14px 16px; }
.cs-bp-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 0; border-bottom: 1px solid var(--cs-bg); font-size: 0.82rem;
}
.cs-bp-row:last-child { border-bottom: none; }
.cs-bp-lbl { color: var(--cs-charcoal); font-weight: 500; }
.cs-bp-val { font-family: 'Montserrat', 'Inter', sans-serif; font-weight: 800; color: var(--cs-charcoal); }
.cs-bp-val.lost { color: var(--cs-red); }
.cs-bp-val.after { color: var(--cs-amber); }
.cs-bp-val.before { color: var(--cs-green); }

/* ---- CREDIT IMPACT ---- */
.cs-credit-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-credit-head {
  background: var(--cs-bg); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: var(--cs-blue);
  border-bottom: 1px solid var(--cs-border);
}
.cs-credit-body { padding: 14px 16px; }
.cs-credit-scenario {
  display: flex; gap: 12px; margin-bottom: 10px;
  padding: 10px 12px; border-radius: 8px; align-items: flex-start;
}
.cs-credit-scenario.good { background: #F0FBF6; border: 1px solid rgba(0,135,90,0.2); }
.cs-credit-scenario.bad  { background: #FFF5F7; border: 1px solid rgba(191,10,48,0.2); }
.cs-credit-scenario.worst { background: #FEF3C7; border: 1px solid rgba(217,119,6,0.25); margin-bottom: 0; }
.cs-credit-icon { font-size: 1.3rem; flex-shrink: 0; }
.cs-credit-text { font-size: 0.8rem; line-height: 1.5; }
.cs-credit-text strong { font-size: 0.85rem; font-weight: 700; }

/* ---- LIABILITY TABLE ---- */
.cs-liab-table-wrap {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-liab-table-head {
  background: var(--cs-blue); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: #fff;
}
.cs-liab-table table { width: 100%; border-collapse: collapse; font-size: 0.8rem; }
.cs-liab-table thead tr { background: var(--cs-bg); }
.cs-liab-table thead th { padding: 8px 10px; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--cs-gray); text-align: right; }
.cs-liab-table thead th:first-child { text-align: left; }
.cs-liab-table tbody tr:nth-child(even) { background: #f9fafb; }
.cs-liab-table tbody td { padding: 8px 10px; text-align: right; color: var(--cs-charcoal); font-weight: 500; }
.cs-liab-table tbody td:first-child { text-align: left; font-weight: 600; }
.cs-liab-table tbody td.max-col { font-weight: 800; color: var(--cs-red); }

/* ---- BANKRUPTCY PANEL ---- */
.cs-bk-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-bk-head {
  background: #1a1a2e; padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: #fff;
}
.cs-bk-body { padding: 14px 16px; }
.cs-bk-row {
  display: flex; gap: 10px; margin-bottom: 10px;
  padding: 10px 12px; border-radius: 8px;
}
.cs-bk-row.ch7 { background: #FFF5F7; border: 1px solid rgba(191,10,48,0.2); }
.cs-bk-row.ch13 { background: #FFFBEB; border: 1px solid rgba(217,119,6,0.2); margin-bottom: 0; }
.cs-bk-icon { font-size: 1.3rem; flex-shrink: 0; }
.cs-bk-text { font-size: 0.8rem; line-height: 1.5; }
.cs-bk-text strong { font-size: 0.85rem; font-weight: 700; }

/* ---- RELEASE PANEL ---- */
.cs-release-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-rel-head {
  background: var(--cs-bg); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: var(--cs-blue);
  border-bottom: 1px solid var(--cs-border);
}
.cs-rel-body { padding: 14px 16px; }
.cs-rel-status {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 12px; border-radius: 8px; margin-bottom: 10px; font-size: 0.82rem;
}
.cs-rel-status.eligible { background: #F0FBF6; border: 1px solid rgba(0,135,90,0.2); color: var(--cs-charcoal); }
.cs-rel-status.not-yet  { background: #FFFBEB; border: 1px solid rgba(217,119,6,0.2); color: var(--cs-charcoal); }
.cs-rel-status.no-release { background: #FFF5F7; border: 1px solid rgba(191,10,48,0.2); color: var(--cs-charcoal); }
.cs-rel-icon { font-size: 1.4rem; flex-shrink: 0; }
.cs-rel-text { font-size: 0.79rem; line-height: 1.5; }
.cs-rel-text strong { font-weight: 700; }

/* ---- ALTERNATIVES PANEL ---- */
.cs-alts-panel {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; overflow: hidden; margin-bottom: 18px;
}
.cs-alts-head {
  background: var(--cs-green); padding: 10px 14px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: #fff;
}
.cs-alts-body { padding: 14px 16px; }
.cs-alt-item {
  display: flex; gap: 10px; margin-bottom: 10px;
  padding: 10px 12px; border-radius: 8px;
  background: var(--cs-bg); border: 1px solid var(--cs-border);
}
.cs-alt-item:last-child { margin-bottom: 0; }
.cs-alt-icon { font-size: 1.3rem; flex-shrink: 0; }
.cs-alt-text { font-size: 0.79rem; line-height: 1.5; }
.cs-alt-text strong { font-weight: 700; font-size: 0.82rem; }

/* ---- CHART ---- */
.cs-chart-wrap {
  background: var(--cs-white); border: 1px solid var(--cs-border);
  border-radius: 12px; padding: 16px; margin-bottom: 18px;
}
.cs-chart-title {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.07em;
  text-transform: uppercase; color: var(--cs-blue); margin-bottom: 12px;
}

/* ---- ACTION BUTTONS ---- */
.cs-action-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.cs-pdf-btn, .cs-wa-btn {
  padding: 11px 12px; border: none; border-radius: 9px;
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 0.78rem; font-weight: 700; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  gap: 7px; transition: all 0.2s; letter-spacing: 0.03em;
}
.cs-pdf-btn { background: var(--cs-red); color: #fff; }
.cs-pdf-btn:hover { background: #9b0826; transform: translateY(-1px); }
.cs-wa-btn  { background: #25D366; color: #fff; }
.cs-wa-btn:hover { background: #128C7E; transform: translateY(-1px); }

/* ---- DISCLAIMER ---- */
.cs-disc {
  font-size: 0.7rem; color: var(--cs-gray); line-height: 1.55;
  text-align: center; margin-top: 14px;
  padding-top: 14px; border-top: 1px solid var(--cs-border);
}

/* ---- RESPONSIVE ---- */
@media (max-width: 768px) {
  .cs-grid { grid-template-columns: 1fr; }
  .cs-stats { grid-template-columns: 1fr 1fr; }
  .cs-action-row { grid-template-columns: 1fr; }
  .cs-header { padding: 28px 18px 22px; }
  .cs-input-panel, .cs-results-panel { padding: 20px 16px; }
  .cs-loan-btn { padding: 8px 12px; font-size: 0.72rem; }
  .cs-dti-lbl { min-width: 100px; }
}
@media (max-width: 480px) {
  .cs-stats { grid-template-columns: 1fr; }
  .cs-risk-level { font-size: 1.6rem; }
  .cs-lib-value { font-size: 1.8rem; }
}

/* ══════════════════════════════════════════════════════
   SECTION 1 — HOW TO USE (cs- prefix, Kadence vars)
   ══════════════════════════════════════════════════════ */

/* ── Section Card Shell ── */
.cs-section-card{background:var(--cs-white,#fff);border:1px solid var(--cs-border,#E0E4E8);border-radius:16px;box-shadow:0 2px 10px rgba(0,40,104,.07);margin-bottom:26px;overflow:hidden}
.cs-section-head{display:flex;align-items:flex-start;gap:14px;padding:24px 28px 0}
.cs-section-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.cs-section-icon.icon-blue{background:rgba(0,40,104,.1)}
.cs-section-icon.icon-red{background:rgba(191,10,48,.1)}
.cs-section-icon.icon-green{background:rgba(0,135,90,.1)}
.cs-section-icon.icon-amber{background:rgba(217,119,6,.1)}
.cs-section-icon.icon-purple{background:rgba(124,58,237,.1)}
.cs-section-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:18px;color:var(--cs-charcoal,#1D1D1F);line-height:1.35;margin:0}
.cs-section-subtitle{font-size:13px;color:var(--cs-gray,#5F6368);margin-top:4px;line-height:1.65}
.cs-section-body{padding:0 28px 28px}

/* ── Time Bar ── */
.cs-time-bar{display:flex;flex-wrap:wrap;align-items:center;gap:0;background:var(--cs-bg,#F7F9FC);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;padding:12px 18px;margin:20px 0 0;font-size:12.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.5}
.cs-time-item{display:flex;align-items:center;gap:4px;padding:3px 0}
.cs-time-item strong{color:var(--cs-charcoal,#1D1D1F)}
.cs-time-sep{width:1.5px;height:18px;background:var(--cs-border,#E0E4E8);margin:0 14px;flex-shrink:0}

/* ── Sub-Section Label ── */
.cs-label{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:0.7rem;color:var(--cs-blue,#002868);text-transform:uppercase;letter-spacing:.07em;margin:26px 0 14px;display:flex;align-items:center;gap:10px}
.cs-label::after{content:'';flex:1;height:1px;background:var(--cs-border,#E0E4E8)}

/* ── Prep Grid ── */
.cs-prep-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cs-prep-card{display:flex;gap:12px;padding:14px 16px;background:var(--cs-bg,#F7F9FC);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;transition:border-color .2s}
.cs-prep-card:hover{border-color:var(--cs-blue,#002868)}
.cs-prep-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.cs-prep-icon.icon-blue{background:rgba(0,40,104,.1)}
.cs-prep-icon.icon-red{background:rgba(191,10,48,.1)}
.cs-prep-icon.icon-green{background:rgba(0,135,90,.1)}
.cs-prep-icon.icon-amber{background:rgba(217,119,6,.1)}
.cs-prep-icon.icon-purple{background:rgba(124,58,237,.1)}
.cs-prep-title{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:13px;color:var(--cs-charcoal,#1D1D1F);margin-bottom:3px}
.cs-prep-desc{font-size:12.5px;color:var(--cs-gray,#5F6368);line-height:1.6}
.cs-prep-desc strong{color:var(--cs-charcoal,#1D1D1F)}

/* ── Step Timeline ── */
.cs-step-timeline{position:relative;padding-left:0}
.cs-step-item{display:flex;gap:16px;margin-bottom:18px;position:relative}
.cs-step-item:last-child{margin-bottom:0}
.cs-step-item:not(:last-child)::after{content:'';position:absolute;left:19px;top:42px;bottom:-18px;width:2px;background:var(--cs-border,#E0E4E8)}
.cs-step-num{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:15px;color:#fff;flex-shrink:0;position:relative;z-index:1}
.cs-step-num.s1{background:var(--cs-blue,#002868)}
.cs-step-num.s2{background:var(--cs-purple,#7C3AED)}
.cs-step-num.s3{background:var(--cs-green,#00875A)}
.cs-step-num.s4{background:var(--cs-amber,#D97706)}
.cs-step-num.s5{background:var(--cs-red,#BF0A30)}
.cs-step-num.s6{background:#0891B2}
.cs-step-num.s7{background:var(--cs-blue,#002868)}
.cs-step-box{flex:1;background:var(--cs-white,#fff);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;padding:16px 18px;transition:border-color .2s}
.cs-step-box:hover{border-color:var(--cs-blue,#002868)}
.cs-step-title{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:13.5px;color:var(--cs-charcoal,#1D1D1F);margin-bottom:6px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.cs-step-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center}
.cs-badge-required{background:rgba(0,40,104,.1);color:var(--cs-blue,#002868)}
.cs-badge-optional{background:rgba(0,135,90,.1);color:var(--cs-green,#00875A)}
.cs-badge-auto{background:rgba(124,58,237,.1);color:var(--cs-purple,#7C3AED)}
.cs-step-text{font-size:12.8px;color:var(--cs-gray,#5F6368);line-height:1.7}
.cs-step-text strong{color:var(--cs-charcoal,#1D1D1F)}
.cs-step-fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.cs-step-field-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;background:var(--cs-bg,#F7F9FC);border:1px solid var(--cs-border,#E0E4E8);color:var(--cs-charcoal,#1D1D1F);white-space:nowrap}

/* ── Result Cards ── */
.cs-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cs-result-card{border-radius:10px;padding:16px 18px;border:1.5px solid var(--cs-border,#E0E4E8);transition:border-color .2s}
.cs-result-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,40,104,.08)}
.cs-result-card.red-result{background:#FFF5F7;border-color:rgba(191,10,48,.2)}
.cs-result-card.green-result{background:#F0FBF6;border-color:rgba(0,135,90,.2)}
.cs-result-card.blue-result{background:rgba(0,40,104,.04);border-color:rgba(0,40,104,.18)}
.cs-result-card.amber-result{background:#FFFBEB;border-color:rgba(217,119,6,.2)}
.cs-result-card.purple-result{background:#F5F3FF;border-color:rgba(124,58,237,.2)}
.cs-rc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cs-rc-title{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:13px;color:var(--cs-charcoal,#1D1D1F)}
.cs-rc-badge{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;letter-spacing:.03em;text-transform:uppercase}
.cs-rc-badge.green{background:rgba(0,135,90,.15);color:#065f46}
.cs-rc-badge.red{background:rgba(191,10,48,.15);color:#991b1b}
.cs-rc-badge.blue{background:rgba(0,40,104,.12);color:var(--cs-blue,#002868)}
.cs-rc-badge.amber{background:rgba(217,119,6,.15);color:#92400e}
.cs-rc-badge.purple{background:rgba(124,58,237,.15);color:#5b21b6}
.cs-rc-text{font-size:12.5px;color:var(--cs-gray,#5F6368);line-height:1.65}
.cs-rc-text strong{color:var(--cs-charcoal,#1D1D1F)}

/* ── Pro Tips ── */
.cs-tip{display:flex;gap:12px;padding:14px 16px;border-radius:10px;margin-bottom:10px;font-size:12.8px;line-height:1.7;color:var(--cs-charcoal,#1D1D1F);align-items:flex-start}
.cs-tip:last-child{margin-bottom:0}
.cs-tip strong{font-weight:700}
.cs-tip.green{background:rgba(0,135,90,.06);border:1px solid rgba(0,135,90,.18)}
.cs-tip.amber{background:rgba(217,119,6,.06);border:1px solid rgba(217,119,6,.18)}
.cs-tip.blue{background:rgba(0,40,104,.05);border:1px solid rgba(0,40,104,.15)}
.cs-tip.red{background:rgba(191,10,48,.05);border:1px solid rgba(191,10,48,.15)}
.cs-tip-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px}

/* ── Responsive ── */
@media(max-width:768px){
  .cs-section-head{padding:20px 18px 0}
  .cs-section-body{padding:0 18px 22px}
  .cs-time-bar{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px}
  .cs-time-sep{display:none}
  .cs-prep-grid{grid-template-columns:1fr}
  .cs-result-grid{grid-template-columns:1fr}
  .cs-section-title{font-size:16px}
  .cs-step-item:not(:last-child)::after{left:17px}
  .cs-step-num{width:36px;height:36px;font-size:13px}
}
@media(max-width:480px){
  .cs-section-head{padding:16px 14px 0}
  .cs-section-body{padding:0 14px 18px}
  .cs-step-box{padding:12px 14px}
  .cs-step-fields{gap:4px}
  .cs-step-field-tag{font-size:10px;padding:3px 8px}
}

/* ══════════════════════════════════════════════════════
   SECTION 2 — EDUCATIONAL CONTENT (cs- prefix)
   ══════════════════════════════════════════════════════ */

/* ── Concept Hero Card ── */
.cs-concept-hero{background:linear-gradient(135deg,#001a4d 0%,var(--cs-blue,#002868) 50%,#1a0050 100%);border-radius:14px;padding:28px 24px;margin-bottom:22px;position:relative;overflow:hidden}
.cs-concept-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(124,58,237,0.12) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(191,10,48,0.08) 0%,transparent 50%);pointer-events:none}
.cs-concept-hero-title{font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:clamp(1.1rem,2.5vw,1.5rem);color:#fff;margin-bottom:8px;position:relative;z-index:1}
.cs-concept-hero-text{font-size:13.5px;color:rgba(255,255,255,0.8);line-height:1.75;position:relative;z-index:1;max-width:720px}
.cs-concept-hero-text strong{color:#fff}
.cs-concept-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;position:relative;z-index:1}
.cs-concept-stat{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.18);border-radius:10px;padding:12px 14px;text-align:center}
.cs-concept-stat-val{font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:clamp(1.2rem,2.5vw,1.6rem);color:#fff;line-height:1}
.cs-concept-stat-lbl{font-size:10.5px;color:rgba(255,255,255,0.7);margin-top:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.4}

/* ── Definition Block ── */
.cs-def-block{background:var(--cs-white,#fff);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:12px;overflow:hidden;margin-bottom:14px;transition:border-color .2s}
.cs-def-block:hover{border-color:var(--cs-blue,#002868)}
.cs-def-head{display:flex;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;user-select:none}
.cs-def-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.cs-def-icon.d-blue{background:rgba(0,40,104,.1)}
.cs-def-icon.d-red{background:rgba(191,10,48,.1)}
.cs-def-icon.d-green{background:rgba(0,135,90,.1)}
.cs-def-icon.d-amber{background:rgba(217,119,6,.1)}
.cs-def-icon.d-purple{background:rgba(124,58,237,.1)}
.cs-def-icon.d-teal{background:rgba(8,145,178,.1)}
.cs-def-name{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:13.5px;color:var(--cs-charcoal,#1D1D1F);flex:1}
.cs-def-tag{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}
.cs-def-tag.calc{background:rgba(0,40,104,.1);color:var(--cs-blue,#002868)}
.cs-def-tag.legal{background:rgba(191,10,48,.1);color:#991b1b}
.cs-def-tag.credit{background:rgba(124,58,237,.1);color:#5b21b6}
.cs-def-tag.tax{background:rgba(217,119,6,.1);color:#92400e}
.cs-def-tag.strategy{background:rgba(0,135,90,.1);color:#065f46}
.cs-def-chevron{width:20px;height:20px;color:var(--cs-gray,#5F6368);transition:transform .25s;flex-shrink:0}
.cs-def-block.open .cs-def-chevron{transform:rotate(180deg)}
.cs-def-body{display:none;padding:0 18px 16px 66px;font-size:12.8px;color:var(--cs-gray,#5F6368);line-height:1.75}
.cs-def-block.open .cs-def-body{display:block}
.cs-def-body strong{color:var(--cs-charcoal,#1D1D1F)}
.cs-def-body .cs-def-example{margin-top:10px;padding:10px 14px;border-radius:8px;background:var(--cs-bg,#F7F9FC);border:1px solid var(--cs-border,#E0E4E8);font-size:12px;line-height:1.7}
.cs-def-body .cs-def-example strong{color:var(--cs-blue,#002868)}
.cs-def-body .cs-def-formula{margin-top:10px;padding:10px 14px;border-radius:8px;background:#1a1a2e;color:#e2e8f0;font-family:'Courier New',monospace;font-size:12px;line-height:1.7;overflow-x:auto}
.cs-def-body .cs-def-warning{margin-top:10px;padding:10px 14px;border-radius:8px;background:rgba(191,10,48,.05);border:1px solid rgba(191,10,48,.18);font-size:12px;line-height:1.7;color:var(--cs-charcoal,#1D1D1F)}
.cs-def-body .cs-def-warning strong{color:var(--cs-red,#BF0A30)}

/* ── Comparison Table ── */
.cs-edu-table-wrap{overflow-x:auto;margin:14px 0;border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px}
.cs-edu-table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:580px}
.cs-edu-table th{background:var(--cs-blue,#002868);color:#fff;padding:10px 14px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.4px;text-align:left}
.cs-edu-table td{padding:9px 14px;border-bottom:1px solid var(--cs-border,#E0E4E8);color:var(--cs-charcoal,#1D1D1F);vertical-align:top}
.cs-edu-table tr:nth-child(even) td{background:var(--cs-bg,#F7F9FC)}
.cs-edu-table tr:last-child td{border-bottom:none}
.cs-edu-table td:first-child{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11.5px}
.cs-edu-table .danger-cell{color:var(--cs-red,#BF0A30);font-weight:700}
.cs-edu-table .safe-cell{color:var(--cs-green,#00875A);font-weight:700}
.cs-edu-table .caution-cell{color:var(--cs-amber,#D97706);font-weight:700}

/* ── Info Bar (reuse) ── */
.cs-ibar{margin:16px 0;padding:14px 18px;border-radius:10px;font-size:13px;line-height:1.75;border-left:4px solid var(--cs-blue,#002868);background:rgba(0,40,104,.05);color:var(--cs-charcoal,#1D1D1F)}
.cs-ibar strong{font-weight:700}
.cs-ibar.good{border-left-color:var(--cs-green,#00875A);background:rgba(0,135,90,.05)}
.cs-ibar.warn{border-left-color:var(--cs-amber,#D97706);background:rgba(217,119,6,.05)}
.cs-ibar.danger{border-left-color:var(--cs-red,#BF0A30);background:rgba(191,10,48,.05)}

/* ── Category Divider ── */
.cs-cat-divider{display:flex;align-items:center;gap:10px;margin:28px 0 16px;padding:0}
.cs-cat-pill{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:20px;white-space:nowrap;color:#fff;flex-shrink:0}
.cs-cat-pill.blue{background:var(--cs-blue,#002868)}
.cs-cat-pill.red{background:var(--cs-red,#BF0A30)}
.cs-cat-pill.green{background:var(--cs-green,#00875A)}
.cs-cat-pill.amber{background:var(--cs-amber,#D97706)}
.cs-cat-pill.purple{background:var(--cs-purple,#7C3AED)}
.cs-cat-pill.teal{background:#0891B2}
.cs-cat-divider::after{content:'';flex:1;height:1.5px;background:var(--cs-border,#E0E4E8)}

/* ── Responsive ── */
@media(max-width:768px){
  .cs-concept-hero{padding:20px 16px}
  .cs-concept-hero-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .cs-concept-stat{padding:10px 8px}
  .cs-def-body{padding:0 16px 14px 16px}
  .cs-def-head{padding:12px 14px}
  .cs-edu-table-wrap{margin:10px 0}
}
@media(max-width:480px){
  .cs-concept-hero-stats{grid-template-columns:1fr}
  .cs-concept-stat-val{font-size:1.2rem}
  .cs-def-icon{width:32px;height:32px;font-size:15px}
  .cs-def-name{font-size:12.5px}
}

/* ══════════════════════════════════════════════════════
   SECTION 3 — 5 REAL US EXAMPLES (cs- prefix)
   ══════════════════════════════════════════════════════ */

/* ── Intro Stats Strip ── */
.cs-intro-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0 0}
.cs-ist{background:var(--cs-bg,#F7F9FC);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;padding:14px 16px;text-align:center;transition:border-color .2s}
.cs-ist:hover{border-color:var(--cs-blue,#002868)}
.cs-ist-val{font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:clamp(18px,2.5vw,26px);line-height:1;margin-bottom:4px}
.cs-ist-lbl{font-size:11px;color:var(--cs-gray,#5F6368);font-weight:600;text-transform:uppercase;letter-spacing:.4px;line-height:1.4}
.cs-ist-red{color:var(--cs-red,#BF0A30)}
.cs-ist-amber{color:var(--cs-amber,#D97706)}
.cs-ist-blue{color:var(--cs-blue,#002868)}
.cs-ist-green{color:var(--cs-green,#00875A)}

/* ── Example Tabs ── */
.cs-ex-tabs{display:flex;gap:0;border-bottom:2px solid var(--cs-border,#E0E4E8);margin-top:22px;overflow-x:auto;scrollbar-width:none}
.cs-ex-tabs::-webkit-scrollbar{display:none}
.cs-ex-tab{padding:11px 16px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:12px;color:var(--cs-gray,#5F6368);border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap;transition:all .2s;display:flex;align-items:center;gap:6px}
.cs-ex-tab:hover{color:var(--cs-blue,#002868)}
.cs-ex-tab.active{color:var(--cs-blue,#002868);border-bottom-color:var(--cs-blue,#002868)}
.cs-ex-tab .cs-tab-num{width:20px;height:20px;border-radius:50%;background:var(--cs-border,#E0E4E8);font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;color:var(--cs-gray,#5F6368);transition:all .2s}
.cs-ex-tab.active .cs-tab-num{background:var(--cs-blue,#002868);color:#fff}

/* ── Example Panels ── */
.cs-ex-panels{padding-top:4px;padding-bottom:4px}
.cs-ex-panel{display:none}
.cs-ex-panel.active{display:block}

/* ── Person Row ── */
.cs-person-row{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;padding:18px 0 16px;border-bottom:1px solid var(--cs-border,#E0E4E8)}
.cs-person-avatar{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;border:2.5px solid var(--cs-border,#E0E4E8)}
.cs-person-name{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:15px;color:var(--cs-charcoal,#1D1D1F)}
.cs-person-meta{font-size:12.5px;color:var(--cs-gray,#5F6368);line-height:1.7;margin-top:2px}
.cs-person-scenario{background:var(--cs-bg,#F7F9FC);border-radius:10px;padding:12px 14px;border:1.5px solid var(--cs-border,#E0E4E8);font-size:13px;color:var(--cs-charcoal,#1D1D1F);line-height:1.65;max-width:420px}
.cs-person-scenario strong{color:var(--cs-blue,#002868)}

/* ── Cost Grid (2-col) ── */
.cs-cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}

/* ── Detail Table ── */
.cs-detail-table{width:100%;border-collapse:collapse;font-size:13px;border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;overflow:hidden}
.cs-detail-table tr td{padding:9px 14px;border-bottom:1px solid var(--cs-border,#E0E4E8)}
.cs-detail-table tr:last-child td{border-bottom:none}
.cs-detail-table tr td:first-child{font-weight:700;color:var(--cs-charcoal,#1D1D1F);font-family:'Montserrat','Inter',sans-serif;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;background:var(--cs-bg,#F7F9FC);width:48%}
.cs-detail-table tr td:last-child{font-weight:600;color:var(--cs-blue,#002868)}

/* ── Liability Box (red) ── */
.cs-liab-box{margin-top:14px;border-radius:10px;overflow:hidden;border:1.5px solid rgba(191,10,48,.25)}
.cs-liab-box-head{background:var(--cs-red,#BF0A30);padding:10px 16px;display:flex;align-items:center;gap:10px;color:#fff}
.cs-liab-box-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12.5px}
.cs-liab-box-body{padding:14px 16px;background:rgba(191,10,48,.04)}
.cs-liab-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--cs-border,#E0E4E8);font-size:13px}
.cs-liab-row:last-child{border-bottom:none;padding-top:10px;margin-top:4px}
.cs-liab-row-lbl{color:var(--cs-gray,#5F6368)}
.cs-liab-row-val{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:13px;color:var(--cs-charcoal,#1D1D1F)}
.cs-liab-row.total .cs-liab-row-lbl{font-weight:700;color:var(--cs-charcoal,#1D1D1F)}
.cs-liab-row.total .cs-liab-row-val{font-size:17px;color:var(--cs-red,#BF0A30)}

/* ── Impact Box (amber/blue) ── */
.cs-impact-box{margin-top:14px;border-radius:10px;overflow:hidden;border:1.5px solid rgba(0,40,104,.2)}
.cs-impact-box-head{background:var(--cs-blue,#002868);padding:10px 16px;display:flex;align-items:center;gap:10px;color:#fff}
.cs-impact-box-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12.5px}
.cs-impact-box-body{padding:14px 16px;background:rgba(0,40,104,.03)}
.cs-impact-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid rgba(0,40,104,.08);font-size:13px}
.cs-impact-row:last-child{border-bottom:none;padding-top:10px;margin-top:4px}
.cs-impact-row-lbl{color:var(--cs-gray,#5F6368);display:flex;align-items:center;gap:6px}
.cs-impact-row-val{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:13px}
.cs-impact-row-val.loss{color:var(--cs-red,#BF0A30)}
.cs-impact-row-val.caution{color:var(--cs-amber,#D97706)}
.cs-impact-row-val.safe{color:var(--cs-green,#00875A)}

/* ── Alternatives Box (green) ── */
.cs-alt-box{margin-top:14px;border-radius:10px;overflow:hidden;border:1.5px solid rgba(0,135,90,.25)}
.cs-alt-box-head{background:var(--cs-green,#00875A);padding:10px 16px;display:flex;align-items:center;gap:10px;color:#fff}
.cs-alt-box-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12.5px}
.cs-alt-box-body{padding:14px 16px;background:rgba(0,135,90,.04)}
.cs-alt-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid rgba(0,135,90,.1);font-size:13px}
.cs-alt-row:last-child{border-bottom:none;padding-top:10px;margin-top:4px}
.cs-alt-row-lbl{color:var(--cs-gray,#5F6368);display:flex;align-items:center;gap:6px}
.cs-alt-row-val{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:13px}
.cs-alt-row-val.better{color:var(--cs-green,#00875A)}
.cs-alt-row.best .cs-alt-row-val{font-size:16px;color:var(--cs-green,#00875A)}
.cs-alt-row.best .cs-alt-row-lbl{font-weight:700;color:var(--cs-charcoal,#1D1D1F)}

/* ── Takeaway ── */
.cs-takeaway{margin-top:14px;padding:14px 18px;border-radius:10px;background:linear-gradient(135deg,rgba(0,40,104,.06),rgba(0,40,104,.02));border:1.5px solid rgba(0,40,104,.15);font-size:13.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.75}
.cs-takeaway strong{color:var(--cs-blue,#002868)}

/* ── Sub-label (reuse) ── */
.cs-stl{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:11.5px;color:var(--cs-blue,#002868);text-transform:uppercase;letter-spacing:.8px;margin:16px 0 10px;display:flex;align-items:center;gap:10px}
.cs-stl::after{content:'';flex:1;height:1px;background:var(--cs-border,#E0E4E8)}

/* ── Summary Table ── */
.cs-sum-tbl-wrap{overflow-x:auto;margin-top:4px;border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px}
.cs-sum-tbl{width:100%;border-collapse:collapse;font-size:12.5px;min-width:780px}
.cs-sum-tbl th{background:var(--cs-blue,#002868);color:#fff;padding:11px 14px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.4px;text-align:left}
.cs-sum-tbl td{padding:10px 14px;border-bottom:1px solid var(--cs-border,#E0E4E8);color:var(--cs-charcoal,#1D1D1F);vertical-align:middle}
.cs-sum-tbl tr:nth-child(even) td{background:var(--cs-bg,#F7F9FC)}
.cs-sum-tbl tr:last-child td{border-bottom:none;background:rgba(191,10,48,.04)}
.cs-sum-tbl td:first-child{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11.5px}
.cs-col-red{color:var(--cs-red,#BF0A30);font-family:'Montserrat','Inter',sans-serif;font-weight:800}
.cs-col-grn{color:var(--cs-green,#00875A);font-family:'Montserrat','Inter',sans-serif;font-weight:800}
.cs-col-blue{color:var(--cs-blue,#002868);font-family:'Montserrat','Inter',sans-serif;font-weight:800}
.cs-risk-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:700}
.cs-risk-pill.very-high{background:rgba(191,10,48,.1);color:var(--cs-red,#BF0A30)}
.cs-risk-pill.high{background:rgba(234,88,12,.1);color:#EA580C}
.cs-risk-pill.medium{background:rgba(217,119,6,.1);color:var(--cs-amber,#D97706)}
.cs-risk-pill.low{background:rgba(0,135,90,.1);color:var(--cs-green,#00875A)}

/* ── Danger Counter ── */
.cs-danger-counter{margin-top:20px;background:linear-gradient(135deg,#7f1d1d,var(--cs-red,#BF0A30));border-radius:10px;padding:20px 24px;color:#fff;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.cs-dc-icon{font-size:36px;flex-shrink:0}
.cs-dc-title{font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:17px;margin-bottom:3px}
.cs-dc-desc{font-size:13px;opacity:.9;line-height:1.6}
.cs-dc-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-left:auto;flex-shrink:0}
.cs-dc-num-box{background:rgba(255,255,255,.15);border-radius:8px;padding:10px 14px;text-align:center}
.cs-dc-num{font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:clamp(16px,2vw,22px);line-height:1}
.cs-dc-lbl{font-size:10px;opacity:.85;margin-top:3px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}

/* ── Responsive ── */
@media(max-width:768px){
  .cs-intro-stats{grid-template-columns:1fr 1fr;gap:10px}
  .cs-ex-tabs{padding:0}
  .cs-person-row{grid-template-columns:auto 1fr;gap:12px}
  .cs-person-scenario{display:none}
  .cs-cost-grid{grid-template-columns:1fr;gap:12px}
  .cs-danger-counter{gap:14px}
  .cs-dc-numbers{grid-template-columns:repeat(3,1fr);width:100%}
  .cs-sum-tbl-wrap{margin-top:4px}
}
@media(max-width:480px){
  .cs-intro-stats{grid-template-columns:1fr 1fr}
  .cs-dc-numbers{grid-template-columns:1fr 1fr}
  .cs-ex-tab{padding:9px 10px;font-size:11px}
}


/* ══════════════════════════════════════════════════════
   SECTION 4 — 5 PRO TIPS (cs- prefix)
   ══════════════════════════════════════════════════════ */

/* ── Tip Card Container ── */
.cs-tip-card{background:var(--cs-white,#FFFFFF);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:12px;overflow:hidden;margin-bottom:12px;transition:border-color .25s,box-shadow .25s}
.cs-tip-card:hover{border-color:rgba(0,40,104,.25);box-shadow:0 4px 16px rgba(0,40,104,.06)}
.cs-tip-card.open{border-color:var(--cs-blue,#002868);box-shadow:0 6px 24px rgba(0,40,104,.1)}

/* ── Tip Header (clickable) ── */
.cs-tip-head{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;cursor:pointer;user-select:none;transition:background .2s}
.cs-tip-head:hover{background:var(--cs-bg,#F7F9FC)}

/* ── Number Badge ── */
.cs-tip-num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Montserrat','Inter',sans-serif;font-weight:900;font-size:14px;flex-shrink:0;color:#fff}
.cs-tn-1{background:var(--cs-blue,#002868)}
.cs-tn-2{background:var(--cs-green,#00875A)}
.cs-tn-3{background:var(--cs-red,#BF0A30)}
.cs-tn-4{background:var(--cs-purple,#7C3AED)}
.cs-tn-5{background:var(--cs-amber,#D97706)}

/* ── Header Text ── */
.cs-tip-head-text{flex:1;min-width:0}
.cs-tip-category{margin-bottom:4px;display:flex;gap:6px;flex-wrap:wrap}
.cs-tip-cat-pill{font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}
.cs-tcp-legal{background:rgba(0,40,104,.1);color:var(--cs-blue,#002868)}
.cs-tcp-money{background:rgba(0,135,90,.1);color:var(--cs-green,#00875A)}
.cs-tcp-danger{background:rgba(191,10,48,.1);color:var(--cs-red,#BF0A30)}
.cs-tcp-strategy{background:rgba(124,58,237,.1);color:var(--cs-purple,#7C3AED)}
.cs-tcp-credit{background:rgba(217,119,6,.1);color:var(--cs-amber,#D97706)}

.cs-tip-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:14px;color:var(--cs-charcoal,#1D1D1F);line-height:1.35;margin-bottom:3px}
.cs-tip-subtitle{font-size:12.5px;color:var(--cs-gray,#5F6368);line-height:1.5}

/* ── Expand Icon ── */
.cs-tip-expand{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:22px;color:var(--cs-gray,#5F6368);flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:transform .3s,color .2s}
.cs-tip-card.open .cs-tip-expand{transform:rotate(45deg);color:var(--cs-blue,#002868)}

/* ── Tip Body (hidden by default) ── */
.cs-tip-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.cs-tip-card.open .cs-tip-body{max-height:3000px}
.cs-tip-body-inner{padding:0 18px 20px}

/* ── Body Grid (2-col on desktop) ── */
.cs-tip-body-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* ── Explanation Block ── */
.cs-tip-explain{font-size:13px;color:var(--cs-charcoal,#1D1D1F);line-height:1.75;margin-bottom:14px}
.cs-tip-explain p{margin-bottom:10px}
.cs-tip-explain p:last-child{margin-bottom:0}
.cs-tip-explain strong{color:var(--cs-blue,#002868)}

/* ── Action Steps ── */
.cs-tip-action{background:var(--cs-bg,#F7F9FC);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;padding:14px 16px;margin-bottom:14px}
.cs-ta-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12px;color:var(--cs-blue,#002868);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.cs-ta-steps{list-style:none;padding:0;margin:0}
.cs-ta-steps li{display:flex;gap:10px;font-size:12.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.65;margin-bottom:8px;align-items:flex-start}
.cs-ta-steps li:last-child{margin-bottom:0}
.cs-ta-step-num{width:20px;height:20px;border-radius:50%;background:var(--cs-blue,#002868);color:#fff;font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}

/* ── Saves Pill ── */
.cs-saves-pill{margin-top:10px;padding:8px 12px;background:rgba(0,135,90,.08);border:1px solid rgba(0,135,90,.2);border-radius:8px;font-size:12px;font-weight:700;color:var(--cs-green,#00875A);text-align:center}

/* ── Example Box ── */
.cs-tip-example{background:var(--cs-white,#FFFFFF);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;overflow:hidden;margin-bottom:14px}
.cs-te-head{background:var(--cs-bg,#F7F9FC);padding:10px 14px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--cs-border,#E0E4E8)}
.cs-te-icon{font-size:18px}
.cs-te-label{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11px;color:var(--cs-blue,#002868);text-transform:uppercase;letter-spacing:.4px}
.cs-te-body{padding:14px 16px;font-size:12.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.7}

/* ── Math Comparison Box ── */
.cs-tip-math{background:var(--cs-white,#FFFFFF);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;overflow:hidden;margin-bottom:14px}
.cs-tm-head{background:var(--cs-bg,#F7F9FC);padding:9px 14px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11px;color:var(--cs-blue,#002868);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--cs-border,#E0E4E8)}
.cs-tm-row{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;font-size:12.5px;border-bottom:1px solid var(--cs-bg,#F7F9FC)}
.cs-tm-row:last-child{border-bottom:none}
.cs-tm-lbl{color:var(--cs-gray,#5F6368)}
.cs-tm-val{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12.5px;color:var(--cs-charcoal,#1D1D1F)}
.cs-tm-row.bad{background:rgba(191,10,48,.04)}
.cs-tm-row.bad .cs-tm-val{color:var(--cs-red,#BF0A30)}
.cs-tm-row.highlight{background:rgba(0,135,90,.06);border-top:1.5px dashed var(--cs-border,#E0E4E8)}
.cs-tm-row.highlight .cs-tm-lbl{font-weight:700;color:var(--cs-charcoal,#1D1D1F)}
.cs-tm-row.highlight .cs-tm-val{color:var(--cs-green,#00875A);font-size:14px}

/* ── Warning Box ── */
.cs-tip-warning{padding:12px 16px;border-radius:10px;border:1.5px solid rgba(191,10,48,.25);background:rgba(191,10,48,.04);font-size:12.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.65;margin-bottom:14px}
.cs-tip-warning strong{color:var(--cs-red,#BF0A30)}

/* ── Checklist ── */
.cs-checklist{padding:0;margin:0;list-style:none}
.cs-checklist li{display:flex;gap:8px;font-size:12.5px;line-height:1.65;color:var(--cs-charcoal,#1D1D1F);padding:5px 0;border-bottom:1px solid var(--cs-bg,#F7F9FC)}
.cs-checklist li:last-child{border-bottom:none}
.cs-checklist li .cs-chk{flex-shrink:0;margin-top:2px}

/* ── Responsive ── */
@media(max-width:768px){
  .cs-tip-body-grid{grid-template-columns:1fr}
  .cs-tip-head{padding:14px 14px;gap:10px}
  .cs-tip-body-inner{padding:0 14px 16px}
  .cs-tip-title{font-size:13px}
  .cs-tip-subtitle{font-size:11.5px}
}
@media(max-width:480px){
  .cs-tip-num{width:28px;height:28px;font-size:12px}
  .cs-tip-title{font-size:12.5px}
  .cs-tip-expand{width:28px;height:28px;font-size:18px}
}

/* ══════════════════════════════════════════════════════
   SECTION 5 — FAQs ACCORDION (cs- prefix)
   ══════════════════════════════════════════════════════ */

/* ── FAQ Group Header ── */
.cs-faq-group{margin-top:20px}
.cs-faq-group-head{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:12px;letter-spacing:.7px;text-transform:uppercase;color:var(--cs-blue,#002868);display:flex;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:8px;border-bottom:2px solid var(--cs-border,#E0E4E8)}
.cs-faq-group-head .cs-faq-gicon{font-size:16px}

/* ── FAQ Item ── */
.cs-faq-item{background:var(--cs-white,#FFFFFF);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:10px;margin-bottom:8px;overflow:hidden;transition:border-color .25s,box-shadow .25s}
.cs-faq-item:hover{border-color:rgba(0,40,104,.2);box-shadow:0 2px 8px rgba(0,40,104,.04)}
.cs-faq-item.open{border-color:var(--cs-blue,#002868);box-shadow:0 4px 16px rgba(0,40,104,.08)}

/* ── FAQ Question (clickable) ── */
.cs-faq-q{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;cursor:pointer;user-select:none;transition:background .2s}
.cs-faq-q:hover{background:var(--cs-bg,#F7F9FC)}
.cs-faq-q-num{width:24px;height:24px;border-radius:50%;background:var(--cs-bg,#F7F9FC);border:1.5px solid var(--cs-border,#E0E4E8);display:flex;align-items:center;justify-content:center;font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:10px;color:var(--cs-gray,#5F6368);flex-shrink:0;margin-top:1px;transition:all .2s}
.cs-faq-item.open .cs-faq-q-num{background:var(--cs-blue,#002868);border-color:var(--cs-blue,#002868);color:#fff}
.cs-faq-q-text{flex:1;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:13.5px;color:var(--cs-charcoal,#1D1D1F);line-height:1.45}
.cs-faq-expand{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:20px;color:var(--cs-gray,#5F6368);width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s,color .2s}
.cs-faq-item.open .cs-faq-expand{transform:rotate(45deg);color:var(--cs-blue,#002868)}

/* ── FAQ Answer ── */
.cs-faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.cs-faq-item.open .cs-faq-a{max-height:2000px}
.cs-faq-a-inner{padding:0 16px 16px 52px;font-size:13px;color:var(--cs-charcoal,#1D1D1F);line-height:1.75}
.cs-faq-a-inner p{margin-bottom:10px}
.cs-faq-a-inner p:last-child{margin-bottom:0}
.cs-faq-a-inner strong{color:var(--cs-blue,#002868)}
.cs-faq-a-inner ul{padding-left:18px;margin:8px 0}
.cs-faq-a-inner ul li{margin-bottom:4px;font-size:12.5px;line-height:1.65}

/* ── FAQ inline highlight ── */
.cs-faq-hl{background:rgba(0,40,104,.06);padding:10px 14px;border-radius:8px;border-left:3px solid var(--cs-blue,#002868);margin:10px 0;font-size:12.5px;line-height:1.7}
.cs-faq-hl-red{background:rgba(191,10,48,.05);border-left-color:var(--cs-red,#BF0A30)}
.cs-faq-hl-green{background:rgba(0,135,90,.05);border-left-color:var(--cs-green,#00875A)}
.cs-faq-hl-amber{background:rgba(217,119,6,.06);border-left-color:var(--cs-amber,#D97706)}

/* ── FAQ mini table ── */
.cs-faq-tbl{width:100%;border-collapse:collapse;font-size:12px;margin:10px 0;border:1px solid var(--cs-border,#E0E4E8);border-radius:8px;overflow:hidden}
.cs-faq-tbl th{background:var(--cs-blue,#002868);color:#fff;padding:8px 10px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.4px;text-align:left}
.cs-faq-tbl td{padding:7px 10px;border-bottom:1px solid var(--cs-border,#E0E4E8);color:var(--cs-charcoal,#1D1D1F)}
.cs-faq-tbl tr:nth-child(even) td{background:var(--cs-bg,#F7F9FC)}
.cs-faq-tbl tr:last-child td{border-bottom:none}

/* ── Expand/Collapse All ── */
.cs-faq-controls{display:flex;gap:8px;margin:16px 0 4px}
.cs-faq-ctrl-btn{padding:6px 14px;border:1.5px solid var(--cs-border,#E0E4E8);border-radius:8px;background:var(--cs-white,#FFFFFF);font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:11px;color:var(--cs-gray,#5F6368);cursor:pointer;transition:all .2s;letter-spacing:.3px}
.cs-faq-ctrl-btn:hover{border-color:var(--cs-blue,#002868);color:var(--cs-blue,#002868)}

/* ── Responsive ── */
@media(max-width:768px){
  .cs-faq-a-inner{padding:0 14px 14px 40px}
  .cs-faq-q{padding:12px 14px;gap:10px}
  .cs-faq-q-text{font-size:12.5px}
  .cs-faq-tbl{font-size:11px}
}
@media(max-width:480px){
  .cs-faq-a-inner{padding:0 12px 12px 12px}
  .cs-faq-q-num{width:22px;height:22px;font-size:9px}
  .cs-faq-q-text{font-size:12px}
  .cs-faq-expand{width:24px;height:24px;font-size:17px}
}


/* ══════════════════════════════════════════════════════
   SECTION 6 — RELATED CALCULATORS GRID (cs- prefix)
   ══════════════════════════════════════════════════════ */

.cs-rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}

/* ── Card ── */
.cs-rc-card{background:var(--cs-white,#FFFFFF);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:12px;padding:18px 16px;display:flex;flex-direction:column;gap:10px;transition:border-color .25s,box-shadow .25s,transform .25s;text-decoration:none;cursor:pointer;position:relative;overflow:hidden}
.cs-rc-card:hover{border-color:rgba(0,40,104,.25);box-shadow:0 6px 24px rgba(0,40,104,.08);transform:translateY(-3px)}
.cs-rc-card:active{transform:translateY(-1px)}

/* ── Category Pill ── */
.cs-rc-cat{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:3px 10px;border-radius:20px;font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:9px;letter-spacing:.6px;text-transform:uppercase}
.cs-rc-cat-credit{background:rgba(0,40,104,.08);color:var(--cs-blue,#002868)}
.cs-rc-cat-loans{background:rgba(124,58,237,.08);color:var(--cs-purple,#7C3AED)}
.cs-rc-cat-mortgage{background:rgba(0,135,90,.07);color:var(--cs-green,#00875A)}
.cs-rc-cat-insurance{background:rgba(217,119,6,.08);color:var(--cs-amber,#D97706)}
.cs-rc-cat-taxes{background:rgba(191,10,48,.06);color:var(--cs-red,#BF0A30)}
.cs-rc-cat-personal{background:rgba(0,40,104,.06);color:#3B5998}
.cs-rc-cat-business{background:rgba(124,58,237,.06);color:#5B21B6}
.cs-rc-cat-investing{background:rgba(0,135,90,.06);color:#047857}

/* ── Icon ── */
.cs-rc-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.cs-rc-icon-blue{background:rgba(0,40,104,.07)}
.cs-rc-icon-purple{background:rgba(124,58,237,.07)}
.cs-rc-icon-green{background:rgba(0,135,90,.06)}
.cs-rc-icon-amber{background:rgba(217,119,6,.07)}
.cs-rc-icon-red{background:rgba(191,10,48,.06)}

/* ── Title ── */
.cs-rc-title{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:13px;color:var(--cs-charcoal,#1D1D1F);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ── Description ── */
.cs-rc-desc{font-family:'Inter','Montserrat',sans-serif;font-size:11.5px;color:var(--cs-gray,#5F6368);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}

/* ── Relevance Bar ── */
.cs-rc-rel{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid var(--cs-border,#E0E4E8)}
.cs-rc-rel-label{font-family:'Montserrat','Inter',sans-serif;font-weight:700;font-size:9px;letter-spacing:.4px;text-transform:uppercase;color:var(--cs-gray,#5F6368);white-space:nowrap}
.cs-rc-rel-track{flex:1;height:5px;border-radius:3px;background:var(--cs-bg,#F7F9FC);overflow:hidden}
.cs-rc-rel-fill{height:100%;border-radius:3px;transition:width .4s}
.cs-rc-rel-fill-high{background:var(--cs-green,#00875A);width:92%}
.cs-rc-rel-fill-medhigh{background:var(--cs-blue,#002868);width:82%}
.cs-rc-rel-fill-med{background:var(--cs-amber,#D97706);width:70%}
.cs-rc-rel-pct{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:10px;min-width:28px;text-align:right}
.cs-rc-rel-pct-high{color:var(--cs-green,#00875A)}
.cs-rc-rel-pct-medhigh{color:var(--cs-blue,#002868)}
.cs-rc-rel-pct-med{color:var(--cs-amber,#D97706)}

/* ── Arrow ── */
.cs-rc-arrow{position:absolute;top:16px;right:14px;font-size:14px;color:var(--cs-border,#E0E4E8);transition:color .2s,transform .2s}
.cs-rc-card:hover .cs-rc-arrow{color:var(--cs-blue,#002868);transform:translate(2px,-2px)}

/* ── View All Banner ── */
.cs-rc-viewall{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:18px;padding:14px 20px;border:1.5px dashed var(--cs-border,#E0E4E8);border-radius:12px;background:var(--cs-bg,#F7F9FC);text-decoration:none;transition:border-color .2s,background .2s}
.cs-rc-viewall:hover{border-color:var(--cs-blue,#002868);background:rgba(0,40,104,.03)}
.cs-rc-viewall-text{font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:13px;color:var(--cs-blue,#002868);letter-spacing:.3px}
.cs-rc-viewall-count{padding:3px 10px;border-radius:20px;background:var(--cs-blue,#002868);color:#fff;font-family:'Montserrat','Inter',sans-serif;font-weight:800;font-size:10px}

/* ── Responsive ── */
@media(max-width:900px){
  .cs-rc-grid{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media(max-width:560px){
  .cs-rc-grid{grid-template-columns:1fr;gap:10px}
  .cs-rc-card{padding:14px 14px;flex-direction:row;flex-wrap:wrap;gap:8px}
  .cs-rc-icon{width:36px;height:36px;font-size:17px}
  .cs-rc-title{font-size:12.5px;flex:1;-webkit-line-clamp:2}
  .cs-rc-desc{width:100%;font-size:11px;-webkit-line-clamp:2}
  .cs-rc-cat{font-size:8px;padding:2px 8px}
  .cs-rc-rel{width:100%}
  .cs-rc-arrow{top:12px;right:10px}
}


/* ================================================================
   LEGAL DISCLAIMER — bld-* classes
   USFinanceCalculators.com — Co-Signer Risk & Liability Calculator
   ================================================================ */
.bld-box{background:var(--cs-white,#fff);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:16px;overflow:hidden;margin:32px auto;max-width:1160px}
.bld-header{background:linear-gradient(135deg,#1a0050 0%,var(--cs-blue,#002868) 50%,#001a4d 100%);padding:28px 28px 22px;display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap;position:relative}
.bld-header::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(124,58,237,.12) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(191,10,48,.08) 0%,transparent 50%);pointer-events:none}
.bld-header-icon{font-size:2.2rem;flex-shrink:0;position:relative;z-index:1}
.bld-header-text{flex:1;min-width:240px;position:relative;z-index:1}
.bld-header-title{font-family:Montserrat,Inter,sans-serif!important;font-size:clamp(1rem,2.2vw,1.3rem)!important;font-weight:800!important;color:#fff!important;margin:0 0 6px!important;line-height:1.25!important}
.bld-header-sub{font-size:.78rem;color:rgba(255,255,255,.7);line-height:1.55;margin:0}
.bld-header-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.85);font-size:.68rem;font-weight:600;padding:5px 12px;border-radius:20px;white-space:nowrap;flex-shrink:0;align-self:flex-start;position:relative;z-index:1}
.bld-body{padding:24px 28px 20px}
.bld-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.bld-clause{display:flex;gap:14px;align-items:flex-start;padding:18px;background:var(--cs-bg,#F7F9FC);border:1px solid var(--cs-border,#E0E4E8);border-radius:12px}
.bld-clause-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}
.bld-clause-body{flex:1;min-width:0}
.bld-clause-title{font-family:Montserrat,Inter,sans-serif;font-size:.82rem;font-weight:800;color:var(--cs-charcoal,#1D1D1F);margin-bottom:6px;line-height:1.3}
.bld-clause-text{font-size:.76rem;color:var(--cs-gray,#5F6368);line-height:1.6;margin:0}
.bld-clause-text a{color:var(--cs-blue,#002868);font-weight:600;text-decoration:none}
.bld-clause-text a:hover{text-decoration:underline}
.bld-full-text{background:var(--cs-bg,#F7F9FC);border:1px solid var(--cs-border,#E0E4E8);border-radius:12px;padding:22px 24px;margin-bottom:24px}
.bld-full-text p{font-size:.76rem;color:var(--cs-gray,#5F6368);line-height:1.65;margin:0 0 12px}
.bld-full-text p:last-child{margin-bottom:0}
.bld-full-text p strong{color:var(--cs-charcoal,#1D1D1F)}
.bld-full-text p a{color:var(--cs-blue,#002868);font-weight:600;text-decoration:none}
.bld-full-text p a:hover{text-decoration:underline}
.bld-authority{margin-bottom:0}
.bld-authority-title{font-family:Montserrat,Inter,sans-serif;font-size:.78rem;font-weight:800;color:var(--cs-charcoal,#1D1D1F);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.bld-authority-title span{flex:1;height:1.5px;background:var(--cs-border,#E0E4E8)}
.bld-gov-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bld-gov-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--cs-bg,#F7F9FC);border:1px solid var(--cs-border,#E0E4E8);border-radius:10px;text-decoration:none;transition:all .2s;position:relative}
.bld-gov-card:hover{border-color:var(--cs-blue,#002868);background:#f0f4fa;transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,40,104,.1)}
.bld-gov-flag{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
.bld-gov-info{flex:1;min-width:0}
.bld-gov-name{font-family:Montserrat,Inter,sans-serif;font-size:.75rem;font-weight:700;color:var(--cs-charcoal,#1D1D1F);margin-bottom:2px;line-height:1.3}
.bld-gov-full{font-size:.68rem;color:var(--cs-gray,#5F6368);line-height:1.4;margin-bottom:3px}
.bld-gov-relevance{font-size:.66rem;color:var(--cs-green,#00875A);font-weight:600;line-height:1.3}
.bld-gov-ext{font-size:.62rem;font-weight:700;color:var(--cs-blue,#002868);background:rgba(0,40,104,.08);padding:3px 8px;border-radius:4px;white-space:nowrap;flex-shrink:0}
.bld-footer-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 28px;border-top:1.5px solid var(--cs-border,#E0E4E8);background:var(--cs-bg,#F7F9FC)}
.bld-footer-left{display:flex;align-items:center;gap:8px;font-size:.68rem;color:var(--cs-gray,#5F6368)}
.bld-footer-dot{width:8px;height:8px;border-radius:50%;background:var(--cs-green,#00875A);flex-shrink:0}
.bld-footer-links{display:flex;flex-wrap:wrap;gap:14px}
.bld-footer-links a{font-size:.68rem;color:var(--cs-blue,#002868);text-decoration:none;font-weight:600;white-space:nowrap}
.bld-footer-links a:hover{text-decoration:underline}

/* ================================================================
   EDITORIAL TRANSPARENCY — arc-* classes
   ================================================================ */
.arc-transparency-section{max-width:1160px;margin:24px auto 32px;background:linear-gradient(135deg,#f8faff 0%,#f0f4fa 40%,#faf8ff 100%);border:1.5px solid var(--cs-border,#E0E4E8);border-radius:16px;overflow:hidden;position:relative}
.arc-transparency-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 0% 0%,rgba(0,40,104,.04) 0%,transparent 60%),radial-gradient(ellipse at 100% 100%,rgba(124,58,237,.03) 0%,transparent 60%);pointer-events:none}
.arc-transparency-inner{display:flex;gap:28px;padding:32px 28px;position:relative;z-index:1}
.arc-trans-logo-wrap{flex-shrink:0;display:flex;align-items:flex-start;padding-top:4px}
.arc-trans-logo{width:72px;height:72px;border-radius:14px;background:linear-gradient(135deg,var(--cs-blue,#002868),#001a4d);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,40,104,.25)}
.arc-trans-initials{font-family:Montserrat,Inter,sans-serif;font-size:.95rem;font-weight:900;color:#fff;line-height:1.1;text-align:center;letter-spacing:.08em}
.arc-trans-content{flex:1;min-width:0}
.arc-trans-title{font-family:Montserrat,Inter,sans-serif!important;font-size:clamp(.95rem,2vw,1.15rem)!important;font-weight:800!important;color:var(--cs-charcoal,#1D1D1F)!important;margin:0 0 12px!important;line-height:1.3!important}
.arc-trans-text{font-size:.76rem;color:var(--cs-gray,#5F6368);line-height:1.65;margin:0 0 18px}
.arc-trans-text strong{color:var(--cs-charcoal,#1D1D1F)}
.arc-trans-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.arc-trans-badge{display:inline-flex;align-items:center;gap:5px;background:var(--cs-white,#fff);border:1px solid var(--cs-border,#E0E4E8);padding:4px 12px;border-radius:20px;font-size:.68rem;font-weight:600;color:var(--cs-charcoal,#1D1D1F);white-space:nowrap}
.arc-trans-chk{color:var(--cs-green,#00875A);font-weight:800}
.arc-trans-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.arc-trans-stat{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--cs-white,#fff);border:1px solid var(--cs-border,#E0E4E8);border-radius:10px}
.arc-trans-stat-icon{font-size:1.3rem;flex-shrink:0}
.arc-trans-stat-text{min-width:0}
.arc-trans-stat-val{font-family:Montserrat,Inter,sans-serif;font-size:.78rem;font-weight:800;color:var(--cs-charcoal,#1D1D1F);line-height:1.3}
.arc-trans-stat-lbl{font-size:.66rem;color:var(--cs-gray,#5F6368);line-height:1.35}
.arc-trans-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.arc-trans-strip-card{text-align:center;padding:14px 10px;background:var(--cs-white,#fff);border:1px solid var(--cs-border,#E0E4E8);border-radius:10px}
.arc-trans-strip-num{font-family:Montserrat,Inter,sans-serif;font-size:clamp(.85rem,1.5vw,1.05rem);font-weight:900;color:var(--cs-blue,#002868);line-height:1.2;margin-bottom:3px}
.arc-trans-strip-lbl{font-size:.64rem;color:var(--cs-gray,#5F6368);line-height:1.35}
.arc-trans-gov-strip{background:var(--cs-white,#fff);border:1px solid var(--cs-border,#E0E4E8);border-radius:10px;padding:14px 18px}
.arc-trans-gov-label{font-family:Montserrat,Inter,sans-serif;font-size:.72rem;font-weight:700;color:var(--cs-charcoal,#1D1D1F)}
.arc-trans-gov-divider{height:1px;background:var(--cs-border,#E0E4E8);margin:10px 0}
.arc-trans-gov-links{display:flex;flex-wrap:wrap;gap:10px}
.arc-trans-gov-link{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;color:var(--cs-blue,#002868);text-decoration:none;padding:4px 10px;background:rgba(0,40,104,.05);border-radius:6px;white-space:nowrap;transition:all .2s}
.arc-trans-gov-link:hover{background:rgba(0,40,104,.12);transform:translateY(-1px)}

/* ================================================================
   RESPONSIVE — MOBILE OPTIMIZED
   ================================================================ */
@media(max-width:768px){
  .bld-header{flex-direction:column;padding:22px 18px 18px;gap:12px}
  .bld-header-badge{align-self:flex-start}
  .bld-body{padding:18px 16px 16px}
  .bld-grid{grid-template-columns:1fr}
  .bld-gov-grid{grid-template-columns:1fr}
  .bld-footer-row{flex-direction:column;align-items:flex-start;padding:14px 16px;gap:10px}
  .bld-footer-links{gap:10px}
  .bld-full-text{padding:16px 14px}
  .arc-transparency-inner{flex-direction:column;padding:22px 18px;gap:16px}
  .arc-trans-logo-wrap{justify-content:center}
  .arc-trans-stats-row{grid-template-columns:1fr 1fr}
  .arc-trans-strip{grid-template-columns:1fr 1fr}
  .arc-trans-gov-links{gap:8px}
  .arc-trans-badges{gap:6px}
}
@media(max-width:480px){
  .bld-clause{flex-direction:column;gap:10px;padding:14px}
  .bld-clause-icon{width:36px;height:36px;font-size:1.1rem}
  .bld-header-title{font-size:1rem!important}
  .bld-gov-card{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}
  .bld-gov-ext{align-self:flex-end}
  .arc-trans-stats-row{grid-template-columns:1fr}
  .arc-trans-strip{grid-template-columns:1fr 1fr}
  .arc-trans-stat{padding:10px 12px}
  .arc-trans-title{font-size:.92rem!important}
}


/* ── MOBILE PATCH ── */
html,body{overflow-x:hidden;-webkit-text-size-adjust:100%}
.wrap{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));width:100%}
.card{overflow:hidden;word-break:break-word}
.irow{min-width:0;width:100%}
.irow input,.irow select{min-width:0;max-width:100%}
.ipfx,.isfx{flex-shrink:0;white-space:nowrap}
input,select,textarea{font-size:max(14px,1rem)}
.tgl{width:100%;flex-wrap:nowrap;overflow:hidden}
.tgb{flex:1 1 0;min-width:0;overflow:hidden;white-space:normal;line-height:1.3;padding:8px 6px;font-size:10px}
.table-wrapper{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
.stbl{min-width:500px}
.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab-b{flex-shrink:0;font-size:10px;padding:8px 10px}
.sec-ttl{flex-wrap:wrap;gap:8px}
.sec-ttl h2{font-size:13px;flex-shrink:1;min-width:0}
.cbtn{font-size:13px;padding:14px 16px;white-space:normal;line-height:1.3}
.tip:hover::after{left:auto;right:0;transform:none;max-width:min(240px,80vw)}
@media(max-width:600px){
  .igrid{grid-template-columns:1fr !important}
  .hero-band{grid-template-columns:1fr 1fr !important;padding:20px 16px;gap:14px}
  .hm-sep{display:none !important}
  .hm .hv{font-size:20px}
  .mgrid{grid-template-columns:1fr 1fr !important;gap:10px}
  .mc .mv{font-size:17px}
}
@media(max-width:560px){
  .abtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .abtn{min-width:0;font-size:11px;padding:10px 8px}
  .npvc{grid-template-columns:1fr !important}
  .seginputs{grid-template-columns:1fr !important}
}
@media(max-width:480px){
  .hdr h1{font-size:22px;letter-spacing:-0.5px}
  .hdr .sub{font-size:12px}
  .btype-grid{grid-template-columns:1fr 1fr !important}
  .badge{font-size:10px;padding:3px 9px}
}
@media(max-width:400px){
  .tgb{font-size:9px;padding:7px 4px}
  .mgrid{grid-template-columns:1fr !important}
  .hero-band{grid-template-columns:1fr !important}
  .abtns{grid-template-columns:1fr}
}

/* ── MOBILE PATCH ── */
html,body{overflow-x:hidden;-webkit-text-size-adjust:100%}
.wrap{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));width:100%}
.card{overflow:hidden;word-break:break-word}
.irow{min-width:0;width:100%}
.irow input,.irow select{min-width:0;max-width:100%}
.ipfx,.isfx{flex-shrink:0;white-space:nowrap}
input,select,textarea{font-size:max(14px,1rem)}
.tgl{width:100%;flex-wrap:nowrap;overflow:hidden}
.tgb{flex:1 1 0;min-width:0;overflow:hidden;white-space:normal;line-height:1.3;padding:8px 6px;font-size:10px}
.table-wrapper{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
.stbl{min-width:500px}
.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab-b{flex-shrink:0;font-size:10px;padding:8px 10px}
.sec-ttl{flex-wrap:wrap;gap:8px}
.sec-ttl h2{font-size:13px;flex-shrink:1;min-width:0}
.cbtn{font-size:13px;padding:14px 16px;white-space:normal;line-height:1.3}
.tip:hover::after{left:auto;right:0;transform:none;max-width:min(240px,80vw)}
@media(max-width:600px){
  .igrid{grid-template-columns:1fr !important}
  .hero-band{grid-template-columns:1fr 1fr !important;padding:20px 16px;gap:14px}
  .hm-sep{display:none !important}
  .hm .hv{font-size:20px}
  .mgrid{grid-template-columns:1fr 1fr !important;gap:10px}
  .mc .mv{font-size:17px}
}
@media(max-width:560px){
  .abtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .abtn{min-width:0;font-size:11px;padding:10px 8px}
  .npvc{grid-template-columns:1fr !important}
  .seginputs{grid-template-columns:1fr !important}
}
@media(max-width:480px){
  .hdr h1{font-size:22px;letter-spacing:-0.5px}
  .hdr .sub{font-size:12px}
  .btype-grid{grid-template-columns:1fr 1fr !important}
  .badge{font-size:10px;padding:3px 9px}
}
@media(max-width:400px){
  .tgb{font-size:9px;padding:7px 4px}
  .mgrid{grid-template-columns:1fr !important}
  .hero-band{grid-template-columns:1fr !important}
  .abtns{grid-template-columns:1fr}
}
