/* Mobile banner: keep the whole photo and let text determine its own height. */
@media(max-width:900px){
 .banner-carousel{margin:12px 12px 0;background:var(--paper)}
 .banner-stage{background:var(--paper)}
 .banner-slide{height:auto;min-height:0;aspect-ratio:auto;overflow:visible;background:var(--paper)}
 .banner-slide[hidden]{display:none}
 .banner-slide:after,.banner-slide:has(.secondary):after{display:none}
 .editorial-hero,.editorial-hero.secondary{position:relative;inset:auto;display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center}
 .editorial-copy{position:relative;inset:auto;transform:none;width:100%;max-width:none;padding:27px 24px 30px;color:var(--ink);overflow-wrap:break-word}
 .editorial-copy .eyebrow{color:#89714f;font-size:10px;letter-spacing:1.3px;line-height:1.6}
 .editorial-copy h1,.editorial-copy h2{font-size:clamp(30px,7.8vw,46px);line-height:1.13;letter-spacing:-.5px;margin:13px 0 16px;max-width:640px;text-wrap:balance}
 .editorial-copy p{font-size:14px;line-height:1.7;color:#6f665c;max-width:580px;margin:0 0 22px}
 .editorial-copy p br{display:contents}
 .editorial-copy .actions{display:flex;flex-wrap:wrap;gap:10px;margin:0}
 .editorial-copy .btn{background:var(--ink);border-color:var(--ink);color:#fff;font-size:11px;padding:13px 16px;line-height:1.5;white-space:normal;max-width:100%;text-align:center}
 .editorial-copy .btn.light{background:transparent;color:var(--ink);border-color:var(--ink)}
 .banner-controls{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:4px 16px 8px}
 .banner-tabs{gap:18px;min-width:0}
 .banner-tabs button{min-height:44px;min-width:35px;padding:11px 4px;font-size:11px}
 .banner-tabs button span{display:none}
 .banner-transport{display:flex;margin:0;gap:7px}
 .banner-transport button{min-width:40px;min-height:40px;font-size:12px}
}
@media(max-width:650px){
 header{gap:12px;min-width:0}
 header>a:first-child{min-width:0}
 .logo{width:min(205px,53vw);max-width:100%;height:auto}
 .menu{min-height:44px;flex-shrink:0}
 .banner-carousel{margin:10px 10px 0}
 .editorial-copy{padding:24px 20px 28px}
 .contact .email{font-size:clamp(19px,5.8vw,25px);overflow-wrap:anywhere;max-width:100%;display:inline-block}
 .contact>*,.about>*,.wall>*,.space-edit>*,.custom-hero>*,.custom-feature>*{min-width:0}
 .feature-copy,.custom-feature-copy{overflow-wrap:break-word}
}
@media(max-width:360px){
 .editorial-copy{padding:22px 18px 25px}
 .editorial-copy h1,.editorial-copy h2{font-size:29px}
 .editorial-copy .actions{display:grid;grid-template-columns:1fr}
 .editorial-copy .actions .btn{width:100%}
 .banner-controls{padding-left:12px;padding-right:12px;gap:4px}
 .banner-tabs{gap:7px}
 .banner-transport{gap:4px}
 .banner-transport button{min-width:36px}
}
@media(max-width:900px){
 .feature{grid-template-columns:minmax(0,1fr)}
 .feature>*,.feature-image{min-width:0;max-width:100%}
 .feature-image{min-height:0;height:auto;aspect-ratio:4/5}
 .feature-copy{padding:35px 7%}
 .editorial-copy p br::after{content:' '}
}
