:root{--ink:#050607;--ink-soft:#0e1113;--ink-line:#ffffff14;--gold:#cda056;--gold-bright:#e4bc71;--gold-deep:#9c6c21;--gold-gradient:linear-gradient(135deg, var(--gold-deep), var(--gold-bright));--text:#f2eee6;--text-muted:#a9a49b;--error:#e0705a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{background:var(--ink);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}img,svg{display:block}button{font-family:inherit}::selection{background:var(--gold);color:var(--ink)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.offline-banner{z-index:2000;background:var(--ink);color:var(--text);letter-spacing:.04em;justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:12px;display:flex;position:fixed;top:0;left:0;right:0}.offline-dot{background:var(--gold);border-radius:50%;width:8px;height:8px}.hero{background:var(--ink);flex-direction:column;align-items:center;padding:0 0 28px;display:flex}.hero-frame{width:100%;max-width:560px;position:relative}.hero-frame img{width:100%;height:auto;display:block}.hero-frame:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#05060759 55%,#050607bf 100%);height:44px;position:absolute;bottom:0;left:0;right:0}.hero-cue{color:var(--gold);cursor:pointer;background:0 0;border:none;margin-top:0;font-size:20px;animation:3s ease-in-out infinite cue-breathe}.partner-block{flex-direction:column;align-items:center;gap:14px;margin:26px 0 28px;display:flex}.partner-block-label{letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:10px}.partner-block-logo{opacity:.9;width:auto;height:64px}.identity{background:var(--ink-soft);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:44px 20px;display:flex}.identity-tagline{max-width:420px;color:var(--text-muted);margin:0;font-size:14px;font-weight:300}.identity-socials{align-items:center;gap:18px;display:flex}.identity-social{color:var(--gold);justify-content:center;align-items:center;transition:color .3s;display:inline-flex}.identity-social:hover{color:var(--gold-bright)}.section{background:var(--ink);padding:60px 0}.section--sand{background:var(--ink-soft)}.section--limestone{background:var(--ink)}.footer{background:var(--ink);padding:56px 0}.footer .container{flex-direction:column;align-items:center;gap:20px;display:flex}.footer-logo{image-rendering:auto;width:90px;height:auto}.footer-tagline{text-align:center;color:#f2eee6eb;max-width:420px;margin:0;font-size:14px;font-weight:300}.footer-socials{align-items:center;gap:20px;display:flex}.footer-social{color:var(--text);justify-content:center;align-items:center;transition:color .3s;display:inline-flex}.footer-social:hover{color:var(--gold-bright)}.footer-domain{color:var(--gold);letter-spacing:.04em;font-size:14px;text-decoration:none}.footer-domain:hover{text-underline-offset:4px;text-decoration:underline}.footer-copy{color:#f2eee6b3;margin:0;font-size:12px}.section--tight-bottom{padding-bottom:12px}.container{max-width:560px;margin-inline:auto;padding-inline:20px}.label{text-align:center;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;font-size:10px}.section-title{text-align:center;color:var(--text);margin:0 0 36px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(28px,5vw,40px);font-weight:400;line-height:1.15}.quiet{color:var(--text-muted);font-size:13px}.discount-banner{background:var(--ink-soft);text-align:center;border:1px solid #cda05666;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;margin:0 0 22px;padding:13px 18px;display:flex}.discount-banner-percent{color:var(--gold);white-space:nowrap;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-weight:600;line-height:1}.discount-banner-label{color:var(--text);font-size:12px}.svc-resort-picker{flex-direction:column;gap:10px;margin-bottom:56px;display:flex}.resort-swap{grid-template-areas:"stack";display:grid}.resort-options,.resort-selected{opacity:0;pointer-events:none;flex-direction:column;grid-area:stack;gap:10px;min-width:0;transition:opacity .3s;display:flex}.resort-options--visible,.resort-selected--visible{opacity:1;pointer-events:auto}.resort-selected{justify-content:center}.selected-resort-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.selected-resort-partner{letter-spacing:.26em;text-transform:uppercase;color:var(--text-muted);margin:0 0 24px;font-size:11px}.selected-resort-logo{opacity:1;width:auto;height:130px;margin-bottom:24px}.selected-resort-name{color:var(--text);margin:0 0 16px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:500;line-height:1.2}.selected-resort-chip{background:var(--gold);color:var(--ink);letter-spacing:.02em;border:none;border-radius:999px;flex-shrink:0;margin-bottom:20px;padding:8px 16px;font-size:13px;font-weight:600}.selected-resort-change{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px;font-family:Outfit,sans-serif;font-size:13px}.selected-resort-change:hover,.selected-resort-change:focus-visible{text-decoration:underline}.resort-cards{flex-direction:column;gap:10px;display:flex}.resort-card{border:1px solid var(--ink-line);background:var(--ink-soft);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:16px;transition:transform .15s,border-color .2s,background-color .2s;display:flex}.resort-card-name{flex:1;min-width:0;font-size:16px;font-weight:500}.resort-card-chip{color:var(--gold);letter-spacing:.02em;background:#cda05624;border:1px solid #cda05659;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.resort-card-check{color:var(--gold);flex-shrink:0}.resort-card:hover,.resort-card:active{transform:translateY(-1px)}.resort-card:not(.resort-card--selected):hover,.resort-card:not(.resort-card--selected):active{border-color:#cda05666}.resort-card--selected{border-color:var(--gold);background:#15191c}.svc-list{flex-direction:column;gap:14px;display:flex}.svc-card{border:1px solid var(--ink-line);background:var(--ink-soft);border-radius:12px;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s;overflow:hidden}.svc-card--selected{background:linear-gradient(var(--ink-soft), var(--ink-soft)) padding-box, var(--gold-gradient) border-box;border-color:#0000}.svc-card-select{text-align:center;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;padding:22px 20px 18px;display:flex}.svc-code{letter-spacing:.34em;text-transform:uppercase;color:var(--gold);font-size:10px}.svc-name{color:var(--text);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:500}.svc-subtitle{color:var(--text-muted);margin:0;font-size:13px}.svc-meta{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:12px;margin-top:6px;font-size:11px;display:flex}.svc-price{color:var(--gold-bright)}.svc-price-group{align-items:baseline;gap:6px;display:inline-flex}.svc-price-old{color:var(--text-muted);font-size:10px;font-weight:400;text-decoration:line-through}.svc-price-final{color:var(--gold);font-size:13px}.svc-protocol-toggle{border:none;border-top:1px solid var(--ink-line);letter-spacing:.16em;text-transform:uppercase;width:100%;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:12px;padding:14px 20px;font-size:11px;display:flex}.chev{transition:transform .3s cubic-bezier(.22,1,.36,1)}.svc-protocol-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.svc-steps-wrap{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.22,1,.36,1);display:grid}.svc-steps-wrap--open{grid-template-rows:1fr}.svc-steps{flex-direction:column;min-height:0;margin:0;padding:0 20px;list-style:none;display:flex;overflow:hidden}.svc-steps li{align-items:baseline;padding:8px 0;display:flex}.svc-step-code{letter-spacing:.22em;color:var(--gold);white-space:nowrap;margin-right:10px;font-size:10px}.svc-step-name{color:var(--text);font-size:13px}.stp-list{flex-direction:column;gap:14px;display:flex}.stp{border:1px solid var(--ink-line);background:var(--ink-soft);text-align:left;border-radius:12px;align-items:flex-start;gap:18px;padding:20px 18px;display:flex}.stp--featured{background:var(--gold-gradient);border-color:#0000;padding:28px 24px}.stp-code{letter-spacing:.34em;text-transform:uppercase;min-width:56px;color:var(--gold);flex:none;padding-top:3px;font-size:10px}.stp-body{flex-direction:column;gap:6px;display:flex}.stp-title{color:var(--text);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:20px;font-weight:500}.stp-sub{color:var(--text-muted);margin:0;font-size:13px}.stp--featured .stp-title,.stp--featured .stp-sub,.stp--featured .stp-code{color:var(--ink)}.avail-card{border:1px solid var(--ink-line);background:var(--ink-soft);text-align:center;border-radius:12px;padding:20px}.avail-window{color:var(--gold-bright);margin:0 0 6px;font-family:Cormorant Garamond,Georgia,serif;font-size:26px;font-weight:500}.avail-queue{color:var(--text);margin:0 0 6px;font-size:13px}.avail-note{color:var(--text-muted);margin:0;font-size:12px}.btn{letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:12px;transition:background-color .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--gold-gradient);color:var(--ink)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--gold-deep), var(--gold))}.btn-ghost{color:var(--gold);border-color:var(--ink-line);background:0 0}.btn-ghost:hover:not(:disabled){border-color:var(--gold)}.btn-block{width:100%}.error-state{border:1px solid var(--ink-line);background:var(--ink-soft);border-radius:12px;flex-direction:column;align-items:flex-start;gap:14px;padding:20px;display:flex}.error-state-message{color:var(--text);margin:0;font-size:14px}.field{flex-direction:column;gap:6px;display:flex}.field-label{letter-spacing:.22em;text-transform:uppercase;color:var(--text);font-size:10px}.field-input,.field-select{border:1px solid var(--ink-line);background:var(--ink-soft);width:100%;height:48px;color:var(--text);border-radius:10px;padding:0 14px;font-family:Outfit,sans-serif;font-size:14px;transition:border-color .2s,background-color .2s}.field-input::placeholder{color:var(--text-muted);opacity:.8}.field-input:focus,.field-select:focus{border-color:var(--gold);background:var(--ink-soft);outline:none}.field-input[aria-invalid=true],.field-select[aria-invalid=true],.pin-button[aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error);margin:0;font-size:12px}.field-hint{color:var(--text-muted);margin:0;font-size:12px}.field-hint--center{text-align:center}.pin-button{border:1px solid var(--ink-line);background:var(--ink-soft);width:100%;height:48px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:0 14px;font-family:Outfit,sans-serif;font-size:14px;transition:border-color .2s,color .2s,background-color .2s;display:flex}.pin-button:hover{border-color:var(--gold)}.pin-button--set{border-color:var(--gold);color:var(--gold)}.pin-icon{flex:none}.book-card{border:1px solid var(--ink-line);background:var(--ink-soft);border-radius:12px;padding:20px}.book-card--empty{justify-content:center;align-items:center;display:flex}.book-package{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:18px;display:flex}.book-package>span:first-child{letter-spacing:.34em;text-transform:uppercase;color:var(--gold);font-size:10px}.book-empty{color:var(--text-muted);margin:0;font-size:13px}.book-package-name{color:var(--text);font-family:Cormorant Garamond,Georgia,serif;font-size:20px;font-weight:500}.book-package-meta{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:11px}.banner-error{color:var(--error);background:#e0705a1f;border:1px solid #e0705a66;border-radius:10px;margin-bottom:16px;padding:10px 14px;font-size:13px}.step-dots{align-items:center;gap:10px;margin-bottom:20px;display:flex}.step-dot{border:1px solid var(--ink-line);letter-spacing:.16em;width:28px;height:28px;color:var(--text-muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;display:flex}.step-dot--active{background:var(--gold-gradient);border-color:var(--gold-bright);color:var(--ink)}.step-dot--done{background:var(--gold);border-color:var(--gold);color:var(--ink)}.step-line{background:var(--ink-line);border-radius:1px;flex:1;height:2px;position:relative;overflow:hidden}.step-line-fill{background:var(--gold);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.step-line-fill--filled{transform:scaleX(1)}.book-step-outer{overflow:hidden}.book-step-track{position:relative}.book-step-leave{z-index:1;opacity:0;position:absolute;inset:0}.book-step-enter--idle{animation:none}.book-step{flex-direction:column;gap:18px;display:flex}.book-back{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:4px 0;font-size:11px;display:inline-flex}.book-nav{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.summary{border:1px solid var(--ink-line);background:var(--ink-soft);border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.summary-row{justify-content:space-between;gap:16px;font-size:13px;display:flex}.summary-label{color:var(--text-muted);flex:none}.summary-value{color:var(--text);text-align:right}.price-detail{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:inline-flex}.price-detail-old{color:var(--text-muted);font-size:11px;font-weight:400;text-decoration:line-through}.price-detail-final{color:var(--gold);font-size:16px;font-weight:500;line-height:1.2}.price-detail-note{color:var(--text-muted);font-size:11px}.spinner{border:2px solid #05060759;border-top-color:var(--ink);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.confirm{text-align:center}.confirm-check{fill:none;width:72px;height:72px;stroke:var(--gold);stroke-width:1.5px;margin:0 auto 18px}.confirm-check circle{stroke-dasharray:164;stroke-dashoffset:164px;animation:.6s forwards check-draw}.confirm-check path{stroke-dasharray:36;stroke-dashoffset:36px;animation:.4s .55s forwards check-draw}.confirm-check--static circle,.confirm-check--static path{stroke-dashoffset:0;animation:none}@keyframes check-draw{to{stroke-dashoffset:0}}.confirm-heading{color:var(--text);margin:0 0 12px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(26px,5vw,34px);font-weight:400}.confirm-code{letter-spacing:.1em;color:var(--gold-bright);margin:0 0 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px}.confirm-details{color:var(--text-muted);flex-direction:column;gap:6px;margin:0 0 16px;font-size:13px;display:flex}.confirm-price{flex-direction:column;align-items:center;gap:4px;margin-bottom:16px;display:flex}.confirm-price-label{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:10px}.confirm-price .price-detail{text-align:center;align-items:center}.confirm-block{border-top:1px solid var(--ink-line);text-align:left;margin-top:16px;padding-top:16px}.confirm-list-title{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 8px;font-size:10px}.confirm-list{color:var(--text);flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.confirm .btn-block{margin-top:18px}.confirm-second{margin-top:10px}.map-modal{z-index:3000;background:var(--ink);flex-direction:column;display:flex;position:fixed;inset:0}.map-modal-header{border-bottom:1px solid var(--ink-line);flex:none;justify-content:space-between;align-items:center;height:52px;padding:0 8px 0 16px;display:flex}.map-modal-title{letter-spacing:.22em;text-transform:uppercase;color:var(--text);font-size:11px}.map-modal-action{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);cursor:pointer;background:0 0;border:none;padding:10px 8px;font-size:12px}.map-modal-action:disabled{opacity:.5;cursor:not-allowed}.map-modal-action--primary{color:var(--gold)}.map-host{flex:auto;min-height:0;position:relative}.map-canvas{z-index:0;position:absolute;inset:0}.map-hint{z-index:500;background:var(--ink);color:var(--text);white-space:nowrap;border-radius:10px;margin:0;padding:9px 14px;font-size:12px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.map-pin-marker{background:0 0;border:none}.map-pin-wrap{width:0;height:0;position:relative}.map-pin{background:var(--gold);border:2px solid var(--ink);border-radius:50% 50% 50% 0;width:28px;height:28px;margin:-28px 0 0 -14px;position:absolute;top:0;left:0;transform:rotate(-45deg)}@keyframes cue-breathe{0%,to{translate:0}50%{translate:0 4px}}@keyframes dot-pop{0%{transform:scale(.9)}}@keyframes svc-step-in{0%{opacity:0;transform:translateY(8px)}}@keyframes error-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes avail-in{0%{opacity:0}}@keyframes confirm-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes step-enter-forward{0%{opacity:0;transform:translate(16px)}}@keyframes step-enter-back{0%{opacity:0;transform:translate(-16px)}}@keyframes step-leave-forward{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-16px)}}@keyframes step-leave-back{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(16px)}}@media (prefers-reduced-motion:no-preference){.has-animations .reveal-section{opacity:0;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);transform:translateY(16px)}.has-animations .reveal-section.is-visible{opacity:1;transform:translateY(0)}.has-animations .reveal-item{opacity:0;transition:opacity .6s cubic-bezier(.22,1,.36,1)}.has-animations .reveal-section.is-visible .reveal-item{opacity:1}.has-animations .reveal-section.is-visible .reveal-item:first-child{transition-delay:0s}.has-animations .reveal-section.is-visible .reveal-item:nth-child(2){transition-delay:70ms}.has-animations .reveal-section.is-visible .reveal-item:nth-child(3){transition-delay:.14s}.has-animations .reveal-section.is-visible .reveal-item:nth-child(4){transition-delay:.21s}.has-animations .reveal-section.is-visible .reveal-item:nth-child(5){transition-delay:.28s}.has-animations .reveal-section.is-visible .reveal-item:nth-child(6){transition-delay:.35s}.book-step-outer{transition:height .35s cubic-bezier(.22,1,.36,1)}.book-step-enter{animation:.35s cubic-bezier(.22,1,.36,1) both step-enter-forward}.book-step-enter--back{animation-name:step-enter-back}.book-step-leave--forward{animation:.35s cubic-bezier(.22,1,.36,1) forwards step-leave-forward}.book-step-leave--back{animation:.35s cubic-bezier(.22,1,.36,1) forwards step-leave-back}.step-line-fill{transition:transform .4s cubic-bezier(.22,1,.36,1)}.step-dot--active{animation:.4s cubic-bezier(.22,1,.36,1) dot-pop}.svc-steps-wrap--open .svc-steps li{animation:.4s cubic-bezier(.22,1,.36,1) both svc-step-in}.svc-steps-wrap--open .svc-steps li:first-child{animation-delay:0s}.svc-steps-wrap--open .svc-steps li:nth-child(2){animation-delay:40ms}.svc-steps-wrap--open .svc-steps li:nth-child(3){animation-delay:80ms}.svc-steps-wrap--open .svc-steps li:nth-child(4){animation-delay:.12s}.svc-steps-wrap--open .svc-steps li:nth-child(5){animation-delay:.16s}.svc-steps-wrap--open .svc-steps li:nth-child(6){animation-delay:.2s}.svc-steps-wrap--open .svc-steps li:nth-child(7){animation-delay:.24s}.svc-steps-wrap--open .svc-steps li:nth-child(8){animation-delay:.28s}.svc-steps-wrap--open .svc-steps li:nth-child(9){animation-delay:.32s}.svc-steps-wrap--open .svc-steps li:nth-child(10){animation-delay:.36s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:scale(.98)}.svc-card:hover:not(.svc-card--selected){border-color:var(--gold);transform:translateY(-2px)}.field-error{animation:.3s cubic-bezier(.22,1,.36,1) both error-in}.avail-window,.avail-queue{animation:.5s both avail-in}.confirm-code,.confirm-details,.confirm-list li,.confirm .btn{animation:.35s cubic-bezier(.22,1,.36,1) backwards confirm-rise}.confirm-code{animation-delay:.65s}.confirm-details{animation-delay:.8s}.confirm-list li:first-child{animation-delay:.95s}.confirm-list li:nth-child(2){animation-delay:1.02s}.confirm-list li:nth-child(3){animation-delay:1.09s}.confirm .btn:first-of-type{animation-delay:1.15s}.confirm .btn:nth-of-type(2){animation-delay:1.25s}}.confirm--static .confirm-check circle,.confirm--static .confirm-check path,.confirm--static .confirm-code,.confirm--static .confirm-details,.confirm--static .confirm-list li,.confirm--static .confirm .btn{opacity:1;animation:none;transform:none}@media (width>=700px){.hero-frame{max-width:900px}.partner-block-logo{height:76px}.selected-resort-logo{height:160px}.selected-resort-name{font-size:26px}}@media (width<=420px){.map-hint{white-space:normal;text-align:center;width:calc(100% - 40px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
