  .cc{ background: var(--cream); padding: var(--section-y) 0; }
  .cc__split{ display:grid; grid-template-columns:1fr; gap:2.5rem; }
  @media (min-width:900px){
    .cc__split{ grid-template-columns: 5fr 7fr; gap: 4rem; align-items:start; }
    .cc__copy{ position:sticky; top:108px; }
    .cc__copy .display-1{ font-size: clamp(34px, 4vw, 58px); }
  }
  .cc__copy .lead{ margin-top: 1.5rem; }
  .cc__privacy{
    display:flex; gap:.75rem; align-items:flex-start;
    margin-top:2rem; padding:1rem 1.25rem;
    background: var(--paper); border:1px solid var(--border); border-radius:2px;
    font-size:14px; line-height:1.55; color: var(--ink-2);
  }
  .cc__privacy svg{ flex:0 0 18px; width:18px; height:18px; margin-top:2px; color: var(--gold-deep); }

  .cc__card{ background: var(--navy); color: var(--cream); border-radius:2px; padding: 2.25rem; }
  @media (min-width:600px){ .cc__card{ padding: 2.75rem 3rem; } }
  .cc__legend{
    font-size:11px; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
    color: var(--gold-light); margin:0 0 1rem;
  }
  .cc__radios{ display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin-bottom:2rem; }
  .cc__radio{ position:relative; }
  .cc__radio input{ position:absolute; opacity:0; width:1px; height:1px; }
  .cc__radio label{
    display:block; padding:1rem 1.125rem; border:1px solid rgba(246,241,232,.22); border-radius:2px;
    cursor:pointer; font-weight:500; line-height:1.3; transition: border-color .15s, background .15s;
  }
  .cc__radio label small{ display:block; font-weight:400; font-size:13px; color: rgba(246,241,232,.62); margin-top:.3rem; }
  .cc__radio input:checked + label{ border-color: var(--gold-light); background: rgba(217,160,102,.1); }
  .cc__radio input:focus-visible + label{ outline:2px solid var(--gold-light); outline-offset:2px; }
  /* Phones: stack the filing-status tiles full width at equal heights. */
  @media (max-width:480px){
    .cc__radios{ grid-template-columns:1fr; grid-auto-rows:1fr; }
    .cc__radio label{ height:100%; }
  }

  .cc__field label{ display:block; font-weight:500; margin-bottom:.5rem; }
  .cc__field .hint{ font-size:13px; color: rgba(246,241,232,.62); margin:0 0 .75rem; line-height:1.5; }
  .cc__input-wrap{ display:flex; align-items:center; border-bottom:2px solid rgba(246,241,232,.35); padding-bottom:.25rem; }
  .cc__input-wrap:focus-within{ border-bottom-color: var(--gold-light); }
  .cc__input-wrap span{ font-family: var(--serif); font-style:italic; font-size:30px; color: rgba(246,241,232,.45); margin-right:.5rem; }
  .cc__input{
    flex:1; background:transparent; border:0; color: var(--cream); font-family: var(--serif);
    font-size: clamp(34px, 5vw, 44px); font-weight:500; min-width:0; width:100%; outline:none;
    font-variant-numeric: tabular-nums;
  }
  @media (max-width: 767px){ .cc__input{ min-height: 44px; } .cc__textlink{ display:inline-flex; align-items:center; min-height:44px; } } /* R3-C03 */
  .cc__input::placeholder{ color: rgba(246,241,232,.3); }
  .cc__actions{ margin-top:1.75rem; }
  .cc__actions .btn{ width:100%; justify-content:center; }

  .cc__result{ margin-top:2.5rem; padding-top:2rem; border-top:1px solid rgba(246,241,232,.14); }
  .cc__result-label{ font-size:11px; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color: rgba(246,241,232,.62); margin:0 0 .5rem; }
  .cc__big{ font-family: var(--serif); font-size: clamp(44px, 7vw, 64px); line-height:1; color: var(--gold-light); font-weight:500; font-variant-numeric: tabular-nums; margin:0; }
  .cc__big small{ font-size: .3em; color: rgba(246,241,232,.7); font-family: var(--sans); font-weight:500; letter-spacing:.02em; margin-left:.5rem; vertical-align: middle; }
  .cc__rows{ margin:1.75rem 0 0; padding:0; list-style:none; }
  .cc__rows li{ display:flex; justify-content:space-between; gap:1rem; padding:.75rem 0; border-top:1px solid rgba(246,241,232,.1); font-size:15px; }
  .cc__rows li span:last-child{ font-variant-numeric: tabular-nums; font-weight:600; }
  .cc__note{ margin:1.5rem 0 0; font-size:14px; line-height:1.6; color: rgba(246,241,232,.78); }
  .cc__note strong{ color: var(--cream); }

  .cc__under{ margin-top:1.25rem; font-size:13px; color: var(--muted); text-align:center; }

  .meaning{ padding: var(--section-y) 0; background: var(--cream-2); }
  .meaning__grid{ display:grid; grid-template-columns:1fr; gap:2rem; margin-top:3rem; }
  @media (min-width:800px){ .meaning__grid{ grid-template-columns: repeat(3,1fr); gap:3rem; } }
  .meaning__item h3{ font-family: var(--serif); font-size:22px; font-weight:500; margin:0 0 .75rem; color: var(--ink); }
  .meaning__item p{ margin:0; color: var(--ink-2); line-height:1.6; }
  .meaning__links{ margin-top:3.5rem; display:flex; flex-wrap:wrap; gap:1rem 2rem; }
  .fine{ font-size:13px; line-height:1.65; color: var(--muted); max-width:72ch; }
  .fine + .fine{ margin-top:.5rem; }

  .cc__fs{ border:0; padding:0; margin:0; }
  .cc__legend--block{ display:block; }
  .cc__finewrap{ margin-top:3.5rem; }
  .cc__textlink{ color: var(--gold-deep); font-weight:600; align-self:center; text-decoration:none; }
  .footer__tag{ max-width:32ch; }
