/* ============================================================
   INCLINE TRANSPORT â€” Global Styles
   ============================================================ */

:root {
  --navy:       #173154;
  --navy-deep:  #10233c;
  --navy-mid:   #315277;
  --blue:       #2f9bd2;
  --blue-dark:  #197fb4;
  --sky-soft:   #edf8fd;
  --cream:      #fbfaf6;
  --warm-line:  #e8e2d6;
  --white:      #ffffff;
  --gray-bg:    #f7fafc;
  --gray-light: #e4edf4;
  --text-dark:  #0A1628;
  --text-mid:   #4a6070;
  --text-muted: #7a90a8;
  --radius:     10px;
  --radius-lg:  16px;
  --shadow-sm:  0 8px 24px rgba(23,49,84,0.07);
  --shadow-md:  0 16px 40px rgba(23,49,84,0.10);
  --shadow-lg:  0 24px 70px rgba(23,49,84,0.14);
  --transition: all 0.28s cubic-bezier(0.4,0,0.2,1);
  --nav-height: 86px;

  /* ===== CONSISTENT SPACING SCALE ===== */
  --space-xs:  8px;
  --space-sm:  16px;
  --space-md:  24px;
  --space-lg:  36px;
  --space-xl:  56px;
  --space-2xl: 72px;
  --section-pad: 68px;          /* vertical section padding â€” same everywhere */
  --container-pad: 40px;        /* horizontal container padding â€” same everywhere */
  --card-gap: 24px;             /* gap between cards in any grid â€” same everywhere */
  --header-gap: 40px;           /* space between section header and content below â€” same everywhere */

  --font-heading: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif;
  --font-body: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif;
}

/* Services reference layouts: these classes are emitted from the same CMS
   card rows, preserving the page content while using the reference geometry. */
html body.home-page main.service-copy-page.services-page .services-why-works-section {
  padding: 0 0 26px !important;
  background: var(--home-bg, #f5fbff) !important;
}
html body.home-page main.service-copy-page.services-page .services-why-works-section > .container { max-width: 1360px !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section .section-header { height: 0 !important; margin: 0 !important; overflow: hidden !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-card-grid.compact {
  display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 0 !important;
  max-width: 1180px !important; margin: 0 auto !important; padding: 16px 0 0 !important;
  border-top: 1px solid rgba(47,155,210,.16) !important;
}
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card {
  display: grid !important; grid-template-columns: 58px minmax(0, 1fr) !important; grid-template-rows: auto auto !important;
  align-items: center !important; align-content: center !important; column-gap: 16px !important; min-height: 92px !important;
  padding: 0 24px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; text-align: left !important;
}
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card + .service-reference-card { border-left: 1px solid rgba(47,155,210,.16) !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-icon {
  grid-row: 1 / span 2 !important; width: 56px !important; height: 56px !important; margin: 0 !important;
  border: 1px solid rgba(47,155,210,.24) !important; border-radius: 50% !important; background: #f4fbff !important;
}
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-icon::before { content: "" !important; display: block !important; width: 25px !important; height: 25px !important; background: var(--blue-dark) !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card:nth-child(1) .service-icon { --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 7h11v8h2.2l1.8-3h-2V9h3.4l2.6 4v2h-2a3 3 0 0 1-6 0H9a3 3 0 0 1-6 0H1V9a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E"); }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card:nth-child(2) .service-icon { --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4a3 3 0 1 0 0 6 3 3 0 0 0 2.83-2H14a3 3 0 1 0 0 2H9.83A3 3 0 0 0 8 11.83v3.34a3 3 0 1 0 2 0v-3.34A3 3 0 0 0 7 4Z'/%3E%3C/svg%3E"); }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card:nth-child(3) .service-icon { --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 4 5v6c0 5.1 3.4 9.9 8 11 4.6-1.1 8-5.9 8-11V5l-8-3Zm0 3.2 5 1.9v4c0 3.6-2.2 7.1-5 8.3-2.8-1.2-5-4.7-5-8.3v-4l5-1.9Z'/%3E%3C/svg%3E"); }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card:nth-child(4) .service-icon { --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E"); }
html body.home-page main.service-copy-page.services-page .services-why-works-section .service-icon::before { -webkit-mask: var(--service-icon-mask) center / contain no-repeat !important; mask: var(--service-icon-mask) center / contain no-repeat !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section h3 { margin: 3px 0 5px !important; color: var(--navy-deep) !important; font-size: 14px !important; line-height: 1.22 !important; font-weight: 900 !important; }
html body.home-page main.service-copy-page.services-page .services-why-works-section p { margin: 0 !important; color: #415970 !important; font-size: 11.5px !important; line-height: 1.45 !important; font-weight: 650 !important; }

html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section,
html body.home-page main.service-copy-page.services-page .services-pricing-section { padding: 24px 16px 28px !important; background: #f6fbff !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section > .container,
html body.home-page main.service-copy-page.services-page .services-pricing-section > .container { max-width: 1520px !important; padding: 18px 24px 28px !important; border: 1px solid rgba(13,61,107,.08) !important; border-radius: 12px !important; background: rgba(255,255,255,.92) !important; box-shadow: 0 10px 28px rgba(10,39,70,.08) !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section .section-header,
html body.home-page main.service-copy-page.services-page .services-pricing-section .section-header { margin: 0 auto 18px !important; text-align: center !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid { display: grid !important; grid-template-columns: repeat(6,minmax(0,1fr)) !important; gap: 0 !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid .service-reference-card { display: flex !important; min-height: 178px !important; padding: 8px 22px 0 !important; flex-direction: column !important; align-items: center !important; justify-content: flex-start !important; border-right: 1px solid rgba(18,103,216,.13) !important; text-align: center !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid .service-reference-card:last-child { border-right: 0 !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid img { width: 92px !important; max-width: 92px !important; height: 58px !important; margin: 0 auto 16px !important; object-fit: contain !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid h3 { margin: 0 0 9px !important; color: #071d3b !important; font-size: 18px !important; line-height: 1.12 !important; font-weight: 900 !important; }
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid p { max-width: 165px !important; margin: 0 auto !important; color: #132848 !important; font-size: 13px !important; line-height: 1.45 !important; font-weight: 600 !important; }

html body.home-page main.service-copy-page.services-page .pricing-visual-grid { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 22px !important; }
html body.home-page main.service-copy-page.services-page .pricing-visual-grid .service-reference-card { display: grid !important; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr) !important; min-height: 176px !important; overflow: hidden !important; padding: 0 !important; border: 1px solid rgba(18,103,216,.13) !important; border-radius: 10px !important; background: #fff !important; text-align: left !important; }
html body.home-page main.service-copy-page.services-page .pricing-visual-grid .pricing-photo { width: 100% !important; height: 100% !important; min-height: 176px !important; margin: 0 !important; object-fit: cover !important; }
html body.home-page main.service-copy-page.services-page .pricing-visual-grid .pricing-copy { display: flex !important; min-width: 0 !important; padding: 16px 18px !important; flex-direction: column !important; align-items: flex-start !important; justify-content: center !important; }
html body.home-page main.service-copy-page.services-page .pricing-visual-grid h3 { margin: 0 0 8px !important; color: #071d3b !important; font-size: 18px !important; line-height: 1.08 !important; font-weight: 900 !important; }
html body.home-page main.service-copy-page.services-page .pricing-visual-grid p { max-width: 170px !important; margin: 0 !important; color: #132848 !important; font-size: 13.5px !important; line-height: 1.35 !important; font-weight: 600 !important; }
html body.home-page main.service-copy-page.services-page .services-review-faq-section .review-summary-card { max-width: 720px !important; margin: 0 auto !important; padding: 38px 44px !important; border: 1px solid rgba(47,155,210,.16) !important; border-radius: 9px !important; background: rgba(255,255,255,.76) !important; box-shadow: 0 14px 34px rgba(23,49,84,.06) !important; text-align: center !important; }

@media (max-width: 900px) { html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } html body.home-page main.service-copy-page.services-page .pricing-visual-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 640px) { html body.home-page main.service-copy-page.services-page .services-why-works-section .service-card-grid.compact { grid-template-columns: 1fr !important; } html body.home-page main.service-copy-page.services-page .services-why-works-section .service-reference-card + .service-reference-card { border-top: 1px solid rgba(47,155,210,.16) !important; border-left: 0 !important; } html body.home-page main.service-copy-page.services-page .pricing-visual-grid { grid-template-columns: 1fr !important; } }

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 16px; }

body {
  font-family: var(--font-body);
  background: var(--cream);
  color: var(--text-dark);
  line-height: 1.6;
  overflow-x: hidden;
}

.home-page {
  --home-bg: #f5fbff;
  background: var(--home-bg);
}
.about-page {
  --home-bg: #f5fbff;
  --section-pad: 56px;
  --header-gap: 30px;
  background: var(--home-bg);
  overflow-x: hidden;
}
.home-page .trust-strip,
.home-page .stats-bar,
.home-page .section,
.home-page .section-gray,
.home-page .section-dark,
.home-page .why-premium-section,
.home-page .offer-premium-section,
.home-page .process-premium-section,
.home-page .routes-premium-section,
.home-page .dealers-cta-section,
.home-page .cta-banner {
  background: var(--home-bg);
}
.about-page #hero,
.about-page #about-story,
.about-page #about-values,
.about-page #about-team,
.about-page #about-fleet,
.about-page #about-trust,
.about-page #about-stay,
.about-page #about-promise,
.about-page #about-reviews,
.about-page #about-faq,
.about-page .cta-banner {
  background: var(--home-bg) !important;
  border: none !important;
}
.about-page section:not(.hero-split),
.about-page .section {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.about-page .section-header {
  margin-bottom: 30px !important;
}
.about-page #about-story {
  max-width: 1320px !important;
  min-height: auto !important;
  gap: 28px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}
.about-page .cta-banner {
  padding-top: 56px !important;
  padding-bottom: 64px !important;
}

h1, h2, h3, h4, h5, h6,
.section-title, .nav-logo, .stat-num, .page-hero h1,
.cta-banner h2, .footer-brand-logo, .form-title,
#about-hero h1, .story-content-col h2, .value-title,
.team-card-hero .name, .team-card-sm .name, .stat-modern .num {
  font-family: var(--font-heading);
}

img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
input, select, textarea { font-family: inherit; }

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--gray-bg); }
::-webkit-scrollbar-thumb { background: var(--blue); border-radius: 3px; }

/* ===== TYPOGRAPHY ===== */
.eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--blue-dark);
  margin-bottom: var(--space-sm);
}
.section-title {
  font-size: clamp(32px, 4.5vw, 48px);
  font-weight: 900;
  color: var(--text-dark);
  line-height: 1.15;
  margin-bottom: var(--space-sm);
  letter-spacing: -0.8px;
}
.section-title.light { color: var(--navy); }
.section-sub {
  font-size: 16px;
  color: var(--text-mid);
  line-height: 1.75;
  max-width: 600px;
}
.section-sub.light { color: var(--text-mid); }

/* Every section header is centered by default, consistent width, consistent gap below */
.section-header {
  text-align: center;
  max-width: 680px;
  margin: 0 auto var(--header-gap);
}
.section-header .section-sub { margin: 0 auto; }
.section-center { text-align: center; }
.section-center .section-sub { margin: 0 auto; }

/* ===== HOME HERO ===== */
.home-hero {
  position: relative;
  min-height: auto;
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  background: var(--white);
}
.home-hero-bg {
  position: absolute;
  inset: 0;
  background-image: url('../images/Home banner.png');
  background-size: cover;
  background-position: center right;
  opacity: 0.85;
}
.home-hero-wash {
  position: absolute;
  inset: 0;
  /* Strong white gradient on the left, fading to transparent on the right */
  background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.98) 35%, rgba(255,255,255,0.8) 55%, rgba(255,255,255,0.2) 80%, rgba(255,255,255,0) 100%);
}
.home-hero .container {
  position: relative;
  z-index: 2;
  padding-top: 180px;
  padding-bottom: 60px;
  width: 100%;
}
.hero-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
.hero-copy {
  flex: 1;
  max-width: 600px;
  text-align: left;
}
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(47,155,210,0.26);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(23,49,84,0.07);
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  margin-bottom: 24px;
}
.hero-title {
  color: var(--navy);
  font-size: clamp(52px, 6vw, 76px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -1.5px;
  margin-bottom: 24px;
}
.hero-title span { color: var(--blue-dark); }
.hero-subtitle {
  color: #334b62;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.7;
  max-width: 580px;
  margin-bottom: 32px;
}
.hero-support-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.hero-support-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(23,49,84,0.08);
  color: var(--navy);
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(23,49,84,0.05);
}
.hero-support-item span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(47,155,210,0.14);
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 900;
}
.hero-form-container {
  flex: 0 0 460px;
}

/* Premium homepage hero */
.home-page .home-hero {
  min-height: 620px;
  background: var(--home-bg);
  isolation: isolate;
}
.home-page .home-hero::before {
  content: "";
  position: absolute;
  inset: 34px 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.24), transparent);
  z-index: 1;
}
.home-page .home-hero-bg {
  top: 140px;
  right: max(24px, calc((100vw - 1320px) / 2));
  bottom: 54px;
  left: auto;
  width: min(49vw, 710px);
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 24px;
  background-image: url('../images/what we offer -open carrier image .jpg');
  background-size: cover;
  background-position: center right;
  opacity: 1;
  box-shadow: 0 34px 94px rgba(23,49,84,0.16);
  z-index: 0;
}
.home-page .home-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(23,49,84,0.02), rgba(23,49,84,0.20)),
    linear-gradient(90deg, rgba(245,251,255,0.18), rgba(255,255,255,0));
}
.home-page .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%);
  z-index: 1;
}
.home-page .home-hero .container {
  max-width: 1320px;
  padding-top: 180px;
  padding-bottom: 42px;
}
.home-page .hero-content-wrapper {
  gap: 42px;
}
.home-page .hero-copy {
  max-width: 720px;
}
.home-page .hero-eyebrow {
  background: rgba(237,248,253,0.92);
  border-color: rgba(47,155,210,0.24);
  box-shadow: 0 12px 28px rgba(47,155,210,0.08);
}
.home-page .hero-title {
  max-width: 760px;
  color: var(--navy);
  font-size: clamp(46px, 5.1vw, 68px);
  letter-spacing: 0;
  margin-bottom: 12px;
}
.home-page .hero-title span {
  display: block;
  margin-top: 8px;
  max-width: 540px;
  color: transparent;
  background: linear-gradient(90deg, var(--blue-dark), var(--navy));
  -webkit-background-clip: text;
  background-clip: text;
}
.home-page .hero-subtitle {
  max-width: 660px;
  color: #415970;
  font-size: 17px;
  margin-top: 4px;
  margin-bottom: 20px;
}
.home-page .hero-support-item {
  position: relative;
  min-height: 42px;
  justify-content: center;
  padding: 11px 22px;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 999px;
  box-shadow: 0 12px 28px rgba(23,49,84,0.06);
  color: var(--navy);
  font-size: 12.5px;
  font-weight: 850;
  line-height: 1.35;
}
.home-page .hero-support-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 700px;
  margin: 0 0 4px;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.home-page .hero-support-item:not(:last-child)::after {
  display: none;
}
.home-page .hero-support-item span {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  background: linear-gradient(145deg, #effaff, #dff5ff);
  color: var(--blue-dark);
  box-shadow: 0 8px 18px rgba(79,195,247,0.22);
}
.home-page .hero-copy > .btn-outline {
  min-height: 48px;
  margin-top: 18px !important;
  padding: 13px 26px;
  background: linear-gradient(90deg, var(--navy), var(--navy-mid));
  border-color: var(--navy);
  color: var(--white);
  box-shadow: 0 18px 42px rgba(23,49,84,0.22);
}
.home-page .hero-copy > .btn-outline:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 52px rgba(23,49,84,0.26);
}
.home-page .hero-form-container {
  flex: 0 0 410px;
  align-self: center;
}
.home-page .quote-form-box {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(47,155,210,0.20);
  background: rgba(255,255,255,0.94);
  box-shadow: 0 30px 86px rgba(23,49,84,0.16);
  padding: 28px 30px;
}
.home-page .quote-form-box .form-title {
  margin-bottom: 18px;
}
.home-page .form-row {
  gap: 12px;
  margin-bottom: 12px;
}
.home-page .fg {
  gap: 5px;
}
.home-page .fg input,
.home-page .fg select {
  min-height: 46px;
  padding: 11px 14px;
}
.home-page .form-submit-row {
  margin-top: 18px;
}
.home-page .quote-form-box::before {
  content: "";
  position: absolute;
  left: 30px;
  right: 30px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18));
}
.home-page .quote-form-box .form-title {
  justify-content: flex-start !important;
  color: var(--navy);
}
.home-page .fg input,
.home-page .fg select {
  background: #f8fcff;
  border-color: rgba(23,49,84,0.11);
}

/* ===== BUTTONS ===== */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 26px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  transition: var(--transition);
  white-space: nowrap;
}
.btn-primary {
  background: var(--navy);
  color: var(--white);
}
.btn-primary:hover { background: var(--navy-mid); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(23,49,84,0.18); }
.btn-dark {
  background: var(--navy);
  color: var(--white);
}
.btn-dark:hover { background: var(--navy-mid); transform: translateY(-2px); }
.btn-outline {
  background: rgba(255,255,255,0.86);
  color: var(--navy);
  border: 1.5px solid rgba(23,49,84,0.16);
}
.btn-outline:hover { border-color: var(--blue); color: var(--blue-dark); background: var(--white); }
.btn-outline-dark {
  background: transparent;
  color: var(--navy);
  border: 1.5px solid var(--navy);
}
.btn-outline-dark:hover { background: var(--navy); color: var(--white); }
.btn-lg { padding: 15px 36px; font-size: 15px; }
.btn svg { width: 16px; height: 16px; flex-shrink: 0; }

/* ===== LAYOUT ===== */
.container { max-width: 1200px; margin: 0 auto; padding: 0 var(--container-pad); }
.section { padding: var(--section-pad) 0; }
.section-dark { background: linear-gradient(180deg, #f8fbfd 0%, #edf8fd 100%); }
.section-gray { background: var(--gray-bg); }

/* ===== TOP BAR ===== */
#top-bar {
  background: var(--sky-soft);
  padding: 8px 0;
  font-size: 12px;
  color: var(--text-mid);
}
#top-bar .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#top-bar a { color: var(--text-mid); transition: color 0.2s; }
#top-bar a:hover { color: var(--blue); }
#top-bar .phone { color: var(--blue); font-weight: 700; }

/* ===== MAIN NAV ===== */
#main-nav {
  background: rgba(255, 255, 255, 0.75);
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(24px) saturate(180%);
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.03);
  transition: box-shadow 0.3s, background 0.3s;
}
#main-nav::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.30), transparent);
  pointer-events: none;
}
#main-nav.scrolled { box-shadow: 0 10px 35px rgba(23,49,84,0.10); }
#main-nav > .container { max-width: 1320px; }

.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--nav-height);
  gap: 12px;
}
.nav-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  min-height: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(237,248,253,0.86));
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 8px 22px rgba(23,49,84,0.07);
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 1px;
  color: var(--navy);
  transition: var(--transition);
}
.nav-logo:hover { transform: translateY(-1px); box-shadow: 0 14px 30px rgba(23,49,84,0.11); }
.nav-logo .accent { color: var(--blue); }
.nav-logo img {
  height: 42px !important;
  width: auto;
  transform: translateY(5px);
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.nav-links > li { position: relative; }
.nav-links > li > a {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #42566b;
  font-size: 12.5px;
  font-weight: 700;
  padding: 10px 8px;
  border-radius: 10px;
  transition: var(--transition);
  white-space: nowrap;
  line-height: 1;
}
.nav-links > li > a:hover,
.nav-links > li > a.active { background: rgba(47,155,210,0.10); color: var(--blue-dark); }
.nav-links .caret { font-size: 9px; transition: transform 0.2s; }
.nav-links > li:hover .caret { transform: rotate(180deg); }

/* Dropdown */
.nav-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background: var(--white);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  min-width: 200px;
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: var(--transition);
  border-top: 3px solid var(--blue);
}
.nav-links > li:hover .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.nav-dropdown a {
  display: block;
  padding: 10px 18px;
  font-size: 13.5px;
  color: var(--text-mid);
  transition: var(--transition);
}
.nav-dropdown a:hover { background: var(--gray-bg); color: var(--navy); padding-left: 24px; }

/* Flexible-content section submenus. WordPress supplies the .sub-menu
   markup; these rules intentionally match the existing dropdown treatment. */
.nav-links > li > .sub-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  z-index: 2;
  min-width: 230px;
  max-width: 320px;
  max-height: min(70vh, 520px);
  overflow-y: auto;
  margin: 0;
  padding: 8px 0;
  list-style: none;
  background: var(--white);
  border-top: 3px solid var(--blue);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: var(--transition);
}
.nav-links > li:hover > .sub-menu,
.nav-links > li:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.nav-links > li > .sub-menu a {
  display: block;
  padding: 10px 18px;
  color: var(--text-mid);
  font-size: 13px;
  line-height: 1.35;
  transition: var(--transition);
}
.nav-links > li > .sub-menu a:hover,
.nav-links > li > .sub-menu a:focus-visible { background: var(--gray-bg); color: var(--navy); padding-left: 24px; }

/* Both native anchor navigation and JS scrolling clear the fixed header. */
.incline-section-anchor { scroll-margin-top: calc(var(--nav-height) + 92px); }
@media (max-width: 640px) {
  .incline-section-anchor { scroll-margin-top: calc(var(--nav-height) + 300px); }
}

/* Help Centre live chat: the provider's default 83vh panel exceeds shorter
   desktop viewports once its agency-branding footer is included, placing its
   header above the visible screen. Constrain the host custom properties so
   the complete conversation panel remains usable at every viewport size. */
chat-widget {
  --chat-widget-height: min(72dvh, 520px);
  --chat-widget-max-height: 520px;
  --chat-widget-branding-max-height: 550px;
}
@media (max-width: 640px) {
  chat-widget {
    --chat-widget-height: min(68dvh, 500px);
    --chat-widget-max-height: 500px;
    --chat-widget-branding-max-height: 530px;
  }
}

.nav-cta { margin-left: 0; padding: 13px 22px; border-radius: 999px; font-size: 13px; }

/* Mobile toggle */
.nav-toggle { display: none; flex-direction: column; gap: 5px; padding: 6px; }
.nav-toggle span { display: block; width: 24px; height: 2px; background: var(--navy); border-radius: 2px; transition: var(--transition); }

/* ===== STICKY SEARCH BAR ===== */
#sticky-search {
  background: var(--white);
  border-top: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 16px 30px rgba(23,49,84,0.08);
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.08s ease, opacity 0.08s ease;
}

/* ===== PREMIUM QUOTE HERO (redesign) ===== */
.quote-hero {
  position: relative;
  overflow: visible;
  padding: calc(var(--section-pad) + 10px) 0;
  background: linear-gradient(180deg, rgba(247,250,252,1) 0%, rgba(255,255,255,1) 100%);
}
.quote-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(800px 300px at 10% 20%, rgba(47,155,210,0.06), transparent 20%), linear-gradient(180deg, rgba(255,255,255,0.65), rgba(255,255,255,0));
  pointer-events: none;
  z-index: 0;
}
.quote-hero .quote-hero-bg-panel { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.quote-hero .quote-hero-bg-panel .quote-hero-img {
  position: absolute;
  right: -40px;
  bottom: -10px;
  width: 520px;
  max-width: 48%;
  opacity: 0.98;
  transform: translateZ(0);
  filter: drop-shadow(0 30px 50px rgba(23,49,84,0.18));
}
.quote-hero .container { position: relative; z-index: 2; }
.quote-redesign-grid {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: var(--card-gap);
  align-items: start;
}
.quote-redesign-main { padding: 28px 0; }
.quote-hero-title {
  font-size: clamp(34px, 4.6vw, 48px);
  color: var(--navy-deep);
  font-weight: 800;
  line-height: 1.06;
  margin: 12px 0 20px;
}
.quote-hero-title span { color: var(--blue-dark); display: inline-block; }
.quote-redesign-form {
  background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(250,251,253,0.98));
  border-radius: var(--radius-lg);
  padding: 20px;
  box-shadow: var(--shadow-md);
  border: 1px solid rgba(23,49,84,0.06);
}
.quote-redesign-form .quote-form-header span { font-size: 12px; color: var(--text-muted); font-weight:700; letter-spacing:1px; }
.quote-redesign-form .quote-form-header h2 { margin-top:6px; font-size:20px; color:var(--navy); }
.quote-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 12px; }
.quote-redesign-form .fg label { display:block; font-size:12px; color:var(--text-mid); margin-bottom:6px; }
.quote-redesign-form .fg input,
.quote-redesign-form .fg select,
.quote-redesign-form .fg input[type="date"] {
  width:100%; padding:10px 12px; border-radius:10px; border:1px solid rgba(23,49,84,0.06); background: #fff; color:var(--text-dark);
}
.form-submit-row { display:flex; align-items:center; gap:12px; justify-content:space-between; margin-top:8px; }
.form-submit { background: linear-gradient(90deg,var(--blue) 0%, var(--blue-dark) 100%); color: #fff; padding:12px 18px; border-radius:10px; box-shadow: 0 12px 28px rgba(47,155,210,0.16); }
.form-note { color:var(--text-muted); font-size:13px; }

.quote-redesign-side { padding: 18px 0; }
.quote-image-card { background: linear-gradient(180deg, #fff, #f9fbfd); border-radius:12px; padding:12px; box-shadow: var(--shadow-sm); border:1px solid rgba(23,49,84,0.04); }
.quote-image-card img { border-radius:8px; }
.quote-image-badge { margin-top:10px; display:flex; flex-direction:column; gap:4px; padding:10px; background: linear-gradient(90deg, rgba(47,155,210,0.08), rgba(255,255,255,0.5)); border-radius:8px; }
.quote-image-badge strong { color:var(--navy); }
.quote-side-stats { display:flex; gap:12px; margin-top:14px; }
.quote-side-stats > div { background:rgba(255,255,255,0.9); padding:12px; border-radius:10px; text-align:center; flex:1; border:1px solid rgba(23,49,84,0.04); }
.quote-side-stats strong { font-size:20px; display:block; color:var(--navy-deep); }

@media (max-width: 900px) {
  .quote-redesign-grid { grid-template-columns: 1fr; }
  .quote-hero .quote-hero-bg-panel .quote-hero-img { position: relative; right: 0; bottom: 0; width: 100%; max-width: 420px; opacity: 0.9; margin: 18px auto 0; display:block; }
  .quote-field-grid { grid-template-columns: 1fr; }
  .quote-redesign-side { order: 2; }
}

@media (max-width: 768px) {
  .about-page {
    --section-pad: 44px;
    --header-gap: 24px;
  }
  .about-page section:not(.hero-split),
  .about-page .section {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }
  .about-page .section-header {
    margin-bottom: 24px !important;
  }
  .about-page #about-story {
    padding-left: 20px !important;
    padding-right: 20px !important;
    gap: 22px !important;
  }
  .about-page .cta-banner {
    padding-top: 44px !important;
    padding-bottom: 50px !important;
  }
}

/* Home routes CTA needs a rounded-rectangle shape, not the global pill button. */
body.home-page .routes-premium-section .routes-card .routes-view-btn.btn {
  width: min(430px, 100%) !important;
  min-width: 0 !important;
  min-height: 54px !important;
  padding: 14px 28px !important;
  border-radius: 999px !important;
  background: var(--blue) !important;
  color: #ffffff !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}

body.home-page .routes-premium-section .routes-card .routes-view-btn.btn:hover {
  border-radius: 999px !important;
  background: var(--blue-dark) !important;
  color: #ffffff !important;
}

@media (max-width: 640px) {
  body.home-page .routes-premium-section .routes-card .routes-view-btn.btn {
    width: 100% !important;
    min-height: 52px !important;
    font-size: 15px !important;
  }
}

/* Fresh home routes layout */
body.home-page .routes-premium-section .routes-showcase {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
  padding: 10px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f5fbff 100%) !important;
  box-shadow: 0 18px 46px rgba(23,49,84,0.08) !important;
}

body.home-page .routes-premium-section .routes-copy-panel {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  min-height: 340px !important;
  padding: 34px !important;
  border-radius: 12px !important;
  background:
    linear-gradient(90deg, rgba(0,21,56,0.88), rgba(0,21,56,0.58)),
    url("../images/Home banner.png") center/cover no-repeat !important;
  border: 1px solid rgba(47,155,210,0.14) !important;
}

body.home-page .routes-premium-section .routes-copy-panel .section-title,
body.home-page .routes-premium-section .routes-copy-panel .section-sub {
  text-align: left !important;
}

body.home-page .routes-premium-section .routes-copy-panel .eyebrow,
body.home-page .routes-premium-section .routes-copy-panel .section-title,
body.home-page .routes-premium-section .routes-copy-panel .section-sub {
  color: #ffffff !important;
}

body.home-page .routes-premium-section .routes-copy-panel .eyebrow {
  opacity: 0.9 !important;
}

body.home-page .routes-premium-section .routes-copy-panel .section-title {
  margin: 10px 0 12px !important;
}

body.home-page .routes-premium-section .routes-copy-panel .section-sub {
  max-width: 430px !important;
  margin: 0 0 26px !important;
}

body.home-page .routes-premium-section .routes-board {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  min-height: 340px !important;
}

body.home-page .routes-premium-section .route-tile {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 12px !important;
  min-height: 150px !important;
  padding: 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.17) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.06) !important;
}

body.home-page .routes-premium-section .route-tile::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--blue), rgba(79,195,247,0.28)) !important;
}

body.home-page .routes-premium-section .route-tile-wide {
  background: linear-gradient(135deg, #ffffff 0%, #eef9ff 100%) !important;
}

body.home-page .routes-premium-section .route-cities {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  color: var(--navy) !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

body.home-page .routes-premium-section .route-tile small {
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 650 !important;
}

body.home-page .routes-premium-section .route-line-arrow {
  margin: 0 !important;
  color: var(--blue-dark) !important;
  font-size: 23px !important;
}

body.home-page .routes-premium-section .routes-copy-panel .routes-view-btn.btn {
  width: auto !important;
  min-width: 0 !important;
  min-height: 50px !important;
  padding: 14px 24px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
}

@media (max-width: 900px) {
  body.home-page .routes-premium-section .routes-showcase {
    grid-template-columns: 1fr !important;
  }

  body.home-page .routes-premium-section .routes-copy-panel {
    min-height: auto !important;
  }
}

@media (max-width: 640px) {
  body.home-page .routes-premium-section .routes-showcase {
    padding: 8px !important;
    border-radius: 14px !important;
  }

  body.home-page .routes-premium-section .routes-copy-panel {
    padding: 24px 20px !important;
  }

  body.home-page .routes-premium-section .routes-board {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }

  body.home-page .routes-premium-section .route-tile {
    min-height: 128px !important;
    padding: 22px 20px !important;
  }

  body.home-page .routes-premium-section .route-cities {
    font-size: 19px !important;
  }

  body.home-page .routes-premium-section .routes-copy-panel .routes-view-btn.btn {
    width: 100% !important;
  }
}

#sticky-search.visible {
  max-height: 82px;
  opacity: 1;
}
/* Shared step markup (template-parts/quick-quote-form.php) used by the hero
   banner form; the sticky bar below is its own compact single-row form. */
.quote-form-step[hidden] { display: none !important; }
.quick-quote-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.quote-form-error { color: #c0392b; font-size: 13px; margin: 8px 0 0; }
.quote-form-success { text-align: center; padding: 12px 0; color: var(--navy); font-weight: 700; }
.sticky-inner {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
}
/* .sticky-quote-form wraps the label/fields/button only so JS can bind one
   submit handler — it must stay visually transparent so those three stay
   direct flex items of .sticky-inner (same single-row layout as the
   original flat markup), otherwise the form's own block flow stacks them
   and the button wraps below the row, clipped by #sticky-search's height. */
.sticky-inner .sticky-quote-form {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 1;
}
.sticky-label {
  font-size: 11px;
  font-weight: 800;
  color: var(--blue);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  white-space: nowrap;
}
.sticky-fields { display: flex; gap: 8px; flex: 1; }
.sticky-fields input,
.sticky-fields select {
  flex: 1;
  background: var(--gray-bg);
  border: 1px solid var(--gray-light);
  color: var(--text-dark);
  min-width: 0;
  padding: 10px 14px;
  border-radius: 9px;
  font-size: 13px;
  outline: none;
  transition: border-color 0.2s;
}
.sticky-fields input:focus,
.sticky-fields select:focus { border-color: var(--blue); }
.sticky-fields input::placeholder { color: var(--text-muted); }
.sticky-fields select option { background: var(--white); color: var(--text-dark); }
.sticky-btn {
  background: var(--navy);
  color: var(--white);
  padding: 11px 22px;
  border-radius: 9px;
  font-weight: 800;
  font-size: 13px;
  transition: var(--transition);
  white-space: nowrap;
}
.sticky-btn:hover { background: var(--navy-mid); }

/* ===== HERO QUOTE FORM ===== */
.quote-form-box {
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(255,255,255,0.6);
  border-radius: var(--radius-lg);
  padding: 36px 40px;
  backdrop-filter: blur(12px);
  width: 100%;
  box-shadow: 0 24px 60px rgba(23,49,84,0.18);
}
.quote-form-box .form-title {
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.quote-form-box .form-title::before {
  content: '';
  display: block;
  width: 4px; height: 18px;
  background: var(--blue);
  border-radius: 2px;
}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.form-row.three { grid-template-columns: 1fr 1fr 1fr; }
/* Optional CTA below a Card Grid — matches the original's inline-styled
   "Shipping for your dealership?" banner and "View All Services" link. */
.grid-cta-simple { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; margin-top: 32px; }
.grid-cta-banner {
  margin-top: 28px;
  padding: 28px;
  border-radius: var(--radius-lg);
  background: var(--white);
  border: 1px solid rgba(79,195,247,0.25);
  box-shadow: var(--shadow-sm);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.grid-cta-banner h3 { font-size: 20px; font-weight: 800; color: var(--navy); margin-bottom: 6px; }
.grid-cta-banner p { font-size: 14px; color: var(--text-mid); line-height: 1.7; margin: 0; }

.fg { display: flex; flex-direction: column; gap: 7px; }
.fg label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: #5a7898; }
/* Same CF7 <p><span class="wpcf7-form-control-wrap"> unwrap as .sticky-fields above. */
.fg p,
.fg .wpcf7-form-control-wrap { display: contents; }
.fg input, .fg select {
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(23,49,84,0.1);
  color: var(--text-dark);
  min-height: 52px;
  padding: 13px 16px;
  border-radius: 10px;
  font-size: 14.5px;
  outline: none;
  transition: border-color 0.2s, background 0.2s;
}
.fg input:focus, .fg select:focus { border-color: var(--blue); background: var(--white); box-shadow: 0 0 0 3px rgba(47,155,210,0.10); }
.fg input::placeholder { color: var(--text-muted); }
.fg select option { background: var(--white); color: var(--text-dark); }
.form-submit-row { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 24px; }
.form-submit-row p { display: contents; }
.form-submit-row br { display: none; }
.form-note { font-size: 12px; color: var(--text-muted); }

/* ===== TRUST STRIP (MARQUEE) ===== */
.trust-strip {
  background: var(--white);
  border-bottom: 1px solid rgba(23,49,84,0.04);
  padding: 32px 0;
  overflow: hidden;
  position: relative;
}
/* Fade edges for a premium seamless look */
.trust-strip::before, .trust-strip::after {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  width: 150px;
  z-index: 2;
  pointer-events: none;
}
.trust-strip::before {
  left: 0;
  background: linear-gradient(to right, var(--white), transparent);
}
.trust-strip::after {
  right: 0;
  background: linear-gradient(to left, var(--white), transparent);
}

.marquee-wrapper {
  display: flex;
  overflow: hidden;
  user-select: none;
  width: 100%;
}

.marquee-content {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  min-width: 100%;
  gap: 48px;
  animation: scrollMarquee 35s linear infinite;
  padding-right: 48px; /* to gap properly with the cloned items */
}

@keyframes scrollMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.trust-item {
  display: inline-flex;
  align-items: center;
  gap: 48px;
  color: var(--navy);
  font-size: 15px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  white-space: nowrap;
  transition: color 0.3s ease;
}
.trust-item::after {
  content: "\2022";
  color: var(--blue);
  font-size: 20px;
  opacity: 0.6;
}
.trust-item:hover {
  color: var(--blue);
}

/* Premium homepage trust strip */
.home-page .trust-strip {
  padding: 24px 0;
  border-top: 1px solid rgba(47,155,210,0.10);
  border-bottom: 1px solid rgba(47,155,210,0.10);
  background: var(--home-bg);
}
.home-page .trust-strip::before,
.home-page .trust-strip::after {
  width: 140px;
  z-index: 2;
}
.home-page .trust-strip::before {
  background: linear-gradient(90deg, var(--home-bg), rgba(245,251,255,0));
}
.home-page .trust-strip::after {
  background: linear-gradient(270deg, var(--home-bg), rgba(245,251,255,0));
}
.home-page .marquee-content {
  gap: 18px;
  padding-right: 18px;
}
.home-page .trust-item {
  min-height: 54px;
  gap: 12px;
  padding: 14px 22px;
  border: none;
  border-radius: 999px;
  background: rgba(255,255,255,0.82);
  box-shadow: 0 14px 34px rgba(23,49,84,0.07);
  color: var(--navy);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 1.4px;
}
.home-page .trust-item::after {
  display: none;
}
.home-page .trust-item:hover {
  color: var(--blue-dark);
  border-color: rgba(79,195,247,0.36);
  box-shadow: 0 18px 42px rgba(23,49,84,0.10);
}
.trust-icon {
  display: flex; align-items: center; justify-content: center;
  width: 24px; height: 24px;
  border-radius: 50%;
  background: var(--blue);
  color: var(--white);
  font-size: 12px; font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(47,155,210,0.25);
}

/* ===== STATS BAR ===== */
.stats-bar { background: linear-gradient(180deg, var(--cream) 0%, #f3f9fc 100%); border-bottom: 1px solid rgba(23,49,84,0.08); }
.stats-bar .container { display: grid; grid-template-columns: repeat(4,1fr); }
.stat { padding: 36px 20px; text-align: center; border-right: 1px solid rgba(23,49,84,0.08); }
.stat:last-child { border-right: none; }
.stat-num { font-size: 34px; font-weight: 800; color: var(--navy); line-height: 1; letter-spacing: -0.5px; }
.stat-lbl { font-size: 11px; font-weight: 700; color: var(--blue-dark); margin-top: 8px; text-transform: uppercase; letter-spacing: 1.2px; }

/* Premium homepage stats */
.home-page .stats-bar {
  padding: 26px 0 30px;
  border: none;
  background: var(--home-bg);
}
.home-page .stats-bar .container {
  max-width: 1320px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding: 0 40px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 18px;
  background: rgba(255,255,255,0.82);
  box-shadow: 0 24px 68px rgba(23,49,84,0.10);
  overflow: hidden;
}
.home-page .stat {
  position: relative;
  min-height: 122px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px 22px;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: hidden;
}
.home-page .stat:not(:last-child) {
  border-right: 1px solid rgba(47,155,210,0.14);
}
.home-page .stat::before {
  content: "";
  position: absolute;
  top: 22px;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4fc3f7;
  box-shadow: 0 0 0 7px rgba(79,195,247,0.12);
  transform: translateX(-50%);
}
.home-page .stat-num {
  margin-top: 20px;
  color: var(--navy);
  font-size: clamp(28px, 2.8vw, 40px);
  font-weight: 900;
  letter-spacing: 0;
}
.home-page .stat-lbl {
  margin-top: 8px;
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

/* ===== ICON BADGES (replaces emoji icons across cards) ===== */
.icon-badge {
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 20px;
  background: transparent;
  border: none;
}
.icon-badge svg { 
  width: 54px; height: 54px; 
  stroke: var(--blue); fill: none; stroke-width: 1.5; 
  filter: drop-shadow(0px 8px 12px rgba(47,155,210,0.25));
}
.icon-badge.sm { margin-bottom: 12px; }
.icon-badge.sm svg { width: 42px; height: 42px; }
.icon-badge.left { margin: 0 0 16px; justify-content: flex-start; }

.about-page .services-grid .icon-badge.left,
body:not(.home-page) .services-grid .icon-badge.left {
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
}

/* ===== SERVICE CARDS ===== */
/* Auto-fit instead of a hard repeat(3,1fr): the card_grid partial reuses this
   single class for every card count from the original site's several
   bespoke grids (Why-Choose/What-We-Offer's 3-4, Vehicles-We-Ship/Coverage's
   6, Pricing/Dealer-ops' 4/6) — auto-fit lands on 3 columns at the original
   1200px container width (matching the old fixed-3 default) and reflows
   sensibly for other counts instead of leaving orphaned grid cells. */
.services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--card-gap); }
.services-grid-4 { grid-template-columns: repeat(4,1fr); }
.services-grid-2 { grid-template-columns: repeat(2,1fr); }
.services-grid-3 { grid-template-columns: repeat(3,1fr); }
.services-grid-6 { grid-template-columns: repeat(6,1fr); }
.svc-card {
  background: var(--white);
  border: 1px solid var(--gray-light);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: var(--transition);
  cursor: pointer;
  box-shadow: 0 8px 26px rgba(23,49,84,0.04);
}
.svc-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: rgba(47,155,210,0.45); }
.svc-card-img { width: 100%; height: 190px; object-fit: cover; background: var(--navy); }
.svc-card-img-placeholder { width: 100%; height: 190px; background: linear-gradient(135deg,var(--navy),var(--navy-mid)); display: flex; align-items: center; justify-content: center; font-size: 44px; }
.svc-card-body { padding: var(--space-md) var(--space-md); }
.svc-card-body h3 { font-size: 16px; font-weight: 800; color: var(--navy); margin-bottom: 8px; }
.svc-card-body p { font-size: 13.5px; color: var(--text-mid); line-height: 1.65; }
.svc-link { display: inline-flex; align-items: center; gap: 5px; margin-top: 12px; color: var(--blue); font-size: 13px; font-weight: 700; transition: gap 0.2s; }
.svc-link:hover { gap: 9px; }

/* ===== WHAT WE OFFER PREMIUM ===== */
.offer-premium-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 10%, rgba(47,155,210,0.13), transparent 28%),
    linear-gradient(180deg, #f7fbfe 0%, var(--white) 54%, #f2f9fd 100%);
}
.offer-premium-section::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.28), transparent);
}
.offer-premium-section .container {
  position: relative;
  z-index: 1;
}
.offer-premium-section .services-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.offer-premium-section .svc-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  border: 1px solid rgba(47,155,210,0.16);
  background: rgba(255,255,255,0.88);
  box-shadow: 0 18px 48px rgba(23,49,84,0.08);
}
.offer-premium-section .svc-card::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, #4fc3f7, rgba(47,155,210,0.18));
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: var(--transition);
}
.offer-premium-section .svc-card:hover {
  transform: translateY(-7px);
  border-color: rgba(79,195,247,0.46);
  box-shadow: 0 24px 62px rgba(23,49,84,0.13);
}
.offer-premium-section .svc-card:hover::after {
  opacity: 1;
  transform: scaleX(1);
}
.offer-premium-section .svc-card-img {
  flex: 0 0 auto;
  height: 210px;
  padding: 10px;
  object-fit: cover;
  border-radius: 14px 14px 0 0;
  background: linear-gradient(180deg, #eaf7fd, #ffffff);
}
.offer-premium-section .svc-card-body {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 24px 22px 26px;
}
.offer-premium-section .svc-card-body::before {
  content: "";
  position: absolute;
  top: -21px;
  left: 22px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid rgba(79,195,247,0.34);
  box-shadow: 0 10px 22px rgba(47,155,210,0.13);
}
.offer-premium-section .svc-card-body::after {
  content: "";
  position: absolute;
  top: -7px;
  left: 36px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #4fc3f7;
  box-shadow: 0 0 0 7px rgba(79,195,247,0.14);
}
.offer-premium-section .svc-card-body h3 {
  color: var(--navy);
  font-size: 18px;
  line-height: 1.24;
  margin: 8px 0 10px;
}
.offer-premium-section .svc-card-body p {
  min-height: auto;
  color: #5f7589;
  font-size: 13.5px;
  line-height: 1.7;
}
.offer-premium-section .svc-link {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 16px;
  color: var(--blue-dark);
  font-size: 13px;
  font-weight: 900;
}
.offer-premium-section .btn-dark {
  border-radius: 999px;
  box-shadow: 0 14px 34px rgba(23,49,84,0.18);
}

/* ===== WHY CHOOSE PREMIUM ===== */
.why-premium-section {
  position: relative;
  overflow: hidden;
  scroll-margin-top: calc(var(--nav-height) + 86px);
  padding-top: calc(var(--section-pad) + 56px);
  background:
    radial-gradient(circle at 16% 12%, rgba(47,155,210,0.14), transparent 30%),
    linear-gradient(180deg, var(--white) 0%, #f3f9fc 58%, var(--cream) 100%);
}
.why-premium-section::before {
  content: "";
  position: absolute;
  inset: 34px 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.30), transparent);
}
.why-premium-section .container {
  position: relative;
  z-index: 1;
}
.why-premium-shell {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: stretch;
  padding: 14px;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background: rgba(255,255,255,0.72);
  box-shadow: 0 28px 76px rgba(23,49,84,0.12);
}
.why-premium-lead {
  position: relative;
  overflow: hidden;
  padding: 0;
  border-radius: 14px;
  color: var(--navy);
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, 1fr);
  align-items: stretch;
  background: #fff;
  border: 1px solid rgba(47,155,210,0.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.86), 0 16px 38px rgba(23,49,84,0.07);
}
.why-premium-media {
  position: relative;
  overflow: hidden;
  background: #eaf3f9;
}
.why-premium-media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 330px;
  object-fit: cover;
  object-position: center;
}
.why-premium-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px 44px;
  background: linear-gradient(140deg, #ffffff 0%, #f4fafe 100%);
}
.why-premium-kicker {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  min-height: 30px;
  padding: 7px 12px;
  border: 1px solid rgba(47,155,210,0.22);
  border-radius: 999px;
  background: rgba(237,248,253,0.76);
  color: var(--blue-dark);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}
.why-premium-lead h3 {
  position: relative;
  max-width: 100%;
  margin: 18px 0 12px;
  color: var(--navy);
  font-size: clamp(28px, 2.9vw, 40px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -0.5px;
}
.why-premium-lead p {
  position: relative;
  max-width: 460px;
  color: var(--text-mid);
  font-size: 15px;
  line-height: 1.75;
}
.why-premium-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.why-premium-card {
  position: relative;
  min-height: 210px;
  padding: 26px 22px;
  border: 1px solid rgba(23,49,84,0.08);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,255,255,0.84)),
    linear-gradient(135deg, rgba(47,155,210,0.08), transparent);
  box-shadow: 0 12px 32px rgba(23,49,84,0.06);
  transition: var(--transition);
}
.why-premium-card::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, var(--blue), rgba(47,155,210,0.18));
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: var(--transition);
}
.why-premium-card:hover {
  transform: translateY(-5px);
  border-color: rgba(47,155,210,0.34);
  box-shadow: 0 18px 44px rgba(23,49,84,0.11);
}
.why-premium-card:hover::after {
  opacity: 1;
  transform: scaleX(1);
}
.why-premium-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 18px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.why-premium-icon svg {
  width: 46px;
  height: 46px;
  fill: none;
  stroke: #4fc3f7;
  stroke-width: 1.5;
  filter: drop-shadow(0 8px 12px rgba(79,195,247,0.24));
}
.why-premium-card h3 {
  color: var(--navy);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.25;
  margin-bottom: 10px;
}
.why-premium-card p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.68;
}

/* ===== DEALER & BUSINESS CTA ===== */
.dealers-cta-section { background: linear-gradient(180deg, #f4f8fd 0%, #edf8fd 100%); }
.dealers-cta-panel {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 42px;
  align-items: center;
  background:
    radial-gradient(circle at 92% 18%, rgba(79,195,247,0.14), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,253,255,0.94));
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 18px;
  padding: 42px;
  box-shadow: 0 28px 78px rgba(23,49,84,0.11);
}
.dealers-cta-panel::before {
  content: "";
  position: absolute;
  left: 34px;
  right: 34px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18));
}
.dealers-cta-copy,
.dealers-cta-cards { position: relative; z-index: 1; }
.dealers-cta-copy h2 {
  color: var(--navy);
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.6px;
  margin-bottom: 18px;
}
.dealers-cta-copy p {
  color: var(--text-mid);
  font-size: 17px;
  line-height: 1.7;
  max-width: 620px;
  margin-bottom: 28px;
}
.dealers-cta-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.dealers-cta-cards {
  display: grid;
  gap: 14px;
}
.dealers-mini-card {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 16px;
  align-items: center;
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 14px;
  padding: 20px;
}
.dealers-mini-card span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #edf8fd;
  border: 1px solid rgba(79,195,247,0.28);
  color: var(--blue-dark);
  font-size: 13px;
  font-weight: 900;
}
.dealers-mini-card h3 {
  color: var(--navy);
  font-size: 16px;
  font-weight: 850;
  margin-bottom: 5px;
}
.dealers-mini-card p {
  color: var(--text-mid);
  font-size: 13.5px;
  line-height: 1.6;
  margin: 0;
}

/* ===== STEPS ===== */
.steps-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--card-gap); position: relative; }
.steps-grid-4 { grid-template-columns: repeat(4,1fr); }
.steps-grid-5 { grid-template-columns: repeat(5,1fr); }
.steps-grid::before {
  content: '';
  position: absolute;
  top: 40px;
  left: 10%;
  right: 10%;
  height: 4px;
  background: linear-gradient(90deg, rgba(47,155,210,0) 0%, rgba(47,155,210,0.6) 20%, rgba(47,155,210,0.6) 80%, rgba(47,155,210,0) 100%);
  border-radius: 4px;
  z-index: 0;
}
.step-card { text-align: center; padding: 0 16px; position: relative; transition: transform 0.3s ease; }
.step-card:hover { transform: translateY(-8px); }
.step-num {
  width: 72px; height: 72px;
  border-radius: 50%;
  border: 1px solid rgba(47,155,210,0.4);
  background: linear-gradient(135deg, var(--white) 0%, #f0f8fb 100%);
  display: flex; align-items: center; justify-content: center;
  font-size: 26px; font-weight: 900; color: var(--blue-dark);
  margin: 0 auto 24px;
  position: relative; z-index: 2;
  box-shadow: 0 12px 30px rgba(47,155,210,0.15), inset 0 2px 4px rgba(255,255,255,1);
  transition: all 0.3s ease;
}
.step-card:hover .step-num {
  box-shadow: 0 16px 40px rgba(47,155,210,0.3), inset 0 2px 4px rgba(255,255,255,1);
  color: var(--blue);
  border-color: var(--blue);
  transform: scale(1.05);
}
.step-card h3 { font-size: 19px; font-weight: 900; color: var(--navy); margin-bottom: 12px; letter-spacing: -0.3px; }
.step-card p { font-size: 14.5px; color: var(--text-mid); line-height: 1.7; max-width: 260px; margin: 0 auto; }

/* ===== HOW IT WORKS PREMIUM ===== */
.process-premium-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 14% 16%, rgba(79,195,247,0.16), transparent 28%),
    radial-gradient(circle at 88% 78%, rgba(47,155,210,0.12), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f3fbff 58%, #ffffff 100%);
}
.process-premium-section::before {
  display: none;
}
.process-premium-section .container {
  position: relative;
  z-index: 1;
}
.process-premium-section .steps-grid {
  gap: 18px;
  align-items: stretch;
}
.process-premium-section .steps-grid::before {
  top: 54px;
  left: 8%;
  right: 8%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(79,195,247,0.72), transparent);
}
.process-premium-section .step-card {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  align-items: center;
  padding: 28px 22px 30px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 14px;
  background: rgba(255,255,255,0.88);
  box-shadow: 0 18px 48px rgba(23,49,84,0.08);
}
.process-premium-section .step-card::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, #4fc3f7, rgba(47,155,210,0.16));
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: var(--transition);
}
.process-premium-section .step-card:hover {
  transform: translateY(-7px);
  border-color: rgba(79,195,247,0.46);
  box-shadow: 0 24px 62px rgba(23,49,84,0.13);
}
.process-premium-section .step-card:hover::after {
  opacity: 1;
  transform: scaleX(1);
}
.process-premium-section .step-num {
  width: 74px;
  height: 74px;
  margin-bottom: 24px;
  border: 1px solid rgba(79,195,247,0.38);
  background: linear-gradient(145deg, #ffffff, #eefaff);
  color: var(--blue-dark);
  box-shadow: 0 14px 32px rgba(47,155,210,0.14), inset 0 1px 0 rgba(255,255,255,0.9);
}
.process-premium-section .step-card h3 {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  color: var(--navy);
}
.process-premium-section .step-card p {
  color: #5f7589;
  font-size: 14px;
  line-height: 1.72;
}

/* ===== POPULAR ROUTES PREMIUM ===== */
.routes-premium-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(79,195,247,0.15), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f5fbff 52%, #ffffff 100%);
}
.routes-premium-section::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.28), transparent);
}
.routes-premium-section .container {
  position: relative;
  z-index: 1;
}
.routes-premium-section .services-grid {
  gap: 18px;
  align-items: stretch;
}
.routes-premium-section .svc-card {
  position: relative;
  display: flex;
  min-height: 236px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 34px 22px 30px !important;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,253,255,0.94));
  box-shadow: 0 22px 58px rgba(23,49,84,0.10);
}
.routes-premium-section .svc-card::before {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.16), #4fc3f7, rgba(79,195,247,0.16));
  pointer-events: none;
}
.routes-premium-section .svc-card::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, #4fc3f7, rgba(47,155,210,0.16));
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: var(--transition);
}
.routes-premium-section .svc-card:hover {
  transform: translateY(-7px);
  border-color: rgba(79,195,247,0.46);
  box-shadow: 0 24px 62px rgba(23,49,84,0.13);
}
.routes-premium-section .svc-card:hover::after {
  opacity: 1;
  transform: scaleX(1);
}
.routes-premium-section .icon-badge.sm {
  position: relative;
  width: 78px;
  height: 78px;
  margin: 0 auto 22px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(79,195,247,0.16), rgba(79,195,247,0) 68%);
}
.routes-premium-section .icon-badge.sm svg {
  width: 58px;
  height: 58px;
  stroke: #4fc3f7;
  stroke-width: 1.55;
  filter: drop-shadow(0 10px 14px rgba(79,195,247,0.24));
}
.routes-premium-section .svc-card h3 {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  color: var(--navy);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0;
}
.routes-premium-section .svc-card p {
  color: #5f7589;
  font-size: 14px;
  line-height: 1.72;
  max-width: 230px;
}
.routes-premium-section .btn-dark {
  border-radius: 999px;
  box-shadow: 0 14px 34px rgba(23,49,84,0.18);
}
.routes-premium-section {
  background: #ffffff;
}
body.home-page .routes-premium-section.routes-premium-section {
  background: #ffffff !important;
}
.routes-premium-section::before {
  display: none;
}
.routes-legacy-content {
  display: none !important;
}
.routes-card {
  overflow: hidden;
  border: 1px solid #dfe5eb;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 2px 8px rgba(23,49,84,0.06);
}
.routes-card-header {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 90px;
  padding: 20px 26px;
  border-bottom: 1px solid #e3e8ee;
  background: #f9fafb;
}
.routes-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  border-radius: 8px;
  background: var(--blue);
  color: #ffffff;
}
.routes-card-icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.routes-card-header h2 {
  margin: 0;
  color: #001538;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: 0;
}
.routes-card-intro {
  padding: 24px 26px;
  border-bottom: 1px solid #eef1f4;
}
.routes-card-intro p {
  margin: 0;
  color: #112b4d;
  font-size: 20px;
  line-height: 1.55;
}
.routes-card-intro h3 {
  margin: 0 0 8px;
  color: #001538;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: 0;
}
.routes-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 52px;
  padding: 38px 36px;
  border-bottom: 1px solid #eef1f4;
}
.route-line {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  color: #001538;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 500;
}
.route-line small {
  color: #526b82;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 500;
}
.route-line-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 12px;
  color: var(--blue-dark);
  font-size: 22px;
  line-height: 1;
  font-weight: 500;
}
.routes-card-cta {
  display: flex;
  justify-content: center;
  padding: 20px 24px;
  background: #ffffff;
}
.routes-view-btn {
  width: min(575px, 100%);
  min-width: 0;
  min-height: 66px;
  justify-content: center;
  border: 0;
  border-radius: 8px;
  background: var(--blue);
  color: #ffffff;
  font-size: 20px;
  font-weight: 800;
  box-shadow: none;
}
.routes-card .routes-view-btn {
  border-radius: 8px !important;
  background: var(--blue) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
.routes-view-btn:hover {
  background: var(--blue-dark);
  color: #ffffff;
  transform: translateY(-2px);
}
.routes-card .routes-view-btn:hover {
  background: var(--blue-dark) !important;
  color: #ffffff !important;
}
@media (max-width: 1024px) {
  .routes-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 42px;
  }
}
@media (max-width: 640px) {
  .routes-card {
    border-radius: 10px;
  }
  .routes-card-header {
    min-height: auto;
    padding: 18px 18px;
  }
  .routes-card-icon {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
  }
  .routes-card-header h2 {
    font-size: 20px;
  }
  .routes-card-intro {
    padding: 18px;
  }
  .routes-card-intro p {
    font-size: 16px;
  }
  .routes-list {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 24px 20px;
  }
  .route-line {
    font-size: 16px;
  }
  .route-line-arrow {
    margin: 0 10px;
    font-size: 20px;
  }
  .routes-card-cta {
    padding: 18px;
  }
  .routes-view-btn {
    width: 100%;
    min-height: 58px;
    font-size: 16px;
  }
}

/* ===== REVIEWS ===== */
.reviews-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--card-gap); }
.review-card {
  background: var(--white);
  border: 1px solid var(--gray-light);
  border-radius: var(--radius-lg);
  padding: 26px 24px;
  transition: var(--transition);
}
.review-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.review-stars { color: #FFB300; font-size: 15px; margin-bottom: 14px; letter-spacing: 2px; }
.review-text { font-size: 14px; color: #3a5570; line-height: 1.72; font-style: italic; margin-bottom: 18px; }
.reviewer { display: flex; align-items: center; gap: 12px; }
.avatar { width: 42px; height: 42px; border-radius: 50%; background: var(--navy); color: var(--blue); display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 800; flex-shrink: 0; }
.r-name { font-size: 14px; font-weight: 700; color: var(--navy); }
.r-route { font-size: 12px; color: #8aaac8; margin-top: 2px; }

/* ===== FAQ ACCORDION ===== */
.faq-list { max-width: 760px; margin: 0 auto; }
.faq-item {
  border-bottom: 1px solid var(--gray-light);
  overflow: hidden;
}
.faq-question {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  background: none;
  text-align: left;
  gap: 16px;
  transition: color 0.2s;
}
.faq-question:hover { color: var(--blue); }
.faq-icon {
  width: 28px; height: 28px; flex-shrink: 0;
  border-radius: 50%;
  border: 1.5px solid var(--gray-light);
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; color: var(--blue); font-weight: 300;
  transition: var(--transition);
}
.faq-item.open .faq-icon { background: var(--blue); color: var(--navy); border-color: var(--blue); transform: rotate(45deg); }
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease, padding 0.3s;
}
.faq-item.open .faq-answer { max-height: 400px; }
.faq-answer-inner { padding: 0 0 20px; font-size: 14px; color: var(--text-mid); line-height: 1.72; }

/* ===== SPLIT SECTIONS ===== */
.split { display: grid; grid-template-columns: 4fr 6fr; min-height: 460px; }
.split-img { position: relative; overflow: hidden; }
.split-img img { width: 100%; height: 100%; object-fit: cover; }
.split-img .img-badge {
  position: absolute; bottom: 20px; left: 20px;
  background: var(--blue); color: var(--navy-deep);
  padding: 10px 18px; border-radius: 8px;
  font-size: 13px; font-weight: 800;
}
.split-content { padding: var(--space-2xl) var(--space-xl); display: flex; flex-direction: column; justify-content: center; }
.split-content.dark { background: var(--navy); }

/* ===== GALLERY ===== */
.gallery-strip { display: grid; grid-template-columns: repeat(3,1fr); height: 260px; }
.gallery-strip .g-item { overflow: hidden; }
.gallery-strip img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.gallery-strip .g-item:hover img { transform: scale(1.07); }

/* ===== CTA BANNER ===== */
.cta-banner {
  position: relative;
  padding: 82px 0 96px;
  text-align: center;
  overflow: hidden;
  background: var(--home-bg, #f5fbff);
}
.cta-banner-bg {
  display: none;
}
.cta-banner-wash {
  position: absolute;
  inset: 20px 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.28), transparent);
}
.cta-inner {
  position: relative;
  z-index: 1;
  display: block;
}
.cta-content {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(280px, 0.72fr);
  gap: 36px;
  align-items: center;
  text-align: left;
  max-width: 1040px;
  margin: 0 auto;
  padding: 46px;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background:
    radial-gradient(circle at 12% 16%, rgba(79,195,247,0.14), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,253,255,0.94));
  box-shadow: 0 28px 78px rgba(23,49,84,0.12);
  overflow: hidden;
}
.cta-content::after {
  content: "";
  min-height: 330px;
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(23,49,84,0.04), rgba(23,49,84,0.16)),
    url('../images/Home banner.png') center / cover no-repeat;
  box-shadow: 0 22px 54px rgba(23,49,84,0.14);
}
.cta-content::before {
  content: "";
  position: absolute;
  left: 36px;
  right: 36px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18));
}
.cta-banner h2 {
  max-width: 560px;
  margin: 0 0 16px;
  color: var(--navy);
  font-size: clamp(38px,5vw,58px);
  font-weight: 900;
  line-height: 1.04;
  letter-spacing: 0;
}
.cta-banner p {
  max-width: 540px;
  margin: 0 0 32px;
  color: #4f6579;
  font-size: 17px;
  line-height: 1.7;
}
.cta-btns {
  display: flex;
  justify-content: flex-start;
  gap: 14px;
  flex-wrap: wrap;
}
.cta-btns .btn {
  border-radius: 999px;
  min-height: 54px;
  box-shadow: 0 14px 34px rgba(23,49,84,0.14);
}
.cta-btns .btn-outline {
  background: #ffffff;
  border-color: rgba(47,155,210,0.34);
}
.cta-banner .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px;
  background: rgba(237,248,253,0.9);
  border: 1px solid rgba(47,155,210,0.26);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(47,155,210,0.08);
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  margin-bottom: 24px;
}

/* Premium final CTA refinement */
.home-page .cta-banner {
  min-height: 520px;
  padding: 0;
  background: var(--navy-deep);
  isolation: isolate;
}
.home-page .cta-banner-media {
  position: absolute;
  inset: 0 0 0 28%;
  z-index: 0;
  overflow: hidden;
}
.home-page .cta-banner-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.home-page .cta-banner-wash {
  position: absolute;
  inset: 0;
  z-index: 1;
  height: auto;
  pointer-events: none;
  background: linear-gradient(90deg, var(--navy-deep) 0%, var(--navy-deep) 27%, rgba(16,35,60,0.98) 38%, rgba(16,35,60,0.78) 49%, rgba(16,35,60,0.22) 67%, rgba(16,35,60,0) 82%);
}
.home-page .cta-inner {
  display: flex;
  align-items: center;
  min-height: 520px;
  max-width: 1320px;
  padding-top: 72px;
  padding-bottom: 72px;
}
.home-page .cta-content {
  display: block;
  width: 45%;
  max-width: 590px;
  padding-right: 30px;
  text-align: left;
  color: var(--white);
  position: relative;
  z-index: 2;
}
.home-page .cta-banner .eyebrow {
  margin-bottom: 20px;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
  color: #65c9f5;
  letter-spacing: 2px;
}
.home-page .cta-banner h2 {
  max-width: 590px;
  margin: 0 0 20px;
  color: var(--white);
  font-size: clamp(36px, 4.2vw, 62px);
  font-weight: 800;
  line-height: 1.08;
}
.home-page .cta-banner h2 span {
  color: #48b9ed;
}
.home-page .cta-banner p {
  max-width: 500px;
  margin: 0 0 30px;
  color: rgba(255,255,255,0.76);
  font-size: 16px;
  line-height: 1.7;
}
.home-page .cta-btns {
  justify-content: flex-start;
  gap: 12px;
  flex-wrap: nowrap;
}
.home-page .cta-btns .btn {
  min-height: 52px;
  padding: 14px 24px;
  box-shadow: none;
}
.home-page .cta-btns .btn-primary {
  background: #2f9bd2;
  color: #fff;
}
.home-page .cta-btns .btn-primary:hover {
  background: #48b9ed;
}
.home-page .cta-btns .btn-outline {
  background: #fff;
  border-color: #fff;
  color: var(--navy-deep);
}
.home-page .cta-btns .btn-outline:hover {
  background: #e9f8ff;
  border-color: #e9f8ff;
}
@media (max-width: 900px) {
  .home-page .cta-banner {
    min-height: 560px;
  }
  .home-page .cta-banner-media {
    left: 24%;
  }
  .home-page .cta-content {
    width: 58%;
  }
}
@media (max-width: 640px) {
  .home-page .cta-banner {
    min-height: 0;
  }
  .home-page .cta-banner-media {
    position: relative;
    inset: auto;
    height: 250px;
  }
  .home-page .cta-banner-wash {
    inset: 0 0 auto;
    height: 250px;
    background: linear-gradient(180deg, rgba(16,35,60,0.02) 28%, rgba(16,35,60,0.80) 100%);
  }
  .home-page .cta-inner {
    display: block;
    min-height: 0;
    padding: 44px 20px 52px;
  }
  .home-page .cta-content {
    width: 100%;
    max-width: none;
    padding-right: 0;
  }
  .home-page .cta-banner h2 {
    font-size: clamp(34px, 9vw, 46px);
  }
  .home-page .cta-btns {
    align-items: stretch;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
    width: 100%;
  }
  .home-page .cta-btns .btn {
    justify-content: center;
    flex: 1 1 0;
    min-width: 0;
    padding-left: 8px;
    padding-right: 8px;
    font-size: 11px;
  }
}

.about-final-cta .cta-content { max-width: 1120px; }
.about-cta-contact {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 4px 0 30px;
}
.about-contact-item {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  padding: 16px 18px;
  border-radius: 14px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(47,155,210,0.22);
  box-shadow: 0 10px 24px rgba(23,49,84,0.06);
  color: var(--navy);
}
.about-contact-item span {
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.about-contact-item strong {
  color: var(--navy);
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

/* About promise premium cards */
#about-promise {
  background: #f5fbff !important;
}
#about-promise .section-header {
  margin-bottom: 34px;
}
#about-promise .promise-grid {
  gap: 18px !important;
}
#about-promise .promise-grid > div {
  position: relative;
  min-height: 248px;
  padding: 30px 24px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,0.84) !important;
  box-shadow: none !important;
  overflow: hidden;
}
#about-promise .promise-grid > div::before {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.16), #4fc3f7, rgba(79,195,247,0.16));
}
#about-promise .promise-grid > div > div:first-child {
  width: auto !important;
  height: auto !important;
  margin: 0 auto 20px !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  justify-content: center !important;
}
#about-promise .promise-grid > div {
  text-align: center;
}
#about-promise .promise-grid svg {
  width: 42px !important;
  height: 42px !important;
  stroke: #4fc3f7 !important;
  stroke-width: 1.7 !important;
  filter: drop-shadow(0 8px 12px rgba(79,195,247,0.18));
}
#about-promise .promise-grid h3 {
  min-height: 42px;
  color: var(--navy) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}
#about-promise .promise-grid p {
  color: #5f7589 !important;
  font-size: 14px !important;
  line-height: 1.72 !important;
}

/* About final CTA matched to homepage premium CTA */
.about-final-cta {
  padding: 58px 0 64px;
  background: var(--home-bg, #f5fbff);
}
.about-final-cta .cta-banner-bg,
.about-final-cta .cta-banner-wash {
  display: none;
}
.about-final-cta .cta-inner {
  display: block;
}
.about-final-cta .cta-content {
  display: block;
  max-width: 1120px;
  min-height: 360px;
  margin: 0 auto;
  padding: 34px 40px;
  text-align: left;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.99) 0%, rgba(255,255,255,0.97) 49%, rgba(255,255,255,0.78) 66%, rgba(255,255,255,0.28) 100%),
    url('../images/Home banner.png') right center / cover no-repeat;
  box-shadow: none;
  overflow: hidden;
}
.about-final-cta .cta-content::before {
  content: "";
  position: absolute;
  left: 36px;
  right: 36px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18));
}
.about-final-cta .cta-content::after {
  display: none;
}
.about-final-cta h2 {
  max-width: 580px;
  margin: 0 0 16px;
}
.about-final-cta p {
  max-width: 610px;
  margin: 0 0 20px;
}
.about-final-cta .about-cta-contact {
  max-width: 780px;
  gap: 10px;
  margin: 0 0 18px;
}
.about-final-cta .about-contact-item {
  position: relative;
  min-height: auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  text-align: left;
  padding: 8px 0;
  background: transparent;
  border: none;
  box-shadow: none;
}
.about-final-cta .about-contact-item svg {
  position: static;
  flex: 0 0 auto;
  width: 26px;
  height: 26px;
  margin: 0;
  fill: none;
  stroke: #4fc3f7;
  stroke-width: 1.6;
  filter: drop-shadow(0 7px 10px rgba(79,195,247,0.20));
}
.about-final-cta .about-contact-item span {
  margin-top: 2px;
}
.about-final-cta .about-contact-item strong {
  font-size: 13.5px;
  line-height: 1.28;
  text-align: left;
  overflow-wrap: normal;
  word-break: normal;
}
.about-final-cta .cta-btns {
  justify-content: flex-start;
}

/* About track record premium redesign */
#about-fleet {
  padding: 56px 0 !important;
  background: #f5fbff !important;
  overflow: hidden !important;
}
#about-fleet::before {
  display: none !important;
}
#about-fleet .section-header {
  max-width: 760px;
  margin: 0 auto 34px !important;
  text-align: center;
}
#about-fleet .section-title,
#about-fleet .section-sub {
  color: var(--navy) !important;
}
#about-fleet .section-sub {
  color: #5f7589 !important;
}
#about-fleet .fleet-divider {
  width: 96px;
  height: 4px;
  margin-top: 20px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18));
  border-radius: 999px;
}
#about-fleet .fleet-gallery {
  max-width: 1180px;
  margin: 0 auto;
  padding-bottom: 0 !important;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
#about-fleet .fleet-card,
#about-fleet .fleet-card:nth-child(2) {
  height: 320px !important;
  transform: none !important;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 18px !important;
  background: rgba(255,255,255,0.88);
  box-shadow: none !important;
}
#about-fleet .fleet-card:hover,
#about-fleet .fleet-card:nth-child(2):hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 0 0 1px rgba(79,195,247,0.22) !important;
}
#about-fleet .fleet-card img {
  height: 100%;
  width: 100%;
  filter: saturate(1.02) contrast(1.02);
  object-fit: cover;
  object-position: center;
}
#about-fleet .fleet-card:nth-child(1) img { object-position: center 42%; }
#about-fleet .fleet-card:nth-child(2) img { object-position: center 48%; }
#about-fleet .fleet-card:nth-child(3) img { object-position: center 45%; }
#about-fleet .fleet-card .fc-overlay {
  background: linear-gradient(180deg, rgba(255,255,255,0) 48%, rgba(245,251,255,0.78) 100%) !important;
}
#about-fleet .fleet-card .fc-label {
  left: 18px;
  right: auto;
  bottom: 16px;
  width: min(60%, 250px);
  padding: 8px 11px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 12px;
  background: rgba(255,255,255,0.86);
  color: var(--navy) !important;
}
#about-fleet .fleet-card .fc-label .fc-title {
  color: var(--navy);
  font-size: 13.5px;
  font-weight: 900;
}
#about-fleet .fleet-card .fc-label .fc-sub {
  color: #5f7589 !important;
  font-size: 11px;
  line-height: 1.35;
}

/* About team premium redesign */
#about-team {
  padding: 56px 0 !important;
  background: #f5fbff !important;
  overflow: hidden !important;
}
#about-team .section-header {
  max-width: 760px;
  margin: 0 auto 34px !important;
}
#about-team .team-grid {
  max-width: 1180px;
  margin: 0 auto !important;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  align-items: stretch;
  padding: 24px 0;
  border-top: 1px solid rgba(47,155,210,0.16);
  border-bottom: 1px solid rgba(47,155,210,0.16);
}
#about-team .team-bottom-row {
  max-width: 1180px;
  margin: 0 auto !important;
  gap: 0;
  padding: 24px 0;
  border-bottom: 1px solid rgba(47,155,210,0.16);
}
#about-team .team-card-hero,
#about-team .team-card-sm {
  position: relative;
  min-height: 260px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 22px 34px !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible;
}
#about-team .team-card-hero::before,
#about-team .team-card-sm::before {
  display: none;
}
#about-team .team-card-hero::after,
#about-team .team-card-sm::after {
  content: "";
  position: absolute;
  top: 28px;
  right: 0;
  bottom: 28px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(47,155,210,0.22), transparent);
}
#about-team .team-grid > *:last-child::after,
#about-team .team-bottom-row > *:last-child::after {
  display: none;
}
/* Team avatars: icon placeholder now, real photo the moment the file exists.
   The <img> removes itself on error, revealing the icon underneath. */
#about-team .team-card-hero .avatar-lg,
#about-team .team-card-sm .avatar-sm {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 18px;
  overflow: hidden;
  border-radius: 50%;
  border: 1px solid rgba(47,155,210,0.24);
  background: linear-gradient(160deg, #f0f9ff 0%, #dbeefb 100%);
  color: var(--blue-dark);
  font-size: 0;
  box-shadow: 0 10px 24px rgba(23,49,84,0.07);
}
#about-team .team-card-hero .avatar-lg,
#about-team .team-card-sm .avatar-sm {
  width: 104px;
  height: 104px;
  flex-shrink: 0;
}
#about-team .avatar-icon {
  width: 46%;
  height: 46%;
  color: var(--blue-dark);
}
#about-team .team-card-hero .avatar-lg img,
#about-team .team-card-sm .avatar-sm img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
}
#about-team .team-card-hero .name,
#about-team .team-card-sm .name {
  color: var(--navy) !important;
  font-size: 21px;
  font-weight: 900;
  margin-bottom: 7px;
  position: relative;
  z-index: 1;
}
#about-team .team-card-hero .name {
  font-size: 24px;
}
#about-team .team-card-hero .role,
#about-team .team-card-sm .role {
  color: var(--blue-dark) !important;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin-bottom: 13px;
  position: relative;
  z-index: 1;
}
#about-team .team-card-hero .bio,
#about-team .team-card-sm .bio {
  max-width: 390px;
  color: #5f7589 !important;
  font-size: 14px;
  line-height: 1.68;
  position: relative;
  z-index: 1;
}
#about-team .team-card-sm:hover,
#about-team .team-card-hero:hover {
  transform: none;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* ===== FOOTER ===== */
footer { 
  background: linear-gradient(180deg, var(--navy-deep) 0%, #030811 100%); 
  padding: 80px 0 0; 
  border-top: 1px solid rgba(47,155,210,0.15);
  position: relative;
  overflow: hidden;
}
footer::before {
  content: '';
  position: absolute; top: -150px; right: -150px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(47,155,210,0.06) 0%, transparent 60%);
  border-radius: 50%;
  pointer-events: none;
}
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; padding-bottom: 60px; position: relative; z-index: 1; }
.footer-brand-logo { font-size: 18px; font-weight: 900; color: var(--white); letter-spacing: 1px; margin-bottom: 14px; }
.footer-brand-logo span { color: var(--blue); }
.footer-grid img[src$="logo.webp"] {
  height: 58px !important;
  background: linear-gradient(135deg, rgba(255,255,255,0.9), rgba(255,255,255,1)) !important;
  border: 1px solid rgba(255,255,255,0.2);
  box-shadow: 0 12px 30px rgba(0,0,0,0.25);
  padding: 10px 14px !important;
  border-radius: 16px !important;
}
.footer-desc { font-size: 14px; color: #6a8aaa; line-height: 1.8; max-width: 280px; margin-bottom: 24px; }
.footer-contact {
  list-style: none;
  margin: 0 0 26px;
  padding: 0;
  display: grid;
  gap: 14px;
  max-width: 300px;
}
.footer-contact li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.footer-contact svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  fill: none;
  stroke: var(--blue);
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.footer-contact span,
.footer-contact a {
  color: #8aaac8;
  font-size: 14px;
  line-height: 1.6;
  transition: color 0.3s ease;
}
.footer-contact a:hover { color: var(--white); }
.footer-socials { display: flex; gap: 12px; }
.social-btn {
  width: 40px; height: 40px; border-radius: 10px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
  display: flex; align-items: center; justify-content: center;
  color: #8aaac8; font-size: 14px; font-weight: 700;
  transition: all 0.3s ease;
}
.social-btn:hover { 
  background: var(--blue); 
  color: var(--white); 
  border-color: var(--blue); 
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(47,155,210,0.3);
}
.footer-col h4 { color: var(--white); font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 24px; }
.footer-col a { display: block; color: #6a8aaa; font-size: 14px; margin-bottom: 14px; transition: color 0.3s ease, transform 0.3s ease; }
.footer-col a:hover { color: var(--white); transform: translateX(6px); }
.footer-bottom {
  position: relative;
  z-index: 1;
  padding: 24px 0;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 12.5px; color: #4a6a80;
}
.footer-bottom::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.1) 50%, rgba(255,255,255,0.02) 100%);
}

/* ===== PAGE HERO (inner pages) ===== */
.page-hero {
  background: var(--navy);
  padding: 0 0 60px;
  position: relative;
  overflow: hidden;
}
.page-hero::before {
  content: '';
  position: absolute; top: -100px; right: -100px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(79,195,247,0.07) 0%, transparent 70%);
  border-radius: 50%;
}
.page-hero-content { position: relative; z-index: 1; }
.page-hero h1 { color: var(--white); font-size: clamp(28px,4vw,48px); font-weight: 900; margin-bottom: 14px; line-height: 1.12; }
.page-hero p { color: #8aaac8; font-size: 16px; max-width: 560px; line-height: 1.65; margin-bottom: 28px; }
.breadcrumb { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #5a7898; margin-bottom: 20px; }
.breadcrumb a { color: #5a7898; } .breadcrumb a:hover { color: var(--blue); }

/* ===== SERVICES PAGE ===== */
.services-page {
  background: var(--cream);
}
.services-hero {
  position: relative;
  min-height: 760px;
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  background: var(--white);
}
.services-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  transform: scale(1.02);
}
.services-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.98) 36%, rgba(255,255,255,0.82) 58%, rgba(255,255,255,0.28) 82%, rgba(255,255,255,0.04) 100%);
}
.services-hero .container {
  position: relative;
  z-index: 1;
  padding-top: 150px;
  padding-bottom: 72px;
}
.services-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.46fr);
  gap: 56px;
  align-items: center;
}
.services-hero-content {
  max-width: 740px;
}
.services-hero .breadcrumb,
.services-hero .breadcrumb a {
  color: #5a7898;
}
.services-hero h1 {
  color: var(--navy);
  font-size: clamp(44px, 5.5vw, 74px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -0.4px;
  margin-bottom: 22px;
  text-wrap: balance;
}
.services-hero p {
  color: #334b62;
  font-size: 19px;
  line-height: 1.8;
  max-width: 620px;
  margin-bottom: 32px;
}
.services-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.btn-outline-light {
  color: var(--navy);
  border: 1.5px solid rgba(23,49,84,0.16);
  background: rgba(255,255,255,0.86);
  backdrop-filter: blur(14px);
}
.btn-outline-light:hover {
  background: var(--white);
  color: var(--blue-dark);
  border-color: var(--blue);
}
.services-hero-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-width: 640px;
  margin-top: 34px;
}
.services-hero-stats div {
  padding: 16px 18px;
  border-radius: 8px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 8px 20px rgba(23,49,84,0.05);
  backdrop-filter: blur(14px);
}
.services-hero-stats strong,
.services-hero-stats span {
  display: block;
}
.services-hero-stats strong {
  color: var(--navy);
  font-size: 26px;
  line-height: 1;
  margin-bottom: 7px;
}
.services-hero-stats span {
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}
.services-hero-card {
  align-self: end;
  padding: 28px;
  border-radius: 8px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.62);
  box-shadow: 0 24px 60px rgba(23,49,84,0.16);
  backdrop-filter: blur(18px);
}
.services-hero-card .card-kicker {
  display: inline-block;
  color: var(--blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.services-hero-card h2 {
  color: var(--navy);
  font-size: 26px;
  line-height: 1.18;
  margin-bottom: 22px;
}
.planner-route {
  display: grid;
  gap: 14px;
  margin-bottom: 24px;
}
.planner-route div {
  position: relative;
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 12px;
  align-items: start;
}
.planner-route div:not(:last-child)::after {
  content: '';
  position: absolute;
  left: 8px;
  top: 19px;
  width: 2px;
  height: 28px;
  background: var(--gray-light);
}
.planner-route span {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--blue);
  border: 4px solid #dff2fb;
}
.planner-route p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.45;
  margin: 0;
}
.planner-link {
  display: inline-flex;
  color: var(--navy);
  font-size: 14px;
  font-weight: 900;
}
.planner-link:hover { color: var(--blue-dark); }
.services-overview,
.quote-assist-section {
  padding: 86px 0;
  background: var(--white);
}
.services-overview-grid,
.quote-assist-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 54px;
  align-items: center;
}
.overview-copy > p,
.quote-assist-copy > p {
  color: var(--text-mid);
  font-size: 16px;
  line-height: 1.85;
  margin-bottom: 26px;
}
.overview-points {
  display: grid;
  gap: 14px;
}
.overview-points div {
  display: grid;
  grid-template-columns: 46px 1fr;
  column-gap: 16px;
  padding: 18px;
  border: 1px solid var(--gray-light);
  background: #fbfdff;
  border-radius: 8px;
}
.overview-points span {
  grid-row: span 2;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--navy);
  color: var(--white);
  font-size: 12px;
  font-weight: 800;
}
.overview-points strong {
  color: var(--navy);
  font-size: 15px;
}
.overview-points p {
  color: var(--text-mid);
  font-size: 13px;
  line-height: 1.65;
}
.overview-media,
.quote-assist-media {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  border: 1px solid rgba(23,49,84,0.08);
}
.overview-media img,
.quote-assist-media img {
  width: 100%;
  aspect-ratio: 1.28 / 1;
  object-fit: cover;
}
.media-stat {
  position: absolute;
  left: 22px;
  bottom: 22px;
  max-width: 280px;
  padding: 18px 20px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.7);
  border-radius: 8px;
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(14px);
}
.media-stat strong,
.media-stat span {
  display: block;
}
.media-stat strong {
  color: var(--navy);
  font-size: 17px;
  margin-bottom: 4px;
}
.media-stat span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 1.55;
}
.services-options-section {
  background: var(--gray-bg);
}
.premium-service-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.premium-service-card {
  position: relative;
  min-height: 520px;
  padding: 0;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: var(--transition);
}
.premium-service-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(47,155,210,0.45);
}
.premium-service-card.featured {
  background: linear-gradient(180deg, var(--white) 0%, #edf8fd 100%);
  color: var(--text-dark);
  border-color: rgba(47,155,210,0.42);
}
.service-card-visual {
  position: relative;
  height: 170px;
  overflow: hidden;
  background: var(--navy);
}
.service-card-visual::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,22,40,0.05) 0%, rgba(10,22,40,0.5) 100%);
}
.service-card-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}
.premium-service-card:hover .service-card-visual img {
  transform: scale(1.06);
}
.service-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 24px 22px;
  padding-top: 24px;
}
.service-card-top span {
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}
.premium-service-card.featured .service-card-top span {
  color: var(--blue);
}
.service-card-top strong {
  color: rgba(23,49,84,0.14);
  font-size: 34px;
  line-height: 1;
}
.premium-service-card.featured .service-card-top strong {
  color: rgba(23,49,84,0.14);
}
.premium-service-card h3 {
  color: var(--navy);
  font-size: 22px;
  line-height: 1.2;
  margin: 0 24px 12px;
}
.premium-service-card.featured h3,
.premium-service-card.featured p,
.premium-service-card.featured li,
.premium-service-card.featured .svc-link {
  color: var(--navy);
}
.premium-service-card.featured p,
.premium-service-card.featured li {
  color: var(--text-mid);
}
.premium-service-card p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.75;
  margin: 0 24px 18px;
}
.premium-service-card ul {
  display: grid;
  gap: 9px;
  margin: 0 24px 20px;
}
.premium-service-card li {
  position: relative;
  padding-left: 18px;
  color: var(--text-mid);
  font-size: 13px;
}
.premium-service-card li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--blue);
}
.premium-service-card .svc-link {
  margin-left: 24px;
  margin-right: 24px;
  margin-bottom: 26px;
}
.service-comparison-section {
  padding: 86px 0;
  background: linear-gradient(180deg, var(--white) 0%, #edf8fd 100%);
}
.service-comparison-section .section-title {
  color: var(--text-dark);
}
.service-comparison-section .section-sub {
  color: var(--text-mid);
}
.comparison-advisor-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 22px;
}
.advisor-card {
  position: relative;
  min-height: 190px;
  padding: 26px;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid var(--gray-light);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
.advisor-card::after {
  content: '';
  position: absolute;
  right: -36px;
  bottom: -36px;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: rgba(47,155,210,0.12);
}
.advisor-card.highlighted {
  background: linear-gradient(180deg, #ffffff 0%, #edf8fd 100%);
  border-color: rgba(47,155,210,0.42);
}
.advisor-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(47,155,210,0.18);
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 18px;
}
.advisor-card h3 {
  color: var(--navy);
  font-size: 20px;
  line-height: 1.25;
  margin-bottom: 10px;
}
.advisor-card p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.7;
}
.comparison-table-wrap {
  overflow-x: auto;
  border-radius: 8px;
  border: 1px solid var(--gray-light);
  box-shadow: var(--shadow-md);
  background: var(--white);
  backdrop-filter: blur(16px);
}
.comparison-feature-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  border-bottom: 1px solid var(--gray-light);
  background: var(--sky-soft);
}
.comparison-feature-row div {
  padding: 22px 24px;
  background: rgba(255,255,255,0.7);
}
.comparison-feature-row span,
.comparison-feature-row strong {
  display: block;
}
.comparison-feature-row span {
  color: var(--blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.comparison-feature-row strong {
  color: var(--navy);
  font-size: 18px;
  line-height: 1.25;
}
.comparison-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  background: transparent;
}
.comparison-table th,
.comparison-table td {
  padding: 22px 24px;
  text-align: left;
  border-bottom: 1px solid var(--gray-light);
}
.comparison-table th {
  background: #f8fbfd;
  color: var(--navy);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}
.comparison-table td {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.65;
  vertical-align: top;
}
.comparison-table td strong {
  color: var(--navy);
}
.comparison-table th:nth-child(2),
.comparison-table td:nth-child(2) {
  text-align: center;
}
.comparison-table tbody tr {
  transition: background 0.2s ease;
}
.comparison-table tbody tr:hover {
  background: rgba(47,155,210,0.06);
}
.quote-assist-section {
  background:
    radial-gradient(circle at 16% 18%, rgba(47,155,210,0.14), rgba(47,155,210,0) 32%),
    linear-gradient(180deg, var(--white) 0%, #eef7fc 100%);
}
.quote-assist-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  align-items: stretch;
}
.quote-assist-media {
  min-height: 100%;
  background: var(--white);
}
.quote-assist-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,22,40,0) 42%, rgba(10,22,40,0.52) 100%);
  pointer-events: none;
}
.quote-assist-media img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
  object-position: center center;
}
.quote-assist-badge {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 1;
  padding: 18px 20px;
  border-radius: 8px;
  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(255,255,255,0.72);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(16px);
}
.quote-assist-badge strong,
.quote-assist-badge span {
  display: block;
}
.quote-assist-badge strong {
  color: var(--navy);
  font-size: 17px;
  margin-bottom: 4px;
}
.quote-assist-badge span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 1.55;
}
.quote-assist-copy {
  padding: 8px 0;
}
.guidance-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 22px 0;
}
.guidance-mini-grid div {
  padding: 16px;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: var(--shadow-sm);
}
.guidance-mini-grid strong,
.guidance-mini-grid span {
  display: block;
}
.guidance-mini-grid strong {
  color: var(--navy);
  font-size: 14px;
  margin-bottom: 4px;
}
.guidance-mini-grid span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 1.45;
}
.ai-chat-panel {
  display: grid;
  gap: 12px;
  margin: 26px 0;
  padding: 18px;
  border-radius: 8px;
  background: #f8fbfd;
  border: 1px solid var(--gray-light);
  box-shadow: var(--shadow-sm);
}
.chat-line {
  max-width: 88%;
  padding: 12px 14px;
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.55;
}
.chat-line.bot {
  background: var(--white);
  color: var(--text-mid);
  border: 1px solid rgba(23,49,84,0.08);
}
.chat-line.user {
  justify-self: end;
  background: var(--sky-soft);
  color: var(--navy);
  border: 1px solid rgba(47,155,210,0.24);
}
.ghl-form-card {
  padding: 22px;
  border-radius: 8px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: var(--shadow-lg);
}
.ghl-form-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.ghl-form-head strong {
  color: var(--navy);
  font-size: 17px;
}
.ghl-form-head span {
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
}
.ghl-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 16px;
}
.ghl-form-grid label span {
  display: block;
  color: var(--text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.ghl-form-grid input,
.ghl-form-grid select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid var(--gray-light);
  background: #f8fbfd;
  color: var(--text-dark);
  font-size: 13px;
}
.services-faq-section {
  background: var(--white);
}
.faq-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.faq-card {
  padding: 26px;
  border: 1px solid var(--gray-light);
  border-radius: 8px;
  background: #fbfdff;
  box-shadow: var(--shadow-sm);
}
.faq-card h3 {
  color: var(--navy);
  font-size: 18px;
  line-height: 1.3;
  margin-bottom: 10px;
}
.faq-card p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.75;
}

/* ===== ROUTES / SERVICE AREAS PAGE ===== */
.route-service-page .services-hero h1 {
  max-width: 780px;
}
.route-service-page .services-hero-card {
  align-self: center;
}
.route-service-options {
  background: var(--white);
}
.province-panel {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 28px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(237,248,253,0.96), rgba(255,255,255,0.96)),
    url('../images/what we offer -open carrier image .png') center / cover;
  border: 1px solid rgba(47,155,210,0.22);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}
.province-chip {
  min-height: 54px;
  display: flex;
  align-items: center;
  padding: 12px 14px;
  border-radius: 8px;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(23,49,84,0.08);
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
  box-shadow: 0 8px 20px rgba(23,49,84,0.05);
}
.route-stat {
  position: static;
  grid-column: 1 / -1;
  max-width: none;
  margin-top: 6px;
}
.route-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.route-service-page .popular-routes-premium {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, #ffffff 0%, #f5fbff 48%, #eef8fc 100%);
}
.route-service-page .popular-routes-premium::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(23,49,84,0.04) 1px, transparent 1px),
    linear-gradient(180deg, rgba(23,49,84,0.035) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 76%, transparent 100%);
  pointer-events: none;
}
.route-service-page .popular-routes-premium .container {
  position: relative;
  z-index: 1;
}
.popular-routes-shell {
  position: relative;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.popular-routes-premium .route-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.route-card {
  position: relative;
  min-height: 190px;
  padding: 26px;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: var(--transition);
}
.popular-routes-premium .route-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-height: 250px;
  padding: 34px 22px 30px;
  border: 1px solid rgba(79,195,247,0.24);
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(252,254,255,0.96));
  box-shadow: 0 22px 62px rgba(23,49,84,0.06);
  text-align: center;
}
.popular-routes-premium .route-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 36px;
  right: 36px;
  height: 6px;
  border-radius: 0 0 999px 999px;
  background: rgba(79,195,247,0.18);
  opacity: 1;
  pointer-events: none;
}
.route-card::after {
  content: '';
  position: absolute;
  right: -36px;
  bottom: -36px;
  width: 112px;
  height: 112px;
  border-radius: 50%;
  background: rgba(47,155,210,0.12);
}
.popular-routes-premium .route-card::after {
  display: none;
}
.route-card:hover {
  transform: translateY(-6px);
  border-color: rgba(47,155,210,0.42);
  box-shadow: var(--shadow-lg);
}
.popular-routes-premium .route-card:hover {
  border-color: rgba(79,195,247,0.42);
  box-shadow: 0 26px 70px rgba(23,49,84,0.10);
}
.route-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(47,155,210,0.16);
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 18px;
}
.route-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 78px;
  height: 78px;
  margin: 0 auto 22px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(79,195,247,0.16), rgba(79,195,247,0) 68%);
}
.route-arrow svg {
  width: 58px;
  height: 58px;
  fill: none;
  stroke: #4fc3f7;
  stroke-width: 1.55;
  stroke-linecap: square;
  stroke-linejoin: miter;
  filter: drop-shadow(0 12px 18px rgba(79,195,247,0.20));
}
.route-card h3 {
  color: var(--navy);
  font-size: 22px;
  line-height: 1.25;
  margin-bottom: 10px;
}
.popular-routes-premium .route-card h3,
.popular-routes-premium .route-card p {
  position: relative;
  z-index: 1;
}
.popular-routes-premium .route-card h3 {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 260px;
  margin: 0 auto 12px;
  color: var(--navy);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.15;
}
.route-card p,
.route-note {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.75;
}
.popular-routes-premium .route-card p {
  max-width: 250px;
  margin: 0 auto;
  color: #657d96;
  font-size: 14px;
  line-height: 1.72;
}
.route-note {
  max-width: 760px;
  margin: 22px auto 0;
  text-align: center;
}
.route-service-page #transit-times {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, #ffffff 0%, #f7fcff 42%, #eef8fc 100%);
}
.route-service-page #transit-times::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(23,49,84,0.032) 1px, transparent 1px),
    linear-gradient(180deg, rgba(23,49,84,0.028) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(180deg, transparent 0%, #000 16%, #000 82%, transparent 100%);
  pointer-events: none;
}
.route-service-page #transit-times::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 96px;
  width: min(760px, 72vw);
  height: 260px;
  transform: translateX(-50%);
  background: radial-gradient(circle at center, rgba(79,195,247,0.16), rgba(79,195,247,0));
  pointer-events: none;
}
.route-service-page #transit-times .container {
  position: relative;
  z-index: 1;
}
.route-service-page #transit-times .eyebrow {
  color: var(--blue-dark);
}
.route-service-page #transit-times .section-title {
  color: var(--navy);
}
.route-service-page #transit-times .section-sub {
  color: var(--text-mid);
}
.transit-premium-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-bottom: 26px;
}
.transit-premium-card {
  position: relative;
  min-height: 232px;
  padding: 30px 28px 28px;
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,253,255,0.96));
  border: 1px solid rgba(79,195,247,0.22);
  box-shadow: 0 22px 60px rgba(23,49,84,0.08);
  overflow: hidden;
  transition: var(--transition);
}
.transit-premium-card::before {
  content: '';
  position: absolute;
  left: 26px;
  right: 26px;
  top: 0;
  height: 5px;
  border-radius: 0 0 999px 999px;
  background: rgba(79,195,247,0.28);
}
.transit-premium-card::after {
  content: '';
  position: absolute;
  right: -52px;
  bottom: -58px;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(79,195,247,0.20), rgba(79,195,247,0));
}
.transit-premium-card:hover {
  transform: translateY(-6px);
  border-color: rgba(79,195,247,0.42);
  box-shadow: 0 26px 70px rgba(23,49,84,0.11);
}
.transit-premium-card.featured {
  background: linear-gradient(180deg, #ffffff 0%, #eefaff 100%);
  border-color: rgba(47,155,210,0.32);
}
.transit-card-icon {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 22px;
  border-radius: 50%;
  background: var(--navy);
  color: #4fc3f7;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(23,49,84,0.16);
}
.transit-kicker {
  position: relative;
  z-index: 1;
  display: block;
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.transit-premium-card strong {
  position: relative;
  z-index: 1;
  display: block;
  color: var(--navy);
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.04;
  margin-bottom: 14px;
}
.transit-premium-card p {
  position: relative;
  z-index: 1;
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.7;
}
.route-service-page #transit-times .comparison-table-wrap {
  border: 1px solid rgba(79,195,247,0.20);
  border-radius: 14px;
  background: rgba(255,255,255,0.98);
  box-shadow: 0 24px 64px rgba(23,49,84,0.10);
}
.route-service-page #transit-times .comparison-feature-row {
  background: linear-gradient(90deg, rgba(237,248,253,0.98), rgba(255,255,255,0.94));
  border-bottom: 1px solid rgba(79,195,247,0.16);
}
.route-service-page #transit-times .comparison-feature-row div {
  background: transparent;
}
.route-service-page #transit-times .comparison-feature-row span {
  color: var(--blue-dark);
  letter-spacing: 0;
}
.route-service-page #transit-times .comparison-feature-row strong {
  color: var(--navy);
}
.route-service-page #transit-times .comparison-table th {
  background: #f8fcff;
  color: var(--navy);
  border-bottom-color: rgba(79,195,247,0.14);
}
.route-service-page #transit-times .comparison-table td {
  border-bottom-color: rgba(47,155,210,0.10);
}
.route-service-page #transit-times .comparison-table td:last-child {
  color: var(--blue-dark);
  font-size: 18px;
  font-weight: 900;
}
.transit-advisory {
  display: flex;
  align-items: center;
  gap: 18px;
  max-width: 920px;
  margin: 26px auto 0;
  padding: 18px 22px;
  border-radius: 14px;
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(79,195,247,0.22);
  box-shadow: 0 16px 42px rgba(23,49,84,0.06);
  backdrop-filter: blur(14px);
}
.transit-advisory span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #eef9fe;
  color: var(--blue-dark);
  border: 1px solid rgba(79,195,247,0.18);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}
.transit-advisory p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}
.route-map-section {
  background: var(--white);
}
.coverage-map {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 28px;
  align-items: center;
  padding: 34px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(237,248,253,0.94)),
    url('../images/what we offer -open carrier image .jpg') center / cover;
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 24px 64px rgba(23,49,84,0.12);
  overflow: hidden;
}
.coverage-map .map-copy {
  padding: 28px;
  border-radius: 8px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(47,155,210,0.16);
  box-shadow: 0 18px 44px rgba(23,49,84,0.08);
  backdrop-filter: blur(14px);
}
.map-copy span {
  display: inline-block;
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.map-copy h3 {
  color: var(--navy);
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.1;
  margin-bottom: 12px;
}
.map-copy p {
  color: var(--text-mid);
  font-size: 15px;
  line-height: 1.75;
  max-width: 520px;
}
.map-embed-wrap {
  position: relative;
  min-height: 390px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: 0 18px 46px rgba(23,49,84,0.12);
}
.map-embed-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  filter: saturate(0.98) contrast(1.01);
}
.map-grid {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.map-grid span {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(47,155,210,0.18);
  color: var(--navy);
  font-size: 18px;
  font-weight: 900;
  box-shadow: 0 12px 26px rgba(23,49,84,0.12);
}
.route-final-cta {
  align-items: center;
}
.route-final-cta h2 {
  margin-bottom: 10px;
}

@media (max-width: 1024px) {
  .route-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .popular-routes-premium .route-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .transit-premium-grid {
    grid-template-columns: 1fr;
  }
  .coverage-map {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .province-panel,
  .route-card-grid,
  .map-grid {
    grid-template-columns: 1fr;
  }
  .coverage-map {
    padding: 24px;
  }
  .transit-premium-card {
    min-height: auto;
    padding: 24px;
  }
  .transit-advisory {
    display: block;
  }
  .popular-routes-premium .route-card {
    min-height: auto;
    padding: 28px 20px;
  }
  .route-arrow {
    margin-bottom: 20px;
  }
  .popular-routes-premium .route-card h3 {
    min-height: auto;
    font-size: 18px;
  }
  .popular-routes-premium .route-card p {
    font-size: 14px;
  }
  .transit-advisory p {
    margin-top: 12px;
  }
  .map-embed-wrap {
    min-height: 520px;
  }
  .map-grid span {
    min-height: 54px;
  }
}

/* ===== GET A QUOTE PAGE ===== */
.quote-page {
  background: var(--cream);
}
.quote-hero {
  position: relative;
  min-height: 860px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: linear-gradient(180deg, var(--white) 0%, #f4f9fc 100%);
}
.quote-hero::before {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 190px;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, var(--cream) 100%);
  z-index: 1;
  pointer-events: none;
}
.quote-hero::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.32), transparent);
  z-index: 2;
  pointer-events: none;
}
.quote-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  transform: scale(1.03);
  filter: saturate(1.05) contrast(1.02);
}
.quote-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.98) 34%, rgba(255,255,255,0.78) 58%, rgba(255,255,255,0.24) 82%, rgba(255,255,255,0.02) 100%),
    linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(244,249,252,0.92) 100%);
}
.quote-hero .container {
  position: relative;
  z-index: 3;
  padding-top: 132px;
  padding-bottom: 88px;
}
.quote-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(430px, 0.68fr);
  gap: 64px;
  align-items: center;
}
.quote-hero-copy {
  max-width: 720px;
}
.quote-hero .breadcrumb,
.quote-hero .breadcrumb a {
  color: #5a7898;
}
.quote-hero h1 {
  color: var(--navy);
  font-size: clamp(46px, 5.6vw, 78px);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
  margin-bottom: 24px;
  text-wrap: balance;
}
.quote-hero p {
  color: #334b62;
  font-size: 19px;
  line-height: 1.8;
  max-width: 620px;
  margin-bottom: 30px;
}
.quote-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.quote-trust-row span {
  padding: 10px 14px;
  border-radius: 999px;
  color: var(--navy);
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 8px 20px rgba(23,49,84,0.05);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.4px;
}
.quote-proof-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-width: 610px;
  margin-top: 26px;
}
.quote-proof-strip div {
  padding: 18px 18px;
  border-radius: 8px;
  background: rgba(255,255,255,0.84);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 10px 26px rgba(23,49,84,0.07);
  backdrop-filter: blur(14px);
}
.quote-proof-strip strong,
.quote-proof-strip span {
  display: block;
}
.quote-proof-strip strong {
  color: var(--navy);
  font-size: 28px;
  line-height: 1;
  margin-bottom: 8px;
}
.quote-proof-strip span {
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}
.quote-form-shell {
  position: relative;
  padding: 34px;
  border-radius: 8px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.78);
  box-shadow: 0 30px 90px rgba(23,49,84,0.18);
  backdrop-filter: blur(22px) saturate(150%);
}
.quote-form-shell::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(47,155,210,0.18);
  pointer-events: none;
}
.quote-form-accent {
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  padding: 7px 12px;
  border-radius: 999px;
  background: var(--sky-soft);
  color: var(--blue-dark);
  border: 1px solid rgba(47,155,210,0.22);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}
.quote-form-header {
  margin-bottom: 22px;
}
.quote-form-header span,
.quote-step-label {
  display: inline-block;
  color: var(--blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}
.quote-form-header h2 {
  color: var(--navy);
  font-size: 30px;
  line-height: 1.2;
  margin: 8px 0 8px;
}
.quote-form-header p {
  color: var(--text-mid);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}
.quote-step-label {
  margin: 18px 0 10px;
}
.quote-field-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.quote-form-shell .fg label {
  color: var(--text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.quote-form-shell .fg input,
.quote-form-shell .fg select {
  background: rgba(248,251,253,0.88);
  border-color: var(--gray-light);
  color: var(--text-dark);
  min-height: 50px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.9);
}
.quote-form-shell .fg input:focus,
.quote-form-shell .fg select:focus {
  background: var(--white);
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(47,155,210,0.11);
}
.quote-form-shell .form-submit-row {
  margin-top: 22px;
}
.quote-form-shell .form-note {
  color: var(--text-muted);
}
.quote-intro-section,
.quote-next-section,
.quote-cta-section {
  padding: 86px 0;
}
.quote-intro-section {
  background: var(--white);
}
.quote-intro-grid,
.quote-next-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 54px;
  align-items: center;
}
.quote-intro-copy p {
  color: var(--text-mid);
  font-size: 16px;
  line-height: 1.85;
}
.quote-info-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.quote-info-card {
  min-height: 190px;
  padding: 24px;
  border-radius: 8px;
  background: #fbfdff;
  border: 1px solid var(--gray-light);
  box-shadow: var(--shadow-sm);
}
.quote-info-card strong,
.quote-info-card span {
  display: block;
}
.quote-info-card strong {
  color: var(--navy);
  font-size: 18px;
  line-height: 1.25;
  margin-bottom: 10px;
}
.quote-info-card span {
  color: var(--text-mid);
  font-size: 13px;
  line-height: 1.7;
}
.quote-next-section {
  background: linear-gradient(180deg, #f8fbfd 0%, #edf6fb 100%);
}
.quote-next-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
}
.quote-next-media {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: var(--shadow-lg);
}
.quote-next-media img {
  width: 100%;
  aspect-ratio: 1.35 / 1;
  object-fit: cover;
}
.response-badge {
  position: absolute;
  left: 22px;
  bottom: 22px;
  max-width: 310px;
  padding: 18px 20px;
  border-radius: 8px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.7);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(14px);
}
.response-badge strong,
.response-badge span {
  display: block;
}
.response-badge strong {
  color: var(--navy);
  font-size: 16px;
  margin-bottom: 4px;
}
.response-badge span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 1.6;
}
.quote-timeline {
  display: grid;
  gap: 14px;
}
.quote-timeline div {
  display: grid;
  grid-template-columns: 46px 1fr;
  column-gap: 16px;
  padding: 18px;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid var(--gray-light);
  box-shadow: var(--shadow-sm);
}
.quote-timeline span {
  grid-row: span 2;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--navy);
  color: var(--white);
  font-size: 12px;
  font-weight: 900;
}
.quote-timeline strong {
  color: var(--navy);
  font-size: 15px;
}
.quote-timeline p {
  color: var(--text-mid);
  font-size: 13px;
  line-height: 1.65;
}
.quote-cta-section {
  background: var(--white);
}
.quote-cta-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 42px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--white) 0%, #edf8fd 100%);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}
.quote-cta-panel h2 {
  color: var(--navy);
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.15;
  margin-bottom: 10px;
}
.quote-cta-panel p {
  color: var(--text-mid);
  max-width: 620px;
}
.breadcrumb span { color: var(--blue); font-weight: 700; }

/* ===== BLOG CARDS ===== */
.blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--card-gap); }
.blog-card { background: var(--white); border: 1px solid var(--gray-light); border-radius: var(--radius-lg); overflow: hidden; transition: var(--transition); }
.blog-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.blog-card-img { width: 100%; height: 200px; object-fit: cover; background: var(--navy); }
.blog-card-img-ph { width: 100%; height: 200px; background: linear-gradient(135deg, var(--navy), var(--navy-mid)); display: flex; align-items: center; justify-content: center; font-size: 40px; }
.blog-card-body { padding: var(--space-md) var(--space-md); }
.blog-tag { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; color: var(--blue); margin-bottom: 8px; }
.blog-card-body h3 { font-size: 16px; font-weight: 800; color: var(--navy); margin-bottom: 8px; line-height: 1.35; }
.blog-card-body p { font-size: 13.5px; color: var(--text-mid); line-height: 1.65; }
.blog-meta { display: flex; justify-content: space-between; align-items: center; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--gray-light); font-size: 12px; color: var(--text-muted); }
.blog-read-more { color: var(--blue); font-weight: 700; }

/* ===== CONTACT ===== */
.contact-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 48px; margin-top: 48px; }
.contact-form-box { background: var(--white); border: 1px solid var(--gray-light); border-radius: var(--radius-lg); padding: 36px 32px; box-shadow: var(--shadow-sm); }
.form-full { grid-column: span 2; }
.fg-light label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: var(--text-muted); margin-bottom: 6px; display: block; }
.fg-light input, .fg-light select, .fg-light textarea {
  width: 100%; background: var(--gray-bg);
  border: 1.5px solid var(--gray-light);
  color: var(--text-dark);
  padding: 12px 15px;
  border-radius: 8px;
  font-size: 14px;
  outline: none;
  transition: border-color 0.2s;
}
.fg-light input:focus, .fg-light select:focus, .fg-light textarea:focus { border-color: var(--blue); background: var(--white); }
.fg-light textarea { resize: vertical; min-height: 130px; }
.contact-info-card { background: var(--navy); border-radius: var(--radius-lg); padding: 32px; }
.ci-item { display: flex; gap: 14px; margin-bottom: 26px; }
.ci-icon { width: 44px; height: 44px; background: rgba(79,195,247,0.1); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.ci-text h4 { color: var(--white); font-size: 14px; font-weight: 700; margin-bottom: 4px; }
.ci-text p, .ci-text a { color: #7090b0; font-size: 13.5px; }
.ci-text a:hover { color: var(--blue); }

/* ===== ANIMATIONS ===== */
@keyframes fadeUp { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:translateY(0); } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.fade-up { opacity:0; transform:translateY(24px); transition: opacity 0.55s ease, transform 0.55s ease; }
.fade-up.visible { opacity:1; transform:translateY(0); }

/* ===== TESTIMONIAL CAROUSEL ===== */
.carousel-wrap { }
.carousel-viewport { overflow: hidden; padding: 40px 0; margin: -40px 0; }
.carousel-track {
  display: flex;
  gap: 22px;
  transition: transform 0.45s cubic-bezier(0.4,0,0.2,1);
}
.carousel-track .review-card {
  flex: 0 0 calc((100% - 44px) / 3);
  margin-right: 0;
}
.carousel-controls { display: flex; align-items: center; justify-content: center; gap: 20px; margin-top: 32px; }
.carousel-btn {
  width: 42px; height: 42px;
  border-radius: 50%;
  background: var(--white);
  border: 1.5px solid var(--gray-light);
  color: var(--navy);
  font-size: 16px;
  display: flex; align-items: center; justify-content: center;
  transition: var(--transition);
}
.carousel-btn:hover { background: var(--blue); border-color: var(--blue); color: var(--navy-deep); transform: scale(1.08); }
.carousel-dots { display: flex; gap: 8px; }
.carousel-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--gray-light); transition: var(--transition); cursor: pointer; }
.carousel-dot.active { background: var(--blue); width: 24px; border-radius: 4px; }
@media (max-width: 1024px) {
  .carousel-track .review-card { flex: 0 0 calc((100% - 22px) / 2); }
}
@media (max-width: 768px) {
  .carousel-track {
    gap: 0;
  }
  .carousel-track .review-card { flex: 0 0 100%; margin-right: 0; }
}

/* ===== NOTIFICATION TOAST ===== */
#toast {
  position: fixed; bottom: 32px; right: 32px;
  background: var(--navy);
  border: 1px solid var(--blue);
  border-left: 4px solid var(--blue);
  color: var(--white);
  padding: 16px 22px;
  border-radius: var(--radius);
  font-size: 14px; font-weight: 600;
  box-shadow: var(--shadow-lg);
  z-index: 9999;
  transform: translateX(120%);
  transition: transform 0.35s cubic-bezier(0.4,0,0.2,1);
  max-width: 320px;
}
#toast.show { transform: translateX(0); }

/* ===== PREMIUM QUOTE HERO OVERRIDE ===== */

.quote-page .quote-hero-redesign::before,
.quote-page .quote-hero-redesign::after,
.quote-page .quote-hero-redesign .quote-hero-overlay {
  display: none;
}
.quote-hero-bg-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 44%;
  overflow: hidden;
  background: var(--sky-soft);
}
.quote-hero-bg-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.74) 18%, rgba(255,255,255,0.16) 52%, rgba(255,255,255,0) 100%),
    linear-gradient(180deg, rgba(255,255,255,0.1) 0%, rgba(244,249,252,0.54) 100%);
}
.quote-hero-bg-panel .quote-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  opacity: 0.58;
  filter: saturate(1.08) contrast(1.03);
}
.quote-redesign-grid {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 42px;
  align-items: stretch;
}
.quote-redesign-main {
  max-width: 780px;
}
.quote-redesign-main h1 {
  max-width: 760px;
  color: var(--navy);
  font-size: clamp(44px, 5.2vw, 72px);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
  margin-bottom: 22px;
  text-wrap: balance;
}
.quote-redesign-main p {
  max-width: 650px;
  color: #334b62;
  font-size: 18px;
  line-height: 1.75;
  margin-bottom: 28px;
}
.quote-redesign-form {
  max-width: 760px;
  padding: 28px;
  border-radius: 8px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(47,155,210,0.22);
  border-top: 5px solid var(--blue);
  box-shadow: 0 24px 70px rgba(23,49,84,0.14);
}
.quote-redesign-form .quote-form-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}
.quote-redesign-form .quote-form-header h2 {
  margin: 4px 0 0;
  font-size: 28px;
}
.quote-redesign-form .quote-field-grid {
  margin-bottom: 12px;
}
.quote-redesign-side {
  display: grid;
  grid-template-rows: auto auto 1fr;
  gap: 16px;
  align-self: center;
}
.quote-image-card {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  min-height: 300px;
  background: var(--white);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 24px 70px rgba(23,49,84,0.16);
}
.quote-image-card img {
  width: 100%;
  height: 100%;
  min-height: 300px;
  object-fit: cover;
  object-position: center;
}
.quote-image-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0) 48%, rgba(10,22,40,0.58) 100%);
}
.quote-image-badge {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  z-index: 1;
  padding: 15px 16px;
  border-radius: 8px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.7);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(14px);
}
.quote-image-badge strong,
.quote-image-badge span,
.quote-side-stats strong,
.quote-side-stats span {
  display: block;
}
.quote-image-badge strong {
  color: var(--navy);
  font-size: 16px;
}
.quote-image-badge span {
  color: var(--text-mid);
  font-size: 12px;
  line-height: 1.5;
}
.quote-side-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.quote-side-stats div {
  padding: 16px 12px;
  border-radius: 8px;
  background: var(--white);
  border: 1px solid rgba(47,155,210,0.18);
  box-shadow: var(--shadow-sm);
}
.quote-side-stats strong {
  color: var(--navy);
  font-size: 24px;
  line-height: 1;
  margin-bottom: 7px;
}
.quote-side-stats span {
  color: var(--blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.35;
  text-transform: uppercase;
}
.quote-side-note {
  padding: 22px;
  border-radius: 8px;
  background: linear-gradient(180deg, var(--white) 0%, #edf8fd 100%);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: var(--shadow-sm);
}
.quote-side-note strong {
  display: block;
  color: var(--navy);
  font-size: 18px;
  margin-bottom: 8px;
}
.quote-side-note p {
  color: var(--text-mid);
  font-size: 13px;
  line-height: 1.7;
}

.quote-page .quote-hero {
  min-height: 820px;
  isolation: isolate;
  background:
    linear-gradient(135deg, #ffffff 0%, #f4fbff 48%, #eaf6fc 100%);
}
.quote-page .quote-hero::before {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
  width: min(58vw, 780px);
  height: 100%;
  background:
    linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.78) 18%, rgba(255,255,255,0.1) 46%, rgba(255,255,255,0) 100%),
    linear-gradient(180deg, rgba(16,35,60,0.04) 0%, rgba(16,35,60,0.2) 100%);
  z-index: 1;
}
.quote-page .quote-hero::after {
  content: '';
  position: absolute;
  left: 40px;
  right: 40px;
  bottom: 34px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.32), rgba(23,49,84,0.18), transparent);
  z-index: 4;
}
.quote-page .quote-hero-img {
  left: auto;
  width: min(58vw, 820px);
  height: calc(100% - 92px);
  top: 46px;
  right: 0;
  border-radius: 8px 0 0 8px;
  object-position: center right;
  box-shadow: -28px 34px 90px rgba(23,49,84,0.22);
  transform: none;
}
.quote-page .quote-hero-overlay {
  background:
    linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.98) 42%, rgba(255,255,255,0.64) 62%, rgba(255,255,255,0.12) 100%),
    radial-gradient(circle at 15% 20%, rgba(47,155,210,0.14), rgba(47,155,210,0) 32%);
  z-index: 2;
}
.quote-page .quote-hero .container {
  z-index: 5;
}
.quote-page .quote-hero-grid {
  grid-template-columns: minmax(0, 0.82fr) minmax(430px, 0.58fr);
  gap: 70px;
}
.quote-page .quote-hero-copy {
  padding: 18px 0;
}
.quote-page .quote-hero h1 {
  max-width: 660px;
  color: var(--navy);
  font-size: clamp(48px, 5.8vw, 82px);
  line-height: 0.98;
}
.quote-page .quote-hero h1::after {
  content: '';
  display: block;
  width: 104px;
  height: 5px;
  margin-top: 26px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--blue), var(--navy));
}
.quote-page .quote-hero p {
  max-width: 580px;
}
.quote-page .quote-trust-row span {
  background: var(--white);
  border-color: rgba(47,155,210,0.18);
  box-shadow: 0 12px 30px rgba(23,49,84,0.08);
}
.quote-page .quote-proof-strip {
  max-width: 560px;
}
.quote-page .quote-proof-strip div {
  background: linear-gradient(180deg, #ffffff 0%, #f6fbfe 100%);
  border-color: rgba(47,155,210,0.2);
}
.quote-page .quote-form-shell {
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(247,251,254,0.96) 100%);
  border: 1px solid rgba(47,155,210,0.24);
  border-top: 5px solid var(--blue);
  box-shadow: 0 34px 90px rgba(23,49,84,0.2);
}
.quote-page .quote-form-header h2 {
  font-size: 32px;
}
.quote-page .quote-form-accent {
  background: var(--navy);
  color: var(--white);
  border-color: var(--navy);
}

/* ===== MOBILE NAV ===== */
#mobile-nav {
  display: none;
  background: var(--white);
  padding: 20px;
  border-top: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 18px 35px rgba(23,49,84,0.10);
}
#mobile-nav.open { display: block; }
#mobile-nav a { display: block; color: var(--navy); padding: 12px 0; font-size: 15px; border-bottom: 1px solid rgba(23,49,84,0.08); }
#mobile-nav a:hover { color: var(--blue); }
#mobile-nav .sub-menu { margin: 0; padding: 0 0 4px 18px; list-style: none; }
#mobile-nav .sub-menu a { padding: 9px 0; color: var(--text-mid); font-size: 14px; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .nav-links, .nav-cta, .nav-right { display: none; }
  .nav-toggle { display: flex; }
  #mobile-nav > li { list-style: none; }
  .quote-hero { min-height: auto; }
  .quote-hero-grid,
  .quote-intro-grid,
  .quote-next-grid { grid-template-columns: 1fr; }
  .quote-info-cards { grid-template-columns: repeat(3, 1fr); }
  .home-page .stats-bar .container { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
  .home-page .stat:nth-child(2) { border-right: none; }
  .home-page .stat:nth-child(-n+2) { border-bottom: 1px solid rgba(47,155,210,0.14); }
  .services-hero { min-height: 640px; }
  .services-hero-layout { grid-template-columns: 1fr; gap: 34px; }
  .services-hero-card { max-width: 460px; align-self: auto; }
  .services-overview-grid,
  .quote-assist-grid { grid-template-columns: 1fr; }
  .premium-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .comparison-advisor-grid { grid-template-columns: 1fr; }
  .comparison-feature-row { grid-template-columns: 1fr; }
  .faq-grid { grid-template-columns: 1fr 1fr; }
  .services-grid { grid-template-columns: repeat(2,1fr); }
  .services-grid-4 { grid-template-columns: repeat(2,1fr); }
  .offer-premium-section .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .routes-premium-section .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .why-premium-shell { grid-template-columns: 1fr; }
  .why-premium-lead { min-height: auto; }
  .why-premium-media img { min-height: 300px; }
  .why-premium-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .why-premium-copy { padding: 32px 30px; }
  .dealers-cta-panel { grid-template-columns: 1fr; }
  .about-cta-contact { grid-template-columns: 1fr 1fr; }
  .steps-grid-4 { grid-template-columns: repeat(2,1fr); }
  .steps-grid-5 { grid-template-columns: repeat(3,1fr); }
  .process-premium-section .steps-grid::before { display: none; }
  .reviews-grid { grid-template-columns: repeat(2,1fr); }
  .blog-grid { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .split { grid-template-columns: 1fr; }
  .split-content { padding: 48px 40px; }
}
@media (max-width: 768px) {
  .container { padding: 0 20px; }
  .section { padding: 56px 0; }
  :root { --header-gap: 36px; }
  .services-hero {
    min-height: auto;
    padding: 0 0 64px;
  }
  .services-hero .container { padding-top: 24px; padding-bottom: 0; }
  .services-hero-overlay {
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.95) 42%, rgba(255,255,255,0.68) 100%);
  }
  .services-hero-img { opacity: 0.48; }
  .services-hero h1 {
    font-size: 38px;
    line-height: 1.12;
  }
  .services-hero p { font-size: 16px; }
  .services-hero-actions { flex-direction: column; align-items: stretch; }
  .services-hero-stats { grid-template-columns: 1fr; margin-top: 24px; }
  .services-hero-card { padding: 22px; max-width: none; }
  .services-hero-card h2 { font-size: 22px; }
  .quote-hero {
    min-height: auto;
    padding: 0 0 62px;
  }
  .quote-page .quote-hero {
    min-height: auto;
  }
  .quote-page .quote-hero::before {
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.92) 48%, rgba(255,255,255,0.76) 100%);
  }
  .quote-page .quote-hero::after {
    left: 20px;
    right: 20px;
    bottom: 24px;
  }
  .quote-page .quote-hero-img {
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    box-shadow: none;
    opacity: 0.36;
    object-position: center top;
  }
  .quote-page .quote-hero-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .quote-page .quote-hero h1 {
    font-size: 40px;
    line-height: 1.08;
  }
  .quote-page .quote-hero h1::after {
    width: 82px;
    height: 4px;
    margin-top: 20px;
  }
  .quote-hero .container {
    padding-top: 24px;
    padding-bottom: 0;
  }
  .quote-hero-overlay {
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.96) 42%, rgba(255,255,255,0.72) 100%);
  }
  .quote-hero-img { opacity: 0.48; object-position: center top; }
  .quote-hero-grid { gap: 34px; }
  .quote-hero h1 {
    font-size: 38px;
    line-height: 1.12;
  }
  .quote-hero p { font-size: 16px; }
  .quote-proof-strip { grid-template-columns: 1fr; margin-top: 20px; }
  .quote-proof-strip div { padding: 14px 16px; }
  .quote-proof-strip strong { font-size: 24px; }
  .quote-form-shell { padding: 24px; }
  .quote-field-grid,
  .quote-info-cards { grid-template-columns: 1fr; }
  .quote-intro-section,
  .quote-next-section,
  .quote-cta-section { padding: 58px 0; }
  .quote-next-grid,
  .quote-intro-grid { gap: 34px; }
  .quote-info-card { min-height: auto; }
  .response-badge {
    position: static;
    max-width: none;
    border-radius: 0;
  }
  .quote-timeline div { grid-template-columns: 1fr; }
  .quote-timeline span { grid-row: auto; margin-bottom: 12px; }
  .quote-cta-panel {
    display: block;
    padding: 30px;
  }
  .quote-cta-panel .btn { margin-top: 22px; width: 100%; }
  .services-overview,
  .quote-assist-section,
  .service-comparison-section { padding: 58px 0; }
  .services-overview-grid,
  .quote-assist-grid { gap: 34px; }
  .overview-points div { grid-template-columns: 1fr; }
  .overview-points span { grid-row: auto; margin-bottom: 12px; }
  .premium-service-grid,
  .faq-grid { grid-template-columns: 1fr; }
  .ghl-form-head { display: block; }
  .ghl-form-head span { display: block; margin-top: 4px; white-space: normal; }
  .ghl-form-grid { grid-template-columns: 1fr; }
  .guidance-mini-grid { grid-template-columns: 1fr; }
  .quote-assist-badge { position: static; border-radius: 0; }
  .quote-assist-media img { min-height: 420px; }
  .advisor-card { min-height: auto; }
  .premium-service-card { min-height: auto; }
  .service-card-visual { height: 210px; }
  .comparison-feature-row div { padding: 18px 16px; }
  .media-stat {
    position: static;
    max-width: none;
    border-radius: 0;
  }
  .overview-media img,
  .quote-assist-media img { aspect-ratio: 1 / 0.82; }
  .comparison-table th,
  .comparison-table td { padding: 18px 16px; }
  .home-hero { min-height: auto; align-items: flex-start; }
  .home-hero .container { padding-top: 130px; padding-bottom: 40px; }
  .home-hero-bg { opacity: 0.4; background-position: center top; }
  .home-hero-wash {
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.95) 40%, rgba(255,255,255,0.6) 100%);
  }
  .hero-content-wrapper { flex-direction: column; gap: 32px; }
  .hero-copy { text-align: center; }
  .hero-form-container { flex: 0 0 auto; width: 100%; }
  .hero-eyebrow {
    font-size: 10px;
    letter-spacing: 1.6px;
    padding: 8px 14px;
    justify-content: center;
  }
  .hero-title {
    font-size: 34px;
    line-height: 1.12;
    margin-bottom: 14px;
  }
  .hero-subtitle {
    font-size: 16px;
    line-height: 1.65;
    margin-bottom: 18px;
    text-align: center;
  }
  .hero-support-row { gap: 8px; margin-bottom: 20px; justify-content: center; }
  .hero-support-item { font-size: 12px; padding: 8px 11px; }
  .home-page .home-hero {
    min-height: auto;
    padding-top: 0;
  }
  .home-page .home-hero::before {
    display: none;
  }
  .home-page .home-hero-bg {
    top: 18px;
    right: 20px;
    bottom: auto;
    left: 20px;
    width: auto;
    height: 230px;
    border-radius: 18px;
    background-position: center;
    opacity: 1;
  }
  .home-page .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.12) 0%, rgba(245,251,255,0.28) 165px, var(--home-bg) 270px, var(--home-bg) 100%);
  }
  .home-page .home-hero .container {
    padding-top: 270px;
    padding-bottom: 42px;
  }
  .home-page .hero-content-wrapper {
    gap: 28px;
  }
  .home-page .hero-title {
    font-size: 34px;
    letter-spacing: 0;
  }
  .home-page .hero-subtitle {
    font-size: 16px;
  }
  .home-page .hero-support-row {
    justify-content: center;
    max-width: 100%;
    margin-bottom: 6px;
    gap: 8px;
  }
  .home-page .hero-support-item {
    min-height: 38px;
    justify-content: center;
    text-align: center;
    padding: 9px 18px;
  }
  .home-page .hero-support-item:not(:last-child)::after {
    top: auto;
    left: 16px;
    right: 16px;
    bottom: 0;
    width: auto;
    height: 1px;
  }
  .home-page .quote-form-box {
    padding: 22px 18px;
  }
  .home-page .form-row,
  .home-page .form-row.three {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 10px;
  }
  .home-page .form-row.three .fg {
    grid-column: auto !important;
  }
  .home-page .form-submit-row {
    display: block;
    margin-top: 14px;
  }
  .home-page .form-submit {
    width: 100%;
    justify-content: center;
    margin-top: 10px;
  }
  #main-nav { position: sticky; }
  .nav-inner { height: 76px; }
  .nav-logo { min-height: 54px; padding: 8px 10px; border-radius: 14px; }
  .nav-logo img { height: 38px !important; transform: translateY(4px); }
  .nav-links, .nav-cta, .nav-right { display: none; }
  .nav-toggle { display: flex; }
  .stats-bar .container { grid-template-columns: repeat(2,1fr); }
  .home-page .stats-bar { padding: 26px 0 32px; }
  .home-page .stats-bar .container { grid-template-columns: 1fr; gap: 12px; }
  .home-page .stat {
    min-height: 104px;
    border-right: none !important;
    border-bottom: 1px solid rgba(47,155,210,0.14);
  }
  .home-page .stat:last-child { border-bottom: none; }
  .services-grid { grid-template-columns: 1fr; }
  .services-grid-4 { grid-template-columns: 1fr; }
  .offer-premium-section .services-grid { grid-template-columns: 1fr; }
  .offer-premium-section .svc-card-img { height: 220px; }
  .offer-premium-section .svc-card-body p { min-height: auto; }
  .routes-premium-section .services-grid { grid-template-columns: 1fr; }
  .routes-premium-section .svc-card {
    min-height: auto;
    padding: 26px 20px !important;
  }
  .routes-premium-section .svc-card h3 {
    min-height: auto;
  }
  .why-premium-section .section-header { margin-bottom: 30px; }
  .why-premium-shell {
    padding: 8px;
    border-radius: 14px;
  }
  .why-premium-lead {
    min-height: auto;
    grid-template-columns: 1fr;
    padding: 0;
    border-radius: 10px;
  }
  .why-premium-media img {
    min-height: 220px;
    max-height: 260px;
  }
  .why-premium-copy {
    padding: 26px 22px;
  }
  .why-premium-lead h3 {
    font-size: 28px;
    margin-top: 16px;
  }
  .why-premium-grid {
    grid-template-columns: 1fr;
  }
  .why-premium-card {
    min-height: auto;
    padding: 24px 20px;
  }
  .why-premium-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
  }
  .dealers-cta-panel { padding: 28px 22px; }
  .dealers-cta-copy { text-align: center; }
  .dealers-cta-copy p { margin-left: auto; margin-right: auto; }
  .dealers-cta-actions { justify-content: center; }
  .dealers-mini-card { grid-template-columns: 1fr; text-align: center; }
  .dealers-mini-card span { margin: 0 auto 12px; }
  .about-cta-contact { grid-template-columns: 1fr; }
  .about-contact-item { text-align: left; }
  .about-final-cta {
    padding: 42px 0 48px;
  }
  .about-final-cta .cta-content {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 218px 18px 24px;
    text-align: center;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.10) 34%, rgba(255,255,255,0.98) 54%, rgba(255,255,255,0.98) 100%),
      url('../images/Home banner.png') center top / 100% 200px no-repeat,
      #ffffff;
  }
  .about-final-cta h2,
  .about-final-cta p {
    margin-left: auto;
    margin-right: auto;
  }
  .about-final-cta .about-cta-contact {
    max-width: none;
    grid-template-columns: minmax(0, 1fr);
  }
  .about-final-cta .about-contact-item,
  .about-final-cta .btn {
    min-width: 0;
    width: 100%;
  }
  .about-final-cta .about-contact-item {
    min-height: 64px;
    padding: 12px 14px;
    text-align: left;
  }
  .about-final-cta .about-contact-item svg {
    width: 24px;
    height: 24px;
  }
  .about-final-cta .cta-btns {
    justify-content: center;
  }
  .reviews-grid { grid-template-columns: 1fr; }
  .blog-grid { grid-template-columns: 1fr; }
  .steps-grid { grid-template-columns: 1fr; }
  .steps-grid-4 { grid-template-columns: 1fr; }
  .steps-grid-5 { grid-template-columns: 1fr; }
  .steps-grid::before { display: none; }
  .process-premium-section .step-card {
    min-height: auto;
    padding: 26px 20px;
  }
  .process-premium-section .step-card h3 {
    min-height: auto;
  }
  .gallery-strip { grid-template-columns: 1fr; height: auto; }
  .gallery-strip .g-item { height: 200px; }
  
  .cta-banner { padding: 64px 0; text-align: center; }
  .cta-banner-bg { background-position: center center; opacity: 0.6; background-repeat: no-repeat; }
  .cta-banner-wash { background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.95) 40%, rgba(255,255,255,0.6) 100%); }
  .cta-content {
    max-width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    padding: 28px 22px;
    text-align: center;
  }
  .cta-content::after {
    min-height: 230px;
    order: -1;
  }
  .cta-banner h2,
  .cta-banner p {
    margin-left: auto;
    margin-right: auto;
  }
  .cta-btns { justify-content: center; }

  .footer-grid { grid-template-columns: 1fr; }
  .trust-strip .container { gap: 18px; }
  .contact-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .form-row.three { grid-template-columns: 1fr; }
  .quote-form-box { padding: 28px 28px; }
  .form-submit-row { flex-direction: column; align-items: stretch; }
  .form-note { text-align: center; }
  .form-submit { justify-content: center; width: 100%; }
  #sticky-search.visible { max-height: 280px; }
  .sticky-inner,
  .sticky-inner .sticky-quote-form { flex-direction: column; align-items: stretch; gap: 10px; }
  .sticky-label { text-align: center; }
  .sticky-fields { flex-direction: column; flex-wrap: nowrap; }
  .sticky-btn { width: 100%; }
  .split-content { padding: 32px 24px; }
}

/* Final scoped rules for the fully redesigned Get Quote hero */
.quote-page .quote-hero-redesign {
  min-height: auto;
  padding: 0 0 78px;
  background: linear-gradient(180deg, #ffffff 0%, #f4f9fc 58%, var(--cream) 100%);
}
.quote-page .quote-hero-redesign::before,
.quote-page .quote-hero-redesign::after {
  display: none;
}
.quote-page .quote-hero-redesign .container {
  padding-top: 0;
  padding-bottom: 0;
}
.quote-page .quote-hero-redesign .quote-hero-bg-panel .quote-hero-img {
  inset: 0;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  border-radius: 0;
  box-shadow: none;
  opacity: 0.58;
}
.quote-page .quote-hero-redesign .quote-redesign-grid {
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 42px;
}
.quote-page .quote-hero-redesign .quote-form-shell {
  max-width: 760px;
  border-top: 5px solid var(--blue);
}

@media (max-width: 1024px) {
  .quote-hero-bg-panel { width: 100%; opacity: 0.28; }
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr;
  }
  .quote-redesign-side {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }
  .quote-side-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .quote-page .quote-hero-redesign {
    padding: 0 0 54px;
  }
  .quote-redesign-main h1 {
    font-size: 38px;
    line-height: 1.08;
  }
  .quote-redesign-main p {
    font-size: 16px;
  }
  .quote-redesign-form {
    padding: 22px;
  }
  .quote-redesign-form .quote-form-header {
    display: block;
  }
  .quote-page .quote-hero-redesign .quote-redesign-grid,
  .quote-redesign-side,
  .quote-side-stats {
    grid-template-columns: 1fr;
  }
  .quote-image-card,
  .quote-image-card img {
    min-height: 240px;
  }
}

/* Clean premium Get Quote hero redesign */
.quote-page .quote-hero-redesign {
  padding: 0 0 82px;
  min-height: calc(100vh - var(--nav-height));
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, #ffffff 0%, #ffffff 48%, #edf8fd 48%, #edf8fd 100%);
  overflow: hidden;
}
.quote-page .quote-hero-redesign .container {
  max-width: 1320px;
  width: 100%;
  padding: 0 56px;
}
.quote-page .quote-hero-redesign .quote-hero-bg-panel {
  display: none;
}
.quote-page .quote-hero-redesign .quote-redesign-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, 0.82fr);
  gap: 58px;
  align-items: center;
}
.quote-page .quote-hero-redesign .quote-redesign-main {
  max-width: none;
}
.quote-page .quote-hero-redesign .breadcrumb {
  margin-bottom: 16px;
}
.quote-page .quote-hero-redesign .eyebrow {
  margin-bottom: 14px;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1 {
  max-width: 680px;
  font-size: clamp(52px, 5vw, 78px);
  line-height: 1.02;
  margin-bottom: 22px;
}
.quote-page .quote-hero-redesign .quote-redesign-main p {
  max-width: 620px;
  font-size: 18px;
  line-height: 1.75;
  margin-bottom: 30px;
}
.quote-page .quote-hero-redesign .quote-redesign-form {
  width: 100%;
  max-width: 760px;
  padding: 34px 36px;
  background: #ffffff;
  border: 1px solid rgba(23,49,84,0.1);
  border-top: 5px solid var(--blue);
  box-shadow: 0 28px 80px rgba(23,49,84,0.14);
}
.quote-page .quote-hero-redesign .quote-redesign-form::before {
  display: none;
}
.quote-page .quote-hero-redesign .quote-form-header {
  align-items: flex-start;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--gray-light);
}
.quote-page .quote-hero-redesign .quote-form-header h2 {
  font-size: 30px;
}
.quote-page .quote-hero-redesign .quote-field-grid {
  gap: 16px;
  margin-bottom: 16px;
}
.quote-page .quote-hero-redesign .quote-form-shell .fg input,
.quote-page .quote-hero-redesign .quote-form-shell .fg select {
  min-height: 54px;
  border-radius: 8px;
  background: #f8fbfd;
  font-size: 14px;
}
.quote-page .quote-hero-redesign .form-submit-row {
  margin-top: 24px;
}
.quote-page .quote-hero-redesign .form-submit {
  min-width: 210px;
}
.quote-page .quote-hero-redesign .quote-redesign-side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  align-self: stretch;
}
.quote-page .quote-hero-redesign .quote-image-card {
  min-height: 500px;
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: 0 30px 90px rgba(23,49,84,0.18);
}
.quote-page .quote-hero-redesign .quote-image-card img {
  min-height: 500px;
  object-position: center;
}
.quote-page .quote-hero-redesign .quote-image-badge {
  left: 24px;
  right: 24px;
  bottom: 24px;
  padding: 20px 22px;
}
.quote-page .quote-hero-redesign .quote-image-badge strong {
  font-size: 20px;
}
.quote-page .quote-hero-redesign .quote-image-badge span {
  font-size: 13px;
}
.quote-page .quote-hero-redesign .quote-side-stats {
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.quote-page .quote-hero-redesign .quote-side-stats div {
  padding: 18px 16px;
  background: #ffffff;
}
.quote-page .quote-hero-redesign .quote-side-stats strong {
  font-size: 30px;
}
.quote-page .quote-hero-redesign .quote-side-note {
  padding: 24px;
  background: #ffffff;
}
.quote-page .quote-hero-redesign .quote-side-note p {
  font-size: 14px;
}

@media (max-width: 1100px) {
  .quote-page .quote-hero-redesign {
    background: linear-gradient(180deg, #ffffff 0%, #edf8fd 100%);
  }
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .quote-redesign-form {
    max-width: none;
  }
  .quote-page .quote-hero-redesign .quote-redesign-side {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.7fr);
  }
  .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .quote-page .quote-hero-redesign {
    padding: 46px 0 56px;
    min-height: auto;
  }
  .quote-page .quote-hero-redesign .container {
    padding: 0 20px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-main h1 {
    font-size: 40px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-form {
    padding: 24px;
  }
  .quote-page .quote-hero-redesign .quote-form-header {
    display: block;
  }
  .quote-page .quote-hero-redesign .quote-field-grid,
  .quote-page .quote-hero-redesign .quote-redesign-side,
  .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .quote-image-card,
  .quote-page .quote-hero-redesign .quote-image-card img {
    min-height: 280px;
  }
}

/* Premium quote hero polish */
.quote-page .quote-hero-redesign {
  position: relative;
  min-height: calc(100vh - var(--nav-height));
  padding: 0 0 78px;
  color: var(--navy-deep);
  background:
    linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.92) 44%, rgba(237,248,253,0.72) 44%, rgba(237,248,253,0.96) 100%),
    linear-gradient(135deg, #ffffff 0%, #f7fafc 42%, #e7f5fb 100%);
  overflow: hidden;
  isolation: isolate;
}
.quote-page .quote-hero-redesign::before,
.quote-page .quote-hero-redesign::after {
  content: '';
  display: block;
  position: absolute;
  pointer-events: none;
}
.quote-page .quote-hero-redesign::before {
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(rgba(23,49,84,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23,49,84,0.055) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
  opacity: 0.38;
}
.quote-page .quote-hero-redesign::after {
  right: -12vw;
  top: -18%;
  z-index: -1;
  width: min(62vw, 860px);
  height: 140%;
  background:
    linear-gradient(135deg, rgba(16,35,60,0.92), rgba(25,127,180,0.84)),
    url('../images/Home banner.png') center / cover;
  clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 100%);
  box-shadow: -40px 0 110px rgba(23,49,84,0.18);
}
.quote-page .quote-hero-redesign .container {
  max-width: 1320px;
  width: 100%;
  padding: 0 52px;
}
.quote-page .quote-hero-redesign .quote-redesign-grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(390px, 0.72fr);
  gap: clamp(34px, 5vw, 72px);
  align-items: center;
}
.quote-page .quote-hero-redesign .breadcrumb {
  color: rgba(49,82,119,0.82);
  margin-bottom: 18px;
}
.quote-page .quote-hero-redesign .eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 9px 15px;
  border-radius: 999px;
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(47,155,210,0.24);
  box-shadow: 0 12px 26px rgba(23,49,84,0.07);
  letter-spacing: 1.8px;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1 {
  max-width: 720px;
  margin: 0 0 24px;
  color: var(--navy-deep);
  font-size: clamp(48px, 5.7vw, 82px);
  line-height: 1.02;
  letter-spacing: 0;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1 span {
  color: transparent;
  background: linear-gradient(90deg, var(--blue-dark), var(--navy));
  -webkit-background-clip: text;
  background-clip: text;
}
.quote-page .quote-hero-redesign .quote-redesign-main p {
  max-width: 650px;
  margin-bottom: 22px;
  color: #31485e;
  font-size: 18px;
  line-height: 1.72;
}
.quote-hero-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 26px;
}
.quote-hero-trust span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(23,49,84,0.09);
  box-shadow: 0 10px 24px rgba(23,49,84,0.07);
  color: var(--navy);
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}
.quote-hero-trust span::before {
  content: '';
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background: #2f9bd2;
  box-shadow: 0 0 0 4px rgba(47,155,210,0.14);
}
.quote-page .quote-hero-redesign .quote-redesign-form {
  position: relative;
  max-width: 780px;
  padding: 30px;
  border-radius: 8px;
  background:
    linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(135deg, rgba(47,155,210,0.72), rgba(23,49,84,0.24), rgba(255,255,255,0.7)) border-box;
  border: 1px solid transparent;
  box-shadow: 0 34px 90px rgba(23,49,84,0.18);
}
.quote-page .quote-hero-redesign .quote-redesign-form::after {
  content: '';
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, var(--blue), var(--navy));
}
.quote-page .quote-hero-redesign .quote-form-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(23,49,84,0.08);
}
.quote-page .quote-hero-redesign .quote-form-header h2 {
  margin: 5px 0 0;
  color: var(--navy-deep);
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.16;
  letter-spacing: 0;
}
.quote-form-pill {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 62px;
  min-height: 34px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #10233c;
  color: #ffffff;
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
.quote-page .quote-hero-redesign .quote-field-grid {
  gap: 14px;
  margin-bottom: 14px;
}
.quote-page .quote-hero-redesign .quote-form-shell .fg label {
  color: #3d5871;
  font-size: 11px;
  font-weight: 850;
}
.quote-page .quote-hero-redesign .quote-form-shell .fg input,
.quote-page .quote-hero-redesign .quote-form-shell .fg select {
  min-height: 52px;
  border-radius: 8px;
  background: #f7fafc;
  border: 1px solid rgba(23,49,84,0.1);
}
.quote-page .quote-hero-redesign .quote-form-shell .fg input:hover,
.quote-page .quote-hero-redesign .quote-form-shell .fg select:hover {
  border-color: rgba(47,155,210,0.38);
  background: #ffffff;
}
.quote-page .quote-hero-redesign .form-submit-row {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(23,49,84,0.08);
}
.quote-page .quote-hero-redesign .form-note {
  color: #5d7286;
  font-weight: 700;
}
.quote-page .quote-hero-redesign .form-submit {
  min-height: 52px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--navy) 0%, var(--blue-dark) 100%);
  box-shadow: 0 16px 34px rgba(25,127,180,0.24);
}
.quote-page .quote-hero-redesign .quote-redesign-side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-self: stretch;
  padding: 0;
}
.quote-page .quote-hero-redesign .quote-image-card {
  position: relative;
  min-height: 520px;
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  background: var(--navy-deep);
  border: 1px solid rgba(255,255,255,0.36);
  box-shadow: 0 36px 95px rgba(16,35,60,0.3);
}
.quote-page .quote-hero-redesign .quote-image-card img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center;
  filter: saturate(1.06) contrast(1.03);
}
.quote-page .quote-hero-redesign .quote-image-card::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(16,35,60,0.08) 0%, rgba(16,35,60,0.08) 42%, rgba(16,35,60,0.78) 100%),
    linear-gradient(90deg, rgba(47,155,210,0.2), rgba(255,255,255,0));
}
.quote-route-card {
  position: absolute;
  top: 22px;
  left: 22px;
  z-index: 2;
  width: min(250px, calc(100% - 44px));
  padding: 17px 18px;
  border-radius: 8px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.72);
  box-shadow: 0 18px 42px rgba(16,35,60,0.18);
  backdrop-filter: blur(16px);
}
.quote-route-card span {
  display: block;
  color: var(--blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}
.quote-route-card strong {
  display: block;
  color: var(--navy);
  font-size: 15px;
  line-height: 1.3;
  margin: 3px 0 12px;
}
.quote-route-card strong:last-child {
  margin-bottom: 0;
}
.quote-page .quote-hero-redesign .quote-image-badge {
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 2;
  padding: 18px 20px;
  border-radius: 8px;
  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(255,255,255,0.72);
}
.quote-page .quote-hero-redesign .quote-side-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
}
.quote-page .quote-hero-redesign .quote-side-stats div,
.quote-page .quote-hero-redesign .quote-side-note {
  border-radius: 8px;
  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(23,49,84,0.08);
  box-shadow: 0 18px 46px rgba(23,49,84,0.12);
}
.quote-page .quote-hero-redesign .quote-side-stats div {
  padding: 17px 12px;
}
.quote-page .quote-hero-redesign .quote-side-stats strong {
  color: var(--navy-deep);
  font-size: 28px;
}
.quote-page .quote-hero-redesign .quote-side-note {
  padding: 22px;
}
.quote-page .quote-hero-redesign .quote-side-note strong {
  color: var(--navy-deep);
}

@media (max-width: 1100px) {
  .quote-page .quote-hero-redesign {
    min-height: auto;
    background: linear-gradient(180deg, #ffffff 0%, #edf8fd 100%);
  }
  .quote-page .quote-hero-redesign::after {
    right: -28vw;
    opacity: 0.18;
  }
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .quote-redesign-form {
    max-width: none;
  }
  .quote-page .quote-hero-redesign .quote-redesign-side {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.7fr);
    align-items: stretch;
  }
  .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .quote-page .quote-hero-redesign {
    padding: 40px 0 54px;
  }
  .quote-page .quote-hero-redesign::before {
    background-size: 42px 42px;
    opacity: 0.22;
  }
  .quote-page .quote-hero-redesign::after {
    display: none;
  }
  .quote-page .quote-hero-redesign .container {
    padding: 0 20px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    gap: 30px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-main h1 {
    font-size: clamp(36px, 11vw, 46px);
    line-height: 1.08;
  }
  .quote-page .quote-hero-redesign .quote-redesign-main p {
    font-size: 16px;
    line-height: 1.65;
  }
  .quote-hero-trust span {
    width: 100%;
    white-space: normal;
  }
  .quote-page .quote-hero-redesign .quote-redesign-form {
    padding: 24px 20px;
  }
  .quote-page .quote-hero-redesign .quote-form-header,
  .quote-page .quote-hero-redesign .form-submit-row {
    display: block;
  }
  .quote-form-pill {
    margin-top: 12px;
  }
  .quote-page .quote-hero-redesign .quote-field-grid,
  .quote-page .quote-hero-redesign .quote-redesign-side,
  .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .form-submit {
    width: 100%;
    justify-content: center;
    margin-top: 13px;
  }
  .quote-page .quote-hero-redesign .quote-image-card,
  .quote-page .quote-hero-redesign .quote-image-card img {
    min-height: 360px;
  }
}

/* Final quote hero balance fix */
.quote-page .quote-hero-redesign {
  min-height: auto;
  padding: 58px 0 66px;
  background:
    linear-gradient(90deg, #ffffff 0%, #ffffff 55%, #eef8fd 55%, #eef8fd 100%);
}
.quote-page .quote-hero-redesign::after {
  display: none;
}
.quote-page .quote-hero-redesign::before {
  z-index: 0;
  opacity: 0.22;
}
.quote-page .quote-hero-redesign .container,
.quote-page .quote-hero-redesign .quote-redesign-grid {
  position: relative;
  z-index: 2;
}
.quote-page .quote-hero-redesign .quote-redesign-grid {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 42px;
  align-items: start;
}
.quote-page .quote-hero-redesign .quote-redesign-main {
  padding: 0;
}
.quote-page .quote-hero-redesign .breadcrumb {
  margin-bottom: 14px;
}
.quote-page .quote-hero-redesign .eyebrow {
  margin-bottom: 18px;
  background: #edf8fd;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1 {
  max-width: 690px;
  margin-bottom: 18px;
  color: var(--navy-deep);
  font-size: clamp(42px, 4.7vw, 64px);
  line-height: 1.06;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1::after {
  display: none;
}
.quote-page .quote-hero-redesign .quote-redesign-main h1 span {
  background: linear-gradient(90deg, var(--blue), var(--blue-dark));
  -webkit-background-clip: text;
  background-clip: text;
}
.quote-page .quote-hero-redesign .quote-redesign-main p {
  max-width: 640px;
  margin-bottom: 18px;
  color: #415970;
  font-size: 16px;
  line-height: 1.68;
}
.quote-hero-trust {
  margin-bottom: 20px;
}
.quote-page .quote-hero-redesign .quote-redesign-form {
  max-width: 720px;
  padding: 24px;
  box-shadow: 0 24px 60px rgba(23,49,84,0.14);
}
.quote-page .quote-hero-redesign .quote-form-header {
  margin-bottom: 16px;
  padding-bottom: 13px;
}
.quote-page .quote-hero-redesign .quote-form-header h2 {
  font-size: 24px;
}
.quote-page .quote-hero-redesign .quote-field-grid {
  gap: 12px;
  margin-bottom: 12px;
}
.quote-page .quote-hero-redesign .quote-form-shell .fg input,
.quote-page .quote-hero-redesign .quote-form-shell .fg select {
  min-height: 48px;
}
.quote-page .quote-hero-redesign .form-submit-row {
  margin-top: 16px;
  padding-top: 14px;
}
.quote-page .quote-hero-redesign .quote-image-card {
  min-height: 430px;
}
.quote-page .quote-hero-redesign .quote-image-card img {
  min-height: 430px;
}
.quote-page .quote-hero-redesign .quote-side-note {
  display: none;
}

@media (max-width: 1100px) {
  .quote-page .quote-hero-redesign {
    background: linear-gradient(180deg, #ffffff 0%, #eef8fd 100%);
  }
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .quote-redesign-side {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.55fr);
  }
  .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .quote-page .quote-hero-redesign {
    padding: 34px 0 48px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-main h1 {
    font-size: clamp(34px, 10vw, 42px);
  }
  .quote-page .quote-hero-redesign .quote-redesign-form {
    padding: 20px;
  }
  .quote-page .quote-hero-redesign .quote-redesign-side {
    grid-template-columns: 1fr;
  }
}

/* Quote form width refinement */
.quote-page .quote-hero-redesign .quote-redesign-grid {
  grid-template-columns: minmax(620px, 760px) minmax(360px, 440px);
  justify-content: space-between;
  gap: 48px;
}
.quote-page .quote-hero-redesign .quote-redesign-main {
  width: 100%;
  max-width: 760px;
}
.quote-page .quote-hero-redesign .quote-redesign-form {
  width: 100%;
  max-width: none;
  padding: 28px;
}
.quote-page .quote-hero-redesign .quote-field-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 16px;
}
.quote-page .quote-hero-redesign .quote-form-shell .fg input,
.quote-page .quote-hero-redesign .quote-form-shell .fg select {
  min-height: 52px;
  padding: 13px 15px;
  font-size: 14px;
}
.quote-page .quote-hero-redesign .form-submit-row {
  align-items: center;
}

@media (max-width: 1180px) {
  .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr;
  }
  .quote-page .quote-hero-redesign .quote-redesign-main {
    max-width: none;
  }
  .quote-page .quote-hero-redesign .quote-redesign-side {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.45fr);
  }
}

@media (max-width: 768px) {
  .quote-page .quote-hero-redesign .quote-redesign-form {
    padding: 22px;
  }
  .quote-page .quote-hero-redesign .quote-field-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* Dedicated quote form section */
.quote-page .quote-hero-redesign {
  padding-bottom: 56px;
}
.quote-page .quote-hero-redesign .quote-redesign-grid {
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.62fr);
  align-items: center;
}
.quote-page .quote-hero-redesign .quote-redesign-main {
  max-width: 760px;
}
.quote-page .quote-form-section {
  position: relative;
  padding: 76px 0 86px;
  background: linear-gradient(180deg, #ffffff 0%, #f4fbff 100%);
  border-top: 1px solid rgba(23,49,84,0.07);
}
.quote-page .quote-form-section::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(23,49,84,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23,49,84,0.04) 1px, transparent 1px);
  background-size: 54px 54px;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 78%);
  mask-image: linear-gradient(180deg, #000 0%, transparent 78%);
  opacity: 0.32;
}
.quote-page .quote-form-section .container {
  position: relative;
  z-index: 1;
}
.quote-form-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.42fr) minmax(620px, 0.9fr);
  gap: 42px;
  align-items: start;
}
.quote-form-copy {
  position: sticky;
  top: calc(var(--nav-height) + 26px);
  padding-top: 10px;
}
.quote-form-copy .section-title {
  max-width: 420px;
  margin-bottom: 14px;
  font-size: clamp(34px, 3.8vw, 50px);
  letter-spacing: 0;
}
.quote-form-copy p {
  max-width: 410px;
  color: #415970;
  font-size: 16px;
  line-height: 1.72;
}
.quote-page .quote-form-section .quote-section-form {
  width: 100%;
  max-width: none;
  padding: 34px 36px;
  border-radius: 8px;
  background: #ffffff;
  border: 1px solid rgba(23,49,84,0.1);
  box-shadow: 0 30px 80px rgba(23,49,84,0.14);
}
.quote-page .quote-form-section .quote-form-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(23,49,84,0.08);
}
.quote-page .quote-form-section .quote-form-header h2 {
  margin: 5px 0 0;
  color: var(--navy-deep);
  font-size: clamp(26px, 2.5vw, 34px);
  line-height: 1.15;
}
.quote-page .quote-form-section .quote-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 18px;
}
.quote-page .quote-form-section .fg label {
  color: #3d5871;
  font-size: 11px;
  font-weight: 850;
}
.quote-page .quote-form-section .fg input,
.quote-page .quote-form-section .fg select {
  min-height: 56px;
  width: 100%;
  padding: 14px 16px;
  border-radius: 8px;
  background: #f7fafc;
  border: 1px solid rgba(23,49,84,0.11);
  font-size: 14px;
}
.quote-page .quote-form-section .fg input:focus,
.quote-page .quote-form-section .fg select:focus {
  background: #ffffff;
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(47,155,210,0.1);
}
.quote-page .quote-form-section .form-submit-row {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgba(23,49,84,0.08);
}
.quote-page .quote-form-section .form-submit {
  min-height: 54px;
  min-width: 230px;
  justify-content: center;
  border-radius: 999px;
}

@media (max-width: 1024px) {
  .quote-form-layout {
    grid-template-columns: 1fr;
  }
  .quote-form-copy {
    position: static;
  }
  .quote-form-copy .section-title,
  .quote-form-copy p {
    max-width: 720px;
  }
}

@media (max-width: 768px) {
  .quote-page .quote-form-section {
    padding: 54px 0 62px;
  }
  .quote-page .quote-form-section .quote-section-form {
    padding: 22px;
  }
  .quote-page .quote-form-section .quote-form-header,
  .quote-page .quote-form-section .form-submit-row {
    display: block;
  }
  .quote-page .quote-form-section .quote-field-grid {
    grid-template-columns: 1fr;
    gap: 13px;
  }
  .quote-page .quote-form-section .form-submit {
    width: 100%;
    margin-top: 14px;
  }
}

@media (max-width: 768px) {
  .home-page .cta-banner {
    padding: 58px 0 68px;
  }
  .home-page .cta-content {
    min-height: auto;
    padding: 270px 22px 30px;
    text-align: center;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.08) 38%, rgba(255,255,255,0.98) 54%, rgba(255,255,255,0.98) 100%),
      url('../images/Home banner.png') center top / 100% 250px no-repeat,
      #ffffff;
  }
  .home-page .cta-banner h2,
  .home-page .cta-banner p {
    margin-left: auto;
    margin-right: auto;
  }
  .home-page .cta-btns {
    justify-content: center;
  }
}

/* Homepage spacing and shadow cleanup */
.home-page {
  --section-pad: 58px;
  --header-gap: 32px;
}
.home-page .section {
  padding-top: 58px;
  padding-bottom: 58px;
  border: none !important;
}
.home-page .section-header {
  margin-bottom: 32px;
}
.home-page .trust-strip {
  padding: 18px 0;
  border: none !important;
}
.home-page .stats-bar {
  padding: 22px 0 30px;
  border: none !important;
}
.home-page .why-premium-section::before,
.home-page .offer-premium-section::before,
.home-page .routes-premium-section::before,
.home-page .cta-banner-wash,
.home-page #main-nav::after {
  display: none !important;
}

.about-page #main-nav::after,
.about-page #about-fleet::before,
.about-page .cta-banner-wash,
.about-page .fleet-divider {
  display: none !important;
}
.about-page .team-card-hero,
.about-page .team-card-sm,
.about-page .fleet-card,
.about-page .fc-label,
.about-page .svc-card,
.about-page .promise-grid > div,
.about-page .review-card,
.about-page .faq-item,
.about-page .about-final-cta .cta-content,
.about-page .about-contact-item,
.about-page .value-card,
.about-page .story-card,
.about-page .mission-card {
  box-shadow: none !important;
}
.about-page .section,
.about-page section {
  border: none !important;
}

/* About hero matched to index premium hero */
.about-page .home-hero {
  min-height: 740px;
  background: var(--home-bg);
  isolation: isolate;
}
.about-page .home-hero-bg {
  top: 140px;
  right: max(24px, calc((100vw - 1320px) / 2));
  bottom: 54px;
  left: auto;
  width: min(49vw, 710px);
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 24px;
  background-size: cover;
  background-position: center;
  opacity: 1;
  box-shadow: none;
}
.about-page .home-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(23,49,84,0.02), rgba(23,49,84,0.20)),
    linear-gradient(90deg, rgba(245,251,255,0.18), rgba(255,255,255,0));
}
.about-page .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%);
}
.about-page .home-hero .container {
  max-width: 1320px;
  padding-top: 180px;
  padding-bottom: 42px;
}
.about-page .hero-content-wrapper {
  gap: 42px;
}
.about-page .hero-copy {
  max-width: 720px;
}
.about-page .hero-eyebrow {
  background: rgba(237,248,253,0.92);
  border-color: rgba(47,155,210,0.24);
  box-shadow: none;
}
.about-page .hero-title {
  max-width: 760px;
  font-size: clamp(46px, 5.1vw, 68px);
  letter-spacing: 0;
  margin-bottom: 14px;
}
.about-page .hero-title span {
  display: block;
  margin-top: 8px;
  color: transparent;
  background: linear-gradient(90deg, var(--blue-dark), var(--navy));
  -webkit-background-clip: text;
  background-clip: text;
}
.about-page .hero-subtitle {
  max-width: 650px;
  color: #415970;
  font-size: 17px;
  margin-bottom: 22px;
}
.about-page .hero-copy > .btn-outline {
  min-height: 48px;
  margin-top: 16px !important;
  padding: 13px 26px;
  background: linear-gradient(90deg, var(--navy), var(--navy-mid));
  border-color: var(--navy);
  color: var(--white);
  box-shadow: none;
}
.about-page .hero-form-container {
  display: none;
}
.about-page .hero-stat-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.about-page .hero-stat-box {
  min-height: 104px;
  padding: 20px 24px;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 16px;
  background: rgba(255,255,255,0.90);
  box-shadow: none;
}
.about-page .hero-stat-box:hover {
  transform: none;
}
.about-page .hero-stat-box .num {
  font-size: 36px;
  color: var(--navy);
  text-shadow: none;
}

.about-page .about-stats-bar {
  padding: 22px 0 30px;
  background: var(--home-bg);
}
.about-page #about-reviews + .about-stats-bar {
  display: none;
}
.about-page .about-stats-bar:not(.about-stats-after-hero) {
  display: none;
}
.about-page .about-stats-bar .container {
  max-width: 1320px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 18px;
  background: rgba(255,255,255,0.82);
  overflow: hidden;
}
.about-page .about-stat {
  position: relative;
  min-height: 122px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  padding: 24px 22px;
}
.about-page .about-stat:not(:last-child) {
  border-right: 1px solid rgba(47,155,210,0.14);
}
.about-page .about-stat::before {
  content: "";
  position: absolute;
  top: 22px;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4fc3f7;
  box-shadow: 0 0 0 7px rgba(79,195,247,0.12);
  transform: translateX(-50%);
}
.about-page .about-stat .num {
  margin-top: 20px;
  color: var(--navy);
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 900;
  line-height: 1;
}
.about-page .about-stat .num span {
  font-size: 0.62em;
}
.about-page .about-stat .lbl {
  margin-top: 8px;
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.home-page .why-premium-section {
  padding-top: 58px;
}
.home-page .cta-banner {
  padding-top: 62px;
  padding-bottom: 72px;
}
.home-page .home-hero-bg,
.home-page .hero-eyebrow,
.home-page .hero-support-item,
.home-page .hero-copy > .btn-outline,
.home-page .quote-form-box,
.home-page .trust-item,
.home-page .stats-bar .container,
.home-page .stat,
.home-page .svc-card,
.home-page .why-premium-shell,
.home-page .why-premium-lead,
.home-page .why-premium-card,
.home-page .dealers-cta-panel,
.home-page .dealers-mini-card,
.home-page .step-card,
.home-page .review-card,
.home-page .cta-content {
  box-shadow: none !important;
}
.home-page .svc-card:hover,
.home-page .why-premium-card:hover,
.home-page .dealers-mini-card:hover,
.home-page .step-card:hover,
.home-page .review-card:hover,
.home-page .routes-premium-section .svc-card:hover,
.home-page .offer-premium-section .svc-card:hover {
  box-shadow: 0 0 0 1px rgba(79,195,247,0.22) !important;
}
.home-page .hero-copy > .btn-outline:hover {
  box-shadow: none !important;
}

@media (max-width: 768px) {
  .home-page {
    --section-pad: 46px;
    --header-gap: 26px;
  }
  .home-page .section {
    padding-top: 46px;
    padding-bottom: 46px;
  }
  .home-page .section-header {
    margin-bottom: 26px;
  }
  .home-page .stats-bar {
    padding: 18px 0 24px;
  }
  .home-page .trust-strip {
    padding: 14px 0;
  }
  .home-page .cta-banner {
    padding-top: 46px;
    padding-bottom: 52px;
  }
}

@media (max-width: 900px) {
  .about-page .home-hero {
    min-height: auto;
  }
  .about-page .home-hero-bg {
    top: 18px;
    right: 20px;
    bottom: auto;
    left: 20px;
    width: auto;
    height: 230px;
    border-radius: 18px;
  }
  .about-page .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.12) 0%, rgba(245,251,255,0.28) 165px, var(--home-bg) 270px, var(--home-bg) 100%);
  }
  .about-page .home-hero .container {
    padding-top: 180px;
    padding-bottom: 42px;
  }
  .about-page .hero-content-wrapper {
    flex-direction: column;
    gap: 28px;
  }
  .about-page .hero-copy {
    text-align: center;
  }
  .about-page .hero-title {
    font-size: 34px;
  }
  .about-page .hero-subtitle {
    font-size: 16px;
    text-align: center;
  }
  .about-page .hero-form-container {
    flex: 0 0 auto;
    width: 100%;
  }
  .about-page .hero-stat-row {
    grid-template-columns: 1fr;
  }
  .about-page .about-stats-bar {
    padding: 18px 0 24px;
  }
  .about-page .about-stats-bar .container {
    grid-template-columns: 1fr;
  }
  .about-page .about-stat {
    min-height: 104px;
    border-right: none !important;
    border-bottom: 1px solid rgba(47,155,210,0.14);
  }
  .about-page .about-stat:last-child {
    border-bottom: none;
  }
  #about-team .team-grid,
  #about-team .team-bottom-row {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0;
    border: none;
  }
  #about-team .team-card-hero,
  #about-team .team-card-sm {
    min-height: auto;
    padding: 24px 20px !important;
    border-bottom: 1px solid rgba(47,155,210,0.14) !important;
  }
  #about-team .team-card-hero::after,
  #about-team .team-card-sm::after {
    display: none;
  }
  #about-fleet .fleet-gallery {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  #about-fleet .fleet-card,
  #about-fleet .fleet-card:nth-child(2) {
    height: 260px !important;
  }
}

@media (max-width: 560px) {
  #about-fleet {
    padding: 48px 0 52px !important;
  }
  #about-fleet .section-header {
    margin-bottom: 28px !important;
  }
  #about-fleet .fleet-card,
  #about-fleet .fleet-card:nth-child(2) {
    height: 230px !important;
  }
  #about-fleet .fleet-card .fc-label {
    width: min(74%, 260px);
    left: 14px;
    bottom: 14px;
  }
}

/* Blended image hero treatment for index and about */
.home-page .home-hero,
.about-page .home-hero {
  min-height: 700px;
  align-items: center;
  background: var(--home-bg);
}
.about-page .home-hero {
  min-height: 510px;
}
.home-page .home-hero-bg,
.about-page .home-hero-bg {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  border-radius: 0 !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: none !important;
}
.home-page .home-hero-bg::after,
.about-page .home-hero-bg::after {
  display: none !important;
}
.home-page .home-hero-wash,
.about-page .home-hero-wash {
  background:
    linear-gradient(90deg, rgba(245,251,255,1) 0%, rgba(245,251,255,0.98) 35%, rgba(245,251,255,0.84) 57%, rgba(245,251,255,0.34) 82%, rgba(245,251,255,0.06) 100%),
    linear-gradient(180deg, rgba(245,251,255,0.18) 0%, rgba(245,251,255,0.86) 100%) !important;
}
.home-page .home-hero .container,
.about-page .home-hero .container {
  max-width: 1320px;
  padding-top: 180px;
  padding-bottom: 64px;
}
.about-page .home-hero .container {
  padding-top: 180px;
  padding-bottom: 18px;
}
.about-page .about-stats-bar {
  padding-top: 0;
}
.home-page .hero-content-wrapper,
.about-page .hero-content-wrapper {
  align-items: center;
}
.home-page .hero-copy,
.about-page .hero-copy,
.service-copy-page .services-hero-content,
.help-centre-page .help-hero-copy {
  width: 100%;
  max-width: 710px;
}

.home-page .hero-title,
.about-page .hero-title,
.service-copy-page .services-hero h1,
.help-centre-page .help-hero h1 {
  max-width: 760px;
}

.home-page .hero-subtitle,
.about-page .hero-subtitle,
.service-copy-page .services-hero p,
.help-centre-page .help-hero-copy p {
  max-width: 660px;
}

.service-copy-page .services-hero-title span {
  display: block;
  white-space: nowrap;
}

.service-copy-page .services-hero-title .accent {
  color: var(--blue-dark);
}

html body.home-page main.service-copy-page .services-hero .services-hero-layout,
html body.home-page main.service-copy-page .services-hero .services-hero-content,
html body.home-page main.help-centre-page .help-hero .help-hero-copy {
  width: 100%;
  max-width: 710px !important;
}

html body.home-page main.service-copy-page .services-hero h1,
html body.home-page main.help-centre-page .help-hero h1 {
  max-width: 760px !important;
}

html body.home-page main.service-copy-page .services-hero p,
html body.home-page main.help-centre-page .help-hero-copy p {
  max-width: 660px !important;
}

/* Final Services page layout matched to index.html */


html body.home-page main.service-copy-page section:not(.services-home-hero):not(.hero-split),
html body.home-page main.service-copy-page .section,
html body.home-page main.service-copy-page .service-method-section,
html body.home-page main.service-copy-page .business-mini-section,
html body.home-page main.service-copy-page .coverage-summary-section,
html body.home-page main.service-copy-page .pricing-section,
html body.home-page main.service-copy-page .testimonial-section,
html body.home-page main.service-copy-page .services-faq-section {
  padding: var(--section-pad) 0 !important;
  margin: 0 !important;
  background: var(--home-bg) !important;
}


/* Final EOF restore for index page section heading sizing */


/* Services page final surgical layout repair */


html body.home-page main.service-copy-page .services-home-hero {
  min-height: 620px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
  background: var(--home-bg) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}


html body.home-page main.service-copy-page .services-stats-section .container {
  max-width: 1200px !important;
}


html body.home-page main.service-copy-page .service-card-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--card-gap) !important;
  margin: var(--card-gap) 0 0 !important;
}

html body.home-page main.service-copy-page .pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--card-gap) !important;
  margin: 0 !important;
}


html body.home-page main.service-copy-page .method-feature-card {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  overflow: hidden !important;
}


html body.home-page main.service-copy-page .method-note {
  max-width: 960px !important;
  margin: var(--card-gap) auto 0 !important;
  padding: 30px 40px !important;
  text-align: center !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: var(--radius-lg) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: var(--shadow-sm) !important;
}


html body.home-page main.service-copy-page .coverage-summary-action {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 22px !important;
  align-items: center !important;
  margin-top: 18px !important;
  padding: 24px 28px !important;
  border: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 12px !important;
  background: #f8fdff !important;
}


@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .method-split-grid,
  html body.home-page main.service-copy-page .service-card-grid,
  html body.home-page main.service-copy-page .pricing-grid,
  html body.home-page main.service-copy-page .coverage-lane-grid,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats div {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(47,155,210,0.16) !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats div:last-child {
    border-bottom: 0 !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* Services headings and section rhythm matched to index.html */


html body.home-page main.service-copy-page .method-feature-card h3,
html body.home-page main.service-copy-page .service-card-grid h3,
html body.home-page main.service-copy-page .coverage-lane-card h3,
html body.home-page main.service-copy-page .pricing-grid h3,
html body.home-page main.service-copy-page .services-faq-section h3 {
  font-size: 20px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}


/* Services How We Ship width matched to index.html sections */
html body.home-page main.service-copy-page #how-we-ship .container {
  max-width: 1200px !important;
}

html body.home-page main.service-copy-page #how-we-ship .section-header {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page #how-we-ship .section-title {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: clamp(30px, 3.7vw, 44px) !important;
  line-height: 1.16 !important;
}

html body.home-page main.service-copy-page #how-we-ship .section-sub {
  max-width: 600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page #how-we-ship .method-split-grid,
html body.home-page main.service-copy-page #how-we-ship .service-card-grid {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* True EOF Services hero matched to about.html alignment */


html body.home-page main.service-copy-page .services-home-hero .container {
  max-width: 1320px !important;
  padding-top: 180px !important;
  padding-bottom: 58px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
  gap: 42px !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  width: 100% !important;
  max-width: 640px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 640px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  margin-bottom: 14px !important;
  font-size: clamp(38px, 4.2vw, 56px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 600px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  margin-bottom: 22px !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}


@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .container {
    padding-top: 180px !important;
    padding-bottom: 54px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper,
  html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy {
    display: block !important;
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
  html body.home-page main.service-copy-page .services-home-hero .hero-title,
  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Restore original Services hero content-only layout */
html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: block !important;
  max-width: 710px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  max-width: 710px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
  display: none !important;
}


html body.home-page main.service-copy-page .services-stats-section .services-hero-stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}

/* Services hero text width matched exactly to index hero */
html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  width: 100% !important;
  max-width: 720px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-copy,
html body.home-page main.service-copy-page .services-home-hero .services-hero-content {
  width: 100% !important;
  max-width: 720px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-title,
html body.home-page main.service-copy-page .services-home-hero .services-hero-title {
  max-width: 760px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 660px !important;
}

/* Restore index page section heading sizing */


/* Final Services hero index-layout lock */
html body.home-page main.service-copy-page .services-home-hero {
  min-height: 620px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
  background: var(--home-bg) !important;
  border-bottom: 0 !important;
  isolation: isolate !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
  top: 54px !important;
  right: max(24px, calc((100vw - 1320px) / 2)) !important;
  bottom: 54px !important;
  left: auto !important;
  width: min(49vw, 710px) !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: 24px !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: 0 34px 94px rgba(23,49,84,0.16) !important;
  z-index: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%) !important;
  z-index: 1 !important;
}


html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: 710px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
  flex: 0 0 460px !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
    align-items: flex-start !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
    opacity: 0.4 !important;
    background-position: center top !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.98) 0%, rgba(245,251,255,0.95) 58%, rgba(245,251,255,0.86) 100%) !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .container {
    padding-top: 180px !important;
    padding-bottom: 40px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-copy {
    text-align: center !important;
    margin: 0 auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }
}

/* Help Centre hero matched to index hero layout */
body.home-page .help-centre-page .help-home-hero {
  min-height: 640px;
  display: flex;
  align-items: flex-start;
  padding: 0;
  background: var(--home-bg);
  border-bottom: 0;
  isolation: isolate;
}

body.home-page .help-centre-page .help-home-hero .home-hero-bg {
  top: 140px;
  right: max(24px, calc((100vw - 1320px) / 2));
  bottom: 34px;
  left: auto;
  width: min(49vw, 710px);
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 24px;
  background-image: url("../images/Home banner.png");
  background-size: cover;
  background-position: center right;
  opacity: 1;
  box-shadow: 0 34px 94px rgba(23,49,84,0.16);
  z-index: 0;
}

body.home-page .help-centre-page .help-home-hero .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%);
  z-index: 1;
}

body.home-page .help-centre-page .help-home-hero .container {
  max-width: 1320px;
  padding-top: 180px;
  padding-bottom: 30px;
}

body.home-page .help-centre-page .help-home-hero .hero-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
}

body.home-page .help-centre-page .help-home-hero .hero-copy {
  flex: 1;
  width: auto;
  max-width: 710px !important;
  text-align: left;
}

body.home-page .help-centre-page .help-home-hero .hero-title {
  max-width: 760px !important;
  margin: 0 0 12px;
  color: var(--navy);
  font-size: clamp(46px, 5.1vw, 68px);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: 0;
}

body.home-page .help-centre-page .help-home-hero .hero-title span {
  display: block;
  margin-top: 8px;
  max-width: 540px;
  color: transparent !important;
  background: linear-gradient(90deg, var(--blue-dark), var(--navy));
  -webkit-background-clip: text;
  background-clip: text;
}

body.home-page .help-centre-page .help-home-hero .hero-subtitle {
  max-width: 660px !important;
  margin: 4px 0 20px;
  color: #415970;
  font-size: 17px;
  line-height: 1.7;
}

body.home-page .help-centre-page .help-home-hero .hero-form-container {
  flex: 0 0 460px;
}

body.home-page .help-centre-page .help-home-hero .help-ask-panel {
  margin: 0;
  padding: 30px;
  border-radius: 18px;
}

/* Services hero matched to index hero layout */
body.home-page .service-copy-page .services-home-hero {
  min-height: 620px;
  display: flex;
  align-items: center;
  padding: 0;
  background: var(--home-bg);
  border-bottom: 0;
  isolation: isolate;
}

body.home-page .service-copy-page .services-home-hero .home-hero-bg {
  top: 140px;
  right: max(24px, calc((100vw - 1320px) / 2));
  bottom: 54px;
  left: auto;
  width: min(49vw, 710px);
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 24px;
  background-image: url("../images/Home banner.png");
  background-size: cover;
  background-position: center right;
  opacity: 1;
  box-shadow: 0 34px 94px rgba(23,49,84,0.16);
  z-index: 0;
}

body.home-page .service-copy-page .services-home-hero .home-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(23,49,84,0.02), rgba(23,49,84,0.20)),
    linear-gradient(90deg, rgba(245,251,255,0.18), rgba(255,255,255,0));
}

body.home-page .service-copy-page .services-home-hero .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%);
  z-index: 1;
}

body.home-page .service-copy-page .services-home-hero .container {
  max-width: 1320px;
  padding-top: 180px;
  padding-bottom: 42px;
}

body.home-page .service-copy-page .services-home-hero .hero-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
}

body.home-page .service-copy-page .services-home-hero .hero-copy {
  flex: 1;
  width: auto;
  max-width: 710px !important;
  text-align: left;
}

body.home-page .service-copy-page .services-home-hero .hero-title {
  max-width: 760px !important;
  margin: 0 0 12px;
  color: var(--navy);
  font-size: clamp(46px, 5.1vw, 68px);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: 0;
}

body.home-page .service-copy-page .services-home-hero .hero-title span {
  display: block;
  white-space: nowrap;
}

body.home-page .service-copy-page .services-home-hero .hero-title .accent {
  color: var(--blue-dark);
}

body.home-page .service-copy-page .services-home-hero .hero-subtitle {
  max-width: 660px !important;
  margin: 4px 0 20px;
  color: #415970;
  font-size: 17px;
  line-height: 1.7;
}

body.home-page .service-copy-page .services-home-hero .hero-form-container {
  flex: 0 0 460px;
}

body.home-page .service-copy-page .services-home-hero .services-hero-card {
  position: relative;
  overflow: hidden;
  padding: 30px;
  border: 1px solid rgba(47,155,210,0.22);
  border-radius: 18px;
  background: rgba(255,255,255,0.92);
  box-shadow: 0 24px 70px rgba(13,42,74,0.09);
}

body.home-page .service-copy-page .services-home-hero .services-hero-card .card-kicker {
  margin-bottom: 12px;
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

body.home-page .service-copy-page .services-home-hero .services-hero-card h2 {
  margin: 0 0 20px;
  color: var(--navy);
  font-size: 24px;
  line-height: 1.2;
}

body.home-page .service-copy-page .services-home-hero .services-hero-stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 0;
}

body.home-page .service-copy-page .services-home-hero .services-hero-stats div {
  min-height: 0;
  display: grid;
  grid-template-columns: 82px 1fr;
  align-items: center;
  gap: 14px;
  padding: 14px 0;
  border-top: 1px solid rgba(47,155,210,0.16);
}

body.home-page .service-copy-page .services-home-hero .services-hero-stats strong {
  color: var(--navy);
  font-size: 28px;
  line-height: 1;
}

body.home-page .service-copy-page .services-home-hero .services-hero-stats span {
  color: var(--text-mid);
  font-size: 14px;
  font-weight: 700;
}

@media (max-width: 900px) {
  body.home-page .help-centre-page .help-home-hero {
    min-height: auto;
    align-items: flex-start;
  }

  body.home-page .help-centre-page .help-home-hero .home-hero-bg {
    opacity: 0.4;
    background-position: center top;
  }

  body.home-page .help-centre-page .help-home-hero .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.98) 0%, rgba(245,251,255,0.95) 58%, rgba(245,251,255,0.86) 100%);
  }

  body.home-page .help-centre-page .help-home-hero .container {
    padding-top: 130px;
    padding-bottom: 32px;
  }

  body.home-page .help-centre-page .help-home-hero .hero-content-wrapper {
    flex-direction: column;
    align-items: stretch;
  }

  body.home-page .help-centre-page .help-home-hero .hero-copy {
    text-align: center;
    margin: 0 auto;
  }

  body.home-page .help-centre-page .help-home-hero .hero-title span,
  body.home-page .help-centre-page .help-home-hero .hero-subtitle {
    margin-left: auto;
    margin-right: auto;
  }

  body.home-page .help-centre-page .help-home-hero .hero-form-container {
    flex: 0 0 auto;
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page .services-hero h1.services-hero-title {
    font-size: clamp(32px, 10vw, 48px) !important;
  }
}
.about-page .about-stats-bar {
  margin-top: 0;
}

@media (max-width: 900px) {
  .home-page .home-hero,
  .about-page .home-hero {
    min-height: auto;
  }
  .home-page .home-hero-bg,
  .about-page .home-hero-bg {
    inset: 0 !important;
    height: 100% !important;
    background-position: center top !important;
  }
  .home-page .home-hero-wash,
  .about-page .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.88) 0%, rgba(245,251,255,0.96) 44%, var(--home-bg) 100%) !important;
  }
  .home-page .home-hero .container,
  .about-page .home-hero .container {
    padding-top: 180px;
    padding-bottom: 44px;
  }
}

/* Premium open principle layout for About values */
.about-page #about-values {
  padding-top: 48px !important;
  padding-bottom: 54px !important;
}
.about-page #about-values .section-header {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
.about-page .values-rail {
  position: relative;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 30px !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
.about-page .values-rail::before {
  display: none !important;
}
.about-page .value-panel {
  min-height: 250px;
  padding: 30px 22px 28px !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.9) 0%, rgba(250,254,255,0.62) 100%) !important;
  border: 1px solid rgba(117,199,239,0.34) !important;
  border-right: 0 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  overflow: hidden;
  transition: transform 0.24s ease;
}
.about-page .value-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 30px;
  right: 30px;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), rgba(47,155,210,0.82), rgba(79,195,247,0.18));
}
.about-page .value-panel::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(255,255,255,0.48), rgba(255,255,255,0));
  pointer-events: none;
}
.about-page .value-panel:hover {
  background: linear-gradient(180deg, #ffffff 0%, rgba(244,251,255,0.92) 100%) !important;
  transform: translateY(-4px);
}
.about-page .value-num {
  display: none !important;
  position: static !important;
  order: -2;
  width: 78px;
  height: 78px;
  margin: 0 auto 20px;
  border-radius: 999px;
  background: linear-gradient(180deg, #ffffff 0%, #f2fbff 100%);
  border: 1px solid rgba(47,155,210,0.24);
  color: rgba(25,127,180,0.34) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em;
  line-height: 78px !important;
  box-shadow: none !important;
  z-index: 1;
}
.about-page .value-icon {
  order: -1;
  width: 54px !important;
  height: 54px !important;
  margin: 0 auto 24px !important;
  border-radius: 999px !important;
  background: rgba(235,248,255,0.88) !important;
  color: var(--blue) !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
  z-index: 2;
}
.about-page .value-icon svg {
  width: 27px;
  height: 27px;
  stroke-width: 2;
}
.about-page .value-title {
  position: relative;
  z-index: 2;
  color: var(--navy) !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.18;
  margin-bottom: 12px !important;
}
.about-page .value-desc {
  position: relative;
  z-index: 2;
  max-width: 260px;
  color: var(--text-mid) !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
}

@media (max-width: 980px) {
  .about-page .values-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 28px !important;
  }
  .about-page .values-rail::before {
    display: none;
  }
}

@media (max-width: 560px) {
  .about-page .values-rail {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .about-page .value-panel {
    min-height: auto;
    padding-bottom: 10px !important;
  }
}

/* Full-width final CTA on home and about pages */
.home-page .cta-banner .cta-inner,
.about-page .about-final-cta .cta-inner {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.home-page .cta-banner .cta-content,
.about-page .about-final-cta .cta-content {
  width: 100%;
  max-width: none;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}

/* Premium frequent-shipper CTA */
.home-page .dealers-cta-section {
  padding-top: 70px;
  padding-bottom: 70px;
  background: #f5fbff !important;
}

.home-page .dealers-cta-panel {
  grid-template-columns: 1fr;
  gap: 28px;
  align-items: stretch;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none !important;
}


.home-page .dealers-cta-panel::after {
  display: none;
}

.home-page .dealers-cta-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: auto;
  padding: 0;
  text-align: center;
}

.home-page .dealers-cta-copy .eyebrow {
  width: max-content;
  margin-bottom: 18px;
  color: var(--blue-dark);
  background: rgba(237,248,253,0.92);
  border-color: rgba(47,155,210,0.22);
}

.home-page .dealers-cta-copy h2 {
  max-width: 680px;
  color: var(--navy);
  font-size: clamp(36px, 4.7vw, 54px);
  line-height: 1.05;
  letter-spacing: 0;
}

.home-page .dealers-cta-copy p {
  max-width: 560px;
  color: #52687b;
  font-size: 17px;
  line-height: 1.75;
  margin-left: auto;
  margin-right: auto;
}

.home-page .dealers-cta-actions {
  justify-content: center;
  margin-top: 4px;
  order: 3;
}

.home-page .dealers-cta-actions .btn {
  width: max-content;
  min-height: 56px;
  border-radius: 999px;
  box-shadow: none !important;
  filter: none !important;
  text-shadow: none !important;
  transform: none !important;
}

.home-page .dealers-cta-actions a.btn.btn-primary.btn-lg[href="contact.html"] {
  box-shadow: 0 0 0 transparent !important;
  filter: none !important;
}

.home-page .dealers-cta-actions .btn:hover,
.home-page .dealers-cta-actions .btn:focus,
.home-page .dealers-cta-actions .btn:active {
  box-shadow: none !important;
  filter: none !important;
  text-shadow: none !important;
  transform: none !important;
}

.home-page .dealers-cta-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0;
  align-content: center;
  gap: 16px;
  order: 2;
}

.home-page .dealers-mini-card {
  position: relative;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 14px;
  min-height: 190px;
  padding: 28px 24px;
  border-radius: 8px;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,252,255,0.98));
  border: 1px solid rgba(47,155,210,0.14);
  box-shadow: 0 16px 36px rgba(23,49,84,0.07) !important;
  overflow: hidden;
}

.home-page .dealers-mini-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, rgba(47,155,210,0.16), rgba(79,195,247,0.74), rgba(47,155,210,0.16));
}

.home-page .dealers-mini-card span {
  width: 54px;
  height: 54px;
  border-radius: 8px;
  background: linear-gradient(180deg, #edf8fd, #dff3fb);
  border-color: rgba(47,155,210,0.22);
  color: var(--navy);
  font-size: 14px;
}

.home-page .dealers-mini-card h3 {
  font-size: 17px;
  color: var(--navy-deep);
  margin-bottom: 8px;
}

.home-page .dealers-mini-card p {
  color: #566c7e;
  max-width: 240px;
  margin-left: auto;
  margin-right: auto;
}

/* Remove visual gap before footer */
.home-page .cta-banner,
.about-page .about-final-cta {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 900px) {
  .home-page .dealers-cta-section {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .home-page .dealers-cta-panel {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 30px 22px;
  }

  .home-page .dealers-cta-panel::after {
    display: none;
  }

  .home-page .dealers-cta-copy {
    min-height: auto;
    padding: 0 0 28px;
    text-align: center;
    align-items: center;
  }

  .home-page .dealers-cta-copy p {
    margin-left: auto;
    margin-right: auto;
  }

  .home-page .dealers-cta-actions .btn {
    width: 100%;
    max-width: 360px;
  }

  .home-page .dealers-cta-actions {
    margin-top: 22px;
  }

  .home-page .dealers-cta-cards {
    grid-template-columns: 1fr;
    padding: 0;
  }
}

@media (max-width: 560px) {
  .home-page .dealers-mini-card {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .home-page .dealers-mini-card span {
    margin: 0 auto;
  }
}

/* Premium full-width final CTA */
.home-page .cta-banner,
.about-page .about-final-cta {
  padding-top: 46px !important;
  padding-bottom: 0 !important;
  background: #f5fbff !important;
}

.home-page .cta-banner .cta-inner,
.about-page .about-final-cta .cta-inner {
  padding-left: 0;
  padding-right: 0;
}

.home-page .cta-banner .cta-content,
.about-page .about-final-cta .cta-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: auto;
  gap: 24px;
  padding: 48px max(28px, calc((100vw - 800px) / 2));
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(245,251,255,0.08) 0%, rgba(245,251,255,0.16) 42%, rgba(245,251,255,0.94) 100%),
    linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.90) 44%, rgba(255,255,255,0.72) 68%, rgba(255,255,255,0.46) 100%),
    url('../images/Home banner.png') center / cover no-repeat;
  box-shadow: none !important;
  overflow: hidden;
}

.home-page .cta-banner .cta-content::before,
.about-page .about-final-cta .cta-content::before {
  content: "";
  position: absolute;
  inset: 0;
  height: auto;
  border-radius: 0;
  background:
    linear-gradient(90deg, transparent, rgba(79,195,247,0.55), transparent) top center / 62% 4px no-repeat,
    radial-gradient(circle at 50% 12%, rgba(79,195,247,0.22), transparent 32%);
  pointer-events: none;
}

.home-page .cta-banner .cta-content::after,
.about-page .about-final-cta .cta-content::after {
  display: none;
}

.home-page .cta-banner .eyebrow,
.about-page .about-final-cta .eyebrow {
  grid-column: 1;
  margin-bottom: 18px;
  background: rgba(255,255,255,0.82);
  border-color: rgba(47,155,210,0.24);
  box-shadow: none;
}

.home-page .cta-banner h2,
.about-page .about-final-cta h2 {
  grid-column: 1;
  max-width: 760px;
  margin: 0 0 16px;
  color: var(--navy);
  font-size: clamp(36px, 5vw, 62px);
  line-height: 1.02;
  letter-spacing: 0;
}

.home-page .cta-banner p,
.about-page .about-final-cta p {
  grid-column: 1;
  max-width: 660px;
  margin: 0;
  color: #4f6579;
  font-size: 17px;
  line-height: 1.72;
}

.home-page .cta-btns,
.about-page .about-final-cta .cta-btns {
  width: 100%;
  justify-content: stretch;
  gap: 12px;
}

.home-page .cta-btns .btn,
.about-page .about-final-cta .cta-btns .btn {
  flex: 1 1 100%;
  min-width: 0;
  justify-content: center;
  box-shadow: none !important;
}

.about-page .about-final-cta .about-cta-contact {
  width: 100%;
  grid-template-columns: 1fr;
  margin: 0 0 18px;
}

.home-page .cta-banner .cta-btns,
.about-page .about-final-cta .about-cta-contact,
.about-page .about-final-cta .cta-btns {
  grid-column: 2;
}

.home-page .cta-banner .cta-btns {
  grid-row: 1 / span 3;
  align-self: center;
  display: flex;
  flex-direction: column;
  padding: 26px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 8px;
  background: rgba(255,255,255,0.86);
}

.about-page .about-final-cta .about-cta-contact {
  grid-row: 1 / span 3;
  align-self: center;
  padding: 22px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 8px;
  background: rgba(255,255,255,0.86);
}

.about-page .about-final-cta .cta-btns {
  grid-row: 4;
  display: flex;
  flex-direction: column;
}

@media (max-width: 768px) {
  .home-page .cta-banner,
  .about-page .about-final-cta {
    padding-top: 52px !important;
  }

  .home-page .cta-banner .cta-content,
  .about-page .about-final-cta .cta-content {
    grid-template-columns: 1fr;
    gap: 26px;
    min-height: auto;
    padding: 56px 20px;
    text-align: center;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.88), rgba(245,251,255,0.98)),
      url('../images/Home banner.png') center top / cover no-repeat;
  }

  .home-page .cta-banner h2,
  .about-page .about-final-cta h2,
  .home-page .cta-banner p,
  .about-page .about-final-cta p {
    margin-left: auto;
    margin-right: auto;
  }

  .home-page .cta-banner .cta-btns,
  .about-page .about-final-cta .about-cta-contact,
  .about-page .about-final-cta .cta-btns {
    grid-column: auto;
    grid-row: auto;
  }

  .home-page .cta-btns .btn,
  .about-page .about-final-cta .cta-btns .btn {
    width: 100%;
    max-width: 340px;
  }
}

/* Center final CTA content on home and about pages */
.home-page .cta-banner .cta-content,
.about-page .about-final-cta .cta-content {
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
}

.home-page .cta-banner .eyebrow,
.about-page .about-final-cta .eyebrow,
.home-page .cta-banner h2,
.about-page .about-final-cta h2,
.home-page .cta-banner p,
.about-page .about-final-cta p,
.home-page .cta-banner .cta-btns,
.about-page .about-final-cta .about-cta-contact,
.about-page .about-final-cta .cta-btns {
  grid-column: 1;
  grid-row: auto;
  margin-left: auto;
  margin-right: auto;
}

.home-page .cta-banner .cta-btns,
.about-page .about-final-cta .cta-btns {
  align-self: center;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: auto;
  max-width: 760px;
  padding: 0;
  border: 0;
  background: transparent;
}

.home-page .cta-banner .cta-btns .btn,
.about-page .about-final-cta .cta-btns .btn {
  flex: 0 1 auto;
  min-width: 210px;
}

.about-page .about-final-cta .about-cta-contact {
  width: min(100%, 760px);
  justify-items: center;
  text-align: center;
}

@media (max-width: 768px) {
  .home-page .cta-banner .cta-btns {
    flex-direction: row;
    flex-wrap: nowrap !important;
    width: 100%;
  }
  .home-page .cta-banner .cta-btns .btn {
    flex: 1 1 0 !important;
    width: auto;
    max-width: none;
    min-width: 0;
    padding-left: 6px;
    padding-right: 6px;
    font-size: 11px;
  }
  .about-page .about-final-cta .cta-btns {
    flex-direction: column;
    width: 100%;
  }
}

/* Premium editorial layout for frequent shipper CTA */
.home-page .dealers-cta-section {
  padding-top: 58px;
  padding-bottom: 58px;
  background: #f5fbff !important;
}

.home-page .dealers-cta-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(390px, 1.1fr);
  gap: clamp(52px, 7vw, 110px);
  align-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none !important;
  overflow: visible;
}

.home-page .dealers-cta-panel::before {
  display: none;
}

.home-page .dealers-cta-copy::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 4px;
  border-radius: 999px;
  background: var(--blue);
}

.home-page .dealers-cta-copy {
  position: relative;
  grid-column: 1;
  grid-row: 1 / span 2;
  align-items: flex-start;
  justify-content: center;
  padding-left: 30px;
  text-align: left;
}

.home-page .dealers-cta-copy h2,
.home-page .dealers-cta-copy p {
  margin-left: 0;
  margin-right: 0;
}

.home-page .dealers-cta-copy .eyebrow {
  margin-bottom: 18px;
  color: var(--blue-dark);
  background: transparent;
  border-color: transparent;
  padding: 0;
  letter-spacing: 2.2px;
}

.home-page .dealers-cta-copy h2 {
  max-width: 520px;
  color: var(--navy);
  font-size: clamp(42px, 5vw, 68px);
  line-height: 0.98;
}

.home-page .dealers-cta-copy p {
  max-width: 430px;
  margin-top: 20px;
  color: #52687b;
  font-size: 18px;
  line-height: 1.7;
}

.home-page .dealers-cta-cards {
  grid-column: 2;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.home-page .dealers-mini-card {
  position: relative;
  grid-template-columns: 58px 1fr;
  justify-items: start;
  align-items: start;
  gap: 22px;
  min-height: auto;
  padding: 0 0 18px;
  border: 0 !important;
  border-radius: 0;
  text-align: left;
  background: transparent;
  box-shadow: none !important;
  overflow: visible;
}

.home-page .dealers-mini-card > div {
  display: grid;
  grid-template-columns: minmax(160px, 0.44fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  width: 100%;
}

.home-page .dealers-mini-card + .dealers-mini-card {
  border-top: 0 !important;
  padding-top: 18px;
}

.home-page .dealers-mini-card::before {
  display: none;
}

.home-page .dealers-mini-card span {
  width: 58px;
  height: 58px;
  border-radius: 8px;
  color: #fff;
  background: var(--navy);
  border: 0;
  box-shadow: none;
}

.home-page .dealers-mini-card h3 {
  color: var(--navy-deep);
  font-size: 19px;
  margin-bottom: 0;
  order: 2;
}

.home-page .dealers-mini-card p {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  color: #5b7081;
  font-size: 15px;
  order: 1;
}

.home-page .dealers-cta-actions {
  grid-column: 2;
  justify-content: flex-start;
  margin-top: 12px;
  margin-left: 80px;
  padding-top: 0;
  border-top: 0;
}

.home-page .dealers-cta-actions .btn {
  width: auto;
  min-width: 280px;
  min-height: 58px;
  background: var(--navy);
  color: #fff;
  border-radius: 999px;
  box-shadow: none !important;
}

.home-page .dealers-cta-actions .btn:hover {
  background: var(--blue-dark);
  color: #fff;
}

@media (max-width: 900px) {
  .home-page .dealers-cta-panel {
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 0;
  }

  .home-page .dealers-cta-copy {
    grid-column: 1;
    grid-row: auto;
    align-items: center;
    padding-left: 0;
    text-align: center;
  }

  .home-page .dealers-cta-copy::before {
    display: none;
  }

  .home-page .dealers-cta-copy h2,
  .home-page .dealers-cta-copy p {
    margin-left: auto;
    margin-right: auto;
  }

  .home-page .dealers-cta-cards,
  .home-page .dealers-cta-actions {
    grid-column: 1;
  }

  .home-page .dealers-cta-actions {
    margin-left: 0;
    justify-content: center;
  }

  .home-page .dealers-cta-actions .btn {
    width: 100%;
    max-width: 360px;
  }

  .home-page .dealers-mini-card {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .home-page .dealers-mini-card > div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}

/* Remove shadows site-wide */
*,
*::before,
*::after {
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
}

/* Match the site feel to slightly under 125% browser zoom on larger screens */
@media (min-width: 901px) {
  body {
    zoom: 1.15;
  }
}

/* Tighten final CTA text spacing */
.home-page .cta-banner .cta-content,
.about-page .about-final-cta .cta-content {
  row-gap: 12px !important;
}

.home-page .cta-banner .eyebrow,
.about-page .about-final-cta .eyebrow {
  margin-bottom: 6px !important;
}

.home-page .cta-banner h2,
.about-page .about-final-cta h2 {
  margin-bottom: 8px !important;
  line-height: 0.98 !important;
}

.home-page .cta-banner p,
.about-page .about-final-cta p {
  line-height: 1.45 !important;
}

.home-page .cta-banner .cta-btns,
.about-page .about-final-cta .cta-btns {
  margin-top: 8px !important;
}

/* Remove boxed contact panel from about final CTA */
.about-page .about-final-cta .about-cta-contact {
  width: min(100%, 620px) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
  margin: 20px auto 18px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.about-page .about-final-cta .about-contact-item {
  width: 100% !important;
  min-height: auto !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  justify-content: start !important;
  gap: 16px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  text-align: left !important;
}

.about-page .about-final-cta .about-contact-item svg {
  width: 28px !important;
  height: 28px !important;
  margin: 0 !important;
  filter: none !important;
  justify-self: center !important;
}

.about-page .about-final-cta .about-contact-item strong {
  font-size: 17px !important;
  line-height: 1.35 !important;
  text-align: left !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 640px) {
  .about-page .about-final-cta .about-cta-contact {
    width: min(100%, 360px) !important;
  }
}

/* Redesigned CTA Section Styles */
.redesigned-cta {
  background: linear-gradient(135deg, #f4f8fd 0%, #edf8fd 100%) !important;
  padding: 100px 0;
}
.redesigned-cta .dealers-cta-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.redesigned-cta .dealers-cta-copy {
  padding-left: 20px;
}
.redesigned-cta .eyebrow-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(33, 99, 219, 0.1);
  color: var(--blue, #2163db);
  padding: 8px 16px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1px;
  margin-bottom: 24px;
  text-transform: uppercase;
}


/* Services FAQ definitive final override */


.service-copy-page .services-faq-section .faq-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(79,195,247,0.34) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--blue-dark) !important;
  font-size: 20px !important;
  line-height: 1 !important;
}


@media (max-width: 640px) {
  .service-copy-page .services-faq-section .faq-question {
    min-height: 72px !important;
    padding: 19px 18px !important;
    font-size: 15px !important;
  }

  .service-copy-page .services-faq-section .faq-answer-inner {
    padding: 0 58px 22px 18px !important;
  }
}

/* Services FAQ final premium redesign */
.service-copy-page .services-faq-section {
  padding: 82px 0 !important;
  background: #ffffff !important;
}

.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.75fr) !important;
  gap: 52px !important;
  align-items: center !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

.service-copy-page .services-faq-section .faq-premium-shell {
  grid-column: 1 !important;
  grid-row: 1 !important;
  overflow: hidden !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 22px 62px rgba(23,49,84,0.08) !important;
}

.service-copy-page .services-faq-section .faq-grid {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
}

.service-copy-page .services-faq-section .faq-item {
  display: block !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(79,195,247,0.16) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.service-copy-page .services-faq-section .faq-item:last-child {
  border-bottom: 0 !important;
}

.service-copy-page .services-faq-section .faq-item.open,
.service-copy-page .services-faq-section .faq-item:hover {
  background: #f8fdff !important;
  box-shadow: inset 4px 0 0 #4fc3f7 !important;
}

.service-copy-page .services-faq-section .faq-question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px !important;
  gap: 18px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 74px !important;
  padding: 20px 24px !important;
  border: 0 !important;
  color: var(--navy) !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(79,195,247,0.34) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--blue-dark) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  transition: var(--transition) !important;
}

.service-copy-page .services-faq-section .faq-item.open .faq-icon {
  transform: rotate(45deg) !important;
  background: #eef9fe !important;
}

.service-copy-page .services-faq-section .faq-answer {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.32s ease !important;
}

.service-copy-page .services-faq-section .faq-item.open .faq-answer {
  max-height: 320px !important;
}

.service-copy-page .services-faq-section .faq-answer-inner {
  max-width: 620px !important;
  padding: 0 76px 24px 24px !important;
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  grid-column: 2 !important;
  grid-row: 1 !important;
  position: relative !important;
  margin: 0 !important;
  padding-left: 28px !important;
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-header::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  bottom: 4px !important;
  width: 4px !important;
  border-radius: 999px !important;
  background: #35b8f2 !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  max-width: 440px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .eyebrow {
  justify-content: flex-start !important;
}

.service-copy-page .services-faq-section .faq-premium-cta {
  margin-top: 24px !important;
}

@media (max-width: 1024px) {
  .service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    max-width: 760px !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header,
  .service-copy-page .services-faq-section .faq-premium-shell {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header {
    padding-left: 0 !important;
    text-align: center !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header::before {
    display: none !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-title {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

@media (max-width: 640px) {
  .service-copy-page .services-faq-section {
    padding: 58px 0 !important;
  }

  .service-copy-page .services-faq-section .faq-question {
    min-height: 72px !important;
    padding: 19px 18px !important;
    font-size: 15px !important;
  }

  .service-copy-page .services-faq-section .faq-answer-inner {
    padding: 0 58px 22px 18px !important;
  }
}
*** End of File

/* Services page final premium alignment */
.service-copy-page {
  background: #ffffff !important;
  color: var(--navy) !important;
}

.service-copy-page .container {
  width: min(100% - 40px, 1180px) !important;
}

.service-copy-page .section,
.service-copy-page .service-method-section,
.service-copy-page .business-mini-section,
.service-copy-page .coverage-summary-section,
.service-copy-page .pricing-section,
.service-copy-page .testimonial-section,
.service-copy-page .services-faq-section {
  position: relative !important;
  padding: 82px 0 !important;
  background: #ffffff !important;
}

.service-copy-page .section + .section,
.service-copy-page .testimonial-section,
.service-copy-page .quote-cta-section {
  border-top: 1px solid rgba(23,49,84,0.06) !important;
}

.service-copy-page .section-header {
  max-width: 850px !important;
  margin: 0 auto 38px !important;
  text-align: center !important;
}

.service-copy-page .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 32px !important;
  padding: 8px 15px !important;
  border: 1px solid rgba(79,195,247,0.26) !important;
  border-radius: 999px !important;
  background: #f8fdff !important;
  color: var(--blue-dark) !important;
  letter-spacing: 1.8px !important;
  line-height: 1 !important;
}

.service-copy-page .section-title {
  max-width: 820px !important;
  margin: 14px auto 0 !important;
  color: var(--navy) !important;
  font-size: clamp(34px, 4vw, 58px) !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
  text-wrap: balance !important;
}

.service-copy-page .section-sub {
  max-width: 710px !important;
  margin: 18px auto 0 !important;
  color: #526b82 !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
}

.service-copy-page .services-hero {
  min-height: auto !important;
  padding: 0 0 86px !important;
  align-items: center !important;
  background: #ffffff !important;
}

.service-copy-page .services-hero-img {
  opacity: 0.34 !important;
  object-position: center right !important;
  filter: saturate(0.95) contrast(1.02) !important;
}

.service-copy-page .services-hero-overlay {
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.96) 42%, rgba(255,255,255,0.78) 70%, rgba(255,255,255,0.54) 100%) !important;
}

.service-copy-page .services-hero .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.service-copy-page .services-hero-layout {
  grid-template-columns: minmax(0, 1.08fr) minmax(330px, 0.62fr) !important;
  gap: 46px !important;
  align-items: center !important;
}

.service-copy-page .services-hero-content {
  max-width: 790px !important;
}

.service-copy-page .services-hero h1 {
  max-width: 790px !important;
  margin-bottom: 20px !important;
  font-size: clamp(44px, 5.2vw, 72px) !important;
  letter-spacing: 0 !important;
}

.service-copy-page .services-hero p {
  max-width: 660px !important;
  color: #405b74 !important;
  font-size: 19px !important;
}

.service-copy-page .services-hero-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  max-width: 690px !important;
}

.service-copy-page .services-hero-stats div,
.service-copy-page .services-hero-card,
.service-copy-page .method-feature-card,
.service-copy-page .service-card-grid article,
.service-copy-page .method-note,
.service-copy-page .coverage-summary-card,
.service-copy-page .testimonial-panel,
.service-copy-page .faq-premium-shell {
  border: 1px solid rgba(23,49,84,0.09) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: 0 18px 48px rgba(23,49,84,0.07) !important;
}

.service-copy-page .services-hero-card {
  align-self: center !important;
  padding: 32px !important;
  backdrop-filter: blur(18px) !important;
}

.service-copy-page .planner-route {
  gap: 16px !important;
}

.service-copy-page .planner-route p {
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.service-copy-page .planner-link {
  color: var(--blue-dark) !important;
  font-weight: 900 !important;
}

.service-copy-page .method-split-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin: 0 0 26px !important;
  align-items: stretch !important;
}

.service-copy-page .method-feature-card {
  display: grid !important;
  grid-template-rows: 245px 1fr !important;
  overflow: hidden !important;
}

.service-copy-page .method-feature-card img {
  width: 100% !important;
  height: 245px !important;
  object-fit: cover !important;
  display: block !important;
}

.service-copy-page .method-feature-card > div {
  display: flex !important;
  min-height: 230px !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 30px !important;
  text-align: center !important;
}

.service-copy-page .method-feature-card h3 {
  margin: 0 0 12px !important;
  color: var(--navy) !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
}

.service-copy-page .method-feature-card p {
  max-width: 500px !important;
  margin: 0 auto !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.72 !important;
}

.service-copy-page .service-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 26px 0 0 !important;
}

.service-copy-page .service-card-grid article {
  display: flex !important;
  min-height: 190px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 26px 20px !important;
  text-align: center !important;
}

.service-copy-page .service-card-grid article span {
  width: 38px !important;
  height: 38px !important;
  margin: 0 0 16px !important;
  background: var(--navy) !important;
  color: #72d4ff !important;
}

.service-copy-page .service-card-grid article h3 {
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
}

.service-copy-page .service-card-grid article p {
  max-width: 240px !important;
  margin: 12px auto 0 !important;
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.service-copy-page .method-note {
  max-width: 960px !important;
  margin: 28px auto 0 !important;
  padding: 30px 40px !important;
  text-align: center !important;
  color: var(--navy) !important;
  font-size: 21px !important;
  line-height: 1.5 !important;
}

.service-copy-page .method-note::before,
.service-copy-page .method-note::after {
  content: '"' !important;
  color: var(--blue-dark) !important;
}

.service-copy-page .business-mini-section .section-header {
  max-width: 920px !important;
  padding: 46px 36px !important;
  border: 1px solid rgba(23,49,84,0.09) !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f8fdff 100%) !important;
  box-shadow: 0 18px 48px rgba(23,49,84,0.06) !important;
}

.service-copy-page .business-mini-section .btn {
  margin-top: 24px !important;
}

.service-copy-page .coverage-summary-card {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 18px 34px !important;
  align-items: center !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 36px 40px !important;
  text-align: left !important;
}

.service-copy-page .coverage-summary-card p {
  max-width: none !important;
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
  font-weight: 600 !important;
}

.service-copy-page .coverage-summary-card p:first-child {
  color: var(--navy) !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.service-copy-page .coverage-summary-card .btn {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  white-space: nowrap !important;
}

.service-copy-page .pricing-grid article {
  min-height: 220px !important;
}

.service-copy-page .pricing-grid article h3 {
  min-height: 46px !important;
  display: flex !important;
  align-items: center !important;
}

.service-copy-page .pricing-grid article p {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  margin-top: 18px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  background: #f3fbff !important;
  color: var(--blue-dark) !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

.service-copy-page .testimonial-panel {
  max-width: 940px !important;
  margin: 0 auto !important;
  padding: 44px 46px !important;
  text-align: center !important;
}

.service-copy-page .testimonial-panel p {
  max-width: 790px !important;
  margin: 0 auto 20px !important;
  color: #405b74 !important;
  font-size: 18px !important;
  line-height: 1.78 !important;
}

.service-copy-page .review-stars {
  color: #ffb300 !important;
  letter-spacing: 4px !important;
}

.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.75fr) !important;
  gap: 48px !important;
  align-items: start !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  position: sticky !important;
  top: 96px !important;
  margin: 0 !important;
  padding-top: 14px !important;
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 480px !important;
}

.service-copy-page .services-faq-section .faq-premium-shell {
  overflow: hidden !important;
}

.service-copy-page .services-faq-section .faq-question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 38px !important;
  gap: 18px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 72px !important;
  padding: 20px 24px !important;
  text-align: left !important;
  color: var(--navy) !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
}

.service-copy-page .services-faq-section .faq-icon {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(79,195,247,0.34) !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--blue-dark) !important;
  background: #ffffff !important;
}

.service-copy-page .services-faq-section .faq-answer-inner {
  padding: 0 24px 24px !important;
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

.service-copy-page .quote-cta-section {
  padding: 74px 0 92px !important;
  background: #ffffff !important;
}

.service-copy-page .quote-cta-panel.route-final-cta {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 28px !important;
  align-items: center !important;
  min-height: 250px !important;
  padding: 48px 54px !important;
  border-radius: 16px !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.90) 48%, rgba(255,255,255,0.78) 100%),
    url("../images/Home banner.png") center/cover no-repeat !important;
  border: 1px solid rgba(23,49,84,0.10) !important;
  box-shadow: 0 22px 58px rgba(23,49,84,0.10) !important;
}

.service-copy-page .quote-cta-panel.route-final-cta h2 {
  max-width: 650px !important;
  margin: 14px 0 12px !important;
  color: var(--navy) !important;
  font-size: clamp(34px, 4.6vw, 62px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
}

.service-copy-page .quote-cta-panel.route-final-cta p {
  max-width: 650px !important;
  color: #405b74 !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}


/* Services CTA matched to index CTA */
.service-copy-page .services-final-cta.cta-banner {
  padding: 34px 0 0 !important;
  margin: 0 !important;
  background: #f5fbff !important;
  border-top: 0 !important;
  overflow: hidden !important;
}

.service-copy-page .services-final-cta .cta-inner {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

.service-copy-page .services-final-cta .cta-content {
  display: flex !important;
  min-height: 430px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 56px max(28px, calc((100vw - 800px) / 2)) !important;
  border: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.92) 42%, rgba(255,255,255,0.72) 68%, rgba(255,255,255,0.48) 100%),
    url("../images/Home banner.png") center / cover no-repeat !important;
  box-shadow: none !important;
}

.service-copy-page .services-final-cta .cta-content::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  border-radius: 0 !important;
  background:
    linear-gradient(90deg, transparent, rgba(79,195,247,0.55), transparent) top center / 62% 4px no-repeat,
    radial-gradient(circle at 50% 12%, rgba(79,195,247,0.18), transparent 32%) !important;
  pointer-events: none !important;
}

.service-copy-page .services-final-cta .cta-content::after {
  display: none !important;
}

.service-copy-page .services-final-cta .eyebrow,
.service-copy-page .services-final-cta h2,
.service-copy-page .services-final-cta p,
.service-copy-page .services-final-cta .cta-btns {
  position: relative !important;
  z-index: 1 !important;
}

.service-copy-page .services-final-cta .eyebrow {
  margin: 0 0 8px !important;
  padding: 9px 22px !important;
  border: 1px solid rgba(47,155,210,0.26) !important;
  border-radius: 999px !important;
  background: rgba(237,248,253,0.88) !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2.2px !important;
}

.service-copy-page .services-final-cta h2 {
  max-width: 760px !important;
  margin: 0 auto 8px !important;
  color: var(--navy) !important;
  font-size: clamp(36px, 5vw, 62px) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

.service-copy-page .services-final-cta p {
  max-width: 700px !important;
  margin: 0 auto !important;
  color: #4f6579 !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
}

.service-copy-page .services-final-cta .cta-btns {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 14px !important;
  margin-top: 12px !important;
}

.service-copy-page .services-final-cta .btn {
  min-width: 230px !important;
  border-radius: 999px !important;
}

@media (max-width: 1024px) {
  .service-copy-page .services-hero-layout,
  .service-copy-page .services-faq-section .faq-premium-layout,
  .service-copy-page .quote-cta-panel.route-final-cta {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .services-hero-card {
    max-width: 560px !important;
  }

  .service-copy-page .service-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header {
    position: static !important;
    text-align: center !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-title {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .service-copy-page .coverage-summary-card {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .service-copy-page .coverage-summary-card .btn {
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: center !important;
  }

  .service-copy-page .quote-cta-panel.route-final-cta,
  .service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
    text-align: center !important;
    justify-content: center !important;
  }
}

@media (max-width: 760px) {
  .service-copy-page .container {
    width: min(100% - 28px, 1180px) !important;
  }

  .service-copy-page .section,
  .service-copy-page .service-method-section,
  .service-copy-page .business-mini-section,
  .service-copy-page .coverage-summary-section,
  .service-copy-page .pricing-section,
  .service-copy-page .testimonial-section,
  .service-copy-page .services-faq-section {
    padding: 58px 0 !important;
  }

  .service-copy-page .services-hero {
    padding: 0 0 60px !important;
  }

  .service-copy-page .services-hero-stats,
  .service-copy-page .method-split-grid,
  .service-copy-page .service-card-grid {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .services-hero h1,
  .service-copy-page .section-title,
  .service-copy-page .quote-cta-panel.route-final-cta h2 {
    font-size: clamp(34px, 11vw, 48px) !important;
  }

  .service-copy-page .method-feature-card {
    grid-template-rows: 210px 1fr !important;
  }

  .service-copy-page .method-feature-card img {
    height: 210px !important;
  }

  .service-copy-page .method-note,
  .service-copy-page .business-mini-section .section-header,
  .service-copy-page .coverage-summary-card,
  .service-copy-page .testimonial-panel,
  .service-copy-page .quote-cta-panel.route-final-cta {
    padding: 28px 22px !important;
  }

  .service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
    width: 100% !important;
  }

  .service-copy-page .quote-cta-panel.route-final-cta .btn {
    width: 100% !important;
  }
}

/* Final province mini badge alignment */
.route-service-page .province-list-card .province-mini-list {
  display: grid !important;
  grid-template-columns: repeat(5, 34px) !important;
  gap: 8px !important;
  justify-content: start !important;
  margin: 0 0 16px !important;
}

.route-service-page .province-list-card .province-mini-list span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(79,195,247,0.24) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: var(--navy) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 6px 14px rgba(23,49,84,0.04) !important;
}

/* Final province card center alignment */
.route-service-page .province-info-card {
  text-align: center !important;
  justify-items: center !important;
}

.route-service-page .province-info-card .province-card-icon {
  margin-left: auto !important;
  margin-right: auto !important;
}

.route-service-page .province-info-card h3,
.route-service-page .province-info-card p {
  margin-left: auto !important;
  margin-right: auto !important;
}

.route-service-page .province-list-card .province-mini-list {
  justify-content: center !important;
}

/* Services page copy refresh */


.service-copy-page .section,
.service-copy-page .service-method-section,
.service-copy-page .business-mini-section,
.service-copy-page .coverage-summary-section,
.service-copy-page .pricing-section,
.service-copy-page .testimonial-section,
.service-copy-page .services-faq-section {
  padding: 76px 0 !important;
  background: #ffffff !important;
}

.service-copy-page .section-header {
  margin-bottom: 34px !important;
}

.method-split-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-bottom: 24px;
}

.method-feature-card {
  overflow: hidden;
  border: 1px solid rgba(23,49,84,0.09);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 14px 40px rgba(23,49,84,0.06);
}

.method-feature-card img {
  width: 100%;
  height: 230px;
  object-fit: cover;
}

.method-feature-card > div {
  padding: 28px;
}

.method-feature-card h3,
.service-card-grid article h3 {
  color: var(--navy);
}

.method-feature-card h3 {
  margin-bottom: 10px;
  font-size: 24px;
  line-height: 1.2;
}

.method-feature-card p,
.service-card-grid article p {
  color: #526b82;
  font-size: 14px;
  line-height: 1.7;
}

.service-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 24px;
}

.service-card-grid article {
  min-height: 170px;
  padding: 24px 22px;
  border: 1px solid rgba(79,195,247,0.18);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(23,49,84,0.045);
}

.service-card-grid article span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: var(--navy);
  color: #4fc3f7;
  font-size: 11px;
  font-weight: 900;
}

.service-card-grid.compact article h3 {
  font-size: 17px;
  line-height: 1.25;
}

.method-note,
.coverage-summary-card,
.testimonial-panel {
  margin-top: 24px;
  padding: 28px;
  border: 1px solid rgba(79,195,247,0.18);
  border-radius: 12px;
  background: #fdfefe;
  color: var(--navy);
  box-shadow: 0 12px 34px rgba(23,49,84,0.05);
  font-weight: 800;
  line-height: 1.55;
}

.business-mini-section .section-header,
.coverage-summary-card,
.testimonial-panel {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.business-mini-section .section-header .btn {
  margin-top: 20px;
}

.coverage-summary-card p {
  max-width: 720px;
  margin: 0 auto 14px;
  color: #526b82;
  font-weight: 600;
  line-height: 1.7;
}

.coverage-summary-card a:not(.btn) {
  color: var(--blue-dark);
  font-weight: 900;
}

.coverage-summary-card .btn {
  margin-top: 12px;
}

.pricing-grid article {
  text-align: center;
}

.pricing-grid article p {
  color: var(--blue-dark);
  font-size: 22px;
  font-weight: 900;
}

.testimonial-panel {
  max-width: 920px;
  padding: 42px;
}

.testimonial-panel .review-stars {
  margin-bottom: 18px;
  color: #ffb300;
  font-size: 18px;
  letter-spacing: 3px;
}

.testimonial-panel p {
  max-width: 760px;
  margin: 0 auto 18px;
  color: #526b82;
  font-size: 18px;
  line-height: 1.75;
  font-style: italic;
  font-weight: 600;
}

.testimonial-panel strong {
  display: block;
  margin-bottom: 22px;
  color: var(--navy);
  font-size: 16px;
}

.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr) !important;
  gap: 44px !important;
  align-items: center !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  grid-column: 2;
  grid-row: 1;
  margin: 0 !important;
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-premium-shell {
  grid-column: 1;
  grid-row: 1;
  overflow: hidden;
  border: 1px solid rgba(79,195,247,0.22);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 16px 44px rgba(23,49,84,0.06);
}

.service-copy-page .services-faq-section .faq-item {
  border-bottom: 1px solid rgba(79,195,247,0.16);
}

.service-copy-page .services-faq-section .faq-item:last-child {
  border-bottom: 0;
}

.service-copy-page .services-faq-section .faq-question {
  min-height: 70px;
  padding: 20px 22px;
  color: var(--navy);
  font-size: 15px;
  font-weight: 900;
}

.service-copy-page .services-faq-section .faq-answer-inner {
  padding: 0 22px 22px;
  color: #526b82;
  font-size: 14px;
  line-height: 1.7;
}

.service-copy-page .services-faq-section .faq-answer-inner a {
  color: var(--blue-dark);
  font-weight: 900;
}

.service-copy-page .quote-cta-section {
  padding: 54px 0 0 !important;
  background: #ffffff !important;
}

.service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

@media (max-width: 1024px) {
  .method-split-grid,
  .service-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header,
  .service-copy-page .services-faq-section .faq-premium-shell {
    grid-column: auto;
    grid-row: auto;
  }

  .service-copy-page .services-faq-section .faq-premium-layout .section-header {
    text-align: center !important;
  }
}

@media (max-width: 640px) {
  .service-copy-page .section,
  .service-copy-page .service-method-section,
  .service-copy-page .business-mini-section,
  .service-copy-page .coverage-summary-section,
  .service-copy-page .pricing-section,
  .service-copy-page .testimonial-section,
  .service-copy-page .services-faq-section {
    padding: 54px 0 !important;
  }

  .method-split-grid,
  .service-card-grid {
    grid-template-columns: 1fr;
  }

  .method-feature-card img {
    height: 210px;
  }

  .testimonial-panel {
    padding: 28px 22px;
  }

  .service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
    flex-direction: column;
    width: 100%;
  }
}

.route-service-page .route-confirm-mini-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(96px, 1fr)) !important;
  gap: 8px !important;
  width: min(100%, 250px) !important;
  margin: 0 auto 18px !important;
}

.route-service-page .route-confirm-mini-list span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(79,195,247,0.24) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: var(--navy) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 6px 14px rgba(23,49,84,0.04) !important;
}

/* Final premium redesign for route transit-times section */
.route-service-page #transit-times.service-comparison-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 92px 0 !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #f7fcff 42%, #edf8fd 100%) !important;
}

.route-service-page #transit-times.service-comparison-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(23,49,84,0.032) 1px, transparent 1px),
    linear-gradient(180deg, rgba(23,49,84,0.026) 1px, transparent 1px) !important;
  background-size: 64px 64px !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%) !important;
  pointer-events: none !important;
}

.route-service-page #transit-times .transit-showcase {
  position: relative !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.route-service-page #transit-times .transit-premium-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 0 0 18px !important;
}

.route-service-page #transit-times .transit-premium-card {
  min-height: 230px !important;
  padding: 28px 26px !important;
  border: 1px solid rgba(79,195,247,0.16) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fdff 100%) !important;
  box-shadow: 0 12px 34px rgba(23,49,84,0.05) !important;
  text-align: center !important;
}

.route-service-page #transit-times .transit-card-icon {
  margin-left: auto !important;
  margin-right: auto !important;
}

.route-service-page #transit-times .transit-premium-card.featured {
  background: linear-gradient(180deg, #ffffff 0%, #ebfaff 100%) !important;
  border-color: rgba(47,155,210,0.34) !important;
}

.route-service-page #transit-times .transit-premium-card::before {
  left: 28px !important;
  right: 28px !important;
  height: 5px !important;
  background: #bfefff !important;
}

.route-service-page #transit-times .transit-card-icon {
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 22px !important;
  border-radius: 50% !important;
  background: var(--navy) !important;
  color: #4fc3f7 !important;
}

.route-service-page #transit-times .transit-kicker {
  margin-bottom: 12px !important;
  color: var(--blue-dark) !important;
  letter-spacing: 0 !important;
}

.route-service-page #transit-times .transit-premium-card strong {
  color: var(--navy) !important;
  font-size: clamp(30px, 3.2vw, 42px) !important;
  line-height: 1.04 !important;
}

.route-service-page #transit-times .comparison-table-wrap,
.route-service-page #transit-times .transit-detail-panel {
  position: relative !important;
  margin-top: 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.route-service-page #transit-times .comparison-table-wrap::before,
.route-service-page #transit-times .transit-detail-panel::before {
  display: none !important;
}

.route-service-page #transit-times .comparison-feature-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 24px 26px !important;
  background: linear-gradient(90deg, #edf9fe 0%, #f8fdff 52%, #ffffff 100%) !important;
  border-bottom: 1px solid rgba(79,195,247,0.18) !important;
}

.route-service-page #transit-times .comparison-feature-row div {
  position: relative !important;
  padding: 4px 28px 4px 0 !important;
}

.route-service-page #transit-times .comparison-feature-row div:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  top: 4px !important;
  right: 26px !important;
  bottom: 4px !important;
  width: 1px !important;
  background: rgba(79,195,247,0.18) !important;
}

.route-service-page #transit-times .transit-lane-list {
  display: grid !important;
  gap: 14px !important;
  padding: 18px !important;
}

.route-service-page #transit-times .transit-lane-card {
  display: grid !important;
  grid-template-columns: minmax(180px, 0.72fr) minmax(260px, 1.12fr) minmax(180px, 0.56fr) !important;
  gap: 22px !important;
  align-items: center !important;
  padding: 22px !important;
  border: 1px solid rgba(79,195,247,0.16) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 34px rgba(23,49,84,0.05) !important;
  transition: var(--transition) !important;
}

.route-service-page #transit-times .transit-lane-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(79,195,247,0.34) !important;
  box-shadow: 0 18px 46px rgba(23,49,84,0.08) !important;
}

.route-service-page #transit-times .transit-lane-card span {
  display: block !important;
  margin-bottom: 8px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.route-service-page #transit-times .transit-lane-card strong {
  display: block !important;
  color: var(--navy) !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-lane-card p {
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

.route-service-page #transit-times .transit-lane-card .transit-time {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: #eef9fe !important;
  color: var(--blue-dark) !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
}

.route-service-page #transit-times .transit-modern-layout {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  padding: 0 !important;
}

.route-service-page #transit-times .transit-modern-card {
  position: relative !important;
  min-height: 280px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 30px !important;
  border: 1px solid rgba(79,195,247,0.14) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #f8fdff 100%) !important;
  box-shadow: 0 10px 28px rgba(23,49,84,0.045) !important;
  overflow: hidden !important;
  transition: var(--transition) !important;
  text-align: center !important;
}

.route-service-page #transit-times .transit-modern-card::before {
  display: none !important;
}

.route-service-page #transit-times .transit-modern-card::after {
  display: none !important;
}

.route-service-page #transit-times .transit-modern-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(79,195,247,0.42) !important;
  box-shadow: 0 24px 64px rgba(23,49,84,0.10) !important;
}

.route-service-page #transit-times .transit-modern-kicker {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  margin-bottom: 14px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

.route-service-page #transit-times .transit-modern-card h3 {
  position: relative !important;
  z-index: 1 !important;
  max-width: 410px !important;
  margin: 0 auto 24px !important;
  color: var(--navy) !important;
  font-size: clamp(25px, 2.6vw, 34px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-modern-route {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  margin-top: auto !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(79,195,247,0.16) !important;
  text-align: center !important;
}

.route-service-page #transit-times .transit-modern-route span {
  display: block !important;
  margin-bottom: 7px !important;
  color: var(--blue-dark) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 1.6px !important;
  text-transform: uppercase !important;
}

.route-service-page #transit-times .transit-modern-route strong {
  display: block !important;
  color: var(--navy) !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-modern-card p {
  position: relative !important;
  z-index: 1 !important;
  max-width: 420px !important;
  margin: 14px auto 22px !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

.route-service-page #transit-times .transit-modern-card .transit-time {
  position: relative !important;
  z-index: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  margin-top: 4px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  background: var(--navy) !important;
  color: #ffffff !important;
  border: 0 !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.route-service-page #transit-times .transit-season-card {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-top: 0 !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(79,195,247,0.14) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(90deg, #ffffff 0%, #f3fbff 100%) !important;
  box-shadow: 0 8px 24px rgba(23,49,84,0.035) !important;
}

.route-service-page #transit-times .transit-season-card::before {
  content: "!" !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #eef9fe !important;
  border: 1px solid rgba(79,195,247,0.28) !important;
  color: var(--blue-dark) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-season-card .transit-modern-kicker {
  margin: 0 !important;
  flex: 0 0 auto !important;
  color: var(--blue-dark) !important;
}

.route-service-page #transit-times .transit-season-card strong {
  color: var(--navy) !important;
  font-size: 19px !important;
  line-height: 1.3 !important;
  font-weight: 900 !important;
  text-align: right !important;
}

.route-service-page #transit-times .comparison-table th {
  padding: 22px 26px !important;
  background: #f8fcff !important;
  color: var(--navy) !important;
  font-size: 12px !important;
  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
}

.route-service-page #transit-times .comparison-table td {
  padding: 26px !important;
  color: #526b82 !important;
  font-size: 15px !important;
  background: #ffffff !important;
}

.route-service-page #transit-times .comparison-table tbody tr:hover td {
  background: #f9fdff !important;
}

.route-service-page #transit-times .comparison-table td:first-child strong {
  color: var(--navy) !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-advisory {
  display: block !important;
  align-items: center !important;
  max-width: none !important;
  margin: 18px 0 0 !important;
  padding: 28px 34px !important;
  border: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92), rgba(248,253,255,0.88)) !important;
  box-shadow: 0 14px 40px rgba(23,49,84,0.05) !important;
  position: relative !important;
  text-align: center !important;
  overflow: hidden !important;
}

.route-service-page #transit-times .transit-advisory::before {
  content: "\201C" !important;
  position: absolute !important;
  left: 24px !important;
  top: -8px !important;
  color: rgba(79,195,247,0.22) !important;
  font-size: 96px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.route-service-page #transit-times .transit-advisory span {
  position: relative !important;
  z-index: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  margin-bottom: 14px !important;
  padding: 7px 13px !important;
  background: #eef9fe !important;
  color: var(--blue-dark) !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.65) !important;
}

.route-service-page #transit-times .transit-advisory span::before {
  display: none !important;
}

.route-service-page #transit-times .transit-advisory p {
  position: relative !important;
  z-index: 1 !important;
  color: #526b82 !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
  max-width: 880px !important;
  margin: 0 auto !important;
  font-weight: 600 !important;
}

@media (max-width: 1024px) {
  .route-service-page #transit-times .transit-premium-grid {
    grid-template-columns: 1fr !important;
  }

  .route-service-page #transit-times .comparison-feature-row {
    grid-template-columns: 1fr !important;
    padding: 22px !important;
  }

  .route-service-page #transit-times .comparison-feature-row div {
    padding: 0 0 18px !important;
  }

  .route-service-page #transit-times .comparison-feature-row div:not(:last-child) {
    margin-bottom: 18px !important;
    border-bottom: 1px solid rgba(79,195,247,0.16) !important;
  }

  .route-service-page #transit-times .comparison-feature-row div:not(:last-child)::after {
    display: none !important;
  }

  .route-service-page #transit-times .transit-lane-card {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .route-service-page #transit-times .transit-modern-layout {
    grid-template-columns: 1fr !important;
  }

  .route-service-page #transit-times .transit-season-card {
    display: grid !important;
    grid-template-columns: 44px 1fr !important;
    align-items: start !important;
  }

  .route-service-page #transit-times .transit-season-card strong {
    grid-column: 2 !important;
    display: block !important;
    margin-top: 8px !important;
    text-align: left !important;
  }

  .route-service-page #transit-times .transit-season-card .transit-modern-kicker {
    grid-column: 2 !important;
  }
}

@media (max-width: 640px) {
  .route-service-page #transit-times.service-comparison-section {
    padding: 62px 0 !important;
  }

  .route-service-page #transit-times .transit-showcase {
    padding: 10px !important;
  }

  .route-service-page #transit-times .transit-premium-card {
    min-height: auto !important;
    padding: 26px 22px !important;
  }

  .route-service-page #transit-times .comparison-table th,
  .route-service-page #transit-times .comparison-table td {
    padding: 18px !important;
  }

  .route-service-page #transit-times .transit-advisory {
    display: block !important;
    padding: 20px !important;
  }

  .route-service-page #transit-times .transit-advisory p {
    margin-top: 12px !important;
  }
}

/* Final premium redesign for route FAQ section */
.route-service-page .services-faq-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 92px 0 !important;
  background: #f8fcff !important;
}

.route-service-page .services-faq-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(23,49,84,0.03) 1px, transparent 1px),
    linear-gradient(180deg, rgba(23,49,84,0.024) 1px, transparent 1px) !important;
  background-size: 64px 64px !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%) !important;
  pointer-events: none !important;
}

.route-service-page .services-faq-section::after {
  display: none !important;
}

.route-service-page .services-faq-section .container {
  position: relative !important;
  z-index: 1 !important;
}

.route-service-page .services-faq-section .section-header {
  margin-bottom: 34px !important;
}

.route-service-page .services-faq-section .section-title {
  color: var(--navy) !important;
}

.route-service-page .faq-premium-shell {
  position: relative !important;
  padding: 18px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.68) !important;
  box-shadow: 0 30px 80px rgba(23,49,84,0.10) !important;
  backdrop-filter: blur(16px) !important;
}

.route-service-page .services-faq-section .faq-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  counter-reset: faq-card !important;
}

.route-service-page .services-faq-section .faq-card {
  position: relative !important;
  min-height: 230px !important;
  padding: 30px 26px 26px !important;
  border: 1px solid rgba(79,195,247,0.24) !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f9fdff 100%) !important;
  box-shadow: 0 18px 50px rgba(23,49,84,0.07) !important;
  overflow: hidden !important;
  transition: var(--transition) !important;
}

.route-service-page .services-faq-section .faq-card::before {
  counter-increment: faq-card !important;
  content: counter(faq-card, decimal-leading-zero) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  margin-bottom: 20px !important;
  border-radius: 50% !important;
  background: var(--navy) !important;
  color: #4fc3f7 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  box-shadow: 0 14px 28px rgba(23,49,84,0.16) !important;
}

.route-service-page .services-faq-section .faq-card::after {
  content: "" !important;
  position: absolute !important;
  left: 26px !important;
  right: 26px !important;
  top: 0 !important;
  height: 5px !important;
  border-radius: 0 0 999px 999px !important;
  background: #bfefff !important;
}

.route-service-page .services-faq-section .faq-card:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(79,195,247,0.42) !important;
  box-shadow: 0 26px 70px rgba(23,49,84,0.11) !important;
}

.route-service-page .services-faq-section .faq-card h3 {
  margin: 0 0 12px !important;
  color: var(--navy) !important;
  font-size: 18px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
}

.route-service-page .services-faq-section .faq-card p {
  margin: 0 !important;
  color: #657d96 !important;
  font-size: 14px !important;
  line-height: 1.72 !important;
}

.route-service-page .faq-premium-cta {
  margin-top: 18px !important;
  padding: 20px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  text-align: center !important;
}

.route-service-page .faq-premium-cta .btn-dark {
  border-radius: 999px !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.16) !important;
}

@media (max-width: 1024px) {
  .route-service-page .services-faq-section .faq-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .route-service-page .services-faq-section {
    padding: 62px 0 !important;
  }

  .route-service-page .faq-premium-shell {
    padding: 10px !important;
  }

  .route-service-page .services-faq-section .faq-grid {
    grid-template-columns: 1fr !important;
  }

  .route-service-page .services-faq-section .faq-card {
    min-height: auto !important;
    padding: 26px 22px !important;
  }
}

/* FAQ layout pass: left question list, right premium intro */
.route-service-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(500px, 1.08fr) minmax(340px, 0.82fr) !important;
  gap: clamp(28px, 3.8vw, 48px) !important;
  align-items: center !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
}

.route-service-page .services-faq-section .faq-premium-layout .section-header {
  position: relative !important;
  margin: 0 !important;
  padding: 16px 0 16px 26px !important;
  text-align: left !important;
}

.route-service-page .services-faq-section .faq-premium-layout .section-header::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 5px !important;
  border-radius: 999px !important;
  background: #35b8f2 !important;
}

.route-service-page .services-faq-section .faq-premium-layout .eyebrow {
  display: block !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--blue-dark) !important;
  letter-spacing: 3.2px !important;
  font-size: 10px !important;
}

.route-service-page .services-faq-section .faq-premium-layout .section-title {
  max-width: 420px !important;
  margin: 0 0 22px !important;
  color: var(--navy) !important;
  font-size: clamp(42px, 4.7vw, 64px) !important;
  line-height: 0.96 !important;
  letter-spacing: 0 !important;
}

.route-service-page .faq-premium-shell {
  padding: 0 !important;
  border: 1px solid rgba(79,195,247,0.26) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.82) !important;
  box-shadow: 0 22px 58px rgba(23,49,84,0.07) !important;
  overflow: hidden !important;
  backdrop-filter: none !important;
  max-width: 560px !important;
  width: 100% !important;
}

.route-service-page .services-faq-section .faq-grid {
  display: block !important;
}

.route-service-page .services-faq-section .faq-item {
  position: relative !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,0.72) !important;
  box-shadow: none !important;
  overflow: visible !important;
  transition: var(--transition) !important;
}

.route-service-page .services-faq-section .faq-item:last-child {
  border-bottom: 0 !important;
}

.route-service-page .services-faq-section .faq-item::before,
.route-service-page .services-faq-section .faq-item::after {
  display: none !important;
}

.route-service-page .services-faq-section .faq-item:hover,
.route-service-page .services-faq-section .faq-item.open {
  transform: none !important;
  background: #ffffff !important;
  border-color: rgba(79,195,247,0.24) !important;
  box-shadow: inset 4px 0 0 #4fc3f7 !important;
}

.route-service-page .services-faq-section .faq-question {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: 100% !important;
  min-height: 68px !important;
  padding: 18px 20px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--navy-deep) !important;
  font-size: 15px !important;
  line-height: 1.32 !important;
  font-weight: 900 !important;
  text-align: left !important;
  cursor: pointer !important;
}

.route-service-page .services-faq-section .faq-icon {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(79,195,247,0.42) !important;
  background: #ffffff !important;
  color: var(--blue-dark) !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transition: var(--transition) !important;
}

.route-service-page .services-faq-section .faq-item.open .faq-icon {
  background: #eef9fe !important;
  transform: rotate(45deg) !important;
}

.route-service-page .services-faq-section .faq-answer {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.32s ease !important;
}

.route-service-page .services-faq-section .faq-item.open .faq-answer {
  max-height: 260px !important;
}

.route-service-page .services-faq-section .faq-answer-inner {
  max-width: 470px !important;
  padding: 0 64px 20px 20px !important;
  color: #657d96 !important;
  font-size: 13.5px !important;
  line-height: 1.62 !important;
}

.route-service-page .faq-premium-cta {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  text-align: left !important;
}

.route-service-page .faq-premium-cta .btn-dark {
  border-radius: 999px !important;
  padding: 13px 24px !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

@media (max-width: 1024px) {
  .route-service-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    max-width: 680px !important;
  }

  .route-service-page .services-faq-section .faq-premium-layout .section-header {
    grid-row: 1 !important;
    padding-left: 0 !important;
    text-align: center !important;
  }

  .route-service-page .services-faq-section .faq-premium-layout .section-header::before {
    display: none !important;
  }

  .route-service-page .services-faq-section .faq-premium-layout .section-title {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .route-service-page .faq-premium-shell {
    grid-row: 2 !important;
    max-width: none !important;
  }
}

@media (max-width: 640px) {
  .route-service-page .services-faq-section .faq-premium-layout .section-header {
    padding: 0 !important;
    text-align: center !important;
  }

  .route-service-page .services-faq-section .faq-premium-layout .section-header::before {
    display: none !important;
  }

  .route-service-page .services-faq-section .faq-premium-layout .section-title {
    font-size: 38px !important;
  }

  .route-service-page .faq-premium-cta {
    text-align: center !important;
  }

  .route-service-page .services-faq-section .faq-question {
    min-height: 72px !important;
    padding: 20px !important;
  }

  .route-service-page .services-faq-section .faq-answer-inner {
    padding: 0 66px 22px 20px !important;
  }
}

/* Final premium redesign for service coverage map */
.route-service-page .route-map-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 92px 0 !important;
  background: #f8fcff !important;
}

.route-service-page .route-map-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(23,49,84,0.03) 1px, transparent 1px),
    linear-gradient(180deg, rgba(23,49,84,0.024) 1px, transparent 1px) !important;
  background-size: 64px 64px !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 84%, transparent 100%) !important;
  pointer-events: none !important;
}

.route-service-page .route-map-section .container {
  position: relative !important;
  z-index: 1 !important;
}

.route-service-page .route-map-section .section-header {
  margin-bottom: 34px !important;
}

.route-service-page .coverage-map {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
  padding: 18px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.70) !important;
  box-shadow: 0 28px 76px rgba(23,49,84,0.09) !important;
  overflow: hidden !important;
}

.route-service-page .coverage-map::before {
  content: "" !important;
  position: absolute !important;
  left: 28px !important;
  right: 28px !important;
  top: 0 !important;
  height: 5px !important;
  border-radius: 0 0 999px 999px !important;
  background: linear-gradient(90deg, rgba(79,195,247,0.10), #4fc3f7, rgba(79,195,247,0.10)) !important;
}

.route-service-page .coverage-map .map-copy {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 390px !important;
  padding: 34px !important;
  border: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fdff 100%) !important;
  box-shadow: 0 14px 40px rgba(23,49,84,0.055) !important;
  backdrop-filter: none !important;
}

.route-service-page .coverage-map .map-copy::before {
  content: "10" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 58px !important;
  height: 58px !important;
  margin-bottom: 24px !important;
  border-radius: 50% !important;
  background: var(--navy) !important;
  color: #4fc3f7 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  box-shadow: 0 16px 32px rgba(23,49,84,0.14) !important;
}

.route-service-page .map-copy span {
  color: var(--blue-dark) !important;
  letter-spacing: 2px !important;
}

.route-service-page .map-copy h3 {
  max-width: 420px !important;
  color: var(--navy) !important;
  font-size: clamp(32px, 3.6vw, 48px) !important;
  line-height: 1.02 !important;
  margin-bottom: 16px !important;
}

.route-service-page .map-copy p {
  max-width: 420px !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

.route-service-page .map-embed-wrap {
  min-height: 440px !important;
  border: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 14px !important;
  box-shadow: 0 14px 40px rgba(23,49,84,0.08) !important;
  overflow: hidden !important;
}

.route-service-page .map-embed-wrap::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(248,252,255,0.10), rgba(248,252,255,0.28)) !important;
  pointer-events: none !important;
}

.route-service-page .map-embed-wrap iframe {
  filter: saturate(0.88) contrast(1.02) brightness(1.03) !important;
}

.route-service-page .map-grid {
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  z-index: 2 !important;
}

.route-service-page .map-grid span {
  min-height: 48px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(79,195,247,0.22) !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.10) !important;
  backdrop-filter: blur(12px) !important;
}

@media (max-width: 1024px) {
  .route-service-page .coverage-map {
    grid-template-columns: 1fr !important;
  }

  .route-service-page .coverage-map .map-copy {
    min-height: auto !important;
  }
}

@media (max-width: 640px) {
  .route-service-page .route-map-section {
    padding: 62px 0 !important;
  }

  .route-service-page .coverage-map {
    padding: 10px !important;
  }

  .route-service-page .coverage-map .map-copy {
    padding: 26px 22px !important;
  }

  .route-service-page .map-embed-wrap {
    min-height: 560px !important;
  }

  .route-service-page .map-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Final CTA redesign for route service page */
main.route-service-page + .quote-cta-section {
  background: #f8fcff !important;
}

main.route-service-page + .quote-cta-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 46px 0 0 !important;
  background: #f8fcff !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  max-width: none !important;
  min-height: 330px !important;
  margin: 0 !important;
  padding: 56px max(32px, calc((100vw - 800px) / 2)) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.90), rgba(248,252,255,0.98)),
    url('../images/Home banner.png') center / cover no-repeat !important;
  box-shadow: none !important;
  text-align: center !important;
  overflow: hidden !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, transparent, rgba(79,195,247,0.55), transparent) top center / 62% 4px no-repeat,
    radial-gradient(circle at 50% 12%, rgba(79,195,247,0.20), transparent 34%) !important;
  pointer-events: none !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta > * {
  position: relative !important;
  z-index: 1 !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta .eyebrow {
  display: inline-flex !important;
  margin: 0 0 8px !important;
  padding: 8px 18px !important;
  border: 1px solid rgba(47,155,210,0.24) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.82) !important;
  color: var(--blue-dark) !important;
  letter-spacing: 1.8px !important;
  box-shadow: none !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta h2 {
  max-width: 760px !important;
  margin: 0 auto 10px !important;
  color: var(--navy) !important;
  font-size: clamp(36px, 5vw, 62px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta p {
  max-width: 660px !important;
  margin: 0 auto !important;
  color: #4f6579 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta .btn {
  margin-top: 4px !important;
  border-radius: 999px !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.16) !important;
}

@media (max-width: 640px) {
  main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta {
    min-height: auto !important;
    padding: 44px 20px 48px !important;
  }

  main.route-service-page + .quote-cta-section .quote-cta-panel.route-final-cta .btn {
    width: 100% !important;
  }
}

/* Route page CTA matched to homepage image CTA */
.route-service-page .quote-cta-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background: #f8fcff !important;
}

.route-service-page .quote-cta-section .container {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
}

.route-service-page .quote-cta-panel.route-final-cta {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 360px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 56px 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.82) 38%, rgba(255,255,255,0.70) 62%, rgba(255,255,255,0.38) 100%),
    linear-gradient(180deg, rgba(255,255,255,0.58) 0%, rgba(248,252,255,0.94) 100%),
    url('../images/Home banner.png') center / cover no-repeat !important;
  box-shadow: none !important;
  text-align: center !important;
  overflow: hidden !important;
}

.route-service-page .quote-cta-panel.route-final-cta::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, transparent, rgba(79,195,247,0.70), transparent) !important;
  pointer-events: none !important;
}

.route-service-page .quote-cta-panel.route-final-cta::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(circle at 50% 16%, rgba(79,195,247,0.18), transparent 32%) !important;
  pointer-events: none !important;
}

.route-service-page .quote-cta-panel.route-final-cta > * {
  position: relative !important;
  z-index: 1 !important;
}

.route-service-page .quote-cta-panel.route-final-cta .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 18px !important;
  padding: 9px 22px !important;
  border: 1px solid rgba(47,155,210,0.26) !important;
  border-radius: 999px !important;
  background: rgba(237,248,253,0.88) !important;
  color: var(--blue-dark) !important;
  letter-spacing: 2.2px !important;
  box-shadow: none !important;
}

.route-service-page .quote-cta-panel.route-final-cta h2 {
  max-width: 720px !important;
  margin: 0 auto 14px !important;
  color: var(--navy) !important;
  font-size: clamp(34px, 4.3vw, 58px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
}

.route-service-page .quote-cta-panel.route-final-cta p {
  max-width: 660px !important;
  margin: 0 auto 24px !important;
  color: #526b82 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

.route-service-page .quote-cta-panel.route-final-cta .btn {
  min-width: 210px !important;
  min-height: 54px !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

@media (max-width: 768px) {
  .route-service-page .quote-cta-panel.route-final-cta {
    min-height: 320px !important;
    padding: 44px 20px !important;
  }

  .route-service-page .quote-cta-panel.route-final-cta h2 {
    font-size: 42px !important;
  }

  .route-service-page .quote-cta-panel.route-final-cta p {
    font-size: 16px !important;
  }

  .route-service-page .quote-cta-panel.route-final-cta .btn {
    width: min(100%, 320px) !important;
  }
}

/* Compact spacing for about page */
.about-page {
  --section-pad: 42px !important;
  --header-gap: 22px !important;
}

.about-page section:not(.hero-split),
.about-page .section,
.about-page #about-values,
.about-page #about-team,
.about-page #about-fleet,
.about-page #about-trust,
.about-page #about-stay,
.about-page #about-promise,
.about-page #about-reviews,
.about-page #about-faq {
  padding-top: 42px !important;
  padding-bottom: 42px !important;
}

.about-page .section-header,
#about-fleet .section-header,
#about-team .section-header,
#about-promise .section-header,
.about-page #about-values .section-header {
  margin-bottom: 22px !important;
}

.about-page .section-title,
.about-page .story-content-col h2 {
  margin-bottom: 10px !important;
}

.about-page .section-sub,
.about-page .value-desc,
.about-page .bio {
  line-height: 1.55 !important;
}

.about-page .about-stats-bar {
  padding: 18px 0 !important;
}

.about-page #about-story {
  gap: 22px !important;
  padding-top: 42px !important;
  padding-bottom: 42px !important;
}

.about-page #about-fleet .fleet-gallery,
.about-page #about-team .team-grid,
.about-page #about-team .team-bottom-row,
.about-page .values-rail,
.about-page .services-grid,
.about-page .reviews-grid {
  gap: 16px !important;
}

.about-page .about-final-cta {
  padding-top: 34px !important;
}

.redesigned-cta h2 {
  font-size: clamp(40px, 4vw, 56px);
  line-height: 1.1;
  color: var(--navy-deep, #0a1b2b);
  margin-bottom: 20px;
}
.text-gradient {
  background: linear-gradient(135deg, var(--blue, #2163db), #0d42a6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.redesigned-cta .lead-text {
  font-size: 18px;
  line-height: 1.7;
  color: #52687b;
  margin-bottom: 30px;
  max-width: 480px;
}
.redesigned-cards {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.modern-card {
  background: #ffffff !important;
  border-radius: 16px !important;
  padding: 24px !important;
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  border: 1px solid rgba(0, 0, 0, 0.03) !important;
  grid-template-columns: unset !important;
}
.modern-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 40px rgba(33, 99, 219, 0.08) !important;
}
.modern-card .card-icon-wrapper {
  background: linear-gradient(135deg, #f4f8fd, #edf8fd);
  width: 56px;
  height: 56px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.modern-card .card-number {
  color: var(--blue, #2163db) !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  background: transparent !important;
  width: auto !important;
  height: auto !important;
}
.modern-card .card-content {
  display: flex !important;
  flex-direction: column;
  gap: 4px;
}
.modern-card .card-content h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--navy-deep, #0a1b2b) !important;
  margin: 0 !important;
}
.modern-card .card-content p {
  font-size: 15px !important;
  color: #5b7081 !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}
@media (max-width: 991px) {
  .redesigned-cta .dealers-cta-panel {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

/* Exact Redesign to Match Provided Layout */
.redesigned-exact {
  background-color: #f7fbfc !important;
  padding: 66px 0 !important;
}
.redesigned-exact .dealers-cta-panel {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 44px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.redesigned-exact .dealers-cta-copy {
  border-left: 3px solid #328cf2 !important;
  padding-left: 30px !important;
  flex: 1 !important;
  max-width: 500px !important;
}
.redesigned-exact .eyebrow {
  color: #328cf2 !important;
  font-size: 9.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  margin-bottom: 12px !important;
  text-transform: uppercase !important;
}
.redesigned-exact h2 {
  font-size: clamp(32px, 3vw, 46px) !important;
  font-weight: 800 !important;
  color: #102a45 !important;
  line-height: 1.05 !important;
  margin: 0 0 16px 0 !important;
}
.redesigned-exact .dealers-cta-copy p {
  color: #6a7c92 !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}
.redesigned-exact .dealers-cta-cards {
  flex: 1 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  max-width: 600px !important;
}
.redesigned-exact .dealers-mini-card {
  display: grid !important;
  grid-template-columns: 62px minmax(180px, 0.8fr) minmax(220px, 1.2fr) !important;
  align-items: center !important;
  gap: 24px !important;
  width: 100% !important;
  padding: 16px 0 !important;
}
.redesigned-exact .dealers-mini-card .num {
  background-color: #1f3655 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  width: 48px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 8px !important;
  flex-shrink: 0 !important;
}
.redesigned-exact .dealers-mini-card .desc {
  color: #7d93a6 !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  grid-column: 3 !important;
  margin: 0 !important;
}
.redesigned-exact .dealers-mini-card .title {
  color: #102a45 !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  grid-column: 2 !important;
  width: auto !important;
  margin: 0 !important;
}
@media (max-width: 991px) {
  .redesigned-exact .dealers-cta-panel {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .redesigned-exact .dealers-mini-card {
    grid-template-columns: 54px 1fr !important;
    gap: 14px !important;
  }

  .redesigned-exact .dealers-mini-card .title,
  .redesigned-exact .dealers-mini-card .desc {
    grid-column: 2 !important;
  }
}
.btn-dark-pill {
  background-color: #1f3655 !important;
  color: #ffffff !important;
  border-radius: 50px !important;
  padding: 16px 32px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-block !important;
  border: none !important;
  transition: all 0.3s ease;
}
.btn-dark-pill:hover {
  background-color: #12284c !important;
  color: #ffffff !important;
}
.redesigned-exact .dealers-cta-panel {
  flex-direction: row !important;
}
.boxed-card {
  border: 1px solid #d4e8f7 !important;
  padding: 24px 28px !important;
  background-color: transparent !important;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
.boxed-card:hover {
  background-color: #ffffff !important;
  border-color: #bbdcf4 !important;
}

/* Boxed left CTA card */
.redesigned-exact .dealers-cta-copy {
  max-width: 540px !important;
  padding: 30px 36px !important;
  border: 1px solid #cfe6f7 !important;
  border-left: 1px solid #cfe6f7 !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(248,252,255,0.96)) !important;
}

.redesigned-exact .dealers-cta-copy::before {
  display: block !important;
  top: 18px !important;
  bottom: auto !important;
  left: 0 !important;
  width: 2px !important;
  height: 86px !important;
  border-radius: 999px !important;
  background: #328cf2 !important;
}

.redesigned-exact .dealers-cta-copy p {
  margin-bottom: 0 !important;
}

.redesigned-exact .dealers-cta-copy > div:last-child {
  margin-top: 20px !important;
}

.redesigned-exact .btn-dark-pill {
  padding: 14px 30px !important;
  min-height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

@media (max-width: 991px) {
  .redesigned-exact .dealers-cta-copy {
    width: 100% !important;
    max-width: none !important;
    padding: 28px 24px !important;
  }
}

.redesigned-exact .dealers-mini-card .num {
  grid-column: 1 !important;
}

.redesigned-exact .dealers-mini-card .title {
  grid-column: 2 !important;
  order: initial !important;
}

.redesigned-exact .dealers-mini-card .desc {
  grid-column: 3 !important;
  order: initial !important;
}

@media (max-width: 991px) {
  .redesigned-exact .dealers-mini-card .desc {
    grid-column: 2 !important;
  }
}

/* Premium FAQ preview */
.home-faq-premium {
  position: relative;
  padding-top: 96px;
  padding-bottom: 96px;
  background:
    linear-gradient(180deg, #f8fcff 0%, #eef8fc 100%);
}

.home-faq-premium .fade-up {
  display: grid !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(420px, 1.14fr) !important;
  gap: clamp(44px, 6vw, 86px) !important;
  align-items: center !important;
}

.home-faq-premium .fade-up > div:first-child {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  padding: 38px 0 38px 32px;
}

.home-faq-premium .faq-list {
  grid-column: 1;
  grid-row: 1;
}

.home-faq-premium .fade-up > div:first-child::before {
  content: "";
  position: absolute;
  left: 0;
  top: 42px;
  bottom: 42px;
  width: 4px;
  border-radius: 999px;
  background: var(--blue);
}

.home-faq-premium .eyebrow {
  display: inline-flex;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--blue-dark);
  letter-spacing: 2.2px;
}

.home-faq-premium .section-title {
  max-width: 620px;
  margin-top: 18px;
  color: var(--navy);
  font-size: clamp(40px, 4.4vw, 60px);
  line-height: 1.04;
  letter-spacing: 0;
}

.home-faq-premium .section-sub {
  max-width: 430px;
  color: #5d7183;
  font-size: 17px;
  line-height: 1.75;
}

.home-faq-premium .btn-dark {
  min-height: 54px;
  padding: 16px 28px;
  border-radius: 999px;
}

.home-faq-premium .faq-list {
  max-width: none;
  margin: 0;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 8px;
  background: rgba(255,255,255,0.68);
  overflow: hidden;
}

.home-faq-premium .faq-item {
  border-bottom: 1px solid rgba(47,155,210,0.14);
}

.home-faq-premium .faq-item:last-child {
  border-bottom: 0;
}

.home-faq-premium .faq-question {
  min-height: 68px;
  padding: 18px 22px;
  color: var(--navy-deep);
  font-size: 15px;
  font-weight: 850;
}

.home-faq-premium .faq-icon {
  width: 30px;
  height: 30px;
  border-color: rgba(47,155,210,0.28);
  background: #fff;
  color: var(--blue-dark);
}

.home-faq-premium .faq-answer-inner {
  padding: 0 22px 22px;
}

@media (max-width: 900px) {
  .home-faq-premium {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .home-faq-premium .fade-up {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .home-faq-premium .fade-up > div:first-child {
    grid-column: auto;
    grid-row: auto;
    padding: 0;
    text-align: center;
  }

  .home-faq-premium .faq-list {
    grid-column: auto;
    grid-row: auto;
  }

  .home-faq-premium .fade-up > div:first-child::before {
    display: none;
  }

  .home-faq-premium .section-title,
  .home-faq-premium .section-sub {
    margin-left: auto;
    margin-right: auto;
  }
}

/* Province panel alignment polish */
.route-service-page .services-overview-grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(500px, 1.02fr) !important;
  gap: 52px !important;
  align-items: center !important;
}

.route-service-page .province-panel {
  align-self: center !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 590px !important;
  margin-left: auto !important;
  padding: 28px !important;
  border: 1px solid rgba(79,195,247,0.22) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(135deg, rgba(237,248,253,0.86), rgba(255,255,255,0.94)),
    url('../images/what we offer -open carrier image .jpg') center / cover !important;
  box-shadow: 0 18px 50px rgba(23,49,84,0.08) !important;
}

.route-service-page .province-chip {
  min-height: 54px !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  padding: 12px 14px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(23,49,84,0.08) !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.045) !important;
}

.route-service-page .province-chip:nth-child(9),
.route-service-page .province-chip:nth-child(10) {
  min-height: 58px !important;
}

.route-service-page .route-stat {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 84px !important;
  margin-top: 4px !important;
  padding: 20px 22px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(23,49,84,0.08) !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.05) !important;
}

.route-service-page .route-stat strong {
  margin-bottom: 8px !important;
  color: var(--navy) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
}

.route-service-page .route-stat span {
  color: #526b82 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

@media (max-width: 1024px) {
  .route-service-page .services-overview-grid {
    grid-template-columns: 1fr !important;
  }

  .route-service-page .province-panel {
    max-width: none !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 640px) {
  .route-service-page .province-panel {
    grid-template-columns: 1fr !important;
    padding: 18px !important;
  }
}

/* Final route page background and spacing cleanup */
body:has(.route-service-page),
.route-service-page {
  background: #ffffff !important;
}

.route-service-page .route-service-options,
.route-service-page .services-overview,
.route-service-page .popular-routes-premium,
.route-service-page #transit-times.service-comparison-section,
.route-service-page .quote-assist-section,
.route-service-page .services-faq-section,
.route-service-page .route-map-section,
.route-service-page .quote-cta-section {
  padding-top: 60px !important;
  padding-bottom: 72px !important;
  margin: 0 !important;
  background: #ffffff !important;
}

.route-service-page .popular-routes-premium::before,
.route-service-page #transit-times.service-comparison-section::before,
.route-service-page #transit-times.service-comparison-section::after,
.route-service-page .services-faq-section::before,
.route-service-page .services-faq-section::after,
.route-service-page .route-map-section::before {
  display: none !important;
}

.route-service-page .section-header {
  margin-bottom: 30px !important;
}

.route-service-page .section-sub {
  margin-top: 10px !important;
}

.route-service-page .route-card-grid,
.route-service-page .transit-premium-grid,
.route-service-page .transit-modern-layout,
.route-service-page .faq-premium-layout,
.route-service-page .coverage-map,
.route-service-page .services-overview-grid,
.route-service-page .quote-assist-grid {
  row-gap: 24px !important;
}

.route-service-page .popular-routes-shell,
.route-service-page .transit-showcase,
.route-service-page .faq-premium-shell,
.route-service-page .coverage-map,
.route-service-page .province-panel {
  background-color: #ffffff !important;
}

.route-service-page .transit-premium-card,
.route-service-page .transit-modern-card,
.route-service-page .transit-season-card,
.route-service-page .transit-advisory,
.route-service-page .faq-item,
.route-service-page .map-copy,
.route-service-page .map-grid span,
.route-service-page .province-chip,
.route-service-page .route-stat {
  background: #ffffff !important;
}

.route-service-page .quote-assist-section {
  background: #ffffff !important;
}

.route-service-page .quote-cta-section {
  padding-top: 56px !important;
  padding-bottom: 0 !important;
}

.route-service-page .quote-cta-panel.route-final-cta {
  background:
    linear-gradient(90deg, rgba(255,255,255,0.97) 0%, rgba(255,255,255,0.86) 46%, rgba(255,255,255,0.62) 100%),
    url('../images/Home banner.png') center / cover no-repeat !important;
}

@media (max-width: 768px) {
  .route-service-page .route-service-options,
  .route-service-page .services-overview,
  .route-service-page .popular-routes-premium,
  .route-service-page #transit-times.service-comparison-section,
  .route-service-page .quote-assist-section,
  .route-service-page .services-faq-section,
  .route-service-page .route-map-section,
  .route-service-page .quote-cta-section {
    padding-top: 54px !important;
    padding-bottom: 54px !important;
  }

  .route-service-page .section-header {
    margin-bottom: 24px !important;
  }
}

/* Premium provinces split layout */
.route-service-page .services-overview {
  background: #ffffff !important;
}

.route-service-page .provinces-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(340px, 0.86fr) minmax(0, 1.24fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.route-service-page .provinces-feature-panel {
  position: relative !important;
  min-height: 520px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 38px !important;
  border: 1px solid rgba(79,195,247,0.22) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.88), rgba(255,255,255,0.94)),
    url('../images/what we offer -open carrier image .jpg') center / cover no-repeat !important;
  box-shadow: 0 18px 52px rgba(23,49,84,0.08) !important;
  overflow: hidden !important;
}

.route-service-page .provinces-feature-panel .eyebrow {
  width: fit-content !important;
  margin-bottom: 26px !important;
  padding: 9px 18px !important;
  border: 1px solid rgba(47,155,210,0.22) !important;
  border-radius: 999px !important;
  background: rgba(237,248,253,0.86) !important;
}

.route-service-page .provinces-feature-panel .province-panel-kicker {
  width: fit-content !important;
  margin-bottom: 22px !important;
  padding: 9px 18px !important;
  border: 1px solid rgba(47,155,210,0.22) !important;
  border-radius: 999px !important;
  background: rgba(237,248,253,0.86) !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

.route-service-page .provinces-feature-panel h3 {
  max-width: 480px !important;
  margin: 0 0 22px !important;
  color: var(--navy) !important;
  font-size: clamp(34px, 4vw, 50px) !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
}

.route-service-page .provinces-feature-panel > p {
  max-width: 500px !important;
  margin: 0 0 34px !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
}

.province-feature-stats {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  max-width: 360px !important;
}

.province-feature-stats div {
  padding: 18px 16px !important;
  border: 1px solid rgba(79,195,247,0.16) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.88) !important;
}

.province-feature-stats strong,
.province-feature-stats span {
  display: block !important;
}

.province-feature-stats strong {
  margin-bottom: 6px !important;
  color: var(--navy) !important;
  font-size: 32px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.province-feature-stats span {
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 1.3px !important;
  text-transform: uppercase !important;
}

.route-service-page .province-premium-cards {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.route-service-page .province-info-card {
  position: relative !important;
  min-height: 264px !important;
  display: grid !important;
  grid-template-rows: 50px minmax(54px, auto) 1fr !important;
  align-content: start !important;
  padding: 34px 28px 28px !important;
  border: 1px solid rgba(23,49,84,0.09) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 34px rgba(23,49,84,0.045) !important;
  transition: var(--transition) !important;
}

.route-service-page .province-info-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(79,195,247,0.34) !important;
  box-shadow: 0 18px 48px rgba(23,49,84,0.08) !important;
}

.route-service-page .province-card-icon {
  width: 42px !important;
  height: 42px !important;
  margin: 0 0 8px !important;
  color: #4fc3f7 !important;
}

.route-service-page .province-card-icon svg {
  width: 42px !important;
  height: 42px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.route-service-page .province-info-card h3 {
  align-self: end !important;
  margin: 0 0 12px !important;
  color: var(--navy) !important;
  font-size: 21px !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
}

.route-service-page .province-info-card h3 br {
  display: none !important;
}

.route-service-page .province-info-card p {
  align-self: start !important;
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.68 !important;
}

.route-service-page .province-mini-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 0 14px !important;
}

.route-service-page .province-list-card {
  grid-template-rows: 50px minmax(54px, auto) auto 1fr !important;
}

.route-service-page .province-list-card p {
  margin-top: 0 !important;
}

.route-service-page .province-mini-list span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  min-height: 30px !important;
  padding: 6px 9px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 999px !important;
  background: #f8fcff !important;
  color: var(--navy) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

@media (max-width: 1024px) {
  .route-service-page .provinces-premium-layout {
    grid-template-columns: 1fr !important;
  }

  .route-service-page .provinces-feature-panel {
    min-height: auto !important;
  }
}

@media (max-width: 640px) {
  .route-service-page .provinces-feature-panel {
    padding: 28px 22px !important;
  }

  .province-feature-stats,
  .route-service-page .province-premium-cards {
    grid-template-columns: 1fr !important;
  }
}

/* Services page final override after all shared blocks */
.service-copy-page {
  background: #ffffff !important;
}

.service-copy-page .services-hero,
.service-copy-page .service-method-section,
.service-copy-page .business-mini-section,
.service-copy-page .coverage-summary-section,
.service-copy-page .pricing-section,
.service-copy-page .testimonial-section,
.service-copy-page .services-faq-section,
.service-copy-page .quote-cta-section {
  background: #ffffff !important;
}

.service-copy-page .services-hero {
  min-height: auto !important;
  padding: 0 0 58px !important;
}

.service-copy-page .services-hero-layout,
.service-copy-page .method-split-grid,
.service-copy-page .service-card-grid,
.service-copy-page .services-faq-section .faq-premium-layout {
  align-items: stretch !important;
}

.service-copy-page .services-hero-layout {
  display: block !important;
  max-width: 710px !important;
}

.service-copy-page .services-hero-content {
  max-width: 710px !important;
}

.service-copy-page .services-hero h1 {
  max-width: 760px !important;
  font-size: clamp(40px, 4.8vw, 64px) !important;
}

.service-copy-page .services-hero p {
  max-width: 660px !important;
}

.service-copy-page .section-header {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 980px !important;
}

.service-copy-page .section-header .eyebrow {
  display: inline-block !important;
  margin-bottom: var(--space-sm) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  line-height: normal !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
}

.service-copy-page .section-header .section-title {
  max-width: 760px !important;
  margin: 0 auto 10px !important;
  color: var(--text-dark) !important;
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.service-copy-page .section-header .section-sub {
  max-width: 600px !important;
  margin: 0 auto !important;
  color: var(--text-mid) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  text-align: center !important;
}

.service-copy-page .method-feature-card,
.service-copy-page .service-card-grid article {
  height: 100% !important;
}

.service-copy-page .method-feature-card {
  grid-template-rows: auto 1fr !important;
  overflow: hidden !important;
}

.service-copy-page .method-feature-card img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  background: #f7fbfe !important;
  padding: 0 !important;
}

.service-copy-page .method-feature-card > div {
  justify-content: flex-start !important;
  min-height: 220px !important;
  padding: 42px 36px 38px !important;
}

.service-copy-page .method-feature-card h3 {
  margin: 0 0 14px !important;
  color: var(--navy) !important;
  font-size: 26px !important;
  line-height: 1.18 !important;
}

.service-copy-page .method-feature-card p {
  max-width: 520px !important;
  margin: 0 auto !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

.service-copy-page .method-feature-card > div,
.service-copy-page .service-card-grid article,
.service-copy-page .pricing-grid article,
.service-copy-page .testimonial-panel {
  text-align: center !important;
}

.service-copy-page .service-card-grid article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.service-copy-page .pricing-grid {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 34px !important;
}

.service-copy-page .pricing-grid::before {
  content: "" !important;
  position: absolute !important;
  left: 10% !important;
  right: 10% !important;
  top: 55px !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(79,195,247,0.42), transparent) !important;
  z-index: 0 !important;
}

.service-copy-page .pricing-grid article {
  position: relative !important;
  z-index: 1 !important;
  min-height: 286px !important;
  padding: 28px 24px 26px !important;
  border: 1px solid rgba(79,195,247,0.24) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,0.96) !important;
  box-shadow: 0 16px 44px rgba(23,49,84,0.06) !important;
  text-align: center !important;
  justify-content: flex-start !important;
}

.service-copy-page .pricing-grid article span {
  width: 78px !important;
  height: 78px !important;
  margin: 0 auto 34px !important;
  border: 1px solid rgba(79,195,247,0.42) !important;
  border-radius: 50% !important;
  background: #f7fcff !important;
  color: var(--blue-dark) !important;
  font-size: 0 !important;
  font-weight: 900 !important;
  box-shadow: 0 0 0 8px #ffffff, 0 12px 28px rgba(79,195,247,0.13) !important;
}

.service-copy-page .pricing-grid article span::after {
  content: attr(data-step) !important;
}

.service-copy-page .pricing-grid article:nth-child(1) span::after { content: "1" !important; }
.service-copy-page .pricing-grid article:nth-child(2) span::after { content: "2" !important; }
.service-copy-page .pricing-grid article:nth-child(3) span::after { content: "3" !important; }
.service-copy-page .pricing-grid article:nth-child(4) span::after { content: "4" !important; }

.service-copy-page .pricing-grid article span::after {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 32px !important;
  line-height: 1 !important;
}

.service-copy-page .pricing-grid article h3 {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  max-width: 230px !important;
  margin: 0 auto 18px !important;
  color: var(--navy) !important;
  font-size: 22px !important;
  line-height: 1.16 !important;
  font-weight: 900 !important;
}

.service-copy-page .pricing-grid article p {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: auto !important;
  max-width: 240px !important;
  margin: 0 auto !important;
  padding: 10px 17px !important;
  border: 1px solid rgba(79,195,247,0.22) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f2fbff 100%) !important;
  color: var(--blue-dark) !important;
  font-size: 16px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.05) !important;
}

.service-copy-page .pricing-grid article:first-child p,
.service-copy-page .pricing-grid article:last-child p {
  color: var(--navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.service-copy-page .pricing-grid article:nth-child(2) p,
.service-copy-page .pricing-grid article:nth-child(3) p {
  min-width: 98px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f2fbff 100%) !important;
  border-color: rgba(79,195,247,0.22) !important;
  color: var(--blue-dark) !important;
  font-size: 16px !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.05) !important;
}

.service-copy-page .pricing-grid article .pricing-extra-note {
  display: block !important;
  max-width: 180px !important;
  margin: 10px auto 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111111 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.service-copy-page .testimonial-section .section-header {
  margin-bottom: 30px !important;
}

.service-copy-page .testimonial-panel {
  margin-top: 0 !important;
}

.service-copy-page .coverage-summary-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
  padding: 26px !important;
  border: 1px solid rgba(79,195,247,0.22) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(248,253,255,0.94)),
    url("../images/what we offer -open carrier image .jpg") center/cover no-repeat !important;
  box-shadow: 0 24px 70px rgba(23,49,84,0.09) !important;
  overflow: hidden !important;
  text-align: left !important;
}

.service-copy-page .coverage-summary-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(255,255,255,0.72) !important;
  pointer-events: none !important;
}

.service-copy-page .coverage-summary-card > * {
  position: relative !important;
  z-index: 1 !important;
}

.service-copy-page .coverage-lane-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.service-copy-page .coverage-lane-card {
  display: flex !important;
  min-height: 230px !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 32px 28px !important;
  border: 1px solid rgba(23,49,84,0.08) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.92) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.06) !important;
}

.service-copy-page .coverage-lane-card span {
  margin-bottom: 16px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

.service-copy-page .coverage-lane-card h3 {
  margin: 0 0 18px !important;
  color: var(--navy) !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.service-copy-page .coverage-lane-card p {
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: var(--navy) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.service-copy-page .coverage-summary-action {
  display: flex !important;
  min-height: 230px !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding: 34px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.82) !important;
}

.service-copy-page .coverage-summary-action p {
  max-width: 360px !important;
  margin: 0 0 22px !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  font-weight: 600 !important;
}

.service-copy-page .coverage-summary-action a:not(.btn) {
  color: var(--blue-dark) !important;
  font-weight: 900 !important;
}

.service-copy-page .coverage-summary-action .btn {
  white-space: nowrap !important;
}

/* Coverage section clean premium redesign */
.service-copy-page .coverage-summary-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  max-width: 1080px !important;
  padding: 24px !important;
  border: 1px solid rgba(79,195,247,0.20) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 54px rgba(23,49,84,0.07) !important;
}

.service-copy-page .coverage-summary-card::before {
  display: none !important;
}

.service-copy-page .coverage-lane-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.service-copy-page .coverage-lane-card {
  min-height: 190px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas:
    "label label"
    "title time" !important;
  gap: 14px 20px !important;
  align-items: center !important;
  padding: 32px !important;
  border: 1px solid rgba(23,49,84,0.08) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fdff 100%) !important;
  box-shadow: 0 10px 28px rgba(23,49,84,0.045) !important;
}

.service-copy-page .coverage-lane-card span {
  grid-area: label !important;
  margin: 0 !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2.2px !important;
  text-transform: uppercase !important;
}

.service-copy-page .coverage-lane-card h3 {
  grid-area: title !important;
  max-width: 360px !important;
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: clamp(26px, 3vw, 34px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.service-copy-page .coverage-lane-card p {
  grid-area: time !important;
  justify-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 138px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: var(--navy) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.service-copy-page .coverage-summary-action {
  min-height: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 22px !important;
  align-items: center !important;
  padding: 24px 28px !important;
  border: 1px solid rgba(79,195,247,0.18) !important;
  border-radius: 12px !important;
  background: #f8fdff !important;
}

.service-copy-page .coverage-summary-action p {
  max-width: 690px !important;
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

.service-copy-page .coverage-summary-action .btn {
  justify-self: end !important;
}

.service-copy-page .services-faq-section .faq-premium-layout {
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.75fr) !important;
  gap: 48px !important;
  align-items: start !important;
}

.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  text-align: left !important;
}

.service-copy-page .services-faq-section .faq-question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 38px !important;
  align-items: center !important;
}

.service-copy-page .quote-cta-panel.route-final-cta {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 250px !important;
  padding: 48px 54px !important;
  border-radius: 16px !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.90) 48%, rgba(255,255,255,0.78) 100%),
    url("../images/Home banner.png") center/cover no-repeat !important;
}

.service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
  justify-content: flex-end !important;
}

@media (max-width: 1024px) {
  .service-copy-page .services-hero-layout,
  .service-copy-page .method-split-grid,
  .service-copy-page .services-faq-section .faq-premium-layout,
  .service-copy-page .coverage-summary-card,
  .service-copy-page .quote-cta-panel.route-final-cta {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .coverage-summary-card,
  .service-copy-page .services-faq-section .faq-premium-layout .section-header,
  .service-copy-page .quote-cta-panel.route-final-cta {
    text-align: center !important;
  }

  .service-copy-page .coverage-summary-card .btn {
    justify-self: center !important;
  }

  .service-copy-page .coverage-lane-grid {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .service-copy-page .pricing-grid::before {
    display: none !important;
  }

  .service-copy-page .coverage-summary-action {
    grid-template-columns: 1fr !important;
    align-items: center !important;
  }

  .service-copy-page .coverage-summary-action p {
    max-width: 620px !important;
    text-align: center !important;
  }

  .service-copy-page .coverage-summary-action .btn {
    justify-self: center !important;
  }

  .service-copy-page .quote-cta-panel.route-final-cta .cta-btns {
    justify-content: center !important;
  }
}

@media (max-width: 760px) {
  .service-copy-page .services-hero {
    padding: 0 0 46px !important;
  }

  .service-copy-page .section-header .section-title {
    font-size: clamp(30px, 9vw, 42px) !important;
  }

  .service-copy-page .section-header .section-sub {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  .service-copy-page .method-feature-card {
    grid-template-rows: auto 1fr !important;
  }

  .service-copy-page .method-feature-card img {
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
  }

  .service-copy-page .method-feature-card > div {
    min-height: auto !important;
    padding: 30px 22px !important;
  }

  .service-copy-page .service-card-grid {
    grid-template-columns: 1fr !important;
  }

  .service-copy-page .coverage-lane-card {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "label"
      "title"
      "time" !important;
    justify-items: center !important;
    min-height: auto !important;
    padding: 28px 22px !important;
    text-align: center !important;
  }

  .service-copy-page .coverage-lane-card p {
    justify-self: center !important;
  }

  .service-copy-page .pricing-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .service-copy-page .pricing-grid article {
    min-height: 260px !important;
    padding: 30px 22px !important;
  }

  .service-copy-page .pricing-grid article span {
    width: 74px !important;
    height: 74px !important;
    margin-bottom: 26px !important;
  }

  .service-copy-page .pricing-grid article span::after {
    font-size: 30px !important;
  }

  .service-copy-page .services-final-cta .cta-content {
    min-height: auto !important;
    padding: 48px 20px !important;
  }

  .service-copy-page .services-final-cta .cta-btns {
    width: 100% !important;
    flex-direction: column !important;
  }

  .service-copy-page .services-final-cta .btn {
    width: 100% !important;
  }
}


/* Scale up Services and Help Centre pages as requested */
@media (min-width: 1025px) {
  .help-centre-page,
  .service-copy-page {
    zoom: 1.1;
  }
}


/* Help Centre styles migrated from helpcentre.css */
:root {
  --help-ink: #0d1b2f;
  --help-navy: #17375f;
  --help-blue: #0f83bd;
  --help-sky: #49bdec;
  --help-line: #cfeeff;
  --help-muted: #5f7894;
  --help-soft: #f7fbfe;
  --help-card: rgba(255, 255, 255, 0.96);
  --help-shadow: 0 24px 70px rgba(13, 42, 74, 0.09);
}

.help-centre-page {
  overflow: hidden;
  color: var(--help-ink);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), #fff 22%),
    radial-gradient(circle at 14% 0%, rgba(73, 189, 236, 0.08), transparent 28%);
}

.help-centre-page .section {
  padding: 48px 0;
}

.help-hero {
  position: relative;
  padding: 0 0 32px;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.9) 58%, rgba(255,255,255,0.78) 100%),
    url("../images/Home banner.png") center/cover no-repeat;
  border-bottom: 1px solid rgba(207, 238, 255, 0.8);
}

.help-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.75fr);
  gap: 36px;
  align-items: end;
}

.breadcrumb {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 24px;
  color: var(--help-muted);
  font-size: 14px;
  font-weight: 700;
}

.breadcrumb a {
  color: var(--help-blue);
}

.help-centre-page .eyebrow {
  margin-bottom: 18px;
  color: var(--help-blue);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.help-hero h1,
.help-centre-page .section-title {
  max-width: 880px;
  margin: 0 auto;
  color: var(--help-ink);
  font-size: clamp(48px, 6vw, 82px);
  line-height: 0.98;
  letter-spacing: 0;
  font-weight: 800;
}

.help-hero h1 {
  margin: 0;
}

.help-hero-copy p {
  max-width: 680px;
  margin-top: 24px;
  color: var(--help-muted);
  font-size: clamp(19px, 2vw, 25px);
  line-height: 1.55;
}

.help-ask-panel {
  position: relative;
  padding: 30px;
  overflow: hidden;
  border: 1px solid var(--help-line);
  border-radius: 18px;
  background: rgba(255,255,255,0.92);
  box-shadow: var(--help-shadow);
}

.help-ask-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, var(--help-sky), rgba(73, 189, 236, 0.18));
}

.help-ask-panel label {
  display: block;
  margin-bottom: 14px;
  color: var(--help-ink);
  font-size: 22px;
  font-weight: 800;
}

.help-ask-input {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 8px;
  border: 1px solid var(--help-line);
  border-radius: 999px;
  background: #fff;
}

.help-ask-input input {
  width: 100%;
  min-width: 0;
  padding: 13px 18px;
  border: 0;
  color: var(--help-ink);
  font: inherit;
  outline: none;
}

.help-ask-input button {
  border: 0;
  border-radius: 999px;
  background: var(--help-navy);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}

.help-ask-input button {
  padding: 0 24px;
}

.help-ask-panel p {
  margin: 16px 0 0;
  color: var(--help-muted);
  font-size: 15px;
  line-height: 1.6;
}

.help-centre-page .section-header {
  max-width: 880px;
  margin: 0 auto 34px;
  text-align: center;
}

.help-centre-page .section-header .section-title {
  font-size: clamp(42px, 5vw, 70px);
}

.popular-question-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.popular-question-card {
  position: relative;
  min-height: 335px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 74px 30px 42px;
  overflow: hidden;
  border: 1px solid rgba(186, 229, 252, 0.95);
  border-radius: 18px;
  background: linear-gradient(180deg, #fff 0%, rgba(250,253,255,0.98) 100%);
  box-shadow: 0 20px 58px rgba(13, 42, 74, 0.055);
  text-align: center;
}

.popular-question-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 64%;
  height: 6px;
  transform: translateX(-50%);
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(73,189,236,0.16), rgba(73,189,236,0.95), rgba(73,189,236,0.16));
}

.popular-question-card::after {
  display: none;
}

.popular-question-card h3 {
  max-width: 330px;
  margin: 0 auto 22px;
  color: var(--help-ink);
  font-size: 20px;
  line-height: 1.22;
  font-weight: 800;
}

.popular-question-card p {
  max-width: 340px;
  margin: 0 auto;
  color: var(--help-muted);
  font-size: 15.5px;
  line-height: 1.72;
  text-align: center;
}

.help-faq-section,
.help-faq-hub {
  padding: 24px 0 48px;
}

.help-faq-shell,
.help-faq-layout {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.help-topic-nav {
  position: sticky;
  top: 104px;
  padding: 22px;
  border: 1px solid var(--help-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(13, 42, 74, 0.06);
}

.help-topic-nav h2 {
  margin: 0 0 18px;
  color: var(--help-ink);
  font-size: 25px;
  line-height: 1.15;
  font-weight: 800;
}

.help-topic-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 0;
  border-top: 1px solid rgba(207, 238, 255, 0.8);
  color: var(--help-muted);
  font-size: 15px;
  font-weight: 800;
}

.help-topic-nav a span {
  display: inline-flex;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--help-line);
  border-radius: 50%;
  color: var(--help-blue);
  font-size: 12px;
}

.help-faq-stack,
.help-topic-stack {
  display: grid;
  gap: 22px;
}

.help-topic-panel {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 24px;
  padding: 24px;
  overflow: hidden;
  border: 1px solid rgba(207, 238, 255, 0.92);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 22px 64px rgba(13, 42, 74, 0.055);
}

.help-topic-panel > :not(.help-topic-head) {
  grid-column: 2;
}

.help-topic-panel::before {
  content: "";
  position: absolute;
  top: 24px;
  bottom: 24px;
  left: 214px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(73, 189, 236, 0.55), transparent);
}

.help-topic-panel::after {
  display: none;
}

#preparing,
#during-transport {
  padding: 24px;
  background: #fff;
}

#preparing .help-topic-head,
#during-transport .help-topic-head {
  margin-bottom: 0;
}

.help-topic-head {
  position: relative;
  top: auto;
  grid-column: 1;
  grid-row: 1 / -1;
  display: block;
  min-height: auto;
  margin: 0;
  padding: 0 0 0 2px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.help-topic-head span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  border: 1px solid rgba(73, 189, 236, 0.45);
  border-radius: 50%;
  background: linear-gradient(145deg, #fff, var(--help-soft));
  color: var(--help-blue);
  box-shadow: 0 12px 30px rgba(13, 42, 74, 0.07);
  font-size: 18px;
  font-weight: 800;
}

.help-topic-head h2 {
  margin: 0;
  color: var(--help-ink);
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.12;
  font-weight: 800;
}

.help-subgroup {
  margin-top: 22px;
}

.help-subgroup:first-child {
  margin-top: 0;
}

.help-subgroup h3,
.help-topic-panel > h3 {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  margin: 18px 0 -12px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--help-blue);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.help-topic-panel > h3:first-of-type {
  margin-top: -8px;
}

.faq-list {
  display: grid;
  gap: 10px;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  background: transparent;
}

.faq-item + .faq-item {
  border-top: 0;
}

.faq-item {
  overflow: hidden;
  border: 1px solid rgba(219, 235, 247, 0.95);
  border-radius: 12px;
  background: linear-gradient(180deg, #fff, rgba(250, 253, 255, 0.96));
  box-shadow: none;
  transition: border-color 0.25s ease, background 0.25s ease;
}

.faq-item:hover,
.faq-item.open {
  border-color: rgba(73, 189, 236, 0.55);
  background: #fff;
}

.faq-question {
  display: flex;
  width: 100%;
  min-height: 54px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 16px;
  border: 0;
  background: transparent;
  color: var(--help-ink);
  font: inherit;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
}

.faq-icon {
  display: inline-flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(73, 189, 236, 0.55);
  border-radius: 50%;
  background: #fff;
  color: var(--help-blue);
  font-size: 22px;
  line-height: 1;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.faq-item.open .faq-answer {
  max-height: 420px;
}

.faq-item.open .faq-icon {
  background: var(--help-navy);
  border-color: var(--help-navy);
  color: #fff;
  transform: rotate(45deg);
}

.faq-answer-inner {
  padding: 0 16px 18px;
  color: var(--help-muted);
  font-size: 15px;
  line-height: 1.7;
}

.help-final-cta.cta-banner {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #f7fbfe;
}

.help-final-cta .cta-banner-bg {
  position: absolute;
  inset: 0;
  background: url("../images/Home banner.png") center / cover no-repeat;
  opacity: 0.68;
}

.help-final-cta .cta-banner-wash {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.86) 48%, rgba(255,255,255,0.68) 100%);
}

.help-final-cta .cta-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: none;
  padding: 56px clamp(18px, 5vw, 72px) 58px;
}

.help-final-cta .cta-content {
  width: 100%;
  max-width: 880px;
  min-height: 0;
  display: block;
  margin: 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.help-final-cta .eyebrow {
  display: inline-flex;
  margin: 0 auto 24px;
  width: auto;
  padding: 11px 22px;
  border: 1px solid rgba(73, 189, 236, 0.35);
  border-radius: 999px;
  background: rgba(235, 250, 255, 0.9);
}

.help-final-cta h2 {
  max-width: 820px;
  margin: 0 auto;
  color: var(--help-ink);
  font-size: clamp(48px, 5.4vw, 84px);
  line-height: 0.98;
  font-weight: 800;
  text-align: center;
}

.help-final-cta p {
  max-width: 720px;
  margin: 24px auto 0;
  color: var(--help-muted);
  font-size: clamp(18px, 1.65vw, 24px);
  line-height: 1.5;
  text-align: center;
}

.help-final-cta .cta-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 30px;
}

.help-final-cta .cta-btns .btn {
  min-height: 62px;
  min-width: 230px;
  padding: 0 34px;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 800;
}

@media (max-width: 1100px) {
  .help-hero-grid,
  .help-faq-shell,
  .help-faq-layout {
    grid-template-columns: 1fr;
  }

  .help-topic-nav {
    position: static;
  }

  .help-topic-panel {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .help-topic-panel > :not(.help-topic-head) {
    grid-column: 1;
  }

  .help-topic-panel::before {
    display: none;
  }

  .help-topic-head {
    position: static;
    grid-column: 1;
    grid-row: auto;
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(207, 238, 255, 0.85);
  }

  .help-topic-head span {
    margin-bottom: 0;
  }

  .popular-question-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .help-final-cta .cta-content {
    text-align: center;
  }

  .help-final-cta .eyebrow {
    margin: 0 auto;
  }

  .help-final-cta h2,
  .help-final-cta p {
    margin-left: auto;
    margin-right: auto;
  }

  .help-final-cta .cta-btns {
    justify-content: center;
  }
}

@media (max-width: 760px) {
  .help-centre-page .section {
    padding: 54px 0;
  }

  .help-hero {
    padding: 0 0 44px;
  }

  .help-hero h1,
  .help-centre-page .section-title {
    font-size: clamp(42px, 13vw, 58px);
  }

  .help-ask-panel,
  .help-topic-panel {
    padding: 24px;
    border-radius: 16px;
  }

  .help-ask-input {
    grid-template-columns: 1fr;
    border-radius: 18px;
  }

  .help-ask-input button {
    min-height: 48px;
  }

  .popular-question-grid {
    grid-template-columns: 1fr;
  }

  .popular-question-card {
    min-height: auto;
  }

  .faq-question {
    min-height: 68px;
    padding: 18px;
    font-size: 16px;
  }

  .faq-answer-inner {
    padding: 0 18px 20px;
    font-size: 16px;
  }

  .help-final-cta.cta-banner {
    padding: 0;
  }

  .help-final-cta .cta-inner {
    padding: 40px 16px 42px;
  }

  .help-final-cta .cta-content {
    padding: 0;
  }

  .help-final-cta h2 {
    font-size: clamp(36px, 12vw, 48px);
  }

  .help-final-cta .cta-btns {
    flex-direction: column;
    width: 100%;
  }

  .help-final-cta .cta-btns .btn {
    width: 100%;
    min-height: 54px;
  }
}

/* Index alignment pass for Help Centre */
body.home-page {
  background: var(--home-bg);
}

.help-centre-page {
  overflow: hidden;
  color: var(--text-dark);
  background: var(--home-bg);
}

.help-centre-page .container {
  max-width: 1200px;
}

.help-centre-page .section {
  padding: var(--section-pad) 0;
}

.help-hero {
  padding: 0 0 68px;
  background:
    linear-gradient(90deg, rgba(245,251,255,0.98) 0%, rgba(245,251,255,0.92) 54%, rgba(245,251,255,0.74) 100%),
    url("../images/Home banner.png") center/cover no-repeat;
  border-bottom: 0;
}

.help-hero::before {
  display: none;
}

.help-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 42px;
  align-items: center;
}

.breadcrumb {
  margin-bottom: 20px;
  color: var(--text-muted);
  font-size: 13px;
}

.breadcrumb a,
.help-centre-page .eyebrow {
  color: var(--blue-dark);
}

.help-centre-page .eyebrow {
  margin-bottom: var(--space-sm);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
}

.help-hero h1,
.help-centre-page .section-title {
  max-width: 760px;
  color: var(--navy);
  font-size: clamp(32px, 4.5vw, 48px);
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: 0;
}

.help-hero h1 {
  font-size: clamp(46px, 5.1vw, 68px);
  line-height: 1.05;
}

.help-hero h1 span {
  color: var(--blue-dark) !important;
}

.help-hero-copy p {
  max-width: 660px;
  margin-top: 18px;
  color: var(--text-mid);
  font-size: 17px;
  line-height: 1.7;
}

.help-ask-panel,
.popular-question-card,
.help-topic-nav,
.help-topic-panel {
  border-color: rgba(47,155,210,0.20);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,0.94);
  box-shadow: var(--shadow-sm);
}

.help-ask-panel {
  padding: 28px 30px;
}

.help-ask-panel label {
  color: var(--navy);
  font-size: 20px;
}

.help-ask-panel p,
.popular-question-card p,
.help-topic-nav a,
.faq-answer-inner {
  color: var(--text-mid);
}

.help-ask-input,
.faq-item {
  border-color: rgba(23,49,84,0.11);
  background: #f8fcff;
}

.help-ask-input button {
  background: var(--navy);
}

.section-header {
  max-width: 680px;
  margin: 0 auto var(--header-gap);
}

.popular-question-grid {
  gap: var(--card-gap);
  align-items: stretch;
}

.popular-question-card {
  isolation: isolate;
  min-height: 292px;
  justify-content: flex-start;
  padding: 34px 28px 32px;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(247,252,255,0.96) 100%);
  box-shadow: 0 18px 46px rgba(23,49,84,0.07);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.popular-question-card h3 {
  color: var(--navy);
  font-size: 19px;
  line-height: 1.24;
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 20px auto 16px;
}

.popular-question-card p {
  flex: 1;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  font-size: 14px;
  line-height: 1.7;
  max-width: 315px;
}

.popular-question-card::before {
  width: 58%;
  height: 5px;
  background: linear-gradient(90deg, rgba(47,155,210,0.10), rgba(47,155,210,0.96), rgba(47,155,210,0.10));
}

.popular-question-card::after {
  content: "01";
  position: relative;
  display: flex;
  width: 46px;
  height: 46px;
  align-items: center;
  justify-content: center;
  margin: 10px auto 0;
  border: 1px solid rgba(47,155,210,0.28);
  border-radius: 50%;
  background: linear-gradient(145deg, #ffffff, #eef9ff);
  color: var(--blue-dark);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 1.4px;
  line-height: 1;
  box-shadow: 0 12px 24px rgba(47,155,210,0.12);
  order: -1;
}

.popular-question-card:nth-child(2)::after { content: "02"; }
.popular-question-card:nth-child(3)::after { content: "03"; }
.popular-question-card:nth-child(4)::after { content: "04"; }
.popular-question-card:nth-child(5)::after { content: "05"; }
.popular-question-card:nth-child(6)::after { content: "06"; }

.popular-question-card:hover {
  transform: translateY(-6px);
  border-color: rgba(47,155,210,0.34);
  box-shadow: 0 26px 62px rgba(23,49,84,0.11);
}

.help-faq-hub {
  padding: var(--section-pad) 0;
}

.help-faq-layout {
  grid-template-columns: 280px minmax(0, 1fr);
  gap: var(--card-gap);
}

.help-tabs-layout {
  display: block;
}

.help-topic-nav {
  top: calc(var(--nav-height) + 18px);
  padding: 22px;
}

.help-topic-nav a {
  font-size: 14px;
}

.help-tabs-nav {
  position: relative;
  top: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  max-width: 980px;
  margin: 0 auto 28px;
  padding: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.92);
}

.help-tabs-nav .eyebrow,
.help-tabs-nav a {
  display: none;
}

.help-tab-btn {
  min-height: 48px;
  padding: 0 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--text-mid);
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  transition: var(--transition);
  white-space: nowrap;
}

.help-tab-btn:hover {
  color: var(--blue-dark);
  background: rgba(47,155,210,0.10);
}

.help-tab-btn.active,
.help-tab-btn[aria-selected="true"] {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--white);
  box-shadow: 0 14px 28px rgba(23,49,84,0.16);
}

.help-tabs-layout .help-topic-stack {
  max-width: 920px;
  margin: 0 auto;
}

.help-topic-panel[hidden] {
  display: none !important;
}

.help-tabs-layout .help-topic-head {
  display: none;
}


.help-topic-panel {
  grid-template-columns: 178px minmax(0, 1fr);
  gap: var(--card-gap);
  padding: 24px;
}

.help-topic-panel::before {
  left: 202px;
}

.help-tabs-layout .help-topic-panel {
  display: block;
  grid-template-columns: none;
  text-align: center;
}

.help-tabs-layout .help-topic-panel > :not(.help-topic-head) {
  grid-column: auto;
}

.help-tabs-layout .help-topic-panel::before {
  display: none;
}

.help-tabs-layout .help-topic-panel > h3 {
  justify-content: center;
  width: 100%;
  margin: 18px auto 16px;
  text-align: center;
}

.help-tabs-layout .help-topic-panel > h3:first-of-type {
  margin-top: 0;
}

.help-tabs-layout .faq-list {
  max-width: 760px;
  margin: 0 auto 28px;
}

.help-tabs-layout .faq-list:last-child {
  margin-bottom: 0;
}

.help-tabs-layout .faq-question {
  text-align: left;
}

.help-tabs-layout .faq-answer-inner {
  text-align: left;
}

.help-centre-page .faq-icon {
  font-size: 18px;
  font-weight: 900;
  transform: rotate(0deg);
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.help-centre-page .faq-item.open .faq-icon {
  transform: rotate(180deg);
}

.help-topic-head h2 {
  color: var(--navy);
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 900;
}

.help-subgroup h3,
.help-topic-panel > h3 {
  color: var(--blue-dark);
  font-size: 11px;
  letter-spacing: 2.2px;
}

.faq-question {
  min-height: 54px;
  color: var(--navy);
  font-size: 14px;
}

.faq-icon {
  border-color: rgba(47,155,210,0.45);
  color: var(--blue-dark);
}

.faq-item.open .faq-icon {
  background: var(--navy);
  border-color: var(--navy);
}

.help-centre-page .cta-banner {
  background: var(--home-bg);
}

.help-centre-page .cta-content {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}

.help-centre-page .cta-banner h2 {
  max-width: 720px;
  font-size: clamp(38px, 4.6vw, 58px) !important;
  line-height: 1.08 !important;
  color: var(--navy) !important;
}

.help-centre-page .cta-banner p {
  max-width: 640px;
  color: var(--text-mid);
  font-size: 16px;
  line-height: 1.7;
}

@media (min-width: 1025px) {
  .help-centre-page {
    zoom: 1;
  }
}

@media (max-width: 1100px) {
  .help-hero-grid,
  .help-faq-layout {
    grid-template-columns: 1fr;
  }

  .help-topic-nav {
    position: static;
  }

  .help-topic-panel {
    grid-template-columns: 1fr;
  }

  .help-topic-panel > :not(.help-topic-head) {
    grid-column: 1;
  }

  .help-topic-panel::before {
    display: none;
  }
}

@media (max-width: 760px) {
  .help-centre-page .section {
    padding: 56px 0;
  }

  .help-hero {
    padding: 0 0 50px;
  }

  .help-hero h1 {
    font-size: clamp(38px, 11vw, 48px);
  }

  .help-hero-copy p {
    font-size: 16px;
  }

  .help-ask-panel,
  .help-topic-panel {
    padding: 22px;
  }

  .help-tabs-nav {
    justify-content: flex-start;
    flex-wrap: nowrap;
    margin-bottom: 22px;
    overflow-x: auto;
    border-radius: 16px;
    scrollbar-width: none;
  }

  .help-tabs-nav::-webkit-scrollbar {
    display: none;
  }

  .help-tab-btn {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 0 16px;
    font-size: 13px;
  }

  .popular-question-grid {
    grid-template-columns: 1fr;
  }

  .popular-question-card {
    min-height: auto;
    padding: 42px 22px 30px;
  }

  .popular-question-card h3 {
    min-height: auto;
    margin-top: 18px;
    font-size: 18px;
  }

  .popular-question-card p {
    max-width: 100%;
  }

  .help-centre-page .cta-content {
    padding: 44px 20px !important;
  }
}


/* Shared hero width lock after migrated Help Centre styles */
html body.home-page main.help-centre-page .help-hero .help-hero-copy {
  width: 100%;
  max-width: 710px !important;
}

html body.home-page main.help-centre-page .help-hero h1 {
  max-width: 760px !important;
}

html body.home-page main.help-centre-page .help-hero-copy p {
  max-width: 660px !important;
}

/* Final EOF Services page layout matched to index.html */


html body.home-page main.service-copy-page .services-home-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 34px 0 auto !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.24), transparent) !important;
  z-index: 1 !important;
}


html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 42px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: 720px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 760px !important;
  margin: 0 0 12px !important;
  color: var(--navy) !important;
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}


html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
  flex: 0 0 410px !important;
  align-self: center !important;
}


html body.home-page main.service-copy-page section:not(.services-home-hero):not(.hero-split),
html body.home-page main.service-copy-page .section {
  padding: var(--section-pad) 0 !important;
  margin: 0 !important;
  background: var(--home-bg) !important;
}


html body.home-page main.service-copy-page .section-header .eyebrow,
html body.home-page main.service-copy-page .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: var(--space-sm) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  line-height: normal !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page .section-title,
html body.home-page main.service-copy-page .section-header .section-title {
  max-width: 760px !important;
  margin: 0 auto var(--space-sm) !important;
  color: var(--text-dark) !important;
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .section-sub,
html body.home-page main.service-copy-page .section-header .section-sub {
  max-width: 600px !important;
  margin: 0 auto !important;
  color: var(--text-mid) !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .method-split-grid,
html body.home-page main.service-copy-page .service-card-grid,
html body.home-page main.service-copy-page .coverage-lane-grid,
html body.home-page main.service-copy-page .pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: var(--card-gap) !important;
  margin: 0 !important;
  align-items: stretch !important;
}


html body.home-page main.service-copy-page .method-feature-card {
  display: block !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .method-feature-card img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
}

html body.home-page main.service-copy-page .method-feature-card > div,
html body.home-page main.service-copy-page .service-card-grid article {
  min-height: auto !important;
  padding: 28px 24px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .service-card-grid.compact {
  margin-top: var(--card-gap) !important;
}

html body.home-page main.service-copy-page .method-note {
  max-width: 960px !important;
  margin: var(--card-gap) auto !important;
  padding: 28px !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: var(--radius-lg) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: var(--shadow-sm) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .business-mini-section .section-header {
  display: block !important;
  max-width: 680px !important;
}

html body.home-page main.service-copy-page .business-mini-section .business-media {
  display: none !important;
}

html body.home-page main.service-copy-page .business-mini-section .business-copy {
  display: block !important;
  min-height: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .coverage-summary-card {
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: 32px !important;
}

html body.home-page main.service-copy-page .coverage-summary-action {
  margin-top: var(--card-gap) !important;
  text-align: center !important;
}


html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.75fr) !important;
  gap: var(--space-2xl) !important;
  align-items: start !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  max-width: 440px !important;
  margin: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-final-cta.cta-banner {
  padding: var(--section-pad) 0 !important;
  background: var(--home-bg) !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
    align-items: flex-start !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
    opacity: 0.4 !important;
    background-position: center top !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .home-hero-wash {
    background: linear-gradient(180deg, rgba(245,251,255,0.98) 0%, rgba(245,251,255,0.95) 58%, rgba(245,251,255,0.86) 100%) !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .container {
    padding-top: 180px !important;
    padding-bottom: 40px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-copy,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page section:not(.services-home-hero):not(.hero-split),
  html body.home-page main.service-copy-page .section {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-title {
    font-size: clamp(32px, 10vw, 48px) !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-title span {
    white-space: normal !important;
  }
}


/* True EOF restore for index page section heading sizing */
body.home-page .section .section-title,
body.home-page .section-gray .section-title,
body.home-page .section-dark .section-title,
body.home-page .why-premium-section .section-title,
body.home-page .offer-premium-section .section-title,
body.home-page .process-premium-section .section-title,
body.home-page .routes-premium-section .section-title,
body.home-page .home-faq-premium .section-title {
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.8px !important;
  margin-bottom: var(--space-sm) !important;
}

body.home-page .section .section-header,
body.home-page .section-gray .section-header,
body.home-page .section-dark .section-header,
body.home-page .why-premium-section .section-header,
body.home-page .offer-premium-section .section-header,
body.home-page .process-premium-section .section-header,
body.home-page .routes-premium-section .section-header,
body.home-page .home-faq-premium .section-header {
  max-width: 680px !important;
  margin: 0 auto var(--header-gap) !important;
}

body.home-page .section .section-sub,
body.home-page .section-gray .section-sub,
body.home-page .section-dark .section-sub,
body.home-page .why-premium-section .section-sub,
body.home-page .offer-premium-section .section-sub,
body.home-page .process-premium-section .section-sub,
body.home-page .routes-premium-section .section-sub,
body.home-page .home-faq-premium .section-sub {
  font-size: 16px !important;
  line-height: 1.75 !important;
  max-width: 600px !important;
}

/* True EOF Services page repair only */
html body.home-page main.service-copy-page {
  background: var(--home-bg) !important;
}

html body.home-page main.service-copy-page .services-home-hero {
  min-height: 620px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: var(--home-bg) !important;
  border: 0 !important;
  isolation: isolate !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
  position: absolute !important;
  top: 54px !important;
  right: max(24px, calc((100vw - 1320px) / 2)) !important;
  bottom: 54px !important;
  left: auto !important;
  width: min(49vw, 710px) !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: 24px !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: 0 34px 94px rgba(23,49,84,0.16) !important;
  z-index: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-wash {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.70) 58%, rgba(245,251,255,0.12) 76%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%) !important;
  z-index: 1 !important;
}

html body.home-page main.service-copy-page .services-home-hero .container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1320px !important;
  padding-top: 180px !important;
  padding-bottom: 42px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: 720px !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  width: 100% !important;
  max-width: 720px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 760px !important;
  margin: 0 0 12px !important;
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-title span {
  display: block !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 660px !important;
  margin: 4px 0 20px !important;
  color: #415970 !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}

html body.home-page main.service-copy-page .services-stats-section {
  display: block !important;
  padding: 0 0 var(--section-pad) !important;
  background: var(--home-bg) !important;
}

html body.home-page main.service-copy-page .services-hero-stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  gap: 0 !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: var(--radius-lg) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: var(--shadow-sm) !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .services-hero-stats div {
  min-height: 120px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  text-align: center !important;
  border-right: 1px solid rgba(47,155,210,0.16) !important;
}

html body.home-page main.service-copy-page .services-hero-stats div:last-child {
  border-right: 0 !important;
}

html body.home-page main.service-copy-page .section,
html body.home-page main.service-copy-page .service-method-section,
html body.home-page main.service-copy-page .business-mini-section,
html body.home-page main.service-copy-page .coverage-summary-section,
html body.home-page main.service-copy-page .pricing-section,
html body.home-page main.service-copy-page .testimonial-section,
html body.home-page main.service-copy-page .services-faq-section {
  padding: var(--section-pad) 0 !important;
  margin: 0 !important;
  background: var(--home-bg) !important;
}

html body.home-page main.service-copy-page .container {
  max-width: 1200px !important;
}

html body.home-page main.service-copy-page .section-header {
  max-width: 680px !important;
  margin: 0 auto var(--header-gap) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .section-title,
html body.home-page main.service-copy-page .section-header .section-title {
  max-width: 760px !important;
  margin: 0 auto var(--space-sm) !important;
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .section-sub,
html body.home-page main.service-copy-page .section-header .section-sub {
  max-width: 600px !important;
  margin: 0 auto !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .method-split-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--card-gap) !important;
  margin: 0 0 var(--card-gap) !important;
}

html body.home-page main.service-copy-page .service-card-grid,
html body.home-page main.service-copy-page .pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--card-gap) !important;
}

html body.home-page main.service-copy-page .method-feature-card,
html body.home-page main.service-copy-page .service-card-grid article,
html body.home-page main.service-copy-page .coverage-summary-card,
html body.home-page main.service-copy-page .coverage-lane-card,
html body.home-page main.service-copy-page .testimonial-panel,
html body.home-page main.service-copy-page .faq-premium-shell {
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: var(--radius-lg) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: var(--shadow-sm) !important;
}

html body.home-page main.service-copy-page .method-feature-card {
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .method-feature-card img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block !important;
}

html body.home-page main.service-copy-page .method-feature-card > div,
html body.home-page main.service-copy-page .service-card-grid article {
  min-height: auto !important;
  padding: 30px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .method-note {
  max-width: 960px !important;
  margin: var(--card-gap) auto 0 !important;
  padding: 30px 40px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .business-mini-section .section-header {
  max-width: 920px !important;
  padding: 46px 36px !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: var(--radius-lg) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: var(--shadow-sm) !important;
}

html body.home-page main.service-copy-page .coverage-summary-card {
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: 24px !important;
}

html body.home-page main.service-copy-page .coverage-lane-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

html body.home-page main.service-copy-page .coverage-summary-action {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 22px !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page .testimonial-panel {
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 34px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.75fr) !important;
  gap: 52px !important;
  align-items: center !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  text-align: left !important;
  margin-left: 0 !important;
}

@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .method-split-grid,
  html body.home-page main.service-copy-page .service-card-grid,
  html body.home-page main.service-copy-page .pricing-grid,
  html body.home-page main.service-copy-page .coverage-lane-grid,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats div {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(47,155,210,0.16) !important;
  }

  html body.home-page main.service-copy-page .services-hero-stats div:last-child {
    border-bottom: 0 !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page .services-home-hero .hero-title {
    font-size: clamp(32px, 10vw, 48px) !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-title span {
    white-space: normal !important;
  }

  html body.home-page main.service-copy-page .section,
  html body.home-page main.service-copy-page .service-method-section,
  html body.home-page main.service-copy-page .business-mini-section,
  html body.home-page main.service-copy-page .coverage-summary-section,
  html body.home-page main.service-copy-page .pricing-section,
  html body.home-page main.service-copy-page .testimonial-section,
  html body.home-page main.service-copy-page .services-faq-section {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }
}

/* True EOF Services headings and section rhythm matched to index.html */
html body.home-page main.service-copy-page {
  --section-pad: 58px !important;
  --header-gap: 32px !important;
}

html body.home-page main.service-copy-page .section,
html body.home-page main.service-copy-page .service-method-section,
html body.home-page main.service-copy-page .business-mini-section,
html body.home-page main.service-copy-page .coverage-summary-section,
html body.home-page main.service-copy-page .pricing-section,
html body.home-page main.service-copy-page .testimonial-section,
html body.home-page main.service-copy-page .services-faq-section,
html body.home-page main.service-copy-page .quote-cta-section {
  padding-top: 58px !important;
  padding-bottom: 58px !important;
}

html body.home-page main.service-copy-page .section-header {
  margin-bottom: 32px !important;
}

html body.home-page main.service-copy-page .section-title,
html body.home-page main.service-copy-page .section-header .section-title,
html body.home-page main.service-copy-page .quote-cta-section h2 {
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.8px !important;
  margin-bottom: var(--space-sm) !important;
}

html body.home-page main.service-copy-page .method-feature-card h3,
html body.home-page main.service-copy-page .service-card-grid h3,
html body.home-page main.service-copy-page .coverage-lane-card h3,
html body.home-page main.service-copy-page .pricing-grid h3 {
  font-size: 20px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page {
    --section-pad: 46px !important;
    --header-gap: 26px !important;
  }

  html body.home-page main.service-copy-page .section,
  html body.home-page main.service-copy-page .service-method-section,
  html body.home-page main.service-copy-page .business-mini-section,
  html body.home-page main.service-copy-page .coverage-summary-section,
  html body.home-page main.service-copy-page .pricing-section,
  html body.home-page main.service-copy-page .testimonial-section,
  html body.home-page main.service-copy-page .services-faq-section,
  html body.home-page main.service-copy-page .quote-cta-section {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
  }

  html body.home-page main.service-copy-page .section-header {
    margin-bottom: 26px !important;
  }
}

/* True EOF Services hero matched to about.html alignment */
html body.home-page main.service-copy-page .services-home-hero {
  min-height: 510px !important;
  display: flex !important;
  align-items: center !important;
  background: var(--home-bg) !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  border-radius: 0 !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: none !important;
}


html body.home-page main.service-copy-page .services-home-hero .container {
  max-width: 1320px !important;
  padding-top: 180px !important;
  padding-bottom: 18px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  gap: 42px !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  width: 100% !important;
  max-width: 710px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 760px !important;
  margin-bottom: 14px !important;
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 660px !important;
  margin-bottom: 22px !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}

@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .services-home-hero {
    min-height: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .container {
    padding-top: 180px !important;
    padding-bottom: 54px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper,
  html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy {
    display: block !important;
    max-width: 710px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Absolute EOF Services hero text correction */
html body.home-page main.service-copy-page .services-home-hero .container {
  padding-top: 180px !important;
  padding-bottom: 58px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  justify-content: flex-start !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  max-width: 640px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 640px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  font-size: clamp(38px, 4.2vw, 56px) !important;
  line-height: 1.08 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 600px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-actions {
  justify-content: flex-start !important;
  text-align: left !important;
}

@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy,
  html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
  html body.home-page main.service-copy-page .services-home-hero .hero-title,
  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Absolute EOF Services section side gap */
@media (min-width: 1200px) {
  html body.home-page main.service-copy-page section:not(.services-home-hero):not(.quote-cta-section):not(.hero-split) > .container {
    width: 100% !important;
    max-width: 1200px !important;
    padding-left: clamp(56px, 6vw, 96px) !important;
    padding-right: clamp(56px, 6vw, 96px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

html body.home-page main.service-copy-page .quote-cta-section,
html body.home-page main.service-copy-page .quote-cta-section > .container {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Absolute EOF exact How We Ship h2 size */
html body.home-page main.service-copy-page #how-we-ship > .container > .section-header > h2.section-title {
  font-size: clamp(28px, 3.2vw, 40px) !important;
  line-height: 1.18 !important;
  max-width: 680px !important;
}

/* Absolute EOF all Services section h2 sizes matched */
html body.home-page main.service-copy-page section:not(.services-home-hero) > .container > .section-header > h2.section-title,
html body.home-page main.service-copy-page .services-faq-section .section-header > h2.section-title,
html body.home-page main.service-copy-page .quote-cta-section h2 {
  font-size: clamp(28px, 3.2vw, 40px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.5px !important;
  max-width: 680px !important;
}

/* Absolute EOF Services card icons and text alignment */
html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article {
  min-height: 210px !important;
  display: grid !important;
  grid-template-rows: 50px minmax(48px, auto) minmax(58px, auto) !important;
  align-items: start !important;
  justify-items: center !important;
  padding: 28px 20px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon {
  width: 46px !important;
  height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 12px !important;
  border-radius: 12px !important;
  background: rgba(79,195,247,0.12) !important;
  color: var(--blue-dark) !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon::before {
  display: block !important;
  color: currentColor !important;
  font-size: 25px !important;
  line-height: 1 !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-fleet::before { content: "\25A3" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-network::before { content: "\25C7" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-shield::before { content: "\2713" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-location::before { content: "\2316" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-tag::before { content: "$" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-calendar::before { content: "\25A1" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-route::before { content: "\2194" !important; }
html body.home-page main.service-copy-page #how-we-ship .icon-terminal::before { content: "\2302" !important; }

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article h3 {
  align-self: center !important;
  margin: 0 auto !important;
  max-width: 260px !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--navy) !important;
  font-size: 19px !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article p {
  align-self: start !important;
  max-width: 250px !important;
  margin: 10px auto 0 !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

/* Absolute EOF restore original-style service line icons */
html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon {
  width: 50px !important;
  height: 50px !important;
  border-radius: 14px !important;
  background: rgba(79,195,247,0.12) !important;
  color: var(--blue-dark) !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon::before {
  content: "" !important;
  width: 28px !important;
  height: 28px !important;
  background: currentColor !important;
  -webkit-mask: var(--service-icon-mask) center / contain no-repeat !important;
  mask: var(--service-icon-mask) center / contain no-repeat !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-fleet {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 7h11v8h2.2l1.8-3h-2V9h3.4l2.6 4v2h-2a3 3 0 0 1-6 0H9a3 3 0 0 1-6 0H1V9a2 2 0 0 1 2-2Zm3 9.5A1.5 1.5 0 1 0 6 13.5a1.5 1.5 0 0 0 0 3Zm11 0a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3ZM3 9v4h10V9H3Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-network {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4a3 3 0 0 1 2.83 4H14.2a3 3 0 1 1 0 2H9.83A3 3 0 0 1 8 11.83v3.34a3 3 0 1 1-2 0v-3.34A3 3 0 0 1 7 4Zm0 2a1 1 0 1 0 0 2a1 1 0 0 0 0-2Zm10 2a1 1 0 1 0 0 2a1 1 0 0 0 0-2ZM7 17a1 1 0 1 0 0 2a1 1 0 0 0 0-2Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-shield {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l8 3v6c0 5-3.2 9.7-8 11c-4.8-1.3-8-6-8-11V5l8-3Zm0 2.2L6 6.45V11c0 3.8 2.3 7.4 6 8.85c3.7-1.45 6-5.05 6-8.85V6.45l-6-2.25Zm4.3 5.1l1.4 1.4l-6.2 6.2l-3.7-3.7l1.4-1.4l2.3 2.3l4.8-4.8Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-location {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7Zm0 2a5 5 0 0 0-5 5c0 2.75 2.9 7.05 5 9.65C14.1 16.05 17 11.75 17 9a5 5 0 0 0-5-5Zm0 2.8a2.2 2.2 0 1 1 0 4.4a2.2 2.2 0 0 1 0-4.4Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-tag {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 10.6l-8.6 8.6a2.7 2.7 0 0 1-3.8 0L3.8 15.4a2.7 2.7 0 0 1 0-3.8L12.4 3H20v7.6ZM13.2 5L5.2 13a.7.7 0 0 0 0 1l3.8 3.8a.7.7 0 0 0 1 0l8-8V5h-4.8ZM16.5 6.5a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-calendar {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 9H4v9h16v-9ZM4 7v2h16V7H4Zm3 6h3v3H7v-3Zm5 0h3v3h-3v-3Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-route {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 3a4 4 0 0 1 3.46 6H15a3 3 0 0 1 0 6H9a1 1 0 0 0 0 2h5.54a4 4 0 1 1 0 2H9a3 3 0 0 1 0-6h6a1 1 0 0 0 0-2H9.46A4 4 0 1 1 6 3Zm0 2a2 2 0 1 0 0 4a2 2 0 0 0 0-4Zm12 12a2 2 0 1 0 0 4a2 2 0 0 0 0-4Z'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page #how-we-ship .icon-terminal {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21V8l9-5l9 5v13h-2v-2H5v2H3Zm2-4h14V9.2l-7-3.9l-7 3.9V17Zm2-6h10v2H7v-2Zm0 4h10v2H7v-2Z'/%3E%3C/svg%3E") !important;
}

/* Absolute EOF How We Ship card text alignment */
html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article {
  min-height: 230px !important;
  grid-template-rows: 58px 62px 1fr !important;
  align-content: start !important;
  justify-content: stretch !important;
  gap: 0 !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon {
  align-self: start !important;
  margin-bottom: 0 !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article h3 {
  align-self: start !important;
  min-height: 62px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article p {
  align-self: start !important;
  margin-top: 0 !important;
  min-height: 78px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
}

/* Absolute EOF Services stats matched to index.html */
html body.home-page main.service-copy-page .services-stats-section {
  padding: 34px 0 58px !important;
  background: var(--home-bg) !important;
}

html body.home-page main.service-copy-page .services-stats-section > .container {
  width: min(100% - 80px, 1200px) !important;
  max-width: 1200px !important;
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 auto !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.82) !important;
  box-shadow: 0 24px 68px rgba(23,49,84,0.10) !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats div {
  position: relative !important;
  min-height: 154px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 28px 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats div:not(:last-child) {
  border-right: 1px solid rgba(47,155,210,0.14) !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats strong {
  margin: 0 0 10px !important;
  color: var(--navy) !important;
  font-size: clamp(34px, 3.4vw, 46px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats span {
  margin: 0 !important;
  color: var(--blue-dark) !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
}

@media (max-width: 768px) {
  html body.home-page main.service-copy-page .services-stats-section > .container {
    width: min(100% - 32px, 1200px) !important;
  }

  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats div:not(:last-child) {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(47,155,210,0.14) !important;
  }
}

/* Absolute EOF coverage timing text is not a button */
html body.home-page main.service-copy-page .coverage-lane-card p {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  font-weight: 700 !important;
}

/* Absolute EOF remove Services footer gap */
html body.home-page main.service-copy-page .services-final-cta,
html body.home-page main.service-copy-page .quote-cta-section.services-final-cta,
html body.home-page main.service-copy-page .services-final-cta.cta-banner {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

html body.home-page main.service-copy-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

html body.home-page main.service-copy-page + footer,
html body.home-page footer {
  margin-top: 0 !important;
}

/* Absolute EOF business section h2 matched with other Services headings */
html body.home-page main.service-copy-page .business-mini-section .business-copy > h2.section-title {
  font-size: clamp(28px, 3.2vw, 40px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.5px !important;
  max-width: 680px !important;
}

/* Absolute EOF compact Services page spacing */
html body.home-page main.service-copy-page {
  --section-pad: 42px !important;
  --header-gap: 24px !important;
}

html body.home-page main.service-copy-page .section,
html body.home-page main.service-copy-page .service-method-section,
html body.home-page main.service-copy-page .business-mini-section,
html body.home-page main.service-copy-page .coverage-summary-section,
html body.home-page main.service-copy-page .pricing-section,
html body.home-page main.service-copy-page .testimonial-section,
html body.home-page main.service-copy-page .services-faq-section {
  padding-top: 42px !important;
  padding-bottom: 42px !important;
}

html body.home-page main.service-copy-page .section-header {
  margin-bottom: 24px !important;
}

html body.home-page main.service-copy-page .services-stats-section {
  padding-top: 22px !important;
  padding-bottom: 38px !important;
}

html body.home-page main.service-copy-page #how-we-ship .method-split-grid,
html body.home-page main.service-copy-page #how-we-ship .service-card-grid,
html body.home-page main.service-copy-page .pricing-grid,
html body.home-page main.service-copy-page .coverage-lane-grid {
  margin-top: 18px !important;
}

html body.home-page main.service-copy-page .method-note {
  margin-top: 20px !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page {
    --section-pad: 34px !important;
    --header-gap: 20px !important;
  }

  html body.home-page main.service-copy-page .section,
  html body.home-page main.service-copy-page .service-method-section,
  html body.home-page main.service-copy-page .business-mini-section,
  html body.home-page main.service-copy-page .coverage-summary-section,
  html body.home-page main.service-copy-page .pricing-section,
  html body.home-page main.service-copy-page .testimonial-section,
  html body.home-page main.service-copy-page .services-faq-section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
}

/* Absolute EOF remove Services section divider lines */
html body.home-page main.service-copy-page > section,
html body.home-page main.service-copy-page .section,
html body.home-page main.service-copy-page .services-stats-section,
html body.home-page main.service-copy-page .service-method-section,
html body.home-page main.service-copy-page .business-mini-section,
html body.home-page main.service-copy-page .coverage-summary-section,
html body.home-page main.service-copy-page .pricing-section,
html body.home-page main.service-copy-page .testimonial-section,
html body.home-page main.service-copy-page .services-faq-section,
html body.home-page main.service-copy-page .quote-cta-section {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page > section::before,
html body.home-page main.service-copy-page > section::after,
html body.home-page main.service-copy-page .section::before,
html body.home-page main.service-copy-page .section::after,
html body.home-page main.service-copy-page .service-method-section::before,
html body.home-page main.service-copy-page .service-method-section::after,
html body.home-page main.service-copy-page .business-mini-section::before,
html body.home-page main.service-copy-page .business-mini-section::after,
html body.home-page main.service-copy-page .coverage-summary-section::before,
html body.home-page main.service-copy-page .coverage-summary-section::after,
html body.home-page main.service-copy-page .pricing-section::before,
html body.home-page main.service-copy-page .pricing-section::after,
html body.home-page main.service-copy-page .testimonial-section::before,
html body.home-page main.service-copy-page .testimonial-section::after,
html body.home-page main.service-copy-page .services-faq-section::before,
html body.home-page main.service-copy-page .services-faq-section::after {
  display: none !important;
}

/* Absolute EOF remove Services stats background shadow */
html body.home-page main.service-copy-page .services-stats-section .services-hero-stats {
  box-shadow: none !important;
}

/* Absolute EOF How We Ship icon-heading spacing */
html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article {
  grid-template-rows: 72px minmax(70px, auto) 1fr !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article .service-icon {
  margin-bottom: 18px !important;
}

html body.home-page main.service-copy-page #how-we-ship .service-card-grid.compact article h3 {
  padding-top: 6px !important;
}

/* Absolute EOF clean coverage lane card layout */
html body.home-page main.service-copy-page .coverage-lane-card {
  min-height: 180px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 34px 36px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .coverage-lane-card span {
  margin: 0 !important;
}

html body.home-page main.service-copy-page .coverage-lane-card h3 {
  margin: 0 !important;
  font-size: clamp(25px, 2.6vw, 34px) !important;
  line-height: 1.1 !important;
}

html body.home-page main.service-copy-page .coverage-lane-card p {
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
}

/* Absolute EOF Services subtitles matched to index.html */
html body.home-page main.service-copy-page .section-header .section-sub,
html body.home-page main.service-copy-page .section-sub {
  max-width: 600px !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  font-weight: 400 !important;
  color: var(--text-mid) !important;
}

/* Absolute EOF Services hero text size matched to index.html */
html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  font-size: 17px !important;
  line-height: 1.7 !important;
}

/* Absolute EOF Services hero layout matched to index.html */
html body.home-page main.service-copy-page .services-home-hero {
  min-height: 620px !important;
  background: var(--home-bg) !important;
  isolation: isolate !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-bg {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  border-radius: 0 !important;
  background-image: url("../images/what we offer -open carrier image .jpg") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page .services-home-hero .home-hero-wash {
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(245,251,255,1) 0%, rgba(245,251,255,0.98) 35%, rgba(245,251,255,0.84) 57%, rgba(245,251,255,0.34) 82%, rgba(245,251,255,0.06) 100%),
    linear-gradient(180deg, rgba(245,251,255,0.18) 0%, rgba(245,251,255,0.86) 100%) !important;
}

html body.home-page main.service-copy-page .services-home-hero .container {
  max-width: 1320px !important;
  padding-top: 180px !important;
  padding-bottom: 42px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 42px !important;
  width: 100% !important;
  max-width: none !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-eyebrow {
  background: rgba(237,248,253,0.92) !important;
  border-color: rgba(47,155,210,0.24) !important;
  box-shadow: 0 12px 28px rgba(47,155,210,0.08) !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 760px !important;
  margin-bottom: 12px !important;
  color: var(--navy) !important;
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-title span {
  display: block !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 660px !important;
  margin-top: 4px !important;
  margin-bottom: 20px !important;
  color: #415970 !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-support-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  max-width: 700px !important;
  margin: 0 0 4px !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-support-item {
  position: relative !important;
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.9) !important;
  box-shadow: 0 12px 28px rgba(23,49,84,0.06) !important;
  color: var(--navy) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 850 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-support-item span {
  flex: 0 0 auto !important;
  width: 24px !important;
  height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: linear-gradient(145deg, #effaff, #dff5ff) !important;
  color: var(--blue-dark) !important;
  box-shadow: 0 8px 18px rgba(79,195,247,0.22) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-copy > .btn-outline {
  min-height: 48px !important;
  margin-top: 18px !important;
  padding: 13px 26px !important;
  background: linear-gradient(90deg, var(--navy), var(--navy-mid)) !important;
  border-color: var(--navy) !important;
  color: var(--white) !important;
  box-shadow: 0 18px 42px rgba(23,49,84,0.22) !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
  display: block !important;
  flex: 0 0 410px !important;
  align-self: center !important;
  width: auto !important;
  max-width: 410px !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page .services-home-hero .quote-form-box {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: 0 30px 86px rgba(23,49,84,0.16) !important;
  padding: 28px 30px !important;
}

html body.home-page main.service-copy-page .services-home-hero .quote-form-box::before {
  content: "" !important;
  position: absolute !important;
  left: 30px !important;
  right: 30px !important;
  top: 0 !important;
  height: 4px !important;
  border-radius: 0 0 999px 999px !important;
  background: linear-gradient(90deg, rgba(79,195,247,0.18), #4fc3f7, rgba(79,195,247,0.18)) !important;
}

html body.home-page main.service-copy-page .services-home-hero .quote-form-box .form-title {
  justify-content: flex-start !important;
  margin-bottom: 18px !important;
  color: var(--navy) !important;
}

html body.home-page main.service-copy-page .services-home-hero .form-row {
  gap: 12px !important;
  margin-bottom: 12px !important;
}

html body.home-page main.service-copy-page .services-home-hero .fg {
  gap: 5px !important;
}

html body.home-page main.service-copy-page .services-home-hero .fg input,
html body.home-page main.service-copy-page .services-home-hero .fg select {
  min-height: 46px !important;
  padding: 11px 14px !important;
  background: #f8fcff !important;
  border-color: rgba(23,49,84,0.11) !important;
}

html body.home-page main.service-copy-page .services-home-hero .form-submit-row {
  margin-top: 18px !important;
}

@media (max-width: 1100px) {
  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy {
    max-width: 720px !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-subtitle,
  html body.home-page main.service-copy-page .services-home-hero .hero-title {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-form-container {
    width: min(100%, 520px) !important;
    max-width: 520px !important;
  }
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page .services-home-hero .hero-support-row {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .hero-title span {
    white-space: normal !important;
  }
}

/* Absolute EOF Services hero text compact length */
html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  max-width: 640px !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 640px !important;
  font-size: clamp(40px, 4.5vw, 58px) !important;
  line-height: 1.06 !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-subtitle {
  max-width: 600px !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-support-row {
  max-width: 640px !important;
}

/* Absolute EOF Services hero no form/support layout */
html body.home-page main.service-copy-page .services-home-hero .hero-form-container,
html body.home-page main.service-copy-page .services-home-hero .hero-support-row {
  display: none !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  display: block !important;
  max-width: 640px !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  max-width: 640px !important;
  text-align: left !important;
}

/* Absolute EOF Services hero logo-aligned larger text */
html body.home-page main.service-copy-page .services-home-hero .container {
  max-width: 1320px !important;
  padding-left: var(--container-pad) !important;
  padding-right: var(--container-pad) !important;
}

html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
  margin-left: 0 !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page .services-home-hero .hero-title {
  max-width: 680px !important;
  font-size: clamp(44px, 4.8vw, 62px) !important;
  line-height: 1.06 !important;
}

html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page .services-home-hero .hero-copy {
  max-width: 680px !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page .services-home-hero .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html body.home-page main.service-copy-page .services-home-hero .services-hero-content,
  html body.home-page main.service-copy-page .services-home-hero .hero-copy,
  html body.home-page main.service-copy-page .services-home-hero .hero-content-wrapper {
    max-width: 680px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
  }
}

/* Absolute EOF compact Services stats vertical alignment */
html body.home-page main.service-copy-page .services-stats-section {
  padding-top: 14px !important;
  padding-bottom: 26px !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats div {
  min-height: 118px !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats strong {
  margin-bottom: 8px !important;
  font-size: clamp(30px, 3vw, 40px) !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats span {
  font-size: 12px !important;
}

/* Absolute EOF align coverage lane timings */
html body.home-page main.service-copy-page .coverage-lane-card {
  display: grid !important;
  grid-template-rows: 28px 74px 28px !important;
  align-content: center !important;
  gap: 10px !important;
}

html body.home-page main.service-copy-page .coverage-lane-card span {
  align-self: start !important;
}

html body.home-page main.service-copy-page .coverage-lane-card h3 {
  align-self: center !important;
  display: flex !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page .coverage-lane-card p {
  align-self: start !important;
}

/* Absolute EOF premium coverage lane cards */
html body.home-page main.service-copy-page .coverage-lane-card {
  position: relative !important;
  min-height: 220px !important;
  grid-template-rows: 34px 1fr 42px !important;
  padding: 34px 36px !important;
  border: 1px solid rgba(47,155,210,0.24) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(247,253,255,0.94) 58%, rgba(237,248,253,0.82) 100%) !important;
  box-shadow: 0 18px 46px rgba(23,49,84,0.08) !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .coverage-lane-card::before {
  content: "" !important;
  position: absolute !important;
  right: 28px !important;
  top: 28px !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 14px !important;
  background: rgba(79,195,247,0.12) !important;
  box-shadow: inset 0 0 0 1px rgba(47,155,210,0.20) !important;
}

html body.home-page main.service-copy-page .coverage-lane-card::after {
  content: "" !important;
  position: absolute !important;
  right: 41px !important;
  top: 41px !important;
  width: 28px !important;
  height: 28px !important;
  background: var(--blue-dark) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20a10 10 0 0 0 0-20Zm6.9 9h-3.05a15.5 15.5 0 0 0-1.05-5.02A8.02 8.02 0 0 1 18.9 11ZM12 4.04c.72 1.04 1.56 3.08 1.82 6.96h-3.64C10.44 7.12 11.28 5.08 12 4.04ZM4.1 13h3.05c.14 1.86.5 3.6 1.05 5.02A8.02 8.02 0 0 1 4.1 13Zm3.05-2H4.1a8.02 8.02 0 0 1 4.1-5.02A15.5 15.5 0 0 0 7.15 11ZM12 19.96c-.72-1.04-1.56-3.08-1.82-6.96h3.64C13.56 16.88 12.72 18.92 12 19.96Zm2.8-1.94c.55-1.42.91-3.16 1.05-5.02h3.05a8.02 8.02 0 0 1-4.1 5.02Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20a10 10 0 0 0 0-20Zm6.9 9h-3.05a15.5 15.5 0 0 0-1.05-5.02A8.02 8.02 0 0 1 18.9 11ZM12 4.04c.72 1.04 1.56 3.08 1.82 6.96h-3.64C10.44 7.12 11.28 5.08 12 4.04ZM4.1 13h3.05c.14 1.86.5 3.6 1.05 5.02A8.02 8.02 0 0 1 4.1 13Zm3.05-2H4.1a8.02 8.02 0 0 1 4.1-5.02A15.5 15.5 0 0 0 7.15 11ZM12 19.96c-.72-1.04-1.56-3.08-1.82-6.96h3.64C13.56 16.88 12.72 18.92 12 19.96Zm2.8-1.94c.55-1.42.91-3.16 1.05-5.02h3.05a8.02 8.02 0 0 1-4.1 5.02Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page .coverage-lane-card span,
html body.home-page main.service-copy-page .coverage-lane-card h3,
html body.home-page main.service-copy-page .coverage-lane-card p {
  position: relative !important;
  z-index: 1 !important;
}

html body.home-page main.service-copy-page .coverage-lane-card h3 {
  max-width: 360px !important;
}

html body.home-page main.service-copy-page .coverage-lane-card p {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  padding: 9px 16px !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--navy) !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.06) !important;
}

/* Absolute EOF Services FAQ scroll/clipping fix */
html body.home-page main.service-copy-page .services-faq-section,
html body.home-page main.service-copy-page .services-faq-section .container,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-shell,
html body.home-page main.service-copy-page .services-faq-section .faq-grid {
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  align-items: start !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  position: static !important;
  top: auto !important;
  align-self: start !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
  transform: none !important;
}

/* Absolute EOF coverage lanes alignment and plain timing text */
html body.home-page main.service-copy-page .coverage-lane-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(150px, auto) !important;
  grid-template-rows: auto 1fr !important;
  column-gap: 34px !important;
  row-gap: 22px !important;
  align-items: center !important;
  min-height: 220px !important;
}

html body.home-page main.service-copy-page .coverage-lane-card span {
  grid-column: 1 / 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
}

html body.home-page main.service-copy-page .coverage-lane-card h3 {
  grid-column: 1 / 2 !important;
  grid-row: 2 !important;
  align-self: center !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page .coverage-lane-card p {
  grid-column: 2 / 3 !important;
  grid-row: 2 !important;
  display: block !important;
  align-self: center !important;
  justify-self: end !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #526b82 !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  html body.home-page main.service-copy-page .coverage-lane-card {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    gap: 14px !important;
  }

  html body.home-page main.service-copy-page .coverage-lane-card p {
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-self: start !important;
  }
}

/* Absolute EOF Services FAQ normal stacked scroll layout */
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 30px !important;
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: static !important;
  top: auto !important;
  max-width: 760px !important;
  margin: 0 auto 4px !important;
  padding: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header::before,
html body.home-page main.service-copy-page .services-faq-section .section-header::after {
  display: none !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-title,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-shell {
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-grid {
  width: 100% !important;
}

/* Absolute EOF restore Services FAQ design, keep normal scroll */
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.75fr) !important;
  gap: 48px !important;
  align-items: start !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-shell {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
  grid-column: 2 !important;
  grid-row: 1 !important;
  position: static !important;
  top: auto !important;
  align-self: start !important;
  max-width: none !important;
  margin: 0 !important;
  padding-top: 14px !important;
  padding-left: 28px !important;
  text-align: left !important;
  transform: none !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 18px !important;
  bottom: 4px !important;
  width: 4px !important;
  border-radius: 999px !important;
  background: #35b8f2 !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header::after {
  display: none !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-title,
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
  max-width: 480px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .faq-premium-shell,
  html body.home-page main.service-copy-page .services-faq-section .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
    padding-left: 0 !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .section-header::before {
    display: none !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .section-title,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-title {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* Absolute EOF Services FAQ right copy scrolls with FAQ list */
@media (min-width: 1025px) {
  html body.home-page main.service-copy-page .services-faq-section,
  html body.home-page main.service-copy-page .services-faq-section .container,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
    overflow: visible !important;
  }

  html body.home-page main.service-copy-page .services-faq-section .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
    position: sticky !important;
    top: calc(var(--nav-height) + 24px) !important;
    align-self: start !important;
    max-height: calc(100vh - var(--nav-height) - 48px) !important;
    overflow: visible !important;
  }
}

@media (max-width: 1024px) {
  html body.home-page main.service-copy-page .services-faq-section .section-header,
  html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout .section-header {
    position: static !important;
    top: auto !important;
    max-height: none !important;
  }
}

/* Absolute EOF About values heading matches mission heading size */
.about-page #about-values .section-title {
  font-size: clamp(32px, 3vw, 44px) !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.5px !important;
}

/* Absolute EOF Services CTA balanced spacing */
html body.home-page main.service-copy-page .services-final-cta.cta-banner,
html body.home-page main.service-copy-page .quote-cta-section.services-final-cta {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: #f5fbff !important;
}

html body.home-page main.service-copy-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .container {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
}

html body.home-page main.service-copy-page .services-final-cta .cta-content {
  min-height: 360px !important;
  padding: 48px max(28px, calc((100vw - 800px) / 2)) 52px !important;
  gap: 0 !important;
}

html body.home-page main.service-copy-page .services-final-cta .eyebrow {
  margin: 0 0 16px !important;
}

html body.home-page main.service-copy-page .services-final-cta h2 {
  margin: 0 auto 14px !important;
  line-height: 1.04 !important;
}

html body.home-page main.service-copy-page .services-final-cta p {
  margin: 0 auto 26px !important;
  line-height: 1.6 !important;
}

html body.home-page main.service-copy-page .services-final-cta .cta-btns {
  margin-top: 0 !important;
  gap: 16px !important;
}

html body.home-page main.service-copy-page + footer {
  margin-top: 0 !important;
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page .services-final-cta .cta-content {
    min-height: 320px !important;
    padding: 40px 20px 44px !important;
  }

  html body.home-page main.service-copy-page .services-final-cta p {
    margin-bottom: 22px !important;
  }
}

/* ===== STATS MARQUEE PILL DESIGN ===== */
.stats-marquee-content {
  gap: 24px !important;
  padding-right: 24px !important;
  animation-duration: 20s !important;
}

.stat-pill {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 16px 36px;
  background: #ffffff;
  border-radius: 999px;
  border: 1px solid rgba(47,155,210,0.3);
  color: var(--navy);
  min-width: 220px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(23,49,84,0.02);
}

.stat-pill::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background-color: #4fc3f7;
  border-radius: 50%;
  z-index: 2;
}

.stat-pill::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 30px;
  background: radial-gradient(circle at top, rgba(79,195,247,0.25) 0%, transparent 60%);
  z-index: 1;
}

.stat-pill .pill-val {
  font-size: 24px;
  font-weight: 800;
  color: #173154;
  position: relative;
  z-index: 3;
  margin-top: 8px;
}

.stat-pill .pill-lbl {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: #2f9bd2;
  text-transform: uppercase;
  margin-top: 4px;
  position: relative;
  z-index: 3;
}

/* About page stats marquee â€” same strip treatment as the homepage */
.about-page .about-stats-marquee {
  padding: 24px 0;
  border-top: 1px solid rgba(47,155,210,0.10);
  border-bottom: 1px solid rgba(47,155,210,0.10);
  background: var(--home-bg);
}
.about-page .about-stats-marquee::before,
.about-page .about-stats-marquee::after {
  width: 140px;
  z-index: 2;
}
.about-page .about-stats-marquee::before {
  background: linear-gradient(90deg, var(--home-bg), rgba(245,251,255,0));
}
.about-page .about-stats-marquee::after {
  background: linear-gradient(270deg, var(--home-bg), rgba(245,251,255,0));
}


/* ===== FREQUENT SHIPPER SECTION ===== */
.frequent-shipper-section {
  padding: 80px 0;
  background: #f4f9fc;
}

.shipper-bento-grid {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 24px;
}

.shipper-card {
  background: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(23,49,84,0.04);
  border: 1px solid rgba(47,155,210,0.1);
}

.tall-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 32px;
  min-height: 500px;
  background-image: url('../images/3.jpg');
  background-size: cover;
  background-position: center;
}

.tall-card-bg {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.88) 0%, rgba(255,255,255,0.80) 50%, rgba(255,255,255,0.62) 100%);
  z-index: 0;
}

.tall-card > * {
  position: relative;
  z-index: 1;
}

.shipper-pill {
  background: #e1f2fc;
  color: #2f9bd2;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
  padding: 8px 16px;
  border-radius: 999px;
  margin-bottom: 24px;
  text-transform: uppercase;
}

.shipper-title {
  color: #173154;
  font-size: clamp(32px, 4.5vw, 48px);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -0.8px;
  margin-bottom: 24px;
}

.shipper-desc {
  color: #4a6076;
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 36px;
  max-width: 280px;
}

.tall-card .btn-dark {
  padding: 16px 32px;
  border-radius: 999px;
  font-weight: 700;
}

.shipper-right-col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.horiz-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  min-height: 180px;
}

.horiz-content {
  padding: 32px 40px;
  flex: 1;
}

.horiz-content h3 {
  color: #173154;
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 12px;
}

.horiz-content p {
  color: #5f7589;
  font-size: 15px;
  line-height: 1.6;
  max-width: 320px;
}

.horiz-img {
  width: 45%;
  height: 100%;
  min-height: 180px;
  position: relative;
  overflow: hidden;
}

.horiz-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0; left: 0;
}

.horiz-img-bg {
  align-self: stretch;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media (max-width: 900px) {
  .shipper-bento-grid {
    grid-template-columns: 1fr;
  }
  .horiz-card {
    flex-direction: column;
    align-items: stretch;
  }
  .horiz-img {
    width: 100%;
    height: 200px;
  }
  .horiz-content {
    padding: 32px 24px;
  }
}


/* ===== About final CTA â€” single contact bar holding phone + email ===== */
.about-page .about-final-cta .about-cta-contact {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: auto !important;
  max-width: 760px !important;
  margin: 22px auto 0 !important;
  padding: 6px 8px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  border: 1px solid rgba(47,155,210,0.28) !important;
  box-shadow: 0 16px 38px rgba(23,49,84,0.12) !important;
}

.about-page .about-final-cta .about-contact-item {
  position: relative !important;
  flex: 0 1 auto !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  min-height: 48px !important;
  padding: 8px 22px !important;
  border: none !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: color 0.2s ease !important;
}

.about-page .about-final-cta .about-contact-item + .about-contact-item::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 12px !important;
  bottom: 12px !important;
  width: 1px !important;
  background: rgba(47,155,210,0.26) !important;
}

.about-page .about-final-cta .about-contact-item svg {
  position: static !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 8px !important;
  border-radius: 50% !important;
  background: linear-gradient(145deg, var(--navy), var(--blue-dark)) !important;
  fill: none !important;
  stroke: #ffffff !important;
  stroke-width: 2 !important;
  filter: none !important;
  transition: transform 0.22s ease !important;
}

.about-page .about-final-cta .about-contact-item:hover svg {
  transform: scale(1.08) !important;
}

.about-page .about-final-cta .about-contact-item strong {
  display: block !important;
  font-size: 15.5px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.1px !important;
  color: var(--navy) !important;
  text-align: left !important;
  white-space: nowrap !important;
}

@media (max-width: 640px) {
  .about-page .about-final-cta .about-cta-contact {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    border-radius: 20px !important;
    padding: 6px 10px !important;
  }
  .about-page .about-final-cta .about-contact-item {
    justify-content: center !important;
    padding: 12px 10px !important;
  }
  .about-page .about-final-cta .about-contact-item + .about-contact-item::before {
    left: 12px !important;
    right: 12px !important;
    top: 0 !important;
    bottom: auto !important;
    width: auto !important;
    height: 1px !important;
  }
  .about-page .about-final-cta .about-contact-item strong {
    font-size: 13.5px !important;
    white-space: normal !important;
  }
}

/* ============================================================
   PAGE STYLES â€” services.html / shippingacrossindia.html /
   fordealer&business.html
   These three pages used classes that had no rules in this
   stylesheet. Everything below fills those gaps using the
   existing tokens, card language, and spacing scale.
   ============================================================ */

/* ---- Shared: anchor offset under the sticky nav ---- */
.service-copy-page section[id],
.service-copy-page .anchor-alias {
  scroll-margin-top: calc(var(--nav-height) + 20px);
}

.service-copy-page .anchor-alias {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
}

/* ---- Shared: small note paragraph under a grid / table ---- */
.service-copy-page .section-note,
.service-copy-page .pricing-note {
  max-width: 760px;
  margin: 24px auto 0;
  color: #526b82;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.75;
  text-align: center;
}

/* ---- Shared: centered button row at the end of a section ---- */
.service-copy-page .section-actions,
.service-copy-page .get-started-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
}

.service-copy-page .get-started-btns {
  margin-top: 22px;
}

.service-copy-page .cta-btns.cta-btns-3 {
  flex-wrap: wrap;
}

/* ---- Shared: stats ribbon (label-only variant of the stats bar) ---- */
html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div {
  min-height: 118px !important;
  padding: 26px 18px !important;
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div::before {
  content: "";
  width: 26px;
  height: 3px;
  margin-bottom: 14px;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--blue-dark), var(--blue));
}

html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon span {
  color: var(--navy) !important;
  font-size: 15.5px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
  letter-spacing: 0.1px !important;
  text-transform: none !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div:not(:last-child) {
    border-right: 0 !important;
  }
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div:nth-child(odd) {
    border-right: 1px solid rgba(47,155,210,0.14) !important;
  }
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div:nth-last-child(n+3) {
    border-bottom: 1px solid rgba(47,155,210,0.14) !important;
  }
}

@media (max-width: 600px) {
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon {
    grid-template-columns: 1fr !important;
  }
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div:nth-child(odd) {
    border-right: 0 !important;
  }
  html body.home-page main.service-copy-page .services-stats-section .services-hero-stats.stats-ribbon div:not(:last-child) {
    border-bottom: 1px solid rgba(47,155,210,0.14) !important;
  }
}

/* ---- Shared: card icons (previously only rendered inside #how-we-ship) ---- */
html body.home-page main.service-copy-page .service-card-grid article .service-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: 46px !important;
  height: 46px !important;
  margin-bottom: 18px !important;
  border-radius: 13px !important;
  background: var(--sky-soft) !important;
  box-shadow: none !important;
  color: var(--blue) !important;
  font-size: 0 !important;
  transition: transform 0.24s cubic-bezier(0.4,0,0.2,1) !important;
}

html body.home-page main.service-copy-page .service-card-grid article:hover .service-icon {
  transform: translateY(-2px) scale(1.04) !important;
}

html body.home-page main.service-copy-page .service-card-grid article .service-icon::before {
  content: "" !important;
  display: block !important;
  width: 23px !important;
  height: 23px !important;
  background: currentColor !important;
  -webkit-mask: var(--service-icon-mask) center / contain no-repeat !important;
  mask: var(--service-icon-mask) center / contain no-repeat !important;
}

html body.home-page main.service-copy-page .icon-fleet {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 7h11v8h2.2l1.8-3h-2V9h3.4l2.6 4v2h-2a3 3 0 0 1-6 0H9a3 3 0 0 1-6 0H1V9a2 2 0 0 1 2-2Zm3 9.5A1.5 1.5 0 1 0 6 13.5a1.5 1.5 0 0 0 0 3Zm11 0a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3ZM3 9v4h10V9H3Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-network {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4a3 3 0 0 1 2.83 4H14.2a3 3 0 1 1 0 2H9.83A3 3 0 0 1 8 11.83v3.34a3 3 0 1 1-2 0v-3.34A3 3 0 0 1 7 4Zm0 2a1 1 0 1 0 0 2a1 1 0 0 0 0-2Zm10 2a1 1 0 1 0 0 2a1 1 0 0 0 0-2ZM7 17a1 1 0 1 0 0 2a1 1 0 0 0 0-2Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-shield {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l8 3v6c0 5-3.2 9.7-8 11c-4.8-1.3-8-6-8-11V5l8-3Zm0 2.2L6 6.45V11c0 3.8 2.3 7.4 6 8.85c3.7-1.45 6-5.05 6-8.85V6.45l-6-2.25Zm4.3 5.1l1.4 1.4l-6.2 6.2l-3.7-3.7l1.4-1.4l2.3 2.3l4.8-4.8Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-location {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7Zm0 2a5 5 0 0 0-5 5c0 2.75 2.9 7.05 5 9.65C14.1 16.05 17 11.75 17 9a5 5 0 0 0-5-5Zm0 2.8a2.2 2.2 0 1 1 0 4.4a2.2 2.2 0 0 1 0-4.4Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-tag {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 10.6l-8.6 8.6a2.7 2.7 0 0 1-3.8 0L3.8 15.4a2.7 2.7 0 0 1 0-3.8L12.4 3H20v7.6ZM13.2 5L5.2 13a.7.7 0 0 0 0 1l3.8 3.8a.7.7 0 0 0 1 0l8-8V5h-4.8ZM16.5 6.5a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-calendar {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 9H4v9h16v-9ZM4 7v2h16V7H4Zm3 6h3v3H7v-3Zm5 0h3v3h-3v-3Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-route {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 3a4 4 0 0 1 3.46 6H15a3 3 0 0 1 0 6H9a1 1 0 0 0 0 2h5.54a4 4 0 1 1 0 2H9a3 3 0 0 1 0-6h6a1 1 0 0 0 0-2H9.46A4 4 0 1 1 6 3Zm0 2a2 2 0 1 0 0 4a2 2 0 0 0 0-4Zm12 12a2 2 0 1 0 0 4a2 2 0 0 0 0-4Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-terminal {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21V8l9-5l9 5v13h-2v-2H5v2H3Zm2-4h14V9.2l-7-3.9l-7 3.9V17Zm2-6h10v2H7v-2Zm0 4h10v2H7v-2Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-contact {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25a11.4 11.4 0 0 0 3.6.58a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1a11.4 11.4 0 0 0 .57 3.6a1 1 0 0 1-.25 1l-2.22 2.2Z'/%3E%3C/svg%3E");
}

html body.home-page main.service-copy-page .icon-border {
  --service-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20a10 10 0 0 0 0-20Zm6.9 7h-2.6a15.6 15.6 0 0 0-1.2-3.9A8 8 0 0 1 18.9 9ZM12 4.2A13.6 13.6 0 0 1 13.6 9h-3.2A13.6 13.6 0 0 1 12 4.2ZM4.3 13a8 8 0 0 1 0-2h3a17.6 17.6 0 0 0 0 2h-3Zm.8 2h2.6a15.6 15.6 0 0 0 1.2 3.9A8 8 0 0 1 5.1 15Zm2.6-6H5.1a8 8 0 0 1 3.8-3.9A15.6 15.6 0 0 0 7.7 9ZM12 19.8A13.6 13.6 0 0 1 10.4 15h3.2A13.6 13.6 0 0 1 12 19.8Zm2-6.8h-4a15.4 15.4 0 0 1 0-2h4a15.4 15.4 0 0 1 0 2Zm1.1 5.9a15.6 15.6 0 0 0 1.2-3.9h2.6a8 8 0 0 1-3.8 3.9ZM16.7 13a17.6 17.6 0 0 0 0-2h3a8 8 0 0 1 0 2h-3Z'/%3E%3C/svg%3E");
}

/* ============================================================
   services.html
   ============================================================ */

/* Non-running vehicles â€” tinted callout section */
.service-copy-page .nonrunning-section {
  background: linear-gradient(180deg, #f1f9fe 0%, #ffffff 100%);
}

.service-copy-page .nonrunning-section .section-header {
  max-width: 820px;
}

.service-copy-page .nonrunning-section .section-header .btn {
  margin-top: 22px;
}

/* Pricing cards â€” real PNG icons need an explicit box */
.service-copy-page .pricing-grid .price-real-icon {
  display: block;
  width: 74px;
  height: 74px;
  margin: 0 auto 16px;
  object-fit: contain;
}

/* ============================================================
   shippingacrossindia.html
   ============================================================ */

/* Provinces served */
.routes-page .province-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.routes-page .province-grid li {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 150px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,0.72);
  border-radius: 18px;
  background: #10233c;
  box-shadow: 0 18px 44px rgba(23,49,84,0.14);
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
  transition: var(--transition);
}

.routes-page .province-grid li img {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform 500ms ease, filter 500ms ease;
}

.routes-page .province-grid li::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(8,22,40,0.08) 0%, rgba(8,22,40,0.62) 100%),
    linear-gradient(135deg, rgba(47,155,210,0.28) 0%, rgba(13,35,61,0.14) 52%, rgba(8,22,40,0.42) 100%);
}

.routes-page .province-grid li::after {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(255,255,255,0.28);
  border-radius: 13px;
  pointer-events: none;
}

.routes-page .province-grid li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  width: min(100%, 220px);
  padding: 11px 14px;
  border: 1px solid rgba(255,255,255,0.34);
  border-radius: 999px;
  background: rgba(8,22,40,0.58);
  box-shadow: 0 12px 28px rgba(0,0,0,0.18);
  backdrop-filter: blur(10px);
}

.routes-page .province-grid li:hover {
  transform: translateY(-5px);
  border-color: rgba(47,155,210,0.48);
  box-shadow: 0 24px 54px rgba(23,49,84,0.20);
}

.routes-page .province-grid li:hover img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.09);
}

/* Terminal locations */
.routes-page .terminal-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.routes-page .terminal-grid article {
  position: relative;
  overflow: hidden;
  min-height: 210px;
  padding: 28px 24px;
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 18px;
  background:
    linear-gradient(150deg, rgba(255,255,255,0.96) 0%, rgba(243,250,255,0.96) 100%),
    radial-gradient(circle at 88% 12%, rgba(47,155,210,0.18) 0, rgba(47,155,210,0) 35%);
  box-shadow: 0 18px 46px rgba(23,49,84,0.09);
  transition: var(--transition);
}

.routes-page .terminal-grid article::before {
  content: "";
  position: absolute;
  top: 22px;
  right: 22px;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--navy);
  box-shadow: 0 14px 28px rgba(23,49,84,0.16);
}

.routes-page .terminal-grid article::after {
  content: "";
  position: absolute;
  top: 35px;
  right: 35px;
  width: 22px;
  height: 22px;
  background: #ffffff;
  -webkit-mask: var(--terminal-icon) center / contain no-repeat;
  mask: var(--terminal-icon) center / contain no-repeat;
}

.routes-page .terminal-grid .terminal-bc {
  --terminal-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7Zm0 2a5 5 0 0 0-5 5c0 2.75 2.9 7.05 5 9.65C14.1 16.05 17 11.75 17 9a5 5 0 0 0-5-5Zm0 2.8a2.2 2.2 0 1 1 0 4.4a2.2 2.2 0 0 1 0-4.4Z'/%3E%3C/svg%3E");
}

.routes-page .terminal-grid .terminal-prairie {
  --terminal-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 3a4 4 0 0 1 3.46 6H15a3 3 0 0 1 0 6H9a1 1 0 0 0 0 2h5.54a4 4 0 1 1 0 2H9a3 3 0 0 1 0-6h6a1 1 0 0 0 0-2H9.46A4 4 0 1 1 6 3Zm0 2a2 2 0 1 0 0 4a2 2 0 0 0 0-4Zm12 12a2 2 0 1 0 0 4a2 2 0 0 0 0-4Z'/%3E%3C/svg%3E");
}

.routes-page .terminal-grid .terminal-central {
  --terminal-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v10h-2v-2H6v2H4Zm2-4h8V5H6v12Zm10 0h2v-6h-2v6ZM8 7h2v2H8V7Zm0 4h2v2H8v-2Zm4-4h2v2h-2V7Zm0 4h2v2h-2v-2Z'/%3E%3C/svg%3E");
}

.routes-page .terminal-grid .terminal-atlantic {
  --terminal-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 17.5c1.25 0 1.9.45 2.48.84c.5.34.9.61 1.77.61s1.27-.27 1.77-.61c.58-.39 1.23-.84 2.48-.84s1.9.45 2.48.84c.5.34.9.61 1.77.61s1.27-.27 1.77-.61c.58-.39 1.23-.84 2.48-.84V20c-1.25 0-1.9.45-2.48.84c-.5.34-.9.61-1.77.61s-1.27-.27-1.77-.61c-.58-.39-1.23-.84-2.48-.84s-1.9.45-2.48.84c-.5.34-.9.61-1.77.61s-1.27-.27-1.77-.61C5.9 20.45 5.25 20 4 20v-2.5ZM12 3l7 5v7h-2v-2H7v2H5V8l7-5Zm0 2.45L7 9.02V11h10V9.02l-5-3.57Z'/%3E%3C/svg%3E");
}

.routes-page .terminal-grid article:hover {
  transform: translateY(-6px);
  border-color: rgba(47,155,210,0.50);
  box-shadow: 0 26px 58px rgba(23,49,84,0.15);
}

.routes-page .terminal-grid article h3 {
  position: relative;
  z-index: 1;
  max-width: calc(100% - 62px);
  min-height: 48px;
  margin-bottom: 20px;
  padding-bottom: 14px;
  color: var(--navy);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 900;
}

.routes-page .terminal-grid article h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 42px;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--blue-dark), var(--blue));
}

.routes-page .terminal-grid article p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #526b82;
  font-size: 14.5px;
  font-weight: 750;
  line-height: 1.85;
}

/* Popular routes */
.routes-page .route-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.routes-page .route-grid article {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 178px;
  padding: 24px;
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 18px;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.94) 0%, rgba(240,248,253,0.96) 100%),
    radial-gradient(circle at 88% 18%, rgba(47,155,210,0.18) 0, rgba(47,155,210,0) 34%);
  box-shadow: 0 18px 44px rgba(23,49,84,0.08);
  transition: var(--transition);
}

.routes-page .route-grid article::before {
  content: "";
  position: absolute;
  right: -38px;
  bottom: -46px;
  width: 150px;
  height: 150px;
  border: 28px solid rgba(47,155,210,0.10);
  border-radius: 50%;
}

.routes-page .route-grid article::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 22px;
  height: 2px;
  background: linear-gradient(90deg, rgba(47,155,210,0), rgba(47,155,210,0.46), rgba(47,155,210,0));
}

.routes-page .route-grid article:hover {
  transform: translateY(-6px);
  border-color: rgba(47,155,210,0.50);
  box-shadow: 0 26px 58px rgba(23,49,84,0.15);
}

.routes-page .route-kicker {
  position: relative;
  z-index: 1;
  display: inline-flex;
  margin-bottom: 18px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(47,155,210,0.10);
  color: var(--blue-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.9px;
  text-transform: uppercase;
}

.routes-page .route-grid article h3 {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  color: var(--navy);
  font-size: 21px;
  line-height: 1.3;
  font-weight: 900;
  text-align: center;
}

.routes-page .route-grid article h3 i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--navy);
  color: #ffffff;
  font-style: normal;
  font-size: 15px;
  box-shadow: 0 10px 22px rgba(23,49,84,0.16);
}

.routes-page .route-grid article p {
  position: relative;
  z-index: 1;
  max-width: 290px;
  margin: 0;
  color: #526b82;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.65;
}

/* Transit times table */
.routes-page .transit-premium-wrap {
  display: grid;
  grid-template-columns: minmax(270px, 0.78fr) minmax(0, 1.22fr);
  gap: 20px;
  align-items: stretch;
}

.routes-page .transit-media-panel {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background: #10233c;
  box-shadow: 0 20px 54px rgba(23,49,84,0.12);
}

.routes-page .transit-media-panel img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}

.routes-page .transit-media-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8,22,40,0.02) 0%, rgba(8,22,40,0.34) 100%),
    linear-gradient(135deg, rgba(47,155,210,0.24), rgba(8,22,40,0.20));
}

.routes-page .transit-media-copy {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 1;
  padding: 18px;
  border: 1px solid rgba(255,255,255,0.28);
  border-radius: 16px;
  background: rgba(8,22,40,0.58);
  backdrop-filter: blur(10px);
}

.routes-page .transit-media-copy span {
  display: block;
  margin-bottom: 8px;
  color: #77d4ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.routes-page .transit-media-copy strong {
  display: block;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.45;
  font-weight: 850;
}

.routes-page .services-route-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 20px 54px rgba(23,49,84,0.10);
  -webkit-overflow-scrolling: touch;
}

.routes-page .services-route-table {
  width: 100%;
  border-collapse: collapse;
}

.routes-page .services-route-table th {
  padding: 19px 24px;
  background: linear-gradient(135deg, var(--navy) 0%, #173b63 100%);
  color: #ffffff;
  font-size: 12.5px;
  font-weight: 900;
  letter-spacing: 1.3px;
  text-transform: uppercase;
  text-align: left;
  white-space: nowrap;
}

.routes-page .services-route-table td {
  padding: 18px 24px;
  border-top: 1px solid rgba(23,49,84,0.08);
  color: #3d566d;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.55;
}

.routes-page .services-route-table tbody tr:nth-child(even) {
  background: #f7fbfe;
}

.routes-page .services-route-table tbody tr {
  transition: background 220ms ease;
}

.routes-page .services-route-table tbody tr:hover {
  background: #eef8ff;
}

.routes-page .services-route-table td:last-child {
  color: var(--blue-dark);
  font-weight: 900;
  white-space: nowrap;
}

.routes-page .time-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 148px;
  padding: 9px 13px;
  border: 1px solid rgba(47,155,210,0.20);
  border-radius: 999px;
  background: rgba(47,155,210,0.10);
  color: var(--blue-dark);
}

@media (max-width: 700px) {
  .routes-page .services-route-table thead {
    display: none;
  }
  .routes-page .services-route-table,
  .routes-page .services-route-table tbody,
  .routes-page .services-route-table tr,
  .routes-page .services-route-table td {
    display: block;
    width: 100%;
  }
  .routes-page .services-route-table tr {
    padding: 8px 0;
    border-top: 1px solid rgba(23,49,84,0.08);
  }
  .routes-page .services-route-table tbody tr:first-child {
    border-top: 0;
  }
  .routes-page .services-route-table td {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    padding: 8px 20px;
    border-top: 0;
    text-align: right;
  }
  .routes-page .services-route-table td::before {
    content: attr(data-label);
    flex: 0 0 auto;
    color: var(--navy);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-align: left;
  }
  .routes-page .services-route-table td:last-child {
    white-space: normal;
  }
}

/* Coverage map */
.routes-page .coverage-map-frame {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 8;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background: #eaf4fb;
  box-shadow: 0 20px 54px rgba(23,49,84,0.10);
}

.routes-page .coverage-map-frame iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Route FAQ image/text split */
.routes-page .services-faq-section .faq-premium-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(440px, 0.86fr);
  gap: 54px;
  align-items: stretch;
}

.routes-page .services-faq-section .faq-image-panel {
  position: relative;
  overflow: hidden;
  min-height: 620px;
  padding: 0;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 18px;
  background: #10233c;
  box-shadow: 0 24px 64px rgba(23,49,84,0.13);
}

.routes-page .services-faq-section .faq-image-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8,22,40,0.02) 0%, rgba(8,22,40,0.28) 100%),
    linear-gradient(135deg, rgba(47,155,210,0.18), rgba(8,22,40,0.08));
  pointer-events: none;
}

.routes-page .services-faq-section .faq-image-panel img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 620px;
  object-fit: cover;
}

.routes-page .services-faq-section .section-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: none;
  margin: 0;
  padding-left: 38px;
  text-align: left;
}

.routes-page .services-faq-section .section-header::before {
  left: 0;
  top: 0;
  bottom: 0;
  height: auto;
}

.routes-page .services-faq-section .section-header .eyebrow {
  margin-bottom: 28px;
}

.routes-page .services-faq-section .section-header .section-title {
  max-width: 520px;
  margin: 0;
  font-size: clamp(42px, 4vw, 68px);
  line-height: 1.08;
}

.routes-page .services-faq-section .route-faq-side-list {
  display: grid;
  width: 100%;
  gap: 0;
  margin-top: 34px;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 0;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(23,49,84,0.07);
}

.routes-page .services-faq-section .route-faq-side-list .faq-item {
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.routes-page .services-faq-section .route-faq-side-list .faq-item + .faq-item {
  border-top: 1px solid rgba(47,155,210,0.14);
}

.routes-page .services-faq-section .route-faq-side-list .faq-item.open,
.routes-page .services-faq-section .route-faq-side-list .faq-item:hover {
  box-shadow: inset 4px 0 0 var(--blue);
}

.routes-page .services-faq-section .route-faq-side-list .faq-question {
  width: 100%;
  min-height: 96px;
  padding: 20px 28px;
  gap: 18px;
  font-size: 17px;
  line-height: 1.35;
  text-align: left;
  outline: 0;
}

.routes-page .services-faq-section .route-faq-side-list .faq-question:focus-visible {
  box-shadow: inset 0 0 0 2px var(--blue);
}

.routes-page .services-faq-section .route-faq-side-list .faq-icon {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  margin-left: auto;
}

.routes-page .services-faq-section .route-faq-side-list .faq-answer-inner {
  padding: 0 28px 22px;
  font-size: 14px;
  line-height: 1.65;
  text-align: left;
}

.routes-page .services-faq-section .faq-premium-cta {
  margin-top: 28px;
  text-align: left;
}

@media (max-width: 900px) {
  .routes-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .routes-page .services-faq-section .section-header {
    padding-left: 0;
  }
  .routes-page .services-faq-section .section-header::before {
    display: none;
  }
}

@media (max-width: 640px) {
  .routes-page .services-faq-section .faq-image-panel,
  .routes-page .services-faq-section .faq-image-panel img {
    min-height: 260px;
  }
  .routes-page .services-faq-section .section-header .section-title {
    font-size: 34px;
  }
  .routes-page .services-faq-section .route-faq-side-list {
    margin-top: 24px;
  }
  .routes-page .services-faq-section .route-faq-side-list .faq-question {
    min-height: 78px;
    padding: 16px 18px;
    font-size: 15px;
  }
  .routes-page .services-faq-section .route-faq-side-list .faq-icon {
    width: 38px;
    height: 38px;
  }
}

/* ============================================================
   fordealer&business.html
   ============================================================ */

.dealer-page .dealer-media-band {
  overflow: hidden;
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 22px 58px rgba(23,49,84,0.10);
}

.dealer-page .dealer-media-band img {
  display: block;
  width: 100%;
  height: clamp(240px, 34vw, 420px);
  object-fit: cover;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1080px) {
  .routes-page .province-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .routes-page .province-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .routes-page .transit-premium-wrap {
    grid-template-columns: 1fr;
  }
  .routes-page .transit-media-panel img {
    min-height: 280px;
  }
  .routes-page .terminal-grid,
  .routes-page .route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .routes-page .province-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .routes-page .terminal-grid,
  .routes-page .route-grid {
    grid-template-columns: 1fr;
  }
  .routes-page .terminal-grid article {
    min-height: 180px;
    padding: 24px 22px;
  }
  .routes-page .terminal-grid article h3 {
    min-height: 0;
    font-size: 17px;
  }
  .routes-page .route-grid article {
    min-height: 160px;
    padding: 22px;
  }
  .routes-page .route-grid article h3 {
    font-size: 19px;
  }
  .routes-page .transit-media-panel img {
    min-height: 240px;
  }
  .routes-page .transit-media-copy {
    left: 14px;
    right: 14px;
    bottom: 14px;
  }
  .routes-page .transit-media-copy strong {
    font-size: 15px;
  }
  .routes-page .coverage-map-frame {
    aspect-ratio: 4 / 3;
    border-radius: 14px;
  }
  .service-copy-page .section-actions .btn,
  .service-copy-page .get-started-btns .btn {
    width: 100%;
    justify-content: center;
  }
  .service-copy-page .pricing-grid .price-real-icon {
    width: 62px;
    height: 62px;
  }
}

/* ============================================================
   STATS MARQUEE â€” site-wide
   index.html and about.html already carried this strip. The
   same markup now runs on services, shipping-across-canada,
   dealer & business, help centre and get-a-quote.

   Pages with <body class="home-page"> inherit the homepage
   treatment already defined above. The rules below cover the
   pages that do not carry that class (get-a-quote), so the
   strip looks identical everywhere.
   ============================================================ */
.stats-marquee-strip {
  padding: 18px 0;
  border: 0;
  background: var(--home-bg, #f5fbff);
}

.stats-marquee-strip::before,
.stats-marquee-strip::after {
  width: 140px;
  z-index: 2;
}

.stats-marquee-strip::before {
  background: linear-gradient(90deg, var(--home-bg, #f5fbff), rgba(245,251,255,0));
}

.stats-marquee-strip::after {
  background: linear-gradient(270deg, var(--home-bg, #f5fbff), rgba(245,251,255,0));
}

/* Inside the service pages the strip sits within <main>, which is
   already painted with --home-bg â€” keep it edge-to-edge there. */
.service-copy-page .stats-marquee-strip,
.help-centre-page .stats-marquee-strip,
.quote-page .stats-marquee-strip {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* The pills were being sliced along their top edge.
   .marquee-wrapper carries overflow:hidden (needed for the horizontal
   scroll) and its height collapses to exactly the pill height, so the
   pill sits flush against the clip box. Inside <main class="service-copy-page">
   the page is zoomed twice (body 1.15 x main 1.1 = 1.265), and at that
   scale the clip box rounds a fraction tighter than the pill's painted
   box â€” enough to shave off the rounded top.
   Fix: move part of the vertical breathing room from the strip onto the
   wrapper, so the pill always has slack inside the clip box. Total strip
   height is unchanged. */
.trust-strip.stats-marquee-strip,
.home-page .trust-strip.stats-marquee-strip,
.about-page .trust-strip.stats-marquee-strip {
  padding: 12px 0;
}

.stats-marquee-strip .marquee-wrapper {
  padding: 8px 0;
}

.routes-page .stats-marquee-strip {
  padding: 8px 0;
}

.routes-page .stats-marquee-strip .marquee-wrapper {
  padding: 5px 0;
}

.routes-page .stats-marquee-content {
  gap: 18px !important;
  padding-right: 18px !important;
}

.routes-page .stat-pill {
  min-width: 190px;
  min-height: 78px;
  padding: 13px 28px;
}

.routes-page .stat-pill .pill-val {
  font-size: 22px;
  margin-top: 6px;
}

.routes-page .stat-pill .pill-lbl {
  font-size: 9.5px;
  letter-spacing: 1.4px;
}

@media (max-width: 768px) {
  .trust-strip.stats-marquee-strip,
  .home-page .trust-strip.stats-marquee-strip,
  .about-page .trust-strip.stats-marquee-strip {
    padding: 8px 0;
  }
  .stats-marquee-strip::before,
  .stats-marquee-strip::after {
    width: 70px;
  }
  .stat-pill {
    min-width: 180px;
    padding: 14px 28px;
  }
  .stat-pill .pill-val {
    font-size: 21px;
  }
  .routes-page .stat-pill {
    min-width: 165px;
    min-height: 70px;
    padding: 12px 22px;
  }
  .routes-page .stat-pill .pill-val {
    font-size: 19px;
  }
  .routes-page .stat-pill .pill-lbl {
    font-size: 8.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-marquee-content {
    animation: none !important;
  }
}

/* Final shipping-across page alignment */
html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
  grid-template-columns: minmax(0, 1fr) minmax(430px, 0.82fr) !important;
  gap: clamp(34px, 4vw, 58px) !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-image-panel,
html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-image-panel img {
  min-height: 540px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 34px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  height: auto !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-title {
  max-width: 500px !important;
  margin: 0 !important;
  font-size: clamp(38px, 3.8vw, 60px) !important;
  line-height: 1.08 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
  width: 100% !important;
  max-width: 560px !important;
  margin-top: 28px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
  min-height: 82px !important;
  padding: 18px 24px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-cta {
  width: 100% !important;
  max-width: 560px !important;
  margin-top: 24px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(210px, 1fr)) !important;
  justify-content: center !important;
  align-items: center !important;
  width: min(100%, 560px) !important;
  margin: 0 auto !important;
  gap: 14px !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns .btn {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(210px, 1fr)) !important;
  width: min(100%, 560px) !important;
  margin: 0 auto !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons .btn {
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header {
    padding-left: 0 !important;
  }
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header::before {
    display: none !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-image-panel,
  html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-image-panel img {
    min-height: 260px !important;
  }
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-title {
    font-size: 34px !important;
  }
  html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns .btn {
    min-width: 0 !important;
  }
  html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons {
    grid-template-columns: 1fr !important;
    width: min(100%, 360px) !important;
  }
}

/* Final dealer & business page polish */
html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip {
  padding: 8px 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip .marquee-wrapper {
  padding: 5px 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
  gap: 18px !important;
  padding-right: 18px !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill {
  min-width: 190px !important;
  min-height: 78px !important;
  padding: 13px 28px !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-val {
  font-size: 22px !important;
  margin-top: 6px !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-lbl {
  font-size: 9.5px !important;
  letter-spacing: 1.4px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-media-band {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  background: #10233c !important;
  box-shadow: 0 24px 64px rgba(23,49,84,0.13) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-media-band::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(8,22,40,0.02), rgba(8,22,40,0.24)) !important;
  pointer-events: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-media-band img {
  display: block !important;
  width: 100% !important;
  height: clamp(300px, 38vw, 460px) !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-primary-media img {
  height: clamp(320px, 40vw, 500px) !important;
  object-position: center 58% !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-secondary-media img {
  height: clamp(320px, 40vw, 500px) !important;
  object-position: center 52% !important;
}

html body.home-page main.service-copy-page.dealer-page .business-mini-section .business-media {
  position: relative !important;
  overflow: hidden !important;
  min-height: 360px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  background: #10233c !important;
  box-shadow: 0 22px 58px rgba(23,49,84,0.12) !important;
}

html body.home-page main.service-copy-page.dealer-page .business-mini-section .business-media::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(135deg, rgba(47,155,210,0.18), rgba(8,22,40,0.18)) !important;
  pointer-events: none !important;
}

html body.home-page main.service-copy-page.dealer-page .business-mini-section .business-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.9fr) !important;
  gap: clamp(34px, 4vw, 56px) !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel {
  position: relative !important;
  overflow: hidden !important;
  min-height: 500px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  background: #10233c !important;
  box-shadow: 0 24px 64px rgba(23,49,84,0.13) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(8,22,40,0.02), rgba(8,22,40,0.28)) !important;
  pointer-events: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 500px !important;
  object-fit: cover !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 34px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  height: auto !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-title {
  max-width: 520px !important;
  margin: 0 !important;
  font-size: clamp(38px, 3.5vw, 58px) !important;
  line-height: 1.08 !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list {
  display: grid !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 560px !important;
  margin-top: 28px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.07) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item {
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item + .faq-item {
  border-top: 1px solid rgba(47,155,210,0.14) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item:hover,
html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item.open {
  box-shadow: inset 4px 0 0 var(--blue) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-question {
  width: 100% !important;
  min-height: 84px !important;
  padding: 18px 24px !important;
  gap: 18px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  text-align: left !important;
  outline: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-question:focus-visible {
  box-shadow: inset 0 0 0 2px var(--blue) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-icon {
  flex: 0 0 auto !important;
  width: 42px !important;
  height: 42px !important;
  margin-left: auto !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-answer-inner {
  padding: 0 24px 20px !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-cta {
  width: 100% !important;
  max-width: 560px !important;
  margin-top: 24px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  width: auto !important;
  max-width: min(100%, 820px) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  gap: 12px !important;
  justify-content: center !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 14px 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn-primary {
  min-width: 245px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn-outline {
  min-width: 190px !important;
  border-color: rgba(47,155,210,0.24) !important;
  background: rgba(255,255,255,0.62) !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header {
    padding-left: 0 !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header::before {
    display: none !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    width: min(100%, 520px) !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn:first-child {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    justify-self: center !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn {
    width: 100% !important;
    white-space: normal !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.dealer-page .stat-pill {
    min-width: 165px !important;
    min-height: 70px !important;
    padding: 12px 22px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-val {
    font-size: 19px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-lbl {
    font-size: 8.5px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .dealer-media-band img,
  html body.home-page main.service-copy-page.dealer-page .business-mini-section .business-media,
  html body.home-page main.service-copy-page.dealer-page .business-mini-section .business-media img,
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel,
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel img {
    min-height: 260px !important;
    height: 260px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-title {
    font-size: 34px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-question {
    min-height: 78px !important;
    padding: 16px 18px !important;
    font-size: 15px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-icon {
    width: 38px !important;
    height: 38px !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
    grid-template-columns: 1fr !important;
    width: min(100%, 330px) !important;
    padding: 0 !important;
  }
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn:first-child {
    width: 100% !important;
  }
}

/* Final shared spacing audit for service/dealer/shipping pages */
html body.home-page main.service-copy-page.services-page {
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.services-page .services-home-hero {
  margin-bottom: 0 !important;
}

html body.home-page main.service-copy-page.services-page .stats-marquee-strip {
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page > .section,
html body.home-page main.service-copy-page.services-page > .service-method-section,
html body.home-page main.service-copy-page.services-page > .coverage-summary-section,
html body.home-page main.service-copy-page.services-page > .business-mini-section,
html body.home-page main.service-copy-page.services-page > .pricing-section,
html body.home-page main.service-copy-page.services-page > .testimonial-section,
html body.home-page main.service-copy-page.services-page > .services-faq-section {
  margin: 0 !important;
  padding-top: clamp(44px, 5vw, 72px) !important;
  padding-bottom: clamp(44px, 5vw, 72px) !important;
}

html body.home-page main.service-copy-page.services-page > .section + .section,
html body.home-page main.service-copy-page.services-page > .section + .service-method-section,
html body.home-page main.service-copy-page.services-page > .service-method-section + .section,
html body.home-page main.service-copy-page.services-page > .service-method-section + .service-method-section {
  padding-top: clamp(34px, 4vw, 58px) !important;
}

html body.home-page main.service-copy-page.services-page .section-header {
  margin-bottom: clamp(22px, 3vw, 34px) !important;
}

html body.home-page main.service-copy-page.services-page .section-note {
  margin-top: clamp(18px, 2.4vw, 28px) !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta {
  margin: 0 !important;
  padding: 0 !important;
}

html body.home-page main.service-copy-page.services-page + footer {
  margin-top: 0 !important;
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page.services-page > .section,
  html body.home-page main.service-copy-page.services-page > .service-method-section,
  html body.home-page main.service-copy-page.services-page > .coverage-summary-section,
  html body.home-page main.service-copy-page.services-page > .business-mini-section,
  html body.home-page main.service-copy-page.services-page > .pricing-section,
  html body.home-page main.service-copy-page.services-page > .testimonial-section,
  html body.home-page main.service-copy-page.services-page > .services-faq-section {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }
}

/* Restore base services.html FAQ and CTA after shared spacing pass */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.92fr) minmax(280px, 0.78fr) !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  gap: clamp(28px, 4vw, 44px) !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-shell {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  height: auto !important;
  max-height: none !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 18px !important;
  background: #10233c !important;
  box-shadow: 0 24px 64px rgba(23,49,84,0.13) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel img {
  height: clamp(360px, 38vw, 500px) !important;
  min-height: 0 !important;
  max-height: 500px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(8,22,40,0.02), rgba(8,22,40,0.24)) !important;
  pointer-events: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list {
  display: grid !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 540px !important;
  margin-top: 24px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.07) !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item {
  display: block !important;
  min-height: 88px !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item + .faq-item {
  border-top: 1px solid rgba(47,155,210,0.14) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item:hover,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open {
  box-shadow: inset 4px 0 0 var(--blue) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-question {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 88px !important;
  height: auto !important;
  padding: 18px 24px !important;
  gap: 18px !important;
  color: var(--navy) !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  text-align: left !important;
  white-space: normal !important;
  outline: 0 !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-question > span:first-child,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-question {
  text-overflow: clip !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-question:focus-visible {
  box-shadow: inset 0 0 0 2px var(--blue) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-icon {
  flex: 0 0 auto !important;
  width: 42px !important;
  height: 42px !important;
  margin-left: auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-answer-inner {
  padding: 0 24px 20px !important;
  color: #526b82 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-header {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 24px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-header::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  height: auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-title {
  max-width: 420px !important;
  margin: 0 !important;
  font-size: clamp(30px, 3vw, 44px) !important;
  line-height: 1.05 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-cta {
  margin-top: 16px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  width: min(100%, 560px) !important;
  margin: 0 auto !important;
  gap: 14px !important;
  align-items: center !important;
  justify-content: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns .btn {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    max-width: 560px !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-header {
    padding-left: 0 !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-header::before {
    display: none !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list {
    max-width: none !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-image-panel img {
    min-height: 260px !important;
    height: 260px !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-title {
    font-size: 30px !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-question {
    min-height: 84px !important;
    padding: 16px 18px !important;
    font-size: 15px !important;
  }
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns {
    grid-template-columns: 1fr !important;
    width: min(100%, 340px) !important;
  }
}

/* Hard reset for services.html FAQ ordering */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .section-header {
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-height: 88px !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-question {
  position: relative !important;
  z-index: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-cta {
  position: static !important;
  z-index: 2 !important;
  display: block !important;
  order: 5 !important;
  margin-top: 24px !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-answer {
  display: block !important;
  height: auto !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transition: max-height 0.32s ease, opacity 0.24s ease !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open {
  height: auto !important;
  min-height: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open .faq-answer {
  max-height: 260px !important;
  opacity: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open .faq-answer-inner {
  display: block !important;
  padding: 0 24px 22px !important;
}

/* Final FAQ alignment and open-answer reliability */
html body.home-page main.service-copy-page .services-faq-section .faq-premium-layout {
  align-items: center !important;
}

html body.home-page main.service-copy-page .services-faq-section .section-header {
  min-width: 0 !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-item {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  transform: none !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-question {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 86px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 18px 24px !important;
  gap: 18px !important;
  white-space: normal !important;
  text-align: left !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-icon {
  flex: 0 0 auto !important;
  margin-left: auto !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-answer {
  display: block !important;
  height: auto !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transition: max-height 0.32s ease, opacity 0.24s ease !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-item.open .faq-answer {
  max-height: 360px !important;
  opacity: 1 !important;
}

html body.home-page main.service-copy-page .services-faq-section :is(.services-faq-side-list, .dealer-faq-side-list, .route-faq-side-list) .faq-answer-inner {
  display: block !important;
  padding: 0 24px 22px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page .services-faq-section .faq-premium-cta {
  position: static !important;
  display: block !important;
  width: 100% !important;
  margin-top: 24px !important;
  transform: none !important;
}

/* Shipping across Canada FAQ: keep it simple, no media panel */
html body.home-page main.service-copy-page.routes-page .services-faq-section {
  padding: 58px 0 !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .container {
  max-width: 1020px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
  display: block !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-image-panel {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header {
  display: block !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header::before {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-title {
  max-width: none !important;
  margin: 0 auto 26px !important;
  font-size: clamp(30px, 3.4vw, 42px) !important;
  line-height: 1.12 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
  display: grid !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item {
  overflow: hidden !important;
  border: 1px solid rgba(160, 207, 242, 0.7) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.86) !important;
  box-shadow: 0 12px 28px rgba(10,45,81,0.05) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item + .faq-item {
  margin-top: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
  min-height: 68px !important;
  padding: 18px 22px !important;
  color: var(--navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-answer-inner {
  padding: 0 22px 20px !important;
  color: #526b82 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-cta {
  max-width: 900px !important;
  margin: 16px auto 0 !important;
  text-align: center !important;
}

/* Polished route FAQ cards */
html body.home-page main.service-copy-page.routes-page .services-faq-section {
  background:
    radial-gradient(circle at 50% 0%, rgba(47,155,210,0.09), transparent 34%),
    linear-gradient(180deg, #f5fbff 0%, #eef8fd 100%) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
  position: relative !important;
  padding: 42px !important;
  border: 1px solid rgba(160,207,242,0.52) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92), rgba(247,252,255,0.86)) !important;
  box-shadow: 0 22px 58px rgba(23,49,84,0.08) !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto !important;
  height: 4px !important;
  background: linear-gradient(90deg, transparent, #2f9bd2, transparent) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .eyebrow {
  margin-bottom: 12px !important;
  color: #1f75d6 !important;
  letter-spacing: 4px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-title {
  margin-bottom: 28px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  max-width: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item {
  border-color: rgba(47,155,210,0.22) !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.06) !important;
  transition: transform 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item:hover,
html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item.open {
  transform: translateY(-2px) !important;
  border-color: rgba(47,155,210,0.42) !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.1) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
  align-items: flex-start !important;
  min-height: 86px !important;
  padding: 22px 22px 18px 72px !important;
  line-height: 1.35 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question::before {
  content: "Q" !important;
  position: absolute !important;
  left: 22px !important;
  top: 18px !important;
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(47,155,210,0.35) !important;
  border-radius: 50% !important;
  background: #edf8ff !important;
  color: #197fb4 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-icon {
  margin-top: -2px !important;
  background: #f2f9ff !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-answer-inner {
  padding: 0 22px 22px 72px !important;
  border-top: 1px solid rgba(47,155,210,0.12) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-cta .btn {
  border-radius: 6px !important;
  background: var(--blue-dark) !important;
}

@media (max-width: 820px) {
  html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
    padding: 30px 18px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
    min-height: 76px !important;
    padding: 18px 18px 16px 64px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question::before {
    left: 18px !important;
    top: 17px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-answer-inner {
    padding: 0 18px 20px 64px !important;
  }
}

/* Services FAQ: force opened answers to render at natural height */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item {
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-answer {
  display: none !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
  transition: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open .faq-answer {
  display: block !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-side-list .faq-item.open {
  padding-bottom: 0 !important;
}

/* Clean native FAQ for services.html */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-cards {
  width: 100% !important;
  max-width: 410px !important;
  margin-top: 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.07) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card {
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card + .services-faq-card {
  border-top: 1px solid rgba(47,155,210,0.14) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card[open] {
  box-shadow: inset 4px 0 0 var(--blue) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 62px !important;
  padding: 13px 16px !important;
  color: var(--navy) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  list-style: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card summary::-webkit-details-marker {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card summary span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 30px !important;
  width: 30px !important;
  height: 30px !important;
  border: 1px solid rgba(47,155,210,0.45) !important;
  border-radius: 50% !important;
  color: var(--blue-dark) !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card[open] summary span {
  background: #eaf8ff !important;
  transform: rotate(45deg) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .services-faq-card p {
  margin: 0 !important;
  padding: 0 16px 16px !important;
  color: #526b82 !important;
  font-size: 12.5px !important;
  font-weight: 650 !important;
  line-height: 1.7 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-faq-section .faq-premium-cta .btn {
  min-height: 42px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
}

/* Incline Photos assets for service and dealer pages */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-bg {
  background-image: url("../images/what we offer -open carrier image .png") !important;
}

html body.home-page main.service-copy-page.dealer-page .services-home-hero .home-hero-bg {
  background-image: url("../images/DEALERSHIP AND BUSINESSES .png") !important;
}

html body.home-page main.service-copy-page.dealer-page .services-home-hero .home-hero-wash {
  background:
    linear-gradient(90deg, var(--home-bg) 0%, rgba(245,251,255,0.99) 43%, rgba(245,251,255,0.6) 55%, rgba(245,251,255,0) 75%),
    radial-gradient(circle at 14% 18%, rgba(79,195,247,0.14), transparent 30%) !important;
}

/* Lift Shipping Across Canada hero copy slightly */
html body.home-page main.service-copy-page.routes-page .services-home-hero {
  min-height: 500px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-bg {
  top: 38px !important;
  bottom: 38px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-content-wrapper {
  transform: translateY(-34px) !important;
}

@media (max-width: 768px) {
  html body.home-page main.service-copy-page.routes-page .services-home-hero {
    min-height: 520px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-bg {
    top: 28px !important;
    bottom: 28px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-content-wrapper {
    transform: translateY(-18px) !important;
  }
}

/* Match services.html marquee sizing with other service pages */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip {
  padding: 8px 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip .marquee-wrapper {
  padding: 5px 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-content {
  gap: 18px !important;
  padding-right: 18px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill {
  min-width: 190px !important;
  min-height: 78px !important;
  padding: 13px 28px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-val {
  font-size: 22px !important;
  margin-top: 6px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-lbl {
  font-size: 9.5px !important;
  letter-spacing: 1.4px !important;
}

@media (max-width: 768px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill {
    min-width: 165px !important;
    min-height: 70px !important;
    padding: 12px 22px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-val {
    font-size: 19px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-lbl {
    font-size: 8.5px !important;
  }
}

/* Unified hero and marquee sizing across pages */
:root {
  --site-hero-height: 540px;
  --site-hero-image-inset: 42px;
  --site-marquee-pad: 8px;
  --site-marquee-inner-pad: 5px;
  --site-pill-width: 190px;
  --site-pill-height: 78px;
}

body.home-page .home-hero,
body.about-page .home-hero,
body.home-page main.service-copy-page .services-home-hero,
body.home-page main.help-centre-page .help-home-hero,
body.home-page main.quote-page .quote-hero-redesign {
  min-height: var(--site-hero-height) !important;
  margin-bottom: 0 !important;
}

body.home-page .home-hero .home-hero-bg,
body.about-page .home-hero .home-hero-bg,
body.home-page main.service-copy-page .services-home-hero .home-hero-bg,
body.home-page main.help-centre-page .help-home-hero .home-hero-bg {
  top: var(--site-hero-image-inset) !important;
  bottom: var(--site-hero-image-inset) !important;
}

html body .trust-strip.stats-marquee-strip {
  margin: 0 !important;
  padding: var(--site-marquee-pad) 0 !important;
}

html body .stats-marquee-strip .marquee-wrapper {
  padding: var(--site-marquee-inner-pad) 0 !important;
}

html body .stats-marquee-content {
  gap: 18px !important;
  padding-right: 18px !important;
}

html body .stat-pill {
  min-width: var(--site-pill-width) !important;
  min-height: var(--site-pill-height) !important;
  padding: 13px 28px !important;
}

html body .stat-pill .pill-val {
  font-size: 22px !important;
  margin-top: 6px !important;
}

html body .stat-pill .pill-lbl {
  font-size: 9.5px !important;
  letter-spacing: 1.4px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-content-wrapper {
  transform: none !important;
}

@media (max-width: 768px) {
  :root {
    --site-hero-height: 500px;
    --site-hero-image-inset: 28px;
    --site-pill-width: 165px;
    --site-pill-height: 70px;
  }

  html body .stat-pill {
    padding: 12px 22px !important;
  }

  html body .stat-pill .pill-val {
    font-size: 19px !important;
  }

  html body .stat-pill .pill-lbl {
    font-size: 8.5px !important;
  }
}

/* Prevent about hero title from clipping tall letters */
body.about-page .home-hero {
  overflow: visible !important;
}

body.about-page .home-hero .hero-title {
  line-height: 1.14 !important;
  padding-top: 0.08em !important;
  overflow: visible !important;
}

body.about-page .home-hero .hero-title span {
  padding-top: 0.06em !important;
  padding-bottom: 0.04em !important;
}

/* Final site-wide consistency pass */
:root {
  --section-pad: 64px;
  --header-gap: 36px;
}

body,
body.home-page,
body.about-page,
main.quote-page,
main.help-centre-page,
main.service-copy-page {
  background: var(--home-bg, #f5fbff) !important;
  font-family: var(--font-body) !important;
}

body.about-page {
  --section-pad: 64px !important;
  --header-gap: 36px !important;
}

body.home-page .home-hero,
body.about-page .home-hero,
body.home-page main.service-copy-page .services-home-hero,
body.home-page main.help-centre-page .help-home-hero,
body main.quote-page .quote-hero-redesign {
  min-height: var(--site-hero-height) !important;
  background: var(--home-bg, #f5fbff) !important;
}

body.home-page .home-hero .hero-title,
body.about-page .home-hero .hero-title,
body.home-page main.service-copy-page .services-home-hero .hero-title,
body.home-page main.service-copy-page .services-home-hero .services-hero-title,
body.home-page main.help-centre-page .help-home-hero .hero-title,
body main.quote-page .quote-redesign-main h1,
body main.quote-page .quote-hero-title {
  font-family: var(--font-heading) !important;
  font-size: clamp(46px, 5.1vw, 68px) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  margin-bottom: 16px !important;
}

body.home-page .home-hero .hero-subtitle,
body.about-page .home-hero .hero-subtitle,
body.home-page main.service-copy-page .services-home-hero .hero-subtitle,
body.home-page main.help-centre-page .help-home-hero .hero-subtitle,
body.home-page main.help-centre-page .help-home-hero .help-hero-copy p,
body main.quote-page .quote-redesign-main p {
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: #415970 !important;
}

body.home-page .section,
body.home-page .section-gray,
body.home-page .section-dark,
body.home-page .why-premium-section,
body.home-page .offer-premium-section,
body.home-page .process-premium-section,
body.home-page .routes-premium-section,
body.home-page .home-faq-premium,
body.about-page .section,
body.about-page section:not(.hero-split),
body.home-page main.service-copy-page > .section,
body.home-page main.service-copy-page > .service-method-section,
body.home-page main.service-copy-page > .coverage-summary-section,
body.home-page main.service-copy-page > .business-mini-section,
body.home-page main.service-copy-page > .pricing-section,
body.home-page main.service-copy-page > .testimonial-section,
body.home-page main.service-copy-page > .services-faq-section,
body.home-page main.help-centre-page > section,
body main.quote-page > section {
  padding-top: var(--section-pad) !important;
  padding-bottom: var(--section-pad) !important;
  background: var(--home-bg, #f5fbff) !important;
}

.section-header,
body.about-page .section-header,
body.home-page main.service-copy-page .section-header,
body.home-page main.help-centre-page .section-header,
body main.quote-page .section-header {
  max-width: 680px !important;
  margin: 0 auto var(--header-gap) !important;
  text-align: center !important;
}

.section-title,
body.about-page .section-title,
body.home-page main.service-copy-page .section-title,
body.home-page main.service-copy-page .section-header .section-title,
body.home-page main.help-centre-page .section-title,
body main.quote-page .section-title {
  font-family: var(--font-heading) !important;
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  color: var(--text-dark) !important;
}

.section-sub,
body.about-page .section-sub,
body.home-page main.service-copy-page .section-sub,
body.home-page main.help-centre-page .section-sub,
body main.quote-page .section-sub {
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: var(--text-mid) !important;
}

.eyebrow,
body.about-page .eyebrow,
body.home-page main.service-copy-page .eyebrow,
body.home-page main.help-centre-page .eyebrow,
body main.quote-page .eyebrow {
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: 2px !important;
  color: var(--blue-dark) !important;
}

.btn,
.btn-lg,
.nav-cta {
  min-height: 46px !important;
  padding: 13px 24px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.btn-lg {
  min-height: 52px !important;
  padding: 15px 34px !important;
  font-size: 15px !important;
}

@media (max-width: 768px) {
  :root {
    --section-pad: 46px;
    --header-gap: 26px;
  }

  body.home-page .home-hero .hero-title,
  body.about-page .home-hero .hero-title,
  body.home-page main.service-copy-page .services-home-hero .hero-title,
  body.home-page main.service-copy-page .services-home-hero .services-hero-title,
  body.home-page main.help-centre-page .help-home-hero .hero-title,
  body main.quote-page .quote-redesign-main h1,
  body main.quote-page .quote-hero-title {
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.12 !important;
  }

  body.home-page .home-hero .hero-subtitle,
  body.about-page .home-hero .hero-subtitle,
  body.home-page main.service-copy-page .services-home-hero .hero-subtitle,
  body.home-page main.help-centre-page .help-home-hero .hero-subtitle,
  body.home-page main.help-centre-page .help-home-hero .help-hero-copy p,
  body main.quote-page .quote-redesign-main p {
    font-size: 16px !important;
  }
}

/* Services page hero and stats redesign */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero {
  min-height: 500px !important;
  background: #f5fbff !important;
  border-bottom: 1px solid rgba(23,49,84,0.08) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero::before {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-bg {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-image: url("../images/what we offer -open carrier image .jpg") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: none !important;
  filter: saturate(1.12) contrast(1.07) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-bg::after {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-wash {
  inset: 0 !important;
  background:
    linear-gradient(90deg, #f5fbff 0%, rgba(245,251,255,0.97) 29%, rgba(245,251,255,0.62) 45%, rgba(245,251,255,0.08) 66%, rgba(245,251,255,0) 100%),
    linear-gradient(180deg, rgba(245,251,255,0) 0%, rgba(245,251,255,0.14) 84%, rgba(245,251,255,0.55) 100%) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .container {
  max-width: 1320px !important;
  min-height: inherit !important;
  display: flex !important;
  align-items: center !important;
  padding-top: 118px !important;
  padding-bottom: 36px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-content-wrapper {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  display: block !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-copy {
  width: 100% !important;
  max-width: 620px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-eyebrow {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--blue-dark) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 2.4px !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.72) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-title {
  max-width: 600px !important;
  margin-bottom: 14px !important;
  font-size: clamp(38px, 4.35vw, 56px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  color: var(--navy) !important;
  text-shadow: 0 4px 22px rgba(255,255,255,0.46) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-title span {
  display: block !important;
  max-width: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-subtitle {
  max-width: 540px !important;
  margin: 0 0 18px !important;
  color: #29435d !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-btns .btn {
  width: auto !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 13px 22px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .btn-primary {
  background: linear-gradient(135deg, var(--navy), var(--navy-mid)) !important;
  box-shadow: 0 18px 38px rgba(23,49,84,0.22) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .btn-outline {
  background: rgba(255,255,255,0.88) !important;
  border-color: rgba(23,49,84,0.12) !important;
  box-shadow: 0 14px 30px rgba(23,49,84,0.08) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip {
  padding: 0 !important;
  background: #ffffff !important;
  border-top: 1px solid rgba(23,49,84,0.08) !important;
  border-bottom: 1px solid rgba(23,49,84,0.08) !important;
  box-shadow: 0 -18px 42px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip::before,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip::after {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip .marquee-wrapper {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 0 var(--container-pad) !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-content {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 0 !important;
  animation: none !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-content .stat-pill:nth-child(n+5) {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill {
  min-width: 0 !important;
  min-height: 76px !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 14px !important;
  align-items: center !important;
  justify-content: start !important;
  padding: 14px 24px !important;
  border: 0 !important;
  border-right: 1px solid rgba(23,49,84,0.08) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill:last-child {
  border-right: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill::before,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill::after {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon {
  grid-row: 1 / span 2 !important;
  width: 48px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  border: 1px solid rgba(47,155,210,0.20) !important;
  background-color: #f1faff !important;
  box-shadow: inset 0 0 0 5px rgba(47,155,210,0.05), 0 8px 18px rgba(23,49,84,0.06) !important;
  color: var(--blue-dark) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 25px 25px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon::before {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon-shield {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3L19 6V11C19 15.6 16.1 19.3 12 21C7.9 19.3 5 15.6 5 11V6L12 3Z' stroke='%23197fb4' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M9 12L11.1 14.1L15.4 9.8' stroke='%23197fb4' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon-globe {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='8.5' stroke='%23197fb4' stroke-width='1.8'/%3E%3Cpath d='M3.8 12H20.2M12 3.5C14.1 5.7 15.1 8.5 15.1 12C15.1 15.5 14.1 18.3 12 20.5C9.9 18.3 8.9 15.5 8.9 12C8.9 8.5 9.9 5.7 12 3.5Z' stroke='%23197fb4' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon-check {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3.5L18 6V11.2C18 15 15.6 18.2 12 19.8C8.4 18.2 6 15 6 11.2V6L12 3.5Z' stroke='%23197fb4' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M8.9 12.2L11 14.3L15.4 9.8' stroke='%23197fb4' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon-star {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 4.2L14.3 9L19.6 9.8L15.8 13.5L16.7 18.8L12 16.3L7.3 18.8L8.2 13.5L4.4 9.8L9.7 9L12 4.2Z' fill='%23197fb4'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-val {
  grid-column: 2 !important;
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill .pill-lbl {
  grid-column: 2 !important;
  margin: 2px 0 0 !important;
  color: #55708a !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  text-transform: none !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill:nth-child(2n) {
    border-right: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill:nth-child(-n+2) {
    border-bottom: 1px solid rgba(23,49,84,0.08) !important;
  }
}

@media (max-width: 768px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero {
    min-height: 500px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-bg {
    background-position: 63% center !important;
    opacity: 0.58 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .home-hero-wash {
    background: linear-gradient(90deg, rgba(245,251,255,0.92), rgba(245,251,255,0.68)), linear-gradient(180deg, rgba(245,251,255,0.02), rgba(245,251,255,0.62)) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .container {
    padding-top: 112px !important;
    padding-bottom: 32px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .services-hero-title,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-title {
    font-size: clamp(32px, 9.5vw, 42px) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-subtitle {
    font-size: 16px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-btns {
    flex-wrap: nowrap !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-home-hero .hero-btns .btn {
    width: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    font-size: 12px !important;
    justify-content: center !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-strip .marquee-wrapper {
    padding: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stats-marquee-content {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill {
    min-height: 72px !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    padding: 12px 20px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(23,49,84,0.08) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-pill:nth-child(4) {
    border-bottom: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon {
    width: 44px !important;
    height: 44px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .stat-icon::before {
    font-size: 22px !important;
  }
}

/* Services page: compact visual treatment for How We Ship */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship {
  padding-top: 50px !important;
  padding-bottom: 18px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(47,155,210,0.10), transparent 36%),
    var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship > .container {
  max-width: 1360px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-header {
  max-width: 820px !important;
  margin-bottom: 28px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .eyebrow {
  margin-bottom: 10px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2.5px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-title {
  margin-bottom: 8px !important;
  color: var(--navy-deep) !important;
  font-size: clamp(34px, 3.7vw, 44px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-sub {
  max-width: 740px !important;
  color: #415970 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-split-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 9px !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: 0 14px 32px rgba(23,49,84,0.08) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 202px !important;
  z-index: 3 !important;
  width: 60px !important;
  height: 60px !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
  border: 4px solid rgba(255,255,255,0.94) !important;
  background-color: var(--blue) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 28px 28px !important;
  box-shadow: 0 12px 26px rgba(47,155,210,0.26) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #terminal-shipping::before {
  background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.5 14.5H3V10L5.2 6.5H15.5L19 10V14.5H17.4M7 14.5H14.5M7.1 16.3A1.8 1.8 0 1 1 3.5 16.3A1.8 1.8 0 0 1 7.1 16.3ZM20.5 16.3A1.8 1.8 0 1 1 16.9 16.3A1.8 1.8 0 0 1 20.5 16.3Z' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M6.3 10H17.5' stroke='white' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #open-carrier::before {
  background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 15H15V8H18.5L21 11.3V15H19.2M6.8 15H16.2M8.4 17.1A2.1 2.1 0 1 1 4.2 17.1A2.1 2.1 0 0 1 8.4 17.1ZM20.2 17.1A2.1 2.1 0 1 1 16 17.1A2.1 2.1 0 0 1 20.2 17.1Z' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5 8H12.5M5 11.5H12.5' stroke='white' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card img {
  width: 100% !important;
  height: 232px !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card > div {
  position: relative !important;
  display: block !important;
  min-height: 136px !important;
  padding: 42px 38px 24px !important;
  background: #ffffff !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card h3 {
  margin: 0 0 8px !important;
  color: var(--navy) !important;
  font-size: 19px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card p {
  max-width: 360px !important;
  margin: 0 auto !important;
  color: #415970 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works {
  padding-top: 0 !important;
  padding-bottom: 26px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works > .container {
  max-width: 1360px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .section-header {
  height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 auto !important;
  padding: 22px 0 64px !important;
  border-top: 1px solid rgba(47,155,210,0.18) !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact::after {
  content: "You work with a real transport team that remains accountable from quote to delivery." !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 22px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.58) !important;
  color: var(--navy) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.04) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: 14px !important;
  min-height: 78px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article + article {
  border-left: 1px solid rgba(47,155,210,0.18) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-icon {
  grid-row: 1 / span 2 !important;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  color: var(--blue-dark) !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact h3 {
  margin: 0 0 4px !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact p {
  margin: 0 !important;
  color: #415970 !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #ideal-for .method-note {
  display: none !important;
}

@media (max-width: 820px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship {
    padding-top: 44px !important;
    padding-bottom: 40px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-split-grid {
    grid-template-columns: 1fr !important;
    max-width: 520px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card::before {
    top: 194px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card img {
    height: 220px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card > div {
    padding: 42px 24px 24px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works {
    padding-bottom: 24px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 18px !important;
    padding: 20px 0 66px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article {
    min-height: 70px !important;
    padding: 0 16px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article + article {
    border-left: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article:nth-child(2n) {
    border-left: 1px solid rgba(47,155,210,0.18) !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
    grid-template-columns: 1fr !important;
    padding-bottom: 86px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article:nth-child(2n) {
    border-left: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact::after {
    font-size: 14px !important;
  }
}

/* Final alignment pass for services How We Ship block */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship {
  padding-top: 54px !important;
  padding-bottom: 16px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-header {
  display: block !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-header .eyebrow,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-header .section-title,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .section-header .section-sub {
  display: block !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-split-grid {
  align-items: stretch !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card {
  display: grid !important;
  grid-template-rows: 230px minmax(158px, auto) !important;
  height: 100% !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card::before {
  top: 230px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card img {
  height: 230px !important;
  grid-row: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card > div {
  grid-row: 2 !important;
  min-height: 158px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 44px 34px 26px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card h3 {
  width: 100% !important;
  margin: 0 0 9px !important;
  text-align: center !important;
  white-space: normal !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card p {
  width: 100% !important;
  max-width: 370px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works {
  padding-top: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
  width: 100% !important;
  max-width: 1180px !important;
  align-items: stretch !important;
  padding-bottom: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(47,155,210,0.16) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact::after {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article {
  display: grid !important;
  grid-template-columns: 58px minmax(170px, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  align-content: center !important;
  column-gap: 16px !important;
  min-height: 92px !important;
  padding: 0 24px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact .service-icon {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  align-self: center !important;
  justify-self: center !important;
  width: 56px !important;
  height: 56px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact .service-icon::before {
  width: 34px !important;
  height: 34px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing {
  padding-top: 38px !important;
  padding-bottom: 28px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .section-header {
  margin-bottom: 26px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-grid .price-real-icon {
  width: 104px !important;
  height: 104px !important;
  margin: 0 auto 16px !important;
  object-fit: contain !important;
}

@media (max-width: 768px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-grid .price-real-icon {
    width: 86px !important;
    height: 86px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section {
  padding: 22px 0 34px !important;
  background:
    linear-gradient(90deg, rgba(237,248,253,0.88), rgba(245,251,255,0.98), rgba(237,248,253,0.88)) !important;
  border-top: 1px solid rgba(47,155,210,0.10) !important;
  border-bottom: 1px solid rgba(47,155,210,0.10) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section > .container {
  max-width: 1240px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .section-header {
  max-width: 680px !important;
  margin: 0 auto 22px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .section-title {
  margin-bottom: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: end !important;
  gap: clamp(28px, 5vw, 74px) !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  min-width: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid img {
  width: 100% !important;
  max-width: 150px !important;
  height: 78px !important;
  object-fit: contain !important;
  margin: 0 auto 8px !important;
  filter: drop-shadow(0 10px 14px rgba(23,49,84,0.12)) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid h3 {
  margin: 0 !important;
  color: var(--navy-deep) !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

@media (max-width: 820px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px 34px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-cards-section {
  padding-top: 18px !important;
  padding-bottom: 54px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-cards-section > .container {
  max-width: 1320px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-cards-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card {
  position: relative !important;
  min-height: 360px !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 9px !important;
  background: var(--navy) !important;
  box-shadow: 0 18px 40px rgba(23,49,84,0.12) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: saturate(1.08) contrast(1.04) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(10,22,40,0.86) 0%, rgba(16,35,60,0.74) 38%, rgba(16,35,60,0.34) 68%, rgba(16,35,60,0.14) 100%),
    linear-gradient(180deg, rgba(10,22,40,0.16), rgba(10,22,40,0.28)) !important;
  z-index: 1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card-content {
  position: relative !important;
  z-index: 2 !important;
  width: min(100%, 520px) !important;
  min-height: 360px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 42px 44px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card .eyebrow {
  margin-bottom: 14px !important;
  color: rgba(255,255,255,0.82) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 2.8px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.26) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card h2 {
  max-width: 500px !important;
  margin: 0 0 18px !important;
  color: #ffffff !important;
  font-size: clamp(30px, 2.8vw, 40px) !important;
  line-height: 1.14 !important;
  font-weight: 900 !important;
  text-shadow: 0 4px 18px rgba(0,0,0,0.35) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card p {
  max-width: 500px !important;
  min-height: 74px !important;
  margin: 0 0 24px !important;
  color: rgba(255,255,255,0.92) !important;
  font-size: 15.5px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  text-shadow: 0 3px 14px rgba(0,0,0,0.28) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card .btn {
  margin-top: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  justify-content: center !important;
  padding-left: 34px !important;
  padding-right: 34px !important;
  background: rgba(255,255,255,0.94) !important;
  border-color: rgba(255,255,255,0.72) !important;
  color: var(--navy) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,0.18) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card:nth-child(2) .btn {
  transform: translateY(-10px) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card:first-child h2 {
  max-width: 560px !important;
  font-size: clamp(29px, 2.65vw, 38px) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card:first-child img {
  object-position: center right !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card:nth-child(2) img {
  object-position: center right !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card .btn:hover {
  background: #ffffff !important;
  color: var(--blue-dark) !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-cards-grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card-content {
    min-height: 330px !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card-content {
    padding: 28px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card h2 {
    font-size: 28px !important;
  }

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-business-card p {
  font-size: 14.5px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section {
  padding-top: 22px !important;
  padding-bottom: 48px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section > .container {
  max-width: 1320px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-faq-card {
  min-height: 360px !important;
  padding: 24px 34px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 9px !important;
  background: rgba(255,255,255,0.70) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .eyebrow {
  margin-bottom: 18px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: 2.5px !important;
  font-weight: 900 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-stars {
  margin: 0 0 14px !important;
  color: #f7b500 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  letter-spacing: 4px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card p {
  max-width: 540px !important;
  margin: 0 0 16px !important;
  color: var(--navy) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card strong {
  display: block !important;
  margin-bottom: 10px !important;
  color: var(--navy) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .google-review-line {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
  color: #415970 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .google-review-line span {
  color: #4285f4 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card .btn {
  min-width: 280px !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.78) !important;
  color: var(--navy) !important;
  border-color: rgba(23,49,84,0.12) !important;
  box-shadow: 0 8px 20px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-summary-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-cards {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-card {
  margin: 0 0 8px !important;
  overflow: hidden !important;
  border: 1px solid rgba(23,49,84,0.10) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.72) !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.035) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-card + .services-faq-card {
  border-top: 1px solid rgba(23,49,84,0.10) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-card summary {
  min-height: 45px !important;
  padding: 10px 16px !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-card summary span {
  width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  font-size: 18px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .services-faq-card p {
  padding: 0 16px 14px !important;
  color: #526b82 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-cta {
  margin-top: 16px !important;
  width: auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-cta .btn {
  min-width: 188px !important;
  justify-content: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-strip {
  display: grid !important;
  grid-template-columns: 74px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 22px !important;
  margin-top: 18px !important;
  padding: 18px 34px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 8px !important;
  background: rgba(237,248,253,0.86) !important;
  box-shadow: 0 10px 26px rgba(23,49,84,0.04) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-icon {
  width: 54px !important;
  height: 54px !important;
  justify-self: end !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-image: url("data:image/svg+xml,%3Csvg width='58' height='58' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 4H6.5A2.5 2.5 0 0 0 4 6.5V19a2 2 0 0 0 2 2h8.5' stroke='%23173154' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M8 4.5A2.5 2.5 0 0 1 10.5 2h3A2.5 2.5 0 0 1 16 4.5V6H8V4.5Z' stroke='%23173154' stroke-width='1.5'/%3E%3Cpath d='M8 10h6M8 14h4' stroke='%23173154' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='17' cy='17' r='4.2' stroke='%23197fb4' stroke-width='1.5'/%3E%3Cpath d='M15.2 17l1.2 1.2l2.4-2.5' stroke='%23197fb4' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-strip h3 {
  margin: 0 0 4px !important;
  color: var(--navy) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-strip p {
  margin: 0 !important;
  color: #415970 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-strip {
    grid-template-columns: 54px minmax(0, 1fr) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .shipping-prep-strip .btn {
    grid-column: 2 !important;
    justify-self: start !important;
    margin-top: 8px !important;
  }
}

/* Match review/FAQ card width to the two image cards above */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section > .container {
  width: 100% !important;
  max-width: 1320px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-layout {
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-faq-card {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-rows: 62px 1fr auto !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-summary-card {
  justify-content: initial !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-faq-card > .eyebrow {
  width: 100% !important;
  min-height: 24px !important;
  margin: 0 !important;
  display: block !important;
  align-self: start !important;
  grid-row: 1 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card .review-summary-body {
  grid-row: 2 !important;
  align-self: center !important;
  justify-self: center !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .review-summary-card .btn,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-summary-card .faq-premium-cta {
  grid-row: 3 !important;
  align-self: end !important;
  justify-self: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-summary-card .services-faq-cards {
  grid-row: 2 !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-review-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid img {
    max-width: 130px !important;
    height: 68px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid h3 {
    font-size: 16px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact h3,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact p {
  grid-column: 2 !important;
  min-width: 0 !important;
  max-width: 220px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact h3 {
  font-size: 17px !important;
  line-height: 1.22 !important;
  white-space: normal !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact p {
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .insured-note-bar {
  width: 100% !important;
  max-width: 1180px !important;
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  margin: 14px auto 0 !important;
  padding: 8px 18px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.58) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.56), 0 10px 24px rgba(23,49,84,0.04) !important;
  color: var(--navy) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .insured-note-icon {
  flex: 0 0 auto !important;
  width: 26px !important;
  height: 26px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 25px 25px !important;
  background-image: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3L19 6V11C19 15.6 16.1 19.3 12 21C7.9 19.3 5 15.6 5 11V6L12 3Z' stroke='%23197fb4' stroke-width='1.9' stroke-linejoin='round'/%3E%3Cpath d='M9 12L11.1 14.1L15.4 9.8' stroke='%23197fb4' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .insured-note-bar strong {
  color: var(--navy) !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

@media (max-width: 820px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card {
    grid-template-rows: 218px minmax(150px, auto) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card::before {
    top: 218px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #how-we-ship .method-feature-card img {
    height: 218px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
    padding-bottom: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact article {
    grid-template-columns: 52px minmax(0, 1fr) !important;
    padding: 0 18px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .insured-note-bar {
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 12px 16px !important;
    text-align: left !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .insured-note-bar strong {
    font-size: 14px !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #why-this-works .service-card-grid.compact {
    grid-template-columns: 1fr !important;
  }
}

/* Shipping Across Canada hero redesign */
html body.home-page main.service-copy-page.routes-page .services-home-hero {
  min-height: 500px !important;
  overflow: visible !important;
  background: #f5fbff !important;
  border-bottom: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero::before {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-bg {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  opacity: 1 !important;
  box-shadow: none !important;
  filter: saturate(1.05) contrast(1.03) !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-bg::after {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-wash {
  inset: 0 !important;
  background:
    linear-gradient(90deg, #f5fbff 0%, rgba(245,251,255,0.98) 31%, rgba(245,251,255,0.76) 49%, rgba(245,251,255,0.18) 76%, rgba(245,251,255,0.04) 100%),
    linear-gradient(180deg, rgba(245,251,255,0.08) 0%, rgba(245,251,255,0.18) 58%, #f5fbff 100%) !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .container {
  max-width: 1320px !important;
  min-height: inherit !important;
  display: flex !important;
  align-items: center !important;
  padding-top: 116px !important;
  padding-bottom: 70px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-content-wrapper {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  display: block !important;
  margin: 0 !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .services-hero-content,
html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-copy {
  max-width: 620px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 8px 18px !important;
  border: 1px solid rgba(47,155,210,0.25) !important;
  border-radius: 999px !important;
  background: rgba(245,251,255,0.70) !important;
  box-shadow: none !important;
  color: var(--blue-dark) !important;
  font-size: 10.5px !important;
  font-weight: 900 !important;
  letter-spacing: 2.3px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title {
  max-width: 580px !important;
  margin: 22px 0 16px !important;
  color: var(--navy) !important;
  font-size: clamp(42px, 4.8vw, 62px) !important;
  line-height: 1.06 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-shadow: 0 4px 22px rgba(255,255,255,0.46) !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title span {
  display: block !important;
  max-width: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title .accent {
  color: var(--blue-dark) !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-subtitle {
  max-width: 540px !important;
  margin: 0 0 20px !important;
  color: #334b62 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-btns {
  gap: 14px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .btn-primary {
  min-width: 210px !important;
  justify-content: center !important;
  background: linear-gradient(135deg, var(--navy), var(--navy-deep)) !important;
  box-shadow: 0 16px 34px rgba(23,49,84,0.20) !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .btn-outline {
  min-width: 210px !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.80) !important;
  border-color: rgba(23,49,84,0.16) !important;
  box-shadow: 0 12px 26px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-strip {
  position: relative !important;
  z-index: 5 !important;
  margin-top: -46px !important;
  padding: 0 0 26px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-strip::before,
html body.home-page main.service-copy-page.routes-page .stats-marquee-strip::after {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-strip .marquee-wrapper {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 0 var(--container-pad) !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-content {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  padding: 0 !important;
  animation: none !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-content .stat-pill:nth-child(n+5) {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill {
  min-width: 0 !important;
  min-height: 150px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px 18px !important;
  border: 1px solid rgba(47,155,210,0.14) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,0.86) !important;
  box-shadow: 0 18px 42px rgba(23,49,84,0.10) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill::before {
  content: "" !important;
  position: static !important;
  transform: none !important;
  width: 48px !important;
  height: 48px !important;
  margin: 0 0 14px !important;
  border-radius: 50% !important;
  background-color: #eaf6ff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 26px 26px !important;
  box-shadow: inset 0 0 0 6px rgba(47,155,210,0.06) !important;
  z-index: 1 !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill::after {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill:nth-child(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 15H3V10L5.3 6.5H15.5L19 10V15H17.4M7 15H14.7M7.2 16.6A1.9 1.9 0 1 1 3.4 16.6A1.9 1.9 0 0 1 7.2 16.6ZM20.6 16.6A1.9 1.9 0 1 1 16.8 16.6A1.9 1.9 0 0 1 20.6 16.6Z' stroke='%23197fb4' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='9' stroke='%23197fb4' stroke-width='1.4'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.5L10 3L20 5.5V18.5L14 21L4 18.5V5.5Z' stroke='%23197fb4' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M10 3V16M14 8V21M4 5.5L14 8L20 5.5M4 18.5L10 16L20 18.5' stroke='%23197fb4' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='5.5' width='16' height='14.5' rx='2' stroke='%23197fb4' stroke-width='1.7'/%3E%3Cpath d='M8 3.5V7.5M16 3.5V7.5M4 10H20M8 14H10M12 14H14M16 14H18' stroke='%23197fb4' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill:nth-child(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5.5H10V17.5H3V5.5ZM14 5.5H21V17.5H14V5.5Z' stroke='%23197fb4' stroke-width='1.7'/%3E%3Cpath d='M10 7.5L14 5.5M10 15.5L14 17.5M6.5 9.5L7.1 10.8L8.5 11L7.5 12L7.8 13.4L6.5 12.7L5.2 13.4L5.5 12L4.5 11L5.9 10.8L6.5 9.5Z' fill='%23197fb4'/%3E%3Cpath d='M15.5 9H19.5M15.5 12H19.5M15.5 15H19.5' stroke='%23197fb4' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-val {
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-val span {
  color: inherit !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-lbl {
  margin: 8px 0 0 !important;
  color: var(--blue-dark) !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: 1.8px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-lbl::after {
  content: "" !important;
  display: block !important;
  width: 30px !important;
  height: 2px !important;
  margin: 12px auto 0 !important;
  border-radius: 999px !important;
  background: var(--blue) !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.routes-page .services-home-hero {
    min-height: 500px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-bg {
    opacity: 0.48 !important;
    background-position: 66% center !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .home-hero-wash {
    background: linear-gradient(90deg, rgba(245,251,255,0.96), rgba(245,251,255,0.76)), linear-gradient(180deg, rgba(245,251,255,0.02), #f5fbff) !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .container {
    padding-top: 112px !important;
    padding-bottom: 58px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .services-hero-title,
  html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title {
    font-size: clamp(34px, 9vw, 46px) !important;
  }

  html body.home-page main.service-copy-page.routes-page .stats-marquee-strip {
    margin-top: -28px !important;
  }

  html body.home-page main.service-copy-page.routes-page .stats-marquee-content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.routes-page .stat-pill {
    min-height: 132px !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-btns .btn {
    width: 100% !important;
  }

  html body.home-page main.service-copy-page.routes-page .stats-marquee-content {
    grid-template-columns: 1fr !important;
  }
}

/* Shipping Across Canada province region cards */
html body.home-page main.service-copy-page.routes-page #provinces {
  padding-top: 56px !important;
  padding-bottom: 58px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(47,155,210,0.08), transparent 36%),
    var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.routes-page #provinces > .container {
  max-width: 1240px !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header {
  margin-bottom: 34px !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .eyebrow {
  position: relative !important;
  display: block !important;
  margin-bottom: 14px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .eyebrow::after {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card {
  min-height: 370px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 28px 30px 26px !important;
  border: 1px solid rgba(47,155,210,0.13) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.82) !important;
  box-shadow: 0 16px 36px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-icon {
  width: 108px !important;
  height: 108px !important;
  margin: 0 auto 22px !important;
  border-radius: 50% !important;
  background-color: #edf7ff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 82px 82px !important;
}

html body.home-page main.service-copy-page.routes-page .province-western .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 61L36 28L50 50L58 39L76 61H15Z' stroke='%2388bcea' stroke-width='2' fill='none'/%3E%3Cpath d='M29 68V55M22 68V58M62 68V55M70 68V58M19 68H76' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M29 55L23 61H35L29 55ZM62 55L56 61H68L62 55Z' stroke='%2388bcea' stroke-width='2'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-prairie .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 56C27 50 45 50 78 54M14 66C32 59 51 61 76 64' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M55 67V38M55 48C50 42 44 42 40 46M55 55C62 48 67 49 72 53' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M18 36H28M32 32H43M25 28H34' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-central .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 68H77M22 68V44H34V68M39 68V36H51V68M56 68V48H69V68' stroke='%2388bcea' stroke-width='2'/%3E%3Cpath d='M45 36V18M40 23H50M43 18H47' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M26 50H30M43 43H47M60 54H65M26 57H30M43 52H47M60 61H65' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-atlantic .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M39 65V32H54V65M35 65H58M42 32V24H51V32M29 65C34 58 39 57 44 63C50 55 57 55 63 63C67 58 72 58 76 63' stroke='%2388bcea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21 40C25 37 30 37 34 40M60 32C64 29 69 29 73 32' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3 {
  width: 100% !important;
  margin: 0 0 22px !important;
  color: var(--navy) !important;
  font-size: 21px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3::after {
  content: "" !important;
  display: block !important;
  width: 28px !important;
  height: 2px !important;
  margin: 16px auto 0 !important;
  border-radius: 999px !important;
  background: var(--blue) !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card ul {
  display: grid !important;
  gap: 10px !important;
  min-height: 92px !important;
  margin: 0 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card li {
  position: relative !important;
  padding-left: 30px !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 750 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card li::before {
  content: "\2713" !important;
  position: absolute !important;
  left: 0 !important;
  top: -1px !important;
  width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1.5px solid var(--blue) !important;
  border-radius: 50% !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card p {
  margin: 24px 0 0 !important;
  color: #526b82 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta {
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 24px !important;
  margin-top: 24px !important;
  padding: 22px 32px !important;
  border: 1px solid rgba(47,155,210,0.13) !important;
  border-radius: 8px !important;
  background: rgba(237,248,253,0.84) !important;
  box-shadow: 0 14px 32px rgba(23,49,84,0.05) !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-icon {
  width: 70px !important;
  height: 70px !important;
  justify-self: center !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-image: url("data:image/svg+xml,%3Csvg width='76' height='76' viewBox='0 0 76 76' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 49L23 44L35 49L49 42L63 47V61L49 56L35 63L23 58L13 63V49Z' stroke='%2388bcea' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M45 24C45 33 36 42 36 42S27 33 27 24A9 9 0 1 1 45 24Z' stroke='%23197fb4' stroke-width='2'/%3E%3Ccircle cx='36' cy='24' r='3' fill='%23197fb4'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta h3 {
  margin: 0 0 6px !important;
  color: var(--navy) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta p {
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta .btn {
  min-width: 280px !important;
  justify-content: center !important;
  border-radius: 6px !important;
  background: var(--blue-dark) !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.routes-page .province-region-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta {
    grid-template-columns: 76px minmax(0, 1fr) !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta .btn {
    grid-column: 2 !important;
    justify-self: start !important;
    margin-top: 8px !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.routes-page .province-region-grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta .btn {
    grid-column: 1 !important;
    justify-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* Province cards final alignment and clearer illustrations */
html body.home-page main.service-copy-page.routes-page .province-region-card {
  min-height: 388px !important;
  display: grid !important;
  grid-template-rows: 122px 72px 118px 1fr !important;
  align-items: start !important;
  padding: 26px 30px 28px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-icon {
  align-self: start !important;
  justify-self: center !important;
  width: 116px !important;
  height: 116px !important;
  margin: 0 !important;
  background-color: #eaf6ff !important;
  background-size: 92px 92px !important;
  box-shadow: inset 0 0 0 1px rgba(47,155,210,0.05) !important;
}

html body.home-page main.service-copy-page.routes-page .province-western .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='96' height='96' viewBox='0 0 96 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 66L35 29L48 49L57 38L82 66H12Z' fill='%23dff0ff' stroke='%237bb8e8' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cpath d='M35 29L40 52L48 49M57 38L62 56' stroke='%237bb8e8' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M21 74V60M29 74V56M70 74V59M78 74V64M16 74H84' stroke='%237bb8e8' stroke-width='2.1' stroke-linecap='round'/%3E%3Cpath d='M29 55L20 65H38L29 55ZM70 58L62 66H78L70 58Z' fill='%23edf7ff' stroke='%237bb8e8' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M18 37C21 34 25 34 28 37M61 26C65 22 72 22 76 26' stroke='%23a7cff0' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-prairie .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='96' height='96' viewBox='0 0 96 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 58C28 50 46 51 84 55M13 70C34 61 56 63 82 68' stroke='%237bb8e8' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M56 72V35' stroke='%237bb8e8' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M56 47C50 39 42 39 37 45M56 56C64 48 72 50 79 56M56 63C48 56 40 57 33 63' stroke='%237bb8e8' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M20 35H30M36 30H48M27 25H36M18 44H40' stroke='%23a7cff0' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-central .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='96' height='96' viewBox='0 0 96 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 75H84M21 75V48H34V75M40 75V37H54V75M60 75V51H75V75' fill='%23edf7ff' stroke='%237bb8e8' stroke-width='2.2'/%3E%3Cpath d='M47 37V16M42 22H52M45 16H49' stroke='%237bb8e8' stroke-width='2.1' stroke-linecap='round'/%3E%3Cpath d='M25 55H30M25 63H30M44 45H50M44 54H50M44 63H50M65 58H70M65 66H70' stroke='%237bb8e8' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M17 42C21 38 27 38 31 42M63 32C68 28 76 29 80 34' stroke='%23a7cff0' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-atlantic .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='96' height='96' viewBox='0 0 96 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M39 70V34H57V70M34 70H62M43 34V24H53V34' fill='%23edf7ff' stroke='%237bb8e8' stroke-width='2.2' stroke-linejoin='round'/%3E%3Cpath d='M43 43H53M43 52H53M43 61H53' stroke='%237bb8e8' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M20 72C28 60 38 61 47 70C56 59 67 61 78 70M17 50C22 45 29 45 34 50M61 31C66 26 74 27 79 32' stroke='%237bb8e8' stroke-width='2.1' stroke-linecap='round'/%3E%3Cpath d='M48 24V17' stroke='%237bb8e8' stroke-width='2.1' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3 {
  align-self: start !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card ul {
  min-height: 0 !important;
  align-self: start !important;
  width: 100% !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card p {
  align-self: end !important;
  margin: 0 !important;
  max-width: 190px !important;
}

html body.home-page main.service-copy-page.routes-page .province-atlantic ul {
  gap: 8px !important;
}

html body.home-page main.service-copy-page.routes-page .province-atlantic li {
  font-size: 13.5px !important;
  line-height: 1.25 !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.routes-page .province-region-card {
    min-height: 360px !important;
  }
}

/* Province cards compact text pass */
html body.home-page main.service-copy-page.routes-page .province-region-card {
  min-height: 342px !important;
  grid-template-rows: 104px 50px 98px 1fr !important;
  padding: 24px 28px 24px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-icon {
  width: 98px !important;
  height: 98px !important;
  background-size: 76px 76px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3 {
  font-size: 17px !important;
  line-height: 1.18 !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3::after {
  margin-top: 10px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card ul {
  gap: 8px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card li {
  font-size: 12px !important;
  line-height: 1.2 !important;
  padding-left: 26px !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card li::before {
  width: 16px !important;
  height: 16px !important;
  font-size: 10px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card p {
  max-width: 210px !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
}

html body.home-page main.service-copy-page.routes-page .province-atlantic li {
  font-size: 11px !important;
  line-height: 1.12 !important;
  white-space: normal !important;
}
/* Popular routes redesign - shipping across Canada page */
#popular-routes.popular-routes-redesign {
  padding: 54px 0 58px !important;
  background: var(--home-bg, #f5fbff) !important;
}

#popular-routes.popular-routes-redesign .container {
  max-width: 1240px !important;
}

#popular-routes.popular-routes-redesign .section-header {
  max-width: 760px !important;
  margin: 0 auto 18px !important;
  text-align: center !important;
}

#popular-routes.popular-routes-redesign .eyebrow {
  color: #1f75d6 !important;
  font-size: 11px !important;
  letter-spacing: 5px !important;
  margin-bottom: 12px !important;
  text-transform: uppercase !important;
}

#popular-routes.popular-routes-redesign .eyebrow::after {
  content: "";
  display: block;
  width: 42px;
  height: 2px;
  margin: 9px auto 0;
  background: #1f75d6;
  border-radius: 999px;
}

#popular-routes.popular-routes-redesign .section-title {
  margin: 0 0 8px !important;
  color: #071737 !important;
  font-size: clamp(30px, 4vw, 44px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

#popular-routes.popular-routes-redesign .section-sub {
  margin: 0 !important;
  color: #40536d !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
}

#popular-routes.popular-routes-redesign .route-grid.premium-route-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  max-width: none !important;
  margin: 0 auto !important;
}

#popular-routes.popular-routes-redesign .route-grid article.route-card-new {
  position: relative !important;
  min-height: 160px !important;
  padding: 16px 22px 13px !important;
  overflow: hidden !important;
  border: 1px solid rgba(187, 221, 244, 0.95) !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, 0.88) !important;
  box-shadow: 0 10px 28px rgba(10, 45, 81, 0.08) !important;
}

#popular-routes.popular-routes-redesign .route-grid article.route-card-new::before,
#popular-routes.popular-routes-redesign .route-grid article.route-card-new::after {
  display: none !important;
}

#popular-routes.popular-routes-redesign .route-card-new h3 {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  margin: 0 0 8px !important;
  color: #071737 !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

#popular-routes.popular-routes-redesign .route-card-new h3 i {
  color: #1f75d6 !important;
  font-style: normal !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

#popular-routes.popular-routes-redesign .route-map-line {
  position: relative !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  min-height: 70px !important;
  margin: 0 0 10px !important;
  padding: 0 19px 5px !important;
  border-bottom: 1px solid rgba(209, 226, 239, 0.95) !important;
  color: #142742 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

#popular-routes.popular-routes-redesign .route-map-line::before {
  content: "" !important;
  position: absolute !important;
  inset: 6px 34px 12px !important;
  opacity: 0.96 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='220' height='66' viewBox='0 0 220 66' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='.66' d='M18 42C30 21 55 16 75 25C90 7 122 9 134 28C150 18 181 24 196 43C167 50 129 54 87 52C55 51 33 48 18 42Z' fill='%23dcecf8'/%3E%3Cpath opacity='.5' d='M58 31C69 22 91 23 102 36M122 34C139 25 161 29 172 42' stroke='%23c7dfef' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center 5px !important;
  background-size: 100% 58px !important;
  transform: none !important;
}

#popular-routes.popular-routes-redesign .route-map-line::after {
  content: "" !important;
  position: absolute !important;
  left: 66px !important;
  right: 66px !important;
  top: 18px !important;
  height: 35px !important;
  border: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='190' height='44' viewBox='0 0 190 44' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 35C53 1 133 1 184 35' stroke='%231f75d6' stroke-width='2.2' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center top !important;
  background-size: 100% 42px !important;
  transform: none !important;
}

#popular-routes.popular-routes-redesign .route-map-line span {
  position: relative !important;
  z-index: 1 !important;
  min-width: 36px !important;
  text-align: center !important;
}

#popular-routes.popular-routes-redesign .route-map-line span::before {
  content: "" !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 auto 4px !important;
  background: #1f75d6 !important;
  border-radius: 50% 50% 50% 0 !important;
  transform: rotate(-45deg) !important;
  box-shadow: 0 2px 8px rgba(31, 117, 214, 0.25) !important;
}

#popular-routes.popular-routes-redesign .route-map-line span::after {
  content: "" !important;
  position: absolute !important;
  top: 6px !important;
  left: 50% !important;
  z-index: 2 !important;
  width: 7px !important;
  height: 7px !important;
  margin-left: -3.5px !important;
  background: #fff !important;
  border-radius: 50% !important;
}

#popular-routes.popular-routes-redesign .route-card-new p {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 !important;
  color: #263c58 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

#popular-routes.popular-routes-redesign .route-card-new p strong {
  color: #0f69d7 !important;
  font-weight: 800 !important;
}

#popular-routes.popular-routes-redesign .route-clock {
  position: relative !important;
  flex: 0 0 auto !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #1f75d6 !important;
  border-radius: 50% !important;
}

#popular-routes.popular-routes-redesign .route-clock::before {
  content: "" !important;
  position: absolute !important;
  left: 6px !important;
  top: 3px !important;
  width: 2px !important;
  height: 5px !important;
  background: #1f75d6 !important;
  border-radius: 2px !important;
}

#popular-routes.popular-routes-redesign .route-clock::after {
  content: "" !important;
  position: absolute !important;
  left: 6px !important;
  top: 7px !important;
  width: 5px !important;
  height: 2px !important;
  background: #1f75d6 !important;
  border-radius: 2px !important;
}

#popular-routes.popular-routes-redesign .route-time-note {
  display: grid !important;
  grid-template-columns: auto minmax(0, 920px) !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 13px !important;
  max-width: none !important;
  min-height: 58px !important;
  margin: 14px auto 0 !important;
  padding: 12px 28px !important;
  border: 1px solid rgba(214, 229, 242, 0.85) !important;
  border-radius: 8px !important;
  background: rgba(238, 247, 255, 0.92) !important;
  color: #1e3048 !important;
}

#popular-routes.popular-routes-redesign .route-time-note span {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  width: 18px !important;
  height: 18px !important;
  border: 1.5px solid #17365c !important;
  border-radius: 50% !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

#popular-routes.popular-routes-redesign .route-time-note p {
  max-width: 920px !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  text-align: center !important;
  font-weight: 500 !important;
  overflow-wrap: anywhere !important;
}

#popular-routes.popular-routes-redesign .route-custom-quote {
  display: grid !important;
  grid-template-columns: 78px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  max-width: none !important;
  min-height: 96px !important;
  margin: 12px auto 0 !important;
  padding: 16px 26px !important;
  border: 1px solid rgba(160, 207, 242, 0.95) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.84) !important;
  box-shadow: 0 10px 26px rgba(10, 45, 81, 0.05) !important;
}

#popular-routes.popular-routes-redesign .route-custom-icon {
  display: block !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  background-color: #eaf5ff !important;
  background-image: url("data:image/svg+xml,%3Csvg width='42' height='42' viewBox='0 0 42 42' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 17.5L16.5 13.5L26 17.5L35 13.5V32L25.8 36L16.2 31.8L7 36V17.5Z' fill='%23ffffff' stroke='%231f75d6' stroke-width='2.4' stroke-linejoin='round'/%3E%3Cpath d='M16.5 13.5V31.8M26 17.5V36' stroke='%231f75d6' stroke-width='2.1' stroke-linecap='round'/%3E%3Cpath d='M21 5.8C16.9 5.8 13.6 9.1 13.6 13.2C13.6 18.7 21 25 21 25C21 25 28.4 18.7 28.4 13.2C28.4 9.1 25.1 5.8 21 5.8Z' fill='%23eaf5ff' stroke='%231f75d6' stroke-width='2.4' stroke-linejoin='round'/%3E%3Ccircle cx='21' cy='13.2' r='2.6' fill='%23ffffff' stroke='%231f75d6' stroke-width='2'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 42px 42px !important;
  position: relative !important;
}

#popular-routes.popular-routes-redesign .route-custom-icon::before {
  display: none !important;
}

#popular-routes.popular-routes-redesign .route-custom-quote h3 {
  margin: 0 0 4px !important;
  color: #071737 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

#popular-routes.popular-routes-redesign .route-custom-quote p {
  margin: 0 !important;
  color: #40536d !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

#popular-routes.popular-routes-redesign .route-custom-quote .btn {
  min-width: 224px !important;
  height: 58px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
}

@media (max-width: 920px) {
  #popular-routes.popular-routes-redesign .route-grid.premium-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  #popular-routes.popular-routes-redesign {
    padding: 42px 0 46px !important;
  }

  #popular-routes.popular-routes-redesign .route-grid.premium-route-grid {
    grid-template-columns: 1fr !important;
  }

  #popular-routes.popular-routes-redesign .route-custom-quote {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    text-align: center !important;
  }

  #popular-routes.popular-routes-redesign .route-time-note {
    align-items: flex-start !important;
  }
}

/* Popular routes final alignment pass */
#popular-routes.popular-routes-redesign .route-grid article.route-card-new {
  display: block !important;
  box-sizing: border-box !important;
  align-items: initial !important;
  justify-content: initial !important;
  min-height: 158px !important;
  padding: 16px 23px 13px !important;
  border-radius: 8px !important;
}

#popular-routes.popular-routes-redesign .route-card-new:hover {
  transform: translateY(-2px) !important;
}

#popular-routes.popular-routes-redesign .route-card-new h3 i {
  display: inline !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #1f75d6 !important;
}

#popular-routes.popular-routes-redesign .route-map-line {
  height: 72px !important;
  min-height: 72px !important;
}

#popular-routes.popular-routes-redesign .route-map-line::after {
  top: 18px !important;
  left: 66px !important;
  right: 66px !important;
  height: 30px !important;
}

#popular-routes.popular-routes-redesign .route-card-new p {
  justify-content: flex-start !important;
  padding-top: 1px !important;
}

#popular-routes.popular-routes-redesign .route-map-line::after {
  left: 66px !important;
  right: 66px !important;
  top: 18px !important;
  height: 35px !important;
  border: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='190' height='44' viewBox='0 0 190 44' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 35C53 1 133 1 184 35' stroke='%231f75d6' stroke-width='2.2' stroke-linecap='round' stroke-dasharray='5 5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center top !important;
  background-size: 100% 42px !important;
  transform: none !important;
}

/* Popular routes heading final sizing */
#popular-routes.popular-routes-redesign {
  padding-top: 44px !important;
}

#popular-routes.popular-routes-redesign .section-header {
  max-width: 980px !important;
  margin-bottom: 18px !important;
}

#popular-routes.popular-routes-redesign .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
  font-size: 11px !important;
  letter-spacing: 6px !important;
  line-height: 1 !important;
}

#popular-routes.popular-routes-redesign .eyebrow::after {
  display: none !important;
}

#popular-routes.popular-routes-redesign .section-title {
  max-width: none !important;
  margin: 0 0 8px !important;
  font-size: 36px !important;
  line-height: 1.08 !important;
  white-space: nowrap !important;
}

#popular-routes.popular-routes-redesign .section-sub {
  max-width: 760px !important;
  margin: 0 auto !important;
  font-size: 15.5px !important;
  line-height: 1.4 !important;
}

@media (max-width: 820px) {
  #popular-routes.popular-routes-redesign .section-title {
    font-size: 30px !important;
    white-space: normal !important;
  }
}

/* Shipping Across Canada final typography and spacing audit */
html body.home-page main.service-copy-page.routes-page {
  --routes-section-gap: 58px;
  --routes-card-gap: 18px;
  --routes-heading: clamp(32px, 3.2vw, 42px);
  --routes-body: 15px;
}

html body.home-page main.service-copy-page.routes-page .section-header {
  max-width: 760px !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .section-header .eyebrow,
html body.home-page main.service-copy-page.routes-page .eyebrow {
  margin-bottom: 12px !important;
  color: #1f75d6 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: 4px !important;
}

html body.home-page main.service-copy-page.routes-page .section-title,
html body.home-page main.service-copy-page.routes-page .section-header .section-title {
  margin: 0 0 10px !important;
  color: var(--navy) !important;
  font-size: var(--routes-heading) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
}

html body.home-page main.service-copy-page.routes-page .section-sub,
html body.home-page main.service-copy-page.routes-page .section-header .section-sub {
  max-width: 690px !important;
  margin: 0 auto !important;
  color: #526b82 !important;
  font-size: var(--routes-body) !important;
  line-height: 1.55 !important;
  font-weight: 550 !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .services-hero-title,
html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title {
  font-size: clamp(42px, 4.6vw, 60px) !important;
  line-height: 1.06 !important;
  margin: 20px 0 16px !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-subtitle {
  font-size: 16px !important;
  line-height: 1.62 !important;
}

html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-btns {
  margin-top: 22px !important;
  gap: 14px !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-strip {
  padding-bottom: 30px !important;
}

html body.home-page main.service-copy-page.routes-page .stats-marquee-content {
  gap: var(--routes-card-gap) !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill {
  min-height: 142px !important;
  padding: 20px 18px !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-val {
  font-size: clamp(22px, 1.9vw, 28px) !important;
  line-height: 1.12 !important;
}

html body.home-page main.service-copy-page.routes-page .stat-pill .pill-lbl {
  font-size: 10.5px !important;
  line-height: 1.25 !important;
  letter-spacing: 1.6px !important;
}

html body.home-page main.service-copy-page.routes-page #provinces,
#popular-routes.popular-routes-redesign,
html body.home-page main.service-copy-page.routes-page .services-faq-section {
  padding-top: var(--routes-section-gap) !important;
  padding-bottom: var(--routes-section-gap) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section {
  padding-bottom: 34px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-grid,
#popular-routes.popular-routes-redesign .route-grid.premium-route-grid {
  gap: var(--routes-card-gap) !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card {
  min-height: 352px !important;
  padding: 24px 26px !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card h3 {
  font-size: 18px !important;
  line-height: 1.22 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card li {
  font-size: 12.8px !important;
  line-height: 1.3 !important;
}

html body.home-page main.service-copy-page.routes-page .province-region-card p {
  color: #526b82 !important;
  font-size: 12.8px !important;
  line-height: 1.55 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta,
#popular-routes.popular-routes-redesign .route-custom-quote {
  margin-top: 22px !important;
  padding: 20px 28px !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta h3,
#popular-routes.popular-routes-redesign .route-custom-quote h3 {
  font-size: 17px !important;
  line-height: 1.25 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta p,
#popular-routes.popular-routes-redesign .route-custom-quote p {
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

#popular-routes.popular-routes-redesign .section-header {
  margin-bottom: 24px !important;
}

#popular-routes.popular-routes-redesign .route-grid article.route-card-new {
  min-height: 162px !important;
  padding: 17px 22px 14px !important;
}

#popular-routes.popular-routes-redesign .route-card-new h3 {
  font-size: 16px !important;
  line-height: 1.22 !important;
}

#popular-routes.popular-routes-redesign .route-map-line {
  font-size: 11.5px !important;
}

#popular-routes.popular-routes-redesign .route-card-new p {
  font-size: 12.8px !important;
  line-height: 1.3 !important;
}

#popular-routes.popular-routes-redesign .route-time-note {
  min-height: 56px !important;
  margin-top: 14px !important;
  padding: 12px 24px !important;
}

#popular-routes.popular-routes-redesign .route-time-note p {
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout::before {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
  max-width: 980px !important;
  gap: 18px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-item {
  border-radius: 8px !important;
  background: rgba(255,255,255,0.74) !important;
  box-shadow: 0 10px 26px rgba(23,49,84,0.05) !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
  min-height: 74px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .section-title {
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
  font-size: clamp(34px, 3.2vw, 48px) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list {
  width: min(100%, 980px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  gap: 16px !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
  min-height: 82px !important;
  font-size: 15.5px !important;
  line-height: 1.38 !important;
}

html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-answer-inner {
  font-size: 14px !important;
  line-height: 1.6 !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta.cta-banner {
  padding: 46px 0 58px !important;
  margin-top: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta h2 {
  font-size: clamp(32px, 3.5vw, 46px) !important;
  line-height: 1.12 !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta p {
  font-size: 16px !important;
  line-height: 1.55 !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.routes-page {
    --routes-section-gap: 50px;
  }

  html body.home-page main.service-copy-page.routes-page .section-header {
    margin-bottom: 26px !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-region-card {
    min-height: 330px !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.routes-page {
    --routes-section-gap: 42px;
    --routes-heading: clamp(28px, 8vw, 34px);
    --routes-body: 14px;
    --routes-card-gap: 14px;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .services-hero-title,
  html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-title {
    font-size: clamp(34px, 10vw, 42px) !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-home-hero .hero-subtitle {
    font-size: 15px !important;
  }

  html body.home-page main.service-copy-page.routes-page .stat-pill {
    min-height: 122px !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-region-card {
    min-height: auto !important;
    grid-template-rows: auto !important;
    gap: 14px !important;
    padding: 24px 22px !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-region-card h3,
  html body.home-page main.service-copy-page.routes-page .province-region-card li {
    white-space: normal !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-region-card p {
    max-width: none !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta,
  #popular-routes.popular-routes-redesign .route-custom-quote {
    padding: 20px !important;
  }

  #popular-routes.popular-routes-redesign .route-card-new p {
    white-space: normal !important;
  }

  #popular-routes.popular-routes-redesign .route-time-note {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .faq-premium-layout {
    padding: 28px 16px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-faq-section .route-faq-side-list .faq-question {
    font-size: 14.5px !important;
  }
}

/* Shipping Across Canada final CTA footer gap fix */
html body.home-page main.service-copy-page.routes-page .services-final-cta.cta-banner,
html body.home-page main.service-copy-page.routes-page .quote-cta-section.services-final-cta {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.routes-page .services-final-cta .container {
  padding-bottom: 0 !important;
}

html body.home-page main.service-copy-page.routes-page + footer {
  margin-top: 0 !important;
}

/* Dealer operations icon fix: prevent global mask square */
html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid .service-icon::before {
  background-color: transparent !important;
  -webkit-mask: none !important;
  mask: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-transfer::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 24H51M51 24L42 15M51 24L42 33M52 46H19M19 46L28 37M19 46L28 55' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-auction::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25 42L43 24M31 48L49 30M21 39L31 49M40 20L50 30M18 55H43M22 50H39' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M40 16L54 30M20 36L34 50' stroke='%231f75d6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-inventory::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 54H56M22 54V40H30V54M34 54V32H42V54M46 54V24H54V54' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 34C28 33 38 28 50 17M50 17H40M50 17V27' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-fleet::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 28H18V22L21 17H36L42 22V28H38M25 28H35M24 31A3 3 0 1 1 18 31A3 3 0 0 1 24 31ZM43 31A3 3 0 1 1 37 31A3 3 0 0 1 43 31Z' stroke='%231f75d6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19 50H13V44L16 39H31L37 44V50H33M20 50H30M19 53A3 3 0 1 1 13 53A3 3 0 0 1 19 53ZM38 53A3 3 0 1 1 32 53A3 3 0 0 1 38 53ZM47 50H41V44L44 39H59L65 44V50H61M48 50H58M47 53A3 3 0 1 1 41 53A3 3 0 0 1 47 53ZM66 53A3 3 0 1 1 60 53A3 3 0 0 1 66 53Z' stroke='%231f75d6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-recurring::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M52 24C47 17 37 14 29 18C23 20 19 25 18 31M18 31H29M18 31V20M18 46C23 53 33 56 41 52C47 50 51 45 52 39M52 39H41M52 39V50' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-border::before {
  background: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='35' cy='35' r='24' stroke='%231f75d6' stroke-width='3'/%3E%3Cpath d='M12 35H58M35 11C41 18 44 26 44 35C44 44 41 52 35 59C29 52 26 44 26 35C26 26 29 18 35 11Z' stroke='%231f75d6' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M18 23H52M18 47H52' stroke='%231f75d6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Dealer shipping process timeline */
html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-section {
  padding: 0 0 58px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-section > .container {
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-panel {
  padding: 28px 34px 34px !important;
  border: 1px solid rgba(47,155,210,0.2) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,0.62) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.05) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-panel .section-header {
  margin-bottom: 26px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-panel .eyebrow {
  margin-bottom: 10px !important;
  color: #1f75d6 !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-panel .section-title {
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: clamp(30px, 3vw, 38px) !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-steps-row {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-steps-row::before {
  content: "" !important;
  position: absolute !important;
  left: 9% !important;
  right: 9% !important;
  top: 30px !important;
  height: 3px !important;
  background-image: radial-gradient(circle, #1f75d6 1.6px, transparent 2px) !important;
  background-size: 16px 3px !important;
  background-repeat: repeat-x !important;
  opacity: 0.7 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-step {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-step-number {
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 0 24px !important;
  border-radius: 50% !important;
  background: var(--navy) !important;
  color: #ffffff !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 24px rgba(23,49,84,0.16) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-step img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  margin: 0 0 14px !important;
  filter: drop-shadow(0 10px 14px rgba(31,117,214,0.14)) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-step h3 {
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: 15px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
}

/* Dealer inventory and coverage sections */
html body.home-page main.service-copy-page.dealer-page .dealer-inventory-section,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-section {
  padding: 0 0 28px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-section > .container,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-section > .container {
  max-width: 1240px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-image,
html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-panel {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.78) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.055) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-image img {
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card {
  min-height: 360px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: 30px 42px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card .eyebrow,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card .eyebrow,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-copy .eyebrow {
  margin-bottom: 16px !important;
  color: #1f75d6 !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  letter-spacing: 2.4px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card h2,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card h2,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-copy h2 {
  margin: 0 0 26px !important;
  color: var(--navy) !important;
  font-size: clamp(26px, 2.2vw, 31px) !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card h2 .heading-line,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card h2 .heading-line {
  display: block !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card ul {
  display: grid !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card li {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 16px !important;
  color: var(--navy) !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card li img {
  width: 48px !important;
  height: 48px !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: drop-shadow(0 8px 12px rgba(31,117,214,0.13)) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card p,
html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card p,
html body.home-page main.service-copy-page.dealer-page .dealer-coverage-copy p {
  margin: 0 !important;
  color: #31495f !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card .btn {
  width: 100% !important;
  max-width: 318px !important;
  min-height: 54px !important;
  justify-content: space-between !important;
  margin-top: auto !important;
  padding: 14px 24px !important;
  border-radius: 999px !important;
  background: var(--navy) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 28px rgba(23,49,84,0.18) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.22fr) !important;
  align-items: center !important;
  min-height: 246px !important;
  padding: 28px 34px !important;
  gap: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-copy h2 {
  margin-bottom: 16px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 22px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-actions .btn {
  min-width: 190px !important;
  min-height: 48px !important;
  padding: 12px 22px !important;
  justify-content: center !important;
  border-radius: 999px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-actions .btn-dark {
  background: var(--navy) !important;
  color: #ffffff !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-coverage-map img {
  width: 100% !important;
  height: auto !important;
  max-height: 260px !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center right !important;
  filter: drop-shadow(0 18px 24px rgba(31,117,214,0.12)) !important;
}

/* Dealer multi-vehicle panel exact sizing */
html body.home-page main.service-copy-page.dealer-page #multi-vehicle {
  padding-top: 0 !important;
  padding-bottom: 10px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle > .container {
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-grid {
  grid-template-columns: minmax(360px, 0.98fr) minmax(0, 1.04fr) minmax(0, 1.04fr) !important;
  gap: 16px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-image,
html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card,
html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-pricing-card {
  min-height: 330px !important;
  border-radius: 8px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-image img {
  min-height: 330px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card,
html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-pricing-card {
  padding: 24px 38px 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .eyebrow {
  margin-bottom: 16px !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  letter-spacing: 2.35px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle h2 {
  margin-bottom: 22px !important;
  font-size: 27px !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle h2 .heading-line {
  display: block !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card ul {
  gap: 12px !important;
  margin-bottom: 18px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card li {
  grid-template-columns: 50px minmax(0, 1fr) !important;
  gap: 16px !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card li img {
  width: 42px !important;
  height: 42px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-inventory-card p,
html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-pricing-card p {
  max-width: 310px !important;
  font-size: 14.5px !important;
  line-height: 1.62 !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-pricing-card p {
  max-width: 320px !important;
}

html body.home-page main.service-copy-page.dealer-page #multi-vehicle .dealer-pricing-card .btn {
  max-width: 326px !important;
  min-height: 54px !important;
  margin-top: auto !important;
  padding: 14px 26px !important;
  font-size: 14px !important;
}

/* Dealer shipping works width match */
html body.home-page main.service-copy-page.dealer-page #dealer-shipping-works > .container {
  width: 100% !important;
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #dealer-shipping-works .dealer-shipping-works-panel {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Dealer coverage width match */
html body.home-page main.service-copy-page.dealer-page #dealer-coverage > .container {
  width: 100% !important;
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #dealer-coverage {
  padding-top: 0 !important;
  padding-bottom: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #dealer-coverage .dealer-coverage-panel {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Dealer FAQ compact image layout */
html body.home-page main.service-copy-page.dealer-page .services-faq-section {
  padding: 24px 0 34px !important;
  background: var(--home-bg, #f5fbff) !important;
}


html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 250px !important;
  gap: 20px !important;
  align-items: center !important;
  padding: 16px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,0.56) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.045) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header {
  order: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header::before,
html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header::after {
  display: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header .eyebrow {
  margin: 0 0 10px !important;
  color: #1f75d6 !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  letter-spacing: 2.6px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-title {
  max-width: none !important;
  margin: 0 0 14px !important;
  color: var(--navy) !important;
  font-size: 22px !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 12px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item,
html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item + .faq-item {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.035) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item:hover,
html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item.open {
  box-shadow: 0 10px 22px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-question {
  min-height: 40px !important;
  padding: 9px 14px !important;
  gap: 12px !important;
  color: var(--navy) !important;
  font-size: 11.5px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-icon {
  width: 22px !important;
  height: 22px !important;
  margin-left: auto !important;
  border: 0 !important;
  background: transparent !important;
  color: #1f75d6 !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-answer-inner {
  padding: 0 16px 12px !important;
  color: #31495f !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-cta {
  width: auto !important;
  max-width: none !important;
  margin: 14px auto 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-cta .btn {
  min-height: 40px !important;
  padding: 11px 26px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel {
  order: 2 !important;
  width: 250px !important;
  min-height: 0 !important;
  height: 205px !important;
  align-self: center !important;
  padding: 0 !important;
  border-radius: 8px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.06) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel::after {
  display: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Dealer FAQ final clean layout */
html body.home-page main.service-copy-page.dealer-page .services-faq-section {
  padding: 28px 0 42px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section > .container {
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 270px !important;
  gap: 24px !important;
  align-items: center !important;
  min-height: 0 !important;
  padding: 18px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,0.58) !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header {
  order: 1 !important;
  display: block !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-header .eyebrow {
  display: block !important;
  margin: 0 0 10px !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 2.4px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .section-title {
  max-width: none !important;
  margin: 0 0 16px !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 14px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item,
html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-item + .faq-item {
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-question {
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 16px !important;
  gap: 16px !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  text-align: left !important;
  white-space: normal !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .dealer-faq-side-list .faq-icon {
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 !important;
  font-size: 18px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-cta {
  margin-top: 14px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-cta .btn {
  min-height: 38px !important;
  padding: 10px 28px !important;
  font-size: 12px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel {
  order: 2 !important;
  width: 270px !important;
  height: 210px !important;
  min-height: 0 !important;
  align-self: center !important;
  justify-self: end !important;
  border-radius: 8px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.dealer-page .services-faq-section .faq-image-panel {
    width: 100% !important;
    max-width: 360px !important;
    justify-self: center !important;
  }
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .dealer-steps-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 26px 18px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-steps-row::before {
    display: none !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-inventory-grid,
  html body.home-page main.service-copy-page.dealer-page .dealer-coverage-panel {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.dealer-page .dealer-shipping-works-panel {
    padding: 26px 18px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-steps-row {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-inventory-card,
  html body.home-page main.service-copy-page.dealer-page .dealer-pricing-card,
  html body.home-page main.service-copy-page.dealer-page .dealer-coverage-panel {
    padding: 26px 20px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-inventory-image img {
    min-height: 260px !important;
  }
}

/* Dealer page stats strip: white icon marquee */
html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip {
  position: relative !important;
  z-index: 5 !important;
  margin: -34px 0 0 !important;
  padding: 0 !important;
  border-top: 1px solid rgba(47,155,210,0.16) !important;
  border-bottom: 1px solid rgba(47,155,210,0.16) !important;
  background: #ffffff !important;
  box-shadow: 0 16px 42px rgba(23,49,84,0.07) !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip::before,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip::after {
  display: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip .marquee-wrapper {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 46px !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 28px !important;
  width: 100% !important;
  padding: 0 !important;
  animation: none !important;
  transform: none !important;
}


html body.home-page main.service-copy-page.dealer-page .stat-pill {
  position: relative !important;
  min-width: 0 !important;
  min-height: 112px !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  align-items: center !important;
  justify-content: start !important;
  column-gap: 20px !important;
  padding: 22px 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill:not(:last-child)::after {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill::after {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill::before {
  content: "" !important;
  position: static !important;
  grid-row: 1 / span 2 !important;
  width: 64px !important;
  height: 64px !important;
  display: block !important;
  border: 1px solid rgba(47,155,210,0.26) !important;
  border-radius: 50% !important;
  background-color: #f7fbff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 34px 34px !important;
  box-shadow: inset 0 0 0 6px rgba(47,155,210,0.04) !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill:nth-child(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3L19 6V11C19 15.6 16.1 19.3 12 21C7.9 19.3 5 15.6 5 11V6L12 3Z' stroke='%23197fb4' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M9 12L11.1 14.1L15.5 9.6' stroke='%23197fb4' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 21S19 15.4 19 9.8A7 7 0 1 0 5 9.8C5 15.4 12 21 12 21Z' stroke='%23197fb4' stroke-width='1.8'/%3E%3Ccircle cx='12' cy='9.8' r='2.4' stroke='%23197fb4' stroke-width='1.8'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 15H3V10L5.2 6.5H15.5L19 10V15H17.4M7 15H14.8M7.2 16.5A1.9 1.9 0 1 1 3.4 16.5A1.9 1.9 0 0 1 7.2 16.5ZM20.6 16.5A1.9 1.9 0 1 1 16.8 16.5A1.9 1.9 0 0 1 20.6 16.5Z' stroke='%23197fb4' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M7 6.5V10H18.8' stroke='%23197fb4' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill:nth-child(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='8.5' stroke='%23197fb4' stroke-width='1.8'/%3E%3Cpath d='M3.8 12H20.2M12 3.5C14.2 5.9 15.3 8.7 15.3 12C15.3 15.3 14.2 18.1 12 20.5C9.8 18.1 8.7 15.3 8.7 12C8.7 8.7 9.8 5.9 12 3.5Z' stroke='%23197fb4' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-val {
  grid-column: 2 !important;
  margin: 0 0 5px !important;
  color: var(--navy) !important;
  font-size: 17px !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-val span {
  font-size: 0.75em !important;
  vertical-align: super !important;
}

html body.home-page main.service-copy-page.dealer-page .stat-pill .pill-lbl {
  grid-column: 2 !important;
  margin: 0 !important;
  color: #526b82 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Dealer operations card row */
html body.home-page main.service-copy-page.dealer-page #business-benefits {
  padding: 46px 0 42px !important;
  background: var(--home-bg, #f5fbff) !important;
}

html body.home-page main.service-copy-page.dealer-page #business-benefits > .container {
  max-width: 1180px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

html body.home-page main.service-copy-page.dealer-page #business-benefits .section-header {
  margin-bottom: 24px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page #business-benefits .eyebrow {
  margin-bottom: 10px !important;
  color: #1f75d6 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 3px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.dealer-page #business-benefits .section-title {
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: clamp(30px, 3vw, 40px) !important;
  line-height: 1.14 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 16px !important;
  padding: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid::after {
  display: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid article {
  min-height: 166px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding: 22px 14px 20px !important;
  border: 1px solid rgba(47,155,210,0.2) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.78) !important;
  box-shadow: 0 12px 28px rgba(23,49,84,0.055) !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid article + article {
  border-left: 1px solid rgba(47,155,210,0.2) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid .service-icon {
  width: 72px !important;
  height: 72px !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #1f75d6 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid .dealer-op-icon {
  width: 58px !important;
  height: 58px !important;
  display: block !important;
  object-fit: contain !important;
  margin: 0 !important;
  filter: drop-shadow(0 10px 14px rgba(31,117,214,0.14)) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid .service-icon::before {
  content: "" !important;
  width: 70px !important;
  height: 70px !important;
  display: block !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  filter: drop-shadow(0 8px 10px rgba(31,117,214,0.13)) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid h3 {
  max-width: 142px !important;
  margin: 0 !important;
  color: var(--navy) !important;
  font-size: 14px !important;
  line-height: 1.32 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-transfer::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 24H51M51 24L42 15M51 24L42 33M52 46H19M19 46L28 37M19 46L28 55' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-auction::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25 42L43 24M31 48L49 30M21 39L31 49M40 20L50 30M18 55H43M22 50H39' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M40 16L54 30M20 36L34 50' stroke='%231f75d6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-inventory::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 54H56M22 54V40H30V54M34 54V32H42V54M46 54V24H54V54' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 34C28 33 38 28 50 17M50 17H40M50 17V27' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-fleet::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 28H18V22L21 17H36L42 22V28H38M25 28H35M24 31A3 3 0 1 1 18 31A3 3 0 0 1 24 31ZM43 31A3 3 0 1 1 37 31A3 3 0 0 1 43 31Z' stroke='%231f75d6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19 50H13V44L16 39H31L37 44V50H33M20 50H30M19 53A3 3 0 1 1 13 53A3 3 0 0 1 19 53ZM38 53A3 3 0 1 1 32 53A3 3 0 0 1 38 53ZM47 50H41V44L44 39H59L65 44V50H61M48 50H58M47 53A3 3 0 1 1 41 53A3 3 0 0 1 47 53ZM66 53A3 3 0 1 1 60 53A3 3 0 0 1 66 53Z' stroke='%231f75d6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-recurring::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M52 24C47 17 37 14 29 18C23 20 19 25 18 31M18 31H29M18 31V20M18 46C23 53 33 56 41 52C47 50 51 45 52 39M52 39H41M52 39V50' stroke='%231f75d6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-op-border::before {
  background-image: url("data:image/svg+xml,%3Csvg width='70' height='70' viewBox='0 0 70 70' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='35' cy='35' r='24' stroke='%231f75d6' stroke-width='3'/%3E%3Cpath d='M12 35H58M35 11C41 18 44 26 44 35C44 44 41 52 35 59C29 52 26 44 26 35C26 26 29 18 35 11Z' stroke='%231f75d6' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M18 23H52M18 47H52' stroke='%231f75d6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

@media (max-width: 1100px) {
  html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid article {
    min-height: 178px !important;
    padding: 22px 14px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealership-operations-grid h3 {
    font-size: 14px !important;
  }
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip {
    margin-top: -22px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.dealer-page .stat-pill:nth-child(2)::after {
    display: none !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.dealer-page .stat-pill {
    min-height: 96px !important;
    padding: 18px 22px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .stat-pill::after {
    display: none !important;
  }
}

/* Dealer marquee final cleanup */
html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip .marquee-wrapper {
  max-width: 1280px !important;
  padding: 0 56px !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
  display: flex !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  gap: 54px !important;
  width: 100% !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: 74px minmax(0, 1fr) !important;
  column-gap: 24px !important;
  padding: 24px 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill::after,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill:not(:last-child)::after,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill:nth-child(2)::after,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .pill-val::after,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .pill-lbl::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill:nth-child(n+5) {
  display: none !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip .marquee-wrapper {
    padding: 0 24px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 28px !important;
  }
}

@media (max-width: 560px) {
  html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}

/* Dealer marquee final fixed 4-column strip */
html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip {
  margin-top: 0 !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-strip .marquee-wrapper {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: center !important;
  gap: 34px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  animation: none !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 82px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  padding: 10px 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill::before {
  position: static !important;
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 52px !important;
  margin: 0 !important;
  transform: none !important;
  background-size: 28px 28px !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill::after,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .stat-pill *::after {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .pill-val,
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content .pill-lbl {
  grid-column: auto !important;
  display: block !important;
  text-align: left !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 28px !important;
  }
}

@media (max-width: 560px) {
html body.home-page main.service-copy-page.dealer-page .stats-marquee-content {
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}
}

/* Dealer FAQ polished final */
html body.home-page main.service-copy-page.dealer-page .dealer-faq-section {
  padding: 76px 0 !important;
  background:
    linear-gradient(180deg, #f6fbff 0%, #ffffff 54%, #f3f9fd 100%) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section > .container {
  width: 100% !important;
  max-width: 1440px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-premium-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr) !important;
  gap: 34px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 28px !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.82) !important;
  box-shadow: 0 14px 34px rgba(23,49,84,0.055) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel {
  grid-column: 2 !important;
  grid-row: 1 !important;
  order: 0 !important;
  position: relative !important;
  justify-self: stretch !important;
  align-self: center !important;
  width: 100% !important;
  height: auto !important;
  min-height: 360px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #f7fbff !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(7,27,49,0) 50%, rgba(7,27,49,0.24) 100%) !important;
  pointer-events: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel img {
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center right !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-header {
  grid-column: 1 !important;
  grid-row: 1 !important;
  order: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: stretch !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 12px 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-header::before,
html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-header::after {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-header .eyebrow {
  align-self: flex-start !important;
  margin: 0 0 12px !important;
  color: #1f75d6 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: 2px !important;
  font-weight: 900 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-title {
  max-width: none !important;
  margin: 0 0 22px !important;
  color: var(--navy) !important;
  font-size: clamp(28px, 2.65vw, 34px) !important;
  line-height: 1.16 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item,
html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item + .faq-item {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(31,117,214,0.14) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(23,49,84,0.065) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item:hover,
html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item.open {
  transform: translateY(-1px) !important;
  border-color: rgba(31,117,214,0.32) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 38px rgba(23,49,84,0.095) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 34px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 64px !important;
  padding: 16px 18px 16px 20px !important;
  gap: 18px !important;
  border: 0 !important;
  color: var(--navy) !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 850 !important;
  text-align: left !important;
  white-space: normal !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: none !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  border: 1px solid rgba(31,117,214,0.22) !important;
  border-radius: 50% !important;
  background: #f5fbff !important;
  color: #1f75d6 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item.open .faq-icon {
  border-color: #1f75d6 !important;
  background: #1f75d6 !important;
  color: #ffffff !important;
  transform: rotate(45deg) !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-answer {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.32s ease !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-item.open .faq-answer {
  max-height: 240px !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-answer-inner {
  max-width: 560px !important;
  padding: 0 74px 22px 22px !important;
  color: #4f6579 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-premium-cta {
  width: auto !important;
  max-width: none !important;
  margin: 22px 0 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-premium-cta .btn {
  min-height: 46px !important;
  padding: 13px 26px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section {
    padding: 62px 0 !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-premium-layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel,
  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel img {
    min-height: 320px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-header {
    grid-column: 1 !important;
    grid-row: 1 !important;
    padding: 0 !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section {
    padding: 48px 0 !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section > .container {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel,
  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-image-panel img {
    min-height: 240px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .section-title {
    font-size: 30px !important;
    margin-bottom: 20px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-question {
    min-height: 64px !important;
    padding: 16px 16px 16px 18px !important;
    font-size: 15px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .dealer-faq-side-list .faq-answer-inner {
    padding: 0 18px 18px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .dealer-faq-section .faq-premium-cta .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-grid article .pricing-extra-note {
  color: #111111 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section {
  padding: 24px 16px 20px !important;
  background: #f6fbff !important;
  border: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section > .container {
  max-width: 1520px !important;
  padding: 18px 24px 28px !important;
  border: 1px solid rgba(13,61,107,0.08) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.92) !important;
  box-shadow: 0 10px 28px rgba(10,39,70,0.08) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .section-header {
  margin: 0 auto 12px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .eyebrow {
  margin: 0 !important;
  color: #1267d8 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 0 !important;
  max-width: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article {
  justify-content: flex-start !important;
  min-height: 178px !important;
  padding: 8px 22px 0 !important;
  border-right: 1px solid rgba(18,103,216,0.13) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article:last-child {
  border-right: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid img {
  width: 92px !important;
  max-width: 92px !important;
  height: 58px !important;
  margin: 0 auto 16px !important;
  filter: none !important;
  object-fit: contain !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid h3 {
  margin: 0 0 9px !important;
  color: #071d3b !important;
  font-size: 18px !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid p {
  max-width: 165px !important;
  margin: 0 auto !important;
  color: #132848 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing {
  padding: 14px 16px 34px !important;
  background: #f6fbff !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing > .container {
  max-width: 1520px !important;
  padding: 14px 24px 28px !important;
  border: 1px solid rgba(13,61,107,0.08) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.92) !important;
  box-shadow: 0 10px 28px rgba(10,39,70,0.08) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .section-header {
  margin-bottom: 12px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .section-title {
  margin-bottom: 4px !important;
  font-size: clamp(26px, 2.3vw, 32px) !important;
  line-height: 1.1 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .section-sub {
  margin: 0 auto !important;
  color: #132848 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  max-width: none !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid::before {
  display: none !important;
  content: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr) !important;
  overflow: hidden !important;
  min-height: 176px !important;
  padding: 0 !important;
  border: 1px solid rgba(18,103,216,0.13) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
  width: 100% !important;
  height: 100% !important;
  min-height: 176px !important;
  object-fit: cover !important;
  margin: 0 !important;
  border-radius: 0 !important;
  filter: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: 16px 18px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  width: 44px !important;
  height: 44px !important;
  margin: 0 0 12px !important;
  padding: 8px !important;
  border: 1px solid rgba(18,103,216,0.16) !important;
  border-radius: 50% !important;
  background: #eef7ff !important;
  object-fit: contain !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3 {
  display: block !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 0 8px !important;
  color: #071d3b !important;
  font-size: 18px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  display: block !important;
  min-width: 0 !important;
  max-width: 170px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #132848 !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p strong {
  display: block !important;
  margin-bottom: 2px !important;
  color: #1267d8 !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  margin-top: 4px !important;
  color: #111111 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-note {
  margin: 10px auto 0 !important;
  color: #132848 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  text-align: center !important;
}

@media (max-width: 1180px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article:nth-child(3n) {
    border-right: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article:nth-child(n+4) {
    padding-top: 28px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section > .container,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing > .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article {
    min-height: 168px !important;
    padding: 14px 12px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article:nth-child(3n) {
    border-right: 1px solid rgba(18,103,216,0.13) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid article:nth-child(2n) {
    border-right: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid h3 {
    font-size: 17px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-grid p {
    font-size: 12.5px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    min-height: 170px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
    min-height: 170px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
    padding: 14px 14px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
  gap: 18px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  border-radius: 12px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
  width: 100% !important;
  height: 128px !important;
  min-height: 128px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-bottom: 1px solid rgba(18,103,216,0.10) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 154px !important;
  padding: 16px 18px 18px !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  width: 42px !important;
  height: 42px !important;
  margin: -38px auto 12px !important;
  background: #eef7ff !important;
  box-shadow: 0 0 0 6px #ffffff !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3 {
  max-width: 180px !important;
  margin: 0 auto 8px !important;
  font-size: 17px !important;
  line-height: 1.12 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  max-width: 185px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p strong {
  display: inline !important;
  margin: 0 4px 0 0 !important;
  font-size: 18px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  margin-top: 3px !important;
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
    height: 122px !important;
    min-height: 122px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
    min-height: 138px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
  display: grid !important;
  grid-template-columns: 46% 54% !important;
  flex-direction: initial !important;
  min-height: 210px !important;
  height: 210px !important;
  overflow: hidden !important;
  border: 1px solid rgba(18,103,216,0.13) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
  width: 100% !important;
  height: 210px !important;
  min-height: 210px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-right: 1px solid rgba(18,103,216,0.08) !important;
  border-bottom: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  align-items: flex-start !important;
  justify-content: center !important;
  min-height: 0 !important;
  padding: 16px 20px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  width: 50px !important;
  height: 50px !important;
  margin: 0 0 14px !important;
  padding: 9px !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3 {
  max-width: 150px !important;
  margin: 0 0 8px !important;
  font-size: 16px !important;
  line-height: 1.12 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  max-width: 150px !important;
  margin: 0 !important;
  font-size: 12.5px !important;
  line-height: 1.32 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p strong {
  display: block !important;
  margin: 0 0 2px !important;
  font-size: 17px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy h3 {
  max-width: 170px !important;
  font-size: 15px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  display: grid !important;
  grid-template-rows: 50px minmax(40px, auto) minmax(42px, auto) auto !important;
  align-content: center !important;
  align-items: start !important;
  row-gap: 6px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  grid-row: 1 !important;
  align-self: start !important;
  justify-self: start !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3 {
  grid-row: 2 !important;
  align-self: start !important;
  margin: 0 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p:not(.pricing-extra-note) {
  grid-row: 3 !important;
  align-self: start !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  grid-row: 4 !important;
  align-self: start !important;
  margin-top: 0 !important;
}

@media (max-width: 1180px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
    grid-template-columns: 46% 54% !important;
    min-height: 176px !important;
    height: 176px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
    height: 176px !important;
    min-height: 176px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
    padding: 14px 16px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
  grid-template-columns: 56% 44% !important;
  height: 188px !important;
  min-height: 188px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
  height: 188px !important;
  min-height: 188px !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  padding: 12px 16px 12px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  flex: 0 0 auto !important;
  width: 62px !important;
  height: 62px !important;
  margin: 0 0 8px !important;
  justify-self: auto !important;
  align-self: flex-start !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3 {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 42px !important;
  min-height: 42px !important;
  max-width: 150px !important;
  margin: 0 0 8px !important;
  font-size: 16px !important;
  line-height: 1.12 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  flex: 0 0 auto !important;
  max-width: 152px !important;
  margin: 0 !important;
  font-size: 12.5px !important;
  line-height: 1.3 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  margin-top: 3px !important;
  color: #132848 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy .pricing-extra-note {
  max-width: 132px !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy h3 {
  max-width: 180px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p strong {
  display: block !important;
  margin: 0 0 2px !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

@media (max-width: 700px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
    grid-template-columns: 54% 46% !important;
    height: 188px !important;
    min-height: 188px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
    height: 188px !important;
    min-height: 188px !important;
  }
}

/* Vehicle Shipping Pricing: keep image/text aligned with no clipping */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
  grid-template-columns: 48% minmax(0, 1fr) !important;
  height: auto !important;
  min-height: 184px !important;
  align-items: stretch !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
  height: 100% !important;
  min-height: 184px !important;
  object-fit: cover !important;
  object-position: center !important;
  align-self: stretch !important;
  border-right: 1px solid rgba(18,103,216,0.08) !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  min-width: 0 !important;
  padding: 14px 12px !important;
  justify-content: center !important;
  overflow: visible !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy h3,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy .pricing-extra-note {
  max-width: none !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy h3 {
  flex-basis: auto !important;
  min-height: 0 !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
  font-size: 12px !important;
  line-height: 1.3 !important;
}

@media (max-width: 1180px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid {
    grid-template-columns: repeat(4, minmax(260px, 1fr)) !important;
    overflow-x: auto !important;
    padding-bottom: 8px !important;
    scrollbar-width: thin !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
    grid-template-columns: 48% minmax(0, 1fr) !important;
    min-height: 170px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-photo {
    min-height: 170px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
    padding: 12px 12px !important;
  }
}

@media (max-width: 420px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article {
    grid-template-columns: 40% minmax(0, 1fr) !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
    width: 54px !important;
    height: 54px !important;
    margin-bottom: 7px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy h3,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-visual-grid article:nth-child(3) .pricing-copy h3 {
    font-size: 15px !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy p,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .pricing-extra-note {
    font-size: 12px !important;
    line-height: 1.3 !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  width: 62px !important;
  height: 62px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain !important;
}

@media (max-width: 420px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
    width: 54px !important;
    height: 54px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
  justify-content: flex-start !important;
  padding-top: 22px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
  margin: 0 0 10px !important;
  align-self: flex-start !important;
  width: auto !important;
  height: 62px !important;
  max-width: 76px !important;
  object-fit: contain !important;
}

@media (max-width: 1180px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy {
    padding-top: 18px !important;
  }
}

@media (max-width: 420px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .pricing-copy .price-real-icon {
    width: auto !important;
    height: 54px !important;
    max-width: 66px !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) #pricing .section-title {
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.15 !important;
  margin-bottom: var(--space-sm) !important;
}

/* Cinematic CTA banner */
html body .cta-banner,
html body.home-page .cta-banner,
html body.home-page main.service-copy-page .services-final-cta.cta-banner,
html body.home-page main.service-copy-page .quote-cta-section.services-final-cta,
html body.help-centre-page .cta-banner {
  position: relative !important;
  overflow: hidden !important;
  min-height: 174px !important;
  padding: 0 !important;
  background: #062447 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .cta-banner-bg,
html body.home-page .cta-banner .cta-banner-bg,
html body.home-page main.service-copy-page .services-final-cta .cta-banner-bg {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
  filter: none !important;
}

html body .cta-banner .cta-banner-wash,
html body.home-page .cta-banner .cta-banner-wash,
html body.home-page main.service-copy-page .services-final-cta .cta-banner-wash {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background:
    linear-gradient(90deg, #061f43 0%, #061f43 31%, rgba(6,31,67,0.92) 43%, rgba(6,31,67,0.58) 57%, rgba(6,31,67,0.24) 70%, rgba(6,31,67,0.04) 86%),
    linear-gradient(180deg, rgba(2,12,28,0.20) 0%, rgba(2,12,28,0.30) 100%) !important;
  opacity: 1 !important;
}

html body .cta-banner .cta-inner,
html body.home-page .cta-banner .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .container {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  min-height: 174px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 20px 68px !important;
}

html body .cta-banner .cta-content,
html body.home-page .cta-banner .cta-content,
html body.home-page main.service-copy-page .services-final-cta .cta-content {
  width: min(100%, 420px) !important;
  max-width: 420px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .cta-content::before,
html body .cta-banner .cta-content::after,
html body.home-page main.service-copy-page .services-final-cta .cta-content::before,
html body.home-page main.service-copy-page .services-final-cta .cta-content::after {
  display: none !important;
  content: none !important;
}

html body .cta-banner .eyebrow,
html body.home-page .cta-banner .eyebrow,
html body.home-page main.service-copy-page .services-final-cta .eyebrow {
  display: none !important;
}

html body .cta-banner h2,
html body.home-page .cta-banner h2,
html body.home-page main.service-copy-page .services-final-cta h2 {
  max-width: 380px !important;
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-size: clamp(24px, 2.65vw, 42px) !important;
  line-height: 0.94 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

html body .cta-banner h2 span,
html body.home-page .cta-banner h2 span,
html body.home-page main.service-copy-page .services-final-cta h2 span {
  display: block !important;
  color: #69bdff !important;
}

html body .cta-banner p,
html body.home-page .cta-banner p,
html body.home-page main.service-copy-page .services-final-cta p {
  max-width: 375px !important;
  margin: 0 0 16px !important;
  color: rgba(255,255,255,0.95) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

html body .cta-banner .cta-btns,
html body.home-page .cta-banner .cta-btns,
html body.home-page main.service-copy-page .services-final-cta .cta-btns {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
}

html body .cta-banner .btn,
html body.home-page .cta-banner .btn,
html body.home-page main.service-copy-page .services-final-cta .btn {
  flex: 0 0 auto !important;
  width: auto !important;
  min-height: 52px !important;
  padding: 15px 34px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

html body .cta-banner .btn-primary,
html body.home-page .cta-banner .btn-primary,
html body.home-page main.service-copy-page .services-final-cta .btn-primary {
  color: #ffffff !important;
  background: #1267d8 !important;
  border: 1px solid #1267d8 !important;
  box-shadow: 0 14px 28px rgba(18,103,216,0.26) !important;
}

html body .cta-banner .btn-outline,
html body.home-page .cta-banner .btn-outline,
html body.home-page main.service-copy-page .services-final-cta .btn-outline {
  color: #0c2443 !important;
  background: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.78) !important;
  box-shadow: 0 12px 24px rgba(2,12,28,0.14) !important;
}

  @media (max-width: 760px) {
  html body .cta-banner,
  html body.home-page .cta-banner,
  html body.home-page main.service-copy-page .services-final-cta.cta-banner {
    min-height: 320px !important;
  }

  html body .cta-banner .cta-banner-bg,
  html body.home-page .cta-banner .cta-banner-bg {
    inset: 0 !important;
    background-position: center center !important;
  }

  html body .cta-banner .cta-banner-wash,
  html body.home-page .cta-banner .cta-banner-wash {
    background:
      linear-gradient(180deg, #061f43 0%, #061f43 42%, rgba(6,31,67,0.82) 56%, rgba(6,31,67,0.42) 74%, rgba(6,31,67,0.12) 100%) !important;
  }

  html body .cta-banner .cta-inner,
  html body.home-page .cta-banner .cta-inner,
  html body.home-page main.service-copy-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page .services-final-cta .container {
    min-height: 320px !important;
    align-items: flex-start !important;
    padding: 28px 22px !important;
  }

  html body .cta-banner h2,
  html body.home-page .cta-banner h2 {
    font-size: 34px !important;
  }
}

html body.home-page .cta-banner .cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: auto !important;
  max-width: 100% !important;
  overflow: visible !important;
}

html body.home-page .cta-banner .cta-btns .btn {
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

html body.home-page .cta-banner .cta-btns .btn svg {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
}

/* Unified final CTA design across pages */
html body .cta-banner,
html body .quote-page .quote-cta-section:has(.quote-cta-panel) {
  position: relative !important;
  overflow: hidden !important;
  min-height: 174px !important;
  padding: 0 !important;
  background: #062447 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .quote-page .quote-cta-section:has(.quote-cta-panel)::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: url("../images/Home banner.png") center right / cover no-repeat !important;
  opacity: 1 !important;
}

html body .quote-page .quote-cta-section:has(.quote-cta-panel)::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, #061f43 0%, #061f43 31%, rgba(6,31,67,0.92) 43%, rgba(6,31,67,0.58) 57%, rgba(6,31,67,0.24) 70%, rgba(6,31,67,0.04) 86%),
    linear-gradient(180deg, rgba(2,12,28,0.20) 0%, rgba(2,12,28,0.30) 100%) !important;
}

html body .cta-banner .cta-banner-bg {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background-image: url("../images/Home banner.png") !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
}

html body .cta-banner .cta-banner-wash {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background:
    linear-gradient(90deg, #061f43 0%, #061f43 31%, rgba(6,31,67,0.92) 43%, rgba(6,31,67,0.58) 57%, rgba(6,31,67,0.24) 70%, rgba(6,31,67,0.04) 86%),
    linear-gradient(180deg, rgba(2,12,28,0.20) 0%, rgba(2,12,28,0.30) 100%) !important;
  opacity: 1 !important;
}

html body .cta-banner .cta-inner,
html body .quote-page .quote-cta-section:has(.quote-cta-panel) .container {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 174px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 20px 68px !important;
}

html body .cta-banner .cta-content,
html body .quote-page .quote-cta-section .quote-cta-panel {
  width: min(100%, 460px) !important;
  max-width: 460px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .cta-content::before,
html body .cta-banner .cta-content::after,
html body .quote-page .quote-cta-section .quote-cta-panel::before,
html body .quote-page .quote-cta-section .quote-cta-panel::after {
  display: none !important;
  content: none !important;
}

html body .cta-banner .eyebrow,
html body .quote-page .quote-cta-section .quote-cta-panel .eyebrow {
  display: none !important;
}

html body .cta-banner h2,
html body .quote-page .quote-cta-section .quote-cta-panel h2 {
  max-width: 390px !important;
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-size: clamp(24px, 2.65vw, 42px) !important;
  line-height: 0.94 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

html body .cta-banner h2 span {
  display: block !important;
  color: #69bdff !important;
}

html body .cta-banner p,
html body .quote-page .quote-cta-section .quote-cta-panel p {
  max-width: 390px !important;
  margin: 0 0 16px !important;
  color: rgba(255,255,255,0.95) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

html body .cta-banner .cta-btns,
html body .quote-page .quote-cta-section .quote-cta-panel {
  gap: 10px !important;
}

html body .cta-banner .cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
}

html body .quote-page .quote-cta-section .quote-cta-panel .btn {
  margin-top: 0 !important;
}

html body .cta-banner .btn,
html body .quote-page .quote-cta-section .quote-cta-panel .btn {
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

html body .cta-banner .btn-primary,
html body .quote-page .quote-cta-section .quote-cta-panel .btn-primary {
  color: #ffffff !important;
  background: #1267d8 !important;
  border: 1px solid #1267d8 !important;
  box-shadow: 0 14px 28px rgba(18,103,216,0.26) !important;
}

html body .cta-banner .btn-outline {
  color: #0c2443 !important;
  background: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.78) !important;
  box-shadow: 0 12px 24px rgba(2,12,28,0.14) !important;
}

html body .cta-banner .btn svg {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
}


@media (max-width: 760px) {
  html body .cta-banner,
  html body .quote-page .quote-cta-section:has(.quote-cta-panel) {
    min-height: 320px !important;
  }

  html body .cta-banner .cta-banner-wash,
  html body .quote-page .quote-cta-section:has(.quote-cta-panel)::after {
    background:
      linear-gradient(180deg, #061f43 0%, #061f43 42%, rgba(6,31,67,0.82) 56%, rgba(6,31,67,0.42) 74%, rgba(6,31,67,0.12) 100%) !important;
  }

  html body .cta-banner .cta-inner,
  html body .quote-page .quote-cta-section:has(.quote-cta-panel) .container {
    min-height: 320px !important;
    align-items: flex-start !important;
    padding: 28px 22px !important;
  }

  html body .cta-banner h2,
  html body .quote-page .quote-cta-section .quote-cta-panel h2 {
    font-size: 34px !important;
  }

  html body .cta-banner .cta-btns {
    flex-wrap: nowrap !important;
  }
}

/* Match every final CTA to the homepage CTA design */
html body .cta-banner,
html body.home-page .cta-banner,
html body.help-centre-page .cta-banner,
html body .quote-page .quote-cta-section.cta-banner,
html body.home-page main.service-copy-page .services-final-cta.cta-banner {
  height: 390px !important;
  position: relative !important;
  min-height: 390px !important;
  padding: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: var(--navy-deep) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .cta-banner-media,
html body .cta-banner .cta-banner-bg,
html body.home-page .cta-banner .cta-banner-media,
html body.home-page main.service-copy-page .services-final-cta .cta-banner-bg,
html body.help-centre-page .help-final-cta .cta-banner-bg,
html body .quote-page .quote-cta-section.cta-banner .cta-banner-bg {
  position: absolute !important;
  inset: 0 0 0 28% !important;
  z-index: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background-image: url("../images/4.jpg") !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
  filter: none !important;
}

html body .cta-banner .cta-banner-media img,
html body.home-page .cta-banner .cta-banner-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body .cta-banner .cta-banner-wash,
html body.home-page .cta-banner .cta-banner-wash,
html body.home-page main.service-copy-page .services-final-cta .cta-banner-wash,
html body.help-centre-page .help-final-cta .cta-banner-wash,
html body .quote-page .quote-cta-section.cta-banner .cta-banner-wash {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  height: auto !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, var(--navy-deep) 0%, var(--navy-deep) 27%, rgba(16,35,60,0.98) 38%, rgba(16,35,60,0.78) 49%, rgba(16,35,60,0.22) 67%, rgba(16,35,60,0) 82%) !important;
  opacity: 1 !important;
}

html body .cta-banner .cta-inner,
html body.home-page .cta-banner .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page .services-final-cta .container,
html body.help-centre-page .help-final-cta .cta-inner,
html body .quote-page .quote-cta-section.cta-banner .cta-inner {
  height: 390px !important;
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1320px !important;
  min-height: 390px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 auto !important;
  padding: 46px 40px !important;
}

html body .cta-banner .cta-content,
html body.home-page .cta-banner .cta-content,
html body.home-page main.service-copy-page .services-final-cta .cta-content,
html body.help-centre-page .help-final-cta .cta-content,
html body .quote-page .quote-cta-section.cta-banner .cta-content,
html body .quote-page .quote-cta-section.cta-banner .quote-cta-panel {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 45% !important;
  max-width: 590px !important;
  margin: 0 !important;
  padding: 0 30px 0 0 !important;
  color: var(--white) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .eyebrow,
html body.home-page .cta-banner .eyebrow,
html body.home-page main.service-copy-page .services-final-cta .eyebrow,
html body.help-centre-page .help-final-cta .eyebrow,
html body .quote-page .quote-cta-section.cta-banner .eyebrow {
  display: inline-block !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  color: #65c9f5 !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 2px !important;
  text-align: left !important;
}

html body .cta-banner h2,
html body.home-page .cta-banner h2,
html body.home-page main.service-copy-page .services-final-cta h2,
html body.help-centre-page .help-final-cta h2,
html body .quote-page .quote-cta-section.cta-banner h2 {
  max-width: 590px !important;
  margin: 0 0 14px !important;
  color: var(--white) !important;
  font-size: clamp(30px, 3.3vw, 48px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

html body .cta-banner h2 span,
html body.home-page .cta-banner h2 span,
html body.home-page main.service-copy-page .services-final-cta h2 span,
html body.help-centre-page .help-final-cta h2 span {
  display: inline !important;
  color: #48b9ed !important;
}

html body .cta-banner p,
html body.home-page .cta-banner p,
html body.home-page main.service-copy-page .services-final-cta p,
html body.help-centre-page .help-final-cta p,
html body .quote-page .quote-cta-section.cta-banner p {
  max-width: 500px !important;
  margin: 0 0 22px !important;
  color: rgba(255,255,255,0.76) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  text-align: left !important;
}

html body .cta-banner .cta-btns,
html body.home-page .cta-banner .cta-btns,
html body.home-page main.service-copy-page .services-final-cta .cta-btns,
html body.help-centre-page .help-final-cta .cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: visible !important;
}

html body .cta-banner .btn,
html body.home-page .cta-banner .btn,
html body.home-page main.service-copy-page .services-final-cta .btn,
html body.help-centre-page .help-final-cta .btn,
html body .quote-page .quote-cta-section.cta-banner .btn {
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

html body .cta-banner .btn-primary,
html body.home-page .cta-banner .btn-primary,
html body.home-page main.service-copy-page .services-final-cta .btn-primary,
html body.help-centre-page .help-final-cta .btn-primary,
html body .quote-page .quote-cta-section.cta-banner .btn-primary {
  color: #ffffff !important;
  background: #2f9bd2 !important;
  border-color: #2f9bd2 !important;
}

html body .cta-banner .btn-outline,
html body.home-page .cta-banner .btn-outline,
html body.home-page main.service-copy-page .services-final-cta .btn-outline,
html body.help-centre-page .help-final-cta .btn-outline {
  color: var(--navy-deep) !important;
  background: #ffffff !important;
  border-color: #ffffff !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
  flex-wrap: wrap !important;
}

@media (max-width: 900px) {
  html body .cta-banner,
  html body.home-page .cta-banner,
  html body.help-centre-page .cta-banner,
  html body .quote-page .quote-cta-section.cta-banner,
  html body.home-page main.service-copy-page .services-final-cta.cta-banner {
    height: 430px !important;
    min-height: 430px !important;
  }

  html body .cta-banner .cta-banner-media,
  html body .cta-banner .cta-banner-bg {
    left: 24% !important;
  }

  html body .cta-banner .cta-content,
  html body.home-page main.service-copy-page .services-final-cta .cta-content,
  html body.help-centre-page .help-final-cta .cta-content,
  html body .quote-page .quote-cta-section.cta-banner .quote-cta-panel {
    width: 58% !important;
  }
}

@media (max-width: 640px) {
  html body .cta-banner,
  html body.home-page .cta-banner,
  html body.help-centre-page .cta-banner,
  html body .quote-page .quote-cta-section.cta-banner,
  html body.home-page main.service-copy-page .services-final-cta.cta-banner {
    height: auto !important;
    min-height: 0 !important;
  }

  html body .cta-banner .cta-banner-media,
  html body .cta-banner .cta-banner-bg {
    position: relative !important;
    inset: auto !important;
    height: 190px !important;
  }

  html body .cta-banner .cta-banner-wash {
    inset: 0 0 auto !important;
    height: 190px !important;
    background: linear-gradient(180deg, rgba(16,35,60,0.02) 28%, rgba(16,35,60,0.80) 100%) !important;
  }

  html body .cta-banner .cta-inner,
  html body.home-page main.service-copy-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page .services-final-cta .container,
  html body.help-centre-page .help-final-cta .cta-inner,
  html body .quote-page .quote-cta-section.cta-banner .cta-inner {
    height: auto !important;
    display: block !important;
    min-height: 0 !important;
    padding: 32px 20px 40px !important;
  }

  html body .cta-banner .cta-content,
  html body.home-page main.service-copy-page .services-final-cta .cta-content,
  html body.help-centre-page .help-final-cta .cta-content,
  html body .quote-page .quote-cta-section.cta-banner .quote-cta-panel {
    width: 100% !important;
    max-width: none !important;
    padding-right: 0 !important;
  }

  html body .cta-banner h2,
  html body.home-page main.service-copy-page .services-final-cta h2,
  html body.help-centre-page .help-final-cta h2,
  html body .quote-page .quote-cta-section.cta-banner h2 {
    font-size: clamp(28px, 8vw, 38px) !important;
  }

  html body .cta-banner .cta-btns,
  html body.home-page main.service-copy-page .services-final-cta .cta-btns,
  html body.help-centre-page .help-final-cta .cta-btns {
    align-items: stretch !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100% !important;
  }

  html body .cta-banner .btn,
  html body.home-page main.service-copy-page .services-final-cta .btn,
  html body.help-centre-page .help-final-cta .btn,
  html body .quote-page .quote-cta-section.cta-banner .btn {
    justify-content: center !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
    font-size: 10.5px !important;
  }
}

/* Keep CTA buttons aligned to the left edge of the CTA copy */
html body .cta-banner .cta-content .cta-btns,
html body.home-page .cta-banner .cta-content .cta-btns,
html body.home-page main.service-copy-page .services-final-cta .cta-content .cta-btns,
html body.help-centre-page .help-final-cta .cta-content .cta-btns {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: start !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  text-align: left !important;
  transform: none !important;
}

html body.about-page .about-final-cta .eyebrow {
  margin-bottom: 30px !important;
}

/* Services and dealer final CTA polish */
html body.home-page main.service-copy-page.services-page .services-final-cta.cta-banner {
  height: 360px !important;
  min-height: 360px !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.services-page .services-final-cta .container {
  height: 360px !important;
  min-height: 360px !important;
  align-items: center !important;
  padding: 38px 40px !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta .cta-content {
  width: min(100%, 520px) !important;
  max-width: 520px !important;
  min-height: 0 !important;
  padding: 0 24px 0 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta .eyebrow {
  margin-bottom: 14px !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta h2 {
  max-width: 520px !important;
  margin-bottom: 14px !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1.08 !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta p {
  max-width: 460px !important;
  margin-bottom: 20px !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta .cta-btns,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  gap: 10px !important;
}

html body.home-page main.service-copy-page.services-page .services-final-cta .cta-btns .btn,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns .btn,
html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn {
  width: auto !important;
  min-width: 0 !important;
  min-height: 44px !important;
  padding: 11px 18px !important;
  border-radius: 999px !important;
  font-size: 12.5px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  margin: 0 !important;
  gap: 10px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn-primary,
html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn-outline {
  min-width: 0 !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn-outline {
  color: var(--navy-deep) !important;
  background: #ffffff !important;
  border-color: #ffffff !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page .services-final-cta.cta-banner {
    height: 410px !important;
    min-height: 410px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.services-page .services-final-cta .container {
    height: 410px !important;
    min-height: 410px !important;
    padding: 34px 26px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-content {
    width: 62% !important;
    min-height: 0 !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page .services-final-cta.cta-banner {
    height: auto !important;
    min-height: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.services-page .services-final-cta .container {
    height: auto !important;
    min-height: 0 !important;
    padding: 30px 20px 38px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-content {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    padding: 0 !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta h2 {
    font-size: clamp(27px, 8vw, 36px) !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-btns,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-final-cta .cta-btns .btn,
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-btns .btn,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns.cta-btns-3 .btn {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
  }
}

/* Left-align Services and Shipping Across Canada final CTA buttons */
html body.home-page main.service-copy-page.services-page:not(.dealer-page) .services-final-cta .cta-btns,
html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns.route-final-buttons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  justify-items: start !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.dealer-page) .services-final-cta .cta-btns .btn,
html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns.route-final-buttons .btn {
  flex: 0 1 auto !important;
  width: auto !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page:not(.dealer-page) .services-final-cta .cta-btns,
  html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns.route-final-buttons {
    align-items: flex-start !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.dealer-page) .services-final-cta .cta-btns .btn,
  html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-btns.route-final-buttons .btn {
    width: auto !important;
    min-width: min(100%, 220px) !important;
  }
}

/* Strong services.html CTA button alignment override */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-content > .cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 10px !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-content > .cta-btns .btn {
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-content > .cta-btns {
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
  }

  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-content > .cta-btns .btn {
    width: auto !important;
    min-width: min(100%, 220px) !important;
  }
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .service-final-buttons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 auto 0 0 !important;
  padding: 0 !important;
  gap: 10px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .service-final-buttons .btn {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .service-final-buttons {
    flex-direction: column !important;
    align-items: flex-start !important;
    width: fit-content !important;
  }
}

/* Final CTA alignment lock: same footer CTA image, copy edge, and button row on every page */
html body .cta-banner {
  height: 390px !important;
  min-height: 390px !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background: var(--navy-deep) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .cta-banner-bg,
html body .cta-banner .cta-banner-media {
  position: absolute !important;
  inset: 0 0 0 28% !important;
  z-index: 0 !important;
  display: block !important;
  background: url("../images/4.jpg") center / cover no-repeat !important;
  opacity: 1 !important;
}

html body .cta-banner .cta-banner-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body .cta-banner .cta-banner-wash {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  background: linear-gradient(90deg, var(--navy-deep) 0%, var(--navy-deep) 27%, rgba(16,35,60,0.98) 38%, rgba(16,35,60,0.78) 49%, rgba(16,35,60,0.22) 67%, rgba(16,35,60,0) 82%) !important;
}

html body .cta-banner .cta-inner {
  height: 390px !important;
  min-height: 390px !important;
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 46px 40px !important;
}

html body .cta-banner .cta-content,
html body .cta-banner .quote-cta-panel {
  width: 45% !important;
  max-width: 590px !important;
  margin: 0 !important;
  padding: 0 30px 0 0 !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body .cta-banner .eyebrow {
  display: inline-block !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  color: #65c9f5 !important;
  background: none !important;
  border: 0 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 2px !important;
  text-align: left !important;
}

html body .cta-banner h2 {
  max-width: 590px !important;
  margin: 0 0 14px !important;
  color: var(--white) !important;
  font-size: clamp(30px, 3.3vw, 48px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

html body .cta-banner h2 span {
  display: inline !important;
  color: #48b9ed !important;
}

html body .cta-banner p {
  max-width: 500px !important;
  margin: 0 0 22px !important;
  color: rgba(255,255,255,0.76) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  text-align: left !important;
}

html body .cta-banner .cta-btns,
html body .cta-banner .service-final-buttons,
html body .cta-banner .route-final-buttons,
html body .cta-banner .cta-btns-3 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

html body .cta-banner .cta-btns-3 {
  flex-wrap: wrap !important;
}

html body .cta-banner .btn {
  flex: 0 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

html body .cta-banner .btn-primary {
  color: #ffffff !important;
  background: #2f9bd2 !important;
  border-color: #2f9bd2 !important;
}

html body .cta-banner .btn-outline {
  color: var(--navy-deep) !important;
  background: #ffffff !important;
  border-color: #ffffff !important;
}

@media (max-width: 900px) {
  html body .cta-banner {
    height: 430px !important;
    min-height: 430px !important;
  }

  html body .cta-banner .cta-banner-bg,
  html body .cta-banner .cta-banner-media {
    left: 24% !important;
  }

  html body .cta-banner .cta-content,
  html body .cta-banner .quote-cta-panel {
    width: 58% !important;
  }
}

@media (max-width: 640px) {
  html body .cta-banner {
    height: auto !important;
    min-height: 0 !important;
  }

  html body .cta-banner .cta-banner-bg,
  html body .cta-banner .cta-banner-media {
    position: relative !important;
    inset: auto !important;
    height: 190px !important;
  }

  html body .cta-banner .cta-banner-wash {
    inset: 0 0 auto !important;
    height: 190px !important;
    background: linear-gradient(180deg, rgba(16,35,60,0.02) 28%, rgba(16,35,60,0.80) 100%) !important;
  }

  html body .cta-banner .cta-inner {
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    padding: 32px 20px 40px !important;
  }

  html body .cta-banner .cta-content,
  html body .cta-banner .quote-cta-panel {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  html body .cta-banner h2 {
    font-size: clamp(28px, 8vw, 38px) !important;
  }

  html body .cta-banner .cta-btns,
  html body .cta-banner .service-final-buttons,
  html body .cta-banner .route-final-buttons,
  html body .cta-banner .cta-btns-3 {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 8px !important;
  }

  html body .cta-banner .btn {
    flex: 1 1 0 !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
    font-size: 10.5px !important;
    white-space: normal !important;
  }
}

/* Services page final CTA: keep copy and buttons on the same left edge */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .eyebrow,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta h2,
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .service-final-buttons {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .services-final-cta .service-final-buttons {
    width: 100% !important;
    align-items: stretch !important;
  }
}

/* Shipping Across Canada final CTA: keep copy and buttons on the same left edge */
html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.routes-page .services-final-cta .container {
  justify-content: flex-start !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 0 30px 0 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .eyebrow,
html body.home-page main.service-copy-page.routes-page .services-final-cta h2,
html body.home-page main.service-copy-page.routes-page .services-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-content {
    align-items: flex-start !important;
    padding: 0 !important;
    text-align: left !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-final-cta .eyebrow,
  html body.home-page main.service-copy-page.routes-page .services-final-cta h2,
  html body.home-page main.service-copy-page.routes-page .services-final-cta p {
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons {
    width: 100% !important;
    align-self: stretch !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* About page final CTA: keep copy and buttons on the same left edge */
html body.about-page .about-final-cta .cta-inner,
html body.about-page .about-final-cta .container {
  justify-content: flex-start !important;
}

html body.about-page .about-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 0 30px 0 0 !important;
  text-align: left !important;
}

html body.about-page .about-final-cta .eyebrow,
html body.about-page .about-final-cta h2,
html body.about-page .about-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.about-page .about-final-cta .cta-btns {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

@media (max-width: 640px) {
  html body.about-page .about-final-cta .cta-content {
    padding: 0 !important;
  }

  html body.about-page .about-final-cta .cta-btns {
    width: 100% !important;
    align-items: stretch !important;
  }
}

/* Dealer & Business final CTA: keep copy and buttons on the same left edge */
html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.dealer-page .services-final-cta .container {
  justify-content: flex-start !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 0 30px 0 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .eyebrow,
html body.home-page main.service-copy-page.dealer-page .services-final-cta h2,
html body.home-page main.service-copy-page.dealer-page .services-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns-3 {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

/* Help Centre final CTA: keep copy and buttons on the same left edge */
html body.help-centre-page .help-final-cta {
  margin-top: 56px !important;
}

html body.help-centre-page .help-final-cta .cta-inner,
html body.help-centre-page .help-final-cta .container {
  justify-content: flex-start !important;
}

html body.help-centre-page .help-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 0 30px 0 0 !important;
  text-align: left !important;
}

html body.help-centre-page .help-final-cta .eyebrow,
html body.help-centre-page .help-final-cta h2,
html body.help-centre-page .help-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.help-centre-page .help-final-cta .cta-btns {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

@media (max-width: 640px) {
  html body.help-centre-page .help-final-cta {
    margin-top: 36px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-content,
  html body.help-centre-page .help-final-cta .cta-content {
    padding: 0 !important;
  }

  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns-3,
  html body.help-centre-page .help-final-cta .cta-btns {
    width: 100% !important;
    align-items: stretch !important;
  }
}

/* Help Centre actual page scope: main has the help-centre-page class */
html body main.help-centre-page .help-final-cta {
  margin-top: 56px !important;
}

html body main.help-centre-page .help-final-cta .cta-inner,
html body main.help-centre-page .help-final-cta .container {
  justify-content: flex-start !important;
}

html body main.help-centre-page .help-final-cta .cta-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding: 0 30px 0 0 !important;
  text-align: left !important;
}

html body main.help-centre-page .help-final-cta .eyebrow,
html body main.help-centre-page .help-final-cta h2,
html body main.help-centre-page .help-final-cta p {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body main.help-centre-page .help-final-cta .cta-btns {
  align-self: flex-start !important;
  justify-content: flex-start !important;
  justify-items: flex-start !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
}

@media (max-width: 640px) {
  html body main.help-centre-page .help-final-cta {
    margin-top: 36px !important;
  }

  html body main.help-centre-page .help-final-cta .cta-content {
    padding: 0 !important;
  }

  html body main.help-centre-page .help-final-cta .cta-btns {
    width: 100% !important;
    align-items: stretch !important;
  }
}


/* =========================================================
   SPLIT HERO â€” shared by About / Services / Routes / Dealers
   Left: eyebrow + title + copy + side-by-side CTAs + stat cards
   Right: image bleeding to the viewport edge with a soft fade
   ========================================================= */
.hero-split {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: var(--home-bg, #f5fbff) !important;
}
.hero-split .container {
  position: relative;
  z-index: 2;
  max-width: 1320px !important;
  padding-top: 152px !important;
  padding-bottom: 64px !important;
}
/* image column */
.hero-split-media {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(53%, 940px);
  z-index: 1;
}
.hero-split-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.hero-split-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, var(--home-bg, #f5fbff) 0%, rgba(245,251,255,0.86) 9%, rgba(245,251,255,0.34) 20%, rgba(245,251,255,0) 34%),
    linear-gradient(180deg, rgba(245,251,255,0.55) 0%, rgba(245,251,255,0) 22%);
}

html body .hero-split .container { max-width: 1320px !important; }
.hero-split-copy { max-width: 620px !important; }
.hero-split-eyebrow {
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  margin-bottom: 18px;
}
.hero-split-title {
  color: var(--navy);
  font-size: clamp(38px, 4.4vw, 60px);
  font-weight: 900;
  line-height: 1.06;
  letter-spacing: -1px;
  margin-bottom: 18px;
}
.hero-split-title span { display: block; }
.hero-split-title .accent { color: var(--blue-dark); }
.hero-split-sub {
  max-width: 520px !important;
  color: #415970;
  font-size: 17px;
  line-height: 1.65;
  margin-bottom: 28px;
}

/* side-by-side CTAs */
.hero-split-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-bottom: 38px;
}
.hero-split-actions .btn-primary { box-shadow: 0 12px 30px rgba(23,49,84,0.18); }
.hero-split-actions .btn-outline {
  background: var(--white);
  box-shadow: 0 10px 26px rgba(23,49,84,0.08);
}
.hero-split-actions .btn-outline svg { color: var(--blue-dark); }

/* stat card strip */
.hero-split-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  max-width: 620px !important;
}
.hs-stat {
  background: var(--white);
  border: 1px solid rgba(47,155,210,0.16);
  border-radius: 14px;
  padding: 18px 10px 16px;
  text-align: center;
  box-shadow: 0 14px 34px rgba(23,49,84,0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.hs-stat:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(23,49,84,0.13);
}
.hs-stat-icon { color: var(--blue-dark); margin-bottom: 10px; }
.hs-stat-icon svg { width: 26px; height: 26px; }
.hs-stat-num {
  color: var(--navy);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.3px;
}
.hs-stat-num span { font-size: 15px; }
.hs-stat-lbl {
  color: var(--text-mid);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  margin-top: 5px;
}

@media (max-width: 1180px) {
  .hero-split-media { width: 46%; }
  .hero-split-copy,
  .hero-split-stats { max-width: 540px !important; }
  .hs-stat { padding: 16px 8px 14px; }
  .hs-stat-num { font-size: 16px; }
  .hs-stat-lbl { font-size: 11px; }
}
@media (max-width: 900px) {
  /* stack: image on top, copy below */
  .hero-split {
    display: flex;
    flex-direction: column;
  }
  .hero-split .container {
    padding-top: 0 !important;
    padding-bottom: 12px !important;
  }
  .hero-split-media {
    position: relative;
    order: -1;
    width: auto;
    height: 230px;
    margin: 100px var(--container-pad) 28px;
    border-radius: 18px;
    overflow: hidden;
  }
  .hero-split-media::after {
    background: linear-gradient(180deg, rgba(23,49,84,0.10), rgba(23,49,84,0.02));
  }
  .hero-split-copy,
  .hero-split-stats,
  .hero-split-sub { max-width: 100% !important; }
  .hero-split-actions .btn { flex: 1 1 auto; justify-content: center; }
  .hero-split-stats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
  .hero-split-media { height: 190px; }
  .hero-split-actions .btn { flex: 1 1 100%; }
}

/* Services / Routes / Dealer pages carry an extra zoom (body 1.15 x main 1.1 = 1.265).
   Cancel the inner 1.1 on the hero only, so the split hero renders at exactly the
   same scale as the About page - identical font sizes, spacing and column split. */
html body.home-page main.service-copy-page .hero-split {
  zoom: 0.909091;
}
html body.home-page main.service-copy-page .hero-split .container {
  width: 100% !important;
  max-width: 1320px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding-left: var(--container-pad) !important;
  padding-right: var(--container-pad) !important;
}

/* Dealer final CTA: allow the third button row to fit without clipping. */
html body.home-page main.service-copy-page.dealer-page .services-final-cta.cta-banner {
  height: auto !important;
  min-height: 400px !important;
  overflow: hidden !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.dealer-page .services-final-cta .container {
  height: auto !important;
  min-height: 400px !important;
  padding-top: 46px !important;
  padding-bottom: 42px !important;
}

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns-3 {
  display: flex !important;
  flex-wrap: wrap !important;
  row-gap: 16px !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page .services-final-cta.cta-banner {
    min-height: 430px !important;
  }

  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .container {
    min-height: 430px !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.dealer-page .services-final-cta.cta-banner,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .container {
    min-height: 0 !important;
  }

  html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.dealer-page .services-final-cta .container {
    padding-bottom: 46px !important;
  }

html body.home-page main.service-copy-page.dealer-page .services-final-cta .cta-btns-3 {
    row-gap: 10px !important;
  }
}

/* Dealer coverage: give the right-side image a little more width. */
html body.home-page main.service-copy-page.dealer-page #dealer-coverage .dealer-coverage-panel {
  grid-template-columns: minmax(0, 0.76fr) minmax(0, 1.44fr) !important;
  gap: 20px !important;
}

html body.home-page main.service-copy-page.dealer-page #dealer-coverage .dealer-coverage-map img {
  width: 100% !important;
  height: 282px !important;
  max-height: none !important;
  border-radius: 8px !important;
  object-fit: contain !important;
  object-position: center right !important;
}

@media (max-width: 900px) {
  html body.home-page main.service-copy-page.dealer-page #dealer-coverage .dealer-coverage-panel {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.dealer-page #dealer-coverage .dealer-coverage-map img {
    height: 240px !important;
    object-position: center !important;
  }
}

/* Sticky quote bar: show immediately on first scroll across all pages. */
html body #sticky-search {
  transition: max-height 0.08s ease, opacity 0.08s ease !important;
}

/* Get Quote page hero: clean balanced layout. */
html body .quote-page .quote-hero-redesign {
  min-height: 620px !important;
  padding: calc(var(--nav-height) + 54px) 0 58px !important;
  overflow: hidden !important;
  background:
    linear-gradient(90deg, #ffffff 0%, #ffffff 52%, #edf8fd 52%, #edf8fd 100%) !important;
}

html body .quote-page .quote-hero-redesign::before,
html body .quote-page .quote-hero-redesign::after,
html body .quote-page .quote-hero-redesign .quote-hero-bg-panel {
  display: none !important;
}

html body .quote-page .quote-hero-redesign .container {
  width: 100% !important;
  max-width: 1240px !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.88fr) !important;
  gap: 56px !important;
  align-items: center !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-main {
  max-width: 690px !important;
  padding: 0 !important;
}

html body .quote-page .quote-hero-redesign .breadcrumb {
  margin-bottom: 16px !important;
}

html body .quote-page .quote-hero-redesign .eyebrow {
  display: inline-block !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--blue-dark) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  letter-spacing: 2.4px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-main h1 {
  max-width: 680px !important;
  margin: 0 0 20px !important;
  color: var(--navy-deep) !important;
  font-size: clamp(44px, 4.6vw, 64px) !important;
  line-height: 1.06 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-main h1 span {
  color: var(--blue-dark) !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-main p {
  max-width: 610px !important;
  margin: 0 0 24px !important;
  color: #415970 !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
  font-weight: 600 !important;
}

html body .quote-page .quote-hero-redesign .quote-hero-trust {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 !important;
}

html body .quote-page .quote-hero-redesign .quote-hero-trust span {
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 16px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.06) !important;
}

html body .quote-page .quote-hero-redesign .quote-redesign-side {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  padding: 0 !important;
}

html body .quote-page .quote-hero-redesign .quote-image-card {
  position: relative !important;
  min-height: 0 !important;
  padding: 12px !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 24px 52px rgba(23,49,84,0.12) !important;
}

html body .quote-page .quote-hero-redesign .quote-image-card img {
  width: 100% !important;
  height: 310px !important;
  min-height: 0 !important;
  display: block !important;
  border-radius: 8px !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body .quote-page .quote-hero-redesign .quote-route-card {
  margin-top: 12px !important;
}

html body .quote-page .quote-hero-redesign .quote-image-badge {
  margin-top: 12px !important;
  border-radius: 8px !important;
}

html body .quote-page .quote-hero-redesign .quote-side-stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 0 !important;
}

html body .quote-page .quote-hero-redesign .quote-side-stats div {
  min-height: 92px !important;
  padding: 16px 12px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(23,49,84,0.06) !important;
}

@media (max-width: 1100px) {
  html body .quote-page .quote-hero-redesign {
    background: linear-gradient(180deg, #ffffff 0%, #edf8fd 100%) !important;
  }

  html body .quote-page .quote-hero-redesign .quote-redesign-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  html body .quote-page .quote-hero-redesign .quote-redesign-main {
    max-width: 780px !important;
  }
}

@media (max-width: 640px) {
  html body .quote-page .quote-hero-redesign {
    min-height: 0 !important;
    padding: calc(var(--nav-height) + 32px) 0 42px !important;
  }

  html body .quote-page .quote-hero-redesign .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html body .quote-page .quote-hero-redesign .quote-redesign-main h1 {
    font-size: clamp(34px, 10vw, 42px) !important;
  }

  html body .quote-page .quote-hero-redesign .quote-redesign-main p {
    font-size: 15.5px !important;
  }

  html body .quote-page .quote-hero-redesign .quote-hero-trust span {
    width: 100% !important;
    justify-content: center !important;
  }

  html body .quote-page .quote-hero-redesign .quote-image-card {
    padding: 10px !important;
  }

  html body .quote-page .quote-hero-redesign .quote-image-card img {
    height: 220px !important;
  }

  html body .quote-page .quote-hero-redesign .quote-side-stats {
    grid-template-columns: 1fr !important;
  }
}

/* Services page: reference-style hero and niche section */
html body.home-page main.service-copy-page.services-page .services-reference-hero {
  min-height: 610px !important;
  padding: calc(var(--nav-height) + 42px) 0 52px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  zoom: 1 !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.98) 34%, rgba(255,255,255,0.86) 50%, rgba(255,255,255,0.34) 68%, rgba(255,255,255,0.05) 100%),
    linear-gradient(180deg, rgba(237,248,253,0.95) 0%, rgba(255,255,255,0.96) 74%, #ffffff 100%) !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-media {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  width: min(51vw, 720px) !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center right !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-media::after {
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.95) 16%, rgba(255,255,255,0.55) 36%, rgba(255,255,255,0.06) 68%),
    linear-gradient(180deg, rgba(255,255,255,0.18), rgba(23,49,84,0.14)) !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .container {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 28px !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 410px) !important;
  gap: 42px !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-copy {
  max-width: 610px !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-eyebrow {
  margin: 0 0 12px !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  letter-spacing: 1.4px !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-title {
  max-width: 560px !important;
  margin: 0 0 16px !important;
  color: var(--navy-deep) !important;
  font-size: clamp(38px, 4.8vw, 58px) !important;
  line-height: 1.03 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-title span {
  display: block !important;
  color: var(--navy-deep) !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-title .accent {
  color: var(--blue-dark) !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-sub {
  max-width: 520px !important;
  margin: 0 0 22px !important;
  color: #314b63 !important;
  font-size: 16px !important;
  line-height: 1.62 !important;
  font-weight: 600 !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-actions {
  gap: 12px !important;
  margin: 0 0 20px !important;
}

html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-actions .btn {
  min-height: 44px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  box-shadow: 0 12px 24px rgba(23,49,84,0.14) !important;
}

html body.home-page main.service-copy-page.services-page .services-hero-trust {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 14px !important;
}

html body.home-page main.service-copy-page.services-page .services-hero-trust span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: #315277 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

html body.home-page main.service-copy-page.services-page .services-hero-trust svg {
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
  fill: none !important;
  stroke: var(--blue-dark) !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

html body.home-page main.service-copy-page.services-page .service-hero-quote-card {
  position: relative !important;
  width: 100% !important;
  padding: 20px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.95) !important;
  box-shadow: 0 26px 58px rgba(23,49,84,0.17) !important;
  backdrop-filter: blur(10px) !important;
}

html body.home-page main.service-copy-page.services-page .service-hero-quote-card::before {
  content: "" !important;
  position: absolute !important;
  left: 20px !important;
  right: 20px !important;
  top: 0 !important;
  height: 4px !important;
  border-radius: 0 0 999px 999px !important;
  background: linear-gradient(90deg, rgba(47,155,210,0.18), var(--blue), rgba(47,155,210,0.18)) !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-title {
  margin: 2px 0 16px !important;
  color: var(--navy-deep) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-fields label {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  gap: 6px !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-fields label span {
  color: #6c8195 !important;
  font-size: 9.5px !important;
  font-weight: 900 !important;
  letter-spacing: 0.8px !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-fields input,
html body.home-page main.service-copy-page.services-page .quote-card-fields select {
  width: 100% !important;
  min-width: 0 !important;
  height: 40px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(23,49,84,0.1) !important;
  border-radius: 6px !important;
  background: #f8fbfe !important;
  color: var(--navy) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  outline: none !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-fields input:focus,
html body.home-page main.service-copy-page.services-page .quote-card-fields select:focus {
  border-color: rgba(47,155,210,0.58) !important;
  box-shadow: 0 0 0 3px rgba(47,155,210,0.12) !important;
  background: #ffffff !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-wide {
  grid-column: 1 / -1 !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-button {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 16px !important;
  border-radius: 999px !important;
  background: var(--blue-dark) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  box-shadow: 0 14px 28px rgba(25,127,180,0.26) !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease !important;
}

html body.home-page main.service-copy-page.services-page .quote-card-button:hover {
  transform: translateY(-2px) !important;
  background: var(--navy) !important;
  box-shadow: 0 18px 34px rgba(23,49,84,0.24) !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works {
  padding-top: 56px !important;
  padding-bottom: 60px !important;
  background: #ffffff !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .container {
  max-width: 1180px !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .section-header {
  margin-bottom: 28px !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .section-title {
  color: var(--navy-deep) !important;
  font-size: clamp(28px, 3.3vw, 42px) !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-layout {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.92fr) minmax(0, 1.08fr) !important;
  gap: 30px !important;
  align-items: center !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-photo {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.15) !important;
  border-radius: 8px !important;
  background: #edf8fd !important;
  box-shadow: 0 18px 42px rgba(23,49,84,0.11) !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-photo img {
  width: 100% !important;
  height: 245px !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact::after {
  display: none !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact article {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-areas:
    "icon title"
    "icon copy" !important;
  column-gap: 13px !important;
  align-items: start !important;
  min-height: 84px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact article + article {
  border-top: 0 !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact .service-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  grid-area: icon !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  border: 1px solid rgba(47,155,210,0.24) !important;
  border-radius: 999px !important;
  background: #f4fbff !important;
  color: var(--blue-dark) !important;
  box-shadow: none !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact .service-icon::before {
  width: 19px !important;
  height: 19px !important;
  background: var(--blue-dark) !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact h3 {
  grid-area: title !important;
  margin: 3px 0 5px !important;
  color: var(--navy-deep) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.22 !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact p {
  grid-area: copy !important;
  max-width: 230px !important;
  margin: 0 !important;
  color: #51677a !important;
  font-size: 12.5px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
}

html body.home-page main.service-copy-page.services-page #why-this-works .insured-note-bar {
  width: fit-content !important;
  max-width: 100% !important;
  margin: 28px auto 0 !important;
  padding: 12px 18px !important;
  border: 1px solid rgba(47,155,210,0.17) !important;
  border-radius: 999px !important;
  background: #f8fcff !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.06) !important;
}

@media (max-width: 980px) {
  html body.home-page main.service-copy-page.services-page .services-reference-hero {
    min-height: 0 !important;
    padding: calc(var(--nav-height) + 30px) 0 42px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero::before {
    background:
      linear-gradient(180deg, rgba(255,255,255,0.9) 0%, #ffffff 38%, #ffffff 100%),
      linear-gradient(180deg, #edf8fd, #ffffff) !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-media {
    position: relative !important;
    width: auto !important;
    height: 220px !important;
    margin: 0 28px 28px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-copy {
    max-width: 760px !important;
  }

  html body.home-page main.service-copy-page.services-page .service-hero-quote-card {
    max-width: 520px !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-photo img {
    height: 260px !important;
  }
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.services-page .services-reference-hero {
    padding-bottom: 34px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-media {
    height: 190px !important;
    margin: 0 20px 24px !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-title {
    font-size: clamp(34px, 10vw, 44px) !important;
  }

  html body.home-page main.service-copy-page.services-page .services-reference-hero .hero-split-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  html body.home-page main.service-copy-page.services-page .services-hero-trust span {
    width: 100% !important;
  }

  html body.home-page main.service-copy-page.services-page .quote-card-fields {
    grid-template-columns: 1fr !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works {
    padding-top: 42px !important;
    padding-bottom: 46px !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works .service-card-grid.compact {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works .why-reference-photo img {
    height: 205px !important;
  }

  html body.home-page main.service-copy-page.services-page #why-this-works .insured-note-bar {
    width: 100% !important;
    border-radius: 8px !important;
    align-items: flex-start !important;
  }
}

/* Services page: preserve the CMS content while applying the reference
   page's section rhythm, card geometry, and restrained surface treatment. */
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle),
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works),
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship),
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing),
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship),
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) {
  padding: 68px 0 !important;
  background: #f8fcff !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .container,
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .container,
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .container,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .container,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .container,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .container {
  max-width: 1180px !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .section-header,
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .section-header,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .section-header {
  max-width: 820px !important;
  margin: 0 auto 34px !important;
  text-align: center !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .section-title,
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .section-title,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .section-title,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .section-title,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .section-title {
  color: var(--navy-deep) !important;
  font-size: clamp(32px, 3.45vw, 46px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .section-sub,
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .section-sub,
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .section-sub {
  max-width: 760px !important;
  margin: 10px auto 0 !important;
  color: #526b82 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .services-grid,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .services-grid {
  gap: 30px !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .svc-card,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .svc-card {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.14) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 34px rgba(23,49,84,0.08) !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .svc-card-img,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .svc-card-img {
  height: 270px !important;
  object-fit: cover !important;
}
html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .svc-card-body,
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .svc-card-body {
  padding: 24px 26px 26px !important;
  text-align: left !important;
}
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) {
  padding-top: 54px !important;
  padding-bottom: 54px !important;
  background: #ffffff !important;
}
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .section-header {
  margin: 0 0 30px !important;
  text-align: center !important;
}
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .services-grid {
  gap: 0 !important;
  border-top: 1px solid rgba(23,49,84,0.1) !important;
  border-bottom: 1px solid rgba(23,49,84,0.1) !important;
}
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .svc-card {
  min-height: 112px !important;
  padding: 24px 22px !important;
  border: 0 !important;
  border-right: 1px solid rgba(23,49,84,0.1) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .svc-card:last-child { border-right: 0 !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) { background: #ffffff !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .services-grid {
  gap: 18px !important;
}
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .svc-card {
  overflow: hidden !important;
  min-height: 230px !important;
  border: 1px solid rgba(23,49,84,0.1) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(23,49,84,0.06) !important;
}
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .svc-card-img {
  height: 116px !important;
  object-fit: cover !important;
}
html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship) .svc-card-body { padding: 17px 16px 20px !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) { background: #ffffff !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .svc-card {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.14) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(23,49,84,0.07) !important;
}
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .svc-card-img { height: 148px !important; object-fit: cover !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing) .svc-card-body { padding: 20px !important; }
html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .section-header { display: none !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) { background: #ffffff !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .section-header { margin-bottom: 28px !important; text-align: center !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .faq-list { max-width: 920px !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .faq-item { border: 1px solid rgba(23,49,84,0.1) !important; border-radius: 7px !important; margin-bottom: 10px !important; }
html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) .faq-question { padding: 19px 20px !important; }
@media (max-width: 760px) {
  html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle),
  html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works),
  html body.home-page main.service-copy-page.services-page section:has(#vehicles-we-ship),
  html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-pricing),
  html body.home-page main.service-copy-page.services-page section:has(#where-we-ship),
  html body.home-page main.service-copy-page.services-page section:has(#vehicle-shipping-faqs) { padding: 46px 0 !important; }
  html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .services-grid { border: 0 !important; }
  html body.home-page main.service-copy-page.services-page section:has(#why-this-method-works) .svc-card { border: 1px solid rgba(23,49,84,0.1) !important; border-radius: 7px !important; margin-bottom: 10px !important; }
  html body.home-page main.service-copy-page.services-page section:has(#how-we-ship-your-vehicle) .svc-card-img,
  html body.home-page main.service-copy-page.services-page section:has(#where-we-ship) .svc-card-img { height: 210px !important; }
}

/* Homepage: reference-style hero and niche section */
html body.home-page .index-reference-hero {
  min-height: 500px !important;
  padding: calc(var(--nav-height) + 30px) 0 38px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

html body.home-page .index-reference-hero::before {
  display: none !important;
}

html body.home-page .index-reference-hero .home-hero-bg {
  display: none !important;
}

html body.home-page .index-reference-hero .home-hero-bg::after {
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.95) 16%, rgba(255,255,255,0.56) 38%, rgba(255,255,255,0.05) 70%),
    linear-gradient(180deg, rgba(255,255,255,0.1), rgba(23,49,84,0.16)) !important;
}

html body.home-page .index-reference-hero .home-hero-wash {
  background:
    linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0.98) 44%, rgba(255,255,255,0.78) 58%, rgba(255,255,255,0.18) 78%, rgba(255,255,255,0) 100%),
    linear-gradient(180deg, rgba(237,248,253,0.8), #ffffff 78%) !important;
}

html body.home-page .index-reference-hero .container {
  width: 100% !important;
  max-width: 1120px !important;
  padding: 0 28px !important;
}

html body.home-page .index-reference-hero .hero-content-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 500px !important;
  gap: 30px !important;
  align-items: center !important;
}

html body.home-page .index-reference-hero .hero-copy {
  max-width: 570px !important;
}

html body.home-page .index-reference-hero .hero-eyebrow {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  letter-spacing: 1.4px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page .index-reference-hero .hero-title {
  max-width: 530px !important;
  margin: 0 0 12px !important;
  color: var(--navy-deep) !important;
  font-size: clamp(40px, 4.7vw, 56px) !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
  font-weight: 900 !important;
}

html body.home-page .index-reference-hero .hero-title span {
  display: block !important;
  max-width: none !important;
  margin-top: 3px !important;
  color: var(--blue-dark) !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
}

html body.home-page .index-reference-hero .hero-subtitle {
  max-width: 500px !important;
  margin: 0 0 18px !important;
  color: #314b63 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;
}

html body.home-page .index-reference-hero .hero-support-row {
  gap: 10px 14px !important;
  max-width: 650px !important;
  margin: 0 0 18px !important;
}

html body.home-page .index-reference-hero .hero-support-item {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #315277 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

html body.home-page .index-reference-hero .hero-support-item span {
  width: 17px !important;
  height: 17px !important;
  background: rgba(47,155,210,0.12) !important;
  color: var(--blue-dark) !important;
  box-shadow: none !important;
  font-size: 11px !important;
}

html body.home-page .index-reference-hero .hero-copy > .btn-outline {
  min-height: 42px !important;
  margin-top: 0 !important;
  padding: 12px 24px !important;
  border-color: var(--navy-deep) !important;
  background: var(--navy-deep) !important;
  color: #ffffff !important;
  font-size: 12.5px !important;
  box-shadow: 0 14px 26px rgba(23,49,84,0.18) !important;
}

html body.home-page .index-reference-hero .hero-form-container {
  position: relative !important;
  width: 100% !important;
  min-height: 322px !important;
  flex: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

html body.home-page .index-reference-hero .hero-right-image {
  position: absolute !important;
  top: 0 !important;
  right: -28px !important;
  bottom: 0 !important;
  width: 292px !important;
  overflow: hidden !important;
  border-radius: 8px !important;
  background: #edf8fd !important;
  box-shadow: 0 16px 34px rgba(23,49,84,0.12) !important;
  z-index: 1 !important;
}

html body.home-page .index-reference-hero .hero-right-image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(255,255,255,0.18), rgba(255,255,255,0)) !important;
}

html body.home-page .index-reference-hero .hero-right-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center right !important;
}

html body.home-page .index-reference-hero .quote-form-box {
  position: relative !important;
  z-index: 2 !important;
  width: 372px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding: 18px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.95) !important;
  box-shadow: 0 24px 50px rgba(23,49,84,0.16) !important;
}

html body.home-page .index-reference-hero .quote-form-box::before {
  left: 20px !important;
  right: 20px !important;
  height: 4px !important;
  background: linear-gradient(90deg, rgba(47,155,210,0.18), var(--blue), rgba(47,155,210,0.18)) !important;
}

html body.home-page .index-reference-hero .quote-form-box .form-title {
  justify-content: flex-start !important;
  margin: 2px 0 14px !important;
  color: var(--navy-deep) !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page .index-reference-hero .form-row,
html body.home-page .index-reference-hero .form-row.three {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}

html body.home-page .index-reference-hero .form-row.three .fg {
  grid-column: 1 / -1 !important;
}

html body.home-page .index-reference-hero .fg label {
  color: #6c8195 !important;
  font-size: 9.5px !important;
  letter-spacing: 0.8px !important;
  font-weight: 900 !important;
}

html body.home-page .index-reference-hero .fg input,
html body.home-page .index-reference-hero .fg select {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 11px !important;
  border-radius: 6px !important;
  background: #f8fbfe !important;
  color: var(--navy) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}

html body.home-page .index-reference-hero .form-submit-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

html body.home-page .index-reference-hero .form-note {
  color: #6c8195 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

html body.home-page .index-reference-hero .form-submit {
  min-height: 38px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  background: var(--blue-dark) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  box-shadow: 0 14px 28px rgba(25,127,180,0.26) !important;
}

html body.home-page .index-reference-why {
  padding-top: 56px !important;
  padding-bottom: 60px !important;
  background: #ffffff !important;
}

html body.home-page .index-reference-why::before {
  display: none !important;
}

html body.home-page .index-reference-why .container {
  max-width: 1180px !important;
}

html body.home-page .index-reference-why .section-header {
  margin-bottom: 28px !important;
}

html body.home-page .index-reference-why .section-title {
  color: var(--navy-deep) !important;
  font-size: clamp(32px, 4.5vw, 48px) !important;
}

html body.home-page .index-reference-why .section-sub {
  max-width: 560px !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

html body.home-page .index-reference-why .why-reference-home-layout {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.92fr) minmax(0, 1.08fr) !important;
  gap: 30px !important;
  align-items: center !important;
}

html body.home-page .index-reference-why .why-reference-home-photo {
  overflow: hidden !important;
  border: 1px solid rgba(47,155,210,0.15) !important;
  border-radius: 8px !important;
  background: #edf8fd !important;
  box-shadow: 0 18px 42px rgba(23,49,84,0.11) !important;
}

html body.home-page .index-reference-why .why-reference-home-photo img {
  width: 100% !important;
  height: 245px !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page .index-reference-why .why-premium-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 24px !important;
  margin: 0 !important;
}

html body.home-page .index-reference-why .why-premium-card {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-areas:
    "icon title"
    "icon copy" !important;
  column-gap: 13px !important;
  align-items: start !important;
  min-height: 84px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}

html body.home-page .index-reference-why .why-premium-icon {
  grid-area: icon !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  border: 1px solid rgba(47,155,210,0.24) !important;
  border-radius: 999px !important;
  background: #f4fbff !important;
  color: var(--blue-dark) !important;
  box-shadow: none !important;
}

html body.home-page .index-reference-why .why-premium-icon svg {
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: var(--blue-dark) !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

html body.home-page .index-reference-why .why-premium-card h3 {
  grid-area: title !important;
  margin: 1px 0 6px !important;
  color: var(--navy-deep) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.22 !important;
}

html body.home-page .index-reference-why .why-premium-card p {
  grid-area: copy !important;
  max-width: 250px !important;
  margin: 0 !important;
  color: #51677a !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
}

@media (max-width: 980px) {
  html body.home-page .index-reference-hero {
    min-height: 0 !important;
    padding: calc(var(--nav-height) + 30px) 0 42px !important;
  }

  html body.home-page .index-reference-hero .home-hero-bg {
    display: none !important;
  }

  html body.home-page .index-reference-hero .home-hero-wash {
    background: linear-gradient(180deg, rgba(255,255,255,0.9) 0%, #ffffff 38%, #ffffff 100%) !important;
  }

  html body.home-page .index-reference-hero .hero-content-wrapper,
  html body.home-page .index-reference-why .why-reference-home-layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  html body.home-page .index-reference-hero .hero-copy {
    max-width: 760px !important;
  }

  html body.home-page .index-reference-hero .hero-form-container {
    max-width: 620px !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  html body.home-page .index-reference-hero .hero-right-image {
    position: relative !important;
    inset: auto !important;
    order: -1 !important;
    width: 100% !important;
    height: 220px !important;
  }

  html body.home-page .index-reference-hero .quote-form-box {
    width: 100% !important;
  }

  html body.home-page .index-reference-why .why-reference-home-photo img {
    height: 260px !important;
  }
}

@media (max-width: 640px) {
  html body.home-page .index-reference-hero .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html body.home-page .index-reference-hero .home-hero-bg {
    height: 190px !important;
    margin: 0 20px 24px !important;
  }

  html body.home-page .index-reference-hero .hero-title {
    font-size: clamp(34px, 10vw, 44px) !important;
  }

  html body.home-page .index-reference-hero .hero-support-item,
  html body.home-page .index-reference-hero .hero-copy > .btn-outline,
  html body.home-page .index-reference-hero .form-submit,
  html body.home-page .index-reference-hero .form-submit-row,
  html body.home-page .index-reference-hero .hero-form-container {
    width: 100% !important;
  }

  html body.home-page .index-reference-hero .hero-right-image {
    height: 190px !important;
  }

  html body.home-page .index-reference-hero .form-row,
  html body.home-page .index-reference-hero .form-row.three,
  html body.home-page .index-reference-why .why-premium-grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-page .index-reference-hero .form-submit-row {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body.home-page .index-reference-why {
    padding-top: 42px !important;
    padding-bottom: 46px !important;
  }

  html body.home-page .index-reference-why .why-reference-home-photo img {
    height: 205px !important;
  }
}

/* Homepage hero quote box on the About-style split hero */
html body.home-page #hero.hero-split .index-hero-floating-form {
  position: absolute;
  z-index: 3;
  top: 150px;
  right: max(36px, calc((100vw - 1320px) / 2 + 68px));
  width: min(390px, 31vw);
}

html body.home-page #hero.hero-split .index-hero-floating-form .quote-form-box {
  padding: 20px;
  border: 1px solid rgba(47,155,210,0.18);
  border-radius: 8px;
  background: rgba(255,255,255,0.95);
  box-shadow: 0 26px 58px rgba(23,49,84,0.18);
  backdrop-filter: blur(10px);
}

html body.home-page #hero.hero-split .index-hero-floating-form .quote-form-box iframe {
  display: block !important;
  height: 560px !important;
  max-height: 60vh !important;
  border-radius: 6px;
  overflow: auto !important;
}

html body.home-page #hero.hero-split .index-hero-floating-form .quote-form-box::before {
  left: 20px;
  right: 20px;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, rgba(47,155,210,0.18), var(--blue), rgba(47,155,210,0.18));
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-title {
  justify-content: flex-start !important;
  margin-bottom: 14px;
  color: var(--navy-deep);
  font-size: 15px;
  font-weight: 900;
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-row,
html body.home-page #hero.hero-split .index-hero-floating-form .form-row.three {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-row.three .fg {
  grid-column: 1 / -1 !important;
}

html body.home-page #hero.hero-split .index-hero-floating-form .fg label {
  color: #6c8195;
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: 0.8px;
}

html body.home-page #hero.hero-split .index-hero-floating-form .fg input,
html body.home-page #hero.hero-split .index-hero-floating-form .fg select {
  height: 38px;
  min-height: 38px;
  padding: 0 11px;
  border-radius: 6px;
  background: #f8fbfe;
  color: var(--navy);
  font-size: 12px;
  font-weight: 750;
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-submit-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-note {
  color: #6c8195;
  font-size: 11px;
  font-weight: 800;
}

html body.home-page #hero.hero-split .index-hero-floating-form .form-submit {
  min-height: 38px;
  padding: 10px 18px;
  border-radius: 999px;
  background: var(--blue-dark);
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(25,127,180,0.26);
}

html body.home-page #hero.hero-split .hero-split-copy {
  max-width: 560px !important;
}

html body.home-page #hero.hero-split .hero-split-stats {
  max-width: 560px !important;
}

@media (max-width: 1180px) {
  html body.home-page #hero.hero-split .index-hero-floating-form {
    right: 32px;
    width: min(360px, 35vw);
  }

  html body.home-page #hero.hero-split .hero-split-copy {
    max-width: 520px !important;
  }
}

@media (max-width: 900px) {
  html body.home-page #hero.hero-split .index-hero-floating-form {
    position: relative;
    top: auto;
    right: auto;
    width: auto;
    margin: 0 var(--container-pad) 28px;
    order: -1;
  }

  html body.home-page #hero.hero-split .index-hero-floating-form .quote-form-box {
    max-width: 520px;
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  html body.home-page #hero.hero-split .index-hero-floating-form {
    margin-left: 20px;
    margin-right: 20px;
  }

  html body.home-page #hero.hero-split .index-hero-floating-form .form-row,
  html body.home-page #hero.hero-split .index-hero-floating-form .form-row.three {
    grid-template-columns: 1fr;
  }

  html body.home-page #hero.hero-split .index-hero-floating-form .form-submit-row {
    flex-direction: column;
    align-items: stretch;
  }

  html body.home-page #hero.hero-split .index-hero-floating-form .form-submit {
    width: 100%;
    justify-content: center;
  }
}

/* ============================================================
   NEW GENERIC COMPONENTS
   Added for the WordPress rebuild's shared section partials —
   these replace what were originally several page-specific,
   ID-scoped selectors (#about-story, #about-stay, .dealer-step,
   etc.) with one reusable class per component, matching the
   partials in template-parts/sections/.
   ============================================================ */

/* step_grid: icon-image variant (Dealer "How Dealer Shipping Works" uses an
   icon image instead of a numbered circle) — sized to match .step-num. */
.step-icon-img {
  width: 72px;
  height: 72px;
  margin: 0 auto 24px;
  border-radius: 50%;
  object-fit: contain;
  padding: 14px;
  background: linear-gradient(135deg, var(--white) 0%, #f0f8fb 100%);
  border: 1px solid rgba(47,155,210,0.4);
  box-shadow: 0 12px 30px rgba(47,155,210,0.15), inset 0 2px 4px rgba(255,255,255,1);
}

/* media_copy_split: generic two-column media/copy layout (About "Our Story",
   "What It's Like to Work With Us"; reused wherever an admin adds this
   section on any page). */
.media-copy-split .container { min-height: 460px; }
.story-img-col {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-lg);
  min-height: 340px;
}
.story-img-col img { width: 100%; height: 100%; object-fit: cover; display: block; }
.story-content-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-xl) var(--space-lg);
}
.story-content-col h2 {
  font-size: clamp(28px, 3.4vw, 42px);
  font-weight: 900;
  color: var(--navy);
  line-height: 1.15;
  margin-bottom: var(--space-sm);
  letter-spacing: -0.5px;
}
.mcs-body { color: var(--text-mid); font-size: 15.5px; line-height: 1.8; margin-bottom: var(--space-md); }
.mcs-body p { margin-bottom: 14px; }
.mcs-body p:last-child { margin-bottom: 0; }

/* card_grid (icon_list) + media_copy_split's optional list: horizontal
   icon+title+body rows. Doubles as a plain informational row (About "Stay")
   and, when it wraps an .svc-link, a clickable reason/reach-item card. */
.stay-list-col { display: grid; gap: 18px; margin: var(--space-sm) 0 var(--space-md); }
.stay-row {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  align-items: start;
  padding: 16px 0;
  border-bottom: 1px solid var(--gray-light);
}
.stay-list-col .stay-row:last-child { border-bottom: none; padding-bottom: 0; }
.stay-row-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--sky-soft);
  flex-shrink: 0;
}
.stay-row-icon svg { width: 22px; height: 22px; stroke: var(--blue-dark); fill: none; stroke-width: 1.6; }
.stay-row-copy h3 { font-size: 15.5px; font-weight: 800; color: var(--navy); margin-bottom: 4px; }
.stay-row-copy p { font-size: 13.5px; color: var(--text-mid); line-height: 1.6; }
/* When reused for Contact's reach-item/reason link-cards, the whole row
   reads as a card (border all around) instead of a divider-separated row. */
.stay-row:has(.svc-link) {
  border: 1px solid var(--gray-light);
  border-radius: var(--radius);
  padding: 18px 20px;
  transition: var(--transition);
}
.stay-row:has(.svc-link):hover { border-color: rgba(47,155,210,0.45); box-shadow: var(--shadow-sm); transform: translateY(-2px); }

@media (max-width: 1024px) {
  .media-copy-split .container { grid-template-columns: 1fr !important; }
  .story-img-col { min-height: 280px; }
}
@media (max-width: 480px) {
  .stay-row { grid-template-columns: 36px 1fr; }
  .stay-row-icon { width: 36px; height: 36px; }
  .stay-row-icon svg { width: 18px; height: 18px; }
}

/* #about-story: the original's own wider/taller cinematic split proportions
   (distinct from media_copy_split's generic 1fr/1fr grid). */
#about-story .container {
  grid-template-columns: 1fr 1.1fr !important;
  min-height: 540px !important;
  margin: 80px auto !important;
  max-width: 1400px !important;
  gap: 40px !important;
  padding: 0 40px !important;
}
#about-story .story-content-col { padding: 40px 20px 40px 40px !important; justify-content: center !important; }

/* #about-stay: original pairs a bordered/shadowed photo panel with a
   separate bordered copy card, then the icon rows as their own individual
   bordered cards in a 2x2 grid below (not one long list) — reanchored to
   the actual rendered .story-img-col/.story-content-col/.stay-row markup. */
#about-stay { background: linear-gradient(180deg, #eef6fc 0%, #f4f8fd 100%) !important; }
#about-stay .story-img-col {
  border: 1px solid rgba(47,155,210,0.16) !important;
  background: #eaf3f9 !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.06) !important;
  min-height: 460px !important;
}
#about-stay .story-content-col {
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 18px !important;
  background: linear-gradient(140deg, #ffffff 0%, #f4fafe 100%) !important;
  box-shadow: 0 18px 44px rgba(23,49,84,0.06) !important;
  padding: 32px 34px !important;
}
#about-stay .stay-list-col { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px !important; }
#about-stay .stay-row {
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 32px rgba(23,49,84,0.06) !important;
  padding: 22px 20px !important;
}
@media (max-width: 900px) {
  #about-stay .story-img-col { min-height: 280px !important; }
}
@media (max-width: 520px) {
  #about-stay .stay-list-col { grid-template-columns: 1fr !important; }
}

/* Contact Form 7 defaults — matches the look of the original custom .fg
   input/select styling regardless of whether a given form's template markup
   wraps fields in .fg (CF7 tags every field with .wpcf7-form-control). */
.wpcf7-form p { margin-bottom: 16px; }
.wpcf7-form label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: #5a7898; margin-bottom: 7px; }
.wpcf7-form-control:not(.wpcf7-submit):not([type="checkbox"]):not([type="radio"]) {
  width: 100%;
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(23,49,84,0.1);
  color: var(--text-dark);
  min-height: 52px;
  padding: 13px 16px;
  border-radius: 10px;
  font-size: 14.5px;
  outline: none;
  transition: border-color 0.2s, background 0.2s;
}
.wpcf7-form-control:focus { border-color: var(--blue); background: var(--white); box-shadow: 0 0 0 3px rgba(47,155,210,0.10); }
textarea.wpcf7-form-control { min-height: 120px; padding-top: 13px; }
input.wpcf7-submit, button.wpcf7-submit {
  background: linear-gradient(90deg, var(--blue) 0%, var(--blue-dark) 100%);
  color: #fff;
  padding: 12px 26px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  border: 0;
  min-height: 0;
  width: auto;
  cursor: pointer;
  transition: var(--transition);
}
input.wpcf7-submit:hover, button.wpcf7-submit:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(47,155,210,0.25); }
.wpcf7-not-valid-tip { display: block; color: #e0245e; font-size: 12px; margin-top: 4px; font-weight: 600; }
.wpcf7-response-output { margin-top: 16px !important; padding: 12px 16px !important; border-radius: 8px !important; font-size: 13px !important; }
.wpcf7-spinner { margin-left: 8px; }
.wpcf7-acceptance .wpcf7-list-item { margin-left: 0; font-size: 13px; color: var(--text-mid); }
.quote-form-shell .wpcf7-form p:last-of-type,
.quote-form-box .wpcf7-form p:last-of-type { margin-bottom: 0; }

/* ============================================================
   PAGE-SPECIFIC: CONTACT
   ============================================================ */
.contact-main { background: var(--home-bg, #f5fbff); }

.contact-hero .contact-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(380px, 450px);
  gap: 52px;
  align-items: start;
}
.contact-hero .contact-hero-copy { max-width: 620px; }

.contact-hero .contact-badge {
  display: inline-block;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(237, 248, 253, 0.92);
  border: 1px solid rgba(47, 155, 210, 0.18);
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.contact-hero .hero-split-sub { margin-bottom: 34px; }

.contact-hero .contact-points {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px 28px;
  margin-bottom: 34px;
}
.contact-hero .cp { display: flex; align-items: flex-start; gap: 13px; }
.contact-hero .cp-icon {
  width: 44px; height: 44px; flex: 0 0 44px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 11px;
  background: rgba(47, 155, 210, 0.1);
  color: var(--blue-dark);
}
.contact-hero .cp-icon svg { width: 22px; height: 22px; }
.contact-hero .cp-text h3 { font-size: 17px; font-weight: 900; color: var(--navy); line-height: 1.25; margin: 2px 0 5px; }
.contact-hero .cp-text p { font-size: 14px; color: var(--text-mid); line-height: 1.6; margin: 0; }

.contact-hero .contact-direct { display: flex; flex-wrap: wrap; gap: 12px; }
.contact-hero .cd-item {
  display: inline-flex; align-items: center; gap: 12px;
  padding: 12px 18px 12px 14px;
  background: var(--white);
  border: 1px solid rgba(47, 155, 210, 0.16);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(23, 49, 84, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.contact-hero .cd-item:hover { transform: translateY(-2px); border-color: rgba(47, 155, 210, 0.4); box-shadow: 0 18px 40px rgba(23, 49, 84, 0.12); }
.contact-hero .cd-icon {
  width: 36px; height: 36px; flex: 0 0 36px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: rgba(47, 155, 210, 0.12);
  color: var(--blue-dark);
}
.contact-hero .cd-icon svg { width: 18px; height: 18px; }
.contact-hero .cd-text { display: flex; flex-direction: column; }
.contact-hero .cd-label { font-size: 11px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; color: var(--text-muted); }
.contact-hero .cd-value { font-size: 15px; font-weight: 800; color: var(--navy); line-height: 1.3; }

.contact-hero .contact-form-col {
  position: relative;
  background: var(--white);
  border: 1px solid rgba(23, 49, 84, 0.08);
  border-radius: 20px;
  padding: 28px 26px 26px;
  box-shadow: 0 24px 60px rgba(23, 49, 84, 0.18);
}
.contact-hero .contact-form-col .cc-submit {
  width: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #2f9bd2 0%, #197fb4 100%);
  box-shadow: 0 14px 32px rgba(47, 155, 210, 0.28);
}
.contact-hero .contact-form-col .wpcf7-acceptance { display: block; margin: 2px 0 18px; font-size: 12.5px; line-height: 1.55; color: var(--text-mid); }
.contact-hero .contact-form-col .wpcf7-list-item { margin: 0; }
.contact-hero .contact-form-col .wpcf7-list-item-label strong { color: var(--navy); font-weight: 700; }
.incline-hp-field, .incline-hp-field-wrap { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 1180px) {
  .contact-hero .contact-hero-layout { grid-template-columns: minmax(0, 1fr) minmax(340px, 400px); gap: 38px; }
}
@media (max-width: 980px) {
  .contact-hero .contact-hero-layout { grid-template-columns: 1fr; gap: 36px; }
  .contact-hero .contact-hero-copy { max-width: 640px; }
  .contact-hero .contact-form-col { max-width: 560px; }
}
@media (max-width: 620px) {
  .contact-hero .contact-points { grid-template-columns: 1fr; gap: 18px; }
  .contact-hero .contact-form-col { padding: 24px 20px 22px; }
  .contact-hero .cd-item { width: 100%; }
}

/* ===== Where We Operate: province pills + coverage map (contact.html) ===== */
.contact-operate-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 48px; align-items: start; }
.contact-map { border-radius: 16px; overflow: hidden; box-shadow: var(--shadow-md); }
.contact-map img { width: 100%; height: auto; display: block; }
.province-badge-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.province-badge {
  display: inline-block; padding: 8px 16px; border-radius: 999px;
  background: var(--sky-soft); color: var(--navy); font-size: 13px; font-weight: 700;
  border: 1px solid rgba(47,155,210,0.16);
}
.province-route-cta {
  margin-top: 20px; padding: 16px 20px; border-radius: 12px;
  background: var(--sky-soft); border: 1px solid rgba(47,155,210,0.14);
  font-size: 14px; color: var(--text-mid); line-height: 1.6;
}
@media (max-width: 900px) {
  .contact-operate-grid { grid-template-columns: 1fr; gap: 28px; }
}

/* ---- Route Finder + FAQ (Split) — Home page ".routes-faq-split" ---- */
.routes-faq-split .rf-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: stretch;
}
.routes-faq-split .rf-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(23, 49, 84, 0.08);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(23, 49, 84, 0.05);
  padding: 40px;
}

.routes-faq-split .rf-head {
  min-height: 156px;
  margin-bottom: 28px;
}
.routes-faq-split .rf-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--blue-dark);
  line-height: 1.4;
}
.routes-faq-split .rf-title {
  font-size: clamp(28px, 2.7vw, 32px);
  font-weight: 900;
  color: var(--text-dark);
  line-height: 1.15;
  letter-spacing: -0.8px;
  margin: 12px 0 14px;
}
.routes-faq-split .rf-sub {
  font-size: 16px;
  line-height: 1.75;
  color: var(--text-mid);
  margin: 0;
}

.routes-faq-split .rf-routes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 26px 22px;
  align-content: start;
}
.routes-faq-split .rf-route {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.routes-faq-split .rf-badge {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(47, 155, 210, 0.1);
  color: #2f9bd2;
}
.routes-faq-split .rf-badge svg { width: 22px; height: 22px; }
.routes-faq-split .rf-route-text { min-width: 0; padding-top: 2px; }
.routes-faq-split .rf-route h3 {
  font-size: 18px;
  font-weight: 900;
  color: var(--navy);
  line-height: 1.25;
  margin: 0 0 6px;
  min-height: 45px;
}
.routes-faq-split .rf-route p {
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.68;
  margin: 0;
}

.routes-faq-split .rf-cta {
  margin-top: auto;
  padding-top: 28px;
  border-top: 1px solid rgba(23, 49, 84, 0.07);
}
.routes-faq-split .rf-card:first-child .rf-cta { text-align: center; }
.routes-faq-split .rf-btn {
  display: inline-block;
  background: #2f9bd2;
  color: #ffffff;
  padding: 14px 30px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 999px;
  box-shadow: 0 12px 28px rgba(47, 155, 210, 0.22);
  transition: all 0.3s ease;
}
.routes-faq-split .rf-btn:hover {
  background: #197fb4;
  transform: translateY(-2px);
}
.routes-faq-split .rf-link {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  color: var(--blue-dark);
  transition: color 0.2s ease;
}
.routes-faq-split .rf-link:hover { color: var(--navy); }

.routes-faq-split .rf-faq { max-width: none; margin: 0; }
.routes-faq-split .rf-faq .faq-item {
  border: 0;
  border-bottom: 1px solid rgba(23, 49, 84, 0.08);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.routes-faq-split .rf-faq .faq-item:first-child { border-top: 1px solid rgba(23, 49, 84, 0.08); }
.routes-faq-split .rf-faq .faq-item:last-child { border-bottom: 0; }
.routes-faq-split .rf-faq .faq-item:hover,
.routes-faq-split .rf-faq .faq-item.open { background: transparent; }
.routes-faq-split .rf-faq .faq-question {
  min-height: 0;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.45;
  gap: 16px;
  align-items: center;
}
.routes-faq-split .rf-faq .faq-question:hover { color: var(--blue); }
.routes-faq-split .rf-faq .faq-item.open .faq-question { color: var(--text-dark); }
.routes-faq-split .rf-faq .faq-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  border: 0;
  background: none;
  font-size: 22px;
  line-height: 1;
  color: var(--blue);
  font-weight: 400;
}
.routes-faq-split .rf-faq .faq-item.open .faq-icon {
  background: none;
  border: 0;
  color: var(--blue);
  transform: rotate(45deg);
}
.routes-faq-split .rf-faq .faq-answer-inner {
  padding: 0 0 18px;
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.72;
}

@media (max-width: 1000px) {
  .routes-faq-split .rf-card { padding: 32px 28px; }
  .routes-faq-split .rf-head { min-height: 180px; }
}
@media (max-width: 900px) {
  .routes-faq-split .rf-grid { grid-template-columns: 1fr; gap: 24px; }
  .routes-faq-split .rf-head { min-height: 0; }
  .routes-faq-split .rf-routes { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .routes-faq-split .rf-card { padding: 26px 22px; }
  .routes-faq-split .rf-routes { grid-template-columns: 1fr; gap: 18px; }
  .routes-faq-split .rf-route h3 { min-height: 0; }
  .routes-faq-split .rf-btn { display: block; text-align: center; padding: 14px 20px; }
}

/* ---- "Ask Incline" search widget (hero_split show_ask_widget) — matches original .help-ask-panel/.help-ask-input ---- */
.ask-incline-form {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 8px;
  margin-top: 18px;
  border: 1px solid var(--help-line, rgba(23,49,84,0.11));
  border-radius: 999px;
  background: #fff;
  box-shadow: var(--help-shadow, 0 10px 30px rgba(23,49,84,0.08));
  max-width: 520px;
}
.ask-incline-form input {
  width: 100%;
  min-width: 0;
  padding: 13px 18px;
  border: 0;
  background: transparent;
  color: var(--help-ink, var(--navy));
  font: inherit;
  outline: none;
}
.ask-incline-form button {
  border: 0;
  border-radius: 999px;
  padding: 0 24px;
  background: var(--help-navy, var(--navy));
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
@media (max-width: 560px) {
  .ask-incline-form { grid-template-columns: 1fr; border-radius: 18px; }
  .ask-incline-form button { padding: 12px 24px; }
}

/* ===== BACK TO TOP BUTTON =====
   Ported from the original static site's per-page inline <style> block
   (never migrated into the theme CSS, which left the button unstyled). */
#back-to-top {
  position: fixed;
  /* Sits just above the LeadConnector chat widget bubble (bottom-right,
     roughly a 60px circle starting at bottom:20px) rather than on top of
     it — stacked, not overlapping. */
  bottom: 104px;
  right: 32px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--white);
  border: 1.5px solid rgba(23,49,84,0.16);
  color: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(23,49,84,0.16);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s, background 0.2s, border-color 0.2s;
  z-index: 999;
}
#back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
#back-to-top:hover { background: var(--blue); color: var(--navy-deep); border-color: var(--blue); }
#back-to-top svg { width: 18px; height: 18px; }

/* ===== HELP CENTRE — "Explore All Topics" premium sidebar (ported from
   helpcentre.html's inline .help-guide-premium styles, which were never
   migrated into this stylesheet). Restores the dark sidebar tab nav with
   per-category icons on desktop, matching the original static design. ===== */

.tab-icon {
  --icon-color: currentColor;
  display: inline-flex;
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  background: var(--icon-color);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.tab-icon-process {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 4h14v4H5V4Zm0 6h14v4H5v-4Zm0 6h14v4H5v-4Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 4h14v4H5V4Zm0 6h14v4H5v-4Zm0 6h14v4H5v-4Z'/%3E%3C/svg%3E");
}
.tab-icon-price {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v14a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V5Zm4 2h8v2H8V7Zm0 4h8v2H8v-2Zm0 4h5v2H8v-2Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v14a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V5Zm4 2h8v2H8V7Zm0 4h8v2H8v-2Zm0 4h5v2H8v-2Z'/%3E%3C/svg%3E");
}
.tab-icon-map,
.tab-icon-border {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 3 3 5.5v15L9 18l6 3 6-2.5v-15L15 6 9 3Zm1.5 3.1 3 1.5v10.3l-3-1.5V6.1ZM5 7l3.5-1.45v10.7L5 17.7V7Zm14 10-3.5 1.45V7.75L19 6.3V17Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 3 3 5.5v15L9 18l6 3 6-2.5v-15L15 6 9 3Zm1.5 3.1 3 1.5v10.3l-3-1.5V6.1ZM5 7l3.5-1.45v10.7L5 17.7V7Zm14 10-3.5 1.45V7.75L19 6.3V17Z'/%3E%3C/svg%3E");
}
.tab-icon-check,
.tab-icon-delivery {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.2 16.8 4.8 12.4l1.6-1.6 2.8 2.8 8.4-8.4 1.6 1.6-10 10ZM5 20h14v2H5v-2Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.2 16.8 4.8 12.4l1.6-1.6 2.8 2.8 8.4-8.4 1.6 1.6-10 10ZM5 20h14v2H5v-2Z'/%3E%3C/svg%3E");
}
.tab-icon-truck {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5h12v9h2.2l1.3-3H21v6h-2a3 3 0 0 1-6 0H9a3 3 0 0 1-6 0H2v-3h1V5Zm2 2v7h8V7H5Zm0 10a1 1 0 1 0 2 0 1 1 0 0 0-2 0Zm10 0a1 1 0 1 0 2 0 1 1 0 0 0-2 0Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5h12v9h2.2l1.3-3H21v6h-2a3 3 0 0 1-6 0H9a3 3 0 0 1-6 0H2v-3h1V5Zm2 2v7h8V7H5Zm0 10a1 1 0 1 0 2 0 1 1 0 0 0-2 0Zm10 0a1 1 0 1 0 2 0 1 1 0 0 0-2 0Z'/%3E%3C/svg%3E");
}
.tab-icon-business {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 3h6v4h5v14H4V7h5V3Zm2 4h2V5h-2v2Zm-5 2v10h12V9H6Zm3 3h2v2H9v-2Zm4 0h2v2h-2v-2Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 3h6v4h5v14H4V7h5V3Zm2 4h2V5h-2v2Zm-5 2v10h12V9H6Zm3 3h2v2H9v-2Zm4 0h2v2h-2v-2Z'/%3E%3C/svg%3E");
}

@media (min-width: 1025px) {
  .help-guide-premium .help-tabs-layout {
    display: grid !important;
    grid-template-columns: 292px minmax(0, 1fr) !important;
    max-width: 1180px;
    margin: 0 auto;
    padding: 10px !important;
    gap: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(23,49,84,0.08);
    border-radius: 30px;
    background: #ffffff;
    box-shadow: 0 34px 90px rgba(23,49,84,0.14);
  }
  .help-guide-premium .help-tabs-nav {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px;
    justify-content: flex-start !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 28px 20px 250px !important;
    border: 0 !important;
    border-radius: 22px !important;
    background:
      linear-gradient(180deg, rgba(13,34,60,0.96), rgba(19,49,84,0.98)),
      url("https://inclinetransport.com/Staging/wp-content/uploads/2026/08/what-we-offer-open-carrier-image--640x480.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow: 0 20px 48px rgba(16,35,60,0.22);
    overflow: hidden;
  }
  .help-guide-premium .help-tabs-nav::before {
    content: "Help Topics";
    display: block;
    position: relative;
    z-index: 1;
    margin: 0 8px 16px;
    color: rgba(255,255,255,0.64) !important;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 2px;
    text-transform: uppercase;
    background: none !important;
  }
  .help-guide-premium .help-tabs-nav::after {
    content: "" !important;
    display: block !important;
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 26px;
    height: 190px;
    border-radius: 18px;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05)),
      url("https://inclinetransport.com/Staging/wp-content/uploads/2026/08/what-we-offer-open-carrier-image--640x480.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
    border: 1px solid rgba(255,255,255,0.14);
    opacity: 0.9;
  }
  .help-guide-premium .help-tab-btn {
    position: relative;
    z-index: 1;
  }
  .help-guide-premium .help-tab-btn {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 54px;
    padding: 0 14px !important;
    gap: 12px;
    border: 1px solid transparent !important;
    border-radius: 15px !important;
    color: rgba(255,255,255,0.78) !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: none !important;
  }
  .help-guide-premium .help-tab-btn:hover {
    background: rgba(255,255,255,0.10) !important;
    color: #ffffff !important;
  }
  .help-guide-premium .help-tab-btn.active,
  .help-guide-premium .help-tab-btn[aria-selected="true"] {
    background: #ffffff !important;
    border-color: rgba(255,255,255,0.22) !important;
    color: var(--navy) !important;
    box-shadow: 0 18px 32px rgba(0,0,0,0.18);
  }
  .help-guide-premium .help-tab-btn .tab-icon {
    --icon-color: currentColor;
    width: 17px;
    height: 17px;
  }
  .help-guide-premium .help-topic-panel {
    min-height: 560px;
    padding: 42px 46px 48px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    text-align: left !important;
  }
}

/* ===== HELP CENTRE — Tabbed Guide "mini grid" items (icon + title + body
   cards, e.g. the "How It Works" 5-step row, "Pricing Factors", "Coverage").
   template-parts/sections/tabbed-guide.php emits .help-mini-grid/
   .guide-card-icon markup, but neither class was ever given CSS during
   migration — items rendered as unstyled ~160px images stacked full-width
   instead of small icon cards. ===== */
/* ===== HELP CENTRE — the base .help-tabs-layout .help-topic-head { display: none; }
   rule (further up this file) hides the panel-heading block entirely for the
   premium tabbed guide, and nothing ever overrides it back — even though
   .help-topic-head h2 already has full premium typography rules waiting
   unused. Restore it so the per-tab <h2> (e.g. "How Vehicle Shipping Works")
   and intro paragraph actually render above each tab's content. ===== */
.help-guide-premium .help-topic-head {
  display: block;
  padding-bottom: 26px;
  margin-bottom: 0;
  border-bottom: 1px solid rgba(23,49,84,0.08);
}
.help-guide-premium .help-topic-head h2 {
  color: #10233c;
  font-size: clamp(30px, 3.4vw, 42px);
  font-weight: 950;
  letter-spacing: 0;
}
.help-guide-premium .help-topic-head p {
  max-width: 740px;
  margin: 12px 0 0;
  color: #516a80;
  font-size: 15px;
  line-height: 1.75;
}

.help-guide-premium .help-mini-grid {
  display: grid;
  grid-template-columns: repeat(var(--mg-cols, 4), minmax(0, 1fr));
  gap: 16px;
  margin: 26px 0 28px;
}
.help-guide-premium .help-mini-grid article {
  position: relative;
  min-height: 170px;
  padding: 84px 24px 24px;
  border: 1px solid rgba(23,49,84,0.08);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,251,254,0.96)),
    radial-gradient(circle at 22% 16%, rgba(47,155,210,0.10), transparent 34%);
  box-shadow: 0 20px 42px rgba(23,49,84,0.085);
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.help-guide-premium .help-mini-grid article:hover {
  transform: translateY(-3px);
  border-color: rgba(47,155,210,0.24);
  box-shadow: 0 26px 54px rgba(23,49,84,0.12);
}
.help-guide-premium .guide-card-icon {
  position: absolute;
  top: 24px;
  left: 24px;
  width: 48px;
  height: 48px;
  object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(25,127,180,0.16));
}
.help-guide-premium .guide-card-icon svg {
  width: 100%;
  height: 100%;
}
.help-guide-premium .help-mini-grid h3 {
  color: var(--navy-deep);
  font-size: 16px;
  font-weight: 950;
  line-height: 1.22;
  margin: 0 0 8px;
}
.help-guide-premium .help-mini-grid h3::after {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  margin-top: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--blue-dark), rgba(47,155,210,0));
}
.help-guide-premium .help-mini-grid p {
  color: var(--text-mid);
  font-size: 13.5px;
  line-height: 1.68;
  margin: 0;
}

@media (max-width: 1024px) {
  .help-guide-premium .help-mini-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .help-guide-premium .help-mini-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== HELP CENTRE — "Keep Exploring" card row. This reuses the generic
   Card Grid section (.services-grid/.svc-card, shared by many other pages'
   plain outline-icon cards), but the reference site gives this ONE instance
   its own bespoke look (filled icon badge, arrow link) via a page-specific
   .premium-explore-* block that was never ported. Scoped to this section's
   id (set in wp-admin) instead of touching the shared base classes, so
   every other page's card grids are unaffected. ===== */
/* ===== LEADCONNECTOR CHAT WIDGET — the <chat-widget> custom element is
   inserted deep in the hero section markup as a plain position:static
   element; its own shadow-DOM internals use position:fixed (correctly
   pinning it to the viewport corner visually) but position:fixed always
   opens its OWN stacking context rooted at its nearest positioned ancestor
   — and since the host itself never becomes "positioned", that context
   sits at the same unelevated paint layer as ordinary later-in-DOM content
   (e.g. the footer, which is position:relative), so the footer paints over
   it once scrolled into view. Elevating the host itself fixes this without
   needing to touch anything inside its shadow root. ===== */
chat-widget {
  position: relative;
  z-index: 2147483647;
}

#keep-exploring .services-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
}
#keep-exploring .svc-card {
  display: flex;
  flex-direction: column;
  padding: 24px !important;
  text-align: left !important;
  min-height: 180px;
  border-radius: 20px;
  border-color: rgba(47,155,210,0.15);
  box-shadow: 0 12px 28px rgba(23,49,84,0.05);
}
#keep-exploring .svc-card:hover {
  box-shadow: 0 20px 40px rgba(23,49,84,0.08);
  border-color: rgba(47,155,210,0.3);
}
#keep-exploring .icon-badge.sm {
  width: 56px;
  height: 56px;
  margin: 0 0 24px;
  border-radius: 16px;
  background: linear-gradient(135deg, #2f9bd2 0%, #1786bd 100%);
  box-shadow: 0 8px 16px rgba(47,155,210,0.25);
  transition: transform 0.3s ease;
}
#keep-exploring .svc-card:hover .icon-badge.sm {
  transform: scale(1.08) rotate(3deg);
}
#keep-exploring .icon-badge.sm svg {
  width: 28px;
  height: 28px;
  stroke: #ffffff;
  filter: none;
}
#keep-exploring .svc-card h3 {
  color: #10233c;
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 10px;
}
#keep-exploring .svc-card p {
  color: #597187;
  font-size: 14.5px;
  line-height: 1.6;
  margin-bottom: 0;
  flex-grow: 1;
}
#keep-exploring .svc-link {
  color: #1786bd;
  font-weight: 700;
  font-size: 14px;
  margin-top: 24px;
}
#keep-exploring .svc-link::after {
  content: "";
  width: 16px;
  height: 16px;
  background: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}
#keep-exploring .svc-card:hover .svc-link {
  gap: 12px;
}

/* ===== HELP CENTRE — "Didn't Find Your Answer?" premium CTA card. The
   reference site uses a bespoke light card (.premium-cta-banner) for this
   specific CTA instance instead of the shared dark/full-bleed .cta-banner
   used everywhere else — ported as an explicit "style" option on the CTA
   Banner section (defaults to the existing banner behavior everywhere else
   on the site) rather than changing the shared component. ===== */
.premium-cta-banner {
  background: linear-gradient(135deg, #f4f9fc 0%, #eaf3f8 100%);
  border: 1px solid rgba(47,155,210,0.15);
  border-radius: 32px;
  padding: 48px 24px;
  text-align: center;
  margin: 24px auto 0;
  max-width: 1180px;
  box-shadow: 0 24px 48px rgba(23,49,84,0.05);
  position: relative;
  overflow: hidden;
}
.premium-cta-banner::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(47,155,210,0.08) 0%, transparent 60%);
  z-index: 0;
}
.premium-cta-inner {
  position: relative;
  z-index: 1;
}
.premium-cta-banner .eyebrow {
  color: #1786bd;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 16px;
  font-size: 14px;
}
.premium-cta-banner h2 {
  color: #10233c;
  font-size: clamp(28px, 3.5vw, 40px);
  font-weight: 800;
  margin-bottom: 16px;
  line-height: 1.1;
}
.premium-cta-banner p {
  color: #597187;
  font-size: 16px;
  margin-bottom: 24px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.premium-cta-btns {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}
.premium-cta-banner .help-reviewed-note {
  margin-top: 24px;
  font-size: 13px;
  color: #8da4b7;
}

/* ===== SHIPPING ACROSS CANADA — Province region icons (Western/Prairie/Central/
   Atlantic). The .province-region-icon badges render (circle background) but were
   never given their per-region icon image during migration, leaving them blank. ===== */
.province-region-card:nth-child(1) .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 61L36 28L50 50L58 39L76 61H15Z' stroke='%2388bcea' stroke-width='2' fill='none'/%3E%3Cpath d='M29 68V55M22 68V58M62 68V55M70 68V58M19 68H76' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M29 55L23 61H35L29 55ZM62 55L56 61H68L62 55Z' stroke='%2388bcea' stroke-width='2'/%3E%3C/svg%3E");
}
.province-region-card:nth-child(2) .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 56C27 50 45 50 78 54M14 66C32 59 51 61 76 64' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M55 67V38M55 48C50 42 44 42 40 46M55 55C62 48 67 49 72 53' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M18 36H28M32 32H43M25 28H34' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.province-region-card:nth-child(3) .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 68H77M22 68V44H34V68M39 68V36H51V68M56 68V48H69V68' stroke='%2388bcea' stroke-width='2'/%3E%3Cpath d='M45 36V18M40 23H50M43 18H47' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M26 50H30M43 43H47M60 54H65M26 57H30M43 52H47M60 61H65' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.province-region-card:nth-child(4) .province-region-icon {
  background-image: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M39 65V32H54V65M35 65H58M42 32V24H51V32M29 65C34 58 39 57 44 63C50 55 57 55 63 63C67 58 72 58 76 63' stroke='%2388bcea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21 40C25 37 30 37 34 40M60 32C64 29 69 29 73 32' stroke='%2388bcea' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.province-region-icon {
  background-repeat: no-repeat;
  background-position: center;
  background-size: 76px 76px;
}

/* ===== SERVICES — "Vehicles We Ship" icon images. These use small ~146x90px
   source icon graphics (uploaded 2026-08-25), but the shared .svc-card-img rule
   forces every card image to 190px tall with object-fit:cover, upscaling and
   cropping these small icons into a blurry mess. Render them at their intended
   small icon size instead, matching the original design. ===== */
img[src*="Screenshot-2026-08-25"].svc-card-img {
  height: 96px !important;
  width: auto !important;
  max-width: 140px !important;
  margin: 24px auto 0 !important;
  padding: 0 16px;
  object-fit: contain !important;
  background: transparent !important;
}
.svc-card:has(img[src*="Screenshot-2026-08-25"]) {
  text-align: center;
}
.svc-card:has(img[src*="Screenshot-2026-08-25"]) .svc-card-body {
  padding-top: 8px;
}

/* ===== SHIPPING ACROSS CANADA — "Detailed routes, terminals, and transit
   times" CTA callout (icon + heading + body + button), ported from the
   original static site's styling since this component was never migrated. ===== */
.province-route-cta {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  margin-top: 24px;
  padding: 22px 32px;
  border: 1px solid rgba(47,155,210,0.13);
  border-radius: 8px;
  background: rgba(237,248,253,0.84);
  box-shadow: 0 14px 32px rgba(23,49,84,0.05);
}
.province-route-icon {
  width: 70px;
  height: 70px;
  justify-self: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg width='76' height='76' viewBox='0 0 76 76' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 49L23 44L35 49L49 42L63 47V61L49 56L35 63L23 58L13 63V49Z' stroke='%2388bcea' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M45 24C45 33 36 42 36 42S27 33 27 24A9 9 0 1 1 45 24Z' stroke='%23197fb4' stroke-width='2'/%3E%3Ccircle cx='36' cy='24' r='3' fill='%23197fb4'/%3E%3C/svg%3E");
}
.province-route-cta h3 {
  margin: 0 0 6px;
  color: var(--navy);
  font-size: 18px;
  font-weight: 900;
}
.province-route-cta p {
  margin: 0;
  color: #526b82;
  font-size: 14px;
  font-weight: 650;
}
.province-route-cta .btn {
  min-width: 280px;
  justify-content: center;
  border-radius: 6px;
  background: var(--blue-dark);
}
@media (max-width: 980px) {
  .province-region-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .province-route-cta { grid-template-columns: 76px minmax(0, 1fr); }
  .province-route-cta .btn { grid-column: 2; justify-self: start; margin-top: 8px; }
}
@media (max-width: 560px) {
  .province-region-grid { grid-template-columns: 1fr; }
  .province-route-cta { grid-template-columns: 1fr; text-align: center; }
  .province-route-cta .btn { grid-column: 1; justify-self: center; width: 100%; min-width: 0; margin-top: 12px; }
}

/* ===== SHIPPING ACROSS CANADA — Shipping Options panel, section-header
   consistency pass, and CTA alignment cleanup. Ported wholesale from the
   original static site's global.css (shippingacrossindia.html), which had
   these as page-specific overrides never migrated into the theme CSS. ===== */
/* Shipping Across Canada shipping options and process */
html body.home-page main.service-copy-page.routes-page .shipping-options-section {
  position: relative !important;
  overflow: hidden !important;
  padding-top: calc(var(--routes-section-gap, 58px) + 8px) !important;
  padding-bottom: calc(var(--routes-section-gap, 58px) + 12px) !important;
  background:
    linear-gradient(180deg, rgba(245,251,255,0.96) 0%, rgba(255,255,255,0.98) 48%, rgba(245,251,255,0.98) 100%) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-options-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 18px max(28px, calc((100vw - 1180px) / 2)) auto !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(47,155,210,0.32), transparent) !important;
}

html body.home-page main.service-copy-page.routes-page .hs-stat-note {
  margin-top: 4px !important;
  color: #6c8195 !important;
  font-size: 10.5px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-options-section > .container {
  position: relative !important;
  z-index: 1 !important;
  max-width: 1120px !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 330px !important;
  align-items: stretch !important;
  gap: 26px !important;
  overflow: hidden !important;
  padding: 12px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(237,248,253,0.9)) !important;
  box-shadow: 0 24px 58px rgba(23,49,84,0.11) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-copy {
  position: relative !important;
  min-height: 246px !important;
  padding: 34px 38px !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,0.72) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-copy::before {
  content: "" !important;
  position: absolute !important;
  left: 38px !important;
  top: 0 !important;
  width: 74px !important;
  height: 4px !important;
  border-radius: 0 0 999px 999px !important;
  background: var(--blue-dark) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-kicker {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  margin: 0 0 18px !important;
  padding: 7px 12px !important;
  border: 1px solid rgba(47,155,210,0.18) !important;
  border-radius: 999px !important;
  background: #edf8fd !important;
  color: var(--blue-dark) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-icon {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-panel h3 {
  margin: 0 0 8px !important;
  color: var(--navy) !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-panel p {
  margin: 0 !important;
  color: #31495f !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 22px !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-badges span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 8px 13px !important;
  border: 1px solid rgba(47,155,210,0.16) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #173154 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  box-shadow: 0 8px 18px rgba(23,49,84,0.05) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-visual {
  position: relative !important;
  display: block !important;
  min-height: 246px !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  background: #173154 !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-visual::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(180deg, rgba(23,49,84,0.02) 38%, rgba(23,49,84,0.82) 100%),
    linear-gradient(90deg, rgba(25,127,180,0.16), rgba(23,49,84,0)) !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-visual > * {
  position: relative !important;
  z-index: 2 !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-visual img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body.home-page main.service-copy-page.routes-page .shipping-option-note {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  max-width: none !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  border-radius: 8px !important;
  background: rgba(23,49,84,0.72) !important;
  color: #ffffff !important;
  font-size: 12.8px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
  text-align: left !important;
  backdrop-filter: blur(8px) !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section {
  display: block !important;
  padding-top: var(--routes-section-gap, 58px) !important;
  padding-bottom: var(--routes-section-gap, 58px) !important;
  margin: 0 !important;
  background:
    radial-gradient(circle at 14% 16%, rgba(79,195,247,0.16), transparent 28%),
    radial-gradient(circle at 88% 78%, rgba(47,155,210,0.12), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f3fbff 58%, #ffffff 100%) !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .fade-up {
  opacity: 1 !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .section-title.light {
  color: var(--navy) !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .section-sub.light {
  color: #526b82 !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .step-card p {
  color: #5f7589 !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .step-card h3 {
  color: var(--navy) !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.routes-page .shipping-option-panel {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 12px !important;
    padding: 10px !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .shipping-option-copy {
    min-height: 0 !important;
    padding: 30px 22px 24px !important;
  }

  html body.home-page main.service-copy-page.routes-page .shipping-option-copy::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  html body.home-page main.service-copy-page.routes-page .shipping-option-badges {
    justify-content: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .shipping-option-visual {
    width: 100% !important;
    min-height: 220px !important;
  }
}

/* Shipping Across Canada: clean, consistent section headers */
html body.home-page main.service-copy-page.routes-page #provinces,
html body.home-page main.service-copy-page.routes-page #popular-routes,
html body.home-page main.service-copy-page.routes-page #shipping-options,
html body.home-page main.service-copy-page.routes-page .services-faq-section,
html body.home-page main.service-copy-page.routes-page .route-process-section {
  overflow: visible !important;
  padding-top: 52px !important;
  padding-bottom: 56px !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header,
html body.home-page main.service-copy-page.routes-page #popular-routes .section-header,
html body.home-page main.service-copy-page.routes-page #shipping-options .section-header,
html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header,
html body.home-page main.service-copy-page.routes-page .route-process-section .section-header {
  max-width: 820px !important;
  margin: 0 auto 26px !important;
  padding: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .eyebrow,
html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .eyebrow,
html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .eyebrow,
html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .eyebrow,
html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .eyebrow {
  display: block !important;
  margin: 0 0 16px !important;
  color: #1f75d6 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 5px !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .eyebrow::after,
html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .eyebrow::after,
html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .eyebrow::after,
html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .eyebrow::after,
html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .eyebrow::after {
  display: none !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .section-title,
html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .section-title,
html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .section-title,
html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .section-title,
html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .section-title {
  max-width: 760px !important;
  margin: 0 auto 12px !important;
  color: var(--navy) !important;
  font-size: clamp(32px, 3.2vw, 42px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page #provinces .section-header .section-sub,
html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .section-sub,
html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .section-sub,
html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .section-sub,
html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .section-sub {
  max-width: 720px !important;
  margin: 0 auto !important;
  color: #526b82 !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 650 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .route-process-section .steps-grid {
  margin-top: 4px !important;
}

@media (max-width: 640px) {
  html body.home-page main.service-copy-page.routes-page #provinces,
  html body.home-page main.service-copy-page.routes-page #popular-routes,
  html body.home-page main.service-copy-page.routes-page #shipping-options,
  html body.home-page main.service-copy-page.routes-page .services-faq-section,
  html body.home-page main.service-copy-page.routes-page .route-process-section {
    padding-top: 42px !important;
    padding-bottom: 46px !important;
  }

  html body.home-page main.service-copy-page.routes-page #provinces .section-header,
  html body.home-page main.service-copy-page.routes-page #popular-routes .section-header,
  html body.home-page main.service-copy-page.routes-page #shipping-options .section-header,
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header,
  html body.home-page main.service-copy-page.routes-page .route-process-section .section-header {
    margin-bottom: 22px !important;
  }

  html body.home-page main.service-copy-page.routes-page #provinces .section-header .section-title,
  html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .section-title,
  html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .section-title,
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .section-title,
  html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .section-title {
    font-size: clamp(30px, 8vw, 38px) !important;
  }

  html body.home-page main.service-copy-page.routes-page #provinces .section-header .section-sub,
  html body.home-page main.service-copy-page.routes-page #popular-routes .section-header .section-sub,
  html body.home-page main.service-copy-page.routes-page #shipping-options .section-header .section-sub,
  html body.home-page main.service-copy-page.routes-page .services-faq-section .section-header .section-sub,
  html body.home-page main.service-copy-page.routes-page .route-process-section .section-header .section-sub {
    font-size: 14.5px !important;
    line-height: 1.5 !important;
  }
}

/* Shipping Across Canada: CTA alignment cleanup */
html body.home-page main.service-copy-page.routes-page .province-route-cta,
html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 20px !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta > div,
html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote > div {
  min-width: 0 !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta h3,
html body.home-page main.service-copy-page.routes-page .province-route-cta p,
html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote h3,
html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote p {
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .province-route-cta .btn,
html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote .btn {
  justify-self: end !important;
  width: auto !important;
  min-width: 238px !important;
  margin: 0 !important;
  text-align: center !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta.cta-banner {
  display: flex !important;
  align-items: center !important;
  min-height: 390px !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-inner,
html body.home-page main.service-copy-page.routes-page .services-final-cta .container {
  width: 100% !important;
  max-width: 1180px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-content {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .eyebrow,
html body.home-page main.service-copy-page.routes-page .services-final-cta h2,
html body.home-page main.service-copy-page.routes-page .services-final-cta p {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: flex-start !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  gap: 12px !important;
  transform: none !important;
}

html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons .btn {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 184px !important;
  justify-content: center !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  html body.home-page main.service-copy-page.routes-page .province-route-cta,
  html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 14px !important;
    text-align: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta h3,
  html body.home-page main.service-copy-page.routes-page .province-route-cta p,
  html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote h3,
  html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote p {
    text-align: center !important;
  }

  html body.home-page main.service-copy-page.routes-page .province-route-cta .btn,
  html body.home-page main.service-copy-page.routes-page #popular-routes .route-custom-quote .btn {
    justify-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-final-cta .cta-inner,
  html body.home-page main.service-copy-page.routes-page .services-final-cta .container {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons,
  html body.home-page main.service-copy-page.routes-page .services-final-cta .route-final-buttons .btn {
    width: 100% !important;
  }
}

/* Final Services vehicle-type override: the existing card count stays intact,
   while the section adopts the reference's open blue field and white card rail. */
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section {
  padding: 58px 0 54px !important;
  border: 0 !important;
  background: #f5fbff !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section > .container {
  max-width: 1520px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section .section-header {
  max-width: 760px !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section .section-title {
  margin: 0 0 10px !important;
  color: #071d3b !important;
  font-size: clamp(36px, 3.7vw, 54px) !important;
  line-height: 1.06 !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-section .section-sub {
  max-width: 700px !important;
  margin: 0 auto !important;
  color: #415970 !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid {
  overflow: hidden !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid rgba(13,61,107,.08) !important;
  border-radius: 13px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(10,39,70,.08) !important;
}
/* The Services CMS currently has four vehicle cards. Keep the rail centered
   by matching its grid tracks to that existing card count. */
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid > .service-reference-card:nth-last-child(4):first-child,
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid > .service-reference-card:nth-last-child(4):first-child ~ .service-reference-card {
  grid-column: auto !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid .service-reference-card {
  min-height: 224px !important;
  padding: 28px 22px 22px !important;
  justify-content: flex-start !important;
}
html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid img {
  width: 96px !important;
  max-width: 96px !important;
  height: 62px !important;
  margin: 0 auto 18px !important;
}
@media (max-width: 900px) {
  html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.home-page main.service-copy-page.services-page .vehicles-we-ship-grid .service-reference-card:nth-child(2) { border-right: 0 !important; }
}

/* Must match the specificity of the original six-column Services rule. */
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .vehicles-we-ship-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body.home-page main.service-copy-page.services-page:not(.routes-page):not(.dealer-page) .vehicles-we-ship-section .vehicles-we-ship-grid > .service-reference-card:first-child {
  grid-column-start: auto !important;
}


/* ===== STICKY QUICK QUOTE - inline expand (Sep 2026) =====
   The sticky bar under the nav renders the same two-step
   template-parts/quick-quote-form.php component used by the hero, so
   clicking through reveals the rest of the fields (and the submit
   button) in place here instead of jumping to the hero form.
   See header.php and assets/js/main.js.

   UPDATE: the first pass used a generous fixed max-height (520/640px)
   sized to fit the whole 2-step form at once. Because #main-nav is
   position:fixed, that made the expanded bar cover most of the
   viewport as soon as a visitor scrolled a few pixels, hiding the rest
   of the page. This version compacts the shared form's spacing (sticky
   bar only - the hero banner keeps its normal sizing) and sizes the
   bar to fit one step's fields, with .sticky-quote-box scrolling
   internally as a safety net instead of clipping content. ===== */
.sticky-inner { flex-direction: column; align-items: stretch; gap: 4px; padding: 8px 0; }
.sticky-quote-box { width: 100%; max-height: 320px; overflow-y: auto; }
.sticky-quote-box .quick-quote-form { max-width: 640px; margin: 0 auto; }

.sticky-quote-box .form-row { gap: 8px; margin-bottom: 8px; }
.sticky-quote-box .fg { gap: 3px; }
.sticky-quote-box .fg label { margin-bottom: 2px; font-size: 10px; }
.sticky-quote-box .fg input,
.sticky-quote-box .fg select { min-height: 36px; padding: 7px 12px; font-size: 13px; }
.sticky-quote-box .form-submit-row { margin-top: 6px; }
.sticky-quote-box .form-submit,
.sticky-quote-box [data-quote-next],
.sticky-quote-box [data-quote-back] { padding: 9px 18px; font-size: 13px; }

#sticky-search.visible { max-height: 360px; }

@media (max-width: 640px) {
  .sticky-quote-box { max-height: 380px; }
  #sticky-search.visible { max-height: 420px; }
}

/* ===== STICKY QUICK QUOTE - close button (Sep 2026) =====
   Lets a visitor dismiss the expanded bar to see the page underneath.
   See header.php (.sticky-quote-close button) and main.js. ===== */
.sticky-quote-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.sticky-quote-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  background: #315277;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  border-radius: 50%;
  transition: background 0.15s, transform 0.15s;
}
.sticky-quote-close:hover,
.sticky-quote-close:focus-visible {
  background: var(--navy);
}
/* Mobile menu quote CTA text visibility (Sep 2026). */
#mobile-nav .btn-primary,
#mobile-nav .btn-primary:hover,
#mobile-nav .btn-primary:focus-visible,
#mobile-nav .btn-primary.active {
  color: #ffffff !important;
}


/* Footer logo aspect ratio fix (Sep 2026). */
footer .custom-logo-link,
footer .footer-brand-logo {
  display: inline-flex;
  align-items: center;
}

footer img.custom-logo {
  width: min(150px, 100%) !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}
