:root{--ivory:#fff;--cream:#fbf8f2;--sand:#f3ece0;--gold:#c9a24b;--gold-2:#d4b16a;--gold-soft:#c9a24b29;--gold-deep:#8a6a24;--ink:#1f2433;--ink-2:#4a5165;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Manrope", system-ui, sans-serif;--script:"Great Vibes", cursive;--fun:"Fredoka", "Manrope", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}img{max-width:100%;height:auto;display:block}input,textarea,button{font-family:var(--sans)}::selection{background:var(--gold-soft)}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes scrollBounce{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}@keyframes heroZoom{0%{transform:scale(1.09)}to{transform:scale(1)}}.skip-link{z-index:100;background:var(--gold);color:#fff;border-radius:0 0 12px 12px;padding:12px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s;position:absolute;top:0;left:50%;transform:translate(-50%,-120%)}.skip-link:focus{transform:translate(-50%)}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}.reveal{opacity:0;transition:opacity .85s cubic-bezier(.16,.8,.3,1),transform .85s cubic-bezier(.16,.8,.3,1);transition-delay:calc(var(--i,0) * 70ms);will-change:opacity, transform;transform:translateY(26px)scale(.985)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.brand-mark,.hero__scroll-cue,.hero__bg{animation:none!important}html{scroll-behavior:auto}}.btn{cursor:pointer;border-radius:999px;font-weight:600;text-decoration:none;transition:transform .15s;display:inline-block}.btn--gold{background:var(--gold);color:#fff;border:none;box-shadow:0 14px 36px -12px #c9a24bb3}.btn--gold:hover{transform:translateY(-2px)}.btn--ghost{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border:1px solid #ffffff8c}.ribbon{background:linear-gradient(100deg, var(--gold-2), var(--gold));color:#fff;font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;clip-path:polygon(11px 0,100% 0,calc(100% - 11px) 100%,0 100%);padding:9px 24px;font-size:12px;font-weight:600;display:inline-block;box-shadow:0 8px 20px -8px #c9a24bb3}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--gold-soft);background:#ffffffd1;justify-content:space-between;align-items:center;padding:14px clamp(18px,5vw,64px);display:flex;position:sticky;top:0}.nav__brand{color:var(--ink);align-items:center;text-decoration:none;display:flex}.brand{align-items:center;gap:11px;display:inline-flex}.brand-mark{color:var(--gold);animation:5s ease-in-out infinite floaty;display:inline-flex}.brand-text{align-items:baseline;gap:8px;line-height:1;display:inline-flex}.brand-name{font-family:var(--sans);letter-spacing:.36em;color:var(--ink);font-size:16px;font-weight:600}.brand-x{font-family:var(--sans);color:var(--gold-deep);font-size:12px;transform:translateY(-1px)}.brand-liljoy{font-family:var(--fun);letter-spacing:.02em;color:var(--gold);font-size:19px;font-weight:600}.nav__links{align-items:center;gap:30px;display:flex}.navlink{color:var(--ink-2);font-size:14px;text-decoration:none;transition:color .2s}.navlink:hover{color:var(--gold)}.btn-nav{background:var(--gold);color:#fff;border-radius:999px;padding:11px 22px;font-size:14px;font-weight:600;text-decoration:none;box-shadow:0 8px 22px -8px #c9a24b99}@media (width<=720px){.nav__links .navlink{display:none}}.hero{text-align:center;justify-content:center;align-items:center;min-height:92vh;padding:90px clamp(20px,6vw,40px) 80px;display:flex;position:relative;overflow:hidden}.hero__bg{object-fit:cover;object-position:center 35%;z-index:0;width:100%;height:100%;animation:1.9s cubic-bezier(.16,.8,.3,1) both heroZoom;position:absolute;inset:0}.hero__overlay{z-index:1;background:linear-gradient(#12141c78 0%,#12141c4d 38%,#12141c8c 100%);position:absolute;inset:0}.hero__inner{z-index:2;color:#fff;max-width:860px;position:relative}.hero h1{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 18px;font-size:clamp(38px,6.4vw,72px);font-weight:600;line-height:1.04}.hero__script{font-family:var(--script);color:var(--gold-2);margin:0 0 34px;font-size:clamp(26px,4.6vw,42px);line-height:1.1}.hero__lead{font-family:var(--sans);color:#ffffffe6;max-width:620px;margin:0 auto 34px;font-size:clamp(15px,1.9vw,18px);line-height:1.65}.hero__cta{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.hero__cta .btn{padding:17px 34px;font-size:16px}.hero__cta .btn--gold{box-shadow:0 14px 36px -10px #c9a24bb3}.hero__cta .btn--ghost{font-weight:500}.hero__scroll{z-index:2;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.hero__loc{color:#fff9;letter-spacing:.3em;text-transform:uppercase;margin:0;font-size:11px}.hero__scroll-cue{color:#fffc;letter-spacing:.28em;text-transform:uppercase;flex-direction:column;align-items:center;gap:5px;font-size:10px;text-decoration:none;animation:2.4s ease-in-out infinite scrollBounce;display:flex}.hero__scroll-cue:hover{color:#fff}.section{padding:clamp(64px,9vw,120px) clamp(20px,5vw,80px)}.section--cream{background:var(--cream)}.section--sand{background:var(--sand)}.head{text-align:center;max-width:680px;margin:0 auto 56px}.head .ribbon-wrap{justify-content:center;margin-bottom:20px;display:flex}.head h2{font-family:var(--serif);margin:0 0 16px;font-size:clamp(30px,4.6vw,48px);font-weight:600;line-height:1.1}.head p{color:var(--ink-2);margin:0;font-size:16px;line-height:1.7}.worlds{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:1080px;margin:0 auto;display:grid}.world{border-radius:20px;align-items:flex-end;min-height:420px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 50px -28px #1f243380}.world img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.world__grad{background:linear-gradient(#12141c00 35%,#12141cd1 100%);position:absolute;inset:0}.world__body{color:#fff;padding:34px;position:relative}.world__script{font-family:var(--script);color:var(--gold-2);font-size:30px;line-height:1}.world__body h3{font-family:var(--serif);margin:6px 0 8px;font-size:27px;font-weight:600}.world__body p{color:#ffffffd9;margin:0;font-size:14.5px;line-height:1.6}.offer-grid{grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:26px;max-width:1160px;margin:0 auto;display:grid}.service{background:var(--ivory);border:1px solid var(--gold-soft);border-radius:18px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 20px 44px -30px #1f243380}.service__media{height:228px;position:relative;overflow:hidden}.service__media img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.service:hover .service__media img{transform:scale(1.05)}.badge{background:var(--gold);color:#fff;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600;position:absolute;top:14px;left:14px}.service__body{flex-direction:column;gap:9px;padding:22px 22px 26px;display:flex}.service__body h3{font-family:var(--serif);margin:0;font-size:23px;font-weight:600}.service__body p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.6}.why{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center;gap:clamp(36px,5vw,70px);max-width:1100px;margin:0 auto;display:grid}.why__text .ribbon-wrap{margin-bottom:20px}.why__text h2{font-family:var(--serif);margin:0 0 18px;font-size:clamp(30px,4.6vw,46px);font-weight:600;line-height:1.08}.why__lead{color:var(--ink-2);margin:0 0 28px;font-size:16px;line-height:1.7}.perks{grid-template-columns:1fr 1fr;gap:18px 26px;display:grid}.perk{align-items:flex-start;gap:12px;display:flex}.perk__icon{color:var(--gold);flex-shrink:0;margin-top:2px}.perk__title{margin-bottom:3px;font-size:15px;font-weight:600}.perk__text{color:var(--ink-2);font-size:13.5px;line-height:1.55}.why__media{min-height:360px;position:relative}.why__media .photo-a{border:8px solid #fff;border-radius:16px;width:78%;transform:rotate(-3deg);box-shadow:0 26px 50px -24px #1f243380}.why__media .photo-b{border:8px solid #fff;border-radius:14px;width:54%;position:absolute;bottom:-26px;right:0;transform:rotate(4deg);box-shadow:0 26px 50px -24px #1f24338c}@media (width<=520px){.perks{grid-template-columns:1fr}}.gallery{column-width:260px;column-gap:18px;max-width:1180px;margin:0 auto}.gallery__item{cursor:zoom-in;break-inside:avoid;background:0 0;border:0;border-radius:14px;width:100%;margin:0 0 18px;padding:0;display:block}.gallery img{border-radius:14px;width:100%;box-shadow:0 16px 36px -26px #1f243399}.packages{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;max-width:980px;margin:0 auto 44px;display:grid}.pkg{background:var(--ivory);border:1px solid var(--gold-soft);text-align:center;border-radius:18px;padding:38px 28px;box-shadow:0 20px 44px -32px #1f243380}.pkg__mark{font-family:var(--serif);color:var(--gold);margin-bottom:14px;font-size:46px;font-weight:700;line-height:1}.pkg h3{font-family:var(--serif);margin:0 0 8px;font-size:23px;font-weight:600}.pkg p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.6}.packages-cta{text-align:center;margin-top:30px}.packages-cta .btn{padding:17px 38px;font-size:16px}.booking{background:linear-gradient(180deg, var(--ivory), var(--cream));padding:clamp(64px,9vw,120px) clamp(18px,5vw,80px)}.booking .head{margin-bottom:44px}.booking__card{background:var(--ivory);border:1px solid var(--gold-soft);border-radius:24px;max-width:760px;margin:0 auto;overflow:hidden;box-shadow:0 40px 80px -50px #1f243399}.form{flex-direction:column;gap:26px;padding:clamp(26px,4.5vw,48px);display:flex}.label{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:9px;font-size:12px;font-weight:600;display:block}.label--chips{margin-bottom:14px}.label .opt{color:var(--ink-2);text-transform:none;letter-spacing:0;font-weight:400}.chips{flex-wrap:wrap;gap:10px;display:flex}.chip{font-family:var(--sans);cursor:pointer;color:var(--ink);background:#fff;border:1px solid #1f243329;border-radius:999px;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.chip:hover{border-color:var(--gold)}.chip.is-active{border-color:var(--gold);background:var(--gold);color:#fff;box-shadow:0 8px 20px -10px #c9a24bb3}.field-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;display:grid}.input,.textarea{border:1px solid var(--sand);width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:14px 16px;font-size:15px}.textarea{resize:vertical}.input:focus,.textarea:focus{border-color:var(--gold);outline:none}.hint{color:var(--ink-2);align-items:center;gap:6px;margin:8px 2px 0;font-size:12.5px;display:flex}.hint span{color:var(--gold);flex-shrink:0}.submit{background:var(--gold);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;border-radius:14px;width:100%;padding:18px;font-size:17px;font-weight:600;transition:transform .15s;box-shadow:0 16px 40px -14px #c9a24bb3}.submit:hover{transform:translateY(-2px)}.submit:active{transform:translateY(0)}.submit:disabled{opacity:.65;cursor:progress;transform:none}.form-error{color:#b3261e;text-align:center;margin:-8px 0 0;font-size:14px}.form-error a{color:#b3261e;font-weight:600}.hp-field{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.thanks{text-align:center;padding:clamp(40px,7vw,72px) clamp(24px,5vw,56px)}.thanks__icon{color:var(--gold);justify-content:center;margin-bottom:20px;display:flex}.thanks h3{font-family:var(--serif);margin:0 0 12px;font-size:30px;font-weight:600}.thanks p{color:var(--ink-2);margin:0 0 8px;font-size:16px;line-height:1.7}.thanks__script{font-family:var(--script);color:var(--gold);margin:18px 0 0;font-size:30px}.footer{background:var(--ink);color:#fff;padding:clamp(60px,8vw,96px) clamp(20px,5vw,80px) 64px}.footer__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:48px;max-width:1080px;margin:0 auto;display:grid}.footer__brand .brand-row{align-items:center;margin-bottom:18px;display:flex}.footer__brand .brand-name{color:#f7f4ee}.footer__brand .brand-mark,.footer__brand .brand-liljoy{color:var(--gold-2)}.footer__brand p{color:#ffffff9e;max-width:300px;margin:0;font-size:14.5px;line-height:1.7}.footer__heading{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);margin:0 0 18px;font-size:12px;font-weight:600}.footer__links{flex-direction:column;gap:13px;font-size:15px;display:flex}.footer__links a{color:#fff;align-items:center;gap:10px;text-decoration:none;display:flex}.footer__links a span,.footer__links a:hover{color:var(--gold-2)}.footer__close{text-align:center;border-top:1px solid #ffffff1f;max-width:1080px;margin:56px auto 0;padding-top:40px}.footer__close-script{font-family:var(--script);color:var(--gold-2);margin:0 0 10px;font-size:clamp(34px,5vw,52px);line-height:1}.footer__copy{color:#ffffff73;letter-spacing:.04em;margin:14px 0 0;font-size:12.5px}.footer__credit{color:#ffffff73;letter-spacing:.04em;margin:8px 0 0;font-size:12.5px}.footer__credit a{color:#ffffffb8;border-bottom:1px solid #d4b16a73;text-decoration:none;transition:color .2s}.footer__credit a:hover{color:var(--gold-2)}.offer-grid,.packages,.perks{padding:0;list-style:none}.offer-grid,.packages{margin-top:0;margin-bottom:0}.chips-field{border:0;min-width:0;margin:0;padding:0}.chips-field .label--chips{padding:0}.select-wrap{position:relative}.select{appearance:none;cursor:pointer;padding-right:42px}.select-wrap:after{content:"";border-right:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);pointer-events:none;width:9px;height:9px;position:absolute;top:50%;right:18px;transform:translateY(-65%)rotate(45deg)}.service,.pkg,.world{transition:transform .3s cubic-bezier(.16,.8,.3,1),box-shadow .3s}.service:hover,.pkg:hover{transform:translateY(-6px);box-shadow:0 30px 60px -34px #1f243399}.world:hover{transform:translateY(-5px);box-shadow:0 34px 64px -30px #1f243399}.gallery img{transition:transform .4s,box-shadow .4s}.gallery__item:hover img{transform:scale(1.015);box-shadow:0 22px 44px -22px #1f2433b3}@media (prefers-reduced-motion:reduce){.service,.pkg,.world,.gallery img,.service__media img{transition:none}.service:hover,.pkg:hover,.world:hover,.gallery__item:hover img{transform:none}.lightbox{animation:none}}@keyframes lbFade{0%{opacity:0}to{opacity:1}}.lightbox{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:zoom-out;background:#12141ced;justify-content:center;align-items:center;padding:clamp(16px,4vw,56px);animation:.22s lbFade;display:flex;position:fixed;inset:0}.lightbox__img{cursor:default;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 30px 90px -20px #000000b3}.lightbox__close,.lightbox__nav{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #ffffff40;border-radius:999px;justify-content:center;align-items:center;transition:background .2s;display:flex;position:absolute}.lightbox__close:hover,.lightbox__nav:hover{background:#ffffff38}.lightbox__close{width:46px;height:46px;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px)}.lightbox__nav{width:48px;height:48px;top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:clamp(10px,2vw,24px)}.lightbox__nav--next{right:clamp(10px,2vw,24px)}.lightbox__caption{text-align:center;color:#ffffffb3;letter-spacing:.04em;pointer-events:none;margin:0;padding:0 70px;font-size:13px;position:absolute;bottom:clamp(14px,3vw,26px);left:0;right:0}@media (width<=600px){.lightbox__nav{width:40px;height:40px}.lightbox__caption{padding:0 16px;bottom:6px}}
