.atoz-route-page { color: #172b36; background: #fff; font-family: Arial, sans-serif; font-size: 16px; line-height: 1.65; }
.atoz-route-page *, .atoz-route-page *::before, .atoz-route-page *::after { box-sizing: border-box; }
.atoz-route-container { width: min(1120px, 100% - 40px); margin-inline: auto; }
.atoz-route-hero { padding: 64px 0 44px; background: #eef5f5; border-top: 1px solid #dde8e8; }
.atoz-route-page .atoz-route-eyebrow { margin: 0 0 12px; color: #326269; font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.atoz-route-page h1 { max-width: 820px; margin: 0 0 20px; font-size: clamp(36px, 5.5vw, 68px); line-height: 1.08; letter-spacing: -.04em; color: #172b36; }
.atoz-route-page h2 { margin: 0 0 18px; font-size: clamp(25px, 3vw, 36px); line-height: 1.2; color: #172b36; }
.atoz-route-page h3 { font-size: 20px; line-height: 1.3; }
.atoz-route-lead { max-width: 680px; font-size: 19px; }
.atoz-route-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin: 26px 0 18px; }
.atoz-route-page .atoz-route-button { display: inline-flex; gap: 24px; padding: 14px 24px; border-radius: 8px; background: #173e46; color: #fff; font-weight: 700; text-decoration: none; }
.atoz-route-page .atoz-route-call { color: #173e46; font-weight: 700; padding-block: 10px; }
.atoz-route-note { font-size: 14px; color: #52666b; }
.atoz-route-booking { padding: 48px 20px; scroll-margin-top: 20px; background: #172b36; }
.atoz-route-booking .atoz-step { background: #fff; box-shadow: 0 18px 50px rgba(0,0,0,.22); }
.atoz-route-booking .quote-resume-loading { color: #fff; }
.atoz-route-section { padding-block: 56px; }
.atoz-route-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 30px; }
.atoz-route-grid article { padding: 24px; background: #f6f8f8; border: 1px solid #e3eaea; border-radius: 12px; }
.atoz-route-number { display: block; color: #326269; font-size: 14px; font-weight: 700; margin-bottom: 18px; }
.atoz-route-grid p { margin-bottom: 0; }
.atoz-route-band { background: #f0f5f5; padding-block: 48px; }
.atoz-route-two-column { display: grid; grid-template-columns: 1fr 1.3fr; gap: 48px; }
.atoz-route-vehicles img { display: block; width: 100%; height: 170px; object-fit: contain; }
.atoz-route-vehicles article { text-align: center; }
.atoz-route-vehicles a { display: inline-block; padding: 10px; }
.atoz-route-faq { max-width: 850px; }
.atoz-route-faq details { border-bottom: 1px solid #dce5e5; padding: 18px 0; }
.atoz-route-faq summary { cursor: pointer; font-weight: 700; padding: 4px 0; }
.atoz-route-faq details p { margin: 16px 0 0; }
.atoz-route-page .atoz-site-footer { background: #172b36; }
.atoz-route-page a:focus-visible, .atoz-route-page summary:focus-visible { outline: 3px solid #327886; outline-offset: 4px; }
/* Keep the checkout view focused; the same DOM returns when Step 1 is visible. */
.atoz-route-page:has(.step2:not(.hidden)) .atoz-route-hero,
.atoz-route-page:has(.step3:not(.hidden)) .atoz-route-hero,
.atoz-route-page:has(.step2:not(.hidden)) .atoz-route-information,
.atoz-route-page:has(.step3:not(.hidden)) .atoz-route-information,
.atoz-route-page:has(.step2:not(.hidden)) .atoz-site-footer,
.atoz-route-page:has(.step3:not(.hidden)) .atoz-site-footer { display: none; }
@media (max-width: 700px) {
    .atoz-route-hero { padding: 34px 0 24px; }
    .atoz-route-lead { font-size: 17px; }
    .atoz-route-grid, .atoz-route-two-column { grid-template-columns: 1fr; gap: 18px; }
    .atoz-route-section { padding-block: 34px; }
    .atoz-route-booking { padding: 24px 12px; }
    .atoz-route-vehicles img { height: 150px; }
}
