/*
 * PEAK CAR VIP — Grand Hotel theme
 * Design language: warm black, rose gold and soft ivory.
 * This file is the final visual layer and must load after page-specific CSS.
 */
@font-face {
  font-family: "linea-icons";
  src: url("../fonts/linea-icons.woff?version=1") format("woff");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "ElegantIcons";
  src: url("../fonts/ElegantIcons.woff?version=1") format("woff");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "FontAwesome";
  src: url("../fonts/fontawesome-webfont.woff?version=4.2.0-peakcarvip") format("woff");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "Glyphicons Halflings";
  src: url("../fonts/glyphicons-halflings-regular.woff2?version=1") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

:root {
  --pcv-ink: #171311;
  --pcv-ink-soft: #211b18;
  --pcv-ink-raised: #29211e;
  --pcv-ivory: #fff8f3;
  --pcv-ivory-muted: #d4c8c2;
  --pcv-gold: #c98f7a;
  --pcv-gold-bright: #e2ae9b;
  --pcv-gold-deep: #9b6252;
  --pcv-gold-line: rgba(201, 143, 122, .42);
  --pcv-glass: rgba(23, 19, 17, .95);
  --pcv-shadow: 0 24px 70px rgba(0, 0, 0, .38);
  --pcv-serif: "Bodoni Moda", "Times New Roman", serif;
  --pcv-sans: "Open Sans", Arial, sans-serif;
}

html {
  background: var(--pcv-ink);
  color-scheme: dark;
}

body,
#wrap,
.grey-bg,
.page-section,
.main-content,
#main-content {
  background-color: var(--pcv-ink);
  color: var(--pcv-ivory);
  font-family: var(--pcv-sans);
}

body {
  background-image:
    radial-gradient(circle at 18% 4%, rgba(201, 143, 122, .11), transparent 27rem),
    linear-gradient(180deg, #1b1513 0%, #120f0e 100%);
}

::selection {
  background: var(--pcv-gold);
  color: #080808;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6,
.section-title {
  color: var(--pcv-ivory) !important;
  font-family: var(--pcv-serif) !important;
  font-weight: 500;
  letter-spacing: .025em;
}

p,
li,
address,
.footer-2-text-cont {
  color: var(--pcv-ivory-muted);
}

a,
a:visited {
  color: var(--pcv-gold-bright);
  transition: color .2s ease, opacity .2s ease, border-color .2s ease;
}

a:hover,
a:focus {
  color: #f1ddb0;
}

/* Header and navigation */
.header,
.header-wrapper,
.main-menu-container,
.navbar-default {
  background: rgba(8, 8, 9, .96) !important;
  border-color: var(--pcv-gold-line) !important;
}

.header {
  border-bottom: 1px solid var(--pcv-gold-line) !important;
  box-shadow: 0 12px 36px rgba(0, 0, 0, .28);
}

.header-wrapper {
  background-image: linear-gradient(90deg, rgba(201, 143, 122, .055), transparent 35%, rgba(201, 143, 122, .035)) !important;
}

.logo-container-2 {
  display: flex !important;
  align-items: center;
}

.logo-img,
.logo-container-2 .logo-img {
  display: inline-block;
  background: none !important;
  color: #d9a18f !important;
  -webkit-text-fill-color: #d9a18f;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1.15;
  text-shadow: 0 1px 0 #000, 0 3px 18px rgba(217, 184, 108, .16);
}

.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:visited,
.main-menu-title {
  color: #d8d0c3 !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .active > a {
  background: transparent !important;
  color: var(--pcv-gold-bright) !important;
}

.navbar-default .navbar-nav > li > a::after {
  display: block;
  width: 0;
  height: 1px;
  margin-top: 5px;
  background: linear-gradient(90deg, transparent, var(--pcv-gold), transparent);
  content: "";
  transition: width .24s ease;
}

.navbar-default .navbar-nav > li > a:hover::after,
.navbar-default .navbar-nav > li > a:focus::after {
  width: 100%;
}

.menu-sub-container,
.dropdown-menu,
.navbar-nav .sub {
  background: #201a18 !important;
  border: 1px solid var(--pcv-gold-line) !important;
  box-shadow: var(--pcv-shadow) !important;
}

.menu-sub-container,
.navbar-nav .sub {
  border-top: 0 !important;
}

.menu-sub-container {
  border: 0 !important;
}

@media (min-width: 1025px) {
  #main-menu .megamenu > .sub {
    right: 30px;
    left: auto;
    width: min(920px, calc(100vw - 60px));
  }

  #main-menu .megamenu > .sub > li > .menu-sub-container {
    display: flex;
    align-items: flex-start;
    padding: 0 20px 24px;
  }

  #main-menu .megamenu-service > .sub .box {
    width: 50%;
  }

  #main-menu .megamenu-rates > .sub .box {
    width: 33.333333%;
  }
}

.menu-sub-container .title,
.dropdown-menu > li > a,
.navbar-nav .sub a {
  color: #ebe1dc !important;
}

.dropdown-menu > li > a:hover,
.navbar-nav .sub a:hover {
  background: rgba(201, 143, 122, .1) !important;
  color: var(--pcv-gold-bright) !important;
}

#currencyDropdown2 > li[data-currency] {
  display: flex;
  align-items: center;
  min-height: 30px;
  margin: 1px 0;
  padding: 2px 8px;
  border-radius: 2px;
  color: #ebe1dc;
  outline: 0;
  transition: background-color .16s ease, color .16s ease, box-shadow .16s ease;
}

#currencyDropdown2 > li[data-currency]:hover,
#currencyDropdown2 > li[data-currency]:focus-visible {
  background: linear-gradient(90deg, rgba(201, 143, 122, .24), rgba(201, 143, 122, .1)) !important;
  color: #fff8e8 !important;
  box-shadow: inset 3px 0 0 var(--pcv-gold);
}

#currencyDropdown2 > li[data-currency].is-selected {
  background: rgba(201, 143, 122, .13) !important;
  color: var(--pcv-gold-bright) !important;
}

#currencyDropdown2 > li[data-currency] img {
  margin-right: 7px;
}

.navbar-toggle.btn-navbar {
  width: auto;
  height: auto;
  margin-top: 17px;
  padding: 8px 0 8px 16px !important;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--pcv-gold-bright) !important;
}

.navbar-toggle.btn-navbar:hover,
.navbar-toggle.btn-navbar:focus,
.navbar-toggle.btn-navbar:focus-visible {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f0c4b4 !important;
}

.hamb-mob-icon::before {
  color: var(--pcv-gold-bright) !important;
  content: "☰" !important;
  font-family: Arial, sans-serif !important;
  font-size: 23px;
  line-height: 1;
}

/* Homepage booking stage */
.bg-google-maps {
  background:
    linear-gradient(90deg, rgba(5, 5, 6, .28), rgba(5, 5, 6, .02)),
    var(--pcv-ink);
}

.booking-area {
  max-width: 1440px !important;
  padding: 132px 28px 48px !important;
}

.booking-card {
  width: min(100%, 980px);
  margin: 0 auto;
  padding: 28px 30px 30px !important;
  overflow: visible;
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 2px;
  background:
    linear-gradient(145deg, #29251f 0%, #2b211e 48%, #141311 100%) !important;
  color: var(--pcv-ivory);
  box-shadow: var(--pcv-shadow), inset 0 1px 0 rgba(255, 255, 255, .035) !important;
}

.booking-card::before {
  display: block;
  width: 72px;
  height: 1px;
  margin: -1px 0 24px;
  background: linear-gradient(90deg, var(--pcv-gold), transparent);
  content: "";
}

.booking-card > .row:first-of-type > .col-lg-7 {
  display: none;
}

.booking-card > .row:first-of-type > .col-lg-5 {
  float: none;
  width: 100%;
}

.booking-card .section-title {
  margin-bottom: 8px;
  color: #fffaf0 !important;
  font-family: var(--pcv-sans) !important;
  font-size: clamp(26px, 2.7vw, 36px);
  font-weight: 500;
  line-height: 1.28;
  letter-spacing: -.025em;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .38);
}

.booking-card .mb-20 {
  margin-bottom: 24px !important;
}

.transfer-mode-cell .btn-group {
  display: flex;
  align-items: stretch;
  height: 42px;
  padding: 2px;
  border: 1px solid var(--pcv-gold-line);
  border-radius: 2px;
  background: #15110f;
}

.transfer-mode-cell .btn-group .btn,
#btn-language,
#btn-currency {
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: 1px !important;
  background: transparent !important;
  color: #eee6d8 !important;
  box-shadow: none !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.transfer-mode-cell .btn-group .btn {
  display: flex !important;
  height: 36px;
  min-height: 36px;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1.1 !important;
  text-align: center;
}

.transfer-mode-cell .btn-group .btn.active {
  background: linear-gradient(135deg, #e0aa99, #9b6252) !important;
  color: #090909 !important;
  font-weight: 700;
  box-shadow: 0 4px 16px rgba(201, 143, 122, .18) !important;
}

.transfer-mode-cell .btn-group .btn:focus,
.transfer-mode-cell .btn-group .btn:active {
  outline: 0 !important;
}

.transfer-mode-cell .btn-group .btn:focus-visible {
  outline: 1px solid rgba(232, 204, 142, .8) !important;
  outline-offset: -2px;
}

.transfer-utility-cell {
  width: 66px !important;
}

#btn-language,
#btn-currency {
  display: flex !important;
  width: 100%;
  height: 42px;
  min-height: 42px;
  padding: 0 10px !important;
  border: 1px solid var(--pcv-gold-line) !important;
  background: rgba(201, 143, 122, .045) !important;
  line-height: 1.1 !important;
  text-align: center;
}

.booking-card .form-group {
  margin-bottom: 18px;
}

.booking-card .col-form-label,
.booking-card label i,
.booking-card .fa-lg {
  color: var(--pcv-gold) !important;
}

.form-control,
select,
textarea,
.booking-card input[type="text"],
.booking-card input[type="email"],
.booking-card input[type="tel"] {
  border: 1px solid rgba(201, 143, 122, .28) !important;
  border-radius: 1px !important;
  background: #1a1816 !important;
  color: #fffaf0 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
}

.booking-card .form-control {
  min-height: 46px !important;
  padding: 10px 14px;
  font-size: 16px;
  font-weight: 500;
}

.form-control::placeholder,
textarea::placeholder,
input::placeholder {
  color: #ded6ca !important;
  opacity: 1;
}

.form-control:focus,
select:focus,
textarea:focus,
input:focus {
  border-color: var(--pcv-gold) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(201, 143, 122, .11) !important;
}

.pac-container {
  border: 1px solid var(--pcv-gold-line) !important;
  background: #121213 !important;
  box-shadow: var(--pcv-shadow) !important;
}

.pac-container .pac-item,
.pac-container .item-main_text,
.pac-container .item-secondary_text {
  color: #d8d0c4 !important;
}

.pac-container .pac-item:hover,
.pac-container .pac-item[aria-selected="true"] {
  background: rgba(201, 143, 122, .1) !important;
}

.btn,
.button,
input[type="submit"],
input[type="button"] {
  border-color: var(--pcv-gold-line) !important;
}

.btn-primary,
.button.btn-primary,
input[type="submit"] {
  min-height: 46px;
  border: 1px solid var(--pcv-gold) !important;
  border-radius: 1px !important;
  background: linear-gradient(135deg, #e0aa99 0%, #a86d5d 100%) !important;
  color: #0a0a0a !important;
  box-shadow: 0 8px 24px rgba(201, 143, 122, .17) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.btn-primary:hover,
.btn-primary:focus,
.button.btn-primary:hover,
.button.btn-primary:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
  border-color: var(--pcv-gold-bright) !important;
  background: linear-gradient(135deg, #f1cabc 0%, #b57b6b 100%) !important;
  color: #080808 !important;
}

.transfer-search-next.transfer-search-next-disabled,
.transfer-search-next.transfer-search-next-disabled:hover,
.transfer-search-next.transfer-search-next-disabled:focus {
  border-color: rgba(201, 143, 122, .2) !important;
  background: #1b1715 !important;
  color: #b8b1a7 !important;
  box-shadow: none !important;
}

.booking-area > .transfer-search-actions {
  width: min(100%, 980px);
  margin: 18px auto 0;
}

#booking-button-pc.transfer-booking-actions--search {
  width: 100%;
  margin: 0 !important;
}

#booking-button-pc.transfer-booking-actions--search > .col-sm-6:first-child,
#booking-button-pc.transfer-booking-actions--selection > .col-sm-6:first-child {
  display: none;
}

#booking-button-pc.transfer-booking-actions--search > .col-sm-6:last-child,
#booking-button-pc.transfer-booking-actions--selection > .col-sm-6:last-child {
  float: none;
  width: 100%;
  padding: 0;
}

#booking-button-pc .button {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
}

#booking-button-pc.transfer-booking-actions--search .button {
  width: 100%;
}

#booking-button-pc.transfer-booking-actions--selection {
  display: block;
  width: min(100%, 980px);
  margin: 18px auto 0 !important;
}

#booking-button-pc.transfer-booking-actions--selection > .col-sm-6:last-child {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 12px;
}

#booking-button-pc.transfer-booking-actions--selection .button {
  width: 100%;
  height: 52px;
  min-height: 52px;
  margin: 0 !important;
  padding: 0 20px !important;
  line-height: 50px !important;
}

#booking-button-pc.transfer-booking-actions--selection [data-submit-form="form-reset2"] {
  grid-column: 1;
  grid-row: 1;
  border: 1px solid var(--pcv-gold-line) !important;
  background: #312420 !important;
  color: #e8dfd1 !important;
  line-height: 50px !important;
  text-align: center;
  text-transform: uppercase;
}

#booking-button-pc.transfer-booking-actions--selection button {
  grid-column: 2;
  grid-row: 1;
}

.transfer-inline-add-location,
.transfer-remove-location {
  border-color: var(--pcv-gold-line) !important;
  background: #121213 !important;
  color: var(--pcv-gold-bright) !important;
}

.alert {
  border: 1px solid rgba(201, 143, 122, .3) !important;
  border-radius: 1px !important;
  background: #17150f !important;
  color: #e5d5ae !important;
}

/* Vehicle selection: quiet luxury cards with clear Thai/English hierarchy. */
.peakcarvip-vehicle-selection {
  background:
    radial-gradient(circle at 50% 0%, rgba(201, 143, 122, .07), transparent 32rem),
    linear-gradient(180deg, #15110f 0%, #110e0d 100%) !important;
}

.peakcarvip-vehicle-selection > .container {
  max-width: 1160px;
}

.peakcarvip-vehicle-selection .section-title {
  margin-bottom: 8px;
  padding: 10px 0 10px 22px;
  border-left: 2px solid var(--pcv-gold);
  color: #fffaf0 !important;
  font-family: var(--pcv-sans) !important;
  font-size: clamp(27px, 2.4vw, 36px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.02em;
}

.peakcarvip-vehicle-selection .sm-hide > [class*="col-"] {
  margin-bottom: 28px;
}

.peakcarvip-vehicle-selection .vehicle-class-subject {
  margin: 0;
  padding: 14px 17px;
  border: 1px solid var(--pcv-gold-line) !important;
  border-bottom-color: rgba(201, 143, 122, .2) !important;
  border-radius: 2px 2px 0 0;
  background:
    linear-gradient(90deg, rgba(201, 143, 122, .12), transparent 68%),
    #1b1917 !important;
  color: var(--pcv-gold-bright) !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .015em;
}

.peakcarvip-vehicle-selection table.vehicle-class,
.peakcarvip-vehicle-selection table.travel-class {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border: 1px solid var(--pcv-gold-line) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-collapse: collapse;
  table-layout: fixed;
  background: #121213 !important;
  color: var(--pcv-ivory) !important;
}

.peakcarvip-vehicle-selection table.vehicle-class td,
.peakcarvip-vehicle-selection table.travel-class td {
  padding: 9px 11px !important;
  border: 1px solid rgba(201, 143, 122, .17) !important;
  background: #241d1b !important;
  color: var(--pcv-ivory) !important;
  font-size: 13px;
  line-height: 1.35;
  vertical-align: middle;
}

.peakcarvip-vehicle-selection table.vehicle-class tr:nth-child(even) td,
.peakcarvip-vehicle-selection table.travel-class tr:nth-child(even) td {
  background: #2a211e !important;
}

.peakcarvip-vehicle-selection table.vehicle-class td.capacity,
.peakcarvip-vehicle-selection table.travel-class td.capacity {
  width: 36% !important;
  min-width: 0 !important;
  color: #dec3ba !important;
  font-weight: 600;
  text-align: right;
  vertical-align: middle !important;
  overflow-wrap: anywhere;
}

.peakcarvip-vehicle-selection table.vehicle-class td.plan,
.peakcarvip-vehicle-selection table.travel-class td.plan {
  color: #f3eee6 !important;
  font-weight: 500;
  overflow-wrap: anywhere;
}

.peakcarvip-vehicle-selection table.vehicle-class td i,
.peakcarvip-vehicle-selection table.travel-class td i {
  background: none !important;
  color: var(--pcv-gold-bright) !important;
  text-shadow: none !important;
}

.peakcarvip-vehicle-selection table.vehicle-class td.image,
.peakcarvip-vehicle-selection table.travel-class td.image {
  padding: 0 !important;
  border-color: var(--pcv-gold-line) !important;
  background: #0d0d0e !important;
}

.peakcarvip-vehicle-selection table.vehicle-class td.image img,
.peakcarvip-vehicle-selection table.travel-class td.image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  filter: saturate(.84) contrast(1.03);
  transition: filter .25s ease, transform .35s ease;
}

.peakcarvip-vehicle-selection table.vehicle-class td.image a:hover img,
.peakcarvip-vehicle-selection table.travel-class td.image a:hover img {
  filter: saturate(.96) contrast(1.06);
  transform: scale(1.015);
}

.peakcarvip-vehicle-selection .vehicle-class-footer {
  margin: 0 !important;
  padding: 8px !important;
  border: 1px solid var(--pcv-gold-line) !important;
  border-top-color: rgba(201, 143, 122, .2) !important;
  border-radius: 0 0 2px 2px;
  background: #201a18 !important;
}

.peakcarvip-vehicle-selection .vehicle-class-footer .button,
.peakcarvip-vehicle-selection table.vehicle-tag .button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  margin: 0 !important;
  padding: 11px 14px !important;
  border: 1px solid var(--pcv-gold) !important;
  background: linear-gradient(135deg, #dfaa98 0%, #9b6252 100%) !important;
  color: #090909 !important;
  box-shadow: 0 8px 22px rgba(201, 143, 122, .14) !important;
  font-size: 13px;
  font-weight: 800 !important;
  line-height: 1.25;
  letter-spacing: .13em;
  text-shadow: none !important;
  cursor: pointer;
}

.peakcarvip-vehicle-selection .vehicle-class-footer .button:hover,
.peakcarvip-vehicle-selection .vehicle-class-footer .button:focus,
.peakcarvip-vehicle-selection table.vehicle-tag .button:hover,
.peakcarvip-vehicle-selection table.vehicle-tag .button:focus {
  border-color: var(--pcv-gold-bright) !important;
  background: linear-gradient(135deg, #f2c6b7 0%, #b97868 100%) !important;
  color: #080808 !important;
  box-shadow: 0 10px 28px rgba(201, 143, 122, .23) !important;
}

.peakcarvip-vehicle-selection .vehicle-class-footer .button:focus-visible,
.peakcarvip-vehicle-selection table.vehicle-tag .button:focus-visible {
  outline: 2px solid var(--pcv-gold-bright) !important;
  outline-offset: 2px;
}

.peakcarvip-vehicle-selection .btn-default {
  min-width: 130px;
  padding: 11px 18px;
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 1px;
  background: #2a211e !important;
  color: #e9e1d5 !important;
  font-weight: 600;
}

.peakcarvip-vehicle-selection .btn-default:hover,
.peakcarvip-vehicle-selection .btn-default:focus {
  border-color: var(--pcv-gold) !important;
  background: #312420 !important;
  color: var(--pcv-gold-bright) !important;
}

.peakcarvip-vehicle-selection table.vehicle-tag {
  border: 1px solid var(--pcv-gold-line) !important;
  background: #231c1a !important;
  color: var(--pcv-ivory) !important;
}

.peakcarvip-vehicle-selection table.vehicle-tag td {
  border: 0 !important;
  background: #231c1a !important;
  color: var(--pcv-ivory) !important;
}

.peakcarvip-vehicle-selection table.vehicle-tag:hover td {
  background: #30231f !important;
}

.peakcarvip-vehicle-selection table.vehicle-tag td.model b {
  color: var(--pcv-gold-bright);
}

@media (max-width: 767px) {
  .peakcarvip-vehicle-selection {
    padding-top: 74px !important;
    padding-bottom: 62px !important;
  }

  .peakcarvip-vehicle-selection .section-title {
    padding-left: 16px;
    font-size: 27px;
  }

  .peakcarvip-vehicle-selection table.vehicle-tag td.image {
    width: 86px;
  }

  .peakcarvip-vehicle-selection table.vehicle-tag td.rate {
    width: 116px;
  }

  .peakcarvip-vehicle-selection table.vehicle-tag .button {
    min-height: 46px;
    padding: 8px !important;
    font-size: 11px;
    letter-spacing: .06em;
  }
}

/* Ride-experience controls: match the Grand Hotel charcoal-and-gold theme. */
#transfer-preference-panel {
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 2px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(201, 143, 122, .09), transparent 21rem),
    linear-gradient(145deg, #2a211e 0%, #0e0e0f 100%) !important;
  color: var(--pcv-ivory) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .38) !important;
}

#transfer-preference-panel .transfer-preference-panel-title {
  color: var(--pcv-gold-bright) !important;
  font-family: var(--pcv-serif) !important;
  font-size: 15px !important;
  letter-spacing: .04em !important;
}

#transfer-preference-panel .transfer-preference-close {
  border: 1px solid transparent !important;
  color: var(--pcv-ivory-muted) !important;
}

#transfer-preference-panel .transfer-preference-close:hover,
#transfer-preference-panel .transfer-preference-close:focus {
  border-color: var(--pcv-gold-line) !important;
  background: rgba(201, 143, 122, .1) !important;
  color: var(--pcv-gold-bright) !important;
}

#transfer-preference-panel .transfer-preference-card,
#transfer-preference-panel .transfer-preference-card--speed,
#transfer-preference-panel .transfer-preference-card--temperature {
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 1px !important;
  background: linear-gradient(145deg, #2b211e 0%, #121213 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
}

#transfer-preference-panel .transfer-preference-card__icon,
#transfer-preference-panel .transfer-preference-card.is-adjusted .transfer-preference-card__icon {
  border-color: rgba(227, 202, 145, .68) !important;
  background: rgba(201, 143, 122, .08) !important;
  color: var(--pcv-gold-bright) !important;
}

#transfer-preference-panel .transfer-preference-card__copy small,
#transfer-preference-panel .transfer-preference-card.is-adjusted .transfer-preference-card__copy small {
  color: var(--pcv-ivory-muted) !important;
}

#transfer-preference-panel .transfer-preference-card__copy output,
#transfer-preference-panel .transfer-preference-card.is-adjusted .transfer-preference-card__copy output {
  color: var(--pcv-gold-bright) !important;
}

#transfer-preference-panel .transfer-preference-card input[type="range"],
#transfer-preference-panel .transfer-preference-card.is-adjusted input[type="range"] {
  accent-color: var(--pcv-gold) !important;
}

#transfer-preference-panel .transfer-preference-divider {
  background: var(--pcv-gold-line) !important;
}

#transfer-preference-panel .transfer-preference-inclusion strong {
  color: var(--pcv-gold-bright) !important;
}

#transfer-preference-panel .transfer-preference-inclusion__item,
#transfer-preference-panel .transfer-preference-inclusion__item > span {
  color: var(--pcv-ivory-muted) !important;
}

#transfer-preference-panel .transfer-preference-inclusion__item input[type="checkbox"] {
  accent-color: var(--pcv-gold) !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride,
.transfer-quiet-ride-line .transfer-quiet-ride__info {
  color: var(--pcv-ivory-muted) !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride__slider {
  border: 1px solid var(--pcv-gold-line) !important;
  background: #332724 !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride__slider::before {
  background: var(--pcv-ivory) !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride__switch input:checked + .transfer-quiet-ride__slider {
  background: var(--pcv-gold) !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride__switch input:focus-visible + .transfer-quiet-ride__slider {
  outline-color: var(--pcv-gold-bright) !important;
}

.transfer-quiet-ride-line .transfer-quiet-ride-separator {
  background: var(--pcv-gold-line) !important;
}

.transfer-quiet-ride-line .transfer-preference-toggle {
  color: var(--pcv-gold) !important;
}

.transfer-quiet-ride-line .transfer-preference-toggle:hover,
.transfer-quiet-ride-line .transfer-preference-toggle:focus,
.transfer-quiet-ride-line .transfer-preference-toggle[aria-expanded="true"] {
  color: var(--pcv-gold-bright) !important;
}

.transfer-map-cell {
  background: #09090a;
}

.transfer-map-stage,
.peakcarvip-map-placeholder {
  background-color: #15110f !important;
}

#map-canvas.map-ready {
  background-color: transparent !important;
}

.peakcarvip-map-placeholder {
  border-color: var(--pcv-gold-line) !important;
}

#map-canvas.transfer-map-focus-dim {
  filter: none !important;
}

#form-transfer-search #map-canvas,
#form-booking #map-canvas {
  filter: none !important;
}

/* Restore Google Maps attribution and native map details hidden by legacy CSS. */
#map-canvas .gm-style-cc,
#map-canvas .gmnoprint {
  display: block !important;
}

#map-canvas .gm-style img {
  max-width: none !important;
  max-height: none !important;
}

.peakcarvip-map-placeholder__note {
  border: 1px solid var(--pcv-gold-line);
  border-radius: 1px;
  background: rgba(8, 8, 9, .86) !important;
  color: var(--pcv-gold-bright) !important;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.transfer-map-zoom-control {
  border-color: var(--pcv-gold-line) !important;
  background: #201a18 !important;
}

.transfer-map-zoom-button {
  background: #201a18 !important;
  color: var(--pcv-gold-bright) !important;
}

/* General surfaces */
.panel,
.card,
.well,
.table {
  border-color: var(--pcv-gold-line) !important;
  background-color: var(--pcv-ink-raised) !important;
  color: var(--pcv-ivory);
}

.table > thead > tr > th,
.table > tbody > tr > td {
  border-color: rgba(201, 143, 122, .18) !important;
}

/* Footer */
.main-footer,
footer,
footer.page-section,
.footer2-black {
  position: relative;
  border-top: 1px solid var(--pcv-gold-line) !important;
  background:
    radial-gradient(circle at 50% 0, rgba(201, 143, 122, .08), transparent 30rem),
    #110e0d !important;
}

footer.page-section {
  padding-top: 68px !important;
  padding-bottom: 0 !important;
  font-size: 15px;
  line-height: 1.65;
}

footer.page-section::before {
  position: absolute;
  top: -1px;
  left: 50%;
  width: min(240px, 46vw);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, var(--pcv-gold-bright), transparent);
  content: "";
}

.logo-footer-cont {
  text-align: center;
}

.logo-footer-cont .logo-footer.brand-logo-image {
  width: 150px !important;
  height: auto !important;
  max-height: none;
  margin: 0 auto 12px;
  object-fit: contain;
  background: transparent !important;
  box-shadow: none !important;
}

.footer-brand-widget,
.footer-contact-widget,
.footer-service-widget,
.footer-about-widget {
  min-height: 0;
}

.footer-contact-widget {
  padding-top: 4px;
}

.footer-contact-widget .footer-2-text-cont {
  margin-bottom: 24px;
}

.footer-contact-widget address {
  margin-bottom: 0;
  font-style: normal;
  line-height: 1.65;
}

.logo-footer-cont .peakcarvip {
  margin-top: 14px;
  color: var(--pcv-gold-bright);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: .14em;
}

.logo-footer-cont .oesc {
  color: #aaa298;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
}

footer h4 {
  margin-bottom: 24px;
  color: var(--pcv-gold-bright) !important;
  font-family: var(--pcv-sans) !important;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

footer a,
footer .links-list a,
footer address,
footer .footer-2-text-cont {
  color: #e8dfda !important;
  font-size: 15px;
  font-weight: 500;
}

footer a:hover,
footer .links-list a:hover {
  color: var(--pcv-gold-bright) !important;
}

.footer-2-copy-cont {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  border-top: 1px solid rgba(201, 143, 122, .28) !important;
  background:
    linear-gradient(180deg, rgba(36, 27, 24, .78), rgba(20, 16, 14, .94)) !important;
}

.footer-2-copy-cont > .container,
.footer-2-copy-cont .left {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  float: none !important;
  text-align: center;
}

.footer-2-copy,
.footer-2-soc-a a {
  color: #d8c8c0 !important;
  letter-spacing: .08em;
}

footer p,
footer li,
footer address,
footer .footer-2-text-cont,
footer .widget a {
  color: #e8dfda !important;
}

footer .according dt,
footer .links-list li {
  margin-bottom: 7px;
}

/* Pointer/touch interactions should not leave a rectangular browser focus
   ring on menus. Keyboard users still receive the native :focus-visible ring. */
#main-menu a,
.dropdown-toggle,
.dropdown-menu a,
.according > dt > a,
.accordion > dt > a,
.toggle > dt > a {
  -webkit-tap-highlight-color: transparent;
}

#main-menu a:focus:not(:focus-visible),
.dropdown-toggle:focus:not(:focus-visible),
.dropdown-menu a:focus:not(:focus-visible),
.according > dt > a:focus:not(:focus-visible),
.accordion > dt > a:focus:not(:focus-visible),
.toggle > dt > a:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}

.footer-2-soc-a a:hover {
  color: var(--pcv-gold-bright) !important;
}

@media (min-width: 1025px) {
  #main-content:has(.bg-google-maps) {
    height: 100vh;
    min-height: 650px;
  }

  #main-content:has(.bg-google-maps) > .bg-google-maps,
  #main-content:has(.bg-google-maps) #map-canvas {
    height: 100% !important;
  }

  .booking-card {
    margin-right: auto;
    margin-left: auto;
  }

  .transfer-map-cell {
    height: 100%;
  }
}

@media (max-width: 1024px) {
  .booking-area {
    padding: 22px 10px 24px !important;
  }

  .booking-card {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 24px !important;
  }

  #map-canvas {
    border-top: 1px solid var(--pcv-gold-line);
  }

  #booking-button-mobile {
    padding: 16px 18px 0 !important;
  }
}

@media (max-width: 767px) {
  #booking-button-pc.transfer-booking-actions {
    display: none !important;
  }

  #booking-button-mobile.transfer-booking-actions {
    display: block !important;
  }

  .logo-img,
  .logo-container-2 .logo-img {
    font-size: 21px;
    letter-spacing: .12em;
    line-height: 1.15;
  }

  .header-wrapper {
    min-height: 76px;
  }

  .booking-area {
    padding: 14px 10px 18px !important;
  }

  .booking-card {
    padding: 21px 16px 23px !important;
  }

  .booking-card::before {
    margin-bottom: 18px;
  }

  .booking-card .section-title {
    font-size: 27px;
  }

  .transfer-mode-cell .btn-group .btn,
  #btn-language,
  #btn-currency {
    font-size: 11px;
  }

  .transfer-mode-cell .btn-group {
    height: 40px;
  }

  .transfer-mode-cell .btn-group .btn {
    height: 34px;
    min-height: 34px;
  }

  #btn-language,
  #btn-currency {
    height: 40px;
    min-height: 40px;
  }

  .transfer-utility-cell {
    width: 58px !important;
  }

  .booking-card .form-control {
    min-height: 44px !important;
  }

  #booking-button-mobile .button {
    min-height: 46px;
  }

  footer.page-section {
    padding-top: 54px !important;
  }

  .footer-brand-widget,
  .footer-contact-widget,
  .footer-service-widget,
  .footer-about-widget {
    min-height: 0;
  }

  .footer-brand-widget {
    padding-bottom: 20px !important;
  }

  .footer-brand-widget .logo-footer-cont,
  .footer-brand-widget .logo-footer.brand-logo-image {
    margin-bottom: 0;
  }

  .footer-contact-widget {
    padding-top: 0;
  }

  footer .widget {
    padding-bottom: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* Current four-vehicle public fleet */
.peakcar-public-fleet {
  padding: 72px 0 56px;
  background: var(--pcv-ink-soft) !important;
}

.peakcar-fleet-card {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--pcv-gold-line);
  background: var(--pcv-ink-raised);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .22);
}

.peakcar-fleet-card > a {
  display: block;
  height: 100%;
  color: var(--pcv-ivory) !important;
  text-decoration: none !important;
}

.peakcar-fleet-card img {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
}

.peakcar-fleet-card-body {
  min-height: 170px;
  padding: 20px;
}

.peakcar-fleet-card-body h3 {
  margin: 0 0 12px;
  color: var(--pcv-gold-bright) !important;
  font-size: 20px;
  line-height: 1.35;
}

.peakcar-fleet-card-body p,
.peakcar-fleet-card-body small {
  color: var(--pcv-text) !important;
  line-height: 1.65;
}

.peakcar-fleet-card-body small {
  display: block;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .peakcar-public-fleet { padding: 48px 0 30px; }
  .peakcar-fleet-card img { height: auto; aspect-ratio: 3 / 2; }
  .peakcar-fleet-card-body { min-height: 0; }
}

/* Cart and checkout ------------------------------------------------------- */
#zone_cart_table,
#zone_contact {
  background:
    radial-gradient(circle at 50% 0, rgba(201, 143, 122, .07), transparent 34rem),
    #080809 !important;
}

#zone_cart_table > .container,
#zone_contact > .form-cart > .container {
  max-width: 1200px;
}

#zone_cart_table .section-title,
#zone_contact .section-title {
  margin-bottom: 28px !important;
  padding: 12px 0 12px 24px;
  border-left: 3px solid var(--pcv-gold);
  color: var(--pcv-ivory) !important;
  font-family: var(--pcv-sans) !important;
  font-size: clamp(27px, 2.2vw, 38px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .01em;
}

#zone_cart_table .table-responsive {
  border: 1px solid var(--pcv-gold-line);
  background: #121213;
  box-shadow: 0 22px 52px rgba(0, 0, 0, .34);
}

#zone_cart_table table.shopping-cart-table {
  margin-bottom: 0;
  border: 0;
  background: #121213 !important;
  color: #efe8e3;
}

#zone_cart_table table.shopping-cart-table thead th {
  padding: 16px 13px;
  border: 0 !important;
  border-bottom: 1px solid var(--pcv-gold-line) !important;
  background: linear-gradient(180deg, #24211c, #1b1916) !important;
  color: var(--pcv-gold-bright) !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
}

#zone_cart_table table.shopping-cart-table tbody tr {
  background: #231c1a !important;
}

#zone_cart_table table.shopping-cart-table tbody tr:hover {
  background: #1a1917 !important;
}

#zone_cart_table table.shopping-cart-table td {
  padding: 15px 13px;
  border: 0 !important;
  border-bottom: 1px solid rgba(201, 143, 122, .16) !important;
  color: #efe8e3 !important;
  font-weight: 500;
}

#zone_cart_table table.shopping-cart-table td img {
  border: 1px solid rgba(201, 143, 122, .42);
  background: #15110f;
}

#zone_cart_table table.shopping-cart-table td:nth-child(4) a,
#zone_cart_table .cart-title a {
  color: var(--pcv-ivory) !important;
  font-weight: 700;
}

#zone_cart_table table.shopping-cart-table td:nth-child(4) a:hover,
#zone_cart_table .cart-title a:hover {
  color: var(--pcv-gold-bright) !important;
}

#zone_cart_table table.shopping-cart-table td small,
#zone_cart_table .cart-box small {
  color: #bdb5aa !important;
}

#zone_cart_table table.shopping-cart-table .button.small {
  min-height: 0;
  padding: 7px 12px;
  border-color: rgba(83, 184, 104, .5) !important;
  background: rgba(33, 116, 52, .16) !important;
  color: #85db96 !important;
  box-shadow: none !important;
}

#zone_cart_table table.shopping-cart-table td:last-child button {
  color: #aaa39a !important;
}

#zone_cart_table table.shopping-cart-table td:last-child button:hover,
#zone_cart_table table.shopping-cart-table td:last-child button:focus-visible {
  color: #df8c84 !important;
  outline: none;
}

#zone_cart_table table.shopping-cart-table tbody tr:last-child,
#zone_cart_table table.shopping-cart-table tbody tr:last-child:hover,
#zone_cart_table table.shopping-cart-table tbody tr:last-child td {
  border-bottom: 0 !important;
  background: linear-gradient(90deg, #1d1a16, #24201a) !important;
}

#zone_cart_table table.shopping-cart-table tbody tr:last-child td:nth-child(3) {
  color: #c8c0b4 !important;
}

#zone_cart_table table.shopping-cart-table tbody tr:last-child td:nth-child(4) {
  color: var(--pcv-gold-bright) !important;
  font-size: 17px;
}

#zone_cart_ctrl .button.gray-light {
  border: 1px solid var(--pcv-gold-line) !important;
  background: #2a221f !important;
  color: var(--pcv-ivory) !important;
}

#zone_cart_ctrl .button.gray-light:hover,
#zone_cart_ctrl .button.gray-light:focus-visible {
  border-color: var(--pcv-gold) !important;
  background: #32251f !important;
  color: var(--pcv-gold-bright) !important;
}

#zone_cart_ctrl .button.btn-primary {
  color: #090909 !important;
}

#zone_cart_table .cart-thumb,
#zone_cart_table .cart-total-box {
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 2px;
  background: linear-gradient(145deg, #1a1917, #121213) !important;
  color: #efe8e3 !important;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .25);
}

#zone_cart_table .cart-box {
  color: #efe8e3 !important;
}

#zone_cart_table .cart-image img {
  border: 1px solid rgba(201, 143, 122, .42);
  border-radius: 1px;
}

#zone_cart_table .cart-remove button {
  color: #aaa39a !important;
}

#zone_contact .form-cart > .container > .row {
  margin-right: -8px;
  margin-left: -8px;
}

#zone_contact .form-cart > .container > .row > [class*="col-"] {
  padding-right: 8px;
  padding-left: 8px;
}

#zone_contact .white-bg.shipping-cont {
  margin-bottom: 16px !important;
  padding: 28px !important;
  overflow: visible;
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 2px;
  background:
    linear-gradient(145deg, rgba(37, 34, 29, .98), rgba(18, 18, 19, .99)) !important;
  color: #ddd6cb !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}

#zone_contact .white-bg.shipping-cont h4,
#zone_contact .white-bg.shipping-cont h4 strong,
#zone_contact .white-bg.shipping-cont > h4 strong {
  color: var(--pcv-gold-bright) !important;
  font-family: var(--pcv-sans) !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .025em;
}

#zone_contact .white-bg.shipping-cont > h4 {
  margin: 0 0 24px !important;
  padding-bottom: 15px;
  border-bottom: 1px solid rgba(201, 143, 122, .24);
}

#zone_contact label,
#zone_contact .label-radio,
#zone_contact .label-checkbox,
#zone_contact b,
#zone_contact strong,
#zone_contact p,
#zone_contact small {
  color: #e8dfda !important;
}

#zone_contact .form-group > label,
#zone_contact .input-label {
  margin-bottom: 8px;
  color: #cfc7bb !important;
  font-size: 14px;
  font-weight: 650;
}

#zone_contact .text-danger {
  color: #e0a99f !important;
}

#zone_contact .form-control,
#zone_contact select.form-control,
#zone_contact textarea.form-control,
#zone_contact .btn-default.form-control {
  border: 1px solid rgba(201, 143, 122, .38) !important;
  border-radius: 1px !important;
  background: #201a18 !important;
  color: var(--pcv-ivory) !important;
  box-shadow: none !important;
}

#zone_contact .form-control::placeholder,
#zone_contact textarea.form-control::placeholder {
  color: #999187 !important;
  opacity: 1;
}

#zone_contact .form-control:hover,
#zone_contact select.form-control:hover,
#zone_contact textarea.form-control:hover {
  border-color: rgba(220, 185, 111, .68) !important;
}

#zone_contact .form-control:focus,
#zone_contact select.form-control:focus,
#zone_contact textarea.form-control:focus,
#zone_contact .btn-default.form-control:focus {
  border-color: var(--pcv-gold-bright) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(220, 185, 111, .13) !important;
}

#zone_contact select.form-control option {
  background: #201a18;
  color: var(--pcv-ivory);
}

#zone_contact .dropdown-menu,
#zone_contact .traveler-saved-dropdown {
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 1px;
  background: #241d1b !important;
  color: #ebe1dc !important;
  box-shadow: 0 18px 35px rgba(0, 0, 0, .38) !important;
}

#zone_contact .traveler-saved-option {
  background: #241d1b !important;
  color: #ebe1dc !important;
}

#zone_contact .traveler-saved-option:hover,
#zone_contact .traveler-saved-option:focus {
  background: #28241e !important;
  color: var(--pcv-gold-bright) !important;
}

#zone_contact .traveler-saved-option small {
  color: #aaa297 !important;
}

#zone_contact .flightbox {
  margin-right: 0;
  margin-left: 0;
  padding: 16px 0;
  border: 1px solid rgba(201, 143, 122, .2);
  background: rgba(7, 7, 8, .32);
}

#zone_contact .flightbox + .flightbox {
  margin-top: 12px;
}

#zone_contact #add-flight-btn,
#zone_contact a[style*="color:#0687ec"] {
  color: var(--pcv-gold-bright) !important;
}

#zone_contact input[type="radio"],
#zone_contact input[type="checkbox"] {
  accent-color: var(--pcv-gold);
}

#zone_contact .label-radio::before,
#zone_contact .label-checkbox::before {
  border-color: #8d8579 !important;
  background-color: #201a18 !important;
}

#zone_contact input[type="radio"]:checked + .label-radio::before,
#zone_contact input[type="checkbox"]:checked + .label-checkbox::before {
  border-color: var(--pcv-gold) !important;
  background-color: var(--pcv-gold) !important;
}

#zone_contact input[type="radio"] + .label-radio::before,
#zone_contact input[type="radio"]:checked + .label-radio::before {
  width: 27px;
  margin-right: 10px;
  border: 0 !important;
  background: transparent !important;
  color: #a8a096 !important;
  font-size: 22px;
  line-height: 1;
  letter-spacing: 0 !important;
}

#zone_contact input[type="radio"]:checked + .label-radio::before {
  color: var(--pcv-gold-bright) !important;
}

#zone_contact .payment-choice {
  margin-bottom: 10px !important;
  border: 1px solid rgba(201, 143, 122, .22);
  background: rgba(8, 8, 9, .44);
  transition: border-color .18s ease, background-color .18s ease;
}

#zone_contact .payment-choice:hover,
#zone_contact .payment-choice:has(input:checked) {
  border-color: rgba(220, 185, 111, .7);
  background: rgba(201, 143, 122, .08);
}

#zone_contact .payment-choice .label-radio {
  display: flex;
  min-height: 64px;
  margin: 0;
  padding: 13px 16px;
  align-items: center;
  color: var(--pcv-ivory) !important;
}

#zone_contact .payment-choice__icons {
  display: inline-flex;
  margin-left: auto;
  padding-left: 18px;
  align-items: center;
  gap: 7px;
  color: var(--pcv-gold-bright);
  white-space: nowrap;
}

#zone_contact .payment-choice__icons i {
  font-size: 25px;
}

#zone_contact .fa-money-bill-alt,
#zone_contact .fa-money-check-alt,
#zone_contact .fa-cc-visa,
#zone_contact .fa-cc-mastercard,
#zone_contact .fa-cc-paypal {
  color: var(--pcv-gold-bright) !important;
}

#zone_contact .cart-preferred-driver__head,
#zone_contact .cart-preferred-driver__body {
  background: transparent !important;
}

#zone_contact .cart-preferred-driver__body {
  border-top-color: rgba(201, 143, 122, .22) !important;
}

#zone_contact .cart-preferred-driver__option {
  border-color: rgba(201, 143, 122, .28) !important;
  background: #201a18 !important;
  color: #ddd6cb !important;
}

#zone_contact .cart-preferred-driver__option.is-selected {
  border-color: var(--pcv-gold) !important;
  background: #35241f !important;
  box-shadow: inset 3px 0 0 var(--pcv-gold) !important;
}

#zone_contact .cart-preferred-driver__check {
  border-color: #8d8579 !important;
  background: #201a18 !important;
}

#zone_contact .cart-preferred-driver__input:checked + .cart-preferred-driver__check {
  border-color: var(--pcv-gold) !important;
  background: var(--pcv-gold) !important;
}

#zone_contact .cart-preferred-driver__notice {
  border-left-color: var(--pcv-gold) !important;
  background: rgba(201, 143, 122, .1) !important;
  color: #e8dfda !important;
}

#zone_contact button[type="submit"].button {
  width: 100%;
  min-height: 52px;
  border: 1px solid var(--pcv-gold-bright) !important;
  background: linear-gradient(105deg, #dfa795, #9b6252) !important;
  color: #090909 !important;
  font-weight: 800;
  letter-spacing: .08em;
  box-shadow: 0 12px 26px rgba(183, 137, 58, .17);
}

#zone_contact button[type="submit"].button strong {
  color: #090909 !important;
}

#zone_contact button[type="submit"].button:hover,
#zone_contact button[type="submit"].button:focus-visible {
  background: linear-gradient(105deg, #ead29e, #cda350) !important;
}

@media (max-width: 767px) {
  #zone_cart_table,
  #zone_contact {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  #zone_cart_table .section-title,
  #zone_contact .section-title {
    padding-left: 17px;
    font-size: 27px;
  }

  #zone_contact .white-bg.shipping-cont {
    padding: 21px 17px !important;
  }

  #zone_cart_table .cart-thumb {
    padding: 12px;
  }

  #zone_cart_table .cart-image {
    flex-basis: 86px;
  }

  #zone_cart_table .cart-image img {
    width: 86px;
    height: 60px;
  }

  #zone_contact .payment-choice .label-radio {
    min-height: 58px;
    padding: 11px 13px;
    font-size: 14px;
  }

  #zone_contact .payment-choice__icons {
    padding-left: 10px;
  }

  #zone_contact .payment-choice__icons i {
    font-size: 21px;
  }
}

/* Transfer rate tables */
.page-section.p-110-cont.grey-light-bg {
  background: #050505 !important;
  color: var(--pcv-ivory);
}

.page-section.p-110-cont.grey-light-bg .container {
  max-width: 1320px;
}

.page-section.p-110-cont.grey-light-bg .section-title {
  color: var(--pcv-ivory) !important;
  text-shadow: 0 2px 16px rgba(0, 0, 0, .48);
}

.page-section.p-110-cont.grey-light-bg .section-title .bold {
  color: inherit !important;
}

.page-section.p-110-cont.grey-light-bg .btn-group .btn,
.page-section.p-110-cont.grey-light-bg #btn-currency {
  min-height: 45px;
  border: 1px solid rgba(201, 143, 122, .48) !important;
  border-radius: 2px !important;
  background: #201a18 !important;
  color: #e8dfda !important;
  font-weight: 800;
  letter-spacing: .04em;
  box-shadow: none !important;
  text-shadow: none !important;
}

.page-section.p-110-cont.grey-light-bg .btn.btn-default,
.page-section.p-110-cont.grey-light-bg .btn.btn-primary,
.page-section.p-110-cont.grey-light-bg button.btn {
  border: 1px solid rgba(201, 143, 122, .48) !important;
  background-color: #201a18 !important;
  background-image: none !important;
  color: #e8dfda !important;
  text-shadow: none !important;
}

.page-section.p-110-cont.grey-light-bg .btn-group .btn:hover,
.page-section.p-110-cont.grey-light-bg .btn-group .btn:focus,
.page-section.p-110-cont.grey-light-bg #btn-currency:hover,
.page-section.p-110-cont.grey-light-bg #btn-currency:focus {
  border-color: var(--pcv-gold-bright) !important;
  background: #30231f !important;
  color: var(--pcv-gold-bright) !important;
}

.page-section.p-110-cont.grey-light-bg .btn-group .btn.active,
.page-section.p-110-cont.grey-light-bg .btn-group .btn:active {
  border-color: var(--pcv-gold-bright) !important;
  background: linear-gradient(105deg, #dfa795, #9b6252) !important;
  color: #080808 !important;
}

.page-section.p-110-cont.grey-light-bg .btn.btn-default.active,
.page-section.p-110-cont.grey-light-bg .btn.btn-primary.active,
.page-section.p-110-cont.grey-light-bg .btn.btn-default:active,
.page-section.p-110-cont.grey-light-bg .btn.btn-primary:active {
  border-color: var(--pcv-gold-bright) !important;
  background-color: #9b6252 !important;
  background-image: linear-gradient(105deg, #dfa795, #9b6252) !important;
  color: #080808 !important;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown {
  overflow: hidden;
  min-width: 260px !important;
  padding: 8px !important;
  border: 1px solid var(--pcv-gold-line) !important;
  border-radius: 2px !important;
  background: #1b1614 !important;
  box-shadow: 0 18px 36px rgba(0, 0, 0, .48) !important;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown li,
.page-section.p-110-cont.grey-light-bg #currencyDropdown a {
  display: flex;
  min-height: 42px;
  align-items: center;
  gap: 10px;
  border-radius: 1px;
  color: #e8dfda !important;
  font-size: 14px;
  line-height: 1.3;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown li {
  padding: 8px 10px !important;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown a {
  padding: 0 !important;
  background: transparent !important;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown li:hover,
.page-section.p-110-cont.grey-light-bg #currencyDropdown li.is-selected,
.page-section.p-110-cont.grey-light-bg #currencyDropdown a:hover,
.page-section.p-110-cont.grey-light-bg #currencyDropdown a:focus {
  background: rgba(201, 143, 122, .13) !important;
  color: var(--pcv-gold-bright) !important;
}

.page-section.p-110-cont.grey-light-bg #currencyDropdown img {
  width: 25px;
  height: 25px;
  flex: 0 0 auto;
}

.page-section.p-110-cont.grey-light-bg .table-responsive {
  margin-bottom: 34px;
  border: 1px solid rgba(201, 143, 122, .34);
  background: #1b1614;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}

.page-section.p-110-cont.grey-light-bg table.travelclass,
.page-section.p-110-cont.grey-light-bg .table.travelclass {
  margin-bottom: 0 !important;
  border: 0 !important;
  background: #1b1614 !important;
  color: #e8dfda;
}

.page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr > td,
.page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr > th,
.page-section.p-110-cont.grey-light-bg .travelclass > thead > tr > td,
.page-section.p-110-cont.grey-light-bg .travelclass > thead > tr > th {
  height: auto;
  border-color: rgba(201, 143, 122, .22) !important;
  background: #241d1b !important;
  color: #e8dfda !important;
  font-size: 14px;
  line-height: 1.45;
  vertical-align: middle !important;
  text-shadow: none !important;
}

.page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr:nth-child(even) > td {
  background: #2a221f !important;
}

.page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr:hover > td {
  background: #30231f !important;
  color: var(--pcv-ivory) !important;
}

.page-section.p-110-cont.grey-light-bg .travelclass .topic,
.page-section.p-110-cont.grey-light-bg .travelclass .gray-bg,
.page-section.p-110-cont.grey-light-bg .travelclass .rate-vehicle,
.page-section.p-110-cont.grey-light-bg .travelclass .rate-tour,
.page-section.p-110-cont.grey-light-bg .travelclass .rate-tour-name {
  border-color: rgba(201, 143, 122, .32) !important;
  background: #2b211e !important;
  color: var(--pcv-gold-bright) !important;
  font-weight: 800;
}

.page-section.p-110-cont.grey-light-bg .travelclass a {
  color: var(--pcv-gold-bright) !important;
  text-decoration: none;
}

.page-section.p-110-cont.grey-light-bg .travelclass a:hover,
.page-section.p-110-cont.grey-light-bg .travelclass a:focus {
  color: #fff5d8 !important;
  text-decoration: underline;
}

.page-section.p-110-cont.grey-light-bg .travelclass .subject {
  min-width: 240px;
  text-align: left;
}

.page-section.p-110-cont.grey-light-bg .travelclass td:not(.subject):not(.topic) {
  color: #ebe4d8 !important;
}

.page-section.p-110-cont.grey-light-bg .travelclass .normalrate {
  color: #918a80 !important;
  text-decoration-color: rgba(145, 138, 128, .55);
}

.page-section.p-110-cont.grey-light-bg .travelclass .agentrate {
  color: var(--pcv-gold-bright) !important;
  font-weight: 800;
}

.page-section.p-110-cont.grey-light-bg .transfer-vehicle {
  position: relative;
  display: flex;
  min-height: 76px;
  padding: 0 6px 8px;
  align-items: flex-end;
  justify-content: center;
  background-position: center;
  background-size: cover;
  color: #f6efe4 !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  box-shadow: inset 0 -44px 30px rgba(0, 0, 0, .84), inset 0 0 0 1px rgba(0, 0, 0, .18);
  text-shadow: 0 2px 3px rgba(0, 0, 0, 1), 0 0 9px rgba(0, 0, 0, .92);
}

.page-section.p-110-cont.grey-light-bg .transfer-vehicle::after {
  content: none;
}

.page-section.p-110-cont.grey-light-bg .transfer-vehicle {
  isolation: isolate;
  text-indent: 0;
  color: #fff8e8 !important;
}

.page-section.p-110-cont.grey-light-bg u,
.page-section.p-110-cont.grey-light-bg i,
.page-section.p-110-cont.grey-light-bg li {
  color: #e8dfda !important;
}

.page-section.p-110-cont.grey-light-bg u {
  color: var(--pcv-gold-bright) !important;
  text-decoration-color: rgba(201, 143, 122, .65);
}

.page-section.p-110-cont.grey-light-bg .button.medium {
  border: 1px solid var(--pcv-gold-bright) !important;
  background: linear-gradient(105deg, #dfa795, #9b6252) !important;
  color: #090909 !important;
  font-weight: 800;
}

@media (max-width: 767px) {
  .page-section.p-110-cont.grey-light-bg {
    padding-top: 74px !important;
    padding-bottom: 74px !important;
  }

  .page-section.p-110-cont.grey-light-bg .btn-group.d-flex {
    width: 100%;
    margin: 14px 0 0 !important;
  }

  .page-section.p-110-cont.grey-light-bg .btn-group .btn,
  .page-section.p-110-cont.grey-light-bg #btn-currency {
    min-height: 42px;
    padding-right: 9px;
    padding-left: 9px;
    font-size: 12px;
  }

  .page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr > td,
  .page-section.p-110-cont.grey-light-bg .travelclass > tbody > tr > th,
  .page-section.p-110-cont.grey-light-bg .travelclass > thead > tr > td,
  .page-section.p-110-cont.grey-light-bg .travelclass > thead > tr > th {
    font-size: 13px;
  }
}

/* Luxury refinement ------------------------------------------------------ */
/* Keep the finish restrained: satin surfaces, metallic highlights and
   typography-led hierarchy instead of decorative clutter. */
body {
  background-image:
    radial-gradient(circle at 16% 2%, rgba(226, 174, 155, .115), transparent 29rem),
    radial-gradient(circle at 86% 38%, rgba(155, 98, 82, .07), transparent 34rem),
    repeating-linear-gradient(118deg, rgba(255, 255, 255, .009) 0 1px, transparent 1px 6px),
    linear-gradient(180deg, #1b1513 0%, #120f0e 100%);
  background-attachment: fixed;
}

html[lang^="th"] body,
html[lang^="th"] button,
html[lang^="th"] input,
html[lang^="th"] select,
html[lang^="th"] textarea {
  font-family: "Noto Sans Thai", "Open Sans", Tahoma, sans-serif;
}

html[lang^="th"] h1,
html[lang^="th"] h2,
html[lang^="th"] h3,
html[lang^="th"] h4,
html[lang^="th"] h5,
html[lang^="th"] h6,
html[lang^="th"] .section-title {
  font-family: "Noto Sans Thai", "Open Sans", Tahoma, sans-serif !important;
  font-weight: 600;
  line-height: 1.36;
  letter-spacing: 0 !important;
}

.header,
.header-wrapper,
.main-menu-container,
.navbar-default {
  background:
    linear-gradient(100deg, rgba(226, 174, 155, .045), transparent 32%),
    rgba(14, 12, 11, .965) !important;
  -webkit-backdrop-filter: blur(14px) saturate(112%);
  backdrop-filter: blur(14px) saturate(112%);
}

.header {
  box-shadow:
    0 18px 48px rgba(0, 0, 0, .3),
    inset 0 -1px 0 rgba(226, 174, 155, .08);
}

.logo-img,
.logo-container-2 .logo-img,
.logo-footer-cont .peakcarvip {
  color: #e2ae9b !important;
  -webkit-text-fill-color: #e2ae9b;
  text-shadow:
    0 1px 0 rgba(255, 243, 237, .14),
    0 4px 22px rgba(201, 143, 122, .17);
}

.booking-card,
#transfer-preference-panel,
#zone_contact .white-bg.shipping-cont,
#zone_cart_table .cart-thumb,
#zone_cart_table .cart-total-box,
.panel,
.card,
.well {
  border-color: rgba(201, 143, 122, .31) !important;
  background-image:
    radial-gradient(circle at 8% 0%, rgba(226, 174, 155, .075), transparent 19rem),
    linear-gradient(145deg, rgba(45, 35, 31, .98), rgba(27, 22, 20, .985)) !important;
  box-shadow:
    0 28px 76px rgba(0, 0, 0, .33),
    inset 0 1px 0 rgba(255, 248, 243, .045),
    inset 0 -1px 0 rgba(155, 98, 82, .08) !important;
}

.page-section .section-title {
  text-wrap: balance;
}

.page-section .section-title::after {
  display: block;
  width: 52px;
  height: 1px;
  margin-top: 16px;
  background: linear-gradient(90deg, var(--pcv-gold-bright), rgba(201, 143, 122, 0));
  content: "";
}

.booking-card .section-title::after,
.rev_slider .section-title::after,
.tp-caption.section-title::after {
  content: none;
}

.btn-primary,
.button.btn-primary,
input[type="submit"],
#wrap a.button.medium.thin.white,
#wrap a.button.medium.thin.gray,
#wrap a.button.medium.hover-thin.gray,
#wrap button.button.medium.hover-thin.gray,
#zone_contact button[type="submit"].button,
.peakcarvip-vehicle-selection .vehicle-class-footer .button,
.peakcarvip-vehicle-selection table.vehicle-tag .button,
.page-section.p-110-cont.grey-light-bg .button.medium,
.page-section.p-110-cont.grey-light-bg .btn-group .btn.active,
.page-section.p-110-cont.grey-light-bg .btn.btn-default.active,
.page-section.p-110-cont.grey-light-bg .btn.btn-primary.active {
  border: 1px solid #b97868 !important;
  border-radius: 2px !important;
  background:
    linear-gradient(180deg, rgba(255, 245, 240, .2) 0%, rgba(255, 245, 240, 0) 37%),
    linear-gradient(112deg, #e8b8a7 0%, #c98f7a 52%, #a96d5c 100%) !important;
  color: #17100e !important;
  box-shadow:
    0 0 0 1px rgba(91, 48, 38, .58),
    0 11px 30px rgba(155, 98, 82, .22),
    inset 0 1px 0 rgba(255, 250, 247, .52),
    inset 0 -1px 0 rgba(101, 54, 43, .22) !important;
  text-shadow: 0 1px 0 rgba(255, 245, 240, .28) !important;
}

.btn-primary,
.button,
button,
input[type="submit"],
input[type="button"] {
  transition:
    transform .2s ease,
    border-color .2s ease,
    background-color .2s ease,
    color .2s ease,
    box-shadow .2s ease,
    opacity .2s ease;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.button.btn-primary:hover,
.button.btn-primary:focus-visible,
input[type="submit"]:hover,
input[type="submit"]:focus-visible,
#wrap a.button.medium.thin.white:hover,
#wrap a.button.medium.thin.white:focus-visible,
#wrap a.button.medium.thin.gray:hover,
#wrap a.button.medium.thin.gray:focus-visible,
#wrap a.button.medium.hover-thin.gray:hover,
#wrap a.button.medium.hover-thin.gray:focus-visible,
#wrap button.button.medium.hover-thin.gray:hover,
#wrap button.button.medium.hover-thin.gray:focus-visible,
#zone_contact button[type="submit"].button:hover,
#zone_contact button[type="submit"].button:focus-visible,
.peakcarvip-vehicle-selection .vehicle-class-footer .button:hover,
.peakcarvip-vehicle-selection .vehicle-class-footer .button:focus-visible,
.peakcarvip-vehicle-selection table.vehicle-tag .button:hover,
.peakcarvip-vehicle-selection table.vehicle-tag .button:focus-visible {
  border-color: #e2ae9b !important;
  background:
    linear-gradient(180deg, rgba(255, 250, 247, .28) 0%, rgba(255, 250, 247, 0) 38%),
    linear-gradient(112deg, #f0c4b4 0%, #d69b86 52%, #b87766 100%) !important;
  color: #140e0c !important;
  transform: translateY(-2px);
  box-shadow:
    0 0 0 1px rgba(155, 98, 82, .72),
    0 15px 38px rgba(155, 98, 82, .29),
    inset 0 1px 0 rgba(255, 250, 247, .62) !important;
}

.form-control,
select,
textarea,
.booking-card input[type="text"],
.booking-card input[type="email"],
.booking-card input[type="tel"] {
  border-color: rgba(201, 143, 122, .3) !important;
  background:
    linear-gradient(180deg, rgba(255, 248, 243, .018), transparent),
    #201a18 !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 248, 243, .035),
    inset 0 -8px 22px rgba(0, 0, 0, .075) !important;
}

.form-control:hover,
select:hover,
textarea:hover {
  border-color: rgba(226, 174, 155, .53) !important;
}

.form-control:focus,
select:focus,
textarea:focus,
input:focus {
  border-color: var(--pcv-gold-bright) !important;
  box-shadow:
    0 0 0 3px rgba(201, 143, 122, .12),
    inset 0 1px 0 rgba(255, 248, 243, .05) !important;
}

.menu-sub-container,
.dropdown-menu,
.navbar-nav .sub,
.pac-container,
#currencyDropdown,
#currencyDropdown2 {
  background:
    linear-gradient(145deg, rgba(47, 37, 33, .985), rgba(25, 21, 19, .99)) !important;
  box-shadow:
    0 24px 58px rgba(0, 0, 0, .4),
    inset 0 1px 0 rgba(255, 248, 243, .035) !important;
}

.open > .dropdown-menu,
.navbar-nav > li:hover > .menu-sub-container,
.navbar-nav > li.open > .menu-sub-container {
  animation: pcv-luxury-reveal .22s ease-out both;
}

@keyframes pcv-luxury-reveal {
  from {
    opacity: 0;
    transform: translateY(-5px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.peakcarvip-vehicle-selection table.vehicle-class,
.peakcarvip-vehicle-selection table.travel-class,
.peakcarvip-vehicle-selection table.vehicle-tag,
.page-section.p-110-cont.grey-light-bg .table-responsive,
#zone_cart_table .table-responsive {
  box-shadow:
    0 22px 58px rgba(0, 0, 0, .27),
    inset 0 1px 0 rgba(255, 248, 243, .025) !important;
}

.peakcarvip-vehicle-selection table.vehicle-class td.image img,
.peakcarvip-vehicle-selection table.travel-class td.image img,
.peakcarvip-vehicle-selection table.vehicle-tag td.image img {
  filter: saturate(.82) contrast(1.045) brightness(.97);
}

.peakcarvip-vehicle-selection table.vehicle-class td.image a:hover img,
.peakcarvip-vehicle-selection table.travel-class td.image a:hover img,
.peakcarvip-vehicle-selection table.vehicle-tag:hover td.image img {
  filter: saturate(.94) contrast(1.06) brightness(1.015);
  transform: scale(1.02);
}

.main-footer,
footer,
footer.page-section,
.footer2-black {
  background:
    radial-gradient(circle at 50% 0, rgba(226, 174, 155, .09), transparent 31rem),
    linear-gradient(180deg, #15110f, #0e0c0b) !important;
}

/* Shared legacy cards: keep older white utility blocks inside the same theme. */
#wrap .box-wrapper,
#wrap .white-bg {
  border-color: rgba(201, 143, 122, .28) !important;
  background:
    linear-gradient(145deg, rgba(48, 37, 33, .98), rgba(27, 22, 20, .99)) !important;
  color: var(--pcv-ivory) !important;
}

#wrap .box-wrapper h1,
#wrap .box-wrapper h2,
#wrap .box-wrapper h3,
#wrap .box-wrapper h4,
#wrap .box-wrapper h5,
#wrap .box-wrapper h6,
#wrap .box-wrapper p,
#wrap .box-wrapper li,
#wrap .white-bg h1,
#wrap .white-bg h2,
#wrap .white-bg h3,
#wrap .white-bg h4,
#wrap .white-bg h5,
#wrap .white-bg h6,
#wrap .white-bg p,
#wrap .white-bg li {
  color: inherit !important;
}

#wrap .box-wrapper.special {
  box-shadow:
    0 16px 42px rgba(0, 0, 0, .25),
    inset 0 1px 0 rgba(255, 248, 243, .04) !important;
}

#wrap .box-wrapper .colbox {
  border-color: rgba(201, 143, 122, .3) !important;
  background: linear-gradient(145deg, #302521, #211a18) !important;
  color: var(--pcv-ivory) !important;
}

#wrap .box-wrapper .colbox:hover {
  border-color: rgba(226, 174, 155, .62) !important;
  background: linear-gradient(145deg, #3b2b26, #261d1a) !important;
}

#wrap .owl-prev,
#wrap .owl-next {
  border: 1px solid var(--pcv-gold-line) !important;
  background: var(--pcv-ink-raised) !important;
  color: var(--pcv-gold-bright) !important;
}

#wrap .owl-prev:hover,
#wrap .owl-next:hover {
  background: var(--pcv-gold-deep) !important;
  color: var(--pcv-ivory) !important;
}

@media (max-width: 767px) {
  footer .according > dd {
    padding-left: 0;
  }

  footer .according > dd .links-list {
    margin-left: 0;
    padding-left: 0;
  }

  footer .according > dd li::before {
    content: none;
  }

  .page-section .section-title::after {
    width: 42px;
    margin-top: 12px;
  }

  .booking-card,
  #transfer-preference-panel,
  #zone_contact .white-bg.shipping-cont,
  #zone_cart_table .cart-thumb,
  #zone_cart_table .cart-total-box {
    box-shadow:
      0 18px 42px rgba(0, 0, 0, .27),
      inset 0 1px 0 rgba(255, 248, 243, .04) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .open > .dropdown-menu,
  .navbar-nav > li:hover > .menu-sub-container,
  .navbar-nav > li.open > .menu-sub-container {
    animation: none !important;
  }

  .btn-primary:hover,
  .button.btn-primary:hover,
  input[type="submit"]:hover {
    transform: none !important;
  }
}
