/* Responsive audit: intrinsic sizing, readable inputs and touch targets. */
html{scroll-padding-top:calc(var(--masthead,110px) + 16px)}body{overflow-wrap:break-word}
.wrap,.hero-copy,.footer-directory>div,.editorial-copy,.departure-copy,.quote-sidebar{min-width:0}
img{max-width:100%}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
.menu,.card-link,.text-button,.ticket-options button{min-height:44px}.menu{min-width:44px}
.footer-directory a{overflow-wrap:anywhere}.footer-nav,.footer-social{row-gap:12px}
.form-page input,.form-page select,.form-page textarea{max-width:100%;width:100%;font-size:16px}.choice input{width:16px;flex:0 0 16px}
.review-message pre{max-width:100%;overflow-wrap:anywhere}.review-block dt,.review-block dd{min-width:0}
.experience-index nav{flex-wrap:wrap}.experience-index nav a{min-height:44px;display:flex;align-items:center}
.editorial-hero .slider-dot span{white-space:normal;text-wrap:balance;line-height:1.3}
.editorial-hero .group-scene .scene-photo{object-position:65% center}
.editorial-hero .group-scene:after{background:linear-gradient(90deg,#062d39e8,#062d3966 53%,#062d3922),linear-gradient(0deg,#062d39bd,transparent 55%)}
.group-scene .destination-caption{display:none}.editorial-hero h1,.editorial-hero h2{text-wrap:balance}
.editorial-hero .slider-dots{scrollbar-width:thin}.nav{height:auto;min-height:78px}
@media(min-width:821px) and (max-width:1100px){
 .nav{gap:15px}.links{gap:14px;font-size:12px}.brand{padding-right:12px}.brand img{width:155px}.links .nav-cta{padding:12px}
 .editorial-hero .hero-slide .wrap{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:26px}
 .editorial-hero h1,.editorial-hero h2{font-size:clamp(38px,4.6vw,50px)}
 .experiences .cards{gap:16px}.experience .card-content{padding:23px}.experience h3{font-size:28px}
 .experience p{min-height:86px}.footer-directory{gap:28px}.footer-brandmarks{gap:18px}
 .footer-identity .footer-paradise-logo{width:160px}.footer-identity .footer-certification-logo{width:92px}
 .editorial-layout,.departure-layout{gap:40px}.travel-ticket{transform:none}
}
@media(max-width:820px){
 .nav{height:74px;min-height:74px}.links.open{top:100%;max-height:calc(100svh - 90px);overflow-y:auto}
 .links.open a{min-height:44px;display:flex;align-items:center}.links.open .nav-cta{justify-content:center}
 .editorial-hero .hero-slide .wrap,.editorial-hero .social-slide .wrap{padding-top:125px}
 .editorial-hero .slider-dots{gap:4px;align-items:stretch}.editorial-hero .slider-dot{min-height:44px;align-items:center}
 .slider-dot span{font-size:10px}.editorial-hero .hero-navigation{top:12px}
 .experience-index nav{width:100%;border:0;gap:0}.experience-index nav a{flex:1;justify-content:center;border-bottom:1px solid #d2dcdd;padding-inline:5px;text-align:center}
 .experience p{min-height:0}.travel-ticket{transform:none;max-width:440px}
 .footer-brandmarks{min-width:0}.footer-directory>div{min-width:0}
 .quote-sidebar ol{gap:8px}.quote-sidebar li{line-height:1.4}
 .footer-invitation h2{font-size:clamp(38px,8vw,62px)}.footer-whatsapp{gap:15px}
}
@media(max-width:360px){
 .wrap{width:calc(100% - 28px)}.topbar{font-size:9px}.brand img{width:155px}
 .editorial-hero h1,.editorial-hero h2{font-size:36px}.editorial-copy h2,.departure-copy h2,.experience-index h2,.postales-head h2,.quote-intro h2{font-size:34px}
 .editorial-hero .hero-copy>p{font-size:14px}.ticket-options button{padding:8px 10px}
 .travel-ticket{padding:20px}.ticket-bottom{margin-inline:-20px;padding-inline:20px;gap:14px}
 .ticket-route strong{font-size:23px}.quote-content{padding:24px 16px}.quote-sidebar{padding:20px 14px}
 .form-topline{gap:8px;font-size:10px}.form-page>legend{font-size:25px}
 .footer-brandmarks{gap:16px}.footer-identity .footer-paradise-logo{width:165px}.footer-identity .footer-certification-logo{width:90px}
 .footer-invitation h2{font-size:38px}.footer-whatsapp{font-size:14px}.experience-index nav a{font-size:10px}
}
@media(max-height:600px) and (min-width:821px){
 .editorial-hero .hero-navigation{top:16px;bottom:auto}.editorial-hero .hero-slide .wrap{height:auto;min-height:530px;padding-top:110px;padding-bottom:35px}
}
