
/* Final conversion + SEO pass */
:root{--container-max:1200px;}
.container,.header__inner.container-wide{max-width:var(--container-max)!important;margin-inline:auto!important;}
.header__inner.container-wide{padding-inline:24px!important;}
.section{scroll-margin-top:104px;}
.hero-review-badge,.proof-card,.review-mini-proof a{transition:transform .18s ease, box-shadow .18s ease;}
.hero-review-badge:hover,.proof-card:hover,.review-mini-proof a:hover{transform:translateY(-2px);}
.tour-card__body .price--quote{display:flex!important;flex-direction:column!important;gap:4px!important;margin-top:12px!important;color:#0d3b2e!important;font-weight:800!important;line-height:1.2!important;}
.tour-card__body .price--quote small{font-size:12px!important;color:#69746f!important;font-weight:700!important;letter-spacing:.01em!important;}
.cta-proof{margin:10px 0 0!important;font-size:13px!important;line-height:1.45!important;color:#5c6b64!important;font-weight:700!important;}
.booking-price-cue{margin:16px 0 18px;padding:16px 18px;border-radius:18px;background:#fff7ef;border:1px solid rgba(242,138,32,.18);display:grid;gap:4px;}
.booking-price-cue strong{font-size:17px;color:#153d31;}
.booking-price-cue span{font-size:14px;color:#69746f;}
.trust-line{display:flex;flex-wrap:wrap;gap:8px 10px;margin:14px 0 0;padding:0;list-style:none;}
.trust-line li{font-size:12px;font-weight:800;color:#23483d;background:#eef8f1;border:1px solid rgba(17,98,74,.12);border-radius:999px;padding:8px 10px;}
.faq-section{background:#fbf7f1;}
.faq-grid{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.35fr);gap:clamp(28px,5vw,72px);align-items:start;}
.faq-intro{position:sticky;top:112px;}
.faq-intro h2{font-size:clamp(32px,4vw,54px);line-height:1.04;letter-spacing:-.04em;margin:0 0 16px;color:#112b24;}
.faq-intro p{color:#5e6e66;line-height:1.7;margin:0 0 24px;}
.faq-list{display:grid;gap:14px;}
.faq-item{background:#fff;border:1px solid rgba(17,43,36,.08);box-shadow:0 18px 50px rgba(22,39,33,.07);border-radius:18px;padding:22px 24px;}
.faq-item h3{font-size:18px;line-height:1.35;margin:0 0 10px;color:#122b24;}
.faq-item p{margin:0;color:#64736d;line-height:1.65;}
.seo-links{background:#fff;}
.seo-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;}
.seo-card{display:block;padding:22px;border-radius:20px;background:#f8f3eb;border:1px solid rgba(17,43,36,.08);text-decoration:none;color:#102c24;min-height:150px;}
.seo-card strong{display:block;font-size:18px;line-height:1.25;margin-bottom:10px;}
.seo-card span{display:block;color:#66766e;line-height:1.5;font-size:14px;}
.seo-card:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(17,43,36,.08);}
.landing-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:clamp(30px,5vw,70px);align-items:start;}
.landing-copy{font-size:18px;line-height:1.8;color:#5f6f68;}
.landing-copy h2{font-size:clamp(30px,3.4vw,48px);line-height:1.08;color:#102c24;margin:0 0 18px;letter-spacing:-.035em;}
.landing-copy ul{padding-left:20px;}
.landing-aside{background:#102c24;color:#fff;border-radius:28px;padding:28px;position:sticky;top:110px;}
.landing-aside h2{font-size:28px;line-height:1.1;margin:0 0 12px;color:#fff;}
.landing-aside p{color:rgba(255,255,255,.76);line-height:1.65;}
.landing-aside .btn-primary{width:100%;justify-content:center;margin-top:12px;}
.tour-card img,.article-card img,.tour-main-img,.why__image img{filter:saturate(1.03) contrast(1.02);}
.quick-quote__inner,.booking-box,.contact-card{box-shadow:0 24px 70px rgba(17,43,36,.08)!important;}
@media(max-width:1100px){.seo-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.faq-grid,.landing-content{grid-template-columns:1fr;}.faq-intro,.landing-aside{position:static;}}
@media(max-width:720px){.header__inner.container-wide{padding-inline:16px!important;}.seo-card-grid{grid-template-columns:1fr;}.faq-item{padding:20px;}.trust-line li{font-size:11px;}.landing-copy{font-size:16px;}.tour-card__body .price--quote{font-size:15px!important;}}

/* 2026-07-06 global width alignment fix
   One content rail is used for header, hero, Quick Quote and page sections. */
:root{
  --site-gutter:clamp(28px,3vw,64px);
  --site-content:calc(100% - (var(--site-gutter) * 2));
  --site-content-max:1920px;
  --site-radius-lg:30px;
}
.container,
.container-wide,
.header__inner.container-wide,
.hero__content.container,
.hero__pager.container,
.page-hero .container,
.section > .container,
.quick-quote__inner.container,
.review-proof .container,
.credentials .container,
.contact-map--embed,
.footer .container{
  width:min(var(--site-content-max), var(--site-content))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.header__inner.container-wide{
  padding-inline:0!important;
}
#quick-quote.quick-quote{
  padding-top:clamp(112px,8vw,150px)!important;
  padding-bottom:clamp(86px,7vw,118px)!important;
}
#quick-quote .quick-quote__inner{
  width:min(var(--site-content-max), var(--site-content))!important;
  max-width:none!important;
  margin-inline:auto!important;
  padding:clamp(54px,4.5vw,84px)!important;
  border-radius:var(--site-radius-lg)!important;
}
#quick-quote .quote-form{
  border-radius:var(--site-radius-lg)!important;
}
@media (max-width:1180px){
  :root{--site-gutter:24px;--site-radius-lg:24px;}
  #quick-quote .quick-quote__inner{padding:34px!important;}
}
@media (max-width:620px){
  :root{--site-gutter:14px;--site-radius-lg:22px;}
  #quick-quote .quick-quote__inner{padding:22px!important;}
}


/* Conversion plan additions */
.booking-steps,
.quote-checklist,
.tour-quote-checklist,
.landing-faq {
  scroll-margin-top: calc(var(--header-offset, 92px) + 24px);
}
.booking-steps__inner,
.quote-checklist__inner {
  background: linear-gradient(135deg, #ffffff 0%, #fff8ef 100%);
  border: 1px solid rgba(5, 38, 31, 0.10);
  border-radius: 34px;
  padding-block: clamp(28px, 5vw, 64px);
  padding-inline: clamp(32px, 4vw, 52px);
  box-shadow: 0 24px 70px rgba(5, 38, 31, 0.08);
}
.booking-steps__inner {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.25fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: center;
}
.booking-steps__intro h2,
.quote-checklist__inner h2 { margin: 0 0 16px; }
.booking-step-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.booking-step-card {
  background: #fff;
  border: 1px solid rgba(5, 38, 31, 0.10);
  border-radius: 24px;
  padding: 24px;
  min-width: 0;
}
.booking-step-card span {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(255, 136, 24, 0.12);
  color: #f58216;
  font-weight: 800;
  margin-bottom: 20px;
}
.booking-step-card h3 { margin: 0 0 10px; font-size: 1.15rem; }
.booking-step-card p { margin: 0; color: #64716c; line-height: 1.65; }
.quote-checklist__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(180px, auto);
  gap: 28px;
  align-items: center;
}
.quote-checklist__items {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.quote-checklist__items li {
  position: relative;
  padding-left: 26px;
  color: #243c36;
  font-weight: 700;
}
.quote-checklist__items li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #f58216;
}
.quote-checklist__inner--tour { margin-top: 0; }
.landing-faq .faq-grid,
.faq-section .faq-grid { align-items: start; }
.header__inner.container-wide,
.container,
.container-wide { max-width: var(--site-rail, 1560px); }
@media (max-width: 1180px) {
  .booking-steps__inner,
  .quote-checklist__inner {
    grid-template-columns: 1fr;
  }
  .booking-step-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .booking-steps__inner,
  .quote-checklist__inner { border-radius: 24px; padding: 24px; }
  .booking-step-card { padding: 20px; }
}

@media (max-width: 900px) {
  .booking-steps__inner {
    padding-inline: clamp(22px, 4vw, 32px);
  }
}




/* Definitive padded-card layout for conversion sections */
.quote-checklist__inner,
.booking-steps__inner {
  display: block !important;
  padding: 0 !important;
  overflow: hidden;
  box-sizing: border-box;
}

.quote-checklist__pad,
.booking-steps__pad {
  box-sizing: border-box;
  width: 100%;
  padding: clamp(56px, 5vw, 84px) clamp(64px, 5.6vw, 104px) !important;
}

.quote-checklist__pad {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.55fr) minmax(280px, auto);
  gap: clamp(40px, 5vw, 90px);
  align-items: center;
}

.booking-steps__pad {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.35fr);
  gap: clamp(50px, 5vw, 96px);
  align-items: center;
}

.quote-checklist__copy,
.booking-steps__intro {
  min-width: 0;
}

@media (max-width: 1180px) {
  .quote-checklist__pad,
  .booking-steps__pad {
    padding: 44px clamp(34px, 5vw, 56px) !important;
  }

  .quote-checklist__pad,
  .booking-steps__pad {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .quote-checklist__pad,
  .booking-steps__pad {
    padding: 28px 22px !important;
  }
}


/* Tour-page quote checklist: restore real inner padding and responsive layout */
.quote-checklist__inner--tour {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.55fr) minmax(240px, auto);
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
  padding: clamp(30px, 4vw, 52px) clamp(24px, 4vw, 44px) !important;
}
.quote-checklist__inner--tour > * {
  min-width: 0;
}
.quote-checklist__inner--tour .btn-primary {
  justify-self: start;
}
@media (max-width: 1180px) {
  .quote-checklist__inner--tour {
    grid-template-columns: 1fr;
    padding: 28px 24px !important;
    gap: 24px;
  }
}
@media (max-width: 700px) {
  .quote-checklist__inner--tour {
    padding: 22px 16px !important;
    gap: 20px;
  }
  .quote-checklist__inner--tour .btn-primary {
    width: 100%;
    justify-content: center;
  }
}

/* Definitive tour-page quote-card padding fix */
section.tour-quote-checklist > .container.quote-checklist__inner.quote-checklist__inner--tour {
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
}

section.tour-quote-checklist .tour-quote-inner-pad {
  box-sizing: border-box !important;
  width: 100% !important;
  padding: clamp(44px, 4.5vw, 76px) clamp(56px, 5vw, 92px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 0.55fr) minmax(260px, auto) !important;
  gap: clamp(36px, 4.5vw, 76px) !important;
  align-items: center !important;
}

section.tour-quote-checklist .tour-quote-inner-pad > * {
  min-width: 0 !important;
}

section.tour-quote-checklist .tour-quote-inner-pad .btn-primary {
  justify-self: start !important;
}

@media (max-width: 1180px) {
  section.tour-quote-checklist .tour-quote-inner-pad {
    grid-template-columns: 1fr !important;
    padding: 36px 32px !important;
  }
}

@media (max-width: 700px) {
  section.tour-quote-checklist .tour-quote-inner-pad {
    padding: 26px 20px !important;
    gap: 22px !important;
  }

  section.tour-quote-checklist .tour-quote-inner-pad .btn-primary {
    width: 100% !important;
    justify-content: center !important;
  }
}
