
/* v69 — refined gallery-grade luxury hero */
.hero-gallery{padding:26px 0 42px}
.shell-gallery{width:min(calc(100% - 28px),1880px)}
.hero-gallery-stage{
  position:relative;
  min-height:820px;
  overflow:hidden;
  border-radius:34px;
  background:#17120f;
  box-shadow:0 30px 90px rgba(28,18,11,.18);
  isolation:isolate;
}
.hero-gallery-stage:before{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;
  z-index:4;
  pointer-events:none;
}
.hero-gallery-media,
.hero-gallery-overlay,
.hero-gallery-grain{position:absolute;inset:0}
.hero-gallery-media{
  background-size:cover;
  background-position:center;
  transform:scale(1.025);
  animation:galleryDrift 24s ease-in-out infinite;
}
.hero-gallery-overlay{
  background:
    linear-gradient(90deg, rgba(10,8,7,.82) 0%, rgba(10,8,7,.48) 34%, rgba(10,8,7,.10) 63%, rgba(10,8,7,.35) 100%),
    linear-gradient(180deg, rgba(10,8,7,.20) 0%, rgba(10,8,7,.04) 44%, rgba(10,8,7,.58) 100%),
    radial-gradient(circle at 72% 22%, rgba(250,231,203,.14), rgba(250,231,203,0) 26%);
  z-index:1;
}
.hero-gallery-grain{
  z-index:2;
  opacity:.13;
  pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E")
}
.hero-gallery-topline,
.hero-gallery-copy,
.hero-gallery-panel,
.hero-gallery-footer{position:absolute;z-index:5}
.hero-gallery-topline{
  top:44px;
  left:54px;
  right:54px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:rgba(255,248,240,.82);
  text-transform:uppercase;
  letter-spacing:.20em;
  font-size:.72rem;
  font-weight:800;
}
.hero-gallery-copy{
  left:54px;
  bottom:92px;
  width:min(720px,56%);
  color:#fff9f2;
}
.hero-gallery-copy h1{
  margin:0;
  max-width:9ch;
  font-size:clamp(4.6rem,8.2vw,9rem);
  line-height:.88;
  letter-spacing:-.085em;
  text-shadow:0 8px 32px rgba(0,0,0,.24)
}
.hero-gallery-copy p{
  margin:26px 0 0;
  max-width:620px;
  color:rgba(255,247,239,.76);
  font-size:1.12rem;
  line-height:1.72
}
.hero-gallery-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.hero-gallery-primary,
.hero-gallery-secondary{
  min-height:56px;
  padding:14px 24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  transition:transform .24s ease,box-shadow .24s ease,background .24s ease
}
.hero-gallery-primary{
  background:#f7efe6;
  color:#17110d;
  box-shadow:0 18px 36px rgba(0,0,0,.18)
}
.hero-gallery-secondary{
  color:#fff9f2;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(14px)
}
.hero-gallery-primary:hover,
.hero-gallery-secondary:hover{transform:translateY(-3px)}
.hero-gallery-panel{
  top:118px;
  right:54px;
  width:min(390px,31%);
  padding:30px 28px 26px;
  border-radius:26px;
  color:#1c1510;
  background:linear-gradient(180deg,rgba(255,252,247,.96),rgba(240,231,219,.94));
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 28px 60px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.8);
  backdrop-filter:blur(18px)
}
.hero-gallery-panel-kicker{
  color:#98724d;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.72rem;
  font-weight:800;
  margin-bottom:16px
}
.hero-gallery-panel h2{
  margin:0;
  font-size:clamp(2rem,2.7vw,3rem);
  line-height:.98;
  letter-spacing:-.06em
}
.hero-gallery-panel p{
  margin:16px 0 0;
  color:#6c6258;
  line-height:1.68
}
.hero-gallery-specs{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:24px
}
.hero-gallery-specs div{
  min-height:62px;
  padding:13px 14px;
  border-radius:16px;
  border:1px solid rgba(88,65,42,.10);
  background:rgba(255,255,255,.52);
  display:grid;
  grid-template-columns:42px 1fr;
  align-items:center;
  gap:10px
}
.hero-gallery-specs span{
  color:#aa825a;
  font-size:.72rem;
  letter-spacing:.14em;
  font-weight:800
}
.hero-gallery-specs strong{font-size:.95rem;line-height:1.25}
.hero-gallery-footer{
  left:54px;
  right:54px;
  bottom:32px;
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
  color:rgba(255,249,242,.72);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.72rem;
  font-weight:800
}
.hero-gallery-mark{
  font-size:5.8rem;
  line-height:.72;
  letter-spacing:-.09em;
  color:rgba(255,255,255,.15)
}
@keyframes galleryDrift{
  0%,100%{transform:scale(1.025) translate3d(0,0,0)}
  50%{transform:scale(1.065) translate3d(-.8%,-.6%,0)}
}
@media(max-width:1100px){
  .hero-gallery-stage{min-height:900px}
  .hero-gallery-copy{width:min(720px,70%)}
  .hero-gallery-panel{width:min(360px,38%)}
}
@media(max-width:820px){
  .hero-gallery{padding-top:18px}
  .shell-gallery{width:min(calc(100% - 14px),1880px)}
  .hero-gallery-stage{min-height:auto;border-radius:24px;padding:78px 16px 18px}
  .hero-gallery-stage:before{inset:8px;border-radius:18px}
  .hero-gallery-media,.hero-gallery-overlay,.hero-gallery-grain{position:absolute}
  .hero-gallery-topline,
  .hero-gallery-copy,
  .hero-gallery-panel,
  .hero-gallery-footer{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto}
  .hero-gallery-topline{margin:0 6px 22px;font-size:.62rem}
  .hero-gallery-copy{margin:0 6px}
  .hero-gallery-copy h1{font-size:clamp(3rem,14vw,5.2rem);max-width:9ch}
  .hero-gallery-copy p{font-size:1rem;line-height:1.6}
  .hero-gallery-actions{flex-direction:column;align-items:stretch}
  .hero-gallery-primary,.hero-gallery-secondary{width:100%}
  .hero-gallery-panel{margin:22px 6px 0;padding:24px 20px;border-radius:20px}
  .hero-gallery-panel h2{font-size:1.8rem}
  .hero-gallery-footer{margin:22px 6px 0;align-items:center}
  .hero-gallery-mark{font-size:4rem}
}
@media(prefers-reduced-motion:reduce){.hero-gallery-media{animation:none}}
