/* ===== Brand tokens ===== */
:root{
  --bg:        #0b0906;
  --ink:       #f4efe5;
  --muted:     #9a9285;
  --gold:      #d9b46a;
  --gold-soft: #e8c98a;
  --radius:    999px;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--bg);
  color:var(--ink);
  overflow:hidden;
  position:relative;
  min-height:100vh;
  min-height:100dvh;
  -webkit-font-smoothing:antialiased;
}

/* ===== Background slideshow ===== */
.slideshow{
  position:fixed;
  inset:0;
  z-index:0;
}
.slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.08);
transition: all .3s ease-in-out;

}
.slide.is-active{
  opacity:1;
  transform:scale(1);
  animation:kenburns 8s ease forwards;
}
@keyframes kenburns{
  from{ transform:scale(1) translate(0,0); }
  to  { transform:scale(1.12) translate(-1.5%, -1.5%); }
}

/* ===== Overlay ===== */
.overlay{
  position:fixed;
  inset:0;
  z-index:1;
  background:
    radial-gradient(ellipse at center, rgba(11,9,6,.55) 0%, rgba(11,9,6,.82) 55%, rgba(11,9,6,.94) 100%),
    linear-gradient(180deg, rgba(11,9,6,.6) 0%, rgba(11,9,6,.4) 40%, rgba(11,9,6,.85) 100%);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}

/* Subtle grain */
.overlay::after{
  content:"";
  position:absolute;inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.6 0 0 0 0 0.55 0 0 0 0 0.45 0 0 0 0.35 0'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.5'/></svg>");
  opacity:.15;
  pointer-events:none;
  mix-blend-mode:overlay;
}

/* ===== Container ===== */
.container{
  position:relative;
  z-index:2;
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:6rem 1.5rem 7rem;
  gap:1.4rem;
  animation:rise .9s ease .1s both;
}
@keyframes rise{
  from{opacity:0;transform:translateY(18px)}
  to  {opacity:1;transform:translateY(0)}
}

/* Badge */
.badge{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.45rem 1rem;
  border:1px solid rgba(217,180,106,.55);
  color:var(--gold-soft);
  border-radius:var(--radius);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  background:rgba(217,180,106,.06);
  backdrop-filter:blur(6px);
}
.badge-dot{
  width:6px;height:6px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 10px rgba(255,255,255,.9);
  animation:pulse 1.8s ease-in-out infinite;
}
@keyframes pulse{
  0%,100%{opacity:.6;transform:scale(.9)}
  50%    {opacity:1; transform:scale(1.15)}
}

/* Wordmark */
.wordmark{
  font-weight:900;
  font-size:clamp(3.2rem, 12vw, 8rem);
  letter-spacing:-.04em;
  line-height:1;
  color:#fff;
}
.dot-gold{color:var(--gold)}
.dot-white{color:var(--muted)}

/* Tagline */
.tagline{
  font-size:clamp(1.15rem, 3.2vw, 1.9rem);
  font-weight:500;
  color:var(--ink);
  letter-spacing:-.01em;
  max-width:36ch;
}
.gold{color:var(--gold)}

.sub{
  color:var(--muted);
  font-size:clamp(.9rem, 2vw, 1.05rem);
  max-width:44ch;
  line-height:1.6;
}

/* CTA */
.cta{
  margin-top:1rem;
  display:inline-flex;align-items:center;gap:.6rem;
  padding:1rem 1.7rem;
  background:linear-gradient(180deg, var(--gold-soft), var(--gold));
  color:#1a130a;
  border-radius:var(--radius);
  text-decoration:none;
  font-weight:700;
  font-size:.98rem;
  letter-spacing:.01em;
  box-shadow:0 12px 40px -12px rgba(217,180,106,.65), inset 0 1px 0 rgba(255,255,255,.35);
  transition:transform .25s ease, box-shadow .25s ease;
}
.cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 50px -12px rgba(217,180,106,.85), inset 0 1px 0 rgba(255,255,255,.4);
}
.cta svg{transition:transform .25s ease}
.cta:hover svg{transform:translateX(3px)}

.handle{
  margin-top:.2rem;
  color:var(--muted);
  font-size:.9rem;
  letter-spacing:.05em;
}

/* Footer wordmark */
.footer{
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:3;
  padding:1.2rem 1.5rem;
  display:flex;justify-content:space-between;align-items:center;
  pointer-events:none;
}
.footer-mark{
  color:var(--muted);
  font-weight:800;
  font-size:.95rem;
  letter-spacing:-.01em;
}

/* Mobile refinements */
@media (max-width:480px){
  .container{padding:5rem 1.25rem 6rem;gap:1.1rem}
  .badge{font-size:.65rem;padding:.4rem .8rem}
  .cta{width:100%;justify-content:center;max-width:320px}
}

@media (prefers-reduced-motion:reduce){
  .slide,.slide.is-active,.container,.badge-dot{animation:none!important;transition:opacity .3s ease}
}
