:root{--blue:#0b6095;--deep:#063854;--cyan:#1d98cd;--orange:#ff5628;--yellow:#ffd52c;--cream:#fff6e4;--ink:#062f47}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}.noise{position:fixed;inset:0;opacity:.045;pointer-events:none;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.nav{height:88px;padding:10px 4.5vw;position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;color:white}.brand{width:114px;height:70px;overflow:hidden;border-radius:50%}.brand img{height:100%;object-fit:cover}.nav nav{display:flex;gap:32px;font-size:13px;font-weight:600}.nav nav a{position:relative}.nav nav a:after{content:'';position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--yellow);transition:.3s}.nav nav a:hover:after{width:100%}.mini-cta,.primary{display:inline-flex;align-items:center;gap:18px;padding:16px 22px;border-radius:100px;background:var(--orange);color:white;font-weight:700;font-size:14px;box-shadow:0 9px 0 rgba(120,33,10,.18);transition:.25s}.mini-cta:hover,.primary:hover{transform:translateY(-3px);box-shadow:0 12px 0 rgba(120,33,10,.14)}.mini-cta span,.primary b{font-size:20px}.menu{display:none;background:none;border:0}.hero{min-height:790px;height:100vh;max-height:920px;position:relative;background:var(--deep);color:white;overflow:hidden;clip-path:ellipse(92% 72% at 50% 28%)}.hero-photo{position:absolute;inset:0 0 0 38%;overflow:hidden}.hero-photo img{height:100%;object-fit:cover}.photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 0%,rgba(6,56,84,.7) 25%,rgba(6,56,84,.05) 70%),linear-gradient(0deg,rgba(6,56,84,.35),transparent 50%)}.hero-copy{position:absolute;z-index:2;left:7.5vw;top:50%;transform:translateY(-47%);max-width:670px}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:2.2px;font-size:11px;font-weight:700}.eyebrow span{width:36px;height:2px;background:var(--yellow)}h1,h2,h3{font-family:'Baloo 2',sans-serif;margin:0;line-height:.92}h1{font-size:clamp(64px,7vw,112px);letter-spacing:-4px}h1 em,h2 em{font-style:normal;color:var(--yellow)}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.65;max-width:530px;color:#d9e8ee;margin:24px 0 32px}.hero-actions{display:flex;align-items:center;gap:28px}.play-link{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700}.play-link span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff77;border-radius:50%;font-size:10px}.hero-stats{position:absolute;right:5vw;bottom:14%;display:flex;align-items:center;gap:12px;z-index:2;transform:rotate(-3deg);background:var(--yellow);color:var(--ink);padding:14px 22px;border-radius:60% 40% 56% 44%}.hero-stats strong{font-family:'Baloo 2';font-size:42px;line-height:1}.hero-stats span{font-size:11px;font-weight:700}.scroll{position:absolute;z-index:2;bottom:18%;left:2.7vw;writing-mode:vertical-rl;font-size:9px;text-transform:uppercase;letter-spacing:2px}.scroll i{font-size:18px;margin-top:10px}.scribble{position:absolute;z-index:2;color:var(--yellow);font-size:60px}.s1{left:3%;top:27%;transform:rotate(20deg)}.s2{right:23%;bottom:25%;font-size:76px}.intro{padding:100px 7vw 25px}.kicker,.section-head p,.party-copy>.eyebrow,.visit-copy>p,.review-score>p{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:800;color:var(--orange)}.intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:8vw;align-items:end}.intro h2,.section-head h2,.party-copy h2,.review-copy h2,.visit h2{font-size:clamp(52px,5.7vw,88px);letter-spacing:-3px}.intro h2 span{color:var(--orange);position:relative}.intro-text p{font-size:17px;line-height:1.65}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.pill-row span,.review-tags span{border:1px solid #0b609544;border-radius:100px;padding:9px 13px;font-size:11px;font-weight:700}.marquee{margin:80px -7vw 0;transform:rotate(-2deg);background:var(--yellow);padding:10px 0;overflow:hidden;white-space:nowrap;font-family:'Baloo 2';font-size:25px;font-weight:800;color:var(--blue)}.marquee div{animation:marquee 18s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.attractions{padding:120px 6vw;background:var(--blue);color:white;clip-path:polygon(0 4%,100% 0,100% 96%,0 100%)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-head>span{max-width:330px;line-height:1.6;color:#c8e5f3}.cards{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:330px 330px;gap:18px}.card{position:relative;overflow:hidden;border-radius:38% 12% 35% 8%;min-height:300px}.card.wide{grid-column:span 2}.card.tall{grid-row:span 2}.card img{height:100%;object-fit:cover;transition:.7s}.card:hover img{transform:scale(1.06)}.card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,34,51,.88),transparent 60%)}.card-copy{position:absolute;z-index:2;left:28px;bottom:24px}.card-copy b{color:var(--yellow);font-size:11px}.card-copy h3{font-size:38px;margin:5px 0}.card-copy p{font-size:12px;margin:0;color:#cee3ec}.party{padding:150px 7vw 120px;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}.party-image{position:relative}.party-image img{height:680px;object-fit:cover;border-radius:48% 10% 44% 13%;box-shadow:25px 25px 0 var(--yellow)}.burst{position:absolute;right:-30px;top:35px;width:145px;height:145px;display:grid;place-content:center;text-align:center;border-radius:50%;background:var(--orange);color:white;transform:rotate(8deg);font-family:'Baloo 2';font-size:17px;line-height:1.05}.burst b{font-size:22px}.eyebrow.dark{color:var(--orange)}.party-copy h2 em,.review-copy h2 em,.visit h2 em{color:var(--orange)}.party-copy>p:not(.eyebrow){line-height:1.7;color:#456575}.party-copy ul{list-style:none;padding:0;margin:28px 0}.party-copy li{padding:14px 0;border-bottom:1px dashed #0b609544;font-weight:600}.party-copy li b{color:var(--orange);margin-right:17px;font-size:11px}.primary.blue{background:var(--blue);box-shadow:0 9px 0 #00375222}.reviews{display:grid;grid-template-columns:.75fr 1.25fr;background:var(--yellow);position:relative;overflow:hidden}.reviews:before{content:'★';position:absolute;font-size:480px;color:#ffffff35;right:-60px;top:-160px}.review-score{padding:100px 7vw;background:var(--orange);color:white;clip-path:ellipse(90% 75% at 25% 50%)}.review-score>p{color:white}.review-score strong{font-family:'Baloo 2';font-size:130px;line-height:1}.stars{font-size:22px;color:var(--yellow);letter-spacing:6px}.review-score span{display:block;font-size:11px;margin-top:15px}.review-copy{position:relative;z-index:2;padding:100px 9vw 100px 5vw}.quote{font-family:Georgia;font-size:100px;line-height:.3;color:var(--orange)}.review-copy p{max-width:600px;line-height:1.7}.review-tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.review-copy>a{font-weight:800;font-size:13px;border-bottom:2px solid var(--orange);padding-bottom:4px}.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--deep);color:white}.visit-copy{padding:110px 7vw}.visit-copy>p{color:var(--yellow)}.details{display:grid;grid-template-columns:1fr 1fr;margin:40px 0;gap:30px}.details b{display:block;color:var(--yellow);font-size:11px;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.details span{font-size:13px;line-height:1.6;color:#d0e3eb}.visit-actions{display:flex;gap:12px}.outline{padding:16px 22px;border:1px solid #ffffff66;border-radius:100px;font-weight:700;font-size:13px}.map-wrap{position:relative;min-height:650px;overflow:hidden;clip-path:ellipse(77% 70% at 64% 50%)}.map-wrap iframe{border:0;width:100%;height:100%;filter:saturate(.8) contrast(1.1)}.map-label{position:absolute;left:50%;top:50%;display:flex;align-items:center;gap:10px;background:white;color:var(--ink);padding:8px 16px 8px 8px;border-radius:100px;box-shadow:0 12px 30px #00223855}.map-label img{width:55px;height:55px;border-radius:50%}.map-label span{font-size:11px}.map-label b{font-size:14px}footer{background:#052b40;color:white;padding:65px 7vw 30px;display:grid;grid-template-columns:150px 1fr 1fr;gap:40px;align-items:center;border-top:1px solid #ffffff22}footer img{width:110px;border-radius:50%}footer p{font-family:'Baloo 2';font-size:24px;line-height:1.2}footer>div{display:flex;justify-content:flex-end;gap:25px;font-size:12px}footer small{grid-column:1/-1;border-top:1px solid #ffffff22;padding-top:25px;color:#8facba}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:15;background:#24c86a;color:white;border-radius:100px;padding:9px 18px 9px 9px;display:flex;align-items:center;gap:9px;box-shadow:0 10px 35px #002c1b55}.whatsapp span{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:white;color:#19a957;font-size:22px}.whatsapp i{font-style:normal;font-weight:800;font-size:12px}.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;pointer-events:none;z-index:100;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot{width:7px;height:7px;background:var(--orange)}.cursor-ring{width:32px;height:32px;border:1px solid var(--orange);transition:width .2s,height .2s,background .2s}.cursor-ring.hover{width:55px;height:55px;background:#ff562820}.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav{height:75px;padding:8px 20px}.brand{width:88px;height:58px}.nav nav,.mini-cta{display:none}.menu{display:block}.menu i{display:block;width:27px;height:2px;background:white;margin:6px}.hero{min-height:720px;height:90vh;clip-path:ellipse(145% 72% at 62% 26%)}.hero-photo{inset:0}.photo-shade{background:linear-gradient(0deg,var(--deep) 0%,rgba(6,56,84,.78) 45%,rgba(6,56,84,.1) 100%)}.hero-copy{left:24px;right:24px;top:auto;bottom:110px;transform:none}.hero-copy h1{font-size:60px;letter-spacing:-3px}.hero-copy>p:not(.eyebrow){font-size:14px;margin:14px 0 22px}.hero-actions{gap:15px}.primary{padding:14px 17px}.play-link{font-size:0}.hero-stats{right:15px;bottom:20px}.scroll,.scribble{display:none}.intro{padding:80px 24px 20px}.intro-grid{grid-template-columns:1fr;gap:20px}.intro h2,.section-head h2,.party-copy h2,.review-copy h2,.visit h2{font-size:48px;letter-spacing:-2px}.marquee{margin-top:55px}.attractions{padding:100px 20px;clip-path:polygon(0 2%,100% 0,100% 98%,0 100%)}.section-head{display:block}.section-head>span{display:block;margin-top:20px}.cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.card,.card.wide,.card.tall{min-width:82vw;height:480px;scroll-snap-align:center}.party{padding:100px 24px;grid-template-columns:1fr;gap:70px}.party-image img{height:500px}.burst{right:-5px;width:115px;height:115px}.reviews{grid-template-columns:1fr}.review-score{padding:80px 24px;clip-path:ellipse(82% 73% at 35% 45%)}.review-score strong{font-size:110px}.review-copy{padding:80px 24px}.visit{grid-template-columns:1fr}.visit-copy{padding:80px 24px}.details{grid-template-columns:1fr}.map-wrap{min-height:480px;clip-path:ellipse(110% 70% at 50% 50%)}footer{grid-template-columns:1fr;padding:60px 24px 100px;text-align:center}footer img{margin:auto}footer>div{justify-content:center;flex-wrap:wrap}footer small{grid-column:auto}.cursor-dot,.cursor-ring{display:none}.whatsapp i{display:none}.whatsapp{padding:7px}}
@media(max-width:520px){.hero-copy h1{font-size:52px}.eyebrow{font-size:9px}.hero-actions .primary{font-size:12px}.hero-stats strong{font-size:34px}.intro h2,.section-head h2,.party-copy h2,.review-copy h2,.visit h2{font-size:42px}.party-image img{height:430px}.details{margin:30px 0}.visit-actions{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Refinements v2: compact rhythm, safe hero crop and infinite attractions */
.hero{min-height:660px!important;height:min(800px,100vh)!important;max-height:800px!important;clip-path:none!important;border-radius:0 0 50% 50% / 0 0 6% 6%}
.hero-copy{top:46%!important;transform:translateY(-40%)!important}.hero-copy h1{font-size:clamp(58px,6vw,94px)}
.hero-copy>p:not(.eyebrow){margin:16px 0 24px}.hero-stats{bottom:5%!important}.scroll{bottom:13%!important}
.intro{padding-top:64px!important;padding-bottom:0!important}.intro-grid{min-height:300px;align-items:center}.marquee{margin-top:45px!important}
.attractions{padding-top:95px!important;padding-bottom:105px!important}.carousel-viewport{width:calc(100% + 12vw);margin-left:-6vw;overflow:hidden;padding:10px 0}.cards{display:flex!important;width:max-content;gap:18px;animation:attractionLoop 34s linear infinite}.cards:hover{animation-play-state:paused}.card,.card.wide,.card.tall{width:380px!important;min-width:380px!important;height:500px!important;grid-column:auto!important;grid-row:auto!important;border-radius:90px 28px 90px 28px}.card:nth-child(even){height:430px!important;margin-top:35px}.card img{height:100%;object-fit:cover}@keyframes attractionLoop{to{transform:translateX(calc(-50% - 9px))}}
.journey{padding:95px 7vw 115px;background:var(--cream)}.journey-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px}.journey-title>p,.faq-heading>p{color:var(--orange);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2.5px}.journey-title h2,.faq h2{font-size:clamp(52px,5.7vw,84px);letter-spacing:-3px}.journey-title em,.faq h2 em{font-style:normal;color:var(--orange)}.journey-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journey-steps article{padding:32px;min-height:300px;background:white;border-radius:55px 18px 55px 18px;position:relative;border:1px solid #0b60951a}.journey-steps article:nth-child(2){background:var(--blue);color:white;transform:translateY(22px)}.journey-steps article:nth-child(3){background:var(--yellow)}.journey-steps span{font-size:11px;font-weight:800;color:var(--orange)}.journey-steps article>div{font-size:50px;color:var(--orange);margin:30px 0}.journey-steps h3{font-size:30px}.journey-steps p{font-size:13px;line-height:1.65;opacity:.78}
.faq{padding:100px 7vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;background:var(--cream)}.faq-list details{border-bottom:1px solid #0b609533;padding:23px 0}.faq-list summary{list-style:none;cursor:pointer;font-family:'Baloo 2';font-size:22px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--yellow);transition:.25s}.faq-list details[open] summary span{transform:rotate(45deg);background:var(--orange);color:white}.faq-list details p{max-width:650px;color:#456575;line-height:1.65;font-size:14px;margin:12px 50px 0 0}
@media(max-width:900px){.hero{height:720px!important;min-height:720px!important;border-radius:0 0 50% 50% / 0 0 3% 3%}.hero-copy{top:auto!important;bottom:95px!important;transform:none!important}.hero-copy h1{font-size:52px}.hero-actions{margin-bottom:5px}.hero-stats{bottom:14px!important}.intro{padding-top:58px!important}.intro-grid{min-height:0}.carousel-viewport{width:calc(100% + 40px);margin-left:-20px}.cards{animation-duration:26s}.card,.card.wide,.card.tall{width:78vw!important;min-width:78vw!important;height:470px!important}.card:nth-child(even){height:420px!important}.journey{padding:75px 24px 90px}.journey-title{display:block}.journey-steps{grid-template-columns:1fr}.journey-steps article:nth-child(2){transform:none}.faq{grid-template-columns:1fr;padding:75px 24px;gap:30px}}
@media(max-width:520px){.hero{height:690px!important;min-height:690px!important}.hero-copy{bottom:105px!important}.hero-copy h1{font-size:46px}.hero-copy>p:not(.eyebrow){line-height:1.45}.hero-stats{transform:scale(.86) rotate(-3deg);transform-origin:right bottom}.card,.card.wide,.card.tall{width:84vw!important;min-width:84vw!important}.journey-title h2,.faq h2{font-size:43px}}

/* Palette v3: sophisticated urban play */
:root{--blue:#087f8c;--deep:#14213d;--cyan:#22b8b5;--orange:#f2645a;--yellow:#ffc857;--cream:#fff9ef;--ink:#17233d}
.hero,.visit{background:var(--deep)}.photo-shade{background:linear-gradient(90deg,var(--deep) 0%,rgba(20,33,61,.78) 27%,rgba(20,33,61,.06) 72%),linear-gradient(0deg,rgba(20,33,61,.42),transparent 52%)}
.hero-copy>p:not(.eyebrow){color:#e5edf1}.section-head>span,.card-copy p{color:#d9f1f0}.party-copy>p:not(.eyebrow),.faq-list details p{color:#526274}
.pill-row span,.review-tags span,.party-copy li,.faq-list details{border-color:rgba(8,127,140,.25)}
footer{background:#101b33}.whatsapp{background:#20b95b;padding:8px 18px 8px 8px;box-shadow:0 12px 34px rgba(13,89,46,.34)}.whatsapp span{width:42px;height:42px;background:transparent}.whatsapp span img{width:42px;height:42px;object-fit:contain}.whatsapp:hover{background:#169c4b;transform:translateY(-3px)}
.cursor-ring.hover{background:rgba(242,100,90,.16)}

/* Seamless carousel and true custom cursor */
@media (pointer:fine){html,body,a,button,summary,.card{cursor:none!important}}
@media (pointer:coarse),(max-width:900px){html,body,a,button,summary,.card{cursor:auto!important}}
.cards{animation-duration:48s}
@media(max-width:900px){.cards{animation-duration:36s}}

/* Truly continuous text ribbon */
.marquee .marquee-track{display:flex;width:max-content;animation:marqueeRibbon 28s linear infinite;will-change:transform}
.marquee .marquee-track span{display:block;flex:none;padding-right:1.5em;white-space:nowrap}
@keyframes marqueeRibbon{to{transform:translateX(-50%)}}

/* Never show the system arrow together with the custom cursor */
@media (pointer:fine){*{cursor:none!important}}
@media (pointer:coarse),(max-width:900px){*{cursor:auto!important}}

/* Palette v4: navy, vivid blue and ice white */
:root{--blue:#1769d2;--deep:#0b1739;--cyan:#4da3ff;--orange:#1769d2;--yellow:#a9d7ff;--cream:#f7f9fd;--ink:#0b1739}
.attractions{background:linear-gradient(135deg,#1769d2 0%,#0e55b8 100%)}
.marquee{background:#a9d7ff;color:#0b3f91}
.reviews{background:#dcecff}.review-score{background:#1769d2}.stars{color:#fff}.reviews:before{color:rgba(255,255,255,.38)}
.journey-steps article:nth-child(2){background:#1769d2}.journey-steps article:nth-child(3){background:#dcecff}
.party-image img{box-shadow:25px 25px 0 #a9d7ff}.burst{background:#1769d2}
.faq-list summary span{background:#dcecff}.faq-list details[open] summary span{background:#1769d2}
.hero-stats{background:#a9d7ff}.nav nav a:after,.eyebrow span{background:#a9d7ff}
.whatsapp{background:#1769d2;box-shadow:0 12px 34px rgba(11,52,119,.32)}.whatsapp:hover{background:#0e55b8}
.cursor-dot{background:#1769d2}.cursor-ring{border-color:#1769d2}.cursor-ring.hover{background:rgba(23,105,210,.14)}
