  :root{
    --dirt-deep: #000000;
    --cream:     #ffffff;
    --cream-dim: #cdb98c;
    --slate:     #8b93a0;
    --nav-h:     40px;
    --max-w:     1000px;
  }
/* Reset box-sizing so padding/borders don't break widths */
*, *::before, *::after {
  box-sizing: border-box;
}

  body{
    margin:0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
    background:black;
    color:var(--cream);
    font-family:'Special Elite', monospace;
  }

  a{ color:inherit; }

  /* ---------- NAV ---------- */
  .nav{
    position:fixed;
    top:0; left:0; right:0;
    height:var(--nav-h);
    z-index:100;
    background:rgba(25,25,25,0.55);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    border-bottom:1px solid rgba(255,255,255,0.15);
  }
  .nav-inner{
    max-width: 1000px;
	height: 100%;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px; /* breathing room on smaller screens before hitting 1000px */
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .nav-logo img{
    height:22px;
    width:auto;
    display:block;
  }
  .nav-links{
    display:flex;
    gap:28px;
    list-style:none;
    margin:0; padding:0;
  }
  .nav-links a{
    text-decoration:none;
    font-size:0.75rem;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:white;
    border-bottom:1px solid transparent;
  }
  .nav-links a:hover{
    color:var(--cream);
    border-color:var(--slate);
  }

  /* ---------- HERO ---------- */
  .hero{
    min-height:100vh;
    background-size:cover;
    background-position:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .hero-inner{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px; /* breathing room on smaller screens before hitting 1000px */
    display:flex;
    flex-direction:column;
    align-items:center;
  }

  .hero-inner img{
    max-width: 100%;
    height: auto;
    display: block;
  }
  .hero-inner p {
    font-size: clamp(0.95rem, 2.5vw, 1.15rem);
    line-height: 1.6;
  }

  .tagline{
    margin:16px 0 0;
    font-size:0.9rem;
    letter-spacing:0.16em;
    text-transform:uppercase;
    text-shadow:0 2px 6px rgba(0,0,0,0.5);
  }

  .body-copy{
    max-width:560px;
    margin:40px 0 0;
    font-size:1.05rem;
    line-height:1.7;
    text-shadow:0 2px 8px rgba(0,0,0,0.55);
  }

  .coming-soon{
    margin:56px 0 0;
    font-family:'IM Fell English SC', serif;
    font-size: clamp(1.1rem, 4vw, 1.6rem);
    letter-spacing:0.05em;
    text-shadow:0 3px 10px rgba(0,0,0,0.55);
  }
.door{
	width:30%;
}

/* Tighten padding further on very small screens */
@media (max-width: 480px) {
  .nav-inner,
  .hero-inner {
    padding: 0 12px;
  }
}

