@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";:root{--color-sand-soft:#f8f6ed;--color-sand:#e8d7b7;--color-ink:#162033;--color-ink-soft:#162033c7;--color-border-soft:#16203329;--color-cyan-rgb:0, 169, 216;--color-cyan:rgb(var(--color-cyan-rgb));--color-cyan-soft:rgba(var(--color-cyan-rgb), .16);--color-code-bg:#f1e8d7;--font-display:"Playfair Display", serif;--font-body:"Montserrat", sans-serif;--sans:var(--font-body);--heading:var(--font-display);--mono:var(--font-body);font:16px/150% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-ink);background:var(--color-sand-soft);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}body{background:var(--color-sand-soft);color:var(--color-ink-soft);margin:0}#root{text-align:left;border:0;width:100%;max-width:none;min-height:100vh;margin:0;display:block}a{color:inherit;cursor:pointer}button{font-family:inherit}p{margin:0}h1,h2{font-family:var(--heading)}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}code,.counter{font-family:var(--mono);color:var(--color-ink);border-radius:4px;display:inline-flex}code{background:var(--color-code-bg);padding:4px 8px;font-size:15px;line-height:135%}.navHeader{--brand-cyan-rgb:var(--color-cyan-rgb);--brand-cyan:rgb(var(--brand-cyan-rgb));z-index:50;padding:18px 20px;position:fixed;top:0;left:0;right:0}.navInner{-webkit-backdrop-filter:blur(14px);background:#0a0e1499;border:1px solid #ffffff24;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:14px 18px;display:flex;box-shadow:0 18px 60px #00000040}.brand{font-family:var(--font-display);letter-spacing:.3px;color:#ffffffeb;white-space:nowrap;font-size:20px;font-weight:700;text-decoration:none}.navLinks{flex:1;justify-content:center;align-items:center;gap:28px;display:flex}.navLink{color:#fff;letter-spacing:.2px;font-size:15px;font-weight:400;font-family:var(--font-body);cursor:pointer;padding:8px 6px;text-decoration:none;position:relative}.navLink:after{content:"";background:var(--brand-cyan);transform-origin:50%;height:1px;transition:transform .16s;position:absolute;bottom:2px;left:6px;right:6px;transform:scaleX(0)}.navLink:hover:after,.navLink.activeNavLink:after{transform:scaleX(1)}.navActions{align-items:center;gap:12px;display:flex}.profileMenuWrap{position:relative}.profileFabButton{color:#fffffff2;width:40px;height:40px;font-family:var(--font-body);letter-spacing:.2px;cursor:pointer;-webkit-backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff52;border-radius:999px;font-size:13px;font-weight:700;box-shadow:0 8px 24px #0000003d}.profileFabButton:hover{border-color:rgba(var(--brand-cyan-rgb), .9)}.profileDropdownMenu{background:#0a0e14d6;border:1px solid #ffffff2e;border-radius:12px;gap:6px;min-width:190px;padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 22px 48px #00000057}.profileDropdownTitle{color:#ffffffdb;border-bottom:1px solid #ffffff1a;margin:0;padding:8px 10px;font-size:12px}.profileDropdownLink,.profileDropdownButton{color:#ffffffeb;text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px;font-size:13px;text-decoration:none}.profileDropdownLink:hover,.profileDropdownButton:hover{background:#ffffff14}.bookNowBtn{letter-spacing:.2px;color:#fffffff5;background:var(--brand-cyan);box-shadow:0 14px 40px rgba(var(--brand-cyan-rgb), .18);font-weight:400;font-family:var(--font-body);border-radius:10px;justify-content:center;align-items:center;padding:10px 16px;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.bookNowBtn:hover{box-shadow:0 18px 52px rgba(var(--brand-cyan-rgb), .26);transform:translateY(-1px)}.menuButton{color:#ffffffeb;cursor:pointer;font-family:var(--font-body);background:#0000002e;border:1px solid #ffffff2e;border-radius:10px;padding:10px 12px;display:none}.menuIcon{flex-direction:column;gap:4px;display:inline-flex}.menuIcon span{background:#ffffffe0;border-radius:2px;width:18px;height:2px}.mobileMenu{z-index:60;max-width:1200px;margin:0 auto;position:absolute;top:calc(100% - 6px);left:20px;right:20px}.mobileMenuInner{-webkit-backdrop-filter:blur(16px);background:#0a0e1485;border:1px solid #ffffff24;border-radius:18px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:0 26px 80px #00000059}.mobileNavLink{color:#ffffffd1;font-weight:400;font-family:var(--font-body);text-align:left;cursor:pointer;background:#ffffff0a;border:none;border-radius:14px;width:100%;padding:12px;text-decoration:none}.mobileNavLink:hover{background:#ffffff14}.mobileBookNow{color:#fffffff5;background:var(--brand-cyan);font-weight:600;font-family:var(--font-body);border-radius:10px;padding:12px;text-decoration:none}@media (width<=860px){.navLinks{display:none}.profileDropdownMenu{right:-6px}.menuButton{justify-content:center;align-items:center;display:inline-flex}.mobileMenu{max-width:none}}.heroSection{--brand-cyan-rgb:0, 169, 216;--brand-cyan:rgb(var(--brand-cyan-rgb));min-height:100vh;position:relative;overflow:hidden}.heroBg{filter:saturate(1.05)contrast(1.05);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.05)}.heroBg:after{content:"";background:#000000b3;position:absolute;inset:0}.heroContent{z-index:2;justify-content:center;align-items:center;min-height:100vh;padding:120px 20px 64px;display:flex;position:relative}.heroGrid{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:clamp(24px,4vw,56px);width:min(1200px,100%);margin:0 auto;display:grid}.heroCopy{text-align:left;max-width:720px}.kicker{letter-spacing:.22em;text-transform:uppercase;color:#ffffffc7;font-size:13px;font-family:var(--font-body);margin-bottom:18px;display:inline-block}.heroCopy h1{font-family:var(--font-display);color:#fffffff7;text-shadow:0 18px 60px #00000073;letter-spacing:-.5px;margin:0;font-size:clamp(44px,5.1vw,72px);line-height:1.03}.heroHeadingAccent{color:var(--brand-cyan);font-style:italic}.heroCopy p{color:#ffffffc7;margin:18px 0 28px;font-size:18px;line-height:1.6}.heroCtas{flex-wrap:wrap;justify-content:flex-start;gap:14px;display:flex}.heroResortPanel{-webkit-backdrop-filter:blur(14px);background:#080c128c;border:1px solid #ffffff2e;border-radius:24px;overflow:hidden;box-shadow:0 24px 70px #00000059}.heroResortPanel img{object-fit:cover;width:100%;height:360px;display:block}.primaryCta{letter-spacing:.2px;color:#fffffff5;background:var(--brand-cyan);box-shadow:0 14px 40px rgba(var(--brand-cyan-rgb), .18);font-weight:400;font-family:var(--font-body);border-radius:10px;justify-content:center;align-items:center;padding:10px 16px;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.primaryCta:hover{box-shadow:0 18px 52px rgba(var(--brand-cyan-rgb), .26);transform:translateY(-1px)}.secondaryCta{color:#ffffffeb;font-weight:450;font-family:var(--font-body);background:#0000002e;border:1px solid #ffffff2e;border-radius:10px;justify-content:center;align-items:center;padding:12px 18px;text-decoration:none;display:inline-flex}.sectionAnchor,.bookingAnchor{height:1px}@media (width<=860px){.heroContent{padding-top:110px}.heroGrid{grid-template-columns:1fr;gap:24px}.heroCopy{text-align:center;margin:0 auto}.heroCtas{justify-content:center}.heroResortPanel{display:none}}.resortHighlights{--brand-cyan-rgb:0, 169, 216;--brand-cyan:rgb(var(--brand-cyan-rgb));padding:50px 20px}.resortHighlightsInner{text-align:center;width:min(1100px,100%);margin:0 auto;padding:8px 0}.resortHighlightsKicker{text-transform:uppercase;letter-spacing:.2em;color:#1521319e;font-size:12px;font-family:var(--font-body);margin:0}.resortHighlightsInner h2{color:#162033;margin:8px 0 40px;font-size:clamp(26px,2.4vw,34px)}.resortHighlightsGrid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px;display:grid}.resortHighlightCard{text-align:center;padding:4px 6px}.resortHighlightIcon{background:rgba(var(--brand-cyan-rgb), .18);width:40px;height:40px;color:var(--brand-cyan);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.resortHighlightIcon svg{fill:currentColor;width:20px;height:20px}.resortHighlightCard h3{font-family:var(--font-display);color:#1b2a3f;margin:10px 0 6px;font-size:20px}.resortHighlightCard p{color:#1b2a3fc7;margin:0;font-size:14px;line-height:1.5}@media (width<=860px){.resortHighlights{padding:20px 16px 8px}.resortHighlightsGrid{grid-template-columns:1fr;gap:14px}}.resortSection{--brand-cyan-rgb:0, 169, 216;--brand-cyan:rgb(var(--brand-cyan-rgb));background:#fff;flex-direction:column;align-items:center;padding:80px 20px;display:flex;position:relative;overflow:hidden}.resortSectionHeader{text-align:center;width:min(1120px,100%);margin:0 auto 22px}.resortSectionKicker{text-transform:uppercase;letter-spacing:.2em;color:#1521319e;font-size:12px;font-family:var(--font-body);margin:0}.resortSectionTitle{margin:8px 0 40pxas;color:#162033;font-size:clamp(26px,2.4vw,34px)}.sectionFirst{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,48px);width:min(1120px,100%);margin:0 auto;display:grid}.resortGallery{position:relative}.resortFrame{border:1px solid #16203324;border-radius:22px;margin:0;overflow:hidden;box-shadow:0 22px 60px #00000038}.resortImg{object-fit:cover;width:100%;height:clamp(280px,34vw,430px);display:block}.galleryNavButton{z-index:2;color:#fffffff0;cursor:pointer;background:#09101985;border:1px solid #ffffff3d;border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;transition:transform .16s,background .16s;display:inline-flex;position:absolute;top:42%;transform:translateY(-50%)}.galleryNavButton:hover{background:rgba(var(--brand-cyan-rgb), .7);transform:translateY(-50%)scale(1.04)}.galleryNavButton span{font-size:22px;line-height:1}.galleryNavButtonPrev{left:12px}.galleryNavButtonNext{right:12px}.resortThumbRow{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.resortGalleryMeta{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.resortGalleryCount{color:#162033d1;font-size:13px;font-weight:600}.resortGalleryHint{color:#1620339e;font-size:13px}.resortThumb{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:12px;padding:0;overflow:hidden}.resortThumb img{object-fit:cover;filter:saturate(.9);width:100%;height:88px;display:block}.resortThumb.isActive{border-color:var(--brand-cyan)}.textContainer{padding-left:0}.textContainer h2{color:#162033;margin:0 0 12px;font-size:clamp(30px,3.2vw,44px)}.textContainer p{color:#162033c7;font-size:16px;line-height:1.65}.textContainer p+p{margin-top:12px}@media (width<=768px){.resortSection{padding:56px 16px 64px}.resortSectionHeader{margin-bottom:16px}.resortSectionTitle{margin-top:6px;margin-bottom:24px}.sectionFirst{grid-template-columns:1fr;gap:18px}.galleryNavButton{background:#0910199e;border-width:0;width:44px;height:44px;top:41%}.galleryNavButtonPrev{left:8px}.galleryNavButtonNext{right:8px}.resortFrame{border-radius:16px}.resortImg{height:clamp(220px,58vw,320px)}.resortThumbRow,.resortGalleryMeta{display:none}.textContainer{text-align:center}.textContainer h2{font-size:clamp(26px,7vw,34px)}.textContainer p{font-size:15px}}.featuredOffersSection{background:radial-gradient(circle at 15% 10%, rgba(var(--color-cyan-rgb), .12), transparent 38%), linear-gradient(180deg, #f7fbfe 0%, #fff 100%);padding:80px 20px;position:relative}.featuredOffersInner{width:min(1120px,100%);margin:0 auto}.featuredOffersHeader{text-align:center;max-width:760px;margin:0 auto 28px}.featuredOffersKicker{letter-spacing:.2em;text-transform:uppercase;color:#1620338f;margin:0;font-size:12px}.featuredOffersTitle{color:#162033;margin:10px 0;font-size:clamp(28px,3vw,40px)}.featuredOffersLead{color:#162033b8;margin:0;line-height:1.7}.featuredOffersGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.featuredOfferCard{background:#fff;border:1px solid #1620331f;border-radius:20px;overflow:hidden;box-shadow:0 20px 48px #0000001a}.featuredOfferImage{object-fit:cover;width:100%;height:200px;display:block}.featuredOfferBody{padding:16px}.featuredOfferBody h3{color:#162033;margin:0;font-size:22px;line-height:1.25}.featuredOfferBody p{color:#162033b8;margin:8px 0 14px;font-size:14px}.featuredOfferMeta{color:#162033c7;justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.featuredOfferMeta strong{color:#162033}.featuredOfferMeta a{color:var(--color-cyan);font-weight:600;text-decoration:none}.featuredOffersCtaWrap{justify-content:center;margin-top:24px;display:flex}.featuredOffersCta{background:var(--color-cyan);color:#fff;letter-spacing:.2px;border-radius:10px;justify-content:center;align-items:center;min-height:35px;padding:8px 20px;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.featuredOffersCta:hover{box-shadow:0 18px 40px rgba(var(--color-cyan-rgb), .32);transform:translateY(-1px)}@media (width<=980px){.featuredOffersGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.featuredOffersSection{padding:56px 16px}.featuredOffersGrid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding:2px 4px 10px;display:flex;overflow-x:auto}.featuredOffersGrid::-webkit-scrollbar{display:none}.featuredOfferCard{scroll-snap-align:start;flex:0 0 min(84vw,330px)}.featuredOfferImage{height:220px}.featuredOffersCta{width:100%;max-width:300px}}.locationSection{background:#f3fbff;padding:80px 20px 88px;position:relative}.locationInner{width:min(1120px,100%);margin:0 auto}.locationHeader{text-align:center;max-width:760px;margin:0 auto 28px}.locationKicker{letter-spacing:.2em;text-transform:uppercase;color:#16203394;margin:0;font-size:12px}.locationTitle{color:#162033;margin:10px 0;font-size:clamp(28px,3vw,40px)}.locationLead{color:#162033bd;margin:0;line-height:1.7}.locationSplit{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.locationDetailsCol{min-width:0}.locationInfoCard{height:100%}.contactInfoGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.contactInfoItem{background:#f3fbffcc;border:1px solid #1620331a;border-radius:14px;padding:14px}.contactIcon{width:36px;height:36px;color:var(--color-cyan);background:rgba(var(--color-cyan-rgb), .12);border-radius:999px;justify-content:center;align-items:center;margin-bottom:10px;display:inline-flex}.contactIcon svg{width:18px;height:18px}.locationCard{background:#fff;border:1px solid #1620331f;border-radius:18px;padding:18px;box-shadow:0 16px 36px #00000014}.locationCard h3{color:#162033;margin:0 0 8px;font-size:20px}.contactInfoItem h4{color:#162033;margin:0 0 6px;font-size:16px}.locationCard p{color:#162033b8;margin:0;line-height:1.7}.contactInfoItem p{font-size:14px}.locationCard a{color:var(--color-cyan);margin-top:12px;font-weight:600;text-decoration:none;display:inline-flex}.locationCard a[href^=mailto\:]{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.locationSocialLinks{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.locationSocialLinks a{margin-top:0}.locationMapCard{flex-direction:column;min-height:100%;display:flex}.locationMapEmbed{border:1px solid #1620331f;border-radius:14px;flex:1;width:100%;min-height:0;margin-top:14px;overflow:hidden}.locationMapEmbed iframe{border:0;width:100%;height:100%;min-height:320px;display:block}@media (width<=980px){.locationSplit{grid-template-columns:1fr}.locationMapEmbed iframe{height:clamp(320px,50vw,460px)}}@media (width<=760px){.locationSection{padding:56px 16px 64px}.contactInfoGrid{grid-template-columns:1fr}}.landingFooter{color:#ffffffeb;background:#0f1a28;padding:36px 20px 22px}.landingFooterInner{grid-template-columns:1.3fr 1fr 1.2fr;align-items:start;gap:20px;width:min(1120px,100%);margin:0 auto;display:grid}.landingFooterBrand h3{color:#fff;margin:0;font-size:24px}.landingFooterBrand p{color:#ffffffb8;margin:8px 0 0;line-height:1.6}.landingFooterNav{gap:10px;display:grid}.landingFooterNav a,.landingFooterContact a{color:#ffffffdb;text-decoration:none;transition:color .14s}.landingFooterNav a:hover,.landingFooterContact a:hover{color:rgb(var(--color-cyan-rgb))}.landingFooterContact{gap:10px;display:grid}.landingFooterCopy{color:#ffffffa3;border-top:1px solid #ffffff24;width:min(1120px,100%);margin:22px auto 0;padding-top:14px;font-size:13px}@media (width<=900px){.landingFooterInner{grid-template-columns:1fr;gap:16px}}.bookingPageHeader{--brand-cyan-rgb:var(--color-cyan-rgb);--brand-cyan:rgb(var(--brand-cyan-rgb));z-index:50;border-bottom:1px solid rgba(var(--brand-cyan-rgb), .35);background:#fff;padding:18px 20px;position:fixed;top:0;left:0;right:0}.bookingPageHeaderInner{justify-content:space-between;align-items:center;gap:40px;max-width:1200px;margin:0 auto;display:flex;position:relative}.bookingPageBrand{font-family:var(--font-display);letter-spacing:.3px;color:var(--color-ink);white-space:nowrap;font-size:20px;font-weight:700;text-decoration:none;transition:color .16s}.bookingPageBrand:hover{color:var(--brand-cyan)}.bookingPageNav{background:rgba(var(--brand-cyan-rgb), .08);border:1px solid rgba(var(--brand-cyan-rgb), .25);border-radius:12px;align-items:center;gap:12px;padding:6px;display:flex}.bookingPageNavLink{appearance:none;color:#162033c7;letter-spacing:.2px;font-size:13px;font-weight:400;font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 14px;text-decoration:none;transition:all .2s;display:inline-block}.bookingPageNavLink:hover{color:var(--color-ink);background:rgba(var(--brand-cyan-rgb), .16)}@media (width<=860px){.bookingPageNav{gap:8px;padding:4px}.bookingPageNavLink{padding:6px 12px;font-size:12px}}.bookingPage{background:var(--color-sand-soft);min-height:100vh}.bookingMain{padding:112px 20px 28px}.bookingShell{width:min(980px,100%);margin:0 auto}.bookingKicker{letter-spacing:.2em;text-transform:uppercase;color:#16203394;margin:0;font-size:12px}.bookingShell h1{color:#162033;margin:8px 0 18px;font-size:clamp(30px,4vw,44px)}.bookingForm{background:#fff;border:1px solid #1620331f;border-radius:20px;padding:18px;box-shadow:0 18px 48px #00000014}.bookingPanel{background:#f6fbffd1;border:1px solid #1620331a;border-radius:14px;padding:14px}.bookingSteps{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.bookingStep{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.bookingStepCircle{color:#162033c7;background:#fff;border:1px solid #16203338;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:inline-flex}.bookingStepLabel{color:#162033a8;font-size:12px}.bookingStep.isActive .bookingStepCircle{background:var(--color-cyan);color:#fff;border-color:#0000}.bookingStep.isDone .bookingStepCircle{background:rgba(var(--color-cyan-rgb), .14);border-color:rgba(var(--color-cyan-rgb), .4);color:#116787}.bookingStep.isActive .bookingStepLabel,.bookingStep.isDone .bookingStepLabel{color:#162033}.bookingGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.bookingField{gap:6px;display:grid}.bookingField.isFull{grid-column:1/-1}.bookingInlineWarning{color:#612900e6;background:#ffb34724;border:1px solid #b3420052;border-radius:10px;grid-column:1/-1;margin:-2px 0 2px;padding:8px 10px;font-size:13px;line-height:1.4}.bookingField label{color:#162033c7;font-size:13px}.bookingField input,.bookingField textarea{box-sizing:border-box;width:100%;font:inherit;color:#162033;background:#fff;border:1px solid #16203333;border-radius:10px;padding:10px 12px}.bookingFieldError{color:#b34200eb;margin:0;font-size:12px;line-height:1.35}.bookingFieldHint{color:#162033ad;margin:0;font-size:12px;line-height:1.35}.bookingStaticValue{border:1px dashed rgba(var(--color-cyan-rgb), .4);background:rgba(var(--color-cyan-rgb), .08);border-radius:10px;align-items:center;gap:14px;padding:10px 12px;display:flex}.bookingOfferPreviewImage{aspect-ratio:4/3;object-fit:cover;border:1px solid #16203329;border-radius:10px;flex:0 0 160px;width:160px}.bookingOfferDetails{gap:4px;display:grid}.bookingStaticValue strong{color:#162033}.bookingStaticValue span{color:#162033c2;font-size:14px}.bookingAddOnsList{gap:10px;display:grid}.bookingAddOn{background:#fff;border:1px solid #16203329;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.bookingAddOn.isChecked{border-color:rgba(var(--color-cyan-rgb), .65);background:rgba(var(--color-cyan-rgb), .08)}.bookingAddOn span{gap:2px;display:grid}.bookingAddOn strong{color:#162033;font-size:15px}.bookingAddOn small{color:#162033b8}.bookingReview p{color:#162033cc;margin:0}.bookingReview p+p{margin-top:7px}.bookingCostBreakdown{background:rgba(var(--color-cyan-rgb), .08);border:1px solid rgba(var(--color-cyan-rgb), .25);border-radius:10px;margin-top:18px;padding:14px}.bookingCostBreakdown h3{color:#162033;margin:0 0 12px;font-size:14px;font-weight:600}.costLine{color:#162033cc;border-bottom:1px solid rgba(var(--color-cyan-rgb), .15);justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;display:flex}.costLine:last-child{border-bottom:none}.costLine.costTotal{border-top:2px solid rgba(var(--color-cyan-rgb), .3);color:#162033;border-bottom:none;margin-top:4px;padding-top:10px;padding-bottom:0;font-weight:600}.costAmount{color:var(--color-cyan);font-weight:600}.bookingTerms{color:#162033cc;align-items:flex-start;gap:8px;margin-top:14px;display:flex}.bookingActions{justify-content:flex-start;align-items:center;gap:10px;margin-top:14px;display:flex}.bookingActionBtn:nth-child(2){margin-left:auto}.bookingActionBtn{color:#162033;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #1620333d;border-radius:10px;justify-content:center;align-items:center;padding:8px 14px;text-decoration:none;display:inline-flex}.bookingActionBtn.isPrimary{background:var(--color-cyan);color:#fff;border-color:#0000}.bookingActionBtn.isDanger{color:#fff;background:#dc2626;border-color:#0000}.bookingActionBtn.isDanger:hover:not(:disabled){background:#b91c1c}.bookingActionBtn:disabled{opacity:.5;cursor:not-allowed}.editBookingSuccessShell{margin-top:4px}.editBookingSuccessHeader{gap:6px;margin-bottom:12px;display:grid}.editBookingSuccessHeader h2{color:#162033;margin:0;font-size:clamp(22px,2.3vw,30px)}.editBookingSuccessKicker{letter-spacing:.18em;text-transform:uppercase;color:#166534d1;margin:0;font-size:12px;font-weight:700}.editBookingSuccessPanel{background:#fff}.editBookingSuccessMessage{color:#162033d1;margin:0;line-height:1.6}.editBookingSuccessActions{margin-top:14px}.editBookingSuccessActions .bookingActionBtn:first-child{margin-left:0}.bookingNotice{background:#fff;border:1px solid #1620331f;border-radius:18px;gap:10px;padding:16px;display:grid;box-shadow:0 16px 40px #00000014}.bookingNotice h2{color:#162033;margin:0}.bookingNotice p{color:#162033bd;margin:0}@media (width<=900px){.bookingMain{padding:104px 16px 24px}.bookingSteps{grid-template-columns:repeat(2,minmax(0,1fr))}.bookingGrid{grid-template-columns:1fr}.bookingStaticValue{flex-direction:column;align-items:flex-start}.bookingOfferPreviewImage{flex-basis:auto;width:100%;max-width:260px}.bookingActions{flex-direction:column}.bookingActionBtn{width:100%}}.packagesPageHeader{--brand-cyan-rgb:var(--color-cyan-rgb);--brand-cyan:rgb(var(--brand-cyan-rgb));z-index:50;border-bottom:1px solid rgba(var(--brand-cyan-rgb), .35);background:#fff;padding:18px 20px;position:fixed;top:0;left:0;right:0}.packagesPageHeaderInner{justify-content:center;align-items:center;gap:40px;max-width:1200px;margin:0 auto;display:flex;position:relative}.packagesPageBrand{font-family:var(--font-display);letter-spacing:.3px;color:var(--color-ink);white-space:nowrap;font-size:20px;font-weight:700;text-decoration:none;transition:color .16s;position:absolute;left:0}.packagesPageBrand:hover{color:var(--brand-cyan)}.packagesHeaderActions{align-items:center;gap:10px;display:inline-flex;position:absolute;right:0}.packagesToggleGroup{background:rgba(var(--brand-cyan-rgb), .08);border:1px solid rgba(var(--brand-cyan-rgb), .25);border-radius:12px;align-items:center;gap:12px;padding:6px;display:flex}.packagesToggle{appearance:none;color:#162033c7;letter-spacing:.2px;font-size:13px;font-weight:400;font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 14px;transition:all .2s}.packagesToggle:hover{color:var(--color-ink);background:rgba(var(--brand-cyan-rgb), .16)}.packagesToggle.active{color:#fffffff5;background:var(--brand-cyan);box-shadow:0 4px 12px rgba(var(--brand-cyan-rgb), .3)}.packagesProfileMenuWrap{position:relative}.packagesProfileFabButton{border:1px solid rgba(var(--brand-cyan-rgb), .34);background:rgba(var(--brand-cyan-rgb), .1);color:#162033eb;width:40px;height:40px;font-family:var(--font-body);letter-spacing:.2px;cursor:pointer;border-radius:999px;font-size:13px;font-weight:700;box-shadow:0 8px 24px #1620331f}.packagesProfileFabButton:hover{border-color:rgba(var(--brand-cyan-rgb), .9)}.packagesProfileDropdownMenu{background:#fff;border:1px solid #16203324;border-radius:12px;gap:6px;min-width:190px;padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 22px 48px #16203338}.packagesProfileDropdownTitle{color:#162033d1;border-bottom:1px solid #1620331f;margin:0;padding:8px 10px;font-size:12px}.packagesProfileDropdownLink,.packagesProfileDropdownButton{color:#162033f0;text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px;font-size:13px;text-decoration:none}.packagesProfileDropdownLink:hover,.packagesProfileDropdownButton:hover{background:rgba(var(--brand-cyan-rgb), .1)}.packagesPage{--brand-cyan-rgb:var(--color-cyan-rgb);--brand-cyan:rgb(var(--brand-cyan-rgb));background:var(--color-sand-soft);min-height:100vh}.packagesPage.packagesBrowsePage{min-height:100vh}.packagesPageMain{max-width:1200px;min-height:100vh;margin:0 auto;padding:116px 20px 36px}.packagesPage.packagesBrowsePage .packagesPageMain{flex-direction:column;gap:20px;min-height:calc(100vh - 152px);display:flex}.packagesInfoSection,.packagesListSection{border:1px solid var(--color-border-soft);background:#fff;border-radius:20px;padding:24px;box-shadow:0 18px 50px #1620331f}.packagesListSection{margin-top:20px}.packagesPage.packagesBrowsePage .packagesListSection{flex-direction:column;max-height:min(82vh,1040px);margin-top:0;display:flex;overflow:hidden}.packagesPage.packagesBrowsePage .offersCardsScroll{flex:auto;min-height:0;padding-right:4px;overflow-y:auto}.packagesSectionKicker{letter-spacing:.2em;text-transform:uppercase;color:#1620339e;font-size:12px;font-family:var(--font-body);margin:0}.packagesInfoSection h2,.packagesListSection h2{color:var(--color-ink);margin:8px 0 18px}.packagesInfoHeaderRow{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.packagesInfoToggle{border:1px solid rgba(var(--color-cyan-rgb), .35);background:rgba(var(--color-cyan-rgb), .08);color:var(--color-ink);font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;border-radius:999px;padding:8px 14px;transition:background-color .18s,border-color .18s}.packagesInfoToggle:hover{background:rgba(var(--color-cyan-rgb), .16);border-color:rgba(var(--color-cyan-rgb), .5)}.packagesInfoToggle:focus-visible{outline:2px solid rgba(var(--color-cyan-rgb), .72);outline-offset:2px}.packagesInfoGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.packagesInfoCard{background:rgba(var(--color-cyan-rgb), .08);border:1px solid rgba(var(--color-cyan-rgb), .2);border-radius:14px;padding:16px}.packagesInfoCard h3{color:var(--color-ink);margin:0 0 10px}.packagesInfoCard ul{color:#162033db;margin:0;padding-left:18px}.packagesInfoCard li+li{margin-top:8px}.packageCard{border:2px dashed rgba(var(--color-cyan-rgb), .45);background:rgba(var(--color-cyan-rgb), .06);border-radius:14px;padding:18px}.packageCard h3{color:var(--color-ink);margin:0}.packageSubtitle{color:#162033bf;margin:8px 0 14px}.packagePrice{color:var(--color-cyan);margin:0 0 12px;font-size:16px;font-weight:600}.packageDetailsList{color:#162033e6;margin:0;padding-left:18px}.packageDetailsList li+li{margin-top:8px}.packageTypeHeader{margin-top:18px}.packageTypeHeader h3{color:var(--color-ink);margin:0}.packageTypeHeader p{color:#162033b8;margin:6px 0 0}.offersSortBar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.offersSortBlock,.offersFilterBlock{align-items:center;gap:8px;display:flex}.offersSortLabel{color:#162033c7;font-size:13px;font-weight:600}.offersSortSelect{appearance:none;border:1px solid rgba(var(--color-cyan-rgb), .35);color:var(--color-ink);font-family:var(--font-body);background:#fff;border-radius:10px;padding:8px 10px;font-size:13px}.rangeInputs{gap:8px;display:flex}.offersRangeInput{border:1px solid rgba(var(--color-cyan-rgb), .35);width:90px;color:var(--color-ink);font-family:var(--font-body);background:#fff;border-radius:10px;padding:8px 10px;font-size:13px}.offersDateInput{width:160px}.offersDateNotice{color:#162033b8;margin:6px 0 14px;font-size:13px}.offersActiveFilters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.offersFilterChips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.offersFilterChip{border:1px solid rgba(var(--color-cyan-rgb), .3);background:rgba(var(--color-cyan-rgb), .1);color:#162033cc;border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.offersClearFiltersBtn{border:1px solid rgba(var(--color-cyan-rgb), .35);color:var(--color-ink);font-family:var(--font-body);cursor:pointer;background:#fff;border-radius:10px;padding:7px 11px;font-size:12px;font-weight:600}.offersClearFiltersBtn:hover{background:rgba(var(--color-cyan-rgb), .08)}.offersRangeInput:focus-visible,.offersSortSelect:focus-visible{border-color:rgba(var(--color-cyan-rgb), .9);box-shadow:0 0 0 3px rgba(var(--color-cyan-rgb), .18);outline:none}.cottageGrid,.daytourOffersGrid,.overnightOffersGrid,.addonsGrid{grid-template-columns:1fr;gap:12px;display:grid}.cottageGrid{margin-top:14px}.daytourOffersGrid{margin-bottom:24px}.cottageCard,.daytourOfferCard,.overnightOfferCard,.addonCard{border:1px solid rgba(var(--color-cyan-rgb), .28);background:#fff;border-radius:12px;padding:0;overflow:hidden}.cottageCard h4,.daytourOfferCard h3,.overnightOfferCard h3,.addonCard h3{color:var(--color-ink);margin:0}.daytourOfferCard h3,.overnightOfferCard h3{font-size:18px}.addonCard h3{font-size:17px}.cottageCard p{color:#162033bd;margin:6px 0 0}.daytourOfferCard p{color:#162033bd;margin:0}.overnightOfferCard p,.addonCard p{color:#162033bd;margin:8px 0 0}.offerCardContent{align-items:stretch;height:240px;min-height:240px;display:flex}.offerCardContent.isUnavailable{opacity:.58}.offerCardContent.isUnavailable .cottageSelectBtn{filter:grayscale(.35)}.offerCardDetails{flex-direction:column;flex:1;justify-content:space-between;gap:4px;padding:20px;display:flex}.offerCardDetails h3,.offerCardDetails h4{color:var(--color-ink);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0 0 4px;font-size:18px;display:-webkit-box;overflow:hidden}.offerCardDetails h4{font-size:16px}.offerUnavailableBadge{color:#162033d1;letter-spacing:.1px;background:#16203314;border:1px solid #16203333;border-radius:999px;width:fit-content;margin:0 0 8px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex}.offerPrice{color:var(--color-cyan);margin:0;font-size:16px;font-weight:600}.paxInfo{color:#162033bd;margin:0;font-size:13px}.offerCardDetails p{color:#162033bd;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.offerCardActions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;padding-top:12px;display:flex}.offerCardImage{background:#dce7ef;flex:0 0 30%;justify-content:center;align-items:center;min-width:200px;display:flex;overflow:hidden}.offerCardImage img{object-fit:cover;width:100%;height:100%}.imagePlaceholder{background:linear-gradient(135deg, rgba(var(--color-cyan-rgb), .15) 0%, rgba(var(--color-cyan-rgb), .08) 100%);border-left:1px solid rgba(var(--color-cyan-rgb), .28);color:#16203380;text-align:center;justify-content:center;align-items:center;width:100%;height:100%;padding:10px;font-size:14px;font-weight:600;display:flex}.cottageSelectBtn{appearance:none;background:linear-gradient(135deg, rgba(var(--color-cyan-rgb), 1) 0%, #0091b8 100%);color:#fff;font-weight:600;font-family:var(--font-body);letter-spacing:.2px;cursor:pointer;box-sizing:border-box;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;margin:16px 10px 0 0;padding:9px 13px;font-size:13px;text-decoration:none;transition:transform .14s,background .16s,box-shadow .16s;display:inline-flex}.cottageSelectBtn:hover{box-shadow:0 6px 14px rgba(var(--color-cyan-rgb), .3);transform:translateY(-1px)}.cottageSelectBtn:focus-visible{border-color:#1620337a;outline:none}.offerCardSecondaryBtn{border:1px solid rgba(var(--color-cyan-rgb), .45);color:var(--color-ink);font-weight:600;font-family:var(--font-body);letter-spacing:.2px;box-sizing:border-box;background:#fff;border-radius:10px;justify-content:center;align-items:center;margin:16px 10px 0 0;padding:9px 13px;font-size:13px;text-decoration:none;transition:background .16s,border-color .16s;display:inline-flex}.offerCardSecondaryBtn:hover{background:rgba(var(--color-cyan-rgb), .08);border-color:rgba(var(--color-cyan-rgb), .7)}.offerCardSecondaryBtn:focus-visible{border-color:#1620337a;outline:none}.offerDetailsBookingPanel{border:1px solid rgba(var(--color-cyan-rgb), .26);background:#fff;border-radius:16px;flex-direction:column;gap:14px;margin-top:18px;padding:18px;display:flex;box-shadow:0 10px 24px #16203314}.offerDetailsBookingPanelHeader{flex-direction:column;gap:6px;display:flex}.offerDetailsBookingPanelHeader h3{color:var(--color-ink);margin:0;font-size:20px}.offerDetailsBookingPanelCopy{color:#162033b8;margin:0;font-size:14px;line-height:1.5}.offerDetailsBookingFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.offerDetailsBookingField{flex-direction:column;gap:6px;min-width:0;display:flex}.offerDetailsDateInput{width:80%}.offerDetailsBookingNotice{color:#162033b8;margin:0;font-size:13px;line-height:1.5}.offerDetailsBookingNotice.isWarning{color:#9a4400eb}.offerDetailsBookingActions{justify-content:stretch;display:flex}.offerDetailsBookingActions .cottageSelectBtn:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.offerDetailsBookingActions .cottageSelectBtn{width:100%;min-height:48px;padding:12px 18px;font-size:14px}.offerDetailsBackLink{color:#162033b8;align-self:flex-start;margin-top:10px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.offerDetailsBackLink:hover{color:var(--color-ink);text-decoration:underline}.offerDetailsBackLink:focus-visible{outline:2px solid rgba(var(--color-cyan-rgb), .72);outline-offset:3px;border-radius:6px}.offerDetailsGallerySection{border:1px solid rgba(var(--color-cyan-rgb), .22);background:#fff;border-radius:16px;margin-top:18px;padding:18px;box-shadow:0 10px 24px #16203314}.offerDetailsSectionHeader{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.offerDetailsSectionHeader h3{color:var(--color-ink);margin:4px 0 0;font-size:20px}.offerDetailsSectionNote{color:#162033ad;text-align:right;max-width:280px;margin:0;font-size:13px;line-height:1.5}.offerDetailsGalleryGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:14px;display:grid}.offerDetailsGalleryCard{margin:0}.offerDetailsGalleryPlaceholder{border:1px dashed rgba(var(--color-cyan-rgb), .34);color:#16203394;text-align:center;background:#f4f8fb;border-radius:14px;justify-content:center;align-items:center;min-height:168px;padding:16px;display:flex}.offerDetailsGalleryImage{object-fit:cover;border-radius:14px;width:100%;height:168px;display:block}.offerDetailsGalleryPlaceholder span{letter-spacing:.02em;font-size:13px;font-weight:600}.offerDetailsGalleryCard p{color:#162033bd;margin:10px 0 0;font-size:13px;font-weight:600}.bookingGuardPopupOverlay{z-index:140;background:#090f1880;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.bookingGuardPopup{border:1px solid rgba(var(--color-cyan-rgb), .32);background:#fff;border-radius:16px;width:min(460px,100%);padding:20px;box-shadow:0 20px 50px #090f183d}.bookingGuardPopup h3{color:var(--color-ink);margin:0;font-size:20px}.bookingGuardPopup p{color:#162033d1;margin:10px 0 0;font-size:15px;line-height:1.55}.bookingGuardPopupBtn{background:linear-gradient(135deg, rgba(var(--color-cyan-rgb), 1) 0%, #0091b8 100%);color:#fff;font-weight:600;font-family:var(--font-body);letter-spacing:.2px;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;margin-top:16px;padding:10px 14px;font-size:13px;display:inline-flex}.bookingGuardPopupBtn:hover{box-shadow:0 6px 14px rgba(var(--color-cyan-rgb), .3);transform:translateY(-1px)}.bookingGuardPopupBtn:focus-visible{border-color:#1620337a;outline:none}@media (width<=860px){.packagesPageHeaderInner{flex-direction:column;gap:16px;position:static}.packagesPageBrand{position:static}.packagesHeaderActions{align-self:flex-end;position:static}.packagesToggleGroup{justify-content:center;width:100%}.packagesToggle{padding:6px 12px;font-size:12px}.packagesPageMain{padding:132px 16px 24px}.packagesInfoGrid{grid-template-columns:1fr}.offersSortBar{flex-direction:column;align-items:flex-start}.offersSortBlock,.offersFilterBlock{justify-content:space-between;width:100%}.offerDetailsDateInput{width:95%}.offerDetailsSectionHeader{flex-direction:column}.offerDetailsSectionNote{text-align:left;max-width:none}.offerDetailsGalleryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.offerDetailsGalleryPlaceholder{min-height:150px}.offerDetailsGalleryImage{height:150px}.cottageGrid,.overnightOffersGrid,.addonsGrid,.offerDetailsBookingFields{grid-template-columns:1fr}.offerDetailsBookingActions,.offerDetailsBookingActions .cottageSelectBtn{width:100%}}.loginPageHeader{--brand-cyan-rgb:var(--color-cyan-rgb);--brand-cyan:rgb(var(--brand-cyan-rgb));z-index:50;border-bottom:1px solid rgba(var(--brand-cyan-rgb), .32);background:#fff;padding:18px 20px;position:sticky;top:0;left:0;right:0}.loginPageHeaderInner{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;display:flex}.loginPageBrand{font-family:var(--font-display);letter-spacing:.3px;color:var(--color-ink);white-space:nowrap;font-size:20px;font-weight:700;text-decoration:none}.loginPageBrand:hover{color:var(--brand-cyan)}.loginPageNav{align-items:center;gap:10px;display:inline-flex}.loginPageHeaderActions{align-items:center;gap:12px;display:inline-flex}.loginPageNavLink{border:1px solid rgba(var(--brand-cyan-rgb), .25);background:rgba(var(--brand-cyan-rgb), .06);color:#162033d6;letter-spacing:.2px;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:all .18s}.loginPageNavLink:hover{background:rgba(var(--brand-cyan-rgb), .14);color:var(--color-ink)}.loginPageNavLinkPrimary{background:var(--brand-cyan);color:#fff;border-color:#0000}.loginPageNavLinkPrimary:hover{background:rgba(var(--brand-cyan-rgb), .92);color:#fff}.loginProfileMenuWrap{position:relative}.loginProfileFabButton{border:1px solid rgba(var(--brand-cyan-rgb), .34);background:rgba(var(--brand-cyan-rgb), .1);color:#162033eb;width:40px;height:40px;font-family:var(--font-body);letter-spacing:.2px;cursor:pointer;border-radius:999px;font-size:13px;font-weight:700;box-shadow:0 8px 24px #1620331f}.loginProfileFabButton:hover{border-color:rgba(var(--brand-cyan-rgb), .9)}.loginProfileDropdownMenu{background:#fff;border:1px solid #16203324;border-radius:12px;gap:6px;min-width:190px;padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 22px 48px #16203338}.loginProfileDropdownTitle{color:#162033d1;border-bottom:1px solid #1620331f;margin:0;padding:8px 10px;font-size:12px}.loginProfileDropdownLink,.loginProfileDropdownButton{color:#162033f0;text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px;font-size:13px;text-decoration:none}.loginProfileDropdownLink:hover,.loginProfileDropdownButton:hover{background:rgba(var(--brand-cyan-rgb), .1)}.customerLoginPage{background:radial-gradient(circle at 14% 14%, rgba(var(--color-cyan-rgb), .14), transparent 36%), radial-gradient(circle at 88% 82%, rgba(var(--color-cyan-rgb), .16), transparent 40%), linear-gradient(165deg, #fefcf7 0%, #f5efe0 62%, #f1e8d7 100%);min-height:100vh}.customerLoginMain{max-width:1200px;margin:0 auto;padding:120px 20px 34px}.customerLoginShell{max-width:520px;margin:0 auto}.customerLoginCard{background:#fff;border:1px solid #16203324;border-radius:20px;gap:18px;padding:28px 24px;display:grid;box-shadow:0 26px 72px #1620331f}.customerLoginCardTop{gap:8px;display:grid}.customerLoginCardTop h2{color:var(--color-ink);margin:0}.customerLoginCardTop p{color:#162033bd;line-height:1.65}.customerAuthModeSwitch{border:1px solid rgba(var(--color-cyan-rgb), .22);background:rgba(var(--color-cyan-rgb), .08);border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;padding:6px;display:grid}.customerAuthModeBtn{color:#162033c7;min-height:34px;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:13px}.customerAuthModeBtn.active{color:var(--color-ink);background:#fff;box-shadow:0 10px 24px #1620331a}.customerLoginForm{gap:12px;display:grid}.customerLoginField{color:#162033db;gap:6px;font-size:13px;display:grid}.customerLoginField input{box-sizing:border-box;width:100%;color:var(--color-ink);font:inherit;background:#fff;border:1px solid #16203333;border-radius:10px;padding:11px 12px}.customerLoginField input:focus{outline:2px solid rgba(var(--color-cyan-rgb), .22);outline-offset:0;border-color:rgba(var(--color-cyan-rgb), .4)}.customerPasswordFieldWrap{position:relative}.customerPasswordFieldWrap input{padding-right:68px}.customerPasswordToggle{color:rgba(var(--color-cyan-rgb), 1);letter-spacing:.2px;cursor:pointer;background:0 0;border:none;padding:6px;font-size:12px;font-weight:600;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.customerLoginRow{justify-content:flex-end;align-items:center;gap:10px;display:flex}.customerForgotLink{color:rgba(var(--color-cyan-rgb), 1);font-size:13px;text-decoration:none}.customerForgotLink:hover{text-decoration:underline}.customerLoginSubmitBtn{background:var(--color-cyan);color:#fff;min-height:42px;font:inherit;letter-spacing:.2px;cursor:pointer;border:none;border-radius:11px;font-weight:600}.customerLoginSubmitBtn:hover{box-shadow:0 18px 44px rgba(var(--color-cyan-rgb), .28);transform:translateY(-1px)}.customerLoginNotice{border:1px dashed rgba(var(--color-cyan-rgb), .4);background:rgba(var(--color-cyan-rgb), .08);color:#162033db;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.55}.customerLoginNotice.error{color:#991b1b;background:#ef444414;border-color:#ef444466}.customerCreateAccountText{color:#162033bd;font-size:13px}.customerCreateAccountLink{color:rgba(var(--color-cyan-rgb), 1);font-weight:600;text-decoration:none}.customerCreateAccountLink:hover{text-decoration:underline}.customerCreateAccountBtn{cursor:pointer;font:inherit;background:0 0;border:none;padding:0}@media (width<=720px){.loginPageHeader{padding:14px 16px}.loginPageHeaderInner{flex-direction:column;align-items:flex-start}.loginPageHeaderActions{justify-content:space-between;width:100%}.customerLoginMain{padding:132px 16px 22px}.customerLoginCard{border-radius:16px;padding:22px 18px}.customerLoginRow{flex-direction:column;align-items:flex-start}}.customerDashboard{background:#f9f9f9;flex-direction:column;width:100%;min-height:100vh;display:flex}.dashboardMain{box-sizing:border-box;flex:1;width:100%;padding:1rem 1rem 3rem}.dashboardLayoutArea{align-items:flex-start;gap:2.5rem;max-width:1280px;margin:0 auto;padding:0;display:flex}.dashboardSidebar{z-index:10;flex-direction:column;flex-shrink:0;gap:1.5rem;width:280px;height:fit-content;display:flex;position:sticky;top:40px}.dashboardMainContent{flex-direction:column;flex-grow:1;min-width:0;display:flex}.memberProfileCard{background:var(--color-ink,#162033);color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 16px #0000001a}.memberProfileHeader{justify-content:space-between;padding:1.25rem 1.25rem .5rem;font-size:.9rem;font-weight:700;display:flex}.memberIcon{letter-spacing:.05em;color:var(--color-cyan,#00d2d3);font-size:.85rem}.memberTier{text-align:right;opacity:.9;font-size:.75rem;line-height:1.2}.memberProfileBody{padding:.5rem 1.25rem 1.5rem}.memberPointLabel{opacity:.9;margin:0 0 .25rem;font-size:.85rem}.memberPointValue{margin:0 0 1rem;font-size:1.7rem;font-weight:700}.memberSince,.memberId{opacity:.9;margin:0 0 .25rem;font-size:.85rem}.memberProfileFooter{letter-spacing:.05em;background:#00000040;padding:.75rem 1.25rem;font-size:.85rem;font-weight:600}.dashboardSidebarNav{background:#fff;border:1px solid #ebebeb;border-radius:8px;padding:1.5rem 0;box-shadow:0 2px 8px #00000005}.navSection{margin-bottom:1.5rem}.navSection:last-child{margin-bottom:0}.navSectionTitle{color:#333;letter-spacing:.05em;margin:0 1.5rem .75rem;font-size:.8rem;font-weight:700}.navList{margin:0;padding:0;list-style:none}.dashboardSidebarNav a{color:inherit;text-decoration:none;display:block}.navItem{color:#555;cursor:pointer;padding:.75rem 1.5rem;font-size:.95rem;transition:all .2s}.navItem:hover{color:#102a43;background:#fdfdfd}.navItem.isActive{color:var(--color-cyan,#00d2d3);border-left:3px solid var(--color-cyan,#00d2d3);background:#00d2d30d;font-weight:600}.dashboardIntro{justify-content:space-between;align-items:flex-end;gap:2rem;max-width:100%;margin-bottom:2.5rem;padding:0;display:flex}.dashboardIntroText{flex:1}.dashboardKicker{text-transform:uppercase;color:var(--color-cyan,#00d2d3);letter-spacing:.1em;margin:0 0 .5rem;font-size:.85rem;font-weight:700}.dashboardTitle{color:var(--color-ink,#162033);margin:0 0 .75rem;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:700;line-height:1.2}.dashboardCopy{color:#5f6f8c;max-width:650px;margin:0;font-size:1.1rem}.createNewBookingBtn{background:var(--color-ink,#162033);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:.85rem 1.75rem;font-size:1rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-block}.createNewBookingBtn:hover{background:var(--color-cyan,#00d2d3);box-shadow:0 8px 20px #00d2d333}.dashboardContentStack{flex-direction:column;gap:3rem;max-width:100%;padding:0;display:flex}.sectionHeader{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:baseline;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.sectionTitle{color:var(--color-ink,#162033);margin:0;font-size:1.4rem;font-weight:700}.sectionLink{color:var(--color-cyan,#00d2d3);font-size:.9rem;font-weight:600;text-decoration:none}.sectionLink:hover{text-decoration:underline}.nextStaySection{background:#fff;border:1px solid #ebebeb;border-radius:20px;padding:2rem;box-shadow:0 10px 30px #0000000a}.dashboardTopGrid{gap:2rem;display:grid}.dashboardBottomStack{flex-direction:column;align-items:stretch;gap:2.5rem;width:100%;display:flex}.dashboardWidgetRow{width:100%;min-width:0;display:block}.dashboardWidgetRow .dashboardCard{box-sizing:border-box;width:100%;min-width:0;max-width:none}.conciergeGroup{background:#fcfcfc;border:1px solid #f0f0f0;border-radius:24px;padding:2rem}.dashboardInlineLink{color:var(--color-cyan,#00d2d3);cursor:pointer;font-weight:700;font-size:inherit;background:0 0;border:none;margin-top:.5rem;padding:0;text-decoration:underline}.nextStayGrid{grid-template-columns:1fr;align-items:start;gap:1.5rem;display:grid;overflow:hidden}.nextStayMain{width:100%;overflow:hidden}.nextStaySidebar{flex-direction:column;gap:1.5rem;display:flex}.dashboardWidgetsRow{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.placeholderBox{color:#555;text-align:center;background:#f5f5f5cc;border:1px dashed #16203333;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex}.placeholderBtn{color:#555;cursor:not-allowed;background:#1620330d;border:1px dashed #16203333;border-radius:8px;width:100%;padding:.75rem;font-size:.9rem;font-weight:600}.fullWidthPlaceholder{grid-column:1/-1;min-height:150px}.placeholderLabel{text-transform:uppercase;letter-spacing:.08em;color:var(--color-cyan,#777);margin-bottom:.75rem;font-size:.75rem;font-weight:700}.dynamicData{color:#222;flex-direction:column;justify-content:center;align-items:center;width:100%;font-size:1.15rem;display:flex}.bookingsList{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scrollbar-width:auto;scrollbar-color:#64748b #e2e8f0;width:100%;padding:0 0 12px;overflow:auto hidden}.bookingsEmpty{text-align:center;color:#5f6f8c;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;margin:0;padding:3rem 2rem;font-size:1rem}.bookingsEmptyLink{background:var(--color-ink,#162033);color:#fff;border-radius:12px;margin-top:1.5rem;padding:.75rem 2rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-block}.bookingsEmptyLink:hover{background:var(--color-cyan,#00d2d3);transform:translateY(-2px);box-shadow:0 5px 15px #00d2d34d}.bookingsContainer{box-sizing:border-box;flex-flow:row;gap:1.5rem;width:max-content;min-width:100%;margin:0;display:flex}.bookingsList::-webkit-scrollbar{height:10px}.bookingsList::-webkit-scrollbar-track{background:#e2e8f0;border-radius:6px}.bookingsList::-webkit-scrollbar-thumb{background:#64748b;border-radius:6px}.bookingsList::-webkit-scrollbar-thumb:hover{background:#475569}.bookingCard{background:#fff;border:1px solid #f1f5f9;border-radius:20px;flex-direction:column;flex:0 0 320px;min-width:320px;padding:1.75rem;transition:all .3s;display:flex;box-shadow:0 4px 6px -1px #0000000d}.bookingCardHeader{border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.bookingTitle{color:var(--color-ink,#162033);margin:0 0 .25rem;font-size:1.15rem;font-weight:700}.bookingReference{color:#64748b;letter-spacing:.05em;margin:0;font-family:JetBrains Mono,monospace;font-size:.8rem}.bookingStatus{text-transform:uppercase;letter-spacing:.05em;border-radius:8px;padding:.35rem .75rem;font-size:.75rem;font-weight:700}.bookingStatus.isEditable{color:#059669;background:#ecfdf5}.bookingStatus.isLocked{color:#e11d48;background:#fff1f2}.bookingCardDetails{gap:.65rem;margin-bottom:1.5rem;display:grid}.bookingDetailRow{justify-content:space-between;align-items:baseline;font-size:.9rem;display:flex}.bookingDetailRow.isWarning{color:#e11d48;font-weight:600}.bookingLabel{color:#64748b;font-weight:500}.bookingValue{color:var(--color-ink,#162033);text-align:right;font-weight:600}.bookingEditMessage{color:#92400e;background:#fffbeb;border:1px solid #fef3c7;border-radius:12px;margin:0 0 1.25rem;padding:.85rem 1rem;font-size:.8rem;line-height:1.4}.bookingCardActions{gap:.75rem;margin-top:auto;display:flex}.bookingViewBtn{text-align:center;color:#475569;background:#f1f5f9;border-radius:12px;flex:1;padding:.85rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:all .2s}.bookingViewBtn:hover{color:#1e293b;background:#e2e8f0}.bookingEditBtn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:.85rem;font-family:inherit;font-size:.9rem;font-weight:700;transition:all .2s}.bookingEditBtn.isEnabled{background:var(--color-ink,#162033);color:#fff}.bookingEditBtn.isEnabled:hover{background:var(--color-cyan,#00d2d3);transform:scale(1.02)}.bookingEditBtn.isDisabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc;border:1px solid #f1f5f9}a{text-decoration:none}@media (width<=1024px){.nextStayGrid{grid-template-columns:repeat(2,1fr)}}@media (width<=1100px){.dashboardLayoutArea{gap:1.5rem;padding:0 1.5rem}.dashboardSidebar{width:240px}}@media (width<=992px){.dashboardMain{padding:1rem 0}.dashboardLayoutArea{flex-direction:column;padding:0 1.5rem}.dashboardSidebar{flex-direction:row;gap:1.5rem;width:100%;position:relative;top:0}.memberProfileCard{flex:1}.dashboardSidebarNav{flex-direction:row;flex:2;justify-content:space-around;padding:1rem 0;display:flex}.navSection{flex:1;margin-bottom:0}.navSectionTitle{margin:0 1.5rem .5rem}.dashboardBottomStack{gap:2rem}}@media (width<=768px){.dashboardIntro{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-bottom:2rem}.dashboardTitle{font-size:1.8rem}.dashboardSidebar{flex-direction:column}.dashboardSidebarNav{flex-direction:column;gap:1rem}.navSectionTitle{display:none}.navList{-webkit-overflow-scrolling:touch;gap:.5rem;padding:0 .5rem;display:flex;overflow-x:auto}.navItem{white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:99px;padding:.6rem 1.25rem}.navItem.isActive{border-color:var(--color-cyan,#00d2d3);background:var(--color-cyan,#00d2d3);color:#fff;border-left:none}.nextStayGrid,.dashboardWidgetsRow{grid-template-columns:1fr}.nextStaySection{padding:1.5rem}.sectionHeader{flex-direction:column;gap:.5rem}.createNewBookingBtn{text-align:center;width:100%}.bookingsContainer{flex:none;gap:1.25rem}.bookingCard{flex:0 0 280px;min-width:280px}.bookingCardHeader{flex-direction:column;gap:.5rem}.bookingStatus{align-self:flex-start}.bookingDetailRow{flex-direction:column;gap:.25rem}.bookingValue{text-align:left;margin-left:0}}.digitalConciergePanel{background:#fff;border-radius:18px;margin-top:18px;padding:24px;box-shadow:0 8px 24px #10264a14}.conciergeMapSection{margin-bottom:18px}.conciergeDirectionsBtn{background:var(--color-cyan,#00d2d3);color:#fff;border-radius:6px;margin-top:8px;padding:8px 16px;font-weight:500;text-decoration:none;transition:box-shadow .2s,transform .2s;display:inline-block}.conciergeDirectionsBtn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00d2d366}.conciergeContactInfo{margin-top:18px}.conciergeContactInfo ul{margin:0 0 8px;padding:0;list-style:none}.conciergeContactInfo li{margin-bottom:6px;font-size:15px}.conciergeSocialLinks h5{margin:10px 0 4px;font-size:15px}.conciergeSocialLinks ul{gap:12px;margin:0;padding:0;list-style:none;display:flex}.conciergeSocialLinks a{color:var(--color-cyan,#00d2d3);font-weight:500;text-decoration:none}.conciergeSocialLinks a:hover{text-decoration:underline}.conciergeCardWrapper{flex-direction:column;display:flex}.conciergeContactLocationRow{grid-template-columns:1fr 1.2fr;gap:1.25rem;width:100%;display:grid}.conciergeContactColumn,.conciergeLocationColumn{background:#f8fafc;border:1px solid #0f172a14;border-radius:16px;padding:1rem}.conciergeColumnTitle{color:#102a43;margin:0 0 .85rem;font-size:1rem;font-weight:700}.conciergeInfoItem{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.conciergeInfoItem:last-child{margin-bottom:0}.conciergeInfoLabel{color:#334155;font-size:.9rem;font-weight:600}.conciergeInfoLink{color:var(--color-cyan,#00d2d3);font-size:.92rem;font-weight:600;text-decoration:none}.conciergeInfoLink:hover{text-decoration:underline}.conciergeSocialLinks{flex-wrap:wrap;gap:.8rem;display:flex}.conciergeLocationText{color:#334155;margin:0 0 .75rem;font-size:.92rem;line-height:1.5}.conciergeMapFrameWrap{border:1px solid #0f172a1f;border-radius:12px;margin-top:.9rem;overflow:hidden}.conciergeMapFrame{border:0;width:100%;height:230px;display:block}@media (width<=900px){.conciergeContactLocationRow{grid-template-columns:1fr}}.dashboardCard{background:#fffffff5;border:1px solid #0f172a14;border-radius:24px;padding:24px;box-shadow:0 18px 40px #10264a0f}.dashboardCardHeader{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.dashboardKicker{color:#4f5d77;letter-spacing:.18em;text-transform:uppercase;font-size:12px;font-family:var(--font-body);margin:0 0 6px}.dashboardCardHeader h2{color:#102a43;margin:0;font-size:clamp(20px,2vw,26px);line-height:1.15}.dashboardStatValue{color:#0f172a;font-size:clamp(16px,4vw,26px);font-weight:700}.bookingOverviewList{gap:16px;display:grid}.bookingOverviewItem{background:#f8fafc;border:1px solid #0f172a0f;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.bookingOverviewPrimary{gap:6px;display:grid}.bookingPropertyName{color:#102a43;margin:0;font-size:15px;font-weight:600}.bookingDates{color:#5f6f8c;margin:0;font-size:13px}.bookingOverviewMeta{text-align:right;color:#334155;gap:8px;font-size:13px;display:grid}.dashboardCardFooter{justify-content:flex-end;margin-top:22px;display:flex}.dashboardWidgetAction{color:#5f6f8c;border-radius:12px;justify-content:center;align-items:center;padding:12px 20px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.dashboardCardsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.conciergeCardWrapper.is-expanded{grid-column:1/-1}.conciergeCard{color:inherit;cursor:pointer;text-align:left;background:#f8fafc;border:none;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px;text-decoration:none;transition:transform .16s,border-color .16s;display:flex}.conciergeCard:hover{border-color:#00d2d347;transform:translateY(-1px)}.conciergeCardLabel{color:#102a43;margin:0 0 6px;font-size:15px;font-weight:700}.conciergeCardDescription{color:#52607a;margin:0;font-size:13px;line-height:1.5}.conciergeCardAction{color:var(--color-cyan,#00d2d3);font-size:13px;font-weight:700}.conciergeCardDetails{background:#fff;border:1px solid #0f172a14;border-radius:20px;margin-top:16px;padding:32px;animation:.24s ease-out slideDown;box-shadow:0 12px 30px #10264a14}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.conciergeDetailsContent{gap:12px;display:grid}.conciergeDetailsContent p{color:#334155;align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.conciergeDetailsContent strong{color:#102a43;min-width:100px;font-weight:700}.conciergeDetailsContent a{color:var(--color-cyan,#00d2d3);font-weight:600;text-decoration:none;transition:color .2s}.conciergeDetailsContent a:hover{color:var(--color-cyan,#00d2d3);text-decoration:underline}.conciergeMenuContent .menuHeader{border-bottom:2px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:12px;display:flex}.conciergeMenuContent h3{color:#102a43;margin:0;font-size:22px;font-weight:800}.menuTabs{background:#f1f5f9;border-radius:12px;gap:8px;padding:4px;display:flex}.menuTabBtn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:700;transition:all .2s}.menuTabBtn.isActive{color:var(--color-cyan,#00d2d3);background:#fff;box-shadow:0 2px 8px #0000000f}.menuCategories{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.menuCategory h5{color:#64748b;text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:600;display:flex}.menuCategory h5:after{content:"";background:#e2e8f0;flex:1;height:1px}.menuItemsList{gap:16px;display:grid}.menuItem{background:#f8fafc;border:1px solid #0000;border-radius:12px;padding:12px;transition:all .2s}.menuItem:hover{background:#fff;border-color:#e2e8f0;transform:translate(4px);box-shadow:0 4px 12px #00000008}.menuItemMain{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.menuItemName{color:#1e293b;font-size:15px;font-weight:700}.menuItemPrice{color:#059669;white-space:nowrap;font-size:14px;font-weight:600}.menuItemDesc{color:#64748b;margin:0;font-size:13px;line-height:1.5}.emptyWidgetState{text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:3rem 1.5rem;font-size:.95rem}@media (width<=860px){.dashboardCardsGrid{grid-template-columns:1fr}}.accountStatusCard{background:#fff;border:1px solid #ebebeb;border-radius:24px;padding:2rem;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000000a}.accountStatusCard.hasBalance{border-left:6px solid #ff4757}.accountStatusCard.isSettled{border-left:6px solid var(--color-cyan,#00d2d3)}.statusContent{z-index:2;justify-content:space-between;align-items:center;gap:2rem;width:100%;display:flex;position:relative}.statusTextGroup{flex:1}.statusLabel{text-transform:uppercase;letter-spacing:.12em;color:#8fa0ba;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.statusValue{color:var(--color-ink,#162033);margin:0 0 .5rem;font-size:1.8rem;font-weight:700}.statusSubtext{color:#5f6f8c;max-width:450px;margin:0;font-size:1rem;line-height:1.5}.statusActionArea{background:#f8fafc;border:1px solid #f0f4f8;border-radius:20px;align-items:center;gap:2.5rem;padding:1.5rem 2rem;display:flex}.balanceDisplay{flex-direction:column;display:flex}.balanceLabel{text-transform:uppercase;color:#8fa0ba;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.balanceValue{color:var(--color-ink,#162033);font-size:1.4rem;font-weight:700}.payNowBtn{background:var(--color-ink,#162033);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:.85rem 1.75rem;font-weight:700;transition:all .2s}.payNowBtn:hover{background:var(--color-cyan,#00d2d3);transform:translateY(-2px);box-shadow:0 5px 15px #00d2d34d}.statusDecoration{opacity:.03;pointer-events:none;position:absolute;top:-20px;right:-20px}.decorationCircle{border:40px solid var(--color-ink,#162033);border-radius:50%;width:150px;height:150px}@media (width<=1100px){.statusContent{flex-direction:column;align-items:flex-start}.statusActionArea{justify-content:space-between;width:100%}}@media (width<=600px){.statusActionArea{flex-direction:column;align-items:flex-start;gap:1.5rem}.payNowBtn{width:100%}}.customerHistoryPage{min-height:100vh}.customerHistoryMain{max-width:1240px;margin:0 auto;padding:1.5rem 1rem 3rem}.customerHistoryShell{background:#fff;border:1px solid #e5e7eb;border-radius:24px;overflow:hidden;box-shadow:0 24px 64px #0f172a14}.customerHistoryHero{background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;justify-content:space-between;gap:1.75rem;padding:2rem;display:flex}.customerHistoryTitleGroup{max-width:760px}.customerHistoryLabel{text-transform:uppercase;color:var(--color-cyan,#00d2d3);letter-spacing:.12em;margin:0 0 .75rem;font-size:.85rem;font-weight:700}.customerHistoryTitle{color:#0f172a;margin:0 0 .75rem;font-size:clamp(2rem,2.5vw,2.75rem);line-height:1.05}.customerHistoryDescription{color:#4b5563;margin:0;font-size:1rem;line-height:1.75}.customerHistoryTabs{flex-wrap:wrap;gap:.75rem;padding:1.25rem 2rem 1.5rem;display:flex}.customerHistoryTab{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #0000;border-radius:999px;padding:.95rem 1.25rem;transition:all .2s}.customerHistoryTab:hover{background:#e2e8f0}.customerHistoryTab.active{color:#fff;background:#0f172a;border-color:#0f172a}.customerHistoryToolbar{border-bottom:1px solid #e5e7eb;gap:1rem;padding:1.5rem 2rem 2rem;display:grid}.customerHistorySearch{display:block}.customerHistorySearchLabel{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.customerHistorySearch input{color:#0f172a;background:#fff;border:1px solid #d1d5db;border-radius:16px;width:100%;min-height:48px;padding:0 1rem;font-size:1rem}.customerHistoryFilters{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.customerHistoryFilter{gap:.5rem;display:grid}.customerHistoryFilter label{color:#4b5563;font-size:.9rem}.customerHistoryFilter select{color:#0f172a;background:#fff;border:1px solid #d1d5db;border-radius:16px;width:100%;min-height:48px;padding:0 1rem;font-size:1rem}.customerHistoryContent{padding:1.75rem 2rem 2rem}.customerHistoryStatus{color:#334155;margin-bottom:1.5rem;font-size:.98rem}.customerHistoryDebugPanel{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;margin-top:1.25rem;padding:1rem 1.25rem}.customerHistoryDebugPanel summary{cursor:pointer;color:#0f172a;margin-bottom:.75rem;font-weight:700}.customerHistoryDebugPanel pre{color:#0f172a;background:#fff;border-radius:14px;margin:0;padding:1rem;font-size:.92rem;overflow:auto}.customerHistoryResults{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem;margin-bottom:1rem;display:grid}.customerHistoryResultCard{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:.9rem}.customerHistoryResultTitle{color:#0f172a;margin:0;font-size:.98rem;font-weight:700}.customerHistoryResultMeta{color:#475569;margin:.35rem 0;font-size:.88rem}.customerHistoryResultLink{color:#0f172a;margin-top:.4rem;font-size:.86rem;font-weight:700;display:inline-block}.historyList{display:block}.historyListStack{gap:.85rem;display:grid}.historyNotice{color:#1e293b;background:#eef2ff;border:1px solid #c7d2fe;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding:1rem 1.25rem;display:flex}.historyNoticeText{margin:0;line-height:1.55}.historyNoticeDismiss{color:#0f172a;cursor:pointer;background:0 0;border:1px solid #0f172a;border-radius:999px;padding:.5rem .85rem}.historyNoticeDismiss:hover{background:#0f172a0f}.historyBookingRow,.historyReceiptRow{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:1rem 1.25rem;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:0 10px 24px #0f172a0f}.historyBookingRow:hover,.historyReceiptRow:hover{border-color:#cbd5e1;box-shadow:0 14px 34px #0f172a14}.historyRowMain{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.historyRowTitleGroup{min-width:0}.historyRowTitle{color:#0f172a;margin:0 0 .25rem;font-weight:700}.historyRowSubtle{color:#475569;margin:0;line-height:1.4}.historyRowMeta{font-size:.95rem}.historyStatusPill{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:.15rem .6rem;font-size:.85rem;font-weight:600;display:inline-flex}.historyStatusPill.completed,.historyStatusPill.paid{color:#166534;background:#f0fdf4;border-color:#86efac}.historyStatusPill.upcoming{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.historyStatusPill.cancelled{color:#991b1b;background:#fef2f2;border-color:#fecaca}.historyStatusPill.refunded{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.historyRowAside{flex-shrink:0;justify-items:end;gap:.5rem;display:grid}.historyRowAmount{color:#0f172a;margin:0;font-weight:700}.historyRowAction{color:#fff;cursor:pointer;background:#0f172a;border:1px solid #0f172a;border-radius:999px;padding:.6rem .95rem;transition:transform .15s,background .15s}.historyRowAction:hover{background:#1f2937}.historyRowAction:active{transform:translateY(1px)}.historyEmptyState{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:1.5rem}.historyEmptyTitle{color:#0f172a;margin:0 0 .35rem;font-weight:700}.historyEmptyText{color:#475569;margin:0}.historyListSkeleton{gap:.85rem;display:grid}.historySkeletonRow{background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 40%,#f1f5f9 80%) 0 0/200% 100%;border:1px solid #e5e7eb;border-radius:18px;height:86px;animation:1.2s ease-in-out infinite historySkeletonPulse}@keyframes historySkeletonPulse{0%{background-position:0 0}to{background-position:-200% 0}}@media (width<=680px){.historyRowMain{flex-direction:column;align-items:stretch}.historyRowAside{justify-items:start}.historyNotice{flex-direction:column;align-items:stretch}}.customerProfileShell{background:#fff;border:1px solid #e5e7eb;border-radius:24px;overflow:hidden;box-shadow:0 24px 64px #0f172a14}.customerProfileHero{background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;justify-content:space-between;gap:1.75rem;padding:2rem;display:flex}.customerProfileKicker{text-transform:uppercase;color:var(--color-cyan,#00d2d3);letter-spacing:.12em;margin:0 0 .75rem;font-size:.85rem;font-weight:700}.customerProfileHero h1{color:var(--color-ink,#162033);margin:0 0 .75rem;font-size:clamp(2rem,2.5vw,2.75rem);font-weight:700;line-height:1.05}.customerProfileDescription{color:#4b5563;max-width:760px;margin:0;font-size:1rem;line-height:1.75}.customerProfileGrid{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;padding:2rem;display:grid}.customerProfileCard{background:#fff;border:1px solid #f1f5f9;border-radius:20px;padding:1.75rem;box-shadow:0 10px 30px #00000008}.cardHeader{margin-bottom:1.5rem}.cardTitle{color:var(--color-ink,#162033);margin:0 0 .25rem;font-size:1.2rem;font-weight:700}.cardDescription{color:#64748b;margin:0;font-size:.9rem}.customerProfileForm{gap:1.25rem;display:grid}.formField{flex-direction:column;gap:.4rem;display:flex}.formField label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.customerProfileForm input:not([type=checkbox]),.customerProfileForm textarea{color:var(--color-ink,#162033);box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;width:100%;padding:.75rem .9rem;font-size:.95rem;transition:all .2s}.customerProfileForm input:focus,.customerProfileForm textarea:focus{border-color:var(--color-cyan,#00d2d3);background:#fff;outline:none;box-shadow:0 0 0 4px #00d2d31a}.customerProfileForm input[type=checkbox]{width:auto;margin:0}.profileCheckboxLabel{text-transform:none;letter-spacing:0;color:#334155;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:inline-flex}.formActions{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.saveProfileBtn{background:var(--color-ink,#162033);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.85rem;font-size:.95rem;font-weight:700;transition:all .2s}.saveProfileBtn:hover{background:var(--color-cyan,#00d2d3);transform:translateY(-2px);box-shadow:0 8px 20px #00d2d333}.saveProfileBtn.secondary{color:#475569;background:#f1f5f9}.saveProfileBtn.secondary:hover{color:var(--color-ink,#162033);background:#e2e8f0}.customerProfileNotice{border-radius:8px;margin:0;padding:.75rem .9rem;font-size:.8rem;font-weight:600}.customerProfileNotice.success{color:#166534;background:#f0fdf4;border:1px solid #dcfce7}.customerProfileNotice.error{color:#991b1b;background:#fef2f2;border:1px solid #fee2e2}@media (width<=1100px){.customerProfileGrid{grid-template-columns:1fr}}@media (width<=768px){.customerProfileHero{padding:1.5rem}.customerProfileGrid{gap:1.5rem;padding:1.5rem}.customerProfileCard{padding:1.25rem}}.customerDetailPage{background:var(--color-sand-soft,#f8f6ed);min-height:100vh}.customerDetailMain{max-width:1240px;margin:0 auto;padding:1.5rem 1rem 3rem}.customerDetailCard{background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:2rem;box-shadow:0 24px 64px #0f172a14}.customerDetailKicker{color:#334155;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .5rem;font-size:.82rem}.customerDetailTitle{color:#0f172a;margin:0;font-size:clamp(1.8rem,2.7vw,2.35rem);line-height:1.1}.customerDetailDescription{color:#475569;margin:.85rem 0 1.75rem;line-height:1.7}.customerDetailGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.customerDetailGrid.singleColumn{grid-template-columns:1fr}.customerDetailPanel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:1rem 1rem 1.15rem}.customerDetailPanel h2{color:#0f172a;margin:0 0 .9rem;font-size:1.03rem}.customerDetailRow{border-bottom:1px dashed #dbe2ea;justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0;display:flex}.customerDetailRow:last-child{border-bottom:0}.customerDetailRow span{color:#475569;font-size:.92rem}.customerDetailRow strong{color:#0f172a;text-align:right}.customerDetailRow.emphasis{border-top:1px solid #cbd5e1;border-bottom:0;margin-top:.35rem;padding-top:.85rem}.customerDetailBadge{color:#1e3a8a;text-transform:capitalize;background:#dbeafe;border-radius:999px;padding:.22rem .65rem;font-size:.8rem}.customerDetailStackedRow{border-top:1px dashed #dbe2ea;margin-top:.75rem;padding-top:.65rem}.customerDetailStackedRow>span{color:#475569;margin-bottom:.4rem;font-size:.92rem;display:block}.customerDetailStackedRow ul,.customerDetailStackedRow p{color:#0f172a;margin:0;padding-left:1rem}.customerDetailActions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.customerDetailBtn{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:.7rem 1.05rem;font-weight:600;text-decoration:none}.customerDetailBtn.isPrimary{color:#fff;background:#0f172a;border-color:#0f172a}.customerReceiptTable{border:1px solid #d7e1eb;border-radius:12px;overflow:hidden}.customerReceiptTableHeader,.customerReceiptTableRow{grid-template-columns:2fr .6fr 1fr 1fr;align-items:center;gap:.75rem;padding:.7rem .9rem;display:grid}.customerReceiptTableHeader{color:#0f172a;background:#e2e8f0;font-weight:700}.customerReceiptTableRow{color:#1e293b;background:#fff;border-top:1px solid #edf2f7}.customerReceiptTableRow span:nth-child(n+2){text-align:right}.customerReceiptTotals{margin-top:1rem}@media (width<=900px){.customerDetailGrid{grid-template-columns:1fr}}@media (width<=640px){.customerDetailCard{padding:1.35rem}.customerReceiptTableHeader,.customerReceiptTableRow{grid-template-columns:1.7fr .55fr 1fr 1fr;font-size:.85rem}}.contentPage{background:#f8fafc;min-height:100vh}.contentPageMain{max-width:1200px;margin:0 auto;padding:1.5rem 1rem 3rem}.contentPageShell{background:#fff;border:1px solid #e5e7eb;border-radius:24px;gap:1.25rem;display:grid;overflow:hidden;box-shadow:0 24px 64px #0f172a14}.contentPageHero{background:radial-gradient(circle at 100% 0,#0ea5e914,#0000 36%),#f8fafc;border-bottom:1px solid #e5e7eb;gap:1rem;padding:2rem;display:grid}.contentPageKicker{color:#334155;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.82rem}.contentPageTitle{color:#0f172a;margin:0;font-size:clamp(2rem,3vw,2.8rem);line-height:1.08}.contentPageDescription{color:#475569;max-width:760px;margin:0;line-height:1.75}.contentPageBadgeRow{flex-wrap:wrap;gap:.7rem;display:flex}.contentPageBadge{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:.45rem .8rem;font-size:.9rem;font-weight:600;display:inline-flex}.contentPageBody{gap:1rem;padding:0 2rem 2rem;display:grid}.contentPanelCopy{color:#475569;margin:.45rem 0 0;line-height:1.6}.contentSectionGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.contentInfoCard{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:1.1rem 1.15rem}.contentInfoCard h3{color:#0f172a;margin:0 0 .65rem;font-size:1.05rem}.contentInfoCard ul{color:#475569;margin:0;padding-left:1.1rem;line-height:1.7}.contentInfoCard li+li{margin-top:.45rem}.accordionList{display:grid}.accordionItem+.accordionItem{border-top:1px solid #e2e8f0}.accordionButton{color:#0f172a;text-align:left;cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 1.15rem;display:flex}.accordionButton:hover{background:#f8fafc}.accordionButtonTitle{margin:0;font-size:1rem;font-weight:700;line-height:1.45}.accordionIcon{color:#0f172a;background:#e2e8f0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.1rem;font-weight:700;display:inline-flex}.accordionItem.isOpen .accordionIcon{color:#fff;background:#0f172a}.accordionPanel{color:#475569;background:#fff;padding:0 1.15rem 1rem;line-height:1.7}@media (width<=760px){.contentPageBody{padding:0 1rem 1rem}.contentPageHero{padding:1.35rem}.contentSectionGrid{grid-template-columns:1fr}}.payment-page{background:#f6f7f3;min-height:100vh;padding:2rem 1rem 3rem}.payment-page .container{max-width:1020px;margin:0 auto}.back-btn{border:1px solid var(--color-border-soft);color:var(--color-ink);font-weight:600;font-family:var(--font-body);cursor:pointer;background:#ffffffdb;border-radius:999px;padding:.55rem 1rem;transition:all .2s}.back-btn:hover{border-color:rgba(var(--color-cyan-rgb), .45);box-shadow:0 10px 20px rgba(var(--color-cyan-rgb), .16);transform:translateY(-1px)}.payment-page h1{font-family:var(--font-display);letter-spacing:.4px;color:#13263e;margin:1rem 0 1.4rem;font-size:clamp(2rem,4vw,2.8rem)}.success-banner{border:1px solid rgba(var(--color-cyan-rgb), .35);background:rgba(var(--color-cyan-rgb), .1);border-radius:18px;margin-top:.75rem;margin-bottom:1rem;padding:1.15rem 1.25rem}.success-banner h1{margin:0;font-size:clamp(1.55rem,3vw,2rem)}.success-banner p{color:var(--color-ink-soft);margin:.4rem 0 0}.booking-summary,.payment-form,.empty-state{background:#ffffffe6;border:1px solid #1620331a;border-radius:20px;padding:1.25rem;box-shadow:0 18px 44px #16203314}.booking-summary{margin-bottom:1rem}.booking-summary h2,.payment-form h2,.empty-state h1{color:var(--color-ink);font-family:var(--font-display);margin:0 0 1.25rem;font-size:clamp(1.35rem,2.2vw,1.8rem)}.summary-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1.25rem;margin-top:.9rem;display:grid}.summary-details p{color:var(--color-ink-soft);margin:0;font-size:.95rem}.summary-details strong{color:#102841}.cost-breakdown{border-top:1px dashed #1620332e;margin-top:1rem;padding-top:.85rem}.cost-breakdown h3{color:#193551;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .55rem;font-size:1rem}.cost-item{color:#334e68;border-bottom:1px dashed #1620331a;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.45rem 0;display:flex}.cost-item:last-child{border-bottom:0}.cost-item.total{color:#0f2740;border-top:1px solid #16203338;margin-top:.25rem;padding-top:.7rem}.payment-form,.form-group{margin-top:1rem}.form-group label{letter-spacing:.08em;text-transform:uppercase;color:#3a5876;margin-bottom:.45rem;font-size:.85rem;font-weight:700;display:block}.form-group select{box-sizing:border-box;width:100%;font-family:var(--font-body);color:#11263d;background:#fff;border:1px solid #16203338;border-radius:12px;padding:.68rem .8rem}.form-group select:focus{border-color:var(--color-cyan);box-shadow:0 0 0 4px rgba(var(--color-cyan-rgb), .14);outline:none}.paymentTypeOptions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.paymentTypeOptions label{text-transform:none;letter-spacing:0;color:#14314d;background:#fff;border:1px solid #16203333;border-radius:12px;align-items:center;gap:.55rem;margin:0;padding:.7rem .75rem;font-size:.95rem;font-weight:600;display:flex}.payment-preview{border:1px solid rgba(var(--color-cyan-rgb), .25);background:rgba(var(--color-cyan-rgb), .08);border-radius:14px;margin-top:1rem;padding:.7rem .85rem}.payment-preview p{color:#123451;margin:.25rem 0}.payment-error{color:#991b1b;background:#fef2f2;border:1px solid #ef4444;border-radius:10px;margin-top:.75rem;margin-bottom:0;padding:.55rem .65rem;font-size:.9rem}.confirm-payment-btn,.primary-btn,.secondary-btn{font-family:var(--font-body);cursor:pointer;border:1px solid #0000;border-radius:12px;font-weight:700;transition:all .2s}.confirm-payment-btn,.primary-btn{color:#fff;background:#11263d;margin-top:1rem;padding:.82rem 1.1rem}.confirm-payment-btn:hover,.primary-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px #11263d4d}.confirm-payment-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.payment-actions{flex-wrap:wrap;gap:.65rem;margin-top:1.1rem;display:flex}.secondary-btn{color:#13263e;background:#fffffff2;border-color:#16203347;margin-top:1rem;padding:.82rem 1.1rem}.secondary-btn:hover{border-color:rgba(var(--color-cyan-rgb), .5);box-shadow:0 10px 20px rgba(var(--color-cyan-rgb), .14)}.empty-state{text-align:left;margin-top:1.15rem}.empty-state p{color:var(--color-ink-soft);margin-top:.55rem}.booking-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.95rem;display:grid}.booking-card{cursor:pointer;background:#fffffff0;border:1px solid #1620332b;border-radius:16px;padding:.95rem;transition:transform .2s,box-shadow .2s,border-color .2s}.booking-card:hover{border-color:rgba(var(--color-cyan-rgb), .5);transform:translateY(-2px);box-shadow:0 16px 26px #1620331f}.booking-card h3{color:#122a44;margin:0 0 .4rem;font-size:1.02rem}.booking-card p{color:#3c5269;margin:.24rem 0;font-size:.93rem}.card-details-fields{border-top:1px dashed #16203326;flex-direction:column;gap:.85rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.card-details-fields .form-group{margin-top:0}.card-row{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.card-details-fields input{box-sizing:border-box;width:100%;font-family:var(--font-body);color:#11263d;background:#fff;border:1px solid #16203338;border-radius:12px;padding:.75rem .85rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.card-details-fields input:focus{border-color:var(--color-cyan);box-shadow:0 0 0 3px rgba(var(--color-cyan-rgb), .1);outline:none}.card-details-fields input.input-error{background:#fffcfc;border-color:#ef4444}.card-details-fields input.input-error:focus{box-shadow:0 0 0 3px #ef44441a}.error-text{color:#dc2626;margin-top:.35rem;font-size:.78rem;font-weight:500;display:block}.qr-code-container{background:#fff;border:1px solid #1620331a;border-radius:18px;flex-direction:column;align-items:center;gap:1rem;margin-top:1.25rem;padding:1.5rem;display:flex}.qr-code-img{border-radius:12px;width:100%;max-width:240px;height:auto;box-shadow:0 10px 25px #0000000f}.qr-code-container p{color:#475569;text-align:center;max-width:240px;margin:0;font-size:.88rem;line-height:1.5}@media (width<=860px){.summary-details,.paymentTypeOptions,.booking-selection-grid,.card-row{grid-template-columns:1fr}.payment-page{padding-top:1.2rem}}@media (width<=560px){.payment-page{padding-inline:.7rem}.booking-summary,.payment-form,.empty-state{border-radius:16px;padding:1rem}.payment-page h1{margin-bottom:1rem;font-size:1.85rem}}
