/* ============================================================
   MyMovingQuotes.com — Main Stylesheet
   ============================================================ */

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

:root {
  --blue:   #C79233;
  --navy:   #1B2A4A;
  --navy2:  #0F1E36;
  --sky:    #7BB8F0;
  --white:  #FFFFFF;
  --off:    #F4F8FD;
  --gray:   #8898AA;
  --border: #D9E8F7;
  --green:  #C79233;
  --yellow: #F59E0B;
  --red:    #EF4444;
}

html { scroll-behavior: smooth; background: #ffffff; }
body { font-family: 'Inter', sans-serif; background: var(--white); color: var(--navy); overflow-x: hidden; line-height: 1.6; }

/* ── UTILITIES ── */
.container { max-width: 1060px; margin: 0 auto; padding: 0 24px; }
.section { padding: 88px 0; }
.section.bg-off { background: var(--off); }
.section.bg-dark { background: linear-gradient(135deg, var(--navy2), var(--navy)); }
.text-center { text-align: center; }

.eyebrow { font-size: 0.68rem; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--blue); margin-bottom: 10px; display: block; }
.eyebrow.light { color: var(--sky); }
.sec-title { font-family: 'Sora', sans-serif; font-size: clamp(1.7rem, 3vw, 2.5rem); font-weight: 800; letter-spacing: -0.02em; line-height: 1.12; margin-bottom: 12px; }
.sec-sub { font-size: 0.95rem; color: var(--gray); line-height: 1.68; max-width: 520px; }

/* ── NAV ── */
.site-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 200;
  background: rgba(255,255,255,0.97);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 2px 20px rgba(27,42,74,0.07);
}
.nav-inner {
  max-width: 1060px; margin: 0 auto; padding: 0 24px;
  height: 66px; display: flex; align-items: center; justify-content: space-between;
}
.nav-logo img { height: 40px; width: auto; display: block; }
.nav-logo { text-decoration: none; }
.nav-right { display: flex; align-items: center; gap: 28px; }
.nav-phone-block { display: flex; flex-direction: column; align-items: flex-end; }
.nav-phone-label { font-size: 0.62rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gray); }
.nav-phone-num { font-family: 'Sora', sans-serif; font-size: 1.05rem; font-weight: 800; color: var(--navy); text-decoration: none; }
.nav-phone-num:hover { color: var(--blue); }
.nav-btn {
  background: linear-gradient(135deg, var(--blue), #2266b8);
  color: white; border: none; padding: 11px 24px;
  border-radius: 9px; font-weight: 800; font-size: 0.88rem;
  font-family: 'Sora', sans-serif; cursor: pointer;
  text-decoration: none; display: inline-flex; align-items: center; gap: 6px;
  transition: all 0.2s; box-shadow: 0 4px 14px rgba(228,180,76,0.35);
}
.nav-btn:hover { background: var(--navy); transform: translateY(-1px); }
.nav-hamburger { display: none; background: none; border: none; font-size: 1.4rem; cursor: pointer; color: var(--navy); }
.nav-mobile-menu {
  display: none; flex-direction: column; gap: 0;
  background: white; border-top: 1px solid var(--border);
  padding: 8px 0;
}
.nav-mobile-menu.open { display: flex; }
.nav-mobile-menu a { padding: 14px 24px; font-size: 0.95rem; font-weight: 600; color: var(--navy); text-decoration: none; border-bottom: 1px solid var(--border); }
.nav-mobile-menu a:hover { background: var(--off); }
.nav-mobile-call { background: var(--green) !important; color: white !important; font-weight: 800 !important; }

/* ── HERO GRID ── */
.hero-inner-grid {
  display: grid;
  grid-template-columns: 1fr 460px;
  gap: 52px;
  align-items: center;
}

/* ── HERO (route/city pages) ── */
.route-hero {
  min-height: 0;
  background: linear-gradient(150deg, var(--navy2) 0%, #162240 50%, #1a3460 100%);
  padding: 40px 0 52px;
  position: relative; overflow: hidden;
}
.route-hero-bg {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(228,180,76,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(228,180,76,0.04) 1px, transparent 1px);
  background-size: 60px 60px;
}
.route-hero-inner {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: 1fr 460px;
  gap: 52px; align-items: center;
}
.route-hero-left { text-align: left; }
.route-hero-sub { font-size: 1rem; color: rgba(255,255,255,0.58); line-height: 1.7; margin-bottom: 28px; max-width: 440px; }
.route-hero-left h1 { font-family: 'Sora', sans-serif; font-size: clamp(1.8rem, 3.2vw, 2.8rem); font-weight: 800; color: white; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: 16px; }

/* Route stats row */
.route-stats-row { display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 28px; }
.rstat { }
.rstat-num { font-family: 'Sora', sans-serif; font-size: 1.6rem; font-weight: 800; color: var(--blue); line-height: 1; }
.rstat-lbl { font-size: 0.65rem; font-weight: 700; color: rgba(255,255,255,0.4); text-transform: uppercase; letter-spacing: 0.08em; margin-top: 2px; }

/* Live pill */
.live-pill {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(228,180,76,0.12); border: 1px solid rgba(228,180,76,0.28);
  color: #C79233; font-size: 0.7rem; font-weight: 800;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 5px 14px; border-radius: 100px; margin-bottom: 16px;
}
.live-dot { width: 7px; height: 7px; background: var(--green); border-radius: 50%; animation: ldot 1.5s ease-in-out infinite; }
@keyframes ldot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.25;transform:scale(0.55)} }

/* Phone block */
.phone-block {
  display: flex; align-items: center; gap: 14px;
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px; padding: 16px 20px;
  margin-bottom: 22px; text-decoration: none;
  transition: background 0.2s; max-width: 400px;
}
.phone-block:hover { background: rgba(255,255,255,0.09); }
.phone-ring {
  width: 48px; height: 48px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--green), #C79233);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: 1.25rem;
  animation: ring 2s ease-in-out infinite;
}
@keyframes ring { 0%,100%{box-shadow:0 0 0 0 rgba(228,180,76,0.5)} 50%{box-shadow:0 0 0 10px rgba(228,180,76,0)} }
.phone-text { color: white; }
.phone-eyebrow { font-size: 0.65rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.42); }
.phone-num { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; letter-spacing: -0.01em; }
.phone-note { font-size: 0.68rem; color: rgba(255,255,255,0.38); margin-top: 1px; }

/* Hero trust */
.hero-trust { display: flex; flex-wrap: wrap; gap: 12px; }
.ht { display: flex; align-items: center; gap: 5px; font-size: 0.7rem; color: rgba(255,255,255,0.4); font-weight: 500; }

/* ── FORM CARD ── */
.form-card { background: white; border-radius: 22px; overflow: hidden; box-shadow: 0 32px 80px rgba(0,0,0,0.45); }
.form-header {
  background: linear-gradient(135deg, #c0392b, #e74c3c, #f39c12);
  padding: 11px 20px; text-align: center;
  font-size: 0.68rem; font-weight: 800; letter-spacing: 0.08em;
  text-transform: uppercase; color: white;
}
.form-body { padding: 28px 30px 30px; }
.step-dots { display: flex; justify-content: center; gap: 10px; margin-bottom: 22px; }
.sdot { width: 9px; height: 9px; border-radius: 50%; background: var(--border); transition: all 0.3s; }
.sdot.active { background: var(--blue); transform: scale(1.4); box-shadow: 0 0 0 3px rgba(228,180,76,0.2); }
.sdot.done { background: var(--green); }
.form-step { display: none; animation: stepIn 0.3s ease; }
.form-step.active { display: block; }
@keyframes stepIn { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:none} }
.fh { font-family: 'Sora', sans-serif; font-size: 1.12rem; font-weight: 800; color: var(--navy); margin-bottom: 4px; }
.fs { font-size: 0.76rem; color: var(--gray); margin-bottom: 18px; }
.urgency-strip {
  display: flex; align-items: center; gap: 7px;
  background: #fff7ed; border: 1px solid #fed7aa;
  border-radius: 8px; padding: 8px 12px; margin-bottom: 16px;
  font-size: 0.72rem; font-weight: 700; color: #c2410c;
}
.timer-wrap {
  display: flex; align-items: center; gap: 8px;
  background: #FFF7ED; border: 1px solid #FED7AA;
  border-radius: 8px; padding: 8px 12px; margin-bottom: 14px;
  font-size: 0.72rem; font-weight: 700; color: #C2410C;
}
.timer-clock { font-family: 'Sora', sans-serif; font-size: 1rem; font-weight: 800; color: #DC2626; letter-spacing: 0.05em; }
.zip-row { display: flex; gap: 0; margin-bottom: 12px; }
.zip-in {
  flex: 1; border: 2.5px solid var(--border); border-right: none;
  border-radius: 11px 0 0 11px; padding: 15px 16px;
  font-size: 1.15rem; font-weight: 800; font-family: 'Sora', sans-serif;
  color: var(--navy); outline: none; letter-spacing: 0.06em; transition: border-color 0.2s;
}
.zip-in:focus { border-color: var(--blue); }
.zip-btn {
  background: linear-gradient(135deg, var(--blue), #2266b8);
  color: white; border: none; padding: 15px 20px;
  border-radius: 0 11px 11px 0; font-size: 1.3rem; cursor: pointer;
}
.fld { display: flex; flex-direction: column; gap: 4px; margin-bottom: 11px; }
.fld label { font-size: 0.67rem; font-weight: 800; color: var(--navy); letter-spacing: 0.09em; text-transform: uppercase; }
.fld input, .fld select {
  border: 1.5px solid var(--border); border-radius: 10px;
  padding: 11px 13px; font-size: 0.9rem; font-family: 'Inter', sans-serif;
  color: var(--navy); background: white; outline: none;
  transition: border-color 0.2s, box-shadow 0.2s; -webkit-appearance: none;
}
.fld input:focus, .fld select:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(228,180,76,0.1); }
.fld select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%231B2A4A' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 11px center; padding-right: 32px;
}
.row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.btn-main {
  width: 100%; background: linear-gradient(180deg,#EFC66A,#E4B44C 58%,#D2A23C);
  color: #231705; border: none; border-radius: 11px;
  padding: 15px 20px; font-size: 1rem; font-weight: 800;
  font-family: 'Sora', sans-serif; cursor: pointer; margin-top: 6px;
  transition: transform 0.15s, box-shadow 0.15s;
  box-shadow: 0 6px 20px rgba(228,180,76,0.35);
}
.btn-main:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(228,180,76,0.5); }
.btn-back { background: none; border: 1.5px solid var(--border); color: var(--gray); border-radius: 9px; padding: 11px 16px; font-size: 0.84rem; font-weight: 600; cursor: pointer; transition: all 0.2s; }
.btn-back:hover { border-color: var(--navy); color: var(--navy); }
.btn-row { display: flex; gap: 9px; }
.btn-row .btn-main { flex: 1; }
.priv { text-align: center; font-size: 0.64rem; color: var(--gray); margin-top: 9px; line-height: 1.5; }
.success-wrap { display: none; text-align: center; padding: 8px 0; }
.suc-icon { width: 70px; height: 70px; margin: 0 auto 16px; background: linear-gradient(135deg, var(--green), #C79233); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.9rem; box-shadow: 0 8px 28px rgba(228,180,76,0.35); }
.suc-title { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; color: var(--navy); margin-bottom: 8px; }
.suc-sub { font-size: 0.84rem; color: var(--gray); line-height: 1.65; margin-bottom: 18px; }
.suc-call { display: inline-flex; align-items: center; gap: 8px; background: var(--green); color: white; border-radius: 10px; padding: 13px 26px; font-weight: 800; font-size: 0.95rem; text-decoration: none; font-family: 'Sora', sans-serif; }

/* ── TRUST STRIP ── */
.trust-strip { background: var(--off); border-bottom: 1px solid var(--border); padding: 18px 0; }
.trust-inner { display: flex; align-items: center; justify-content: center; gap: 36px; flex-wrap: wrap; }
.tbadge { display: flex; align-items: center; gap: 7px; font-size: 0.77rem; font-weight: 700; color: var(--navy); opacity: 0.7; }
.tbadge .ti { font-size: 1.2rem; }

/* ── BREADCRUMB ── */
.breadcrumb-bar { background: var(--off); border-bottom: 1px solid var(--border); padding: 10px 0; margin-top: 0; }
.breadcrumb-bar .container { font-size: 0.78rem; color: var(--gray); }
.breadcrumb-bar a { color: var(--blue); text-decoration: none; }
.breadcrumb-bar a:hover { text-decoration: underline; }

/* ── CONTENT SECTION ── */
.content-section { padding: 64px 0; }
.content-grid { display: grid; grid-template-columns: 1fr 300px; gap: 48px; align-items: start; }
.content-main h2 { font-family: 'Sora', sans-serif; font-size: 1.4rem; font-weight: 800; color: var(--navy); margin: 32px 0 12px; }
.content-main h2:first-child { margin-top: 0; }
.content-main p { font-size: 0.92rem; color: #374151; line-height: 1.75; margin-bottom: 16px; }
.content-main strong { color: var(--navy); }
.content-list { padding-left: 0; list-style: none; margin-bottom: 20px; display: flex; flex-direction: column; gap: 10px; }
.content-list li { font-size: 0.9rem; color: #374151; line-height: 1.65; padding-left: 20px; position: relative; }
.content-list li::before { content: '→'; position: absolute; left: 0; color: var(--blue); font-weight: 700; }

/* Cost table */
.cost-table { width: 100%; border-collapse: collapse; margin: 16px 0 24px; font-size: 0.88rem; }
.cost-table th { background: var(--navy); color: white; padding: 12px 16px; text-align: left; font-weight: 700; font-size: 0.78rem; letter-spacing: 0.05em; }
.cost-table td { padding: 12px 16px; border-bottom: 1px solid var(--border); color: #374151; }
.cost-table tr:last-child td { border-bottom: none; }
.cost-table tr:nth-child(even) td { background: var(--off); }

/* Why cards inline */
.why-cards-inline { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 16px 0 24px; }
.why-card-inline { display: flex; gap: 12px; align-items: flex-start; background: var(--off); border: 1.5px solid var(--border); border-radius: 12px; padding: 16px; }
.wci-icon { font-size: 1.4rem; flex-shrink: 0; }
.why-card-inline strong { display: block; font-size: 0.88rem; color: var(--navy); margin-bottom: 4px; }
.why-card-inline p { font-size: 0.8rem; color: var(--gray); line-height: 1.55; margin: 0; }

/* FAQ */
.faq-item { background: white; border: 1.5px solid var(--border); border-radius: 12px; overflow: hidden; margin-bottom: 10px; transition: box-shadow 0.2s; }
.faq-item:hover { box-shadow: 0 4px 16px rgba(27,42,74,0.08); }
.faq-q { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; cursor: pointer; gap: 12px; font-family: 'Sora', sans-serif; font-size: 0.92rem; font-weight: 700; color: var(--navy); user-select: none; }
.faq-icon { width: 26px; height: 26px; flex-shrink: 0; background: var(--off); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1rem; color: var(--blue); font-weight: 800; transition: transform 0.25s, background 0.2s; }
.faq-item.open .faq-icon { transform: rotate(45deg); background: var(--blue); color: white; }
.faq-a { max-height: 0; overflow: hidden; transition: max-height 0.35s ease, padding 0.25s; font-size: 0.86rem; color: var(--gray); line-height: 1.7; padding: 0 20px; }
.faq-item.open .faq-a { max-height: 300px; padding: 0 20px 18px; }

/* ── SIDEBAR ── */
.content-sidebar { position: sticky; top: 86px; }
.sidebar-cta { background: var(--navy); border-radius: 16px; padding: 24px; margin-bottom: 20px; }
.sidebar-cta h3 { font-family: 'Sora', sans-serif; font-size: 1rem; font-weight: 800; color: white; margin-bottom: 8px; }
.sidebar-cta p { font-size: 0.8rem; color: rgba(255,255,255,0.55); margin-bottom: 16px; }
.sidebar-cta .btn-main { margin-top: 0; }
.sidebar-phone { display: flex; align-items: center; justify-content: center; gap: 6px; background: var(--green); color: white; border-radius: 9px; padding: 12px; font-weight: 800; font-size: 0.88rem; text-decoration: none; font-family: 'Sora', sans-serif; margin-top: 10px; }
.sidebar-trust { margin-top: 14px; display: flex; flex-direction: column; gap: 6px; }
.sidebar-trust div { font-size: 0.75rem; color: rgba(255,255,255,0.6); }
.sidebar-stats { background: var(--off); border: 1.5px solid var(--border); border-radius: 14px; padding: 20px; margin-bottom: 20px; }
.sidebar-stats h3 { font-family: 'Sora', sans-serif; font-size: 0.95rem; font-weight: 800; color: var(--navy); margin-bottom: 14px; }
.sidebar-stat { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--border); font-size: 0.82rem; }
.sidebar-stat:last-child { border-bottom: none; }
.sidebar-stat span { color: var(--gray); }
.sidebar-stat strong { color: var(--navy); }
.sidebar-related { background: white; border: 1.5px solid var(--border); border-radius: 14px; padding: 20px; }
.sidebar-related h3 { font-family: 'Sora', sans-serif; font-size: 0.95rem; font-weight: 800; color: var(--navy); margin-bottom: 12px; }
.related-links { display: flex; flex-direction: column; gap: 8px; }
.related-links a { font-size: 0.82rem; color: var(--blue); text-decoration: none; padding: 6px 0; border-bottom: 1px solid var(--border); transition: color 0.2s; }
.related-links a:hover { color: var(--navy); }
.related-links a:last-child { border-bottom: none; }

/* ── ROUTES INDEX ── */
.page-hero-simple { background: linear-gradient(135deg, var(--navy2), var(--navy)); padding: 60px 0 60px; text-align: center; color: white; }
.page-hero-simple h1 { opacity: 1 !important; transform: none !important; color: white !important; }
.page-hero-simple h2 { opacity: 1 !important; color: white !important; }
.page-hero-simple p { opacity: 1 !important; color: rgba(255,255,255,0.7) !important; }
.page-hero-simple .eyebrow { opacity: 1 !important; }
.page-hero-simple .fade-up { opacity: 1 !important; transform: none !important; }
.page-hero-simple h1 { font-family: 'Sora', sans-serif; font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; margin-bottom: 12px; }
.page-hero-simple p { font-size: 1rem; color: rgba(255,255,255,0.6); max-width: 520px; margin: 0 auto; }
.routes-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 48px; }
.route-card-link { text-decoration: none; display: block; }
.route-card-link-inner { background: white; border: 1.5px solid var(--border); border-radius: 12px; padding: 18px 20px; transition: all 0.2s; }
.route-card-link-inner:hover { border-color: var(--blue); box-shadow: 0 8px 24px rgba(228,180,76,0.12); transform: translateY(-2px); }
.rcl-route { font-family: 'Sora', sans-serif; font-size: 0.92rem; font-weight: 700; color: var(--navy); margin-bottom: 6px; }
.rcl-details { font-size: 0.75rem; color: var(--gray); display: flex; gap: 12px; margin-bottom: 8px; }
.rcl-cta { font-size: 0.75rem; font-weight: 700; color: var(--blue); }
.state-section { margin-bottom: 40px; }
.state-section h3 { font-family: 'Sora', sans-serif; font-size: 1.1rem; font-weight: 700; color: var(--navy); margin-bottom: 12px; padding-bottom: 8px; border-bottom: 2px solid var(--blue); }
.state-routes-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.state-routes-grid a { font-size: 0.8rem; color: var(--blue); text-decoration: none; padding: 6px 0; transition: color 0.2s; }
.state-routes-grid a:hover { color: var(--navy); text-decoration: underline; }

/* ── STATS BAR ── */
.proof-bar { background: var(--navy2); padding: 28px 0; }
.proof-bar-inner { display: flex; align-items: center; justify-content: center; gap: 48px; flex-wrap: wrap; }
.pstat { text-align: center; }
.pnum { font-family: 'Sora', sans-serif; font-size: 1.8rem; font-weight: 800; color: white; line-height: 1; }
.pnum .a { color: var(--blue); }
.plbl { font-size: 0.63rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.38); margin-top: 3px; }
.pdiv { width: 1px; height: 36px; background: rgba(255,255,255,0.08); }

/* ── SIMPLE PAGE CONTENT ── */
.simple-page { padding: 80px 0; margin-top: 0; }
.simple-page h1 { font-family: 'Sora', sans-serif; font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; color: var(--navy); margin-bottom: 8px; }
.simple-page .page-intro { font-size: 1.05rem; color: var(--gray); margin-bottom: 40px; max-width: 600px; }
.simple-page h2 { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 700; color: var(--navy); margin: 36px 0 12px; }
.simple-page h3 { font-family: 'Sora', sans-serif; font-size: 1.05rem; font-weight: 700; color: var(--navy); margin: 24px 0 8px; }
.simple-page p { font-size: 0.92rem; color: #374151; line-height: 1.78; margin-bottom: 16px; }
.simple-page ul, .simple-page ol { padding-left: 24px; margin-bottom: 16px; }
.simple-page li { font-size: 0.92rem; color: #374151; line-height: 1.75; margin-bottom: 8px; }
.simple-page a { color: var(--blue); }
.simple-page table { width: 100%; border-collapse: collapse; margin: 20px 0; }
.simple-page th { background: var(--navy); color: white; padding: 12px 16px; text-align: left; font-size: 0.82rem; }
.simple-page td { padding: 12px 16px; border-bottom: 1px solid var(--border); font-size: 0.88rem; color: #374151; }

/* ── CTA SECTION ── */
.cta-section { background: linear-gradient(135deg, var(--navy2), var(--navy)); padding: 88px 0; text-align: center; }
.cta-inner { max-width: 600px; margin: 0 auto; }
.cta-title { font-family: 'Sora', sans-serif; font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 800; color: white; margin-bottom: 14px; line-height: 1.12; }
.cta-sub { font-size: 0.92rem; color: rgba(255,255,255,0.52); line-height: 1.7; margin-bottom: 36px; }
.cta-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.cta-btn-blue { background: var(--blue); color: white; border: none; border-radius: 12px; padding: 17px 36px; font-size: 1rem; font-weight: 800; font-family: 'Sora', sans-serif; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s; box-shadow: 0 8px 24px rgba(228,180,76,0.4); }
.cta-btn-blue:hover { background: #2266b8; transform: translateY(-2px); }
.cta-btn-green { background: var(--green); color: white; border: none; border-radius: 12px; padding: 17px 36px; font-size: 1rem; font-weight: 800; font-family: 'Sora', sans-serif; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s; box-shadow: 0 8px 24px rgba(228,180,76,0.3); }
.cta-btn-green:hover { background: #C79233; transform: translateY(-2px); }

/* ── FOOTER ── */
.site-footer { background: var(--navy2); padding: 52px 0 28px; border-top: 1px solid rgba(255,255,255,0.05); }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 48px; margin-bottom: 40px; }
.footer-logo { height: 44px; width: auto; margin-bottom: 12px; display: block; }
.footer-desc { font-size: 0.78rem; color: rgba(255,255,255,0.35); line-height: 1.7; }
.fl-head { font-size: 0.65rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.3); margin-bottom: 12px; }
.fl-links { display: flex; flex-direction: column; gap: 9px; }
.fl-links a { font-size: 0.8rem; color: rgba(255,255,255,0.45); text-decoration: none; transition: color 0.2s; }
.fl-links a:hover { color: white; }
.footer-contact-num { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; color: white; text-decoration: none; display: block; margin-bottom: 6px; }
.footer-contact-num:hover { color: var(--blue); }
.footer-hrs { font-size: 0.7rem; color: rgba(255,255,255,0.32); margin-bottom: 16px; }
.footer-call-btn { display: inline-flex; align-items: center; gap: 7px; background: var(--green); color: white; border-radius: 9px; padding: 11px 20px; font-weight: 800; font-size: 0.85rem; text-decoration: none; font-family: 'Sora', sans-serif; transition: background 0.2s; }
.footer-call-btn:hover { background: #C79233; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.05); padding-top: 22px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.footer-copy { font-size: 0.7rem; color: rgba(255,255,255,0.25); }
.footer-legal { display: flex; gap: 20px; }
.footer-legal a { font-size: 0.7rem; color: rgba(255,255,255,0.25); text-decoration: none; transition: color 0.2s; }
.footer-legal a:hover { color: white; }

/* ── MOBILE STICKY ── */
.mob-sticky { display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: 150; background: rgba(11,20,40,0.97); backdrop-filter: blur(12px); border-top: 1px solid rgba(255,255,255,0.08); padding: 10px 14px; box-shadow: 0 -8px 32px rgba(0,0,0,0.4); }
.mob-sticky-inner { display: flex; flex-direction: column; gap: 8px; }
.mob-quote { width: 100%; background: linear-gradient(135deg, var(--blue), #2266b8); color: white; border: none; border-radius: 12px; padding: 16px; font-size: 1rem; font-weight: 800; font-family: 'Sora', sans-serif; text-align: center; cursor: pointer; text-decoration: none; display: flex; align-items: center; justify-content: center; gap: 6px; box-shadow: 0 4px 16px rgba(228,180,76,0.4); }
.mob-call { width: 100%; background: var(--green); color: white; border: none; border-radius: 12px; padding: 14px; font-size: 0.95rem; font-weight: 800; font-family: 'Sora', sans-serif; text-decoration: none; display: flex; align-items: center; justify-content: center; gap: 8px; box-shadow: 0 4px 16px rgba(228,180,76,0.3); }

/* ── CALCULATOR ── */
.calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
.calc-card { background: white; border-radius: 20px; padding: 32px; border: 1.5px solid var(--border); box-shadow: 0 8px 32px rgba(27,42,74,0.08); }
.calc-result { background: var(--navy); border-radius: 20px; padding: 32px; text-align: center; }
.calc-result-num { font-family: 'Sora', sans-serif; font-size: 3rem; font-weight: 800; color: var(--green); margin: 16px 0 8px; }
.calc-result-label { font-size: 0.78rem; color: rgba(255,255,255,0.5); text-transform: uppercase; letter-spacing: 0.08em; }

/* ── HOW IT WORKS STEPS ── */
.hiw-steps-big { display: flex; flex-direction: column; gap: 0; max-width: 800px; margin: 52px auto 0; }
.hiw-step-big { display: flex; gap: 28px; align-items: flex-start; padding: 32px 0; border-bottom: 1px solid var(--border); }
.hiw-step-big:last-child { border-bottom: none; }
.step-num-big { width: 60px; height: 60px; flex-shrink: 0; background: linear-gradient(135deg, var(--blue), #2266b8); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; color: white; box-shadow: 0 6px 18px rgba(228,180,76,0.3); }
.hiw-step-big h3 { font-family: 'Sora', sans-serif; font-size: 1.1rem; font-weight: 700; color: var(--navy); margin-bottom: 8px; }
.hiw-step-big p { font-size: 0.9rem; color: var(--gray); line-height: 1.7; }

/* ── ABOUT ── */
.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 48px; }
.team-card { text-align: center; background: white; border: 1.5px solid var(--border); border-radius: 16px; padding: 28px 20px; }
.team-avatar { width: 72px; height: 72px; border-radius: 50%; margin: 0 auto 14px; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 1.3rem; color: white; }
.team-name { font-family: 'Sora', sans-serif; font-weight: 700; font-size: 0.95rem; color: var(--navy); margin-bottom: 4px; }
.team-role { font-size: 0.75rem; color: var(--gray); }

/* ── CONTACT ── */
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; margin-top: 52px; align-items: start; }
.contact-form-card { background: white; border: 1.5px solid var(--border); border-radius: 20px; padding: 32px; box-shadow: 0 8px 32px rgba(27,42,74,0.08); }
.contact-info { display: flex; flex-direction: column; gap: 24px; }
.contact-info-item { display: flex; gap: 16px; align-items: flex-start; }
.cii-icon { width: 48px; height: 48px; flex-shrink: 0; background: var(--off); border: 1.5px solid var(--border); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }
.cii-title { font-family: 'Sora', sans-serif; font-weight: 700; font-size: 0.9rem; color: var(--navy); margin-bottom: 4px; }
.cii-value { font-size: 0.84rem; color: var(--gray); }
.cii-value a { color: var(--blue); text-decoration: none; }

/* ── FADE UP ANIMATION ── */
.fade-up { opacity: 0; transform: translateY(28px); transition: opacity 0.65s ease, transform 0.65s ease; }
.fade-up.visible { opacity: 1; transform: none; }
.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .nav-phone-block { display: none; }
  .nav-hamburger { display: block; }
  .hero-inner-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .route-hero-inner { grid-template-columns: 1fr; gap: 32px; }
  .route-hero { padding: 24px 0 40px; min-height: 0; }
  .content-grid { grid-template-columns: 1fr; }
  .content-sidebar { position: static; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .routes-grid { grid-template-columns: 1fr 1fr; }
  .state-routes-grid { grid-template-columns: repeat(2, 1fr); }
  .why-cards-inline { grid-template-columns: 1fr; }
  .calc-grid { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: 1fr; }
  .mob-sticky { display: block; }
  .proof-bar-inner { gap: 24px; }
  .pdiv { display: none; }
  .row2 { grid-template-columns: 1fr; }
  .section { padding: 64px 0; }
  .form-card { max-width: 100% !important; width: 100% !important; }
  .form-body { padding: 20px !important; }
  .phone-block { max-width: 100% !important; }
  .live-pill { font-size: 0.62rem !important; }
  .hero { padding: 0 0 48px !important; min-height: auto !important; }
  .pnum { font-size: 1.3rem !important; }
  .proof-bar-inner { padding: 0 16px; }
}
@media (max-width: 500px) {
  .footer-grid { grid-template-columns: 1fr; }
  .routes-grid { grid-template-columns: 1fr; }
  .state-routes-grid { grid-template-columns: 1fr 1fr; }
  .cta-btns { flex-direction: column; align-items: center; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .hero-inner-grid { grid-template-columns: 1fr !important; }
  .ht { font-size: 0.62rem !important; }
  .hero-trust { gap: 8px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .fade-up { opacity: 1; transform: none; }
  .live-dot, .phone-ring { animation: none; }
}

/* ============================================================
   MOBILE FIXES — Complete Override
   ============================================================ */

.nav-hamburger { display: none !important; }
.nav-mobile-menu { display: none !important; }
.nav-right { display: flex !important; align-items: center !important; gap: 12px !important; }
.nav-btn { padding: 9px 14px !important; font-size: 0.78rem !important; }

@media (max-width: 900px) {
  .nav-hamburger { display: none !important; }
  .nav-phone-block { display: none !important; }
  .nav-btn { display: inline-flex !important; padding: 9px 14px !important; font-size: 0.78rem !important; }
  .hero-inner-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .hero { padding: 0 0 40px !important; min-height: auto !important; }
  .form-card { max-width: 100% !important; width: 100% !important; }
  .form-body { padding: 18px !important; }
  .phone-block { max-width: 100% !important; }
  .live-pill { font-size: 0.62rem !important; padding: 4px 10px !important; }
  .blog-grid, div[style*="grid-template-columns:repeat(3"] { grid-template-columns: 1fr !important; }
  .routes-grid { grid-template-columns: 1fr !important; }
  .state-routes-grid { grid-template-columns: 1fr 1fr !important; }
  .proof-bar-inner { gap: 16px !important; padding: 0 16px !important; }
  .pnum { font-size: 1.2rem !important; }
  .pdiv { display: none !important; }
  .section { padding: 48px 0 !important; }
  .container { padding: 0 16px !important; }
  div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:repeat(2"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:repeat(3"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:repeat(4"] { grid-template-columns: 1fr 1fr !important; }
  div[style*="grid-template-columns:1fr 480px"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1fr 460px"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1fr 300px"] { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
  .mob-sticky { display: block !important; }
}

@media (max-width: 600px) {
  div[style*="display:grid"] { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .hero-trust { gap: 8px !important; }
  .ht { font-size: 0.6rem !important; }
  .cta-btns { flex-direction: column !important; align-items: stretch !important; }
  .cta-btn-blue, .cta-btn-green { text-align: center !important; justify-content: center !important; }
  .page-hero-simple { padding: 32px 0 40px !important; }
  .page-hero-simple h1 { font-size: 1.6rem !important; }
}

/* ============================================================
   MMQ HOMEPAGE CLASSES — Full Mobile Support
   ============================================================ */

/* ── HERO ── */
.mmq-hero { position:relative; min-height:100vh; background:linear-gradient(150deg,#0F1E36 0%,#162240 50%,#1a3460 100%); display:flex; align-items:center; justify-content:center; padding:40px 0 60px; overflow:hidden; }
.mmq-hero-bg { position:absolute; inset:0; background-image:url('/assets/images/hero.jpg'); background-size:cover; background-position:right 35%; }
.mmq-hero-overlay { position:absolute; inset:0; background:linear-gradient(105deg,rgba(9,17,34,0.85) 0%,rgba(11,21,40,0.72) 40%,rgba(13,25,50,0.30) 65%,rgba(15,30,60,0.05) 100%); }
.mmq-hero-container { position:relative; z-index:2; width:100%; }
.mmq-hero-grid { display:grid; grid-template-columns:1fr 460px; gap:52px; align-items:center; }
.mmq-hero-left {}
.mmq-hero-h1 { font-family:'Sora',sans-serif; font-size:clamp(2.2rem,3.8vw,3.4rem); font-weight:800; color:white; line-height:1.08; letter-spacing:-0.025em; margin-bottom:18px; }
.mmq-hero-accent { color:#C79233; text-decoration:underline; text-decoration-color:rgba(228,180,76,0.5); }
.mmq-hero-sub { font-size:1rem; color:rgba(255,255,255,0.55); line-height:1.7; margin-bottom:30px; max-width:440px; }

/* ── 3 COLUMN GRID ── */
.mmq-3col { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:52px; }

/* ── STEP CARDS ── */
.mmq-step-card { background:linear-gradient(180deg,rgba(19,42,74,.6),rgba(11,25,45,.55)); border:1px solid rgba(206,222,242,.1); border-radius:18px; padding:32px 24px; text-align:center; }
.mmq-step-icon { font-size:1.8rem; margin-bottom:14px; }
.mmq-step-num { width:52px; height:52px; background:linear-gradient(135deg,#E4B44C,#C79233); border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:'Sora',sans-serif; font-size:1.2rem; font-weight:800; color:white; margin:0 auto 18px; }
.mmq-step-title { font-family:'Sora',sans-serif; font-size:1rem; font-weight:700; color:var(--navy); margin-bottom:8px; }
.mmq-step-desc { font-size:0.84rem; color:var(--gray); line-height:1.65; }

/* ── FEATURE CARDS ── */
.mmq-feature-card { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.08); border-radius:18px; padding:28px 24px; }
.mmq-feature-icon { width:48px; height:48px; border-radius:14px; background:rgba(228,180,76,0.15); display:flex; align-items:center; justify-content:center; font-size:1.3rem; margin-bottom:16px; }
.mmq-feature-title { font-family:'Sora',sans-serif; font-size:0.98rem; font-weight:700; color:white; margin-bottom:7px; }
.mmq-feature-desc { font-size:0.82rem; color:rgba(255,255,255,0.5); line-height:1.65; }

/* ── 2 COLUMN GRID ── */
.mmq-2col { display:grid; grid-template-columns:1fr 1fr; gap:28px; }

/* ── SAVINGS ── */
.mmq-savings-bad { background:#FEF2F2; border:2px solid #FECACA; border-radius:20px; padding:36px 32px; text-align:center; }
.mmq-savings-good { background:#F0FDF4; border:2px solid #86EFAC; border-radius:20px; padding:36px 32px; text-align:center; position:relative; box-shadow:0 16px 48px rgba(228,180,76,0.15); }
.mmq-savings-badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,#C79233,#C79233); color:white; font-size:0.72rem; font-weight:800; padding:5px 16px; border-radius:100px; white-space:nowrap; }
.mmq-savings-label-red { font-size:0.68rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#DC2626; margin-bottom:16px; }
.mmq-savings-label-green { font-size:0.68rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; color:#C79233; margin-bottom:16px; margin-top:8px; }
.mmq-savings-num-red { font-family:'Sora',sans-serif; font-size:3rem; font-weight:800; color:#DC2626; text-decoration:line-through; opacity:0.7; line-height:1; margin-bottom:8px; }
.mmq-savings-num-green { font-family:'Sora',sans-serif; font-size:3rem; font-weight:800; color:#C79233; line-height:1; margin-bottom:8px; }
.mmq-savings-desc { font-size:0.82rem; color:#4B5563; line-height:1.6; }
.mmq-savings-total { background:linear-gradient(135deg,var(--navy2),var(--navy)); border-radius:16px; padding:28px 32px; margin-top:36px; text-align:center; }
.mmq-savings-total-num { font-family:'Sora',sans-serif; font-size:2.8rem; font-weight:800; color:#C79233; }
.mmq-savings-total-sub { font-size:0.88rem; color:rgba(255,255,255,0.6); margin-top:4px; }

/* ── TESTIMONIALS ── */
.mmq-testi-featured { background:var(--navy2); border-radius:22px; overflow:hidden; }
.mmq-testi-img { height:220px; background:url('/assets/images/couple.jpg') center/cover; }
.mmq-testi-body { padding:28px; }
.mmq-stars { color:#F59E0B; font-size:0.85rem; letter-spacing:1px; margin-bottom:12px; }
.mmq-testi-quote { font-size:0.95rem; color:rgba(255,255,255,0.75); line-height:1.68; font-style:italic; margin-bottom:18px; }
.mmq-testi-stack { display:flex; flex-direction:column; gap:20px; }
.mmq-testi-card { background:white; border:1.5px solid var(--border); border-radius:16px; padding:22px; }
.mmq-testi-text { font-size:0.86rem; color:#374151; line-height:1.65; font-style:italic; margin-bottom:14px; }
.mmq-testi-author { display:flex; align-items:center; gap:10px; }
.mmq-testi-avatar { width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:0.8rem; color:white; flex-shrink:0; }
.mmq-testi-name { font-weight:700; font-size:0.84rem; color:var(--navy); }
.mmq-testi-route { font-size:0.7rem; color:var(--gray); }

/* ── FAQ GRID ── */
.mmq-faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; max-width:720px; margin:48px auto 0; }

/* ── MISC ── */
.mmq-view-all-btn { display:inline-flex; align-items:center; gap:8px; background:var(--off); border:1.5px solid var(--border); color:var(--navy); border-radius:10px; padding:14px 28px; font-weight:700; font-size:0.9rem; text-decoration:none; }

/* ── NAV MOBILE — NO HAMBURGER ── */
.nav-hamburger { display:none !important; }
.nav-mobile-menu { display:none !important; }

/* ============================================================
   MOBILE RESPONSIVE
   ============================================================ */
@media (max-width: 900px) {
  .mmq-hero { padding:0 0 48px; min-height:auto; }
  .mmq-hero-grid { grid-template-columns:1fr; gap:28px; }
  .mmq-hero-sub { max-width:100%; }
  .phone-block { max-width:100% !important; }
  .mmq-3col { grid-template-columns:1fr; gap:16px; }
  .mmq-2col { grid-template-columns:1fr; gap:20px; }
  .mmq-faq-grid { grid-template-columns:1fr; }
  .routes-grid { grid-template-columns:1fr 1fr; }
  .nav-phone-block { display:none !important; }
  .nav-btn { padding:9px 14px !important; font-size:0.8rem !important; }
  .mmq-savings-num-red, .mmq-savings-num-green { font-size:2.2rem; }
  .mmq-savings-badge { font-size:0.62rem; white-space:normal; text-align:center; width:80%; }
  .mmq-testi-featured { order:1; }
  .mmq-testi-stack { order:2; }
  .proof-bar-inner { gap:16px; flex-wrap:wrap; }
  .pdiv { display:none; }
  .pnum { font-size:1.3rem; }
  .section { padding:52px 0; }
  .container { padding:0 16px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:24px; }
  .mob-sticky { display:block; }
}

@media (max-width: 600px) {
  .routes-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .state-routes-grid { grid-template-columns:1fr 1fr; }
  .mmq-hero-h1 { font-size:2rem; }
  .hero-trust { gap:8px; }
  .ht { font-size:0.62rem; }
  .cta-btns { flex-direction:column; align-items:stretch; }
  .cta-btn-blue, .cta-btn-green { justify-content:center; }
  .mmq-savings-bad, .mmq-savings-good { padding:24px 20px; }
  .mmq-savings-total { padding:20px; }
  .mmq-savings-total-num { font-size:2rem; }
  .page-hero-simple { padding:32px 0 40px; }
  .page-hero-simple h1 { font-size:1.6rem; }
}

/* ============================================================
   FOOTER MOBILE FIX
   ============================================================ */
@media (max-width: 900px) {
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 32px !important; }
  .footer-grid > div:first-child { grid-column: 1 / -1; }
}
@media (max-width: 500px) {
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
  .footer-grid > div:first-child { grid-column: 1 / -1; }
}

/* ── FOOTER LOGO WHITE ── */
.footer-logo { filter: brightness(0) invert(1); opacity: 0.9; }

/* ── ARTICLE PAGE MOBILE FIX ── */
.mmq-article-grid,
div[style*="grid-template-columns:1fr 300px"],
div[style*="display:grid;grid-template-columns:1fr 300px"] {
  grid-template-columns: 1fr !important;
  overflow: hidden !important;
}
.content-sidebar { display: none !important; }
@media (max-width: 900px) {
  .content-sidebar { display: none !important; }
  .simple-page { overflow: hidden !important; }
  * { max-width: 100% !important; box-sizing: border-box !important; }
}
.footer-contact-num { font-size: 1rem !important; white-space: nowrap !important; }
.footer-call-btn { white-space: nowrap !important; font-size: 0.78rem !important; width: 100% !important; text-align: center !important; justify-content: center !important; }

/* ── HOW IT WORKS UPGRADE ── */
.hiw-steps-wrap { position:relative; margin-top:52px; }
.hiw-connector-line {
  position:absolute; top:44px;
  left:calc(16.66% + 32px); right:calc(16.66% + 32px);
  height:2px; background:var(--border); z-index:0;
}
.mmq-step-stat {
  display:inline-flex; align-items:center;
  background:var(--off); border:1.5px solid var(--border);
  border-radius:100px; padding:5px 14px;
  font-size:0.72rem; font-weight:700; color:var(--blue);
  margin-top:14px;
}
.hiw-proof-bar {
  display:flex; align-items:center; justify-content:center;
  gap:40px; flex-wrap:wrap;
  background:var(--off); border:1.5px solid var(--border);
  border-radius:16px; padding:28px 32px; margin-top:48px;
}
.hiw-proof-stat { text-align:center; }
.hiw-proof-num { font-family:'Sora',sans-serif; font-size:1.8rem; font-weight:800; color:var(--navy); line-height:1; }
.hiw-proof-lbl { font-size:0.63rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--gray); margin-top:4px; }
.hiw-proof-div { width:1px; height:36px; background:var(--border); }

@media (max-width:900px) {
  .hiw-connector-line { display:none; }
  .hiw-proof-bar { gap:20px; padding:20px; }
  .hiw-proof-div { display:none; }
  .hiw-proof-num { font-size:1.3rem; }
}

/* ── WHY US UPGRADE ── */
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 16px;
  overflow: hidden;
  margin-top: 52px;
}
.why-card {
  background: rgba(255,255,255,0.02);
  padding: 28px 24px;
  transition: background 0.2s;
}
.why-card:hover { background: rgba(228,180,76,0.08); }
.why-card-icon {
  width: 42px; height: 42px;
  border-radius: 10px;
  background: rgba(228,180,76,0.15);
  border: 1px solid rgba(228,180,76,0.25);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; margin-bottom: 14px;
}
.why-card-title { font-family:'Sora',sans-serif; font-size:0.95rem; font-weight:700; color:white; margin-bottom:7px; }
.why-card-desc { font-size:0.82rem; color:rgba(255,255,255,0.45); line-height:1.65; margin-bottom:12px; }
.why-card-proof { font-size:0.75rem; font-weight:700; color:#C79233; }

.why-trust-bar {
  display: flex; align-items: center; gap: 32px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px; padding: 22px 28px;
  margin-top: 24px; flex-wrap: wrap;
}
.why-trust-item { display: flex; align-items: center; gap: 14px; flex: 1; min-width: 200px; }
.why-trust-icon { font-size: 1.6rem; flex-shrink: 0; }
.why-trust-title { font-size: 0.88rem; font-weight: 700; color: white; margin-bottom: 3px; }
.why-trust-sub { font-size: 0.75rem; color: rgba(255,255,255,0.4); }
.why-trust-div { width: 1px; height: 40px; background: rgba(255,255,255,0.08); flex-shrink: 0; }

@media (max-width: 900px) {
  .why-grid { grid-template-columns: 1fr 1fr; }
  .why-trust-div { display: none; }
  .why-trust-bar { gap: 20px; padding: 18px; }
}
@media (max-width: 600px) {
  .why-grid { grid-template-columns: 1fr; }
  .why-trust-item { min-width: unset; }
}

/* ── SAVINGS UPGRADE ── */
.sav-compare-wrap {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 0;
  align-items: center;
  margin-top: 52px;
  margin-bottom: 32px;
}
.sav-vs-divider {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: var(--off);
  border: 1.5px solid var(--border);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Sora', sans-serif;
  font-size: 0.78rem; font-weight: 800;
  color: var(--gray);
  margin: 0 16px;
  flex-shrink: 0;
}
.sav-bullets {
  display: flex; flex-direction: column;
  gap: 8px; margin-top: 16px; text-align: left;
}
.sav-bullet {
  font-size: 0.78rem; font-weight: 600;
  display: flex; align-items: center; gap: 6px;
}
.sav-bullet-bad { color: #DC2626; }
.sav-bullet-good { color: #C79233; }
.sav-routes-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 28px;
}
.sav-route-card {
  background: var(--off);
  border: 1.5px solid var(--border);
  border-radius: 12px;
  padding: 16px;
  text-align: center;
}
.sav-route-name { font-size: 0.78rem; font-weight: 700; color: var(--navy); margin-bottom: 6px; }
.sav-route-saved { font-family: 'Sora', sans-serif; font-size: 1.3rem; font-weight: 800; color: #C79233; line-height: 1; }
.sav-route-lbl { font-size: 0.65rem; color: var(--gray); text-transform: uppercase; letter-spacing: 0.08em; margin-top: 3px; }

@media (max-width: 900px) {
  .sav-compare-wrap { grid-template-columns: 1fr; gap: 16px; }
  .sav-vs-divider { margin: 0 auto; }
  .sav-routes-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 500px) {
  .sav-routes-grid { grid-template-columns: 1fr 1fr; }
}

/* ── ROUTES UPGRADE ── */
.route-card-link-inner { position: relative; overflow: hidden; }
.route-card-link-inner::before {
  content: '';
  position: absolute; left: 0; top: 0; bottom: 0;
  width: 3px; background: var(--blue);
  opacity: 0; transition: opacity 0.2s;
}
.route-card-link:hover .route-card-link-inner::before { opacity: 1; }
.rcl-popular-badge {
  display: inline-block;
  background: #FEF3C7; border: 1px solid #FCD34D;
  border-radius: 100px;
  font-size: 0.65rem; font-weight: 700;
  color: #92400E; padding: 2px 10px;
  margin-bottom: 8px;
}
.rcl-savings {
  display: inline-flex; align-items: center;
  background: #F0FDF4; border: 1px solid #86EFAC;
  border-radius: 100px;
  font-size: 0.7rem; font-weight: 700;
  color: #C79233; padding: 3px 10px;
  margin: 6px 0 8px;
}

/* ── FAQ UPGRADE ── */
.faq-upgrade-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 40px;
  align-items: start;
  margin-top: 48px;
}
.faq-upgrade-list { display: flex; flex-direction: column; gap: 8px; }
.faq-upgrade-sidebar { position: sticky; top: 86px; display: flex; flex-direction: column; gap: 14px; }

.faq-sidebar-cta {
  background: var(--navy);
  border-radius: 16px;
  padding: 22px;
  text-align: center;
}
.faq-sidebar-title { font-family:'Sora',sans-serif; font-size:0.95rem; font-weight:800; color:white; margin-bottom:6px; }
.faq-sidebar-sub { font-size:0.75rem; color:rgba(255,255,255,0.45); line-height:1.6; margin-bottom:16px; }
.faq-sidebar-btn-blue {
  display: block; background: var(--blue); color: white;
  border-radius: 9px; padding: 11px; font-size:0.84rem;
  font-weight:800; font-family:'Sora',sans-serif;
  text-decoration:none; margin-bottom:8px;
  text-align:center;
}
.faq-sidebar-btn-green {
  display: block; background: var(--green); color: white;
  border-radius: 9px; padding: 11px; font-size:0.84rem;
  font-weight:800; font-family:'Sora',sans-serif;
  text-decoration:none; text-align:center;
}
.faq-sidebar-trust {
  background: white;
  border: 1.5px solid var(--border);
  border-radius: 14px;
  padding: 16px 18px;
  display: flex; flex-direction: column; gap: 0;
}
.faq-trust-row {
  display: flex; align-items: center; gap: 10px;
  font-size:0.78rem; color:var(--navy);
  padding: 9px 0;
  border-bottom: 1px solid var(--border);
  font-weight: 600;
}
.faq-trust-row:last-child { border-bottom: none; }
.faq-trust-row span { font-size: 1rem; }

@media (max-width: 900px) {
  .faq-upgrade-layout { grid-template-columns: 1fr; }
  .faq-upgrade-sidebar { position: static; }
}

/* ── HERO UPGRADE ── */
.hero-stars-row {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 18px;
}
.hero-stars { color: #F59E0B; font-size: 1.1rem; letter-spacing: 2px; }
.hero-stars-text { font-size: 0.82rem; color: rgba(255,255,255,0.65); font-weight: 600; }

.hero-pillars {
  display: flex; gap: 20px; flex-wrap: wrap;
  margin-bottom: 28px;
}
.hero-pillar {
  display: flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px; padding: 12px 16px;
  flex: 1; min-width: 120px;
}
.hero-pillar-icon { font-size: 1.4rem; flex-shrink: 0; }
.hero-pillar-title { font-family:'Sora',sans-serif; font-size:0.82rem; font-weight:800; color:white; line-height:1.2; }
.hero-pillar-desc { font-size:0.7rem; color:rgba(255,255,255,0.45); margin-top:2px; }

/* ── BIG TRUST BAR ── */
.big-trust-bar {
  background: var(--navy);
  padding: 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.big-trust-inner {
  max-width: 1060px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: stretch;
}
.btb-item {
  flex: 1; text-align: center;
  padding: 24px 16px;
  transition: background 0.2s;
}
.btb-item:hover { background: rgba(255,255,255,0.04); }
.btb-icon { font-size: 1.6rem; margin-bottom: 8px; }
.btb-title { font-family:'Sora',sans-serif; font-size:0.92rem; font-weight:800; color:white; margin-bottom:3px; }
.btb-sub { font-size:0.7rem; color:rgba(255,255,255,0.4); }
.btb-div { width:1px; background:rgba(255,255,255,0.07); margin: 16px 0; flex-shrink:0; }

@media (max-width: 900px) {
  .hero-pillars { gap: 10px; }
  .hero-pillar { min-width: calc(50% - 10px); }
  .big-trust-inner { flex-wrap: wrap; padding: 8px 16px; }
  .btb-item { flex: 0 0 calc(50% - 1px); padding: 16px 8px; }
  .btb-div { display: none; }
  .btb-icon { font-size: 1.2rem; }
  .btb-title { font-size: 0.8rem; }
}
@media (max-width: 500px) {
  .hero-pillar { min-width: 100%; }
  .btb-item { flex: 0 0 50%; }
}

/* ── HERO FONT SIZE FIX ── */
.mmq-hero-h1 {
  font-size: clamp(1.8rem, 3.2vw, 2.8rem) !important;
}
.hero-pillar {
  min-width: 100px !important;
  padding: 10px 12px !important;
}
.hero-pillar-desc {
  white-space: normal !important;
  font-size: 0.68rem !important;
}
.mmq-hero-bg {
  background-position: right 30% !important;
}

/* ── FMCSA CALLOUT BAR ── */
.hero-fmcsa-bar {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(228,180,76,0.12);
  border: 1px solid rgba(228,180,76,0.3);
  border-radius: 8px;
  padding: 8px 14px;
  font-size: 0.75rem;
  color: rgba(255,255,255,0.75);
  line-height: 1.5;
  margin-bottom: 16px;
  max-width: 440px;
}
.hero-fmcsa-bar strong { color: white; }
.hero-fmcsa-bar a { color: #7BB8F0; text-decoration: underline; }

/* ── FMCSA BAR FIX ── */
.hero-fmcsa-bar {
  display: flex !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  max-width: 100% !important;
  overflow: hidden;
  font-size: 0.72rem !important;
}
@media (max-width: 600px) {
  .hero-fmcsa-bar { white-space: normal !important; flex-wrap: wrap !important; }
}

/* ── HERO SUB PUNCH ── */
.mmq-hero-sub {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,0.85) !important;
  letter-spacing: 0.01em !important;
  margin-bottom: 24px !important;
}

/* ── BIG TRUST BAR BOLDER ── */
.big-trust-bar {
  background: var(--navy) !important;
  border-top: 3px solid var(--blue) !important;
}
.btb-icon { font-size: 2rem !important; margin-bottom: 10px !important; }
.btb-title {
  font-size: 1rem !important;
  font-weight: 800 !important;
  color: white !important;
  margin-bottom: 4px !important;
}
.btb-sub { font-size: 0.75rem !important; color: rgba(255,255,255,0.5) !important; }
.btb-item { padding: 28px 16px !important; }

/* ── HERO OVERLAY - darken behind text slightly more ── */
.mmq-hero-overlay {
  background: linear-gradient(105deg,
    rgba(9,17,34,0.90) 0%,
    rgba(11,21,40,0.78) 42%,
    rgba(13,25,50,0.32) 65%,
    rgba(15,30,60,0.05) 100%) !important;
}

/* ── MOBILE CRO FIXES ── */
@media (max-width: 900px) {

  /* Reorder hero grid — headline first, form second on mobile */
  .mmq-hero-grid {
    display: flex !important;
    flex-direction: column !important;
  }
  .mmq-hero-left { order: 1 !important; }
  .hero-form-wrap { order: 2 !important; }
  .form-card { order: unset !important; }

  /* Reduce hero padding so form is near top */
  .mmq-hero { padding: 76px 0 32px !important; }

  /* Tighten hero left content on mobile */
  .hero-fmcsa-bar { display: none !important; }
  .mmq-hero-h1 { font-size: 1.7rem !important; margin-bottom: 10px !important; }
  .hero-stars-row { margin-bottom: 10px !important; }
  .mmq-hero-sub { font-size: 0.88rem !important; margin-bottom: 16px !important; }
  .phone-block { display: none !important; }

  /* Tighten benefit pillars on mobile */
  .hero-pillars {
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    padding-bottom: 4px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    margin-bottom: 16px !important;
  }
  .hero-pillars::-webkit-scrollbar { display: none !important; }
  .hero-pillar {
    min-width: 130px !important;
    flex-shrink: 0 !important;
    padding: 8px 10px !important;
  }
  .hero-pillar-title { font-size: 0.75rem !important; }
  .hero-pillar-desc { font-size: 0.65rem !important; }
  .hero-pillar-icon { font-size: 1.1rem !important; }

  /* Big trust bar on mobile - 2 col grid */
  .big-trust-inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
  }
  .btb-item { padding: 16px 12px !important; border-bottom: 1px solid rgba(255,255,255,0.06) !important; }
  .btb-div { display: none !important; }
  .btb-icon { font-size: 1.4rem !important; margin-bottom: 6px !important; }
  .btb-title { font-size: 0.82rem !important; }
  .btb-sub { font-size: 0.65rem !important; }
}

/* ── FORM CARD HEIGHT REDUCTION ── */
.form-body { padding: 18px 24px 22px !important; }
.step-dots { margin-bottom: 14px !important; }
.fh { margin-bottom: 2px !important; }
.fs { margin-bottom: 12px !important; }
.zip-row { margin-bottom: 8px !important; }
.fld { margin-bottom: 8px !important; }
.timer-wrap { padding: 6px 10px !important; margin-bottom: 10px !important; }
.urgency-strip { padding: 6px 10px !important; margin-bottom: 12px !important; }

/* ── HIDE NAV CTA BUTTON ON MOBILE ── */
@media (max-width: 900px) {
  .nav-btn { display: none !important; }
}

/* ── KILL LIVE PILL COMPLETELY ── */
.live-pill { display: none !important; }
.live-dot { display: none !important; }

/* ── MOBILE HEADER HEIGHT REDUCTION ── */
@media (max-width: 900px) {
  .nav-inner { height: 52px !important; }
  .nav-logo img { height: 32px !important; }
  .mmq-hero { padding-top: 0 !important; }
}

/* ── LOGO SIZE INCREASE ── */
.nav-logo img { height: 46px !important; }
@media (max-width: 900px) {
  .nav-logo img { height: 38px !important; }
  .nav-inner { height: 58px !important; }
  .mmq-hero { padding-top: 0 !important; }

  /* ── HAMBURGER MENU ── */
  .nav-hamburger { display: block !important; font-size: 1.5rem !important; }
  .nav-mobile-menu { display: none !important; }
  .nav-mobile-menu.open { display: flex !important; }
}

/* ── PREMIUM MOBILE MENU ── */
@media (max-width: 900px) {
  .nav-mobile-menu {
    position: fixed !important;
    top: 0 !important;
    right: -100% !important;
    width: 80% !important;
    max-width: 320px !important;
    height: 100vh !important;
    background: var(--navy2) !important;
    border-left: 1px solid rgba(255,255,255,0.08) !important;
    flex-direction: column !important;
    padding: 0 0 32px !important;
    z-index: 300 !important;
    transition: right 0.3s ease !important;
    box-shadow: -8px 0 40px rgba(0,0,0,0.4) !important;
    display: flex !important;
  }
  .nav-mobile-menu.open {
    right: 0 !important;
    display: flex !important;
  }
  .nav-mobile-menu a {
    padding: 16px 28px !important;
    font-family: 'Sora', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: rgba(255,255,255,0.75) !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    text-decoration: none !important;
    transition: color 0.2s, padding-left 0.2s !important;
    background: none !important;
  }
  .nav-mobile-menu a:hover {
    color: white !important;
    padding-left: 36px !important;
    background: rgba(255,255,255,0.04) !important;
  }
  .nav-mobile-call {
    margin: 20px 24px 0 !important;
    border-radius: 12px !important;
    padding: 16px 28px !important;
    background: var(--green) !important;
    color: white !important;
    text-align: center !important;
    font-size: 1rem !important;
    border-bottom: none !important;
    border: none !important;
  }
  .nav-mobile-call:hover {
    padding-left: 28px !important;
    background: #C79233 !important;
  }

  /* Overlay behind menu */
  .nav-mobile-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 299;
    backdrop-filter: blur(2px);
  }
  .nav-mobile-overlay.open { display: block; }

  /* Hamburger becomes X when open */
  .nav-hamburger { z-index: 301 !important; position: relative !important; }
}

/* ── ABOUT PAGE ── */
.about-hero {
  position: relative;
  min-height: 580px;
  display: flex;
  align-items: center;
  margin-top: 0;
  overflow: hidden;
}
.about-hero-img {
  position: absolute; inset: 0;
  background-size: cover;
  background-position: center 20%;
}
.about-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(105deg, rgba(9,17,34,0.92) 0%, rgba(11,21,40,0.80) 50%, rgba(13,25,50,0.40) 100%);
}
.about-hero-inner { position: relative; z-index: 2; padding: 32px 0 60px; }
.about-hero-content { max-width: 600px; }
.about-hero-h1 {
  font-family: 'Sora', sans-serif;
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 800; color: white;
  line-height: 1.1; letter-spacing: -0.025em;
  margin-bottom: 18px;
}
.about-hero-sub {
  font-size: 1rem; color: rgba(255,255,255,0.65);
  line-height: 1.7; margin-bottom: 32px; max-width: 480px;
}
.about-founder-tag {
  display: flex; align-items: center; gap: 14px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 14px; padding: 14px 20px;
  display: inline-flex;
}
.about-founder-avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: linear-gradient(135deg, var(--blue), #2266b8);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Sora', sans-serif; font-weight: 800;
  font-size: 0.9rem; color: white; flex-shrink: 0;
}
.about-founder-name { font-family:'Sora',sans-serif; font-size:0.95rem; font-weight:800; color:white; }
.about-founder-title { font-size:0.72rem; color:rgba(255,255,255,0.5); margin-top:2px; }

/* Mission bar */
.about-mission-bar {
  background: var(--blue);
  padding: 28px 0;
}
.about-mission-text {
  font-size: 1.05rem; color: white;
  line-height: 1.7; text-align: center;
  max-width: 760px; margin: 0 auto;
  font-style: italic;
}
.about-mission-text strong { color: white; font-style: normal; }

/* Story grid */
.about-story-grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 60px; align-items: start;
  margin-top: 48px;
}
.about-story-text p { font-size:0.95rem; color:#374151; line-height:1.8; margin-bottom:18px; }
.about-story-img-wrap { position: sticky; top: 86px; }
.about-story-img {
  width: 100%; border-radius: 20px;
  box-shadow: 0 24px 60px rgba(27,42,74,0.18);
  display: block;
}
.about-story-img-caption { text-align:center; margin-top:14px; }

/* Standards grid */
.about-standards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 16px; overflow: hidden;
  margin-top: 52px;
}
.about-standard-card {
  background: rgba(255,255,255,0.02);
  padding: 28px 24px;
  transition: background 0.2s;
}
.about-standard-card:hover { background: rgba(228,180,76,0.08); }
.about-standard-icon { font-size:1.6rem; margin-bottom:12px; }
.about-standard-title { font-family:'Sora',sans-serif; font-size:0.95rem; font-weight:700; color:white; margin-bottom:7px; }
.about-standard-desc { font-size:0.82rem; color:rgba(255,255,255,0.45); line-height:1.65; }

/* Steps */
.about-steps { display:flex; flex-direction:column; gap:0; margin-top:48px; }
.about-step {
  display: flex; gap: 24px; align-items: flex-start;
  padding: 28px 0; border-bottom: 1px solid var(--border);
}
.about-step:last-child { border-bottom: none; }
.about-step-num {
  width: 48px; height: 48px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--blue), #2266b8);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-family:'Sora',sans-serif; font-size:1.1rem; font-weight:800; color:white;
  box-shadow: 0 4px 14px rgba(228,180,76,0.3);
}
.about-step-title { font-family:'Sora',sans-serif; font-size:1rem; font-weight:700; color:var(--navy); margin-bottom:5px; }
.about-step-desc { font-size:0.87rem; color:var(--gray); line-height:1.65; }

/* Team photo */
.about-team-img-wrap { border-radius: 20px; overflow: hidden; margin-bottom: 40px; box-shadow: 0 16px 48px rgba(27,42,74,0.12); }
.about-team-img { width:100%; display:block; }

/* Contact grid */
.about-contact-grid {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 20px; margin-top: 0;
}
.about-contact-item {
  background: white; border: 1.5px solid var(--border);
  border-radius: 16px; padding: 24px; text-align: center;
}
.about-contact-icon { font-size:1.8rem; margin-bottom:10px; }
.about-contact-title { font-family:'Sora',sans-serif; font-size:0.88rem; font-weight:800; color:var(--navy); margin-bottom:6px; }
.about-contact-val { font-size:0.9rem; font-weight:700; color:var(--blue); text-decoration:none; display:block; margin-bottom:4px; }
.about-contact-val:hover { color:var(--navy); }
.about-contact-sub { font-size:0.72rem; color:var(--gray); }

/* Mobile */
@media (max-width: 900px) {
  .about-hero { min-height: 420px; }
  .about-hero-inner { padding: 60px 0; }
  .about-story-grid { grid-template-columns: 1fr; gap: 32px; }
  .about-story-img-wrap { position: static; }
  .about-standards-grid { grid-template-columns: 1fr 1fr; }
  .about-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .about-standards-grid { grid-template-columns: 1fr; }
  .about-hero-h1 { font-size: 1.8rem; }
}
/* ── CITY LINKS GRID ── */
.city-links-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
  margin-bottom: 8px;
}
.city-links-grid a {
  display: inline-block;
  background: var(--off);
  border: 1.5px solid var(--border);
  border-radius: 8px;
  padding: 8px 14px;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--blue);
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  white-space: nowrap;
}
.city-links-grid a:hover {
  background: var(--blue);
  border-color: var(--blue);
  color: white;
}

/* ── RELATED ROUTES GRID ── */
.related-routes-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
  margin-top: 14px;
  margin-bottom: 8px;
}
.related-routes-grid a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: var(--off);
  border: 1.5px solid var(--border);
  border-radius: 10px;
  padding: 14px 16px;
  text-decoration: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.related-routes-grid a:hover {
  border-color: var(--blue);
  box-shadow: 0 2px 12px rgba(228,180,76,0.12);
}
.related-routes-grid a strong {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--navy);
}
.related-routes-grid a span {
  font-size: 0.75rem;
  color: var(--gray);
}

/* ── REVERSE ROUTE CTA ── */
.reverse-route-cta {
  background: var(--off);
  border: 1.5px solid var(--border);
  border-radius: 10px;
  padding: 16px 20px;
  margin: 24px 0;
  font-size: 0.88rem;
  color: var(--gray);
}
.reverse-route-cta a {
  color: var(--blue);
  font-weight: 600;
  text-decoration: none;
}
.reverse-route-cta a:hover { text-decoration: underline; }

@media (max-width: 600px) {
  .city-links-grid a { font-size: 0.78rem; padding: 7px 11px; }
  .related-routes-grid { grid-template-columns: 1fr 1fr; }
}

/* ── ROUTE INTELLIGENCE SECTION ── */
.route-intel-section {
  margin-top: 48px;
  padding-top: 48px;
  border-top: 2px solid var(--border);
}
.route-intel-section h2 {
  font-family: 'Sora', sans-serif;
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--navy);
  margin: 36px 0 12px;
}
.route-intel-section h2:first-child { margin-top: 0; }
.route-intel-section p {
  font-size: 0.92rem;
  color: #4a5568;
  line-height: 1.75;
  margin-bottom: 16px;
}
.city-pairs-table-wrap {
  overflow-x: auto;
  margin: 16px 0 8px;
  border-radius: 10px;
  border: 1.5px solid var(--border);
}
.city-pairs-table-wrap .cost-table {
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
}
.table-note {
  font-size: 0.75rem !important;
  color: var(--gray) !important;
  font-style: italic;
}

@media (max-width: 600px) {
  .city-pairs-table-wrap { font-size: 0.78rem; }
}

/* ── VET STEPS (About & How It Works) ── */
.vet-steps { margin-top: 48px; display: flex; flex-direction: column; gap: 0; }
.vet-step {
  display: flex; gap: 24px; align-items: flex-start;
  padding: 28px 0; border-bottom: 1px solid var(--border);
}
.vet-step:last-child { border-bottom: none; }
.vet-step-num {
  width: 44px; height: 44px; flex-shrink: 0;
  background: var(--blue); color: white;
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-family: 'Sora', sans-serif; font-size: 1.1rem; font-weight: 800;
}
.vet-step-content h3 {
  font-family: 'Sora', sans-serif; font-size: 1rem; font-weight: 700;
  color: var(--navy); margin-bottom: 8px;
}
.vet-step-content p { font-size: 0.88rem; color: #4a5568; line-height: 1.7; margin: 0; }
.vet-step-content a { color: var(--blue); font-weight: 600; text-decoration: none; }
.vet-step-content a:hover { text-decoration: underline; }
.vet-verify-link {
  display: flex; align-items: center; gap: 8px;
  margin-top: 10px; font-size: 0.8rem; color: var(--gray);
}
.vet-verify-link a { color: var(--blue); font-weight: 600; text-decoration: none; }

/* ── EDITORIAL GRID (About) ── */
.editorial-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 20px; margin-top: 48px;
}
.editorial-card {
  background: var(--off); border: 1.5px solid var(--border);
  border-radius: 16px; padding: 28px 24px;
}
.editorial-icon { font-size: 1.8rem; margin-bottom: 12px; }
.editorial-card h3 {
  font-family: 'Sora', sans-serif; font-size: 0.95rem; font-weight: 700;
  color: var(--navy); margin-bottom: 8px;
}
.editorial-card p { font-size: 0.84rem; color: #4a5568; line-height: 1.68; margin: 0; }

/* ── CONSUMER RIGHTS (About) ── */
.rights-list { margin-top: 48px; display: flex; flex-direction: column; gap: 24px; }
.rights-item {
  display: flex; gap: 20px; align-items: flex-start;
  background: var(--off); border: 1.5px solid var(--border);
  border-radius: 14px; padding: 24px;
}
.rights-icon {
  font-size: 1.6rem; width: 48px; height: 48px; flex-shrink: 0;
  background: white; border: 1.5px solid var(--border);
  border-radius: 12px; display: flex; align-items: center; justify-content: center;
}
.rights-item h3 {
  font-family: 'Sora', sans-serif; font-size: 0.95rem; font-weight: 700;
  color: var(--navy); margin-bottom: 6px;
}
.rights-item p { font-size: 0.84rem; color: #4a5568; line-height: 1.68; margin: 0; }
.rights-item a { color: var(--blue); font-weight: 600; text-decoration: none; }
.rights-resource {
  margin-top: 28px; padding: 20px 24px;
  background: rgba(228,180,76,0.08); border: 1.5px solid rgba(228,180,76,0.2);
  border-radius: 12px; font-size: 0.86rem; color: #374151; line-height: 1.65;
}
.rights-resource a { color: var(--blue); font-weight: 600; text-decoration: none; }

/* ── HOW IT WORKS COMPARE GRID ── */
.hiw-compare-grid {
  display: grid; grid-template-columns: 1fr auto 1fr;
  gap: 24px; align-items: center; margin-top: 48px;
}
.hiw-compare-bad, .hiw-compare-good {
  border-radius: 16px; padding: 28px 24px;
}
.hiw-compare-bad {
  background: #fff5f5; border: 2px solid #fecaca;
}
.hiw-compare-good {
  background: #f0fdf4; border: 2px solid #C79233;
}
.hiw-compare-label {
  font-family: 'Sora', sans-serif; font-size: 0.88rem;
  font-weight: 800; margin-bottom: 16px;
}
.hiw-compare-bad .hiw-compare-label { color: #dc2626; }
.hiw-compare-good .hiw-compare-label { color: #C79233; }
.hiw-compare-list { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.hiw-compare-list li { font-size: 0.84rem; color: #374151; line-height: 1.5; }
.hiw-compare-vs {
  font-family: 'Sora', sans-serif; font-size: 1.2rem;
  font-weight: 900; color: var(--gray); text-align: center;
}
.hiw-compare-note {
  margin-top: 28px; padding: 18px 22px;
  background: var(--off); border: 1.5px solid var(--border);
  border-radius: 12px; font-size: 0.84rem; color: var(--gray);
  text-align: center; line-height: 1.65;
}

/* ── TIMELINE (How It Works) ── */
.timeline { margin-top: 48px; position: relative; }
.timeline::before {
  content: ''; position: absolute; left: 19px; top: 0; bottom: 0;
  width: 2px; background: var(--border);
}
.timeline-item {
  display: flex; gap: 24px; align-items: flex-start;
  padding-bottom: 36px; position: relative;
}
.timeline-item:last-child { padding-bottom: 0; }
.timeline-dot {
  width: 40px; height: 40px; flex-shrink: 0;
  background: var(--blue); border-radius: 50%;
  border: 3px solid white; box-shadow: 0 0 0 2px var(--blue);
  position: relative; z-index: 1;
}
.timeline-content { padding-top: 6px; }
.timeline-time {
  font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--blue); margin-bottom: 6px;
}
.timeline-content h3 {
  font-family: 'Sora', sans-serif; font-size: 1rem; font-weight: 700;
  color: var(--navy); margin-bottom: 8px;
}
.timeline-content p { font-size: 0.86rem; color: #4a5568; line-height: 1.68; margin: 0; }

/* ── MOBILE RESPONSIVE ── */
@media (max-width: 768px) {
  .editorial-grid { grid-template-columns: 1fr; }
  .hiw-compare-grid { grid-template-columns: 1fr; }
  .hiw-compare-vs { display: none; }
}
@media (max-width: 600px) {
  .vet-step { flex-direction: column; }
  .rights-item { flex-direction: column; }
}

/* ── GAP FIX — all dark hero sections use box-shadow to fill space above ── */
.route-hero,
.about-hero,
.page-hero-simple {
  box-shadow: 0 -200px 0 200px currentColor;
}
.route-hero { color: #0F1E36; }
.about-hero { color: #060d1a; }
.page-hero-simple { color: #1B2A4A; }

/* ── STATE GRID MOBILE ── */
@media (max-width: 900px) {
  .sgrid { grid-template-columns: repeat(5,1fr) !important; gap: 6px !important; }
}
/* Force visibility inside dark hero sections */
.route-hero .fade-up,
.about-hero .fade-up,
.page-hero-simple .fade-up,
.why-section .fade-up,
.hiw-proof .fade-up {
  opacity: 1 !important;
  transform: none !important;
}


/* ================= MMQ PREMIUM THEME (merged) ================= */
/* ============================================================
   MMQ PREMIUM THEME OVERLAY  (mmq-theme.css)
   Loads AFTER main.css. Reskins legacy template pages
   (route, state, routes-index, about, blog, content pages)
   to the navy/gold enterprise look — URLs unchanged.

   Scope note: targets legacy content classes only. It does NOT
   touch .site-nav / .mx-footer (premium header/footer) or the
   homepage (.mmqx / .mmqp), which are already themed.
   ============================================================ */

/* ---- palette shift: flip main.css variables ---- */
:root{
  --blue:   #E4B44C;                     /* accents blue -> gold */
  --off:    #0E2138;                     /* light panels -> dark navy */
  --border: rgba(206,222,242,.14);       /* light borders -> subtle line */
  --gray:   #A6B8CE;                     /* muted text -> light slate */
  --green:  #C79233;                     /* green -> gold (no green anywhere) */
}
.mic{width:15px;height:15px;flex:none;color:#E4B44C;display:inline-block;vertical-align:-2px}
.mic-nav{width:19px;height:19px;flex:none;color:#E4B44C}
.dummyend{
  --mmq-gold2:#F1CE7C; --mmq-white:#F6F9FC; --mmq-slate:#A6B8CE;
}

/* ---- page base ---- */
body{ background:#0A1728; }

/* ---- section backgrounds -> dark ---- */
.section{ background:linear-gradient(180deg,#0A1B31,#081426) !important; }
.section.bg-off{ background:linear-gradient(180deg,#102340,#0C1B31) !important; }
.section.bg-dark{ background:linear-gradient(180deg,#081426,#060F1C) !important; }
.content-section{ background:linear-gradient(180deg,#0A1B31,#081426) !important; }
.state-routes-section{ background:linear-gradient(180deg,#102340,#0C1B31) !important; }
.trust-strip{ background:#081426 !important; border-color:rgba(228,180,76,.16) !important; }
.page-hero-simple{ background:linear-gradient(160deg,#0C1D33,#0A1728 60%,#060F1C) !important; }

/* ---- default light text inside content areas (scoped; leaves white cards alone) ---- */
.section, .content-section, .cta-section, .page-hero-simple, .state-routes-section{ color:#C6D4E6; }
.content-main, .content-main p, .content-main li, .content-list li{ color:#C6D4E6 !important; }
.content-main h1,.content-main h2,.content-main h3,.content-main h4,
.content-main strong,.sec-title{ color:#F6F9FC !important; }
.sec-sub{ color:#A6B8CE !important; }
.eyebrow,.eyebrow.light{ color:#F1CE7C !important; }
.tbadge{ color:#C7D5E6 !important; opacity:1 !important; }
.ti{ filter:none; }

/* ---- content links -> gold ---- */
.content-main a{ color:#F1CE7C !important; text-underline-offset:2px; }
.content-main a:hover{ color:#E4B44C !important; }

/* ---- cards -> dark glass ---- */
.faq-item,
.route-card-link-inner,
.sidebar-related{
  background:linear-gradient(180deg,rgba(19,42,74,.66),rgba(11,25,45,.6)) !important;
  border-color:rgba(206,222,242,.10) !important;
}
/* route/state form card stays WHITE (form.php uses dark text on white) */
.form-card{ background:#FFFFFF !important; }
.form-card{ border-radius:22px !important; box-shadow:0 44px 100px -34px rgba(0,0,0,.72),0 0 0 1px rgba(228,180,76,.14),0 0 70px rgba(228,180,76,.08) !important; }
.why-card-inline,
.sidebar-stats{
  background:rgba(255,255,255,.03) !important;
  border-color:rgba(206,222,242,.10) !important;
}
.route-card-link-inner:hover{
  border-color:rgba(228,180,76,.42) !important;
  box-shadow:0 16px 36px -14px rgba(0,0,0,.65) !important;
}
.rcl-route,
.faq-q,
.sidebar-stats h3,
.sidebar-related h3,
.state-section h3,
.why-card-inline strong{ color:#F6F9FC !important; }
.rcl-details,
.faq-a,
.why-card-inline p,
.sidebar-stat span,
.sidebar-cta p,
.sidebar-trust div{ color:#A6B8CE !important; }
.sidebar-stat strong{ color:#F6F9FC !important; }
.sidebar-stat{ border-color:rgba(206,222,242,.10) !important; }
.rcl-cta{ color:#F1CE7C !important; }

/* FAQ toggle icon */
.faq-icon{ background:rgba(228,180,76,.14) !important; color:#E4B44C !important; }
.faq-item.open .faq-icon{ background:#E4B44C !important; color:#231705 !important; }

/* route-card popular badge stays gold-on-dark */
.rcl-popular-badge{ background:rgba(228,180,76,.16) !important; color:#F1CE7C !important; }

/* sidebar stat card / related links */
.related-links a,
.state-routes-grid a{ color:#A6B8CE !important; border-color:rgba(206,222,242,.10) !important; }
.related-links a:hover,
.state-routes-grid a:hover{ color:#E4B44C !important; }
.state-section h3{ border-bottom-color:#E4B44C !important; }

/* route hero accent stats -> gold */
.rstat-num{ color:#F1CE7C !important; }

/* ---- CTA buttons: blue -> gold (keep green) ---- */
.cta-btn-blue{
  background:linear-gradient(180deg,#EFC66A,#E4B44C 58%,#D2A23C) !important;
  color:#231705 !important;
  box-shadow:0 16px 34px -12px rgba(228,180,76,.5) !important;
}
.cta-btn-blue:hover{ filter:brightness(1.04); transform:translateY(-2px); }
/* .cta-btn-green + .sidebar-phone stay green (untouched) */

/* ---- section-CTA (scta) + state why cards + srt cards -> dark/gold ---- */
.swhy-card,.srt-card,.scb,.str-item{
  background:linear-gradient(180deg,rgba(19,42,74,.6),rgba(11,25,45,.55)) !important;
  border-color:rgba(206,222,242,.10) !important;
}
.swhy-title,.srt-route,.scb-value{ color:#F6F9FC !important; }
.swhy-desc,.scb-label,.srt-tag,.ssb-lbl{ color:#A6B8CE !important; }
.swhy-icon,.srt-tag-price,.ssb-num,.rstat-lbl{ color:#F1CE7C !important; }
.srt-cta{ color:#231705 !important; background:linear-gradient(180deg,#EFC66A,#D2A23C) !important; }

/* ---- generic form fields that use main.css vars ---- */
.fld input, .fld select{
  background:#fff; /* keep form fields on the white card readable */
}
.fld input:focus, .fld select:focus{
  border-color:#E4B44C !important;
  box-shadow:0 0 0 3px rgba(228,180,76,.18) !important;
}
.step-num-big{
  background:linear-gradient(135deg,#E4B44C,#C79233) !important;
  box-shadow:0 6px 18px rgba(228,180,76,.3) !important;
}

/* keep animated reveals from hiding content if JS observer misses */
.fade-up{ opacity:1 !important; transform:none !important; }

/* ============================================================
   LAYOUT SAFETY NET
   Core structural rules so reskinned pages render correctly
   even if main.css is slow/absent. Harmless if main.css loads.
   ============================================================ */
.container{ max-width:1200px; margin:0 auto; padding:0 24px; }
.section{ padding:clamp(56px,7vw,88px) 0; }
.text-center{ text-align:center; }
.eyebrow{ display:block; }

/* route cards grid + card structure */
.routes-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:48px; }
.route-card-link{ display:block; text-decoration:none !important; }
.route-card-link-inner{
  padding:20px 22px; border-radius:14px;
  border:1px solid rgba(228,180,76,.16) !important;
  background:linear-gradient(180deg,#12294A,#0E2138) !important;
  transition:transform .2s, border-color .2s, box-shadow .2s;
}
.rcl-popular-badge{ display:inline-block; padding:4px 10px; border-radius:999px; font-size:.68rem; font-weight:800; margin-bottom:10px; }
.rcl-route{ font-size:.98rem; font-weight:800; margin-bottom:6px; }
.rcl-details{ display:flex; gap:12px; font-size:.78rem; margin-bottom:8px; }
.rcl-savings{ font-size:.78rem; font-weight:700; color:#6FE3A6 !important; margin-bottom:10px; text-decoration:none !important; }
.rcl-cta{ font-size:.8rem; font-weight:800; }

/* state routes grid */
.state-section{ margin-bottom:36px; }
.state-section h3{ margin-bottom:14px; padding-bottom:8px; border-bottom:2px solid #E4B44C; }
.state-routes-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px 20px; }
.state-routes-grid a{ display:block; padding:6px 0; text-decoration:none !important; font-size:.82rem; }

/* content + sidebar */
.content-grid{ display:grid; grid-template-columns:1fr 300px; gap:48px; align-items:start; }
.content-main h2{ margin:32px 0 12px; }
.content-main h2:first-child{ margin-top:0; }
.content-main p{ margin-bottom:16px; }
.related-links{ display:flex; flex-direction:column; gap:6px; }
.related-links a{ padding:6px 0; text-decoration:none !important; }
.related-routes-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }

/* simple page hero */
.page-hero-simple{ padding:64px 0; text-align:center; }
.page-hero-simple h1{ color:#F6F9FC !important; margin-bottom:12px; }
.page-hero-simple p{ color:rgba(246,249,252,.72) !important; max-width:560px; margin:0 auto; }
.page-hero-simple .eyebrow, .page-hero-simple .eyebrow.light{ color:#F1CE7C !important; }

/* trust strip layout */
.trust-strip{ padding:18px 0; }
.trust-inner{ display:flex; flex-wrap:wrap; gap:18px 28px; align-items:center; justify-content:center; }

/* responsive */
@media (max-width:900px){
  .routes-grid{ grid-template-columns:1fr 1fr; }
  .state-routes-grid{ grid-template-columns:repeat(2,1fr); }
  .content-grid{ grid-template-columns:1fr; }
  .content-sidebar{ display:none; }
}
@media (max-width:560px){
  .routes-grid{ grid-template-columns:1fr; }
  .state-routes-grid{ grid-template-columns:1fr; }
  .related-routes-grid{ grid-template-columns:1fr; }
}

/* ===== READABILITY HARDENING: force light text on all dark content ===== */
.content-section h1,.content-section h2,.content-section h3,.content-section h4,.content-section h5,
.content-main h1,.content-main h2,.content-main h3,.content-main h4,
.section h2,.section h3,.section h4,
.container h2,.container h3,.container h4,
.simple-page h1,.simple-page h2,.simple-page h3,
.route-content h2,.route-content h3,.route-content h4,
.sec-title{ color:#F6F9FC !important; -webkit-text-fill-color:#F6F9FC !important; }
.content-section p,.content-section li,.content-section span:not(.eyebrow),
.content-main p,.content-main li,
.section p:not(.sec-sub),.route-content p,.route-content li,
.simple-page p,.simple-page li{ color:#C6D4E6 !important; }
.content-main strong,.content-section strong,.route-content strong,.simple-page strong{ color:#FFFFFF !important; }
.content-main a,.content-section a,.route-content a{ color:#F1CE7C !important; }
/* tables */
.cost-table th,.content-section table th,.content-main table th,table.cost-table th{
  color:#F6F9FC !important; background:#0E2138 !important; border-color:rgba(206,222,242,.12) !important; }
.cost-table td,.content-section table td,.content-main table td,table.cost-table td{
  color:#C6D4E6 !important; border-color:rgba(206,222,242,.10) !important; }
.cost-table tr:nth-child(even) td{ background:rgba(255,255,255,.02) !important; }
/* italic disclaimer / notes */
.content-section em,.content-main em,.route-content em{ color:#AEBFD6 !important; }

/* ===== CONTENT PAGES (guide / how-it-works / about / calculator) contrast ===== */
.simple-page h4{color:#F6F9FC !important}
.simple-page strong{color:#FFFFFF !important}
.simple-page ol li,.simple-page ul li{color:#C6D4E6 !important}
/* calculator: dark cards + readable text */
.calc-card{background:linear-gradient(180deg,rgba(19,42,74,.62),rgba(11,25,45,.58)) !important;border-color:rgba(206,222,242,.1) !important;box-shadow:0 20px 50px -24px rgba(0,0,0,.6) !important}
.calc-card h2{color:#F6F9FC !important}
.calc-card label,.calc-card .fld label{color:#CBD8E8 !important}
.calc-card strong{color:#F1CE7C !important}
.calc-result-num{color:#F1CE7C !important}
/* inline section tables (calculator cost table) */
.section table th{color:#F6F9FC !important}
.section table td{color:#C6D4E6 !important}
/* placeholder / dashed boxes on dark */
.section [style*="dashed"]{color:#A6B8CE !important}
/* blog cards/titles (inline color:var(--navy) on dark) */
a[style*="color:var(--navy);text-decoration:none"]{color:#F6F9FC !important}
.mmq-step-title,.article-hero h1{color:#F6F9FC !important}

/* ===== REMOVE GREEN BUTTONS -> site colors (gold) ===== */
/* phone / call = gold-outline secondary */
.cta-btn-green,.sidebar-phone,.mob-call,.nav-mobile-call,.fc-call-btn{
  background:rgba(228,180,76,.12) !important; border:1.5px solid #E4B44C !important;
  color:#F1CE7C !important; box-shadow:none !important; }
.cta-btn-green:hover,.mob-call:hover,.sidebar-phone:hover{ background:rgba(228,180,76,.22) !important; }
/* primary submit = solid gold */
.fc-btn-green{ background:linear-gradient(180deg,#EFC66A,#E4B44C 58%,#D2A23C) !important;
  color:#231705 !important; box-shadow:0 8px 22px -6px rgba(228,180,76,.5) !important; }