/* =========================================================
   PRODE TOURS — PUBLIC V3 / LUXURY REFINEMENT
   Visual layer only. No booking / application logic.
   ========================================================= */

.public-v3{
  --v3-ink:#151c19;
  --v3-ink-2:#202b27;
  --v3-green:#243d34;
  --v3-green-deep:#13221d;
  --v3-gold:#a87a43;
  --v3-gold-soft:#ddc19a;
  --v3-paper:#f7f3ec;
  --v3-paper-2:#fcfaf6;
  --v3-line:rgba(28,36,33,.105);
  --v3-line-strong:rgba(28,36,33,.17);
  --v3-shadow:0 18px 50px rgba(20,28,25,.075);
  --v3-shadow-lg:0 30px 80px rgba(17,24,21,.13);
  --v3-radius:30px;
  --v3-radius-sm:20px;
  background:
    radial-gradient(circle at 8% 4%,rgba(199,164,111,.08),transparent 23rem),
    radial-gradient(circle at 92% 42%,rgba(36,61,52,.055),transparent 28rem),
    linear-gradient(180deg,#fffdf9 0%,#faf6ef 100%);
}

.public-v3::selection,
.public-v3 *::selection{
  color:#fff;
  background:rgba(140,99,51,.86);
}

.public-v3 main{overflow:clip}
.public-v3 .section{
  padding-top:clamp(82px,8vw,126px);
  padding-bottom:clamp(82px,8vw,126px);
}
.public-v3 .section.alt{
  background:
    radial-gradient(circle at 82% 14%,rgba(181,144,91,.08),transparent 28rem),
    linear-gradient(180deg,rgba(242,235,224,.62),rgba(250,247,241,.78));
}
.public-v3 .section::after{opacity:.62}
.public-v3 .section-head{gap:clamp(30px,5vw,72px);margin-bottom:clamp(42px,5vw,68px)}
.public-v3 .section-head h2,
.public-v3 .story-grid h2,
.public-v3 .contact-info h2,
.public-v3 .contact-form h2{
  text-wrap:balance;
  letter-spacing:-.045em;
}
.public-v3 .section-head p{font-size:15.5px;line-height:1.8;text-wrap:pretty}

/* ---------- Header / navigation ---------- */
.public-v3 .site-header{
  height:72px;
  padding-inline:clamp(18px,3.6vw,58px);
  background:linear-gradient(180deg,rgba(11,17,15,.88),rgba(14,22,19,.78));
  border-bottom:1px solid rgba(255,255,255,.095);
  box-shadow:0 8px 30px rgba(0,0,0,.12);
  backdrop-filter:blur(20px) saturate(130%);
}
.public-v3 .site-header.scrolled{
  height:64px;
  background:rgba(15,23,20,.94);
  box-shadow:0 14px 38px rgba(0,0,0,.18);
  border-bottom-color:rgba(255,255,255,.11);
}
.public-v3 .brand-logo{filter:drop-shadow(0 8px 18px rgba(0,0,0,.13))}
.public-v3 .main-nav{gap:4px}
.public-v3 .nav-main-link,
.public-v3 .nav-dropdown-toggle{
  letter-spacing:.105em;
  font-size:10px;
  font-weight:800;
}
.public-v3 .main-nav a,
.public-v3 .nav-dropdown-toggle{
  transition:background .22s ease,color .22s ease,transform .22s ease,border-color .22s ease;
}
.public-v3 .main-nav a:hover,
.public-v3 .nav-dropdown-toggle:hover{background:rgba(255,255,255,.075)}
.public-v3 .nav-cta{
  min-height:40px;
  border-color:rgba(221,193,154,.46);
  background:linear-gradient(135deg,rgba(168,122,67,.94),rgba(132,91,45,.93));
  box-shadow:0 10px 26px rgba(84,55,24,.19);
}
.public-v3 .nav-cta:hover{background:linear-gradient(135deg,#b1844f,#936536)}
.public-v3 .language-current{
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.045);
}
.public-v3 .language-menu,
.public-v3 .nav-dropdown-menu{
  border-color:rgba(255,255,255,.11);
  box-shadow:0 24px 65px rgba(0,0,0,.25);
  backdrop-filter:blur(22px) saturate(120%);
}

/* ---------- Hero language ---------- */
.public-v3 .hero,
.public-v3 .page-hero,
.public-v3 .tour-hero{
  background:#13201b;
}
.public-v3 .hero::before,
.public-v3 .page-hero::before,
.public-v3 .tour-hero::before{
  background:
    linear-gradient(102deg,rgba(5,9,8,.91) 0%,rgba(5,9,8,.70) 37%,rgba(5,9,8,.30) 69%,rgba(5,9,8,.13) 100%),
    linear-gradient(180deg,rgba(5,9,8,.11) 0%,rgba(5,9,8,.65) 100%);
}
.public-v3 .hero::after,
.public-v3 .page-hero::after,
.public-v3 .tour-hero::after{
  width:520px;
  height:520px;
  bottom:-230px;
  left:-150px;
  background:radial-gradient(circle,rgba(214,179,128,.18),transparent 68%);
}
.public-v3 .hero img,
.public-v3 .page-hero img,
.public-v3 .tour-hero img{
  transform:scale(1.018);
}
.public-v3 .hero-content,
.public-v3 .page-hero-content,
.public-v3 .tour-hero-content{
  text-shadow:0 3px 20px rgba(0,0,0,.48);
}
.public-v3 .eyebrow{
  gap:12px;
  font-size:9.5px;
  letter-spacing:.25em;
  color:var(--v3-gold-soft);
}
.public-v3 .eyebrow::before{width:34px;opacity:.8}
.public-v3 .hero h1,
.public-v3 .page-hero h1,
.public-v3 .tour-hero h1{
  text-wrap:balance;
  letter-spacing:-.052em;
}
.public-v3 .page-hero h1,
.public-v3 .tour-hero h1{max-width:820px}
.public-v3 .hero p,
.public-v3 .page-hero p,
.public-v3 .tour-hero p{
  max-width:650px;
  line-height:1.72;
  color:rgba(255,255,255,.88);
  text-wrap:pretty;
}

/* ---------- Buttons / links ---------- */
.public-v3 .btn{
  min-height:52px;
  padding-inline:23px;
  letter-spacing:.105em;
  border-radius:999px;
  box-shadow:none;
}
.public-v3 .btn-primary{
  background:linear-gradient(135deg,#a97940,#8d6133);
  box-shadow:0 16px 32px rgba(118,77,34,.20);
}
.public-v3 .btn-primary:hover{box-shadow:0 20px 42px rgba(118,77,34,.28)}
.public-v3 .btn-light{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.25)}
.public-v3 .btn-dark{box-shadow:0 15px 32px rgba(27,49,41,.16)}
.public-v3 .text-link{letter-spacing:.135em;transition:color .2s ease}
.public-v3 .text-link:hover{color:var(--v3-gold)}
.public-v3 a:focus-visible,
.public-v3 button:focus-visible,
.public-v3 input:focus-visible,
.public-v3 select:focus-visible,
.public-v3 textarea:focus-visible{
  outline:3px solid rgba(168,122,67,.28);
  outline-offset:3px;
}

/* ---------- Universal cards ---------- */
.public-v3 .tour-card,
.public-v3 .vehicle,
.public-v3 .feature,
.public-v3 .info-box,
.public-v3 .contact-form,
.public-v3 .booking-card,
.public-v3 .faq-group,
.public-v3 .review-card,
.public-v3 .legal-block{
  border-color:var(--v3-line);
  box-shadow:var(--v3-shadow);
}
.public-v3 .tour-card,
.public-v3 .vehicle,
.public-v3 .feature,
.public-v3 .info-box{
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(251,248,242,.88));
}
.public-v3 .tour-card,
.public-v3 .vehicle{
  border-radius:28px;
  overflow:hidden;
}
.public-v3 .tour-card:hover,
.public-v3 .vehicle:hover{
  transform:translateY(-6px);
  box-shadow:0 26px 60px rgba(20,28,25,.13);
}
.public-v3 .tour-card .media{height:300px}
.public-v3 .tour-card .media::after{background:linear-gradient(180deg,transparent 52%,rgba(9,14,12,.23) 100%)}
.public-v3 .tour-card-body{padding:27px 27px 30px}
.public-v3 .tour-card-body h3{letter-spacing:-.03em;line-height:1.08}
.public-v3 .tour-card-body>p{line-height:1.72}
.public-v3 .tour-meta{letter-spacing:.085em}
.public-v3 .vehicle img{height:270px;background:#f3efe8}
.public-v3 .vehicle-body{padding:28px 28px 31px}
.public-v3 .vehicle h3{letter-spacing:-.035em}
.public-v3 .feature{border-radius:28px;padding:38px}
.public-v3 .feature-num{font-size:40px;opacity:.50}
.public-v3 .feature h3{letter-spacing:-.03em}
.public-v3 .feature p{line-height:1.75}

/* ---------- Destination / image cards ---------- */
.public-v3 .destination-grid{gap:18px}
.public-v3 .destination-card{
  border-radius:30px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 26px 60px rgba(18,24,22,.14);
}
.public-v3 .destination-card::before{
  background:linear-gradient(180deg,rgba(7,11,10,.03) 28%,rgba(7,11,10,.91) 100%);
}
.public-v3 .destination-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.public-v3 .destination-card:hover img{transform:scale(1.035);filter:saturate(1.04) contrast(1.02)}
.public-v3 .destination-content{left:28px;right:28px;bottom:27px}
.public-v3 .destination-content h3{font-size:clamp(30px,3vw,42px);letter-spacing:-.035em}

/* ---------- CTA panels ---------- */
.public-v3 .cta-panel{
  border-radius:32px;
  padding:clamp(44px,5vw,68px);
  background:
    radial-gradient(circle at 86% 12%,rgba(217,186,142,.18),transparent 22rem),
    linear-gradient(125deg,#14221d,#29453a 72%,#355247);
  box-shadow:0 30px 75px rgba(18,32,27,.18);
  border:1px solid rgba(255,255,255,.08);
}
.public-v3 .cta-panel h2{max-width:780px;letter-spacing:-.045em;text-wrap:balance}

/* ---------- Home V2 -> V3 ---------- */
.public-v3.home-v2 .hero{min-height:min(900px,94svh)}
.public-v3.home-v2 .hero-content{padding-bottom:138px}
.public-v3.home-v2 .trust-strip{gap:12px;margin-bottom:28px}
.public-v3.home-v2 .trust-item{
  min-height:112px;
  padding:18px 20px;
  border-radius:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  border-color:rgba(255,255,255,.14);
  box-shadow:0 16px 42px rgba(0,0,0,.14);
  backdrop-filter:blur(20px) saturate(115%);
}
.public-v3.home-v2 .trust-item small{margin-bottom:8px}
.public-v3.home-v2 .trust-main{letter-spacing:-.015em}
.public-v3 .home-v2-transfer{
  margin-top:22px;
  margin-bottom:clamp(76px,8vw,120px);
  min-height:560px;
  border-radius:36px;
  box-shadow:0 32px 78px rgba(20,30,26,.17);
  border:1px solid rgba(255,255,255,.10);
}
.public-v3 .home-v2-transfer-media img{min-height:560px;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.public-v3 .home-v2-transfer:hover .home-v2-transfer-media img{transform:scale(1.025)}
.public-v3 .home-v2-transfer-copy{padding:clamp(48px,6vw,86px)}
.public-v3 .home-v2-transfer-copy p{font-size:15px;line-height:1.82}
.public-v3 .home-v2-transfer-tags span{padding:9px 14px;background:rgba(255,255,255,.055)}
.public-v3 .home-v2-review-card{
  border-color:var(--v3-line);
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(250,246,239,.82));
  box-shadow:var(--v3-shadow);
  border-radius:26px;
}
.public-v3 .home-v2-review-card blockquote{letter-spacing:-.025em}
.public-v3 .home-v2-final-panel{border-radius:34px;border:1px solid rgba(255,255,255,.08)}

/* ---------- About ---------- */
.public-v3 .about-hero.about-hero--journey{
  min-height:720px;
  background:
    linear-gradient(95deg,rgba(11,15,13,.93) 0%,rgba(15,20,17,.76) 32%,rgba(15,20,17,.34) 62%,rgba(15,20,17,.12) 100%),
    linear-gradient(180deg,rgba(8,10,9,.13),rgba(8,10,9,.46)),
    url('../images/about/about-journey-hero.webp') center/cover no-repeat;
}
.public-v3 .about-hero__content h1{letter-spacing:-.055em;text-wrap:balance}
.public-v3 .about-hero__content p{font-size:clamp(17px,1.7vw,21px);line-height:1.78}
.public-v3 .about-story-grid{gap:clamp(50px,7vw,90px);align-items:center}
.public-v3 .about-inline-media{overflow:hidden;border-radius:30px;box-shadow:var(--v3-shadow-lg)}
.public-v3 .about-inline-media img{min-height:590px;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.public-v3 .about-inline-media:hover img{transform:scale(1.025)}
.public-v3 .about-copy h2{letter-spacing:-.05em;text-wrap:balance}
.public-v3 .about-copy p{line-height:1.9}
.public-v3 .about-statement{
  padding:32px 36px;
  border-left:0;
  border-radius:24px;
  background:linear-gradient(130deg,#18251f,#2a4037);
  box-shadow:var(--v3-shadow);
}

/* ---------- Contact ---------- */
.public-v3 .contact-hero{
  min-height:640px;
  background-image:
    linear-gradient(92deg,rgba(10,14,12,.95) 0%,rgba(10,14,12,.84) 31%,rgba(10,14,12,.56) 50%,rgba(10,14,12,.22) 72%,rgba(10,14,12,.05) 100%),
    linear-gradient(180deg,rgba(9,11,10,.08),rgba(9,11,10,.36)),
    url('../images/contact/contact-journey-hero-framed.webp');
}
.public-v3 .contact-hero__content h1{letter-spacing:-.055em;text-wrap:balance}
.public-v3 .contact-hero__benefits{gap:12px 30px;font-size:13px}
.public-v3 .contact-grid{gap:clamp(48px,7vw,92px);align-items:start}
.public-v3 .contact-info{padding-top:12px}
.public-v3 .contact-form{
  border-radius:28px;
  padding:clamp(28px,4vw,42px);
  background:rgba(255,255,255,.91);
  backdrop-filter:blur(14px);
}
.public-v3 .field input,
.public-v3 .field select,
.public-v3 .field textarea{
  border-color:rgba(31,39,36,.13);
  background:rgba(255,255,255,.94);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.public-v3 .field input:focus,
.public-v3 .field select:focus,
.public-v3 .field textarea:focus{
  border-color:rgba(168,122,67,.54);
  box-shadow:0 0 0 4px rgba(168,122,67,.09);
  background:#fff;
}
.public-v3 .faq-group{
  border-radius:28px;
  padding:36px;
  background:rgba(255,255,255,.76);
}
.public-v3 .faq-item{border-color:var(--v3-line)}
.public-v3 .faq-q{transition:color .2s ease}
.public-v3 .faq-q:hover{color:var(--v3-gold)}

/* ---------- Experiences listing ---------- */
.public-v3 .experiences-editorial-hero{
  background:
    radial-gradient(circle at 80% 10%,rgba(172,130,72,.16),transparent 28rem),
    linear-gradient(145deg,#101b17 0%,#1f362d 56%,#12211b 100%);
}
.public-v3 .experiences-hero-copy h1{letter-spacing:-.058em;text-wrap:balance}
.public-v3 .experiences-hero-copy>p{line-height:1.8}
.public-v3 .experience-collage-card{
  border-radius:26px;
  border-color:rgba(255,255,255,.13);
  box-shadow:0 28px 70px rgba(0,0,0,.31);
}
.public-v3 .experience-collage-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.public-v3 .experience-collage-card:hover img{transform:scale(1.025);filter:saturate(1.05)}
.public-v3 .experience-page-switch{gap:12px}
.public-v3 .experience-page-link{
  border-radius:22px;
  border-color:var(--v3-line);
  box-shadow:0 12px 35px rgba(20,28,25,.055);
}
.public-v3 .filters.filters-editorial{gap:12px}
.public-v3 .filters.filters-editorial .filter-btn{
  border-radius:20px;
  border-color:var(--v3-line);
  background:rgba(255,255,255,.76);
  box-shadow:0 10px 30px rgba(20,28,25,.04);
}
.public-v3 .filters.filters-editorial .filter-btn:hover{transform:translateY(-2px);border-color:rgba(168,122,67,.30)}
.public-v3 .filters.filters-editorial .filter-btn.active{box-shadow:0 18px 38px rgba(28,52,42,.14)}

/* ---------- Experience detail pages ---------- */
.public-v3 .tour-layout{gap:clamp(42px,6vw,78px);align-items:start}
.public-v3 .tour-intro{line-height:1.58;letter-spacing:-.025em;text-wrap:pretty}
.public-v3 .stops{gap:16px}
.public-v3 .stop{
  padding:22px 0;
  border-color:var(--v3-line);
}
.public-v3 .stop-num{color:var(--v3-gold);opacity:.82}
.public-v3 .booking-card{
  top:92px;
  padding:30px;
  border-radius:26px;
  background:linear-gradient(180deg,#fff,#faf6ef);
}
.public-v3 .booking-card h2{letter-spacing:-.035em}
.public-v3 .detail{padding-bottom:14px;border-color:var(--v3-line)}
.public-v3 .content-grid{gap:20px}
.public-v3 .info-box{border-radius:26px;padding:32px}
.public-v3 .itinerary-map-section{
  background:linear-gradient(145deg,#101b17,#20392f);
}
.public-v3 .itinerary-map-frame,
.public-v3 .itinerary-map-panel{
  border-radius:26px;
  border-color:rgba(255,255,255,.10);
  box-shadow:0 20px 55px rgba(0,0,0,.20);
}

/* ---------- Fleet ---------- */
.public-v3 .fleet-grid{gap:20px}
.public-v3 .fleet-standards{
  background:
    radial-gradient(circle at 15% 20%,rgba(212,180,136,.10),transparent 26rem),
    linear-gradient(135deg,#161f1b,#293d35);
}
.public-v3 .fleet-standards .feature h3{color:var(--v3-gold-soft);letter-spacing:-.035em}
.public-v3 .fleet-standards .feature p{color:rgba(255,255,255,.82)}
.public-v3 .feature-icon{filter:drop-shadow(0 12px 18px rgba(0,0,0,.18))}

/* ---------- Reviews ---------- */
.public-v3 .reviews-editorial-hero{
  background:
    radial-gradient(circle at 12% 18%,rgba(185,145,82,.14),transparent 28rem),
    radial-gradient(circle at 92% 80%,rgba(37,57,49,.085),transparent 30rem),
    linear-gradient(135deg,#faf7f0,#eee5d6);
}
.public-v3 .reviews-hero-copy h1{letter-spacing:-.06em;text-wrap:balance}
.public-v3 .reviews-voice-card{
  border-radius:25px;
  background:rgba(255,255,255,.82);
  border-color:rgba(143,106,52,.14);
  box-shadow:0 24px 60px rgba(57,45,27,.105);
}
.public-v3 .reviews-voice-card p{letter-spacing:-.025em}
.public-v3 .reviews-grid{gap:18px}
.public-v3 .review-card{
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(250,247,241,.84));
}

/* ---------- Around the world ---------- */
.public-v3 .world-coming-hero{
  background:
    radial-gradient(circle at 76% 28%,rgba(171,126,66,.13),transparent 28rem),
    radial-gradient(circle at 15% 72%,rgba(45,70,61,.09),transparent 30rem),
    linear-gradient(180deg,#fdfaf5,#f5efe5);
}
.public-v3 .world-coming-copy h1{letter-spacing:-.055em;text-wrap:balance}
.public-v3 .world-orbit-core{box-shadow:0 32px 80px rgba(22,42,35,.22)}

/* ---------- Legal ---------- */
.public-v3 .legal-main{background:linear-gradient(180deg,#f7f2e9,#fbf8f3)}
.public-v3 .legal-hero{
  background:
    radial-gradient(circle at 82% 20%,rgba(194,158,106,.20),transparent 30rem),
    linear-gradient(135deg,#111714 0%,#202923 60%,#342d25 100%);
}
.public-v3 .legal-hero h1{letter-spacing:-.055em;text-wrap:balance}
.public-v3 .legal-hero p{line-height:1.8}
.public-v3 .legal-layout{gap:clamp(34px,6vw,76px)}
.public-v3 .legal-toc{
  border-radius:20px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(12px);
  box-shadow:0 16px 44px rgba(41,33,22,.055);
}
.public-v3 .legal-block{
  border-radius:22px;
  background:rgba(255,255,255,.86);
}
.public-v3 .legal-block h2{letter-spacing:-.025em}
.public-v3 .legal-copy{line-height:1.84}

/* ---------- Transfer booking page: visual override only ---------- */
.public-v3 .transfer-main{
  background:
    radial-gradient(circle at 8% 23%,rgba(181,145,91,.07),transparent 28rem),
    linear-gradient(180deg,#f5f0e8,#fbf8f3);
}
.public-v3 .transfer-hero{
  min-height:560px;
  padding-top:155px;
  padding-bottom:88px;
  background:
    linear-gradient(98deg,rgba(8,13,11,.93),rgba(8,13,11,.64) 45%,rgba(8,13,11,.18)),
    linear-gradient(180deg,rgba(8,13,11,.08),rgba(8,13,11,.42)),
    url('../images/contact/contact-hero-v50.webp') center/cover no-repeat;
}
.public-v3 .transfer-hero h1{max-width:13ch;letter-spacing:-.055em;text-wrap:balance}
.public-v3 .transfer-hero p{line-height:1.8;color:rgba(255,255,255,.88)}
.public-v3 .transfer-shell{margin-top:-50px;padding-bottom:110px}
.public-v3 .transfer-grid{gap:24px}
.public-v3 .booking-panel,
.public-v3 .quote-panel{
  border-radius:28px;
  border-color:var(--v3-line);
  box-shadow:0 26px 70px rgba(22,31,27,.105);
}
.public-v3 .booking-panel{padding:36px;background:rgba(255,255,255,.96)}
.public-v3 .booking-step{padding:28px 0;border-color:var(--v3-line)}
.public-v3 .booking-step h2{font-size:30px;letter-spacing:-.035em}
.public-v3 .journey-card{
  border-radius:20px;
  border-color:var(--v3-line);
  background:linear-gradient(180deg,#fcfaf6,#f7f2ea);
}
.public-v3 .vehicle-card,
.public-v3 .extra-row,
.public-v3 .payment-method-card{
  border-radius:17px;
  border-color:var(--v3-line-strong);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease;
}
.public-v3 .vehicle-card:hover,
.public-v3 .payment-method-card:hover{transform:translateY(-2px);border-color:rgba(168,122,67,.34)}
.public-v3 .vehicle-option input:checked+.vehicle-card{
  border-color:rgba(168,122,67,.72);
  background:#fffaf2;
  box-shadow:0 0 0 3px rgba(168,122,67,.10),0 14px 30px rgba(32,28,22,.06);
}
.public-v3 .payment-method-option input:checked+.payment-method-card{
  border-color:rgba(45,83,68,.65);
  background:#f1f6f3;
  box-shadow:0 0 0 3px rgba(49,93,75,.08);
}
.public-v3 .quote-panel{
  top:88px;
  padding:30px;
  background:
    radial-gradient(circle at 82% 10%,rgba(216,183,136,.15),transparent 18rem),
    linear-gradient(145deg,#14221d,#263e34);
}
.public-v3 .quote-total{color:var(--v3-gold-soft);letter-spacing:-.035em}
.public-v3 .book-button{
  min-height:56px;
  border-radius:999px;
  background:linear-gradient(135deg,#d0ab77,#a97c46);
  color:#17201d;
  box-shadow:0 14px 30px rgba(74,50,23,.18);
}
.public-v3 .book-button:not(:disabled):hover{filter:brightness(1.035);transform:translateY(-1px)}

/* ---------- Footer ---------- */
.public-v3 .site-footer{
  position:relative;
  padding-top:clamp(64px,7vw,92px);
  background:
    radial-gradient(circle at 85% 0%,rgba(210,178,133,.08),transparent 28rem),
    linear-gradient(145deg,#101713,#18251f 58%,#1e2f28);
  border-top:1px solid rgba(255,255,255,.055);
}
.public-v3 .footer-grid{gap:clamp(30px,5vw,70px)}
.public-v3 .site-footer h3{color:var(--v3-gold-soft);letter-spacing:.14em}
.public-v3 .site-footer p,
.public-v3 .site-footer a{color:rgba(255,255,255,.69)}
.public-v3 .site-footer a:hover{color:#fff}
.public-v3 .footer-bottom{
  margin-top:48px;
  padding-top:22px;
  border-top-color:rgba(255,255,255,.09);
  color:rgba(255,255,255,.46);
}
.public-v3 .social-float{
  box-shadow:0 14px 36px rgba(11,20,16,.22);
  border:1px solid rgba(255,255,255,.18);
  transition:transform .22s ease,box-shadow .22s ease;
}
.public-v3 .social-float:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(11,20,16,.26)}

/* ---------- Accessibility + motion ---------- */
@media (prefers-reduced-motion:no-preference){
  .public-v3 .fade-up{transition-duration:.65s;transition-timing-function:cubic-bezier(.2,.7,.2,1)}
}
@media (prefers-reduced-motion:reduce){
  .public-v3 *,
  .public-v3 *::before,
  .public-v3 *::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}
}

/* ---------- Tablet ---------- */
@media(max-width:980px){
  .public-v3 .site-header{height:68px}
  .public-v3 .site-header.scrolled{height:62px}
  .public-v3 .main-nav.open{background:rgba(15,23,20,.98);backdrop-filter:blur(24px)}
  .public-v3 .section{padding-top:76px;padding-bottom:76px}
  .public-v3 .tour-card .media{height:260px}
  .public-v3 .about-inline-media img{min-height:470px}
  .public-v3 .home-v2-transfer{min-height:0}
  .public-v3 .home-v2-transfer-media img{min-height:350px}
  .public-v3 .booking-panel{padding:30px}
  .public-v3 .quote-panel{position:static}
}

/* ---------- Mobile ---------- */
@media(max-width:640px){
  .public-v3{
    --v3-radius:24px;
    --v3-radius-sm:17px;
  }
  .public-v3 .site-header{height:64px;padding-inline:16px}
  .public-v3 .site-header.scrolled{height:58px}
  .public-v3 .nav-toggle{width:43px;height:43px;background:rgba(255,255,255,.065)}
  .public-v3 .section{padding:62px 16px}
  .public-v3 .section-head{display:block;margin-bottom:34px}
  .public-v3 .section-head p{margin-top:18px;font-size:14px}
  .public-v3 .hero,
  .public-v3 .page-hero,
  .public-v3 .tour-hero{min-height:clamp(460px,76svh,650px)}
  .public-v3 .hero h1,
  .public-v3 .page-hero h1,
  .public-v3 .tour-hero h1{letter-spacing:-.045em}
  .public-v3 .hero p,
  .public-v3 .page-hero p,
  .public-v3 .tour-hero p{font-size:15px;line-height:1.62}
  .public-v3 .actions{gap:10px}
  .public-v3 .btn{min-height:50px}
  .public-v3 .destination-card,
  .public-v3 .tour-card,
  .public-v3 .vehicle,
  .public-v3 .feature,
  .public-v3 .info-box,
  .public-v3 .contact-form,
  .public-v3 .booking-card,
  .public-v3 .faq-group,
  .public-v3 .review-card,
  .public-v3 .legal-block{border-radius:22px}
  .public-v3 .tour-card .media{height:auto;aspect-ratio:4/3}
  .public-v3 .tour-card-body{padding:23px 22px 26px}
  .public-v3 .vehicle img{height:auto;aspect-ratio:4/3;object-fit:cover}
  .public-v3 .vehicle-body{padding:23px 22px 26px}
  .public-v3 .feature{padding:28px 24px}
  .public-v3 .cta-panel{padding:34px 24px;border-radius:24px}
  .public-v3.home-v2 .hero{min-height:720px}
  .public-v3.home-v2 .hero-content{padding-bottom:190px}
  .public-v3.home-v2 .trust-strip{gap:8px}
  .public-v3.home-v2 .trust-item{min-height:94px;border-radius:18px;padding:15px 16px}
  .public-v3 .home-v2-transfer{width:calc(100% - 24px);border-radius:25px}
  .public-v3 .home-v2-transfer-media img{min-height:255px}
  .public-v3 .home-v2-transfer-copy{padding:34px 24px 38px}
  .public-v3 .home-v2-review-card{border-radius:22px}
  .public-v3 .home-v2-final-panel{border-radius:25px}
  .public-v3 .about-hero.about-hero--journey{min-height:560px}
  .public-v3 .about-inline-media{border-radius:22px}
  .public-v3 .about-inline-media img{min-height:350px}
  .public-v3 .about-statement{padding:25px 23px;border-radius:20px}
  .public-v3 .contact-hero{min-height:620px}
  .public-v3 .contact-form{padding:24px 20px}
  .public-v3 .faq-group{padding:24px 20px}
  .public-v3 .experience-collage-card{border-radius:19px}
  .public-v3 .filters.filters-editorial .filter-btn{border-radius:17px}
  .public-v3 .booking-card{padding:24px 21px}
  .public-v3 .info-box{padding:25px 22px}
  .public-v3 .itinerary-map-frame,
  .public-v3 .itinerary-map-panel{border-radius:20px}
  .public-v3 .legal-block{padding:23px 20px}
  .public-v3 .transfer-hero{min-height:500px;padding:118px 18px 72px}
  .public-v3 .transfer-shell{width:calc(100% - 24px);margin-top:-34px;padding-bottom:76px}
  .public-v3 .booking-panel{padding:23px 18px;border-radius:22px}
  .public-v3 .booking-step{padding:24px 0}
  .public-v3 .quote-panel{padding:25px 22px;border-radius:22px}
  .public-v3 .site-footer{padding-top:56px}
  .public-v3 .footer-bottom{margin-top:34px}
}
