@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");

:root {
  /* Fonts */
  --font-body: "Roboto", Arial, sans-serif;
  --font-heading: "Playfair Display", Georgia, serif;

  /* Colors */
  --gold: #d5b35c;
  --gold-dark: #c9a44c;
  --gold-muted: #c8a15c;
  --gold-soft: #cbb05b;
  --gold-deep: #c9a84c;
  --gold-amber: #d9a441;
  --gold-bright: #e3b62d;
  --gold-light: #f8e98a;
  --gold-bg: #fbf3dd;
  --gold-bg-2: #fbf0d6;
  --gold-yellow: #f2ca50;
  --star-yellow: #f5c518;
  --gold-shadow: #1a1400;
  --black-pure: #000000;
  --black-deep: #090909;
  --black: #0a0a0a;
  --black-soft: #0f0f0f;
  --navy: #0b0f1a;
  --dark-panel: #131313;
  --dark-panel-2: #141414;
  --dark-bg: #1a1a1a;
  --dark-bg-2: #1b1b1c;
  --ink: #1c1c1c;
  --dark-text: #1a1f2c;
  --brown-dark: #1f1811;
  --line-dark: #232323;
  --dark-card: #262626;
  --dark-card-2: #262627;
  --dark-node: #2c2c2d;
  --dark-card-border: #2f2f30;
  --dark-line: #3a3a3b;
  --label-dark: #3a3a3a;
  --body-gray: #6b7480;
  --muted-gray: #9aa0ac;
  --muted-warm: #6f6c66;
  --muted-warm-2: #8d8a85;
  --text-warm: #b9b6b0;
  --heading-light: #f4f1ea;
  --white: #ffffff;
  --light-bg: #f7f7f5;
  --light-bg-2: #f5f5f3;
  --gray-bg: #f0f0ee;
  --cream-bg: #f7f6f2;
  --cream-bg-2: #f6f4ee;
  --border-light: #e7e5e0;
  --border-warm: #d4d1c8;
  --danger: #b3261e;
  --orange-49: #b58d45;
  --gray-90: #e6e6e6;
  --yellow-74: #dfd49a;
  --gray-40: #666666;
  --gray-81: #cfcfcf;
  --gray-20: #333333;
  --gray-12: #1e1e1e;
  --green-49: #25d366;
  --gray-66: #a8a8a8;
  --gray-7: #121212;
  --gray-60: #9a9a9a;
  --gray-16: #2a2a2a;
  --gray-63: #a0a0a0;
  --gray-10: #1c1a17;
  --blue-97: #f6f7f9;
  --gray-36: #5c5c5c;
  --gray-46: #767676;
  --gray-5: #0d0d0d;
  --gray-77: #c4c4c4;
  --gray-85: #d8d8d8;
  --gray-46-2: #6f6f7a;
  --gray-81-2: #c9c9d2;
  --gray-58: #8f8f9a;
  --gray-96: #f4f4f4;
  --red-71: #ff6b6b;
  --blue-9: #12121a;
  --orange-8: #171410;
  --gray-59: #979797;
  --gray-82: #d0d0d0;
  --yellow-8: #1a1710;
  --gray-35: #5a5a5a;
  --orange-10: #211c12;
  --yellow-21: #4a3c1f;
  --gray-56: #909090;
  --gray-48: #7a7a7a;
  --gray-91: #e8e8e8;
  --gray-54: #8a8a8a;
  --gray-33: #555555;
  --gray-17: #2c2c2c;
  --blue-75: #b7bcc7;
  --blue-86: #d7dae1;
  --yellow-98: #fafaf8;
  --yellow-74-2: #e0d39a;
  --gray-22: #33353b;
  --gray-57: #8b8f98;
  --gray-32: #4d4f55;
  --gray-33-2: #4d525c;
  --gray-75: #c7c2ba;
  --yellow-93: #f1efea;
  --gray-83: #d8d5ce;
  --blue-96: #f3f4f6;
  --gray-8: #151515;
  --gray-80: #c7cbd1;
  --orange-81: #d7d2c8;
  --gray-32-2: #5a5248;
  --gray-9: #171717;
  --gray-96-2: #f5f5f5;
  --gray-90-2: #e5e5e5;
  --blue-11: #181a20;
  --gray-8-2: #121316;
  --gray-98: #f9f9f9;
  --gray-93: #eeeeee;
  --gray-67: #aaaaaa;
  --gray-27: #444444;
  --gray-53: #888888;
  --gray-65: #9ca3af;
  --gray-80-2: #cccccc;
  --gray-13: #1f2022;
  --gray-73: #bbbbbb;
  --gray-60-2: #999999;
  --gray-87: #dddddd;
  --gray-8-3: #121315;
  --orange-15: #2f2a20;
  --yellow-46: #c9a023;
  --yellow-98-2: #fbfaf7;
  --gray-52: #8b8880;
  --yellow-94: #f3f1ea;
  --yellow-42: #b8931f;
  --yellow-92: #f5f0de;
  --gray-58-2: #9a978f;
  --yellow-92-2: #efede7;
  --red-95: #fbeceb;
  --red-86: #f0c9c6;
  --yellow-65: #efd35c;

  /* RGB channels for rgba() */
  --gold-rgb: 213, 179, 92;
  --black-rgb: 0, 0, 0;
  --white-rgb: 255, 255, 255;
  --gold-deep-rgb: 201, 168, 76;
  --line-dark-rgb: 35, 35, 35;

  /* Quote form (.cq-card) */
  --q-bg: #f6f4ee;
  --q-gold: #e3b62d;
  --q-gold-light: #f8e98a;
  --q-ink: #1c1c1c;
  --q-label: #3a3a3a;
  --q-muted: #6f6c66;
  --q-border: #d4d1c8;
  --q-danger: #b3261e;

  /* Success page */
  --s-bg: #ebe8e0;
  --s-card: #f6f4ee;
  --s-gold: #e3b62d;
  --s-gold-light: #f8e98a;
  --s-ink: #1c1c1c;
  --s-muted: #6f6c66;
  --s-border: #d4d1c8;
  --t: 8s; /* total length of the car scene */
}

/* =========================================
   BASE STYLES
   ========================================= */

body {
  background-color: var(--white);
  color: var(--dark-bg);
  font-family: var(--font-body);
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

h1,
h3,
h4,
h5,
h6,
p {
  font-family: var(--font-body);
}

h2,
.serif {
  font-family: var(--font-heading);
}

a {
  text-decoration: none;
}

img {
  max-width: 100%;
}

.gold {
  color: var(--gold-muted);
}

.eyebrow {
  color: var(--gold-muted);
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.eyebrow-line {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.eyebrow-line::before {
  content: "";
  width: 24px;
  height: 1px;
  background-color: var(--gold-muted);
  display: inline-block;
}

.btn-gold {
  background-color: var(--gold-muted);
  color: var(--gold-shadow);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 14px 28px;
  border-radius: 4px;
  border: none;
  display: inline-block;
}

.btn-gold:hover {
  background-color: var(--orange-49);
  color: var(--gold-shadow);
}

/* ================= NAVBAR ================= */

.site-navbar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 50;
  padding: 20px 0;
}

.site-navbar .logo {
  color: var(--white);
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: 700;
}

.site-navbar .nav-link {
  color: var(--gray-90);
  font-size: 14px;
  font-weight: 500;
  padding: 8px 14px;
}

.site-navbar .nav-link:hover {
  color: var(--gold-muted);
}

/* ================= HERO ================= */

.hero {
  position: relative;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  padding: 190px 0 80px;
}

.hero::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    270deg,
    rgba(var(--black-rgb), 0) 0%,
    var(--black-pure) 69.9%
  );
}

.hero-inner {
  padding: 120px 0 60px;
  position: relative;
  z-index: 1;
}

.hero-tagline {
  color: var(--yellow-74);
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.hero-tagline .divider {
  width: 26px;
  height: 1px;
  background-color: var(--gray-40);
  display: inline-block;
}

.hero-title {
  font-size: 56px;
  font-weight: 800;
  line-height: 1.12;
  margin: 0 0 20px 0;
}

.hero-title .line1 {
  color: var(--gold-muted);
  display: block;
}

.hero-title .line2 {
  color: var(--white);
  display: block;
}

.hero-sub {
  color: var(--gray-81);
  font-size: 16px;
  max-width: 480px;
  margin-bottom: 32px;
}

.hero-contact-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 24px;
}

.hero-contact-card {
  background-color: rgba(20, 20, 20, 0.7);
  border: 1px solid var(--gray-20);
  border-radius: 8px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--white);
}

.hero-contact-card:hover {
  color: var(--gold-muted);
}

.hero-contact-card .icon-circle {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: var(--gray-12);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
}

.hero-contact-card.whatsapp .icon-circle {
  color: var(--green-49);
}

.hero-contact-card.phone .icon-circle {
  color: var(--gold-muted);
}

.hero-contact-card.email .icon-circle {
  color: var(--gold-muted);
}

.hero-contact-card .title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.hero-contact-card .subtitle {
  font-size: 12px;
  color: var(--gray-66);
}

.hero-reviews {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 24px;
  color: var(--white);
  font-size: 13px;
}

.hero-reviews .stars {
  color: var(--star-yellow);
  margin-right: 6px;
  font-size: 12px;
}

.hero-reviews .rev-item {
  display: flex;
  align-items: center;
}

/* ================= STATS BAR ================= */

.stats-bar {
  background-color: var(--gray-7);
}

.stats-item {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--white);
  padding: 20px 0;
  border-right: 1.3px solid rgba(var(--white-rgb), 0.08);
  height: 100%;
}

.stats-item.lastborder {
  border-right: 0;
}

.stats-item i {
  color: var(--gold-muted);
  font-size: 22px;
  width: 26px;
  text-align: center;
}

.stats-item .num {
  font-size: 14px;
  font-weight: 700;
}

.stats-item .label {
  font-size: 12px;
  color: var(--gray-60);
}

/* ================= FLEET SEC ================= */

.flt_new_sprin_section {
  display: none;
}

.fleet-section {
  background-color: var(--black-pure);
  padding: 70px 0;
}

.fleet-eyebrow {
  color: var(--gold-muted);
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.fleet-heading-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
  margin-bottom: 40px;
}

.fleet-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  color: var(--white);
}

/* Tabs */

.fleet-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fleet-tabs .nav-link {
  background-color: var(--dark-bg);
  color: var(--gray-81);
  border: 1px solid var(--gray-16);
  border-radius: 999px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.3px;
  white-space: nowrap;
}

.fleet-tabs .nav-link:hover {
  color: var(--white);
  border-color: var(--gold-muted);
}

.fleet-tabs .nav-link.active {
  background-color: var(--gold-muted);
  color: var(--gold-shadow);
  border-color: var(--gold-muted);
}

/* Card */

.fleet-card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  height: 100%;
}

.fleet-card {
  background-color: var(--dark-panel-2);
  border: 1px solid var(--line-dark);
  border-radius: 10px;
  overflow: hidden;
  height: 100%;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.fleet-card-link:hover .fleet-card {
  transform: translateY(-4px);
  border-color: var(--gold-muted);
  box-shadow: 0 12px 24px rgba(var(--black-rgb), 0.4);
}

.fleet-img-wrap {
  position: relative;
  width: 100%;
  height: 190px;
  overflow: hidden;
  background-color: var(--black-pure);
}

.fleet-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.fleet-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background-color: rgba(20, 20, 20, 0.85);
  color: var(--white);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 5px 10px;
  border-radius: 4px;
}

.fleet-body {
  padding: 18px 20px 20px 20px;
}

.fleet-body-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 8px;
}

.fleet-name {
  font-size: 17px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}

.fleet-max {
  font-size: 12px;
  color: var(--gray-60);
  white-space: nowrap;
  padding-top: 2px;
}

.fleet-desc {
  font-size: 13px;
  line-height: 1.5;
  color: var(--gray-63);
  margin: 0 0 16px 0;
  min-height: 40px;
}

.fleet-cta {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gold-muted);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.fleet-cta svg {
  width: 14px;
  height: 14px;
  transition: transform 0.2s ease;
}

.fleet-card-link:hover .fleet-cta svg {
  transform: translateX(4px);
}

.fleet-row {
  margin-top: 24px;
}

/* ================= WHY CHOOSE ================= */

.section-white {
  padding: 90px 0 60px;
}

.section-title-center {
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 50px;
  color: var(--dark-panel-2);
}

.why-card {
  background-color: var(--gray-10);
  border-bottom: 3px solid var(--gold-muted);
  border-radius: 6px;
  padding: 30px 26px;
  height: 100%;
}

.why-card i {
  color: var(--gold-muted);
  font-size: 26px;
  margin-bottom: 20px;
  display: block;
}

.why-card h3 {
  color: var(--white);
  font-size: 18px;
  font-weight: 700;
  font-family: var(--font-body);
  margin-bottom: 10px;
}

.why-card p {
  color: var(--gray-66);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

/* ================= COMFORT ================= */

.section-gray {
  background-color: var(--blue-97);
  padding: 90px 0;
}

.comfort-img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  border-radius: 10px;
}

.comfort-heading {
  font-size: 30px;
  font-weight: 700;
  color: var(--dark-panel-2);
  margin-bottom: 26px;
}

.comfort-point {
  display: flex;
  gap: 16px;
  margin-bottom: 22px;
}

.comfort-point .check {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-color: var(--gold-muted);
  color: var(--gold-shadow);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  margin-top: 2px;
}

.comfort-point h4 {
  font-size: 16px;
  font-weight: 700;
  font-family: var(--font-body);
  margin: 0 0 6px 0;
  color: var(--dark-panel-2);
}

.comfort-point p {
  font-size: 14px;
  color: var(--gray-40);
  margin: 0;
  line-height: 1.6;
}

/* ================= LUXURY OFFER ================= */

.luxury-heading {
  font-size: 32px;
  font-weight: 800;
  color: var(--dark-panel-2);
  margin-bottom: 0;
}

.luxury-desc {
  font-size: 15px;
  color: var(--gray-36);
  line-height: 1.8;
}

.offer-grid {
  border-top: 1px solid var(--gray-90);
  border-left: 1px solid var(--gray-90);
  margin-top: 50px;
}

.offer-cell {
  border-right: 1px solid var(--gray-90);
  border-bottom: 1px solid var(--gray-90);
  padding: 34px 28px;
  height: 100%;
}

.offer-cell i {
  font-size: 24px;
  color: var(--gold-muted);
  margin-bottom: 18px;
  display: block;
}

.offer-cell h3 {
  font-size: 17px;
  font-weight: 700;
  font-family: var(--font-body);
  color: var(--dark-panel-2);
  margin-bottom: 10px;
}

.offer-cell p {
  font-size: 13px;
  color: var(--gray-46);
  line-height: 1.6;
  margin: 0;
}

/* ================= CTA BOOK ================= */

.cta-book {
  position: relative;
  background-color: var(--gray-5);
  background-size: cover;
  background-position: center;
  padding: 90px 0;
}

.cta-book h2 {
  font-size: 38px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 22px;
}

.cta-book p {
  color: var(--gray-77);
  font-size: 15px;
  max-width: 640px;
  line-height: 1.7;
  margin-bottom: 30px;
}

.cta-list {
  list-style: none;
  padding: 0;
  margin: 0 0 34px 0;
  columns: 2;
  max-width: 460px;
}

.cta-list li {
  color: var(--gray-85);
  font-size: 14px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.cta-list i {
  color: var(--gold-muted);
  font-size: 12px;
}

/* ================= WHY BOOK (dark) ================= */

.section-dark {
  background-color: var(--gray-5);
  padding: 90px 0;
}

.why-book-title {
  font-size: 36px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.25;
  margin-bottom: 22px;
}

.why-book-desc {
  color: var(--gray-66);
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 40px;
}

.why-book-stats {
  display: flex;
  gap: 50px;
}

.why-book-stats .num {
  font-family: var(--font-heading);
  color: var(--gold-muted);
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
}

.why-book-stats .label {
  color: var(--gray-60);
  font-size: 12px;
  margin-top: 8px;
}

.why-book-img-wrap {
  position: relative;
}

.why-book-img-wrap img {
  width: 100%;
  height: 480px;
  object-fit: cover;
  border-radius: 8px;
}

.floating-badge {
  position: absolute;
  bottom: 15px;
  left: -75px;
  background-color: rgba(10, 10, 10, 0.92);
  border: 1px solid var(--gray-20);
  border-radius: 8px;
  padding: 16px 20px;
  max-width: 220px;
}

.floating-badge .eyebrow {
  margin-bottom: 8px;
  font-size: 11px;
}

.floating-badge p {
  color: var(--gray-85);
  font-size: 13px;
  margin: 0;
  line-height: 1.5;
}

/* ============ CONTACT SECTION ============ */

.contact-section-new {
  color: var(--white);
  padding: 70px 0;
}

.contact-section-new .section-heading {
  color: var(--black-pure);
}

.contact-section-new .section-heading::after {
  background: var(--gold-soft);
}

.contact-lede {
  text-align: center;
  color: var(--black-pure);
  max-width: 560px;
  margin: 0 auto 2.6rem;
}

.contact-methods-card {
  background: var(--white);
  border-radius: 14px;
  padding: 2rem;
  height: 100%;
  border: 1.3px solid rgba(var(--gold-deep-rgb), 0.2);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.contact-methods-card h4 {
  color: var(--white);
  font-weight: 700;
  margin-bottom: 1.4rem;
  font-size: 1.15rem;
}

.contact-method-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.9rem 0;
  border-bottom: 1px solid rgba(var(--white-rgb), 0.07);
}

.contact-method-row:last-of-type {
  border-bottom: none;
}

.contact-method-row .icon-box {
  width: 40px;
  height: 40px;
  border-radius: 9px;
  background: rgba(201, 162, 74, 0.08);
  border: 1px solid rgba(201, 162, 74, 0.4);
  color: var(--gold-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.contact-method-row:hover .icon-box {
  transform: scale(1.08);
}

.contact-method-row .m-label {
  font-size: 0.82rem;
  color: var(--black-pure);
  font-weight: 600;
}

.contact-method-row .m-value {
  color: var(--gold-deep);
  font-weight: 500;
  font-size: 0.88rem;
}

.contact-method-row .m-value-gold {
  color: var(--gold-soft);
}

.contact-method-row .m-caption {
  color: var(--gray-46-2);
  font-size: 0.72rem;
}

.contact-note {
  margin-top: 1.4rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(201, 162, 74, 0.3);
  border-radius: 10px;
  background: rgba(201, 162, 74, 0.06);
  font-size: 0.82rem;
  color: var(--gray-81-2);
  display: flex;
  align-items: center;
  gap: 0.7rem;
}

.contact-note strong {
  color: var(--gold-soft);
}

.contact-note i {
  color: var(--gold-soft);
}

.contact-form-card {
  background: var(--white);
  border-radius: 14px;
  padding: 2rem;
  border: 1.3px solid rgba(var(--gold-deep-rgb), 0.2);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.contact-form-card h4 {
  color: var(--black-pure);
  font-weight: 700;
  margin-bottom: 0.3rem;
  font-size: 1.15rem;
}

.direct-contact-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.72rem;
  color: var(--gold-soft);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.direct-contact-label .dash {
  display: inline-block;
  width: 18px;
  height: 2px;
  background: var(--gold-soft);
}

.contact-form-sub {
  color: var(--gray-58);
  font-size: 0.85rem;
  margin-bottom: 1.4rem;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid rgba(var(--white-rgb), 0.08);
}

.contact-form-card label.form-label {
  font-size: 0.72rem;
  color: var(--gray-58);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
  margin-bottom: 0.4rem;
}

.contact-form-footnote {
  text-align: center;
  color: var(--gray-46-2);
  font-size: 0.78rem;
  margin: 0.7rem 0 0;
}

.contact-form-footnote i {
  color: var(--gold-soft);
  margin-right: 0.3rem;
}

.contact-form-card .form-control,
.contact-form-card .form-select {
  background: var(--gray-96);
  border: 1.3px solid rgba(var(--white-rgb), 0.08);
  color: var(--black-pure);
  border-radius: 8px;
  padding: 0.65rem 0.9rem;
  font-size: 0.9rem;
}

.contact-form-card .form-control::placeholder {
  color: var(--gray-46-2);
}

.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus {
  background: rgba(var(--white-rgb), 0.06);
  border-color: var(--gold-soft);
  box-shadow: 0 0 0 0.2rem rgba(201, 162, 74, 0.18);
  color: var(--black-pure);
}

/* Shared validation error message style — used by both forms */

.form-error-message {
  color: var(--red-71);
  font-size: 0.78rem;
  margin-top: 0.3rem;
  min-height: 1em;
}

/* Contact method toggle (Call me / Email me / WhatsApp) */

.contact-method-toggle {
  display: flex;
  gap: 0.7rem;
  flex-wrap: wrap;
}

.contact-method-toggle .btn-check + label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid rgba(var(--white-rgb), 0.16);
  color: var(--gray-81-2);
  background: rgba(var(--white-rgb), 0.03);
  border-radius: 999px;
  padding: 0.5rem 1.1rem;
  font-size: 0.82rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

.contact-method-toggle .btn-check + label::before {
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid rgba(var(--white-rgb), 0.3);
  flex-shrink: 0;
  transition: all 0.2s ease;
}

.contact-method-toggle .btn-check:checked + label {
  border-color: var(--gold-soft);
  color: var(--gold-soft);
  background: rgba(201, 162, 74, 0.08);
  font-weight: 600;
}

.contact-method-toggle .btn-check:checked + label::before {
  border-color: var(--gold-soft);
  background: var(--gold-soft);
  box-shadow: inset 0 0 0 3px var(--blue-9);
}

/* ================= FOUR FEATURE GRID ================= */

.feature-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background-color: var(--dark-card);
  border: 1px solid var(--dark-card);
  border-radius: 8px;
  overflow: hidden;
  margin-top: 70px;
}

.feature-cell {
  background-color: var(--dark-panel);
  padding: 40px;
  position: relative;
  transition:
    transform 0.3s ease,
    background-color 0.3s ease,
    box-shadow 0.3s ease;
}

.feature-cell:hover {
  transform: translateY(-4px);
  background-color: var(--orange-8);
  box-shadow: 0 18px 34px rgba(var(--black-rgb), 0.45);
  z-index: 2;
}

.icon-ring {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid var(--label-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold-muted);
  font-size: 18px;
  margin-bottom: 22px;
  transition:
    background-color 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

.feature-cell:hover .icon-ring {
  background-color: var(--gold-muted);
  border-color: var(--gold-muted);
  color: var(--gold-shadow);
  transform: scale(1.08) rotate(-6deg);
}

.feature-cell h3 {
  color: var(--white);
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 12px;
  transition: color 0.3s ease;
}

.feature-cell:hover h3 {
  color: var(--gold-muted);
}

.feature-cell p {
  color: var(--gray-59);
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

/* ================= AMENITIES ================= */

.amenities-title {
  font-size: 32px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 44px;
}

.amenities-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1px;
  background-color: var(--dark-card);
  border: 1px solid var(--dark-card);
  border-radius: 8px;
  overflow: hidden;
}

.amenity-cell {
  background-color: var(--dark-panel);
  padding: 22px 24px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--gray-82);
  font-size: 14px;
  position: relative;
  transition:
    transform 0.3s ease,
    background-color 0.3s ease,
    box-shadow 0.3s ease;
}

.amenity-cell:hover {
  transform: translateY(-4px);
  background-color: var(--yellow-8);
  box-shadow: 0 12px 24px rgba(var(--black-rgb), 0.4);
  z-index: 2;
}

.amenity-cell i {
  color: var(--gold-muted);
  font-size: 13px;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  border-radius: 50%;
  background-color: var(--gray-12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

.amenity-cell:hover i {
  background-color: var(--gold-muted);
  color: var(--gold-shadow);
  transform: scale(1.1);
}

.amenity-cell.filler {
  background-color: var(--dark-panel);
  pointer-events: none;
}

/* ================= FAQ ================= */

.faq-subtitle {
  text-align: center;
  color: var(--gray-60);
  font-size: 15px;
  max-width: 520px;
  margin: 18px auto 60px auto;
}

.faq-nav {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
}

.faq-nav li {
  padding: 14px 20px;
  border-radius: 6px;
  border: 1px solid transparent;
  color: var(--gray-60);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}

.faq-nav li .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--gray-35);
  display: inline-block;
}

.faq-nav li.active {
  background-color: var(--orange-10);
  border-color: var(--yellow-21);
  color: var(--gold-muted);
}

.faq-nav li.active .dot {
  background-color: var(--gold-muted);
}

.faq-help-box {
  background-color: var(--dark-panel);
  border: 1px solid var(--dark-card);
  border-radius: 8px;
  padding: 22px;
}

.faq-help-box h4 {
  color: var(--white);
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 8px;
}

.faq-help-box p {
  color: var(--gray-56);
  font-size: 13px;
  margin-bottom: 16px;
  line-height: 1.6;
}

.faq-panel {
  background-color: var(--dark-panel);
  border: 1px solid var(--dark-card);
  border-radius: 10px;
  padding: 34px;
}

.faq-panel-head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 8px;
}

.faq-panel-head h3 {
  color: var(--white);
  font-size: 20px;
  font-weight: 700;
  margin: 0;
}

.faq-panel-head span {
  color: var(--gray-48);
  font-size: 13px;
}

.accordion-item {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid var(--dark-card);
  border-radius: 0 !important;
}

.accordion-button {
  background-color: transparent;
  color: #000;
  font-size: 15px;
  font-weight: 500;
  padding: 20px 4px;
  box-shadow: none !important;
}

.accordion-button:not(.collapsed) {
  background-color: transparent;
  color: #000;
}

.accordion-button::after {
  filter: invert(72%) sepia(28%) saturate(500%) hue-rotate(357deg)
    brightness(95%);
}

.accordion-body {
  color: #000;
  font-size: 14px;
  line-height: 1.7;
  padding: 0 4px 22px 4px;
  border: 0;
}

/* ================= TESTIMONIALS ================= */

.testi-stats-box {
  background-color: var(--dark-panel);
  border: 1px solid var(--dark-card);
  border-radius: 10px;
  padding: 20px 30px;
  display: flex;
  align-items: center;
  gap: 26px;
}

.testi-stats-box .num {
  font-family: var(--font-heading);
  color: var(--gold-muted);
  font-size: 30px;
  font-weight: 700;
}

.testi-stats-box .divider-v {
  width: 1px;
  height: 40px;
  background-color: var(--gray-20);
}

.testi-stats-box .label {
  color: var(--gray-60);
  font-size: 12px;
  margin-top: 4px;
}

.testi-stats-box .stars-mini {
  color: var(--star-yellow);
  font-size: 11px;
}

.testi-card {
  background-color: var(--dark-panel);
  border: 1px solid var(--dark-card);
  border-radius: 10px;
  padding: 32px 28px;
  margin: 0 12px;
  height: 100%;
}

.testi-card .quote-mark {
  color: var(--gold-muted);
  font-size: 30px;
  font-family: var(--font-heading);
  line-height: 1;
}

.testi-card .stars {
  color: var(--star-yellow);
  font-size: 13px;
  margin: 14px 0 18px 0;
}

.testi-card p.testi-text {
  color: var(--gray-77);
  font-size: 14px;
  font-style: italic;
  line-height: 1.8;
  margin-bottom: 26px;
  min-height: 170px;
}

.testi-author {
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid var(--dark-card);
  padding-top: 18px;
}

.testi-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: var(--gold-muted);
  color: var(--gold-shadow);
  font-weight: 700;
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.testi-author .name {
  color: var(--white);
  font-size: 14px;
  font-weight: 700;
}

.testi-author .role {
  color: var(--gray-54);
  font-size: 12px;
}

.testi-author .loc {
  margin-left: auto;
  color: var(--gray-48);
  font-size: 12px;
  text-align: right;
}

.slick-dots li button:before {
  color: var(--gray-33);
  opacity: 1;
  font-size: 8px;
}

.slick-dots li.slick-active button:before {
  color: var(--gold-muted);
}

.slick-prev,
.slick-next {
  width: 38px;
  height: 38px;
  border: 1px solid var(--gray-20);
  border-radius: 50%;
  z-index: 5;
}

.slick-prev:before,
.slick-next:before {
  color: var(--gold-muted);
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  opacity: 1;
  font-size: 14px;
}

.slick-prev:before {
  content: "";
}

.slick-next:before {
  content: "";
}

.slick-prev {
  left: -6px;
}

.slick-next {
  right: -6px;
}

.verified-row {
  text-align: center;
  margin-top: 44px;
  color: var(--gray-48);
  font-size: 13px;
}

.verified-badges {
  display: inline-flex;
  gap: 12px;
  margin-left: 12px;
  flex-wrap: wrap;
  justify-content: center;
}

.verified-badges span {
  background-color: var(--dark-bg);
  border: 1px solid var(--gray-17);
  color: var(--gray-81);
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 999px;
}

.homenew-body {
  font-family: var(--font-body);
  color: var(--dark-text);
  font-size: 16px;
  line-height: 1.6;
}

.homenew-body h1,
.homenew-body h3,
.homenew-body h4 {
  font-family: var(--font-body);
}

.homenew-body h2 {
  font-family: var(--font-heading);
}

/* ---------- Shared helper classes ---------- */

.homenew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-dark);
}

.homenew-eyebrow--light {
  color: var(--gold);
}

.homenew-h2 {
  font-size: 40px;
  font-weight: 600;
  color: var(--dark-text);
  line-height: 1.25;
  margin: 0;
}

.homenew-h2--light {
  color: var(--white);
}

.homenew-h3 {
  font-size: 26px;
  font-weight: 600;
  color: var(--dark-text);
  margin-bottom: 16px;
}

.homenew-gold {
  color: var(--gold-dark);
}

.homenew-h2--light .homenew-gold {
  color: var(--gold);
}

.homenew-body-text {
  font-size: 16px;
  color: var(--body-gray);
}

.homenew-body-text--light {
  color: var(--blue-75);
}

.homenew-btn-gold {
  display: inline-block;
  background-color: var(--gold);
  color: var(--dark-text);
  font-weight: 600;
  font-size: 15px;
  padding: 14px 28px;
  border-radius: 4px;
  text-decoration: none;
  border: none;
  transition: background-color 0.2s ease;
}

.homenew-btn-gold:hover {
  background-color: var(--gold-dark);
  color: var(--dark-text);
}

.homenew-btn-gold--block {
  display: block;
  text-align: center;
  width: 100%;
}

.homenew-check-list li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 12px;
  color: var(--body-gray);
  font-size: 15px;
}

.homenew-check-list li i {
  position: absolute;
  left: 0;
  top: 2px;
  color: var(--gold-dark);
  font-weight: 700;
}

.homenew-check-list--light li {
  color: var(--blue-86);
}

.homenew-check-list--light li i {
  color: var(--gold);
}

.homenew-bullet-list li {
  position: relative;
  padding-left: 18px;
  margin-bottom: 10px;
  color: var(--body-gray);
  font-size: 15px;
}

.homenew-bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--gold-dark);
}

.homenew-bullet-list--light li {
  color: var(--blue-86);
}

.homenew-bullet-list--light li::before {
  background-color: var(--gold);
}

.homenew-icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--gold-bg);
  color: var(--gold-dark);
  font-size: 16px;
  margin-right: 12px;
  flex-shrink: 0;
}

.homenew-icon-circle--lg {
  width: 56px;
  height: 56px;
  font-size: 22px;
}

/* ---------- Comfort & Privacy ---------- */

.homenew-comfort {
  background-color: var(--white);
}

.homenew-contact-list li {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}

.homenew-contact-list li a {
  color: var(--dark-text);
  text-decoration: none;
  font-size: 15px;
}

.homenew-contact-list li a:hover {
  color: var(--gold-dark);
}

.homenew-feature-card {
  background-color: var(--yellow-98);
  border: 1px solid var(--border-light);
  border-radius: 6px;
  padding: 28px 24px;
  height: 100%;
}

.homenew-feature-dot {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: var(--gold);
  margin-bottom: 16px;
}

.homenew-feature-card h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 10px;
}

.homenew-feature-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

/* ---------- Luxury Transportation ---------- */

.homenew-luxury {
  background-color: var(--white);
}

.homenew-mini-card {
  border: 1px solid var(--border-light);
  border-radius: 6px;
  overflow: hidden;
  height: 100%;
}

.homenew-mini-card-img img {
  width: 100%;
  height: 130px;
  object-fit: cover;
}

.homenew-mini-card h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  margin: 16px 16px 8px;
}

.homenew-mini-card p {
  font-size: 13px;
  color: var(--body-gray);
  margin: 0 16px 12px;
}

.homenew-readmore {
  display: inline-block;
  margin: 0 16px 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--gold-dark);
  text-decoration: none;
}

/* ---------- Chauffeur Services / Occasions Tabs ---------- */

.homenew-occasions {
  background-color: var(--white);
}

.homenew-tab-nav {
  border-bottom: none;
  gap: 12px;
}

.homenew-tab-nav .nav-link {
  border: 1px solid var(--border-light);
  border-radius: 4px;
  color: var(--dark-text);
  font-size: 14px;
  font-weight: 600;
  padding: 14px 22px;
  white-space: nowrap;
}

.homenew-tab-nav .nav-link.active {
  background-color: var(--gold);
  border-color: var(--gold);
  color: var(--dark-text);
}

.homenew-occasion-img {
  margin-right: 30px;
}

.homenew-occasion-img img {
  width: 100%;
  border-radius: 6px;
  object-fit: cover;
}

/* ---------- Book With HCD (dark) ---------- */

.homenew-book-hcd {
  background-color: var(--navy);
}

.homenew-book-img {
  border-radius: 6px;
  width: 100%;
  object-fit: cover;
  height: 202px;
}

/* ---------- Video CTA ---------- */

.homenew-video-bg {
  background-size: cover;
  background-position: center;
  padding: 110px 0;
  position: relative;
}

.homenew-video-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(9, 9, 9, 0.55);
}

.homenew-video-bg .container {
  position: relative;
  z-index: 2;
}

.homenew-play-btn {
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background-color: rgba(var(--gold-rgb), 0.25);
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 28px;
  cursor: pointer;
}

.homenew-play-btn::after {
  content: "";
}

.homenew-play-btn i {
  position: relative;
  left: 2px;
}

.flt_new_sprin_btn_book {
  text-align: center;
}

/* ---------- Why Book Section ---------- */

.homenew-why {
  background-color: var(--white);
}

.homenew-why.homenew-why_black {
  background-color: var(--black-pure);
}

.homenew-why_black .homenew-h2 {
  color: var(--white);
}

.homenew-why-item h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  margin: 16px 0 10px;
}

.homenew-why-item p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

.homenew-feature-list-card {
  background-color: var(--yellow-98);
  border: 1px solid var(--border-light);
  border-radius: 6px;
  padding: 28px 24px;
  height: 100%;
}

/* ---------- Airport (dark) ---------- */

.homenew-airport {
  background-color: var(--black-deep);
}

.homenew-airport-img-wrap {
  position: relative;
}

.homenew-airport-img-wrap img {
  width: 100%;
  border-radius: 6px;
}

.homenew-badge-100 {
  position: absolute;
  left: -70px;
  bottom: 40px;
  background-color: var(--navy);
  color: var(--yellow-74-2);
  padding: 27px 41px;
  border-radius: 4px;
  border: 0.5px solid rgba(var(--gold-deep-rgb), 0.5);
  overflow: hidden;
}

.homenew-badge-100 strong {
  display: block;
  font-size: 26px;
  font-weight: 700;
}

.homenew-badge-100 span {
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--blue-75);
}

/* ---------- Coverage (dark) ---------- */

.homenew-coverage {
  background-color: var(--black-deep);
  padding: 0 0 30px 0 !important;
}

.homenew-city-pill {
  border: 1px solid var(--gray-22);
  color: var(--border-light);
  font-size: 14px;
  padding: 10px 22px;
  border-radius: 4px;
}

/* ---------- Four Step Booking ---------- */

.homenew-steps {
  background-color: var(--white);
}

.homenew-step-num {
  display: block;
  font-family: var(--font-heading);
  font-size: 42px;
  font-weight: 700;
  color: var(--gold);
  margin-bottom: 8px;
}

.homenew-step h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 10px;
}

.homenew-step p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

.fleetnew-body {
  font-family: var(--font-body);
  color: var(--dark-text);
  font-size: 16px;
  line-height: 1.6;
}

.fleetnew-body h1,
.fleetnew-body h3 {
  font-family: var(--font-body);
}

.fleetnew-body h2 {
  font-family: var(--font-heading);
}

.fleetnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-dark);
}

.fleetnew-h1 {
  font-size: 46px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}

.fleetnew-h2 {
  font-size: 34px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.fleetnew-h2--light {
  color: var(--white);
}

.fleetnew-h2 em {
  font-style: italic;
  font-weight: 500;
}

.fleetnew-body-text {
  font-size: 16px;
  color: var(--blue-75);
}

.fleetnew-compare .fleetnew-body-text {
  color: var(--muted-gray);
}

.fleetnew-luxury-features .fleetnew-body-text,
.fleetnew-occasion .fleetnew-body-text {
  color: var(--body-gray);
}

.fleetnew-divider {
  display: block;
  width: 60px;
  height: 2px;
  background-color: var(--gold);
  margin: 24px auto 0;
}

.fleetnew-divider--start {
  margin: 24px 0 0;
}

.fleetnew-btn-gold {
  display: inline-block;
  background-color: var(--gold);
  color: var(--dark-text);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 14px 26px;
  border-radius: 4px;
  text-decoration: none;
}

.fleetnew-btn-gold:hover {
  background-color: var(--gold-dark);
  color: var(--dark-text);
}

/* ---------- Fleet Comparison table ---------- */

.fleetnew-compare {
  background-color: var(--black);
}

.fleetnew-table {
  color: var(--border-light);
  border-color: var(--line-dark);
}

.fleetnew-table thead th {
  color: var(--gray-57);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-bottom: 1px solid var(--line-dark);
  padding-bottom: 16px;
  background-color: transparent;
}

.fleetnew-table tbody td {
  border-bottom: 1px solid var(--ink);
  padding-top: 22px;
  padding-bottom: 22px;
  background-color: transparent;
  font-size: 15px;
}

.fleetnew-table tbody tr:first-child td {
  border-left: 3px solid var(--gold);
}

.fleetnew-vehicle-name {
  font-weight: 600;
  color: var(--white);
}

.fleetnew-yes {
  color: var(--gold);
  font-size: 16px;
}

.fleetnew-dash {
  color: var(--gray-32);
}

.fleetnew-book-link {
  color: var(--gold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-decoration: none;
}

/* ---------- Luxury Features ---------- */

.fleetnew-luxury-features {
  background-color: var(--white);
}

.fleetnew-amenity-card {
  background-color: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 6px;
  padding: 24px;
  height: 100%;
}

.fleetnew-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--gold);
  margin-bottom: 14px;
}

.fleetnew-amenity-card h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}

.fleetnew-amenity-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

/* ---------- Why Choose (dark 3x2 grid) ---------- */

.fleetnew-why {
  background-color: var(--black);
}

.fleetnew-why-grid {
  border-top: 1px solid var(--line-dark);
  border-left: 1px solid var(--line-dark);
}

.fleetnew-why-cell {
  border-right: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
  padding: 40px 32px;
}

.fleetnew-emoji {
  font-size: 26px;
  display: block;
  margin-bottom: 18px;
}

.fleetnew-why-cell h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 10px;
}

.fleetnew-why-cell p {
  font-size: 14px;
  color: var(--muted-gray);
  margin: 0;
}

/* ---------- Occasion icon grid ---------- */

.fleetnew-occasion {
  background-color: var(--light-bg);
}

.fleetnew-occasion-panel {
  background-color: var(--white);
  border-radius: 6px;
  padding: 48px 32px;
}

.fleetnew-occasion-icon {
  font-size: 30px;
  color: var(--dark-text);
  display: block;
  margin-bottom: 14px;
}

.fleetnew-occasion-panel p {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--gray-33-2);
  margin: 0;
}

/* ---------- Easy Booking Process (3 step) ---------- */

.fleetnew-steps {
  background-color: var(--black);
}

.fleetnew-step-col {
  text-align: center;
  position: relative;
}

.fleetnew-step-box {
  display: inline-block;
  border: 1px solid var(--gold);
  color: var(--gold);
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 18px;
  padding: 10px 18px;
  border-radius: 4px;
  margin-bottom: 20px;
}

.fleetnew-step-col h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 10px;
}

.fleetnew-step-col p {
  font-size: 14px;
  color: var(--muted-gray);
  margin: 0 auto;
  max-width: 320px;
}

.abtnew-body {
  font-family: var(--font-body);
  color: var(--dark-text);
  font-size: 16px;
  line-height: 1.6;
}

.abtnew-body h1,
.abtnew-body h3 {
  font-family: var(--font-body);
}

.abtnew-body h2 {
  font-family: var(--font-heading);
}

.abtnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--muted-gray);
}

.abtnew-eyebrow--light {
  color: var(--gold);
}

.abtnew-h1 {
  font-size: 38px;
  font-weight: 600;
  color: var(--dark-text);
  margin: 0;
}

.abtnew-h2 {
  font-size: 34px;
  font-weight: 600;
  color: var(--dark-text);
  margin: 0;
}

.abtnew-h2--light {
  color: var(--white);
}

.abtnew-body-text {
  font-size: 15px;
  color: var(--body-gray);
}

.abtnew-body-text--light {
  color: var(--gray-75);
}

.abtnew-btn-dark {
  display: inline-block;
  background-color: var(--dark-text);
  color: var(--white);
  font-weight: 600;
  font-size: 14px;
  padding: 14px 26px;
  border-radius: 30px;
  text-decoration: none;
}

.abtnew-btn-outline {
  display: inline-block;
  background-color: var(--white);
  border: 1px solid var(--border-light);
  color: var(--dark-text);
  font-weight: 600;
  font-size: 14px;
  padding: 14px 26px;
  border-radius: 30px;
  text-decoration: none;
}

.abtnew-check-list li,
.abtnew-check-list-sm li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 10px;
  font-size: 14px;
  color: var(--body-gray);
}

.abtnew-body-text--light + .abtnew-check-list li,
.abtnew-team .abtnew-check-list li {
  color: var(--gray-75);
}

.abtnew-check-list li i,
.abtnew-check-list-sm li i {
  position: absolute;
  left: 0;
  top: 2px;
  color: var(--gold);
}

.abtnew-check-list-sm li {
  color: var(--gray-33-2);
}

.abtnew-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background-color: var(--yellow-93);
  color: var(--dark-text);
  font-size: 18px;
  margin-bottom: 16px;
}

.abtnew-icon-box--circle {
  border-radius: 50%;
  background-color: rgba(var(--gold-rgb), 0.15);
  color: var(--gold);
  width: 56px;
  height: 56px;
  font-size: 22px;
}

.abtnew-emoji-sm {
  font-size: 22px;
  display: inline-block;
  margin-bottom: 16px;
}

/* ---------- Intro ---------- */

.abtnew-intro {
  background-color: var(--white);
}

.abtnew-intro-img-wrap {
  position: relative;
  margin-right: 30px;
}

.abtnew-intro-img-wrap img {
  width: 100%;
  border-radius: 8px;
}

.abtnew-badge-driver {
  position: absolute;
  left: 20px;
  bottom: 15px;
  background-color: var(--white);
  padding: 10px 18px;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 4px 16px rgba(var(--black-rgb), 0.12);
  display: none;
}

.abtnew-badge-driver i {
  color: var(--gold-dark);
  margin-right: 6px;
}

/* ---------- Timeline ---------- */

.abtnew-timeline {
  background-color: var(--light-bg-2);
}

.abtnew-timeline-track {
  position: relative;
  padding: 20px 0;
}

.abtnew-timeline-track::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: var(--gray-83);
  transform: translateX(-1px);
}

.abtnew-timeline-item {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}

.abtnew-timeline-item--left {
  justify-content: flex-start;
}

.abtnew-timeline-item--right {
  justify-content: flex-end;
}

.abtnew-timeline-card {
  background-color: var(--white);
  border-radius: 8px;
  padding: 26px;
  width: 44%;
  box-shadow: 0 2px 10px rgba(var(--black-rgb), 0.04);
}

.abtnew-timeline-year {
  display: inline-block;
  background-color: var(--gold-bg-2);
  color: var(--gold-dark);
  font-size: 12px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 12px;
}

.abtnew-timeline-year--today {
  background-color: var(--gold);
  color: var(--white);
}

.abtnew-timeline-card h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-timeline-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

.abtnew-timeline-dot {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--gold);
  border: 3px solid var(--white);
  box-shadow: 0 0 0 1px var(--gray-83);
  margin: 0 79px;
  flex-shrink: 0;
}

/* ---------- Mission & Vision ---------- */

.abtnew-mission {
  background-color: var(--brown-dark);
}

.abtnew-mv-card {
  background-color: var(--white);
  border-radius: 10px;
  padding: 32px;
  height: 100%;
}

.abtnew-mv-card h3 {
  font-family: var(--font-body);
  font-size: 19px;
  font-weight: 700;
  margin: 10px 0 14px;
}

.abtnew-mv-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin-bottom: 12px;
}

.missionicon {
  width: 60px;
  height: 60px;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--blue-96);
  margin-bottom: 10px;
}

.missionicon i {
  font-size: 17px;
  color: var(--black-pure);
}

/* ---------- Values / Apart / Serve card grids (shared look) ---------- */

.abtnew-values {
  background-color: var(--white);
}

.abtnew-apart {
  background-color: var(--light-bg-2);
}

.abtnew-serve {
  background-color: var(--light-bg-2);
}

.abtnew-value-card,
.abtnew-apart-card,
.abtnew-serve-card {
  background-color: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 26px 22px;
  height: 100%;
}

.abtnew-value-card h3,
.abtnew-apart-card h3,
.abtnew-serve-card h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-value-card p,
.abtnew-apart-card p,
.abtnew-serve-card p {
  font-size: 13px;
  color: var(--body-gray);
  margin: 0;
}

/* ---------- Team (dark) ---------- */

.abtnew-team {
  background-color: var(--black);
}

.abtnew-team .abtnew-check-list li i {
  color: var(--gold);
}

.abtnew-team-card {
  background-color: var(--gray-8);
  border: 1px solid var(--dark-card);
  border-radius: 10px;
  padding: 36px;
}

.abtnew-team-card h3 {
  font-family: var(--font-body);
  color: var(--white);
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 12px;
}

.abtnew-team-card p {
  font-size: 14px;
  color: var(--muted-gray);
}

.abtnew-team-card span {
  color: var(--gray-75);
  font-size: 13px;
  font-weight: 600;
}

.abtnew-team-card span i {
  color: var(--gold);
  margin-right: 6px;
}

/* ---------- Coverage / Airports ---------- */

.abtnew-coverage {
  background-color: var(--white);
}

.abtnew-airports-card {
  background-color: var(--light-bg-2);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 30px;
}

.abtnew-airports-card h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 18px;
}

.abtnew-airports-card ul li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-light);
  font-size: 14px;
}

.abtnew-airports-card ul li:last-child {
  border-bottom: none;
}

.abtnew-airports-card ul li i {
  color: var(--gold-dark);
  margin-right: 8px;
}

.abtnew-airport-note {
  color: var(--muted-gray);
  font-size: 12px;
}

/* ---------- Trust (dark) ---------- */

.abtnew-trust {
  background-color: var(--black);
}

.abtnew-trust-card {
  background-color: var(--dark-panel);
  border: 1px solid var(--line-dark);
  border-radius: 8px;
  padding: 26px 22px;
  height: 100%;
}

.abtnew-trust-card h3 {
  font-family: var(--font-body);
  color: var(--white);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-trust-card p {
  font-size: 13px;
  color: var(--muted-gray);
  margin: 0;
}

.testinew-section {
  background-color: var(--black);
}

.testinew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold);
}

.testinew-h2 {
  font-family: var(--font-heading);
  font-size: 34px;
  font-weight: 600;
  color: var(--white);
  margin: 0;
}

.testinew-body-text {
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--muted-gray);
}

.testinew-stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(var(--gold-deep-rgb), 0.05);
  border: 1.3px solid rgba(var(--gold-deep-rgb), 0.25);
  border-radius: 16px;
  padding: 20px 28px;
}

.testinew-stat {
  flex: 1;
  text-align: center;
  border-right: 1px solid var(--line-dark);
}

.testinew-stat:last-child {
  border-right: none;
}

.testinew-stat strong {
  display: block;
  font-family: var(--font-heading);
  font-size: 26px;
  font-weight: 700;
  color: var(--white);
}

.testinew-stat small {
  display: block;
  font-size: 11px;
  color: var(--muted-gray);
  margin-top: 4px;
}

.testinew-stat .testinew-stars {
  color: var(--gold);
  font-size: 11px;
  margin-top: 2px;
}

.testinew-slider {
  margin: 0 10px;
}

.testinew-slider .slick-slide {
  margin: 0 12px;
}

.testinew-slider .slick-track {
  display: flex;
  padding-top: 30px;
}

.testinew-slider .slick-slide {
  height: auto;
}

.testinew-slider .slick-slide > div {
  height: 100%;
}

.testinew-card {
  background-color: var(--dark-panel);
  border: 1px solid var(--line-dark);
  border-radius: 8px;
  padding: 30px;
  height: 100%;
}

.testinew-card.slick-current {
  background-color: rgba(var(--gold-deep-rgb), 0.05);
}

.testinew-quote {
  color: var(--gold);
  font-size: 22px;
  opacity: 0.6;
  margin-bottom: 12px;
  display: block;
}

.testinew-card .testinew-stars {
  color: var(--gold);
  font-size: 14px;
  margin-bottom: 16px;
  letter-spacing: 2px;
  height: auto !important;
}

.testinew-quote-text {
  font-style: italic;
  font-size: 14px;
  color: var(--blue-86);
  line-height: 1.7;
  margin-bottom: 24px;
}

.testinew-author {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 0px;
  border-top: 1px solid var(--line-dark);
  position: relative;
  height: auto !important;
}

.testinew-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--line-dark);
  color: var(--gold);
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
}

.testinew-author strong {
  display: block;
  font-size: 14px;
  color: var(--white);
}

.testinew-author small {
  display: block;
  font-size: 12px;
  color: var(--muted-gray);
}

.testinew-location {
  margin-left: auto;
  font-size: 12px;
  color: var(--muted-gray);
  text-align: right;
}

.testinew-slider .slick-dots {
  position: static;
  margin-top: 24px;
}

.testinew-slider .slick-dots li {
  width: auto;
  height: auto;
}

.testinew-slider .slick-dots li button {
  width: 24px;
  height: 4px;
  border-radius: 2px;
  background-color: var(--gray-16);
  padding: 0;
}

.testinew-slider .slick-dots li button::before {
  content: none;
}

.testinew-slider .slick-dots li.slick-active button {
  background-color: var(--gold);
}

.testinew-slider .slick-prev,
.testinew-slider .slick-next {
  width: 40px;
  height: 40px;
  border: 1px solid var(--line-dark);
  border-radius: 50%;
  background-color: transparent;
  z-index: 2;
}

.testinew-slider .slick-prev::before,
.testinew-slider .slick-next::before {
  color: var(--white);
  opacity: 1;
}

.testinew-slider .slick-prev {
  left: -8px;
}

.testinew-slider .slick-next {
  right: -8px;
}

.testinew-verified {
  margin-top: 28px;
  font-size: 13px;
  color: var(--muted-gray);
}

.testinew-badge {
  display: inline-block;
  background-color: var(--dark-bg);
  border: 1px solid var(--line-dark);
  color: var(--blue-86);
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 20px;
  margin-left: 8px;
}

.fleetcardnew-section {
  background-color: var(--white);
}

.fleetcardnew-h2 {
  font-family: var(--font-heading);
  font-size: 34px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.fleetcardnew-body-text {
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--body-gray);
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.fleetcardnew-slider {
  margin: 0 -12px;
}

.fleetcardnew-slider .slick-slide {
  padding: 0 12px;
}

.fleetcardnew-slider .slick-track {
  display: flex;
}

.fleetcardnew-slider .slick-slide {
  height: auto;
}

.fleetcardnew-slider .slick-slide > div {
  height: 100%;
}

.fleetcardnew-card {
  border: 1px solid var(--border-light);
  border-radius: 8px;
  overflow: hidden;
  height: 100%;
}

.fleetcardnew-img {
  background-color: var(--gray-bg);
}

.fleetcardnew-img img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.fleetcardnew-body {
  padding: 20px;
}

.fleetcardnew-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.fleetcardnew-title-row h3 {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.fleetcardnew-title-row span {
  font-size: 13px;
  color: var(--body-gray);
}

.fleetcardnew-title-row span strong {
  color: var(--dark-text);
}

.fleetcardnew-features {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  border-top: 1px solid var(--border-light);
  border-bottom: 1px solid var(--border-light);
  padding: 14px 0;
  margin-bottom: 16px;
}

.fleetcardnew-features span {
  font-size: 11px;
  color: var(--body-gray);
  display: flex;
  align-items: center;
  gap: 5px;
}

.fleetcardnew-features i {
  color: var(--gray-57);
  font-size: 13px;
}

.fleetcardnew-btn {
  display: block;
  text-align: center;
  background-color: var(--black-pure);
  color: var(--white);
  font-size: 14px;
  font-weight: 600;
  padding: 12px;
  border-radius: 4px;
  text-decoration: none;
}

.fleetcardnew-btn:hover {
  background-color: var(--dark-bg);
  color: var(--white);
}

.fleetcardnew-slider .slick-dots {
  position: static;
  margin-top: 20px;
}

.fleetcardnew-slider .slick-dots li button::before {
  font-size: 8px;
  color: var(--dark-text);
  opacity: 0.3;
}

.fleetcardnew-slider .slick-dots li.slick-active button::before {
  opacity: 1;
  color: var(--gold, var(--gold));
}

.fleetcardnew-slider .slick-prev,
.fleetcardnew-slider .slick-next {
  width: 40px;
  height: 40px;
  border: 1px solid var(--border-light);
  border-radius: 50%;
  background-color: var(--white);
  z-index: 2;
}

.fleetcardnew-slider .slick-prev::before,
.fleetcardnew-slider .slick-next::before {
  font-family: "slick";
  color: var(--dark-text);
  opacity: 1;
}

.fleetcardnew-slider .slick-prev {
  left: -20px;
}

.fleetcardnew-slider .slick-next {
  right: -20px;
}

.faqnew-section {
  background-color: var(--white);
}

.faqnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold);
}

.faqnew-h2 {
  font-family: var(--font-heading);
  font-size: 34px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.faqnew-body-text {
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--body-gray);
}

/* ---------- Category list ---------- */

.faqnew-category-list {
  gap: 10px;
}

.faqnew-category {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  text-align: left;
  background-color: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 6px;
  padding: 14px 16px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  color: var(--dark-text);
}

.faqnew-category .faqnew-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--gray-80);
  flex-shrink: 0;
}

.faqnew-category.active {
  background-color: var(--gold-bg);
  border-color: var(--gold-bg);
  color: var(--dark-text);
}

.faqnew-category.active .faqnew-dot {
  background-color: var(--gold);
}

/* ---------- Question panel ---------- */

.faqnew-panel {
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 30px;
}

.faqnew-panel-head {
  display: flex;
  align-items: baseline;
  gap: 10px;
  border-bottom: 1px solid var(--border-light);
  padding-bottom: 16px;
  margin-bottom: 6px;
}

.faqnew-panel-head h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  margin: 0;
}

.faqnew-panel-head span {
  font-size: 13px;
  color: var(--body-gray);
}

.faqnew-accordion .accordion-item {
  border: none;
  border-bottom: 1px solid var(--border-light);
}

.faqnew-accordion .accordion-item:last-child {
  border-bottom: none;
}

.faqnew-accordion .accordion-button {
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 600;
  color: var(--dark-text);
  background-color: transparent;
  box-shadow: none;
  padding: 10px 4px;
}

.faqnew-accordion .accordion-button:not(.collapsed) {
  color: var(--dark-text);
  background-color: transparent;
  box-shadow: none;
}

.faqnew-accordion .accordion-button::after {
  width: 28px;
  height: 28px;
  background-color: #ddd49c;
  border: 1px solid var(--border-light);
  border-radius: 50%;
  background-size: 12px;
  background-position: center;
  flex-shrink: 0;
  filter: none;
}
.accordion-button:not(.collapsed)::after {
    color: #000;
}

.faqnew-accordion .accordion-body {
  font-size: 14px;
  color: var(--body-gray);
  padding: 10px 0;
  background-color: transparent;
}

/* ---------- Still have questions card ---------- */

.faqnew-still-card {
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 26px;
}

.faqnew-still-card strong {
  display: block;
  font-size: 15px;
  color: var(--dark-text);
}

.faqnew-still-card p {
  font-size: 13px;
  color: var(--body-gray);
  margin: 6px 0 16px;
}

.faqnew-btn-outline {
  display: inline-block;
  background-color: var(--gold-bg);
  color: var(--gold-deep);
  font-size: 13px;
  font-weight: 700;
  padding: 12px 26px;
  border-radius: 4px;
  text-decoration: none;
}

.abtnew-body {
  font-family: var(--font-body);
  color: var(--dark-text);
  font-size: 16px;
  line-height: 1.6;
}

.abtnew-body h1,
.abtnew-body h3 {
  font-family: var(--font-body);
}

.abtnew-body h2 {
  font-family: var(--font-heading);
}

.abtnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--muted-gray);
}

.abtnew-eyebrow--light {
  color: var(--gold);
}

.abtnew-h1 {
  font-size: 38px;
  font-weight: 600;
  color: var(--dark-text);
  margin: 0;
}

.abtnew-h2 {
  font-size: 34px;
  font-weight: 600;
  color: var(--dark-text);
  margin: 0;
}

.abtnew-h2--light {
  color: var(--white);
}

.abtnew-body-text {
  font-size: 15px;
  color: var(--body-gray);
}

.abtnew-body-text--light {
  color: var(--gray-75);
}

.abtnew-btn-dark {
  display: inline-block;
  background-color: var(--dark-text);
  color: var(--white);
  font-weight: 600;
  font-size: 14px;
  padding: 14px 26px;
  border-radius: 30px;
  text-decoration: none;
}

.abtnew-btn-outline {
  display: inline-block;
  background-color: var(--white);
  border: 1px solid var(--border-light);
  color: var(--dark-text);
  font-weight: 600;
  font-size: 14px;
  padding: 14px 26px;
  border-radius: 30px;
  text-decoration: none;
}

.abtnew-check-list li,
.abtnew-check-list-sm li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 10px;
  font-size: 14px;
  color: var(--body-gray);
}

.abtnew-body-text--light + .abtnew-check-list li,
.abtnew-team .abtnew-check-list li {
  color: var(--gray-75);
}

.abtnew-check-list li i,
.abtnew-check-list-sm li i {
  position: absolute;
  left: 0;
  top: 2px;
  color: var(--gold);
}

.abtnew-check-list-sm li {
  color: var(--gray-33-2);
}

.abtnew-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background-color: var(--yellow-93);
  color: var(--dark-text);
  font-size: 18px;
  margin-bottom: 16px;
}

.abtnew-icon-box--circle {
  border-radius: 50%;
  background-color: rgba(var(--gold-rgb), 0.15);
  color: var(--gold);
  width: 56px;
  height: 56px;
  font-size: 22px;
}

.abtnew-emoji-sm {
  font-size: 22px;
  display: inline-block;
  margin-bottom: 16px;
}

/* ---------- Intro ---------- */

.abtnew-intro {
  background-color: var(--white);
}

.abtnew-intro-img-wrap {
  position: relative;
}

.abtnew-intro-img-wrap img {
  width: 100%;
  border-radius: 8px;
}

.abtnew-badge-driver {
  position: absolute;
  left: 20px;
  bottom: -18px;
  background-color: var(--white);
  padding: 10px 18px;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 4px 16px rgba(var(--black-rgb), 0.12);
  display: none;
}

.abtnew-badge-driver i {
  color: var(--gold-dark);
  margin-right: 6px;
}

/* ---------- Timeline ---------- */

.abtnew-timeline {
  background-color: var(--light-bg-2);
}

.abtnew-timeline-track {
  position: relative;
  padding: 20px 0;
}

.abtnew-timeline-track::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: var(--gray-83);
  transform: translateX(-1px);
}

.abtnew-timeline-item {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}

.abtnew-timeline-item--left {
  justify-content: flex-start;
}

.abtnew-timeline-item--right {
  justify-content: flex-end;
}

.abtnew-timeline-card {
  background-color: var(--white);
  border-radius: 8px;
  padding: 26px;
  width: 44%;
  box-shadow: 0 2px 10px rgba(var(--black-rgb), 0.04);
}

.abtnew-timeline-year {
  display: inline-block;
  background-color: var(--gold-bg-2);
  color: var(--gold-dark);
  font-size: 12px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 12px;
}

.abtnew-timeline-year--today {
  background-color: var(--gold);
  color: var(--white);
}

.abtnew-timeline-card h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-timeline-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}


/* ---------- Mission & Vision ---------- */

.abtnew-mission {
  background-color: var(--brown-dark);
}

.abtnew-mv-card {
  background-color: var(--white);
  border-radius: 10px;
  padding: 32px;
  height: 100%;
}

.abtnew-mv-card h3 {
  font-family: var(--font-body);
  font-size: 19px;
  font-weight: 700;
  margin: 10px 0 14px;
}

.abtnew-mv-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin-bottom: 12px;
}

/* ---------- Values / Apart / Serve card grids (shared look) ---------- */

.abtnew-values {
  background-color: var(--white);
}

.abtnew-apart {
  background-color: var(--light-bg-2);
}

.abtnew-serve {
  background-color: var(--light-bg-2);
}

.abtnew-value-card,
.abtnew-apart-card,
.abtnew-serve-card {
  background-color: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 26px 22px;
  height: 100%;
}

.abtnew-value-card h3,
.abtnew-apart-card h3,
.abtnew-serve-card h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-value-card p,
.abtnew-apart-card p,
.abtnew-serve-card p {
  font-size: 13px;
  color: var(--body-gray);
  margin: 0;
}

/* ---------- Team (dark) ---------- */

.abtnew-team {
  background-color: var(--black);
}

.abtnew-team .abtnew-check-list li i {
  color: var(--gold);
}

.abtnew-team-card {
  background-color: var(--gray-8);
  border: 1px solid var(--dark-card);
  border-radius: 10px;
  padding: 36px;
}

.abtnew-team-card h3 {
  font-family: var(--font-body);
  color: var(--white);
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 12px;
}

.abtnew-team-card p {
  font-size: 14px;
  color: var(--muted-gray);
}

.abtnew-team-card span {
  color: var(--gray-75);
  font-size: 13px;
  font-weight: 600;
}

.abtnew-team-card span i {
  color: var(--gold);
  margin-right: 6px;
}

/* ---------- Coverage / Airports ---------- */

.abtnew-coverage {
  background-color: var(--white);
}

.abtnew-airports-card {
  background-color: var(--light-bg-2);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 30px;
}

.abtnew-airports-card h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 18px;
}

.abtnew-airports-card ul li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-light);
  font-size: 14px;
}

.abtnew-airports-card ul li:last-child {
  border-bottom: none;
}

.abtnew-airports-card ul li i {
  color: var(--gold-dark);
  margin-right: 8px;
}

.abtnew-airport-note {
  color: var(--muted-gray);
  font-size: 12px;
}

/* ---------- Trust (dark) ---------- */

.abtnew-trust {
  background-color: var(--black);
}

.abtnew-trust-card {
  background-color: var(--dark-panel);
  border: 1px solid var(--line-dark);
  border-radius: 8px;
  padding: 26px 22px;
  height: 100%;
}

.abtnew-trust-card h3 {
  font-family: var(--font-body);
  color: var(--white);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}

.abtnew-trust-card p {
  font-size: 13px;
  color: var(--muted-gray);
  margin: 0;
}

/* ============================================================ */

/* ============================================================ */

/* =====================================================================
   HCD SPRINTER — SHARED SECTION: Reserve Your [X] Today (CTA banner)
   Used on: Fleet Comparison ("Sprinter"), About ("Vehicle")
   Class prefix: ctanew
   Bootstrap v5.0.2 base | all custom sizing in px (no em/rem)
   Fonts: Roboto (body) + Playfair Display (headings) | Solid colors only
   ===================================================================== */

.ctanew-section {
  position: relative;
  background-size: cover;
  background-position: center;
  padding: 100px 0;
}

.ctanew-section .ctacaptopn {
  position: relative;
}

.ctanew-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(10, 10, 10, 0.85);
}

.ctanew-section .container {
  position: relative;
  z-index: 2;
}

.ctanew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold);
}

.ctanew-h2 {
  font-family: var(--font-heading);
  font-size: 44px;
  font-weight: 700;
  color: var(--white);
  margin: 14px 0 0;
  line-height: 1.2;
}

.ctanew-h2 em {
  display: block;
  font-style: italic;
  font-weight: 500;
  color: var(--gold);
}

.ctanew-body-text {
  font-size: 15px;
  color: var(--orange-81);
  max-width: 620px;
  margin: 20px auto 0;
}

.ctanew-btn-gold {
  display: inline-block;
  background-color: var(--gold);
  color: var(--dark-text);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 15px 28px;
  border-radius: 4px;
  text-decoration: none;
}

.ctanew-btn-gold:hover {
  background-color: var(--gold-dark);
  color: var(--dark-text);
}

.ctanew-btn-outline {
  display: inline-block;
  background-color: transparent;
  border: 1px solid var(--gray-32-2);
  color: var(--white);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 14px 28px;
  border-radius: 4px;
  text-decoration: none;
}

.ctanew-btn-outline:hover {
  background-color: rgba(var(--white-rgb), 0.08);
  color: var(--white);
}

.svcnew-body {
  font-family: var(--font-body);
  color: var(--dark-text);
  font-size: 16px;
  line-height: 1.6;
}

.svcnew-body h1,
.svcnew-body h3 {
  font-family: var(--font-body);
}

.svcnew-body h2 {
  font-family: var(--font-heading);
}

.svcnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gold-dark);
}

.svcnew-h1 {
  font-size: 34px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}

.svcnew-h2 {
  font-size: 30px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.svcnew-divider {
  display: block;
  width: 50px;
  height: 2px;
  background-color: var(--gold);
  margin-top: 20px;
}

.svcnew-body-text {
  font-size: 15px;
  color: var(--blue-75);
}

/* ---------- Highlight strip ---------- */

.svcnew-highlight-wrap {
  position: relative;
  margin-top: -40px;
  margin-bottom: -40px;
  z-index: 3;
}

.svcnew-highlight-bar {
  background-color: var(--gray-9);
  border-radius: 60px;
  padding: 22px 30px;
  box-shadow: 0 10px 40px rgba(var(--black-rgb), 0.15);
}

.svcnew-highlight-item {
  color: var(--white);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 8px 12px;
}

.svcnew-highlight-item i {
  color: var(--gold);
  margin-right: 8px;
}

/* ---------- Intro ---------- */

.svcnew-intro {
  background-color: var(--black);
  padding-top: 90px;
}

.svcnew-intro img {
  width: 100%;
}

.svcnew-stat strong {
  display: block;
  font-family: var(--font-heading);
  font-size: 28px;
  font-weight: 700;
  color: var(--gold);
}

.svcnew-stat span {
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--muted-gray);
}

/* ---------- Our Chauffeur Services ---------- */

.svcnew-services {
  background-color: var(--white);
}

.svcnew-h2--dark,
.svcnew-services .svcnew-h2 {
  color: var(--dark-text);
}

.svcnew-service-card {
  display: flex;
  gap: 16px;
  border: 1px solid var(--border-light);
  border-radius: 8px;
  padding: 22px;
  height: 100%;
}

.svcnew-service-card h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 8px;
}

.svcnew-service-card p {
  font-size: 13px;
  color: var(--body-gray);
  margin-bottom: 10px;
}

.svcnew-service-card a {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--gold-dark);
  text-decoration: none;
}

.svcnew-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background-color: var(--yellow-93);
  color: var(--dark-text);
  font-size: 18px;
  flex-shrink: 0;
}

/* ---------- Airports ---------- */

.svcnew-airports {
  background-color: var(--gray-bg);
}

.svcnew-airport-card {
  background-color: var(--white);
  border-radius: 8px;
  padding: 28px;
  height: 100%;
}

.svcnew-airport-card .svcnew-icon-box {
  background-color: var(--gold-bg);
  color: var(--gold-dark);
  margin-bottom: 20px;
}

.svcnew-airport-card h3 {
  font-family: var(--font-body);
  font-size: 19px;
  font-weight: 700;
  margin: 0 0 4px;
}

.svcnew-airport-code {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: var(--body-gray);
  margin-bottom: 14px;
}

.svcnew-airport-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin-bottom: 16px;
}

.svcnew-airport-card a {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--dark-text);
  text-decoration: none;
}

.svcnew-mini-feature {
  display: flex;
  gap: 14px;
  background-color: var(--white);
  border-radius: 8px;
  padding: 20px;
  height: 100%;
}

.svcnew-mini-feature i {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background-color: var(--yellow-93);
  color: var(--dark-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}

.svcnew-mini-feature h4 {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 6px;
}

.svcnew-mini-feature p {
  font-size: 12px;
  color: var(--body-gray);
  margin: 0;
}

/* ============================================================ */

/* ============================================================ */

/* =====================================================================
   HCD SPRINTER — CARD HOVER ANIMATIONS (site-wide)
   Applies a consistent lift + shadow + gold-accent hover treatment to
   every card component built across Home, Fleet, About, Service Main
   and the shared sections (Testimonials, Fleet Cards, FAQ, CTA).
   Pure CSS — no JS required. Respects prefers-reduced-motion.
   ===================================================================== */

/* ---------- Light-background cards: lift + soft shadow + gold border ---------- */

.homenew-feature-card,
.homenew-mini-card,
.homenew-feature-list-card,
.fleetnew-amenity-card,
.abtnew-mv-card,
.abtnew-value-card,
.abtnew-apart-card,
.abtnew-serve-card,
.abtnew-airports-card,
.abtnew-timeline-card,
.svcnew-service-card,
.svcnew-airport-card,
.svcnew-mini-feature,
.fleetcardnew-card,
.faqnew-category,
.faqnew-still-card {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
  will-change: transform;
}

.homenew-feature-card:hover,
.homenew-mini-card:hover,
.homenew-feature-list-card:hover,
.fleetnew-amenity-card:hover,
.abtnew-mv-card:hover,
.abtnew-value-card:hover,
.abtnew-apart-card:hover,
.abtnew-serve-card:hover,
.abtnew-airports-card:hover,
.abtnew-timeline-card:hover,
.svcnew-service-card:hover,
.svcnew-airport-card:hover,
.svcnew-mini-feature:hover,
.fleetcardnew-card:hover,
.faqnew-category:hover,
.faqnew-still-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 34px rgba(26, 31, 44, 0.12);
  border-color: var(--gold);
}

/* Fleet card image zooms slightly inside its frame on hover */

.fleetcardnew-card {
  overflow: hidden;
}

.fleetcardnew-img {
  overflow: hidden;
}

.fleetcardnew-img img {
  transition: transform 0.4s ease;
}

.fleetcardnew-card:hover .fleetcardnew-img img {
  transform: scale(1.06);
}

/* ---------- Dark-background cards: lift + gold glow ---------- */

.abtnew-team-card,
.abtnew-trust-card,
.testinew-card {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
  will-change: transform;
}

.abtnew-team-card:hover,
.abtnew-trust-card:hover,
.testinew-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 34px rgba(var(--black-rgb), 0.45);
  border-color: var(--gold);
  background-color: rgba(var(--gold-deep-rgb), 0.05);
}

/* ---------- Bordered grid cells (Fleet "Why Choose" 3x2 grid) ---------- */

.fleetnew-why-cell {
  transition: background-color 0.3s ease;
}

.fleetnew-why-cell:hover {
  background-color: var(--dark-panel);
}

.fleetnew-why-cell:hover .fleetnew-emoji {
  transform: scale(1.15);
}

.fleetnew-emoji {
  display: inline-block;
  transition: transform 0.3s ease;
}

/* ---------- Icon-only feature rows (icon bounces slightly) ---------- */

.homenew-why-item .homenew-icon-circle,
.svcnew-service-card .svcnew-icon-box,
.svcnew-airport-card .svcnew-icon-box,
.abtnew-value-card .abtnew-icon-box,
.abtnew-apart-card .abtnew-icon-box,
.abtnew-serve-card .abtnew-icon-box,
.abtnew-trust-card .abtnew-icon-box {
  transition:
    transform 0.3s ease,
    background-color 0.3s ease;
}

.homenew-why-item:hover .homenew-icon-circle,
.svcnew-service-card:hover .svcnew-icon-box,
.svcnew-airport-card:hover .svcnew-icon-box,
.abtnew-value-card:hover .abtnew-icon-box,
.abtnew-apart-card:hover .abtnew-icon-box,
.abtnew-serve-card:hover .abtnew-icon-box,
.abtnew-trust-card:hover .abtnew-icon-box {
  transform: translateY(-3px) scale(1.08);
  background-color: var(--gold);
  color: var(--dark-text);
}
.homenew-why-item:hover .homenew-icon-circle img{
  filter: brightness(0) invert(0);
}

/* ---------- Buttons: subtle lift on hover, in addition to existing color change ---------- */

.homenew-btn-gold,
.fleetnew-btn-gold,
.faqnew-btn-outline,
.ctanew-btn-gold,
.ctanew-btn-outline,
.fleetcardnew-btn,
.abtnew-btn-dark,
.abtnew-btn-outline {
  transition:
    transform 0.2s ease,
    background-color 0.2s ease,
    box-shadow 0.2s ease;
}

.homenew-btn-gold:hover,
.fleetnew-btn-gold:hover,
.faqnew-btn-outline:hover,
.ctanew-btn-gold:hover,
.ctanew-btn-outline:hover,
.fleetcardnew-btn:hover,
.abtnew-btn-dark:hover,
.abtnew-btn-outline:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(var(--black-rgb), 0.15);
}

.hero.v2banner::after {
  display: none;
}

.abtnew-mv-card ul{
  padding-left: 15px;
}
.abtnew-mv-card ul li{
  color: var(--body-gray)
}

/* ---------------------------------------------------------------------
   1. EASY BOOKING PROCESS — bookstepnew-*
   --------------------------------------------------------------------- */

.bookstepnew-section {
  background-color: var(--black);
  font-family: var(--font-body);
}

.bookstepnew-eyebrow {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}

.bookstepnew-h2 {
  font-family: var(--font-heading);
  font-size: 34px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}

.bookstepnew-divider {
  display: block;
  width: 60px;
  height: 2px;
  background-color: var(--gold);
  margin: 24px auto 0;
}

.bookstepnew-row {
  position: relative;
}

.bookstepnew-col {
  text-align: center;
  position: relative;
}

/* connector arrow between steps (desktop only) */

.bookstepnew-col::after {
  content: "";
  position: absolute;
  top: 26px;
  right: -20px;
  width: 40px;
  height: 1px;
  background-color: var(--label-dark);
}

.bookstepnew-col::before {
  content: "";
  position: absolute;
  top: 22px;
  right: -22px;
  width: 7px;
  height: 7px;
  border-top: 1px solid var(--gray-35);
  border-right: 1px solid var(--gray-35);
  transform: rotate(45deg);
  z-index: 2;
}

.bookstepnew-col:last-child::after,
.bookstepnew-col:last-child::before {
  display: none;
}

.bookstepnew-box {
  display: inline-block;
  border: 1px solid var(--gold);
  color: var(--gold);
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 18px;
  padding: 10px 18px;
  border-radius: 4px;
  margin-bottom: 20px;
  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

.bookstepnew-col:hover .bookstepnew-box {
  background-color: var(--gold);
  color: var(--dark-text);
  transform: translateY(-4px);
}

.bookstepnew-col h3 {
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 10px;
}

.bookstepnew-col p {
  font-size: 14px;
  color: var(--muted-gray);
  margin: 0 auto;
  max-width: 320px;
}

/* ---------------------------------------------------------------------
   2. LUXURY FEATURES AS STANDARD — luxfeatnew-*
   --------------------------------------------------------------------- */

.luxfeatnew-section {
  background-color: var(--white);
  font-family: var(--font-body);
}

.luxfeatnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}

.luxfeatnew-h2 {
  font-family: var(--font-heading);
  font-size: 40px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
  line-height: 1.2;
}

.luxfeatnew-h2 em {
  font-style: italic;
  font-weight: 500;
}

.luxfeatnew-divider {
  display: block;
  width: 50px;
  height: 2px;
  background-color: var(--gold);
  margin-top: 24px;
}

.luxfeatnew-body-text {
  font-size: 15px;
  color: var(--body-gray);
  max-width: 420px;
}

.luxfeatnew-btn {
  display: inline-block;
  background-color: var(--gold);
  color: var(--dark-text);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 14px 26px;
  border-radius: 4px;
  text-decoration: none;
  margin-top: 16px;
  transition:
    background-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.luxfeatnew-btn:hover {
  background-color: var(--gold-dark);
  color: var(--dark-text);
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(var(--black-rgb), 0.15);
}

.luxfeatnew-btn i {
  margin-left: 6px;
}

.luxfeatnew-card {
  background-color: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 6px;
  padding: 24px;
  height: 100%;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.luxfeatnew-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 34px rgba(26, 31, 44, 0.12);
  border-color: var(--gold);
}

.luxfeatnew-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--gold);
  margin-bottom: 14px;
}

.luxfeatnew-card h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--dark-text);
  margin-bottom: 8px;
}

.luxfeatnew-card p {
  font-size: 14px;
  color: var(--body-gray);
  margin: 0;
}

/* ---------------------------------------------------------------------
   1. FLEET COMPARISON — comparenew-*
   --------------------------------------------------------------------- */

.comparenew-section {
  background-color: var(--black);
  font-family: var(--font-body);
}

.comparenew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}

.comparenew-h2 {
  font-family: var(--font-heading);
  font-size: 40px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}

.comparenew-body-text {
  font-size: 15px;
  color: var(--muted-gray);
}

.comparenew-divider {
  display: block;
  width: 60px;
  height: 2px;
  background-color: var(--gold);
  margin: 24px auto 0;
}

.comparenew-table {
  color: var(--border-light);
  border-color: var(--line-dark);
  margin-bottom: 0;
}

.comparenew-table thead th {
  color: var(--gray-57);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-bottom: 1px solid var(--line-dark);
  padding-bottom: 18px;
  background-color: transparent;
  text-align: center;
}

.comparenew-table thead th:first-child {
  text-align: left;
  padding-left: 20px;
}

.comparenew-table thead th:last-child {
  text-align: right;
}

.comparenew-table tbody td {
  border-bottom: 1px solid var(--ink);
  padding-top: 22px;
  padding-bottom: 22px;
  background-color: transparent;
  font-size: 15px;
  text-align: center;
  vertical-align: middle;
}

.comparenew-table tbody tr {
  transition: background-color 0.3s ease;
}

.comparenew-table tbody tr:hover {
  background-color: var(--dark-panel);
}

.comparenew-vehicle {
  position: relative;
  text-align: left !important;
  font-weight: 500;
  color: var(--white);
  padding-left: 20px !important;
  min-width: 200px;
}

.comparenew-vehicle::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 26px;
  background-color: var(--label-dark);
  transition: background-color 0.3s ease;
}

.comparenew-table tbody tr:first-child .comparenew-vehicle::before,
.comparenew-table tbody tr:hover .comparenew-vehicle::before {
  background-color: var(--gold);
}

.comparenew-yes {
  color: var(--gold);
  font-size: 15px;
}

.comparenew-dash {
  color: var(--gray-32);
}

.comparenew-book {
  color: var(--gold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.2s ease;
}

.comparenew-book i {
  margin-left: 4px;
  transition: transform 0.2s ease;
}

.comparenew-book:hover {
  color: var(--gold);
}

.comparenew-book:hover i {
  transform: translateX(4px);
}

/* ---------------------------------------------------------------------
   2. WHY CHOOSE — whyhcdnew-*
   --------------------------------------------------------------------- */

.whyhcdnew-section {
  background-color: var(--black);
  font-family: var(--font-body);
}

.whyhcdnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}

.whyhcdnew-h2 {
  font-family: var(--font-heading);
  font-size: 40px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
  line-height: 1.25;
}

.whyhcdnew-divider {
  display: block;
  width: 60px;
  height: 2px;
  background-color: var(--gold);
  margin: 24px auto 0;
}

.whyhcdnew-grid {
  border-top: 1px solid var(--line-dark);
  border-left: 1px solid var(--line-dark);
}

.whyhcdnew-cell {
  border-right: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
  padding: 40px 32px;
  transition: background-color 0.3s ease;
}

.whyhcdnew-cell:hover {
  background-color: var(--dark-panel);
}

.whyhcdnew-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 6px;
  background-color: var(--dark-bg);
  border: 1px solid var(--line-dark);
  color: var(--gold);
  font-size: 17px;
  margin-bottom: 22px;
  transition:
    transform 0.3s ease,
    background-color 0.3s ease,
    color 0.3s ease;
}

.whyhcdnew-cell:hover .whyhcdnew-icon {
  transform: translateY(-3px) scale(1.08);
  background-color: var(--gold);
  color: var(--dark-text);
}

.whyhcdnew-cell h3 {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 12px;
}

.whyhcdnew-cell p {
  font-size: 14px;
  color: var(--muted-gray);
  margin: 0;
}

/* ---------------------------------------------------------------------
   3. THE RIGHT VEHICLE FOR EVERY OCCASION — occasionnew-*
   --------------------------------------------------------------------- */

.occasionnew-section {
  background-color: var(--cream-bg);
  font-family: var(--font-body);
}

.occasionnew-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}

.occasionnew-h2 {
  font-family: var(--font-heading);
  font-size: 36px;
  font-weight: 700;
  color: var(--dark-text);
  margin: 0;
}

.occasionnew-body-text {
  font-size: 15px;
  color: var(--body-gray);
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}

.occasionnew-divider {
  display: block;
  width: 60px;
  height: 2px;
  background-color: var(--gold);
  margin: 24px auto 0;
}

.occasionnew-panel {
  background-color: var(--white);
  border-radius: 4px;
  padding: 40px 20px;
}

.occasionnew-item {
  padding: 26px 12px;
  transition: transform 0.3s ease;
}

.occasionnew-item i {
  display: block;
  font-size: 28px;
  color: var(--dark-text);
  margin-bottom: 16px;
  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.occasionnew-item p {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  color: var(--gray-33-2);
  margin: 0;
  transition: color 0.3s ease;
}

.occasionnew-item:hover i {
  color: var(--gold-dark);
  transform: translateY(-4px) scale(1.1);
}

.occasionnew-item:hover p {
  color: var(--dark-text);
}

/* ===== SECTION 1: AIRPORT COVERAGE ===== */

.sprinv2_airprt {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2_airprt::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.05) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 6s ease-in-out infinite;
}

.sprinv2_airprt::after {
  content: "";
  position: absolute;
  bottom: -30%;
  left: -5%;
  width: 400px;
  height: 400px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 8s ease-in-out infinite reverse;
}

.coverage-header {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.coverage-header .section-label {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  animation: fadeInDown 0.8s ease;
}

.coverage-header h2 {
  font-size: 48px;
  font-weight: 700;
  color: white;
  margin-bottom: 20px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.coverage-header h2 .gold-text {
  color: var(--gold);
  font-style: italic;
}

.coverage-header p {
  color: var(--body-gray);
  font-size: 15px;
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.6;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.airport-card {
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  padding: 30px;
  text-align: center;
  border-radius: 10px;
  transition: all 0.3s ease;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  animation: slideInUp 0.6s ease-out both;
}

.airport-card:nth-child(1) {
  animation-delay: 0.1s;
}

.airport-card:nth-child(2) {
  animation-delay: 0.2s;
}

.airport-card:nth-child(3) {
  animation-delay: 0.3s;
}

.airport-card:nth-child(4) {
  animation-delay: 0.4s;
}

.airport-card:nth-child(5) {
  animation-delay: 0.5s;
}

.airport-card:nth-child(6) {
  animation-delay: 0.6s;
}

.airport-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(var(--gold-rgb), 0.2),
    transparent
  );
  transition: left 0.5s ease;
}

.airport-card:hover::before {
  left: 100%;
}

.airport-card:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-8px);
  box-shadow: 0 15px 40px rgba(var(--gold-rgb), 0.15);
}

.airport-code {
  font-size: 28px;
  font-weight: 700;
  color: var(--gold);
  margin-bottom: 10px;
  display: block;
}

.airport-name {
  font-size: 14px;
  color: var(--body-gray);
  letter-spacing: 0.5px;
}

/* ===== SECTION 2: HOW IT WORKS ===== */

.sprinv2wrks {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2wrks::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    45deg,
    rgba(var(--gold-rgb), 0.02) 0%,
    transparent 50%,
    rgba(var(--gold-rgb), 0.01) 100%
  );
  pointer-events: none;
}

.how-it-works-header {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.how-it-works-header .section-label {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  animation: fadeInDown 0.8s ease;
}

.how-it-works-header h2 {
  font-size: 48px;
  font-weight: 700;
  color: white;
  line-height: 1.3;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.steps-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
}

.step-card {
  background: white;
  border-radius: 12px;
  padding: 40px 30px;
  text-align: center;
  position: relative;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  animation: fadeInUp 0.8s ease-out both;
}

.step-card:nth-child(1) {
  animation-delay: 0.1s;
}

.step-card:nth-child(2) {
  animation-delay: 0.2s;
}

.step-card:nth-child(3) {
  animation-delay: 0.3s;
}

.step-card:nth-child(4) {
  animation-delay: 0.4s;
}

.step-card:hover {
  transform: translateY(-12px);
  box-shadow: 0 20px 50px rgba(var(--gold-rgb), 0.25);
}

.step-number {
  width: 50px;
  height: 50px;
  background: linear-gradient(135deg, var(--gold), var(--gold-dark));
  color: var(--black);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 700;
  margin: 0 auto 25px;
  animation: scaleIn 0.6s cubic-bezier(0.36, 0, 0.66, 1) both;
}

.step-card:nth-child(1) .step-number {
  animation-delay: 0.2s;
}

.step-card:nth-child(2) .step-number {
  animation-delay: 0.3s;
}

.step-card:nth-child(3) .step-number {
  animation-delay: 0.4s;
}

.step-card:nth-child(4) .step-number {
  animation-delay: 0.5s;
}

.step-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--dark-text);
  margin-bottom: 15px;
}

.step-description {
  color: var(--body-gray);
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

.sprinv2_airprtcard {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 60px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2_airprtcard::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.05) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 6s ease-in-out infinite;
}

.airprtcard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 25px;
  position: relative;
  z-index: 1;
}

.airprtcard-item {
  background: var(--gray-96-2);
  border: 1px solid var(--gray-91);
  border-radius: 15px;
  padding: 30px;
  cursor: pointer;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
  animation: slideInUp 0.6s ease-out both;
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

.airprtcard-item:nth-child(1) {
  animation-delay: 0.1s;
}

.airprtcard-item:nth-child(2) {
  animation-delay: 0.2s;
}

.airprtcard-item:nth-child(3) {
  animation-delay: 0.3s;
}

.airprtcard-item:nth-child(4) {
  animation-delay: 0.4s;
}

.airprtcard-item:hover {
  background: white;
  box-shadow: 0 10px 30px rgba(var(--black-rgb), 0.15);
  transform: translateY(-5px);
}

.airprtcard-icon {
  width: 50px;
  height: 50px;
  background: var(--gray-91);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: var(--body-gray);
  flex-shrink: 0;
}

.airprtcard-content {
  flex: 1;
}

.airprtcard-title {
  color: var(--dark-text);
  font-weight: 700;
  font-size: 16px;
  margin: 0 0 12px 0;
  line-height: 1.4;
}

.airprtcard-text {
  color: var(--body-gray);
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

/* ===== SECTION 2: CORPORATE HERO ===== */

.sprinv2_corporate {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2_corporate::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.05) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 8s ease-in-out infinite reverse;
}

.corporate-wrapper {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}

.corporate-content h3 {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: block;
  animation: fadeInDown 0.8s ease;
}

.corporate-content h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 25px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.corporate-content h2 .italic-text {
  font-style: italic;
  color: var(--gold);
}

.corporate-content p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 15px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.corporate-highlight {
  color: var(--gold);
  font-style: italic;
  margin-bottom: 30px;
  display: block;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.corporate-buttons {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  animation: fadeInUp 0.8s ease 0.5s both;
}

.corp-btn {
  padding: 12px 25px;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: none;
}

.corp-btn-primary {
  background: transparent;
  color: white;
  border: 1px solid white;
}

.corp-btn-primary:hover {
  background: white;
  color: var(--black);
}

.corp-btn-secondary {
  background: transparent;
  color: white;
  border: 1px solid white;
}

.corp-btn-secondary:hover {
  background: white;
  color: var(--black);
}

.corporate-image {
  position: relative;
  animation: fadeInRight 1s ease 0.3s both;
}

.corporate-image img {
  width: 100%;
  border-radius: 10px;
  object-fit: cover;
  display: block;
}

.corporate-badge {
  position: absolute;
  bottom: 20px;
  right: 20px;
  background: rgba(var(--gold-rgb), 0.2);
  backdrop-filter: blur(10px);
  border: 1px solid var(--gold);
  padding: 15px 20px;
  border-radius: 8px;
  color: white;
  font-size: 13px;
  font-weight: 600;
  animation: slideInUp 0.6s ease-out 0.5s both;
}

.corporate-badge i {
  color: var(--gold);
  margin-right: 8px;
}

/* ===== SECTION 3: SERVICES GRID ===== */

.sprinv2_services {
  background: var(--white);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2_services::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -15%;
  width: 600px;
  height: 600px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 10s ease-in-out infinite;
  display: none;
}

.services-header {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.services-header .section-label {
  color: var(--black-pure);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  animation: fadeInDown 0.8s ease;
}

.services-header h2 {
  color: var(--black-pure);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 20px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.services-header p {
  color: var(--black-pure);
  font-size: 15px;
  max-width: 500px;
  margin: 0 auto;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 1;
}

.service-card {
  padding: 35px 25px;
  border-radius: 15px;
  text-align: left;
  transition: all 0.4s ease;
  cursor: pointer;
  animation: slideInUp 0.6s ease-out both;
  position: relative;
  overflow: hidden;
  border: 1.25px solid var(--gray-90-2);
  background: var(--white);
}

.service-card:nth-child(1) {
  animation-delay: 0.1s;
}

.service-card:nth-child(2) {
  animation-delay: 0.15s;
}

.service-card:nth-child(3) {
  animation-delay: 0.2s;
}

.service-card:nth-child(4) {
  animation-delay: 0.25s;
}

.service-card:nth-child(5) {
  animation-delay: 0.3s;
}

.service-card:nth-child(6) {
  animation-delay: 0.35s;
}

.service-card:nth-child(7) {
  animation-delay: 0.4s;
}

.service-card:nth-child(8) {
  animation-delay: 0.45s;
}

.service-card:hover {
  background: var(--white);
  border-color: var(--gold);
  transform: translateY(-8px);
  box-shadow: 0 10px 30px rgba(var(--black-rgb), 0.1);
}

.service-icon {
  width: 50px;
  height: 50px;
  margin-bottom: 15px;
  background: var(--gray-bg);
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--gold-deep);
  transition: all 0.3s ease;
}

.service-card:hover .service-icon {
  transform: scale(1.1) rotateY(10deg);
}

.service-title {
  color: var(--black-pure);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
}

.service-description {
  color: var(--black-pure);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

/* ===== SECTION 4: BENEFITS ===== */

.sprinv2_benefits {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.sprinv2_benefits::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -15%;
  width: 600px;
  height: 600px;
  background: radial-gradient(
    circle,
    rgba(var(--gold-rgb), 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: float 12s ease-in-out infinite reverse;
}

.benefits-header {
  text-align: left;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.benefits-header .section-label {
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: block;
  animation: fadeInDown 0.8s ease;
}

.benefits-header h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.benefits-header h2 .italic-text {
  font-style: italic;
  color: white;
}

.benefits-header p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-top: 15px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.benefit-item {
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  padding: 25px;
  border-radius: 8px;
  transition: all 0.3s ease;
  animation: slideInUp 0.6s ease-out both;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.benefit-item:nth-child(1) {
  animation-delay: 0.1s;
}

.benefit-item:nth-child(2) {
  animation-delay: 0.2s;
}

.benefit-item:nth-child(3) {
  animation-delay: 0.3s;
}

.benefit-item:nth-child(4) {
  animation-delay: 0.4s;
}

.benefit-item:nth-child(5) {
  animation-delay: 0.5s;
}

.benefit-item:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-5px);
}

.benefit-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 3px;
  height: 100%;
  background: var(--gold);
  transition: all 0.3s ease;
}

.benefit-icon {
  width: 45px;
  height: 45px;
  background: rgba(var(--gold-rgb), 0.2);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  font-size: 22px;
  color: var(--gold);
}

.benefit-title {
  color: white;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}

.benefit-text {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin: 0;
}

.benefits-card {
  background: rgba(var(--line-dark-rgb), 0.8);
  border: 1px solid var(--line-dark);
  border-radius: 12px;
  padding: 40px 30px;
  text-align: center;
  position: relative;
  animation: slideInRight 0.8s ease-out 0.3s both;
}

.benefits-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--gold), transparent);
}

.benefits-card-title {
  color: white;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.benefits-card-title i {
  font-size: 24px;
  color: var(--gold);
}

.benefits-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 30px;
}

.stat {
  padding: 15px 0;
  border-bottom: 1px solid var(--line-dark);
}

.stat:last-child {
  border-bottom: none;
}

.stat-value {
  color: var(--gold);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
}

.stat-label {
  color: var(--body-gray);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-top: 8px;
}

.benefits-card p {
  color: var(--body-gray);
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 30px;
}

.benefits-card-btn {
  background: transparent;
  border: 1px solid var(--gold);
  color: var(--gold);
  padding: 12px 30px;
  border-radius: 5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px;
}

.benefits-card-btn:hover {
  background: var(--gold);
  color: var(--black);
}

.corporate_singcard {
  box-shadow: 0 31px 63px -15px rgba(var(--black-rgb), 0.25);
  background: linear-gradient(180deg, var(--blue-11) 0%, var(--gray-8-2) 100%);
  border-radius: 20px;
  backdrop-filter: blur(10px);
  transition: all 0.3s ease;
}

.corporate_singcard:hover {
  box-shadow: 0 30px 80px rgba(var(--black-rgb), 0.6);
}

/* Icon Element */

.corporate_singcard__icon {
  width: 80px;
  height: 80px;
  border: 1px solid rgba(150, 150, 150, 0.4);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(80, 80, 80, 0.3);
  margin: 0 auto 40px;
  transition: all 0.3s ease;
}

.corporate_singcard__icon:hover {
  border-color: rgba(150, 150, 150, 0.6);
  background: rgba(100, 100, 100, 0.4);
}

.corporate_singcard__icon svg {
  width: 40px;
  height: 40px;
  stroke: rgba(200, 200, 200, 0.8);
  fill: none;
  stroke-width: 1.5;
}

/* Heading Element */

.corporate_singcard__heading {
  font-size: 42px;
  font-weight: 300;
  letter-spacing: -0.5px;
  font-family: var(--font-heading);
  margin-bottom: 20px;
  color: var(--white);
}

/* Subheading Element */

.corporate_singcard__subheading {
  font-size: 16px;
  color: var(--white);
  line-height: 1.6;
  margin-bottom: 50px;
  font-weight: 400;
}

/* Stats Section */

.corporate_singcard__stats {
  border-top: 1px solid rgba(120, 120, 120, 0.2);
  margin-bottom: 50px;
  padding-bottom: 40px;
}

.corporate_singcard__stat-value {
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 8px;
  transition: all 0.3s ease;
}

.corporate_singcard__stat-label {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--white);
  font-weight: 600;
}

/* Button Element */

.corporate_singcard__btn {
  background: rgba(100, 100, 100, 0.4);
  border: 1px solid rgba(150, 150, 150, 0.4);
  color: var(--white);
  padding: 16px 48px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 50px;
  transition: all 0.3s ease;
  width: 100%;
  max-width: 300px;
  cursor: pointer;
}

.corporate_singcard__btn:hover,
.corporate_singcard__btn:focus {
  background: rgba(130, 130, 130, 0.6);
  border-color: rgba(180, 180, 180, 0.6);
  box-shadow: 0 10px 30px rgba(var(--black-rgb), 0.3);
  color: var(--white);
  text-decoration: none;
}

.corporate_singcard__btn:active {
  background: rgba(150, 150, 150, 0.7);
  border-color: rgba(200, 200, 200, 0.7);
  box-shadow: 0 5px 15px rgba(var(--black-rgb), 0.2);
}

.corporate_singcard {
  animation: fadeInUp 0.6s ease-out;
}

.sprinv2_metro {
  background: var(--white);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.metro-header {
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.metro-header .section-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  font-weight: 700;
}

.metro-header h2 {
  color: var(--dark-text);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 15px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.metro-header p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  max-width: 600px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.metro-tabs {
  display: flex;
  gap: 20px;
  margin-top: 25px;
  position: relative;
  z-index: 10;
  flex-wrap: wrap;
}

.metro-tab {
  background: var(--gray-91);
  color: var(--body-gray);
  padding: 8px 18px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-decoration: none;
  cursor: pointer;
  border: none;
  transition: all 0.3s ease;
}

.metro-tab:hover {
  transform: translateY(-2px);
}

.metro-tab.active {
  background: var(--gold);
  color: var(--black);
  transform: translateY(-2px);
}

.metro-card {
  display: none;
}

.metro-card.active {
  display: block;
}

.metro-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 1;
}

.metro-card {
  background: var(--white);
  border: 1.5px solid var(--gray-91);
  border-radius: 12px;
  padding: 35px;
  cursor: pointer;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
}

.metro-card.active {
  animation: slideInUp 0.6s ease-out both;
}

.metro-card:nth-child(1).active {
  animation-delay: 0.05s;
}

.metro-card:nth-child(2).active {
  animation-delay: 0.1s;
}

.metro-card:nth-child(3).active {
  animation-delay: 0.15s;
}

.metro-card:nth-child(4).active {
  animation-delay: 0.2s;
}

.metro-card:nth-child(5).active {
  animation-delay: 0.25s;
}

.metro-card:nth-child(6).active {
  animation-delay: 0.3s;
}

.metro-card:nth-child(7).active {
  animation-delay: 0.35s;
}

.metro-card:nth-child(8).active {
  animation-delay: 0.4s;
}

.metro-card:nth-child(9).active {
  animation-delay: 0.45s;
}

.metro-card:hover {
  box-shadow: 0 15px 40px rgba(var(--black-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-8px);
}

.metro-card-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 12px;
  display: block;
}

.metro-card-title {
  color: var(--dark-text);
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 8px;
  line-height: 1.3;
}

.metro-card-subtitle {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.metro-card-info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  padding: 20px 0;
  border-top: 1px solid var(--gray-91);
  margin-bottom: 20px;
}

.info-item {
  padding: 0;
}

.info-label {
  color: var(--body-gray);
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 5px;
  display: block;
  font-weight: 700;
}

.info-value {
  color: var(--dark-text);
  font-size: 14px;
  font-weight: 700;
}

.info-value .gold {
  color: var(--gold);
}

.metro-explore {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
}

.metro-explore:hover {
  gap: 12px;
  color: var(--gold-dark);
}

/* ===== SECTION 2: INTERCITY TRANSFERS ===== */

.sprinv2_intercity {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.intercity-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.intercity-image {
  position: relative;
  animation: fadeInLeft 0.8s ease 0.2s both;
}

.intercity-image img {
  width: 100%;
  border-radius: 12px;
  object-fit: cover;
  display: block;
}

.intercity-label {
  position: absolute;
  bottom: 20px;
  left: 20px;
  background: rgba(var(--gold-rgb), 0.2);
  backdrop-filter: blur(10px);
  border: 1px solid var(--gold);
  padding: 12px 18px;
  border-radius: 8px;
  color: white;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.intercity-content h3 {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  font-weight: 700;
}

.intercity-content h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 15px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.intercity-content h2 .italic {
  font-style: italic;
  color: var(--gold);
}

.intercity-content p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 30px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.intercity-routes {
  display: flex;
  flex-direction: column;
  gap: 20px;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.route-item {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px;
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  border-radius: 8px;
  transition: all 0.3s ease;
}

.route-item:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
}

.route-icon {
  width: 40px;
  height: 40px;
  background: rgba(var(--gold-rgb), 0.2);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: var(--gold);
  flex-shrink: 0;
}

.route-info h4 {
  color: white;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 4px;
}

.route-info p {
  color: var(--body-gray);
  font-size: 12px;
  margin: 0;
}

.route-time {
  margin-left: auto;
  text-align: right;
}

.route-time-value {
  color: var(--gold);
  font-size: 18px;
  font-weight: 700;
}

.route-time-label {
  color: var(--body-gray);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ===== SECTION 3: OPERATIONS ===== */

.sprinv2_operations {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.operations-header {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.operations-header .section-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  font-weight: 700;
}

.operations-header h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 15px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.operations-header p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  max-width: 600px;
  margin: 0 auto;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.operations-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 1;
}

.operation-card {
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  padding: 35px 25px;
  border-radius: 8px;
  text-align: center;
  transition: all 0.4s ease;
  animation: slideInUp 0.6s ease-out both;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.operation-card:nth-child(1) {
  animation-delay: 0.1s;
}

.operation-card:nth-child(2) {
  animation-delay: 0.2s;
}

.operation-card:nth-child(3) {
  animation-delay: 0.3s;
}

.operation-card:nth-child(4) {
  animation-delay: 0.4s;
}

.operation-card:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-8px);
}

.operation-icon {
  width: 50px;
  height: 50px;
  background: rgba(var(--gold-rgb), 0.2);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  font-size: 24px;
  color: var(--gold);
}

.operation-title {
  color: white;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
}

.operation-description {
  color: var(--body-gray);
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.operation-link {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
}

.operation-link:hover {
  gap: 12px;
  color: var(--gold-dark);
}

/* ===== SECTION 4: ADVANTAGES ===== */

.sprinv2_advantages {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.advantages-header {
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.advantages-header .section-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: inline-block;
  font-weight: 700;
}

.advantages-header h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 40px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.advantages-header h2 .italic {
  font-style: italic;
  color: var(--gold);
}

.advantages-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 1;
}

.advantage-item {
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  padding: 30px 25px;
  border-radius: 8px;
  text-align: center;
  transition: all 0.4s ease;
  animation: slideInUp 0.6s ease-out both;
}

.advantage-item:nth-child(1) {
  animation-delay: 0.1s;
}

.advantage-item:nth-child(2) {
  animation-delay: 0.15s;
}

.advantage-item:nth-child(3) {
  animation-delay: 0.2s;
}

.advantage-item:nth-child(4) {
  animation-delay: 0.25s;
}

.advantage-item:nth-child(5) {
  animation-delay: 0.3s;
}

.advantage-item:nth-child(6) {
  animation-delay: 0.35s;
}

.advantage-item:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-5px);
}

.advantage-value {
  color: var(--gold);
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 8px;
}

.advantage-label {
  color: var(--body-gray);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 15px;
}

.advantage-text {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin: 0;
}

.sprinv2_aerodrome {
  background: linear-gradient(135deg, var(--black) 0%, var(--black-soft) 100%);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.aerodrome-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.aerodrome-content h3 {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  font-weight: 700;
}

.aerodrome-content h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 30px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.aerodrome-content p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 25px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.aerodrome-features {
  display: flex;
  flex-direction: column;
  gap: 18px;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.feature-item {
  display: flex;
  gap: 15px;
  align-items: flex-start;
}

.feature-icon {
  width: 24px;
  height: 24px;
  background: rgba(var(--gold-rgb), 0.2);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--gold);
  flex-shrink: 0;
  margin-top: 2px;
}

.feature-content h4 {
  color: white;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 4px;
}

.feature-content p {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin: 0;
}

.aerodrome-hubs {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.hub-item {
  background: rgba(var(--line-dark-rgb), 0.6);
  border: 1px solid var(--line-dark);
  padding: 20px;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.hub-item:hover {
  background: rgba(var(--gold-rgb), 0.1);
  border-color: var(--gold);
}

.hub-code {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.hub-name {
  color: white;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 4px;
}

.hub-detail {
  color: var(--body-gray);
  font-size: 12px;
}

.hub-time {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--line-dark);
}

.aerodrome-image {
  position: relative;
  animation: fadeInRight 0.8s ease 0.3s both;
}

.aerodrome-image img {
  width: 100%;
  border-radius: 12px;
  object-fit: cover;
  display: block;
}

.aerodrome-rates {
  position: absolute;
  top: 20px;
  right: 20px;
  background: rgba(var(--gold-rgb), 0.2);
  backdrop-filter: blur(10px);
  border: 1px solid var(--gold);
  padding: 15px 20px;
  border-radius: 8px;
  color: white;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ===== SECTION 2: PRINCE CAPITAL GRID ===== */

.sprinv2_prince_grid {
  background: var(--white);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.prince-header {
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.prince-header-left h3 {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  font-weight: 700;
  display: block;
}

.prince-header-left h2 {
  color: var(--dark-text);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.prince-header-left p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-top: 15px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.prince-fleet-notice {
  background: var(--cream-bg);
  border: 1px solid var(--gray-91);
  padding: 15px 20px;
  border-radius: 8px;
  font-size: 12px;
  color: var(--dark-text);
  font-weight: 700;
  text-align: right;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.prince-fleet-notice i {
  color: var(--gold);
  margin-right: 8px;
}

.prince-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 25px;
  position: relative;
  z-index: 1;
}

.prince-card {
  background: var(--white);
  border: 1.5px solid var(--gray-91);
  border-radius: 12px;
  padding: 30px;
  cursor: pointer;
  transition: all 0.4s ease;
  animation: slideInUp 0.6s ease-out both;
  position: relative;
  overflow: hidden;
}

.prince-card:nth-child(1) {
  animation-delay: 0.1s;
}

.prince-card:nth-child(2) {
  animation-delay: 0.15s;
}

.prince-card:nth-child(3) {
  animation-delay: 0.2s;
}

.prince-card:nth-child(4) {
  animation-delay: 0.25s;
}

.prince-card:nth-child(5) {
  animation-delay: 0.3s;
}

.prince-card:nth-child(6) {
  animation-delay: 0.35s;
}

.prince-card:hover {
  box-shadow: 0 15px 40px rgba(var(--black-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-8px);
}

.prince-card-icon {
  width: 40px;
  height: 40px;
  background: var(--cream-bg);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--body-gray);
  margin-bottom: 15px;
}

.prince-card-title {
  color: var(--dark-text);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
  line-height: 1.3;
}

.prince-card-subtitle {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.prince-card-amenities {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.amenity-tag {
  background: var(--cream-bg);
  color: var(--body-gray);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.sprinv2_advantages {
  background: var(--white);
  padding: 80px 20px;
  position: relative;
  overflow: hidden;
}

.advantages-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}

.advantages-left {
  padding-right: 20px;
}

.advantages-header .section-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: block;
  font-weight: 700;
  animation: fadeInDown 0.8s ease;
}

.advantages-header h2 {
  color: var(--dark-text);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 20px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.advantages-header p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 40px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

.advantages-features {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.feature-item {
  display: flex;
  gap: 15px;
  animation: slideInLeft 0.6s ease-out both;
}

.feature-item:nth-child(1) {
  animation-delay: 0.2s;
}

.feature-item:nth-child(2) {
  animation-delay: 0.3s;
}

.feature-item:nth-child(3) {
  animation-delay: 0.4s;
}

.feature-icon {
  width: 50px;
  height: 50px;
  background: var(--cream-bg);
  border: 2px solid var(--gold);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--gold);
  flex-shrink: 0;
  font-weight: 700;
}

.feature-content h3 {
  color: var(--dark-text);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}

.feature-content p {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin: 0;
}

/* ===== METRICS GRID ===== */

.advantages-right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px;
  padding-left: 20px;
}

.metric-card {
  background: var(--cream-bg);
  border: 1.5px solid var(--gray-91);
  border-radius: 12px;
  padding: 30px 25px;
  text-align: center;
  transition: all 0.4s ease;
  animation: slideInUp 0.6s ease-out both;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.metric-card:nth-child(1) {
  animation-delay: 0.2s;
  grid-column: span 2;
}

.metric-card:nth-child(2) {
  animation-delay: 0.25s;
}

.metric-card:nth-child(3) {
  animation-delay: 0.3s;
}

.metric-card:nth-child(4) {
  animation-delay: 0.35s;
}

.metric-card:nth-child(5) {
  animation-delay: 0.4s;
}

.metric-card:nth-child(6) {
  animation-delay: 0.45s;
}

.metric-card:hover {
  box-shadow: 0 10px 30px rgba(var(--black-rgb), 0.1);
  border-color: var(--gold);
  transform: translateY(-5px);
}

.metric-value {
  color: var(--gold);
  font-size: 42px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 12px;
}

.metric-card:nth-child(1) .metric-value {
  font-size: 48px;
}

.metric-title {
  color: var(--dark-text);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
  line-height: 1.3;
}

.metric-description {
  color: var(--body-gray);
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
}

.sprinv2_blog_main {
  padding: 70px 0px;
  background-color: var(--black-pure);
  position: relative;
  overflow: hidden;
}

.blog-main-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.blog-main-title .section-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: block;
  font-weight: 700;
  animation: fadeInDown 0.8s ease;
}

.blog-main-title h2 {
  color: white;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.blog-count {
  color: var(--white);
  font-size: 14px;
  letter-spacing: 0.5px;
  animation: fadeInUp 0.8s ease 0.3s both;
}

/* ===== BLOG GRID ===== */

.blog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 30px;
  margin-bottom: 80px;
  position: relative;
  z-index: 1;
  min-height: 800px;
}

/* Blog card link styling */

.blog-card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  height: 100%;
}

.blog-card {
  background: rgba(var(--line-dark-rgb), 0.8);
  border: 1px solid var(--line-dark);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.4s ease;
  cursor: pointer;
  position: relative;
  display: none;
  opacity: 0;
  flex-direction: column;
  height: 100%;
}

.blog-card.active {
  display: flex;
  animation: slideInUp 0.6s ease-out both;
}

.blog-card:nth-child(1).active {
  animation-delay: 0.05s;
}

.blog-card:nth-child(2).active {
  animation-delay: 0.1s;
}

.blog-card:nth-child(3).active {
  animation-delay: 0.15s;
}

.blog-card:nth-child(4).active {
  animation-delay: 0.2s;
}

.blog-card:nth-child(5).active {
  animation-delay: 0.25s;
}

.blog-card:nth-child(6).active {
  animation-delay: 0.3s;
}

.blog-card:hover {
  background: rgba(var(--line-dark-rgb), 0.95);
  border-color: var(--gold);
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(var(--gold-rgb), 0.15);
}

.blog-card-image {
  width: 100%;
  height: 250px;
  overflow: hidden;
  position: relative;
  background: rgba(var(--gold-rgb), 0.1);
}

.blog-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.blog-card:hover .blog-card-image img {
  transform: scale(1.05);
}

.blog-card-category {
  position: absolute;
  top: 15px;
  left: 15px;
  background: var(--gold);
  color: var(--black);
  padding: 6px 14px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  z-index: 2;
}

.blog-card-content {
  padding: 30px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.blog-card-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 15px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--body-gray);
}

.blog-card-title {
  color: white;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 12px;
  transition: color 0.3s ease;
}

.blog-card:hover .blog-card-title {
  color: var(--gold);
}

.blog-card-excerpt {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 20px;
  flex: 1;
}

.blog-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 15px;
  border-top: 1px solid var(--line-dark);
}

.blog-card-author {
  display: flex;
  align-items: center;
  gap: 8px;
}

.author-initials {
  width: 32px;
  height: 32px;
  background: rgba(var(--gold-rgb), 0.2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--gold);
}

.author-name {
  color: var(--body-gray);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
}

.blog-card-link-arrow {
  color: var(--gold);
  font-size: 14px;
  transition: color 0.3s ease;
}

.blog-card:hover .blog-card-link-arrow {
  color: var(--gold-dark);
}

/* ===== PAGINATION ===== */

.blog-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  margin-top: 80px;
  position: relative;
  z-index: 1;
}

.pagination-btn {
  background: transparent;
  border: none;
  color: var(--body-gray);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 8px 12px;
}

.pagination-btn:hover:not(:disabled) {
  color: var(--gold);
}

.pagination-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.pagination-numbers {
  display: flex;
  align-items: center;
  gap: 8px;
}

.pagination-number {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid var(--line-dark);
  border-radius: 50%;
  color: var(--body-gray);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
}

.pagination-number:hover {
  border-color: var(--gold);
  color: var(--gold);
}

.pagination-number.active {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--black);
}

.pagination-dots {
  color: var(--body-gray);
  font-size: 14px;
  padding: 0 5px;
}

.blog-single-container {
  padding: 60px 0;
  min-height: 100vh;
}

.blog-single-wrapper {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 80px;
  margin: 0 auto;
}

/* ===== SIDEBAR ===== */

.blog-sidebar {
  position: sticky;
  top: 60px;
  height: fit-content;
  display: flex;
  flex-direction: column;
  gap: 50px;
  background: var(--gray-98);
  border-radius: 8px;
  padding: 30px 25px;
}

/* Document Navigation */

.sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sidebar-nav-title {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
}

.sidebar-nav-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sidebar-nav-item {
  margin: 0;
}

.sidebar-nav-link {
  color: var(--dark-text);
  text-decoration: none;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500;
  display: flex;
  gap: 12px;
  transition: all 0.3s ease;
}

.sidebar-nav-link:hover {
  color: var(--gold);
}

.nav-number {
  color: var(--gold);
  font-weight: 700;
  min-width: 25px;
  font-size: 14px;
}

/* Transit Reliability Matrix */

.sidebar-matrix {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.sidebar-matrix-title {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.matrix-title-icon {
  font-size: 20px;
}

.matrix-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.matrix-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 13px;
}

.matrix-label {
  color: var(--dark-text);
  font-weight: 600;
  flex: 1;
}

.matrix-value {
  color: var(--gold);
  font-weight: 700;
  font-size: 13px;
}

.matrix-bar {
  width: 100%;
  height: 6px;
  background: var(--gray-93);
  border-radius: 3px;
  overflow: hidden;
}

.matrix-bar-fill {
  height: 100%;
  background: var(--gold);
  border-radius: 3px;
}

/* TfL Licensed Box */

.sidebar-tfl {
  background: white;
  border: 1px solid var(--gray-93);
  border-radius: 8px;
  padding: 20px;
  display: flex;
  gap: 15px;
}

.tfl-icon {
  width: 40px;
  height: 40px;
  background: rgba(var(--gold-rgb), 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 20px;
  flex-shrink: 0;
}

.tfl-content h4 {
  color: var(--dark-text);
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 4px;
}

.tfl-content p {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.5;
  margin: 0;
}

/* Sidebar CTA Button */

.sidebar-cta-btn {
  width: 100%;
  padding: 16px 24px;
  background: var(--gold);
  color: var(--black);
  border: none;
  border-radius: 50px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: capitalize;
}

.sidebar-cta-btn:hover {
  background: var(--gold-dark);
  transform: translateY(-2px);
}

/* Sidebar CTA Button */

.sidebar-cta-btn {
  background: var(--gold);
  color: var(--black);
  border: none;
  border-radius: 30px;
  padding: 16px 30px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
  width: 100%;
  text-align: center;
}

.sidebar-cta-btn:hover {
  background: var(--gold-dark);
  transform: scale(1.05);
}

/* ===== MAIN CONTENT ===== */

.blog-main-content {
  animation: fadeInUp 0.8s ease;
}

.blog-header {
  margin-bottom: 50px;
}

.blog-title {
  color: var(--dark-text);
  font-size: 56px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0;
}

/* ===== EXECUTIVE BRIEFING BOX ===== */

.executive-briefing {
  background: white;
  border-left: 4px solid var(--gold);
  padding: 40px;
  margin: 60px 0;
  border-radius: 4px;
}

.briefing-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
}

.briefing-title {
  color: var(--dark-text);
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 25px;
}

.briefing-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.briefing-item {
  color: var(--dark-text);
  font-size: 15px;
  line-height: 1.8;
  margin: 0;
}

.briefing-item strong {
  color: var(--dark-text);
  font-weight: 700;
}

.briefing-item::before {
  content: "•";
  color: var(--gold);
  font-weight: 700;
  margin-right: 12px;
}

/* ===== SECTION STYLING ===== */

.blog-section {
  margin-bottom: 50px;
  scroll-margin-top: 50px;
}

.section-label {
  color: var(--gold);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 10px;
  display: block;
}

.blog-section-title {
  color: var(--dark-text);
  font-size: 36px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 25px;
}

.blog-section p {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.8;
  margin-bottom: 20px;
}

/* ===== SYSTEM ARCHITECTURE PHASES ===== */

.system-architecture {
  margin: 40px 0;
}

.architecture-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
  display: block;
}

.phases-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 25px;
  margin-bottom: 30px;
}

.phase-box {
  background: var(--gray-98);
  padding: 25px;
  border-radius: 4px;
  border-top: 3px solid var(--gold);
}

.phase-number {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.phase-title {
  color: var(--dark-text);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}

.phase-desc {
  color: var(--body-gray);
  font-size: 13px;
  line-height: 1.6;
}

/* ===== QUOTE SECTION ===== */

.blog-quote {
  background: var(--gray-98);
  border-left: 4px solid var(--gold);
  padding: 30px;
  margin: 40px 0;
  border-radius: 4px;
  font-size: 16px;
  font-style: italic;
  color: var(--dark-text);
  line-height: 1.8;
}

.quote-author {
  color: var(--gold);
  font-size: 12px;
  margin-top: 12px;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ===== COMPARISON TABLE ===== */

.comparison-table {
  width: 100%;
  border-collapse: collapse;
  margin: 40px 0;
  background: white;
  border: 1px solid var(--gray-93);
}

.comparison-table th {
  background: var(--gray-98);
  border-bottom: 2px solid var(--gray-93);
  padding: 16px;
  text-align: left;
  color: var(--dark-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.comparison-table td {
  padding: 16px;
  border-bottom: 1px solid var(--gray-93);
  color: var(--body-gray);
  font-size: 14px;
}

.comparison-table tr:last-child td {
  border-bottom: none;
}

.comparison-table tr:hover td {
  background: var(--gray-98);
}

/* ===== FLEET COMPARISON CARDS ===== */

.fleet-comparison {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  margin: 40px 0;
}

.fleet-card {
  background: white;
  border: 1px solid var(--gray-93);
  border-radius: 8px;
  padding: 30px;
  transition: all 0.3s ease;
}

.fleet-card:hover {
  background: var(--gray-98);
  border-color: var(--gold);
  transform: translateY(-5px);
}

.fleet-card-title {
  color: var(--dark-text);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.fleet-specs {
  list-style: none;
}

.fleet-specs li {
  color: var(--body-gray);
  font-size: 14px;
  padding: 12px 0;
  border-bottom: 1px solid var(--gray-93);
  display: flex;
  justify-content: space-between;
}

.fleet-specs li:last-child {
  border-bottom: none;
}

.fleet-spec-label {
  font-weight: 700;
  color: var(--dark-text);
}

.fleet-spec-value {
  color: var(--gold);
  font-weight: 700;
}

.fleet-explore {
  color: var(--gold);
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 15px;
  display: inline-block;
  transition: color 0.3s ease;
}

.fleet-explore:hover {
  color: var(--gold-dark);
}

/* ===== CTA SECTION ===== */

.cta-section {
  background: var(--gray-98);
  border-radius: 8px;
  padding: 50px 40px;
  text-align: center;
  margin: 80px 0;
}

.cta-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
}

.cta-title {
  color: var(--dark-text);
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 15px;
}

.cta-desc {
  color: var(--body-gray);
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 30px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.cta-buttons {
  display: flex;
  gap: 15px;
  justify-content: center;
  flex-wrap: wrap;
}

.cta-btn {
  background: white;
  color: var(--dark-text);
  border: 1px solid var(--gray-93);
  border-radius: 30px;
  padding: 14px 30px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
}

.cta-btn:hover {
  background: var(--dark-text);
  color: white;
  border-color: var(--dark-text);
}

/* ===== AUTHOR BIO ===== */

.author-section {
  background: white;
  border: 1px solid var(--gray-93);
  border-radius: 8px;
  padding: 40px;
  margin: 80px 0;
}

.author-bio {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 25px;
  align-items: flex-start;
}

.author-avatar {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.author-info h4 {
  color: var(--dark-text);
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 8px;
}

.author-title {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.author-info p {
  color: var(--body-gray);
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 15px;
}

.author-links {
  display: flex;
  gap: 20px;
}

.author-link {
  color: var(--dark-text);
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
  gap: 6px;
}

.author-link:hover {
  color: var(--gold);
}

/* ===== NEWSLETTER SECTION ===== */

.newsletter-section {
  margin-top: 100px;
  background: var(--gray-16);
  border-radius: 12px;
  padding: 50px 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
}

.newsletter-content h2 {
  color: white;
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 15px;
}

.newsletter-content h2 .gold-text {
  color: var(--gold);
  font-style: italic;
}

.newsletter-label {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
  display: block;
}

.newsletter-desc {
  color: var(--gray-67);
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 0;
}

.newsletter-form {
  display: flex;
  gap: 12px;
}

.newsletter-input {
  flex: 1;
  background: rgba(var(--black-rgb), 0.4);
  border: 1px solid var(--gray-27);
  border-radius: 30px;
  padding: 14px 25px;
  color: white;
  font-size: 14px;
  outline: none;
  transition: all 0.3s ease;
}

.newsletter-input::placeholder {
  color: var(--gray-53);
}

.newsletter-input:focus {
  border-color: var(--gold);
  background: rgba(var(--black-rgb), 0.6);
}

.newsletter-btn {
  background: var(--gold);
  color: var(--black);
  border: none;
  border-radius: 30px;
  padding: 14px 35px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: uppercase;
  flex-shrink: 0;
}

.newsletter-btn:hover {
  background: var(--gold-dark);
  transform: scale(1.05);
}

.newsletter-disclaimer {
  color: var(--gray-53);
  font-size: 12px;
  margin-top: 12px;
}

.sprinv2_tours_main {
  padding: 100px 0;
  background: white;
}

.tours-header {
  text-align: center;
  margin-bottom: 80px;
}

.tours-header-badge {
  display: inline-block;
  color: var(--gold);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
}

.tours-header h1 {
  font-size: 56px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 15px;
  color: var(--dark-text);
}

.tours-header h1 span {
  font-style: italic;
  color: var(--gold);
}

.tours-header p {
  font-size: 16px;
  color: var(--body-gray);
  width: 60%;
  text-align: center;
  margin: 0 auto;
  line-height: 1.6;
}

/* Category Tabs */

.tours-tabs {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 60px;
  flex-wrap: wrap;
  border-radius: 30px;
  padding: 10px 10px;
  box-shadow: inset 0 3px 5px 0 rgba(var(--black-rgb), 0.05);
  background: rgba(52, 53, 55, 0.1);
}

.tours-tab-btn {
  padding: 12px 24px;
  border: none;
  background: transparent;
  color: var(--gray-65);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.tours-tab-btn.active {
  background: var(--black);
  color: white;
  border-radius: 50px;
}

.tours-tab-btn:hover:not(.active) {
  color: var(--dark-text);
}

/* Tour Cards Grid - Using Bootstrap Rows/Cols */

.tours-cards-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.tour-card {
  background: white;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow:
    0 3px 5px -3px rgba(var(--black-rgb), 0.1),
    0 5px 8px -1px rgba(var(--black-rgb), 0.1);
}

.tour-card:hover {
  transform: translateY(-8px);
}

.tour-card-image {
  width: 100%;
  height: 300px;
  background: var(--gray-93);
  overflow: hidden;
  position: relative;
}

.tour-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.tour-card:hover .tour-card-image img {
  transform: scale(1.05);
}

.tour-card-badge {
  position: absolute;
  top: 20px;
  left: 20px;
  background: rgba(var(--black-rgb), 0.75);
  color: white;
  padding: 8px 16px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.tour-card-duration {
  position: absolute;
  top: 20px;
  right: 20px;
  background: var(--gold);
  color: var(--black);
  padding: 8px 16px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.tour-card-content {
  padding: 30px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.tour-card-rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 15px;
  font-size: 13px;
}

.tour-card-stars {
  color: var(--gold);
  font-size: 12px;
}

.tour-card-reviews {
  color: var(--body-gray);
  font-size: 12px;
}

.tour-card-title {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
  color: var(--dark-text);
}

.tour-card-excerpt {
  font-size: 14px;
  color: var(--body-gray);
  line-height: 1.6;
  margin-bottom: 20px;
  flex-grow: 1;
}

.tour-card-fleet {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding-top: 15px;
  border-top: 1px solid var(--gray-93);
  font-size: 12px;
  color: var(--body-gray);
}

.tour-card-fleet-icon {
  min-width: 20px;
  min-height: 20px;
  background: var(--gold);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 10px;
  font-weight: 700;
}

.tour-card-fleet-text strong {
  color: var(--black);
  font-weight: 700;
}

.tour-card-cta {
  background: var(--black);
  color: white;
  border: none;
  padding: 14px 24px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: 100%;
}

.tour-card-cta:hover {
  background: var(--gold);
  color: var(--black);
}

/* ===== TOUR FEATURES SECTION ===== */

.sprinv2_tours_features {
  padding: 100px 0;
  background: var(--dark-bg);
  color: white;
}

.tours-features-header {
  text-align: center;
  margin-bottom: 80px;
}

.tours-features-badge {
  display: inline-block;
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
}

.tours-features-header h2 {
  font-size: 48px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 20px;
}

.tours-features-header h2 span {
  font-style: italic;
  color: var(--gold);
}

.tours-features-header p {
  font-size: 15px;
  color: var(--gray-80-2);
  max-width: 700px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Feature Cards */

.feature-card {
  background: var(--gray-13);
  padding: 40px 30px;
  border-radius: 8px;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow:
    0 5px 8px -5px rgba(var(--black-rgb), 0.1),
    0 13px 19px -4px rgba(var(--black-rgb), 0.1);
}

.feature-card-icon {
  width: 60px;
  height: 60px;
  background: var(--gray-20);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 28px;
  margin: 0 0 30px 0;
}

.feature-card h3 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 20px;
  color: white;
}

.feature-card p {
  font-size: 14px;
  color: var(--gray-73);
  line-height: 1.7;
  margin-bottom: 25px;
  flex-grow: 1;
}

.feature-card-badge {
  display: inline-block;
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 700;
}

/* Vehicle Showcase */

.tours-vehicles {
  margin-top: 80px;
}

.vehicles-header {
  margin-bottom: 40px;
}

.vehicles-header h3 {
  font-size: 12px;
  padding-bottom: 5px;
  font-weight: 700;
  color: var(--gold-yellow);
}

.vehicles-explore-link {
  color: var(--white);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.vehicles-explore-link:hover {
  gap: 8px;
}

/* Vehicle Cards */

.vehicle-card {
  background: white;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.vehicle-card:hover {
  transform: translateY(-5px);
}

.vehicle-card-image {
  width: 100%;
  height: 260px;
  background: var(--gray-20);
  overflow: hidden;
}

.vehicle-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vehicle-card-content {
  padding: 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  color: var(--dark-text);
}

.vehicle-card-badge {
  display: inline-block;
  width: fit-content;
  background: var(--gold);
  color: var(--black);
  padding: 4px 12px;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 12px;
}

.vehicle-card-title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
  color: var(--dark-text);
}

.vehicle-card-desc {
  font-size: 13px;
  color: var(--body-gray);
  line-height: 1.6;
  margin-bottom: 15px;
  flex-grow: 1;
}

.vehicle-card-specs {
  display: flex;
  justify-content: space-between;
  padding-top: 15px;
  border-top: 1px solid var(--gray-93);
  font-size: 11px;
  color: var(--body-gray);
}

.spec-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.spec-label {
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
  color: var(--gray-60-2);
}

.spec-value {
  color: var(--dark-text);
  font-weight: 600;
}

.tour-section {
  margin-bottom: 50px;
}

.tour-section h2 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  color: var(--dark-text);
}

.tour-section p {
  font-size: 15px;
  color: var(--body-gray);
  line-height: 1.8;
  margin-bottom: 20px;
}

/* Phase/Timeline Cards */

.tour-phases {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-bottom: 50px;
}

.phase-card {
  background: white;
  border: 1px solid var(--gray-93);
  border-radius: 8px;
  padding: 30px;
  position: relative;
  padding-left: 100px;
}

.phase-time {
  position: absolute;
  left: 30px;
  top: 30px;
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.phase-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--dark-text);
  margin-bottom: 10px;
}

.phase-description {
  font-size: 14px;
  color: var(--body-gray);
  line-height: 1.7;
  margin-bottom: 15px;
}

.phase-detail {
  font-size: 12px;
  color: var(--gray-60-2);
  display: flex;
  gap: 8px;
}

/* Sidebar Timeline */

.sidebar-timeline {
  background: var(--cream-bg);
  border-radius: 8px;
  padding: 30px;
  margin-bottom: 30px;
}

.sidebar-timeline-title {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gold);
  margin-bottom: 25px;
}

.timeline-item {
  padding: 20px 0;
  border-bottom: 1px solid var(--gray-87);
  display: flex;
  gap: 15px;
}

.timeline-item:last-child {
  border-bottom: none;
}

.timeline-item-time {
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  min-width: 60px;
}

.timeline-item-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--dark-text);
  margin-bottom: 5px;
}

.timeline-item-desc {
  font-size: 12px;
  color: var(--body-gray);
  line-height: 1.5;
}

/* Sidebar CTA */

.sidebar-cta {
  width: 100%;
  padding: 16px 24px;
  background: var(--gold);
  color: var(--black);
  border: none;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-bottom: 20px;
}

.sidebar-cta:hover {
  background: var(--gold-dark);
}

/* Tour Images Grid */

.tour-images {
  display: flex;
  gap: 20px;
  margin-bottom: 50px;
}

.tour-image {
  flex: 1;
  height: 300px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--gray-93);
}

.tour-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.historic-container-wrapper {
  display: flex;
  gap: 60px;
  max-width: 1300px;
  margin: 0 auto;
  padding: 60px 30px;
}

/* Main Content */

.historic-main-content {
  flex: 1;
}

.historic-badge-header {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.historic-badge-header i {
  font-size: 12px;
}

.historic-page-title {
  font-size: 48px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 20px;
  color: var(--dark-text);
}

.historic-intro-text {
  font-size: 15px;
  color: var(--body-gray);
  line-height: 1.8;
  margin-bottom: 50px;
}

.historic-section-heading {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 30px;
  margin-top: 50px;
  color: var(--dark-text);
}

.historic-section-text {
  font-size: 15px;
  color: var(--body-gray);
  line-height: 1.8;
  margin-bottom: 30px;
}

/* Info Box Grid */

.historic-info-boxes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  margin-bottom: 50px;
}

.historic-info-box:nth-child(5) {
  grid-column: 1 / -1;
}

.historic-info-box {
  box-shadow: 0 1px 3px 0 rgba(var(--black-rgb), 0.05);
  background: rgba(13, 14, 16, 0.05);
  border-radius: 8px;
  padding: 15px;
}

.historic-info-box-icon {
  font-size: 20px;
  margin-bottom: 12px;
}

.historic-info-box-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark-text);
  margin-bottom: 10px;
}

.historic-info-box-desc {
  font-size: 13px;
  color: var(--body-gray);
  line-height: 1.6;
  margin: 0;
}

/* Gallery */

.historic-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 40px;
}

.historic-gallery-item {
  height: 280px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--gray-93);
}

.historic-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.historic-gallery-caption {
  font-size: 12px;
  color: var(--gray-60-2);
  margin-top: 10px;
  padding: 0 5px;
}

/* Sidebar */

.historic-sidebar {
  position: sticky;
  top: 125px;
  height: fit-content;
  background: rgba(13, 14, 16, 0.05);
  padding: 15px;
}

.historic-sidebar-title {
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 30px;
}

.historic-metric-item {
  background: white;
  border-radius: 8px;
  padding: 0;
  margin-bottom: 25px;
  display: flex;
  gap: 15px;
}

.historic-metric-icon {
  width: 50px;
  height: 50px;
  background: var(--black);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 16px;
  font-weight: 700;
  flex-shrink: 0;
}

.historic-metric-content {
  flex: 1;
  padding: 15px 20px 15px 0;
}

.historic-metric-value {
  color: var(--gold);
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 4px;
}

.historic-metric-label {
  color: var(--dark-text);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 6px;
}

.historic-metric-desc {
  color: var(--body-gray);
  font-size: 11px;
  line-height: 1.5;
  margin: 0;
}

/* Concierge Box */

.historic-concierge-box {
  background: var(--black);
  color: white;
  border-radius: 8px;
  padding: 25px;
  margin-top: 30px;
}

.historic-concierge-label {
  color: var(--gold);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 12px;
  display: block;
}

.historic-concierge-title {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 10px;
}

.historic-concierge-text {
  font-size: 12px;
  color: var(--gray-67);
  line-height: 1.6;
  margin: 0;
}

/* ---------- Section header ---------- */

.itinerary {
  padding: 80px 0;
  background-color: var(--gray-8-3);
}

.itinerary .eyebrow {
  color: var(--gold-amber);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.itinerary .section-title {
  font-family: var(--font-heading);
  font-weight: 500;
  color: var(--heading-light);
  font-size: clamp(1.6rem, 3.2vw, 2.25rem);
  line-height: 1.3;
  max-width: 640px;
  margin: 0 auto 1rem;
}

.itinerary .section-lead {
  font-size: 0.95rem;
  line-height: 1.6;
  max-width: 620px;
  margin: 0 auto;
  color: var(--text-warm);
}

/* ---------- Timeline ---------- */

.timeline {
  position: relative;
  margin-top: 3.5rem;
}

/* vertical line */

.timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: var(--dark-line);
  transform: translateX(-50%);
}

.tl-row {
  position: relative;
  padding: 1rem 0;
}

.tl-node-col {
  display: flex;
  justify-content: center;
  align-items: center;
}

.tl-node {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--dark-node);
  border: 1px solid var(--dark-card-border);
  color: var(--gold-amber);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  position: relative;
  z-index: 1;
  box-shadow: 0 0 0 6px var(--dark-bg-2);
}

/* Phase text block */

.phase-meta {
  color: var(--gold-amber);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.45rem;
}

.phase-title {
  font-family: var(--font-heading);
  font-weight: 500;
  color: var(--heading-light);
  font-size: 1.35rem;
  line-height: 1.3;
  margin-bottom: 0.6rem;
}

.phase-text {
  font-size: 0.85rem;
  line-height: 1.65;
  margin: 0;
  color: var(--white);
}

/* Info card */

.info-card {
  background: var(--dark-card-2);
  border: 1px solid var(--dark-card-border);
  border-radius: 8px;
  padding: 1rem 1.25rem;
}

.info-card .card-label {
  color: var(--muted-warm-2);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.4rem;
}

.info-card p {
  color: var(--heading-light);
  opacity: 0.88;
  font-size: 0.85rem;
  line-height: 1.55;
  margin: 0;
}

/* =========================================================
       ANIMATIONS
       ========================================================= */

/* 1. Gold progress line that fills as you scroll */

.tl-progress {
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 0;
  transform: translateX(-50%);
  background: linear-gradient(
    to bottom,
    rgba(217, 164, 65, 0),
    var(--gold-amber) 60px
  );
  box-shadow: 0 0 8px rgba(217, 164, 65, 0.45);
  pointer-events: none;
  z-index: 0;
}

/* 2. Icon node: activates when its row enters view */

.tl-node {
  transition:
    border-color 0.5s ease,
    background-color 0.5s ease,
    color 0.5s ease,
    transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  color: var(--muted-warm-2);
  transform: scale(0.85);
}

.tl-node i {
  transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
  color: var(--gold-yellow);
}

.tl-row.is-active .tl-node {
  color: var(--gold-amber);
  border-color: rgba(217, 164, 65, 0.7);
  background: var(--orange-15);
  transform: scale(1);
}

.tl-row.is-active .tl-node i {
  transform: rotate(-8deg) scale(1.08);
}

/* soft pulsing ring around the active node */

.tl-node::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 50%;
  border: 1px solid var(--gold-amber);
  opacity: 0;
}

.tl-row.is-active .tl-node::after {
  animation: nodePulse 2.4s ease-out infinite;
}

.tl-row:hover .tl-node {
  transform: scale(1.1);
}

/* 3. Phase text + cards slide in from their side */

.reveal {
  opacity: 0;
  transition:
    opacity 0.8s ease,
    transform 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.reveal.from-left {
  transform: translateX(-40px);
}

.reveal.from-right {
  transform: translateX(40px);
}

.reveal.from-below {
  transform: translateY(30px);
}

.reveal.delay {
  transition-delay: 0.15s;
}

.tl-row.is-active .reveal {
  opacity: 1;
  transform: none;
}

/* 4. Card hover: lift + gold edge + light sweep */

.info-card {
  position: relative;
  overflow: hidden;
  transition:
    opacity 0.8s ease,
    transform 0.8s cubic-bezier(0.22, 0.61, 0.36, 1),
    border-color 0.35s ease,
    box-shadow 0.35s ease;
}

.info-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 40%;
  height: 100%;
  background: linear-gradient(
    100deg,
    transparent,
    rgba(217, 164, 65, 0.08),
    transparent
  );
  transform: skewX(-20deg);
  transition: left 0.7s ease;
}

.tl-row.is-active .info-card.reveal:hover {
  transform: translateY(-4px);
  border-color: rgba(217, 164, 65, 0.45);
  box-shadow: 0 12px 28px rgba(var(--black-rgb), 0.35);
  transition-delay: 0s;
}

.info-card:hover::before {
  left: 120%;
}

.info-card:hover .card-label {
  color: var(--gold-amber);
}

.info-card .card-label {
  transition: color 0.35s ease;
}

/* 5. Header fade-in on load */

.itinerary .eyebrow,
.itinerary .section-title,
.itinerary .section-lead {
  animation: headerIn 0.9s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}

.itinerary .section-title {
  animation-delay: 0.12s;
}

.itinerary .section-lead {
  animation-delay: 0.24s;
}

/* ============ Chauffeur quote form (scoped to .cq-card) ============ */
.cq-card {
  max-width: 800px;
  margin: 150px auto 60px;
  background: var(--q-bg);
  border-top: 4px solid var(--q-gold);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
  padding: 1.5rem 1.4rem 1.2rem;
  font-family: var(--font-body);
  color: var(--q-ink);
  text-align: left;
}

.cq-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--q-border);
  margin-bottom: 1.1rem;
}
.cq-eyebrow {
  color: #c9a023;
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin: 0 0 0.25rem;
}
.cq-title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 1.65rem;
  line-height: 1.15;
  margin: 0;
  letter-spacing: -0.01em;
  color: var(--q-ink);
}
.cq-badge {
  border: 1px solid var(--q-border);
  font-size: 0.62rem;
  color: var(--q-label);
  padding: 0.4rem 0.6rem;
  white-space: nowrap;
  margin-top: 0.2rem;
  background: #fbfaf7;
}

.cq-card .q-label {
  display: block;
  font-size: 0.63rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--q-label);
  margin-bottom: 0.45rem;
}

.cq-card .q-control,
.cq-card .q-select {
  height: 36px;
  border: 1px solid var(--q-border);
  border-radius: 2px;
  background-color: #fff;
  font-size: 0.82rem;
  color: var(--q-ink);
  padding: 0.35rem 0.65rem;
}
.cq-card .q-select {
  padding-right: 2rem;
}
.cq-card .q-control::placeholder {
  color: #8b8880;
}
.cq-card .q-control:focus,
.cq-card .q-select:focus {
  border-color: var(--q-ink);
  box-shadow: 0 0 0 2px rgba(227, 182, 45, 0.35);
}

.cq-card .was-validated .q-control:invalid,
.cq-card .q-control.is-invalid {
  border-color: var(--q-danger);
  background-image: none;
  padding-right: 0.65rem;
}
.cq-card .was-validated .q-control:valid {
  border-color: var(--q-border);
  background-image: none;
  padding-right: 0.65rem;
}
.cq-card .was-validated .q-select:valid {
  border-color: var(--q-border);
}
.cq-card .invalid-feedback {
  font-size: 0.7rem;
  color: var(--q-danger);
}
.cq-card .q-select:invalid {
  color: #8b8880;
}
.cq-card .q-select option {
  color: var(--q-ink);
}
.cq-hint {
  font-size: 0.66rem;
  color: var(--q-muted);
  margin-top: 0.3rem;
  min-height: 1em;
}
.cq-hint.warn {
  color: #9a6b00;
}

/* Journey chips */
.chip-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.chip {
  font-size: 0.66rem;
  padding: 0.45rem 0.6rem;
  border: 1px solid var(--q-border);
  background: #f3f1ea;
  color: var(--q-ink);
  border-radius: 2px;
  cursor: pointer;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s;
  user-select: none;
  margin: 0;
}
.chip:hover {
  border-color: var(--q-ink);
}
.btn-check:checked + .chip {
  background: var(--q-ink);
  border-color: var(--q-ink);
  color: #fff;
}
.btn-check:focus-visible + .chip {
  outline: 2px solid var(--q-gold);
  outline-offset: 2px;
}

/* Yes / No toggle */
.toggle {
  display: flex;
  height: 36px;
  border: 1px solid var(--q-border);
  border-radius: 2px;
  overflow: hidden;
  background: #fff;
}
.toggle label {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  font-weight: 500;
  cursor: pointer;
  margin: 0;
  transition:
    background-color 0.2s,
    color 0.2s;
}
.toggle .btn-check:checked + label {
  background: var(--q-ink);
  color: #fff;
}
.toggle .btn-check:focus-visible + label {
  outline: 2px solid var(--q-gold);
  outline-offset: -2px;
}
.return-fields {
  display: none;
}
.return-fields.show {
  display: flex;
}

/* Address dropdown */
.addr-wrap {
  position: relative;
}
.addr-list {
  display: none;
  position: absolute;
  top: calc(100% + 2px);
  left: 0;
  right: 0;
  z-index: 30;
  list-style: none;
  margin: 0;
  padding: 0.25rem 0 0;
  background: #fff;
  border: 1px solid var(--q-border);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
  max-height: 290px;
  overflow-y: auto;
}
.addr-list.open {
  display: block;
}
.addr-item {
  display: flex;
  gap: 0.6rem;
  align-items: flex-start;
  padding: 0.55rem 0.75rem;
  cursor: pointer;
  font-size: 0.8rem;
  line-height: 1.3;
}
.addr-item i {
  color: #b8931f;
  margin-top: 0.1rem;
}
.addr-item strong {
  display: block;
  font-weight: 600;
}
.addr-item small {
  color: var(--q-muted);
  font-size: 0.72rem;
}
.addr-item:hover,
.addr-item.active {
  background: #f5f0de;
}
.addr-empty {
  padding: 0.6rem 0.75rem;
  font-size: 0.78rem;
  color: var(--q-muted);
}
.addr-foot {
  text-align: right;
  font-size: 0.62rem;
  color: #9a978f;
  padding: 0.35rem 0.75rem;
  border-top: 1px solid #efede7;
  margin-top: 0.25rem;
}
.addr-loading::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 18px;
  width: 14px;
  height: 14px;
  margin-top: -7px;
  border: 2px solid #ddd;
  border-top-color: var(--q-gold);
  border-radius: 50%;
  animation: cq-spin 0.7s linear infinite;
}
@keyframes cq-spin {
  to {
    transform: rotate(360deg);
  }
}

/* Consent */
.consent {
  display: flex;
  gap: 0.55rem;
  align-items: flex-start;
}
.consent .form-check-input {
  margin-top: 0.15rem;
  width: 13px;
  height: 13px;
  border-radius: 2px;
  border-color: #aaa;
  flex-shrink: 0;
}
.consent .form-check-input:checked {
  background-color: var(--q-ink);
  border-color: var(--q-ink);
}
.consent .form-check-input:focus {
  box-shadow: 0 0 0 2px rgba(227, 182, 45, 0.35);
}
.consent label {
  font-size: 0.64rem;
  color: var(--q-label);
  line-height: 1.55;
}
.consent a {
  color: var(--q-ink);
}
.cq-card .was-validated .consent .form-check-input:invalid {
  border-color: var(--q-danger);
}
.cq-card .was-validated .consent .form-check-input:invalid ~ label {
  color: var(--q-danger);
}

/* Honeypot: hidden from people, visible to bots */
.cq-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Form-level alert */
.cq-alert {
  display: none;
  font-size: 0.74rem;
  color: var(--q-danger);
  background: #fbeceb;
  border: 1px solid #f0c9c6;
  padding: 0.55rem 0.7rem;
  border-radius: 2px;
}
.cq-alert.show {
  display: block;
}

/* Submit */
.btn-quote {
  width: 100%;
  border: 0;
  border-radius: 2px;
  padding: 0.95rem 1rem;
  background: linear-gradient(
    90deg,
    var(--q-gold) 0%,
    #efd35c 55%,
    var(--q-gold-light) 100%
  );
  color: var(--q-ink);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  transition:
    filter 0.2s,
    transform 0.15s;
}
.btn-quote:hover {
  filter: brightness(0.96);
}
.btn-quote:active {
  transform: translateY(1px);
}
.btn-quote:focus-visible {
  outline: 2px solid var(--q-ink);
  outline-offset: 2px;
}
.btn-quote:disabled {
  opacity: 0.75;
  cursor: wait;
}
.btn-quote .arrow {
  display: inline-block;
  margin-left: 0.5rem;
  transition: transform 0.2s;
}
.btn-quote:hover .arrow {
  transform: translateX(4px);
}
.cq-note {
  font-size: 0.62rem;
  color: var(--q-muted);
  text-align: center;
  margin: 0.65rem 0 0;
}

/* Very narrow phones: stack paired fields */
@media (max-width: 379.98px) {
  .cq-card {
    padding: 1.25rem 1rem 1rem;
  }
  .cq-card .pair > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .cq-head {
    flex-direction: column;
    gap: 0.5rem;
  }
  .cq-title {
    font-size: 1.45rem;
  }
}

/* =========================================
   ANIMATIONS
   ========================================= */

[hidden] {
  display: none !important;
}
.success-card {
  background: var(--s-card);
  border-top: 4px solid var(--s-gold);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

/* ---------------- Scene ---------------- */
.scene-wrap {
  position: relative;
  background: linear-gradient(#f3eee1 0%, #f7f3ea 70%);
  border-bottom: 1px solid var(--s-border);
}
.scene {
  display: block;
  width: 100%;
  height: auto;
}

.scene-caption {
  position: absolute;
  left: 0;
  right: 0;
  top: 14%;
  text-align: center;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #b8931f;
  opacity: 0;
  pointer-events: none;
}

/* Clouds drift forever */
.cloud {
  animation: drift 38s linear infinite;
}
.cloud.c2 {
  animation-duration: 52s;
  animation-delay: -20s;
}
@keyframes drift {
  from {
    transform: translateX(-160px);
  }
  to {
    transform: translateX(900px);
  }
}

/* All story animations only run while .play is on the wrapper (lets us replay) */
.play .car-move {
  animation: carMove var(--t) both;
}
.play .car-body {
  animation: carBody var(--t) both;
  transform-box: fill-box;
  transform-origin: 50% 100%;
}
.play .wheel-spin {
  animation: wheelSpin var(--t) both;
  transform-box: fill-box;
  transform-origin: 50% 50%;
}
.play .door {
  animation: door var(--t) both;
  transform-box: fill-box;
  transform-origin: 100% 50%;
}
.play .passenger {
  animation: passenger var(--t) both;
}
.play .leg-a {
  animation: legA 0.4s ease-in-out 2.4s 2 both;
}
.play .leg-b {
  animation: legB 0.4s ease-in-out 2.4s 2 both;
}
.play .beam {
  animation: beam var(--t) both;
}
.play .puff {
  animation: puff 1.1s ease-out 4.35s both;
}
.play .puff.p2 {
  animation-delay: 4.55s;
}
.play .puff.p3 {
  animation-delay: 4.75s;
}
.play .scene-caption {
  animation: caption var(--t) both;
}

.leg-a,
.leg-b {
  transform-box: fill-box;
  transform-origin: 50% 0;
}
.puff {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: 50% 50%;
}

/* Car drives in (0–25%), waits, drives away (55–90%) */
@keyframes carMove {
  0% {
    transform: translateX(-640px);
    animation-timing-function: cubic-bezier(0.2, 0.7, 0.3, 1);
  }
  25% {
    transform: translateX(0);
  }
  55% {
    transform: translateX(0);
    animation-timing-function: cubic-bezier(0.6, 0, 0.9, 0.45);
  }
  90%,
  100% {
    transform: translateX(920px);
  }
}
/* Wheels turn only while moving, matching the same easing */
@keyframes wheelSpin {
  0% {
    transform: rotate(0deg);
    animation-timing-function: cubic-bezier(0.2, 0.7, 0.3, 1);
  }
  25% {
    transform: rotate(2030deg);
  }
  55% {
    transform: rotate(2030deg);
    animation-timing-function: cubic-bezier(0.6, 0, 0.9, 0.45);
  }
  90%,
  100% {
    transform: rotate(4960deg);
  }
}
/* Small nose-dip when braking, squat when pulling away */
@keyframes carBody {
  0%,
  23% {
    transform: rotate(0);
  }
  26% {
    transform: rotate(1.1deg);
  }
  30% {
    transform: rotate(0);
  }
  55% {
    transform: rotate(0);
  }
  58% {
    transform: rotate(-1deg);
  }
  63%,
  100% {
    transform: rotate(0);
  }
}
/* Rear door opens for the passenger, then closes */
@keyframes door {
  0%,
  29% {
    transform: scaleX(1);
  }
  33% {
    transform: scaleX(0.18);
  }
  45% {
    transform: scaleX(0.18);
  }
  50%,
  100% {
    transform: scaleX(1);
  }
}
/* Passenger walks to the door (30–40%) and steps in (41–47%) */
@keyframes passenger {
  0%,
  30% {
    transform: translateX(0);
    opacity: 1;
  }
  40% {
    transform: translateX(-221px);
    opacity: 1;
  }
  42% {
    transform: translateX(-221px);
    opacity: 1;
  }
  47%,
  100% {
    transform: translate(-226px, 6px);
    opacity: 0;
  }
}
@keyframes legA {
  0%,
  100% {
    transform: rotate(0);
  }
  25% {
    transform: rotate(18deg);
  }
  75% {
    transform: rotate(-18deg);
  }
}
@keyframes legB {
  0%,
  100% {
    transform: rotate(0);
  }
  25% {
    transform: rotate(-18deg);
  }
  75% {
    transform: rotate(18deg);
  }
}

@keyframes beam {
  0%,
  50% {
    opacity: 0.35;
  }
  56%,
  100% {
    opacity: 0.75;
  }
}
@keyframes puff {
  0% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4);
  }
  25% {
    opacity: 0.55;
  }
  100% {
    opacity: 0;
    transform: translate(-40px, -14px) scale(1.8);
  }
}
@keyframes caption {
  0%,
  56% {
    opacity: 0;
    transform: translateY(6px);
  }
  64%,
  100% {
    opacity: 1;
    transform: none;
  }
}

/* ---------------- Message ---------------- */
.msg {
  padding: 1.75rem 1.5rem 2rem;
  text-align: center;
}

.check {
  width: 54px;
  height: 54px;
  margin: -52px auto 1rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--s-gold), var(--s-gold-light));
  color: var(--s-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  box-shadow:
    0 0 0 6px var(--s-card),
    0 6px 18px rgba(0, 0, 0, 0.15);
  position: relative;
  animation: pop 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s both;
}
@keyframes pop {
  from {
    transform: scale(0);
  }
  to {
    transform: scale(1);
  }
}

.success-card .eyebrow {
  color: #c9a023;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.4rem;
}
.msg h1 {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: clamp(1.5rem, 3.6vw, 2rem);
  line-height: 1.2;
  margin-bottom: 0.75rem;
}
.msg p {
  color: #4a4843;
  font-size: 0.9rem;
  line-height: 1.65;
  max-width: 520px;
  margin: 0 auto 0.5rem;
}

.fade-up {
  animation: fadeUp 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}
.fade-up.d1 {
  animation-delay: 0.45s;
}
.fade-up.d2 {
  animation-delay: 0.6s;
}
.fade-up.d3 {
  animation-delay: 0.75s;
}
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

.steps {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin: 1.25rem 0 1.5rem;
}
.step {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.76rem;
  color: var(--s-muted);
}
.step i {
  color: #b8931f;
  font-size: 1rem;
}

.btn-home {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: 0;
  border-radius: 2px;
  padding: 0.85rem 1.6rem;
  background: linear-gradient(
    90deg,
    var(--s-gold) 0%,
    #efd35c 55%,
    var(--s-gold-light) 100%
  );
  color: var(--s-ink);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: filter 0.2s;
}
.btn-home:hover {
  filter: brightness(0.96);
  color: var(--s-ink);
}
.btn-replay {
  background: none;
  border: 0;
  color: var(--s-muted);
  font-size: 0.72rem;
  margin-left: 0.75rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.btn-replay:hover {
  color: var(--s-ink);
}

@media (max-width: 575.98px) {
  .msg {
    padding: 1.5rem 1.1rem 1.75rem;
  }
  .steps {
    gap: 0.75rem;
    flex-direction: column;
    align-items: center;
  }
  .btn-replay {
    display: block;
    margin: 0.9rem auto 0;
  }
}

/* Reduced motion: show the car parked, no movement */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
  }
  .passenger {
    opacity: 0;
  }
  .scene-caption {
    opacity: 1;
  }
  .btn-replay {
    display: none;
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes float {
  0%,
  100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes nodePulse {
  0% {
    transform: scale(1);
    opacity: 0.7;
  }
  80% {
    transform: scale(1.7);
    opacity: 0;
  }
  100% {
    transform: scale(1.7);
    opacity: 0;
  }
}

@keyframes headerIn {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes cq-spin {
  to {
    transform: rotate(360deg);
  }
}

/* =========================================
   MEDIA QUERIES (large → small)
   ========================================= */

@media (max-width: 1599px) {
  /* ================= RESPONSIVE ================= */
  .nv a.book-now {
    margin-right: 15px;
  }
}

@media (max-width: 1399px) {
  .tours-tab-btn {
    padding: 12px 15px;
    font-size: 12px;
  }
}

@media (max-width: 1199px) {
  .section-gray {
    padding: 60px 0;
  }
  .section-white {
    padding: 60px 0 60px;
  }
  .tours-tab-btn {
    padding: 12px 15px;
    font-size: 9px;
  }
  .tour-card-duration {
    top: 60px;
    right: auto;
    left: 20px;
  }
}

@media (max-width: 1024px) {
  /* Responsive */
  .container-wrapper {
    flex-direction: column;
    gap: 40px;
  }
  .sidebar {
    width: 100%;
    position: static;
  }
  .info-boxes {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 992px) {
  /* ===== RESPONSIVE ===== */
  .blog-single-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .blog-sidebar {
    position: static;
  }
  .blog-title {
    font-size: 42px;
  }
  .newsletter-section {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991.98px) {
  /* ---------- Mobile / tablet: line on the left ---------- */
  .timeline::before {
    left: 21px;
    transform: none;
  }
  .tl-row {
    padding-left: 64px;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .tl-node-col {
    position: absolute;
    left: 0;
    top: 1.25rem;
    width: auto;
    padding: 0;
  }
  .tl-row .phase-block {
    margin-bottom: 1rem;
  }
  .phase-title {
    font-size: 1.25rem;
  }
  .tl-progress {
    left: 21px;
    transform: none;
  }
}

@media (max-width: 991px) {
  .amenities-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .amenity-cell.filler {
    display: none;
  }
  .hero {
    padding: 60px 0 80px;
  }
  .hero-title {
    font-size: 42px;
  }
  .why-book-img-wrap img {
    height: 340px;
  }
  .feature-cell {
    padding: 28px;
  }
  .floating-badge {
    bottom: 15px;
    left: 25px;
  }
  .comfort-heading {
    padding-top: 30px;
  }
  /* ---------- Responsive ---------- */
  .homenew-h2 {
    font-size: 32px;
  }
  .homenew-mini-card-img img {
    height: 110px;
  }
  /* ---------- Responsive ---------- */
  .fleetnew-h1 {
    font-size: 36px;
  }
  .fleetnew-h2 {
    font-size: 28px;
  }
  .fleetnew-why-cell {
    padding: 30px 22px;
  }
  /* ---------- Responsive ---------- */
  .abtnew-h1 {
    font-size: 30px;
  }
  .abtnew-h2 {
    font-size: 28px;
  }
  .abtnew-timeline-card {
    width: 90%;
  }
  .abtnew-timeline-item--left,
  .abtnew-timeline-item--right {
    justify-content: flex-start;
  }
  .abtnew-timeline-track::before {
    left: 20px;
  }
  .abtnew-timeline-dot {
    order: -1;
    margin: 0 16px 0 14px;
  }
  /* ---------- Responsive ---------- */
  .faqnew-h2 {
    font-size: 28px;
  }
  .faqnew-category-list {
    flex-direction: row !important;
    flex-wrap: wrap;
  }
  .faqnew-category {
    width: auto;
  }
  /* ---------- Responsive ---------- */
  .abtnew-h1 {
    font-size: 30px;
  }
  .abtnew-h2 {
    font-size: 28px;
  }
  .abtnew-timeline-card {
    width: 90%;
  }
  .abtnew-timeline-item--left,
  .abtnew-timeline-item--right {
    justify-content: flex-start;
  }
  .abtnew-timeline-track::before {
    left: 20px;
  }
  .abtnew-timeline-dot {
    order: -1;
    margin: 0 16px 0 14px;
  }
  /* ---------- Responsive ---------- */
  .svcnew-h1 {
    font-size: 28px;
  }
  .svcnew-highlight-bar {
    border-radius: 16px;
  }
  .svcnew-highlight-item {
    text-align: center;
  }
  .hero.v2banner {
    padding: 150px 0 80px;
  }
  ul.homenew-contact-list {
    display: flex;
    flex-wrap: wrap;
  }
  .homenew-contact-list li {
    margin-right: 10px;
  }
  .homenew-occasion-img {
    margin-right: 0;
  }
  .homenew-badge-100 {
    left: 20px;
    bottom: 15px;
  }
  /* ---------------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------------- */
  .bookstepnew-h2 {
    font-size: 28px;
  }
  .luxfeatnew-h2 {
    font-size: 32px;
  }
  .bookstepnew-col::after,
  .bookstepnew-col::before {
    display: none;
  }
  /* ---------------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------------- */
  .comparenew-h2,
  .whyhcdnew-h2 {
    font-size: 30px;
  }
  .occasionnew-h2 {
    font-size: 28px;
  }
  .whyhcdnew-cell {
    padding: 30px 22px;
  }
  /* Responsive Sidebar */
  .historic-sidebar {
    position: static;
    margin-top: 40px;
  }
  .tours-tabs {
    gap: 0px;
    margin-bottom: 30px;
  }
  .tours-header {
    margin-bottom: 30px;
  }
  .tours-vehicles {
    margin-top: 30px;
  }
  .sprinv2_tours_features {
    padding: 40px 0;
  }
  .sprinv2_tours_main {
    padding: 40px 0;
  }
}

@media (max-width: 768px) {
  /* ===== RESPONSIVE ===== */
  .sprinv2_airprt,
  .sprinv2wrks {
    padding: 60px 15px;
  }
  .coverage-header h2 {
    font-size: 36px;
  }
  .how-it-works-header h2 {
    font-size: 36px;
  }
  .airport-card {
    padding: 20px 15px;
  }
  .airport-code {
    font-size: 24px;
  }
  .steps-container {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .step-card {
    padding: 30px 20px;
  }
  /* ===== RESPONSIVE ===== */
  .corporate-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .corporate-content h2 {
    font-size: 36px;
  }
  .corporate-image {
    order: -1;
  }
  .benefits-header {
    text-align: center;
  }
  .benefits-header h2 {
    font-size: 36px;
  }
  .services-header h2 {
    font-size: 36px;
  }
  .airprtcard-grid {
    grid-template-columns: 1fr;
  }
  .airprtcard-item {
    flex-direction: column;
    text-align: center;
  }
  .airprtcard-icon {
    margin: 0 auto;
  }
  .services-grid {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
  .corporate-buttons {
    flex-direction: column;
  }
  .corp-btn {
    justify-content: center;
  }
  .benefits-stats {
    grid-template-columns: 1fr;
  }
  /* Responsive Design */
  .corporate_singcard__heading {
    font-size: 36px;
  }
  .corporate_singcard__subheading {
    font-size: 15px;
  }
  .corporate_singcard {
    padding: 30px !important;
  }
  /* ===== RESPONSIVE ===== */
  .metro-header h2 {
    font-size: 36px;
  }
  .intercity-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .intercity-content h2 {
    font-size: 36px;
  }
  .operations-header h2 {
    font-size: 36px;
  }
  .advantages-header h2 {
    font-size: 36px;
  }
  .metro-tabs {
    flex-wrap: wrap;
  }
  .intercity-image {
    order: -1;
  }
  /* ===== RESPONSIVE ===== */
  .aerodrome-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .aerodrome-content h2 {
    font-size: 36px;
  }
  .aerodrome-image {
    order: -1;
  }
  .prince-header {
    flex-direction: column;
    gap: 30px;
  }
  .prince-header-left h2 {
    font-size: 36px;
  }
  .prince-fleet-notice {
    text-align: left;
  }
  .prince-grid {
    grid-template-columns: 1fr;
  }
  /* ===== RESPONSIVE ===== */
  .advantages-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .advantages-left {
    padding-right: 0;
  }
  .advantages-right {
    padding-left: 0;
    grid-template-columns: 1fr 1fr;
  }
  .metric-card:nth-child(1) {
    grid-column: span 2;
  }
  .advantages-header h2 {
    font-size: 36px;
  }
  /* ===== RESPONSIVE ===== */
  .blog-main-header {
    flex-direction: column;
    gap: 20px;
  }
  .blog-main-title h2 {
    font-size: 36px;
  }
  .blog-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
  .blog-pagination {
    flex-wrap: wrap;
  }
  .blog-single-container {
    padding: 30px 0;
  }
  .blog-title {
    font-size: 32px;
  }
  .blog-section-title {
    font-size: 26px;
  }
  .cta-buttons {
    flex-direction: column;
  }
  .cta-btn {
    width: 100%;
  }
  .fleet-comparison {
    grid-template-columns: 1fr;
  }
  .tours-header h1 {
    font-size: 32px;
  }
  .tours-tabs {
    gap: 10px;
  }
  .tours-tab-btn {
    padding: 10px 16px;
    font-size: 11px;
  }
  .historic-info-boxes {
    grid-template-columns: 1fr;
  }
  .historic-info-box:nth-child(5) {
    grid-column: 1;
  }
  .page-title {
    font-size: 32px;
  }
  .section-heading {
    font-size: 20px;
  }
  .gallery {
    grid-template-columns: 1fr;
  }
  .tours-header p {
    width: 100%;
  }
  .scroll_body {
    overflow: hidden;
    overflow-x: scroll;
    width: 700px;
  }
  .tour-card-cta {
    font-size: 10px;
  }
}

@media (max-width: 767px) {
  .fleet-title {
    font-size: 28px;
  }
  .fleet-heading-row {
    align-items: flex-start;
  }
  .fleet-tabs {
    width: 100%;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 6px;
  }
  .feature-grid {
    grid-template-columns: 1fr;
  }
  .amenities-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .hero {
    min-height: auto;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .hero-inner {
    padding-top: 90px;
  }
  .hero-title {
    font-size: 34px;
  }
  .hero-sub {
    max-width: 100%;
  }
  .section-white,
  .section-gray,
  .section-dark {
    padding: 60px 0;
  }
  .section-title-center {
    font-size: 26px;
  }
  .comfort-heading,
  .luxury-heading,
  .why-book-title,
  .cta-book h2,
  .amenities-title {
    font-size: 26px;
  }
  .stats-item {
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
  .stats-item span {
    text-align: center;
  }
  .stats-item .num {
    font-size: 12px;
  }
  .cta-list {
    columns: 2;
  }
  .feature-cell,
  .offer-cell {
    border-right: none;
  }
  .why-book-stats {
    gap: 30px;
    flex-wrap: wrap;
  }
  .testi-stats-box {
    flex-wrap: wrap;
    justify-content: center;
  }
  .section-white,
  .section-gray,
  .section-dark {
    padding: 30px 0;
  }
  .contact-section-new {
    padding: 30px 0;
  }
  .homenew-h2 {
    font-size: 26px;
  }
  .homenew-h3 {
    font-size: 21px;
  }
  .homenew-book-img {
    height: 150px;
  }
  .homenew-video-bg {
    padding: 70px 0;
  }
  .homenew-badge-100 {
    left: 12px;
    bottom: 12px;
    padding: 12px 16px;
  }
  .homenew-badge-100 strong {
    font-size: 20px;
  }
  .homenew-city-pill {
    font-size: 13px;
    padding: 8px 16px;
  }
  .homenew-occasions {
    padding-top: 0 !important;
  }
  .v2banner .hero_ctbdge {
    padding-top: 40px;
  }
  .fleetnew-h1 {
    font-size: 30px;
  }
  .fleetnew-h2 {
    font-size: 24px;
  }
  .fleetnew-table {
    font-size: 13px;
  }
  .fleetnew-occasion-panel {
    padding: 32px 16px;
  }
  .fleetnew-occasion-icon {
    font-size: 24px;
  }
  .fleetnew-why-grid {
    border-top: none;
    border-left: none;
  }
  .fleetnew-why-cell {
    border-left: 1px solid var(--line-dark);
  }
  .testinew-h2 {
    font-size: 26px;
  }
  .testinew-stats {
    flex-direction: row;
    gap: 14px;
  }
  .testinew-stat {
    border-right: none;
    border-bottom: 1px solid var(--line-dark);
    padding-bottom: 14px;
    width: 100%;
    height: 100px;
  }
  .testinew-stat:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .testinew-slider .slick-prev,
  .testinew-slider .slick-next {
    display: none !important;
  }
  .fleetcardnew-h2 {
    font-size: 26px;
  }
  .fleetcardnew-img img {
    height: 180px;
  }
  .fleetcardnew-slider .slick-prev,
  .fleetcardnew-slider .slick-next {
    display: none !important;
  }
  .ctanew-section {
    padding: 64px 0;
  }
  .ctanew-h2 {
    font-size: 30px;
  }
  .svcnew-highlight-wrap {
    margin-top: -20px;
    margin-bottom: 0;
  }
  .svcnew-intro {
    padding-top: 50px;
  }
  .svcnew-h1 {
    font-size: 24px;
  }
  .svcnew-h2 {
    font-size: 24px;
  }
  .svcnew-highlight-item {
    font-size: 11px;
  }
  .svcnew-highlight-item i {
    display: block;
    margin: 0 0 6px;
  }
  .bookstepnew-h2 {
    font-size: 24px;
  }
  .luxfeatnew-h2 {
    font-size: 26px;
  }
  .luxfeatnew-body-text {
    max-width: 100%;
  }
  .luxfeatnew-card {
    padding: 20px;
  }
  .comparenew-h2,
  .whyhcdnew-h2 {
    font-size: 24px;
  }
  .occasionnew-h2 {
    font-size: 22px;
  }
  .comparenew-table {
    font-size: 13px;
  }
  .comparenew-table tbody td {
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .comparenew-vehicle {
    min-width: 160px;
  }
  .whyhcdnew-grid {
    border-top: none;
    border-left: none;
  }
  .whyhcdnew-cell {
    border-left: 1px solid var(--line-dark);
  }
  .occasionnew-panel {
    padding: 20px 10px;
  }
  .occasionnew-item {
    padding: 20px 8px;
  }
  .occasionnew-item i {
    font-size: 24px;
  }
  .success-card{
    padding-top: 100px;
  }
}

@media (max-width: 600px) {
  .corporate_singcard__heading {
    font-size: 28px;
    letter-spacing: -0.3px;
  }
  .corporate_singcard__subheading {
    font-size: 14px;
    margin-bottom: 30px;
  }
  .corporate_singcard__stat-value {
    font-size: 24px;
  }
  .corporate_singcard__stat-label {
    font-size: 10px;
  }
  .corporate_singcard__stats {
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  .corporate_singcard__btn {
    max-width: 100%;
    padding: 14px 40px;
    font-size: 12px;
  }
  .corporate_singcard__icon {
    width: 70px;
    height: 70px;
    margin-bottom: 30px;
  }
  .corporate_singcard__icon svg {
    width: 35px;
    height: 35px;
  }
  .corporate_singcard {
    padding: 25px !important;
  }
}

@media (max-width: 576px) {
  .historic-sidebar {
    position: static;
    margin-top: 30px;
  }
}

@media (max-width: 575.98px) {
  .itinerary {
    padding: 3rem 0 3.5rem;
  }
  .tl-row {
    padding-left: 56px;
  }
  .timeline::before {
    left: 19px;
  }
  .tl-node {
    width: 38px;
    height: 38px;
    font-size: 0.9rem;
  }
  .tl-progress {
    left: 19px;
  }
}

@media (max-width: 575px) {
  .amenities-grid {
    grid-template-columns: 1fr;
  }
  .hero-inner {
    padding: 95px 30px 30px;
  }
  .hero-title {
    font-size: 28px;
  }
  .hero-contact-row {
    flex-direction: column;
  }
  .hero-contact-card {
    width: 100%;
  }
  .homenew-mini-card-img img {
    height: 160px;
  }
  .homenew-feature-card,
  .homenew-feature-list-card {
    padding: 22px 18px;
  }
  .abtnew-h1 {
    font-size: 26px;
  }
  .abtnew-h2 {
    font-size: 24px;
  }
  .abtnew-mv-card,
  .abtnew-team-card {
    padding: 22px;
  }
  .abtnew-badge-driver {
    left: 10px;
    bottom: -14px;
    padding: 8px 14px;
    font-size: 12px;
  }
  .faqnew-panel {
    padding: 18px;
  }
  .faqnew-panel-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }
  .abtnew-h1 {
    font-size: 26px;
  }
  .abtnew-h2 {
    font-size: 24px;
  }
  .abtnew-mv-card,
  .abtnew-team-card {
    padding: 22px;
  }
  .abtnew-badge-driver {
    left: 10px;
    bottom: -14px;
    padding: 8px 14px;
    font-size: 12px;
  }
  .testinew-card {
    padding: 15px;
  }
  .testinew-author {
    flex-direction: column;
    justify-content: center;
  }
  .testinew-location {
    margin-left: 0;
    text-align: center;
  }
  .testinew-author strong {
    text-align: center;
  }
  .testinew-author small {
    text-align: center;
  }
  .testinew-slider .slick-slide {
    margin: 0;
  }
  .testinew-slider .slick-track {
    padding-top: 0;
  }
  .testinew-stat {
    border-bottom: 0;
  }
  .abtnew-intro-img-wrap {
    position: relative;
    margin-right: 0;
  }
  
}

@media (max-width: 480px) {
  .coverage-header h2 {
    font-size: 28px;
  }
  .how-it-works-header h2 {
    font-size: 28px;
  }
  .sprinv2_airprt,
  .sprinv2wrks {
    padding: 40px 10px;
  }
  .coverage-header {
    margin-bottom: 40px;
  }
  .how-it-works-header {
    margin-bottom: 40px;
  }
  .airport-card {
    padding: 15px 10px;
  }
  .step-card {
    padding: 25px 15px;
  }
  .step-number {
    width: 45px;
    height: 45px;
    font-size: 20px;
  }
  .step-title {
    font-size: 18px;
  }
  .sprinv2_airprtcard,
  .sprinv2_corporate,
  .sprinv2_services,
  .sprinv2_benefits {
    padding: 40px 15px;
  }
  .airprtcard-item {
    padding: 20px;
    flex-direction: column;
    text-align: center;
  }
  .airprtcard-icon {
    margin: 0 auto 15px;
  }
  .airprtcard-title {
    font-size: 14px;
  }
  .airprtcard-text {
    font-size: 13px;
  }
  .corporate-content h2 {
    font-size: 28px;
  }
  .services-header h2 {
    font-size: 28px;
  }
  .benefits-header h2 {
    font-size: 28px;
  }
  .services-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  .service-card {
    padding: 20px 15px;
  }
  .benefits-list {
    grid-template-columns: 1fr;
  }
  .benefits-card {
    padding: 25px 20px;
  }
  .stat-value {
    font-size: 22px;
  }
  .benefits-header {
    text-align: left;
  }
  .sprinv2_metro,
  .sprinv2_intercity,
  .sprinv2_operations,
  .sprinv2_advantages {
    padding: 40px 15px;
  }
  .metro-header h2 {
    font-size: 28px;
  }
  .metro-grid {
    grid-template-columns: 1fr;
  }
  .intercity-content h2 {
    font-size: 28px;
  }
  .operations-header h2 {
    font-size: 28px;
  }
  .advantages-header h2 {
    font-size: 28px;
  }
  .operations-grid {
    grid-template-columns: 1fr;
  }
  .advantages-grid {
    grid-template-columns: 1fr;
  }
  .metro-card {
    padding: 20px;
  }
  .advantage-value {
    font-size: 28px;
  }
  .sprinv2_aerodrome,
  .sprinv2_prince_grid {
    padding: 40px 15px;
  }
  .aerodrome-content h2 {
    font-size: 28px;
  }
  .prince-header-left h2 {
    font-size: 28px;
  }
  .prince-card {
    padding: 20px;
  }
  .aerodrome-hubs {
    gap: 12px;
  }
  .hub-item {
    padding: 15px;
  }
  .sprinv2_advantages {
    padding: 40px 15px;
  }
  .advantages-header h2 {
    font-size: 28px;
  }
  .advantages-right {
    grid-template-columns: 1fr;
  }
  .metric-card:nth-child(1) {
    grid-column: span 1;
  }
  .metric-value {
    font-size: 36px;
  }
  .metric-card:nth-child(1) .metric-value {
    font-size: 42px;
  }
  .feature-item {
    gap: 12px;
  }
  .feature-icon {
    width: 45px;
    height: 45px;
    font-size: 18px;
  }
  .feature-content h3 {
    font-size: 15px;
  }
  .sprinv2_blog_main {
    padding: 40px 15px;
  }
  .blog-main-title h2 {
    font-size: 28px;
  }
  .blog-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .blog-card-content {
    padding: 20px;
  }
  .blog-card-image {
    height: 200px;
  }
  .pagination-number {
    width: 35px;
    height: 35px;
    font-size: 12px;
  }
  .pagination-btn {
    font-size: 11px;
    padding: 6px 10px;
  }
}

@media (max-width: 400px) {
  .corporate_singcard__heading {
    font-size: 24px;
  }
  .corporate_singcard__subheading {
    font-size: 13px;
  }
  .corporate_singcard__stat-value {
    font-size: 20px;
    margin-bottom: 5px;
  }
  .corporate_singcard__stat-label {
    font-size: 9px;
    letter-spacing: 1px;
  }
}

@media (max-width: 379.98px) {
  /* Very narrow phones: stack paired fields */
  .cq-card {
    padding: 1.25rem 1rem 1rem;
  }
  .cq-card .pair > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .cq-head {
    flex-direction: column;
    gap: 0.5rem;
  }
  .cq-title {
    font-size: 1.45rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  /* ---------- Respect users who prefer reduced motion ---------- */
  .homenew-feature-card,
  .homenew-mini-card,
  .homenew-feature-list-card,
  .fleetnew-amenity-card,
  .abtnew-mv-card,
  .abtnew-value-card,
  .abtnew-apart-card,
  .abtnew-serve-card,
  .abtnew-airports-card,
  .abtnew-timeline-card,
  .svcnew-service-card,
  .svcnew-airport-card,
  .svcnew-mini-feature,
  .fleetcardnew-card,
  .faqnew-category,
  .faqnew-still-card,
  .abtnew-team-card,
  .abtnew-trust-card,
  .testinew-card,
  .fleetnew-why-cell,
  .fleetcardnew-img img,
  .homenew-icon-circle,
  .svcnew-icon-box,
  .abtnew-icon-box,
  .fleetnew-emoji,
  .homenew-btn-gold,
  .fleetnew-btn-gold,
  .faqnew-btn-outline,
  .ctanew-btn-gold,
  .ctanew-btn-outline,
  .fleetcardnew-btn,
  .abtnew-btn-dark,
  .abtnew-btn-outline {
    transition: none !important;
    transform: none !important;
  }
  .bookstepnew-box,
  .luxfeatnew-card,
  .luxfeatnew-btn {
    transition: none !important;
    transform: none !important;
  }
  .comparenew-table tbody tr,
  .comparenew-book i,
  .whyhcdnew-cell,
  .whyhcdnew-icon,
  .occasionnew-item,
  .occasionnew-item i,
  .occasionnew-item p {
    transition: none !important;
    transform: none !important;
  }
  /* Respect reduced-motion settings */
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
  }
  .tl-node {
    transform: none;
  }
}


.unknowlist li{
      color: var(--blue-75);
}
.unknowlist.blacktext li{
      color: #000;
}

.hero.fleet_hero::after{
  background: linear-gradient(270deg, rgba(var(--black-rgb), 0) 0%, var(--black-pure) 90.9%);
}
.hero.fleet_hero .bannercp{
  z-index: 1;
}