@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Mono:wght@400;500&family=Outfit:wght@400;500;600;700&display=swap');

:root { --ink:#060711; --violet:#a563ff; --cyan:#56f3f1; --pink:#f15ab7; --red:#ff4b5f; --text:#f5f4ff; --muted:#aaa8c7; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; }
body { background:var(--ink); color:var(--text); font-family:Outfit,Arial,sans-serif; margin:0; overflow-x:hidden; }
.universe { background:radial-gradient(circle at 10% 20%,rgba(102,37,175,.3),transparent 25%),radial-gradient(circle at 90% 78%,rgba(7,120,171,.24),transparent 26%),linear-gradient(160deg,#060711,#11102c 52%,#071620); inset:0; overflow:hidden; pointer-events:none; position:fixed; z-index:-2; }
.star { background:#fff; border-radius:50%; box-shadow:0 0 12px 3px #b1f7ff; height:3px; opacity:.8; position:absolute; width:3px; animation:twinkle 2.6s ease-in-out infinite alternate; }.s1{left:8%;top:16%}.s2{left:73%;top:9%;animation-delay:.8s}.s3{left:91%;top:43%;animation-delay:1.4s}.s4{left:32%;top:68%;animation-delay:.4s}.s5{left:61%;top:87%;animation-delay:1.8s}.comet{background:linear-gradient(90deg,transparent,#fff); height:2px; position:absolute; right:13%; top:28%; transform:rotate(-30deg); width:130px; animation:comet 8s linear infinite; }.comet:after{background:#fff; border-radius:50%; box-shadow:0 0 15px 5px var(--cyan); content:''; height:6px; position:absolute; right:0; top:-2px; width:6px;}@keyframes twinkle{to{opacity:.2;transform:scale(.5)}}@keyframes comet{0%,82%{opacity:0;transform:translate(-120px,80px) rotate(-30deg)}85%{opacity:1}100%{opacity:0;transform:translate(300px,-190px) rotate(-30deg)}}
.shell { margin:auto; max-width:1140px; width:min(100% - 40px,1140px); }.header { background:rgba(6,7,17,.72); border-bottom:1px solid rgba(255,255,255,.12); backdrop-filter:blur(18px); position:sticky; top:0; z-index:5; }.nav { align-items:center; display:flex; height:76px; justify-content:space-between; }.logo { color:#fff; font:400 29px/.72 'Bebas Neue'; letter-spacing:.035em; text-decoration:none; text-shadow:0 0 18px rgba(241,90,183,.45); }.logo span { color:var(--cyan); display:block; font:500 9px 'DM Mono'; letter-spacing:.26em; margin-left:2px; margin-top:10px; }.links { display:flex; gap:27px; }.links a { color:#d6d4ec; font-size:12px; font-weight:700; text-decoration:none; }.links a:hover { color:var(--cyan); }.language { background:transparent; border:1px solid var(--cyan); border-radius:999px; color:#fff; cursor:pointer; font:500 10px 'DM Mono'; padding:9px 11px; }
.hero { min-height:670px; overflow:hidden; padding:105px 0 85px; position:relative; }.hero-grid { align-items:center; display:grid; grid-template-columns:1fr .8fr; gap:35px; }.coming { background:rgba(241,90,183,.14); border:1px solid rgba(241,90,183,.7); border-radius:999px; color:#ffd6f0; display:inline-block; font:500 10px 'DM Mono'; letter-spacing:.1em; margin:0 0 44px; padding:9px 12px; }.eyebrow { color:var(--cyan); font:500 10px 'DM Mono'; letter-spacing:.15em; text-transform:uppercase; }.hero h1,h2 { font-family:'Bebas Neue',sans-serif; font-weight:400; letter-spacing:.01em; line-height:.86; }.hero h1 { font-size:clamp(66px,9.7vw,132px); margin:18px 0 27px; max-width:740px; text-shadow:0 0 30px rgba(165,99,255,.28); }.hero h1 em { color:var(--pink); font-style:normal; text-shadow:0 0 22px rgba(241,90,183,.7); }.lead { color:#d2d0e6; font-size:18px; line-height:1.6; max-width:490px; }.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:29px; }.button { border-radius:5px; display:inline-flex; font-size:13px; font-weight:700; justify-content:center; padding:14px 21px; text-decoration:none; transition:.2s; }.button:hover { transform:translateY(-3px); }.neon { background:var(--cyan); box-shadow:0 0 23px rgba(86,243,241,.44); color:#071420; }.outline { border:1px solid rgba(255,255,255,.45); color:#fff; }.hero-visual { height:470px; position:relative; }.portal { animation:turn 16s linear infinite; background:repeating-radial-gradient(ellipse at center,transparent 0 21px,rgba(86,243,241,.8) 23px 25px,transparent 28px 46px),radial-gradient(circle,rgba(229,69,194,.8),rgba(101,36,201,.34) 40%,transparent 70%); border-radius:50%; box-shadow:0 0 30px 10px rgba(165,99,255,.48),inset 0 0 35px rgba(86,243,241,.65); height:390px; position:absolute; right:0; top:20px; width:390px; }.portal-core { align-items:center; background:#0b1026; border:2px solid var(--pink); border-radius:50%; box-shadow:0 0 33px var(--pink); color:#fff; display:flex; font:400 130px/1 'Bebas Neue'; height:39%; justify-content:center; left:30%; position:absolute; top:30%; width:39%; }.course-line { border:7px solid #55b66c; border-radius:50%; box-shadow:0 0 0 2px #d6ff8e,0 0 24px rgba(93,255,125,.6); position:absolute; z-index:2; }.line-one { height:170px; right:-22px; top:250px; transform:rotate(-24deg); width:350px; }.line-two { border-color:#f46bbf; height:90px; right:130px; top:145px; transform:rotate(30deg); width:210px; }.hole { background:#d8ff9d; border:7px solid #35a95d; border-radius:50%; bottom:38px; box-shadow:0 0 0 2px #fff,0 0 26px rgba(82,235,143,.7); height:84px; position:absolute; right:68px; width:84px; z-index:3; }.hole span { background:#101226; border-radius:50%; height:22px; left:24px; position:absolute; top:24px; width:22px; }.ball { background:radial-gradient(circle at 31% 28%,#fff 0 8%,#ddd 9% 11%,#fff 13%); border-radius:50%; box-shadow:0 10px 13px rgba(0,0,0,.5); height:38px; position:absolute; right:165px; top:285px; width:38px; z-index:3; animation:bob 2.6s ease-in-out infinite alternate; }.flag { bottom:114px; color:#ff679d; font-size:40px; position:absolute; right:82px; z-index:4; }@keyframes turn{to{transform:rotate(360deg)}}@keyframes bob{to{transform:translateY(-15px)}}
.course-section { background:linear-gradient(180deg,rgba(7,9,27,.25),rgba(28,9,47,.66)); border-top:1px solid rgba(255,255,255,.09); border-bottom:1px solid rgba(255,255,255,.09); padding:100px 0; }.course-section h2,.play-card h2,.park-copy h2,.signup-box h2 { font-size:clamp(48px,6vw,82px); margin:16px 0 39px; }.hole-grid { display:grid; gap:16px; grid-template-columns:repeat(3,1fr); }.hole-card { border:1px solid rgba(255,255,255,.2); border-radius:13px; min-height:300px; overflow:hidden; padding:23px; position:relative; transition:.25s; }.hole-card:hover { border-color:var(--cyan); box-shadow:0 16px 36px rgba(0,0,0,.36),0 0 24px rgba(86,243,241,.16); transform:translateY(-8px); }.hole-card>span { color:#fff; font:500 11px 'DM Mono'; }.card-orbit { font-size:100px; line-height:1; opacity:.9; position:absolute; right:16px; top:46px; }.hole-card h3 { font:400 34px 'Bebas Neue'; letter-spacing:.02em; margin:130px 0 9px; position:relative; }.hole-card p { color:#e5e4f0; font-size:13px; line-height:1.5; margin:0; position:relative; }.red{background:linear-gradient(145deg,#44203e,#1a0b2b)}.red .card-orbit{color:var(--red)}.purple{background:linear-gradient(145deg,#322061,#12162f)}.purple .card-orbit{color:var(--pink)}.blue{background:linear-gradient(145deg,#093852,#101c38)}.blue .card-orbit{color:var(--cyan)}
.play-section { padding:100px 0; }.play-card { align-items:center; background:rgba(11,13,34,.76); border:1px solid rgba(86,243,241,.4); border-radius:16px; display:grid; gap:55px; grid-template-columns:.75fr 1fr; overflow:hidden; padding:52px; position:relative; }.play-card:before { background:radial-gradient(circle,rgba(241,90,183,.25),transparent 67%); content:''; height:500px; left:-190px; position:absolute; top:-160px; width:500px; }.play-card>div { position:relative; }.play-card p,.park-copy>p:not(.eyebrow),.signup-box>p:not(.eyebrow) { color:#c8c5df; font-size:17px; line-height:1.65; max-width:550px; }.mini-course { background:linear-gradient(135deg,#56a965,#1f603b); border:5px solid #b8fb72; border-radius:47% 53% 37% 63%; height:270px; transform:rotate(-8deg); }.ramp { border:20px solid #f36bb9; border-bottom:0; border-radius:80px 80px 0 0; height:95px; left:28%; position:absolute; top:32%; width:142px; }.tiny-ball { background:#fff; border-radius:50%; bottom:25%; box-shadow:0 4px 0 #b9b9c6; height:27px; left:22%; position:absolute; width:27px; }.tiny-hole { background:#101126; border:4px solid #80df7a; border-radius:50%; bottom:17%; height:45px; position:absolute; right:15%; width:45px; }.park-section { background:linear-gradient(120deg,#171138,#071f31); padding:100px 0; text-align:center; }.park-copy { max-width:730px; }.park-copy h2 { margin-bottom:16px; }.park-copy p { margin-left:auto; margin-right:auto; }.text-link { color:var(--cyan); display:inline-block; font-size:13px; font-weight:700; margin-top:13px; text-decoration:none; }.text-link:after { content:' →'; }.signup { padding:100px 0; }.signup-box { background:linear-gradient(135deg,#57236b,#16286b); border:1px solid rgba(255,255,255,.25); padding:clamp(35px,7vw,75px); text-align:center; }.signup-box p { margin-left:auto; margin-right:auto; }.signup-box .button { margin-top:12px; }.footer { color:#8e8ba8; display:flex; font:500 10px 'DM Mono'; justify-content:space-between; padding:30px 0; }
@media(max-width:720px){.shell{width:min(100% - 28px,1140px)}.links{display:none}.hero{padding:75px 0 58px}.hero-grid,.play-card,.hole-grid{grid-template-columns:1fr}.hero h1{font-size:72px}.hero-visual{height:350px;margin-top:10px}.portal{height:315px;width:315px}.portal-core{font-size:100px}.line-one{height:132px;width:270px}.line-two{right:90px;top:120px}.hole{bottom:10px;right:25px}.flag{bottom:84px;right:40px}.ball{right:120px;top:230px}.course-section,.play-section,.park-section,.signup{padding:75px 0}.hole-card{min-height:225px}.hole-card h3{margin-top:70px}.play-card{padding:28px}.footer{flex-direction:column;gap:10px}}
