@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Manrope:wght@400;500;600;700&display=swap");:root{--navy:#1a1a5e;--navy-deep:#121245;--navy-light:#2a2a7a;--white:#ffffff;--off-white:#f8f8f6;--cream:#f0efe9;--text-muted:rgba(255,255,255,0.75);--text-body:#3a3a5c;--line:#e0dfd8;--danger:#bf3e48;--success:#1b7852}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Segoe UI,sans-serif;color:var(--navy);background:var(--white)}.reveal{animation:reveal-up .7s ease both}@keyframes reveal-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.page{width:100%;margin:0;padding:0}.topBar{position:absolute;top:0;left:0;right:0;z-index:10;justify-content:space-between;padding:1.5rem 3rem}.navLinks,.topBar{display:flex;align-items:center}.navLinks{gap:2rem}.navLink{text-decoration:none;color:rgba(255,255,255,.85);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;transition:color .15s ease}.navLink:hover{color:var(--white)}.brandWordmark{position:absolute;left:50%;transform:translateX(-50%);text-decoration:none;display:flex;align-items:center}.brandLogo{height:46px}.brandLogo,.footerLogo{width:auto;display:block}.footerLogo{height:69px;margin:0 auto}.brandSubtext{display:none}.topBarActions{display:flex;align-items:center;gap:.8rem}.welcomeName{color:rgba(255,255,255,.85);font-size:.72rem;letter-spacing:.08em;font-weight:600;white-space:nowrap}.profileIconButton{width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.5);display:grid;place-items:center;color:var(--white);background:transparent;transition:all .14s ease;text-decoration:none}.profileIconButton svg{width:1.15rem;height:1.15rem;fill:currentColor}.profileIconButton:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.8)}.topAction{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid rgba(255,255,255,.6);border-radius:999px;height:2.5rem;padding:0 1.4rem;color:var(--white);background:transparent;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:all .16s ease}.topAction:hover{background:rgba(255,255,255,.15);border-color:var(--white)}.hero{width:100%;min-height:calc(100vh - 150px);display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(180deg,rgba(10,10,50,.35),rgba(10,10,50,.15) 40%,rgba(10,10,50,.4)),url(https://images.unsplash.com/photo-1506929562872-bb421503ef21?auto=format&fit=crop&w=2000&q=80) 50% /cover no-repeat;color:var(--white)}.hero,.heroBody{position:relative}.heroBody{z-index:2;text-align:center;max-width:900px;padding:2rem}.eyebrow,.heroLogo{display:none}.hero h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(3rem,7vw,5.5rem);line-height:1.05;letter-spacing:.01em}.hero h1 em{font-style:italic}.subtitle{margin:1.5rem auto 0;max-width:55ch;line-height:1.75;font-size:1.05rem;color:rgba(255,255,255,.88)}.heroCaption,.heroGallery{display:none}.featureSection{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.featureContent{background:var(--navy);color:var(--white);display:flex;flex-direction:column;justify-content:center;padding:4rem 5rem}.featureContent h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.08}.featureContent h2 em{font-style:italic}.featureContent p{margin:1.5rem 0 0;max-width:50ch;line-height:1.8;color:rgba(255,255,255,.78);font-size:.95rem}.featureButton{display:inline-flex;align-items:center;justify-content:center;margin-top:2rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;height:3rem;padding:0 2rem;color:var(--white);background:transparent;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:all .16s ease;width:-moz-fit-content;width:fit-content;text-decoration:none}.featureButton:hover{background:rgba(255,255,255,.1);border-color:var(--white)}.featureImage{background-size:cover;background-position:50%;min-height:400px}.searchPanel{background:var(--off-white);padding:4rem 3rem}.searchHeading{text-align:center;margin-bottom:2rem}.searchHeading h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2rem,3.5vw,3rem);color:var(--navy)}.searchHeading h2 em{font-style:italic}.searchForm{max-width:1100px;margin:0 auto;border-radius:1rem;background:var(--white);border:1px solid var(--line);box-shadow:0 4px 24px rgba(26,26,94,.06);display:grid;grid-template-columns:2.4fr 1fr 1fr .55fr .7fr .55fr;grid-gap:.8rem;gap:.8rem;padding:1.4rem}.field{display:flex;flex-direction:column;gap:.35rem}.fieldWide{grid-column:span 1;position:relative}.field label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:700;opacity:.6}.field input{width:100%;min-height:2.9rem;border-radius:.5rem;border:1px solid var(--line);background:var(--white);color:var(--navy);font-size:.95rem;padding:.55rem .85rem;font-family:Manrope,sans-serif}.field input:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.autocompleteDropdown{position:absolute;top:100%;left:0;right:0;z-index:50;margin:.25rem 0 0;padding:.3rem 0;list-style:none;background:var(--white);border:1px solid var(--line);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.12);max-height:15rem;overflow-y:auto}.autocompleteDropdown li button{display:flex;align-items:center;gap:.55rem;width:100%;padding:.6rem .85rem;border:none;background:none;text-align:left;font-size:.9rem;font-family:Manrope,sans-serif;color:var(--navy);cursor:pointer;transition:background .1s ease}.suggestionIcon{flex-shrink:0;width:1.1rem;height:1.1rem;display:flex;align-items:center;justify-content:center}.suggestionIcon svg{width:100%;height:100%;color:var(--navy-light)}.autocompleteDropdown li button:hover{background:var(--cream)}.searchButton{grid-column:1/-1;justify-self:center;align-self:end;min-height:2.9rem;padding:0 3rem;border-radius:999px;border:1.5px solid var(--navy);background:var(--navy);color:var(--white);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.searchButton:not(:disabled):hover{background:var(--navy-deep);border-color:var(--navy-deep)}.searchButton:disabled{opacity:.5;cursor:not-allowed}.amenitiesFilterButton{align-self:end;min-height:2.9rem;border-radius:999px;border:1.5px solid var(--line);background:var(--white);color:var(--navy);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:0 1rem;font-family:Manrope,sans-serif}.amenitiesFilterButton:hover{border-color:var(--navy);background:var(--off-white)}.amenitiesFilterIcon{width:1rem;height:1rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.amenitiesModal{max-width:640px;width:92vw}.amenitiesGrid{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;max-height:50vh;overflow-y:auto;padding:.25rem 0}.amenityChip{display:inline-flex;align-items:center;padding:.5rem 1.1rem;border:1.5px solid var(--line);border-radius:999px;background:var(--white);font-size:.82rem;font-weight:500;color:var(--navy);cursor:pointer;transition:all .15s ease;font-family:Manrope,sans-serif}.amenityChip:hover{border-color:var(--navy-light);background:var(--off-white)}.amenityChipActive{border-color:var(--navy);background:var(--navy);color:var(--white)}.amenityChipActive:hover{background:var(--navy-deep);border-color:var(--navy-deep)}.amenitiesActions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--line)}.amenitiesClearButton{min-height:2.5rem;border-radius:999px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:0 1.5rem;cursor:pointer;font-family:Manrope,sans-serif;transition:all .15s ease}.amenitiesClearButton:hover{background:var(--navy);color:var(--white)}.datePickerField{position:relative}.datePickerTrigger{display:flex;align-items:center;gap:.6rem;width:100%;min-height:2.9rem;border-radius:.5rem;border:1px solid var(--line);background:var(--white);color:var(--navy);font-size:.95rem;padding:.55rem .85rem;font-family:Manrope,sans-serif;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;text-align:left}.datePickerTrigger:focus,.datePickerTrigger:hover{border-color:var(--navy-light)}.datePickerTrigger:focus{outline:none;box-shadow:0 0 0 3px rgba(26,26,94,.1)}.datePickerIcon{display:flex;align-items:center;flex-shrink:0}.datePickerIcon svg{width:1.1rem;height:1.1rem;fill:none;stroke:var(--navy);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.45}.datePickerDropdown{position:absolute;top:calc(100% + .35rem);left:0;z-index:60;width:280px;background:var(--white);border:1px solid var(--line);border-radius:.75rem;box-shadow:0 12px 40px rgba(26,26,94,.14);padding:1rem;animation:dpFadeIn .18s ease}@keyframes dpFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.datePickerHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.datePickerMonthYear{font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--navy);letter-spacing:.02em}.datePickerNav{width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--navy);font-size:1.3rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:all .14s ease}.datePickerNav:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.datePickerDayNames{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.3rem}.datePickerDayNames span{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);opacity:.4;padding:.25rem 0}.datePickerGrid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px}.datePickerEmpty{aspect-ratio:1}.datePickerDay{aspect-ratio:1;border:none;border-radius:50%;background:transparent;color:var(--navy);font-size:.82rem;font-weight:500;font-family:Manrope,sans-serif;cursor:pointer;transition:all .12s ease;display:grid;place-items:center}.datePickerDay:hover:not(:disabled){background:var(--cream)}.datePickerDay.dpSelected{background:var(--navy);color:var(--white);font-weight:700}.datePickerDay.dpSelected:hover{background:var(--navy-deep)}.datePickerDay.dpToday{border:1.5px solid var(--navy-light);font-weight:700}.datePickerDay.dpDisabled{color:var(--navy);opacity:.2;cursor:not-allowed}.datePickerDay.dpInRange{background:rgba(26,26,94,.08);border-radius:0}.datePickerDay.dpRangeStart{border-radius:50% 0 0 50%}.datePickerDay.dpRangeEnd,.datePickerDay.dpRangeStart{background:var(--navy);color:var(--white);font-weight:700}.datePickerDay.dpRangeEnd{border-radius:0 50% 50% 0}.datePickerDay.dpRangeStart.dpSelected{border-radius:50% 0 0 50%}.datePickerDay.dpRangeEnd.dpSelected{border-radius:0 50% 50% 0}.dpDark{position:relative}.dpDark>label{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.5);font-family:Manrope,system-ui,sans-serif;margin-bottom:.25rem;display:block}.dpDark .datePickerTrigger{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:var(--white);min-height:2.2rem;padding:.3rem .65rem;font-size:.88rem;font-weight:600;gap:.45rem;border-radius:.4rem}.dpDark .datePickerTrigger:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35)}.dpDark .datePickerTrigger:focus{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.14);box-shadow:none}.dpDark .datePickerIcon svg{stroke:var(--white);opacity:.55;width:.95rem;height:.95rem}.dpDark .datePickerDropdown{top:calc(100% + .5rem)}.results{padding:3rem 3rem 5rem;max-width:1200px;margin:0 auto}.resultsHeading{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem}.resultsHeading h2{margin:0;color:var(--navy);font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2rem,3.2vw,2.8rem)}.resultsHeading p{margin:0;color:var(--text-body);font-size:.9rem}.paginationBar{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1.2rem 0}.paginationButton{padding:.6rem 1.6rem;border:1px solid var(--gold);border-radius:.5rem;background:transparent;color:var(--gold);font-family:var(--font-body);font-size:.9rem;font-weight:500;letter-spacing:.03em;cursor:pointer;transition:background .2s ease,color .2s ease}.paginationButton:hover:not(:disabled){background:var(--gold);color:var(--white)}.paginationButton:disabled{opacity:.35;cursor:default}.paginationInfo{font-family:var(--font-body);font-size:.9rem;color:var(--muted);letter-spacing:.02em}.resultsGrid{display:grid;grid-gap:1.5rem;gap:1.5rem}.resultCard{display:grid;grid-template-columns:300px 1fr;grid-gap:1.5rem;gap:1.5rem;border-radius:.75rem;border:1px solid var(--line);background:var(--white);box-shadow:0 2px 12px rgba(26,26,94,.05);padding:1.2rem;transition:box-shadow .2s ease}.resultCard:hover{box-shadow:0 8px 32px rgba(26,26,94,.1)}.resultVisual{border-radius:.5rem;min-height:220px;background-size:cover;background-position:50%}.resultCarousel{position:relative;overflow:hidden}.resultCarouselArrow{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:none;background:rgba(255,255,255,.85);color:var(--navy);font-size:1.3rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:2}.resultCarousel:hover .resultCarouselArrow{opacity:1}.resultCarouselArrow:hover{background:var(--white);box-shadow:0 4px 16px rgba(0,0,0,.2)}.resultCarouselArrowLeft{left:8px}.resultCarouselArrowRight{right:8px}.resultCarouselDots{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:2}.resultCarouselDot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.5);transition:background .2s ease}.resultCarouselDot.active{background:var(--white)}.resultHead{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.resultCard h3{margin:0;color:var(--navy);font-family:Cormorant Garamond,Georgia,serif;font-size:1.65rem;font-weight:500;line-height:1.1}.hotelAddress{margin:.3rem 0 0;color:#7a7a7a;font-size:.82rem;font-style:italic;line-height:1.3}.ratingLine,.roomLine{margin:.4rem 0 0;color:var(--text-body);font-size:.88rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.wagnerFavoriteBadge{display:inline-flex;align-items:center;gap:.35rem;margin-top:.45rem;padding:.25rem .7rem .25rem .5rem;background:linear-gradient(135deg,#d4af37,#f5d76e 50%,#d4af37);color:var(--navy-deep);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;box-shadow:0 2px 8px rgba(212,175,55,.35)}.favBadgeIcon{width:14px;height:14px;fill:var(--navy-deep);flex-shrink:0}.resultActions{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.bookButton{display:inline-flex;align-items:center;justify-content:center;min-width:130px;height:2.6rem;border-radius:999px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all .15s ease}.bookButton:hover{background:var(--navy);color:var(--white)}.priceLine{margin:0;color:var(--navy);font-family:Cormorant Garamond,Georgia,serif}.priceLabel{font-size:.75rem;font-weight:500;font-family:Manrope,sans-serif;text-transform:uppercase;letter-spacing:.06em;opacity:.6;display:block}.priceAmount{font-size:1.35rem;font-weight:700;display:block}.priceSuffix{font-size:.7rem;font-weight:500;font-family:Manrope,sans-serif;opacity:.5;display:block}.benefitsBox{grid-column:1/-1;margin-top:.6rem;border-radius:.5rem;border:1px solid var(--line);background:var(--off-white);padding:1rem 1.2rem}.benefitsTitle{margin:0;color:var(--navy);font-weight:700;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}.benefitsSnippetList{display:grid;grid-gap:.5rem;gap:.5rem;margin-top:.65rem}.benefitSnippetItem{display:flex;gap:.7rem;align-items:flex-start;padding:.2rem 0}.benefitIcon{width:2rem;height:2rem;border-radius:999px;display:grid;place-items:center;color:var(--navy);background:var(--white);border:1px solid var(--line);flex-shrink:0}.benefitIcon svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.benefitIcon.large{width:2.3rem;height:2.3rem}.benefitName{margin:0;color:var(--navy);font-weight:700;font-size:.92rem}.benefitPreview{margin:.1rem 0 0;color:var(--text-body);font-size:.85rem;line-height:1.45}.benefitsButton{margin-top:.8rem;min-height:2.2rem;border-radius:999px;border:1px solid var(--navy);background:transparent;color:var(--navy);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:0 1rem;cursor:pointer;transition:all .15s ease}.benefitsButton:hover{background:var(--navy);color:var(--white)}.modalOverlay{position:fixed;inset:0;background:rgba(10,10,50,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:55;padding:1rem}.modalCard{width:min(900px,96vw);max-height:84vh;overflow:auto;background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:2rem 2rem 1.5rem;box-shadow:0 24px 48px rgba(10,10,50,.25);position:relative}.modalCloseX{position:absolute;top:.8rem;right:.8rem;width:2.2rem;height:2.2rem;border:0;border-radius:999px;background:transparent;color:var(--text-body);font-size:1.8rem;line-height:1;cursor:pointer}.modalCloseX:hover{color:var(--navy);background:var(--off-white)}.modalCard h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.4rem;font-weight:500;color:var(--navy)}.modalLead{margin:.6rem 0 0;color:var(--text-body);max-width:60ch;line-height:1.6}.modalBenefitsList{margin-top:1.2rem;display:grid;grid-gap:.75rem;gap:.75rem}.modalBenefitItem{border:1px solid var(--line);border-radius:.5rem;padding:.75rem 1rem;background:var(--off-white)}.modalBenefitHeader{display:flex;align-items:center;gap:.65rem}.modalBenefitHeader h4{margin:0;color:var(--navy);font-size:1.8rem;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;line-height:1}.benefitsList{margin:.5rem 0 0;color:var(--text-body);line-height:1.5;padding-left:1.2rem}.benefitsList li{margin:.2rem 0}.closeModalButton{margin-top:1rem;min-height:2.5rem;border-radius:999px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:0 1.5rem;cursor:pointer;transition:all .15s ease}.closeModalButton:hover{background:var(--navy);color:var(--white)}.loadingSpinner{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 0}.loadingSpinner p{margin:0;color:var(--text-body);font-size:.95rem}.spinner{width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--navy);border-radius:50%;animation:spin .8s linear infinite}.emptyState{color:var(--text-body);font-size:.95rem}.emptyState,.error{margin:.5rem 0 0;text-align:center}.error{color:var(--danger);font-weight:700}.successMessage{margin:.5rem 0 0;color:var(--success);font-weight:700}.profilePage{min-height:100vh;background:var(--off-white)}.profileLayout{width:min(840px,92vw);margin:0 auto;padding:2.5rem 0 3rem}.profileHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.profileEyebrow{margin:0;color:var(--text-body);letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:600}.profileHeader h1{margin:.25rem 0 0;font-family:Cormorant Garamond,Georgia,serif;color:var(--navy);font-size:clamp(2rem,5vw,3rem);font-weight:500}.backHomeLink{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:0 1.2rem;font-size:.75rem;letter-spacing:.12em}.profileCard{margin-top:1rem;border:1px solid var(--line);border-radius:.75rem;background:var(--white);padding:1.5rem}.profileCard h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;color:var(--navy);font-size:2rem;font-weight:500}.profileCard p{margin:.5rem 0 0;color:var(--text-body)}.bookingsBlock{margin-top:1rem}.bookingsTitle{font-weight:700;color:var(--navy)}.bookingsBlock ul{margin:.4rem 0 0;padding-left:1.2rem}.bookingsBlock li{margin:.15rem 0;color:var(--text-body)}.authTabs{display:flex;gap:.6rem}.authTab{min-height:2.35rem;border-radius:999px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);padding:0 1rem;cursor:pointer;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:all .15s ease}.authTab.active{background:var(--navy);color:var(--white)}.authForm{margin-top:1rem;display:grid;grid-gap:.8rem;gap:.8rem}.authForm label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.72rem;color:var(--navy);font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.6}.authForm input{min-height:2.7rem;border:1px solid var(--line);border-radius:.5rem;padding:.55rem .75rem;font-size:.95rem;font-family:Manrope,sans-serif;color:var(--navy)}.authNameRow{display:grid;grid-template-columns:1fr 1fr;grid-gap:.8rem;gap:.8rem}.authForm input:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.topBarSolid{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;background:var(--navy)}.navLinkSolid{text-decoration:none;color:rgba(255,255,255,.7);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;transition:color .15s ease;padding-bottom:.3rem;border-bottom:2px solid transparent}.navLinkSolid:hover{color:var(--white)}.navLinkSolid.active{color:var(--white);border-bottom-color:var(--white)}.brandWordmarkSolid{position:absolute;left:50%;transform:translateX(-50%);text-decoration:none;display:flex;align-items:center}.profileIconButtonSolid{width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.5);display:grid;place-items:center;color:var(--white);background:transparent;transition:all .14s ease;text-decoration:none}.profileIconButtonSolid svg{width:1.15rem;height:1.15rem;fill:currentColor}.profileIconButtonSolid:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.8)}.contentHero{width:100%;min-height:45vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:50%;color:var(--white);text-align:center;padding:2rem}.contentHero h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2.8rem,6vw,4.5rem);line-height:1.08}.contentHero h1 em{font-style:italic}.contentBody{max-width:900px;margin:0 auto;padding:4rem 2rem 5rem}.contentColumn{max-width:680px;margin:0 auto}.contentLead{font-family:Cormorant Garamond,Georgia,serif;font-size:1.55rem;line-height:1.5;color:var(--navy);font-weight:500;margin:0 0 2rem}.contentBody p{margin:0 0 1.4rem;color:var(--text-body);font-size:1rem;line-height:1.85}.contentSignoff{margin-top:2.5rem!important;font-family:Cormorant Garamond,Georgia,serif;font-size:1.3rem!important;color:var(--navy)!important;font-style:italic;font-weight:500}.founderLayout{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0;max-width:1200px;margin:0 auto}.founderImageCol{position:relative;min-height:600px;background-size:cover;background-position:50%}.founderImageCol:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,50,0) 70%,rgba(248,248,246,.06))}.founderContentCol{display:flex;flex-direction:column;justify-content:center;padding:4rem 4rem 4rem 3.5rem}.founderQuoteMark{font-family:Cormorant Garamond,Georgia,serif;font-size:6rem;line-height:.8;color:var(--navy-light);opacity:.15;margin-bottom:.5rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.founderContentCol .contentLead{font-size:1.4rem;line-height:1.55;margin:0 0 1.5rem;color:var(--navy)}.founderContentCol p{margin:0 0 1.2rem;color:var(--text-body);font-size:.95rem;line-height:1.85}.founderContentCol .contentSignoff{margin-top:1.5rem!important;padding-top:1.5rem;border-top:1px solid var(--line)}.founderAccentBar{display:block;width:48px;height:3px;background:var(--navy-light);border-radius:2px;margin-bottom:1.5rem}.founderBlackbookSection{background:var(--navy);color:var(--white);padding:5rem 3rem}.founderBlackbookInner{max-width:800px;margin:0 auto;text-align:center}.founderBlackbookInner h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2rem,3.5vw,3rem);line-height:1.15}.founderBlackbookInner h2 em{font-style:italic}.founderBlackbookInner p{margin:1.5rem auto 2rem;max-width:55ch;color:rgba(255,255,255,.75);font-size:1rem;line-height:1.8}.founderBlackbookCTA{display:inline-flex;align-items:center;justify-content:center;height:3rem;padding:0 2.2rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;color:var(--white);background:transparent;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;text-decoration:none;transition:all .16s ease}.founderBlackbookCTA:hover{background:rgba(255,255,255,.1);border-color:var(--white)}@media (max-width:880px){.founderLayout{grid-template-columns:1fr}.founderImageCol{min-height:350px}.founderContentCol{padding:3rem 2rem}}@media (max-width:760px){.founderImageCol{min-height:280px}.founderContentCol{padding:2rem 1.2rem}.founderQuoteMark{font-size:4rem}.founderBlackbookSection{padding:3.5rem 1.5rem}}.contentSectionTitle{margin:0 0 1rem;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:400;color:var(--navy);line-height:1.15}.stepsGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2rem;gap:2rem;margin-top:2rem}.stepCard{border:1px solid var(--line);border-radius:.75rem;padding:2rem 1.5rem;background:var(--off-white);transition:box-shadow .2s ease}.stepCard:hover{box-shadow:0 8px 32px rgba(26,26,94,.08)}.stepNumber{display:inline-block;font-size:2.5rem;font-weight:600;color:var(--navy-light);opacity:.3;line-height:1;margin-bottom:.8rem}.stepCard h2,.stepNumber{font-family:Cormorant Garamond,Georgia,serif}.stepCard h2{margin:0 0 .8rem;font-size:1.6rem;font-weight:500;color:var(--navy);line-height:1.15}.stepCard p{margin:0;color:var(--text-body);font-size:.92rem;line-height:1.75}@media (max-width:880px){.stepsGrid{grid-template-columns:1fr;gap:1.25rem}}@media (max-width:760px){.topBarSolid{padding:1rem 1.2rem}.topBarSolid .navLinks{display:none}.brandWordmarkSolid{position:relative;left:auto;transform:none}.contentHero{min-height:35vh}.contentBody{padding:2.5rem 1.2rem 3rem}}.footer{background:var(--navy);color:var(--white);text-align:center;padding:2.5rem 2rem}.footer p{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.1rem;color:rgba(255,255,255,.6);letter-spacing:.08em}@media (max-width:1120px){.topBar{padding:1.2rem 2rem}.featureSection{grid-template-columns:1fr}.featureContent{padding:3rem}.featureImage{min-height:350px}.searchForm{grid-template-columns:repeat(3,minmax(0,1fr))}.fieldWide{grid-column:span 3}.searchPanel{padding:3rem 2rem}.results{padding:2.5rem 2rem 4rem}}@media (max-width:880px){.resultCard{grid-template-columns:1fr}.resultVisual{min-height:200px}.resultCarouselArrow{opacity:1}.resultHead{flex-direction:column}.resultActions{align-items:flex-start}}@media (max-width:760px){.topBar{padding:1rem 1.2rem}.navLinks{display:none}.brandWordmark{position:relative;left:auto;transform:none}.brandLogo{height:37px}.hero{min-height:85vh}.hero h1{font-size:clamp(2.2rem,8vw,3.5rem)}.featureContent{padding:2.5rem 1.5rem}.searchPanel{padding:2.5rem 1rem}.searchForm{grid-template-columns:1fr}.fieldWide{grid-column:auto}.results{padding:2rem 1rem 3rem}.resultsHeading{align-items:flex-start;gap:.2rem}.profileHeader,.resultsHeading{flex-direction:column}.topBarActions{gap:.5rem}.topAction{padding:0 .9rem;font-size:.65rem}}.detailPage{width:100%;margin:0;padding:0;min-height:100vh;background:var(--white)}.detailHero{position:relative;width:100%;min-height:70vh;display:flex;flex-direction:column;justify-content:flex-end;background-size:cover;background-position:50%;color:var(--white)}.detailTopBar{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem}.detailBrand{color:var(--white)!important;text-decoration:none}.detailBackLink{text-decoration:none;color:rgba(255,255,255,.85);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;transition:color .15s ease;font-family:Manrope,system-ui,sans-serif}.detailBackLink:hover{color:var(--white)}.detailHeroOverlay{background:linear-gradient(180deg,rgba(10,10,50,0),rgba(10,10,50,.5) 60%,rgba(10,10,50,.85));padding:8rem 3rem 3.5rem}.detailHeroContent{max-width:900px;animation:reveal-up .7s ease both}.detailStars{display:flex;gap:.3rem;margin-bottom:.75rem}.detailStarFilled{color:#f0c040;font-size:1.25rem}.detailStarEmpty{color:rgba(255,255,255,.25);font-size:1.25rem}.detailHeroContent h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2.8rem,5.5vw,4.5rem);line-height:1.05;letter-spacing:.01em}.detailHeroLocation{margin:.75rem 0 0;font-size:1.05rem;color:rgba(255,255,255,.75);line-height:1.5;font-family:Manrope,system-ui,sans-serif}.detailQuickInfo{background:var(--navy);color:var(--white);padding:0 3rem}.detailQuickInfoInner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:2rem;padding:1.5rem 0;flex-wrap:wrap}.detailQuickItem{display:flex;flex-direction:column;gap:.25rem}.detailQuickLabel{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.5)}.detailQuickLabel,.detailQuickValue{font-family:Manrope,system-ui,sans-serif}.detailQuickValue{font-size:.95rem;font-weight:600;color:var(--white)}.detailQuickDivider{width:1px;height:2.5rem;background:rgba(255,255,255,.15)}.detailQuickSelect{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:.4rem;color:var(--white);font-family:Manrope,system-ui,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease;padding:.35rem 1.4rem .35rem .5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='rgba(255,255,255,0.6)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center}.detailQuickSelect:hover{background-color:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35)}.detailQuickSelect:focus{outline:none;border-color:rgba(255,255,255,.5);background-color:rgba(255,255,255,.14)}.detailQuickSelect option{background:var(--navy);color:var(--white)}.detailQuickEditButton{min-width:90px;height:2.2rem;border-radius:999px;border:1.5px solid rgba(255,255,255,.6);background:transparent;color:var(--white);font-family:Manrope,system-ui,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .18s ease;flex-shrink:0}.detailQuickEditButton:hover:not(:disabled){background:var(--white);color:var(--navy);border-color:var(--white)}.detailQuickEditButton:disabled{opacity:.5;cursor:not-allowed}.detailSectionHeader{margin-bottom:2.5rem}.detailSectionHeader h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2rem,3.5vw,3rem);color:var(--navy);line-height:1.15}.detailSectionHeader h2 em{font-style:italic}.detailSectionHeader p{margin:.5rem 0 0;color:var(--text-body);font-size:.95rem;line-height:1.6;font-family:Manrope,system-ui,sans-serif}.detailBenefits{background:var(--off-white);padding:5rem 3rem}.detailBenefitsInner{max-width:1100px;margin:0 auto}.detailBenefitsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-gap:1.25rem;gap:1.25rem}.detailBenefitCard{border:1px solid var(--line);border-radius:.75rem;background:var(--white);padding:1.75rem;box-shadow:0 2px 12px rgba(26,26,94,.04);transition:box-shadow .25s ease,transform .25s ease}.detailBenefitCard:hover{box-shadow:0 12px 32px rgba(26,26,94,.1);transform:translateY(-3px)}.detailBenefitCard .benefitIcon{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--navy)}.detailBenefitCard .benefitIcon svg{width:1.2rem;height:1.2rem;stroke:var(--white);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.detailBenefitCard h3{margin:1rem 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:600;color:var(--navy);line-height:1.2}.detailBenefitCard ul{margin:.6rem 0 0;padding-left:1.1rem;color:var(--text-body);font-size:.85rem;line-height:1.65;font-family:Manrope,system-ui,sans-serif}.detailBenefitCard ul li{margin:.15rem 0}.detailRooms{padding:5rem 3rem}.detailRoomsInner{max-width:1100px;margin:0 auto}.detailRoomsList{display:grid;grid-gap:1.25rem;gap:1.25rem}.detailRoomCard{display:grid;grid-template-columns:1fr auto;grid-gap:2rem;gap:2rem;align-items:center;border:1px solid var(--line);border-radius:.75rem;background:var(--white);padding:2rem 2.5rem;box-shadow:0 2px 12px rgba(26,26,94,.04);transition:box-shadow .25s ease,border-color .25s ease;animation:reveal-up .5s ease both}.detailRoomCard.hasRoomImage{grid-template-columns:200px 1fr auto;padding:1.2rem 2.5rem 1.2rem 1.2rem}.detailRoomImage{width:200px;min-height:150px;border-radius:.5rem;overflow:hidden;flex-shrink:0}.detailRoomImageInner{position:relative;width:100%;height:100%;min-height:150px;background-size:cover;background-position:50%;border-radius:.5rem}.detailRoomImageArrow{position:absolute;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;border:none;background:rgba(255,255,255,.85);color:var(--navy);font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;box-shadow:0 2px 6px rgba(0,0,0,.15);z-index:2}.detailRoomImageInner:hover .detailRoomImageArrow{opacity:1}.detailRoomImageArrow:hover{background:var(--white)}.detailRoomImageArrowLeft{left:6px}.detailRoomImageArrowRight{right:6px}.detailRoomImageDots{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);display:flex;gap:4px;z-index:2}.detailRoomCard:hover{box-shadow:0 8px 32px rgba(26,26,94,.1);border-color:var(--navy-light)}.detailRoomInfo h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.65rem;font-weight:500;color:var(--navy);text-transform:capitalize}.detailRoomDesc{margin:.5rem 0 0;color:var(--text-body);font-size:.88rem;line-height:1.6;max-width:55ch;font-family:Manrope,system-ui,sans-serif}.detailRoomMeta{display:flex;gap:.6rem;margin-top:.85rem;flex-wrap:wrap}.detailRoomMetaItem{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;color:var(--navy);background:var(--off-white);border:1px solid var(--line);border-radius:999px;padding:.3rem .85rem;letter-spacing:.04em;font-family:Manrope,system-ui,sans-serif}.detailRoomHeader{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.detailRoomRefundBadge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;letter-spacing:.03em;padding:.25rem .75rem;border-radius:999px;font-family:Manrope,system-ui,sans-serif;white-space:nowrap}.detailRoomRefundBadge.refundable{background:#e8f5ee;color:var(--success);border:1px solid #c1e6d1}.detailRoomRefundBadge.nonRefundable{background:#f5f0e8;color:#8a7440;border:1px solid #e0d8c4}.detailMetaIcon{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;margin-right:.3rem}.detailRoomPayment{margin:.5rem 0 0;font-size:.78rem;opacity:.7}.detailRoomPayment,.detailRoomPricePerNight{color:var(--text-body);font-family:Manrope,system-ui,sans-serif}.detailRoomPricePerNight{margin:0;font-size:.72rem;opacity:.6}.detailRoomAction{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;min-width:160px}.detailRoomPrice{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.2rem;font-weight:700;color:var(--navy);line-height:1.1}.detailRoomPriceNote{margin:0;font-size:.75rem;color:var(--text-body);font-family:Manrope,system-ui,sans-serif}.detailReserveButton{margin-top:.65rem;min-width:148px;height:2.9rem;border-radius:999px;border:1.5px solid var(--navy);background:var(--navy);color:var(--white);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;font-family:Manrope,system-ui,sans-serif;transition:all .15s ease}.detailReserveButton:hover{background:var(--navy-deep);border-color:var(--navy-deep);transform:translateY(-1px);box-shadow:0 4px 14px rgba(26,26,94,.25)}.detailRoomQtySelector{display:flex;align-items:center;gap:.75rem;margin-top:.65rem}.detailQtyBtn{width:2.2rem;height:2.2rem;border-radius:50%;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-family:Manrope,system-ui,sans-serif;line-height:1}.detailQtyBtn:hover:not(:disabled){background:var(--navy);color:var(--white)}.detailQtyBtn:disabled{opacity:.3;cursor:not-allowed}.detailQtyCount{font-size:1rem;font-weight:700;color:var(--navy);min-width:1.5rem;text-align:center}.detailMultiRoomBar{position:fixed;bottom:0;left:0;right:0;background:var(--navy);color:var(--white);z-index:100;padding:.85rem 2rem;box-shadow:0 -4px 20px rgba(0,0,0,.15)}.detailMultiRoomBarInner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.detailMultiRoomBarInfo{font-size:.88rem;font-weight:500;letter-spacing:.02em}.detailMultiRoomBarBtn{min-width:180px;height:2.6rem;border-radius:999px;border:1.5px solid var(--white);background:var(--white);color:var(--navy);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;font-family:Manrope,system-ui,sans-serif;transition:all .15s ease}.detailMultiRoomBarBtn:hover:not(:disabled){background:var(--sand);border-color:var(--sand)}.detailMultiRoomBarBtn:disabled{opacity:.4;cursor:not-allowed}.bookRoomSummaryItem{padding:.85rem 0;border-bottom:1px solid var(--sand)}.bookRoomSummaryItem:last-of-type{border-bottom:none}.bookRoomSubtotal{font-size:.85rem;font-weight:600;color:var(--navy);margin-top:.25rem}.detailAmenities{background:var(--off-white);padding:5rem 3rem}.detailAmenitiesInner{max-width:1100px;margin:0 auto}.detailAmenitiesGrid{display:flex;flex-wrap:wrap;gap:.65rem}.detailAmenityTag{display:inline-flex;align-items:center;padding:.55rem 1.3rem;border:1px solid var(--line);border-radius:999px;background:var(--white);font-size:.82rem;font-weight:500;color:var(--navy);font-family:Manrope,system-ui,sans-serif;transition:all .18s ease}.detailAmenityTag:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.detailLoadingFullscreen{min-height:100vh;background:var(--navy);display:flex;flex-direction:column}.detailLoadingTopBar{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem}.detailLoadingCenter{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.8rem;color:rgba(255,255,255,.7);font-family:Manrope,system-ui,sans-serif;font-size:.95rem;letter-spacing:.04em}.detailLoadingCenter p{margin:0;animation:detailPulse 1.8s ease-in-out infinite}@keyframes detailPulse{0%,to{opacity:.6}50%{opacity:1}}.detailSpinner{width:2.5rem;height:2.5rem;border:3px solid rgba(255,255,255,.15);border-top-color:rgba(255,255,255,.8);border-radius:50%;animation:detailSpin .75s linear infinite}@keyframes detailSpin{to{transform:rotate(1turn)}}.detailErrorState{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;padding:2rem;text-align:center}.detailErrorState h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2.4rem;font-weight:500;color:var(--navy)}.backHomeLink{display:inline-block;margin-top:.5rem;padding:.65rem 2rem;border:1.5px solid var(--navy);border-radius:999px;color:var(--navy);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;font-family:Manrope,system-ui,sans-serif;transition:all .15s ease}.backHomeLink:hover{background:var(--navy);color:var(--white)}.detailEmptyState{padding:3rem 1rem;color:var(--text-body);font-size:1rem}.detailEmptyState,.detailFooter{text-align:center;font-family:Manrope,system-ui,sans-serif}.detailFooter{background:var(--navy-deep);color:rgba(255,255,255,.5);padding:2.5rem 2rem;font-size:.85rem}.detailFooter p{margin:0}@media (max-width:880px){.detailRoomCard,.detailRoomCard.hasRoomImage{grid-template-columns:1fr;gap:1.25rem}.detailRoomImage{width:100%;min-height:180px}.detailRoomImageInner{min-height:180px}.detailRoomImageArrow{opacity:1}.detailRoomAction{align-items:flex-start;flex-direction:row;gap:1rem;flex-wrap:wrap;align-items:center}.detailQuickInfoInner{gap:1rem}.detailQuickDivider{display:none}}@media (max-width:760px){.detailHero{min-height:55vh}.detailHeroOverlay{padding:5rem 1.5rem 2.5rem}.detailTopBar{padding:1rem 1.2rem}.detailQuickInfo{padding:0 1.5rem}.detailAmenities,.detailBenefits,.detailRooms{padding:3.5rem 1.5rem}.detailBenefitsGrid{grid-template-columns:1fr}.detailRoomCard{padding:1.5rem}}.bookPage{width:100%;margin:0;padding:0;min-height:100vh;background:var(--off-white)}.bookTopBar{background:var(--navy);display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;position:-webkit-sticky;position:sticky;top:0;z-index:20}.bookBackLink{text-decoration:none;color:rgba(255,255,255,.85);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;transition:color .15s ease;font-family:Manrope,system-ui,sans-serif}.bookBackLink:hover{color:var(--white)}.bookLayout{display:grid;grid-template-columns:1fr 380px;grid-gap:2.5rem;gap:2.5rem;max-width:1200px;margin:0 auto;padding:2.5rem 3rem 4rem;align-items:start}.bookMain{display:flex;flex-direction:column;gap:0}.bookSidebar{position:-webkit-sticky;position:sticky;top:6rem}.bookSection{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:2rem 2.25rem;margin-bottom:1.25rem}.bookSectionTitle{margin:0 0 1.5rem;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;font-size:1.65rem;color:var(--navy);line-height:1.15;padding-bottom:1rem;border-bottom:1px solid var(--line)}.bookSectionTitle em{font-style:italic}.bookRoomSummary{display:flex;flex-direction:column;gap:.6rem}.bookRoomCategory{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.4rem;font-weight:600;color:var(--navy);text-transform:capitalize}.bookRoomDesc{margin:0;color:var(--text-body);font-size:.88rem;line-height:1.65}.bookRoomMeta{display:flex;gap:.5rem;flex-wrap:wrap}.bookRoomMetaTag{font-size:.72rem;font-weight:600;color:var(--navy);background:var(--off-white);border:1px solid var(--line);padding:.3rem .8rem}.bookCancellationBadge,.bookRoomMetaTag{display:inline-flex;align-items:center;border-radius:999px;letter-spacing:.04em}.bookCancellationBadge{gap:.35rem;font-size:.75rem;font-weight:700;padding:.4rem 1rem}.bookCancellationBadge.free{background:rgba(27,120,82,.1);color:var(--success);border:1px solid rgba(27,120,82,.25)}.bookCancellationBadge.nonRefundable{background:rgba(191,62,72,.1);color:var(--danger);border:1px solid rgba(191,62,72,.25)}.bookGuaranteeNote{margin:.75rem 0 0;font-size:.82rem;color:var(--text-body);line-height:1.5;font-style:italic}.bookBenefitsList{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:.75rem;gap:.75rem}.bookBenefitItem{display:flex;align-items:center;gap:.6rem;padding:.7rem .9rem;background:var(--off-white);border:1px solid var(--line);border-radius:.5rem;transition:box-shadow .2s ease}.bookBenefitItem:hover{box-shadow:0 4px 12px rgba(26,26,94,.08)}.bookBenefitIcon{width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;background:var(--navy);flex-shrink:0}.bookBenefitIcon svg{width:1rem;height:1rem;stroke:var(--white);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bookBenefitName{margin:0;font-size:.78rem;font-weight:600;color:var(--navy);line-height:1.3}.bookFormGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.bookFormGroup{display:flex;flex-direction:column;gap:.35rem}.bookFormGroup.full{grid-column:1/-1}.bookFormLabel{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:700;opacity:.6}.bookInput,.bookSelect,.bookTextarea{width:100%;min-height:2.7rem;border:1px solid var(--line);border-radius:.5rem;padding:.55rem .75rem;font-size:.95rem;font-family:Manrope,sans-serif;color:var(--navy);background:var(--white)}.bookInput:focus,.bookSelect:focus,.bookTextarea:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.bookSelect{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' fill='none' stroke='%233a3a5c' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.bookTextarea{resize:vertical;min-height:5rem;line-height:1.6}.bookCheckboxRow{display:flex;align-items:flex-start;gap:.65rem;padding:.4rem 0}.bookCheckboxRow input[type=checkbox]{width:1.15rem;height:1.15rem;margin-top:.1rem;accent-color:var(--navy);cursor:pointer;flex-shrink:0}.bookCheckboxLabel{font-size:.9rem;color:var(--navy);font-weight:500;line-height:1.4}.bookCheckboxHint{display:block;font-size:.78rem;color:var(--text-body);font-weight:400;margin-top:.15rem}.bookLoyaltyChain{margin:0 0 1rem;display:flex;align-items:center;gap:.6rem}.bookLoyaltyChainBadge{background:var(--navy);color:var(--white);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .85rem;border-radius:999px}.bookLoyaltyChainName{font-size:.95rem;color:var(--navy);font-weight:600}.bookLoyaltyProfileHint{margin:.75rem 0 0;font-size:.82rem;color:var(--text-body);line-height:1.5}.bookPaymentCardGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.bookSecurityNote{margin:1.25rem 0 0;display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-body)}.bookSecurityNote svg{width:1rem;height:1rem;stroke:var(--success);fill:none;stroke-width:2;flex-shrink:0}.bookPricingSummary{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:2rem;box-shadow:0 4px 24px rgba(26,26,94,.06)}.bookPricingHotel{display:flex;gap:1rem;align-items:flex-start;padding-bottom:1.25rem;border-bottom:1px solid var(--line);margin-bottom:1.25rem}.bookPricingImage{width:80px;height:60px;border-radius:.4rem;background-size:cover;background-position:50%;flex-shrink:0}.bookPricingHotelName{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--navy);line-height:1.2}.bookPricingStars{display:flex;gap:.15rem;margin-top:.25rem}.bookStarFilled{color:#f0c040;font-size:.85rem}.bookStarEmpty{color:var(--line);font-size:.85rem}.bookPricingRoom{margin:.3rem 0 0;font-size:.78rem;color:var(--text-body);text-transform:capitalize}.bookPricingDetails{display:flex;flex-direction:column;gap:.6rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line);margin-bottom:1.25rem}.bookPricingRow{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-body)}.bookPricingRowLabel{font-weight:500}.bookPricingRowValue{font-weight:600;color:var(--navy)}.bookPricingTotal{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.5rem}.bookPricingTotalLabel{font-size:.85rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em}.bookPricingTotalValue{font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;font-weight:700;color:var(--navy);line-height:1}.bookPricingCancellation{margin:0 0 1.5rem;font-size:.78rem;color:var(--text-body);line-height:1.5;padding:.6rem .85rem;background:var(--off-white);border-radius:.4rem}.bookSubmitButton{width:100%;height:3.2rem;border-radius:999px;border:none;background:var(--navy);color:var(--white);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;font-family:Manrope,system-ui,sans-serif;transition:all .15s ease}.bookSubmitButton:hover:not(:disabled){background:var(--navy-deep);transform:translateY(-1px);box-shadow:0 4px 14px rgba(26,26,94,.25)}.bookSubmitButton:disabled{opacity:.5;cursor:not-allowed}.bookLoginPrompt{text-align:center;padding:1rem 0}.bookLoginPrompt p{margin:0 0 1rem;color:var(--text-body);font-size:.95rem}.bookLoginLink{display:inline-flex;align-items:center;justify-content:center;height:2.8rem;padding:0 2rem;border:1.5px solid var(--navy);border-radius:999px;text-decoration:none;color:var(--navy);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:all .15s ease}.bookLoginLink:hover{background:var(--navy);color:var(--white)}.bookConfirmation{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem}.bookConfirmationCheck{width:4rem;height:4rem;border-radius:50%;background:var(--success);display:grid;place-items:center;margin-bottom:2rem}.bookConfirmationCheck svg{width:2rem;height:2rem;stroke:var(--white);fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.bookConfirmation h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:400;color:var(--navy);line-height:1.15}.bookConfirmation h1 em{font-style:italic}.bookConfirmationId{margin:1rem 0 0;font-size:.82rem;color:var(--text-body);letter-spacing:.04em}.bookConfirmationId strong{color:var(--navy);font-weight:700}.confirmTicket{width:100%;max-width:560px;margin:2rem auto;background:var(--white);border:1px solid var(--line);border-radius:1rem;padding:2rem 2.4rem;text-align:left;box-shadow:0 4px 24px rgba(26,26,94,.07)}.confirmTicketRefs{display:flex;flex-wrap:wrap;gap:1.2rem 2rem}.confirmTicketRef{display:flex;flex-direction:column;gap:.15rem}.confirmTicketRefLabel{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--text-body);opacity:.55}.confirmTicketRefValue{font-size:.88rem;font-weight:700;color:var(--navy);font-family:SF Mono,Fira Code,monospace;letter-spacing:.04em}.confirmTicketStatus{text-transform:uppercase;font-size:.78rem;letter-spacing:.08em;color:var(--success)}.confirmTicketDivider{height:1px;background:var(--line);margin:1.2rem 0}.confirmTicketSection{display:flex;flex-direction:column;gap:.6rem}.confirmTicketSectionTitle{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold);margin:0}.confirmTicketHotelName{font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:600;color:var(--navy);margin:0;line-height:1.2}.confirmTicketAddress{font-size:.82rem;color:var(--text-body);margin:0}.confirmTicketGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.8rem 1.5rem;gap:.8rem 1.5rem}.confirmTicketCell{display:flex;flex-direction:column;gap:.1rem}.confirmTicketCellWide{grid-column:1/-1}.confirmTicketCellLabel{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--text-body);opacity:.55}.confirmTicketCellValue{font-size:.88rem;font-weight:600;color:var(--navy)}.confirmTicketPrice{font-size:1.15rem;font-weight:700;color:var(--navy)}.confirmTicketCancelPolicy{font-size:.78rem;opacity:.7}.confirmTicketCancelPolicy,.confirmTicketSpecialReq{color:var(--text-body);margin:.3rem 0 0;line-height:1.4}.confirmTicketSpecialReq{font-size:.82rem;padding:.6rem .8rem;background:var(--cream);border-radius:.4rem}.confirmTicketCardInfo{font-size:.88rem;color:var(--navy);font-weight:500;margin:0}.confirmTicketGrandTotal{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}.confirmTicketRoomBlock{padding:0}.confirmTicketRoomBlockBorder{margin-top:.8rem;padding-top:.8rem;border-top:1px dashed var(--line)}.bookConfirmationDetails{margin:2rem 0;padding:1.5rem 2rem;background:var(--white);border:1px solid var(--line);border-radius:.75rem;display:flex;gap:2rem;flex-wrap:wrap;justify-content:center}.bookConfirmationItem{display:flex;flex-direction:column;gap:.2rem;align-items:center}.bookConfirmationItemLabel{font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--text-body);opacity:.6}.bookConfirmationItemValue{font-size:.95rem;font-weight:600;color:var(--navy)}.bookConfirmationActions{display:flex;gap:1rem;margin-top:1rem}.bookConfirmationActions a{display:inline-flex;align-items:center;justify-content:center;height:2.8rem;padding:0 1.8rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;transition:all .15s ease}.bookConfirmationActions a:first-child{background:var(--navy);color:var(--white);border:1.5px solid var(--navy)}.bookConfirmationActions a:first-child:hover{background:var(--navy-deep)}.bookConfirmationActions a:last-child{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}.bookConfirmationActions a:last-child:hover{background:var(--navy);color:var(--white)}@media (max-width:880px){.bookLayout{grid-template-columns:1fr;padding:2rem 1.5rem 3rem}.bookSidebar{position:relative;top:0;order:-1}.bookFormGrid,.bookPaymentCardGrid{grid-template-columns:1fr}.bookTopBar{padding:1.2rem 1.5rem}}@media (max-width:760px){.bookLayout{padding:1.5rem 1rem 2.5rem;gap:1.5rem}.bookSection{padding:1.5rem}.bookTopBar{padding:1rem}.bookBenefitsList{grid-template-columns:1fr}.confirmTicket{padding:1.5rem 1.2rem}.confirmTicketGrid{grid-template-columns:1fr}.bookConfirmationDetails{flex-direction:column;align-items:center;gap:1rem}.bookConfirmationActions{flex-direction:column;width:100%}.bookConfirmationActions a{width:100%;justify-content:center}}.adminLoginPage{min-height:100vh;background:var(--navy);display:flex;align-items:center;justify-content:center;padding:2rem}.adminLoginCard{width:min(420px,92vw);background:var(--white);border-radius:.75rem;padding:2.5rem 2rem;box-shadow:0 24px 48px rgba(10,10,50,.3)}.adminLoginBrand{text-align:center;margin-bottom:2rem}.adminBrandLogo{height:41px;width:auto;display:block;margin:0 auto}.adminLoginBrand .adminBrandLogo{height:55px;margin-bottom:.5rem}.adminLoginBrand p{margin:.3rem 0 0;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-body);font-weight:600}.adminLoginForm{display:flex;flex-direction:column;gap:1rem}.adminLoginField label{display:block;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin-bottom:.35rem}.adminLoginField input{width:100%;min-height:2.8rem;border-radius:.5rem;border:1px solid var(--line);background:var(--off-white);color:var(--navy);font-size:.95rem;padding:.55rem .85rem;font-family:Manrope,sans-serif}.adminLoginField input:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.adminLoginButton{min-height:2.9rem;border-radius:999px;border:1.5px solid var(--navy);background:var(--navy);color:var(--white);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;margin-top:.5rem;font-family:Manrope,sans-serif;transition:all .15s ease}.adminLoginButton:not(:disabled):hover{background:var(--navy-deep);border-color:var(--navy-deep)}.adminLoginButton:disabled{opacity:.5;cursor:not-allowed}.adminLoginError{color:var(--danger);font-size:.85rem;text-align:center;margin-top:.5rem}.adminLayout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.adminSidebar{background:var(--navy-deep);color:var(--white);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.adminSidebarBrand{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.adminSidebarNav{flex:1 1;padding:1rem 0}.adminNavItem{display:block;width:100%;padding:.85rem 1.5rem;border:none;background:transparent;color:rgba(255,255,255,.7);font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer;transition:all .15s ease;font-family:Manrope,sans-serif}.adminNavItem:hover{color:var(--white);background:rgba(255,255,255,.06)}.adminNavItem.active{color:var(--white);background:rgba(255,255,255,.1);border-left:3px solid var(--white)}.adminLogoutButton{padding:1rem 1.5rem;border:none;border-top:1px solid rgba(255,255,255,.1);background:transparent;color:rgba(255,255,255,.5);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;text-align:left;font-family:Manrope,sans-serif;transition:color .15s ease}.adminLogoutButton:hover{color:var(--white)}.adminContent{background:var(--off-white);padding:2.5rem 3rem;min-height:100vh}.adminContentHeader{margin-bottom:2rem}.adminContentHeader h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(2rem,3vw,2.8rem);color:var(--navy)}.adminContentHeader p{margin:.5rem 0 0;color:var(--text-body);font-size:.9rem}.adminDualSearch{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.adminSearchGroup{position:relative}.adminSearchLabel{display:block;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin-bottom:.5rem}.adminSearchBarInline{display:flex;gap:.8rem;position:relative}.adminSearchInput{flex:1 1;min-height:2.9rem;border-radius:.5rem;border:1px solid var(--line);background:var(--white);color:var(--navy);font-size:.95rem;padding:.55rem .85rem;font-family:Manrope,sans-serif}.adminSearchInput:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.adminSearchButton{min-height:2.9rem;border-radius:999px;border:1.5px solid var(--navy);background:var(--navy);color:var(--white);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;padding:0 1.6rem;font-family:Manrope,sans-serif;transition:all .15s ease;white-space:nowrap}.adminSearchButton:not(:disabled):hover{background:var(--navy-deep);border-color:var(--navy-deep)}.adminSearchButton:disabled{opacity:.5;cursor:not-allowed}.adminInputSpinner{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);width:1.1rem;height:1.1rem;border:2px solid var(--line);border-top-color:var(--navy);border-radius:50%;animation:spin .6s linear infinite;pointer-events:none}.adminAutocompleteDropdown{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--white);border:1px solid var(--line);border-top:none;border-radius:0 0 .5rem .5rem;max-height:20rem;overflow-y:auto;box-shadow:0 12px 32px rgba(26,26,94,.12);animation:dpFadeIn .15s ease}.adminAutocompleteItem{display:flex;flex-direction:column;gap:.15rem;width:100%;padding:.7rem .85rem;border:none;border-bottom:1px solid var(--off-white);background:transparent;text-align:left;cursor:pointer;font-family:Manrope,sans-serif;transition:background .1s ease}.adminAutocompleteItem:has(.suggestionIcon){flex-direction:row;align-items:center;gap:.55rem}.adminAutocompleteItem:last-child{border-bottom:none}.adminAutocompleteItem:hover{background:var(--off-white)}.adminAutocompleteName{font-size:.92rem;font-weight:600;color:var(--navy)}.adminAutocompleteMeta{font-size:.78rem;color:var(--text-body)}.adminResultsTitle{margin:0 0 1rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.5rem;font-weight:500;color:var(--navy)}.adminHotelIdLabel{margin:.15rem 0 0;font-size:.72rem;color:var(--text-body);opacity:.7;font-family:Manrope,sans-serif;letter-spacing:.02em}.adminBookingFilters{margin-bottom:1.5rem;padding:1.25rem;background:var(--off-white);border:1px solid var(--line);border-radius:.75rem}.adminBookingFilterRow{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.adminBookingFilterRow+.adminBookingFilterRow{margin-top:.75rem}.adminBookingFilterGroup{display:flex;flex-direction:column;gap:.3rem;flex:1 1;min-width:120px}.adminBookingFilterGroup.adminBookingFilterWide{flex:2 1;min-width:200px}.adminBookingFilterGroup label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-body)}.adminBookingFilterGroup input,.adminBookingFilterGroup select{padding:.5rem .7rem;border:1px solid var(--line);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.82rem;background:var(--white);color:var(--navy);min-height:2.4rem}.adminBookingFilterGroup input:focus,.adminBookingFilterGroup select:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 2px rgba(42,42,122,.1)}.adminBookingFilterGroup input::placeholder{color:rgba(58,58,92,.4)}.adminBookingFilterActions{display:flex;gap:.5rem;align-items:flex-end}.adminBookingFilterApply{padding:.5rem 1.25rem;background:var(--navy);color:var(--white);border:none;border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;min-height:2.4rem;transition:background .15s ease}.adminBookingFilterApply:hover{background:var(--navy-light)}.adminBookingFilterClear{padding:.5rem 1rem;background:transparent;color:var(--text-body);border:1px solid var(--line);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;min-height:2.4rem;transition:border-color .15s ease}.adminBookingFilterClear:hover{border-color:var(--navy);color:var(--navy)}.adminBookingResultCount{font-size:.82rem;color:var(--text-body);margin:0 0 1rem;font-weight:600}.adminBookingCommission{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.adminBookingCommission h4{margin:0 0 .75rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);padding-bottom:.5rem;border-bottom:1px solid var(--line)}.adminCommissionRow{display:flex;gap:2rem;align-items:center}.adminCommissionItem{display:flex;flex-direction:column;gap:.2rem}.adminCommissionLabel{font-size:.72rem;font-weight:600;color:var(--text-body);text-transform:uppercase;letter-spacing:.06em}.adminCommissionValue{font-size:.9rem;font-weight:700;color:var(--navy)}.adminCommissionBadge{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .6rem;border-radius:999px;white-space:nowrap}.adminCommissionBadge.badge-pending{background:#fff3cd;color:#856404}.adminCommissionBadge.badge-invoiced{background:#d1ecf1;color:#0c5460}.adminCommissionBadge.badge-received{background:#d4edda;color:#155724}.adminCommissionBadge.badge-chased{background:#f8d7da;color:#721c24}.adminBookingActions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.adminBookingEditBtn{padding:.5rem 1.25rem;background:transparent;color:var(--navy);border:1.5px solid var(--navy);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.adminBookingEditBtn:hover{background:var(--navy);color:var(--white)}.adminBookingEmailBtn{padding:.5rem 1.25rem;background:transparent;color:var(--gold,#b8860b);border:1.5px solid var(--gold,#b8860b);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.adminBookingEmailBtn:hover{background:var(--gold,#b8860b);color:var(--white)}.adminEmailForm{margin-top:1rem;padding:1rem;background:var(--cream,#faf9f6);border:1px solid var(--line,#e0dfd9);border-radius:.5rem;animation:dpFadeIn .2s ease}.adminEmailFormTitle{margin:0 0 .75rem;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}.adminEmailFormRow{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.adminEmailFormInput{flex:1 1;min-width:220px;padding:.5rem .75rem;border:1px solid var(--line,#e0dfd9);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.85rem;color:var(--navy);background:var(--white)}.adminEmailFormInput:focus{outline:none;border-color:var(--navy)}.adminEmailFormActions{display:flex;gap:.5rem}.adminBookingEditForm{animation:dpFadeIn .2s ease}.adminEditFormTitle{margin:0 0 1rem;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);padding-bottom:.5rem;border-bottom:1px solid var(--line)}.adminEditError{color:#721c24;background:#f8d7da}.adminEditError,.adminEditSuccess{margin:0 0 1rem;padding:.6rem 1rem;font-size:.82rem;border-radius:.5rem}.adminEditSuccess{color:#155724;background:#d4edda}.adminEditFormGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.adminEditFormGroup{display:flex;flex-direction:column;gap:.3rem}.adminEditFormGroup.adminEditFormGroupWide{grid-column:1/-1}.adminEditFormGroup label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-body)}.adminEditFormGroup input{padding:.55rem .75rem;border:1px solid var(--line);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.85rem;background:var(--white);color:var(--navy)}.adminEditFormGroup input:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 2px rgba(42,42,122,.1)}.adminEditFormHint{font-size:.72rem;color:var(--text-body);opacity:.7;margin-top:.15rem}.adminEditFormActions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.adminEditSaveBtn{padding:.55rem 1.5rem;background:var(--navy);color:var(--white);border:none;border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s ease}.adminEditSaveBtn:hover:not(:disabled){background:var(--navy-light)}.adminEditSaveBtn:disabled{opacity:.5;cursor:not-allowed}.adminEditCancelBtn{padding:.55rem 1.25rem;background:transparent;color:var(--text-body);border:1px solid var(--line);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;transition:border-color .15s ease}.adminEditCancelBtn:hover:not(:disabled){border-color:var(--navy);color:var(--navy)}.adminBookingsList{display:flex;flex-direction:column;gap:.75rem}.adminBookingCard{background:var(--white);border:1px solid var(--line);border-radius:.75rem;overflow:hidden;box-shadow:0 2px 12px rgba(26,26,94,.05);transition:box-shadow .2s ease}.adminBookingCard:hover{box-shadow:0 4px 20px rgba(26,26,94,.08)}.adminBookingCard.expanded{box-shadow:0 8px 32px rgba(26,26,94,.1)}.adminBookingHeader{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:1.1rem 1.5rem;border:none;background:transparent;cursor:pointer;text-align:left;font-family:Manrope,sans-serif;transition:background .1s ease}.adminBookingHeader:hover{background:var(--off-white)}.adminBookingHeaderLeft{display:flex;align-items:center;gap:1rem;min-width:0;flex:1 1}.adminBookingStatus{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;flex-shrink:0;white-space:nowrap}.adminBookingStatus.status-pending{background:#fff3cd;color:#856404}.adminBookingStatus.status-confirmed{background:#d4edda;color:#155724}.adminBookingStatus.status-cancelled{background:#f8d7da;color:#721c24}.adminBookingStatus.status-completed{background:#d1ecf1;color:#0c5460}.adminBookingHotel{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.2rem;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adminBookingSubline{margin:0;font-size:.8rem;color:var(--text-body);white-space:nowrap;flex-shrink:0}.adminBookingHeaderRight{display:flex;align-items:center;gap:1.2rem;flex-shrink:0}.adminBookingPrice{font-size:.95rem;font-weight:700;color:var(--navy);white-space:nowrap}.adminBookingDate{font-size:.78rem;color:var(--text-body);white-space:nowrap}.adminBookingChevron{font-size:.75rem;color:var(--text-body);transition:transform .2s ease;display:inline-block}.adminBookingChevron.open{transform:rotate(180deg)}.adminBookingDetails{border-top:1px solid var(--line);padding:1.5rem;animation:dpFadeIn .2s ease}.adminBookingGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem}.adminBookingSection h4{margin:0 0 .75rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);padding-bottom:.5rem;border-bottom:1px solid var(--line)}.adminBookingDl{margin:0;display:grid;grid-template-columns:auto 1fr;grid-gap:.35rem 1rem;gap:.35rem 1rem;font-size:.85rem}.adminBookingDl dt{color:var(--text-body);font-weight:600;font-size:.78rem;white-space:nowrap}.adminBookingDl dd{margin:0;color:var(--navy);word-break:break-word}.adminBookingMono{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.75rem;background:var(--off-white);padding:.1rem .4rem;border-radius:.25rem}.adminBookingExtras{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.adminBookingExtraItem h4{margin:0 0 .4rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}.adminBookingExtraItem p{margin:0;font-size:.85rem;color:var(--text-body);line-height:1.5}.adminLocatorDetails{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.adminLocatorTable{width:100%;margin-top:.75rem;border-collapse:collapse;font-size:.82rem}.adminLocatorTable th{text-align:left;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--navy);padding:.5rem .75rem;border-bottom:2px solid var(--line)}.adminLocatorTable td{padding:.5rem .75rem;border-bottom:1px solid var(--line);color:var(--text)}.adminAdvancedLogging{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.adminAdvancedLoggingSummary{cursor:pointer;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:.4rem 0}.adminAdvancedLoggingSummary:hover{color:var(--gold)}.adminAdvancedLoggingPre{margin:.75rem 0 0;padding:1rem;background:var(--cream,#faf8f5);border:1px solid var(--line);border-radius:6px;font-size:.75rem;line-height:1.5;overflow-x:auto;max-height:400px;overflow-y:auto;white-space:pre;color:var(--text-body)}.adminGdsStatus{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.adminGdsStatusBtn{background:none;border:none;display:inline-flex;align-items:center;gap:.5rem}.adminGdsSpinner{display:inline-block;width:12px;height:12px;border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.adminGdsPane{margin-top:.75rem;animation:dpFadeIn .2s ease}.adminGdsError{color:var(--danger,#c0392b);font-size:.82rem;margin:0;padding:.6rem .8rem;background:#fdf0ef;border-radius:6px;border:1px solid #f5c6cb}.adminGdsEmpty{color:var(--muted);font-size:.82rem;margin:0}.adminGdsCritical{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.adminGdsCard{background:var(--cream,#faf8f5);border:1px solid var(--line);border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.adminGdsCardStatus{border-left:3px solid var(--gold)}.adminGdsCardOffer{border-left:3px solid var(--navy)}.adminGdsCardLabel{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--text-body);opacity:.55}.adminGdsCardValue{font-size:.88rem;font-weight:600;color:var(--navy)}.adminGdsStatusValue{font-size:1rem;font-weight:800;letter-spacing:.04em}.adminGdsConfirmed{color:var(--success,#27ae60)}.adminGdsCancelled{color:var(--danger,#c0392b)}.adminGdsCardMeta{font-size:.78rem;color:var(--text-body);opacity:.7}.adminGdsCardPrice{font-size:.95rem;font-weight:700;color:var(--navy);margin-top:.15rem}.adminGdsCardPriceBreak{font-size:.72rem;font-weight:400;opacity:.6;margin-left:.3rem}.adminGdsLocatorRow{display:flex;gap:.6rem;align-items:baseline}.adminGdsLocatorSource{font-size:.68rem;font-weight:600;color:var(--text-body);opacity:.6;min-width:70px}.adminGdsLocatorCode{font-size:.85rem;font-weight:700;color:var(--navy);font-family:SF Mono,Fira Code,monospace;letter-spacing:.04em}.adminGdsJsonDetails{margin-top:.75rem}.adminGdsJsonTree{margin-top:.5rem;padding:1rem;background:var(--cream,#faf8f5);border:1px solid var(--line);border-radius:6px;max-height:500px;overflow-y:auto;font-size:.78rem;line-height:1.6}.adminGdsJsonObj{display:flex;flex-direction:column;gap:.15rem}.adminGdsJsonObjNested{margin-left:1rem;padding-left:.75rem;border-left:1px solid var(--line)}.adminGdsJsonType{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);opacity:.7;margin-bottom:.1rem}.adminGdsJsonProp{display:flex;flex-direction:column;gap:.05rem}.adminGdsJsonPropInline{flex-direction:row;gap:.5rem;align-items:baseline}.adminGdsJsonKey{font-weight:600;color:var(--navy);font-size:.76rem}.adminGdsJsonPropInline .adminGdsJsonKey:after{content:":"}.adminGdsJsonStr{color:var(--text-body)}.adminGdsJsonNum{color:#2980b9;font-weight:600}.adminGdsJsonBool{color:#8e44ad;font-weight:600}.adminGdsJsonNull{color:var(--muted);font-style:italic}.adminGdsJsonArray{display:flex;flex-direction:column;gap:.2rem;margin-left:1rem;padding-left:.75rem;border-left:1px solid var(--line)}.adminGdsJsonArrayItem{display:flex;flex-direction:column;gap:.05rem}.adminGdsJsonIndex{font-size:.62rem;font-weight:600;color:var(--muted)}.adminHotelGrid{display:grid;grid-gap:1rem;gap:1rem;margin-bottom:3rem}.adminHotelCard{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.5rem;background:var(--white);border:1px solid var(--line);border-radius:.75rem;box-shadow:0 2px 12px rgba(26,26,94,.05);transition:box-shadow .2s ease}.adminHotelCard:hover{box-shadow:0 8px 32px rgba(26,26,94,.1)}.adminHotelInfo{flex:1 1;min-width:0}.adminHotelInfo h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;font-weight:500;color:var(--navy)}.adminHotelMeta{margin:.3rem 0 0;color:var(--text-body);font-size:.85rem}.adminHotelRating{margin:.2rem 0 0;display:flex;gap:.2rem}.adminStarFilled{color:#f0c040;font-size:1rem}.adminStarEmpty{color:var(--line);font-size:1rem}.adminFavButton{width:2.5rem;height:2.5rem;border-radius:50%;border:1.5px solid var(--line);background:transparent;cursor:pointer;display:grid;place-items:center;transition:all .15s ease;flex-shrink:0;font-size:1.2rem}.adminFavButton:hover{border-color:var(--navy);background:var(--off-white)}.adminFavButton.isFavorite{border-color:var(--danger);background:rgba(191,62,72,.08);color:var(--danger)}.adminSectionDivider{border:none;border-top:1px solid var(--line);margin:2rem 0}.adminFavoritesHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.adminFavoritesHeader h3{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.8rem;font-weight:500;color:var(--navy)}.adminFavoriteBadge{background:var(--navy);color:var(--white);padding:.3rem .8rem}.adminFavoriteBadge,.adminRemoveButton{font-size:.68rem;font-weight:700;letter-spacing:.1em;border-radius:999px}.adminRemoveButton{min-height:2rem;border:1.5px solid var(--danger);background:transparent;color:var(--danger);text-transform:uppercase;cursor:pointer;padding:0 1rem;font-family:Manrope,sans-serif;transition:all .15s ease}.adminRemoveButton:hover{background:var(--danger);color:var(--white)}.adminEmptyState{text-align:center;padding:3rem 1rem;color:var(--text-body);font-size:.95rem}.adminLoadingSpinner{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 0;color:var(--text-body);font-size:.9rem}.adminSpinner{width:2rem;height:2rem;border:2.5px solid var(--line);border-top-color:var(--navy);border-radius:50%;animation:spin .6s linear infinite}.adminSearchError{color:var(--danger);font-size:.85rem;margin-bottom:1rem}@media (max-width:880px){.adminLayout{grid-template-columns:1fr}.adminSidebar{position:relative;height:auto;flex-direction:row;align-items:center;flex-wrap:wrap}.adminSidebarBrand{border-bottom:none;border-right:1px solid rgba(255,255,255,.1);padding:1rem 1.2rem}.adminSidebarNav{display:flex;padding:0}.adminNavItem{padding:.75rem 1rem}.adminNavItem.active{border-left:none;border-bottom:3px solid var(--white)}.adminLogoutButton{border-top:none;border-left:1px solid rgba(255,255,255,.1);padding:.75rem 1rem;margin-left:auto}.adminContent{padding:2rem 1.5rem}.adminDualSearch{grid-template-columns:1fr}.adminBookingFilterRow{flex-direction:column}.adminBookingFilterGroup.adminBookingFilterWide{flex:1 1}.adminBookingFilterActions{width:100%}.adminCommissionRow{flex-wrap:wrap;gap:1rem}.adminBookingGrid,.adminEditFormGrid{grid-template-columns:1fr}.adminBookingHeaderLeft{flex-wrap:wrap}.adminBookingHotel{white-space:normal}}@media (max-width:760px){.adminContent{padding:1.5rem 1rem}.adminHotelCard,.adminSearchBarInline{flex-direction:column}.adminHotelCard{align-items:flex-start;gap:.75rem}.adminFavButton{align-self:flex-end}.adminBookingHeader{flex-direction:column;align-items:flex-start;gap:.75rem}.adminBookingHeaderRight{width:100%;justify-content:space-between}}.adminGuestsHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.adminGuestsHeader h1{margin:.25rem 0 0;font-family:Cormorant Garamond,Georgia,serif;color:var(--navy);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:500}.adminGuestsSummary{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1.5rem 2rem;margin-bottom:1.25rem}.adminGuestsSummaryGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1rem 1.5rem;gap:1rem 1.5rem}.adminGuestsSummaryLabel{display:block;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-body);margin-bottom:.25rem}.adminGuestsSection{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1.5rem 2rem;margin-bottom:1.25rem}.adminGuestsSectionHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.adminGuestsSectionHeader h2{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;font-size:1.4rem;color:var(--navy)}.adminGuestGroup{margin-bottom:1.25rem}.adminGuestGroup:last-child{margin-bottom:0}.adminGuestGroupTitle{margin:0 0 .75rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-body)}.adminGuestCard{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border:1px solid var(--line);border-radius:.5rem;margin-bottom:.5rem;background:var(--off-white)}.adminGuestCardInfo{display:flex;align-items:center;gap:.75rem}.adminGuestCardName{font-size:.95rem;font-weight:600;color:var(--navy)}.adminGuestCardRole{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .5rem;border-radius:999px}.adminGuestCardRole.role-adult{background:#d1ecf1;color:#0c5460}.adminGuestCardRole.role-child{background:#fff3cd;color:#856404}.adminGuestCardActions{display:flex;gap:.5rem}.adminGuestEditBtn{padding:.3rem .75rem;background:transparent;color:var(--navy);border:1px solid var(--navy);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.adminGuestEditBtn:hover{background:var(--navy);color:var(--white)}.adminGuestDeleteBtn{padding:.3rem .75rem;background:transparent;color:var(--danger,#dc3545);border:1px solid var(--danger,#dc3545);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.adminGuestDeleteBtn:hover:not(:disabled){background:var(--danger,#dc3545);color:var(--white)}.adminGuestDeleteBtn:disabled{opacity:.5;cursor:not-allowed}.adminGuestFormCard{padding:1.25rem;border:1px solid var(--line);border-radius:.5rem;margin-bottom:.75rem;background:var(--off-white);animation:dpFadeIn .2s ease}.adminGuestFormCard h4{margin:0 0 .75rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}.adminGuestFormRow{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:.75rem;gap:.75rem;align-items:end}.adminGuestFormGroup{display:flex;flex-direction:column;gap:.3rem}.adminGuestFormGroup label{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-body)}.adminGuestFormGroup input,.adminGuestFormGroup select{padding:.5rem .7rem;border:1px solid var(--line);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.88rem;color:var(--navy);background:var(--white)}.adminGuestFormGroup input:focus,.adminGuestFormGroup select:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 2px rgba(42,42,122,.1)}.adminGuestFormActions{display:flex;gap:.5rem;margin-top:.75rem}.adminBookingGuestsBtn{text-decoration:none;display:inline-flex;align-items:center}@media (max-width:768px){.adminGuestsHeader{flex-direction:column}.adminGuestsSummaryGrid{grid-template-columns:repeat(2,1fr)}.adminGuestFormRow{grid-template-columns:1fr}.adminGuestCard{flex-direction:column;align-items:flex-start;gap:.5rem}}.profileInfoDl{margin:.75rem 0 1rem;display:grid;grid-template-columns:auto 1fr;grid-gap:.3rem 1rem;gap:.3rem 1rem;font-size:.9rem}.profileInfoDl dt{color:var(--text-body);font-weight:600;font-size:.78rem}.profileInfoDl dd{margin:0;color:var(--navy)}.profileSectionTitle{margin:0 0 1rem;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;font-size:1.5rem;color:var(--navy);display:flex;justify-content:space-between;align-items:center}.profileBookingCount{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;border-radius:999px;background:var(--navy);color:var(--white)}.editGuestsLink,.profileBookingCount{font-family:Manrope,sans-serif;font-size:.72rem;font-weight:700}.editGuestsLink{letter-spacing:.1em;text-transform:uppercase;color:var(--navy);text-decoration:underline;text-underline-offset:2px}.guestEmptyState{text-align:center;padding:1rem 0}.guestEmptyState p{color:var(--text-body);margin:0}.setupGuestsLink{display:inline-block;margin-top:.75rem;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);border:1.5px solid var(--navy);border-radius:999px;padding:.5rem 1.2rem;text-decoration:none;transition:all .15s ease}.setupGuestsLink:hover{background:var(--navy);color:var(--white)}.guestDisplayList{display:flex;flex-direction:column}.guestDisplayGroup{padding:.75rem 0;border-bottom:1px solid var(--line)}.guestDisplayGroup:last-child{border-bottom:none}.guestDisplayRole{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin:0 0 .5rem}.guestDisplayDl{margin:0;display:grid;grid-template-columns:auto 1fr;grid-gap:.25rem .75rem;gap:.25rem .75rem;font-size:.85rem}.guestDisplayDl dt{color:var(--text-body);font-weight:600;font-size:.78rem}.guestDisplayDl dd{margin:0;color:var(--navy)}.childDl{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--line)}.profileBookingsList{display:flex;flex-direction:column;gap:.75rem}.profileBookingCard{background:var(--white);border:1px solid var(--line);border-radius:.75rem;overflow:hidden;box-shadow:0 2px 12px rgba(26,26,94,.05);transition:box-shadow .2s ease}.profileBookingCard:hover{box-shadow:0 4px 20px rgba(26,26,94,.08)}.profileBookingCard.expanded{box-shadow:0 8px 32px rgba(26,26,94,.1)}.profileBookingHeader{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;padding:1.1rem 1.5rem;border:none;background:transparent;cursor:pointer;text-align:left;font-family:Manrope,sans-serif;transition:background .1s ease}.profileBookingHeader:hover{background:var(--off-white)}.profileBookingHeaderLeft{display:flex;align-items:center;gap:1rem;min-width:0;flex:1 1}.profileBookingStatus{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;flex-shrink:0;white-space:nowrap}.profileBookingStatus.status-pending{background:#fff3cd;color:#856404}.profileBookingStatus.status-confirmed{background:#d4edda;color:#155724}.profileBookingStatus.status-cancelled{background:#f8d7da;color:#721c24}.profileBookingStatus.status-completed{background:#d1ecf1;color:#0c5460}.profileBookingHotel{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profileBookingSubline{margin:0;font-size:.8rem;color:var(--text-body);white-space:nowrap;flex-shrink:0}.profileBookingHeaderRight{display:flex;align-items:center;gap:1.2rem;flex-shrink:0}.profileBookingPrice{font-size:.95rem;font-weight:700;color:var(--navy);white-space:nowrap}.profileBookingDate{font-size:.78rem;color:var(--text-body);white-space:nowrap}.profileBookingChevron{font-size:.75rem;color:var(--text-body);transition:transform .2s ease;display:inline-block}.profileBookingChevron.open{transform:rotate(180deg)}.profileBookingDetails{border-top:1px solid var(--line);padding:1.5rem;animation:dpFadeIn .2s ease}.profileBookingGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem}.profileBookingSection h4{margin:0 0 .75rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);padding-bottom:.5rem;border-bottom:1px solid var(--line)}.profileBookingDl{margin:0;display:grid;grid-template-columns:auto 1fr;grid-gap:.35rem 1rem;gap:.35rem 1rem;font-size:.85rem}.profileBookingDl dt{color:var(--text-body);font-weight:600;font-size:.78rem;white-space:nowrap}.profileBookingDl dd{margin:0;color:var(--navy);word-break:break-word}.profileBookingMono{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.75rem;background:var(--off-white);padding:.1rem .4rem;border-radius:.25rem}.profileBookingExtras{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.profileBookingExtraItem h4{margin:0 0 .4rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}.profileBookingExtraItem p{margin:0;font-size:.85rem;color:var(--text-body);line-height:1.5}.profileBookingNotes{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.profileNotesHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.profileNotesHeader h4{margin:0;font-size:.68rem;letter-spacing:.14em}.profileNotesEditBtn,.profileNotesHeader h4{font-weight:700;text-transform:uppercase;color:var(--navy)}.profileNotesEditBtn{padding:.3rem .8rem;background:transparent;border:1.5px solid var(--navy);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.72rem;letter-spacing:.04em;cursor:pointer;transition:all .15s ease}.profileNotesEditBtn:hover{background:var(--navy);color:var(--white)}.profileNotesText{line-height:1.5}.profileNotesEmpty,.profileNotesText{margin:0;font-size:.85rem;color:var(--text-body)}.profileNotesEmpty{opacity:.5;font-style:italic}.profileNotesSaved{margin:0 0 .5rem;font-size:.78rem;font-weight:600;color:#155724}.profileNotesForm{animation:dpFadeIn .2s ease}.profileNotesTextarea{width:100%;padding:.6rem .75rem;border:1px solid var(--line);border-radius:.5rem;font-family:Manrope,sans-serif;font-size:.85rem;color:var(--navy);background:var(--white);resize:vertical;min-height:4rem}.profileNotesTextarea:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 2px rgba(42,42,122,.1)}.profileNotesActions{display:flex;gap:.5rem;margin-top:.6rem}.profileNotesSaveBtn{padding:.4rem 1.2rem;background:var(--navy);color:var(--white);border:none;border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s ease}.profileNotesSaveBtn:hover:not(:disabled){background:var(--navy-light)}.profileNotesSaveBtn:disabled{opacity:.5;cursor:not-allowed}.profileNotesCancelBtn{padding:.4rem 1rem;background:transparent;color:var(--text-body);border:1px solid var(--line);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.75rem;font-weight:600;cursor:pointer}.profileNotesCancelBtn:hover:not(:disabled){border-color:var(--navy);color:var(--navy)}.profileEmailSection{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line,#e0dfd9)}.profileEmailError{color:#c0392b;font-size:.78rem;margin:0 0 .5rem}.profileEmailInput{width:100%;padding:.5rem .75rem;border:1px solid var(--line,#e0dfd9);border-radius:.4rem;font-family:Manrope,sans-serif;font-size:.85rem;color:var(--navy);background:var(--white);margin-bottom:.5rem}.profileEmailInput:focus{outline:none;border-color:var(--navy)}.guestSetupPage{min-height:100vh;background:var(--off-white)}.guestSetupLayout{width:min(840px,92vw);margin:0 auto;padding:2.5rem 0 3rem}.guestSetupHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.guestSetupHeader h1{margin:.25rem 0 0;font-family:Cormorant Garamond,Georgia,serif;color:var(--navy);font-size:clamp(2rem,5vw,3rem);font-weight:500}.guestSetupIntro{margin:0 0 1.5rem;color:var(--text-body);font-size:.92rem;line-height:1.6}.guestSection{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1.5rem 2rem;margin-bottom:1.25rem}.guestSectionTitle{margin:0 0 1.25rem;font-family:Cormorant Garamond,Georgia,serif;font-weight:500;font-size:1.5rem;color:var(--navy);padding-bottom:.75rem;border-bottom:1px solid var(--line)}.guestFormGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.guestFormGroup{display:flex;flex-direction:column;gap:.35rem}.guestFormLabel{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:700;opacity:.6}.guestInput,.guestSelect{width:100%;min-height:2.7rem;border:1px solid var(--line);border-radius:.5rem;padding:.55rem .75rem;font-size:.95rem;font-family:Manrope,sans-serif;color:var(--navy);background:var(--white);box-sizing:border-box}.guestInput:focus,.guestSelect:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.guestEmptyNote{margin:0;color:var(--text-body);font-size:.88rem}.childCard{padding:1rem 0;border-bottom:1px solid var(--line)}.childCard:last-of-type{border-bottom:none}.childCardHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.childCardLabel{font-size:.72rem;letter-spacing:.12em;color:var(--navy)}.childCardLabel,.removeChildButton{font-weight:700;text-transform:uppercase}.removeChildButton{border:1px solid var(--danger);border-radius:999px;background:transparent;color:var(--danger);cursor:pointer;padding:.3rem .85rem;font-size:.68rem;letter-spacing:.08em;transition:all .15s ease}.removeChildButton:hover{background:var(--danger);color:var(--white)}.addChildButton{display:inline-flex;align-items:center;gap:.4rem;margin-top:.75rem;border:1.5px dashed var(--navy);border-radius:999px;background:transparent;color:var(--navy);padding:.5rem 1.2rem;cursor:pointer;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:all .15s ease}.addChildButton:hover{background:var(--navy);color:var(--white)}.addChildButton:disabled{opacity:.4;cursor:not-allowed}.addSecondaryToggle{border:1.5px dashed var(--navy);border-radius:999px;background:transparent;color:var(--navy);padding:.5rem 1.2rem;cursor:pointer;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:all .15s ease}.addSecondaryToggle:hover{background:var(--navy);color:var(--white)}.removeSecondaryButton{display:inline-block;margin-top:.75rem;border:1px solid var(--danger);border-radius:999px;background:transparent;color:var(--danger);cursor:pointer;padding:.4rem 1rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:all .15s ease}.removeSecondaryButton:hover{background:var(--danger);color:var(--white)}.guestActions{display:flex;gap:1rem;margin-top:1.5rem;justify-content:flex-end}.skipLink{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--navy);border-radius:999px;min-height:2.5rem;padding:0 1.2rem;text-decoration:none;color:var(--navy);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;transition:all .15s ease}.saveGuestsButton,.skipLink:hover{color:var(--white);background:var(--navy)}.saveGuestsButton{min-width:130px;height:2.6rem;border-radius:999px;border:none;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.saveGuestsButton:hover{background:var(--navy-deep)}.saveGuestsButton:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.guestFormGrid,.profileBookingGrid{grid-template-columns:1fr}.profileBookingHeaderLeft{flex-wrap:wrap}.profileBookingHotel{white-space:normal}.profileBookingHeader{flex-direction:column;align-items:flex-start;gap:.75rem}.profileBookingHeaderRight{width:100%;justify-content:space-between}.guestActions,.guestSetupHeader{flex-direction:column}.guestSection{padding:1.25rem 1rem}}.kidsPickerWrap{width:100%;position:relative}.kidsPickerRow{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;min-height:2.9rem;padding:.4rem .65rem;background:var(--white);border:1px solid var(--line);border-radius:.5rem;cursor:default}.kidsPickerChip{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .5rem .2rem .6rem;background:var(--navy);color:var(--white);border-radius:9999px;font-size:.76rem;font-weight:600;white-space:nowrap;line-height:1.4}.kidsPickerRemove{background:none;border:none;color:inherit;cursor:pointer;padding:0 .1rem;line-height:1;font-size:1rem;opacity:.65;font-family:inherit}.kidsPickerRemove:hover{opacity:1}.kidsPickerAddWrap{position:relative}.kidsPickerAddBtn{background:none;border:1px dashed var(--line);border-radius:9999px;padding:.22rem .65rem;font-size:.76rem;cursor:pointer;color:var(--navy);white-space:nowrap;font-family:Manrope,sans-serif;font-weight:500;line-height:1.4;transition:background .15s,border-color .15s,color .15s}.kidsPickerAddBtn:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.kidsPickerPopup{position:absolute;top:calc(100% + .5rem);left:0;z-index:200;background:var(--white);border:1px solid var(--line);border-radius:.5rem;box-shadow:0 6px 24px rgba(26,26,94,.14);padding:.85rem .9rem;display:flex;flex-direction:column;gap:.55rem;min-width:150px}.kidsPickerPopupLabel{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--navy);opacity:.55;margin:0}.kidsPickerAgeSelect{width:100%;padding:.42rem .55rem;border:1px solid var(--line);border-radius:.375rem;font-size:.88rem;font-family:Manrope,sans-serif;background:var(--white);color:var(--navy);cursor:pointer}.kidsPickerAgeSelect:focus{outline:none;border-color:var(--navy-light);box-shadow:0 0 0 3px rgba(26,26,94,.1)}.kidsPickerConfirm{padding:.42rem .75rem;background:var(--navy);color:var(--white);border:none;border-radius:.375rem;font-size:.84rem;font-family:Manrope,sans-serif;font-weight:600;cursor:pointer;transition:background .15s}.kidsPickerConfirm:hover{background:var(--navy-deep)}.kidsPickerWrap--dark .kidsPickerRow{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);min-height:2.2rem;padding:.3rem .55rem}.kidsPickerWrap--dark .kidsPickerChip{background:rgba(255,255,255,.18);color:var(--white)}.kidsPickerWrap--dark .kidsPickerAddBtn{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.85)}.kidsPickerWrap--dark .kidsPickerAddBtn:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.5);color:var(--white)}.debugToggleBtn{position:fixed;bottom:1rem;right:1rem;z-index:99999;padding:.45rem 1rem;background:var(--navy,#1a1a5e);color:var(--white,#fff);border:none;border-radius:999px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:.06em;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.25);transition:background .15s ease,transform .1s ease}.debugToggleBtn:hover{background:var(--navy-light,#2a2a7a);transform:scale(1.05)}.debugPanel{position:fixed;bottom:3.5rem;right:1rem;z-index:99998;width:min(520px,calc(100vw - 2rem));max-height:70vh;background:var(--white,#fff);border:1px solid var(--line,#e0dfd9);border-radius:.75rem;box-shadow:0 12px 48px rgba(0,0,0,.2);display:flex;flex-direction:column;overflow:hidden;animation:dpFadeIn .15s ease}.debugPanelHeader{display:flex;justify-content:space-between;align-items:center;padding:.65rem 1rem;border-bottom:1px solid var(--line,#e0dfd9);background:var(--off-white,#f8f7f4)}.debugPanelTitle{font-family:Manrope,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy,#1a1a5e)}.debugPanelActions{display:flex;gap:.4rem;align-items:center}.debugClearBtn{padding:.2rem .6rem;background:transparent;border:1px solid var(--line,#e0dfd9);border-radius:.3rem;font-family:Manrope,sans-serif;font-size:.65rem;font-weight:600;color:var(--text-body,#6b6b6b);cursor:pointer;transition:all .12s ease}.debugClearBtn:hover{border-color:var(--navy,#1a1a5e);color:var(--navy,#1a1a5e)}.debugCloseBtn{width:1.5rem;height:1.5rem;background:transparent;border:none;font-size:1.1rem;color:var(--text-body,#6b6b6b);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:background .12s ease}.debugCloseBtn:hover{background:var(--line,#e0dfd9)}.debugPanelBody{overflow-y:auto;flex:1 1;padding:.5rem}.debugEmpty{text-align:center;padding:2rem 1rem;color:var(--text-body,#6b6b6b);font-size:.82rem;margin:0}.debugEntry{border:1px solid var(--line,#e0dfd9);border-radius:.5rem;margin-bottom:.35rem;overflow:hidden}.debugEntryHeader{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:transparent;border:none;cursor:pointer;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.72rem;text-align:left;transition:background .1s ease}.debugEntryHeader:hover{background:var(--off-white,#f8f7f4)}.debugSource{font-family:Manrope,sans-serif;font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;padding:.12rem .4rem;border-radius:.2rem;background:var(--navy,#1a1a5e);color:var(--white,#fff)}.debugMethod,.debugSource{flex-shrink:0;font-weight:700}.debugUrl{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--navy,#1a1a5e)}.debugStatus{flex-shrink:0;font-weight:700}.debugStatusOk{color:#155724}.debugStatusErr{color:#721c24}.debugStatusWarn{color:#856404}.debugChevron,.debugDuration{flex-shrink:0;color:var(--text-body,#6b6b6b)}.debugChevron{font-size:.65rem}.debugEntryBody{border-top:1px solid var(--line,#e0dfd9);padding:.75rem;background:var(--off-white,#f8f7f4);animation:dpFadeIn .15s ease}.debugSection{margin-bottom:.75rem}.debugSection:last-child{margin-bottom:0}.debugSectionLabelRow{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.debugSectionLabel{font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.debugCopyBtn,.debugSectionLabel{font-family:Manrope,sans-serif;color:var(--text-body,#6b6b6b)}.debugCopyBtn{padding:.15rem .5rem;background:transparent;border:1px solid var(--line,#e0dfd9);border-radius:.25rem;font-size:.6rem;font-weight:600;cursor:pointer;transition:all .12s ease}.debugCopyBtn:hover{border-color:var(--navy,#1a1a5e);color:var(--navy,#1a1a5e)}.debugJson{margin:0;padding:.6rem .75rem;background:var(--white,#fff);border:1px solid var(--line,#e0dfd9);border-radius:.4rem;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.68rem;line-height:1.5;overflow-x:auto;max-height:300px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;color:var(--navy,#1a1a5e)}