/* 2026-09-18 mobile density pass: shorten vertical journeys without removing content. */
@media (max-width:720px){
  .concierge-home .bc-main{width:calc(100% - 20px)}
  .concierge-home .bc-section{margin:26px 0 30px}
  .concierge-home .bc-section-head{gap:8px;margin-bottom:12px}
  .concierge-home .bc-section h2{font-size:21px;line-height:1.32;margin-top:4px}
  .concierge-home .bc-section-head>a{margin-top:18px}

  .concierge-home .quick{gap:8px}
  .concierge-home .quick .card{min-height:116px;padding:13px 12px;border-radius:16px}
  .concierge-home .bc-icon{width:38px;height:38px;font-size:20px}
  .concierge-home .card h3{margin:9px 0 2px;font-size:15px;line-height:1.35}
  .concierge-home .card p{font-size:11px;line-height:1.45}
  .concierge-home .bc-arrow{right:12px;top:14px}

  /* Keep every guide/live group, but move sibling groups sideways instead of stacking them. */
  .concierge-home .bc-guides,
  .concierge-home .bc-live-grid{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;padding:0 10% 4px 0;scrollbar-width:none}
  .concierge-home .bc-guides::-webkit-scrollbar,
  .concierge-home .bc-live-grid::-webkit-scrollbar{display:none}
  .concierge-home .bc-guide{flex:0 0 88%;min-height:178px;padding:17px 16px;scroll-snap-align:start}
  .concierge-home .bc-guide h3{font-size:21px;line-height:1.34;margin:10px 0 7px}
  .concierge-home .bc-guide p{margin:0 0 11px;font-size:12px;line-height:1.55}
  .concierge-home .bc-guide>span:last-child{margin-top:auto}
  .concierge-home .bc-live-column{flex:0 0 88%;min-width:0;scroll-snap-align:start}
  .concierge-home .bc-live-column>h3{margin:0 -19px;padding:12px 14px}
  .concierge-home .bc-live-item{min-height:0;padding:10px 0}
  .concierge-home .bc-live-item h4{margin:4px 0;font-size:14px;line-height:1.45}
  .concierge-home .bc-live-item p{margin:2px 0}

  /* The mobile globe is opt-in. Do not reserve a large empty canvas before the visitor asks for it. */
  .we-entry.we-lazy-pending .we-visual{min-height:0;padding:0}
  .we-entry.we-lazy-pending .we-visual canvas,
  .we-entry.we-lazy-pending .we-orbit{display:none}
  .we-entry.we-lazy-pending .we-controls{margin-top:0;padding-top:2px}
  .we-entry.we-lazy-pending .we-key-help{display:none}
  .we-entry:not(.we-lazy-pending) .we-visual canvas{height:220px}
  .concierge-home .we-entry.we-lazy-pending{padding-bottom:13px}

  /* Overseas country cards: real Commons photos when available, compact fallback when not. */
  body.overseas-page .country-city-grid{gap:10px}
  body.overseas-page .country-city-photo{height:128px}
  body.overseas-page .country-city-photo[data-commons-loaded="true"]:before{display:none}
  body.overseas-page .country-city-body{padding:13px 14px}
  body.overseas-page .country-city-title strong{font-size:18px}
  body.overseas-page .country-city-counts{margin-top:9px}
  body.overseas-page .country-city-cta{margin-top:10px}
  body.overseas-page .country-view-note{margin-top:9px;padding:10px 12px}
}

@media (max-width:720px){
  body.overseas-page .overseas-hero{padding:16px 14px 13px}
  body.overseas-page .overseas-hero .travel-section-nav{margin-bottom:10px}
  body.overseas-page .overseas-hero>p:last-of-type{margin:7px 0 0;font-size:12px;line-height:1.5}
  body.overseas-page .overseas-hero h1{font-size:26px}
  body.overseas-page .country-grid{margin-top:11px;padding-bottom:4px}
  body.overseas-page .country{min-height:40px;padding:7px 10px}
  body.overseas-page main{padding-top:10px}
  body.overseas-page .explorer-heading{margin-bottom:8px}
  body.overseas-page .overseas-search{margin-top:9px;padding:11px}
  body.overseas-page .google-map-handoff{margin:8px 0 10px;padding:13px}
  body.overseas-page .google-map-handoff-copy p{display:none}
  body.overseas-page .google-map-open{min-height:46px}
  body.overseas-page .country-discovery{margin-top:10px}
  body.overseas-page .country-discovery-head{margin-bottom:8px}
  body.overseas-page .country-discovery-head p{display:none}
  body.overseas-page .country-city-grid{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 14% 4px 0;scrollbar-width:none}
  body.overseas-page .country-city-grid::-webkit-scrollbar{display:none}
  body.overseas-page .country-city-card{flex:0 0 72%;scroll-snap-align:start}
  body.overseas-page .country-city-photo{height:105px}
  body.overseas-page .country-city-body{padding:11px 12px}
  body.overseas-page .country-city-title strong{font-size:16px}
  body.overseas-page .country-city-counts{margin-top:7px;gap:4px}
  body.overseas-page .country-city-counts span{padding:4px 6px;font-size:10px}
  body.overseas-page .country-city-cta{margin-top:7px}
  body.overseas-page .content-head{margin-top:18px}
  body.overseas-page .result-line{margin:7px 0}
  body.overseas-page .booking-panel{margin:18px 0;padding:15px}
}
