:root{--bg:#050505;--panel:#101010;--text:#fff;--muted:#c9c9c9;--line:rgba(255,255,255,.14);--red:#c1121f;--red-dark:#8f0e17}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}body{background:radial-gradient(circle at 16% 0%,#1e1e1e 0%,#050505 42%,#000 100%)}a{color:inherit}.wrap{width:min(1120px,92vw);margin:0 auto;padding:42px 0 72px}.nav{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:72px}.brand{font-size:clamp(1.4rem,3vw,2.4rem);font-weight:900;letter-spacing:-.05em;text-decoration:none}.links{display:flex;gap:18px;flex-wrap:wrap}.links a{font-weight:900;text-decoration:none;color:#fff;opacity:.78}.links a:hover{opacity:1}.hero{min-height:58vh;display:grid;align-content:center}.kicker{text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:var(--red);margin:0 0 18px}.title{font-size:clamp(4.2rem,14vw,11rem);line-height:.82;letter-spacing:-.09em;margin:0 0 28px;font-weight:900}.lede{font-size:clamp(1.35rem,3vw,2.4rem);line-height:1.08;max-width:900px;font-weight:900;margin:0;color:#fff}.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--red);border:2px solid var(--red);color:#fff;text-decoration:none;font-size:1rem;font-weight:900;letter-spacing:.02em;padding:15px 20px;border-radius:0}.btn:hover{background:var(--red-dark);border-color:var(--red-dark)}.btn.secondary{background:transparent;border-color:#fff}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px}.card{background:rgba(255,255,255,.035);border:1px solid var(--line);padding:28px;min-height:190px}.card h2{font-size:clamp(1.8rem,4vw,3.2rem);line-height:.9;margin:0 0 20px;font-weight:900;letter-spacing:-.06em}.card p,.card li{font-size:1.02rem;line-height:1.45;color:var(--muted);font-weight:700}.footer{position:fixed;left:0;right:0;bottom:10px;text-align:center;color:#fff;opacity:.32;font-weight:900;font-size:.72rem;pointer-events:none}@media(max-width:820px){.nav{align-items:flex-start;flex-direction:column;margin-bottom:42px}.links{gap:12px}.hero{min-height:52vh}.grid{grid-template-columns:1fr}.card{min-height:auto}.footer{position:static;padding:34px 0 0}}

body.welcome-page{
  min-height:100vh;
  overflow:hidden;
  background:#000;
}
.welcome-content{
  position:relative;
  z-index:2;
  display:flex;
  min-height:100vh;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:2rem;
  text-align:center;
  opacity:0;
  animation:welcome-fade-in 1.5s ease-out forwards;
}
.welcome-content h1{
  margin:0 0 1rem;
  color:#f5f5f7;
  font-size:clamp(2.6rem,9vw,11rem);
  font-weight:900;
  letter-spacing:-.035em;
  line-height:.92;
}
.welcome-tagline{
  margin:0 0 2.5rem;
  color:#fff;
  font-size:clamp(1.2rem,2.8vw,1.72rem);
  font-weight:700;
  letter-spacing:.02em;
}
.welcome-cta{
  display:inline-block;
  padding:.85rem 2.2rem;
  border:0;
  border-radius:10px;
  background:linear-gradient(120deg,#5b151e,#93222d);
  color:#fff;
  cursor:default;
  font-size:1rem;
  font-weight:700;
  letter-spacing:.01em;
  opacity:.45;
}
.welcome-footer{
  position:fixed;
  right:0;
  bottom:.6rem;
  left:0;
  z-index:4;
  color:#fff;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.02em;
  opacity:.85;
  pointer-events:none;
  text-align:center;
}
.welcome-back-link{
  position:fixed;
  bottom:2rem;
  left:1rem;
  z-index:4;
  color:#fff;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.02em;
  opacity:0;
  text-decoration:none;
  transition:opacity .2s ease;
  animation:welcome-back-link-fade-in 1.5s ease-out forwards;
}
.welcome-back-link:hover{opacity:1}
@keyframes welcome-fade-in{to{opacity:1}}
@keyframes welcome-bg-fade-in{to{opacity:1}}
@keyframes welcome-back-link-fade-in{to{opacity:.55}}
@media(max-width:768px){.welcome-content h1{font-size:clamp(2.4rem,9vw,5rem);letter-spacing:-.025em}}
@media(max-width:480px){.welcome-content h1{font-size:2.2rem;letter-spacing:-.02em}.welcome-tagline{font-size:1.15rem}.welcome-cta{padding:.7rem 1.5rem;font-size:.85rem}}

.pdf-page-bg{
  position:fixed;
  inset:-10%;
  z-index:0;
  overflow:hidden;
  opacity:0;
  animation:welcome-bg-fade-in 1s ease-out forwards;
  background:
    radial-gradient(circle at 28% 20%,rgba(255,255,255,.14),transparent 18%),
    radial-gradient(circle at 72% 72%,rgba(193,18,31,.24),transparent 24%),
    linear-gradient(180deg,#050505 0%,#000 58%,#050505 100%);
}
.pdf-page-bg::before{
  content:"";
  position:absolute;
  inset:-18% 8%;
  opacity:.44;
  background-image:
    linear-gradient(90deg,transparent 0 8%,rgba(255,255,255,.2) 8.1% 8.35%,transparent 8.6% 28%,rgba(193,18,31,.26) 28.2% 28.45%,transparent 28.7% 100%),
    repeating-linear-gradient(180deg,transparent 0 2.7rem,rgba(255,255,255,.13) 2.75rem 2.82rem,transparent 2.9rem 5.4rem);
  background-size:18rem 100%,100% 12rem;
  transform:skewX(-10deg) rotate(-6deg);
  animation:pdf-page-drift 30s linear infinite;
}
.pdf-page-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,transparent 0 38%,rgba(255,255,255,.2) 39%,rgba(193,18,31,.36) 39.4%,transparent 41%),
    linear-gradient(to top,#000 4%,transparent 58%);
  opacity:.52;
  animation:pdf-scan 7s ease-in-out infinite;
}
body.pdf-welcome .welcome-content::before{
  content:"";
  position:absolute;
  width:min(56vw,680px);
  height:min(72vh,780px);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 0 80px rgba(193,18,31,.14),inset 0 0 46px rgba(255,255,255,.04);
  transform:rotate(-4deg);
  opacity:.34;
  pointer-events:none;
}
body.pdf-welcome .welcome-content>*{position:relative;z-index:1}
@keyframes pdf-page-drift{to{background-position:18rem 0,0 12rem}}
@keyframes pdf-scan{0%,100%{transform:translateY(-28%);opacity:.2}50%{transform:translateY(28%);opacity:.58}}
