:root{
  --purple:#7c3aed;
  --pink:#ec4899;
  --blue:#2563eb;
  --green:#22c55e;
  --yellow:#facc15;
  --dark:#121026;
  --soft:#f8f7ff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;color:#1f2937;background:#fff;overflow-x:hidden}
.glass-nav{background:rgba(18,16,38,.78);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}
.logo{font-weight:900;letter-spacing:.3px;font-size:1.45rem;display:flex;align-items:center;gap:.55rem}
.logo span{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7);color:#fff;box-shadow:0 12px 28px rgba(124,58,237,.35)}
.hero-section{position:relative;min-height:100vh;background:radial-gradient(circle at top left,rgba(236,72,153,.75),transparent 31%),radial-gradient(circle at 80% 20%,rgba(37,99,235,.7),transparent 30%),linear-gradient(135deg,#121026 0%,#35185f 48%,#0f172a 100%);overflow:hidden}
.hero-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}
.pride-badge{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);font-size:.95rem;padding:.75rem 1rem}
.btn-rainbow{border:0;color:#fff;font-weight:800;background:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7);box-shadow:0 14px 30px rgba(168,85,247,.35);transition:.25s}
.btn-rainbow:hover{transform:translateY(-2px);filter:saturate(1.2);color:#fff}
.hero-stats{display:flex;gap:1rem;flex-wrap:wrap}
.hero-stats div{min-width:130px;padding:1rem;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);border-radius:22px;backdrop-filter:blur(10px)}
.hero-stats strong{display:block;font-size:1.35rem}.hero-stats span{font-size:.9rem;color:rgba(255,255,255,.72)}
.join-card{background:#fff;border-radius:30px;padding:2rem;border:1px solid rgba(255,255,255,.35);position:relative;z-index:2}
.join-card:before{content:"";position:absolute;inset:-3px;border-radius:32px;background:linear-gradient(135deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7);z-index:-1;opacity:.65;filter:blur(9px)}
.form-control,.form-select{border-radius:16px;border:1px solid #e5e7eb}.form-control:focus,.form-select:focus{border-color:var(--purple);box-shadow:0 0 0 .25rem rgba(124,58,237,.16)}
.wave{position:absolute;bottom:-1px;left:0;width:100%;height:140px;fill:#f8f7ff}.rainbow-orb{position:absolute;border-radius:999px;filter:blur(20px);opacity:.45}.orb-one{width:240px;height:240px;background:#ec4899;right:8%;top:19%}.orb-two{width:180px;height:180px;background:#22c55e;left:7%;bottom:17%}
.section-padding{padding:92px 0}.bg-light{background:var(--soft)!important}.section-mini{display:inline-block;font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;background:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.8rem}.section-mini.light{color:#fff;background:none;letter-spacing:.12em}
.room-card{height:100%;padding:2rem;border-radius:28px;background:#fff;box-shadow:0 18px 45px rgba(17,24,39,.08);border:1px solid #ede9fe;transition:.25s}.room-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(124,58,237,.16)}.room-card span{font-size:2.1rem}.room-card h3{font-weight:900;margin:1rem 0 .75rem}.room-card p{color:#6b7280;margin:0}
.rainbow-panel{padding:2.3rem;border-radius:32px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#a855f7) border-box;border:4px solid transparent;box-shadow:0 24px 60px rgba(17,24,39,.08)}
.feature-list{display:grid;gap:1rem}.feature-list div{background:#fff;border:1px solid #ede9fe;border-radius:24px;padding:1.4rem;box-shadow:0 15px 35px rgba(17,24,39,.06)}.feature-list b{display:block;font-size:1.1rem;margin-bottom:.4rem}.feature-list p{margin:0;color:#6b7280}.bg-dark{background:#121026!important}.rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.rules-grid div{padding:1.2rem;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.privacy-section{background:linear-gradient(180deg,#fff,#f8f7ff)}.footer{background:linear-gradient(135deg,#121026,#241044);padding:58px 0 28px}.footer a{display:block;color:rgba(255,255,255,.66);text-decoration:none;margin:.38rem 0}.footer a:hover{color:#fff}.footer-logo{font-size:1.6rem}
@media(max-width:991px){.navbar-collapse{padding:1rem 0}.display-4{font-size:2.45rem}.hero-section .min-vh-100{padding-top:120px!important;padding-bottom:120px}.rules-grid{grid-template-columns:1fr}.section-padding{padding:70px 0}}
@media(max-width:576px){.join-card{padding:1.4rem;border-radius:24px}.hero-stats{display:grid;grid-template-columns:1fr;width:100%}.display-4{font-size:2rem}.lead{font-size:1rem}}
