/* Fluid layout shared by the homepage and all destination pages. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-wrap:break-word}
header,footer,.topline{padding-inline:max(5%,calc((100% - 1400px)/2))}
.section{padding-inline:max(6%,calc((100% - 1360px)/2));padding-block:clamp(40px,6vw,85px)}
header nav{min-width:0;flex-wrap:wrap;justify-content:center;gap:8px 22px}
header nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.9375rem}
.section-heading>*,.contact>*,.about>*,.travelers-section>*,.trip-top>*,.trip-layout>*,.service-grid>*,.card-actions>*{min-width:0}
h1,h2,h3,.button,.contact-links a{overflow-wrap:anywhere}
.hero{height:auto;min-height:clamp(400px,65svh,680px);max-height:none;display:flex;align-items:center}
.hero-content{width:100%;max-width:1000px;padding:clamp(44px,7vw,90px) max(64px,7vw) 100px}
.hero h1{font-size:clamp(2rem,5vw,5rem);letter-spacing:-.035em}
.hero-content>p:not(.eyebrow){font-size:clamp(1rem,1.5vw,1.125rem)}
.hero-caption{max-width:40%;overflow-wrap:anywhere}
.hero-slide{object-position:center}
.card-photo{position:relative;width:100%;height:auto;aspect-ratio:16/10;overflow:hidden;flex-shrink:0;min-height:0}
.card-photo>a{position:absolute;inset:0;display:block;width:100%;height:100%}
.card-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.card-actions{flex-wrap:wrap}.card-actions .button{min-height:44px}
.about-photo img{height:auto;aspect-ratio:4/3}.about-photo span{position:relative;display:block;inset:auto;margin:12px 0 0}
.contact .button{white-space:normal;flex-shrink:0;max-width:100%}
.contact-links{align-items:center}.contact-links a{max-width:100%}.social-icon{flex:0 0 48px}
.travelers-total strong{font-size:clamp(2.5rem,6vw,5rem);overflow-wrap:anywhere}
.testimonials-grid{min-width:0;max-width:100%;overscroll-behavior-inline:contain}
.testimonial figcaption img{flex:0 0 52px}.testimonial figcaption>div{min-width:0}
.trip-page{width:100%;padding-inline:clamp(16px,5vw,72px)}
.trip-gallery img{height:auto;aspect-ratio:4/3}.trip-gallery a{display:block}
.package-background{margin-inline:0;padding:clamp(24px,5vw,60px) clamp(16px,3vw,40px)}
.investment td{white-space:normal;overflow-wrap:anywhere}.investment table{table-layout:fixed}
.filters{max-width:100%;overscroll-behavior-inline:contain}.filters button{min-height:44px;flex-shrink:0}
@media(max-width:1000px){
 header{flex-wrap:wrap;gap:12px 24px}header nav{flex:1 1 400px}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .about{gap:28px}.contact{flex-wrap:wrap}.trip-top{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
 .trip-layout{grid-template-columns:minmax(0,1fr);gap:28px}
 .about{grid-template-columns:minmax(0,1fr)}.travelers-section{flex-wrap:wrap;gap:24px;text-align:center}
}
@media(max-width:650px){
 header{justify-content:center;padding:12px 16px}header nav{flex-basis:100%;width:100%;justify-content:center;gap:4px 16px}
 .topline{padding:8px 16px;text-align:center;letter-spacing:.5px;font-size:.75rem}
 .section{padding-inline:20px}.cards,.service-grid{grid-template-columns:minmax(0,1fr)}
 .hero{min-height:380px}.hero-content{padding:40px 60px 48px}.hero-content .eyebrow{letter-spacing:1px;font-size:.75rem}
 .hero-content>p:not(.eyebrow){margin:20px 0}.hero .button{padding:13px 16px}
 .hero-content br{display:none}.hero-caption{display:none}
 h2{font-size:clamp(1.65rem,7vw,2.2rem);letter-spacing:-.025em}.air-intro h1,.trip-heading h1{font-size:clamp(1.9rem,8vw,2.6rem)}
 .card-body,.testimonial{padding:20px}.section-heading{display:block}.section-heading>p{max-width:none}
 .travelers-section>p{margin:0}.travelers-total{width:100%}.contact .button{width:100%}
 footer{padding:28px 20px;justify-content:center;text-align:center}footer p{overflow-wrap:anywhere}
 .trip-information>h2{font-size:1.8rem}.booking{padding:20px}.trip-gallery{gap:20px}
}
@media(max-width:380px){.section{padding-inline:16px}.hero-content{padding-inline:58px}.hero h1{font-size:1.8rem}.home-page .hero .carousel-controls{padding-inline:6px}.hero .button{font-size:.875rem}.testimonial{padding:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
