/* Mobile layout: preserve the desktop design while stacking content for phones. */
.partner-strip>.wrap{width:100%;min-width:0;}
.partner-row{min-width:0;max-width:100%;}
@media(max-width:1245px){
  #nav-toggle:checked~nav.links{max-height:calc(100dvh - var(--site-header-height,125px));overscroll-behavior:contain;}
  .burger{min-width:44px;min-height:44px;padding:0;color:var(--ink);}
  .burger:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px;}
}
@media(max-width:760px){
  body{margin:0;}
  .wrap{padding-inline:18px;min-width:0;}
  .wrap>*,.fact,.group-card,.service-detail-copy,.route-panel,.course-explorer,.home-value-copy{min-width:0;}
  section{padding-block:36px;}
  .page-hero,.page-hero.expedition-photo-hero{padding-block:30px;}
  .page-hero h1,.page-hero.kili-hero h1{font-size:clamp(1.85rem,7.8vw,2.7rem);line-height:1.12;overflow-wrap:anywhere;}
  .page-hero p,.hero p.lede{font-size:.95rem;line-height:1.65;}
  .eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.07em;}
  .eyebrow::before{flex-shrink:0;}
  .nav-row{gap:18px;align-items:center;padding-block:6px;}
  header.site .brand .brand-emblem{width:136px;height:86px;}
  nav.links{padding-inline:18px;}
  nav.links a{font-size:.95rem;padding-block:12px;min-height:44px;white-space:normal;}
  nav.links .nav-cta{display:flex;margin-block:8px;justify-content:center;}
  .hero{padding-top:28px;}
  .hero-grid{gap:20px;}
  .hero h1{font-size:clamp(2.1rem,9vw,3rem);line-height:1.08;}
  .hero-ctas,.hero-actions{gap:10px;}
  .hero-ctas .btn,.hero-actions .btn{flex:1 1 150px;}
  .btn{white-space:normal;justify-content:center;min-height:44px;line-height:1.4;max-width:100%;text-align:center;padding:.75em 1em;}
  .pricing-note{display:flex;flex-direction:column;gap:16px;max-width:100%;}
  .pricing-note p{font-size:.88rem;}
  .fact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px!important;}
  .fact .v{font-size:.84rem;line-height:1.6;overflow-wrap:anywhere;}
  .detail-note{font-size:.9rem;padding-left:14px;}
  .section-head{margin-bottom:24px;}
  .section-head h2{font-size:clamp(1.5rem,6.5vw,2rem);line-height:1.2;}
  .expeditions-overview-hero .expeditions-page-title{font-size:clamp(2.7rem,12vw,4rem);overflow-wrap:normal;}
  .expeditions-overview-hero .expeditions-page-subtitle{font-size:1.4rem;}
  .expeditions-overview-hero .next-trip-hero-layout{grid-template-columns:1fr;gap:26px;}
  .next-trip-card{max-width:none;}
  .next-trip-card-photo{height:155px;}
  .next-trip-card-body{padding:20px;}
  .next-trip-card h2{font-size:1.65rem;}
  .activity-grid,.photo-expeditions,.service-grid,.service-grid.service-cols-4,.season-card-grid,.season-card-grid:has(>.season-card:nth-child(2):last-child){grid-template-columns:minmax(0,1fr);gap:20px;}
  .group-card{padding:22px;}
  .activity-body,.exp-content,.service-card-body,.skill-card-body,.season-card-body{padding:20px;}
  .service-photo-card{padding:0;}
  .service-card-gallery{max-height:none;opacity:1;}
  .service-card-gallery img{max-height:150px;}
  .service-detail-layout{display:flex;flex-direction:column;gap:26px;}
  .service-detail-copy{order:0;width:100%;}
  .service-detail-gallery{order:1;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  .service-detail-gallery img.photo-full-frame{max-height:270px;object-fit:contain;}
  .service-photo-context{grid-column:1/-1;}
  .service-related-links{gap:10px;}
  .service-related-links a{flex:1 1 160px;text-align:center;}
  .course-explorer-tabs,.viewport-course-explorer .course-explorer-tabs,.route-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:8px;padding:8px 0 12px;scrollbar-width:thin;scrollbar-color:var(--accent) var(--surface);overscroll-behavior-x:contain;}
  .course-level-tab,.viewport-course-explorer .course-level-tab,.course-explorer-reset,.route-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px;font-size:.83rem;padding:10px 13px;}
  .course-explorer-reset{margin-left:0;}
  .course-explorer-connector{display:none!important;}
  .course-explorer-hint,.route-tabs-hint{font-size:.8rem;line-height:1.6;}
  .course-explorer-status{margin-left:0;}
  .course-explorer.is-expanded .summer-level-card{display:block;}
  .course-explorer.is-expanded .summer-level-body,.summer-level-body{padding:20px;}
  .course-explorer.is-expanded .course-expanded-gallery{gap:10px;padding:10px;}
  .summer-level-body h3{font-size:1.3rem;line-height:1.35;}
  .summer-level-body h4{margin-top:22px;}
  .course-explorer.is-expanded .qualification-badge-area{min-height:170px;}
  .home-values.is-expanded .home-value-card.is-active{padding:20px;gap:20px;}
  .home-value-tabs{gap:6px;}
  .home-value-tab{padding:12px 8px;min-height:44px;font-size:.82rem;}
  .home-gallery-link .cap .gallery-go{opacity:1;}
  .day-card-head{grid-template-columns:1fr;gap:8px;}
  .day-layout{grid-template-columns:minmax(0,1fr);gap:20px;margin-left:0;}
  .day-card-head h3{font-size:1.2rem;line-height:1.35;}
  .day-card .day-body p{line-height:1.7;}
  .day-photo img{aspect-ratio:16/10;}
  .day-stats dd{font-size:.78rem;}
  .inclusion-grid,.route-map-layout,.kili-hero>.wrap{grid-template-columns:minmax(0,1fr);}
  .route-table-scroll{max-width:100%;}
  .route-tabs{margin-bottom:20px;}
  .route-card{padding:20px;}
  .contact-panel.contact-form-panel{padding:26px 20px;gap:24px;grid-template-columns:minmax(0,1fr);}
  .contact-form-panel>div:first-child{position:static;}
  .contact-form-panel h2{font-size:1.45rem;line-height:1.3;}
  .contact-form-panel .eyebrow{font-size:1.7rem;}
  .contact-panel p{font-size:.88rem;}
  .enquiry-fields{grid-template-columns:minmax(0,1fr);gap:15px;}
  .enquiry-fields label:nth-child(n){grid-column:1/-1;min-width:0;}
  .enquiry-form input,.enquiry-form select,.enquiry-form textarea{font-size:16px;min-width:0;}
  .enquiry-form select{min-height:48px;}
  .enquiry-submit-row .btn{width:100%;}
  .partner-strip{padding-block:22px;display:block;}
  .partner-strip>.wrap{padding-block:0;}
  .partner-row{flex-wrap:wrap;justify-content:center;gap:16px 6px;overflow:visible;}
  .partner-row .p-item{border:0;padding-inline:6px;min-height:34px;}
  .partner-row .p-item.p-logo img{height:28px;max-width:105px;}
  .partner-row .p-amga .amga-lockup{width:170px;}
  footer{padding-block:28px;}
  .footer-brand .brand-emblem,.foot-brand .brand-emblem{width:min(260px,75vw);height:auto;aspect-ratio:1415/895;object-fit:contain;}
  .footer-copyright{font-size:.7rem;line-height:1.6;}
}
@media(max-width:480px){
  .promo-grid,.groups-grid.cols-4{grid-template-columns:minmax(0,1fr);}
  .hero-ctas .btn{flex-basis:100%;}
  .service-detail-gallery{grid-template-columns:1fr;}
  .service-detail-gallery img.photo-full-frame{max-height:360px;}
  .next-trip-facts{gap:15px 12px;}
  .next-trip-facts dd{font-size:.8rem;overflow-wrap:anywhere;}
}
@media(max-width:1100px) and (max-height:540px) and (orientation:landscape){
  .nav-row{padding-block:4px;gap:20px;align-items:center;}
  header.site .brand .brand-emblem{width:100px;height:63px;}
  .viewport-course-explorer .course-explorer-tabs,.route-tabs{position:static;}
  .next-trip-dialog{max-height:94dvh;}
  .next-trip-image{min-height:280px;}
}
@media(hover:none){
  .service-photo-card:hover,.home-gallery-link:hover,.promo-grid>.promo-card:hover,.season-card:hover,.qualification-teaser-card:hover{transform:none;}
}
.mobile-peak-links{display:none;}
@media(max-width:760px){
  .hero-peaks{padding-bottom:24px;}
  .hero-peaks .peaks-svg,.hero-peaks .home-peak-hint{display:none;}
  .mobile-peak-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
  .mobile-peak-links a{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 5px;background:var(--surface-raised);border:1px solid var(--line);text-decoration:none;text-align:center;min-width:0;}
  .mobile-peak-links svg{width:44px;height:27px;fill:var(--accent-strong);}
  .mobile-peak-links .mountain-snow{fill:var(--ink);}
  .mobile-peak-links span{font:500 .8rem/1.4 Oswald,sans-serif;color:var(--ink);}
  .mobile-peak-links small{font:400 .62rem 'IBM Plex Mono',monospace;color:var(--ink-soft);}
  .mobile-peak-links a:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;}
}
.next-trip-dismiss{position:sticky;top:12px;z-index:3;height:0;display:flex;justify-content:flex-end;padding-right:12px;pointer-events:none;}
.next-trip-dismiss .next-trip-close{position:static;pointer-events:auto;flex-shrink:0;}
@media(max-width:1100px) and (max-height:540px) and (orientation:landscape){body{margin:0;}}
@media(max-width:760px){
 .page-hero h1.section-page-title{font-size:clamp(2.15rem,9vw,3rem);line-height:1.15;overflow-wrap:anywhere;}
 .section-banner-top{grid-template-columns:minmax(0,1fr);gap:24px;}
 .page-hero .section-page-subtitle{font-size:1.3rem;line-height:1.4;margin:12px 0 16px;}
 .section-banner-photo img{height:auto;max-height:280px;object-fit:contain;}
 .section-photo-banner .fact-row{margin-top:24px;}
}
/* Compact expedition browsing on phones; fuller detail stays on destination pages. */
.activity-link-compact{display:none;}
@media(max-width:760px){
 .expeditions-page .activity-grid,.expeditions-page .photo-expeditions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
 .expeditions-page .activity-card,.expeditions-page .exp-card{border-width:1px;}
 .expeditions-page .activity-photo,.expeditions-page .exp-photo{aspect-ratio:4/3;}
 .expeditions-page .activity-body,.expeditions-page .exp-content{padding:12px;gap:9px;}
 .expeditions-page .activity-body h3{font-size:1.15rem;line-height:1.25;}
 .expeditions-page .activity-body>.eyebrow,.expeditions-page .activity-body>p,.expeditions-page .activity-link{display:none;}
 .expeditions-page .activity-link-compact{display:flex;align-items:center;min-height:34px;color:var(--accent-strong);font:500 .88rem Oswald,sans-serif;margin-top:auto;}
 .expeditions-page .photo-expeditions .exp-top{display:flex;flex-direction:column;gap:6px;}
 .expeditions-page .exp-card h3{font-size:clamp(1rem,4.5vw,1.2rem);line-height:1.25;min-height:2.5em;}
 .expeditions-page .exp-alt{font-size:.8rem;}
 .expeditions-page .exp-loc{font-size:.73rem;line-height:1.5;letter-spacing:.03em;min-height:3em;color:var(--ink-soft);}
 .expeditions-page .exp-content>p,.expeditions-page .exp-guide,.expeditions-page .exp-content>a:not(.btn){display:none;}
 .expeditions-page .exp-meta{flex-direction:column;gap:5px;margin-top:auto;padding-top:9px;font-size:.76rem;line-height:1.5;}
 .expeditions-page .exp-card .btn{width:100%;align-self:stretch;min-height:44px;padding:9px 4px;font-size:.78rem;letter-spacing:.01em;}
}
@media(max-width:360px){.expeditions-page .activity-grid,.expeditions-page .photo-expeditions{gap:10px;}.expeditions-page .activity-body,.expeditions-page .exp-content{padding:10px;}}
@media(max-width:760px){
 .expeditions-page .activity-photo,.expeditions-page .exp-photo{aspect-ratio:16/10;}
 .expeditions-page .exp-content>a:not(.btn){display:none!important;}
 .expeditions-page .exp-meta{font-size:.82rem;}
 .expeditions-page .exp-loc{min-height:2.8em;}
}
@media(max-width:760px){.expeditions-page .exp-card{scroll-margin-top:calc(var(--site-header-height,100px) + 16px);}}
/* The same compact browsing cards across mobile overview pages. */
.compact-level-open{display:none;}
@media(max-width:760px){
 .promo-grid,.groups-grid.cols-4,.service-grid,.service-grid.service-cols-4,.season-card-grid,.season-card-grid:has(>.season-card:nth-child(2):last-child),.gallery-grid,.home-value-grid,.route-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;}
 .promo-grid>*,.service-grid>*,.season-card-grid>*,.home-value-grid>*,.route-card-grid>*{min-width:0;}
 .service-card-photo,.skill-card-photo,.season-card-photo{aspect-ratio:16/10;}
 .service-card-gallery,.service-photo-card:hover .service-card-gallery,.service-photo-card:focus-visible .service-card-gallery{display:none;}
 .service-card-body,.skill-card-body,.season-card-body{display:flex;flex-direction:column;flex:1;padding:12px;gap:9px;}
 .service-card-body>.eyebrow,.service-card-body>p,.skill-card-body>p,.season-card-body>.eyebrow,.season-card-body>p{display:none;}
 .service-card-body h3,.skill-card-body h3,.season-card-body h3,.promo-grid>.promo-card>h3{font-size:clamp(1rem,4.5vw,1.2rem);line-height:1.3;margin:0;overflow-wrap:normal;}
 .service-card-go{font-size:0;letter-spacing:0;margin:0;padding:0;min-height:34px;display:flex;align-items:center;margin-top:auto;}
 .service-card-go::after{content:'Explore →';font-size:.88rem;}
 .skill-card-body .go,.season-card-body .go{min-height:34px;display:flex;align-items:center;font-size:.85rem;margin-top:auto;padding-top:0;}
 .promo-grid>.promo-card:not(.skill-photo-card){padding:12px;gap:12px;border-width:1px;border-top-width:4px;}
 .promo-grid>.promo-card:not(.skill-photo-card)>p{display:none;}
 .promo-grid>.promo-card>.go{min-height:34px;display:flex;align-items:center;font-size:.85rem;}
 .season-card{border-width:1px;}
 .gallery-tile{aspect-ratio:4/5;border-width:1px;}
 .gallery-tile .cap{padding:10px;}
 .gallery-tile .cap span{font-size:.8rem;line-height:1.4;letter-spacing:.02em;}
 .home-gallery-link .cap .gallery-go{font-size:.7rem;}
 .home-values:not(.is-expanded) .home-value-card{padding:12px;border-width:1px;border-top-width:4px;}
 .home-values:not(.is-expanded) .home-value-copy>p{display:none;}
 .home-values:not(.is-expanded) .home-value-copy h3{font-size:1.1rem;line-height:1.35;}
 .course-explorer:not(.is-expanded) .summer-level-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;}
 .course-explorer:not(.is-expanded) .summer-level-card{display:flex;flex-direction:column;min-width:0;}
 .course-explorer:not(.is-expanded) .summer-level-body{padding:12px;display:flex;flex-direction:column;flex:1;gap:10px;}
 .course-explorer:not(.is-expanded) .summer-level-body>:not(h3):not(.compact-level-open){display:none;}
 .course-explorer:not(.is-expanded) .summer-level-body>h3{font-size:1rem;line-height:1.35;margin:0;}
 .course-explorer:not(.is-expanded) .compact-level-open{display:block;align-self:flex-start;min-height:44px;margin-top:auto;padding:0;border:0;background:none;color:var(--accent-strong);font:500 .88rem Oswald,sans-serif;cursor:pointer;}
 .compact-level-open:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px;}
 .course-explorer:not(.is-expanded) .qualification-badge-area{min-height:120px;padding:12px;}
 .course-explorer:not(.is-expanded) .qualification-badge{max-height:80px;max-width:100%;}
 .course-explorer:not(.is-expanded) .qualification-code{font-size:1rem;overflow-wrap:anywhere;}
 .route-card-grid .route-card{display:flex;flex-direction:column;padding:12px;gap:10px;}
 .route-card>.eyebrow,.route-card>p:not(.route-price){display:none;}
 .route-card h3{font-size:1.15rem;line-height:1.35;}
 .route-card .route-price{font-size:1.2rem;line-height:1.4;}
 .route-card .route-card-facts{font-size:.75rem;line-height:1.5;gap:6px;}
 .route-card .btn{font-size:.78rem;padding:9px 4px;}
 .route-card>img{max-height:130px;}
}
@media(max-width:360px){
 .promo-grid,.groups-grid.cols-4,.service-grid,.service-grid.service-cols-4,.season-card-grid,.season-card-grid:has(>.season-card:nth-child(2):last-child),.gallery-grid,.home-value-grid,.route-card-grid,.course-explorer:not(.is-expanded) .summer-level-grid{gap:10px;}
 .service-card-body,.skill-card-body,.season-card-body,.course-explorer:not(.is-expanded) .summer-level-body{padding:10px;}
}
