/* ==================================================
   GLOBAL CSS — SHARED BY EVERY PAGE
================================================== */

:root {
  --color-text-muted: #8e979f;
  --color-bg: #faf9f7;
  --color-surface: #ffffff;
  --color-dark: #101317;
  --color-darkest: #0b0d0f;
  --color-green: #0f7a38;
  --color-green-dark: #0b5c2a;
  --color-green-light: #22a94a;
  --color-text: #3a4149;
  --color-body: #4a525b;
  --color-muted: #8e979f;
  --color-border: #e5e3de;
  --page-width: 1220px;
  --page-padding: clamp(18px, 4vw, 40px);
}

* {
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
  overflow-x: clip !important;
  overflow-y: visible;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  font-family: "Public Sans", system-ui, sans-serif;
}

h1,
h2,
h3,
h4,
p {
  margin: 0;
  overflow-wrap: anywhere;
}

li,
a {
  overflow-wrap: anywhere;
}

a {
  color: var(--color-green);
  text-decoration: none;
}

a:hover {
  color: var(--color-green-dark);
}

button {
  max-width: 100%;
  cursor: pointer;
  font-family: "Public Sans", system-ui, sans-serif;
}

img,
input,
select,
textarea {
  max-width: 100%;
}

.page-shell {
  min-width: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: var(--color-bg);
   overflow: visible !important;
}

.main-content {
  min-width: 0;
  flex: 1;
}


@media (max-width: 767.98px) {
  :root {
    --page-padding: 20px;
  }
}

@media (max-width: 575.98px) {
  :root {
    --page-padding: 16px;
  }
}

@media (max-width: 399.98px) {
  :root {
    --page-padding: 14px;
  }
}

/* ==================================================
   HEADER, TOP BAR AND NAVIGATION — ONE SHARED BLOCK
================================================== */

header nav a:hover {
  color: var(--color-dark);
}

.header-inner>* {
  min-width: 0;
}

.top-bar {
   background: var(--color-dark);
  color: #c7cdd3;
  font: 500 13px/1 "Public Sans";
  letter-spacing: 0.01em;
  z-index: 1;

   position: relative !important;
  top: auto !important;
}

.top-bar-inner,
.header-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.top-bar-inner {
  padding: 11px var(--page-padding);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 26px;
}

.top-bar-item,
.top-bar-muted-item,
.top-bar-location {
  display: flex;
  align-items: center;
  gap: 8px;
}

.top-bar-muted-item {
  color: var(--color-text-muted);
}

.top-bar-location {
  margin-left: auto;
}

.status-dot {
  flex: none;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-green-light);
  display: block;
}

.style-84a1f795 {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-green-light);
  display: block;
}

.site-header {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  left: auto;
  right: auto;
  width: 100%;
  z-index: 1000 !important;
  background: #fff;
  border-bottom: 1px solid #e5e3de;
 
}

.header-inner {
  padding: 14px var(--page-padding) 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
}

.brand-link {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: none;
}

.brand-logo {
  flex: none;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.brand-text {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.brand-title {
  font: 700 15px/1 Archivo;
  letter-spacing: 0.02em;
  color: var(--color-dark);
}

.brand-subtitle {
  font: 600 10.5px/1 Archivo;
  letter-spacing: 0.28em;
  color: var(--color-green);
}

.primary-nav {
  -webkit-overflow-scrolling: touch;
  order: 3;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 2px;
  overflow-x: auto;
  border-top: 1px solid #f0eeea;
  margin-top: 2px;
  scrollbar-width: none;
}

.primary-nav::-webkit-scrollbar {
  display: none;
}

.nav-link,
.nav-link-active {
  font: 500 14.5px/1 "Public Sans";
  color: var(--color-text);
  padding: 14px;
  flex: none;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
}

.nav-link-active {
  border-bottom-color: var(--color-green);
}

.nav-link:hover {
  color: var(--color-text);
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: none;
  margin-left: auto;
}

.phone-link {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 4px 10px;
}

.phone-label {
  font: 600 10px/1 Archivo;
  letter-spacing: 0.16em;
  color: var(--color-text-muted);
}

.phone-number {
  font: 700 16px/1 Archivo;
  letter-spacing: -0.01em;
  color: var(--color-dark);
}

.header-cta {
  background: var(--color-green);
  color: #fff;
  font: 600 14px/1 "Public Sans";
  padding: 14px 20px;
  border-radius: 4px;
  white-space: nowrap;
}

.header-cta:hover {
  color: #fff;
  background: var(--color-green-dark);
}

@media (max-width: 991.98px) {

  .top-bar-inner,
  .header-inner {
    text-align: center;
    justify-content: center;
  }

  .top-bar-location {
    margin-left: 0 !important;
  }

  .brand-link {
    justify-content: center;
  }

  .brand-text {
    align-items: center;
  }

  .header-actions {
    width: 100% !important;
    margin-left: 0 !important;
    justify-content: center;
  }

  .phone-link {
    align-items: center;
  }

  .primary-nav {
    justify-content: flex-start;
  }
}

@media (max-width: 767.98px) {
  .brand-logo {
    width: 84px !important;
    height: 84px !important;
  }

  .brand-title {
    font-size: 13px !important;
  }

  .brand-subtitle {
    font-size: 9px !important;
    letter-spacing: 0.2em !important;
  }
}

@media (max-width: 575.98px) {
  .top-bar-inner {
    gap: 10px !important;
    padding-left: var(--page-padding);
    padding-right: var(--page-padding);
  }

  .top-bar-item,
  .top-bar-muted-item,
  .top-bar-location {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .header-inner {
    padding: 12px var(--page-padding) 0;
    gap: 12px !important;
  }

  .brand-link {
    width: 100%;
  }

  .brand-text {
    text-align: center;
  }

  .brand-logo {
    width: 70px !important;
    height: 70px !important;
  }

  .header-actions {
    width: 100%;
    justify-content: center;
    padding-bottom: 12px;
    flex-wrap: wrap;
  }

  .phone-link {
    align-items: center;
    padding: 4px 0 !important;
  }

  .phone-number {
    font-size: 14px !important;
  }

  .header-cta {
    padding: 12px 16px !important;
    font-size: 13px !important;
  }

  .nav-link,
  .nav-link-active {
    padding: 13px 11px !important;
    font-size: 13px !important;
  }

  .primary-nav {
    margin-inline: calc(var(--page-padding) * -1);
    padding-inline: var(--page-padding);
  }
}

@media (min-width: 1400px) {

  .top-bar-inner,
  .header-inner {
    max-width: 1320px !important;
  }
}

@media (max-width: 399.98px) {
  .brand-link {
    flex-direction: column;
    gap: 9px;
  }

  .header-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .phone-link,
  .header-cta {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 379.98px) {
  .brand-title {
    font-size: 12px;
  }

  .brand-subtitle {
    font-size: 8px;
  }
}

/* ==================================================
   PAGE SECTION STYLES
   Original page-rule cascade order is preserved.
================================================== */

.booking-grid {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.booking-grid>* {
  min-width: 0;
}

@media (min-width: 992px) and (max-width: 1399.98px) {
  .booking-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  }
}

@media (max-width: 991.98px) {
  .hero-inner {
    text-align: center;
  }
}

@media (max-width: 991.98px) {
  .booking-grid {
    text-align: center;
  }
}

@media (max-width: 991.98px) {
  .section-inner {
    text-align: center;
  }
}

@media (max-width: 991.98px) {
  .hero-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .embed-title {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .embed-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .booking-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991.98px) {
  .process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .information-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .embed-card {
    min-height: 440px;
  }
}

@media (max-width: 767.98px) {
  .hero-inner {
    padding-top: 42px;
    padding-bottom: 42px;
  }
}

@media (max-width: 767.98px) {
  .hero-title {
    font-size: clamp(30px, 7vw, 42px);
  }
}

@media (max-width: 767.98px) {
  .booking-grid {
    gap: 22px;
  }
}

@media (max-width: 575.98px) {
  .notice-card {
    padding: 22px;
  }
}

@media (max-width: 575.98px) {
  .options-card {
    padding: 22px;
  }
}

@media (max-width: 575.98px) {
  .assistance-phone {
    font-size: 22px;
  }
}

@media (max-width: 575.98px) {
  .option-pill {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .information-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 399.98px) {
  .hero-copy {
    font-size: 15px;
  }
}

@media (max-width: 399.98px) {
  .notice-copy {
    font-size: 15px;
  }
}

@media (max-width: 399.98px) {
  .information-item {
    font-size: 15px;
  }
}

@media (max-width: 399.98px) {
  .notice-card {
    padding: 18px;
  }
}

@media (max-width: 399.98px) {
  .options-card {
    padding: 18px;
  }
}

@media (max-width: 399.98px) {
  .process-step {
    padding: 18px;
  }
}

@media (max-height: 520px) and (orientation: landscape) and (max-width: 991.98px) {
  .hero-inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}

.contact-grid {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.hero-section {
  background: var(--color-dark);
  color: #FFFFFF;
}

.section-kicker {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--color-green);
}

.hero-title {
  font: 700 clamp(32px, 4vw, 52px)/1.08 Archivo;
  letter-spacing: -.025em;
  color: #FFFFFF;
  margin-top: 18px;
}

.hero-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #B4BCC3;
  margin-top: 18px;
  max-width: 64ch;
  text-wrap: pretty;
}

.contact-section {
  background: var(--color-bg);
}

.contact-grid {
  padding: clamp(44px, 5vw, 72px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  align-items: start;
}

.contact-grid>* {
  min-width: 0;
}

.contact-form-card {
  background: #FFFFFF;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 34px;
}

.form-fields {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-top: 24px;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.form-label {
  font: 600 13px/1 "Public Sans";
  color: var(--color-text);
}

.form-control {
  width: 100%;
  font: 400 16px/1 "Public Sans";
  color: var(--color-dark);
  border: 1px solid #D8D5CF;
  border-radius: 4px;
  padding: 14px;
  background: #FFFFFF;
  outline: none;
}

.textarea-control {
  font: 400 16px/1.5 "Public Sans";
  resize: vertical;
}

.submit-button {
  background: var(--color-green);
  color: #FFFFFF;
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  align-self: flex-start;
}

.form-note {
  font: 400 14px/1.6 "Public Sans";
  color: #6B737B;
}

.contact-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.business-card {
  background: var(--color-dark);
  border-radius: 6px;
  padding: 30px;
  color: #FFFFFF;
}

.business-kicker {
  font: 600 11px/1 Archivo;
  letter-spacing: .18em;
  color: var(--color-green-light);
}

.business-title {
  font: 700 20px/1.3 Archivo;
  color: #FFFFFF;
  margin-top: 16px;
}

.business-details {
  display: grid;
  gap: 18px;
  margin-top: 22px;
}

.business-info-label {
  font: 600 11px/1 Archivo;
  letter-spacing: .16em;
  color: var(--color-text-muted);
}

.business-info-text {
  font: 400 16px/1.5 "Public Sans";
  color: #E4E8EB;
  margin-top: 6px;
}

.business-email {
  font: 400 16px/1.5 "Public Sans";
  color: #E4E8EB;
  margin-top: 6px;
}

.business-email {
  display: block;
  overflow-wrap: anywhere;
}

.business-phone {
  display: block;
  font: 700 24px/1 Archivo;
  color: #FFFFFF;
  margin-top: 8px;
  overflow-wrap: anywhere;
}

.support-card {
  background: #FFFFFF;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 28px;
}

.card-copy {
  font: 400 15.5px/1.6 "Public Sans";
  color: #4A525B;
  margin-top: 10px;
}

.card-copy-pretty {
  text-wrap: pretty;
}

.primary-button {
  display: inline-block;
  margin-top: 18px;
  font: 600 15px/1 "Public Sans";
  padding: 15px 24px;
  border-radius: 4px;
}

.primary-button2 {
  display: inline-block;
  margin-top: 18px;
  font: 600 15px/1 "Public Sans";
  padding: 15px 24px;
  border-radius: 4px;
}

.secondary-button {
  display: inline-block;
  margin-top: 18px;
  font: 600 15px/1 "Public Sans";
  padding: 15px 24px;
  border-radius: 4px;
}

.primary-button {
  background: var(--color-green);
  color: #FFFFFF;
}

.primary-button2 {
  border: 1px solid #39424A;
  /* background: var(--color-green); */
  color: #FFFFFF;
}

.secondary-button {
  border: 1px solid #C9C6C0;
  color: var(--color-dark);
}

.request-section {
  background: #FFFFFF;
  border-top: 1px solid var(--color-border);
}

.section-title {
  font: 600 clamp(24px, 2.6vw, 32px)/1.16 Archivo;
  letter-spacing: -.02em;
  color: var(--color-dark);
  margin-top: 14px;
}

.request-list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 12px 28px;
}

.request-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  font: 400 16px/1.5 "Public Sans";
  color: var(--color-text);
  min-width: 0;
}

.section-note {
  font: 400 15px/1.6 "Public Sans";
  color: #6B737B;
  margin-top: 22px;
}

.primary-button:hover {
  color: #FFFFFF;
}

.primary-button2:hover {
  color: #FFFFFF;
}

.business-phone:hover {
  color: #FFFFFF;
}

.business-email:hover {
  color: #E4E8EB;
}

.secondary-button:hover {
  color: var(--color-dark);
}

@media (max-width: 767.98px) {
  .contact-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .request-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .contact-form-card {
    padding: 26px 18px;
  }
}

@media (max-width: 575.98px) {
  .business-card {
    padding: 22px;
  }
}

@media (max-width: 575.98px) {
  .support-card {
    padding: 22px;
  }
}

@media (max-width: 575.98px) {
  .submit-button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .primary-button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .secondary-button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .submit-button {
    align-self: stretch;
  }
}

@media (max-width: 575.98px) {
  .request-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 379.98px) {
  .hero-title {
    font-size: 28px;
  }
}

@media (max-width: 379.98px) {
  .contact-form-card {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 379.98px) {
  .business-card {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 379.98px) {
  .support-card {
    padding-left: 16px;
    padding-right: 16px;
  }
}

.drive-page {
  min-width: 0;
}

.opportunities-grid>* {
  min-width: 0;
}

.application-grid>* {
  min-width: 0;
}

.hero-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.opportunities-grid {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.section-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.primary-button {
  display: inline-block;
  margin-top: 28px;
  background: var(--color-green);
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border-radius: 4px;
}

.primary-button2 {
  display: inline-block;
  margin-top: 28px;
  /* background: var(--color-green); */
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border-radius: 4px;
}

.responsive-cover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 6px;
}

.opportunities-section {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
}

.opportunities-grid {
  padding: clamp(52px, 6vw, 80px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.body-copy {
  font: 400 17px/1.66 "Public Sans";
  color: var(--color-body);
  margin-top: 16px;
}

.body-copy-pretty {
  text-wrap: pretty;
}

.feature-list {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 12px 24px;
}

.application-list {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 12px 24px;
}

.feature-list {
  margin: 22px 0 0;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.feature-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  color: var(--color-text);
}

.application-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  color: var(--color-text);
}

.feature-item {
  font: 400 16px/1.5 "Public Sans";
}

.application-section {
  background: var(--color-bg);
}

.application-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  margin-top: 32px;
  align-items: start;
}

.application-details-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 32px;
}

.card-title {
  font: 600 19px/1.2 Archivo;
  color: var(--color-dark);
}

.application-list {
  margin: 20px 0 0;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.application-item {
  font: 400 15.5px/1.5 "Public Sans";
}

.application-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.embed-card {
  border: 1px solid #c9c6c0;
  border-radius: 6px;
  padding: 40px 28px;
  text-align: center;
  background: #fff;
}

.embed-title {
  font: 600 20px/1.25 Archivo;
  color: var(--color-dark);
  margin-top: 12px;
}

.embed-copy {
  font: 400 15px/1.6 "Public Sans";
  color: #6b737b;
  margin-top: 10px;
  text-wrap: pretty;
}

.review-card {
  background: var(--color-dark);
  border-radius: 6px;
  padding: 26px;
}

.review-copy {
  font: 400 15.5px/1.62 "Public Sans";
  color: #b4bcc3;
  text-wrap: pretty;
}

@media (max-width: 767.98px) {
  .opportunities-grid {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .opportunities-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .application-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .primary-button {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .application-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .application-item {
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .application-details-card {
    padding: 28px;
  }
}

@media (max-width: 575.98px) {
  .primary-button {
    width: 100%;
    padding: 16px 20px;
  }
}

@media (max-width: 575.98px) {
  .application-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .feature-item {
    width: 100%;
    max-width: 310px;
    margin: 0 auto;
  }
}

@media (max-width: 575.98px) {
  .application-item {
    width: 100%;
    max-width: 310px;
    margin: 0 auto;
  }
}

@media (max-width: 575.98px) {
  .application-details-card {
    padding: 24px 20px;
  }
}

@media (max-width: 575.98px) {
  .embed-card {
    padding: 32px 20px;
  }
}

@media (max-width: 575.98px) {
  .review-card {
    padding: 22px;
  }
}

@media (max-width: 374.98px) {
  .section-title {
    font-size: 25px;
  }
}

.intro-inner>* {
  min-width: 0;
}

.service-grid>* {
  min-width: 0;
}

.vehicle-grid>* {
  min-width: 0;
}

.rates-inner>* {
  min-width: 0;
}

.areas-inner>* {
  min-width: 0;
}

.cta-inner>* {
  min-width: 0;
}

.style-26e74cd {
  background: #101317;
  color: #fff;
  overflow: hidden;
}

.style-9cc6f08 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(44px, 5vw, 72px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  gap: clamp(32px, 4vw, 56px);
  align-items: center;
}

.style-c6b0f88 {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font: 600 11.5px/1 Archivo;
  letter-spacing: .2em;
  color: #22A94A;
  border: 1px solid #24402F;
  background: #141A17;
  padding: 9px 14px;
  border-radius: 3px;
}

.style-6377d89 {
  font: 700 clamp(36px, 4.4vw, 60px)/1.06 Archivo;
  letter-spacing: -.025em;
  color: #fff;
  margin-top: 24px;
  text-wrap: balance;
}

.style-49ed456 {
  font: 400 18px/1.62 "Public Sans";
  color: #B4BCC3;
  margin-top: 22px;
  max-width: 56ch;
  text-wrap: pretty;
}

.style-8b6f6a8 {
  font: 400 16px/1.62 "Public Sans";
  color: #8E979F;
  margin-top: 14px;
  max-width: 56ch;
  text-wrap: pretty;
}

.style-1938eb6 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.style-a127016 {
  background: #0F7A38;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.style-ef28b9b {
  border: 1px solid #39424A;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.style-6fbe101 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
  margin-top: 30px;
  padding-top: 26px;
  border-top: 1px solid #262C31;
}

.style-9deb75f {
  font: 500 14px/1 "Public Sans";
  color: #8E979F;
}

.style-664d174 {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  min-height: 300px;
}

.style-b110805 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 6px;
}

.style-d81dfed {
  background: #fff;
  border-bottom: 1px solid #E5E3DE;
}

.style-fc0d4eb {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 60px);
}

.style-a113600 {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #0F7A38;
}

.style-a8d26f2 {
  font: 600 clamp(28px, 3.2vw, 40px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 16px;
  text-wrap: balance;
}

.style-65cc157 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
}

.style-609e3a3 {
  font: 400 17px/1.66 "Public Sans";
  color: #4A525B;
  text-wrap: pretty;
}

.style-44ddf3d {
  background: #FAF9F7;
}

.style-1c3fa34 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
}

.style-250fbb2 {
  font: 600 clamp(28px, 3.2vw, 40px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 16px;
}

.style-70f2848 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  margin-top: 36px;
}

.style-4a2432a {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.style-2cb40a3 {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}

.style-63f27d7 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0;
}

.style-23adb66 {
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}

.style-e8c5ad3 {
  font: 600 23px/1.2 Archivo;
  letter-spacing: -.01em;
  color: #101317;
}

.style-7d2bf72 {
  font: 400 16px/1.62 "Public Sans";
  color: #4A525B;
  text-wrap: pretty;
}

.style-0cf836f {
  margin-top: auto;
  align-self: flex-start;
  border: 1px solid #C9C6C0;
  color: #101317;
  font: 600 15px/1 "Public Sans";
  padding: 14px 22px;
  border-radius: 4px;
}

.style-fc91b99 {
  margin-top: auto;
  align-self: flex-start;
  background: #0F7A38;
  color: #fff;
  font: 600 15px/1 "Public Sans";
  padding: 14px 22px;
  border-radius: 4px;
}

.style-41e0468 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
  margin-top: 24px;
}

.style-0c1f9a1 {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.style-b5c9698 {
  position: relative;
  width: calc(100% + 60px);
  margin: -30px -30px 4px;
  aspect-ratio: 16/9;
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}

.style-6c7c038 {
  font: 600 11px/1 Archivo;
  letter-spacing: .18em;
  color: #0F7A38;
}

.style-211d3ec {
  font: 600 21px/1.2 Archivo;
  letter-spacing: -.01em;
  color: #101317;
}

.style-406b8fb {
  background: #101317;
  color: #fff;
}

.style-b61102a {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #22A94A;
}

.style-66a9368 {
  font: 600 clamp(28px, 3.2vw, 40px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #fff;
  margin-top: 16px;
}

.style-854fc73 {
  list-style: none;
  margin: 38px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 2px;
  background: #262C31;
  border: 1px solid #262C31;
  border-radius: 6px;
  overflow: hidden;
}

.style-aab3a9f {
  background: #101317;
  padding: 24px;
  font: 500 16px/1.4 "Public Sans";
  color: #E4E8EB;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.style-a554604 {
  width: 6px;
  height: 6px;
  background: #22A94A;
  margin-top: 7px;
  flex: none;
}

.style-67008dd {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(44px, 5vw, 68px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 32px;
  align-items: end;
}

.style-4185ef4 {
  font: 600 clamp(26px, 2.6vw, 34px)/1.16 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 14px;
}

.style-83094c9 {
  font: 400 15px/1.6 "Public Sans";
  color: #6B737B;
  margin-top: 12px;
  max-width: 40ch;
}

.style-529f120 {
  display: flex;
  gap: 26px;
  flex-wrap: wrap;
}

.style-8639216 {
  font: 500 13px/1 "Public Sans";
  color: #6B737B;
}

.style-4d51937 {
  font: 700 30px/1 Archivo;
  color: #101317;
  margin-top: 8px;
}

.style-9162a24 {
  align-self: center;
}

.style-785e436 {
  border: 1px solid #C9C6C0;
  color: #101317;
  font: 600 15px/1 "Public Sans";
  padding: 15px 24px;
  border-radius: 4px;
  display: inline-block;
}

.style-65fce53 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.style-aae48cd {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px;
  margin-top: 30px;
  background: #E5E3DE;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  overflow: hidden;
}

.style-15ce5f9 {
  background: #fff;
  padding: 22px;
  font: 600 18px/1.2 Archivo;
  color: #101317;
}

.style-5b157ea {
  font: 400 16px/1.62 "Public Sans";
  color: #4A525B;
  margin-top: 22px;
  max-width: 56ch;
  text-wrap: pretty;
}

.style-9044b59 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px;
}

.style-b63a5c6 {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  padding: 26px;
}

.style-34a0c08 {
  position: relative;
  width: calc(100% + 52px);
  margin: -26px -26px 4px;
  aspect-ratio: 16/9;
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}

.style-643aa3a {
  font: 600 20px/1.2 Archivo;
  color: #101317;
}

.style-c66d5e5 {
  font: 400 16px/1.6 "Public Sans";
  color: #4A525B;
  margin-top: 10px;
  text-wrap: pretty;
}

.style-d76607e {
  font: 400 14.5px/1.6 "Public Sans";
  color: #6B737B;
}

.style-f223515 {
  background: #0F7A38;
  color: #fff;
}

.style-ca384bc {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(48px, 5.5vw, 76px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 36px;
  align-items: center;
}

.style-335a824 {
  font: 600 clamp(28px, 3.2vw, 40px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #fff;
}

.style-f66273a {
  font: 400 17px/1.62 "Public Sans";
  color: #D6EEDF;
  margin-top: 14px;
  max-width: 48ch;
}

.style-398eb0c {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.style-9d72e3d {
  background: #fff;
  color: #0B5C2A;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.style-9001055 {
  border: 1px solid rgba(255, 255, 255, .5);
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.style-c15afd0 {
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 6px;
  padding: 26px;
}

.style-034423b {
  font: 400 16px/1.6 "Public Sans";
  color: #EAF6EE;
  text-wrap: pretty;
}

.style-3402baf {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, .2);
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
}

.style-552751b {
  font: 500 14px/1.4 "Public Sans";
  color: #D6EEDF;
}

@media (max-width: 767.98px) {
  .intro-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .why-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .rates-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .areas-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .hero-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .intro-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .service-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .vehicle-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .rates-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .areas-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .cta-inner {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767.98px) {
  .hero-copy-primary {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .hero-copy-secondary {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .body-copy {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .rates-copy {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .area-copy {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .cta-copy {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .hero-meta {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .cta-contact {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .rate-list {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .hero-media {
    min-height: 250px !important;
  }
}

@media (max-width: 767.98px) {
  .service-card-content {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .vehicle-choice-card {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .outline-button {
    align-self: center !important;
  }
}

@media (max-width: 767.98px) {
  .primary-card-button {
    align-self: center !important;
  }
}

@media (max-width: 767.98px) {
  .reasons-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767.98px) {
  .reason-item {
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .area-grid {
    max-width: 620px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .vehicle-choice-list {
    max-width: 620px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767.98px) {
  .rates-button-wrap {
    justify-self: center;
  }
}

@media (max-width: 575.98px) {
  .hero-badge {
    line-height: 1.4 !important;
  }
}

@media (max-width: 575.98px) {
  .hero-title {
    font-size: 31px !important;
  }
}

@media (max-width: 575.98px) {
  .hero-copy-primary {
    font-size: 16px !important;
  }
}

@media (max-width: 575.98px) {
  .hero-primary-button {
    width: 100%;
    padding: 16px 20px !important;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .hero-secondary-button {
    width: 100%;
    padding: 16px 20px !important;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .cta-primary-button {
    width: 100%;
    padding: 16px 20px !important;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .cta-secondary-button {
    width: 100%;
    padding: 16px 20px !important;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .hero-meta {
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 575.98px) {
  .hero-media {
    min-height: 210px !important;
  }
}

@media (max-width: 575.98px) {
  .section-title {
    font-size: 27px !important;
  }
}

@media (max-width: 575.98px) {
  .rates-title {
    font-size: 27px !important;
  }
}

@media (max-width: 575.98px) {
  .cta-title {
    font-size: 27px !important;
  }
}

@media (max-width: 575.98px) {
  .service-card-content {
    padding: 24px 20px !important;
  }
}

@media (max-width: 575.98px) {
  .vehicle-card {
    padding: 24px 20px !important;
  }
}

@media (max-width: 575.98px) {
  .vehicle-media {
    width: calc(100% + 40px) !important;
    margin: -24px -20px 4px !important;
  }
}

@media (max-width: 575.98px) {
  .reasons-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575.98px) {
  .area-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575.98px) {
  .reason-item {
    padding: 20px !important;
  }
}

@media (max-width: 575.98px) {
  .rate-list {
    flex-direction: column;
    gap: 20px !important;
  }
}

@media (max-width: 575.98px) {
  .rates-button-wrap {
    align-self: stretch !important;
  }
}

@media (max-width: 575.98px) {
  .rates-button-wrap .outline-button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .vehicle-choice-card {
    padding: 22px !important;
  }
}

@media (max-width: 575.98px) {
  .vehicle-choice-media {
    width: calc(100% + 44px) !important;
    margin: -22px -22px 4px !important;
  }
}

@media (max-width: 575.98px) {
  .cta-notice {
    padding: 22px !important;
  }
}

@media (max-width: 575.98px) {
  .cta-contact {
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 374.98px) {
  .hero-title {
    font-size: 27px !important;
  }
}

@media (min-width: 1400px) {
  .hero-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .intro-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .section-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .why-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .rates-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .areas-inner {
    max-width: 1320px !important;
  }
}

@media (min-width: 1400px) {
  .cta-inner {
    max-width: 1320px !important;
  }
}

.hero-inner>* {
  min-width: 0;
}

.copy-grid>* {
  min-width: 0;
}

.vehicles-grid>* {
  min-width: 0;
}

.pricing-grid>* {
  min-width: 0;
}

.style-406b8fb4 {
  background: #101317;
  color: #fff;
}

.style-1d3d7cf3 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(44px, 5vw, 72px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: clamp(30px, 4vw, 56px);
  align-items: center;
}

.style-b61102ab {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #22A94A;
}

.style-29b8c152 {
  font: 700 clamp(32px, 4vw, 52px)/1.08 Archivo;
  letter-spacing: -.025em;
  color: #fff;
  margin-top: 18px;
  text-wrap: balance;
}

.style-3e978619 {
  font: 400 17px/1.62 "Public Sans";
  color: #B4BCC3;
  margin-top: 20px;
  max-width: 56ch;
  text-wrap: pretty;
}

.style-c2868974 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.style-7c6a97c2 {
  background: #0F7A38;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border-radius: 4px;
}

.style-c527b726 {
  border: 1px solid #39424A;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 10px 35px;
  border-radius: 4px;
}

.style-c527b726:hover {
  color: white;
  background: #0F7A38;
}

.style-ccb65b19 {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  min-height: 280px;
}

.style-b110805d {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 6px;
}

.style-d81dfeda {
  background: #fff;
  border-bottom: 1px solid #E5E3DE;
}

.style-1c3fa344 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
}

.style-a1136004 {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #0F7A38;
}

.style-0f5b1dbc {
  font: 600 clamp(26px, 3vw, 38px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 16px;
  max-width: 22ch;
  text-wrap: balance;
}

.style-48f85a4c {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.style-609e3a30 {
  font: 400 17px/1.66 "Public Sans";
  color: #4A525B;
  text-wrap: pretty;
}

.style-a40a89d6 {
  font: 600 15px/1 "Public Sans";
  color: #101317;
  margin-top: 40px;
}

.style-dc25506f {
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px 32px;
}

.style-f0784ae0 {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  font: 400 16px/1.5 "Public Sans";
  color: #3A4149;
}

.style-36e49ff8 {
  width: 6px;
  height: 6px;
  background: #0F7A38;
  margin-top: 8px;
  flex: none;
}

.style-44ddf3dc {
  background: #FAF9F7;
}

.style-7f9bd195 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
}

.style-0d28b976 {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  padding: 32px;
}

.style-6a46cede {
  position: relative;
  width: calc(100% + 64px);
  margin: -32px -32px 4px;
  aspect-ratio: 16/9;
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}

.style-63f27d7b {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0;
}

.style-6c7c0387 {
  font: 600 11px/1 Archivo;
  letter-spacing: .18em;
  color: #0F7A38;
}

.style-7eb2daf8 {
  font: 600 24px/1.2 Archivo;
  letter-spacing: -.01em;
  color: #101317;
  margin-top: 12px;
}

.style-17f4b3eb {
  font: 400 16px/1.6 "Public Sans";
  color: #4A525B;
  margin-top: 10px;
}

.style-8ec737ef {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.style-f4419e36 {
  background: #fff;
  border-top: 1px solid #E5E3DE;
  border-bottom: 1px solid #E5E3DE;
}

.style-3e5a9f09 {
  font: 600 clamp(26px, 3vw, 38px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 16px;
}

.style-e869ab19 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 2px;
  margin-top: 36px;
  background: #E5E3DE;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  overflow: hidden;
}

.style-11119afd {
  background: #fff;
  padding: 26px;
}

.style-a0e9fc37 {
  font: 700 13px/1 Archivo;
  letter-spacing: .1em;
  color: #0F7A38;
}

.style-dfbbcb3b {
  font: 500 16px/1.5 "Public Sans";
  color: #101317;
  margin-top: 12px;
}

.style-65fce535 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 84px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.style-615afb36 {
  font: 400 17px/1.66 "Public Sans";
  color: #4A525B;
  margin-top: 18px;
  max-width: 52ch;
  text-wrap: pretty;
}

.style-398eb0cb {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.style-b0a418ab {
  border: 1px solid #C9C6C0;
  color: #101317;
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border-radius: 4px;
}

.style-5453827e {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px 28px;
  align-content: start;
}

.style-60880d33 {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(48px, 5.5vw, 76px) clamp(18px, 4vw, 40px);
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  align-items: center;
  justify-content: space-between;
}

.style-998582a3 {
  font: 600 clamp(26px, 3vw, 36px)/1.14 Archivo;
  letter-spacing: -.02em;
  color: #fff;
}

.style-20a2b7cb {
  font: 400 17px/1.62 "Public Sans";
  color: #B4BCC3;
  margin-top: 12px;
  max-width: 52ch;
  text-wrap: pretty;
}

.style-c64adbee {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.style-a127016f {
  background: #0F7A38;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.style-ef28b9bc {
  border: 1px solid #39424A;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

@media (max-width: 767.98px) {
  .vehicles-grid {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .pricing-grid {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .cta-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .hero-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .copy-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .vehicles-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .pricing-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .body-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .pricing-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .cta-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .pricing-actions {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .cta-actions {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .pricing-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .cta-inner {
    justify-content: center;
  }
}

@media (max-width: 575.98px) {
  .vehicles-grid {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .process-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .pricing-grid {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .cta-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .body-copy {
    font-size: 16px;
  }
}

@media (max-width: 575.98px) {
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {
  .pricing-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {
  .cta-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {
  .primary-button {
    width: 100%;
    padding: 16px 20px;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .secondary-button {
    width: 100%;
    padding: 16px 20px;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .outline-button {
    width: 100%;
    padding: 16px 20px;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .cta-title {
    font-size: 27px;
  }
}

@media (max-width: 575.98px) {
  .feature-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .pricing-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .process-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .process-step {
    padding: 21px;
  }
}

@media (min-width: 1400px) {
  .vehicles-grid {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  .process-inner {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  .pricing-grid {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  .cta-inner {
    max-width: 1320px;
  }
}

.rates-page {
  min-width: 0;
}

.rate-card-grid>* {
  min-width: 0;
}

.airport-vehicle-grid>* {
  min-width: 0;
}

.charge-info-grid>* {
  min-width: 0;
}

.hero-section {
  background: #101317;
  color: #fff;
}

.pricing-notice-section {
  background: #101317;
  color: #fff;
}

.hero-inner {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(44px, 5vw, 68px) clamp(18px, 4vw, 40px);
}

.section-kicker-light {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #22A94A;
}

.hero-title {
  font: 700 clamp(32px, 4vw, 52px)/1.08 Archivo;
  letter-spacing: -.025em;
  color: #fff;
  margin-top: 18px;
}

.hero-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #B4BCC3;
  margin-top: 18px;
  max-width: 70ch;
  text-wrap: pretty;
}

.local-rates-section {
  background: #fff;
  border-bottom: 1px solid #E5E3DE;
}

.section-inner {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 80px) clamp(18px, 4vw, 40px);
}

.section-kicker {
  font: 600 12px/1 Archivo;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #0F7A38;
}

.rate-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  margin-top: 24px;
}

.rate-card {
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  padding: 30px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
}

.rate-card-title {
  font: 600 22px/1.2 Archivo;
  color: #101317;
}

.rate-price-block {
  text-align: right;
}

.rate-eyebrow {
  font: 500 12px/1 "Public Sans";
  color: #8E979F;
}

.rate-price {
  font: 700 34px/1 Archivo;
  color: #0F7A38;
  margin-top: 8px;
}

.local-rate-note {
  font: 400 15px/1.6 "Public Sans";
  color: #6B737B;
  margin-top: 18px;
  max-width: 74ch;
}

.airport-rates-section {
  background: #FAF9F7;
}

.additional-charges-section {
  background: #FAF9F7;
}

.airport-rate-table {
  margin-top: 26px;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}

.airport-table-header {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  background: #101317;
}

.airport-header-cell {
  padding: 16px 24px;
  font: 600 12px/1 Archivo;
  letter-spacing: .14em;
  color: #8E979F;
}

.airport-table-row {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  border-top: 1px solid #E5E3DE;
}

.airport-name-cell {
  padding: 22px 24px;
  font: 600 17px/1.3 Archivo;
  color: #101317;
}

.airport-price-cell {
  padding: 22px 24px;
  font: 700 22px/1 Archivo;
  color: #101317;
}

.airport-price-suffix {
  font: 500 13px/1 "Public Sans";
  color: #8E979F;
}

.airport-vehicle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  margin-top: 24px;
}

.airport-vehicle-card {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  overflow: hidden;
}

.airport-vehicle-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}

.airport-vehicle-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0;
}

.airport-vehicle-footer {
  padding: 22px 26px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
}

.airport-vehicle-title {
  font: 600 19px/1.2 Archivo;
  color: #101317;
}

.charge-info-title {
  font: 600 19px/1.2 Archivo;
  color: #101317;
}

.airport-vehicle-capacity {
  font: 500 14px/1 "Public Sans";
  color: #6B737B;
}

.hourly-price-suffix {
  font: 500 14px/1 "Public Sans";
  color: #6B737B;
}

.hourly-rates-section {
  background: #fff;
  border-top: 1px solid #E5E3DE;
  border-bottom: 1px solid #E5E3DE;
}

.hourly-rate-note {
  font: 400 15px/1.6 "Public Sans";
  color: #6B737B;
  margin-top: 18px;
}

.section-title {
  font: 600 clamp(24px, 2.6vw, 32px)/1.16 Archivo;
  letter-spacing: -.02em;
  color: #101317;
  margin-top: 14px;
}

.charge-list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 12px 28px;
}

.charge-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  font: 400 16px/1.5 "Public Sans";
  color: #3A4149;
}

.list-bullet {
  width: 6px;
  height: 6px;
  background: #0F7A38;
  margin-top: 8px;
  flex: none;
}

.charge-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  margin-top: 40px;
}

.charge-info-card {
  background: #fff;
  border: 1px solid #E5E3DE;
  border-radius: 6px;
  padding: 28px;
}

.charge-info-copy {
  font: 400 16px/1.62 "Public Sans";
  color: #4A525B;
  margin-top: 12px;
  text-wrap: pretty;
}

.pricing-notice-inner {
  max-width: 1220px;
  margin: 0 auto;
  padding: clamp(48px, 5.5vw, 76px) clamp(18px, 4vw, 40px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 36px;
  align-items: center;
}

.pricing-notice-copy {
  font: 400 16px/1.66 "Public Sans";
  color: #B4BCC3;
  margin-top: 16px;
  max-width: 60ch;
  text-wrap: pretty;
}

.pricing-notice-actions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
}

.pricing-phone-label {
  font: 600 11px/1 Archivo;
  letter-spacing: .16em;
  color: #8E979F;
}

.pricing-phone-number {
  font: 700 30px/1 Archivo;
  color: #fff;
  margin-top: 10px;
}

.pricing-request-button {
  background: #0F7A38;
  color: #fff;
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

@media (max-width: 991.98px) {
  .pricing-notice-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

@media (max-width: 991.98px) {
  .pricing-notice-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .pricing-notice-actions {
    align-items: center;
  }
}

@media (max-width: 767.98px) {
  .hero-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .section-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .pricing-notice-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {
  .hero-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .local-rate-note {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .hourly-rate-note {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .rate-card-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .airport-vehicle-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .charge-info-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .rate-card {
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .airport-rate-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 767.98px) {
  .airport-table-header {
    min-width: 680px;
  }
}

@media (max-width: 767.98px) {
  .airport-table-row {
    min-width: 680px;
  }
}

@media (max-width: 767.98px) {
  .airport-vehicle-footer {
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
  }
}

@media (max-width: 767.98px) {
  .charge-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .charge-item {
    text-align: left;
  }
}

@media (max-width: 575.98px) {
  .hero-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .section-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .pricing-notice-inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 575.98px) {
  .rate-card {
    padding: 24px 20px;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .rate-price-block {
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .rate-card-title {
    font-size: 20px;
  }
}

@media (max-width: 575.98px) {
  .rate-price {
    font-size: 31px;
  }
}

@media (max-width: 575.98px) {
  .airport-table-header {
    min-width: 600px;
  }
}

@media (max-width: 575.98px) {
  .airport-table-row {
    min-width: 600px;
  }
}

@media (max-width: 575.98px) {
  .airport-header-cell {
    padding: 14px 18px;
  }
}

@media (max-width: 575.98px) {
  .airport-name-cell {
    padding: 18px;
  }
}

@media (max-width: 575.98px) {
  .airport-price-cell {
    padding: 18px;
  }
}

@media (max-width: 575.98px) {
  .airport-vehicle-footer {
    padding: 20px;
  }
}

@media (max-width: 575.98px) {
  .section-title {
    font-size: 27px;
  }
}

@media (max-width: 575.98px) {
  .charge-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .charge-item {
    width: 100%;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 575.98px) {
  .charge-info-card {
    padding: 24px 20px;
  }
}

@media (max-width: 575.98px) {
  .pricing-notice-actions {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .pricing-request-button {
    width: 100%;
    padding: 16px 20px;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .pricing-phone-number {
    font-size: 26px;
  }
}

@media (min-width: 1400px) {
  .hero-inner {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  .section-inner {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  .pricing-notice-inner {
    max-width: 1320px;
  }
}

.rates-hero-inner {
  padding: 60px;
}

.style-89bb3d7 {
  font: 700 20px/1 Archivo;
  color: #fff;
}

.about-page,
.hero-inner>*,
.content-grid>*,
.contact-cta-inner>* {
  min-width: 0;
}

.hero-inner,
.content-grid,
.contact-cta-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.hero-title {
  font: 700 clamp(32px, 4vw, 50px)/1.08 Archivo;
  letter-spacing: -0.025em;
  color: #fff;
  margin-top: 18px;
  text-wrap: balance;
}

.hero-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #b4bcc3;
  margin-top: 20px;
  max-width: 56ch;
  text-wrap: pretty;
}

.cover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 6px;
}

.goal-section {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
}

.content-grid {
  padding: clamp(52px, 6vw, 80px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.section-title {
  font: 600 clamp(26px, 3vw, 36px)/1.14 Archivo;
  letter-spacing: -0.02em;
  color: var(--color-dark);
  margin-top: 14px;
  text-wrap: balance;
}

.copy-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
}

.body-copy-spaced {
  margin-top: 16px;
}

.fleet-section {
  background: var(--color-bg);
}

.fleet-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-top: 22px;
}

.feature-list {
  list-style: none;
  margin: 22px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px 24px;
}

.city-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px;
  margin-top: 20px;
  background: var(--color-border);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  overflow: hidden;
}

.city-card {
  background: #fff;
  padding: 20px;
  font: 600 17px/1.2 Archivo;
  color: var(--color-dark);
}

.section-copy {
  font: 400 16px/1.62 "Public Sans";
  color: var(--color-body);
  margin-top: 20px;
  text-wrap: pretty;
}

.commitment-kicker {
  display: block;
  margin-top: 36px;
}

.commitment-list {
  margin-top: 20px;
}

.contact-cta-section {
  background: var(--color-green);
  color: #fff;
}

.contact-cta-inner {
  padding: clamp(48px, 5.5vw, 76px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 36px;
  align-items: center;
}

.contact-title {
  font: 600 clamp(26px, 3vw, 36px)/1.14 Archivo;
  letter-spacing: -0.02em;
  color: #fff;
}

.contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.contact-primary-button,
.contact-secondary-button {
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.contact-primary-button {
  background: #fff;
  color: var(--color-green-dark);
}

.contact-secondary-button {
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #fff;
}

.contact-primary-button:hover {
  color: var(--color-green-dark);
}

.contact-secondary-button:hover {
  color: #fff;
}

.contact-details-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 20px;
}

.contact-detail-label {
  font: 600 11px/1 Archivo;
  letter-spacing: 0.16em;
  color: #bfe3cc;
}

.contact-detail-value {
  font: 600 17px/1.4 "Public Sans";
  color: #fff;
  margin-top: 8px;
  overflow-wrap: anywhere;
}

@media (max-width: 767.98px) {

  .hero-inner,
  .content-grid,
  .contact-cta-inner {
    text-align: center;
  }
}

@media (max-width: 767.98px) {

  .hero-inner,
  .content-grid,
  .contact-cta-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {

  .hero-copy,
  .body-copy,
  .section-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .feature-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .contact-actions {
    justify-content: center;
  }
}

@media (max-width: 575.98px) {

  .hero-copy,
  .body-copy,
  .section-copy {
    font-size: 16px;
  }
}

@media (max-width: 575.98px) {
  .feature-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .feature-item {
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
  }
}

@media (max-width: 575.98px) {
  .city-card {
    padding: 17px 12px;
    font-size: 15px;
  }
}

@media (max-width: 575.98px) {
  .contact-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {

  .contact-primary-button,
  .contact-secondary-button {
    width: 100%;
    padding: 16px 20px;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .contact-details-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 374.98px) {

  .section-title,
  .contact-title {
    font-size: 25px;
  }
}

@media (max-width: 374.98px) {
  .city-grid {
    grid-template-columns: 1fr;
  }
}

.airport-rides-page,
.hero-inner>*,
.copy-grid>*,
.vehicle-grid>*,
.details-grid>*,
.pricing-grid>*,
.cta-inner>* {
  min-width: 0;
}

.hero-inner,
.section-inner,
.details-grid,
.pricing-grid,
.cta-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.primary-button:hover {
  color: #fff;
  background: var(--color-green-dark);
}

.hero-inner {
  padding: clamp(44px, 5vw, 72px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: clamp(30px, 4vw, 56px);
  align-items: center;
}

.hero-title {
  font: 700 clamp(32px, 4vw, 52px)/1.08 Archivo;
  letter-spacing: -0.025em;
  color: #fff;
  margin-top: 18px;
  text-wrap: balance;
}

.hero-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #b4bcc3;
  margin-top: 20px;
  max-width: 54ch;
  text-wrap: pretty;
}

.airport-list {
  display: grid;
  gap: 2px;
  margin-top: 22px;
  background: #262c31;
  border: 1px solid #262c31;
  border-radius: 6px;
  overflow: hidden;
  max-width: 520px;
}

.airport-list-item {
  background: #161a1e;
  padding: 16px 20px;
  font: 600 16px/1.3 Archivo;
  color: #fff;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.primary-button {
  font: 600 16px/1 "Public Sans";
  padding: 17px 28px;
  border-radius: 4px;
}

.primary-button {
  background: var(--color-green);
  color: #fff;
}

.dark-outline-button {
  border: 1px solid #39424a;
  color: #fff;
}

.dark-outline-button:hover {
  color: #fff;
}

.hero-media {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  min-height: 280px;
}

.cover-image,
.flat-cover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cover-image {
  border-radius: 6px;
}

.flat-cover-image {
  border-radius: 0;
}

.stress-section {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
}

.section-inner {
  padding: clamp(52px, 6vw, 84px) var(--page-padding);
}

.section-title {
  font: 600 clamp(26px, 3vw, 38px)/1.14 Archivo;
  letter-spacing: -0.02em;
  color: var(--color-dark);
  margin-top: 16px;
}

.section-title-narrow {
  max-width: 24ch;
  text-wrap: balance;
}

.copy-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.body-copy {
  font: 400 17px/1.66 "Public Sans";
  color: var(--color-body);
  text-wrap: pretty;
}

.list-intro {
  font: 600 15px/1 "Public Sans";
  color: var(--color-dark);
  margin-top: 40px;
}

.traveler-list,
.details-list,
.pricing-list {
  list-style: none;
  padding: 0;
  display: grid;
}

.traveler-list {
  margin: 20px 0 0;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px 32px;
}

.feature-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  font: 400 16px/1.5 "Public Sans";
  color: var(--color-text);
}

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

.vehicle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
  margin-top: 26px;
}

.vehicle-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 32px;
}

.vehicle-media {
  position: relative;
  width: calc(100% + 64px);
  margin: -32px -32px 4px;
  aspect-ratio: 16 / 9;
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}

.vehicle-title {
  font: 600 24px/1.2 Archivo;
  letter-spacing: -0.01em;
  color: var(--color-dark);
}

.vehicle-copy {
  font: 400 16px/1.62 "Public Sans";
  color: var(--color-body);
  margin-top: 12px;
  text-wrap: pretty;
}

.section-note {
  font: 400 15px/1.6 "Public Sans";
  color: #6b737b;
  margin-top: 20px;
}

.details-section {
  background: #fff;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.details-grid {
  padding: clamp(52px, 6vw, 84px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.details-title {
  font: 600 clamp(24px, 2.6vw, 32px)/1.16 Archivo;
  letter-spacing: -0.02em;
  color: var(--color-dark);
  margin-top: 14px;
}

.details-list {
  margin: 22px 0 0;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px 24px;
}

.pricing-grid {
  padding: clamp(52px, 6vw, 84px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(28px, 4vw, 56px);
}

.pricing-copy {
  font: 400 17px/1.66 "Public Sans";
  color: var(--color-body);
  margin-top: 18px;
  max-width: 48ch;
}

.outline-button {
  display: inline-block;
  margin-top: 24px;
  border: 1px solid #c9c6c0;
  color: var(--color-dark);
  font: 600 15px/1 "Public Sans";
  padding: 15px 24px;
  border-radius: 4px;
}

.outline-button:hover {
  color: var(--color-dark);
}

.pricing-list {
  margin: 0;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px 28px;
  align-content: start;
}

.cta-section {
  background: var(--color-green);
  color: #fff;
}

.cta-inner {
  padding: clamp(48px, 5.5vw, 76px) var(--page-padding);
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  align-items: center;
  justify-content: space-between;
}

.cta-title {
  font: 600 clamp(26px, 3vw, 36px)/1.14 Archivo;
  letter-spacing: -0.02em;
  color: #fff;
}

.cta-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #d6eedf;
  margin-top: 12px;
  max-width: 50ch;
}

.cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.cta-primary-button,
.cta-secondary-button {
  font: 600 16px/1 "Public Sans";
  padding: 18px 30px;
  border-radius: 4px;
}

.cta-primary-button {
  background: #fff;
  color: var(--color-green-dark);
}

.cta-secondary-button {
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #fff;
}

.cta-primary-button:hover {
  color: var(--color-green-dark);
}

.cta-secondary-button:hover {
  color: #fff;
}

@media (max-width: 991.98px) {
  .cta-inner {
    justify-content: center;
    text-align: center;
  }
}

@media (max-width: 991.98px) {
  .cta-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .cta-actions {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {

  .hero-inner,
  .section-inner,
  .details-grid,
  .pricing-grid {
    text-align: center;
  }
}

@media (max-width: 767.98px) {

  .hero-inner,
  .copy-grid,
  .vehicle-grid,
  .details-grid,
  .pricing-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {

  .hero-copy,
  .airport-list,
  .body-copy,
  .pricing-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .hero-actions {
    justify-content: center;
  }
}

@media (max-width: 767.98px) {
  .hero-media {
    min-height: 240px;
  }
}

@media (max-width: 767.98px) {

  .traveler-list,
  .details-list,
  .pricing-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .feature-item {
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .vehicle-card {
    text-align: center;
  }
}

@media (max-width: 575.98px) {

  .hero-copy,
  .body-copy,
  .pricing-copy,
  .cta-copy {
    font-size: 16px;
  }
}

@media (max-width: 575.98px) {

  .hero-actions,
  .cta-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {

  .primary-button,
  .dark-outline-button,
  .cta-primary-button,
  .cta-secondary-button,
  .outline-button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .hero-media {
    min-height: 210px;
  }
}

@media (max-width: 575.98px) {

  .traveler-list,
  .details-list,
  .pricing-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .feature-item {
    width: 100%;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 575.98px) {
  .vehicle-card {
    padding: 24px 20px;
  }
}

@media (max-width: 575.98px) {
  .vehicle-media {
    width: calc(100% + 40px);
    margin: -24px -20px 4px;
  }
}

@media (max-width: 374.98px) {
  .hero-title {
    font-size: 27px;
  }
}

@media (max-width: 374.98px) {

  .section-title,
  .details-title,
  .cta-title {
    font-size: 25px;
  }
}

@media (max-width: 374.98px) {
  .airport-list-item {
    padding: 14px 16px;
    font-size: 15px;
  }
}

.hero-inner,
.booking-grid,
.section-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.book-now-page {
  min-width: 0;
}

.hero-section {
  background: var(--color-dark);
  color: #fff;
}

.hero-inner {
  padding: clamp(44px, 5vw, 68px) var(--page-padding);
}

.section-kicker {
  font: 600 12px/1 Archivo;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-green);
}

.section-kicker-light {
  color: var(--color-green-light);
}

.hero-title {
  font: 700 clamp(32px, 4vw, 52px)/1.08 Archivo;
  letter-spacing: -0.025em;
  color: #fff;
  margin-top: 18px;
}

.hero-copy {
  font: 400 17px/1.62 "Public Sans";
  color: #b4bcc3;
  margin-top: 18px;
  max-width: 68ch;
  text-wrap: pretty;
}

.booking-section {
  background: var(--color-bg);
}

.booking-grid {
  padding: clamp(44px, 5vw, 72px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  align-items: start;
}

.embed-card {
  background: #fff;
  border-radius: 6px;
  min-height: 520px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 48px;
  text-align: left;
}

.embed-label {
  font: 600 11px/1 Archivo;
  letter-spacing: 0.2em;
  color: var(--color-green);
}

.embed-title {
  font: 600 24px/1.2 Archivo;
  color: var(--color-dark);
  max-width: 22ch;
}

.embed-copy {
  font: 400 15px/1.6 "Public Sans";
  color: #6b737b;
  max-width: 46ch;
  text-wrap: pretty;
}

.booking-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.notice-card {
  background: var(--color-dark);
  border-radius: 6px;
  padding: 28px;
  color: #fff;
}

.notice-label {
  font: 600 11px/1 Archivo;
  letter-spacing: 0.18em;
  color: var(--color-green-light);
}

.notice-copy {
  font: 400 16px/1.62 "Public Sans";
  color: #b4bcc3;
  margin-top: 14px;
  text-wrap: pretty;
}

.assistance-block {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #262c31;
}

.assistance-label {
  font: 600 11px/1 Archivo;
  letter-spacing: 0.16em;
  color: var(--color-text-muted);
}

.assistance-phone {
  display: block;
  font: 700 26px/1 Archivo;
  color: #fff;
  margin-top: 10px;
}

.assistance-hours {
  font: 500 14px/1 "Public Sans";
  color: var(--color-text-muted);
  margin-top: 10px;
}

.options-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 28px;
}

.options-title {
  font: 600 19px/1.2 Archivo;
  color: var(--color-dark);
}

.options-title-spaced {
  margin-top: 26px;
}

.option-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.option-pill {
  font: 500 14px/1 "Public Sans";
  color: var(--color-text);
  border: 1px solid var(--color-border);
  border-radius: 100px;
  padding: 10px 16px;
}

.process-section {
  background: #fff;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.section-inner {
  padding: clamp(52px, 6vw, 80px) var(--page-padding);
}

.process-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 2px;
  margin-top: 28px;
  background: var(--color-border);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  overflow: hidden;
}

.process-step {
  background: #fff;
  padding: 24px;
}

.process-number {
  font: 700 13px/1 Archivo;
  letter-spacing: 0.1em;
  color: var(--color-green);
}

.process-copy {
  font: 500 15.5px/1.5 "Public Sans";
  color: var(--color-dark);
  margin-top: 10px;
}

.section-title {
  font: 600 clamp(24px, 2.6vw, 32px)/1.16 Archivo;
  letter-spacing: -0.02em;
  color: var(--color-dark);
  margin-top: 14px;
}

.information-list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 12px 28px;
}

.information-item {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  font: 400 16px/1.5 "Public Sans";
  color: var(--color-text);
}

.list-bullet {
  width: 6px;
  height: 6px;
  background: var(--color-green);
  margin-top: 8px;
  flex: none;
}

.book-now-page,
.booking-grid>* {
  min-width: 0;
}

@media (max-width: 991.98px) {

  .hero-inner,
  .booking-grid,
  .section-inner {
    text-align: center;
  }
}

@media (max-width: 991.98px) {

  .hero-copy,
  .embed-title,
  .embed-copy {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 991.98px) {
  .option-list {
    justify-content: center;
  }
}

@media (max-width: 991.98px) {
  .information-item {
    justify-content: center;
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  .booking-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .embed-card {
    min-height: 420px;
    padding: 36px 24px;
  }
}

@media (max-width: 767.98px) {
  .process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .information-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .hero-title {
    font-size: 30px;
  }
}

@media (max-width: 575.98px) {
  .hero-copy {
    font-size: 16px;
  }
}

@media (max-width: 575.98px) {
  .embed-card {
    min-height: 340px;
    padding: 30px 18px;
  }
}

@media (max-width: 575.98px) {
  .embed-title {
    font-size: 21px;
  }
}

@media (max-width: 575.98px) {

  .notice-card,
  .options-card {
    padding: 22px;
  }
}

@media (max-width: 575.98px) {
  .option-list {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {
  .option-pill {
    text-align: center;
  }
}

@media (max-width: 575.98px) {

  .process-grid,
  .information-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .process-step {
    padding: 20px;
  }
}

@media (max-width: 575.98px) {
  .information-item {
    justify-content: flex-start;
    max-width: 290px;
    width: 100%;
    margin: 0 auto;
  }
}

@media (max-width: 399.98px) {
  .hero-title {
    font-size: 27px;
  }
}

@media (max-width: 399.98px) {
  .embed-card {
    min-height: 300px;
    padding: 26px 16px;
  }
}

@media (max-width: 399.98px) {

  .notice-card,
  .options-card,
  .process-step {
    padding: 18px;
  }
}

/* ==================================================
   FOOTER — ONE SHARED BLOCK AT THE BOTTOM
================================================== */

footer a:hover {
  color: var(--color-green-light);
}

.footer-phone:hover {
  color: #fff;
}

.site-footer .footer-contact-text:hover,
.site-footer .footer-link:hover {
  color: #c7cdd3;
}

.footer-inner>* {
  min-width: 0;
}

.site-footer {
  background: var(--color-darkest);
  color: #fff;
}

.footer-inner,
.footer-bottom-inner {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

.footer-inner {
  padding: clamp(48px, 5vw, 72px) var(--page-padding);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 40px;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.footer-brand-title {
  font: 700 15px/1 Archivo;
  letter-spacing: 0.02em;
  color: #fff;
}

.footer-brand-subtitle {
  font: 600 10.5px/1 Archivo;
  letter-spacing: 0.28em;
  color: var(--color-green-light);
}

.footer-description {
  font: 400 15.5px/1.62 "Public Sans";
  color: var(--color-text-muted);
  margin-top: 20px;
  max-width: 34ch;
  text-wrap: pretty;
}

.footer-heading {
  font: 600 11px/1 Archivo;
  letter-spacing: 0.18em;
  color: #5e666d;
}

.footer-contact-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 18px;
}

.footer-contact-text,
.footer-link {
  color: #c7cdd3;
}

.footer-contact-text {
  overflow-wrap: anywhere;
  font: 400 15.5px/1.5 "Public Sans";
}

.footer-phone {
  font: 700 20px/1 Archivo;
  color: #fff;
}

.footer-hours {
  font: 500 15.5px/1.5 "Public Sans";
  color: var(--color-green-light);
}

.footer-links-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 12px 20px;
  margin-top: 18px;
}

.footer-link {
  font: 400 15.5px/1 "Public Sans";
}

.footer-bottom {
  border-top: 1px solid #1b1f23;
}

.footer-bottom-inner {
  padding: 26px var(--page-padding);
  display: flex;
  flex-wrap: wrap;
  gap: 16px 32px;
  justify-content: space-between;
  align-items: center;
}

.footer-disclaimer,
.footer-copyright {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

.footer-disclaimer {
  flex: 1 1 620px;
  font: 400 13.5px/1.6 "Public Sans";
  color: #6b737b;
  max-width: 100%;
  text-wrap: pretty;
}

.footer-copyright {
  flex: 0 1 auto;
  font: 400 13.5px/1 "Public Sans";
  color: #5e666d;
  white-space: nowrap;
}

@media (max-width: 991.98px) {

  .footer-inner,
  .footer-bottom-inner {
    text-align: center;
  }

  .footer-brand,
  .footer-bottom-inner {
    justify-content: center;
  }

  .footer-contact-list {
    align-items: center;
  }

  .footer-description,
  .footer-disclaimer {
    margin-left: auto;
    margin-right: auto;
  }

  .footer-links-grid {
    justify-items: center;
  }

  .footer-bottom-inner {
    flex-direction: column;
  }

  .footer-disclaimer,
  .footer-copyright {
    width: 100%;
    max-width: 100% !important;
    flex: 1 1 100%;
    text-align: center;
  }

  .footer-copyright {
    white-space: normal !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 767.98px) {
  .footer-inner {
    grid-template-columns: 1fr !important;
  }

  .footer-brand-title {
    font-size: 13px !important;
  }

  .footer-brand-subtitle {
    font-size: 9px !important;
    letter-spacing: 0.2em !important;
  }
}

@media (max-width: 575.98px) {

  .footer-inner,
  .footer-bottom-inner {
    padding-left: var(--page-padding);
    padding-right: var(--page-padding);
  }

  .footer-links-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .footer-copyright {
    width: 100%;
    font-size: 12.5px !important;
  }
}

@media (min-width: 1400px) {

  .footer-inner,
  .footer-bottom-inner {
    max-width: 1320px !important;
  }
}

@media (max-width: 399.98px) {
  .footer-brand {
    flex-direction: column;
    gap: 9px;
  }

}

@media (max-width: 379.98px) {
  .footer-brand-title {
    font-size: 12px;
  }

  .footer-brand-subtitle {
    font-size: 8px;
  }
}

@media (max-width: 374.98px) {
  .footer-links-grid {
    grid-template-columns: 1fr !important;
  }
}

.book-now-hero {
  padding: 60px;
}


/* =========================================================
   MOBILE HEADER
   ========================================================= */

/* Mobile menu button hidden on desktop */
.mobile-menu-toggle {
    display: none;
}


/* Mobile menu hidden on desktop */
.mobile-menu {
    display: none;
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 991.98px) {

    .header-inner {
        position: relative;
        padding: 10px var(--page-padding);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
    }


    /* -------------------------
       Brand
       ------------------------- */

    .brand-link {
        display: flex;
        align-items: center;
        gap: 8px;
        flex: 1 1 auto;
        min-width: 0;
        width: auto !important;
        flex-direction: row;
        justify-content: flex-start;
    }


    .brand-logo {
        width: 65px;
        height: 65px;
        flex: none;
    }


    .brand-text {
        min-width: 0;
    }


    .brand-title {
        font-size: 16px;
    }


    .brand-subtitle {
        font-size: 12px;
    }


    /* -------------------------
       Hide desktop navigation
       ------------------------- */

    .primary-nav {
        display: none !important;
    }


    /* -------------------------
       Hide desktop actions
       ------------------------- */

    .header-actions {
        display: flex; !important;
        order: -1;
        padding-top: 15px;
    }


    /* -------------------------
       Hamburger
       ------------------------- */

    .mobile-menu-toggle {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;

        width: 44px;
        height: 44px;

        padding: 8px;
        margin-left: auto;

        background: transparent;
        border: 0;
        cursor: pointer;

        flex: none;
    }


    .mobile-menu-toggle span {
        display: block;

        width: 26px;
        height: 2px;

        margin: 3px 0;

        background: var(--color-text);

        transition:
            transform 0.25s ease,
            opacity 0.25s ease;
    }


    /* -------------------------
       Hamburger → X
       ------------------------- */

    .site-header.menu-open .mobile-menu-toggle span:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
    }


    .site-header.menu-open .mobile-menu-toggle span:nth-child(2) {
        opacity: 0;
    }


    .site-header.menu-open .mobile-menu-toggle span:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg);
    }


    /* -------------------------
       Mobile menu
       ------------------------- */

    .mobile-menu {
        width: 100%;

        padding: 10px var(--page-padding) 20px;

        background: #fff;

        border-top: 1px solid #e5e3de;

        box-sizing: border-box;
    }


    .site-header.menu-open .mobile-menu {
        display: block;
    }


    /* -------------------------
       Mobile navigation
       ------------------------- */

    .mobile-nav {
        display: flex;
        flex-direction: column;
        width: 100%;
    }


    .mobile-nav-link {
        display: block;

        width: 100%;

        padding: 15px 5px;

        font: 500 15px/1.3 "Public Sans";

        color: var(--color-text);

        text-decoration: none;

        border-bottom: 1px solid #e5e3de;

        box-sizing: border-box;
    }


    .mobile-nav-link:hover {
        color: var(--color-text);
    }


    .mobile-nav-link-active {
        color: var(--color-green);
    }


    /* -------------------------
       Mobile phone + CTA
       ------------------------- */

    .mobile-header-actions {
        display: flex;
        flex-direction: column;

        width: 100%;

        gap: 10px;

        padding-top: 15px;
    }


    .mobile-phone-link {
        display: flex;
        flex-direction: column;

        padding: 10px 5px;

        color: var(--color-text);

        text-decoration: none;
    }


    .mobile-phone-label {
        font-size: 12px;
        opacity: 0.7;
    }


    .mobile-phone-number {
        font-size: 16px;
        font-weight: 600;
    }


    .mobile-header-cta {
        display: block;

        width: 100%;

        padding: 13px 18px;

        text-align: center;

        box-sizing: border-box;

        text-decoration: none;

        font-weight: 600;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 575.98px) {

    .header-inner {
        padding-left: 15px;
        padding-right: 15px;
    }


    .brand-logo {
        width: 55px;
        height: 55px;
    }


    .brand-title {
        font-size: 15px;
    }


    .brand-subtitle {
        font-size: 11px;
    }


    .mobile-menu {
        padding-left: 15px;
        padding-right: 15px;
    }

}

/* ============================================================
   THANK YOU PAGE
   Append to assets/styles.css. Structure only — colours and type
   fall back to whatever the existing theme already defines, so
   nothing here overrides the current design.
   ============================================================ */

.thankyou-hero {
	padding: 96px 0 64px;
	text-align: center;
}

.thankyou-hero__inner {
	max-width: 720px;
	margin: 0 auto;
}

.thankyou-hero__eyebrow {
	display: inline-block;
	margin-bottom: 18px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	opacity: 0.75;
}

.thankyou-hero__title {
	margin: 0 0 20px;
}

.thankyou-hero__title-one,
.thankyou-hero__title-two {
	display: inline;
}

.thankyou-hero__title-two {
	margin-left: 0.3em;
}

.thankyou-hero__intro {
	margin: 0;
	font-size: 18px;
	line-height: 1.7;
	opacity: 0.85;
}

/* ---------- Next steps ---------- */

.thankyou-steps {
	padding: 0 0 72px;
}

.thankyou-steps__heading {
	margin: 0 0 40px;
	text-align: center;
}

.thankyou-steps__list {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
	max-width: 1040px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	counter-reset: none;
}

.thankyou-steps__item {
	padding: 32px 28px;
	border: 1px solid currentColor;
	border-color: color-mix(in srgb, currentColor 15%, transparent);
	border-radius: 4px;
}

.thankyou-steps__number {
	display: block;
	margin-bottom: 14px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.12em;
	opacity: 0.55;
}

.thankyou-steps__title {
	margin: 0 0 10px;
	font-size: 19px;
}

.thankyou-steps__text {
	margin: 0;
	line-height: 1.7;
	opacity: 0.85;
}

/* ---------- Contact ---------- */

.thankyou-contact {
	padding: 0 0 96px;
	text-align: center;
}

.thankyou-contact__inner {
	max-width: 640px;
	margin: 0 auto;
}

.thankyou-contact__heading {
	margin: 0 0 14px;
}

.thankyou-contact__text {
	margin: 0 0 28px;
	line-height: 1.7;
	opacity: 0.85;
}

.thankyou-contact__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
}

/* ---------- Responsive ---------- */

@media (max-width: 991px) {
	.thankyou-steps__list {
		grid-template-columns: 1fr;
		max-width: 560px;
	}
}

@media (max-width: 767px) {
	.thankyou-hero {
		padding: 64px 0 48px;
	}

	.thankyou-hero__intro {
		font-size: 16px;
	}

	.thankyou-steps {
		padding-bottom: 56px;
	}

	.thankyou-contact {
		padding-bottom: 72px;
	}

	.thankyou-contact__actions .btn {
		width: 100%;
	}
}
