.hero {
  --light-x: 68%;
  --light-y: 32%;
  --image-x: 0px;
  --image-y: 0px;
  --panel-x: 0px;
  --panel-y: 0px;
  isolation: isolate;
  min-height: min(1000px, 100svh);
  overflow: hidden;
  background: #0a1016;
}

.hero:before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(4, 7, 10, .6) 0%, rgba(4, 7, 10, .08) 39%, rgba(4, 7, 10, .18) 63%, rgba(4, 7, 10, .68) 100%),
    linear-gradient(90deg, rgba(5, 8, 11, .65) 0%, rgba(5, 8, 11, .32) 39%, transparent 68%);
}

.hero:after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(520px circle at var(--light-x) var(--light-y), rgba(215, 177, 108, .1), transparent 62%);
}

.hero .hero-image {
  display: none;
}

.premium-hero-slider { position:absolute; z-index:0; inset:-14px; overflow:hidden; opacity:0; background:#0a1016; transition:opacity 1.2s ease; }
.hero-slider-ready .premium-hero-slider { opacity:1; }
.premium-hero-slide { position:absolute; inset:0; margin:0; opacity:0; filter:blur(3px); transform:translate3d(var(--image-x),var(--image-y),0); transition:opacity 2.2s ease,filter 2.2s ease,transform 1.1s cubic-bezier(.22,1,.36,1); }
.premium-hero-slide.is-active { opacity:1; filter:blur(0); will-change:opacity,filter,transform; }
.premium-hero-slide img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.045); filter:saturate(.9) contrast(1.04); }
.premium-hero-slide.is-active img{will-change:transform}

.hero-grid {
  z-index: 2;
  opacity: .24;
  mask-image: linear-gradient(90deg, #000, transparent 72%);
}

.hero-atmosphere {
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(118deg, transparent 54%, rgba(214, 177, 110, .045));
  mix-blend-mode: screen;
}

.hero-content {
  z-index: 3;
  top:50%;
  left:8vw;
  width: min(710px, 74vw);
  padding: clamp(38px, 4vw, 56px) clamp(34px, 4.2vw, 58px);
  border: 1px solid rgba(214, 177, 110, .14);
  background: linear-gradient(135deg, rgba(9, 13, 16, .46), rgba(9, 13, 16, .19));
  box-shadow: inset 0 1px rgba(255, 255, 255, .08), inset 0 0 44px rgba(214, 177, 110, .035), 0 38px 100px rgba(0, 0, 0, .28);
  -webkit-backdrop-filter: blur(21px) saturate(115%);
  backdrop-filter: blur(21px) saturate(115%);
  transform: translate3d(var(--panel-x), calc(-44% + var(--panel-y)), 0);
  transition: transform .9s cubic-bezier(.22, 1, .36, 1), border-color .5s ease;
  will-change: transform;
}

.hero-content:hover {
  border-color: rgba(214, 177, 110, .22);
}

.hero-content .eyebrow {
  margin-bottom: clamp(22px, 3vh, 34px);
  letter-spacing: .2em;
}

.hero-content h1 {
  max-width: 620px;
  font-size:clamp(56px,5.35vw,82px);
  line-height: 1.01;
  letter-spacing: -.045em;
  text-wrap: balance;
  text-shadow: 0 6px 34px rgba(0, 0, 0, .32);
}

.hero-heading-primary,
.hero-content h1 em {
  display: inline-block;
}

.hero-content h1 em {
  margin-top: .12em;
  color: #d9b674;
  text-shadow: 0 7px 32px rgba(196, 148, 67, .16);
}

.hero-content .hero-copy {
  max-width: 540px;
  margin-top: clamp(24px, 3vh, 36px);
  color: rgba(244, 242, 236, .82);
  line-height: 1.7;
  letter-spacing: .012em;
}

.hero-content .round-link {
  border-color: rgba(218, 181, 113, .66);
  background: rgba(11, 15, 17, .32);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .045), 0 16px 42px rgba(0, 0, 0, .2);
  transform: translate3d(var(--cta-x, 0), var(--cta-y, 0), 0);
  transition: transform .55s cubic-bezier(.22, 1, .36, 1), box-shadow .55s ease, background .55s ease, border-color .55s ease;
}

.hero-content .round-link:after {
  content: "";
  position: absolute;
  inset: -1px;
  border: 1px solid rgba(218, 181, 113, .16);
  border-radius: 50%;
  animation: hero-gold-pulse 3.2s ease-in-out infinite;
}

.hero-content .round-link:hover {
  border-color: rgba(230, 195, 126, .95);
  background: rgba(198, 157, 88, .12);
  box-shadow: 0 0 42px rgba(199, 158, 88, .2), inset 0 0 24px rgba(218, 181, 113, .06);
  transform: translate3d(var(--cta-x, 0), var(--cta-y, 0), 0) scale(1.045) rotate(2deg);
}

.hero-content .round-link b {
  transition: transform .55s cubic-bezier(.22, 1, .36, 1);
}

.hero-content .round-link:hover b {
  transform: translateY(5px) rotate(360deg);
}

.premium-scroll {
  position: absolute;
  z-index: 4;
  left: 50%;
  bottom: 22px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, .7);
  font: 500 8px/1 Arial, sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
  transform: translateX(-50%);
  transition: color .3s ease;
}

.premium-scroll:hover { color: #e1bd79; }
.scroll-mouse { position: relative; width: 18px; height: 28px; border: 1px solid rgba(255,255,255,.45); border-radius: 12px; }
.scroll-mouse b { position: absolute; top: 6px; left: 50%; width: 2px; height: 5px; border-radius: 2px; background: #d6b16e; transform: translateX(-50%); animation: mouse-wheel 1.8s ease-in-out infinite; }
.premium-scroll i { display: block; width: 1px; height: 34px; background: linear-gradient(#d6b16e, transparent); animation: scroll-pulse 1.8s infinite; }
.hero-story-meta{position:absolute;z-index:4;right:clamp(28px,5vw,78px);bottom:34px;display:grid;justify-items:end;gap:5px;color:#fff;text-align:right;text-shadow:0 3px 16px rgba(0,0,0,.7)}
.story-number{color:#d9b674;font:500 10px/1 Arial,sans-serif;letter-spacing:.2em}.story-category{font:500 11px/1.25 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.story-location{color:rgba(255,255,255,.62);font:400 9px/1.2 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.hero-playback{position:absolute;z-index:5;right:clamp(28px,5vw,78px);bottom:100px;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(218,181,113,.34);border-radius:50%;color:#e1bd79;background:rgba(8,12,14,.38);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:transform .4s cubic-bezier(.22,1,.36,1),background .3s,border-color .3s,box-shadow .3s}
.hero-playback:hover{transform:scale(1.08);border-color:rgba(225,189,121,.7);background:rgba(218,181,113,.12);box-shadow:0 0 25px rgba(218,181,113,.12)}
.pause-icon{display:flex;gap:3px}.pause-icon i{display:block;width:2px;height:10px;background:currentColor}.play-icon{display:none;width:0;height:0;margin-left:2px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor}.is-slideshow-paused .pause-icon{display:none}.is-slideshow-paused .play-icon{display:block}
.hero a:focus-visible,.hero button:focus-visible{outline:2px solid #e1bd79;outline-offset:5px}

#hero-loader{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;background:#090d0f;transition:opacity .85s cubic-bezier(.22,1,.36,1),visibility .85s;animation:loader-failsafe 0s 8s forwards}
#hero-loader.is-complete{opacity:0;visibility:hidden;pointer-events:none}
.loader-brand{display:grid;justify-items:center;gap:22px;transform:translateY(-2vh)}
.loader-brand img{width:min(340px,62vw);height:auto;filter:brightness(1.8) saturate(1.35) sepia(.16) drop-shadow(0 0 24px rgba(218,181,113,.25));animation:loader-logo 1.4s cubic-bezier(.22,1,.36,1) both}
.loader-line{display:block;width:min(210px,42vw);height:1px;overflow:hidden;background:rgba(218,181,113,.14)}
.loader-line:after{content:"";display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent,#d9b674,transparent);animation:loader-line 1.8s .25s cubic-bezier(.22,1,.36,1) both}

@keyframes hero-image-arrival { from { opacity: 0; transform: scale(1.09); } to { opacity: 1; transform: translate3d(var(--image-x), var(--image-y), 0) scale(1.035); } }
@keyframes hero-gold-pulse { 0%, 100% { opacity: .25; transform: scale(1); } 50% { opacity: .6; transform: scale(1.075); } }
@keyframes mouse-wheel { 0% { opacity: 0; transform: translate(-50%, -2px); } 35% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%, 8px); } }
@keyframes scroll-pulse { 0%, 100% { opacity: .35; transform: scaleY(.45); transform-origin: top; } 50% { opacity: 1; transform: scaleY(1); } }
@keyframes loader-logo{from{opacity:0;transform:translateY(15px) scale(.94);filter:blur(8px)}to{opacity:1;transform:none}}
@keyframes loader-line{from{transform:translateX(-110%)}to{transform:translateX(110%)}}
@keyframes loader-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}

@media (min-width: 1600px) {
  .hero-content { width:min(740px,42vw); }
}

@media (max-width: 1100px) {
  .hero-content { width:min(670px,79vw); }
}

@media (max-width: 900px) {
  .premium-hero-slide img { object-position:62% center; }
  .hero-content { top:46%; left:7vw; width:min(680px,88vw); padding:34px 30px; transform:translateY(-44%); }
  .premium-scroll { left: auto; right: 7vw; transform: none; }
  .scroll-label { display: none; }
  .hero-story-meta{right:7vw;bottom:28px}.story-category,.story-location{display:none}
  .hero-playback{right:7vw;bottom:72px;width:36px;height:36px}
}

@media (max-width: 540px) {
  .hero { min-height: 720px; }
  .premium-hero-slide img { object-position:67% center; filter:saturate(.84) contrast(1.05); }
  .hero-content { left: 5vw; right: 5vw; width: auto; padding: 29px 22px; -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
  .hero-content .eyebrow { max-width: 100%; font-size: 8px; letter-spacing: .12em; white-space: normal; }
  .hero-content h1 { width:100%; max-width:100%; font-size:clamp(40px,11vw,52px); line-height:1.01; white-space:normal; }
  .hero-heading-primary,.hero-content h1 em { max-width:100%; white-space:normal; overflow-wrap:normal; }
  .hero-content .hero-copy { width:100%; max-width:100%; margin-top:20px; line-height:1.65; white-space:normal; }
  .hero-content .round-link { bottom: -140px; }
}

@media (prefers-reduced-motion: reduce) {
  .premium-hero-slide, .premium-hero-slide img, .hero-content, .hero-content .round-link, .hero-content .round-link:after, .scroll-mouse b, .premium-scroll i,#hero-loader,.loader-brand img,.loader-line:after { animation:none; transition:none; }
}

@media (prefers-contrast: more){.hero-content{background:rgba(7,10,12,.74);border-color:rgba(225,189,121,.55)}.hero-content .hero-copy{color:#fff}.story-location{color:#fff}}

/* Slide-aware luxury branding */
.nav .brand { padding:8px 14px; margin-left:-14px; }
.nav .brand img { width:280px; height:88px; filter:brightness(1.75) saturate(1.35) sepia(.12) drop-shadow(0 4px 16px rgba(0,0,0,.72)) drop-shadow(0 0 16px rgba(216,178,107,.3)); transition:width .55s cubic-bezier(.22,1,.36,1),filter .8s ease,opacity .8s ease; }
.nav.is-scrolled .brand img { width:230px; height:74px; }
.nav.hero-tone-light { background:linear-gradient(180deg,rgba(8,11,13,.56),rgba(8,11,13,.14)); }
.nav.hero-tone-light .brand img { filter:brightness(1.9) saturate(1.45) sepia(.18) drop-shadow(0 5px 18px rgba(0,0,0,.82)) drop-shadow(0 0 18px rgba(230,190,114,.38)); }
.nav.hero-tone-warm .brand img { filter:brightness(1.7) saturate(1.4) sepia(.18) drop-shadow(0 5px 18px rgba(0,0,0,.76)) drop-shadow(0 0 18px rgba(225,181,99,.3)); }
.nav.hero-tone-cool .brand img { filter:brightness(1.85) saturate(1.38) sepia(.14) drop-shadow(0 5px 18px rgba(0,0,0,.72)) drop-shadow(0 0 20px rgba(230,192,119,.36)); }
@media(max-width:1180px){.nav .brand img{width:230px;height:78px}.nav.is-scrolled .brand img{width:205px}}
@media(max-width:900px){.nav .brand{padding:5px 8px;margin-left:-8px}.nav .brand img,.nav.is-scrolled .brand img{width:205px;height:72px}}
