/* Mobile layout aligned to reference: 16px gutters, left headings, swipeable cards. */
.carousel-controls{display:none}
@media(max-width:700px){
:root{--page-pad:16px;--gutter:12px;--section-space:64px}
html{scroll-padding-top:88px}body{overflow-x:clip}
.header,.header.is-scrolled{height:64px;padding:12px 16px;gap:12px;align-items:center}
.header .brand,.header.is-scrolled .brand{width:132px;height:34px;margin:0}
.header .header-contact,.header.is-scrolled .header-contact{display:none}
.menu-toggle{width:36px;height:36px;border-radius:9px;padding:8px}
.header nav{top:64px;left:16px;right:16px;max-height:calc(100svh - 88px);overflow-y:auto;padding:16px}
.header nav a{padding:10px 8px;min-height:44px}
.hero:has(.hero-people){height:auto;min-height:100svh;max-height:none;justify-content:flex-end;align-items:stretch}
.hero:has(.hero-people) .hero-content{padding:220px 16px 24px;margin:0;width:100%}
.hero:has(.hero-people) h1{font-size:36px;line-height:1.06;letter-spacing:-1.3px;max-width:100%;margin:18px 0}
.hero .eyebrow{font-size:9px;line-height:1.5;margin-bottom:10px}
.trip-badges{max-width:none;gap:6px}.trip-badges span{font-size:10px;padding:6px 9px}
.hero-people{margin:16px 0 0;gap:10px}.hero-people strong{font-size:11px}.hero-people small{font-size:9px;line-height:1.5;max-width:240px}
.hero-sub{font-size:14px;line-height:1.55;text-wrap:pretty}
.hero-actions{margin-top:24px;gap:8px}.hero-actions .button{min-height:50px;padding:14px 16px;font-size:13px;margin:0}
.hero-secondary{font-size:12px;min-height:40px;display:flex;align-items:center;border:0}
.hero-bottom{display:none}
.section{width:calc(100% - 32px);padding:64px 0 0;margin:0 auto}
.section h2,.company .section-heading h2,.join h2{font-size:30px;line-height:1.1;letter-spacing:-1px;text-align:left;margin:0;max-width:100%}
.section h2 br{display:none}.section h2 br:after{content:' '}
.section-label,.previous-copy .section-label{justify-content:flex-start;text-align:left;font-size:11px;line-height:1.5;margin-bottom:12px}
.section-heading,.program-intro,.intro-grid{text-align:left}.section-heading{margin-bottom:28px}
.section-heading p,.intro-copy{margin:18px 0 0;max-width:100%;text-align:left}
.intro-copy p,.section-heading p,.program-note,.previous-copy p{font-size:14px;line-height:1.65}
.signature{justify-content:flex-start;gap:12px;font-size:11px;margin-top:24px}
.value-grid,.destination-grid,.places-grid,.people-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px;align-items:stretch}
.value-grid::-webkit-scrollbar,.destination-grid::-webkit-scrollbar,.places-grid::-webkit-scrollbar,.people-grid::-webkit-scrollbar{display:none}
.value-grid>article,.destination-grid>article,.places-grid>article{flex:0 0 calc(100% - 28px);min-width:0;scroll-snap-align:start}
.value-grid{margin-top:28px}.value-grid article{padding:24px;min-height:238px}.value-grid h3{font-size:21px}.value-grid p{font-size:14px}
.carousel-controls{display:flex;justify-content:center;align-items:center;gap:2px;margin-top:12px;height:28px}
.carousel-dot{border:0;background:transparent;display:grid;place-items:center;width:28px;height:28px;padding:0;cursor:pointer}
.carousel-dot:before{content:'';width:6px;height:6px;background:#d4d4d6;border-radius:50%}.carousel-dot[aria-current=true]:before{background:#101217}
.numbers{grid-template-columns:1fr 1fr;gap:24px;padding:24px;margin-top:28px}.numbers>div,.numbers>div:first-child,.numbers>div:nth-child(3){border:0;padding:0;gap:10px;align-items:flex-start;flex-direction:column}.numbers strong{font-size:32px}.numbers span{font-size:12px}
.company{margin-top:64px;padding:32px 20px;border-radius:20px}.company .section-heading{margin-bottom:24px}.people-grid{gap:20px}.person-card{flex:0 0 100%;display:flex;flex-direction:column;gap:18px;scroll-snap-align:start}
.person-card>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 35%;border-radius:14px;max-height:none}
.person-card h3{font-size:26px;margin:10px 0}.person-card small{font-size:9px;line-height:1.6}.company .person-card p{margin:14px 0;font-size:14px;line-height:1.65}.person-card a{display:inline-flex;min-height:44px;align-items:center}
.company .carousel-dot:before{background:#666b73}.company .carousel-dot[aria-current=true]:before{background:#ecfa56}
.previous-trip{display:flex;flex-direction:column;gap:28px}.previous-copy{width:100%}.previous-copy p{margin:20px 0 24px}.previous-copy small{margin-top:12px;font-size:11px}.previous-copy .button{font-size:13px;min-height:50px}
.trip-video{width:100%;max-width:358px;align-self:center;border:0;background:transparent;border-radius:16px}.trip-video video{border-radius:16px}.trip-video figcaption{margin:10px 0 0;font-size:11px}
.destination{height:440px;border-radius:18px}.destination-top{left:20px;right:20px;top:20px;font-size:10px}.destination-copy{left:20px;right:20px;bottom:24px}.destination-copy h3{font-size:28px;margin:12px 0}.destination-copy p{font-size:14px;line-height:1.55}.destination-copy a{min-height:44px;margin-top:14px}
.road-banner{margin:32px 16px 0;width:calc(100% - 32px);padding:24px 16px 54px;gap:8px;flex-wrap:wrap;border-radius:18px}.road-banner>span{font-size:9px}.road-banner p{font-size:11px;bottom:16px}
.places article{min-height:420px;padding:210px 20px 24px;border-radius:18px}.place-title h3{font-size:25px}.places article p{font-size:14px;line-height:1.55}.place-icon{top:20px!important;left:20px!important}.quiet-note{font-size:12px;line-height:1.6;text-align:left;margin:20px 0 0}
.program-intro>p{font-size:14px;line-height:1.6}.program-intro .program-note{margin-bottom:28px;font-size:13px}.program-layout{gap:16px}.program-visual{min-height:300px;border-radius:18px}.program-visual>div{left:20px;right:20px;bottom:24px}.program-visual h3{font-size:26px}.program-visual p{font-size:12px}
.days details{padding:0 20px;border-radius:16px}.days summary{display:grid;grid-template-columns:1fr 32px;gap:8px 12px;padding:20px 0;font-size:15px}.days .day-date{grid-column:1;min-width:0;width:auto;display:flex;gap:12px;align-items:center;font-size:11px;font-weight:500}.day-date small{margin:0;font-size:9px}.days summary>span:nth-child(2){grid-column:1;grid-row:2}.days summary b{grid-column:2;grid-row:1/3;width:32px;height:32px}.day-content{padding:0 0 20px}.day-content p{font-size:14px;line-height:1.65}
.faq>div:first-child{margin-bottom:28px}.faq details{padding:0 20px;border-radius:16px;margin-bottom:12px}.faq summary{font-size:14px;line-height:1.45;min-height:76px;gap:16px;padding:20px 0}.faq details p{font-size:14px;line-height:1.65;padding-bottom:20px}
.join{margin:64px 16px;padding:32px 24px;border-radius:20px;text-align:left}.join p{font-size:14px;line-height:1.65;margin:20px 0 24px}.join .button{max-width:none;font-size:13px;min-height:52px;padding:14px;gap:12px}.join-handle{margin:18px 0 0;min-height:44px;display:flex;align-items:center;font-size:14px}
.site-footer{padding:48px 16px 88px}.footer-top{display:flex;flex-direction:column;gap:32px}.footer-statement h2{font-size:28px;line-height:1.15}.footer-cta{order:1;width:100%;padding:0;background:transparent}.footer-nav{order:2;display:grid;grid-template-columns:1fr 1fr;width:100%;gap:4px 20px}.footer-nav h3{grid-column:1/-1}.footer-nav a{font-size:13px;min-height:44px;display:flex;align-items:center}.footer-contact{order:3;width:100%}.footer-whatsapp{font-size:17px;min-height:44px;margin-bottom:8px}.footer-instagram{font-size:14px;min-height:44px}.footer-trip{margin-top:20px}.footer-trip strong,.footer-trip span{font-size:12px}.footer-cta .button{max-width:none;font-size:13px;min-height:50px}.site-footer p{font-size:13px}.footer-route{margin:32px 0}.footer-bottom{gap:24px}.back-top{min-height:44px}
.page-nav-toggle{font-size:12px;min-height:44px;padding:12px 20px;bottom:max(16px,env(safe-area-inset-bottom))}.section-nav{width:320px;max-height:calc(100svh - 160px);overflow-y:auto;bottom:76px;gap:0}.section-nav a{min-height:44px;font-size:14px}
}
@media(max-width:359px){.hero:has(.hero-people) h1{font-size:32px}.hero:has(.hero-people) .hero-content{padding-top:180px}.section h2{font-size:28px}.hero-people small{max-width:195px}.trip-badges span{font-size:9px}.value-grid>article,.destination-grid>article,.places-grid>article{flex-basis:calc(100% - 16px)}}

@media(max-width:700px){.days summary{grid-template-columns:minmax(0,1fr) 32px}.days summary>span{min-width:0;overflow-wrap:anywhere}.site-footer .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between}.site-footer .footer-bottom p{flex:0 0 100%;width:100%;margin:0;order:3;font-size:11px}.site-footer .footer-bottom .brand{order:1}.site-footer .footer-bottom .back-top{order:2;margin-left:auto}}
