:root {
  --ink: #0b0c0d;
  --ink-2: #111315;
  --ink-3: #191c1f;
  --paper: #fffefa;
  --ivory: #f7f4ed;
  --sand: #e9e1d3;
  --muted: #68645d;
  --line: #ded7ca;
  --gold: #c7a76c;
  --gold-dark: #92713d;
  --green: #168958;
  --green-dark: #107247;
  --shadow-sm: 0 16px 44px rgba(19, 17, 13, .07);
  --shadow: 0 34px 90px rgba(13, 12, 10, .14);
  --radius-sm: 12px;
  --radius: 24px;
  --radius-lg: 38px;
}

body {
  color: var(--ink);
  background: #08090a;
  font-family: "Manrope", Inter, ui-sans-serif, system-ui, sans-serif;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 90;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .08);
}

.announcement {
  color: #d7d3ca;
  background: #070808;
  border-bottom-color: rgba(199, 167, 108, .18);
}

.announcement__inner {
  min-height: 36px;
}

.announcement__contact a {
  font-weight: 600;
}

.announcement__contact a:last-child {
  color: #d7bd89;
}

.availability-dot {
  background: var(--gold);
  box-shadow: 0 0 0 4px rgba(199, 167, 108, .12);
}

.nav-surface {
  color: #f4f0e8;
  background: linear-gradient(90deg, rgba(199, 167, 108, .045), transparent 22%), rgba(8, 9, 10, .965);
  border-bottom-color: rgba(199, 167, 108, .23);
  backdrop-filter: blur(22px) saturate(1.2);
}

.nav-wrap {
  min-height: 84px;
}

.brand img {
  background: #0b0c0d;
  border: 1px solid rgba(199, 167, 108, .55);
  box-shadow: 0 10px 32px rgba(0, 0, 0, .32), 0 0 0 5px rgba(199, 167, 108, .035);
}

.brand__copy strong {
  color: #f6f1e8;
  font-size: 13px;
  letter-spacing: .19em;
}

.brand__copy small {
  color: #a39d93;
  letter-spacing: .08em;
}

.primary-nav {
  color: #d8d4cc;
  font-size: 11px;
  letter-spacing: .025em;
}

.primary-nav > a:not(.button)::after { background: var(--gold); }
.primary-nav > a:not(.button):hover { color: #e3c98f; }

.primary-nav .button--dark {
  color: #0a0b0c;
  background: linear-gradient(135deg, #dfc58f, #b68e50);
  border-color: #c8a66a;
  box-shadow: 0 14px 38px rgba(0, 0, 0, .32), 0 0 0 1px rgba(255, 255, 255, .08) inset;
}

.primary-nav .button--dark:hover {
  color: #050606;
  background: linear-gradient(135deg, #ead5a8, #caa76a);
}

.menu-toggle { border-color: rgba(199, 167, 108, .4); }
.menu-toggle span { background: #eee6d7; }

.button {
  min-height: 52px;
  padding-inline: 22px;
  border-radius: 999px;
  font-size: 10px;
  letter-spacing: .045em;
}

.button--small {
  min-height: 46px;
  padding-inline: 20px;
}

.button--dark {
  color: #fff;
  background: linear-gradient(135deg, #111315, #050606);
  border-color: #111315;
  box-shadow: 0 14px 35px rgba(8, 8, 8, .17);
}

.button--gold {
  background: linear-gradient(135deg, #d7bd88, #b58f53);
  box-shadow: 0 18px 46px rgba(199, 167, 108, .24);
}

.hero {
  min-height: min(850px, calc(100vh - 120px));
  background: #080a0b;
}

.hero__image {
  transform: scale(1.015);
  filter: saturate(.83) contrast(1.04);
}

.hero__veil {
  background:
    linear-gradient(90deg, rgba(5, 6, 7, .97) 0%, rgba(5, 6, 7, .88) 31%, rgba(5, 6, 7, .38) 58%, rgba(5, 6, 7, .08) 80%),
    linear-gradient(0deg, rgba(5, 6, 7, .73), transparent 52%);
}

.hero::before {
  content: "";
  position: absolute;
  inset: 22px;
  z-index: -1;
  pointer-events: none;
  border: 1px solid rgba(217, 191, 140, .2);
}

.hero__content {
  padding-top: clamp(86px, 11vh, 138px);
}

.hero__copy {
  max-width: 760px;
}

.hero__kicker {
  color: #ddd9d0;
  font-size: 10px;
  letter-spacing: .18em;
}

.hero__kicker span {
  color: #f4ead8;
  background: transparent;
  border: 1px solid rgba(199, 167, 108, .65);
  border-radius: 999px;
}

.hero h1,
.section-heading h2,
.location h2,
.booking h2,
.offer-card h3,
.service-card h3,
.car-card h3,
.booking-form__heading strong,
.car-dialog h2 {
  font-family: "Bodoni Moda", Georgia, serif;
}

.hero h1 {
  font-weight: 500;
  font-size: clamp(66px, 7.8vw, 118px);
  line-height: .84;
  letter-spacing: -.052em;
}

.hero h1 em {
  color: #d8bb82;
}

.hero__lead {
  max-width: 610px;
  color: #d4d1ca;
  font-size: clamp(15px, 1.25vw, 18px);
}

.hero__facts {
  border-top-color: rgba(215, 189, 137, .32);
}

.hero__facts > div + div {
  border-left-color: rgba(215, 189, 137, .18);
}

.hero__facts > div > span {
  color: #d7b978;
}

.section {
  padding-block: clamp(100px, 10vw, 158px);
}

.eyebrow {
  color: #777168;
  font-size: 9px;
  letter-spacing: .18em;
}

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

.section-heading h2,
.location h2,
.booking h2 {
  font-size: clamp(52px, 5.4vw, 84px);
  line-height: .9;
  font-weight: 500;
  letter-spacing: -.045em;
}

.section-heading h2 em,
.location h2 em,
.booking h2 em {
  color: var(--gold-dark);
}

.fleet {
  position: relative;
  overflow: hidden;
  color: #f3eee5;
  background:
    radial-gradient(circle at 10% 0%, rgba(199, 167, 108, .15), transparent 23%),
    radial-gradient(circle at 94% 30%, rgba(126, 98, 54, .08), transparent 20%),
    linear-gradient(145deg, #121416, #08090a 62%);
}

.fleet::before {
  content: "";
  position: absolute;
  inset: 34px;
  pointer-events: none;
  border: 1px solid rgba(199, 167, 108, .09);
}

.fleet .shell { position: relative; }
.fleet .section-heading h2 { color: #f7f2e9; }

.fleet .section-heading h2 em,
.fleet .eyebrow span,
.fleet .text-link { color: #d7b978; }

.fleet .section-heading__side > p { color: #a9a69f; }
.fleet .text-link { border-bottom-color: rgba(215, 185, 120, .38); }

.fleet-tools {
  padding: 10px;
  background: rgba(255, 255, 255, .035);
  border-color: rgba(199, 167, 108, .24);
  border-radius: 18px;
  box-shadow: 0 22px 70px rgba(0, 0, 0, .24);
  backdrop-filter: blur(14px);
}

.filter-button,
.search-box {
  border-radius: 999px;
}

.filter-button.is-active {
  color: #090a0b;
  background: linear-gradient(135deg, #dec48e, #b88f51);
  border-color: #c6a264;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .28);
}

.filter-button { color: #aaa69e; }
.filter-button:hover { color: #f5efe4; background: rgba(255, 255, 255, .07); }

.search-box { background: #17191b; border-color: rgba(255, 255, 255, .08); }
.search-box:focus-within { background: #1d1f21; border-color: rgba(199, 167, 108, .7); }
.search-box svg { stroke: #b3aca1; }
.search-box input, .search-box input::placeholder { color: #c7c1b7; }

.fleet-status { color: #777a79; }
.fleet-count { color: #e9e3d9; }

.fleet-status__dot {
  width: 6px;
  height: 6px;
  margin-right: 7px;
  display: inline-block;
  background: #45b77d;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(69, 183, 125, .1);
}

.fleet-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.car-card {
  background: #101214;
  border-color: rgba(199, 167, 108, .28);
  border-radius: 28px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .26);
}

.car-card:hover {
  transform: translateY(-5px);
  border-color: rgba(215, 185, 120, .72);
  box-shadow: 0 38px 90px rgba(0, 0, 0, .38);
}

.car-card__media {
  aspect-ratio: 16 / 10.7;
  padding: 18px;
  background:
    radial-gradient(circle at 50% 82%, rgba(170, 142, 92, .28), transparent 30%),
    linear-gradient(145deg, #e8e2d7, #cfc5b5);
  border-bottom: 1px solid rgba(199, 167, 108, .3);
}

.car-card__media img {
  filter: brightness(.91) saturate(.86) contrast(1.04) sepia(.035);
}

.car-card__media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, .14), transparent 62%, rgba(16, 18, 20, .12));
}

.car-card__badge,
.car-card__meta span,
.car-card__details {
  border-radius: 999px;
}

.car-card h3 {
  min-height: auto;
  margin-top: 8px;
  color: #f5efe5;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.03;
}

.car-card__details {
  color: #d8d1c5;
  background: transparent;
  border-color: rgba(199, 167, 108, .36);
}

.car-card__badge {
  color: #eee7db;
  background: rgba(10, 11, 12, .78);
  border-color: rgba(199, 167, 108, .42);
  backdrop-filter: blur(10px);
}

.car-card__number {
  position: absolute;
  z-index: 3;
  top: 16px;
  right: 17px;
  color: rgba(35, 31, 25, .56);
  font: 600 12px/1 "Bodoni Moda", Georgia, serif;
  letter-spacing: .12em;
}

.car-card__body { padding: 25px 24px 24px; }

.car-card__intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.car-card__intro > span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #8c928f;
  font-size: 8px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.car-card__intro i {
  width: 6px;
  height: 6px;
  background: #45b77d;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(69, 183, 125, .09);
}

.car-card__brand { margin-bottom: 0; color: #caa866; font-size: 9px; }
.car-card__meta { margin: 18px 0 20px; gap: 7px; }

.car-card__meta span {
  padding: 7px 10px;
  color: #aaa79f;
  background: #181b1d;
  border-color: #292c2e;
  font-size: 9px;
}

.car-card__price { padding-top: 18px; border-top-color: rgba(199, 167, 108, .2); }
.car-card__price small { color: #747875; font-size: 9px; }

.car-card__price strong,
.car-card__price.is-request strong {
  color: #e1c58c;
  font-size: 16px;
  font-weight: 700;
}

.car-card__actions { margin-top: 18px; grid-template-columns: 1.3fr .7fr; gap: 9px; }

.car-card__actions .button,
.car-card__details { min-height: 49px; font-size: 9px; }

.car-card__actions .button--whatsapp {
  background: linear-gradient(135deg, #198f5b, #0e6f45);
  box-shadow: 0 12px 28px rgba(12, 103, 63, .23);
}

.car-card__details:hover {
  color: #0a0b0c;
  background: #d8bc84;
  border-color: #d8bc84;
}

.fleet-empty { color: #f3eee5; background: #111315; border-color: rgba(199, 167, 108, .25); }
.fleet-empty strong { font-family: "Bodoni Moda", Georgia, serif; }
.fleet-empty span, .fleet .pricing-note { color: #777b79; }

.fleet .button--outline { color: #e8e1d5; border-color: rgba(199, 167, 108, .5); }
.fleet .button--outline:hover { color: #0b0c0d; background: #d7ba80; border-color: #d7ba80; }

.car-dialog {
  color: #f2ede3;
  background: #101214;
  border: 1px solid rgba(199, 167, 108, .34);
}

.car-dialog__body {
  background: radial-gradient(circle at 100% 0%, rgba(199, 167, 108, .08), transparent 35%), #101214;
}

.car-dialog__brand,
.car-dialog__price strong { color: #d7b978; }

.car-dialog__meta span {
  color: #aaa79f;
  background: #181b1d;
  border-color: #292c2e;
}

.car-dialog__description,
.car-dialog__price small { color: #8f918e; }
.car-dialog__price { border-top-color: rgba(199, 167, 108, .22); }
.car-dialog .button--outline { color: #eee7dc; border-color: rgba(199, 167, 108, .45); }

.offers {
  background:
    radial-gradient(circle at 90% 10%, rgba(199, 167, 108, .12), transparent 25%),
    #090a0b;
}

.offer-card {
  border-color: rgba(211, 181, 122, .26);
  border-radius: 28px;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .18);
}

.offer-card__shade {
  background: linear-gradient(180deg, rgba(4, 5, 6, .08) 20%, rgba(4, 5, 6, .96) 94%);
}

.offer-label {
  border-radius: 999px;
}

.offer-card h3 {
  font-size: clamp(38px, 3.4vw, 54px);
}

.offer-card__bottom a {
  border-radius: 999px;
}

.service-ribbon {
  background: #c7a76c;
}

.services {
  color: #f2ede3;
  background:
    radial-gradient(circle at 88% 0%, rgba(199, 167, 108, .1), transparent 24%),
    #0d0f10;
}

.services .section-heading h2 { color: #f7f1e7; }
.services .section-heading h2 em, .services .eyebrow span { color: #d4b675; }
.services .section-heading__side > p { color: #9b9d99; }

.services-grid {
  gap: 14px;
  border: 0;
}

.service-card {
  min-height: 370px;
  color: #eee8dd;
  background: linear-gradient(155deg, #17191b, #101214);
  border: 1px solid rgba(199, 167, 108, .2);
  border-radius: 24px;
  overflow: hidden;
}

.service-card:hover {
  color: #fff8ed;
  background: linear-gradient(155deg, #1d2022, #111315);
  border-color: rgba(211, 181, 122, .62);
  box-shadow: 0 25px 60px rgba(0, 0, 0, .24);
}

.service-card p, .service-card > span { color: #929590; }
.service-card a { border-top-color: rgba(255, 255, 255, .1); }
.service-card a b { color: #d2b370; }
.service-icon { color: #d4b675; background: rgba(199, 167, 108, .08); border-color: rgba(199, 167, 108, .25); }

.booking {
  position: relative;
  padding-top: clamp(70px, 8vw, 120px);
  background:
    radial-gradient(circle at 16% 10%, rgba(199, 167, 108, .07), transparent 26%),
    #08090a;
}

.booking__panel {
  position: relative;
  grid-template-columns: minmax(0, .93fr) minmax(460px, 1.07fr);
  align-items: stretch;
  gap: clamp(50px, 6vw, 88px);
  padding: clamp(56px, 6vw, 86px);
  color: #f7f3eb;
  background:
    radial-gradient(circle at 10% 0%, rgba(199, 167, 108, .17), transparent 30%),
    linear-gradient(145deg, #151719, #090a0b 62%);
  border: 1px solid #2f2b24;
  border-radius: 40px;
  box-shadow: 0 38px 110px rgba(15, 13, 10, .19);
}

.booking__panel::before {
  width: 640px;
  height: 640px;
  left: -350px;
  top: -355px;
  border-color: rgba(199, 167, 108, .22);
  box-shadow: 0 0 0 82px rgba(199, 167, 108, .025), 0 0 0 164px rgba(199, 167, 108, .018);
}

.booking__panel::after {
  content: "";
  position: absolute;
  inset: 16px;
  pointer-events: none;
  border: 1px solid rgba(199, 167, 108, .13);
  border-radius: 28px;
}

.booking__copy,
.booking-form {
  z-index: 1;
}

.booking__copy {
  display: flex;
  flex-direction: column;
}

.booking h2 {
  max-width: 640px;
}

.booking h2 em {
  color: #d3b476;
}

.booking__copy > p:not(.eyebrow) {
  max-width: 520px;
  margin: 30px 0 34px;
  color: #c0bdb6;
  font-size: 14px;
  line-height: 1.9;
}

.booking__profile {
  padding: 21px 0;
  display: flex;
  align-items: center;
  gap: 15px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.booking__monogram {
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  display: grid;
  place-items: center;
  color: #08090a;
  background: linear-gradient(135deg, #e0c996, #a98248);
  border-radius: 50%;
  font: 600 17px/1 "Bodoni Moda", Georgia, serif;
  letter-spacing: .08em;
}

.booking__profile p {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.booking__profile small,
.booking__profile em {
  color: #8e918f;
  font-size: 9px;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: .11em;
}

.booking__profile strong {
  font: 600 24px/1.05 "Bodoni Moda", Georgia, serif;
}

.booking__contacts {
  margin-top: 22px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.booking__contacts a {
  min-width: 0;
  padding: 14px 15px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  background: rgba(255, 255, 255, .055);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  transition: border-color .2s ease, background .2s ease;
}

.booking__contacts a:hover {
  background: rgba(199, 167, 108, .1);
  border-color: rgba(199, 167, 108, .45);
}

.booking__contacts small {
  color: #888b89;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.booking__contacts strong {
  overflow-wrap: anywhere;
  font-size: 12px;
}

.booking__email {
  grid-column: span 2;
}

.booking-form {
  padding: clamp(28px, 3vw, 42px);
  align-self: center;
  color: var(--ink);
  background: #fffefa;
  border: 1px solid rgba(255, 255, 255, .6);
  border-radius: 28px;
  box-shadow: 0 30px 90px rgba(0, 0, 0, .31);
}

.booking-form__heading {
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom-color: #dfd7c9;
}

.booking-form__heading strong {
  font-size: 31px;
}

.booking-form__heading small,
.booking-form__heading > span,
.booking-form label > span,
.journey-choice legend {
  color: #756d61;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.booking-form > label,
.form-row,
.journey-choice {
  margin-top: 16px;
}

.booking-form select,
.booking-form input,
.booking-form textarea {
  width: 100%;
  min-height: 56px;
  padding: 0 16px;
  color: var(--ink);
  background: #f6f2ea;
  border: 1px solid #dfd7ca;
  border-radius: 12px;
  outline: 0;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.booking-form textarea {
  min-height: 92px;
  padding-block: 14px;
  resize: vertical;
}

.booking-form select:focus,
.booking-form input:focus,
.booking-form textarea:focus {
  background: #fff;
  border-color: #ad8a51;
  box-shadow: 0 0 0 4px rgba(199, 167, 108, .12);
}

.journey-choice {
  padding: 0;
  border: 0;
}

.journey-choice legend {
  margin-bottom: 9px;
}

.journey-choice > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.journey-choice button {
  min-height: 39px;
  padding: 0 14px;
  color: #5d584f;
  background: transparent;
  border: 1px solid #d6cebf;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  cursor: pointer;
  transition: color .2s ease, background .2s ease, border-color .2s ease;
}

.journey-choice button:hover,
.journey-choice button.is-active {
  color: #fff;
  background: var(--ink);
  border-color: var(--ink);
}

.booking-form .button {
  min-height: 58px;
  margin-top: 22px;
}

.form-note {
  align-items: flex-start;
  color: #827d74;
  line-height: 1.55;
}

.location {
  color: #f0ebe2;
  background:
    radial-gradient(circle at 8% 10%, rgba(199, 167, 108, .1), transparent 24%),
    linear-gradient(145deg, #131517, #0a0b0c 62%);
}

.location__masthead {
  margin-bottom: 46px;
  padding-bottom: 22px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  border-bottom: 1px solid rgba(199, 167, 108, .2);
}

.location__masthead .eyebrow,
.location__masthead > p {
  margin: 0;
}

.location__masthead > p:last-child {
  max-width: 430px;
  color: #949690;
  font-size: 12px;
  line-height: 1.8;
  text-align: right;
}

.location__layout {
  grid-template-columns: minmax(340px, .78fr) minmax(500px, 1.22fr);
  align-items: stretch;
  gap: clamp(42px, 6vw, 90px);
}

.location__copy {
  display: flex;
  flex-direction: column;
}

.location__index {
  margin-bottom: 20px;
  color: #9b8b71;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .17em;
}

.location__copy > p:not(.eyebrow) {
  margin: 26px 0;
  color: #9fa19d;
  font-size: 14px;
}

.location__details {
  border-color: rgba(199, 167, 108, .21);
}

.location__details > div + div {
  border-color: rgba(199, 167, 108, .21);
}

.location__details strong {
  color: #eee7da;
  font-size: 12px;
}

.location__details small { color: #777b78; }
.location h2 { color: #f7f1e7; }
.location h2 em { color: #d1b16e; }

.location__actions {
  gap: 10px;
}

.button--location-whatsapp {
  color: #74c89d;
  background: transparent;
  border-color: rgba(116, 200, 157, .42);
}

.button--location-whatsapp:hover {
  color: #fff;
  background: var(--green);
  border-color: var(--green);
}

.branch-photo {
  position: relative;
  aspect-ratio: 4 / 5;
  margin: 34px 0 0;
  overflow: hidden;
  background: #ddd6ca;
  border: 8px solid #1a1c1e;
  border-radius: 28px;
  box-shadow: 0 26px 70px rgba(20, 17, 12, .14);
}

.branch-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 56%, rgba(7, 8, 9, .84));
}

.branch-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 52%;
  transition: transform .7s ease;
}

.branch-photo:hover img {
  transform: scale(1.025);
}

.branch-photo figcaption {
  position: absolute;
  z-index: 1;
  left: 24px;
  right: 24px;
  bottom: 22px;
  display: flex;
  flex-direction: column;
  color: #fff;
}

.branch-photo figcaption span,
.branch-photo figcaption small {
  color: #d0c7b8;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .15em;
}

.branch-photo figcaption strong {
  margin: 3px 0 7px;
  font: 600 28px/1 "Bodoni Moda", Georgia, serif;
}

.location__map-column {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.map-card {
  min-height: 760px;
  flex: 1;
  border: 8px solid #1a1c1e;
  border-radius: 32px;
  box-shadow: 0 32px 90px rgba(20, 17, 12, .16);
}

.map-card iframe {
  filter: grayscale(.8) sepia(.08) contrast(1.03);
}

.map-card__label {
  color: #f2ede3;
  background: rgba(14, 16, 17, .94);
  border: 1px solid rgba(199, 167, 108, .4);
  border-radius: 16px;
}

.map-card__label span { color: #949690; }

.location .button--dark {
  color: #0a0b0c;
  background: linear-gradient(135deg, #dfc58f, #b68e50);
  border-color: #c8a66a;
}

.branch-contact-strip {
  margin-top: 14px;
  padding: 19px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: #f5f0e7;
  background: var(--ink);
  border: 1px solid #2d2a24;
  border-radius: 18px;
}

.branch-contact-strip p {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.branch-contact-strip small {
  color: #9a9489;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.branch-contact-strip strong {
  font-size: 11px;
}

.branch-contact-strip a {
  flex: 0 0 auto;
  color: #d9bd86;
  font-size: 11px;
  font-weight: 800;
}

.site-footer {
  background:
    radial-gradient(circle at 8% 0%, rgba(199, 167, 108, .1), transparent 22%),
    #070808;
}

.footer__top {
  padding-top: 90px;
}

.footer__brand img {
  border: 1px solid rgba(199, 167, 108, .35);
}

.footer__ceo {
  margin-top: 24px;
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  border-top: 1px solid #252626;
}

.footer__ceo small {
  color: #777b7c;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.footer__ceo strong {
  margin-top: 4px;
  color: #e0c58e;
  font: 600 22px/1.1 "Bodoni Moda", Georgia, serif;
}

.footer__column a,
.footer__column span {
  overflow-wrap: anywhere;
  line-height: 1.5;
}

.mobile-contact-bar {
  display: none;
}

@media (max-width: 1180px) {
  .primary-nav {
    gap: 18px;
  }

  .fleet-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .booking__panel {
    grid-template-columns: .9fr 1.1fr;
    gap: 44px;
    padding-inline: 46px;
  }

  .location__layout {
    grid-template-columns: minmax(310px, .82fr) minmax(420px, 1.18fr);
    gap: 42px;
  }
}

@media (max-width: 900px) {
  .site-header {
    position: sticky;
  }

  .primary-nav {
    top: 68px;
    padding: 20px;
    color: #eee8de;
    background: rgba(10, 12, 13, .985);
    border-color: rgba(199, 167, 108, .28);
    border-radius: 22px;
    box-shadow: 0 28px 70px rgba(0, 0, 0, .44);
  }

  .primary-nav > a:not(.button) {
    min-height: 48px;
    display: flex;
    align-items: center;
    color: #d8d2c7;
    border-bottom-color: rgba(255, 255, 255, .09);
  }

  .menu-toggle { background: #111315; border-color: rgba(199, 167, 108, .38); }
  .menu-toggle span { background: #f0e9dd; }

  .hero {
    min-height: 760px;
  }

  .hero::before {
    inset: 14px;
  }

  .hero__content {
    padding-top: 100px;
  }

  .booking__panel,
  .location__layout {
    grid-template-columns: 1fr;
  }

  .booking__copy {
    max-width: 680px;
  }

  .booking__contacts {
    max-width: 560px;
  }

  .location__copy {
    max-width: none;
  }

  .branch-photo {
    aspect-ratio: 16 / 11;
  }

  .map-card {
    min-height: 520px;
  }
}

@media (max-width: 620px) {
  :root {
    --shell: min(100% - 32px, 520px);
  }

  body {
    padding-bottom: calc(82px + env(safe-area-inset-bottom));
  }

  .announcement__inner {
    min-height: 32px;
  }

  .announcement p {
    font-size: 8px;
    letter-spacing: .055em;
  }

  .nav-wrap {
    min-height: 70px;
  }

  .brand img {
    width: 46px;
    height: 46px;
  }

  .brand__copy strong {
    font-size: 11px;
  }

  .hero {
    min-height: 735px;
  }

  .hero__image {
    object-position: 61% center;
  }

  .hero__veil {
    background:
      linear-gradient(90deg, rgba(4, 5, 6, .95), rgba(4, 5, 6, .49)),
      linear-gradient(0deg, rgba(4, 5, 6, .92) 0%, rgba(4, 5, 6, .18) 70%);
  }

  .hero__content {
    padding: 70px 0 34px;
  }

  .hero__kicker {
    max-width: 330px;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    font-size: 8px;
    line-height: 1.5;
  }

  .hero h1 {
    font-size: clamp(56px, 16vw, 74px);
    line-height: .86;
  }

  .hero__lead {
    max-width: 93%;
    font-size: 14px;
    line-height: 1.7;
  }

  .hero__actions {
    gap: 9px;
  }

  .hero__actions .button {
    min-height: 54px;
  }

  .hero__facts {
    margin-top: 38px;
  }

  .hero__facts strong {
    font-size: 11px;
  }

  .section {
    padding-block: 90px;
  }

  .section-heading h2,
  .location h2,
  .booking h2 {
    font-size: clamp(47px, 14vw, 62px);
    line-height: .9;
  }

  .section-heading__side > p,
  .location__copy > p:not(.eyebrow),
  .booking__copy > p:not(.eyebrow) {
    font-size: 13px;
    line-height: 1.75;
  }

  .fleet-tools {
    margin-inline: 0;
    padding: 10px;
    border-radius: 20px;
  }

  .fleet::before { inset: 14px; }

  .filter-button {
    min-height: 42px;
    font-size: 9px;
  }

  .search-box {
    min-height: 50px;
  }

  .fleet-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .car-card {
    display: flex;
    grid-template-columns: none;
    border-radius: 22px;
  }

  .car-card__media {
    min-height: 0;
    aspect-ratio: 16 / 10;
    padding: 14px;
  }

  .car-card__badge {
    top: 13px;
    left: 13px;
    padding: 6px 9px;
    font-size: 7px;
  }

  .car-card__body {
    padding: 22px 20px 20px;
  }

  .car-card h3 {
    font-size: 29px;
  }

  .car-card__meta span {
    padding: 7px 9px;
    font-size: 9px;
  }

  .car-card__meta span:nth-child(2) {
    display: inline-flex;
  }

  .car-card__price {
    align-items: end;
    flex-direction: row;
  }

  .car-card__price strong {
    font-size: 16px;
  }

  .car-card__actions {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .car-card__actions .button,
  .car-card__details {
    min-height: 50px;
    font-size: 10px;
  }

  .offer-card,
  .offer-card--wide {
    min-height: 520px;
    border-radius: 24px;
  }

  .offer-card__bottom a {
    min-height: 48px;
  }

  .services-grid {
    gap: 12px;
    border: 0;
  }

  .service-card {
    min-height: 320px;
    padding: 25px;
    border: 1px solid rgba(199, 167, 108, .2);
    border-radius: 22px;
  }

  .booking {
    padding-top: 44px;
  }

  .booking__panel {
    width: var(--shell);
    padding: 65px 18px 20px;
    gap: 42px;
    border-radius: 30px;
  }

  .booking__panel::after {
    inset: 8px;
    border-radius: 23px;
  }

  .booking__copy {
    padding-inline: 7px;
  }

  .booking__copy > p:not(.eyebrow) {
    margin-block: 25px 28px;
  }

  .booking__profile {
    padding-block: 18px;
  }

  .booking__contacts {
    grid-template-columns: 1fr;
  }

  .booking__email {
    grid-column: auto;
  }

  .booking__contacts a {
    min-height: 64px;
    justify-content: center;
  }

  .booking-form {
    padding: 26px 18px;
    border-radius: 23px;
  }

  .booking-form__heading strong {
    font-size: 29px;
  }

  .booking-form select,
  .booking-form input,
  .booking-form textarea {
    min-height: 56px;
    font-size: 16px;
  }

  .journey-choice > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .journey-choice button {
    min-height: 44px;
  }

  .location__masthead {
    margin-bottom: 38px;
    align-items: flex-start;
    flex-direction: column;
    gap: 13px;
  }

  .location__masthead > p:last-child {
    max-width: none;
    text-align: left;
  }

  .location__layout {
    gap: 48px;
  }

  .location__copy > p:not(.eyebrow) {
    margin-block: 22px;
  }

  .location__details {
    margin-bottom: 24px;
  }

  .location__details > div {
    min-height: 70px;
    justify-content: center;
  }

  .location__actions {
    gap: 9px;
  }

  .location__actions .button {
    min-height: 54px;
  }

  .branch-photo {
    aspect-ratio: 4 / 5;
    margin-top: 26px;
    border-width: 6px;
    border-radius: 23px;
  }

  .branch-photo figcaption {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }

  .branch-photo figcaption strong {
    font-size: 26px;
  }

  .location__map-column .location__index {
    margin-bottom: 13px;
  }

  .map-card {
    min-height: 390px;
    border-width: 6px;
    border-radius: 23px;
  }

  .map-card__label {
    padding-right: 13px;
  }

  .branch-contact-strip {
    padding: 17px;
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .footer__top {
    padding-top: 66px;
  }

  .footer__column {
    min-width: 0;
  }

  .footer__column a {
    font-size: 10px;
  }

  .mobile-contact-bar {
    position: fixed;
    z-index: 85;
    left: 10px;
    right: 10px;
    bottom: calc(9px + env(safe-area-inset-bottom));
    padding: 5px;
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 5px;
    background: rgba(10, 11, 12, .96);
    border: 1px solid rgba(215, 187, 132, .32);
    border-radius: 17px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .38);
    backdrop-filter: blur(16px);
  }

  .mobile-contact-bar a {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 12px;
    font-size: 11px;
    letter-spacing: .02em;
  }

  .mobile-call {
    color: #eee7da;
    background: #1b1d1f;
  }

  .mobile-contact-bar .mobile-book {
    position: static;
    min-height: 52px;
    padding: 0 14px;
    display: flex;
    color: #fff;
    background: var(--green);
    border: 0;
    border-radius: 12px;
    box-shadow: none;
    font-size: 11px;
  }
}

@media (max-width: 390px) {
  :root {
    --shell: min(100% - 24px, 520px);
  }

  .brand__copy small {
    display: none;
  }

  .hero h1 {
    font-size: clamp(51px, 15.5vw, 64px);
  }

  .hero__lead {
    max-width: 100%;
  }

  .car-card__actions {
    grid-template-columns: 1fr;
  }

  .journey-choice > div {
    grid-template-columns: 1fr;
  }

  .footer__top {
    grid-template-columns: 1fr;
  }

  .footer__brand,
  .footer__fast {
    grid-column: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .branch-photo img {
    transition: none;
  }
}
