
/* V8.0 — legibility, gallery usability and editorial finishing */
@media(min-width:781px){
  .home-hero-shade{background:linear-gradient(90deg,#09100ffb 0%,#09100ff2 24%,#09100fe3 40%,#10150f7a 59%,#10150f00 82%),linear-gradient(0deg,#090d0aa8,transparent 35%)}
  .home-hero-content{filter:drop-shadow(0 2px 10px #02040355)}
  .home-hero-content>p{color:#f6f0e5}
}
@media(max-width:780px){
  .home-hero{display:block;height:auto!important;min-height:0!important;max-height:none!important;padding-top:clamp(305px,82vw,425px);background:#0b110f;position:relative}
  .home-hero-media{position:absolute;top:0;left:0;right:0;bottom:auto!important;height:clamp(325px,85vw,445px)!important;overflow:hidden}
  .home-hero-media picture,.home-hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%!important}
  .home-hero-shade{position:absolute;top:0;left:0;right:0;bottom:auto;height:clamp(325px,85vw,445px);background:linear-gradient(to bottom,transparent 56%,#0b110fdd 92%,#0b110f 100%)}
  .home-hero-content{display:block;width:100%;max-width:none!important;position:relative;z-index:2;background:linear-gradient(to bottom,#0b110f,#0e1612);padding:36px var(--pad) 97px!important;margin:0!important}
  .home-hero h1{font-size:clamp(48px,10.5vw,66px);line-height:1.02;margin:16px 0 22px;letter-spacing:-.04em}
  .home-hero h1 em{color:#e9c890}
  .home-hero-content>p{font-size:14px;line-height:1.8;color:#f1eade}
  .v6-hero-eyebrow{line-height:1.65;max-width:340px}
  .hero-footer{z-index:3}
}
@media(max-width:380px){.home-hero h1{font-size:clamp(42px,11.3vw,49px)}.hero-actions{gap:9px}}
.gallery-feature{display:block;width:100%;height:100%;border:0;padding:0;margin:0;background:transparent;color:inherit;cursor:zoom-in;overflow:hidden;position:relative}
.gallery-feature img{width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .5s ease}
.gallery-feature:hover img{transform:scale(1.025)}
.gallery-feature:focus-visible,.photo-card:focus-visible,.filter-btn:focus-visible{outline:3px solid #f0cb8f;outline-offset:4px}
/* prevent decorative overlay intercepting the image click */
.v6-gallery-intro-media:after{pointer-events:none}
@media(prefers-reduced-motion:reduce){.gallery-feature img{transition:none}}
/* 320px Safari/Chromium: keep the wide lifestyle photo inside its layout column */
.v7-photo-quote{max-width:100%;overflow:clip}
.v7-photo-quote>div{min-width:0;max-width:100%;overflow:hidden}
.v7-photo-quote>div img{display:block;width:100%;max-width:100%;height:100%;object-fit:cover}
/* Editorial image labels, readable on every tile including narrow phones */
.gallery-page .photo-caption{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-right:30px;left:18px;right:18px;bottom:18px;min-width:0}
.gallery-page .photo-caption small{font:600 10px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.13em;color:#efce91}
.gallery-page .photo-caption strong{font:400 clamp(20px,2.2vw,30px)/1.08 var(--serif);max-width:100%;overflow-wrap:break-word;color:#fff9f0}
.gallery-page .photo-caption b{position:absolute;right:0;bottom:3px;font-size:22px}
.gallery-page .photo-card:after{background:linear-gradient(transparent,#000d);inset:45% 0 0}
@media(max-width:420px){
  .gallery-page .photo-caption{left:12px;right:12px;bottom:14px;padding-right:18px;gap:5px}
  .gallery-page .photo-caption strong{font-size:20px;line-height:1.1}
  .gallery-page .photo-caption small{font-size:8px;letter-spacing:.05em}
  .gallery-page .photo-caption b{font-size:16px;bottom:0}
}
