@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@600;700&display=swap";:root{--navy:#061a2c;--navy2:#0b2941;--cyan:#00d4ff;--paper:#f3f6f8;--ink:#10263a;--muted:#607181;--line:#d9e2e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3{font-family:Space Grotesk,sans-serif}h1,h2,h3,p{margin-top:0}.demo-bar{background:var(--cyan);height:32px;color:var(--navy);letter-spacing:.04em;justify-content:center;align-items:center;gap:14px;font-size:12px;display:flex}.demo-bar strong,.eyebrow{letter-spacing:.14em}.nav{background:var(--navy);z-index:5;justify-content:space-between;align-items:center;height:76px;padding:0 max(5vw,24px);display:flex;position:relative}.brand{color:#fff;background:0 0;border:0;align-items:center;gap:7px;font-family:Space Grotesk;font-size:20px;display:flex}.brand span{background:var(--cyan);width:32px;height:32px;color:var(--navy);place-items:center;font-size:22px;display:grid;transform:skew(-8deg)}.brand b{color:var(--cyan)}.nav-actions{gap:10px;display:flex}.primary,.ghost{border:0;border-radius:7px;padding:13px 20px;font-weight:700}.primary{background:var(--cyan);color:var(--navy);box-shadow:0 8px 24px #00d4ff20}.primary:hover{filter:brightness(.94);transform:translateY(-1px)}.primary:disabled{opacity:.45;cursor:not-allowed}.small{padding:10px 16px}.ghost{color:inherit;background:0 0;border:1px solid #a8b6c2}.nav .ghost{color:#fff;border-color:#fff5}.hero{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;min-height:470px;padding:75px max(7vw,30px);display:flex;overflow:hidden}.hero-copy{max-width:690px}.eyebrow{color:#168fa9;margin:0 0 12px;font-size:12px;font-weight:700}.hero .eyebrow,.detail-hero .eyebrow{color:var(--cyan)}h1{letter-spacing:-.05em;margin-bottom:24px;font-size:clamp(48px,7vw,86px);line-height:.96}h1 em{color:var(--cyan);font-style:normal}.hero-copy>p:last-child{color:#afbfcb;max-width:610px;font-size:18px;line-height:1.6}.hero-art{place-items:center;width:320px;height:300px;display:grid;transform:rotate(7deg)}.ticket-shape{background:var(--cyan);width:260px;height:150px;color:var(--navy);border-radius:12px;flex-direction:column;justify-content:space-between;padding:24px;display:flex;box-shadow:25px 25px #fff1}.ticket-shape span,.ticket-shape small{letter-spacing:.16em;font-size:11px}.ticket-shape b{font:700 48px Space Grotesk}.search-panel{z-index:3;background:#fff;border-radius:10px;grid-template-columns:2fr 1fr auto;align-items:end;gap:12px;width:min(1120px,90%);margin:-35px auto 70px;padding:18px;display:grid;position:relative;box-shadow:0 18px 60px #0718271c}.search-panel label,.modal label{color:#506579;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.search-panel input,.search-panel select,.modal input,.modal select,.modal textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;outline:none;padding:12px}.events{width:min(1180px,90%);margin:auto;padding-bottom:90px}.section-head{justify-content:space-between;align-items:end;margin-bottom:26px;display:flex}.section-head h2,.organizer h2{margin:0;font-size:36px}.link,.text-link{color:#087e98;background:0 0;border:0;font-weight:700}.event-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.event-card{cursor:pointer;background:#fff;border-radius:9px;transition:all .2s;overflow:hidden;box-shadow:0 8px 28px #10263a10}.event-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px #10263a1c}.event-visual{background:linear-gradient(135deg,var(--navy2),#0d3856);justify-content:center;align-items:center;height:170px;display:flex;position:relative;overflow:hidden}.event-visual:after{content:"";border:28px solid var(--accent);opacity:.18;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-90px;right:-45px}.event-visual>span{color:var(--accent);font-size:70px}.event-visual small{background:var(--accent);color:var(--navy);padding:5px 8px;font-weight:700;position:absolute;top:16px;left:16px}.event-body{padding:20px}.event-body .date{color:#0b8aa5;letter-spacing:.1em;margin-bottom:8px;font-size:12px;font-weight:700}.event-body h3{margin-bottom:7px;font-size:21px}.event-body>p{color:var(--muted)}.card-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:18px;padding-top:15px;display:flex}.card-foot button{color:#087e98;background:0 0;border:0;font-weight:700}.empty{text-align:center;background:#fff;padding:60px}.organizer{color:#fff;background:#0b2941;justify-content:space-between;align-items:center;padding:58px max(8vw,30px);display:flex}.organizer>div{max-width:680px}.organizer p:not(.eyebrow){color:#b6c5d0}footer{color:#97a9b8;background:#04131f;grid-template-columns:1fr 1fr;align-items:center;gap:22px;padding:48px max(7vw,30px);display:grid}.footer-brand{background:0 0;border:0}footer div:nth-of-type(2){justify-content:flex-end;gap:18px;display:flex}footer button{color:#c2ced7;background:0 0;border:0}footer small{border-top:1px solid #ffffff18;grid-column:1/-1;padding-top:20px}.detail-overlay{z-index:30;background:#06121ed9;padding:20px;position:fixed;inset:0;overflow:auto}.detail-shell{background:var(--paper);border-radius:12px;width:min(1240px,100%);min-height:100%;margin:auto;position:relative;overflow:hidden}.close{width:38px;height:38px;color:var(--navy);z-index:4;background:#fff;border:0;border-radius:50%;font-size:27px;position:absolute;top:16px;right:18px;box-shadow:0 4px 16px #0002}.detail-hero{background:linear-gradient(120deg,var(--navy),#0b334f);color:#fff;border-bottom:5px solid var(--accent);align-items:center;gap:28px;padding:42px 72px;display:flex}.detail-symbol{border:2px solid var(--accent);width:115px;height:115px;color:var(--accent);border-radius:50%;place-items:center;font-size:56px;display:grid}.detail-hero h2{margin:0 0 6px;font-size:42px}.rating{color:#ffd166}.rating span{color:#aebdca;margin-left:5px;font-size:14px}.detail-content{grid-template-columns:minmax(0,1fr) 370px;gap:28px;padding:34px;display:grid}.booking-title{justify-content:space-between;align-items:center;display:flex}.booking-title h3{font-size:28px}.availability{color:#16874b;font-size:13px;font-weight:700}.weekdays,.calendar{grid-template-columns:repeat(7,1fr);display:grid}.weekdays b{color:#6c7d8b;text-align:center;padding:10px;font-size:11px}.calendar{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.calendar>button,.calendar>span{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;background:#fff;min-height:76px;padding:9px}.calendar>button:disabled{color:#aab5be;cursor:default}.calendar .active-day{color:var(--ink);cursor:pointer;background:#eefbfe}.calendar .selected-day{background:var(--cyan);color:var(--navy)}.calendar small{color:#0c829b;margin-top:8px;font-size:9px;display:block}.muted-day{color:#bdc7ce;background:#f7f8f9!important}.time-picker{margin:28px 0}.time-picker>div{gap:10px;display:flex}.time-picker button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;flex:1;padding:13px}.time-picker button.selected{background:#eafbfe;border:2px solid #00aeca}.time-picker small{color:#66808d;margin-top:4px;display:block}.event-info,.reviews{background:#fff;border-radius:9px;margin-top:20px;padding:25px}.event-info>p{color:#526978;line-height:1.7}.info-grid{grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;display:grid}.info-grid div{background:#f4f7f9;flex-direction:column;padding:13px;display:flex}.info-grid span{color:#687c8b;font-size:13px}.reviews blockquote{border-left:3px solid var(--cyan);background:#f7f9fa;margin:12px 0;padding:16px}.reviews blockquote span{color:#ffb703;margin-left:10px}.reviews blockquote p{color:#536878;margin:8px 0 0}.review-form textarea{border:1px solid var(--line);border-radius:6px;width:100%;min-height:85px;margin:8px 0;padding:12px}.checkout-card{background:#fff;border-radius:9px;align-self:start;padding:25px;position:sticky;top:20px;box-shadow:0 10px 34px #07182715}.ticket-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 0;display:flex}.ticket-row>div:first-child{flex-direction:column;gap:3px;display:flex}.ticket-row small{color:#71818e}.ticket-row strong{color:#087e98;margin-top:3px}.counter{align-items:center;gap:11px;display:flex}.counter button{background:#fff;border:1px solid #a9bbc6;border-radius:50%;width:30px;height:30px;font-size:18px}.summary{justify-content:space-between;padding:22px 0;display:flex}.summary b{font-size:24px}.wide{width:100%}.safe-note,.fine{color:#6d7f8d;text-align:center;margin:12px 0 0;font-size:12px;line-height:1.5}.modal-backdrop{z-index:50;background:#06121ed9;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.modal{background:#fff;border-radius:12px;width:min(520px,100%);padding:34px;position:relative;box-shadow:0 30px 90px #0004}.modal h2{font-size:30px}.modal>label{margin:13px 0}.form-modal{width:min(700px,100%)}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.form-grid .full{grid-column:1/-1}.form-grid textarea{min-height:90px}.ticket-modal{text-align:center}.ticket-modal img{width:210px;margin:20px auto 10px;display:block}.ticket-modal code{font-weight:700;display:block}.success{color:#16874b;letter-spacing:.12em;font-size:12px;font-weight:700}.ticket-total{margin:15px 0;font-size:18px;font-weight:700}.info-modal p,.info-modal li{color:#536878;line-height:1.6}.fake-dashboard{background:#f3f7f9;grid-template-columns:auto 1fr;gap:8px 12px;margin:20px 0;padding:18px;display:grid}.fake-dashboard b{color:#0584a0;font-size:22px}@media (width<=900px){.hero-art{display:none}.event-grid{grid-template-columns:repeat(2,1fr)}.detail-content{grid-template-columns:1fr}.checkout-card{position:static}.detail-hero{padding:35px}.organizer{flex-direction:column;align-items:flex-start;gap:25px}}@media (width<=620px){.demo-bar span,.nav .ghost{display:none}.nav{padding:0 16px}.hero{min-height:400px;padding:50px 22px}.hero h1{font-size:47px}.search-panel{grid-template-columns:1fr;margin-bottom:50px}.event-grid{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start;gap:12px}.detail-overlay{padding:0}.detail-shell{border-radius:0}.detail-hero{padding:58px 22px 28px}.detail-symbol{display:none}.detail-content{padding:18px}.detail-hero h2{font-size:30px}.booking-title{flex-direction:column;align-items:flex-start}.calendar>button,.calendar>span{min-height:58px;padding:5px;font-size:12px}.calendar small{display:none}.time-picker>div{flex-direction:column}.info-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}footer{grid-template-columns:1fr}footer div:nth-of-type(2){flex-wrap:wrap;justify-content:flex-start}footer small{grid-column:auto}.modal{padding:28px 22px}}
