:root{--bg:#090a10;--panel:#12151e;--text:#fff;--muted:#b2b5c0;--pink:#ff008c;--violet:#aa6aff;--line:#313644}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.45 Inter,system-ui,sans-serif}a{color:inherit}.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:9;background:#fff;color:#000;padding:8px}.header{height:80px;padding:0 max(28px,calc((100% - 1180px)/2));display:flex;align-items:center;gap:34px;position:absolute;z-index:2;width:100%}.brand{text-decoration:none;font-size:24px;font-weight:900;letter-spacing:-1px;line-height:.9;display:flex;flex-direction:column}.brand small{font-size:7px;letter-spacing:1.4px;margin-top:8px}.header nav{display:flex;gap:25px;margin:auto}.header nav a,.phone{font-size:13px;text-decoration:none}.phone{font-weight:750}.nav-toggle{display:none}.hero{height:680px;position:relative;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,#07080dd9 4%,#07080d90 46%,#07080d22),url('./assets/photos/dancefloor.jpg') center/cover}.hero-copy{position:relative;width:min(1180px,calc(100% - 56px));margin:auto;padding-top:60px}.overline{font-size:11px;letter-spacing:.15em;font-weight:800;color:#e3d1ff;margin:0 0 14px}.hero h1{font-size:clamp(48px,6vw,72px);letter-spacing:-.06em;line-height:.98;margin:0;max-width:650px}.hero-copy>p:not(.overline){color:#e7e7ed;max-width:475px;margin:23px 0}.actions,.form-actions{display:flex;gap:12px;flex-wrap:wrap}.button{border:0;border-radius:12px;min-height:48px;padding:0 21px;font-weight:800;color:#fff;text-decoration:none;cursor:pointer;font-size:14px;display:inline-grid;place-items:center}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c27dff;outline-offset:2px}.primary{background:var(--pink);box-shadow:0 0 25px #ff008c66}.secondary{background:#12131cbb;border:1px solid var(--violet)}.ghost{background:transparent;border:1px solid var(--line)}.features,.photos,.how,.booking,.status{width:min(1180px,calc(100% - 56px));margin:auto}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:42px 0}.features b{font-size:28px;color:#b38aff}.features h2{font-size:15px;margin:8px 0}.features p{font-size:13px;color:var(--muted);margin:0}.photos{display:grid;grid-template-columns:31% 69%;background:#12141d;min-height:360px}.photos>div:first-child{padding:45px 30px}.photos h2,.how h2,.booking h2,.status h2{font-size:32px;line-height:1.05;letter-spacing:-.04em;margin:0 0 15px}.photos p:not(.overline),.booking-intro>p,.status p{color:var(--muted)}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-grid img:first-child{grid-row:span 2}.how{margin-top:38px;background:#f8f8fa;color:#10121a;padding:28px 35px;border-radius:12px}.how .overline{color:#786780}.how ol{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:0;counter-reset:steps}.how li{list-style:none;font-size:14px}.how li:before{counter-increment:steps;content:counter(steps);display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#f31783;background:#ffe0ee;margin-bottom:9px;font-weight:800}.booking{display:grid;grid-template-columns:38% 62%;padding:86px 0;gap:62px}.contact-card{border-left:2px solid var(--pink);padding:12px 18px;margin-top:28px;display:grid;gap:3px;font-size:13px}.contact-card span{color:var(--muted);margin-top:8px}.contact-card a{font-weight:800}.booking-card{background:var(--panel);padding:29px;border:1px solid #252936;border-radius:18px}.progress{display:flex;gap:6px;margin-bottom:27px}.progress i{height:4px;flex:1;background:#343947;border-radius:8px}.progress i.active{background:var(--pink)}.form-step{display:none}.form-step.active{display:block}.form-step h3,.form-result h3{font-size:23px;letter-spacing:-.04em;margin:0 0 22px}label{display:block;font-size:13px;font-weight:700;margin:16px 0}label small,.hint{font-weight:400;color:var(--muted);font-size:12px}input,select,textarea{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #3b4150;background:#1b1f29;color:#fff;border-radius:10px;font:inherit;font-size:14px}textarea{min-height:83px;resize:vertical}fieldset{border:0;padding:0;margin:0}legend{font-size:13px;font-weight:700}.radio{border:1px solid #3b4150;padding:11px 13px;border-radius:10px;cursor:pointer}.radio:has(input:checked){border-color:var(--pink);background:#341126}.radio input{display:inline;width:auto;margin:0 9px 0 0;accent-color:var(--pink)}.form-actions{margin-top:26px}.form-actions .primary{margin-left:auto}.form-error{margin-top:18px;border-radius:8px;padding:10px;color:#ffd4e7;background:#48152e;font-size:13px}.form-result{text-align:center}.check{width:62px;height:62px;border-radius:50%;background:#13bf72;display:grid;place-items:center;margin:15px auto;font-size:32px}.form-result p{color:var(--muted);font-size:14px}.form-result b{display:block;margin:18px}.text-button{background:none;border:0;color:#d0b0ff;margin:18px;cursor:pointer}.form-result .button{margin:auto}.form-result[hidden],.form-step:not(.active){display:none}#summary{margin:0}#summary div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #2d3240;font-size:13px}#summary dt{color:var(--muted)}#summary dd{margin:0;text-align:right}.status{padding:55px 0 85px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.status form{max-width:440px}.status .button{margin-top:4px}.status .hint{min-height:20px}footer{border-top:1px solid #292d38;padding:30px max(28px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;color:#c7c9d1;font-size:13px}footer>a:not(.brand){font-weight:800;text-decoration:none;color:#fff}@media(max-width:720px){.header{height:68px;padding:0 18px}.header nav{display:none;position:absolute;top:63px;left:16px;right:16px;padding:15px;background:#171a24;border:1px solid #333849;border-radius:12px;flex-direction:column}.header nav.open{display:flex}.header .phone{display:none}.nav-toggle{display:block;margin-left:auto;background:none;color:#fff;border:0;font-size:22px}.hero{height:650px}.hero-copy{width:calc(100% - 36px);padding-top:105px}.hero h1{font-size:48px}.hero-bg{background-position:61% center}.features,.photos,.how,.booking,.status{width:calc(100% - 36px)}.features{grid-template-columns:1fr 1fr;gap:24px;padding:32px 0}.photos{display:block}.photos>div:first-child{padding:32px 20px}.photo-grid{height:310px}.how{padding:26px 20px}.how ol{grid-template-columns:1fr 1fr;gap:20px}.booking{display:block;padding:55px 0}.booking-intro{margin-bottom:30px}.booking-card{padding:22px 17px}.status{display:block;padding:48px 0 60px}.status form{margin-top:28px}footer{padding:28px 18px;align-items:flex-start;flex-direction:column;gap:15px}.photos h2,.how h2,.booking h2,.status h2{font-size:29px}}
