/* Modern visual identity; existing page sections, catalogue and booking flow stay intact. */
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/manrope-latin-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/manrope-latin-500-normal.woff2') format('woff2');
}
@font-face {
  font-family: Manrope;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/manrope-latin-700-normal.woff2') format('woff2');
}
:root {
  --blue: #2463eb;
  --blue-dark: #174ec5;
  --navy: #102039;
  --ink: #14253d;
  --muted: #6c788c;
  --pale: #f5f7fb;
  --line: #e3e8f1;
  --radius: 18px;
  --finish-shadow: 0 8px 24px #14253d05;
}
body {
  font-family: Manrope, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  color: var(--ink);
  background: #fff;
}
h1,
h2,
h3 {
  font-family: Manrope, Arial, sans-serif;
  letter-spacing: -0.035em;
}
h1,
h2 {
  font-weight: 700;
  line-height: 1.17;
}
h1 {
  font-size: clamp(38px, 4.7vw, 66px);
}
h2 {
  font-size: clamp(28px, 3vw, 42px);
}
h3 {
  font-weight: 700;
  line-height: 1.4;
}
p {
  line-height: 1.85;
}
a,
button {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  transition:
    color 0.18s,
    background 0.18s,
    box-shadow 0.18s,
    border-color 0.18s;
}
.button {
  border-radius: 11px;
  font-weight: 700;
  font-size: 12px;
  padding: 13px 21px;
  box-shadow: none;
  gap: 20px;
}
.button.primary {
  background: var(--blue);
  box-shadow: 0 5px 13px #2463eb16;
}
.button.primary:hover {
  background: var(--blue-dark);
  box-shadow: 0 8px 18px #2463eb24;
}
.button.outline {
  border-color: #dce3ed;
  background: #fff;
}
.button.outline:hover {
  background: #f3f6fd;
  border-color: #bbcef1;
}
.brand {
  color: var(--blue);
}

.home-service-card > .home-service-photo {
  order: -2;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 8 / 5;
  object-fit: cover;
  border-radius: 12px;
  margin: 0 0 22px;
}
#siteHeader .home-nav-row #siteNav > a,
#siteHeader .home-sticky nav a {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  text-transform: none;
}
@media (min-width: 1000px) and (max-width: 1200px) {
  #siteHeader .home-header-wrap { gap: 20px; }
  #siteHeader .home-nav-row #siteNav { gap: 16px; }
  #siteHeader .home-nav-row #siteNav > a,
  #siteHeader .home-sticky nav a { font-size: 14px; }
}
@media (max-width: 700px) {
  #siteHeader .home-nav-row #siteNav > a { font-size: 16px; }
}
#siteFooter:has(.home-footer-main) { padding-top: 48px; }
#siteFooter .home-footer-main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; padding-bottom: 40px; }
#siteFooter .home-footer-main h2 { margin-bottom: 12px; }
#siteFooter .home-footer-main p { max-width: none; margin-bottom: 12px; line-height: 1.7; }
#siteFooter .home-footer-call { margin-top: 16px; }
#siteFooter .home-footer-main iframe { display: block; width: 100%; height: 230px; border: 0; border-radius: 14px; background: #edf3ff; }
#siteFooter .home-footer-bottom > .home-shell { min-height: 0; padding-block: 28px; align-items: center; }
#siteFooter .home-footer-bottom p { margin: 0; color: #fff; font: 500 15px/1.8 Manrope, Arial, sans-serif; }
#siteFooter .home-footer-bottom > .home-shell { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 28px; }
#siteFooter .home-footer-bottom a { color: #fff; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 700px) {
  #siteFooter .home-footer-main { grid-template-columns: 1fr; gap: 30px; }
  #siteFooter .home-footer-bottom > .home-shell { flex-direction: column; align-items: flex-start; gap: 12px; }
}
.fleet-preview { display: none; }
@media (min-width: 1000px) {
  .home-tariff-grid > .fleet-preview {
    display: flex;
    flex-direction: column;
    grid-column: 2 / 4;
    grid-row: 3;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e3e8f1;
    border-radius: 18px;
    background: #fff;
  }
  .fleet-preview-images { position: relative; flex: 1; min-height: 300px; background: #fafbfd; }
  .fleet-preview-images img { position: absolute; inset: 0; width: 100%; height: 100%; padding: 24px; object-fit: contain; opacity: 0; transition: opacity 850ms ease; }
  .fleet-preview-images img.is-active { opacity: 1; }
  .fleet-preview-caption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 28px; border-top: 1px solid #edf1f7; }
  .fleet-preview-caption small { color: #64748b; font-size: 10px; letter-spacing: .15em; }
  .fleet-preview-caption h3 { margin: 8px 0 0; color: #14253d; font: 700 24px Manrope, Arial, sans-serif; }
  .fleet-preview-caption button { border: 1px solid #dce5f2; border-radius: 9px; padding: 12px 18px; background: #edf3ff; color: #2463eb; cursor: pointer; }
}
@media (prefers-reduced-motion: reduce) {
  .fleet-preview-images img { transition: none; }
}
.brand-logo {
  display: block;
  width: 240px;
  height: 76px;
  object-fit: contain;
  object-position: left center;
}
.brand b {
  font-style: normal;
  font-family: Manrope, Arial, sans-serif;
  letter-spacing: -0.04em;
  font-size: 22px;
}
.brand-mark {
  border-radius: 12px;
  font-style: normal;
}
.brand small {
  letter-spacing: 0.22em;
  font-size: 8px;
}
.topline {
  background: #102039;
}
.header-main {
  height: 90px;
}
.header-info small {
  font-size: 10px;
  letter-spacing: 0.04em;
}
.nav-bar {
  box-shadow: none;
  border-color: #edf0f5;
}
#siteNav > a {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.025em;
}
.nav-call {
  font-size: 11px;
}
.nav-call > span {
  border-radius: 9px;
}
.section-title .eyebrow {
  letter-spacing: 0.13em;
  font-size: 10px;
}
.section-title h2 {
  font-size: clamp(28px, 3vw, 42px);
}
.section-title p {
  font-size: 14px;
}
.service-card,
.vehicle-card,
.package-card {
  border: 1px solid #e3e8f1;
  border-radius: 18px;
  box-shadow: var(--finish-shadow);
  transition:
    box-shadow 0.2s,
    border-color 0.2s;
}
.service-card:hover,
.vehicle-card:hover,
.package-card:hover {
  border-color: #c0d1ed;
  box-shadow: 0 14px 32px #14253d0d;
  transform: none;
}
.service-symbol {
  border-radius: 14px;
  background: #edf3ff;
}
.service-card h3 {
  font-size: 17px;
}
.vehicle-photo {
  background: #f7f9fc;
}
.vehicle-photo > img {
  mix-blend-mode: normal;
  border-radius: 10px;
}
.vehicle-tag {
  border-radius: 6px;
  border: 0;
  background: #fff;
  color: #62738e;
  font-size: 9px;
  padding: 5px 9px;
}
.vehicle-content {
  background: #fff;
  color: var(--ink);
  padding: 24px;
}
.vehicle-content h3 {
  font-size: 20px;
  font-weight: 700;
}
.vehicle-specs {
  color: #748096;
  border-color: #e7ecf3;
  font-size: 11px;
  gap: 18px;
}
.price-line small {
  color: #7c889a;
  font-size: 10px;
}
.price-line strong {
  color: var(--ink);
  font-size: 26px;
  letter-spacing: -0.045em;
}
.price-line strong > span {
  color: #788599;
  letter-spacing: 0;
}
.price-line .button {
  background: var(--blue);
  color: #fff;
  box-shadow: none;
  border-radius: 8px;
  font-size: 11px;
  padding: 10px 14px;
}
.pricing-note {
  border-left: 2px solid #b6caf0;
  background: #edf3fc;
  border-radius: 0 12px 12px 0;
  font-size: 11px;
}
.pricing-note p {
  line-height: 1.85;
}
.page-hero {
  background: #102039;
  margin: 22px auto 0;
  border-radius: 22px;
  max-width: calc(100% - 40px);
  min-height: 280px;
}
.page-hero h1 {
  font-size: clamp(36px, 4vw, 56px);
  letter-spacing: -0.045em;
}
.page-hero p {
  font-size: 13px;
  max-width: 530px;
}
.page-hero > img {
  opacity: 0.15;
  mix-blend-mode: normal;
}
.page-hero .eyebrow {
  font-size: 9px;
  color: #a4c2ff;
}
.breadcrumb {
  margin-top: 25px;
  font-size: 10px;
}
.filter {
  border-radius: 9px;
  border-color: #e1e6ef;
  font:
    500 11px Manrope,
    Arial,
    sans-serif;
  padding: 10px 15px;
}
.filter.active {
  background: #14253d;
  border-color: #14253d;
}
.filter:not(.active):hover {
  background: #edf3fc;
}
.fleet-sort {
  font-size: 10px;
}
.fleet-sort select {
  border-radius: 9px;
  font-size: 11px;
  padding: 10px;
}
.package-card > img {
  height: 225px;
}
.package-content {
  padding: 26px;
}
.package-content h2 {
  font-size: 26px;
  letter-spacing: -0.04em;
  line-height: 1.25;
}
.package-content .eyebrow {
  font-size: 8px;
  letter-spacing: 0.12em;
}
.package-content p {
  font-size: 12px;
}
.package-content .button {
  font-size: 11px;
  border-radius: 9px;
}
.package-price {
  border-color: #edf0f5;
}
.package-price strong {
  font-size: 18px;
}
.contact-form {
  border-radius: 18px;
  padding: 36px;
  background: #f5f7fb;
}
.contact-form h2 {
  font-size: 34px;
}
.contact-info {
  background: #102039;
  border-radius: 18px;
  padding: 36px;
}
.contact-info h2 {
  font-size: 32px;
  color: #fff;
}
.contact-info dt {
  font-size: 9px;
  letter-spacing: 0.1em;
}
.contact-info dd {
  font-size: 12px;
}
.contact-info .eyebrow {
  font-size: 9px;
}
.booking-intro {
  background: #102039;
  padding: 36px 0;
}
.booking-intro h1 {
  font-size: 44px;
  letter-spacing: -0.045em;
}
.booking-intro p {
  font-size: 13px;
}
.booking-intro .eyebrow {
  font-size: 9px;
  letter-spacing: 0.12em;
}
.booking-area {
  background: #f5f7fb;
}
.booking-panel,
.booking-summary {
  border-radius: 17px;
  border: 1px solid #e4e9f1;
  box-shadow: var(--finish-shadow);
}
.booking-panel h2 {
  font-size: 28px;
  letter-spacing: -0.04em;
}
.booking-summary h2 {
  font-family: Manrope, Arial, sans-serif;
  font-size: 16px;
  letter-spacing: -0.025em;
}
.booking-panel p {
  font-size: 12px;
}
.booking-steps li {
  font-size: 10px;
}
.booking-steps li > span {
  border-radius: 11px;
  width: 33px;
  height: 33px;
}
.booking-steps li[aria-current] > span,
.booking-steps li.complete > span {
  background: #2463eb;
  box-shadow: 0 4px 12px #2463eb18;
}
.booking-summary dd {
  font-size: 12px;
}
.booking-summary dt {
  font-size: 9px;
}
.summary-hint {
  background: #f3f6fc;
  border-radius: 10px;
  font-size: 10px;
}
.trip-types span {
  border-radius: 9px;
  font-size: 11px;
  padding: 13px 7px;
}
.trip-types input:checked + span {
  background: #2463eb;
  border-color: #2463eb;
}
.vehicle-choice > span {
  border-radius: 12px;
  border-color: #e2e8f2;
  padding: 17px;
}
.vehicle-choice input:checked + span {
  background: #f4f7ff;
  border-color: #2463eb;
  box-shadow: 0 0 0 1px #2463eb;
}
.vehicle-choice b {
  font-size: 13px;
}
.vehicle-choice strong {
  font-size: 20px;
  letter-spacing: -0.04em;
}
.vehicle-choice small {
  font-size: 9px;
}
.review-list dt {
  font-size: 10px;
}
.review-list dd {
  font-size: 12px;
}
.booking-success {
  border-radius: 12px;
}
.booking-help {
  font-size: 11px;
}
.booking-help a {
  color: #2463eb;
}
.form-note {
  font-size: 10px !important;
}
.form-note a {
  color: #2463eb;
}
.check-label {
  font-size: 11px;
}
input,
select,
textarea {
  font:
    400 13px/1.5 Manrope,
    Arial,
    sans-serif;
  border: 1px solid #dce4ef;
  border-radius: 9px;
  padding: 12px 13px;
  color: #14253d;
  background: #fff;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
}
input::placeholder,
textarea::placeholder {
  color: #95a0b1;
}
input:focus,
select:focus,
textarea:focus {
  outline: 0;
  border-color: #2463eb;
  box-shadow: 0 0 0 3px #2463eb12;
}
label {
  font-size: 11px;
  font-weight: 500;
}
.lightbox {
  border-radius: 18px;
  box-shadow: 0 25px 80px #0003;
}
.lightbox-close {
  border-radius: 10px;
  background: #f1f4f8;
  color: #15253d;
}
.map-placeholder {
  background: #eef3fa;
  border: 1px solid #dde5f1;
  border-radius: 13px;
}
.map-placeholder .button {
  border-radius: 8px;
  font-size: 10px;
}
.map-placeholder p {
  font-size: 10px;
}
.map-placeholder > strong {
  font-size: 11px;
}
.map-placeholder.map-loaded > a {
  display: block;
  padding: 10px;
}
.why-grid article > span {
  border-radius: 14px;
  background: #f3f6fc;
  border: 0;
}
.why-grid h3 {
  font-size: 16px;
}
.why-grid p {
  font-size: 12px;
}
.gallery-item {
  border-radius: 13px;
}
.gallery-item > span {
  font-size: 12px;
  padding: 16px 18px;
}
.cta-band {
  background: #102039;
}
.cta-band h2 {
  font-size: 36px;
}
.cta-band .button {
  border-radius: 10px;
  color: #14253d;
}
.cta-band p {
  font-size: 12px;
}
.intro-visual {
  border-radius: 18px;
}
.intro-visual img {
  mix-blend-mode: normal;
  border-radius: 11px;
}
.intro-visual strong {
  font-family: Manrope, Arial, sans-serif;
  font-weight: 700;
  letter-spacing: -0.06em;
  font-size: 58px;
}
.rate-band {
  background: #102039;
}
.rate-list a {
  font-size: 12px;
}
.rate-list strong {
  font-size: 15px;
}
.rate-band h2 {
  font-size: 37px;
}
#siteFooter {
  background: #0b172b;
}
.footer-main h2 {
  font:
    700 13px Manrope,
    Arial,
    sans-serif;
}
.footer-main p,
.footer-main a:not(.brand) {
  font-size: 11px;
}
.footer-main .brand b {
  font-size: 20px;
}
.footer-main .brand-mark > span {
  background: #0b172b;
}
.footer-main .brand small {
  font-size: 7px;
}
.footer-main .footer-phone {
  font-size: 22px !important;
  letter-spacing: -0.025em;
}
.footer-bottom {
  font-size: 9px;
  border-color: #ffffff15;
}
#quickActions > a {
  border-radius: 15px;
  height: 47px;
  width: 47px;
  box-shadow: 0 5px 18px #10203920;
}
#quickActions > a:hover {
  box-shadow: 0 8px 22px #10203930;
  transform: translateY(-2px);
}
.quick-book,
.quick-call {
  background: #2463eb;
}
.back-to-top {
  border-radius: 12px;
  box-shadow: 0 4px 14px #10203910;
}
/* Home: same section sequence, completely different visual treatment. */
.reference-home {
  background: #fff;
  color: #14253d;
}
.reference-home h1,
.reference-home h2,
.reference-home h3 {
  font-family: Manrope, Arial, sans-serif;
  text-transform: none;
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 1.2;
}
.reference-home h2 {
  font-size: 38px;
}
.reference-home p {
  font-family: Manrope, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.9;
  color: #768195;
}
.home-shell {
  width: min(1180px, calc(100% - 64px));
}
.reference-home #siteHeader {
  background: #fff;
  position: relative;
  top: auto;
  border-bottom: 1px solid #edf0f5;
}
.home-header-wrap {
  width: min(1180px, calc(100% - 64px));
  height: 194px;
  filter: none;
}
.home-topline {
  height: 34px;
  background: #102039;
  color: #c9d6e9;
  margin-inline: calc((min(1180px, 100vw - 64px) - 100vw) / 2);
  padding-inline: max(calc((100vw - 1180px) / 2), 32px);
  border-radius: 0;
  font-size: 10px;
  letter-spacing: 0.01em;
}
.home-topline > a {
  gap: 9px;
}
.home-topline svg {
  width: 13px;
  height: 13px;
}
.home-info-row {
  height: 92px;
  padding: 0;
  border: 0;
  background: #fff;
}
.home-brand b {
  font:
    700 24px/1.15 Manrope,
    Arial,
    sans-serif;
  font-style: normal;
  letter-spacing: -0.05em;
  color: #14253d;
}
.home-brand small {
  font:
    700 8px Manrope,
    Arial,
    sans-serif;
  letter-spacing: 0.2em;
  color: #7c8aa0;
}
.home-brand .brand-mark {
  height: 43px;
  width: 43px;
  font-family: Manrope, Arial, sans-serif;
  font-size: 27px;
  border-color: #2463eb;
  color: #2463eb;
  border-radius: 12px;
  background: #f6f9ff;
}
.home-brand .brand-mark > span {
  font-size: 15px;
  background: #fff;
}
.home-header-detail {
  border: 0;
  gap: 12px;
  padding: 0;
}
.home-header-detail > svg {
  height: 27px;
  width: 27px;
  color: #6b86b1;
}
.home-header-detail small {
  font:
    400 10px Manrope,
    Arial,
    sans-serif;
  color: #98a1b0;
  margin-bottom: 5px;
}
.home-header-detail strong,
.home-header-detail a {
  font:
    700 11px Manrope,
    Arial,
    sans-serif;
  color: #425675;
}
.home-nav-row {
  height: 68px;
  padding: 0;
  gap: 28px;
  border-top: 1px solid #edf0f5;
  background: #fff;
}
.home-nav-row > .home-button {
  min-width: 140px;
  min-height: 42px;
  font-size: 10px;
  padding: 12px 20px;
  order: 2;
}
.reference-home #siteNav {
  justify-content: flex-start;
  gap: 34px;
  order: 1;
  position: static;
  box-shadow: none;
  padding: 0;
  background: transparent;
}
.reference-home #siteNav > a {
  font:
    700 11px Manrope,
    Arial,
    sans-serif;
  text-transform: none;
  letter-spacing: 0;
  color: #748197;
  padding: 22px 0;
}
.reference-home #siteNav > a:hover,
.reference-home #siteNav > a[aria-current] {
  color: #2463eb;
}
.reference-home #siteNav > a[aria-current]:after {
  display: none;
}
.home-nav-curve,
.home-center-phone {
  display: none;
}
.home-button {
  font:
    700 11px/1.4 Manrope,
    Arial,
    sans-serif;
  letter-spacing: 0;
  text-transform: none;
  border-radius: 11px;
  min-height: 48px;
  padding: 14px 23px;
  min-width: 155px;
  color: white;
  position: relative;
}
.home-button:before {
  background: #2463eb;
  border-radius: 11px;
  transform: none;
  box-shadow: 0 4px 13px #2463eb14;
  transition:
    background 0.18s,
    box-shadow 0.18s;
}
.home-button:hover:before {
  background: #174ec5;
  box-shadow: 0 7px 17px #2463eb20;
}
.home-button.home-outline:before {
  border-color: #ffffff4a;
  border-radius: 11px;
  background: #ffffff05;
  box-shadow: none;
}
.home-outline:hover:before {
  background: #ffffff12;
}
.reference-home .home-menu {
  order: 3;
  transform: none;
  width: 41px;
  height: 41px;
  border-radius: 11px;
  background: #f0f4fa;
  color: #425675;
  box-shadow: none;
  font-size: 20px;
  position: static;
  flex-shrink: 0;
}
.home-menu > span {
  transform: none;
}
.reference-home .home-menu:active {
  transform: none;
}
#siteHeader .home-nav-row #siteNav {
  justify-content: flex-start;
  gap: 34px;
  order: 1;
  position: static;
  box-shadow: none;
  padding: 0;
  background: transparent;
}
#siteHeader .home-nav-row #siteNav > a {
  font: 700 11px Manrope, Arial, sans-serif;
  text-transform: none;
  letter-spacing: 0;
  color: #748197;
  padding: 22px 0;
}
#siteHeader .home-nav-row #siteNav > a:hover,
#siteHeader .home-nav-row #siteNav > a[aria-current] {
  color: #2463eb;
}
#siteHeader .home-menu {
  order: 3;
  transform: none;
  width: 41px;
  height: 41px;
  border-radius: 11px;
  background: #f0f4fa;
  color: #425675;
  box-shadow: none;
  font-size: 20px;
  position: static;
  flex-shrink: 0;
}
.home-sticky {
  background: #fffffffa;
  box-shadow: 0 5px 20px #14253d0a;
  border-bottom: 1px solid #edf0f5;
}
.home-sticky > .home-shell {
  min-height: 78px;
}
.home-sticky nav {
  gap: 30px;
}
.home-sticky nav a {
  font:
    700 10px Manrope,
    Arial,
    sans-serif;
  text-transform: none;
  color: #77859a;
}
.home-sticky nav a[aria-current] {
  color: #2463eb;
}
.home-sticky .home-button {
  min-width: 135px;
  min-height: 40px;
  font-size: 10px;
}
.reference-hero {
  width: min(1280px, calc(100% - 40px));
  min-height: 650px;
  margin: 24px auto 0;
  border-radius: 26px;
  background: #102039;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden;
  isolation: isolate;
}
.home-hero-image {
  inset: 35px 35px 35px auto;
  width: 49%;
  height: calc(100% - 70px);
  border-radius: 19px;
  object-fit: cover;
  object-position: center;
  z-index: -2;
  opacity: 0.95;
}
.home-hero-shade {
  background: linear-gradient(90deg, #102039 0, #102039 43%, #102039a3 56%, #10203900 75%);
  z-index: -1;
  pointer-events: none;
}
.home-hero-copy {
  width: 57%;
  max-width: 720px;
  margin: 0;
  padding: 70px 10px 80px 64px;
  text-align: left;
  transform: none;
}
.home-hero-copy > p {
  font:
    700 10px Manrope,
    Arial,
    sans-serif;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #9fbaf0 !important;
  display: block;
  margin: 0 0 26px;
  text-shadow: none;
  line-height: 1.7;
}
.home-hero-copy > p > span {
  display: inline-block;
  height: 7px;
  width: 7px;
  border-radius: 50%;
  background: #79adff;
  margin-right: 9px;
  vertical-align: middle;
}
.home-hero-copy h1 {
  font:
    700 clamp(42px, 4.6vw, 64px)/1.12 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.065em;
  color: #fff;
  text-shadow: none;
  margin: 0 0 32px;
  max-width: 610px;
}
.home-hero-copy > div {
  justify-content: flex-start;
  gap: 12px;
}
.home-hero-subtitle {
  font:
    400 13px/1.85 Manrope,
    Arial,
    sans-serif;
  color: #b2c2dc;
  max-width: 370px;
  margin: 0 0 32px;
}
.home-hero-controls {
  right: 50px;
  bottom: 47px;
  gap: 8px;
}
.home-hero-controls button {
  border: 1px solid #ffffff45;
  background: #102039bb;
  color: #fff;
  width: 33px;
  height: 33px;
  box-shadow: none;
  font-size: 20px;
}
.home-hero-controls button:hover {
  background: #2463eb;
}
.home-hero-controls #homeHeroPause {
  font-size: 11px;
}
.home-scroll {
  bottom: 22px;
  left: 52px;
  transform: none;
  width: 32px;
  height: 32px;
  border: 1px solid #ffffff25;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  display: grid;
  place-items: center;
  color: #a5bce2;
  font-size: 16px;
}
.home-scroll > span {
  display: none;
}
.home-scroll:after {
  content: '↓';
}
.home-service-section {
  padding: 100px 0 95px;
  isolation: isolate;
  overflow: hidden;
  background: #fff;
}
.home-service-car {
  display: none;
  pointer-events: none;
}
.home-service-frame {
  width: min(1180px, calc(100% - 64px));
  padding: 0;
  min-height: 0;
  z-index: 1;
}
.home-service-frame:before {
  display: none;
}
.home-heading {
  text-align: left;
  max-width: none;
  margin: 0 0 40px;
}
.home-heading-icon {
  border: 0;
  border-radius: 11px;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  background: #edf3ff;
  box-shadow: none;
  margin: 0 0 18px;
  color: #2463eb;
}
.home-heading-icon svg {
  height: 21px;
  width: 21px;
}
.home-heading h2 {
  font:
    700 38px/1.2 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.05em;
  margin: 0 0 14px;
  color: #14253d;
}
.home-heading p {
  font:
    400 13px/1.9 Manrope,
    Arial,
    sans-serif;
  color: #8290a4;
  margin: 0;
  max-width: 600px;
}
.home-heading-line {
  display: none;
}
.home-carousel-wrap {
  position: relative;
}
.home-service-track {
  gap: 22px;
  padding: 1px 1px 15px;
  overflow: auto;
}
.home-service-card {
  flex-basis: calc((100% - 44px) / 3);
  padding: 32px;
  min-height: 290px;
  border: 1px solid #e4eaf3;
  border-radius: 18px;
  background: #f8fafd;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  transition:
    border-color 0.2s,
    background 0.2s,
    box-shadow 0.2s;
}
.home-service-card:hover {
  border-color: #bed0ef;
  background: #fff;
  box-shadow: 0 10px 24px #14253d08;
  transform: none;
}
.home-service-card h3 {
  font:
    700 18px/1.4 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.035em;
  margin: 22px 0 12px;
  order: 2;
}
.home-service-card > span {
  order: 1;
  width: 47px;
  height: 47px;
  padding: 11px;
  border-radius: 13px;
  background: #eaf1ff;
  color: #2463eb;
  margin: 0;
  display: block;
}
.home-service-card > span:before {
  display: none;
}
.home-service-card svg {
  width: 25px;
  height: 25px;
  margin: 0;
}
.home-service-card p {
  font:
    400 12px/1.9 Manrope,
    Arial,
    sans-serif;
  color: #8590a1;
  margin: 0;
  order: 3;
  max-width: 260px;
}
.home-carousel-arrow {
  height: 38px;
  width: 38px;
  border: 1px solid #dce5f1;
  border-radius: 11px;
  background: #fff;
  color: #2463eb;
  box-shadow: 0 4px 12px #10203906;
  font-size: 25px;
  top: 50%;
  transform: translateY(-50%);
  scroll-margin-block: 125px;
  z-index: 4;
}
.home-carousel-arrow:hover {
  background: #2463eb;
  color: #fff;
  border-color: #2463eb;
}
.home-carousel-arrow:active {
  transform: translateY(-50%);
}
.home-prev {
  left: -19px;
}
.home-next {
  right: -19px;
}
.home-tariff-section {
  background: #f5f7fb;
  padding: 90px 0;
}
.home-tariff-grid {
  display: flex;
  gap: 24px;
  align-items: stretch;
}
.home-tariff-card {
  width: calc((100% - 48px) / 3);
  border: 1px solid #e3e8f1;
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 5px 18px #14253d03;
  transition:
    box-shadow 0.2s,
    border-color 0.2s;
}
.home-tariff-card:hover {
  border-color: #bfd0ed;
  box-shadow: 0 14px 28px #14253d09;
}
.home-tariff-image {
  height: 230px;
  border: 0;
  border-bottom: 1px solid #f0f3f8;
  border-radius: 0;
  background: #fafbfd;
  padding: 25px 24px;
  overflow: hidden;
}
.home-tariff-image img {
  height: 180px;
  width: 100%;
  object-fit: contain;
  border-radius: 9px;
  transition: transform 0.25s;
  mix-blend-mode: normal;
}
.home-tariff-card:hover .home-tariff-image img {
  transform: scale(1.025);
}
.home-tariff-info {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: #14253d;
  padding: 25px 25px 0;
  box-shadow: none;
  overflow: visible;
}
.home-tariff-info:before {
  display: none;
}
.home-tariff-card:hover .home-tariff-info {
  transform: none;
  box-shadow: none;
}
.home-tariff-info h3 {
  font:
    700 18px/1.45 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.035em;
  margin-bottom: 16px;
  color: #14253d;
}
.home-tariff-info li {
  font:
    400 11px/1.6 Manrope,
    Arial,
    sans-serif;
  padding: 8px 0;
  color: #8190a5;
  border-bottom: 1px solid #edf1f7;
}
.home-tariff-info li b {
  font-weight: 500;
  color: #536982;
}
.home-tariff-bottom {
  padding: 20px 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.home-tariff-bottom > strong {
  font:
    700 25px Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.05em;
  color: #14253d;
}
.home-tariff-bottom small {
  font-size: 10px;
  font-weight: 400;
  color: #8b98a9;
  letter-spacing: 0;
}
.home-tariff-bottom > a {
  font:
    700 10px Manrope,
    Arial,
    sans-serif;
  text-transform: none;
  letter-spacing: 0;
  min-width: 85px;
  padding: 12px 16px;
  border-radius: 9px;
  background: #edf3ff;
  color: #2463eb;
  box-shadow: none;
  border: 1px solid #e5edfc;
}
.home-tariff-bottom > a:hover {
  background: #2463eb;
  border-color: #2463eb;
  color: #fff;
  box-shadow: none;
}
.home-rate-note {
  font:
    400 11px/1.9 Manrope,
    Arial,
    sans-serif !important;
  color: #99a3b3 !important;
  max-width: 850px;
  margin-top: 30px !important;
  text-align: center;
}
.home-about-section {
  padding: 100px 0;
  background: #fff;
}
.home-about-grid {
  grid-template-columns: 1.3fr 0.9fr;
  gap: 90px;
  align-items: center;
}
.home-about-grid h2 {
  font:
    700 38px/1.2 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.05em;
  margin-bottom: 22px;
}
.home-about-grid > div > p {
  font:
    400 13px/2 Manrope,
    Arial,
    sans-serif;
  color: #8a96a7;
  max-width: 580px;
}
.home-about-details {
  gap: 25px;
  margin-block: 28px 32px;
}
.home-about-details > ul {
  padding: 0;
}
.home-about-details li {
  font:
    500 11px Manrope,
    Arial,
    sans-serif;
  line-height: 1.8;
  border: 0;
  padding: 8px 0;
  color: #6e8098;
}
.home-about-details li > span {
  font-size: 8px;
  color: #2463eb;
  margin-left: 0;
  margin-right: 10px;
}
.home-mini-metrics {
  gap: 12px;
  align-items: stretch;
}
.home-mini-metrics > div {
  min-width: 100px;
  background: #f2f6fc;
  color: #14253d;
  border: 1px solid #eaf0f8;
  border-radius: 13px;
  padding: 18px 14px;
  box-shadow: none;
}
.home-mini-metrics strong {
  font:
    700 34px/1.2 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.055em;
  color: #2463eb;
  margin-bottom: 8px;
}
.home-mini-metrics > div > span {
  font:
    500 9px Manrope,
    Arial,
    sans-serif;
  white-space: nowrap;
  color: #8190a5;
}
.home-mini-metrics svg {
  width: 50px;
  height: 50px;
  color: #2463eb;
  opacity: 0.055;
}
.home-plan-panel {
  background: #102039;
  color: white;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 12px 30px #14253d09;
  position: relative;
  border: 1px solid #23314a;
}
.home-plan-panel:after {
  display: none;
}
.home-plan-panel h3 {
  font:
    700 25px/1.2 Manrope,
    Arial,
    sans-serif;
  text-transform: none;
  letter-spacing: -0.04em;
  margin-bottom: 10px;
}
.home-plan-panel > p {
  font:
    400 11px/1.7 Manrope,
    Arial,
    sans-serif;
  color: #8094b4;
  margin-bottom: 24px;
}
.home-plan-panel ul {
  font:
    400 11px/1.6 Manrope,
    Arial,
    sans-serif;
  color: #c4d0e1;
  margin: 0 0 27px;
}
.home-plan-panel li {
  padding: 10px 0;
  border-bottom: 1px solid #ffffff0e;
}
.home-plan-panel li b {
  font-weight: 500;
  color: #fff;
}
.home-plan-panel .home-button {
  min-width: 155px;
  min-height: 44px;
  font-size: 10px;
}
.home-facts-section {
  background: #f7f9fc;
  padding: 70px 0;
}
.home-divider {
  display: none;
}
.home-facts-layout {
  grid-template-columns: 0.9fr 1.2fr;
  gap: 90px;
}
.home-facts-layout h2 {
  font:
    700 31px/1.35 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.045em;
  margin-bottom: 18px;
  max-width: 410px;
}
.home-facts-layout p {
  font:
    400 12px/1.95 Manrope,
    Arial,
    sans-serif;
  color: #8b98ac;
  max-width: 390px;
}
.home-facts-grid {
  gap: 30px 35px;
}
.home-facts-grid > div {
  grid-template-columns: 48px 1fr;
  column-gap: 14px;
  align-items: center;
}
.home-facts-grid > div > span {
  width: 45px;
  height: 45px;
  border-radius: 12px;
  background: #eaf1ff;
  color: #2463eb;
  grid-row: span 2;
}
.home-facts-grid svg {
  width: 24px;
  height: 24px;
}
.home-facts-grid dt {
  font:
    700 25px/1.1 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.045em;
  color: #14253d;
}
.home-facts-grid dd {
  font:
    400 10px/1.6 Manrope,
    Arial,
    sans-serif;
  color: #91a0b3;
  margin-top: 6px;
}
.home-why-section {
  padding: 95px 0;
  background: #fff;
}
.home-why-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.home-why-grid > article {
  border: 1px solid #e7ecf4;
  border-radius: 17px;
  background: #fff;
  text-align: left;
  padding: 28px 23px;
  box-shadow: none;
  transition:
    border-color 0.18s,
    background 0.18s;
}
.home-why-grid > article:hover {
  border-color: #bfd0ed;
  background: #f8fafd;
  box-shadow: none;
}
.home-why-grid > article > span {
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: #edf3ff;
  padding: 11px;
  color: #2463eb;
  margin: 0 0 24px;
}
.home-why-grid svg {
  width: 21px;
  height: 21px;
}
.home-why-grid h3 {
  font:
    700 16px/1.4 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.03em;
  margin-bottom: 12px;
}
.home-why-grid p {
  font:
    400 11px/1.9 Manrope,
    Arial,
    sans-serif;
  color: #8b97a9;
  margin: 0;
}
.home-gallery-section {
  padding: 0 0 90px;
  background: #fff;
}
.home-gallery-track {
  width: min(1180px, calc(100% - 64px));
  margin-inline: auto;
  gap: 16px;
  scrollbar-width: none;
  border-radius: 16px;
}
.home-gallery-item {
  flex-basis: calc((100% - 48px) / 4);
  border: 1px solid #e5ebf4;
  border-radius: 16px;
  overflow: hidden;
  background: #f5f8fc;
}
.home-gallery-item img {
  height: 190px;
  object-fit: cover;
  transition: transform 0.3s;
}
.home-gallery-item:hover img {
  transform: scale(1.035);
}
.home-gallery-item > span {
  background: #10203940;
  font-size: 32px;
}
.reference-home #siteFooter {
  padding-top: 70px;
  background: #0b172b;
  color: #fff;
}
.home-footer-main {
  gap: 70px;
  padding-bottom: 55px;
}
.home-footer-main h2 {
  font:
    700 14px/1.5 Manrope,
    Arial,
    sans-serif;
  text-transform: none;
  letter-spacing: -0.015em;
  margin-bottom: 22px;
  color: #e3ebf7;
}
.home-footer-main p {
  font:
    400 11px/2 Manrope,
    Arial,
    sans-serif;
  color: #7f90ac;
  max-width: 400px;
}
.home-footer-main > div > a {
  font:
    400 11px/1.8 Manrope,
    Arial,
    sans-serif;
  color: #92a3bf;
  margin-bottom: 11px;
}
.home-footer-main > div > a > span {
  font-size: 9px;
  color: #536c94;
}
.home-footer-call {
  gap: 13px;
  margin-top: 24px;
}
.home-footer-call > span {
  height: 40px;
  width: 40px;
  background: #152944;
  border-radius: 11px;
  box-shadow: none;
  color: #7aa8ff;
}
.home-footer-call > span svg {
  width: 20px;
  height: 20px;
}
.home-footer-call small {
  font:
    400 9px Manrope,
    Arial,
    sans-serif;
  color: #6c829f;
  margin-bottom: 5px;
}
.home-footer-call a {
  font:
    700 19px Manrope,
    Arial,
    sans-serif;
  color: #e7eef8;
  letter-spacing: -0.025em;
}
.reference-home .home-footer-main .map-placeholder {
  background: #12223a;
  border: 1px solid #20334e;
  border-radius: 13px;
  min-height: 170px;
}
.reference-home .home-footer-main .map-placeholder strong {
  font:
    500 10px Manrope,
    Arial,
    sans-serif;
  color: #a4b6d1;
}
.reference-home .home-footer-main .map-placeholder p {
  font:
    400 9px Manrope,
    Arial,
    sans-serif;
  color: #6d84a3;
}
.reference-home .home-footer-main .map-placeholder .map-marker {
  color: #5084d6;
  font-size: 26px;
}
.reference-home .home-footer-main .map-placeholder a {
  color: #80a7e9;
  font-size: 9px;
}
.reference-home .home-footer-main .map-placeholder .button {
  background: #1a3152;
  border-color: #29496f;
  color: #a6c3ed;
  font-size: 9px;
  min-height: 33px;
  padding: 8px 12px;
}
.home-footer-main .home-footer-email {
  font-size: 10px !important;
  margin-top: 17px;
}
.home-footer-bottom {
  border-top: 1px solid #ffffff0c;
}
.home-footer-bottom > .home-shell {
  min-height: 100px;
  gap: 30px;
}
.home-footer-bottom .home-brand {
  min-height: 100px;
  padding-right: 0;
}
.home-footer-bottom .home-brand:before {
  display: none;
}
.home-footer-bottom .home-brand b {
  color: #e2eaf7;
  font-size: 19px;
}
.home-footer-bottom .home-brand small {
  color: #657c9c;
  font-size: 6px;
}
.home-footer-bottom .home-brand .brand-mark {
  width: 35px;
  height: 35px;
  border-color: #4f78b8;
  background: #102039;
  color: #87aef0;
  font-size: 22px;
  border-radius: 10px;
}
.home-footer-bottom .home-brand .brand-mark > span {
  background: #0b172b;
  color: #87aef0;
  font-size: 11px;
}
.home-footer-bottom p {
  font:
    400 9px/1.6 Manrope,
    Arial,
    sans-serif;
  color: #586f91;
  margin: 0;
}
.home-footer-whatsapp {
  border-radius: 10px;
  background: #172b47;
  color: #90b6f2;
  width: 35px;
  height: 35px;
  box-shadow: none;
}
.home-footer-whatsapp svg {
  width: 17px;
  height: 17px;
}
.reference-home #quickActions {
  right: 17px;
  bottom: 80px;
  gap: 9px;
}
.reference-home #quickActions > a {
  width: 45px;
  height: 45px;
  border-radius: 13px;
  box-shadow: 0 5px 15px #10203915;
}
.reference-home #quickActions > a svg {
  width: 21px;
  height: 21px;
}
.reference-home .quick-book,
.reference-home .quick-call {
  background: #2463eb;
}
.reference-home .quick-wa {
  background: #15965e;
}
.home-contact-dialog {
  border: 1px solid #e4eaf4;
  border-radius: 19px;
  padding: 40px 32px;
  box-shadow: 0 25px 80px #0b172b33;
}
.home-contact-dialog h2 {
  font:
    700 26px/1.3 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.04em;
}
.home-contact-dialog p {
  font:
    400 12px/1.9 Manrope,
    Arial,
    sans-serif;
  color: #8593a7;
}
.home-contact-dialog > a:not(.home-button) {
  font:
    500 13px Manrope,
    Arial,
    sans-serif;
  color: #2463eb;
}
.home-contact-dialog .home-button {
  min-width: 150px;
}
.home-service-car,
.home-nav-curve,
.home-hero-shade {
  pointer-events: none;
}
html:has(body.reference-home) {
  scroll-padding-top: 105px;
}
@media (max-width: 1150px) {
  .home-header-wrap {
    height: 188px;
  }
  .home-info-row {
    height: 86px;
  }
  .home-header-detail {
    gap: 10px;
  }
  .home-header-detail > a {
    font-size: 10px;
  }
  .home-brand b {
    font-size: 22px;
  }
  .reference-home #siteNav {
    gap: 27px;
  }
  .home-nav-row {
    gap: 20px;
  }
  .home-nav-row > .home-button {
    min-width: 125px;
  }
  .home-hero-copy {
    padding-left: 48px;
  }
  .home-hero-copy h1 {
    font-size: 55px;
  }
  .home-hero-image {
    width: 48%;
    right: 28px;
  }
  .home-service-card {
    padding: 29px 26px;
  }
  .home-tariff-image {
    height: 210px;
    padding: 20px;
  }
  .home-tariff-image img {
    height: 170px;
  }
  .home-tariff-info {
    padding-inline: 22px;
  }
  .home-tariff-info h3 {
    font-size: 17px;
  }
  .home-tariff-bottom > strong {
    font-size: 23px;
  }
  .home-tariff-bottom > a {
    min-width: 70px;
  }
  .home-about-grid {
    gap: 50px;
  }
  .home-about-details {
    gap: 18px;
  }
  .home-mini-metrics > div {
    min-width: 90px;
    padding: 15px 12px;
  }
  .home-plan-panel {
    padding: 34px;
  }
  .home-facts-layout {
    gap: 50px;
  }
  .home-why-grid {
    gap: 16px;
  }
  .home-why-grid > article {
    padding: 26px 20px;
  }
  .home-footer-main {
    gap: 45px;
  }
  .home-sticky nav {
    gap: 24px;
  }
}
@media (max-width: 900px) {
  .home-header-wrap {
    height: 180px;
  }
  .home-info-row {
    height: 80px;
  }
  .home-header-detail:first-of-type {
    display: none;
  }
  .home-nav-row {
    height: 66px;
  }
  .home-topline {
    height: 34px;
  }
  .reference-home #siteNav {
    gap: 22px;
  }
  .home-sticky {
    display: none;
  }
  .reference-hero {
    min-height: 590px;
  }
  .home-hero-copy {
    width: 61%;
    padding: 60px 5px 65px 38px;
  }
  .home-hero-copy h1 {
    font-size: 48px;
  }
  .home-hero-image {
    right: 22px;
    top: 25px;
    bottom: 25px;
    width: 47%;
    height: calc(100% - 50px);
    object-position: 55% center;
  }
  .home-hero-shade {
    background: linear-gradient(90deg, #102039 0, #102039 40%, #102039aa 60%, #10203900 85%);
  }
  .home-hero-copy > p {
    font-size: 9px;
  }
  .home-hero-subtitle {
    max-width: 290px;
    font-size: 12px;
  }
  .home-hero-copy .home-button {
    min-width: 135px;
    font-size: 10px;
    padding: 14px 18px;
  }
  .home-hero-controls {
    right: 35px;
    bottom: 36px;
  }
  .home-scroll {
    left: 36px;
    bottom: 20px;
  }
  .home-service-section {
    padding-block: 80px;
  }
  .home-service-card {
    flex-basis: calc((100% - 22px) / 2);
    min-height: 270px;
  }
  .home-heading h2 {
    font-size: 34px;
  }
  .home-tariff-grid {
    gap: 20px;
  }
  .home-tariff-card {
    width: calc((100% - 20px) / 2);
  }
  .home-about-section {
    padding-block: 85px;
  }
  .home-about-grid {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .home-about-grid > div > p {
    max-width: 650px;
  }
  .home-about-details {
    max-width: 650px;
  }
  .home-mini-metrics > div {
    min-width: 120px;
  }
  .home-plan-panel {
    max-width: 650px;
    padding: 40px;
  }
  .home-plan-panel ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 25px;
    font-size: 10px;
  }
  .home-facts-layout {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .home-facts-layout h2 {
    max-width: 600px;
    font-size: 30px;
  }
  .home-facts-layout p {
    max-width: 600px;
  }
  .home-facts-grid {
    max-width: 680px;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
  }
  .home-facts-grid > div {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 7px;
  }
  .home-facts-grid > div > span {
    margin-bottom: 9px;
  }
  .home-facts-grid dd {
    margin: 0;
  }
  .home-why-section {
    padding-block: 80px;
  }
  .home-why-grid {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  .home-why-grid > article {
    padding: 28px;
  }
  .home-gallery-item {
    flex-basis: calc((100% - 32px) / 3);
  }
  .home-gallery-section {
    padding-bottom: 75px;
  }
  .home-footer-main {
    grid-template-columns: 1.2fr 0.8fr;
    gap: 36px;
  }
  .home-footer-main > div:last-child {
    grid-column: 1/-1;
    max-width: 600px;
    width: 100%;
  }
  .home-footer-bottom > .home-shell {
    min-height: 100px;
    flex-wrap: wrap;
    padding-block: 22px;
    gap: 25px;
  }
  .home-footer-bottom .home-brand {
    min-height: 45px;
  }
  .home-footer-bottom p {
    flex: 1;
    min-width: 180px;
  }
  .section {
    padding-block: 65px;
  }
  .header-info:first-of-type {
    display: none;
  }
  .package-content h2 {
    font-size: 24px;
  }
  .page-hero {
    min-height: 250px;
  }
}
@media (max-width: 780px) {
  .header-main {
    height: 78px;
  }
  .brand b {
    font-size: 20px;
  }
  .brand-mark {
    border-radius: 10px;
  }
  .page-hero {
    max-width: calc(100% - 28px);
    margin-top: 15px;
    border-radius: 17px;
  }
  .booking-intro h1 {
    font-size: 36px;
  }
  .booking-panel h2 {
    font-size: 25px;
  }
  .booking-summary h2 {
    font-size: 16px;
  }
  .vehicle-content h3 {
    font-size: 19px;
  }
  .vehicle-grid {
    gap: 20px;
  }
  .price-line strong {
    font-size: 23px;
  }
  .price-line .button {
    font-size: 10px;
    padding: 10px 12px;
  }
  .contact-grid {
    gap: 25px;
  }
  .contact-form,
  .contact-info {
    padding: 28px;
  }
  .section-title h2 {
    font-size: 32px;
  }
  .button {
    font-size: 11px;
  }
  .package-card {
    border-radius: 15px;
  }
  .cta-band h2 {
    font-size: 30px;
  }
  .footer-main {
    gap: 30px;
  }
}
@media (max-width: 700px) {
  .brand-logo {
    width: 190px;
    height: 62px;
  }
  .home-shell,
  .home-service-frame,
  .home-gallery-track {
    width: calc(100% - 36px);
  }
  .home-header-wrap {
    width: 100%;
    height: 80px;
  }
  .home-topline {
    display: none;
  }
  .home-info-row {
    height: 80px;
    padding: 0 20px;
  }
  .home-header-detail {
    display: none;
  }
  .home-brand b {
    font-size: 22px;
  }
  .home-brand small {
    font-size: 7px;
  }
  .home-brand .brand-mark {
    height: 39px;
    width: 39px;
    font-size: 25px;
  }
  .home-nav-row {
    height: 0;
    padding: 0;
    border: 0;
    position: static;
  }
  .home-nav-row > .home-button {
    display: none;
  }
  .reference-home .home-menu {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 40px;
    height: 40px;
    transform: none;
    border-radius: 11px;
    background: #f1f5fb;
    color: #425675;
    font-size: 20px;
  }
  .reference-home #siteHeader {
    position: sticky;
    top: 0;
    border-bottom: 1px solid #edf0f5;
  }
  .reference-home #siteNav {
    display: none;
    position: absolute;
    top: 80px;
    left: 0;
    right: 0;
    gap: 0;
    flex-direction: column;
    padding: 12px 20px;
    background: #fff;
    box-shadow: 0 12px 24px #10203910;
    border-bottom: 1px solid #e5ebf4;
  }
  .reference-home #siteNav.open {
    display: flex;
  }
  .reference-home #siteNav > a {
    font-size: 12px;
    padding: 14px 10px;
    border-bottom: 1px solid #f1f4f9;
  }
  .reference-hero {
    width: calc(100% - 24px);
    margin-top: 12px;
    min-height: 640px;
    display: flex;
    align-items: flex-start;
    border-radius: 20px;
  }
  .home-hero-image {
    inset: auto 16px 20px 16px;
    width: calc(100% - 32px);
    height: 255px;
    border-radius: 14px;
    object-fit: cover;
    object-position: center;
    opacity: 1;
  }
  .home-hero-shade {
    background: linear-gradient(180deg, #102039 0, #102039 45%, #10203977 60%, #10203900 78%);
  }
  .home-hero-copy {
    width: 100%;
    max-width: none;
    padding: 35px 27px 305px;
    margin: 0;
    text-align: left;
    transform: none;
  }
  .home-hero-copy > p {
    font-size: 8px;
    margin-bottom: 18px;
    letter-spacing: 0.11em;
  }
  .home-hero-copy h1 {
    font-size: 43px;
    line-height: 1.13;
    letter-spacing: -0.055em;
    max-width: 480px;
    margin-bottom: 20px;
  }
  .home-hero-subtitle {
    font-size: 11px;
    line-height: 1.8;
    margin-bottom: 24px;
    max-width: 400px;
  }
  .home-hero-copy > div {
    gap: 10px;
  }
  .home-hero-copy .home-button {
    min-width: 140px;
    min-height: 43px;
    font-size: 10px;
    padding: 12px 15px;
  }
  .home-hero-controls {
    bottom: 33px;
    right: 30px;
    gap: 6px;
  }
  .home-hero-controls button {
    height: 28px;
    width: 28px;
    font-size: 17px;
    background: #102039cc;
  }
  .home-hero-controls #homeHeroPause {
    font-size: 10px;
  }
  .home-scroll {
    left: 28px;
    bottom: 33px;
    width: 28px;
    height: 28px;
    background: #10203999;
    border-color: #ffffff44;
  }
  .home-service-section {
    padding-block: 65px;
  }
  .home-heading {
    margin-bottom: 30px;
  }
  .home-heading h2 {
    font-size: 29px;
  }
  .home-heading p {
    font-size: 11px;
    line-height: 1.85;
  }
  .home-heading-icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    margin-bottom: 16px;
  }
  .home-heading-icon svg {
    width: 18px;
    height: 18px;
  }
  .home-service-track {
    gap: 16px;
  }
  .home-service-card {
    flex-basis: calc((100% - 16px) / 2);
    padding: 25px 22px;
    min-height: 260px;
    border-radius: 15px;
  }
  .home-service-card h3 {
    font-size: 16px;
    line-height: 1.45;
    margin-block: 20px 10px;
  }
  .home-service-card p {
    font-size: 11px;
    line-height: 1.9;
  }
  .home-service-card > span {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    padding: 10px;
  }
  .home-service-card svg {
    width: 21px;
    height: 21px;
  }
  .home-carousel-arrow {
    width: 32px;
    height: 32px;
    font-size: 21px;
    border-radius: 9px;
  }
  .home-prev {
    left: -12px;
  }
  .home-next {
    right: -12px;
  }
  .home-tariff-section {
    padding-block: 65px;
  }
  .home-tariff-grid {
    gap: 18px;
  }
  .home-tariff-card {
    width: calc((100% - 18px) / 2);
    border-radius: 16px;
  }
  .home-tariff-image {
    height: 190px;
    padding: 18px;
  }
  .home-tariff-image img {
    height: 154px;
  }
  .home-tariff-info {
    padding: 21px 19px 0;
  }
  .home-tariff-info h3 {
    font-size: 16px;
    margin-bottom: 14px;
  }
  .home-tariff-info li {
    font-size: 10px;
    padding-block: 7px;
  }
  .home-tariff-bottom {
    flex-wrap: wrap;
    gap: 12px;
    padding-bottom: 21px;
  }
  .home-tariff-bottom > strong {
    font-size: 22px;
  }
  .home-tariff-bottom > a {
    min-width: 75px;
    padding: 10px 14px;
    font-size: 10px;
  }
  .home-rate-note {
    font-size: 10px !important;
    line-height: 1.8 !important;
  }
  .home-about-section {
    padding-block: 65px;
  }
  .home-about-grid {
    gap: 30px;
  }
  .home-about-grid h2 {
    font-size: 29px;
    margin-bottom: 18px;
  }
  .home-about-grid > div > p {
    font-size: 12px;
    line-height: 1.95;
  }
  .home-about-details {
    flex-direction: row;
    gap: 20px;
    align-items: center;
    margin-block: 22px 28px;
  }
  .home-about-details li {
    font-size: 10px;
    padding: 7px 0;
  }
  .home-mini-metrics {
    gap: 10px;
    flex: 0 0 auto;
    flex-direction: column;
  }
  .home-mini-metrics > div {
    min-width: 125px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 13px 15px;
    border-radius: 11px;
  }
  .home-mini-metrics strong {
    font-size: 25px;
    margin: 0;
  }
  .home-mini-metrics > div > span {
    font-size: 8px;
    white-space: normal;
    line-height: 1.6;
  }
  .home-plan-panel {
    padding: 30px 26px;
    border-radius: 17px;
  }
  .home-plan-panel h3 {
    font-size: 24px;
  }
  .home-plan-panel > p {
    font-size: 10px;
  }
  .home-plan-panel ul {
    font-size: 10px;
    column-gap: 20px;
  }
  .home-plan-panel .home-button {
    min-width: 145px;
    min-height: 41px;
    font-size: 10px;
  }
  .home-facts-section {
    padding-block: 55px;
  }
  .home-facts-layout {
    gap: 28px;
  }
  .home-facts-layout h2 {
    font-size: 27px;
  }
  .home-facts-layout p {
    font-size: 11px;
  }
  .home-facts-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
  }
  .home-facts-grid > div > span {
    width: 37px;
    height: 37px;
    border-radius: 10px;
    margin-bottom: 6px;
  }
  .home-facts-grid svg {
    width: 20px;
    height: 20px;
  }
  .home-facts-grid dt {
    font-size: 21px;
  }
  .home-facts-grid dd {
    font-size: 8px;
    line-height: 1.7;
  }
  .home-why-section {
    padding-block: 65px;
  }
  .home-why-grid {
    gap: 16px;
  }
  .home-why-grid > article {
    padding: 24px 20px;
    border-radius: 15px;
    text-align: left;
    max-width: none;
    width: auto;
    margin: 0;
  }
  .home-why-grid > article > span {
    width: 36px;
    height: 36px;
    padding: 9px;
    border-radius: 10px;
    margin-bottom: 20px;
  }
  .home-why-grid svg {
    width: 18px;
    height: 18px;
  }
  .home-why-grid h3 {
    font-size: 15px;
    line-height: 1.4;
  }
  .home-why-grid p {
    font-size: 10px;
    line-height: 1.85;
  }
  .home-gallery-section {
    padding-bottom: 65px;
  }
  .home-gallery-track {
    gap: 12px;
    border-radius: 13px;
  }
  .home-gallery-item {
    flex-basis: calc((100% - 12px) / 2);
    border-radius: 13px;
  }
  .home-gallery-item img {
    height: 180px;
  }
  .reference-home #siteFooter {
    padding-top: 55px;
  }
  .home-footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 32px 26px;
    padding-bottom: 40px;
  }
  .home-footer-main > div:last-child {
    grid-column: 1/-1;
    max-width: none;
  }
  .home-footer-main h2 {
    font-size: 12px;
    margin-bottom: 18px;
  }
  .home-footer-main p {
    font-size: 10px;
    line-height: 1.95;
  }
  .home-footer-main > div > a {
    font-size: 10px;
  }
  .home-footer-call {
    gap: 10px;
    margin-top: 20px;
    align-items: start;
  }
  .home-footer-call > span {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 9px;
  }
  .home-footer-call > span svg {
    width: 16px;
    height: 16px;
  }
  .home-footer-call a {
    font-size: 15px;
    white-space: nowrap;
  }
  .home-footer-call small {
    font-size: 8px;
  }
  .home-footer-main .home-footer-email {
    font-size: 10px !important;
  }
  .reference-home .home-footer-main .map-placeholder {
    min-height: 170px;
  }
  .home-footer-bottom > .home-shell {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    padding-block: 23px;
    gap: 20px;
    min-height: 0;
  }
  .home-footer-bottom .home-brand {
    min-height: 35px;
    padding: 0;
  }
  .home-footer-bottom .home-brand b {
    font-size: 17px;
  }
  .home-footer-bottom .home-brand small {
    font-size: 5px;
  }
  .home-footer-bottom .home-brand .brand-mark {
    width: 32px;
    height: 32px;
    font-size: 20px;
    border-radius: 9px;
  }
  .home-footer-bottom p {
    font-size: 8px;
    flex-basis: 100%;
    order: 3;
    min-width: 0;
    padding: 0;
  }
  .home-footer-whatsapp {
    margin-left: auto;
    width: 32px;
    height: 32px;
    border-radius: 9px;
  }
  .home-contact-dialog {
    padding: 38px 26px;
    border-radius: 16px;
  }
  .home-contact-dialog h2 {
    font-size: 24px;
  }
  .reference-home #quickActions {
    right: 10px;
    bottom: 75px;
    gap: 8px;
  }
  .reference-home #quickActions > a {
    width: 39px;
    height: 39px;
    border-radius: 12px;
  }
  .reference-home #quickActions > a svg {
    width: 18px;
    height: 18px;
  }
  html:has(body.reference-home) {
    scroll-padding-top: 100px;
  }
  .section {
    padding-block: 55px;
  }
  .contact-form,
  .contact-info {
    border-radius: 15px;
    padding: 25px;
  }
  .contact-form h2 {
    font-size: 29px;
  }
  .contact-info h2 {
    font-size: 28px;
  }
  .package-card > img {
    height: 200px;
  }
  .package-content {
    padding: 23px;
  }
  .package-content h2 {
    font-size: 23px;
  }
  .booking-panel,
  .booking-summary {
    padding: 24px 20px;
    border-radius: 15px;
  }
  .booking-actions .button {
    min-width: 0;
  }
}
@media (max-width: 480px) {
  .home-hero-copy {
    padding: 33px 23px 292px;
  }
  .home-hero-copy h1 {
    font-size: 40px;
    max-width: 340px;
    margin-bottom: 18px;
  }
  .home-hero-copy > p {
    font-size: 7px;
    letter-spacing: 0.1em;
    margin-bottom: 17px;
  }
  .home-hero-subtitle {
    font-size: 10px;
    max-width: 290px;
    line-height: 1.8;
    margin-bottom: 23px;
  }
  .reference-hero {
    min-height: 650px;
  }
  .home-hero-image {
    height: 250px;
    inset: auto 13px 17px 13px;
    width: calc(100% - 26px);
    border-radius: 13px;
    object-position: center;
  }
  .home-hero-controls {
    right: 25px;
    bottom: 29px;
  }
  .home-scroll {
    left: 25px;
    bottom: 29px;
  }
  .home-hero-copy .home-button {
    min-width: 132px;
    font-size: 9px;
    min-height: 41px;
    padding: 11px 13px;
  }
  .home-hero-copy > div {
    gap: 8px;
  }
  .home-service-card {
    flex-basis: calc(100% - 20px);
    min-height: 260px;
    padding: 28px;
  }
  .home-service-card h3 {
    font-size: 18px;
  }
  .home-service-card p {
    font-size: 12px;
    max-width: 270px;
  }
  .home-service-card > span {
    width: 43px;
    height: 43px;
    padding: 11px;
  }
  .home-carousel-arrow {
    height: 33px;
    width: 33px;
  }
  .home-tariff-grid {
    gap: 22px;
  }
  .home-tariff-card {
    width: 100%;
    max-width: 360px;
    border-radius: 17px;
  }
  .home-tariff-image {
    height: 230px;
    padding: 24px;
  }
  .home-tariff-image img {
    height: 182px;
  }
  .home-tariff-info {
    padding: 24px 24px 0;
  }
  .home-tariff-info h3 {
    font-size: 19px;
    margin-bottom: 16px;
  }
  .home-tariff-info li {
    font-size: 11px;
    padding-block: 9px;
  }
  .home-tariff-bottom {
    flex-wrap: nowrap;
    padding-block: 22px 24px;
  }
  .home-tariff-bottom > strong {
    font-size: 27px;
  }
  .home-tariff-bottom > a {
    min-width: 90px;
    padding: 12px 18px;
    font-size: 11px;
  }
  .home-about-details {
    gap: 15px;
  }
  .home-mini-metrics > div {
    min-width: 110px;
    padding: 13px 12px;
  }
  .home-about-details li {
    font-size: 10px;
  }
  .home-plan-panel ul {
    display: block;
    font-size: 11px;
  }
  .home-plan-panel {
    padding: 30px 27px;
  }
  .home-facts-grid {
    grid-template-columns: 1fr 1fr;
    gap: 25px 30px;
  }
  .home-facts-grid > div {
    display: grid;
    grid-template-columns: 39px 1fr;
    gap: 4px 12px;
    align-items: center;
  }
  .home-facts-grid > div > span {
    grid-row: span 2;
    margin: 0;
  }
  .home-facts-grid dt {
    font-size: 22px;
  }
  .home-facts-grid dd {
    font-size: 9px;
  }
  .home-why-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .home-why-grid > article {
    padding: 21px 17px;
  }
  .home-why-grid h3 {
    font-size: 14px;
  }
  .home-why-grid p {
    font-size: 10px;
  }
  .home-gallery-item {
    flex-basis: 75%;
  }
  .home-gallery-item img {
    height: 190px;
  }
  .home-footer-main {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .home-footer-main > div:last-child {
    grid-column: auto;
  }
  .home-footer-main p {
    max-width: 330px;
    font-size: 11px;
  }
  .home-footer-main h2 {
    font-size: 13px;
  }
  .home-footer-main > div > a {
    font-size: 11px;
  }
  .home-footer-call a {
    font-size: 20px;
  }
  .home-footer-call small {
    font-size: 9px;
  }
  .home-footer-call > span {
    width: 38px;
    height: 38px;
  }
  .home-footer-bottom p {
    font-size: 8px;
  }
  .vehicle-content h3 {
    font-size: 20px;
  }
  .price-line strong {
    font-size: 26px;
  }
  .price-line .button {
    font-size: 11px;
    padding: 11px 16px;
  }
  .booking-intro h1 {
    font-size: 32px;
  }
  .booking-intro p {
    font-size: 11px;
  }
  .booking-panel h2 {
    font-size: 24px;
  }
  .trip-types span {
    font-size: 10px;
    padding: 12px 5px;
  }
  .vehicle-options {
    gap: 12px;
  }
  .vehicle-choice > span {
    padding: 13px;
  }
  .vehicle-choice b {
    font-size: 11px;
  }
  .vehicle-choice strong {
    font-size: 18px;
  }
  .vehicle-choice small {
    font-size: 8px;
  }
  .review-list dd {
    font-size: 11px;
  }
  .check-label {
    font-size: 10px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}
.home-mini-metrics {
  width: auto;
  max-width: none;
}
.home-fleet-title {
  font:
    700 38px/1.2 Manrope,
    Arial,
    sans-serif;
  letter-spacing: -0.05em;
  color: #14253d;
  margin: 0 0 35px;
}
.home-service-card p {
  font-size: 13px;
}
.home-about-grid > div > p {
  font-size: 14px;
}
.home-why-grid p {
  font-size: 12px;
}
@media (max-width: 700px) {
  .home-fleet-title {
    font-size: 29px;
    margin-bottom: 28px;
  }
  .home-service-card p {
    font-size: 12px;
  }
  .home-about-grid > div > p {
    font-size: 12px;
  }
  .home-why-grid p {
    font-size: 11px;
  }
}
@media (max-width: 480px) {
  .reference-hero {
    min-height: 600px;
  }
  .home-hero-copy {
    padding-bottom: 215px;
  }
  .home-hero-subtitle {
    font-size: 12px;
    line-height: 1.85;
  }
  .home-hero-copy .home-button {
    font-size: 10px;
  }
  .home-why-grid p {
    font-size: 10px;
  }
}
@media (max-width: 360px) {
  .home-hero-copy {
    padding-inline: 20px;
  }
  .home-hero-copy h1 {
    font-size: 35px;
  }
  .home-hero-copy .home-button {
    min-width: 115px;
    font-size: 9px;
    padding-inline: 10px;
  }
}

/* Keep the full HD vehicle visible instead of enlarging and cropping it. */
.home-hero-image {
  object-fit: contain;
  background: #182b42;
}


/* A compact header and the same company identity in the About section. */
.home-about-brand {
  margin-bottom: 28px;
}
.home-about-brand .home-brand {
  width: fit-content;
}
@media (min-width: 701px) {
  .home-header-wrap { height: auto; }
  .home-info-row { height: 80px; }
}
@media (min-width: 1000px) {
  .home-header-wrap { display: flex; align-items: center; gap: 40px; }
  .home-info-row { flex: 0 0 auto; height: 100px; }
  .home-nav-row { flex: 1; height: 100px; border: 0; gap: 24px; }
  .reference-home #siteNav { flex: 1; justify-content: center; gap: 24px; }
}

/* Keep the shared homepage header compact on desktop inner pages too. */
@media (min-width: 701px) {
  #siteHeader .home-header-wrap { height: auto; }
  #siteHeader .home-info-row { height: 80px; }
}
@media (min-width: 1000px) {
  #siteHeader .home-header-wrap { display: flex; align-items: center; gap: 40px; }
  #siteHeader .home-info-row { flex: 0 0 auto; height: 100px; }
  #siteHeader .home-nav-row { flex: 1; height: 100px; border: 0; gap: 24px; }
  #siteHeader .home-nav-row #siteNav { flex: 1; justify-content: center; gap: 24px; }
  .home-tariff-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
  .home-tariff-card { width: auto; }
}

.package-jump { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 32px; }
.package-jump a { padding: 14px 18px; border: 1px solid #dce5f2; border-radius: 12px; background: #f5f8fd; color: #204b8e; font-size: 13px; font-weight: 700; }
.package-jump a:hover { background: #e9f0ff; }
.package-search { display: block; max-width: 560px; font-size: 14px; font-weight: 700; }
.package-search input { width: 100%; margin-top: 10px; padding: 16px; border: 1px solid #cdd8e9; border-radius: 12px; background: #fff; color: #14253d; font: inherit; }
.package-search input:focus-visible { outline: 3px solid #8fb6ff; outline-offset: 2px; }
.package-search-status { color: #596d88; font-size: 13px; min-height: 22px; }
.package-category { margin-top: 64px; scroll-margin-top: 110px; }
.outstation-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.route-package { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 14px; padding: 22px; border: 1px solid #e0e7f1; border-radius: 16px; background: #fff; }
.route-number { color: #7894bc; font-size: 12px; padding-top: 3px; }
.route-package > div { flex: 1; min-width: 0; }
.route-package .eyebrow { font-size: 9px; }
.route-package h3 { font-size: 18px; line-height: 1.4; margin: 8px 0; overflow-wrap: anywhere; }
.route-package p { color: #667991; font-size: 12px; line-height: 1.6; margin: 0; }
.route-package > a { width: 100%; margin-left: 29px; font-size: 12px; }
.sightseeing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.sightseeing-package { display: flex; flex-direction: column; align-items: flex-start; padding: 32px; border: 1px solid #dfe7f2; border-radius: 20px; background: #f7f9fd; }
.sightseeing-package h3 { font-size: 25px; line-height: 1.3; letter-spacing: -.035em; margin: 16px 0; }
.sightseeing-package p { font-size: 14px; line-height: 1.8; color: #596d88; }
.sightseeing-package details { width: 100%; margin: 10px 0 28px; }
.sightseeing-package summary { cursor: pointer; color: #204b8e; font-size: 14px; font-weight: 700; padding: 12px 0; }
.sightseeing-package ol { padding-left: 24px; color: #425675; font-size: 14px; line-height: 1.9; }
.sightseeing-package .button { margin-top: auto; }
[data-package-search][hidden] { display: none; }
@media (max-width: 900px) { .outstation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .outstation-grid, .sightseeing-grid { grid-template-columns: 1fr; }
  .sightseeing-package { padding: 24px; }
  .sightseeing-package h3 { font-size: 23px; }
  .package-category { margin-top: 44px; }
}

.package-search[hidden] { display: none; }

.city-spotlights, .destination-detail-photos { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.destination-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.destination-card { border: 1px solid #e1e8f2; border-radius: 20px; overflow: hidden; background: #fff; }
.destination-photo { display: block; position: relative; aspect-ratio: 3/2; background: #e7edf5; overflow: hidden; }
.destination-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.destination-photo:hover img { transform: scale(1.035); }
.destination-photo > span { position: absolute; bottom: 16px; left: 16px; border-radius: 24px; background: #102039df; color: white; padding: 8px 14px; font-size: 11px; }
.destination-card-copy { padding: 24px; }
.destination-card-copy h3 { margin: 12px 0 20px; font-size: 23px; line-height: 1.3; letter-spacing: -.035em; }
.destination-card-copy p { font-size: 14px; line-height: 1.7; color: #596d88; }
.destination-card .text-link { font-size: 12px; }
.city-spotlight .destination-photo { aspect-ratio: 16/9; }
.city-spotlight h3 { font-size: 34px; }
.destination-detail-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; margin: 40px 0 64px; }
.destination-detail-grid p { line-height: 1.85; color: #596d88; }
.destination-detail-photos figure { margin: 0; }
.destination-detail-photos img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; border-radius: 16px; }
.destination-detail-photos figcaption { color: #596d88; font-size: 12px; line-height: 1.8; padding: 12px 0; }
.destination-detail-photos figcaption a { display: block; color: #2463eb; }
@media(max-width:900px) { .destination-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .destination-grid,.city-spotlights,.destination-detail-grid,.destination-detail-photos { grid-template-columns: 1fr; } .destination-detail-grid { gap:24px; } .city-spotlight h3 { font-size:28px; } }
.destination-enlarge { display: block; width: 100%; border: 0; padding: 0; background: transparent; cursor: zoom-in; border-radius: 16px; }
.destination-enlarge:focus-visible { outline: 3px solid #2463eb; outline-offset: 4px; }

/* Services announcement immediately below the homepage hero. */
.reference-home .services-ribbon{display:flex;align-items:center;gap:0;padding:16px 0;background:#102b4e;color:#fff;overflow:hidden;border:0;border-radius:0}
.services-ribbon-window{min-width:0;flex:1;overflow:hidden;border-radius:0}
.services-ribbon-window:focus-visible{outline:2px solid #b9ddff;outline-offset:4px}
.services-ribbon-track{display:flex;width:max-content;animation:services-ribbon-scroll 42s linear infinite}
.services-ribbon-group{display:flex;align-items:center;flex-shrink:0}
.services-ribbon-item{display:flex;align-items:center;gap:26px;padding-right:26px;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.5}
.services-ribbon-item>span{color:#66b9ff;font-size:15px}
@keyframes services-ribbon-scroll{to{transform:translateX(-50%)}}
@media(max-width:600px){.reference-home .services-ribbon{padding:14px 0}.services-ribbon-item{font-size:13px;gap:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){.services-ribbon-track{animation:none}.services-ribbon-window{overflow-x:auto}.services-ribbon-group[aria-hidden]{display:none}}
.booking-location-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px;grid-column:1/-1}.booking-location-tools small,.booking-location-tools>div,.booking-location-tools>input{width:100%}.booking-location-tools button{padding:10px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#f1f5f9;color:#102b4e;cursor:pointer;text-align:left}.booking-location-tools>div button{display:block;width:100%;margin:5px 0}.booking-location-tools a{font-size:13px;color:#245bba}.booking-location-tools small{color:#52627a}

/* Shared, consistent navigation for phones and tablets. */
#siteHeader .home-menu{display:none}
#siteHeader .hamburger-lines{display:flex;flex-direction:column;gap:5px;transform:none}
#siteHeader .hamburger-lines i{display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
@media(max-width:1099px){
  #siteHeader{position:sticky;top:0;z-index:1000;background:#fff}
  #siteHeader .home-header-wrap{display:flex;align-items:center;justify-content:space-between;position:relative;width:100%;height:84px;padding:0 18px;box-sizing:border-box;gap:12px}
  #siteHeader .home-info-row{height:auto;padding:0;min-width:0;flex:1}
  #siteHeader .home-brand{max-width:100%}
  #siteHeader .home-nav-row{position:static;display:flex;flex:0 0 auto;height:auto;padding:0;border:0;background:transparent;width:auto}
  #siteHeader .home-nav-row>.home-button{display:none}
  #siteHeader .home-menu{position:static;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;transform:none;margin:0}
  #siteHeader .home-nav-row #siteNav{display:none;position:absolute;top:100%;left:0;right:0;width:auto;height:auto;margin:0;padding:12px 18px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-top:1px solid #e5ebf4;box-shadow:0 12px 24px #10203918;max-height:calc(100dvh - 84px);overflow-y:auto}
  #siteHeader .home-nav-row #siteNav.open{display:flex}
  #siteHeader .home-nav-row #siteNav>a{display:block;padding:14px 12px;font-size:16px;text-align:left}
  #siteHeader .home-sticky,#siteHeader .home-nav-curve,#siteHeader .home-center-phone{display:none}
}

@media(min-width:1100px){
  #siteHeader .home-nav-row .menu-toggle.home-menu{display:none !important}
  #siteHeader .home-nav-row #siteNav{display:flex;align-items:center;justify-content:center;gap:clamp(20px,2vw,32px)}
  #siteHeader .home-nav-row #siteNav>a,#siteHeader .home-sticky nav>a{font-size:17px;font-weight:700;line-height:1.4;padding:18px 0;white-space:nowrap}
  #siteHeader .home-header-wrap{gap:28px}
  #siteHeader .home-nav-row{gap:24px}
}
@media(min-width:1100px) and (max-width:1240px){
  #siteHeader .home-nav-row #siteNav{gap:18px}
  #siteHeader .home-nav-row #siteNav>a,#siteHeader .home-sticky nav>a{font-size:16px}
  #siteHeader .home-header-wrap{gap:18px}
}
.contact-vehicle-hero .shell{padding-right:48%;box-sizing:border-box}
.contact-hero-slides{position:absolute;right:2%;top:0;width:44%;height:100%;overflow:hidden}
.contact-hero-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 850ms ease;pointer-events:none}
.contact-hero-slides img.is-active{opacity:1}
@media(max-width:700px){.contact-vehicle-hero{display:flex;flex-direction:column;align-items:stretch}.contact-vehicle-hero .shell{padding:28px 22px 12px;width:100%}.contact-hero-slides{position:relative;right:auto;top:auto;width:100%;height:220px}}
@media(prefers-reduced-motion:reduce){.contact-hero-slides img{transition:none}}

/* Give the contact slideshow its own inset frame instead of a full-height strip. */
.page-hero.contact-vehicle-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:32px;padding:32px;min-height:320px;box-sizing:border-box}
.contact-vehicle-hero>.shell{width:100%;max-width:none;padding:12px 0 12px 8px;margin:0;box-sizing:border-box}
.contact-vehicle-hero .contact-hero-slides{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/2;max-height:320px;background:#fff;border:1px solid #ffffff24;border-radius:16px;box-shadow:0 12px 32px #0002;box-sizing:border-box}
.contact-hero-slides img{padding:8px;box-sizing:border-box;object-fit:contain;object-position:center}
@media(max-width:700px){
  .page-hero.contact-vehicle-hero{grid-template-columns:minmax(0,1fr);gap:22px;padding:26px 20px;min-height:0}
  .contact-vehicle-hero>.shell{padding:0}
  .contact-vehicle-hero .contact-hero-slides{width:100%;max-width:480px;max-height:none;aspect-ratio:3/2;margin:0 auto}
  .contact-vehicle-hero .breadcrumb{margin-top:20px}
}

/* Modern fleet cards: clear rates, compact specifications and tactile actions. */
.home-tariff-section .home-tariff-card{display:flex;flex-direction:column;border:1px solid #e1e8f2;border-radius:22px;background:#fff;box-shadow:0 8px 24px #122c5008;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.home-tariff-section .home-tariff-image{position:relative;height:auto;aspect-ratio:16/10;margin:10px 10px 0;padding:30px 16px 12px;background:linear-gradient(145deg,#f0f5fc,#fafbfd);border:0;border-radius:15px;box-sizing:border-box}
.home-tariff-section .home-tariff-image img{width:100%;height:100%;object-fit:contain;border-radius:10px;transition:transform .45s ease}
.fleet-category-badge{position:absolute;left:12px;top:12px;z-index:1;padding:6px 10px;border:1px solid #dce7f5;border-radius:999px;background:#fffffff0;color:#355777;font-size:10px;font-weight:700;line-height:1.2}
.home-tariff-section .home-tariff-info{display:flex;flex-direction:column;flex:1;padding:22px 22px 0}
.fleet-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:20px}
.home-tariff-section .home-tariff-info h3{font-size:20px;line-height:1.3;letter-spacing:-.035em;margin:0;max-width:75%}
.fleet-seat-badge{white-space:nowrap;font-size:11px;font-weight:600;color:#4e6684;background:#f1f5fa;border-radius:7px;padding:6px 8px}
.fleet-rate-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 22px;padding:14px 0;border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6}
.fleet-rate-details>div{min-width:0}
.fleet-rate-details dt{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#718198;margin-bottom:8px}
.fleet-rate-details dd{font-size:14px;font-weight:700;color:#172d49;margin:0;line-height:1.5}
.fleet-rate-details dd small{display:block;font-size:10px;color:#718198;font-weight:500}
.home-tariff-section .home-tariff-bottom{margin-top:auto;padding:0 0 22px;flex-wrap:nowrap;gap:12px}
.home-tariff-section .home-tariff-bottom>strong{font-size:30px;font-weight:800;letter-spacing:-.05em;white-space:nowrap}
.home-tariff-section .home-tariff-bottom small{font-size:12px;color:#6a7e98;margin-left:3px}
.home-tariff-section .home-tariff-bottom>a{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:0;padding:12px 16px;border-radius:11px;background:#2463eb;border:1px solid #2463eb;color:#fff;font-size:12px;font-weight:700;transition:background .2s ease,box-shadow .2s ease}
.home-tariff-bottom>a span{transition:transform .2s ease;font-size:17px}
.home-tariff-section .home-tariff-card:focus-within{border-color:#7099ed;box-shadow:0 12px 28px #1c4b9b14}
.home-tariff-bottom>a:focus-visible{outline:3px solid #92b4ff;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.home-tariff-section .home-tariff-card:hover{transform:translateY(-7px);border-color:#adc6f6;box-shadow:0 20px 42px #193e771a}.home-tariff-section .home-tariff-card:hover .home-tariff-image img{transform:scale(1.045)}.home-tariff-section .home-tariff-bottom>a:hover{background:#174ac0;box-shadow:0 6px 16px #2463eb30}.home-tariff-bottom>a:hover span{transform:translate(2px,-2px)}}
@media(max-width:600px){.home-tariff-section .home-tariff-info{padding:20px 18px 0}.home-tariff-section .home-tariff-info h3{font-size:19px}.fleet-rate-details dd{font-size:13px}.home-tariff-section .home-tariff-bottom>strong{font-size:28px}}
@media(prefers-reduced-motion:reduce){.home-tariff-section .home-tariff-card,.home-tariff-section .home-tariff-image img,.home-tariff-bottom>a,.home-tariff-bottom>a span{transition:none}.home-tariff-section .home-tariff-card:hover,.home-tariff-section .home-tariff-card:hover .home-tariff-image img{transform:none}}

/* Refined fleet details panel with soft blue specification tiles. */
.home-tariff-section .home-tariff-info{padding:24px 22px 0;background:linear-gradient(180deg,#fff 65%,#f7faff)}
.home-tariff-section .fleet-card-heading{align-items:center;margin-bottom:18px;gap:12px}
.home-tariff-section .home-tariff-info h3{font-size:21px;line-height:1.35;letter-spacing:-.04em;color:#132b49}
.home-tariff-section .fleet-seat-badge{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;background:#eef4ff;border:1px solid #dce8fc;border-radius:999px;color:#315e9b;font-size:11px;line-height:1.3;font-weight:700}
.home-tariff-section .fleet-rate-details{gap:0;padding:16px 0;margin:0 0 20px;background:#f2f6fc;border:1px solid #e5edf7;border-radius:13px}
.home-tariff-section .fleet-rate-details>div{padding:0 12px;border-right:1px solid #dce5f2}
.home-tariff-section .fleet-rate-details>div:last-child{border-right:0}
.home-tariff-section .fleet-rate-details dt{font-size:9px;letter-spacing:.07em;color:#687f9d;margin-bottom:7px;line-height:1.4;font-weight:600}
.home-tariff-section .fleet-rate-details dd{font-size:15px;font-weight:750;color:#183a63;line-height:1.4}
.home-tariff-section .fleet-rate-details dd small{font-size:10px;margin-top:3px;color:#7185a0}
.home-tariff-section .home-tariff-bottom{padding:0 0 24px;align-items:flex-end;gap:16px}
.home-tariff-section .home-tariff-bottom>strong{font-size:32px;color:#163b68;line-height:1.15}
.home-tariff-section .home-tariff-bottom>strong:before{content:'PER KILOMETRE';display:block;font:600 9px/1.5 Manrope,Arial,sans-serif;letter-spacing:.1em;color:#6d819b;margin-bottom:6px}
.home-tariff-section .home-tariff-bottom small{font-size:12px;font-weight:500;color:#7185a0}
.home-tariff-section .home-tariff-bottom>a{padding:13px 17px;border-radius:12px;background:#163b68;border-color:#163b68;box-shadow:0 4px 10px #163b6812}
@media(hover:hover) and (pointer:fine){.home-tariff-section .home-tariff-bottom>a:hover{background:#2463eb;border-color:#2463eb;box-shadow:0 7px 18px #2463eb26}}
@media(max-width:600px){.home-tariff-section .home-tariff-info{padding:22px 18px 0}.home-tariff-section .home-tariff-info h3{font-size:20px}.home-tariff-section .fleet-rate-details>div{padding:0 10px}.home-tariff-section .fleet-rate-details dd{font-size:14px}.home-tariff-section .home-tariff-bottom>strong{font-size:30px}}

/* Final polish for the vehicle rate summary and direct-call action. */
.home-tariff-section .home-tariff-card{border-color:#e3eaf3;box-shadow:0 4px 8px #17385b03,0 14px 32px #17385b06}
.home-tariff-section .home-tariff-info{background:linear-gradient(160deg,#fff 55%,#f3f7fe);padding-top:24px}
.home-tariff-section .fleet-card-heading{margin-bottom:20px}
.home-tariff-section .fleet-seat-badge{background:#fff;box-shadow:0 2px 5px #254f8506;border-color:#dce5f1;color:#496b92}
.home-tariff-section .fleet-rate-details{background:#f2f6fc;border-color:#e5edf7;border-radius:14px;padding:17px 0;margin-bottom:22px;box-shadow:inset 0 1px 0 #fff}
.home-tariff-section .fleet-rate-details dt{font-size:9px;letter-spacing:.09em}
.home-tariff-section .fleet-rate-details dd{font-size:15px;letter-spacing:-.02em}
.home-tariff-section .home-tariff-bottom{align-items:center;padding-bottom:24px}
.home-tariff-section .home-tariff-bottom>strong{font-size:34px;letter-spacing:-.045em}
.home-tariff-section .home-tariff-bottom>strong:before{font-size:8px;letter-spacing:.13em;margin-bottom:5px}
.home-tariff-section .home-tariff-bottom>a{min-width:105px;min-height:46px;box-sizing:border-box;gap:20px;padding:12px 18px;background:linear-gradient(130deg,#214d80,#13375f);border-color:#214d80;border-radius:12px;font-size:13px;box-shadow:0 5px 12px #173d681a}
.home-tariff-section .home-tariff-bottom>a:active{transform:translateY(1px)}
@media(hover:hover) and (pointer:fine){.home-tariff-section .home-tariff-bottom>a:hover{background:linear-gradient(130deg,#2868e6,#194fc1);border-color:#2868e6;box-shadow:0 8px 18px #2463eb28}}
@media(max-width:600px){.home-tariff-section .fleet-rate-details dd{font-size:14px}.home-tariff-section .home-tariff-bottom>strong{font-size:32px}}

/* Limited festive campaign, automatically retired on 21 Jan 2027 IST. */
.festival-offer{position:fixed;inset:0;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;margin:auto;border:1px solid #d8b76b66;border-radius:26px;color:#fff;background:radial-gradient(ellipse at 50% 0,#2a527e 0,transparent 55%),linear-gradient(145deg,#122f51,#091a30);box-shadow:0 30px 100px #0006;overflow:auto;box-sizing:border-box;animation:festival-arrive .35s ease-out}
.festival-offer::backdrop{background:#08182bb8;backdrop-filter:blur(5px)}
.festival-offer .festival-offer-close{position:absolute;top:13px;right:13px;z-index:3;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #ffffff38;border-radius:50%;background:#ffffff12;color:#fff;font-size:26px;line-height:1;cursor:pointer}
.festival-offer-close:focus-visible,.festival-offer-action:focus-visible{outline:3px solid #f5ce7f;outline-offset:3px}
.festival-offer-body{position:relative;z-index:1;padding:42px 32px 23px;text-align:center}
.festival-offer-tag{display:inline-block;padding:7px 12px;border:1px solid #e8c87d66;border-radius:999px;color:#f6dca5;font-size:10px;font-weight:700;letter-spacing:.14em;background:#f3d38a0a}
.festival-offer .festival-offer-welcome{margin:24px 0 8px;color:#cddded;font-size:13px;line-height:1.5}
.festival-offer h2{margin:0;color:#fff;font-size:29px;line-height:1.2;letter-spacing:-.035em;font-weight:800}
.festival-offer h2 span{color:#f5d58d}
.festival-offer .festival-offer-caption{font-size:12px;line-height:1.7;color:#b7cbe2;margin:12px auto 19px;max-width:280px}
.festival-offer-discount{padding:18px 12px;margin-bottom:20px;border-top:1px solid #e6c67e33;border-bottom:1px solid #e6c67e33;background:linear-gradient(90deg,transparent,#f9d37f0b,transparent)}
.festival-offer-discount>span{display:block;font-size:10px;letter-spacing:.15em;color:#d7e1ed;font-weight:600}
.festival-offer-discount strong{display:block;color:#ffdc92;font-size:90px;line-height:1.08;letter-spacing:-.07em;font-weight:800;text-shadow:0 5px 30px #ffd17a20}
.festival-offer-discount strong span{font-size:39px;vertical-align:super;margin-left:3px;letter-spacing:0}
.festival-offer-discount b{display:block;color:#f4d79d;font-size:12px;letter-spacing:.3em}
.festival-offer .festival-offer-action{display:flex;align-items:center;justify-content:center;gap:24px;padding:14px 20px;border-radius:12px;background:linear-gradient(120deg,#ffe3a8,#e9bb62);color:#152c45;font-size:13px;font-weight:800;text-decoration:none}
.festival-offer .festival-offer-terms{margin:13px 0 6px;font-size:11px;line-height:1.5;color:#d0dcec}
.festival-offer-timer{color:#91a9c5;font-size:10px}
.festival-offer-art{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:25px}
.festival-offer-art span{position:absolute;font-size:34px;animation:festival-spark 2.4s ease-in-out infinite}
.festival-offer-art span:nth-child(1){top:75px;left:12px;transform:rotate(-20deg)}
.festival-offer-art span:nth-child(2){top:190px;right:16px;font-size:21px;animation-delay:.3s}
.festival-offer-art span:nth-child(3){bottom:135px;right:12px;transform:rotate(20deg);animation-delay:.6s}
.festival-offer-art span:nth-child(4){bottom:190px;left:15px;font-size:20px;animation-delay:.9s}
.festival-offer-progress{height:3px;position:absolute;bottom:0;left:0;right:0;background:#e7c16f;transform-origin:left;animation:festival-countdown 10s linear forwards}
@keyframes festival-arrive{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}
@keyframes festival-spark{50%{opacity:.45;translate:0 -7px}}
@keyframes festival-countdown{to{transform:scaleX(0)}}
@media(max-height:650px){.festival-offer-body{padding:28px 24px 18px}.festival-offer .festival-offer-welcome{margin-top:15px}.festival-offer h2{font-size:25px}.festival-offer-discount strong{font-size:70px}.festival-offer .festival-offer-caption{margin:8px auto 12px}.festival-offer-discount{padding:12px;margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.festival-offer,.festival-offer-art span,.festival-offer-progress{animation:none}.festival-offer::backdrop{backdrop-filter:none}}

.festival-paper-burst{position:fixed;inset:0;width:100vw;height:100dvh;pointer-events:none;z-index:5;border:0;background:transparent}
@media(prefers-reduced-motion:reduce){.festival-paper-burst{display:none}}
