/* Final responsive layer: keep the editorial layout readable at every width. */
.booking-panel{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(30px,4vw,68px);padding:clamp(32px,4vw,60px)}
.booking-copy,.booking-form{min-width:0}
.booking-copy h2{font-size:clamp(38px,4.6vw,66px);line-height:1.03;overflow-wrap:normal}
.contact-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.contact-mini a,.contact-mini .contact-whatsapp{display:grid;grid-template-columns:48px minmax(0,1fr)!important;grid-template-rows:auto auto;align-content:center;column-gap:12px;min-width:0;min-height:88px;padding:14px!important;border-radius:18px}
.contact-mini a>span,.contact-mini .contact-whatsapp>span{grid-column:1;grid-row:1/3;width:48px;height:48px;border-radius:14px}
.contact-mini a>small{grid-column:2;grid-row:1;align-self:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px!important;line-height:1.25}
.contact-mini a>strong{grid-column:2;grid-row:2;align-self:start;white-space:nowrap;font-size:clamp(12px,1vw,15px)!important;line-height:1.35;color:#fff!important}
.booking-form input,.booking-form select{min-width:0}

@media(max-width:1100px){
  .booking-panel{grid-template-columns:minmax(0,1fr);gap:32px}
  .booking-copy h2{max-width:17ch}
  .contact-mini{max-width:680px}
  .booking-form{width:100%;max-width:680px}
}

@media(max-width:900px){
  .about-grid{grid-template-columns:minmax(0,1fr)!important;gap:32px}
  .about-brand{width:100%;max-width:560px;transform:none}
  .about-copy{min-width:0}
  .trust-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  .location-section{grid-template-columns:minmax(0,1fr)!important}
}

@media(max-width:620px){
  .hero{height:auto;min-height:650px}
  .hero-content{padding-top:118px;padding-bottom:60px}
  .hero h1{font-size:clamp(46px,13vw,62px);line-height:.95}
  .hero-facts{margin-top:28px}
  .marquee .marquee-track{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));padding:3px 0}
  .marquee .marquee-track span{min-height:52px;padding:9px 5px!important;font-size:11px;line-height:1.25;text-align:center}
  .marquee .marquee-track span:nth-child(3):after{display:none!important}
  .marquee .marquee-track span:nth-child(4):after{display:block!important}
  .tours-section{padding-top:65px!important;padding-bottom:70px!important}
  .tours-section:after,.gallery-section:before,.booking-section:before,.booking-section:after,.location-section:after{display:none}
  .section-heading{margin-bottom:25px}
  .section-heading h2{font-size:clamp(34px,10vw,43px);line-height:1.08}
  .filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible;flex-wrap:wrap;margin-right:0;padding-bottom:0}
  .filter{min-width:0;min-height:43px;padding:9px 6px;white-space:normal;font-size:13px;line-height:1.15;text-align:center}
  .gallery-section{padding-bottom:68px!important}
  .about-section{padding:70px 0!important}
  .about-grid{gap:30px}
  .about-brand{padding:22px;border-radius:24px}
  .about-brand img{width:150px;max-width:100%;margin:0}
  .about-brand span{margin-top:15px;font-size:16px;line-height:1.45;max-width:35ch}
  .about-copy h2{font-size:clamp(33px,9vw,43px);line-height:1.08}
  .about-copy>p:not(.kicker){font-size:16px;line-height:1.6;margin:20px 0 24px}
  .trust-row{grid-template-columns:1fr;gap:10px}
  .trust-row span{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:14px;min-height:0;padding:14px 16px;border-radius:17px}
  .trust-row b{grid-column:1;grid-row:1/3;width:44px;height:44px;margin:0}
  .trust-row small{grid-column:2;grid-row:1;font-size:12px}
  .trust-row strong{grid-column:2;grid-row:2;font-size:16px;margin:0}
  .booking-section{width:100%;padding:68px 14px!important}
  .booking-panel{padding:25px 20px!important;border-radius:26px;gap:28px}
  .booking-badge{max-width:100%;white-space:normal;font-size:12px}
  .booking-copy h2{font-size:clamp(33px,9vw,44px);line-height:1.08;max-width:none}
  .booking-copy>p:not(.booking-badge){font-size:16px;line-height:1.55}
  .contact-mini{grid-template-columns:1fr;margin-top:24px}
  .contact-mini a,.contact-mini .contact-whatsapp{min-height:76px}
  .contact-mini a>strong{font-size:15px!important}
  .booking-form{padding:21px;border-radius:21px}
  .booking-form label{font-size:14px}
  .form-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .form-note{font-size:12px;line-height:1.45}
  .location-section{padding:52px 14px 78px!important;gap:25px}
  .floating-wa{right:13px;bottom:13px;padding:9px 13px}
  .floating-wa b{display:inline;font-size:13px}
}

@media(max-width:380px){
  .form-split{grid-template-columns:1fr}
  .booking-panel{padding-inline:17px!important}
  .marquee .marquee-track span{font-size:10px}
  .contact-mini a>strong{font-size:14px!important}
}
.tour-results-summary{margin:16px 0 18px;color:#5b5870;font-size:14px;line-height:1.4}
