/* =======================================================
   HERO
   ======================================================= */
.hero{
  position:relative; isolation:isolate; text-align:center; overflow:hidden;
  padding-block:clamp(28px,7vw,80px); padding-top:calc(74px + 3vw);
  background:radial-gradient(500px 250px at 50% -5%,rgba(255,223,138,.12),transparent 70%)
}
.hero-video-wrap{position:absolute; inset:0; z-index:0; pointer-events:none}
.hero-video{width:100%; height:100%; object-fit:cover; filter:saturate(1.05) contrast(1.05)}
.hero-dim{position:absolute; inset:0; z-index:1; background:radial-gradient(70% 60% at 50% 20%,rgba(0,0,0,.35),rgba(0,0,0,.7) 70%), rgba(0,0,0,.55)}
.hero-inner{position:relative; z-index:2}

.hero .hero-logo-img{
  max-width:min(36vw,260px); width:clamp(180px,35vw,300px);
  filter:drop-shadow(0 0 26px rgba(227,193,90,.25));
  will-change:transform; transition:transform .3s, filter .3s; animation:float 6s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)}}
.hero .hero-logo-img:hover{filter:drop-shadow(0 16px 36px rgba(227,193,90,.22)) saturate(1.03) brightness(1.02)}

.hero-title span{
  display:inline-block; background:linear-gradient(90deg,#b98a2c 0%,#ffe29a 35%,#b98a2c 70%); -webkit-background-clip:text; background-clip:text; color:transparent;
  background-size:200% 100%; animation:goldSweep 3.2s var(--ease-smooth) infinite;
}
@keyframes goldSweep{0%{background-position:0% 50%; filter:drop-shadow(0 0 0 rgba(232,199,103,0))}
45%{background-position:100% 50%; filter:drop-shadow(0 6px 18px rgba(232,199,103,.18))}
100%{background-position:200% 50%; filter:drop-shadow(0 0 0 rgba(232,199,103,0))}}

.scroll-cue{
  width:20px; height:28px; border-radius:12px; margin:24px auto 0;
  border:2px solid rgba(255,226,154,.55); position:relative; opacity:.75;
  box-shadow:0 8px 22px rgba(232,199,103,.08) inset;
}
.scroll-cue::after{
  content:""; position:absolute; left:50%; top:6px; width:4px; height:6px; transform:translateX(-50%); border-radius:2px;
  background:linear-gradient(180deg,#ffe29a,#b6892e); animation:wheel 1.2s ease-in-out infinite;
}
@keyframes wheel{0%{transform:translate(-50%,0)} 60%{transform:translate(-50%,10px)} 100%{transform:translate(-50%,0)}}

@media (max-width:760px){
  .scroll-cue{display:none}
  .hero{padding-top:calc(64px + 6vw); padding-bottom:42px}
  .hero .hero-logo-img{max-width:180px}
  .hero-title{font-size:clamp(1.8rem,8vw,2.2rem); line-height:1.15; margin-top:10px}
  .subtitle{font-size:1rem; line-height:1.55; padding:0 12px}
  .hero-video{display:block; width:100%; height:100%; object-fit:cover}
  .hero-video-wrap{background:none}
}
@media (max-width:360px){
  .hero .hero-logo-img{max-width:160px}
  .hero-title{font-size:1.7rem}
}
