/* Compose the opening for the usable viewport, including mobile browser chrome.
   Text stays natural-height; a short screen or enlarged text can always scroll. */
:root{--ue-usable-height:100vh;--ue-header-height:115px}
@supports(height:100svh){:root{--ue-usable-height:100svh}}

@media(max-width:760px){
  .shop-header-inner{
    padding:10px max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left));
    grid-template-columns:minmax(0,1fr) auto;gap:6px clamp(7px,2vw,12px);
  }
  .shop-brand{min-height:44px}
  .shop-brand .shop-logo{width:145px}
  .shop-tools{gap:0}
  .shop-tool{width:44px;min-width:44px;min-height:44px;padding:3px 0;gap:3px;font-size:.5625rem}
  .shop-tool svg{width:19px;height:19px}
  .shop-shortcuts{gap:7px}
  .shop-shortcut{
    grid-template-columns:17px minmax(0,1fr);grid-template-rows:auto;
    align-items:center;gap:6px;min-height:44px;padding:8px 7px;border-radius:7px;
  }
  .shop-shortcut-icon{grid-column:1;grid-row:1}
  .shop-shortcut-icon svg{width:17px;height:17px}
  .shop-shortcut-copy{grid-column:2;grid-row:1}
  .shop-shortcut-copy strong{font-size:.75rem;line-height:1.3;letter-spacing:-.015em}
  .shop-shortcut-copy>span{display:none}

  .hero{min-height:calc(var(--ue-usable-height) - var(--ue-header-height));padding-top:14px;padding-bottom:max(18px,env(safe-area-inset-bottom))}
  .hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:10px}
  .hero-copy{display:contents}
  .hero-copy .heritage-signature{order:0;gap:8px;margin:0;flex-wrap:wrap}
  .heritage-line{width:22px}
  .heritage-owned{font-size:.8125rem;letter-spacing:.015em}
  .heritage-since{font-size:1.125rem;line-height:1.2}
  .hero-copy h1{
    order:1;margin:0;max-width:100%;font-size:clamp(1.875rem,8vw,2.5rem);
    line-height:1.01;letter-spacing:-.04em;font-stretch:80%;text-wrap:balance;
  }
  .hero-copy .hero-lead{order:2;margin:0;max-width:none;font-size:.875rem;line-height:1.45}
  .hero-copy .hero-actions{
    order:3;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
    gap:12px;align-items:center;margin:1px 0 0;
  }
  .hero-actions>.btn{width:100%;min-width:0;min-height:46px;padding:10px 10px;font-size:.8125rem;line-height:1.35;gap:8px}
  .hero-actions>.text-link{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;font-size:.75rem;line-height:1.4;text-align:center;text-wrap:balance}
  .hero-copy .club-note{order:4;max-width:none;margin:0;font-size:.71875rem;line-height:1.4}
  .hero-copy .hero-value{order:4;margin:0;font-size:.8125rem;line-height:1.45}
  .hero-gallery{
    order:6;flex:none;width:100%;aspect-ratio:auto;
    height:var(--ue-hero-gallery-height,clamp(216px,calc(var(--ue-usable-height) - var(--ue-header-height) - 285px),304px));
    min-height:216px;max-height:none;border-radius:11px;margin-top:1px;
  }
  .hero-slides{min-height:170px}
  .hero-slide img{object-position:var(--mobile-position,50% 50%)}
  .gallery-footer{min-height:44px;padding:0 10px 0 12px;gap:8px;border-radius:0 0 11px 11px}
  .hero-media-caption{font-size:.6875rem;line-height:1.35}
  .gallery-dots button{height:44px;width:24px}
}
@media(max-width:350px){
  .shop-header-inner{column-gap:7px}
  .shop-shortcut{grid-template-columns:16px minmax(0,1fr);gap:4px;padding-inline:6px}
  .shop-shortcut-icon svg{width:16px;height:16px}
  .shop-shortcut-copy strong{font-size:.71875rem}
  .hero-copy h1{font-size:1.875rem}
  .hero-copy .hero-actions{gap:9px}
  .hero-actions>.btn{font-size:.75rem;padding-inline:8px}
  .hero-actions>.text-link{font-size:.6875rem}
}
/* Landscape and text enlargement retain normal scrolling instead of shrinking
   readable text or hiding the photograph to force a one-screen composition. */
@media(max-width:760px) and (max-height:640px){
  .hero-grid{gap:8px}
  .hero-copy h1{font-size:clamp(1.65rem,7.5vw,2rem)}
  .hero-gallery{min-height:186px}
  .hero-slides{min-height:140px}
}
@media(max-width:760px) and (max-height:500px){
  .hero{padding-top:12px}
  .hero-grid{gap:9px}
}
