
    :root{
      --global-palette1:#002868;--global-palette3:#1D1D1F;--global-palette4:#5F6368;--global-palette5:#E0E4E8;--global-palette6:#F7F9FC;--global-palette7:#FFFFFF;--global-palette8:#BF0A30;--global-palette9:#00875A;
      --shadow:0 8px 24px rgba(0,40,104,.08);--radius:14px;
    }
    *{box-sizing:border-box;margin:0;padding:0} body{font-family:Inter,sans-serif;background:var(--global-palette6);color:var(--global-palette3);line-height:1.6}
    h1,h2,h3,h4{font-family:Montserrat,sans-serif;color:var(--global-palette3)}
    .hero{background:linear-gradient(135deg,var(--global-palette1),#214d88);color:#fff;padding:34px 16px 28px}.hero-inner{max-width:1540px;margin:0 auto}.hero h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.08;margin-bottom:10px}.hero p{max-width:1200px;font-size:.98rem;opacity:.94}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.pill{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:.72rem;font-weight:700}
    .calc-wrapper{max-width:1540px;margin:0 auto;padding:18px 14px 34px}.ad-slot{background:#edf4ff;border:2px dashed var(--global-palette5);border-radius:10px;padding:15px;text-align:center;color:var(--global-palette4);font-size:.8rem;margin-bottom:18px}.ad-slot strong{color:var(--global-palette1)}
    .calc-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:18px}.card{background:var(--global-palette7);border:1px solid var(--global-palette5);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card+.card{margin-top:12px}.card-title{display:flex;align-items:center;gap:9px;font-size:1rem;font-weight:800;color:var(--global-palette1);padding-bottom:9px;margin-bottom:12px;border-bottom:2px solid #eef3f7}.num{width:24px;height:24px;border-radius:7px;background:var(--global-palette1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800}
    .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.form-row label{display:block;font-size:.78rem;font-weight:700;margin-bottom:5px}.hint{display:block;font-size:.67rem;color:var(--global-palette4);margin-top:2px}.input-wrap{display:flex;align-items:center;border:1.5px solid var(--global-palette5);border-radius:9px;background:#fff;overflow:hidden}.prefix,.suffix{padding:0 10px;color:var(--global-palette4);font-weight:700;font-size:.82rem;background:#f9fbfd;border-right:1px solid var(--global-palette5)}.suffix{border-right:none;border-left:1px solid var(--global-palette5)} input[type=number],select{width:100%;padding:10px 11px;border:none;background:#fff;font:inherit;font-size:.88rem;color:var(--global-palette3);outline:none}
    .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;border:2px solid transparent;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s}.btn-primary{background:var(--global-palette9);color:#fff;border-color:var(--global-palette9)}.btn-primary:hover{background:#006a46}.btn-secondary{background:var(--global-palette1);color:#fff;border-color:var(--global-palette1)}.btn-secondary:hover{background:#001d4e}.btn-outline{background:#fff;color:var(--global-palette8);border-color:var(--global-palette8)}.btn-outline:hover{background:var(--global-palette8);color:#fff}.btn-wa{background:#25D366;color:#fff;border-color:#25D366}.btn-wa:hover{background:#18b85a}.hidden{display:none!important}
    .note{font-size:.72rem;color:var(--global-palette4);margin-top:10px;background:#f3f5f8;padding:10px 12px;border-radius:8px}
    .placeholder{text-align:center;padding:46px 18px;color:var(--global-palette4)}.placeholder .emoji{font-size:2.6rem;margin-bottom:12px}
    .banner{border-radius:14px;padding:18px;color:#fff;margin-bottom:10px;background:linear-gradient(135deg,var(--global-palette9),#006a46)}.banner.warn{background:linear-gradient(135deg,#b88100,#805c00)}.banner.bad{background:linear-gradient(135deg,var(--global-palette8),#8f001e)}.eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;opacity:.86}.big{font-size:1.22rem;font-weight:800;margin-top:4px}.sub{font-size:.82rem;opacity:.92;margin-top:6px}
    .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.kpi{background:#f7faff;border:1px solid var(--global-palette5);border-radius:10px;padding:10px;text-align:center}.kpi .label{font-size:.67rem;font-weight:700;text-transform:uppercase;color:var(--global-palette4);margin-bottom:4px}.kpi .val{font-size:1rem;font-weight:800;color:var(--global-palette1)}.kpi .small{font-size:.68rem;color:var(--global-palette4);margin-top:2px}
    .alert{padding:12px 13px;border-radius:0 8px 8px 0;font-size:.8rem;margin:10px 0}.good{background:#e8f5e9;border-left:4px solid var(--global-palette9);color:#1b5e20}.mid{background:#fff8e1;border-left:4px solid #b88100;color:#6d4c00}.bad{background:#ffebee;border-left:4px solid var(--global-palette8);color:#b71c1c}
    .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag{padding:4px 8px;border-radius:999px;background:#fff;border:1px solid var(--global-palette5);font-size:.71rem;color:var(--global-palette4)}
    .chart-wrap{position:relative;height:330px}.table-wrap{overflow-x:auto;border:1px solid var(--global-palette5);border-radius:10px}.table-wrap table{width:100%;border-collapse:collapse;font-size:.78rem}.table-wrap th{background:var(--global-palette1);color:#fff;text-align:left;padding:9px 10px;font-size:.72rem;white-space:nowrap}.table-wrap td{padding:8px 10px;border-bottom:1px solid var(--global-palette5);white-space:nowrap}.table-wrap tbody tr:nth-child(even){background:#f8fbff}.strong{font-weight:800;color:var(--global-palette1)}
    @media(max-width:1100px){.calc-grid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}} @media(max-width:640px){.form-grid,.kpis{grid-template-columns:1fr}.calc-wrapper{padding:14px 10px 30px}.card{padding:16px}}
   
 /* ─── Section wrapper ─── */
  .r72-section { max-width: 1600px; margin: 0 auto; padding: 0 14px 52px }

  /* ─── Section header ─── */
  .r72-header { text-align: center; padding: 10px 16px 28px }
  .r72-header h2 { font-family: Montserrat, sans-serif; font-size: clamp(1.3rem,2.8vw,1.85rem); color: var(--navy); margin-bottom: 8px }
  .r72-header p  { color: var(--muted); font-size: .9rem; max-width: 660px; margin: 0 auto }

  /* ─── How-it-works steps ─── */
  .r72-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-bottom: 26px }
  .r72-step  { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 18px 16px; box-shadow: var(--shadow) }
  .r72-step-num  { width: 30px; height: 30px; border-radius: 8px; background: var(--navy); color: #fff; display: flex; align-items: center; justify-content: center; font-family: Montserrat,sans-serif; font-size: .8rem; font-weight: 800; margin-bottom: 10px }
  .r72-step-icon { font-size: 1.4rem; margin-bottom: 8px }
  .r72-step h3 { font-family: Montserrat,sans-serif; font-size: .86rem; color: var(--navy); margin-bottom: 6px }
  .r72-step p  { font-size: .78rem; color: var(--muted); line-height: 1.65 }

  /* ─── Formula box ─── */
  .r72-formula { background: linear-gradient(135deg,var(--navy),#214d88); border-radius: 14px; padding: 22px 24px; margin-bottom: 26px }
  .r72-formula h3 { font-family: Montserrat,sans-serif; font-size: .95rem; color: #fff; margin-bottom: 16px; opacity: .9 }
  .r72-f-row { display: flex; align-items: flex-start; gap: 12px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.12) }
  .r72-f-row:last-child { border-bottom: none }
  .r72-f-label { font-size: .76rem; font-weight: 700; color: rgba(255,255,255,.8); min-width: 190px; flex-shrink: 0 }
  .r72-f-eq    { font-size: .8rem; font-family: 'Courier New',monospace; background: rgba(255,255,255,.1); padding: 5px 10px; border-radius: 7px; flex: 1; color: #fff; line-height: 1.55 }

  /* ─── 2-col edu grid ─── */
  .r72-edu-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 26px }

  /* ─── Concept cards ─── */
  .r72-concept { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 18px; box-shadow: var(--shadow) }
  .r72-concept .rcc-head { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 2px solid #eef3f7 }
  .r72-icon-wrap { width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.05rem; flex-shrink: 0 }
  .r72-icon-wrap.navy   { background: #e8edf8 }
  .r72-icon-wrap.green  { background: #e6f5ef }
  .r72-icon-wrap.amber  { background: #fff8e1 }
  .r72-icon-wrap.red    { background: #fff0f2 }
  .r72-icon-wrap.purple { background: #f0ebff }
  .r72-icon-wrap.teal   { background: #e0f7fa }
  .r72-concept h3  { font-family: Montserrat,sans-serif; font-size: .87rem; color: var(--navy) }
  .r72-concept p   { font-size: .78rem; color: var(--muted); line-height: 1.7; margin-bottom: 9px }
  .r72-concept p:last-child { margin-bottom: 0 }
  .r72-fact-list   { list-style: none; padding: 0; margin: 0 }
  .r72-fact-list li { font-size: .76rem; color: var(--ink); padding: 5px 0; border-bottom: 1px solid var(--border); display: flex; gap: 8px; line-height: 1.55 }
  .r72-fact-list li:last-child { border-bottom: none }
  .r72-fact-list li::before { content: "→"; color: var(--navy); font-weight: 800; flex-shrink: 0; margin-top: 1px }

  /* ─── Rate accuracy table ─── */
  .r72-rate-wrap { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 20px; box-shadow: var(--shadow); margin-bottom: 26px }
  .r72-rate-wrap h3  { font-family: Montserrat,sans-serif; font-size: .92rem; color: var(--navy); margin-bottom: 6px }
  .r72-rate-sub { font-size: .77rem; color: var(--muted); margin-bottom: 14px }
  .r72-rate-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px }
  .r72-rate-card { border-radius: 9px; padding: 11px; text-align: center; border: 1px solid var(--border) }
  .r72-rate-card.excellent { background: #e8f5e9; border-color: #a5d6a7 }
  .r72-rate-card.good      { background: #e8edf8; border-color: #9fb5d8 }
  .r72-rate-card.fair      { background: #fff8e1; border-color: #ffe082 }
  .r72-rate-card.poor      { background: #fff3e0; border-color: #ffcc80 }
  .r72-rate-card.avoid     { background: #ffebee; border-color: #ef9a9a }
  .r72-rc-label { font-size: .67rem; font-weight: 700; text-transform: uppercase; color: var(--muted); margin-bottom: 3px }
  .r72-rc-rate  { font-size: 1.1rem; font-weight: 800; color: var(--navy); margin-bottom: 2px }
  .r72-rc-r72   { font-size: .72rem; color: var(--muted); margin-bottom: 2px }
  .r72-rc-exact { font-size: .67rem; color: var(--muted) }
  .r72-rc-err   { font-size: .64rem; font-weight: 700; margin-top: 4px; padding: 2px 6px; border-radius: 999px; display: inline-block }
  .r72-rc-err.low  { background: #e8f5e9; color: #1b5e20 }
  .r72-rc-err.mid  { background: #fff8e1; color: #5d4000 }
  .r72-rc-err.high { background: #ffebee; color: #b71c1c }

  /* ─── Alert banners ─── */
  .r72-alert { padding: 13px 15px; border-radius: 0 9px 9px 0; font-size: .8rem; margin-bottom: 12px; line-height: 1.7 }
  .r72-alert.good { background: #e8f5e9; border-left: 4px solid var(--green); color: #1b5e20 }
  .r72-alert.warn { background: #fff8e1; border-left: 4px solid var(--amber); color: #5d4000 }
  .r72-alert.bad  { background: #ffebee; border-left: 4px solid var(--red);   color: #b71c1c }
  .r72-alert.info { background: #e8edf8; border-left: 4px solid var(--navy);  color: #001a4e }

  /* ─── Examples ─── */
  .r72-example { background: var(--card); border: 1px solid var(--border); border-radius: 16px; margin-bottom: 20px; overflow: hidden; box-shadow: var(--shadow) }
  .r72-ex-banner { padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px }
  .r72-ex-banner.navy   { background: linear-gradient(135deg,var(--navy),#214d88) }
  .r72-ex-banner.green  { background: linear-gradient(135deg,var(--green),#006a46) }
  .r72-ex-banner.amber  { background: linear-gradient(135deg,#b88100,#7a5500) }
  .r72-ex-banner.red    { background: linear-gradient(135deg,var(--red),#8f001e) }
  .r72-ex-banner.purple { background: linear-gradient(135deg,#5c35b0,#3b1e80) }
  .r72-ex-left  { display: flex; align-items: center; gap: 12px }
  .r72-ex-num   { width: 38px; height: 38px; border-radius: 10px; background: rgba(255,255,255,.18); display: flex; align-items: center; justify-content: center; font-family: Montserrat,sans-serif; font-size: .95rem; font-weight: 800; color: #fff; flex-shrink: 0 }
  .r72-ex-persona h3   { font-family: Montserrat,sans-serif; font-size: .97rem; font-weight: 800; color: #fff; margin: 0 0 2px }
  .r72-ex-persona span { font-size: .74rem; color: rgba(255,255,255,.82) }
  .r72-ex-pill  { background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.25); border-radius: 999px; padding: 5px 12px; font-size: .7rem; font-weight: 700; color: #fff; white-space: nowrap }
  .r72-ex-body  { padding: 18px 20px }
  .r72-ex-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px }
  .r72-ex-box   { background: #f7faff; border: 1px solid var(--border); border-radius: 10px; padding: 13px }
  .r72-ex-box-title { font-family: Montserrat,sans-serif; font-size: .7rem; font-weight: 800; color: var(--navy); text-transform: uppercase; letter-spacing: .06em; margin-bottom: 10px }
  .r72-ex-row   { display: flex; justify-content: space-between; align-items: center; padding: 4px 0; border-bottom: 1px solid var(--border); font-size: .76rem }
  .r72-ex-row:last-child { border-bottom: none }
  .r72-ex-row .lbl { color: var(--muted) }
  .r72-ex-row .val { font-weight: 700; color: var(--ink) }
  .r72-ex-row .val.good   { color: var(--green) }
  .r72-ex-row .val.warn   { color: var(--amber) }
  .r72-ex-row .val.bad    { color: var(--red) }
  .r72-ex-row .val.navy   { color: var(--navy) }
  .r72-ex-kpis  { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-bottom: 14px }
  .r72-ex-kpi   { background: #f7faff; border: 1px solid var(--border); border-radius: 9px; padding: 10px; text-align: center }
  .r72-ex-kpi .klbl { font-size: .64rem; font-weight: 700; text-transform: uppercase; color: var(--muted); margin-bottom: 3px }
  .r72-ex-kpi .kval { font-size: .94rem; font-weight: 800; color: var(--navy) }
  .r72-ex-kpi .ksub { font-size: .64rem; color: var(--muted); margin-top: 2px }
  .r72-ex-lesson { border-radius: 0 9px 9px 0; padding: 13px 15px; font-size: .79rem; line-height: 1.7 }
  .r72-ex-lesson.good   { background: #e8f5e9; border-left: 4px solid var(--green); color: #1b5e20 }
  .r72-ex-lesson.warn   { background: #fff8e1; border-left: 4px solid var(--amber); color: #5d4000 }
  .r72-ex-lesson.bad    { background: #ffebee; border-left: 4px solid var(--red);   color: #b71c1c }
  .r72-ex-lesson.purple { background: #f0ebff; border-left: 4px solid #5c35b0; color: #2e1065 }
  .r72-ex-tags  { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px }
  .r72-ex-tag   { padding: 3px 9px; border-radius: 999px; background: #fff; border: 1px solid var(--border); font-size: .69rem; color: var(--muted); font-weight: 600 }
  .r72-ex-try   { display: inline-flex; align-items: center; gap: 5px; margin-top: 12px; padding: 8px 15px; border-radius: 8px; background: var(--navy); color: #fff; font-family: Montserrat,sans-serif; font-size: .74rem; font-weight: 800; text-decoration: none; border: none; cursor: pointer; transition: background .18s }
  .r72-ex-try:hover { background: #214d88; color: #fff }

  /* ─── Pro Tips ─── */
  .r72-pt-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 26px }
  .r72-pt-card { background: var(--card); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow); display: flex; flex-direction: column }
  .r72-pt-stripe { height: 4px }
  .r72-pt-stripe.green  { background: linear-gradient(90deg,var(--green),#00b37a) }
  .r72-pt-stripe.navy   { background: linear-gradient(90deg,var(--navy),#214d88) }
  .r72-pt-stripe.amber  { background: linear-gradient(90deg,#b88100,#e6a600) }
  .r72-pt-stripe.red    { background: linear-gradient(90deg,var(--red),#e6003c) }
  .r72-pt-stripe.purple { background: linear-gradient(90deg,#5c35b0,#8b5cf6) }
  .r72-pt-stripe.teal   { background: linear-gradient(90deg,#007b8a,#00bcd4) }
  .r72-pt-body  { padding: 16px 17px 17px; flex: 1; display: flex; flex-direction: column }
  .r72-pt-head  { display: flex; align-items: flex-start; gap: 11px; margin-bottom: 12px }
  .r72-pt-num   { width: 24px; height: 24px; border-radius: 6px; background: var(--bg); border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; font-family: Montserrat,sans-serif; font-size: .68rem; font-weight: 800; color: var(--muted); flex-shrink: 0 }
  .r72-pt-cat   { font-size: .64rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 3px }
  .r72-pt-cat.green  { color: var(--green) }
  .r72-pt-cat.navy   { color: var(--navy) }
  .r72-pt-cat.amber  { color: #b88100 }
  .r72-pt-cat.red    { color: var(--red) }
  .r72-pt-cat.purple { color: #5c35b0 }
  .r72-pt-cat.teal   { color: #007b8a }
  .r72-pt-card h3  { font-family: Montserrat,sans-serif; font-size: .87rem; color: var(--navy); line-height: 1.3; margin: 0 }
  .r72-pt-card p   { font-size: .78rem; color: var(--muted); line-height: 1.7; margin-bottom: 10px; flex: 1 }
  .r72-ia { padding: 9px 12px; border-radius: 0 7px 7px 0; font-size: .74rem; line-height: 1.65; margin-bottom: 10px }
  .r72-ia.good   { background: #e8f5e9; border-left: 3px solid var(--green); color: #1b5e20 }
  .r72-ia.warn   { background: #fff8e1; border-left: 3px solid #b88100;      color: #5d4000 }
  .r72-ia.bad    { background: #ffebee; border-left: 3px solid var(--red);   color: #b71c1c }
  .r72-ia.info   { background: #e8edf8; border-left: 3px solid var(--navy);  color: #001a4e }
  .r72-pt-tags  { display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; padding-top: 10px; border-top: 1px solid var(--border) }
  .r72-pt-tag   { padding: 3px 9px; border-radius: 999px; background: var(--bg); border: 1px solid var(--border); font-size: .67rem; color: var(--muted); font-weight: 600 }

  /* ─── FAQ ─── */
  .r72-faq { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 20px; box-shadow: var(--shadow); margin-bottom: 26px }
  .r72-faq h3 { font-family: Montserrat,sans-serif; font-size: .94rem; color: var(--navy); margin-bottom: 14px; padding-bottom: 10px; border-bottom: 2px solid #eef3f7 }
  .r72-faq-item  { border-bottom: 1px solid var(--border) }
  .r72-faq-item:last-child { border-bottom: none }
  .r72-faq-q { width: 100%; background: none; border: none; text-align: left; padding: 13px 0; font-family: Inter,sans-serif; font-size: .82rem; font-weight: 700; color: var(--ink); cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 10px }
  .r72-faq-q:hover { color: var(--navy) }
  .r72-faq-arrow { font-size: .75rem; color: var(--muted); transition: transform .22s; flex-shrink: 0; display: inline-block }
  .r72-faq-a { font-size: .78rem; color: var(--muted); line-height: 1.72; overflow: hidden; max-height: 0; opacity: 0; padding-bottom: 0; transition: max-height .28s ease, opacity .22s ease, padding-bottom .22s ease }
  .r72-faq-item.open .r72-faq-a     { display: block }
  .r72-faq-item.open .r72-faq-arrow { transform: rotate(180deg); color: var(--navy) }

  /* ─── Mobile breakpoints ─── */
  @media(max-width:1100px) {
    .r72-steps    { grid-template-columns: repeat(2,1fr) }
    .r72-edu-grid { grid-template-columns: 1fr }
    .r72-rate-grid { grid-template-columns: repeat(3,1fr) }
    .r72-pt-grid  { grid-template-columns: repeat(2,1fr) }
  }
  @media(max-width:768px) {
    .r72-ex-inner { grid-template-columns: 1fr }
    .r72-ex-kpis  { grid-template-columns: repeat(2,1fr) }
    .r72-rate-grid { grid-template-columns: repeat(2,1fr) }
  }
  @media(max-width:480px) {
    .r72-steps   { grid-template-columns: 1fr }
    .r72-pt-grid { grid-template-columns: 1fr }
    .r72-rate-grid { grid-template-columns: repeat(2,1fr) }
    .r72-section { padding: 0 10px 36px }
    .r72-ex-pill { display: none }
    .r72-f-row   { flex-direction: column; gap: 5px }
    .r72-f-label { min-width: unset }
  }
 /* ── Related Calculators: shared layout ── */
  .rel-section { max-width: 1600px; margin: 0 auto; padding: 0 14px 52px }

  .rel-header { text-align: center; padding: 10px 16px 28px }
  .rel-header h2 { font-family: Montserrat, sans-serif; font-size: clamp(1.3rem,2.8vw,1.85rem); color: var(--navy); margin-bottom: 8px }
  .rel-header p  { color: var(--muted); font-size: .9rem; max-width: 660px; margin: 0 auto }

  .rel-group-label { display: flex; align-items: center; gap: 12px; margin-bottom: 14px }
  .rel-group-icon { width: 32px; height: 32px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: .95rem; flex-shrink: 0 }
  .rel-group-icon.navy  { background: #e8edf8 }
  .rel-group-icon.green { background: #e6f5ef }
  .rel-group-icon.amber { background: #fff8e1 }
  .rel-group-icon.red   { background: #fff0f2 }
  .rel-group-icon.purple{ background: #f0ebff }
  .rel-group-icon.teal  { background: #e0f7fa }
  .rel-group-title { font-family: Montserrat, sans-serif; font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; color: var(--navy) }
  .rel-group-line { flex: 1; height: 2px; background: #eef3f7 }

  .rel-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px }

  .rel-card { background: var(--card); border: 1px solid var(--border); border-radius: 13px; padding: 0; box-shadow: var(--shadow); text-decoration: none; color: inherit; display: flex; flex-direction: column; overflow: hidden; transition: transform .18s, box-shadow .18s, border-color .18s; position: relative }
  .rel-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,40,104,.11); text-decoration: none; color: inherit }

  .rel-accent { height: 4px; width: 100% }
  .rel-accent.navy   { background: linear-gradient(90deg,var(--navy),#214d88) }
  .rel-accent.green  { background: linear-gradient(90deg,var(--green),#00b37a) }
  .rel-accent.amber  { background: linear-gradient(90deg,#b88100,#e6a600) }
  .rel-accent.red    { background: linear-gradient(90deg,var(--red),#e6003c) }
  .rel-accent.purple { background: linear-gradient(90deg,#5c35b0,#8b5cf6) }
  .rel-accent.teal   { background: linear-gradient(90deg,#007b8a,#00bcd4) }

  .rel-card-inner { padding: 14px 14px 13px; display: flex; flex-direction: column; flex: 1; gap: 8px }
  .rel-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px }

  .rel-card-icon { width: 34px; height: 34px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: 1rem; flex-shrink: 0 }
  .rel-card-icon.navy   { background: #e8edf8 }
  .rel-card-icon.green  { background: #e6f5ef }
  .rel-card-icon.amber  { background: #fff8e1 }
  .rel-card-icon.red    { background: #fff0f2 }
  .rel-card-icon.purple { background: #f0ebff }
  .rel-card-icon.teal   { background: #e0f7fa }

  .rel-badge { font-size: .6rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; padding: 2px 8px; border-radius: 999px; white-space: nowrap; flex-shrink: 0 }
  .rel-badge.navy   { background: #e8edf8; color: var(--navy) }
  .rel-badge.green  { background: #e6f5ef; color: var(--green) }
  .rel-badge.amber  { background: #fff8e1; color: #b88100 }
  .rel-badge.red    { background: #fff0f2; color: var(--red) }
  .rel-badge.purple { background: #f0ebff; color: #5c35b0 }
  .rel-badge.teal   { background: #e0f7fa; color: #007b8a }

  .rel-card h3 { font-family: Montserrat, sans-serif; font-size: .82rem; font-weight: 800; color: var(--navy); line-height: 1.32; margin: 0 }
  .rel-card p  { font-size: .73rem; color: var(--muted); line-height: 1.62; margin: 0; flex: 1 }

  .rel-card-footer { display: flex; align-items: center; justify-content: space-between; padding-top: 9px; border-top: 1px solid var(--border); margin-top: auto }
  .rel-card-cta { font-family: Montserrat, sans-serif; font-size: .68rem; font-weight: 800; color: var(--navy) }
  .rel-card-arrow { font-size: .8rem; color: var(--muted); transition: transform .18s, color .18s }
  .rel-card:hover .rel-card-arrow { transform: translateX(4px); color: var(--navy) }

  .rel-card.rel-featured { grid-column: span 2 }
  .rel-card.rel-featured .rel-card-inner { flex-direction: row; gap: 14px; align-items: flex-start }
  .rel-card.rel-featured .rel-card-text { flex: 1; display: flex; flex-direction: column; gap: 6px }
  .rel-card.rel-featured h3 { font-size: .96rem }
  .rel-card.rel-featured p  { font-size: .79rem }
  .rel-card.rel-featured .rel-card-icon { width: 46px; height: 46px; font-size: 1.3rem; flex-shrink: 0 }

  .rel-cta-banner { background: linear-gradient(135deg,var(--navy),#214d88); border-radius: 14px; padding: 22px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 6px }
  .rel-cta-banner-left h3 { font-family: Montserrat, sans-serif; font-size: 1rem; font-weight: 800; color: #fff; margin-bottom: 4px }
  .rel-cta-banner-left p  { font-size: .78rem; color: rgba(255,255,255,.8); margin: 0; max-width: 560px }
  .rel-cta-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 20px; border-radius: 9px; background: #fff; color: var(--navy); font-family: Montserrat, sans-serif; font-size: .78rem; font-weight: 800; text-decoration: none; white-space: nowrap; transition: background .18s, transform .18s; flex-shrink: 0 }
  .rel-cta-btn:hover { background: #e8edf8; transform: translateY(-1px); text-decoration: none; color: var(--navy) }

  @media(max-width:1150px) {
    .rel-grid { grid-template-columns: repeat(3,1fr) }
    .rel-card.rel-featured { grid-column: span 3 }
    .rel-card.rel-featured .rel-card-inner { flex-direction: column }
  }
  @media(max-width:768px) {
    .rel-grid { grid-template-columns: repeat(2,1fr) }
    .rel-card.rel-featured { grid-column: span 2 }
  }
  @media(max-width:480px) {
    .rel-grid { grid-template-columns: 1fr }
    .rel-card.rel-featured { grid-column: span 1 }
    .rel-section { padding: 0 10px 36px }
    .rel-cta-banner { flex-direction: column; text-align: center }
  }
/* ── Section wrapper ── */
  .r72d-section { max-width: 1600px; margin: 0 auto; padding: 0 14px 52px }

  /* ── Section header ── */
  .r72d-header { text-align: center; padding: 10px 16px 28px }
  .r72d-header h2 { font-family: Montserrat, sans-serif; font-size: clamp(1.3rem,2.8vw,1.85rem); color: var(--navy); margin-bottom: 8px }
  .r72d-header p  { color: var(--muted); font-size: .9rem; max-width: 660px; margin: 0 auto }

  /* ── Top warning banner ── */
  .r72d-top-banner { background: #fff8e1; border: 1px solid #ffe082; border-radius: 12px; padding: 16px 18px; display: flex; align-items: flex-start; gap: 13px; margin-bottom: 22px }
  .r72d-top-icon { font-size: 1.35rem; flex-shrink: 0; margin-top: 1px }
  .r72d-top-text h3 { font-family: Montserrat, sans-serif; font-size: .84rem; font-weight: 800; color: #5d4000; margin-bottom: 5px }
  .r72d-top-text p  { font-size: .78rem; color: #5d4000; line-height: 1.72; margin: 0 }

  /* ── Two-col layout ── */
  .r72d-layout { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 16px; margin-bottom: 18px }

  /* ── Main disclaimer card ── */
  .r72d-main { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 22px; box-shadow: var(--shadow) }
  .r72d-main > h3 { font-family: Montserrat, sans-serif; font-size: .92rem; color: var(--navy); margin-bottom: 16px; padding-bottom: 10px; border-bottom: 2px solid #eef3f7; display: flex; align-items: center; gap: 8px }

  /* ── Disclaimer blocks ── */
  .r72d-block { margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--border) }
  .r72d-block:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none }
  .r72d-block-title { display: flex; align-items: center; gap: 9px; margin-bottom: 10px }
  .r72d-tag { width: 26px; height: 26px; border-radius: 7px; display: flex; align-items: center; justify-content: center; font-size: .8rem; flex-shrink: 0 }
  .r72d-tag.red    { background: #fff0f2 }
  .r72d-tag.amber  { background: #fff8e1 }
  .r72d-tag.navy   { background: #e8edf8 }
  .r72d-tag.green  { background: #e6f5ef }
  .r72d-tag.purple { background: #f0ebff }
  .r72d-block-title span { font-family: Montserrat, sans-serif; font-size: .78rem; font-weight: 800; color: var(--navy); text-transform: uppercase; letter-spacing: .05em }
  .r72d-block p  { font-size: .79rem; color: var(--muted); line-height: 1.75; margin: 0 0 8px }
  .r72d-block p:last-child { margin-bottom: 0 }
  .r72d-block strong { color: var(--ink) }
  .r72d-block a { color: var(--navy); text-decoration: underline }
  .r72d-block a:hover { color: #214d88 }

  /* ── Limit checklist ── */
  .r72d-limit { list-style: none; padding: 0; margin: 10px 0 0 }
  .r72d-limit li { font-size: .76rem; color: var(--muted); padding: 6px 0; border-bottom: 1px solid var(--border); display: flex; gap: 9px; align-items: flex-start; line-height: 1.6 }
  .r72d-limit li:last-child { border-bottom: none }
  .r72d-limit .dlbullet { flex-shrink: 0; font-size: .75rem; margin-top: 1px }
  .r72d-limit .dlbullet.red   { color: var(--red) }
  .r72d-limit .dlbullet.amber { color: #b88100 }
  .r72d-limit .dlbullet.green { color: var(--green) }

  /* ── Sidebar ── */
  .r72d-sidebar { display: flex; flex-direction: column; gap: 14px }

  /* ── Editorial card ── */
  .r72d-editorial { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 18px; box-shadow: var(--shadow) }
  .r72d-editorial > h3 { font-family: Montserrat, sans-serif; font-size: .88rem; color: var(--navy); margin-bottom: 14px; padding-bottom: 9px; border-bottom: 2px solid #eef3f7; display: flex; align-items: center; gap: 8px }
  .r72d-eb-row { display: flex; align-items: flex-start; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--border) }
  .r72d-eb-row:last-child { border-bottom: none }
  .r72d-eb-icon { width: 30px; height: 30px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: .85rem; flex-shrink: 0 }
  .r72d-eb-icon.green  { background: #e6f5ef }
  .r72d-eb-icon.navy   { background: #e8edf8 }
  .r72d-eb-icon.amber  { background: #fff8e1 }
  .r72d-eb-icon.purple { background: #f0ebff }
  .r72d-eb-icon.teal   { background: #e0f7fa }
  .r72d-eb-text strong { display: block; font-size: .76rem; font-weight: 700; color: var(--ink); margin-bottom: 2px }
  .r72d-eb-text span   { font-size: .72rem; color: var(--muted); line-height: 1.6 }

  /* ── Accuracy scores ── */
  .r72d-scores { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 16px; box-shadow: var(--shadow) }
  .r72d-scores > h3 { font-family: Montserrat, sans-serif; font-size: .82rem; color: var(--navy); margin-bottom: 12px; display: flex; align-items: center; gap: 7px }
  .r72d-score-row { display: flex; align-items: center; justify-content: space-between; padding: 7px 0; border-bottom: 1px solid var(--border) }
  .r72d-score-row:last-child { border-bottom: none }
  .r72d-score-label { font-size: .74rem; color: var(--muted) }
  .r72d-score-val   { display: flex; align-items: center; gap: 6px }
  .r72d-dots { display: flex; gap: 3px }
  .r72d-dot { width: 9px; height: 9px; border-radius: 50% }
  .r72d-dot.filled.green  { background: var(--green) }
  .r72d-dot.filled.navy   { background: var(--navy) }
  .r72d-dot.filled.amber  { background: #b88100 }
  .r72d-dot.empty         { background: #e0e6ef }
  .r72d-score-pct { font-family: Montserrat, sans-serif; font-size: .72rem; font-weight: 800; color: var(--navy) }

  /* ── Authority links block ── */
  .r72d-authority { background: linear-gradient(135deg,#001a4e,var(--navy)); border-radius: 14px; padding: 20px 22px; margin-bottom: 18px }
  .r72d-auth-head { margin-bottom: 14px }
  .r72d-auth-head h3 { font-family: Montserrat, sans-serif; font-size: .92rem; font-weight: 800; color: #fff; margin-bottom: 4px }
  .r72d-auth-head p  { font-size: .76rem; color: rgba(255,255,255,.75); line-height: 1.55; margin: 0 }
  .r72d-auth-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px }
  .r72d-auth-link { background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.16); border-radius: 10px; padding: 13px 12px; text-decoration: none; display: flex; flex-direction: column; gap: 6px; transition: background .18s, transform .18s }
  .r72d-auth-link:hover { background: rgba(255,255,255,.17); transform: translateY(-2px); text-decoration: none }
  .r72d-auth-top   { display: flex; align-items: center; justify-content: space-between; gap: 6px }
  .r72d-auth-badge { font-size: .57rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; padding: 2px 7px; border-radius: 999px; background: rgba(255,255,255,.18); color: #fff; white-space: nowrap; flex-shrink: 0 }
  .r72d-auth-icon  { font-size: .9rem }
  .r72d-auth-title { font-family: Montserrat, sans-serif; font-size: .76rem; font-weight: 700; color: #fff; line-height: 1.32 }
  .r72d-auth-desc  { font-size: .69rem; color: rgba(255,255,255,.72); line-height: 1.5 }
  .r72d-auth-url   { font-size: .63rem; color: rgba(255,255,255,.45); margin-top: 2px; word-break: break-all }
  .r72d-auth-arrow { font-size: .7rem; color: rgba(255,255,255,.5); align-self: flex-end; margin-top: auto; transition: transform .18s }
  .r72d-auth-link:hover .r72d-auth-arrow { transform: translateX(3px); color: rgba(255,255,255,.9) }

  /* ── Compliance strip ── */
  .r72d-compliance { background: #f3f5f8; border: 1px solid var(--border); border-radius: 12px; padding: 15px 17px; display: flex; align-items: flex-start; gap: 12px }
  .r72d-compliance-icon { font-size: 1.25rem; flex-shrink: 0; margin-top: 2px }
  .r72d-compliance-text p { font-size: .74rem; color: var(--muted); line-height: 1.72; margin: 0 0 5px }
  .r72d-compliance-text p:last-child { margin-bottom: 0 }
  .r72d-compliance-text strong { color: var(--ink) }
  .r72d-compliance-text a { color: var(--navy); text-decoration: underline }
  .r72d-compliance-text a:hover { color: #214d88 }

  /* ── Mobile ── */
  @media(max-width:1100px) {
    .r72d-layout    { grid-template-columns: 1fr }
    .r72d-auth-grid { grid-template-columns: repeat(2,1fr) }
  }
  @media(max-width:640px) {
    .r72d-section       { padding: 0 10px 36px }
    .r72d-auth-grid     { grid-template-columns: 1fr }
    .r72d-top-banner    { flex-direction: column; gap: 8px }
    .r72d-compliance    { flex-direction: column; gap: 8px }
  }
/* ── Government Authority Sources block ── */
  .r72d-authority {
    background: linear-gradient(135deg,#001a4e,var(--navy));
    border-radius: 14px;
    padding: 20px 22px;
    margin-bottom: 18px;
  }
  .r72d-auth-head {
    margin-bottom: 14px;
  }
  .r72d-auth-head h3 {
    font-family: Montserrat, sans-serif;
    font-size: .92rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 4px;
  }
  .r72d-auth-head p {
    font-size: .76rem;
    color: rgba(255,255,255,.75);
    line-height: 1.55;
    margin: 0;
  }
  .r72d-auth-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 10px;
  }
  .r72d-auth-link {
    background: rgba(255,255,255,.09);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 10px;
    padding: 13px 12px;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: background .18s, transform .18s;
  }
  .r72d-auth-link:hover {
    background: rgba(255,255,255,.17);
    transform: translateY(-2px);
    text-decoration: none;
  }
  .r72d-auth-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
  }
  .r72d-auth-badge {
    font-size: .57rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 2px 7px;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
    color: #fff;
    white-space: nowrap;
    flex-shrink: 0;
  }
  .r72d-auth-icon {
    font-size: .9rem;
  }
  .r72d-auth-title {
    font-family: Montserrat, sans-serif;
    font-size: .76rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.32;
  }
  .r72d-auth-desc {
    font-size: .69rem;
    color: rgba(255,255,255,.72);
    line-height: 1.5;
  }
  .r72d-auth-url {
    font-size: .63rem;
    color: rgba(255,255,255,.45);
    margin-top: 2px;
    word-break: break-all;
  }
  .r72d-auth-arrow {
    font-size: .7rem;
    color: rgba(255,255,255,.5);
    align-self: flex-end;
    margin-top: auto;
    transition: transform .18s;
  }
  .r72d-auth-link:hover .r72d-auth-arrow {
    transform: translateX(3px);
    color: rgba(255,255,255,.9);
  }

  @media(max-width:1100px) {
    .r72d-auth-grid {
      grid-template-columns: repeat(2,1fr);
    }
  }
  @media(max-width:640px) {
    .r72d-auth-grid {
      grid-template-columns: 1fr;
    }
  }

/* ============================================================
   🎨 HIERARCHY & BRAND COLOR LOCK
   ============================================================ */
h2, .card h2, .sec-title, .edu-card h2 { font-size: 1.4rem !important; font-weight: 800 !important; line-height: 1.3 !important; margin-bottom: 14px !important; }
h3, .card h3, .edu-card h3, .wrap h3 { font-size: 1.15rem  !important; font-weight: 800 !important; margin: 20px 0 10px !important; }
h4, .card h4, .step-card h4, .tip-card h4, .edu-box h4, .wrap h4 { font-size: 0.95rem !important; font-weight: 700 !important; margin-bottom: 8px !important;}



/* ============================================================
   📐 SECTION SPACING & BREATHING ROOM FIX
   ============================================================ */
/* Forces a healthy gap below every card */
.card, .table-wrap, .r72-faq {
  margin-bottom: 32px !important; 
}

/* Forces a tall gap ABOVE any H2 to separate major sections */
h2, .sec-title {
  margin-top: 48px !important; 
}

/* Prevents the very first H2 on the page from having a massive gap */
.wrap > h2:first-of-type,
.layout-main > h2:first-of-type {
  margin-top: 20px !important;
}

 /* GLOBAL SAFE CONTAINER */
.page-content,
.calc-wrap,
.card {
  box-sizing: border-box;
  max-width: 100%;
  overflow-x: hidden;
}
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}
@media (max-width: 768px) {
  /* Core layout grids */
  .layout-grid,
  .metrics-grid,
  .scenario-grid,
  .legal-grid,
  .ed-pillars {
    grid-template-columns: 1fr !important;
  }

  /* Related calculators grids */
  .related-grid,
  .auth-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 480px) {
  .related-grid,
  .auth-grid {
    grid-template-columns: 1fr;
  }
}
/* Tables inside the tool */
.card table {
  table-layout: fixed;
  width: 100%;
}

.card th,
.card td {
  word-wrap: break-word;
  white-space: normal;
}

/* Hard clamp long words in any content */
.card,
.card * {
  word-break: break-word;
}
@media (max-width: 480px) {
  .primary-btn,
  .secondary-btn,
  .mode-toggle button,
  .faq-q,
  .related-card,
  .legal-footer-bar {
    max-width: 100%;
  }

  .tags {
    flex-wrap: wrap;
  }

  .tag {
    max-width: 100%;
  }
}