.lo-hero{isolation:isolate;background:linear-gradient(180deg, var(--color-navy) 0%, var(--color-ink-950) 100%);position:relative;overflow:clip}.lo-hero:before{content:"";z-index:-1;background:radial-gradient(55% 48% at 72% 46%,#e8c18338,#0000 70%);position:absolute;inset:0}.lo-grain{z-index:-1;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.lo-hero-grid{gap:var(--spacing-grid-lg);padding-top:var(--spacing-stack-xl);padding-bottom:var(--spacing-stack-xl);align-items:center;display:grid}@media (min-width:1024px){.lo-hero-grid{grid-template-columns:5fr 7fr;align-items:start}}.lo-footnote{color:var(--color-ink-200);font-size:.75rem;line-height:1.5}.fn-viewport{position:relative}.fn{--spine-x:10px;position:relative}.fn:before{content:"";top:0;bottom:0;left:var(--spine-x);background:linear-gradient(to bottom, transparent, var(--color-gold) 5%, var(--color-gold) 95%, transparent);width:1px;box-shadow:0 0 10px #e8c183d9, 0 0 2px var(--color-gold);opacity:.9;position:absolute;transform:translate(-50%)}.fn-canvas{pointer-events:none;position:absolute;inset:0}.fn-stages{gap:var(--spacing-stack-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.fn-stage{padding-left:2rem;position:relative}.fn-num{left:var(--spine-x);border:1px solid var(--color-gold);background:var(--color-navy);width:1.75rem;height:1.75rem;color:var(--color-gold);letter-spacing:.04em;z-index:2;border-radius:50%;place-items:center;font-size:.6875rem;font-weight:700;display:grid;position:absolute;top:.95rem;transform:translate(-50%,-50%);box-shadow:0 0 14px #e8c18373}.fn-meta{flex-direction:column;align-items:flex-start;gap:.4rem;margin-bottom:.75rem;display:flex}.fn-label{color:var(--color-ivory-100);font-size:.9375rem;font-weight:600}.fn-chip{color:var(--color-gold);background:#e8c18324;border:1px solid #e8c18366;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;line-height:1.35;display:inline-block}.fn-card{border-radius:var(--radius-large);-webkit-backdrop-filter:blur(14px);padding:var(--spacing-stack-sm);color:var(--color-ivory-100);transition:opacity .5s var(--ease-editorial), border-color .5s var(--ease-editorial), box-shadow .5s var(--ease-editorial);background:#ffffff0f;border:1px solid #ffffff1f;padding-top:1.75rem;position:relative;box-shadow:0 40px 80px -40px #000000bf}.fn-sample{letter-spacing:.14em;text-transform:uppercase;color:#ffffff8c;font-size:.5625rem;font-weight:700;position:absolute;top:.65rem;right:.9rem}.fn-stage[data-state=dim] .fn-card,.fn-stage[data-state=dim] .fn-meta{opacity:.5}.fn-stage[data-state=active] .fn-card{border-color:#e8c183bf;box-shadow:0 0 0 1px #e8c1834d,0 0 40px -10px #e8c18359,0 40px 80px -40px #000000bf}.fn-meta,.fn-num{transition:opacity .5s var(--ease-editorial)}@media (min-width:1024px){.fn-stage{grid-template-columns:11rem minmax(0,1fr);align-items:center;column-gap:2.75rem;padding-left:0;display:grid}.fn-num{top:50%}.fn-meta{text-align:right;align-items:flex-end;margin-bottom:0}}.fx-screen{width:100%;position:relative}.fx-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.75rem;display:grid}.fx-grid-tight{gap:.4rem;margin-top:0}.fx-tile{aspect-ratio:1;background:var(--color-ink-700);isolation:isolate;border-radius:.75rem;position:relative;overflow:hidden}.fx-tile-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.fx-tile-blur{filter:blur(2px);background:radial-gradient(circle at 30% 30%,#b8d1f073,#0000 60%),radial-gradient(circle at 75% 70%,#e8c18340,#0000 55%),#ffffff14}.fx-tile-gold{outline:1.5px solid var(--color-gold);outline-offset:1px}.fx-tile-cap{color:var(--color-ivory-50);text-shadow:0 1px 2px #000000b3;justify-content:space-between;font-size:.5625rem;font-weight:600;display:flex;position:absolute;bottom:.3rem;left:.4rem;right:.4rem}.fx-tile-blur .fx-tile-cap{opacity:.6}.fx-search{color:var(--color-navy);background:#fffdf9eb;border-radius:999px;align-items:center;gap:.5rem;min-height:2rem;padding:.45rem .85rem;font-size:.78rem;font-weight:600;display:flex}.fx-caret{background:var(--color-navy);width:1px;height:.9em;animation:1s steps(2,start) infinite fx-caret}@keyframes fx-caret{to{visibility:hidden}}.fx-cursor{opacity:0;pointer-events:none;filter:drop-shadow(0 2px 3px #0000008c);z-index:5;width:20px;height:20px;position:absolute;top:0;left:0}.fx-ripple{border:2px solid var(--color-gold);opacity:0;pointer-events:none;z-index:4;border-radius:50%;width:28px;height:28px;margin:-14px 0 0 -14px;position:absolute;top:0;left:0}.fx-carousel{aspect-ratio:16/8;background:var(--color-ink-700);border-radius:.75rem;position:relative;overflow:hidden}.fx-slide{transform-origin:50%;position:absolute;inset:0}.fx-slide-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.fx-title-row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-top:.7rem;display:flex}.fx-title{min-height:1.3em;font-size:.9rem;font-weight:700;line-height:1.3}.fx-counter{color:var(--color-gold);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.65rem}.fx-stars{color:var(--color-gold);align-items:center;gap:.15rem;margin-top:.4rem;font-size:.68rem;display:flex}.fx-stars span{color:var(--color-ink-200);margin-left:.4rem}.fx-star{transform-origin:50%}.fx-chips{flex-wrap:wrap;gap:.35rem;margin-top:.6rem;display:flex}.fx-chip{color:var(--color-ivory-100);background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;padding:.25rem .6rem;font-size:.68rem}.fx-booked-screen{grid-template-columns:1.15fr 1fr;align-items:start;gap:.9rem;display:grid}.fx-cal{text-align:center;color:var(--color-ink-200);grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;font-size:.6rem;display:grid}.fx-cal-head{text-align:left;color:var(--color-ivory-100);grid-column:1/-1;margin-bottom:.2rem;font-size:.7rem;font-weight:700}.fx-cal-day{opacity:.7;font-size:.55rem}.fx-day{isolation:isolate;aspect-ratio:1;border-radius:4px;place-items:center;display:grid;position:relative}.fx-day-off{opacity:0}.fx-night{background:var(--color-gold);color:var(--color-navy);font-weight:700}.fx-booked{color:var(--color-navy);font-weight:700}.fx-fill{background:var(--color-gold);z-index:-1;transform-origin:50%;border-radius:4px;position:absolute;inset:1px}.fx-side{flex-direction:column;gap:.5rem;display:flex}.fx-price{color:var(--color-ink-200);margin:0;font-size:.7rem}.fx-price>div{justify-content:space-between;gap:.5rem;padding:.2rem 0;display:flex}.fx-price dd{font-variant-numeric:tabular-nums;color:var(--color-ivory-100);margin:0}.fx-price-total{color:var(--color-ivory-100);border-top:1px solid #ffffff2e;margin-top:.15rem;font-weight:700}.fx-reserve{background:var(--color-gold);width:100%;height:2.5rem;color:var(--color-navy);transform-origin:50%;border-radius:999px;place-items:center;margin:.25rem 0 0 auto;font-size:.78rem;font-weight:700;display:grid;position:relative;overflow:hidden}.fx-reserve:after{content:"";transform:translateX(var(--shine,-130%));pointer-events:none;background:linear-gradient(115deg,#0000 32%,#fff9 50%,#0000 68%);position:absolute;inset:0}.fx-reserve-text,.fx-check{grid-area:1/1}.fx-check{opacity:0}.fx-check path{stroke-dasharray:30;stroke-dashoffset:30px}.fx-toasts{flex-direction:column;gap:.35rem;margin-bottom:.7rem;display:flex}.fx-toast{color:var(--color-navy);background:#fffdf9ed;border-radius:.6rem;justify-content:space-between;gap:.5rem;padding:.45rem .65rem;font-size:.68rem;display:flex;box-shadow:0 10px 24px -14px #0009}.fx-toast b{font-weight:700}@media (prefers-reduced-motion:reduce){.fn-canvas,.fx-caret{animation:none;display:none}.fx-tile-gold{order:-1}.fx-clicked .fx-tile-gold{z-index:2;transform:scale(1.12);box-shadow:0 18px 40px -16px #000000a6}.fx-clicked .fx-tile:not(.fx-tile-gold){opacity:.35}.fx-clicked .fx-cursor{opacity:1;top:26%;left:17%}.fx-reserve{width:2.75rem}.fx-reserve-text{opacity:0}.fx-check{opacity:1}.fx-check path{stroke-dashoffset:0}.fn-card,.fn-meta,.fn-num{transition:none}}.lo-reco{border-color:#0000!important}.lo-reco:before{content:"";border-radius:inherit;background:conic-gradient(from var(--reco-angle,0deg), var(--color-copper-700), var(--color-gold), var(--color-copper-500), var(--color-gold), var(--color-copper-700));-webkit-mask-composite:xor;pointer-events:none;padding:1.5px;animation:9s linear infinite lo-reco-spin;position:absolute;inset:-1.5px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@property --reco-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes lo-reco-spin{to{--reco-angle:360deg}}@media (prefers-reduced-motion:reduce){.lo-reco:before{animation:none}}.lo-quote-bob{animation:6s ease-in-out infinite float-8;animation-delay:var(--float-delay,0s)}@media (prefers-reduced-motion:reduce){.lo-quote-bob{animation:none}}.lo-modal{border:1px solid var(--color-ink-100);border-radius:var(--radius-large);background:var(--color-ivory-50);width:min(44rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--color-ink-800);margin:auto;padding:0;overflow:auto;box-shadow:0 40px 90px -30px #021b5473}.lo-modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#021d398c}.lo-modal[open]{animation:lo-modal-in .4s var(--ease-editorial)}@keyframes lo-modal-in{0%{opacity:0;transform:translateY(12px)}}@media (max-width:639px){.lo-modal{border:0;border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.lo-modal[open]{animation-name:lo-sheet-in}@keyframes lo-sheet-in{0%{transform:translateY(100%)}}}@media (prefers-reduced-motion:reduce){.lo-modal[open]{animation:none}}.lo-hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}
