/* ===========================================================
   ALIENTEK ENTERTAINMENT — BASE
   =========================================================== */

*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }

html{ scroll-behavior:smooth; }

body{
  background:var(--void);
  color:var(--fog);
  font-family:var(--font-body);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

::selection{ background:var(--mint); color:var(--void); }

a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
button{ font:inherit; }

:focus-visible{
  outline:2px solid var(--mint);
  outline-offset:3px;
  border-radius:4px;
}

.skip-link{
  position:absolute;
  top:-48px;
  left:var(--sp-3);
  background:var(--mint);
  color:var(--void);
  padding:10px 18px;
  border-radius:var(--r-sm);
  font-weight:600;
  font-size:14px;
  z-index:200;
  transition:top .2s ease;
}
.skip-link:focus{ top:var(--sp-3); }

.wrap{
  max-width:var(--container);
  margin:0 auto;
  padding:0 var(--sp-4);
}

h1,h2,h3,h4{
  font-family:var(--font-display);
  font-weight:600;
  letter-spacing:-0.01em;
  color:var(--fog);
}

p{ color:var(--fog-dim); }

.eyebrow{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--mint);
  display:flex;
  align-items:center;
  gap:var(--sp-2);
  margin-bottom:var(--sp-3);
}
.eyebrow::before{
  content:'';
  width:6px; height:6px;
  border-radius:50%;
  background:var(--gradient-signal);
  box-shadow:0 0 8px var(--mint);
  flex-shrink:0;
}

.section-title{ font-size:clamp(28px,3.2vw,40px); margin-bottom:var(--sp-2); }
.section-desc{ color:var(--fog-dim); max-width:560px; font-size:15px; }

.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:var(--sp-4);
  margin-bottom:var(--sp-6);
  flex-wrap:wrap;
}

[data-reveal]{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .6s ease, transform .6s ease;
}
[data-reveal].is-visible{ opacity:1; transform:translateY(0); }

@media (prefers-reduced-motion: reduce){
  [data-reveal]{ opacity:1; transform:none; }
  html{ scroll-behavior:auto; }
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; }
}
