/* ClaimMVA Now - full stylesheet.
   Every page links this one file. Design tokens are in :root at the top. */

/* ============================================================
   CLAIMMVA NOW — REVAMP
   Section 01: Hero (Variation A + Variation B)
   ============================================================ */

:root{
  /* Brand palette — locked */
  --brand-orange:        #F26522;
  --brand-orange-hover:  #D9541A;
  --brand-orange-tint:   #FFF4ED;
  --brand-navy:          #1B2438;
  --brand-navy-soft:     #2A3450;
  --text-body:           #4A5262;
  --text-muted:          #8A919F;
  --bg-white:            #FFFFFF;
  --bg-grey:             #F7F8FA;
  --border:              #E4E7EC;
  --negative-red:        #FB2C36;
  --negative-red-tint:   #FFF1F2;
  --positive-green:      #16A34A;
  --positive-green-tint: #ECFDF3;

  --font-base: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-head: 'Quicksand', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --wrap: 1180px;
  --radius-pill: 999px;
  --radius-card: 14px;
}

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

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0;
  font-family:var(--font-base);
  color:var(--text-body);
  background:var(--bg-white);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; }

.cmva-wrap{
  width:100%;
  max-width:var(--wrap);
  margin:0 auto;
  padding:0 24px;
}

/* --- Shared button system ------------------------------------ */
.cmva-btn{
  font-family:var(--font-head);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:600;
  font-size:15px;
  letter-spacing:.1px;
  padding:16px 30px;
  border-radius:var(--radius-pill);
  border:2px solid transparent;
  cursor:pointer;
  transition:background-color .18s ease, background-image .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
  text-align:center;
}
.cmva-btn--primary{
  /* background-origin must be border-box: with a transparent border the
     default padding-box origin smears the gradient's end colour across
     the border ring and reads as a hard block on the trailing edge */
  background-image:linear-gradient(115deg, #F2751F 0%, #D9500D 100%);
  background-origin:border-box;
  background-clip:border-box;
  color:#fff;
  border-color:transparent;
  box-shadow:0 8px 20px -10px rgba(214,76,12,.55);
}
.cmva-btn--primary:hover{
  background-image:linear-gradient(115deg, #E4650F 0%, #BE430A 100%);
  border-color:transparent;
  box-shadow:0 10px 24px -10px rgba(214,76,12,.65);
}

/* Hero CTA carries a wider glow than the header or in-card buttons */
.cmva-hero__actions .cmva-btn--primary{
  padding:17px 34px;
  font-size:15.5px;
  box-shadow:0 12px 28px -12px rgba(214,76,12,.65);
}
.cmva-hero__actions .cmva-btn--primary:hover{
  box-shadow:0 16px 32px -12px rgba(214,76,12,.75);
}
.cmva-hero__actions .cmva-btn--ghost{
  padding:17px 34px;
  font-size:15.5px;
  color:var(--brand-orange);
  border-color:var(--brand-orange);
}
.cmva-hero__actions .cmva-btn--ghost:hover{
  background:var(--brand-orange);
  color:#fff;
}
.cmva-btn--ghost{
  background:#fff;
  color:var(--brand-navy);
  border-color:var(--brand-navy);
}
.cmva-btn--ghost:hover{ background:var(--brand-navy); color:#fff; }
.cmva-btn--block{ width:100%; }

.cmva-btn:focus-visible,
a:focus-visible,
select:focus-visible{
  outline:3px solid var(--brand-navy);
  outline-offset:3px;
}



/* ============================================================
   Typography — Quicksand for display, Poppins for reading
   ============================================================ */
h1, h2, h3, h4,
.cmva-h1, .cmva-h2,
.cmva-entry__title, .cmva-entry__q,
.cmva-stat__num, .cmva-step__title, .cmva-case__title,
.cmva-final__title, .cmva-col__head, .cmva-q__text,
.cmva-closer, .cmva-done h4, .cmva-rating__g b,
.cmva-footer__col h3, .cmva-footer__phone,
.cmva-links__label, .cmva-entry__step, .cmva-tag,
.cmva-strip, .cmva-choice, .cmva-form label,
.cmva-table thead th{
  font-family:var(--font-head);
}

/* Quicksand runs light at the same weight, so display type
   steps up one notch to hold the same visual weight */
/* Quicksand has no weight above 700, so the headline gets a hairline
   stroke in its own colour to thicken the stems without changing face */
.cmva-h1{
  font-weight:700;
  letter-spacing:-.5px;
  -webkit-text-stroke:0.9px currentColor;
  paint-order:stroke fill;
}
.cmva-h2{ font-weight:700; letter-spacing:-.4px; }
.cmva-final__title{ font-weight:700; letter-spacing:-.4px; }
.cmva-stat__num{ font-weight:700; letter-spacing:-.3px; }
.cmva-entry__title{ font-weight:700; letter-spacing:-.2px; }

/* --- Header --------------------------------------------------- */
.cmva-header{
  position:relative;
  position:sticky;
  top:0;
  z-index:60;
  background:#fff;
  border-bottom:1px solid var(--border);
}
.cmva-header__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  height:66px;
}
.cmva-logo{ display:flex; align-items:center; flex:0 0 auto; }
.cmva-logo img{ height:36px; width:auto; }
.cmva-logo--light{ margin-bottom:18px; }
.cmva-logo--light img{ height:40px; }
@media (max-width:640px){
  .cmva-logo img{ height:30px; }
}
.cmva-nav{ display:flex; align-items:center; gap:26px; }
.cmva-nav a{
  font-size:14px; font-weight:500; color:var(--brand-navy);
}
.cmva-nav a:hover{ color:var(--brand-orange); }
.cmva-header__cta{ display:flex; align-items:center; gap:18px; }
.cmva-header__phone{
  font-size:14px; font-weight:600; color:var(--brand-navy); white-space:nowrap;
}
.cmva-header .cmva-btn{ padding:11px 22px; font-size:14px; }






/* ============================================================
   CHAT WIDGET (bottom right)
   ============================================================ */
.cmva-chat__launch{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:160;
  display:flex;
  align-items:center;
  gap:12px;
  padding:7px 7px 7px 18px;
  border:0;
  border-radius:var(--radius-pill);
  background:var(--brand-navy);
  cursor:pointer;
  box-shadow:0 16px 34px -16px rgba(16,22,36,.85);
  transition:transform .18s ease, box-shadow .18s ease;
}
.cmva-chat__launch:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 38px -16px rgba(16,22,36,.95);
}
.cmva-chat__launch[aria-expanded="true"]{ display:none; }

.cmva-chat__lbl{ display:flex; flex-direction:column; gap:2px; text-align:left; }
.cmva-chat__lbl-top{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  font-weight:500;
  color:#8A93A8;
  letter-spacing:.2px;
}
.cmva-chat__lbl-top i{
  width:7px; height:7px; border-radius:50%;
  background:var(--positive-green);
  box-shadow:0 0 0 3px rgba(22,163,74,.22);
}
.cmva-chat__lbl-main{
  font-family:var(--font-head);
  font-size:14px;
  font-weight:700;
  color:#fff;
  white-space:nowrap;
}
.cmva-chat__bubble{
  flex:0 0 auto;
  width:44px; height:44px;
  border-radius:50%;
  display:grid; place-items:center;
  background-image:linear-gradient(115deg, #F2751F 0%, #D9500D 100%);
  background-origin:border-box;
  color:#fff;
  box-shadow:0 8px 18px -8px rgba(214,76,12,.9);
}

@media (max-width:520px){
  .cmva-chat__launch{ padding:6px; gap:0; }
  .cmva-chat__lbl{ display:none; }
}

.cmva-chat{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:161;
  width:min(388px, calc(100vw - 32px));
  max-height:min(620px, calc(100vh - 40px));
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 34px 70px -24px rgba(27,36,56,.5);
  animation:cmva-pop .24s cubic-bezier(.2,.8,.3,1) both;
}

.cmva-chat__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 14px;
  background:#fff;
  border-bottom:1px solid var(--border);
}
.cmva-chat__who{ display:flex; align-items:center; gap:10px; }
.cmva-chat__av{
  width:38px; height:38px;
  display:grid; place-items:center;
  border-radius:11px;
  background:var(--brand-orange-tint);
  color:var(--brand-orange);
  border:1px solid rgba(242,101,34,.3);
}
.cmva-chat__name{
  margin:0;
  font-family:var(--font-head);
  font-size:15px;
  font-weight:700;
  color:var(--brand-navy);
}
.cmva-chat__status{
  margin:0;
  font-size:11.5px;
  color:var(--positive-green);
  display:flex;
  align-items:center;
  gap:5px;
}
.cmva-chat__status i{ width:7px; height:7px; border-radius:50%; background:var(--positive-green); }
.cmva-chat__acts{ display:flex; align-items:center; gap:2px; }
.cmva-chat__min,
.cmva-chat__x{
  border:0;
  background:none;
  color:var(--text-muted);
  font-size:20px;
  line-height:1;
  cursor:pointer;
  width:30px; height:30px;
  border-radius:8px;
}
.cmva-chat__min:hover,
.cmva-chat__x:hover{ background:var(--bg-grey); color:var(--brand-navy); }

.cmva-chat__log{
  flex:1;
  overflow-y:auto;
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  background:#fff;
}
.cmva-msg{
  max-width:88%;
  padding:11px 14px;
  border-radius:14px;
  font-size:13.5px;
  line-height:1.6;
}
.cmva-msg--bot{
  align-self:flex-start;
  background:var(--brand-orange-tint);
  border:1px solid rgba(242,101,34,.22);
  color:var(--text-body);
  border-bottom-left-radius:5px;
}
.cmva-msg--me{
  align-self:flex-end;
  background-image:linear-gradient(115deg, #F2751F 0%, #D9500D 100%);
  background-origin:border-box;
  color:#fff;
  border-bottom-right-radius:5px;
}
.cmva-msg b, .cmva-msg strong{ color:var(--brand-navy); font-weight:700; }
.cmva-msg--me b, .cmva-msg--me strong{ color:#fff; }
.cmva-msg a{ color:var(--brand-orange); font-weight:600; text-decoration:underline; }
.cmva-msg--me a{ color:#fff; }
.cmva-msg--typing{ display:flex; gap:4px; align-items:center; }
.cmva-msg--typing i{
  width:6px; height:6px; border-radius:50%;
  background:var(--brand-orange);
  animation:cmva-blink 1.2s infinite;
}
.cmva-msg--typing i:nth-child(2){ animation-delay:.18s }
.cmva-msg--typing i:nth-child(3){ animation-delay:.36s }
@keyframes cmva-blink{ 0%,60%,100%{ opacity:.25 } 30%{ opacity:1 } }

/* hint row under the options */
.cmva-hint{
  align-self:stretch;
  display:flex;
  gap:8px;
  align-items:flex-start;
  padding:10px 13px;
  border-radius:11px;
  background:#FFF8E6;
  border:1px solid #F5E0A8;
  font-size:12.5px;
  line-height:1.5;
  color:#7A5A12;
}

/* option tiles inside the chat */
.cmva-chat__opts{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  align-self:stretch;
}
.cmva-chat__opt{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 12px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:11px;
  font-family:var(--font-head);
  font-size:12.5px;
  font-weight:600;
  line-height:1.3;
  color:var(--brand-navy);
  cursor:pointer;
  text-align:left;
  transition:border-color .15s ease, background-color .15s ease;
}
.cmva-chat__opt:hover{ border-color:var(--brand-orange); background:var(--brand-orange-tint); }
.cmva-chat__opt span:first-child{ font-size:16px; line-height:1; flex:0 0 auto; }
.cmva-chat__opt-ar{ margin-left:auto; color:var(--text-muted); font-size:13px; }

.cmva-chat__chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:0 14px 10px;
  background:#fff;
}
.cmva-chip{
  border:1px solid var(--border);
  background:#fff;
  border-radius:var(--radius-pill);
  padding:7px 12px;
  font-family:var(--font-base);
  font-size:12.5px;
  color:var(--brand-navy);
  cursor:pointer;
  transition:border-color .15s ease, background-color .15s ease;
}
.cmva-chip:hover{ border-color:var(--brand-orange); background:var(--brand-orange-tint); }

.cmva-chat__form{
  display:flex;
  gap:8px;
  padding:0 14px 10px;
  background:#fff;
}
.cmva-chat__form input{
  flex:1;
  min-width:0;
  font-family:inherit;
  font-size:13.5px;
  padding:12px 15px;
  border:1.5px solid var(--border);
  border-radius:var(--radius-pill);
  color:var(--brand-navy);
  background:var(--bg-grey);
}
.cmva-chat__form input:focus{
  outline:none;
  background:#fff;
  border-color:var(--brand-orange);
  box-shadow:0 0 0 3px rgba(242,101,34,.14);
}
.cmva-chat__form button{
  flex:0 0 auto;
  width:42px; height:42px;
  border:0;
  border-radius:50%;
  background-image:linear-gradient(115deg, #F2751F 0%, #D9500D 100%);
  background-origin:border-box;
  color:#fff;
  cursor:pointer;
  display:grid;
  place-items:center;
  box-shadow:0 8px 16px -8px rgba(214,76,12,.8);
}
.cmva-chat__form button:disabled{ opacity:.5; cursor:default; box-shadow:none; }

.cmva-chat__foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 14px;
  background:var(--bg-grey);
  border-top:1px solid var(--border);
  font-size:10.5px;
  color:var(--text-muted);
}

@media (max-width:520px){
  .cmva-chat{ right:10px; left:10px; bottom:10px; width:auto; max-height:calc(100vh - 20px); }
  .cmva-chat__launch{ right:14px; bottom:14px; }
}
@media (prefers-reduced-motion:reduce){
  .cmva-chat{ animation:none; }
  .cmva-msg--typing i{ animation:none; }
}


/* ============================================================
   ACTIVITY TOAST (bottom left)
   ============================================================ */
.cmva-toast{
  position:fixed;
  left:20px;
  bottom:20px;
  z-index:150;
  display:flex;
  align-items:flex-start;
  gap:11px;
  width:min(330px, calc(100vw - 40px));
  padding:13px 14px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:13px;
  box-shadow:0 18px 40px -18px rgba(27,36,56,.45);
  opacity:0;
  transform:translateY(14px);
  transition:opacity .3s ease, transform .3s ease;
}
.cmva-toast.is-in{ opacity:1; transform:translateY(0); }

.cmva-toast__dot{
  flex:0 0 auto;
  width:9px;
  height:9px;
  margin-top:5px;
  border-radius:50%;
  background:var(--positive-green);
  box-shadow:0 0 0 3px rgba(22,163,74,.18);
}
.cmva-toast__body{ min-width:0; flex:1; }
.cmva-toast__line{
  margin:0 0 3px;
  font-size:13.5px;
  line-height:1.45;
  color:var(--brand-navy);
  font-weight:500;
}
.cmva-toast__line b{ font-weight:700; }
.cmva-toast__meta{
  margin:0;
  font-size:11.5px;
  color:var(--text-muted);
}
.cmva-toast__x{
  flex:0 0 auto;
  width:22px;
  height:22px;
  border:0;
  border-radius:50%;
  background:none;
  color:var(--text-muted);
  font-size:17px;
  line-height:1;
  cursor:pointer;
}
.cmva-toast__x:hover{ background:var(--bg-grey); color:var(--brand-navy); }

@media (max-width:520px){
  .cmva-toast{ left:12px; right:12px; bottom:12px; width:auto; }
}
@media (prefers-reduced-motion:reduce){
  .cmva-toast{ transition:none; transform:none; }
}


/* ============================================================
   ENTRY MODAL
   ============================================================ */
.cmva-modal{
  position:fixed;
  inset:0;
  z-index:200;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding:28px 18px;
  overflow-y:auto;
}
.cmva-modal__veil{
  position:fixed;
  inset:0;
  background:rgba(14,19,30,.62);
  backdrop-filter:blur(2px);
  animation:cmva-fade .22s ease both;
}
.cmva-modal__box{
  position:relative;
  width:100%;
  max-width:470px;
  margin:auto;
  background:#fff;
  border-radius:20px;
  padding:22px 22px 18px;
  box-shadow:0 40px 80px -30px rgba(10,15,25,.7);
  animation:cmva-pop .26s cubic-bezier(.2,.8,.3,1) both;
}
@keyframes cmva-fade{ from{ opacity:0 } to{ opacity:1 } }
@keyframes cmva-pop{
  from{ opacity:0; transform:translateY(14px) scale(.98) }
  to{ opacity:1; transform:none }
}

.cmva-modal__x{
  position:absolute;
  top:12px;
  right:14px;
  width:32px;
  height:32px;
  border:0;
  border-radius:50%;
  background:var(--bg-grey);
  color:var(--text-muted);
  font-size:21px;
  line-height:1;
  cursor:pointer;
  transition:background-color .15s ease, color .15s ease;
}
.cmva-modal__x:hover{ background:var(--brand-orange-tint); color:var(--brand-orange); }

.cmva-modal__head{ text-align:center; margin-bottom:16px; padding:0 6px; }
.cmva-modal__eyebrow{
  position:absolute;
  top:-13px;
  left:50%;
  transform:translateX(-50%);
  margin:0;
  display:inline-flex;
  align-items:center;
  padding:6px 16px;
  border-radius:var(--radius-pill);
  background:var(--positive-green);
  color:#fff;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
  box-shadow:0 6px 16px -8px rgba(22,163,74,.85);
}
.cmva-modal__title{
  margin:0 0 8px;
  font-family:var(--font-head);
  font-size:25px;
  font-weight:700;
  line-height:1.22;
  letter-spacing:-.4px;
  color:var(--brand-navy);
}
.cmva-modal__sub{
  margin:0;
  font-size:14px;
  line-height:1.6;
  color:var(--text-body);
  max-width:40ch;
  margin-inline:auto;
}

/* the card sits flush inside the modal */
.cmva-modal .cmva-entry{
  border:0;
  box-shadow:none;
  padding:18px 0 0;
  border-top:1px solid var(--border);
  border-radius:0;
}
.cmva-modal .cmva-entry__flag{ display:none; }
.cmva-modal .cmva-entry__intro{ display:none; }

.cmva-modal__skip{
  display:block;
  width:100%;
  margin-top:6px;
  padding:10px;
  background:none;
  border:0;
  font-size:13px;
  color:var(--text-muted);
  cursor:pointer;
  text-decoration:underline;
}
.cmva-modal__skip:hover{ color:var(--brand-navy); }

@media (max-width:520px){
  .cmva-modal{ padding:22px 12px 16px; }
  .cmva-modal__box{ padding:20px 18px 14px; }
  .cmva-modal__title{ font-size:22px; }
  .cmva-modal__eyebrow{ font-size:11.5px; padding:5px 13px; }
}
@media (prefers-reduced-motion:reduce){
  .cmva-modal__veil, .cmva-modal__box{ animation:none; }
}


/* ============================================================
   MEGA MENU
   ============================================================ */
.cmva-drop{ position:static; }
.cmva-drop__btn{
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:none;
  border:0;
  padding:0;
  font-family:var(--font-head);
  font-size:14px;
  font-weight:600;
  color:var(--brand-navy);
  cursor:pointer;
}
.cmva-drop__btn span{ font-size:10px; color:var(--text-muted); transition:transform .18s ease; }
.cmva-drop__btn:hover{ color:var(--brand-orange); }
.cmva-drop__btn[aria-expanded="true"] span{ transform:rotate(180deg); }

.cmva-mega{
  position:absolute;
  top:100%;
  left:0;
  right:0;
  margin:0 auto;
  width:min(1100px, calc(100vw - 48px));
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:0 30px 60px -28px rgba(27,36,56,.45);
  padding:22px;
  opacity:0;
  transform:translateY(-6px);
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:70;
}
.cmva-drop.is-open .cmva-mega{ opacity:1; transform:translateY(0); pointer-events:auto; }

.cmva-mega__grid{
  display:grid;
  grid-template-columns:1fr 1fr .78fr;
  gap:18px;
}
.cmva-mega__col{ display:flex; flex-direction:column; gap:2px; }
.cmva-mega__col a{
  display:block;
  padding:9px 12px;
  border-radius:9px;
  transition:background-color .15s ease;
}
.cmva-mega__col a:hover{ background:var(--brand-orange-tint); }
.cmva-mega__col b{
  display:block;
  font-family:var(--font-head);
  font-size:14px;
  font-weight:700;
  color:var(--brand-navy);
  margin-bottom:2px;
}
.cmva-mega__col span{
  display:block;
  font-size:12.5px;
  line-height:1.45;
  color:var(--text-muted);
}
.cmva-mega__all{
  margin-top:6px;
  font-size:13.5px;
  font-weight:700;
  color:var(--brand-orange) !important;
}
.cmva-mega__all:hover{ text-decoration:underline; }

.cmva-mega__promo{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border-radius:12px;
  background:linear-gradient(140deg, #F2751F 0%, #B23C08 100%);
  color:#fff;
}
.cmva-mega__promo-h{
  margin:0 0 8px;
  font-family:var(--font-head);
  font-size:16px;
  font-weight:700;
}
.cmva-mega__promo-b{ margin:0; font-size:13.5px; line-height:1.6; color:rgba(255,255,255,.92); }
.cmva-mega__promo-cta{
  /* solid white on the orange panel - the outlined version had far
     too little contrast against the gradient behind it */
  display:block;
  text-align:center;
  background:#fff;
  border:0;
  border-radius:10px;
  padding:12px 18px;
  font-family:var(--font-head);
  font-size:14px;
  font-weight:700;
  color:#B23C08;
  box-shadow:0 8px 18px -10px rgba(0,0,0,.55);
  transition:background-color .15s ease;
}
.cmva-mega__promo-cta:hover{
  background:#FFF1E7;
}

/* Smaller panel for the state list */
.cmva-mega--sm{ width:min(520px, calc(100vw - 48px)); left:auto; right:auto; }
.cmva-mega__states{ display:grid; grid-template-columns:1fr 1fr; gap:2px 14px; }
.cmva-mega__states a{
  padding:9px 12px;
  border-radius:9px;
  font-size:14px;
  font-weight:500;
  color:var(--brand-navy);
  transition:background-color .15s ease, color .15s ease;
}
.cmva-mega__states a:hover{ background:var(--brand-orange-tint); color:var(--brand-orange); }

@media (prefers-reduced-motion:reduce){
  .cmva-mega{ transition:none; transform:none; }
}

/* --- Section scaffolding -------------------------------------- */
.cmva-section{ padding:76px 0; }
.cmva-section--grey{ background:var(--bg-grey); }

.cmva-crumb{
  font-size:14px;
  color:var(--text-muted);
}
.cmva-crumb a:hover{ color:var(--brand-orange); }
.cmva-crumb span{ color:var(--brand-navy); }

/* --- Eyebrow badges ------------------------------------------- */
.cmva-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.cmva-badge{
  font-size:12.5px;
  font-weight:600;
  padding:7px 15px;
  border-radius:var(--radius-pill);
  background:var(--bg-grey);
  color:var(--text-body);
  white-space:nowrap;
}
.cmva-badge--orange{ background:var(--brand-orange-tint); color:var(--brand-orange); }
.cmva-badge--green{ background:var(--positive-green-tint); color:var(--positive-green); }

/* --- Hero type ------------------------------------------------- */
.cmva-h1{
  font-size:clamp(30px, 3.4vw, 44px);
  line-height:1.18;
  font-weight:700;
  color:var(--brand-navy);
  letter-spacing:-1px;
  margin:0;
}
.cmva-h1 em{ font-style:normal; color:var(--brand-orange); }

.cmva-lede{
  font-size:15.5px;
  line-height:1.65;
  color:var(--text-body);
  margin:0;
}

.cmva-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.cmva-hero__footnote{
  font-size:13px;
  color:var(--text-muted);
}


/* ============================================================
   HERO — VARIATION A (split: copy left, entry card right)
   ============================================================ */
.cmva-heroA{ padding:30px 0 56px; }
.cmva-heroA__grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:52px;
  align-items:center;
}
.cmva-heroA__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
  text-align:left;
}
.cmva-heroA__copy .cmva-lede{ max-width:56ch; }


/* ============================================================
   00 — DISCLOSURE STRIP
   ============================================================ */
.cmva-disclose{
  background:var(--bg-grey);
  border-bottom:1px solid var(--border);
}
.cmva-disclose p{
  margin:0;
  padding:10px 0;
  font-size:12.5px;
  line-height:1.55;
  color:var(--text-muted);
  text-align:center;
}
.cmva-disclose a{ color:var(--brand-navy); text-decoration:underline; font-weight:500; }
.cmva-disclose a:hover{ color:var(--brand-orange); }


/* ============================================================
   02 — RESULTS BAR grid (shared stat styles)
   ============================================================ */
.cmva-stats__grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
}
.cmva-stat{
  text-align:center;
  padding:4px 26px;
  border-right:1px solid rgba(255,255,255,.26);
}
.cmva-stat:last-child{ border-right:0; }
.cmva-stat__num{
  margin:0 0 4px;
  font-size:clamp(28px, 3vw, 36px);
  font-weight:700;
  line-height:1.1;
  color:#fff;
  letter-spacing:-.6px;
}
.cmva-stat__label{
  margin:0 auto;
  font-size:13.5px;
  line-height:1.45;
  color:rgba(255,255,255,.93);
  max-width:24ch;
}


/* ============================================================
   Shared section heading
   ============================================================ */
.cmva-head{ max-width:720px; margin:0 auto 44px; text-align:center; }
.cmva-h2{
  margin:0 0 14px;
  font-size:clamp(27px, 3.1vw, 36px);
  line-height:1.24;
  font-weight:700;
  letter-spacing:-.7px;
  color:var(--brand-navy);
}
.cmva-sub{ margin:0; font-size:16px; line-height:1.7; color:var(--text-muted); }



/* ============================================================
   02b — PAIN POINTS
   ============================================================ */
.cmva-pains{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.cmva-pain{
  display:flex;
  align-items:flex-start;
  gap:14px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  padding:20px 22px;
  transition:border-color .15s ease, transform .15s ease;
}
.cmva-pain:hover{ border-color:rgba(242,101,34,.45); transform:translateY(-2px); }
.cmva-pain__ic{
  flex:0 0 auto;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--brand-orange-tint);
  color:var(--brand-orange);
}
.cmva-pain p{
  margin:0;
  font-size:15.5px;
  line-height:1.55;
  font-weight:500;
  color:var(--brand-navy);
}

@media (max-width:760px){
  .cmva-pains{ grid-template-columns:1fr; gap:12px; }
}


/* ============================================================
   03 — CONTRAST COLUMNS
   ============================================================ */
.cmva-compare{ display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:start; }
.cmva-col{
  background:#fff;
  border-radius:var(--radius-card);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
}
.cmva-col--neg{ border:1.5px solid #FBC5C9; }
.cmva-col--pos{ border:1.5px solid #F8C9AD; }
.cmva-col__head{
  margin:0;
  padding:15px 22px;
  font-size:14px;
  font-weight:700;
  letter-spacing:.2px;
  color:#fff;
  text-align:center;
}
.cmva-col--neg .cmva-col__head{ background:var(--negative-red); }
.cmva-col--pos .cmva-col__head{ background:var(--brand-orange); }
.cmva-col__list{ list-style:none; margin:0; padding:26px 24px 6px; flex:1; }
.cmva-col--pos .cmva-col__list{ background:#FFFCFA; }
.cmva-col__list li{ display:flex; gap:12px; margin-bottom:22px; }
.cmva-col__list i{ flex:0 0 auto; font-style:normal; font-weight:700; font-size:15px; line-height:1.6; }
.cmva-col--neg .cmva-col__list i{ color:var(--negative-red); }
.cmva-col--pos .cmva-col__list i{ color:var(--positive-green); }
.cmva-col__list p{ margin:0; font-size:15px; line-height:1.62; color:var(--text-body); }
.cmva-col__kicker{
  margin:0;
  padding:16px 24px;
  font-size:13.5px;
  font-weight:600;
  line-height:1.55;
  text-align:center;
}
.cmva-col--neg .cmva-col__kicker{ background:var(--negative-red-tint); color:var(--negative-red); }
.cmva-col--pos .cmva-col__kicker{ background:var(--brand-orange-tint); color:var(--brand-orange); }
.cmva-closer{
  max-width:760px;
  margin:44px auto 0;
  text-align:center;
  font-size:16px;
  font-weight:600;
  line-height:1.6;
  color:var(--brand-navy);
}


/* ============================================================
   04 — HOW IT WORKS (navy)
   ============================================================ */
.cmva-steps{ background:var(--brand-navy); padding:76px 0 84px; }
.cmva-head--dark .cmva-h2{ color:#fff; }
.cmva-head--dark .cmva-sub{ color:#A9B2C6; }
.cmva-strip{
  display:inline-block;
  margin:20px 0 0;
  padding:9px 22px;
  border-radius:var(--radius-pill);
  background:rgba(242,101,34,.16);
  border:1px solid rgba(242,101,34,.4);
  color:var(--brand-orange);
  font-size:13.5px;
  font-weight:600;
}
.cmva-steps__grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:26px;
}
.cmva-step{ background:var(--brand-navy-soft); border-radius:var(--radius-card); padding:28px 26px 30px; }
.cmva-step__num{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:var(--brand-orange);
  color:#fff;
  font-weight:700;
  font-size:16px;
  margin-bottom:20px;
}
.cmva-step__title{
  margin:0 0 12px;
  font-size:19px;
  font-weight:600;
  line-height:1.34;
  color:#fff;
  letter-spacing:-.2px;
}
.cmva-step__body{ margin:0; font-size:14.5px; line-height:1.72; color:#A9B2C6; }


/* ============================================================
   05 — CASE TYPES GRID
   ============================================================ */
.cmva-cases{ display:grid; grid-template-columns:repeat(3, 1fr); gap:22px; }
.cmva-case{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  padding:24px 24px 26px;
}
.cmva-case__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.cmva-case__title{
  margin:0;
  font-size:16.5px;
  font-weight:600;
  line-height:1.38;
  color:var(--brand-navy);
  letter-spacing:-.2px;
}
.cmva-tag{
  flex:0 0 auto;
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.3px;
  color:var(--brand-orange);
  background:var(--brand-orange-tint);
  border-radius:var(--radius-pill);
  padding:5px 11px;
  white-space:nowrap;
  margin-top:2px;
}
.cmva-case__body{ margin:0; font-size:14.5px; line-height:1.68; color:var(--text-body); }



/* ============================================================
   05b — AWARDS
   ============================================================ */
.cmva-awards__eyebrow{
  margin:0 0 10px;
  font-family:var(--font-head);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:1.1px;
  text-transform:uppercase;
  color:var(--brand-orange);
}
.cmva-awards{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:14px;
}
.cmva-awards li{
  display:grid;
  place-items:center;
  padding:14px 10px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  transition:border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.cmva-awards li:hover{
  border-color:rgba(242,101,34,.45);
  transform:translateY(-3px);
  box-shadow:0 14px 28px -18px rgba(27,36,56,.5);
}
.cmva-awards img{
  height:96px;
  width:auto;
  max-width:100%;
  object-fit:contain;
}

@media (max-width:980px){
  .cmva-awards{ grid-template-columns:repeat(4, 1fr); }
}
@media (max-width:640px){
  .cmva-awards{ grid-template-columns:repeat(3, 1fr); gap:10px; }
  .cmva-awards li{ padding:10px 6px; }
  .cmva-awards img{ height:74px; }
}
@media (prefers-reduced-motion:reduce){
  .cmva-awards li{ transition:none; }
  .cmva-awards li:hover{ transform:none; }
}


/* ============================================================
   06 — COMPARISON TABLE
   ============================================================ */
.cmva-table-shell{
  max-width:900px;
  margin:0 auto;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  overflow:hidden;
}
.cmva-table{ width:100%; border-collapse:collapse; }
.cmva-table thead th{
  padding:16px 22px;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:.4px;
  text-align:center;
  background:var(--bg-grey);
  color:var(--brand-navy);
}
.cmva-table__feature{ text-align:left !important; width:46%; }
.cmva-table__ours{ background:var(--brand-orange) !important; color:#fff !important; width:27%; }
.cmva-table__theirs{ width:27%; color:var(--text-muted) !important; }
.cmva-table tbody th{
  padding:17px 22px;
  text-align:left;
  font-size:14.5px;
  font-weight:500;
  line-height:1.5;
  color:var(--brand-navy);
}
.cmva-table tbody td{ text-align:center; font-size:19px; padding:17px 12px; }
.cmva-table tbody tr:nth-child(even){ background:#FBFCFD; }
.cmva-table tbody tr + tr{ border-top:1px solid var(--border); }
.cmva-yes{ color:var(--positive-green); font-style:normal; font-weight:700; }
.cmva-no{ color:var(--negative-red); font-style:normal; font-weight:700; }
.cmva-sr{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}



/* ============================================================
   06d — WHO WE ARE
   ============================================================ */
.cmva-who{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:32px;
  align-items:start;
}
.cmva-who__main{ min-width:0; }
.cmva-who__h{ text-align:left; }
.cmva-who__lede{
  margin:14px 0 26px;
  font-size:15.5px;
  line-height:1.7;
  color:var(--text-body);
  max-width:52ch;
}
.cmva-who__facts{
  margin:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2px;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  overflow:hidden;
  background:var(--border);
}
.cmva-who__facts > div{ background:#fff; padding:15px 18px; }
.cmva-who__facts dt{
  font-family:var(--font-head);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:var(--text-muted);
  margin-bottom:4px;
}
.cmva-who__facts dd{
  margin:0;
  font-size:14.5px;
  line-height:1.5;
  font-weight:500;
  color:var(--brand-navy);
}
.cmva-who__facts a{ color:var(--brand-orange); font-weight:600; }

.cmva-who__model{
  background:var(--brand-navy);
  border-radius:18px;
  padding:26px 26px 22px;
  color:#A9B2C6;
}
.cmva-who__model-h{
  margin:0 0 12px;
  font-size:17px;
  font-weight:700;
  color:#fff;
}
.cmva-who__model p{ margin:0 0 12px; font-size:14px; line-height:1.7; }
.cmva-who__list{
  list-style:none;
  margin:18px 0 0;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.14);
}
.cmva-who__list li{
  display:flex;
  gap:10px;
  margin-bottom:10px;
  font-size:13.5px;
  line-height:1.5;
  color:#C7CEDC;
}
.cmva-who__list i{ flex:0 0 auto; font-style:normal; font-weight:700; color:var(--positive-green); }
.cmva-who__list li:last-child i{ color:var(--negative-red); }

@media (max-width:860px){
  .cmva-who{ grid-template-columns:1fr; gap:24px; }
}
@media (max-width:520px){
  .cmva-who__facts{ grid-template-columns:1fr; }
}


/* ============================================================
   07 — STATE LINK STRIP + FAQ
   ============================================================ */
.cmva-links{ max-width:860px; margin:0 auto 70px; }
.cmva-links__label{
  margin:0 0 14px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.9px;
  text-transform:uppercase;
  color:var(--text-muted);
}
.cmva-links__row{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:12px; }
.cmva-links__row a{
  display:inline-block;
  font-size:13.5px;
  font-weight:500;
  color:var(--brand-orange);
  border:1px solid rgba(242,101,34,.5);
  border-radius:var(--radius-pill);
  padding:9px 20px;
  transition:background-color .16s ease, color .16s ease;
}
.cmva-links__row a:hover{ background:var(--brand-orange); color:#fff; }
.cmva-head--faq{ margin-bottom:32px; }
.cmva-faq{ max-width:860px; margin:0 auto; display:flex; flex-direction:column; gap:12px; }
.cmva-q{ background:#fff; border:1px solid var(--border); border-radius:10px; overflow:hidden; }
.cmva-q[open]{ border-color:rgba(242,101,34,.45); }
.cmva-q summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:19px 22px;
}
.cmva-q summary::-webkit-details-marker{ display:none; }
.cmva-q__text{ font-size:15.5px; font-weight:600; line-height:1.45; color:var(--brand-navy); }
.cmva-q__icon{ position:relative; flex:0 0 auto; width:16px; height:16px; }
.cmva-q__icon::before,
.cmva-q__icon::after{
  content:"";
  position:absolute;
  background:var(--text-muted);
  border-radius:2px;
  transition:transform .18s ease, background-color .18s ease;
}
.cmva-q__icon::before{ top:7px; left:0; width:16px; height:2px; }
.cmva-q__icon::after{ left:7px; top:0; width:2px; height:16px; }
.cmva-q[open] .cmva-q__icon::after{ transform:scaleY(0); }
.cmva-q[open] .cmva-q__icon::before{ background:var(--brand-orange); }
.cmva-q__a{ padding:0 22px 20px; }
.cmva-q__a p{ margin:0; font-size:14.5px; line-height:1.72; color:var(--text-body); max-width:72ch; }


/* ============================================================
   08 — FINAL CTA BAND
   ============================================================ */
.cmva-final{ background:linear-gradient(100deg, #F26522 0%, #D14A15 100%); padding:72px 0; }
.cmva-final__inner{ max-width:720px; margin:0 auto; text-align:center; }
.cmva-final__title{
  margin:0 0 14px;
  font-size:clamp(26px, 3.1vw, 35px);
  font-weight:700;
  line-height:1.25;
  letter-spacing:-.7px;
  color:#fff;
}
.cmva-final__sub{ margin:0 0 30px; font-size:16px; line-height:1.7; color:rgba(255,255,255,.94); }
.cmva-final__actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
.cmva-btn--onorange{ background:#fff; color:var(--brand-orange); border-color:#fff; }
.cmva-btn--onorange:hover{ background:var(--brand-navy); color:#fff; border-color:var(--brand-navy); }
.cmva-btn--onorange-ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.85); }
.cmva-btn--onorange-ghost:hover{ background:#fff; color:var(--brand-orange); border-color:#fff; }
.cmva-final__note{ margin:22px 0 0; font-size:13px; color:rgba(255,255,255,.9); }
.cmva-final .cmva-btn:focus-visible{ outline-color:#fff; }


/* ============================================================
   09 — FOOTER
   ============================================================ */
.cmva-footer{ background:#161B27; padding:62px 0 28px; color:#9AA3B5; }
.cmva-footer__grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:44px; }
.cmva-footer__blurb{ margin:0 0 20px; font-size:14px; line-height:1.7; max-width:34ch; }
.cmva-footer__phone{ margin:0 0 8px; font-size:16px; font-weight:600; color:#fff; }
.cmva-footer__cta{ font-size:14px; font-weight:600; color:var(--brand-orange); }
.cmva-footer__cta:hover{ text-decoration:underline; }
.cmva-footer__col h3{
  margin:0 0 16px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.9px;
  text-transform:uppercase;
  color:#fff;
}
.cmva-footer__col ul{ list-style:none; margin:0; padding:0; }
.cmva-footer__col li{ margin-bottom:10px; }
.cmva-footer__col a{ font-size:14px; line-height:1.5; }
.cmva-footer__col a:hover{ color:var(--brand-orange); }
.cmva-footer__legal{ margin-top:48px; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); }
.cmva-footer__legal p{
  margin:0;
  font-size:12.5px;
  line-height:1.75;
  color:#78819A;
  max-width:none;
  width:100%;
  text-align:center;
}
.cmva-footer__legal a{ color:#9AA3B5; text-decoration:underline; }
.cmva-footer__legal a:hover{ color:var(--brand-orange); }
.cmva-footer__base{
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:10px;
}
.cmva-footer__base p{ margin:0; font-size:12.5px; color:#78819A; }



/* ============================================================
   RATING BAR (compact, under the quiz card)
   ============================================================ */
.cmva-quizwrap{ display:block; min-width:0; position:relative; }
.cmva-rating{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:10px;
  padding:8px 14px;
  border-radius:var(--radius-pill);
  background:var(--brand-navy);
}
.cmva-rating__g{ display:inline-flex; align-items:center; gap:6px; }
.cmva-rating__g b{ color:#fff; font-size:13px; font-weight:700; }
.cmva-rating__stars{ color:#FFB020; font-size:11px; letter-spacing:1.5px; }
.cmva-rating__count{
  font-size:12px;
  color:#8A93A8;
  padding-left:10px;
  border-left:1px solid rgba(255,255,255,.18);
}
a.cmva-rating__g:hover b{ color:var(--brand-orange); }

@media (max-width:420px){
  .cmva-rating{ gap:8px; padding:7px 12px; }
  .cmva-rating__count{ font-size:11.5px; padding-left:8px; }
}


/* ============================================================
   QUIZ CARD — Case Calculator
   ============================================================ */
.cmva-entry{
  position:relative;
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  padding:26px 26px 22px;
  /* layered: a warm orange bloom to pull the eye, a neutral drop
     shadow for depth, and a hairline ring to keep the edge crisp */
  box-shadow:
    0 0 0 1px rgba(242,101,34,.14),
    0 10px 24px -14px rgba(27,36,56,.30),
    0 26px 60px -28px rgba(242,101,34,.55),
    0 40px 90px -50px rgba(27,36,56,.55);
  transition:box-shadow .3s ease, transform .3s ease;
}
.cmva-entry:hover{
  box-shadow:
    0 0 0 1px rgba(242,101,34,.22),
    0 12px 28px -14px rgba(27,36,56,.32),
    0 32px 70px -28px rgba(242,101,34,.65),
    0 48px 100px -50px rgba(27,36,56,.6);
}

/* Inside the modal the card is already on a raised surface, so it
   keeps no shadow at rest or on hover. Declared after the hover
   rule above, which would otherwise win on source order. */
.cmva-modal .cmva-entry,
.cmva-modal .cmva-entry:hover{
  box-shadow:none;
  border:0;
  transform:none;
  transition:none;
}

/* Soft glow bleeding out from behind the card */
.cmva-quizwrap{ position:relative; }
.cmva-quizwrap::before{
  content:"";
  position:absolute;
  inset:-26px -18px 10px;
  border-radius:34px;
  background:radial-gradient(60% 55% at 50% 40%, rgba(242,101,34,.20), rgba(242,101,34,0) 70%);
  filter:blur(6px);
  z-index:-1;
  pointer-events:none;
}
.cmva-entry__flag{
  position:absolute;
  top:-13px;
  right:18px;
  display:inline-flex;
  align-items:center;
  padding:6px 15px;
  border-radius:var(--radius-pill);
  background:var(--positive-green);
  color:#fff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.2px;
  box-shadow:0 6px 16px -8px rgba(22,163,74,.85);
  white-space:nowrap;
}
.cmva-entry__intro{ text-align:center; margin-bottom:16px; }
.cmva-entry__title{
  margin:0 0 6px;
  font-size:21px;
  font-weight:700;
  color:var(--brand-navy);
  letter-spacing:-.4px;
}
.cmva-entry__sub{
  margin:0;
  font-size:14px;
  color:var(--text-muted);
}
.cmva-progress{
  height:7px;
  border-radius:99px;
  background:var(--bg-grey);
  overflow:hidden;
  margin-bottom:14px;
}
.cmva-progress i{
  display:block;
  height:100%;
  background:var(--brand-orange);
  border-radius:99px;
  transition:width .3s ease;
}
.cmva-back{
  display:block;
  margin:0 auto 10px;
  padding:4px 10px;
  background:none;
  border:0;
  font-size:13px;
  font-weight:600;
  color:var(--text-muted);
  cursor:pointer;
  border-radius:6px;
  transition:color .15s ease;
}
.cmva-back:hover{ color:var(--brand-orange); }

.cmva-entry__step{
  margin:0 0 16px;
  text-align:center;
  font-size:11.5px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--text-muted);
}
.cmva-entry__q{
  margin:0 0 16px;
  text-align:center;
  font-size:16.5px;
  font-weight:600;
  line-height:1.45;
  color:var(--brand-navy);
}

/* Choice tiles */
.cmva-choices{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}
.cmva-choice{
  display:flex;
  align-items:center;
  gap:11px;
  width:100%;
  text-align:left;
  padding:15px 15px;
  font-size:14.5px;
  font-weight:600;
  color:var(--brand-navy);
  background:#fff;
  border:1.5px solid var(--border);
  border-radius:11px;
  cursor:pointer;
  transition:border-color .15s ease, background-color .15s ease, transform .1s ease;
}
.cmva-choice:hover{
  border-color:var(--brand-orange);
  background:var(--brand-orange-tint);
}
.cmva-choice:active{ transform:scale(.985); }
.cmva-choice[aria-pressed="true"]{
  border-color:var(--brand-orange);
  background:var(--brand-orange-tint);
  box-shadow:0 0 0 3px rgba(242,101,34,.16);
}
.cmva-choice__ic{
  font-size:19px;
  line-height:1;
  flex:0 0 auto;
}

.cmva-entry__secure{
  margin:18px 0 0;
  text-align:center;
  font-size:11.5px;
  line-height:1.6;
  color:var(--text-muted);
}
.cmva-entry__secure a{
  color:var(--text-body);
  text-decoration:underline;
}
.cmva-entry__secure a:hover{ color:var(--brand-orange); }

/* Choice tiles with a secondary line */
.cmva-choice.has-sub{ align-items:flex-start; padding:13px 14px; }
.cmva-choice__tx{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.cmva-choice__lb{ font-size:14.5px; font-weight:600; color:var(--brand-navy); }
.cmva-choice__sb{ font-size:12px; font-weight:400; color:var(--text-muted); line-height:1.4; }

/* Per-step helper note */
.cmva-tick{ color:var(--positive-green); font-weight:700; font-style:normal; }

.cmva-entry__note{
  margin:16px 0 0;
  text-align:center;
  font-size:12.5px;
  color:var(--text-muted);
}

/* Outcome banner on the contact screen */
.cmva-banner{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:14px 16px;
  border-radius:11px;
  margin-bottom:6px;
  text-align:left;
}
.cmva-banner p{ margin:0; font-size:13.5px; line-height:1.6; }
.cmva-banner strong{ font-weight:700; }
.cmva-banner.is-hot{ background:#FFF8E6; border:1px solid #F5D98B; color:#7A5A12; }
.cmva-banner.is-warm{ background:var(--brand-orange-tint); border:1px solid #F8C9AD; color:#8A3D12; }
.cmva-banner.is-cool{ background:var(--bg-grey); border:1px solid var(--border); color:var(--text-body); }

/* Contact form */
.cmva-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 12px;
}
/* the error line and the submit run the full width */
.cmva-form > p,
.cmva-form > button{ grid-column:1 / -1; }

.cmva-form label{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;   /* keeps inputs aligned if a label wraps */
  gap:7px;
  font-size:13px;
  font-weight:600;
  color:var(--brand-navy);
  text-align:left;            /* lines the label up with its own placeholder */
  min-width:0;
}
.cmva-form input{
  font-family:inherit;
  font-size:15px;
  font-weight:400;
  color:var(--brand-navy);
  padding:13px 14px;
  border:1.5px solid var(--border);
  border-radius:10px;
  background:#fff;
  width:100%;
}
.cmva-form input::placeholder{ color:#B6BCC8; }
.cmva-form input:hover{ border-color:#C9CFD9; }
.cmva-form input:focus{
  outline:none;
  border-color:var(--brand-orange);
  box-shadow:0 0 0 3px rgba(242,101,34,.15);
}
.cmva-form select{
  font-family:inherit;
  font-size:15px;
  font-weight:400;
  color:var(--brand-navy);
  padding:13px 14px;
  border:1.5px solid var(--border);
  border-radius:10px;
  background:#fff;
  width:100%;
  appearance:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%238A919F' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 13px center;
  cursor:pointer;
}
.cmva-form select:hover{ border-color:#C9CFD9; }
.cmva-form select:focus{
  outline:none;
  border-color:var(--brand-orange);
  box-shadow:0 0 0 3px rgba(242,101,34,.15);
}
.cmva-form .cmva-btn{ margin-top:2px; font-size:16px; padding:17px 24px; }
.cmva-err{
  margin:0;
  font-size:13px;
  font-weight:500;
  color:var(--negative-red);
  text-align:center;
}

/* Thank-you panel */
.cmva-done{ text-align:center; padding:14px 6px 6px; }
.cmva-done span{ font-size:34px; line-height:1; }
.cmva-done h4{
  margin:12px 0 8px;
  font-size:19px;
  font-weight:700;
  color:var(--brand-navy);
}
.cmva-done p{
  margin:0 auto;
  max-width:36ch;
  font-size:14.5px;
  line-height:1.65;
  color:var(--text-body);
}

@media (max-width:520px){
  .cmva-entry{ padding:24px 20px 22px; }
  .cmva-form{ grid-template-columns:1fr; }
  .cmva-entry__flag{ right:14px; font-size:11.5px; padding:5px 13px; }
  .cmva-choices{ grid-template-columns:1fr; gap:9px; }
  .cmva-choice{ padding:14px; font-size:14px; }
  .cmva-entry__title{ font-size:21px; }
}



/* ============================================================
   06c — SETTLEMENT RESULTS BAR
   ============================================================ */
.cmva-results{
  background:var(--brand-orange);
  padding:38px 0 32px;
}
.cmva-results__attrib{
  margin:0 0 24px;
  text-align:center;
  font-size:13px;
  font-weight:600;
  letter-spacing:.3px;
  color:rgba(255,255,255,.95);
}
.cmva-results__grid{ margin-bottom:26px; }
.cmva-results__note{
  max-width:88ch;
  margin:0 auto;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.28);
  text-align:center;
  font-size:11.5px;
  line-height:1.7;
  color:rgba(255,255,255,.88);
}


/* ============================================================
   06b — TESTIMONIAL MARQUEE
   ============================================================ */
.cmva-reviews{
  background:var(--brand-navy);
  padding:66px 0 62px;
  overflow:hidden;
}
.cmva-reviews__badge{
  width:max-content;
  max-width:100%;
  margin:0 auto 40px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 24px;
  border-radius:var(--radius-pill);
  background:rgba(242,101,34,.12);
  border:1px solid rgba(242,101,34,.35);
  font-size:14px;
  font-weight:600;
  color:#E8ECF4;
  text-align:center;
}
.cmva-stars{ color:#FFB020; letter-spacing:2px; font-size:14px; }

.cmva-marquee{
  overflow:hidden;
  padding:9px 0;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
}
.cmva-marquee__track{
  display:flex;
  gap:20px;
  width:max-content;
  animation:cmva-scroll 64s linear infinite;
}
.cmva-marquee[data-dir="right"] .cmva-marquee__track{
  animation-direction:reverse;
  animation-duration:72s;
}
.cmva-marquee:hover .cmva-marquee__track,
.cmva-marquee:focus-within .cmva-marquee__track{
  animation-play-state:paused;
}
@keyframes cmva-scroll{
  from{ transform:translate3d(0,0,0); }
  to  { transform:translate3d(-50%,0,0); }
}

.cmva-rev{
  flex:0 0 auto;
  width:392px;
  background:var(--brand-navy-soft);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius-card);
  padding:20px 22px 22px;
}
.cmva-rev header{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:13px;
  flex-wrap:wrap;
}
.cmva-rev__av{
  display:grid; place-items:center;
  width:36px; height:36px;
  border-radius:50%;
  background:rgba(242,101,34,.18);
  border:1px solid rgba(242,101,34,.4);
  color:var(--brand-orange);
  font-size:12.5px;
  font-weight:700;
  letter-spacing:.3px;
}
.cmva-rev__name{
  font-size:14.5px;
  font-weight:600;
  color:#fff;
}
.cmva-rev__loc{
  font-size:12.5px;
  color:#8A93A8;
}
.cmva-rev__score{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:12.5px;
  font-weight:600;
  color:#E8ECF4;
  white-space:nowrap;
}
.cmva-rev__score i{ color:#FFB020; font-style:normal; letter-spacing:1px; font-size:12px; }
.cmva-rev p{
  margin:0;
  font-size:14.5px;
  line-height:1.68;
  color:#B4BCCD;
}

.cmva-reviews__note{
  max-width:760px;
  margin:38px auto 0;
  text-align:center;
  font-size:12.5px;
  line-height:1.7;
  color:#78819A;
}

@media (max-width:640px){
  .cmva-rev{ width:300px; }
  .cmva-reviews{ padding:52px 0 48px; }
  .cmva-reviews__badge{ font-size:13px; padding:11px 18px; }
}

[hidden]{ display:none !important; }


/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:980px){
  .cmva-heroA__grid{ grid-template-columns:1fr; gap:40px; }
  .cmva-nav{ display:none; }
  .cmva-stat{ padding:4px 16px; }
  .cmva-cases{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:860px){
  .cmva-compare{ grid-template-columns:1fr; gap:22px; }
  .cmva-steps__grid{ grid-template-columns:1fr; gap:18px; }
  .cmva-steps{ padding:56px 0 60px; }
  .cmva-footer__grid{ grid-template-columns:1fr 1fr; gap:34px; }
  .cmva-footer__brand{ grid-column:1 / -1; }
}
@media (max-width:760px){
  .cmva-stats__grid{ grid-template-columns:repeat(2, 1fr); row-gap:26px; }
  .cmva-stat:nth-child(2n){ border-right:0; }
  .cmva-stat:nth-child(-n+2){ padding-bottom:26px; border-bottom:1px solid rgba(255,255,255,.26); }
}
@media (max-width:640px){
  .cmva-cases{ grid-template-columns:1fr; gap:16px; }
  .cmva-table-shell{ overflow-x:auto; }
  .cmva-table{ min-width:560px; }
  .cmva-table tbody th{ font-size:13.5px; padding:14px 16px; }
  .cmva-table thead th{ padding:13px 16px; font-size:11.5px; }
  .cmva-footer__grid{ grid-template-columns:1fr; gap:30px; }
  .cmva-final{ padding:54px 0; }
  .cmva-final__actions{ flex-direction:column; align-items:stretch; }
  .cmva-final__actions .cmva-btn{ width:100%; }
  .cmva-section{ padding:56px 0; }
  .cmva-heroA{ padding:20px 0 44px; }
  .cmva-header__phone{ display:none; }
  .cmva-hero__actions{ flex-direction:column; align-items:stretch; width:100%; }
  .cmva-hero__actions .cmva-btn{ width:100%; }
  .cmva-h1{ letter-spacing:-.6px; }
}

@media (prefers-reduced-motion:reduce){
  *{ transition:none !important; scroll-behavior:auto !important; }
}

/* ============================================================
   STATE PAGE additions
   ============================================================ */
.cmva-eyebrow{
  display:inline-block;
  margin:0 0 14px;
  padding:6px 14px;
  border-radius:var(--radius-pill);
  background:var(--brand-orange-tint);
  color:var(--brand-orange);
  font-family:var(--font-head);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
}
.cmva-crumb{ font-size:13px; color:var(--text-muted); margin:0 0 12px; }
.cmva-crumb a:hover{ color:var(--brand-orange); }

/* sticky section tabs */
.cmva-tabs{
  position:sticky;
  top:66px;
  z-index:50;
  background:#fff;
  border-bottom:1px solid var(--border);
  overflow-x:auto;
}
.cmva-tabs ul{
  list-style:none; margin:0 auto; padding:0;
  max-width:var(--wrap);
  display:flex; gap:4px;
  padding:0 24px;
}
.cmva-tabs a{
  display:block;
  padding:15px 16px;
  font-family:var(--font-head);
  font-size:13.5px;
  font-weight:600;
  color:var(--text-body);
  white-space:nowrap;
  border-bottom:2px solid transparent;
}
.cmva-tabs a:hover{ color:var(--brand-orange); border-bottom-color:var(--brand-orange); }

.cmva-prose{ max-width:760px; margin:0 auto; }
.cmva-prose p{ font-size:16px; line-height:1.78; color:var(--text-body); margin:0 0 18px; }
.cmva-prose p:last-child{ margin-bottom:0; }
.cmva-prose b{ color:var(--brand-navy); font-weight:700; }

/* numbered mistake cards */
.cmva-mistakes{ max-width:840px; margin:0 auto; display:flex; flex-direction:column; gap:14px; }
.cmva-mistake{
  display:flex; gap:16px;
  background:var(--negative-red-tint);
  border:1px solid #FBC5C9;
  border-radius:var(--radius-card);
  padding:20px 22px;
}
.cmva-mistake__n{
  flex:0 0 auto; width:30px; height:30px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--negative-red); color:#fff;
  font-family:var(--font-head); font-weight:700; font-size:14px;
}
.cmva-mistake h3{ margin:0 0 6px; font-size:16px; font-weight:700; color:var(--brand-navy); }
.cmva-mistake p{ margin:0; font-size:14.5px; line-height:1.68; color:var(--text-body); }

/* city pills */
.cmva-cities{ display:flex; flex-wrap:wrap; gap:9px; justify-content:center; max-width:760px; margin:0 auto; }
.cmva-cities span{
  padding:8px 16px;
  border:1px solid var(--border);
  border-radius:var(--radius-pill);
  background:#fff;
  font-size:13.5px;
  color:var(--brand-navy);
}

@media (max-width:860px){
  .cmva-tabs{ top:0; }
  .cmva-tabs ul{ padding:0 16px; }
}




/* ============================================================
   RELATED LINKS (internal linking)
   ============================================================ */
.cmva-related{ background:var(--bg-grey); border-top:1px solid var(--border); }
.cmva-related__grid{ display:grid; grid-template-columns:1fr 1fr; gap:36px; }
.cmva-related__h{
  margin:0 0 14px;
  font-family:var(--font-head);
  font-size:15px;
  font-weight:700;
  color:var(--brand-navy);
}
.cmva-related__list{ list-style:none; margin:0; padding:0; columns:2; column-gap:22px; }
.cmva-related__list li{ margin-bottom:9px; break-inside:avoid; }
.cmva-related__list a{ font-size:13.5px; line-height:1.5; color:var(--text-body); }
.cmva-related__list a:hover{ color:var(--brand-orange); text-decoration:underline; }
@media (max-width:860px){
  .cmva-related__grid{ grid-template-columns:1fr; gap:26px; }
  .cmva-related__list{ columns:1; }
}


/* ============================================================
   INDEX PAGES
   ============================================================ */
.cmva-ixhero{ padding:52px 0 44px; text-align:center; }
.cmva-ixhero__in{ max-width:740px; margin:0 auto; }
.cmva-ixhero h1{
  margin:0 0 14px; font-family:var(--font-head);
  font-size:clamp(30px,4vw,44px); font-weight:700; line-height:1.2;
  letter-spacing:-.8px; color:var(--brand-navy);
}
.cmva-ixhero p{ margin:0; font-size:16.5px; line-height:1.75; color:var(--text-body); }
.cmva-ixhero .cmva-crumb{ justify-content:center; }

.cmva-ixband{ background:#FDF3EC; padding:52px 0 56px; }
.cmva-ixband--grey{ background:var(--bg-grey); }

.cmva-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.cmva-card[hidden]{ display:none; }

/* A-Z jump bar */
.cmva-az{ display:flex; flex-wrap:wrap; justify-content:center; gap:5px; margin:0 0 26px; }
.cmva-az button{
  min-width:32px; padding:6px 8px; border:1px solid var(--border); background:#fff;
  border-radius:8px; font-family:var(--font-head); font-size:12.5px; font-weight:700;
  color:var(--brand-navy); cursor:pointer; transition:background-color .14s ease, border-color .14s ease;
}
.cmva-az button:hover:not(:disabled){ border-color:var(--brand-orange); background:var(--brand-orange-tint); color:var(--brand-orange); }
.cmva-az button[aria-pressed="true"]{ background:var(--brand-orange); border-color:var(--brand-orange); color:#fff; }
.cmva-az button:disabled{ opacity:.32; cursor:default; }

.cmva-more{ text-align:center; margin-top:30px; }
.cmva-more p{ margin:0 0 14px; font-size:13.5px; color:var(--text-muted); }
.cmva-card{
  display:flex; flex-direction:column;
  background:#fff; border:1px solid var(--border);
  border-radius:var(--radius-card); padding:24px 24px 22px;
  transition:border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.cmva-card:hover{
  border-color:rgba(242,101,34,.45); transform:translateY(-3px);
  box-shadow:0 16px 32px -20px rgba(27,36,56,.45);
}
.cmva-card__ic{
  width:46px; height:46px; border-radius:13px;
  display:grid; place-items:center; margin-bottom:16px;
  background:var(--brand-orange-tint); color:var(--brand-orange);
  border:1px solid rgba(242,101,34,.25);
}
.cmva-card__ic svg{ width:24px; height:24px; }
.cmva-card h2{
  margin:0 0 8px; font-family:var(--font-head); font-size:17px;
  font-weight:700; line-height:1.35; color:var(--brand-navy);
}
.cmva-card p{ margin:0 0 14px; font-size:14px; line-height:1.68; color:var(--text-body); }
.cmva-card__go{
  margin-top:auto; font-family:var(--font-head); font-size:13.5px;
  font-weight:700; color:var(--brand-orange);
}
.cmva-card:hover .cmva-card__go{ text-decoration:underline; }

/* state cards carry facts instead of an icon glyph */
.cmva-card__abbr{
  width:46px; height:46px; border-radius:13px;
  display:grid; place-items:center; margin-bottom:16px;
  background:var(--brand-navy); color:#fff;
  font-family:var(--font-head); font-size:15px; font-weight:700; letter-spacing:.5px;
}
.cmva-facts2{ list-style:none; margin:0 0 14px; padding:0; }
.cmva-facts2 li{
  display:flex; justify-content:space-between; gap:12px;
  padding:7px 0; border-top:1px solid var(--border);
  font-size:12.5px; line-height:1.4;
}
.cmva-facts2 li:first-child{ border-top:0; }
.cmva-facts2 span{ color:var(--text-muted); }
.cmva-facts2 b{ color:var(--brand-navy); font-weight:600; text-align:right; }

@media (max-width:900px){ .cmva-cards{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .cmva-cards{ grid-template-columns:1fr; } }


/* ============================================================
   CASE PAGE additions
   ============================================================ */
/* hero fact grid, sits where the quiz normally does */
.cmva-factgrid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.cmva-fact{
  background:var(--brand-orange-tint);
  border:1px solid rgba(242,101,34,.28);
  border-radius:var(--radius-card);
  padding:22px 20px;
  text-align:center;
}
.cmva-fact b{
  display:block;
  font-family:var(--font-head);
  font-size:26px;
  font-weight:700;
  color:var(--brand-orange);
  line-height:1.15;
  letter-spacing:-.4px;
}
.cmva-fact span{
  display:block;
  margin-top:5px;
  font-size:12.5px;
  line-height:1.45;
  color:var(--text-body);
}

/* thin dark credibility strip */
.cmva-strip-dark{ background:#161B27; padding:14px 0; }
.cmva-strip-dark p{
  margin:0;
  text-align:center;
  font-size:13px;
  line-height:1.6;
  color:#9AA3B5;
}
.cmva-strip-dark b{ color:#fff; font-weight:600; }

/* does / does-not / included */
.cmva-triad{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.cmva-triad__col{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  padding:24px 22px 22px;
  border-top:3px solid var(--border);
}
.cmva-triad__col--yes{ border-top-color:var(--positive-green); }
.cmva-triad__col--no{ border-top-color:var(--negative-red); }
.cmva-triad__col--inc{ border-top-color:var(--brand-orange); }
.cmva-triad__ic{
  width:34px; height:34px;
  border-radius:50%;
  display:grid; place-items:center;
  color:#fff; font-size:15px; font-weight:700;
  margin-bottom:14px;
}
.cmva-triad__col--yes .cmva-triad__ic{ background:var(--positive-green); }
.cmva-triad__col--no .cmva-triad__ic{ background:var(--negative-red); }
.cmva-triad__col--inc .cmva-triad__ic{ background:var(--brand-navy); }
.cmva-triad h3{
  margin:0 0 14px;
  font-size:17px;
  font-weight:700;
  color:var(--brand-navy);
}
.cmva-triad ul{ list-style:none; margin:0; padding:0; }
.cmva-triad li{
  display:flex; gap:9px;
  margin-bottom:11px;
  font-size:14px;
  line-height:1.55;
  color:var(--text-body);
}
.cmva-triad li i{ flex:0 0 auto; font-style:normal; font-weight:700; }
.cmva-triad__col--yes li i{ color:var(--positive-green); }
.cmva-triad__col--no li i{ color:var(--negative-red); }
.cmva-triad__col--inc li i{ color:var(--brand-orange); }

/* dark band that holds the quiz */
.cmva-demo{ background:var(--brand-navy); padding:64px 0 70px; }
.cmva-demo__inner{ max-width:520px; margin:0 auto; }

/* pull quote */
.cmva-pull{ background:var(--brand-orange-tint); padding:52px 0; }
.cmva-pull blockquote{
  max-width:760px;
  margin:0 auto;
  padding-left:22px;
  border-left:4px solid var(--brand-orange);
}
.cmva-pull p{
  margin:0 0 12px;
  font-size:18px;
  line-height:1.7;
  font-style:italic;
  color:var(--brand-navy);
}
.cmva-pull cite{
  font-size:13.5px;
  font-style:normal;
  font-weight:600;
  color:var(--text-muted);
}

/* tagged situation cards */
.cmva-sits{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.cmva-sit{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  padding:22px;
}
.cmva-sit__tag{
  display:inline-block;
  margin-bottom:12px;
  padding:5px 11px;
  border-radius:var(--radius-pill);
  background:var(--brand-orange-tint);
  color:var(--brand-orange);
  font-family:var(--font-head);
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
}
.cmva-sit h3{ margin:0 0 9px; font-size:16.5px; font-weight:700; color:var(--brand-navy); }
.cmva-sit p{ margin:0; font-size:14.5px; line-height:1.68; color:var(--text-body); }

@media (max-width:860px){
  .cmva-triad, .cmva-sits{ grid-template-columns:1fr; }
}
@media (max-width:520px){
  .cmva-factgrid{ grid-template-columns:1fr; }
}



/* ============================================================
   LEGAL PAGE
   ============================================================ */
.cmva-legal{ display:grid; grid-template-columns:250px 1fr; gap:48px; align-items:start; }
.cmva-legal__nav{ position:sticky; top:88px; }
.cmva-legal__nav h2{
  margin:0 0 12px; font-family:var(--font-head); font-size:11.5px; font-weight:700;
  letter-spacing:1px; text-transform:uppercase; color:var(--text-muted);
}
.cmva-legal__nav ul{ list-style:none; margin:0 0 26px; padding:0; }
.cmva-legal__nav li{ margin-bottom:3px; }
.cmva-legal__nav a{
  display:block; padding:7px 11px; border-radius:8px;
  font-size:13px; line-height:1.45; color:var(--text-body);
  border-left:2px solid transparent;
}
.cmva-legal__nav a:hover{ background:var(--brand-orange-tint); color:var(--brand-orange); }
.cmva-legal__nav a.is-here{ border-left-color:var(--brand-orange); color:var(--brand-orange); font-weight:600; }

.cmva-legal__body h2{
  margin:34px 0 12px; font-family:var(--font-head); font-size:19px;
  font-weight:700; color:var(--brand-navy); scroll-margin-top:96px;
}
.cmva-legal__body h2:first-of-type{ margin-top:0; }
.cmva-legal__body p{ margin:0 0 14px; font-size:15px; line-height:1.78; color:var(--text-body); }
.cmva-legal__body ul{ margin:0 0 16px; padding-left:20px; }
.cmva-legal__body li{ margin-bottom:8px; font-size:15px; line-height:1.72; color:var(--text-body); }
.cmva-legal__body a{ color:var(--brand-orange); text-decoration:underline; }

.cmva-legal__meta{
  margin:0 0 30px; padding-bottom:20px; border-bottom:1px solid var(--border);
  font-size:13.5px; color:var(--text-muted);
}
.cmva-legal__key{
  margin:0 0 30px; padding:18px 20px; border-radius:var(--radius-card);
  background:var(--brand-orange-tint); border:1px solid rgba(242,101,34,.25);
}
.cmva-legal__key p{ margin:0; font-size:14px; line-height:1.68; color:#8A3D12; }
.cmva-legal__key b{ color:#6E2F0C; }

@media (max-width:900px){
  .cmva-legal{ grid-template-columns:1fr; gap:28px; }
  .cmva-legal__nav{ position:static; }
}


/* ============================================================
   ABOUT PAGE
   ============================================================ */
.cmva-abhero{ background:var(--bg-grey); padding:56px 0 50px; border-bottom:3px solid var(--brand-orange); }
.cmva-abhero__in{ max-width:720px; margin:0 auto; text-align:center; }
.cmva-abhero h1{
  margin:0 0 14px; font-family:var(--font-head);
  font-size:clamp(28px,3.6vw,40px); font-weight:700; line-height:1.24;
  letter-spacing:-.6px; color:var(--brand-navy);
}
.cmva-abhero p{ margin:0; font-size:16px; line-height:1.75; color:var(--text-body); }

/* alternating blocks */
.cmva-alt{ padding:54px 0; }
.cmva-alt--grey{ background:var(--bg-grey); }
.cmva-alt__grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.cmva-alt--flip .cmva-alt__grid > *:first-child{ order:2; }
.cmva-alt__h{
  margin:0 0 6px; font-family:var(--font-head); font-size:22px; font-weight:700;
  line-height:1.3; color:var(--brand-navy);
}
.cmva-alt__rule{ width:56px; height:3px; background:var(--brand-orange); margin:0 0 16px; border:0; }
.cmva-alt p{ margin:0 0 14px; font-size:15px; line-height:1.78; color:var(--text-body); }
.cmva-alt p:last-child{ margin-bottom:0; }

/* PLACEHOLDER art panel - replace with real photography */
.cmva-art{
  aspect-ratio:4/3; border-radius:var(--radius-card);
  display:grid; place-items:center;
  background:linear-gradient(135deg, #FFF4ED 0%, #FFE4D2 55%, #FFD2B6 100%);
  border:1px solid rgba(242,101,34,.25);
  color:var(--brand-orange);
}
.cmva-art--navy{
  background:linear-gradient(135deg, #2A3450 0%, #1B2438 100%);
  border-color:rgba(255,255,255,.1); color:#F2751F;
}
.cmva-art svg{ width:78px; height:78px; opacity:.85; }

/* story + differences */
.cmva-story{ max-width:780px; margin:0 auto; }
.cmva-story__h{
  display:inline-block; margin:0 0 18px; padding-bottom:7px;
  border-bottom:3px solid var(--brand-orange);
  font-family:var(--font-head); font-size:22px; font-weight:700; color:var(--brand-navy);
}
.cmva-story p{ margin:0 0 15px; font-size:15px; line-height:1.8; color:var(--text-body); }
.cmva-story b{ color:var(--brand-navy); }

.cmva-diffs{ max-width:780px; margin:22px auto 0; display:flex; flex-direction:column; gap:12px; }
.cmva-diff{
  background:#fff; border:1px solid var(--border);
  border-left:3px solid var(--brand-orange);
  border-radius:10px; padding:18px 20px;
}
.cmva-diff h3{ margin:0 0 6px; font-family:var(--font-head); font-size:16px; font-weight:700; color:var(--brand-navy); }
.cmva-diff p{ margin:0; font-size:14.5px; line-height:1.7; color:var(--text-body); }

/* who we serve pills */
.cmva-serve{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; max-width:780px; margin:22px auto 0; }
.cmva-serve a{
  display:block; padding:12px 16px; border:1px solid var(--border);
  border-left:3px solid var(--brand-orange); border-radius:8px; background:#fff;
  font-size:14px; color:var(--brand-navy);
}
.cmva-serve a:hover{ background:var(--brand-orange-tint); }

@media (max-width:860px){
  .cmva-alt__grid{ grid-template-columns:1fr; gap:26px; }
  .cmva-alt--flip .cmva-alt__grid > *:first-child{ order:0; }
  .cmva-serve{ grid-template-columns:1fr 1fr; }
}
@media (max-width:560px){ .cmva-serve{ grid-template-columns:1fr; } }


/* ============================================================
   CONTACT PAGE
   ============================================================ */
.cmva-cthero{ padding:52px 0 44px; border-bottom:1px solid var(--border); }
.cmva-cthero__in{ max-width:720px; margin:0 auto; text-align:center; }
.cmva-cthero h1{
  margin:0 0 14px; font-family:var(--font-head);
  font-size:clamp(28px,3.6vw,40px); font-weight:700; line-height:1.24;
  letter-spacing:-.6px; color:var(--brand-navy);
}
.cmva-cthero p{ margin:0; font-size:16px; line-height:1.75; color:var(--text-body); }

.cmva-ct{ display:grid; grid-template-columns:1fr 1.12fr; gap:56px; align-items:start; }
.cmva-ct__h{
  margin:0 0 22px; font-family:var(--font-head); font-size:21px;
  font-weight:700; color:var(--brand-navy);
}

.cmva-steps2{ list-style:none; margin:0 0 28px; padding:0; }
.cmva-steps2 li{ display:flex; gap:14px; margin-bottom:22px; }
.cmva-steps2 i{
  flex:0 0 auto; width:28px; height:28px; border-radius:50%;
  background:var(--brand-orange); color:#fff; font-style:normal;
  font-family:var(--font-head); font-size:13px; font-weight:700;
  display:grid; place-items:center; margin-top:2px;
}
.cmva-steps2 b{ display:block; font-family:var(--font-head); font-size:15.5px;
  font-weight:700; color:var(--brand-navy); margin-bottom:3px; }
.cmva-steps2 p{ margin:0; font-size:14px; line-height:1.65; color:var(--text-body); }

.cmva-callbox{
  background:var(--bg-grey); border:1px solid var(--border);
  border-radius:var(--radius-card); padding:22px 24px; margin-bottom:16px;
}
.cmva-callbox h3{ margin:0 0 10px; font-family:var(--font-head); font-size:15.5px;
  font-weight:700; color:var(--brand-navy); }
.cmva-callbox a{
  display:block; font-family:var(--font-head); font-size:25px; font-weight:700;
  color:var(--brand-orange); letter-spacing:-.4px; margin-bottom:6px;
}
.cmva-callbox a:hover{ text-decoration:underline; }
.cmva-callbox p{ margin:0; font-size:13px; color:var(--text-muted); }

.cmva-nudge{
  background:var(--brand-orange-tint); border:1px solid rgba(242,101,34,.28);
  border-radius:var(--radius-card); padding:20px 22px;
}
.cmva-nudge h3{ margin:0 0 8px; font-family:var(--font-head); font-size:15.5px;
  font-weight:700; color:#8A3D12; }
.cmva-nudge p{ margin:0 0 14px; font-size:13.5px; line-height:1.65; color:#8A3D12; }

/* form card */
.cmva-ctform{
  background:#fff; border:1px solid var(--border); border-radius:18px;
  padding:28px 28px 24px;
  box-shadow:0 18px 44px -30px rgba(27,36,56,.45);
}
.cmva-ctform h2{ margin:0 0 5px; font-family:var(--font-head); font-size:20px;
  font-weight:700; color:var(--brand-navy); }
.cmva-ctform__sub{ margin:0 0 22px; font-size:13.5px; color:var(--text-muted); }
.cmva-ctform__grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px 14px; }
.cmva-ctform label{
  display:flex; flex-direction:column; justify-content:flex-end; gap:6px;
  font-family:var(--font-head); font-size:12.5px; font-weight:700;
  color:var(--brand-navy); min-width:0;
}
.cmva-ctform label.full{ grid-column:1 / -1; }
.cmva-ctform label em{ color:var(--brand-orange); font-style:normal; }
.cmva-ctform input,
.cmva-ctform select,
.cmva-ctform textarea{
  font-family:var(--font-base); font-size:15px; font-weight:400;
  color:var(--brand-navy); padding:12px 14px;
  border:1.5px solid var(--border); border-radius:10px;
  background:#fff; width:100%;
}
.cmva-ctform textarea{ min-height:104px; resize:vertical; line-height:1.6; }
.cmva-ctform select{
  appearance:none; cursor:pointer;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%238A919F' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 13px center;
}
.cmva-ctform input::placeholder, .cmva-ctform textarea::placeholder{ color:#B6BCC8; }
.cmva-ctform input:focus, .cmva-ctform select:focus, .cmva-ctform textarea:focus{
  outline:none; border-color:var(--brand-orange);
  box-shadow:0 0 0 3px rgba(242,101,34,.15);
}
.cmva-ctform .cmva-btn{ width:100%; margin-top:20px; font-size:15.5px; padding:16px 24px; }
.cmva-ctform__err{ margin:12px 0 0; font-size:13px; font-weight:500;
  color:var(--negative-red); text-align:center; }
.cmva-ctform__trust{
  display:flex; align-items:center; justify-content:center; gap:8px;
  margin-top:16px; font-size:12.5px; color:var(--text-muted);
}
.cmva-ctform__trust b{ color:var(--brand-navy); }
.cmva-ctform__trust .st{ color:#FFB020; letter-spacing:1px; font-size:11px; }
.cmva-ctform__note{ margin:10px 0 0; text-align:center; font-size:11.5px; color:var(--text-muted); }

.cmva-ctdone{ text-align:center; padding:18px 6px 8px; }
.cmva-ctdone span{ font-size:36px; }
.cmva-ctdone h3{ margin:12px 0 8px; font-family:var(--font-head); font-size:20px;
  font-weight:700; color:var(--brand-navy); }
.cmva-ctdone p{ margin:0 auto; max-width:38ch; font-size:14.5px; line-height:1.65;
  color:var(--text-body); }

@media (max-width:900px){
  .cmva-ct{ grid-template-columns:1fr; gap:34px; }
}
@media (max-width:520px){
  .cmva-ctform{ padding:22px 20px 20px; }
  .cmva-ctform__grid{ grid-template-columns:1fr; }
}

