@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;900&family=Raleway:ital,wght@0,300;0,400;0,500;0,600;1,300&display=swap');

:root {
  --bg:#06070e;--bg2:#0b0d1a;--surface:#0f1120;--surface2:#141729;
  --border:rgba(100,120,255,0.13);--accent:#6c7fff;--accent2:#a78bfa;
  --gold:#c9993a;--gold2:#e8be6a;--text:#e2e4f0;--muted:#6b6f8a;
  --glow:rgba(108,127,255,0.2);--red:#ff4d6d;--green:#4ade80;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:'Raleway',sans-serif;font-weight:400;line-height:1.7;overflow-x:hidden;}
::-webkit-scrollbar{width:6px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px;}
body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.5;}

/* STARFIELD */
#starfield{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.star{position:absolute;border-radius:50%;background:#fff;animation:twinkle var(--d) ease-in-out infinite;opacity:0;}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.7);}50%{opacity:var(--o);transform:scale(1);}}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:1rem 4rem;background:rgba(6,7,14,.8);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);}
.nav-logo{font-family:'Cinzel',serif;font-weight:700;font-size:1.2rem;letter-spacing:.12em;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none;}
.nav-logo span{-webkit-text-fill-color:var(--accent);}
.nav-links{display:flex;gap:1.75rem;list-style:none;align-items:center;}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;transition:color .3s;}
.nav-links a:hover,.nav-links a.active{color:var(--text);}
.nav-links a.active{color:var(--accent);}
.nav-cta{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff !important;padding:.45rem 1.3rem;border-radius:6px;font-size:.82rem;font-weight:600 !important;letter-spacing:.05em;transition:opacity .3s,box-shadow .3s !important;}
.nav-cta:hover{opacity:.85 !important;box-shadow:0 0 20px var(--glow);}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.25rem;}
.nav-hamburger span{width:22px;height:2px;background:var(--text);border-radius:2px;transition:all .3s;}
.nav-mobile{display:none;position:fixed;top:60px;left:0;right:0;background:rgba(6,7,14,.97);border-bottom:1px solid var(--border);padding:1.5rem 2rem;flex-direction:column;gap:1rem;z-index:499;}
.nav-mobile a{color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:.5rem 0;border-bottom:1px solid var(--border);}
.nav-mobile a:last-child{border:none;}
.nav-mobile.open{display:flex;}

/* FOOTER */
footer{background:var(--surface);border-top:1px solid var(--border);padding:4rem 4rem 2rem;position:relative;z-index:1;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto 3rem;}
.footer-brand p{font-size:.875rem;color:var(--muted);line-height:1.7;max-width:260px;margin-top:.75rem;}
.footer-socials{display:flex;gap:.75rem;margin-top:1.25rem;}
.social-btn{width:36px;height:36px;border-radius:8px;background:var(--surface2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);text-decoration:none;font-size:.9rem;transition:all .3s;}
.social-btn:hover{border-color:var(--accent);color:var(--accent);}
.footer-col h4{font-family:'Cinzel',serif;font-size:.82rem;font-weight:700;letter-spacing:.1em;margin-bottom:1rem;text-transform:uppercase;color:var(--text);}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:.6rem;}
.footer-col ul a{font-size:.85rem;color:var(--muted);text-decoration:none;transition:color .3s;}
.footer-col ul a:hover{color:var(--accent);}
.footer-bottom{max-width:1200px;margin:0 auto;padding-top:2rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.footer-bottom p{font-size:.8rem;color:var(--muted);}
.footer-bottom-links{display:flex;gap:1.5rem;}
.footer-bottom-links a{font-size:.8rem;color:var(--muted);text-decoration:none;transition:color .3s;}
.footer-bottom-links a:hover{color:var(--text);}

/* COMMON */
section{position:relative;z-index:1;}
.page-hero{padding:9rem 4rem 4rem;max-width:1200px;margin:0 auto;}
.page-hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(108,127,255,.1);border:1px solid rgba(108,127,255,.25);border-radius:999px;padding:.3rem .9rem;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;}
.page-hero h1{font-family:'Cinzel',serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:900;line-height:1.15;margin-bottom:1rem;}
.page-hero p{color:var(--muted);font-size:1rem;max-width:560px;}
.section-label{font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem;display:block;}
.section-title{font-family:'Cinzel',serif;font-size:clamp(1.5rem,3.5vw,2.3rem);font-weight:700;margin-bottom:.75rem;line-height:1.2;}
.section-sub{color:var(--muted);font-size:.95rem;margin-bottom:2.5rem;}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;padding:.75rem 2rem;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;letter-spacing:.04em;transition:all .3s;box-shadow:0 4px 24px rgba(108,127,255,.3);display:inline-block;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(108,127,255,.45);}
.btn-secondary{background:transparent;color:var(--text);padding:.75rem 2rem;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;letter-spacing:.04em;border:1px solid var(--border);transition:all .3s;display:inline-block;}
.btn-secondary:hover{border-color:var(--accent);color:var(--accent);}
.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:all .3s;}
.card:hover{border-color:rgba(108,127,255,.3);transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,.4);}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease;}
.reveal.visible{opacity:1;transform:none;}
.center{text-align:center;}
.gradient-text{background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.accent-text{background:linear-gradient(135deg,#fff 30%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}

@media(max-width:900px){
  nav{padding:1rem 1.5rem;}
  .nav-links{display:none;}
  .nav-hamburger{display:flex;}
  .page-hero{padding:7rem 1.5rem 3rem;}
  footer{padding:3rem 1.5rem 1.5rem;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr;}
}
