@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#183b64;--blue:#327eb8;--red:#ed5360;--yellow:#ffc943;--mint:#b8edcf;--cream:#fff8e9;--line:#d6e4db;--green:#137c55;--shadow:0 9px 0 rgba(24,59,100,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Nunito,Arial,sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:4px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{position:sticky;top:0;z-index:20;background:#fff9edf2;backdrop-filter:blur(12px);border-bottom:2px solid #e9e3d3}.nav{min-height:78px;display:flex;align-items:center;gap:27px}.logo{width:165px;height:68px;object-fit:contain;object-position:left center;display:block}.navlinks{display:flex;gap:23px;margin-left:auto;font-size:14px;font-weight:800}.navlinks a:hover{color:var(--red)}.lang{border:0;background:transparent;color:var(--ink);font-weight:900;padding:8px}.button{display:inline-flex;gap:12px;align-items:center;justify-content:center;background:var(--red);color:#fff;border:2px solid var(--ink);border-radius:12px;padding:12px 20px;font-weight:900;box-shadow:0 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--ink)}.button.blue{background:var(--blue)}.button.yellow{background:var(--yellow);color:var(--ink)}.button.outline{background:var(--cream);color:var(--ink)}.button:active{transform:translateY(2px);box-shadow:0 2px 0 var(--ink)}.hero{background:#b6ecf5;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center;padding:62px 0 55px}.eyebrow{font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:2px;color:var(--green)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(43px,5.5vw,73px);line-height:1.02;letter-spacing:-3px;margin:15px 0 20px;font-weight:1000}h1 span{color:var(--red)}h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-1.5px;margin:9px 0 18px}h3{font-size:24px;line-height:1.2;margin-bottom:8px}.hero p{font-size:18px;max-width:420px;margin-bottom:25px}.hero-art{width:100%;display:block;filter:drop-shadow(0 12px 0 #183b6412)}.actions{display:flex;gap:14px;flex-wrap:wrap}.facts{background:var(--yellow);border-block:2px solid var(--ink)}.facts .wrap{display:flex;justify-content:center;gap:90px;padding:19px 0}.fact{display:flex;align-items:center;gap:12px}.fact b{font-size:29px}.fact span{max-width:110px;font-size:13px;line-height:1.3;font-weight:800}.content-section{padding:76px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.sectionhead p{max-width:340px;margin-bottom:5px}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:23px}.card{grid-column:span 2}.card:nth-child(n+4){grid-column:span 3}.card-photo{height:205px;border:2px solid var(--ink);border-radius:15px;overflow:hidden;background:var(--mint);box-shadow:var(--shadow)}.card-photo img{width:100%;height:100%;object-fit:cover;display:block}.card small{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-top:18px;color:var(--green)}.card p{font-size:15px}.card .bottom{border-top:1px solid var(--line);padding-top:13px;margin-top:14px;display:flex;justify-content:space-between;align-items:center}.rating{color:#e84f4c;letter-spacing:2px}.text-button{border:0;background:none;color:var(--ink);font-weight:900;padding:5px;text-decoration:underline;text-underline-offset:4px}.worlds{background:#d9f2d7;border-block:2px solid var(--ink)}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.world{padding:23px;background:#fff9e9;border:2px solid var(--ink);border-radius:16px;box-shadow:var(--shadow)}.world .icon{font-size:36px}.world small{font-weight:900;color:var(--green);letter-spacing:1px}.world p{margin-bottom:0}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.visit-copy p{max-width:420px}details{border-bottom:2px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:900}details p{margin:10px 0 0;font-size:14px}.ticket-cta{background:var(--blue);color:white;border:2px solid var(--ink);border-radius:18px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 auto 65px;box-shadow:var(--shadow)}.ticket-cta p{color:#e6f7fd;margin:0}.ticket-cta .button{white-space:nowrap}.subhero{background:#b6ecf5;padding:57px 0 46px;text-align:center;border-bottom:2px solid var(--ink)}.subhero p{max-width:620px;margin:auto}.page-content{padding:55px 0 75px}.park-zones{display:grid;grid-template-columns:1fr 1fr;gap:24px}.zone{background:#fffdf5;border:2px solid var(--ink);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.zone img{width:100%;height:260px;object-fit:cover;display:block;border-bottom:2px solid var(--ink)}.zone-copy{padding:23px}.plan{margin-top:35px;border:2px solid var(--ink);border-radius:20px;background:#c5eea1;padding:30px;position:relative;overflow:hidden}.plan-art{width:100%;height:auto;display:block}.plan-pin{font-weight:900}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:22px}.info-card{background:#fffdf5;border:2px solid var(--ink);border-radius:16px;padding:23px;box-shadow:var(--shadow)}.info-card h3{margin-bottom:12px}.info-card p{margin-bottom:5px}.footer{background:#183b64;color:#fff8e9;padding:25px 0}.footer .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer small{opacity:.8}.footer .logo{width:145px;filter:brightness(0) invert(1)}
.dialog{width:min(820px,calc(100% - 24px));max-height:91dvh;padding:0;border:2px solid var(--ink);border-radius:18px;background:var(--cream);color:var(--ink);box-shadow:0 20px 90px #183b6450}.dialog::backdrop{background:#173750a8;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:2px solid var(--line)}.dialog-head h2{font-size:24px;margin:0}.dialog-body{padding:24px}.close{width:38px;height:38px;border:2px solid var(--ink);border-radius:10px;background:var(--yellow);color:var(--ink);font-size:23px}.steps{display:flex;gap:12px;margin-bottom:25px}.steps span{flex:1;padding-top:8px;border-top:4px solid var(--line);font-size:13px}.steps .active{border-color:var(--red);font-weight:900}.booking-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:23px}label{display:block;font-size:14px;font-weight:900;margin-bottom:7px}.field{margin-bottom:17px}input{width:100%;padding:11px 12px;border:2px solid #9cb5aa;border-radius:9px;background:#fff;color:var(--ink)}.counter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.counter-row small{display:block;color:#54706b}.counter{display:flex;align-items:center;gap:10px}.counter button{width:34px;height:34px;border:2px solid var(--ink);border-radius:9px;background:var(--yellow);color:var(--ink);font-weight:900;font-size:18px}.order{align-self:start;padding:19px;background:#d9f2d7;border:2px solid var(--ink);border-radius:13px}.order h3{font-size:20px}.summary-row{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin:11px 0}.summary-row span:last-child{text-align:right;overflow-wrap:anywhere}.summary-row.total{border-top:2px solid #95c49e;padding-top:13px;font-size:21px;font-weight:900}.fine{font-size:12px;color:#54706b;margin:13px 0}.dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}.payment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}.payment{padding:16px;text-align:left;background:white;border:2px solid var(--ink);border-radius:10px;color:var(--ink);font-weight:900;box-shadow:0 3px 0 #183b6433}.payment:hover{background:#fff0c4;transform:translateY(-1px)}.error{color:#b52231;font-weight:800;font-size:14px}.success{text-align:center}.success-mark{width:65px;height:65px;border:2px solid var(--ink);border-radius:50%;background:#9be274;display:grid;place-items:center;margin:0 auto 17px;font-size:34px;font-weight:900}.ticket-proof{text-align:left;max-width:470px;margin:22px auto;padding:23px;border:2px dashed var(--ink);border-top:8px solid var(--red);background:white;border-radius:12px}.ticket-proof .summary-row{overflow-wrap:anywhere}.ticket-number{padding-top:14px;border-top:1px dashed #8ea69a;letter-spacing:2px;font-weight:900}.notice{background:#fff0c4;border:2px solid #e7b632;border-radius:10px;padding:12px 14px;font-size:13px;margin-top:17px}.ride-detail img{width:100%;max-height:360px;object-fit:cover;border:2px solid var(--ink);border-radius:13px}.ride-detail .type{margin-top:15px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px}
@media(max-width:850px){.navlinks{display:none}.lang{margin-left:auto}.hero-grid{grid-template-columns:1fr 1fr;gap:14px}.facts .wrap{gap:36px}.visit-grid{gap:30px}}
@media(max-width:600px){.wrap{width:calc(100% - 30px)}.nav{min-height:68px;gap:9px}.logo{width:128px}.nav .button{font-size:12px;padding:9px 11px}.lang{padding:4px}.hero-grid{grid-template-columns:1fr;padding:44px 0 27px;text-align:center}.hero-grid .copy p{margin-inline:auto;font-size:16px}.hero-grid .actions{justify-content:center}.hero-art{max-height:350px}.facts .wrap{justify-content:space-between;gap:12px}.fact{display:block}.fact b{display:block;font-size:24px}.fact span{font-size:11px}.content-section{padding:58px 0}.sectionhead{display:block}.sectionhead p{margin-top:14px}.cards{display:block}.card{margin-bottom:32px}.card-photo{height:200px}.world-grid,.visit-grid,.park-zones,.visit-details{grid-template-columns:1fr;gap:18px}.zone img{height:220px}.ticket-cta{padding:25px;display:block}.ticket-cta .button{margin-top:20px}.footer .wrap{display:block}.footer small{display:block;margin-top:10px}.dialog-body{padding:18px}.dialog-head{padding:15px}.booking-grid{grid-template-columns:1fr}.dialog-actions{flex-wrap:wrap}.dialog-actions .button{flex:1}.steps{gap:5px}.steps span{font-size:11px}.payment{padding:14px;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}@media print{body>*{display:none!important}body>dialog[open]{display:block!important;position:static;width:100%;max-height:none;border:0;box-shadow:none}dialog::backdrop{background:#fff}.dialog-head,.steps,.dialog-actions,.success>h3,.success>p,.success-mark{display:none!important}.ticket-proof{max-width:none;break-inside:avoid}}
