/* The Next Round — shared styles for the Privacy Policy and Terms of Use pages
   (same dusk sky, nav, age gate, and footer as products.html) */
:root{
  --navy:      #0B1A33;
  --navy-deep: #060F22;
  --cream:     #F3E3BC;
  --cream-dim: #D8C89E;
  --gold:      #F3B611;
  --amber:     #F27F06;
  --orange:    #F14D16;
  --coral:     #F13326;
  --magenta:   #E80C4B;
  --cyan:      #12B4E6;
  --blue:      #0F5FC0;

  --sky-top: #2A1B57;
  --sky-mid: #C2124E;
  --sky-low: #F1601C;
  --sun-y: 58vh;
  --sun-size: 230px;
  --sun-core: #FFB080;
  --sun-edge: #F14D16;
  --sun-glow: rgba(232,12,75,.4);
  --star-op: .35;
}

*{ margin:0; padding:0; box-sizing:border-box; }
picture{ display:contents; }
html{ scroll-behavior:smooth; overflow-x:clip; overscroll-behavior:none; scroll-padding-top:5.5rem; }
body{
  background: var(--navy-deep);
  color: var(--cream);
  font-family:'Jost', sans-serif; font-weight:300; line-height:1.7;
  -webkit-font-smoothing:antialiased; overflow-x:clip; overscroll-behavior:none;
  min-height:100vh; display:flex; flex-direction:column;
}
::selection{ background: var(--magenta); color:#fff; }
a{ color:inherit; }
a:focus-visible, button:focus-visible{ outline:2px solid var(--cyan); outline-offset:3px; border-radius:2px; }

/* sky */
#sky{
  position:fixed; inset:0; z-index:-3;
  background: linear-gradient(180deg, var(--sky-top) 0%, var(--sky-mid) 55%, var(--sky-low) 100%);
}
#stars{
  position:fixed; inset:0; z-index:-2; pointer-events:none; opacity:var(--star-op);
  background-image:
    radial-gradient(1.5px 1.5px at 12% 18%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(1px 1px at 28% 8%,  rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1.5px 1.5px at 44% 22%, rgba(243,227,188,.8), transparent 60%),
    radial-gradient(1px 1px at 61% 12%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(2px 2px at 74% 26%, rgba(255,255,255,.85), transparent 60%),
    radial-gradient(1px 1px at 86% 9%,  rgba(243,227,188,.7), transparent 60%);
}
#sun{
  position:fixed; left:50%; top:var(--sun-y); z-index:-1;
  width:var(--sun-size); height:var(--sun-size);
  transform:translateX(-50%); border-radius:50%;
  background: radial-gradient(circle at 50% 38%, var(--sun-core), var(--sun-edge) 72%);
  box-shadow: 0 0 80px 28px var(--sun-glow), 0 0 220px 90px var(--sun-glow);
  pointer-events:none;
}

.label{ font-weight:500; font-size:.72rem; letter-spacing:.42em; text-transform:uppercase; color:var(--gold); }

/* nav */
nav{
  position:fixed; top:0; left:0; right:0; z-index:50;
  display:flex; align-items:center; justify-content:space-between;
  padding:1.1rem clamp(1.25rem,5vw,3.5rem);
  background:linear-gradient(180deg, rgba(6,15,34,.82), rgba(6,15,34,0));
}
.nav-brand{
  display:inline-flex; align-items:center; width:clamp(9.5rem,16vw,13rem);
  max-width:45vw; line-height:0; text-decoration:none;
  filter:drop-shadow(0 5px 16px rgba(6,15,34,.9));
}
.nav-brand img{ display:block; width:100%; height:auto; }
.nav-links{ display:flex; gap:clamp(1rem,3vw,2.5rem); align-items:center; }
.nav-links a{
  text-decoration:none; font-size:.72rem; font-weight:500;
  letter-spacing:.3em; text-transform:uppercase; color:#fff;
  text-shadow:0 1px 6px rgba(6,15,34,.9); transition:color .25s ease;
}
.nav-links a:hover{ color:var(--gold); }
.nav-toggle{ display:none; width:44px; height:44px; padding:10px; background:none; border:none; cursor:pointer; z-index:60; }
.nav-toggle span{
  display:block; width:100%; height:2px; margin:4px 0; border-radius:2px;
  background:#fff; box-shadow:0 1px 4px rgba(6,15,34,.9);
  transition:transform .3s ease, opacity .2s ease;
}
.nav-toggle.open span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.nav-toggle.open span:nth-child(2){ opacity:0; }
.nav-toggle.open span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }
@media (max-width:560px){
  .nav-toggle{ display:block; }
  .nav-links{
    position:absolute; top:100%; right:clamp(1.25rem,5vw,3.5rem);
    flex-direction:column; align-items:flex-end; gap:1.4rem;
    padding:1.4rem 1.6rem; border-radius:8px;
    background:rgba(6,15,34,.96); border:1px solid rgba(243,227,188,.2);
    box-shadow:0 14px 40px rgba(3,8,24,.6);
    opacity:0; transform:translateY(-8px); pointer-events:none;
    transition:opacity .25s ease, transform .25s ease;
  }
  .nav-links.open{ opacity:1; transform:none; pointer-events:auto; }
  .nav-links a{ font-size:.8rem; }
}

/* panel + buttons */
.panel{
  border:1px solid rgba(243,227,188,.18); border-radius:8px;
  background:rgba(6,15,34,.62);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.btn{
  font-weight:500; font-size:.75rem; letter-spacing:.32em; text-indent:.32em;
  text-transform:uppercase; padding:1rem 2.2rem; text-decoration:none;
  border-radius:2px; display:inline-block; border:none; cursor:pointer;
  font-family:'Jost',sans-serif;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, color .25s ease;
}
.btn-sunset{
  color:#fff;
  background:linear-gradient(90deg, var(--magenta), var(--orange) 70%, var(--amber));
  box-shadow:0 6px 28px rgba(232,12,75,.4);
}
.btn-sunset:hover{ transform:translateY(-2px); box-shadow:0 10px 36px rgba(241,77,22,.5); }
.btn-ghost{ color:#fff; border:1px solid rgba(255,255,255,.55); background:rgba(6,15,34,.25); text-shadow:0 1px 6px rgba(6,15,34,.8); }
.btn-ghost:hover{ border-color:var(--gold); color:var(--gold); }

/* legal article */
main{ flex:1; padding:7.5rem clamp(1rem,6vw,4rem) 4rem; }
.legal{ max-width:800px; margin:0 auto; padding:clamp(1.6rem,5vw,3.2rem); }
.legal h1{
  font-family:'Cinzel', serif; font-weight:600;
  font-size:clamp(1.5rem,4.5vw,2.3rem); letter-spacing:.14em;
  margin-top:.9rem; color:#fff; text-shadow:0 2px 14px rgba(6,15,34,.6);
}
.legal .updated{ margin-top:.5rem; font-size:.78rem; letter-spacing:.08em; color:var(--cream-dim); }
.legal h2{
  font-family:'Cinzel', serif; font-weight:600; font-size:.98rem; letter-spacing:.12em;
  color:#fff; margin:2.2rem 0 .6rem;
}
.legal p{ margin:.7rem 0; font-size:.96rem; }
.legal .intro{ color:var(--cream-dim); margin-top:1.4rem; }
.legal ul{ padding-left:1.3rem; margin:.6rem 0; }
.legal li{ margin:.4rem 0; font-size:.96rem; }
.legal li strong{ font-weight:500; color:#fff; }
.legal a{ color:var(--gold); text-decoration:none; transition:color .2s ease; }
.legal a:hover{ color:#fff; }

/* footer */
footer{ text-align:center; padding:2rem 1.5rem 2.4rem; background:linear-gradient(180deg, transparent, rgba(3,8,24,.85)); }
.foot-links{ display:flex; gap:1.1rem 2.8rem; justify-content:center; flex-wrap:wrap; text-align:center; }
.foot-links a{ display:inline-flex; flex-direction:column; align-items:center; gap:.15rem; text-decoration:none; line-height:1.35; max-width:100%; }
.fl-name{ font-size:.82rem; font-weight:600; letter-spacing:.08em; color:#fff; text-shadow:0 2px 10px rgba(3,8,24,.95); transition:color .2s ease; }
.fl-mail{ font-size:.8rem; font-weight:400; color:var(--gold); word-break:break-word; text-shadow:0 2px 10px rgba(3,8,24,.95); transition:color .2s ease; }
.foot-links a:hover .fl-name{ color:var(--gold); }
.foot-links a:hover .fl-mail{ color:#fff; }
.foot-est{ margin-top:1rem; font-size:.7rem; font-weight:500; letter-spacing:.4em; text-indent:.4em; text-transform:uppercase; color:#fff; text-shadow:0 2px 10px rgba(3,8,24,.95); }
.foot-legal{ margin-top:.9rem; display:flex; gap:.6rem 1.4rem; justify-content:center; flex-wrap:wrap; font-size:.72rem; font-weight:500; letter-spacing:.18em; text-transform:uppercase; }
.foot-legal a{ color:#fff; text-decoration:none; transition:color .2s ease; text-shadow:0 2px 10px rgba(3,8,24,.95); }
.foot-legal a:hover{ color:var(--gold); }
.foot-resp{ margin-top:.8rem; font-size:.74rem; color:var(--cream-dim); letter-spacing:.05em; text-shadow:0 2px 10px rgba(3,8,24,.95); }

/* age gate */
#agegate{
  position:fixed; inset:0; z-index:500;
  display:flex; align-items:center; justify-content:center; padding:1.2rem;
  background:rgba(4,9,24,.9);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
}
#agegate.hidden{ display:none; }
.age-panel{ width:min(460px,100%); text-align:center; padding:clamp(2rem,5vw,2.8rem); }
.age-panel img{ width:min(280px, 70%); height:auto; margin:0 auto 1.4rem; display:block; }
.age-panel h2{ font-family:'Cinzel',serif; font-weight:600; font-size:1.35rem; letter-spacing:.14em; color:#fff; margin-bottom:.7rem; }
.age-panel p{ font-size:.9rem; color:var(--cream-dim); margin-bottom:1.6rem; }
.age-actions{ display:flex; gap:.9rem; justify-content:center; flex-wrap:wrap; }
.age-fine{ margin-top:1.3rem; font-size:.68rem; color:var(--cream-dim); }
