@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');

*{margin:0;padding:0;box-sizing:border-box}
:root{--neb-black:#080810;--neb-dark:#0e1015;--neb-teal:#0077b6;--neb-sky:#00b4d8;--neb-aqua:#90e0ef;--neb-white:#f0f8ff;--text-main:#ffffff;--text-fade:#8899aa}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--neb-black);color:var(--text-main);line-height:1.75}

.nebula-bg{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 30% 20%,rgba(0,119,182,0.1) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(0,180,216,0.08) 0%,transparent 50%),var(--neb-black);z-index:-1}

.topbar{position:fixed;top:0;width:100%;padding:1rem 2rem;background:rgba(8,8,16,0.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,180,216,0.1);display:flex;justify-content:space-between;align-items:center;z-index:1000}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none}
.brand svg{width:36px;height:36px}
.brand span{font-size:1.4rem;font-weight:700;background:linear-gradient(90deg,var(--neb-teal),var(--neb-aqua));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hm-btn{display:none;background:none;border:none;cursor:pointer}
.hm-btn span{display:block;width:24px;height:2px;background:var(--neb-sky);margin:5px 0}
.nav ul{display:flex;list-style:none;gap:2rem}
.nav a{color:var(--text-fade);text-decoration:none;font-weight:500;font-size:.9rem;transition:color .3s}
.nav a:hover{color:var(--neb-sky)}

main{padding-top:70px}

.main-hero{min-height:calc(100vh - 70px);display:flex;align-items:center;padding:4rem 2rem}
.hero-box{max-width:800px}
.hero-box h1{font-size:clamp(2.3rem,5vw,3.8rem);font-weight:700;margin-bottom:1.5rem;line-height:1.15}
.hero-box h1 .hl{background:linear-gradient(90deg,var(--neb-teal),var(--neb-aqua));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-box p{font-size:1.1rem;color:var(--text-fade);margin-bottom:2rem;max-width:600px}
.cta{display:inline-block;padding:1rem 2.5rem;background:linear-gradient(90deg,var(--neb-teal),var(--neb-sky));color:white;text-decoration:none;font-weight:600;border-radius:8px;transition:all .3s}
.cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,180,216,0.3)}

.notice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;padding:3rem 2rem;max-width:1200px;margin:0 auto}
.notice-card{background:var(--neb-dark);border-radius:12px;padding:2rem;border:1px solid rgba(0,180,216,0.1)}
.notice-card .ico{font-size:2rem;margin-bottom:.75rem}
.notice-card h3{font-size:1rem;color:var(--neb-aqua);margin-bottom:.5rem}
.notice-card p{font-size:.9rem;color:var(--text-fade)}

.game-zone{padding:4rem 2rem;max-width:1400px;margin:0 auto}
.zone-title{font-size:clamp(1.4rem,3vw,1.8rem);font-weight:700;margin-bottom:1.5rem;background:linear-gradient(90deg,var(--neb-teal),var(--neb-aqua));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.game-wrap{background:var(--neb-dark);border-radius:12px;padding:1rem;border:1px solid rgba(0,180,216,0.15)}
.game-wrap iframe{width:100%;height:600px;border:none;border-radius:8px}

.info-flex{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;padding:3rem 2rem;max-width:1100px;margin:0 auto}
.info-block h4{font-size:.95rem;color:var(--neb-sky);margin-bottom:.4rem}
.info-block p{font-size:.9rem;color:var(--text-fade)}

.page-wrap{max-width:850px;margin:0 auto;padding:4rem 2rem}
.page-wrap h1{font-size:clamp(1.7rem,4vw,2.3rem);font-weight:700;margin-bottom:2rem;background:linear-gradient(90deg,var(--neb-teal),var(--neb-aqua));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.page-wrap h2{font-size:1.1rem;color:var(--neb-aqua);margin:2rem 0 .75rem}
.page-wrap p{color:var(--text-fade);margin-bottom:1rem}
.page-wrap ul{color:var(--text-fade);margin-left:1.5rem;margin-bottom:1.5rem}
.page-wrap li{margin-bottom:.4rem}

.bottom{background:var(--neb-dark);border-top:1px solid rgba(0,180,216,0.1);padding:2.5rem 2rem;margin-top:4rem;text-align:center}
.bottom p{color:var(--text-fade);font-size:.9rem;margin-bottom:1.5rem}
.btm-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-bottom:1rem}
.btm-links a{color:var(--neb-sky);text-decoration:none;font-size:.85rem}
.btm-links a:hover{color:var(--neb-aqua)}
.btm-copy{font-size:.75rem;color:var(--text-fade);opacity:.6}

.age-overlay{position:fixed;inset:0;background:rgba(8,8,16,0.98);display:flex;justify-content:center;align-items:center;z-index:9999}
.age-overlay.hidden{display:none}
.age-modal{background:var(--neb-dark);border:2px solid var(--neb-teal);border-radius:16px;padding:2.5rem;max-width:420px;margin:1rem;text-align:center}
.age-modal h2{font-size:1.3rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(90deg,var(--neb-teal),var(--neb-aqua));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.age-modal p{color:var(--text-fade);font-size:.95rem;margin-bottom:1.5rem}
.age-btns{display:flex;gap:1rem;justify-content:center}
.age-btns button{font-family:'DM Sans',sans-serif;font-weight:600;padding:.75rem 1.8rem;border-radius:8px;cursor:pointer;transition:.3s}
.age-btns .yes{background:linear-gradient(90deg,var(--neb-teal),var(--neb-sky));border:none;color:white}
.age-btns .yes:hover{box-shadow:0 5px 20px rgba(0,180,216,0.4)}
.age-btns .no{background:transparent;border:2px solid var(--neb-teal);color:var(--neb-sky)}
.age-btns .no:hover{background:rgba(0,180,216,0.1)}

.mob-menu{position:fixed;top:68px;left:0;right:0;background:rgba(8,8,16,0.98);padding:1.5rem;transform:translateY(-150%);transition:transform .3s;z-index:999;border-bottom:1px solid rgba(0,180,216,0.1)}
.mob-menu.open{transform:translateY(0)}
.mob-menu ul{list-style:none;text-align:center}
.mob-menu li{margin:1rem 0}
.mob-menu a{color:var(--text-fade);text-decoration:none;font-weight:500}
.mob-menu a:hover{color:var(--neb-sky)}

@media(max-width:768px){.hm-btn{display:block}.nav{display:none}.notice-grid{grid-template-columns:1fr}.game-wrap iframe{height:420px}.topbar{padding:1rem}.brand span{font-size:1.2rem}}
