:root{
  --gold:#d7a33a;
  --gold-light:#ffe3a0;
  --ink:#050505;
  --white:#fffaf0;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#050505;color:var(--white)}
body{font-family:Montserrat,Arial,sans-serif}
button,a{font:inherit}
.experience{min-height:100vh;background:#050505;overflow:hidden;position:relative}
.hero{height:min(82vh,900px);min-height:650px;position:relative;overflow:hidden;isolation:isolate}
.background-carousel{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#090807}
.carousel-track{
  position:absolute;inset:0;
  display:flex;height:100%;
  transition:transform 1.25s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.scene-panel{
  flex:0 0 20%;
  height:100%;
  background-size:cover;
  background-position:center 15%;
  position:relative;
  filter:saturate(.98) contrast(1.04);
  transform:scale(1.03);
}
.scene-panel::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.03) 42%,rgba(0,0,0,.58) 72%,rgba(0,0,0,.97) 100%),
    linear-gradient(90deg,rgba(0,0,0,.16),transparent 28%,transparent 72%,rgba(0,0,0,.16));
}
.background-shade{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    radial-gradient(ellipse at center 43%,rgba(0,0,0,.05) 0%,rgba(0,0,0,.2) 50%,rgba(0,0,0,.55) 100%),
    linear-gradient(90deg,rgba(0,0,0,.28),transparent 38%,transparent 62%,rgba(0,0,0,.28));
}
.bottom-fade{
  position:absolute;z-index:6;left:0;right:0;bottom:0;height:64%;
  background:linear-gradient(to bottom,rgba(5,5,5,0) 0%,rgba(5,5,5,.22) 8%,rgba(5,5,5,.72) 38%,rgba(5,5,5,.94) 62%,#050505 82%,#050505 100%);
  pointer-events:none;
}
.grain{position:absolute;inset:0;z-index:4;opacity:.10;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}

.topbar{
  position:absolute;z-index:10;top:1.35rem;left:clamp(1rem,4vw,4rem);right:clamp(1rem,4vw,4rem);
  display:none;justify-content:space-between;align-items:center;
  font:600 .67rem Cinzel,serif;letter-spacing:.15em;
}
.brand-mini{color:var(--gold-light);text-decoration:none;text-shadow:0 2px 10px #000}
.mini-sun{color:var(--gold);font-size:1.05rem}
.location{color:#fff9e6cc;text-shadow:0 2px 10px #000}

.inca-stage{
  position:absolute;z-index:5;
  top:1%;left:50%;width:min(34vw,520px);height:88%;
  transform:translateX(-50%);
  display:flex;align-items:flex-end;justify-content:center;
  pointer-events:none;
}
.inca-glow{
  position:absolute;width:60%;aspect-ratio:1;border-radius:50%;top:7%;
  background:radial-gradient(circle,rgba(245,180,66,.34),rgba(205,129,19,.12) 42%,transparent 72%);
  filter:blur(13px);
}
.inca-image{
  position:relative;z-index:2;width:100%;height:100%;
  object-fit:contain;object-position:center bottom;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.9)) drop-shadow(0 0 22px rgba(189,121,34,.18));
  animation:float 6s ease-in-out infinite;
}

.hero-content{
  position:absolute;z-index:8;
  isolation:isolate;
  left:50%;top:57%;transform:translate(-50%,-50%);
  width:min(92vw,680px);text-align:center;
  display:flex;flex-direction:column;align-items:center;
}
.hero-content::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  left:50%;top:18%;transform:translateX(-50%);
  width:100vw;height:68vh;
  background:linear-gradient(to bottom,rgba(5,5,5,0) 0%,rgba(5,5,5,.10) 10%,rgba(5,5,5,.42) 27%,rgba(5,5,5,.78) 46%,rgba(5,5,5,.97) 67%,#050505 88%,#050505 100%);
}
.eyebrow{
  margin:0 0 .35rem;color:var(--gold-light);
  font:600 .62rem Cinzel,serif;letter-spacing:.25em;
  display:flex;align-items:center;gap:.7rem;
  text-shadow:0 2px 10px #000;
}
.eyebrow span{width:2rem;height:1px;background:var(--gold);display:inline-block}
.hero-logo{
  position:relative;top:145px;
  width:min(52vw,470px);height:auto;display:block;
  object-fit:contain;
  filter:drop-shadow(0 4px 2px rgba(49,28,4,.9)) drop-shadow(0 8px 22px rgba(0,0,0,.95));
}
.tagline{
  margin:.2rem 0 1rem;color:#fffaf0;
  font-size:clamp(.9rem,1.4vw,1.2rem);line-height:1.45;
  text-shadow:0 2px 9px #000;
}
.tagline strong{color:var(--gold-light)}
.carousel-controls{display:flex;align-items:center;gap:.55rem}
.arrow{
  border:0;background:transparent;color:var(--gold-light);cursor:pointer;
  font-size:2rem;line-height:1;padding:.1rem .25rem;transition:.2s;
}
.arrow:hover{color:#fff;transform:scale(1.12)}
.dots{display:flex;gap:.42rem;align-items:center}
.dot{width:.42rem;height:.42rem;border:0;border-radius:999px;padding:0;background:#fff8d855;cursor:pointer;transition:.3s}
.dot.active{width:1.6rem;background:var(--gold)}

.social-section{
  position:relative;z-index:12;
  margin:-2.6rem auto 0;
  padding:0 clamp(1rem,4vw,4rem);
}
.social-links{
  max-width:1450px;margin:auto;
  display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;
}
.social-link{
  min-width:0;color:#fff;text-decoration:none;
  display:flex;align-items:center;gap:.7rem;
  padding:.78rem .95rem;
  border:1px solid rgba(255,225,160,.45);
  border-radius:1.15rem;
  background:linear-gradient(110deg,rgba(28,23,21,.96),rgba(8,8,8,.93));
  box-shadow:inset 0 1px rgba(255,242,213,.16),0 10px 25px rgba(0,0,0,.45);
  transition:transform .25s,border-color .25s,background .25s;
}
.social-link:hover{transform:translateY(-4px);border-color:var(--gold-light);background:#21170f}
.social-icon{
  width:2.55rem;height:2.55rem;flex:0 0 auto;border-radius:.72rem;
  display:grid;place-items:center;font-weight:700;font-size:1.35rem;
  background:#111;box-shadow:0 3px 12px #0006;
}
.tiktok-icon{text-shadow:2px 1px #ff1744,-2px -1px #00e5ff}
.instagram-icon{background:linear-gradient(135deg,#6941d8,#ef3f73,#ffb13b)}
.youtube-icon{background:#ed1717;font-size:.95rem}
.facebook-icon{background:#1877f2;font:700 1.8rem Arial}
.social-link b,.social-link small{display:block}
.social-link b{font-size:.85rem}
.social-link small{font-size:.64rem;color:#ebc465;margin-top:.12rem}
.social-link i{font-style:normal;margin-left:auto;color:var(--gold);font-size:1.45rem}

.site-footer{
  position:relative;z-index:10;
  margin:1.8rem auto 1rem;
  display:flex;justify-content:center;align-items:center;gap:.7rem;
  color:var(--gold);font:600 .62rem Cinzel,serif;letter-spacing:.28em;
}
.site-footer span{width:3rem;height:1px;background:var(--gold)}
.site-footer p{margin:0}
.footer-sun{font-size:1rem}

.audio-control{position:fixed;right:1rem;bottom:1rem;z-index:30}
.audio-control button{
  width:2.7rem;height:2.7rem;border:1px solid #ffe3a66b;border-radius:50%;
  color:var(--gold-light);background:#090909d9;cursor:pointer;
  box-shadow:0 5px 20px #0008;
}

@keyframes float{50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){
  .inca-image{animation:none}.carousel-track{transition:none}.social-link{transition:none}
}

@media(max-width:900px){
  .hero{height:78vh;min-height:610px}
  .scene-panel{flex-basis:50%;background-position:center 12%}
  .inca-stage{width:min(48vw,430px);height:84%;top:1%}
  .hero-content{top:59%;width:92vw}
  .hero-logo{width:min(60vw,450px);top:125px}
  .social-links{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:640px){
  .hero{height:73vh;min-height:600px}
  .topbar{top:1rem;font-size:.54rem}
  .location{max-width:9rem;text-align:right}
  .scene-panel{flex-basis:33.333333%;background-position:center 10%}
  .inca-stage{width:82vw;height:60%;top:1%}
  .inca-glow{top:5%;width:58%}
  .hero-content{top:57%;width:94vw}
  .eyebrow{font-size:.52rem;letter-spacing:.17em}
  .eyebrow span{width:1.25rem}
  .hero-logo{width:min(64vw,350px);top:115px}
  .tagline{font-size:.88rem;margin:.05rem 0 .7rem}
  .social-section{margin:-1.2rem 0 0;padding:0 1rem}
  .social-links{grid-template-columns:1fr;gap:.65rem}
  .social-link{padding:.72rem .9rem}
  .site-footer{margin:1.7rem auto 1rem}
}
