.release-version{display:inline-block;color:var(--muted, #526879);font-size:12px;font-weight:500;line-height:1.5;white-space:nowrap;font-variant-numeric:tabular-nums}.bookable-quote-flow .bookable-quote-progress{padding:13px;border:1px solid var(--line);border-radius:11px;display:grid;gap:9px;background:#fff}.bookable-quote-flow .bookable-quote-progress>div{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:14px}.bookable-quote-flow .bookable-quote-progress>div.complete,.bookable-quote-flow .bookable-quote-progress>div.current{color:var(--forest);font-weight:600}.bookable-quote-flow .bookable-quote-progress>p{margin:3px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.bookable-quote-flow .bookable-quote-result{padding:13px;border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;background:#fff}.bookable-quote-flow .bookable-quote-result>div{display:grid;gap:3px}.bookable-quote-flow .bookable-quote-result span{color:var(--muted);font-size:13px;line-height:1.5}.bookable-quote-flow .bookable-quote-result a{grid-column:1 / -1;min-height:44px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:var(--forest);font-size:14px;font-weight:600;text-decoration:none}.bookable-quote-flow .bookable-quote-result.success{border-color:#23715352;background:#f2faf6}.bookable-quote-flow .bookable-quote-result.warning{border-color:#b67f2761;background:#fff9ed}.bookable-quote-flow .bookable-quote-recovery span{font-size:13px;line-height:1.5}.bookable-quote-flow .quote-recovery-reference{overflow-wrap:anywhere}.bookable-quote-flow .quote-submit-section>.quote-recovery-reference{min-width:0;color:var(--muted);font-size:13px;line-height:1.5}.bookable-quote-flow .quote-recovery-actions{display:flex;flex-wrap:wrap;gap:8px}.bookable-quote-flow .quote-recovery-actions>button{min-width:0;min-height:44px;flex:1 1 120px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;white-space:nowrap}.bookable-quote-flow .quote-recovery-actions>.quote-refresh-status{flex:1 0 auto}.bookable-quote-flow .quote-recovery-actions>.quote-refresh-status>svg{flex-shrink:0}.bookable-quote-flow .quote-recovery-support{border:1px solid var(--line);border-radius:8px;color:var(--forest);background:#fff;font-weight:600}.bookable-quote-flow .quote-resend-request{min-height:44px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;white-space:nowrap}.bookable-quote-flow .quote-refresh-status{min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--forest);background:#fff;font-size:14px;font-weight:600}.bookable-quote-flow .quote-phone-error{color:#a03232}.bookable-quote-flow .quote-recovery-dialog{width:min(600px,calc(100% - 24px))}.bookable-quote-flow .quote-recovery-dialog .quote-form{grid-template-columns:minmax(0,1fr)}.bookable-quote-flow .quote-recovery-dialog .selected-offer-summary{border-radius:15px}.bookable-quote-flow .quote-recovery-dialog .selected-offer-summary>span{color:var(--muted);font-size:13px;font-weight:600}.quote-continuation{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;padding:4px 8px 4px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--forest)}.quote-continuation-open{min-height:44px;flex:1;padding:8px 0;border:0;background:transparent;color:inherit;text-align:left;font-size:14px;font-weight:600}.quote-continuation-feedback{flex-basis:100%;margin:0 0 8px;font-size:13px;line-height:1.5;color:#a03232}.quote-continuation .icon-button:disabled{cursor:wait;opacity:.55}.quote-continuation .icon-button{width:44px;min-width:44px;height:44px}.quote-continuation button:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.bookable-quote-flow .quote-storage-note{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.bookable-quote-flow .quote-support-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;color:var(--forest);font-weight:600}.bookable-quote-flow .quote-recovery-actions>.quote-support-link{flex:1 0 auto;padding:10px 4px;font-size:14px;white-space:nowrap}.bookable-quote-flow .quote-phone-field{display:grid;gap:7px}.bookable-quote-flow .quote-phone-input input[aria-invalid=true]{border-color:#a03232}.bookable-quote-flow .quote-booking-disclosure{display:grid;gap:6px;color:var(--muted);font-size:13px;line-height:1.5}.bookable-quote-flow .quote-booking-disclosure p{margin:0}.bookable-quote-flow .selected-price-total dt{display:block}.bookable-quote-flow .selected-price-total dt small{display:inline-block;font-weight:400;white-space:nowrap}.bookable-quote-flow .selected-price-details{min-width:0;border:1px solid var(--line);border-radius:10px}.bookable-quote-flow .selected-price-details>summary{min-height:44px;padding:12px;color:var(--forest);font-size:13px;font-weight:600;line-height:20px;cursor:pointer}.bookable-quote-flow .selected-price-details>summary:focus-visible{outline:2px solid var(--forest);outline-offset:3px;border-radius:10px}.bookable-quote-flow .selected-price-details .selected-price-facts{border:0;border-top:1px solid var(--line);border-radius:0 0 10px 10px}.bookable-quote-flow .selected-price-details .selected-price-facts>div:last-child{background:transparent}.bookable-quote-flow .selected-fx-source{margin:0;padding:10px 12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}@media(max-width:820px){.bookable-quote-flow .quote-see-perks-trigger{min-height:44px}.bookable-quote-flow .quote-form-section:first-child>.form-section-heading{display:none}.bookable-quote-flow .selected-offer-summary,.bookable-quote-flow .quote-contact-body{padding:16px;gap:12px}.bookable-quote-flow .form-section-heading{min-height:44px;padding:10px 16px}}@font-face{font-family:Fraunces;src:local("Georgia"),local("Times New Roman");font-display:swap}:root{font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#102f49;background:#f2f7f8;font-synthesis:none;text-rendering:optimizeLegibility;--forest: #073b64;--forest-deep: #052b49;--ivory: #f2f7f8;--sand: #e6d8c2;--clay: #c96f4d;--gold: #c79a4c;--mint: #d8edf3;--ink: #102f49;--muted: #526879;--surface: #ffffff;--surface-subtle: #f2f7f8;--focus: #147a9a;--font-ui: "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--line: rgba(7, 59, 100, .15);--shadow: 0 16px 48px rgba(7, 46, 77, .12);--page-gutter: 60px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;min-height:100vh;background:radial-gradient(circle at 82% 8%,rgba(17,154,200,.09),transparent 27%),linear-gradient(rgba(7,59,100,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,59,100,.035) 1px,transparent 1px),#f7f3ea;background-size:42px 42px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}:is(button,a,input,select,textarea,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,a,input,select,textarea{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:clip}.app-shell>main{flex:1 0 auto}.app-shell>header,.app-shell>footer{flex:0 0 auto}.site-header{width:min(1380px,calc(100% - 48px));margin:0 auto;height:92px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.brand img{width:168px;max-height:58px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:10px}.site-header button{min-height:44px;border-radius:999px;border:1px solid var(--line);background:#f8f4ebcc;color:var(--forest);padding:0 15px;display:inline-flex;align-items:center;gap:8px}main{width:min(1380px,calc(100% - 48px));margin:0 auto}.hero-section{position:relative;min-height:610px;padding:82px 7vw 42px;background:radial-gradient(circle at 83% 17%,rgba(207,224,212,.35),transparent 26%),linear-gradient(128deg,#12352f,#173d37 57%,#224d43);border-radius:34px;color:var(--ivory);isolation:isolate;box-shadow:var(--shadow)}.hero-section:after{content:"";position:absolute;width:420px;height:420px;right:-130px;bottom:-190px;border-radius:50%;background:var(--clay);opacity:.82;z-index:-1}.hero-orbit{position:absolute;border:1px solid rgba(248,244,235,.15);border-radius:50%;pointer-events:none}.orbit-one{width:460px;height:460px;right:-40px;top:-170px}.orbit-two{width:290px;height:290px;right:45px;top:-86px}.hero-copy{max-width:840px;position:relative;z-index:1}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.22em;font-weight:600}.eyebrow{color:#e1b976}h1,h2,h3,p{margin-top:0}.hero-copy h1{margin:18px 0 22px;max-width:820px;font-family:var(--font-ui);font-size:clamp(52px,6.3vw,96px);line-height:.96;font-weight:500;letter-spacing:-.045em}.hero-copy p{color:#f8f4ebb8;font-size:17px;line-height:1.7;max-width:620px}.search-wrap{position:relative;z-index:2;margin-top:54px}.demo-banner{display:flex;align-items:center;gap:10px;width:fit-content;color:#2b4b42;background:#f1d89e;padding:10px 16px;border-radius:12px 12px 0 0;font-size:12px}.demo-banner div{display:flex;gap:8px}.demo-banner span{opacity:.72}.search-card{background:#faf7effa;color:var(--forest);border-radius:22px;padding:18px;display:grid;grid-template-columns:2fr 1fr 1fr .7fr .7fr auto;align-items:end;gap:8px;box-shadow:0 18px 50px #0519163d}.demo-banner+.search-card{border-top-left-radius:0}.field{min-height:72px;border-right:1px solid var(--line);padding:8px 16px;display:flex;flex-direction:column;justify-content:center}.field label,.quote-form label,.auth-dialog label{font-size:14px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--muted)}.field input,.field select{width:100%;margin-top:7px;padding:0;border:0;outline:none;background:transparent;color:var(--forest);font-size:15px;font-weight:500}.field input:focus-visible,.field select:focus-visible{border-radius:6px;outline:3px solid rgba(17,154,200,.32);outline-offset:3px}.stepper{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.stepper button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--forest)}.stepper>span{font-size:15px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.35}.child-ages{grid-column:1 / -2;display:flex;gap:12px;padding:2px 14px 8px}.child-ages label{font-size:11px;color:var(--muted)}.child-ages select{margin-left:7px;border:1px solid var(--line);border-radius:7px;padding:4px}.form-error{grid-column:1 / -2;color:#a34234;font-size:12px;margin:0 14px}.date-field-error{color:#a4492d!important;font-size:12px!important;line-height:1.35}.search-button,.primary-button{border:0;background:var(--clay);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600}.search-button{min-height:72px;border-radius:14px;padding:0 22px;white-space:nowrap}.trust-strip{display:flex;gap:34px;margin-top:24px;color:#f8f4eb8c;font-size:10px;letter-spacing:.16em}.progress-card,.error-banner,.success-banner,.search-coverage-warning{margin:24px auto 0;max-width:860px;border-radius:18px;padding:18px 22px}.progress-card{display:flex;align-items:center;gap:16px;background:#fffaf0;border:1px solid var(--line);box-shadow:0 12px 30px #173d3714}.progress-card div:nth-child(2){flex:1;display:flex;flex-direction:column;gap:4px}.progress-card span{color:var(--muted);font-size:13px}.progress-spinner{width:26px;height:26px;border:3px solid var(--mint);border-top-color:var(--clay);border-radius:50%;animation:spin .8s linear infinite}.error-banner{background:#f6ded5;color:#823a2c}.success-banner{background:var(--mint);color:var(--forest)}.results-section{padding:92px 0 30px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading>div{display:flex;align-items:baseline;gap:14px}.section-heading h2,.always-on-section h2{font-family:var(--font-ui);font-size:clamp(34px,4vw,54px);line-height:1.05;font-weight:500;letter-spacing:-.03em;margin-bottom:0}.section-heading>p{margin-bottom:6px;max-width:420px;text-align:right;color:var(--muted);font-size:13px}.hotel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.hotel-card{background:#fbf8f1;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 16px 44px #173d3712}.hotel-image-wrap{height:230px;position:relative;overflow:hidden;background:var(--sand)}.image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--sand),var(--mint))}.benefit-badge{position:absolute;left:14px;top:14px;padding:8px 10px;border-radius:999px;background:#f8f4ebed;color:var(--forest);display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600}.hotel-card-body{padding:20px}.hotel-meta{min-height:28px;display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px}.hotel-meta span{display:inline-flex;align-items:center;gap:5px}.hotel-card h3,.room-offer h3{font-family:var(--font-ui);font-weight:500;letter-spacing:-.02em}.hotel-card h3{font-size:25px;min-height:62px;margin:9px 0 22px}.price-row{display:flex;justify-content:space-between;gap:16px;padding-top:15px;border-top:1px solid var(--line)}.price-row>div{display:flex;flex-direction:column}.price-row strong{font-size:23px;font-weight:500}.price-row small{color:var(--muted);font-size:10px}.total-price{align-items:flex-end;text-align:right}.total-price strong{font-size:16px}.hotel-card-body>button{width:100%;margin-top:18px;height:44px;border-radius:11px;border:1px solid var(--forest);background:transparent;color:var(--forest);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.empty-state{min-height:260px;margin:74px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:26px;color:var(--muted)}.empty-number{font-family:var(--font-ui);font-size:82px;color:var(--sand)}.empty-state span{color:var(--clay);font-size:11px;letter-spacing:.15em}.empty-state p{margin:8px 0 0}.always-on-section{margin:78px 0 48px;padding:48px;background:#dfd1b9;border-radius:26px;display:flex;justify-content:space-between;align-items:center;gap:32px}.always-on-section>div{max-width:800px}.always-on-section .eyebrow{color:#975033}.always-on-section button{min-width:250px;min-height:58px;border:0;border-radius:14px;padding:0 20px;background:var(--forest);color:#fff;display:flex;align-items:center;justify-content:center;gap:9px}footer{width:min(1380px,calc(100% - 48px));margin:0 auto;border-top:1px solid var(--line);padding:24px 0 36px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.manual-hotel-preference{margin:16px 16px 0;display:grid;gap:4px}.manual-hotel-preference span{color:var(--muted);font-size:13px}.manual-hotel-preference strong{color:var(--ink);font-size:16px;overflow-wrap:anywhere}.quote-form-error a{text-decoration:underline;text-underline-offset:3px}.drawer-backdrop{position:fixed;inset:0;z-index:100;background:#071a16a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:flex-end;animation:fade-in .18s ease-out}.drawer{width:min(760px,100%);height:100%;background:var(--ivory);padding:34px;overflow-y:auto;animation:slide-in .26s cubic-bezier(.2,.8,.2,1)}.drawer-header{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:24px}.drawer-header span{color:var(--clay);font-size:11px;letter-spacing:.15em;text-transform:uppercase}.drawer-header h2{font-family:var(--font-ui);font-size:34px;font-weight:500;margin:6px 0 0}.icon-button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--forest);display:grid;place-items:center}.room-list{display:flex;flex-direction:column;gap:14px}.room-offer{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.room-title-row,.offer-footer{display:flex;justify-content:space-between;gap:18px}.rate-label{color:var(--clay);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.room-offer h3{font-size:24px;margin:6px 0}.room-offer p{color:var(--muted);font-size:13px}.room-price{text-align:right;display:flex;flex-direction:column}.room-price strong{font-size:24px}.room-price small,.offer-footer small{color:var(--muted)}.offer-facts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.offer-facts span{padding:7px 9px;border-radius:8px;background:#f3efe5;display:inline-flex;align-items:center;gap:6px;font-size:11px}.offer-facts span.positive{color:#337257;background:#e3eee6}.benefits-list{list-style:none;padding:14px;margin:0 0 18px;background:#eef1e8;border-radius:12px;display:grid;gap:8px}.benefits-list li{display:flex;align-items:center;gap:8px;font-size:12px}.offer-footer{align-items:end;border-top:1px solid var(--line);padding-top:16px}.offer-footer>div{display:flex;flex-direction:column}.offer-footer .primary-button,.quote-form .primary-button,.auth-dialog .primary-button{min-height:44px;border-radius:10px;padding:0 18px}.auth-dialog,.quote-dialog{position:relative;width:min(520px,calc(100% - 32px));margin:auto;padding:34px;border-radius:24px;background:var(--ivory);color:var(--forest);box-shadow:var(--shadow)}.auth-close{position:absolute;right:20px;top:20px}.auth-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;margin-bottom:20px;background:var(--mint)}.auth-dialog h2{font-family:var(--font-ui);font-size:28px;font-weight:600;line-height:1.2;margin:7px 0}.auth-dialog .section-kicker{color:var(--muted);font-size:12px;letter-spacing:.04em}.auth-dialog>p{color:var(--muted);line-height:1.6}.auth-dialog form,.quote-form{display:grid;gap:16px}.auth-dialog input,.quote-form input,.quote-form textarea{width:100%;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px 13px;color:var(--forest);outline:none}.auth-message{margin:14px 0 0;padding:10px;border-radius:8px;background:var(--mint);font-size:13px}.quote-dialog{max-height:calc(100vh - 32px);overflow-y:auto}.selected-offer-summary{display:flex;flex-direction:column;padding:14px;margin-bottom:20px;background:#e9eee7;border-radius:12px}.selected-offer-summary span,.selected-offer-summary small{color:var(--muted);font-size:13px}.reveal{animation:reveal .62s cubic-bezier(.2,.8,.2,1) both}.delay-one{animation-delay:.12s}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1080px){.search-card{grid-template-columns:2fr 1fr 1fr}.compact-field{border-top:1px solid var(--line)}.search-button{min-height:58px}.hotel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.search-coverage-warning{border:1px solid #e3c779;background:#fff6d8;color:#6b5315}@media(max-width:720px){.site-header,main,footer{width:min(100% - 24px,1380px)}.site-header{height:76px}.brand img{width:122px}.site-header nav{gap:5px}.site-header button{min-height:36px;padding:0 10px;font-size:11px}.account-button svg{display:none}.hero-section{min-height:auto;padding:62px 18px 30px;border-radius:22px}.hero-copy h1{font-size:clamp(46px,14vw,68px)}.hero-copy p{font-size:15px}.demo-banner{width:100%;border-radius:12px 12px 0 0}.demo-banner div{flex-direction:column;gap:2px}.search-card{grid-template-columns:1fr 1fr;border-radius:18px;padding:10px}.demo-banner+.search-card{border-radius:0 0 18px 18px}.destination-field{grid-column:1 / -1}.field{border-right:0;border-bottom:1px solid var(--line);padding:8px 10px}.child-ages,.form-error,.search-button{grid-column:1 / -1}.search-button{width:100%}.trust-strip{flex-wrap:wrap;gap:12px 20px}.section-heading{align-items:start;flex-direction:column;gap:14px}.section-heading>p{text-align:left}.hotel-grid{grid-template-columns:1fr}.hotel-image-wrap{height:210px}.always-on-section{padding:30px 22px;align-items:stretch;flex-direction:column}.always-on-section button{min-width:0;width:100%}footer{flex-direction:column}.drawer{padding:22px 16px}.room-title-row,.offer-footer{flex-direction:column}.room-price{text-align:left}.auth-dialog,.quote-dialog{padding:26px 20px}}.deals-shell{min-height:100vh;color:var(--forest);background:var(--surface-subtle)}.deals-header .dashboard-link{display:inline-flex;align-items:center;gap:5px}.deals-main{width:min(1180px,100%);margin:0 auto;padding:32px var(--page-gutter) 60px}.deals-intro{display:flex;align-items:end;justify-content:space-between;gap:28px}.deals-intro>div:first-child{max-width:760px}.deals-intro>div:first-child>span{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.deals-intro h1{margin:7px 0 8px;color:var(--ink);font:600 28px/1.2 var(--font-ui)}.deals-intro p{margin:0;color:var(--muted);font-size:16px;line-height:1.6}.deals-feed-status{min-width:250px;padding:11px 13px;border:1px solid rgba(7,59,100,.13);border-radius:10px;display:flex;align-items:center;gap:8px;color:#31566d;background:#fffdf8d6;font-size:12px}.deals-stale{margin-top:18px;padding:11px 13px;border-left:3px solid #c56c45;color:#70462f;background:#f5e8dc;font-size:13px}.deals-controls{margin-top:24px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 4px 16px #072e4d0a}.deals-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(220px,auto) auto;align-items:center;gap:9px}.deals-search{height:52px;padding-left:14px;border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;background:#fff}.deals-search svg{color:#119ac8}.deals-search input{min-width:0;height:100%;border:0;outline:0;color:var(--forest);background:transparent;font:inherit}.deals-search:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px #147a9a2e}.deals-search button{height:44px;margin-right:4px;padding:0 16px;border:0;border-radius:9px;color:#fff;background:#073b64;font-size:14px;font-weight:700}.deals-filter-toggle{min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--ink);background:#fff;font:inherit;font-size:14px;font-weight:600;white-space:nowrap}.deals-filter-toggle>span{min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;color:#fff;background:#119ac8;font-size:10px}.deals-sort{min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:8px;background:#fff;white-space:nowrap}.deals-sort>span{color:var(--muted);font-size:13px;font-weight:600}.deals-sort select{min-width:0;min-height:44px;border:0;color:var(--ink);background:#fff;font:inherit;font-size:14px;font-weight:600}.deals-filter-panel{margin-top:9px;padding-top:10px;border-top:1px solid rgba(7,59,100,.1);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:end}.deals-filter-panel>label:not(.deal-check){display:grid;gap:4px}.deals-filter-panel label>span{color:var(--muted);font-size:13px;font-weight:600}.deals-filter-panel input[type=date]{width:100%;height:44px;padding:0 10px;border:1px solid var(--line);border-radius:9px;color:var(--forest);background:#fff;font:inherit;font-size:16px}.deal-check{min-height:44px;padding:0 9px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:6px;background:#fff;white-space:nowrap}.deal-check input{accent-color:#119ac8}.deal-check span{color:var(--forest)!important;font-size:12px!important}.deals-clear{min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--ink);background:var(--surface-subtle);font-size:14px;white-space:nowrap}.deals-clear:disabled{opacity:.48;cursor:not-allowed}.deals-count{min-width:150px;color:var(--muted);font-size:12px;text-align:right;white-space:nowrap}.deals-count strong{color:var(--navy);font-size:15px}.deals-count small{margin-top:2px;display:block;color:var(--muted);font-size:12px;font-weight:500}.deal-list{margin-top:16px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);box-shadow:0 4px 16px #072e4d0a}.deal-list-heading,.deal-row{display:grid;grid-template-columns:minmax(260px,1.25fr) minmax(320px,1.7fr) minmax(165px,.75fr) minmax(165px,.75fr) 108px;gap:14px}.deal-list-heading{min-height:44px;padding:0 13px;align-items:center;color:var(--muted);background:var(--surface-subtle);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.deal-row{position:relative;min-height:84px;padding:10px 13px;border-top:1px solid rgba(7,59,100,.09);align-items:center;background:#ffffffb8;transition:background-color .15s ease,box-shadow .15s ease}.deal-list-heading+.deal-row{border-top:0}.deal-row:hover{background:#f4fafb;box-shadow:inset 3px 0 #119ac8}.deal-row-open{position:absolute;inset:0;z-index:1;width:100%;padding:0;border:0;display:block;color:transparent;background:transparent;cursor:pointer}.deal-row-open:focus-visible{outline:3px solid rgba(17,154,200,.55);outline-offset:-3px}.deal-partner-cell,.deal-details-cell,.deal-date-cell,.deal-booking-cell,.deal-action-cell{min-width:0}.deal-partner-cell{display:flex;align-items:flex-start;gap:10px}.deal-hotel-icon{flex:0 0 36px;width:36px;height:36px;border:1px solid rgba(7,59,100,.1);border-radius:8px;display:grid;place-items:center;color:#087fa4;background:#e8f5f7}.deal-partner-cell>div{min-width:0}.deal-partner-cell h2{margin:0;color:var(--ink);font:600 16px/1.4 var(--font-ui);overflow-wrap:anywhere}.deal-partner-cell p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.deal-row-labels{margin-top:5px;display:flex;flex-wrap:wrap;gap:4px}.deal-row-labels span{min-height:18px;padding:0 5px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;color:#07546c;background:#dff2f6;font-size:9px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.deal-details-cell h3{margin:0;overflow:hidden;color:var(--ink);font-size:14px;font-weight:600;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.deal-details-cell p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.deal-date-cell p,.deal-booking-cell p{margin:0;display:-webkit-box;overflow:hidden;color:#36576b;font-size:11px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deal-mobile-label{display:none}.deal-action-cell{position:relative;z-index:2;display:flex;justify-content:flex-end}.deal-row-rate{min-height:34px;padding:0 10px;border:1px solid #073b64;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#073b64;background:#fff;font:inherit;font-size:11px;font-weight:800;white-space:nowrap}.deal-row-rate:hover{color:#fff;background:#073b64}.deals-load-more,.deal-drawer footer button,.deals-gate>button{min-height:40px;padding:0 13px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:#073b64;font-weight:700}.deals-loading,.deals-empty{min-height:240px;border:1px dashed #cfc5b4;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);background:#fffdf88c}.deals-load-more{margin:18px auto 0;min-width:150px}.deals-page-disclaimer{max-width:900px;margin:18px auto 0;color:var(--muted);font-size:11px;line-height:1.55;text-align:center}.deals-gate{width:min(620px,calc(100% - 32px));min-height:calc(100vh - 150px);margin:0 auto;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.deals-gate>div{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#073b64;background:#dff2f6}.deals-gate>span{margin-top:16px;color:#119ac8;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.deals-gate h1{margin:12px 0;color:var(--forest);font:600 28px/1.2 var(--font-ui)}.deals-gate p{max-width:520px;margin:0 0 18px;color:var(--muted);line-height:1.6}.deal-drawer{width:min(700px,calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)));height:calc(100vh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:none;margin-block:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-bottom));margin-right:env(safe-area-inset-right);padding:0;border-radius:16px;overflow:hidden;align-self:center;display:flex;flex-direction:column;color:var(--forest);background:#fffdf8;box-shadow:0 28px 90px #031d3140}.deal-drawer>header{min-height:84px;padding:16px 18px;border-bottom:1px solid var(--line);flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:var(--surface)}.deal-drawer>header span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.deal-drawer>header h2{margin:3px 0 0;color:#073b64;font:600 28px/1.2 var(--font-ui)}.deal-drawer-body{min-height:0;padding:18px;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.deal-drawer-labels{display:flex;flex-wrap:wrap;gap:6px}.deal-drawer-labels span{min-height:26px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:#07546c;background:#dff2f6;font-size:11px;font-weight:700}.deal-drawer h3{margin:12px 0 7px;color:#173c55;font-size:20px;line-height:1.25}.deal-summary{margin:0;color:#3c5b6d;font-size:14px;line-height:1.65}.deal-date-details{margin:18px 0;padding:12px;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--surface-subtle)}.deal-date-details dt{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.deal-date-details dd{margin:4px 0 0;color:#24495f;font-size:12px;line-height:1.45}.deal-terms h4{margin:0 0 8px;color:#073b64;font-size:15px}.deal-terms ul{margin:0;padding-left:20px;display:grid;gap:7px}.deal-terms li{color:#3c5b6d;font-size:13px;line-height:1.5}.deal-disclaimer{margin:18px 0 0;padding:11px;border-left:3px solid #c79a4c;color:#624e2d;background:#f7efdc;font-size:11px;line-height:1.55}.deal-drawer>footer{padding:12px 18px;border-top:1px solid rgba(7,59,100,.1);flex:0 0 auto;background:#fff}.deal-drawer footer button{width:100%}@media(max-width:1180px){.deals-filter-panel{grid-template-columns:repeat(4,minmax(130px,1fr))}.deal-list-heading,.deal-row{grid-template-columns:minmax(220px,1.15fr) minmax(280px,1.55fr) minmax(140px,.72fr) minmax(140px,.72fr) 42px;gap:10px}.deal-row-rate{width:34px;padding:0}.deal-row-rate span{display:none}}@media(max-width:720px){.deals-main{padding:28px var(--page-gutter) 40px}.deals-header nav{width:100%;overflow-x:auto}.deals-intro{align-items:stretch;flex-direction:column;gap:14px}.deals-intro h1{font-size:28px}.deals-feed-status{min-width:0}.deals-controls{padding:8px}.deals-toolbar{grid-template-columns:1fr auto}.deals-search{grid-column:1 / -1}.deals-sort{min-width:0}.deals-sort>span{display:none}.deals-count{text-align:right}.deals-filter-panel{grid-template-columns:1fr 1fr}.deals-clear{grid-column:1 / -1}.deal-list-heading{display:none}.deal-list{margin-top:10px}.deal-row{min-height:0;padding:11px;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;align-items:start}.deal-row+.deal-row{border-top:1px solid rgba(7,59,100,.1)}.deal-partner-cell{grid-column:1}.deal-hotel-icon{flex-basis:32px;width:32px;height:32px}.deal-partner-cell h2{font-size:15px}.deal-action-cell{grid-column:2;grid-row:1}.deal-row-rate{width:auto;min-height:32px;padding:0 8px}.deal-row-rate span{display:inline}.deal-details-cell{grid-column:1 / -1;padding-top:1px}.deal-details-cell h3,.deal-details-cell p{white-space:normal}.deal-details-cell p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deal-date-cell,.deal-booking-cell{padding-top:7px;border-top:1px solid rgba(7,59,100,.08)}.deal-mobile-label{margin-bottom:3px;display:block;color:#70808b;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.deal-date-cell p,.deal-booking-cell p{-webkit-line-clamp:3}.deal-drawer{width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;border-radius:0;align-self:stretch}.deal-drawer>header{padding-top:calc(16px + env(safe-area-inset-top));padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))}.deal-drawer-body{padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))}.deal-drawer>footer{padding-right:max(14px,env(safe-area-inset-right));padding-bottom:calc(12px + env(safe-area-inset-bottom));padding-left:max(14px,env(safe-area-inset-left))}.deal-date-details{grid-template-columns:1fr}}.destination-verification-error{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.destination-verification-error button{border:1px solid currentColor;border-radius:999px;padding:4px 9px;background:transparent;color:inherit;font:inherit;font-weight:700}.brand img{width:218px;max-height:64px}.site-header nav,.site-header button,.dashboard-link{font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px;font-weight:500;letter-spacing:0}.booking-process-section{margin-top:34px;padding:34px;border:1px solid rgba(7,59,100,.12);border-radius:22px;background:linear-gradient(120deg,#fffdf8fa,#e8f3f4e6),#fffdf8;box-shadow:0 16px 40px #072f4e0f}.booking-process-heading{max-width:760px}.booking-process-heading .eyebrow,.website-return-section .eyebrow{color:#0b789b}.booking-process-heading h2,.website-return-section h2{margin:8px 0 0;color:var(--ink);font:500 clamp(28px,3vw,42px)/1.08 var(--font-ui)}.booking-process-steps{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.booking-process-steps article{min-height:164px;padding:18px;border:1px solid rgba(7,59,100,.1);border-radius:14px;background:#ffffffb8}.booking-process-steps article>span{color:#119ac8;font-size:12px;font-weight:700;letter-spacing:.12em}.booking-process-steps h3{margin:18px 0 7px;color:var(--ink);font-size:18px}.booking-process-steps p,.website-return-section p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.website-return-section{margin:44px 0 54px;padding:28px 32px;border:1px solid rgba(7,59,100,.14);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:#e8f1f2}.website-return-section p{margin-top:8px}.website-return-section>a{min-height:44px;padding:0 16px;border-radius:9px;display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;color:#fff;background:var(--forest);font-size:14px;font-weight:600;text-decoration:none}.program-summary-main{min-width:0;display:grid;gap:5px}.program-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px}.program-benefit-list{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px}.program-benefit-list span{display:inline-flex;align-items:center;gap:4px;color:#6f5422;font-size:12px;line-height:1.35}.program-benefits-pending{color:#6c5a31!important}.rate-option-row>.price-breakdown{grid-column:1 / -1;width:100%;margin:-2px 0 0;padding-top:6px;border-top:1px solid rgba(7,59,100,.1)}.rate-option-row>.price-breakdown .price-breakdown-toggle{min-height:30px}.rate-option-row>.price-breakdown .price-breakdown-panel{margin-top:4px}.payment-disclosure-row{align-items:flex-start}.payment-disclosure-row strong{max-width:58%;text-align:right}.payment-safety-note,.no-card-data-note,.quote-submit-disclosure{margin:9px 0 0;padding:10px 12px;border-left:3px solid #119ac8;border-radius:0 8px 8px 0;color:#36566a;background:#eaf5f7;font-size:12px;line-height:1.5}.no-card-data-note{margin:0;border-left-color:#c79a4c;background:#faf1d9}.quote-submit-disclosure{margin:0;font-size:13px}.settings-audit-note{align-self:center}@media(max-width:980px){.brand img{width:190px}.program-summary{grid-template-columns:minmax(0,1fr) minmax(140px,180px) 18px}.rate-option-row>.price-breakdown{grid-column:1 / -1}}@media(max-width:720px){.brand img{width:142px;max-height:50px}.site-header nav,.site-header button,.dashboard-link{font-size:12px}.booking-process-section{margin-top:22px;padding:20px 16px;border-radius:16px}.booking-process-steps{margin-top:18px;grid-template-columns:1fr}.booking-process-steps article{min-height:0;padding:15px}.booking-process-steps h3{margin-top:10px}.website-return-section{margin:28px 0 36px;padding:20px 16px;align-items:stretch;flex-direction:column}.website-return-section>a{width:100%;justify-content:center}.program-summary{grid-template-columns:minmax(0,1fr) 18px;align-items:start}.program-summary-price{grid-column:1;align-items:flex-start;text-align:left}.program-summary>svg{grid-column:2;grid-row:1}.program-title-line{align-items:flex-start;flex-direction:column}.program-benefit-list{align-items:flex-start;flex-direction:column;gap:3px}.rate-option-row>.price-breakdown{grid-column:1 / -1}.rate-option-row>.price-breakdown .price-breakdown-toggle{justify-content:flex-start;text-align:left}.rate-option-row>.price-breakdown .price-breakdown-panel{min-width:0;margin-left:0}.payment-disclosure-row{align-items:flex-start;flex-direction:column;gap:3px}.payment-disclosure-row strong{max-width:100%;text-align:left}}.spin{animation:pes-spin .9s linear infinite}@keyframes pes-spin{to{transform:rotate(360deg)}}.dashboard-link{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;display:inline-flex;align-items:center;color:var(--forest);background:#fffdf8d6;font-size:13px;font-weight:600;text-decoration:none}.room-price-freshness{margin-top:5px;display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px}.room-price-freshness span{color:var(--muted);font-size:12px}.room-price-freshness button{min-height:28px;padding:0 9px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:var(--forest);background:#fffdf8;font-size:12px;font-weight:600}.elite-credit-disclaimer{margin:8px 0;padding:8px 10px;border-radius:9px;color:#315b70;background:#e7f3f6;font-size:12px}.elite-credit-disclaimer{color:#77581f;background:#f5ead0}.rate-terms-copy .elite-credit-badge{color:#075b70;font-weight:600}.loyalty-memberships{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbf8f1}.loyalty-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.loyalty-heading>div{display:grid;gap:3px}.loyalty-heading small{color:var(--muted);line-height:1.4}.loyalty-heading button{min-height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:var(--forest);background:#fff;font-weight:600}.loyalty-row{margin-top:10px;display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) 34px;align-items:end;gap:8px}.loyalty-row label{display:grid;gap:5px}.loyalty-row label span{color:var(--muted);font-size:12px}.loyalty-row input,.loyalty-row select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff}.remove-loyalty{width:34px;height:40px;border:1px solid rgba(184,78,54,.22);border-radius:8px;display:grid;place-items:center;color:#9a432f;background:#fff7f3}.manual-night-count{grid-column:1 / -1;margin:-4px 0 0;color:var(--muted);font-size:12px}.chart-legend{display:flex!important;grid-auto-flow:column;gap:12px!important}.chart-legend span{display:flex;align-items:center;gap:5px;color:var(--muted);letter-spacing:0;text-transform:none}.chart-legend span:before{content:"";width:8px;height:8px;border-radius:2px;background:currentColor}.chart-legend .hotel{color:#073b64}.chart-legend .room{color:#119ac8}.chart-legend .quote{color:#c79a4c}.destination-ranking{margin:8px 0 0;padding:0;list-style:none}.destination-ranking li{min-height:38px;border-top:1px solid rgba(7,59,100,.08);display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px}.destination-ranking li>span{color:#119ac8;font-size:12px}.destination-ranking li strong{font-size:13px}.destination-ranking li em{color:var(--muted);font-size:12px;font-style:normal}.customer-table-heading form{min-height:36px;padding:0 9px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:6px;background:#fff}.customer-table-heading input{width:220px;border:0;outline:0;background:transparent}@media(max-width:720px){.chart-legend{display:none!important}.customer-table-heading{align-items:flex-start;flex-direction:column}.customer-table-heading form,.customer-table-heading input{width:100%}.loyalty-heading{align-items:stretch;flex-direction:column}.loyalty-row{grid-template-columns:1fr 1fr 34px}.room-price-freshness{align-items:flex-start;flex-direction:column}}.destination-combobox{position:relative;z-index:60}.destination-menu{position:absolute;top:calc(100% + 8px);left:0;width:min(520px,92vw);max-height:410px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:16px;background:#fffdf8;box-shadow:0 24px 60px #07201b3d;z-index:70}.destination-menu-label{display:block;padding:8px 11px 6px;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.destination-menu [role=group]+[role=group]{margin-top:4px;padding-top:4px;border-top:1px solid var(--line)}.destination-menu button{width:100%;min-height:58px;padding:9px 11px;border:0;border-radius:11px;background:transparent;color:var(--forest);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;text-align:left}.destination-menu button:hover,.destination-menu button.active{background:#eef2e9}.destination-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mint)}.destination-menu button>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.destination-menu button strong,.destination-menu button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.destination-menu button small{color:var(--muted);font-size:11px}.destination-menu button em{color:var(--clay);font-size:9px;font-style:normal;letter-spacing:.1em;text-transform:uppercase}.destination-menu .free-search-option{grid-template-columns:auto 1fr;border-top:1px solid var(--line);border-radius:0 0 11px 11px}.hotel-load-sentinel{grid-column:1 / -1;min-height:1px}.free-search-option span{display:flex;flex-direction:column!important;align-items:flex-start;gap:2px!important;font-size:12px}.search-progress-section{margin-top:28px}.progress-panel{max-width:920px;margin:0 auto 22px;padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:#fffaf0;box-shadow:0 12px 32px #173d3714}.progress-panel.compact{margin:0 0 18px;padding:16px;box-shadow:none}.destination-menu-status{display:flex;align-items:center;gap:8px;min-height:38px;margin:2px 3px 6px;padding:8px 10px;border-radius:10px;background:#eef2e9;color:var(--muted);font-size:11px;line-height:1.35}.destination-menu-status.unavailable{justify-content:space-between;background:#fff5df;color:#75562b}.destination-menu .destination-menu-status button{width:auto;min-height:28px;flex:0 0 auto;display:inline-flex;grid-template-columns:none;padding:4px 9px;border:1px solid currentColor;border-radius:999px;color:inherit;font-size:10px;font-weight:700}.progress-heading{display:flex;align-items:center;gap:13px}.progress-heading>div{flex:1;display:flex;flex-direction:column;gap:3px}.progress-heading span{color:var(--muted);font-size:12px}.progress-mark{width:34px;height:34px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;color:var(--clay)!important;background:#f4dfd2;animation:progress-pulse 1.8s ease-in-out infinite}.progress-mark.complete{color:#337257!important;background:#dcebe0;animation:none}.progress-manual-button{white-space:nowrap}.progress-activity{height:4px;margin-top:16px;overflow:hidden;border-radius:4px;background:#e6ddd0}.progress-activity>span{display:block;width:40%;height:100%;border-radius:inherit;background:var(--forest);animation:progress-travel 1.8s ease-in-out infinite}@keyframes progress-travel{0%{transform:translate(-100%)}to{transform:translate(350%)}}.progress-wait-details{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin-top:10px;color:#6b583c;font-size:12px;line-height:1.5}.progress-wait-details p{margin:0;flex:1 1 220px}.progress-elapsed{white-space:nowrap;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){.progress-activity>span{animation:none;transform:translate(75%)}}.progress-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.progress-actions button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:9px;color:var(--forest);background:#fff;font-weight:650}.skeleton-card,.skeleton-room-card{pointer-events:none}.skeleton-block,.skeleton-line{position:relative;overflow:hidden;border-radius:9px;background:#e4dfd3}.skeleton-block:after,.skeleton-line:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);animation:skeleton-shimmer 1.5s infinite}.skeleton-image{width:100%;height:104px;border-radius:10px}.skeleton-line{height:12px;margin-bottom:12px}.skeleton-line.short{width:45%}.skeleton-line.title{width:78%;height:22px}.skeleton-card .skeleton-line{margin-bottom:0}.skeleton-card-body{gap:7px}.skeleton-offer{width:min(62%,130px);height:20px}.skeleton-price-summary{gap:5px}.skeleton-price-night{width:106px;height:22px}.skeleton-price-total{width:72px;height:12px}.skeleton-room-list{margin-top:10px}.skeleton-room-card{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.skeleton-room-option{height:120px;margin-top:20px}.results-heading{scroll-margin-top:176px;align-items:flex-end}.search-summary{display:flex;flex-direction:column;align-items:flex-end;gap:3px;color:var(--muted);font-size:12px}.search-summary strong{color:var(--forest);font-size:14px}.benefit-availability{width:fit-content;margin:-8px 0 15px;padding:7px 9px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;color:#6d5630;background:#f3e8c9;font-size:10px;font-weight:600}.drawer-header small{color:var(--muted);font-size:12px}.room-group-card{padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.room-group-heading{display:flex;justify-content:space-between;gap:18px;margin-bottom:17px}.room-group-heading>div>span{color:var(--clay);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.room-group-heading h3{margin:5px 0;font-family:var(--font-ui);font-size:25px;font-weight:500}.room-group-heading p{margin:0;color:var(--muted);font-size:12px}.accessible-badge{height:fit-content;padding:6px 8px;border-radius:7px;color:#35624f;background:#e2eee6;font-size:10px}.drawer-empty-state{display:grid;gap:18px;justify-items:start;padding:32px;color:var(--ink-soft)}.drawer-empty-state p{max-width:560px;margin:0;line-height:1.65}.booking-option-list{display:grid;gap:10px}.booking-option{padding:17px;border:1px solid var(--line);border-radius:14px;background:#faf7f0}.booking-option.recommended{border-color:#c86f4b8c;background:linear-gradient(135deg,#fff9f2,#f7eee3);box-shadow:0 10px 26px #874c3014}.option-program{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.option-program span{color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.option-program strong{color:var(--forest);font-size:15px}.option-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.option-tags span{padding:5px 7px;border-radius:999px;display:inline-flex;align-items:center;gap:4px;color:#725036;background:#f0dfca;font-size:9px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.option-price-row,.selected-price-facts{display:flex;justify-content:space-between;gap:18px}.option-price-row>div,.selected-price-facts>div{display:flex;flex-direction:column}.option-price-row>div:last-child,.selected-price-facts>div:last-child{text-align:right}.option-price-row strong{font-size:22px}.option-price-row small,.selected-price-facts small{color:var(--muted);font-size:10px}.price-difference{margin:9px 0 0;color:var(--muted);font-size:11px}.option-quote-button{width:100%;min-height:42px;margin-top:14px;border-radius:10px}.show-more-rooms{min-height:46px;border:1px solid var(--forest);border-radius:11px;background:transparent;color:var(--forest);display:flex;align-items:center;justify-content:center;gap:7px;font-weight:600}.show-programs-button,.load-more-hotels{min-height:42px;border:1px solid var(--forest);border-radius:10px;background:transparent;color:var(--forest);display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600}.show-programs-button{width:100%}.hotel-pagination{max-width:920px;margin:24px auto 0;display:grid;justify-items:center;gap:10px}.hotel-pagination .progress-panel{width:100%;margin-bottom:0}.hotel-pagination small{color:var(--muted);font-size:11px}.load-more-hotels{min-width:230px;padding:0 24px;background:var(--forest);color:var(--ivory)}.pagination-error{width:100%;padding:12px 14px;border:1px solid rgba(200,111,75,.35);border-radius:10px;background:#f8e9df;color:#87502f;text-align:center;font-size:12px}.selected-program{margin:-4px 0 0;color:var(--forest);font-size:12px}.quote-dialog{width:min(640px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow-y:auto}.selected-offer-summary{padding:18px;border-radius:15px;background:#e8eee7;display:grid;gap:10px}.selected-offer-summary>span{color:var(--clay);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.selected-trip-facts,.selected-terms{display:flex;flex-wrap:wrap;gap:7px}.selected-trip-facts>span,.selected-terms>span{padding:6px 8px;border-radius:7px;background:#ffffffa6;display:inline-flex;align-items:center;gap:5px;font-size:13px}.manual-trip-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.manual-trip-fields label:first-child{grid-column:1 / -1}.verified-email-card{padding:12px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;gap:10px;background:#eef3ec}.verified-email-card>div{min-width:0;display:flex;flex-direction:column;gap:2px}.verified-email-card strong{overflow:hidden;text-overflow:ellipsis}.verified-email-card span{color:var(--muted);font-size:11px}.quote-status-card{max-width:920px;margin:24px auto 0;padding:20px 22px;border:1px solid rgba(51,114,87,.25);border-radius:18px;background:#e8f0e9;display:flex;gap:14px;color:#295b47}.quote-status-card.changed{color:#87502f;background:#f5e8d8;border-color:#c86f4b57}.quote-status-card.manual{color:#52615d;background:#edeae2}.quote-status-card.closed{color:var(--muted);background:var(--surface-subtle);border-color:var(--line)}.quote-status-card>svg{flex-shrink:0}.quote-status-card>div{min-width:0;flex:1}.quote-receipt-context{margin:12px 0;display:grid;gap:7px}.quote-receipt-context>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.quote-receipt-context dt{flex:0 0 116px;font-size:13px;color:var(--muted)}.quote-receipt-context dd{min-width:0;margin:0;flex:1 1 220px;font-size:14px;overflow-wrap:anywhere}.quote-status-card p.quote-response-status{font-size:14px;line-height:1.6}.quote-response-status a{min-height:44px;display:inline-flex;align-items:center;padding-inline:4px;color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}.quote-status-card small.quote-receipt-disclosure{display:block;margin-top:10px;opacity:1;color:var(--muted);font-size:13px;line-height:1.6}.quote-status-card h2{margin:3px 0 5px;font-family:var(--font-ui);font-size:28px;font-weight:600}.quote-status-card p{margin:0 0 5px;font-size:12px}.quote-status-card span,.quote-status-card small{color:inherit;opacity:.72;font-size:10px}@keyframes progress-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media(max-width:720px){.destination-menu{width:100%;max-height:min(360px,50vh);box-shadow:0 12px 30px #07201b24}.destination-menu button em{display:none}.destination-menu button{grid-template-columns:auto 1fr}.progress-panel{padding:16px}.progress-heading,.search-summary{align-items:flex-start}.room-group-card{padding:16px}.room-group-heading,.option-price-row,.selected-price-facts{flex-direction:column}.option-price-row>div:last-child,.selected-price-facts>div:last-child{text-align:left}.manual-trip-fields{grid-template-columns:1fr}.manual-trip-fields label:first-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){.progress-mark,.skeleton-block:after,.skeleton-line:after{animation:none}}.site-header{position:sticky;top:0;z-index:80;height:78px;padding:0 8px;background:#f7f3eae6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,59,100,.08)}.site-header button{background:#ffffffb8;border-color:#073b6424;color:var(--forest)}.hero-section{min-height:600px;padding:76px 7vw 38px;background:radial-gradient(circle at 84% 8%,rgba(81,184,218,.2),transparent 24%),radial-gradient(circle at 95% 92%,rgba(201,111,77,.16),transparent 24%),linear-gradient(132deg,#052f51,#073b64 52%,#0a5278);box-shadow:0 28px 80px #062f5033}.hero-section:after{width:230px;height:230px;right:38px;bottom:28px;opacity:.14;background:#f3c997}.hero-section.results-mode{min-height:0;padding:38px 5vw 24px;border-radius:28px}.hero-section.results-mode.search-editor-open{z-index:40}.hero-section.results-mode:after{width:150px;height:150px;right:8%;bottom:-55px}.hero-copy h1{max-width:930px;font-size:clamp(54px,6.1vw,92px)}.hero-copy p{max-width:720px;color:#f7f3eac7}.eyebrow{color:#8ed8ec}.compact-trip-hero{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}@media(max-width:720px){.results-heading{scroll-margin-top:166px}}.compact-trip-hero>div{min-width:0}.compact-trip-hero h1{margin:8px 0 12px;font-family:var(--font-ui);font-size:clamp(38px,5vw,62px);line-height:1;font-weight:500;letter-spacing:-.035em}.compact-trip-facts{display:flex;flex-wrap:wrap;gap:9px}.compact-trip-facts span{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:9px;color:#ffffffc2;background:#ffffff0f;font-size:12px}.compact-trip-hero>button{min-height:46px;padding:0 17px;border:1px solid rgba(255,255,255,.35);border-radius:12px;display:inline-flex;align-items:center;gap:8px;color:#fff;background:#ffffff14;font-weight:600}.modify-search-button{min-width:max-content;flex:0 0 auto;white-space:nowrap}.modify-search-button svg{flex:0 0 auto}.hero-section.results-mode .search-wrap{margin-top:26px}.hero-section.results-mode .trust-strip{margin-top:20px}.search-card{background:#fffdf8fa;color:var(--forest);box-shadow:0 20px 55px #021d3140}.search-button,.primary-button{background:var(--forest)}.search-button:hover,.primary-button:hover{background:#0a5278}.demo-banner{color:var(--forest);background:#e9d39d}.trust-strip{color:#cfeef7b8}.results-section{position:relative;padding-top:62px}.section-heading h2,.always-on-section h2,.hotel-card h3,.room-group-heading h3,.drawer-header h2,.auth-dialog h2,.quote-status-card h2{font-family:var(--font-ui);color:var(--ink)}.section-kicker{color:var(--clay)}.progressive-results-status{margin:18px 0;padding:14px 16px;border:1px solid rgba(7,59,100,.15);border-radius:16px;background:linear-gradient(135deg,#e6f1f5eb,#fffdf8f5);display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);align-items:center;gap:16px}.progressive-results-status>div:first-child{display:flex;align-items:flex-start;gap:10px;color:var(--forest)}.progressive-results-status>div:first-child svg{flex:0 0 auto;margin-top:2px}.progressive-results-status>div:first-child div{display:grid;gap:3px}.progressive-results-status strong{color:var(--ink);font-size:14px}.progressive-results-status span{color:var(--muted);font-size:11px;line-height:1.45}.progressive-results-status .progress-panel{margin:0;width:100%}.results-toolbar{position:sticky;top:88px;z-index:30;margin-bottom:18px;padding:12px 14px;border:1px solid rgba(7,59,100,.14);border-radius:16px;background:#faf7f0f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 12px 28px #072f4e14;display:flex;align-items:center;justify-content:space-between;gap:18px}.results-toolbar.filters-open{z-index:90}.results-count-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.results-count-copy strong{color:var(--ink);font-size:13px}.results-load-state{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.results-count-copy .results-load-text{color:var(--muted);font-size:12px;font-weight:500}.search-freshness-notice{margin:20px 0 0;padding-inline:var(--page-gutter);display:flex;align-items:center;justify-content:space-between;gap:8px 20px;flex-wrap:wrap}.search-freshness-copy{min-width:0;display:flex;align-items:center;gap:4px}.search-freshness-notice p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.search-freshness-notice p span{display:block}.search-freshness-notice button{min-height:44px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.search-idle-backdrop{z-index:180;position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:#102f4959}.search-idle-dialog{width:min(100%,440px);padding:28px;border-radius:16px;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px;background:var(--white, #fff);color:var(--ink);box-shadow:0 20px 60px #102f492e}.search-idle-dialog h2{grid-row:1;margin:0;font-size:24px;line-height:1.25}.search-idle-dialog p{grid-column:1 / -1;margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.6}.search-idle-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:12px}.search-idle-dialog>.search-help{grid-column:2;grid-row:1}.search-idle-dialog button{min-height:44px;flex:1 1 auto;white-space:nowrap}.results-load-state.loading>svg{color:#087fa4}.results-load-spinner{display:block;transform-box:fill-box;transform-origin:center;will-change:transform;animation:pes-spin .9s linear infinite}.results-background-range{display:inline-flex;align-items:center;gap:5px}.results-load-state.complete>svg{color:#3f8468}.results-load-state.paused>svg{color:#a36a19}.results-count-copy .results-load-state.paused .results-load-text{color:#825412}.results-count-copy span{color:var(--muted);font-size:10px}.results-actions{display:flex;align-items:center;gap:8px}.filter-toggle,.sort-control{min-height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--forest);display:inline-flex;align-items:center}.filter-toggle{padding:0 13px;gap:7px;font-weight:600}.filter-toggle.active{border-color:var(--forest);background:#e6f1f5}.filter-toggle>.filter-count{min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;color:#fff;background:var(--forest);font-size:10px}.sort-control{position:relative;padding-left:12px}.sort-control>span{color:var(--muted);font-size:10px;white-space:nowrap}.sort-control select{min-height:40px;padding:0 34px 0 8px;border:0;appearance:none;background:transparent;color:var(--forest);outline:none;font-weight:600}.sort-control:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px #147a9a2e}.sort-control svg{position:absolute;right:10px;pointer-events:none}.hotel-filter-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:1;width:100%;margin:0;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fffdf8;display:grid;grid-template-columns:minmax(240px,1.25fr) max-content minmax(170px,.8fr) max-content;align-items:start;gap:12px;box-shadow:0 16px 40px #072f4e12;overflow:visible;overscroll-behavior:contain;will-change:transform}.offers-filter{min-height:44px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;display:inline-flex;align-items:center;gap:7px;color:var(--forest);background:#fff;font-size:12px;font-weight:650;cursor:pointer}.offers-filter.active{border-color:var(--forest);background:#e6f1f5}.offers-filter input{width:15px;height:15px;margin:0;accent-color:var(--forest)}.offers-filter svg{flex:0 0 auto;color:#b67f27}.deal-availability-filter{border-color:#b7822740;color:#79551b;background:#fff5d8}.deal-availability-filter.active{border-color:#b78227;background:#f9e8bd}.deal-availability-filter input{accent-color:#b78227}.perk-availability-filter{border-color:#119ac838;color:#08776e;background:#edf7f6}.perk-availability-filter.active{border-color:#119ac8;background:#dff2f0}.perk-availability-filter input{accent-color:#08776e}.deal-availability-filter svg,.perk-availability-filter svg{color:currentColor}.availability-filters{min-width:0;align-self:end;display:flex;align-items:center;gap:8px}.availability-filters .offers-filter{padding-inline:7px;gap:5px;white-space:nowrap}.hotel-filter-panel fieldset{min-width:0;margin:0;padding:0;border:0}.hotel-filter-panel legend,.price-filter strong{margin-bottom:8px;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:0}.price-filter>div:first-child{display:flex;justify-content:space-between;gap:12px}.price-filter>div:first-child span{color:var(--ink);font-size:12px;font-weight:600}.price-filter input{width:100%;accent-color:var(--forest)}.range-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.filter-chips{display:flex;flex-wrap:wrap;gap:6px}.filter-chips button,.benefits-filter,.room-filter-chips button{min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--forest);background:#fff;font-size:13px;font-weight:600}.filter-chips button.active,.benefits-filter.active,.room-filter-chips button.active{color:#fff;border-color:var(--forest);background:var(--forest)}.benefits-filter{display:inline-flex;align-items:center;gap:6px}.clear-filters,.clear-room-filters{border:0!important;color:var(--clay)!important;background:transparent!important;display:inline-flex;align-items:center;gap:5px}.hotel-filter-actions{min-width:0;grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.hotel-filter-actions .clear-filters{min-height:44px;padding:0 8px;border:1px solid rgba(190,106,70,.25)!important;border-radius:10px;justify-content:center;white-space:nowrap;background:#fff7f3!important}.hotel-filter-actions .clear-filters:disabled{opacity:.45;cursor:default}.confirm-filters{min-height:44px;padding:0 8px;border:1px solid var(--forest);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#fff;background:var(--forest);font:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer}.hotel-grid{gap:20px}.hotel-card{border-color:#073b6421;background:#fffdf8;box-shadow:0 18px 46px #072f4e14}.hotel-image-wrap{height:240px;background:#dbe7e9}.image-placeholder{display:grid;place-items:center;background:radial-gradient(circle at 75% 18%,rgba(255,255,255,.7),transparent 20%),linear-gradient(135deg,#d8edf3,#e9dec9 68%,#d7e5e7)}.image-placeholder span{font-family:var(--font-ui);color:#073b646b;font-size:72px}.benefit-badge{color:var(--forest);background:#f7f3eaf0}.hotel-card h3{color:var(--ink);min-height:58px;margin-bottom:14px}.hotel-meta{justify-content:flex-start;flex-wrap:wrap}.hotel-meta span:first-child{margin-right:auto}.price-row strong{color:var(--ink)}.total-price strong{font-size:20px}.price-detail-note{min-height:30px;margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.45}.hotel-card-body>button{margin-top:12px;border-color:var(--forest)}.hotel-card-body>button:hover{color:#fff;background:var(--forest)}.filtered-empty-state{min-height:310px;padding:48px 20px;border:1px dashed rgba(7,59,100,.25);border-radius:22px;display:grid;justify-items:center;align-content:center;text-align:center;color:var(--muted);background:#fffdf8a6}.filtered-empty-state h3{margin:12px 0 5px;color:var(--ink);font-family:var(--font-ui);font-size:28px}.filtered-empty-state p{max-width:480px}.filtered-empty-state>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.filtered-empty-state button{min-height:42px;padding:0 14px;border:1px solid var(--forest);border-radius:10px;display:inline-flex;align-items:center;gap:6px;color:var(--forest);background:#fff}.drawer-backdrop{background:#031d31ad}.drawer,.auth-dialog,.quote-dialog{background:var(--surface-subtle);color:var(--ink)}.room-drawer{width:min(820px,100%)}.room-drawer-header{position:sticky;top:-34px;z-index:12;margin:-34px -34px 22px;padding:28px 34px 18px;border-bottom:1px solid rgba(7,59,100,.1);background:#fbf8f1f5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.drawer-hotel-facts{display:flex;flex-wrap:wrap;gap:8px 14px;margin:7px 0 5px;color:var(--muted);font-size:10px}.drawer-hotel-facts span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);letter-spacing:0;text-transform:none}.room-filter-bar{margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#eef5f6}.room-filter-bar>div:first-child{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:10px}.room-filter-bar>div:first-child span{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:12px;font-weight:600}.room-filter-bar small{color:var(--muted)}.room-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.room-filter-chips button{min-height:34px;background:#ffffffd1}.room-group-card{border-color:#073b6421;box-shadow:0 14px 34px #072f4e0f}.room-heading-copy{display:flex;gap:14px}.room-heading-copy>img{width:112px;height:84px;flex:0 0 auto;border-radius:12px;object-fit:cover}.room-heading-copy h3{color:var(--ink)}.booking-option{background:#f9f5ed}.booking-option.recommended{border-color:#119ac873;background:linear-gradient(135deg,#f6fbfc,#f5efe5);box-shadow:0 10px 28px #074f7314}.option-tags span{color:#075577;background:#dbeff5}.generic-benefits-note{padding:10px;border-radius:10px;display:flex;align-items:center;gap:7px;color:#7b5a20;background:#f4e8c8;font-size:11px}.price-breakdown{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.price-breakdown-toggle{width:100%;min-height:38px;padding:0;border:0;display:flex;align-items:center;gap:7px;color:var(--forest);background:transparent;font-size:11px;font-weight:600;text-align:left}.price-breakdown-toggle span{flex:1}.price-details-short,.tax-line-compact{display:none}.price-breakdown-toggle svg:last-child{transition:transform .18s ease}.price-breakdown.open .price-breakdown-toggle svg:last-child{transform:rotate(180deg)}.price-breakdown-panel{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.breakdown-row{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted);font-size:11px}.breakdown-row strong{color:var(--ink);font-size:12px}.breakdown-row.discount strong{color:#3f7a63}.breakdown-row.total,.breakdown-row.customer-total{margin-top:6px;padding-top:8px;border-top:1px solid var(--line)}.breakdown-row.total strong,.breakdown-row.customer-total strong{font-size:15px}.breakdown-note{margin:8px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.breakdown-note.unavailable{margin:0;padding:9px;border-radius:8px;background:#f5eee2}.due-at-property-card{margin-top:9px;padding:10px;border:1px solid rgba(201,111,77,.28);border-radius:10px;display:flex;justify-content:space-between;gap:14px;background:#fff5ee}.due-at-property-card>div{display:flex;flex-direction:column;gap:2px}.due-at-property-card span{color:#8c4d35;font-size:11px;font-weight:600}.due-at-property-card small{color:var(--muted);font-size:9px}.due-at-property-card strong{color:#8c4d35}.nightly-rates{margin-top:9px;border-top:1px solid var(--line);padding-top:8px}.nightly-rates summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--forest);font-size:11px;font-weight:600}.nightly-rates summary::-webkit-details-marker{display:none}.nightly-rates[open] summary svg{transform:rotate(180deg)}.nightly-rates>div{margin-top:6px}.quote-dialog{width:min(980px,calc(100% - 40px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid rgba(255,255,255,.55);border-radius:20px;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;box-shadow:0 28px 80px #01192c4d}.quote-dialog-header{min-height:76px;flex-shrink:0;position:relative;margin:0;padding:13px 17px 13px 20px;border-bottom:1px solid var(--line);align-items:center;background:#fff}.quote-dialog-header>div{min-width:0;display:grid;gap:3px}.quote-dialog-header span{color:#08776e;font-size:12px;font-weight:700;letter-spacing:.04em}.quote-dialog-header h2{margin:0;color:var(--forest-deep);font-family:inherit;font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.015em}.quote-dialog-header p{margin:4px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.quote-dialog-header .icon-button{width:44px;height:44px;flex:0 0 44px;background:#fff}.quote-form{min-height:0;padding:14px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:12px;overflow-y:auto;scrollbar-gutter:stable}.quote-name-fields{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quote-name-fields>label{min-width:0}.quote-phone-field{min-width:0}.quote-phone-input{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(0,1.1fr);gap:8px}.quote-phone-input select,.quote-phone-input input{min-width:0;width:100%}.quote-phone-field>small{color:var(--muted);font-size:12px;line-height:1.5}.quote-form-section{min-width:0;padding:0;border:1px solid var(--line);border-radius:15px;display:flex;flex-direction:column;gap:0;overflow:visible;background:#fff;box-shadow:none}.quote-form-section:last-child{border-bottom:1px solid var(--line)}.form-section-heading{min-height:56px;padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px}.form-section-heading>span{width:32px;height:32px;flex:0 0 32px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--forest);font-size:10px;font-weight:600}.form-section-heading>div{display:flex;flex-direction:column;gap:2px}.form-section-heading strong{color:var(--forest-deep);font-size:16px;font-weight:600}.form-section-heading small{color:var(--muted);font-size:12px;line-height:1.5}.selected-offer-summary{margin:0;padding:18px;border:0;border-radius:0 0 15px 15px;gap:16px;background:#fff}.selected-room-name{color:var(--forest-deep);font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.012em}.selected-program{margin:-2px 0 0;color:#79551b;font-size:10.5px}.selected-program strong{padding:4px 8px;border-color:#13819e3d;color:var(--forest);background:#eaf5f7;font-size:10.5px;font-weight:650}.quote-contact-body{padding:18px;display:grid;gap:16px}.quote-form label{color:var(--ink);font-size:13px;font-weight:600}.quote-form input,.quote-form select{height:46px;margin-top:6px;padding:0 12px;border-color:#073b642e;border-radius:9px;color:var(--forest-deep);background:#fff;font-size:16px}.quote-form input:focus,.quote-form select:focus{border-color:#13819e;box-shadow:0 0 0 3px #13819e1c}.verified-email-card{min-height:51px;padding:9px 10px;border-color:#08776e33;border-radius:10px;background:#f2faf7;color:#08776e}.verified-email-card strong{color:var(--forest-deep);font-size:14px;overflow-wrap:anywhere}.verified-email-card span{color:#47665f;font-size:12px}.quote-submit-section{margin-top:auto;padding:12px 13px 13px;border-top:1px solid var(--line);display:grid;gap:8px;background:#fff}.quote-submit-section>.primary-button{width:100%;min-height:44px}.quote-form-error{grid-column:auto;margin:0}.manual-request-dialog .quote-form{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-request-dialog .manual-trip-fields{padding:16px;gap:12px}.manual-request-dialog .loyalty-heading>div{min-width:0}.manual-request-dialog .loyalty-heading button{flex-shrink:0;min-height:44px;white-space:nowrap}.manual-request-dialog textarea{font-size:16px}.manual-request-dialog .quote-submit-section{grid-column:1 / -1;margin-top:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 16px}.manual-request-dialog .quote-submit-section>.form-section-heading,.manual-request-dialog .quote-form-error{grid-column:1 / -1}.manual-request-dialog .quote-form-error{padding:12px;border:1px solid currentColor;border-radius:8px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.manual-request-dialog .quote-form-error:focus{outline:2px solid var(--focus);outline-offset:3px}.manual-request-dialog .quote-submit-disclosure{margin:0;padding:0;border:0;color:var(--muted);background:transparent;font-size:14px;line-height:1.6}.manual-request-dialog .quote-submit-section>.primary-button{width:auto;min-width:150px;white-space:nowrap}@media(max-width:760px){.manual-request-dialog .quote-form,.manual-request-dialog .quote-submit-section{grid-template-columns:minmax(0,1fr)}.manual-request-dialog .quote-submit-section>.primary-button{width:100%}}.quote-change-summary{margin:10px 0;padding:12px;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#ffffff8c}.quote-change-summary>div:not(.quote-change-tags){display:flex;flex-direction:column;gap:3px}.quote-change-summary strong{font-size:16px}.quote-change-tags{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:5px}.quote-change-tags span{padding:5px 7px;border-radius:999px;background:#c96f4d29;font-size:9px}.quote-change-items{grid-column:1 / -1;display:grid;gap:6px;padding-top:4px}.quote-change-items>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.quote-change-items strong{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;color:var(--ink);font-size:11px;text-align:right}.always-on-section{background:linear-gradient(135deg,#e6d8c2,#dcebf0)}.always-on-section button{background:var(--forest)}@media(max-width:1080px){.hotel-filter-panel{grid-template-columns:1fr 1fr}.benefits-filter,.clear-filters{align-self:center;justify-self:start}}@media(max-width:820px){.quote-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 20px)}.quote-form{grid-template-columns:minmax(0,1fr)}.quote-contact-panel{min-height:auto}}@media(max-width:720px){.quote-phone-input{grid-template-columns:1fr}.site-header{height:68px;padding:0}.brand img{width:112px}.site-header nav{gap:4px}.site-header button{min-height:34px;padding:0 8px}.language-button svg{display:none}.hero-section{padding:48px 16px 24px;border-radius:22px}.hero-section:after{width:145px;height:145px;right:10px;bottom:18px}.hero-copy h1{font-size:clamp(43px,12vw,60px);line-height:.98}.hero-copy p{font-size:14px;line-height:1.6}.hero-section.results-mode{padding:28px 16px 20px}.compact-trip-hero{align-items:stretch;flex-direction:column;gap:18px}.compact-trip-hero h1{font-size:38px}.compact-trip-hero>button{width:100%;justify-content:center}.compact-trip-facts{flex-direction:column}.search-card{grid-template-columns:1fr 1fr;border-radius:16px}.demo-banner+.search-card{border-radius:0 0 16px 16px}.trust-strip{gap:8px 16px;line-height:1.4}.results-section{padding-top:42px}.progressive-results-status{grid-template-columns:1fr;padding:13px}.results-toolbar{top:76px;align-items:stretch;flex-direction:column}.results-actions{display:grid;grid-template-columns:1fr 1fr}.filter-toggle,.sort-control{width:100%}.filter-toggle{justify-content:center}.sort-control select{width:100%;min-width:0}.sort-control>span{display:none}.hotel-filter-panel{grid-template-columns:1fr}.hotel-image-wrap{height:220px}.hotel-card h3{min-height:0}.room-drawer{padding:18px 14px}.room-drawer-header{top:-18px;margin:-18px -14px 18px;padding:20px 14px 14px}.room-drawer-header h2{font-size:30px}.room-filter-bar>div:first-child{align-items:flex-start;flex-direction:column}.room-filter-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.room-filter-chips button{flex:0 0 auto}.room-group-card{padding:14px}.room-group-heading,.room-heading-copy{flex-direction:column}.room-heading-copy>img{width:100%;height:170px}.quote-dialog{width:calc(100% - 20px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(100vh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.quote-dialog-header{min-height:70px;padding:11px 13px}.quote-dialog-header h2{padding-right:10px;font-size:19px}.quote-form{padding:9px 9px max(9px,env(safe-area-inset-bottom))}.quote-submit-section{position:static;bottom:auto;z-index:auto;margin:0;box-shadow:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-delay:0ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-delay:0ms!important;transition-duration:.01ms!important}}.results-count-copy strong,.results-count-copy span,.results-count-copy small,.hotel-meta,.hotel-price-summary small,.hotel-price-summary span,.drawer-hotel-facts,.room-drawer-header small,.program-summary small,.rate-option-row small,.rate-option-row p,.rate-option-row span,.price-breakdown-toggle,.breakdown-row,.breakdown-note,.due-at-property-card span,.due-at-property-card small,.nightly-rates summary{font-size:12px}.results-heading h2{font-size:clamp(28px,3vw,38px)}.results-count-copy{gap:3px}.results-count-copy small{color:var(--forest)}.results-toolbar{padding:10px 12px;border-radius:12px;box-shadow:0 8px 22px #072f4e0f}.filter-toggle,.sort-control{min-height:38px;border-radius:9px;font-size:14px}.sort-control select{min-height:36px;font-size:14px}.sort-control>span{font-size:12px}.hotel-filter-panel{grid-template-columns:minmax(240px,1.25fr) max-content minmax(170px,.8fr) max-content;column-gap:12px;padding:14px;border-radius:12px;box-shadow:0 10px 26px #072f4e0d}.hotel-filter-panel legend,.price-filter strong,.range-labels{font-size:12px}.filter-chips button,.room-filter-chips button{min-height:44px;padding:0 11px;font-size:13px}.hotel-grid{display:grid;grid-template-columns:1fr;gap:10px}.hotel-card{min-height:124px;padding:10px;border:1px solid rgba(7,59,100,.14);border-radius:14px;display:grid;grid-template-columns:152px minmax(0,1fr) minmax(150px,190px) minmax(130px,156px);align-items:center;gap:14px;overflow:hidden;background:#fffdf8;box-shadow:0 8px 24px #072f4e0f}@media(hover:hover)and (pointer:fine){.hotel-card:hover{border-color:#073b6447}}.hotel-image-wrap{width:152px;height:104px;border-radius:10px;overflow:hidden;background:#dbe7e9}.hotel-image-wrap img{width:100%;height:100%;object-fit:cover}.image-placeholder{width:100%;height:100%;color:#073b646b}.hotel-card-body{min-width:0;padding:2px 0;display:flex;align-items:flex-start;flex-direction:column;gap:7px}.hotel-card h3{min-height:0;margin:0;color:var(--ink);font-size:19px;line-height:1.2}.hotel-meta{margin:0;display:flex;align-items:center;gap:6px 12px;color:var(--muted)}.hotel-meta span{display:inline-flex;align-items:center;gap:4px}.benefit-badge{position:static;width:fit-content;min-height:24px;padding:3px 8px;border:1px solid rgba(17,154,200,.22);border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:#075577;background:#edf7fa;font-size:12px;line-height:1.25}.hotel-price-summary{display:flex;align-items:flex-end;flex-direction:column;gap:2px;text-align:right;font-variant-numeric:tabular-nums}.hotel-price-summary strong{color:var(--ink);font-size:21px;line-height:1.1}.hotel-price-summary small,.hotel-price-summary span{color:var(--muted)}.hotel-price-summary strong,.hotel-price-summary small{white-space:nowrap}.hotel-select-button{min-height:40px;padding:0 13px;border:1px solid var(--forest);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:var(--forest);font-size:13px;font-weight:600}.hotel-select-button:hover{background:#0a5278}.room-drawer{width:min(1120px,calc(100% - 32px));padding:24px;border-radius:18px 0 0 18px}.room-drawer-header{top:-24px;margin:-24px -24px 16px;padding:16px 24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}.room-drawer-hotel-image{width:88px;height:66px;border-radius:9px;object-fit:cover}.room-drawer-hotel-image{grid-column:1}.room-drawer-title{min-width:0;grid-column:2}.room-drawer-header>.icon-button{grid-column:3}.room-drawer-header:not(:has(.room-drawer-hotel-image)){grid-template-columns:minmax(0,1fr) auto}.room-drawer-header:not(:has(.room-drawer-hotel-image)) .room-drawer-title{grid-column:1}.room-drawer-header:not(:has(.room-drawer-hotel-image))>.icon-button{grid-column:2}.room-drawer-title>span{color:var(--clay);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.room-drawer-header h2{margin:2px 0 0;font-size:27px;line-height:1.05}.drawer-hotel-facts{margin:5px 0 3px;gap:5px 12px}.room-filter-bar{margin-bottom:10px;padding:10px 12px;border-radius:10px}.room-filter-bar>div:first-child{margin-bottom:7px}.room-filter-bar>div:first-child span{font-size:13px}.advisor-review-note{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.45}.program-list{display:grid;gap:10px}.program-section{border:1px solid rgba(7,59,100,.14);border-radius:12px;overflow:hidden;background:#fffdf8}.program-section.recommended{border-color:#119ac861}.program-summary{width:100%;min-height:58px;padding:9px 12px;border:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) 20px;align-items:center;gap:12px;color:var(--ink);background:#f3eee4;text-align:left}.program-section.recommended .program-summary{background:#eaf5f7}.program-summary>div:first-child>span{min-height:16px;display:inline-flex;align-items:center;gap:4px;color:#075577;font-size:12px;font-weight:600}.program-summary h3{margin:0;font-family:var(--font-ui);font-size:18px;line-height:1.15}.program-summary small{color:var(--muted)}.program-summary-price{display:flex;align-items:flex-end;flex-direction:column;gap:1px;text-align:right}.program-summary-price>span{display:inline-flex;align-items:center;gap:4px;color:#7b5a20;font-size:12px}.program-summary-price strong{font-size:17px}.program-rate-list{display:grid}.rate-option-row{min-height:110px;padding:11px 12px;border-top:1px solid rgba(7,59,100,.11);display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(210px,.95fr) minmax(190px,.95fr) minmax(170px,.75fr);align-items:center;gap:14px;background:#fffdf8}.rate-option-row.recommended{box-shadow:inset 3px 0 #119ac8;background:#fbfdfb}.rate-room-copy,.rate-price-copy,.rate-terms-copy,.rate-actions{min-width:0}.rate-room-copy h4{margin:4px 0 3px;color:var(--ink);font-family:var(--font-ui);font-size:17px;line-height:1.18}.rate-room-copy p{margin:0 0 3px;color:var(--muted);line-height:1.35}.rate-room-copy>small{display:block;color:var(--muted);line-height:1.35}.option-tags{margin:0;display:flex;flex-wrap:wrap;gap:4px}.option-tags span{min-height:21px;padding:2px 6px;border-radius:999px;display:inline-flex;align-items:center;gap:3px;color:#075577;background:#e5f3f6;font-size:12px;line-height:1.2}.rate-price-copy{display:flex;align-items:flex-start;flex-direction:column;gap:3px}.rate-price-copy>strong{color:var(--ink);font-size:21px;line-height:1.1}.rate-price-copy small,.rate-price-copy span{color:var(--muted);line-height:1.35}.rate-price-copy .tax-amount-line{color:var(--forest);font-weight:600}.rate-terms-copy{display:flex;flex-direction:column;gap:6px}.rate-terms-copy>span{display:flex;align-items:flex-start;gap:6px;color:var(--muted);line-height:1.3}.rate-terms-copy>span.positive{color:#2f7258}.rate-terms-copy .rate-benefits{color:#7b5a20}.rate-actions{display:flex;align-items:stretch;flex-direction:column;gap:5px}.rate-actions .price-breakdown{margin:0;padding:0;border:0}.rate-actions .price-breakdown-toggle{min-height:32px}.rate-actions .option-quote-button{width:100%;min-height:38px;padding:0 9px;font-size:13px}.show-program-options{min-height:38px;border:0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:6px;color:var(--forest);background:#f8f4ec;font-size:13px;font-weight:600}.price-breakdown-toggle{font-size:12px}.price-breakdown-panel{padding:10px;border-radius:9px}.breakdown-row{min-height:27px}.breakdown-row strong{font-size:13px}.breakdown-row>small{max-width:190px;color:var(--muted);text-align:right}.breakdown-note{line-height:1.45}.breakdown-note.unavailable{padding:8px}.selected-tax-line{display:block;color:var(--forest);font-size:13px;font-weight:600}@media(max-width:980px){.hotel-card{grid-template-columns:128px minmax(0,1fr) 160px}.hotel-image-wrap{width:128px}.hotel-select-button{grid-column:3}.rate-option-row{grid-template-columns:minmax(210px,1.1fr) minmax(180px,.9fr)}.rate-terms-copy{grid-column:1}.rate-actions{grid-column:2}}@media(max-width:720px){.results-toolbar{gap:10px}.results-count-copy span{line-height:1.35}.hotel-filter-panel{grid-template-columns:1fr;padding:12px}.hotel-card{min-height:132px;padding:9px;grid-template-columns:64px minmax(0,1fr) 130px;align-items:start;gap:7px 10px;border-radius:12px}.hotel-image-wrap{width:64px;height:64px;grid-row:1 / span 2}.hotel-card-body{grid-column:2 / -1;gap:5px}.hotel-card h3{font-size:17px}.hotel-meta{gap:4px 8px}.benefit-badge{min-height:21px;padding:2px 6px}.hotel-price-summary{grid-column:2;align-items:flex-start;flex-direction:column;gap:1px;text-align:left}.hotel-price-summary strong{font-size:19px}.hotel-price-summary small{align-self:flex-start}.hotel-price-summary span{width:auto}.hotel-select-button{grid-column:3;width:100%;min-height:36px;padding:0 7px;justify-self:stretch;font-size:12px;line-height:1.15}.room-drawer{width:100%;max-height:100vh;padding:12px;border-radius:0}.room-drawer-header{top:-12px;margin:-12px -12px 10px;padding:11px 12px;grid-template-columns:58px minmax(0,1fr) auto;gap:9px}.room-drawer-hotel-image{width:58px;height:52px}.room-drawer-header h2{font-size:23px}.drawer-hotel-facts{gap:3px 8px}.room-filter-bar>div:first-child{align-items:center;flex-direction:row}.program-summary{grid-template-columns:minmax(0,1fr) auto 18px;padding:8px 10px;gap:8px}.program-summary-price>span{display:none}.program-summary h3{font-size:17px}.rate-option-row{min-height:168px;padding:8px;grid-template-columns:minmax(0,1fr) minmax(125px,.8fr);align-items:start;gap:6px 10px}.rate-room-copy h4{font-size:16px}.rate-room-copy p,.rate-room-copy .price-difference-inline{display:none}.rate-price-copy{align-items:flex-end;text-align:right}.rate-price-copy>strong{font-size:19px}.rate-terms-copy{grid-column:1;flex-direction:column;flex-wrap:nowrap;gap:4px}.rate-terms-copy>span{max-width:100%}.rate-terms-copy .benefits-pending{display:none}.rate-actions{grid-column:2;align-items:stretch;flex-direction:column;gap:4px}.rate-actions .price-breakdown{flex:0 0 auto}.rate-actions .price-breakdown-toggle{justify-content:flex-end;text-align:right}.rate-actions .price-breakdown-panel{min-width:250px;margin-left:-110px}.rate-actions .option-quote-button{width:100%;min-height:36px;margin:0;padding:0 8px}.rate-price-copy .tax-line-full,.rate-actions .price-details-full{display:none}.rate-price-copy .tax-line-compact,.rate-actions .price-details-short{display:inline}}@media(max-width:720px){.brand img{width:142px;max-height:50px}.program-summary{grid-template-columns:minmax(0,1fr) 18px;align-items:start}.program-summary-price{grid-column:1;align-items:flex-start;text-align:left}.program-summary>svg{grid-column:2;grid-row:1}.rate-option-row>.price-breakdown{grid-column:1 / -1}.rate-option-row>.price-breakdown .price-breakdown-toggle{justify-content:flex-start;text-align:left}.rate-option-row>.price-breakdown .price-breakdown-panel{min-width:0;margin-left:0}}.date-fields{min-width:0;align-self:stretch;grid-column:span 2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-right:1px solid var(--line)}.date-fields .field{min-height:54px;border-right:1px solid var(--line);padding-bottom:2px}.date-fields .field:nth-child(2){border-right:0}.date-fields-status{min-height:21px;padding:0 16px 6px;grid-column:1 / -1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;text-align:center;color:var(--muted);font-size:12px}.date-fields-status small{font-size:inherit}.drawer-stay-summary{display:block}.program-section.best-value{border-color:#119ac86b}.program-section.best-value .program-summary{background:#eaf5f7}.program-benefit-list{margin-top:6px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:6px 10px}.program-benefit-list>strong{color:#4f6675;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.program-benefit-list>div{display:flex;flex-wrap:wrap;gap:4px 12px}.program-benefit-list>div>span{display:inline-flex;align-items:center;gap:4px;color:#5e4a27;font-size:12px}.best-value-reason{margin-top:5px;display:block;color:#176079!important;line-height:1.4}.rate-option-row.best-value{box-shadow:inset 3px 0 #119ac8;background:#fbfdfb}.rate-price-copy{margin:0;display:grid;align-content:center;gap:4px}.rate-price-copy>div{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}.rate-price-copy dt{color:var(--muted);font-size:11px;line-height:1.25}.rate-price-copy dd{margin:0;color:var(--ink);font-size:13px;font-weight:650;text-align:right;white-space:nowrap}.rate-price-copy .rate-price-primary{margin-bottom:2px;padding-bottom:5px;border-bottom:1px solid rgba(7,59,100,.1)}.rate-price-copy .rate-price-primary dt{color:var(--ink);font-size:12px;font-weight:700}.rate-price-copy .rate-price-primary dd{color:var(--forest);font-size:22px;line-height:1}.rate-price-copy .tax-amount-line{color:var(--forest);font-weight:700}.rate-price-copy .rate-price-customer-total dt,.rate-price-copy .rate-price-customer-total dd{color:#7b5a20;font-weight:700}.catalog-current,.catalog-stale{padding:5px 8px;border-radius:999px;font-size:11px}.catalog-current{color:#21674f;background:#dcefe5}.catalog-stale{color:#8c432b;background:#f3dfd5}@media(max-width:720px){.date-fields{grid-column:1 / -1;border-right:0;border-bottom:1px solid var(--line)}.date-fields .field{border-bottom:0;padding-inline:10px}.date-fields-status{padding-inline:10px}.program-benefit-list{grid-template-columns:1fr;gap:4px}.program-benefit-list>div{display:grid;gap:3px}.rate-option-row{grid-template-columns:minmax(0,1fr)}.rate-price-copy{width:100%;grid-column:1;align-items:stretch;text-align:left}.rate-price-copy>div{grid-template-columns:minmax(0,1fr) auto}.rate-terms-copy,.rate-actions{grid-column:1}.rate-actions{align-items:stretch}.rate-option-row>.price-breakdown{grid-column:1}}.deal-list-heading,.deal-row{grid-template-columns:minmax(250px,1.15fr) minmax(260px,1.25fr) minmax(220px,.95fr) minmax(330px,auto);gap:16px}.deal-row{min-height:112px;padding:12px 14px}.deal-row:hover{box-shadow:inset 3px 0 #119ac8}.deal-details-cell h3{color:#173f58;font-size:14px;line-height:1.4;white-space:normal}.deal-date-cell p{font-size:12px;line-height:1.5}.deal-action-cell{gap:8px}.deal-details-button,.deal-book-button{min-height:38px;padding:0 12px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:12px;font-weight:750;white-space:nowrap}.deal-details-button{border:1px solid rgba(7,59,100,.28);color:#073b64;background:#fff}.deal-details-button:hover{border-color:#119ac8;color:#087fa4;background:#f1fafc}.deal-book-button{border:1px solid #073b64;color:#fff;background:#073b64}.deal-book-button:hover{border-color:#0a5278;background:#0a5278}.deal-search-notice{grid-column:1 / -1;min-height:88px;padding:12px 14px;border:1px solid rgba(17,154,200,.3);border-radius:12px;display:grid;grid-template-columns:auto minmax(260px,1fr) minmax(230px,auto) auto;align-items:center;gap:10px 13px;color:#173f58;background:#edf7f9}.deal-search-notice.mismatch{border-color:#be6a3e66;background:#fbf3e9}.deal-search-notice-icon{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;color:#087fa4;background:#d7eef3}.deal-search-notice-copy{min-width:0;display:grid;gap:2px}.deal-search-notice-copy>span{color:#587083;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.deal-search-notice-copy strong{overflow:hidden;color:#073b64;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.deal-search-notice-copy small{color:#587083;font-size:11px}.deal-search-notice-copy .deal-search-original{color:#778a96;font-size:10px}.deal-search-notice-copy p{margin:3px 0 0;color:#31566c;font-size:11px;line-height:1.4}.deal-search-notice-status{display:flex;align-items:center;gap:7px;color:#296a55;font-size:12px;font-weight:650}.deal-search-notice.pending .deal-search-notice-status{color:#587083}.deal-search-notice.mismatch .deal-search-notice-status{color:#985136}.deal-search-details{min-height:36px;padding:0 11px;border:1px solid rgba(7,59,100,.25);border-radius:8px;color:#073b64;background:#fff;font-size:11px;font-weight:750}.deal-search-notice-disclaimer{grid-column:2 / -1;margin:-4px 0 0;color:#687985;font-size:10px;line-height:1.4}.hotel-offer-badge{min-height:24px;padding:2px 8px;border:1px solid rgba(199,154,76,.4);border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:#72511c;background:#fff5dc;font:inherit;font-size:11px;font-weight:750}.hotel-offer-badge:hover{border-color:#c79a4c;background:#f9e8bd}.hotel-card-body>.hotel-offer-badge{width:fit-content;height:auto;min-height:26px;margin-top:8px;padding:3px 9px;justify-content:flex-start;border-color:#c79a4c7a;color:#72511c;background:#fff5dc}.hotel-card-body>.hotel-offer-badge:hover{color:#5e4218;border-color:#c79a4c;background:#f9e8bd}.hotel-offers-drawer .deal-drawer-body{min-height:0}.hotel-offers-list{display:grid;gap:8px}.hotel-offers-list-heading{margin-bottom:4px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.hotel-offers-list-heading span{color:#587083;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.hotel-offers-list-heading strong{color:#073b64;font-size:13px}.hotel-offer-option{width:100%;min-height:72px;padding:11px 12px;border:1px solid rgba(7,59,100,.13);border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#173f58;background:#fff;text-align:left}.hotel-offer-option:hover{border-color:#119ac873;background:#f4fafb}.hotel-offer-option>span:first-child{min-width:0;display:grid;gap:5px}.hotel-offer-option strong{font-size:14px;line-height:1.35}.hotel-offer-option small{color:#587083;font-size:11px;line-height:1.4}.hotel-offer-option>span:last-child{display:inline-flex;align-items:center;gap:5px;color:#087fa4;font-size:11px;font-weight:750;white-space:nowrap}.offers-drawer-back{margin-bottom:12px;padding:0;border:0;display:inline-flex;align-items:center;gap:5px;color:#087fa4;background:transparent;font:inherit;font-size:12px;font-weight:750}.offers-drawer-loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:8px;color:#587083;font-size:13px}.offers-drawer-unavailable{min-height:180px;padding:24px;border:1px dashed rgba(160,88,53,.35);border-radius:10px;display:grid;place-items:center;align-content:center;gap:7px;color:#8b492f;background:#fbf3e9;text-align:center}.offers-drawer-unavailable strong{font-size:16px}.offers-drawer-unavailable span{max-width:430px;color:#755e50;font-size:12px;line-height:1.5}@media(max-width:1100px){.deal-list-heading,.deal-row{grid-template-columns:minmax(210px,1fr) minmax(220px,1.1fr) minmax(180px,.8fr) 248px;gap:10px}.deal-details-button,.deal-book-button{padding-inline:9px}.deal-search-notice{grid-template-columns:auto minmax(220px,1fr) minmax(190px,auto)}.deal-search-details{grid-column:3}.deal-search-notice-status{grid-column:2}.deal-search-notice-disclaimer{grid-column:2 / -1}}@media(max-width:720px){.deal-list-heading{display:none}.deal-row{min-height:0;padding:12px;grid-template-columns:1fr;gap:10px}.deal-partner-cell,.deal-details-cell,.deal-date-cell,.deal-action-cell{grid-column:1}.deal-action-cell{grid-row:auto}.deal-details-cell{padding:2px 0 0}.deal-date-cell{padding-top:8px;border-top:1px solid rgba(7,59,100,.08)}.deal-action-cell{justify-content:stretch}.deal-details-button,.deal-book-button{flex:1;min-width:0}.deal-search-notice{min-height:0;padding:11px;grid-template-columns:auto minmax(0,1fr);align-items:start}.deal-search-notice-copy strong{white-space:normal}.deal-search-notice-status,.deal-search-details,.deal-search-notice-disclaimer{grid-column:1 / -1}.deal-search-notice-status{padding-top:8px;border-top:1px solid rgba(7,59,100,.09)}.deal-search-details{width:100%}.deal-search-notice-disclaimer{margin:0}.hotel-offer-option{align-items:flex-start;flex-direction:column;gap:8px}}.deal-list-heading,.deal-row{grid-template-columns:minmax(280px,1.3fr) minmax(340px,1.55fr) minmax(190px,.8fr) 180px;gap:14px}.deal-row{min-height:104px;cursor:pointer}.deal-partner-cell h2,.deal-details-cell h3{display:-webkit-box;overflow:hidden;white-space:normal;text-overflow:initial;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deal-partner-cell h2{line-height:1.28}.deal-secondary-language,.deal-original-copy{color:#70808b;font-size:11px;font-weight:500;line-height:1.45}.deal-partner-cell .deal-secondary-language{margin-top:3px;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deal-details-cell .deal-secondary-language{margin:5px 0 0;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deal-action-cell{width:180px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.deal-book-button,.deal-ask-button{min-width:0;min-height:38px;padding:0 8px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font:inherit;font-size:11px;font-weight:800;white-space:nowrap}.deal-ask-button{border:1px solid rgba(7,59,100,.3);color:#073b64;background:#fff}.deal-ask-button:hover{border-color:#119ac8;color:#087fa4;background:#f1fafc}.deals-search-combobox{position:relative;min-width:0;height:100%}.deals-search-combobox>input{width:100%}.deals-search-menu{position:absolute;z-index:20;top:calc(100% + 7px);left:-34px;width:min(560px,calc(100vw - 42px));max-height:330px;padding:6px;border:1px solid rgba(7,59,100,.16);border-radius:10px;overflow-y:auto;background:#fffdf8;box-shadow:0 18px 45px #031d312e}.deals-search-menu-label{padding:7px 9px 5px;display:block;color:#70808b;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.deals-search-menu button{width:100%;min-height:52px;margin:0;padding:8px 9px;border:0;border-radius:7px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#173f58;background:transparent;text-align:left}.deals-search-menu button:hover,.deals-search-menu button.active{background:#edf7f9}.deals-search-menu button>span{min-width:0;display:grid;gap:3px}.deals-search-menu strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.deals-search-menu small{overflow:hidden;color:#70808b;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.deals-search-menu em{flex:0 0 auto;color:#087fa4;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.deal-original-copy{margin:5px 0 0}.deal-date-details{grid-template-columns:1fr 1fr}.deal-terms+.deal-terms{margin-top:16px}.deal-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.deal-drawer .deal-drawer-actions button{min-width:0;min-height:44px;padding-inline:8px;font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap}.deal-drawer-actions .deal-drawer-ask{border:1px solid #073b64;color:#073b64;background:#fff}.deal-drawer-actions .deal-drawer-ask:hover{color:#fff;background:#073b64}.deal-search-notice-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.deal-search-ask{min-height:36px;padding:0 11px;border:1px solid #073b64;border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:#fff;background:#073b64;font-size:11px;font-weight:750}.deal-inquiry-dialog{width:min(760px,calc(100% - 24px))}.deal-inquiry-dialog .quote-form-section{padding:16px;gap:12px}.deal-inquiry-dialog .form-section-heading{margin:-16px -16px 0}.deal-inquiry-dialog .quote-submit-section{grid-column:1 / -1;margin-top:0}.deal-inquiry-offer-card{margin:0;padding:13px;border:1px solid rgba(199,154,76,.35);border-radius:11px;display:flex;align-items:flex-start;gap:10px;color:#72511c;background:#fff5dc}.deal-inquiry-offer-card div{min-width:0;display:grid;gap:3px}.deal-inquiry-offer-card span{color:#806a46;font-size:12px}.deal-inquiry-offer-card strong{color:#5b421b;font-size:14px;line-height:1.4}.deal-inquiry-explanation{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.deal-inquiry-trip-fields{align-items:end}.deal-inquiry-trip-fields .child-ages{grid-column:1 / -1;flex-wrap:wrap;padding:0}.deal-inquiry-trip-fields .child-ages label{display:flex;flex:1 1 100px;flex-direction:column}.deal-inquiry-trip-fields .child-ages select{width:100%;margin-left:0}.manual-trip-fields .child-ages{grid-column:1 / -1;flex-wrap:wrap;padding:0}.manual-trip-fields .child-ages label{display:flex;flex:1 1 100px;flex-direction:column}.manual-trip-fields .child-ages select{width:100%;margin-left:0}.manual-request-details{display:contents;border:0;margin:0;padding:0;min-width:0}.manual-request-details:disabled input,.manual-request-details:disabled select,.manual-request-details:disabled textarea{color:var(--forest-deep);opacity:1;background:#f5f8fa}.manual-original-message{white-space:pre-wrap;overflow-wrap:anywhere}.quote-submit-section>.secondary-button{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;color:var(--forest-deep);background:#fff}.manual-recovery{width:min(1100px,calc(100% - 32px));margin:24px auto;color:var(--forest-deep)}.manual-recovery article{padding:16px;margin-top:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.manual-recovery-disclosure{border:1px solid var(--line);border-radius:12px;background:#fff}.manual-recovery-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:12px 16px;cursor:pointer}.manual-recovery-disclosure>summary:after{content:"+";font-size:20px}.manual-recovery-disclosure[open]>summary:after{content:"−"}.manual-recovery-disclosure>summary span{margin-left:auto;color:var(--muted);font-size:13px}.manual-recovery-body{padding:0 16px 16px}.manual-recovery-picker{display:grid;gap:6px;font-size:13px;font-weight:600}.manual-recovery-picker select{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:8px;color:inherit;background:#fff}.manual-recovery-body article{margin-top:12px;padding:12px;background:var(--surface-subtle)}.manual-reference-id{display:block;overflow-wrap:anywhere;font-size:13px;margin-top:6px}.manual-recovery-actions{display:flex;flex-wrap:wrap;gap:8px}.manual-recovery button,.manual-recovery a{display:inline-flex;min-height:44px;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:8px;color:inherit;background:#fff}.manual-recovery button:focus-visible,.manual-recovery a:focus-visible{outline:3px solid #13819e;outline-offset:2px}.deal-inquiry-trip-fields input[readonly]{color:var(--muted);background:var(--surface-subtle)}.deal-inquiry-trip-fields .manual-night-count,.deal-inquiry-party{margin:0;display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:12px}@media(max-width:1100px){.deal-list-heading,.deal-row{grid-template-columns:minmax(220px,1fr) minmax(250px,1.15fr) minmax(170px,.8fr) 170px;gap:10px}.deal-action-cell{width:170px}.deal-search-notice-actions{grid-column:3}}@media(max-width:720px){.deal-row{grid-template-columns:1fr}.deal-action-cell{width:100%;grid-template-columns:1fr 1fr}.deal-book-button,.deal-ask-button{min-height:42px}.deals-search-menu{left:-34px}.deal-drawer-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.deal-search-notice-actions{width:100%;grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr}.deal-search-notice-actions button{width:100%}.deal-inquiry-dialog{width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border-radius:0}}.search-empty-state{width:min(1120px,calc(100% - 32px));margin:22px auto 0;padding:clamp(20px,3vw,34px);border:1px solid rgba(7,59,100,.14);border-radius:18px;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:18px;background:var(--surface);box-shadow:0 4px 16px #072e4d0a}.search-empty-state.checking{border-style:dashed}.search-empty-icon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;color:#087fa4;background:#dff1f5}.search-empty-copy{min-width:0}.search-empty-state h2{max-width:900px;margin:6px 0 8px;color:#073b64;font:600 28px/1.2 var(--font-ui)}.search-empty-state p{max-width:760px;margin:0;color:#587083;line-height:1.6}.search-empty-actions{margin-top:18px;display:flex;flex-wrap:wrap;gap:9px}.search-empty-actions button{min-height:44px;padding:0 14px;border:1px solid rgba(7,59,100,.28);border-radius:9px;display:inline-flex;align-items:center;gap:7px;color:#073b64;background:#fff;font-size:14px;font-weight:600}.search-empty-actions button.primary{border-color:#073b64;color:#fff;background:#073b64}.search-empty-actions button:disabled{cursor:wait;opacity:.62}.search-empty-copy .empty-nearby-scope{margin-top:10px;color:#31566c;font-weight:700}.search-empty-copy .empty-nearby-error{margin-top:8px;color:#8a4b24}.advisor-response-guarantee{margin:8px 0 0;padding:10px 12px;border-left:3px solid #119ac8;color:#244e64;background:#edf7f9;font-size:12px;line-height:1.55}.deal-inquiry-dialog .quote-form-error{margin:0;padding:12px;border:1px solid currentColor;border-radius:8px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.deal-inquiry-dialog .quote-form-error:focus{outline:2px solid var(--focus);outline-offset:3px}.deal-inquiry-dialog .quote-form-error a{min-height:44px;display:inline-flex;align-items:center}.deals-shell .success-banner{overflow-wrap:anywhere}.auth-dialog-v54{width:min(510px,calc(100% - 24px))}.auth-method-tabs{margin:24px 0 16px;padding:4px;border:1px solid var(--line);border-radius:12px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;background:var(--surface-subtle)}.auth-method-tabs button{min-width:0;min-height:48px;padding:8px;border:0;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;color:var(--muted);background:transparent;font:inherit;font-size:13px;font-weight:600}.auth-method-tabs button.active{color:#073b64;background:#fff;box-shadow:0 3px 10px #072e4d14}.progressive-results-status.calm{min-height:48px;padding:11px 14px;grid-template-columns:auto minmax(0,1fr);gap:9px;color:#087fa4;background:linear-gradient(110deg,#e7f4f6f5,#fffaedf0)}.progressive-results-status.calm strong{color:#31566c;font-size:12px;font-weight:700}.map-fallback-note{margin:0 0 12px;color:#77581f;font-size:12px}.result-view-toggle{padding:3px;border:1px solid var(--line);border-radius:11px;display:inline-flex;gap:2px;background:#f3efe6}.result-view-toggle button{min-height:34px;padding:0 10px;border:0;border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:var(--muted);background:transparent;font:inherit;font-size:11px;font-weight:750}.result-view-toggle button.active{color:#073b64;background:#fff;box-shadow:0 3px 10px #072e4d14}.result-view-toggle button:disabled{cursor:not-allowed;opacity:.42}.hotel-card.map-selected{border-color:#119ac8a6;box-shadow:0 0 0 2px #119ac821,0 18px 46px #072f4e1a}.results-map-view{display:grid;gap:10px}.map-coverage-note{min-height:44px;padding:8px 10px 8px 12px;border:1px solid rgba(7,59,100,.13);border-radius:11px;display:flex;align-items:center;gap:8px;color:#31566c;background:#edf7f9;font-size:12px}.map-coverage-note>span{flex:1}.map-coverage-note>svg{flex:0 0 auto;color:#087fa4}.map-coverage-note button{min-height:32px;padding:0 10px;border:1px solid rgba(7,59,100,.2);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:#073b64;background:#fff;font:inherit;font-weight:750}.hotel-map-canvas,.hotel-map-loading{position:relative;width:100%;height:min(760px,calc(100vh - 155px));min-height:580px;border:1px solid rgba(7,59,100,.15);border-radius:20px;overflow:hidden;background:#f7f5f0;box-shadow:0 18px 48px #072f4e1a}.hotel-map-loading{display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted)}.hotel-map-loading svg,.pagination-loading svg{animation:pes-spin .9s linear infinite}.hotel-price-marker{min-height:28px;padding:3px 8px;border:2px solid #fff;border-radius:999px;color:#fff;background:#073b64;box-shadow:0 5px 14px #072f4e4d;font:750 11px/1.1 Manrope,sans-serif;cursor:pointer}.hotel-price-marker:hover,.hotel-price-marker:focus-visible,.hotel-price-marker.selected{outline:3px solid rgba(17,154,200,.55);outline-offset:2px;transform:translateY(-2px);box-shadow:0 7px 18px #072f4e6b}.hotel-price-marker.has-offer{color:#38270d;background:#e9c66d;box-shadow:0 5px 14px #8056124d}.hotel-marker-cluster{min-width:44px;min-height:44px;padding:5px;border:3px solid #fff;border-radius:999px;color:#fff;background:#08779d;box-shadow:0 6px 16px #072f4e57;font:800 12px/1 Manrope,sans-serif;cursor:pointer;touch-action:manipulation}.hotel-marker-cluster:hover,.hotel-marker-cluster:focus-visible,.hotel-marker-cluster.selected{outline:3px solid rgba(233,198,109,.72);outline-offset:2px}.hotel-marker-cluster:active{transform:scale(.96)}.hotel-marker-cluster:disabled{cursor:not-allowed;opacity:.48}.hotel-map-cluster-list{min-width:240px;display:grid;gap:8px}.hotel-map-cluster-list>strong{color:#073b64}.hotel-map-cluster-list>div{max-height:280px;overflow:auto;display:grid;gap:8px}.hotel-map-cluster-hotel{width:100%;min-height:44px;padding:8px;border:1px solid rgba(7,59,100,.14);border-radius:8px;display:grid;gap:2px;color:#173f58;background:#fff;text-align:left;cursor:pointer;touch-action:manipulation}.hotel-map-cluster-hotel small{color:#587083}.hotel-map-frame{position:relative;isolation:isolate;display:grid;gap:8px}.results-view-panel[hidden]{display:none!important}.hotel-map-runtime-state{position:absolute;inset:1px;z-index:120;min-height:0;padding:24px;border-radius:19px;display:grid;place-items:center;align-content:center;gap:10px;color:#31566c;background:#f2f7f8f0;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hotel-price-marker.price-pending{min-width:46px;color:#31566c;background:#e7eef0;box-shadow:0 4px 12px #31566c33}.hotel-price-marker .hotel-marker-dots{width:28px;min-height:16px;gap:3px}.hotel-price-marker .hotel-marker-dots i{width:4px;height:4px}.hotel-map-runtime-state strong{color:#173f58;font-size:14px}.hotel-map-runtime-state>span:not(.hotel-map-runtime-spinner){max-width:420px;color:#587083;font-size:12px;line-height:1.5}.hotel-map-runtime-state>div{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}.hotel-map-runtime-state button{min-height:44px;padding:0 13px;border:1px solid rgba(7,59,100,.24);border-radius:9px;color:#073b64;background:#fff;font:inherit;font-size:14px;font-weight:600;white-space:nowrap}.hotel-map-runtime-state button.primary{border-color:#073b64;color:#fff;background:#073b64}.hotel-map-runtime-spinner{width:24px;height:24px;border:3px solid rgba(8,127,164,.2);border-top-color:#087fa4;border-radius:50%;animation:pes-spin .9s linear infinite}.hotel-map-legend{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;color:#405666;font-size:10px;font-weight:750}.hotel-map-footer{min-width:0;padding:8px 10px;border:1px solid rgba(7,59,100,.14);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:8px 14px;background:#fffdf8f5;box-shadow:0 5px 18px #072f4e14}.hotel-map-reference-legend,.hotel-map-display-legend{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.hotel-map-reference-legend button,.hotel-map-display-legend button{min-width:0;min-height:32px;padding:4px 8px;border:1px solid rgba(7,59,100,.14);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:#405666;background:#fff;font:inherit;font-weight:inherit;cursor:pointer}.hotel-map-reference-legend button>span{min-width:0;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-map-display-legend button[aria-pressed=true]{border-color:#073b64;color:#073b64;background:#e6f1f5}.hotel-map-reference-legend button:focus-visible,.hotel-map-display-legend button:focus-visible{outline:3px solid rgba(17,154,200,.45);outline-offset:1px}.hotel-map-reference-legend button:disabled,.hotel-map-display-legend button:disabled{opacity:.52;cursor:not-allowed}.hotel-map-legend i{width:18px;height:18px;border:2px solid #fff;border-radius:999px;display:inline-grid;place-items:center;color:#fff;background:#073b64;box-shadow:0 2px 5px #072f4e3d;font-style:normal;font-size:9px}.hotel-map-legend i.offer{color:#38270d;background:#e9c66d}.hotel-map-popup{min-width:190px;padding-right:28px;position:relative;display:grid;gap:5px;color:#173f58}.hotel-map-popup strong{font-family:Fraunces,serif;font-size:15px;line-height:1.25}.hotel-map-popup span{color:#073b64;font-weight:750}.hotel-map-popup small{color:#687985}.hotel-map-popup button{min-height:32px;margin-top:3px;border:0;border-radius:8px;color:#fff;background:#073b64;font:inherit;font-size:11px;font-weight:750}.hotel-map-popup>.hotel-map-popup-close{width:28px;min-height:28px;margin:0;padding:0;position:absolute;top:-5px;right:-5px;display:inline-grid;place-items:center;color:#4f6879;background:transparent;font-size:22px;line-height:1}.hotel-map-popup>.hotel-map-popup-close:hover{color:#073b64;background:#eef5f6}.hotel-map-popup>.hotel-map-popup-close:focus-visible{outline:2px solid rgba(17,154,200,.65);outline-offset:1px}.pagination-loading{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:12px}.site-header nav .hot-promotions-link{border-color:#b882278c;color:#654515;background:#fff5d8;box-shadow:none;font-weight:600;gap:6px}.site-header nav .hot-promotions-link:hover{color:#654515;border-color:#b67f27;background:#ffefbd}.site-header nav .hot-promotions-link:focus-visible{outline:3px solid rgba(233,198,109,.5);outline-offset:2px}.deal-content-blocks{margin-top:18px;display:grid;gap:10px}.deal-content-blocks h4{margin:10px 0 0;color:#173f58;font-family:var(--font-ui);font-size:17px}.deal-content-blocks p{margin:0;color:#31566c;font-size:13px;line-height:1.65}.deal-content-blocks ul{margin:0;padding-left:20px;display:grid;gap:6px;color:#31566c;font-size:13px;line-height:1.55}.deal-definitions{margin:0;display:grid;gap:7px}.deal-definitions>div{padding:9px 11px;border:1px solid rgba(7,59,100,.1);border-radius:9px;display:grid;grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);gap:12px;background:#fffdf8}.deal-definitions dt{color:#173f58;font-size:12px;font-weight:800}.deal-definitions dd{margin:0;color:#31566c;font-size:12px;line-height:1.55}.deal-notice{padding:12px 13px;border-left:3px solid #c79a4c;border-radius:0 9px 9px 0;display:grid;gap:7px;background:#fbf3df}.deal-notice p{color:#6d5830;font-size:12px}@media(max-width:720px){.results-actions{width:100%;flex-wrap:wrap}.result-view-toggle{flex:1}.result-view-toggle button{flex:1;justify-content:center}.hotel-map-canvas,.hotel-map-loading{height:60vh;min-height:380px;border-radius:16px}.hotel-map-runtime-state{padding:18px;border-radius:15px}.map-coverage-note{align-items:flex-start;flex-wrap:wrap}.map-coverage-note>span{min-width:calc(100% - 28px)}.map-coverage-note button{margin-left:24px}.deal-definitions>div{grid-template-columns:1fr;gap:3px}}.auth-provider-panel{display:grid;gap:10px}.auth-provider-panel small{color:var(--muted);font-size:12px;line-height:1.5}.google-auth-button{min-height:46px;border:1px solid rgba(7,59,100,.2);border-radius:9px;color:var(--ink);background:#fff;font:inherit;font-size:14px;font-weight:600}.phone-auth-input{min-height:44px;border:1px solid #d7cdbd;border-radius:9px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;overflow:hidden;background:#fff}.phone-auth-input>span{height:100%;padding:0 11px;border-right:1px solid #e4dbce;display:grid;place-items:center;color:#587083;font-size:12px;background:#f7f2e9}.phone-auth-input input{min-height:42px!important;border:0!important;border-radius:0!important}.auth-dialog select{width:100%;min-height:44px;padding:0 10px;border:1px solid #d7cdbd;border-radius:9px;color:#173f58;background:#fff;font:inherit}.captcha-widget{min-height:66px;display:grid;place-items:center}.auth-text-button{min-height:44px;border:0;color:#087fa4;background:transparent;font:inherit;font-size:14px;font-weight:600}.customer-table-heading form button{min-height:36px;padding:0 10px;border:0;border-radius:7px;color:#fff;background:#073b64;font-size:11px;font-weight:750}.sla-badge{padding:4px 7px;border-radius:999px;display:inline-flex;color:#31566c;background:#e6eef0;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.sla-badge.overdue{color:#8d3428;background:#f6dcd4}.sla-badge.urgent{color:#8a5621;background:#f5e4bf}.sla-badge.at_risk{color:#755b1c;background:#f3ebca}.sla-badge.responded{color:#23644f;background:#dcefe5}.sla-overdue td{background:#c95e4d0b}.search-assistance-summary{border-color:#119ac84d;background:#edf7f9}@media(max-width:760px){.search-empty-state{grid-template-columns:1fr}.search-empty-icon{width:48px;height:48px}.search-empty-actions{display:grid;grid-template-columns:1fr}.search-empty-actions button{width:100%;justify-content:center}.auth-method-tabs button{font-size:13px}}.room-stale-notice{margin:0 0 10px;padding:10px 12px;border:1px solid #d8a36e;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6f4328;background:#fff4e7;font-size:12px}.room-stale-notice>div{display:flex;align-items:center;gap:8px}.room-stale-notice>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}.room-stale-notice>div:last-child{flex-wrap:wrap}.room-stale-notice button{min-height:44px;padding:10px 14px;border:1px solid #b6afa3;border-radius:9px;color:var(--forest-deep);background:#fff;font-size:13px;font-weight:650}.room-recovery-panel{margin:24px;padding:24px;border:1px solid var(--line);border-radius:12px;color:var(--forest-deep);background:#f5f9fa}.room-recovery-panel>svg{color:var(--forest)}.room-recovery-panel h3{margin:12px 0 6px;font-size:18px;line-height:1.35}.room-recovery-panel p{max-width:64ch;margin:0;color:#526c79;font-size:14px;line-height:1.5}.room-recovery-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.room-recovery-actions button,.search-freshness-notice button,.search-idle-dialog button,.room-drawer .rate-advisor-help{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid #9aabb3;border-radius:9px;color:var(--forest-deep);background:#fff;font-size:13px;font-weight:650;line-height:1.4}.room-recovery-actions button.primary-button,.search-idle-dialog button.primary-button{border-color:var(--forest);color:#fff;background:var(--forest)}@media(max-width:550px){.room-recovery-panel{margin:16px;padding:20px}.room-recovery-actions{flex-direction:column;align-items:stretch}}@media(max-width:550px){.room-stale-notice,.room-stale-notice>div{align-items:stretch;flex-direction:column}}.app-bootstrap-shell{min-height:100vh;padding:32px;display:grid;place-items:center;align-content:center;gap:16px;color:var(--muted);background:radial-gradient(circle at 50% 36%,rgba(17,154,200,.1),transparent 34%),var(--cream);text-align:center}.app-bootstrap-shell .route-brand-logo{width:min(260px,70vw);height:92px}.brand-logo-frame{display:inline-block;background-position:center;background-repeat:no-repeat;background-size:contain}.app-bootstrap-shell p{margin:0;max-width:36rem;font-size:14px;line-height:1.5}.deal-list-heading,.deal-row{grid-template-columns:minmax(0,1.25fr) minmax(0,1.55fr) minmax(0,.8fr) 170px;gap:10px}.route-loading-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}.route-loading-actions button{min-height:44px;min-width:80px;padding:0 18px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--forest);font-weight:600;white-space:nowrap}.route-loading-actions .primary-button{border-color:var(--forest);background:var(--forest);color:#fff}.deal-action-cell{width:170px;grid-template-columns:minmax(0,1fr);gap:8px}.deal-book-button,.deal-ask-button{min-height:44px;padding:5px 6px;gap:4px;font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap}.deal-book-button svg,.deal-ask-button svg{width:14px;height:14px;flex:0 0 auto}.deals-load-more-wrap{width:100%;min-height:34px;margin:18px 0 0;display:grid;place-items:center}.mobile-header-actions,.mobile-header-menu{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header.shared-site-header{width:100%;max-width:none;height:88px;min-height:88px;margin:0;padding:0;display:block;position:sticky;top:0;z-index:80;overflow:visible;background:#fffffff7;border-bottom:1px solid rgba(7,59,100,.1);box-shadow:0 3px 16px #072f4e0a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-header.shared-site-header .site-header-inner{width:100%;max-width:1340px;height:100%;margin:0 auto;padding:0 22px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px}.site-header.shared-site-header .brand{width:203px;height:68px;min-width:203px;flex:0 0 203px;display:flex;align-items:center}.site-header.shared-site-header .brand img{width:203px;height:68px;max-width:100%;max-height:68px;object-fit:contain}.site-header.shared-site-header .brand-logo-frame{width:100%;height:100%}.shared-site-header .desktop-header-nav{min-width:0;margin-left:auto;display:flex;justify-content:flex-end}.site-header.shared-site-header .mobile-header-menu{display:none}.shared-site-header .dashboard-link,.shared-site-header .hot-promotions-link{min-height:44px;padding:0 15px;border:1px solid rgba(7,59,100,.14);border-radius:999px;background:#ffffffb8;color:var(--forest);text-decoration:none;display:inline-flex;align-items:center;flex:0 0 auto;gap:8px;white-space:nowrap}.currency-selector{min-width:0;min-height:44px;padding:0 9px;border:1px solid rgba(7,59,100,.14);border-radius:999px;display:inline-grid;grid-template-columns:17px max-content;align-items:center;gap:5px;color:var(--forest);background:#ffffffb8}.currency-selector>svg{display:block}.currency-selector-field{min-width:0;align-self:stretch;justify-self:start;position:relative;display:inline-flex;align-items:center;gap:4px}.currency-selector select{width:100%;height:100%;position:absolute;inset:0;z-index:1;padding:0;border:0;opacity:0;cursor:pointer}.currency-selector-value{display:block;margin-left:.22em;font-weight:700;line-height:1}.currency-selector-chevron{display:block;width:8px;height:5px;flex:0 0 8px;margin:0;background:currentColor;clip-path:polygon(0 0,50% 100%,100% 0);pointer-events:none}.currency-selector:has(select:focus-visible){outline:2px solid rgba(17,154,200,.58);outline-offset:2px}.currency-fallback-notice{max-width:min(520px,calc(100vw - 32px));padding:7px 11px;position:absolute;top:calc(100% + 8px);left:50%;z-index:150;transform:translate(-50%);border:1px solid rgba(183,126,32,.26);border-radius:9px;color:#654811;background:#fff9e7fa;box-shadow:0 8px 24px #072e4d1f;font-size:12px;line-height:1.35;text-align:center}.currency-original-note{min-width:0;color:var(--muted);font-size:10px;font-weight:500;line-height:1.3;white-space:normal;overflow-wrap:anywhere}.hotel-price-summary .currency-original-note,.rate-price-copy>.currency-original-note,.selected-currency-note{max-width:240px;display:block;text-align:right}.hotel-map-popup-price .currency-original-note{margin-top:2px;display:block;text-align:left}.shared-site-header .mobile-menu-button{width:44px;min-height:44px;padding:0;justify-content:center}.results-toolbar{top:88px}@media(max-width:1019px){.shared-site-header .desktop-header-nav{display:none}.shared-site-header .mobile-header-actions{min-width:0;margin-left:auto;display:flex;align-items:center;gap:7px}.site-header.shared-site-header .mobile-header-actions button{min-width:44px;min-height:44px;padding:0 11px;flex:0 0 auto;justify-content:center;font-size:14px}.site-header.shared-site-header .mobile-account-button{width:auto;font-size:14px}.site-header.shared-site-header .mobile-account-button span{display:inline}.site-header.shared-site-header .mobile-header-menu{display:none;width:max-content;min-width:0;max-width:calc(100vw - 44px);max-height:calc(100vh - 102px);padding:8px;position:absolute;top:calc(100% + 6px);right:22px;z-index:140;overflow:auto;border:1px solid rgba(7,59,100,.16);border-radius:16px;background:#fffffffa;box-shadow:0 20px 55px #072e4d38}.site-header.shared-site-header .mobile-header-menu.open{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;align-items:start;gap:5px}.site-header.shared-site-header .mobile-header-menu .dashboard-link,.site-header.shared-site-header .mobile-header-menu button,.site-header.shared-site-header .mobile-header-menu .currency-selector{width:auto;max-width:100%;min-width:0;min-height:44px;padding:0 10px;justify-content:flex-start;justify-self:start;overflow:visible;font-size:14px;white-space:normal;overflow-wrap:anywhere}.site-header.shared-site-header .mobile-header-menu .currency-selector-field{min-height:42px}.site-header.shared-site-header .mobile-header-menu svg,.site-header.shared-site-header .mobile-header-actions svg{width:20px;height:20px;display:block}}@media(max-width:720px){.site-header.shared-site-header{height:78px;min-height:78px}.site-header.shared-site-header .site-header-inner{padding:0 16px;gap:8px}.site-header.shared-site-header .brand{width:167px;height:56px;min-width:0;flex:0 1 167px}.site-header.shared-site-header .brand img{width:167px;height:56px;max-height:56px}.site-header.shared-site-header .mobile-header-menu{right:16px;max-width:calc(100vw - 32px);max-height:calc(100vh - 92px)}.results-toolbar{top:78px}}@media(max-width:380px){.site-header.shared-site-header .mobile-header-actions{gap:4px}.site-header.shared-site-header .mobile-account-button{width:44px;padding:0;font-size:0}.site-header.shared-site-header .mobile-account-button span{display:none}}.date-range-fieldset{min-width:0;grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.date-range-label{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.date-range-trigger{min-width:0;width:100%;min-height:36px;margin-top:4px;padding:6px 0;border:0;border-radius:6px;display:flex;align-items:center;gap:7px;color:var(--forest);background:transparent;font:inherit;font-size:15px;font-weight:500;text-align:left}.date-range-trigger svg{flex:0 0 auto;color:#2388a8}.date-range-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-range-trigger:focus-visible{outline:3px solid rgba(17,154,200,.32);outline-offset:3px}.date-range-layer{position:fixed;inset:0;z-index:520;pointer-events:none}.date-range-dialog .rdp-root{--rdp-accent-color: #087fa4;--rdp-accent-background-color: #dceff3;--rdp-day-height: 40px;--rdp-day-width: 40px;--rdp-day_button-height: 38px;--rdp-day_button-width: 38px;--rdp-months-gap: 20px}.date-range-dialog{position:fixed;max-width:calc(100vw - 32px);padding:15px 17px 12px;border:1px solid rgba(7,59,100,.18);border-radius:16px;color:var(--ink);background:#fffdf8;box-shadow:0 24px 65px #021d313d;pointer-events:auto}.date-range-dialog-header{margin-bottom:6px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.date-range-dialog-header>div{display:grid;gap:2px}.date-range-dialog-header strong{font-family:var(--font-ui);font-size:17px}.date-range-dialog-header span{color:var(--muted);font-size:11px}.date-range-dialog-header .icon-button{width:34px;height:34px;flex:0 0 auto}.date-range-dialog .rdp-months{justify-content:center}.date-range-dialog .rdp-month_caption{font-size:13px;font-weight:750}.date-range-dialog .rdp-weekday{color:var(--muted);font-size:10px;font-weight:700}.date-range-dialog .rdp-day_button{font-size:12px}.date-range-dialog .rdp-day_button:focus-visible{outline:3px solid rgba(17,154,200,.34);outline-offset:-2px}.date-range-dialog .rdp-range_middle .rdp-day_button{border-radius:0}.date-range-this-month{justify-self:start;min-height:34px;padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--navy);font-size:12px;font-weight:750}.date-range-this-month:hover{border-color:var(--sky);color:var(--sky-dark)}.date-range-this-month:focus-visible{outline:3px solid rgba(17,154,200,.28);outline-offset:2px}.date-range-guidance{min-height:18px;margin:7px 0 0;color:#176079;font-size:12px;font-weight:700;text-align:center}.date-range-backdrop{display:none}@media(max-width:720px){.date-range-fieldset .field{padding-inline:10px}.field input,.field select,.date-range-trigger,.stepper>span{font-size:16px}.date-range-trigger{min-height:40px}.stepper button{width:40px;height:40px}.date-range-layer.mobile{display:flex;align-items:flex-end;justify-content:center;pointer-events:auto}.date-range-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;display:block;background:#021d3175}.date-range-layer.mobile .date-range-dialog .rdp-root{--rdp-day-height: min(44px, calc((100vw - 36px) / 7));--rdp-day-width: min(44px, calc((100vw - 36px) / 7));--rdp-day_button-height: min(42px, calc((100vw - 40px) / 7));--rdp-day_button-width: min(42px, calc((100vw - 40px) / 7))}.date-range-layer.mobile .date-range-dialog{position:relative;width:100%;max-width:none;max-height:calc(100dvh - 12px);padding:16px max(10px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-width:1px 0 0;border-radius:20px 20px 0 0;overflow-y:auto}.date-range-dialog .rdp-root{margin-inline:auto;width:fit-content;max-width:100%}.date-range-dialog .rdp-month{max-width:100%}.date-range-dialog .rdp-day_button{font-size:13px}.date-range-dialog-header{position:sticky;top:-16px;z-index:2;padding:2px 0 8px;background:#fffdf8}}@media(max-width:350.99px){.date-range-fieldset .field{padding-inline:6px}.date-range-trigger{gap:4px}.date-range-trigger svg{display:none}.date-range-trigger span{overflow:visible;text-overflow:clip;white-space:normal;line-height:1.2}.date-range-layer.mobile .date-range-dialog .rdp-root{--rdp-day-height: calc((100vw - 32px) / 7);--rdp-day-width: calc((100vw - 32px) / 7);--rdp-day_button-height: calc((100vw - 38px) / 7);--rdp-day_button-width: calc((100vw - 38px) / 7)}.date-range-layer.mobile .date-range-dialog{padding-inline:8px}}.booking-trust-panel{margin:10px 0 12px;padding:10px 12px;border:1px solid rgba(7,59,100,.12);border-radius:10px;display:grid;gap:8px;color:var(--ink);background:#fffdf8eb}.booking-trust-panel>p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.booking-trust-panel>div{display:grid;gap:6px}.booking-trust-panel strong{font-size:13px}.booking-trust-panel ul{margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:4px 12px;list-style:none}@media(min-width:1081px){.search-card:has(.unified-location-field){grid-template-columns:minmax(270px,2fr) minmax(108px,.8fr) minmax(108px,.8fr) minmax(92px,.62fr) minmax(92px,.62fr) auto}.search-card:has(.custom-search-field){grid-template-columns:minmax(180px,1.45fr) minmax(180px,1.25fr) minmax(108px,.8fr) minmax(108px,.8fr) minmax(92px,.62fr) minmax(92px,.62fr) auto}}.unified-location-menu{width:min(680px,calc(100vw - 32px))}@media(max-width:1080px){.unified-location-menu{width:100%;max-width:100%}}.unified-location-menu button em{max-width:150px;line-height:1.25;text-align:right;white-space:normal}.anonymous-place-signin{color:#0a5d79!important;background:#edf7f8!important}.hotel-name-search-option{border-top:1px solid rgba(7,59,100,.1)!important;color:#073b64!important;background:#eef5f8!important}.hotel-name-search-option strong{color:inherit}.anonymous-place-signin small{max-width:360px}.custom-search-field{position:relative;min-width:0}.custom-search-input-wrap{min-width:0;position:relative}.custom-search-input-wrap input{padding-right:28px;text-overflow:ellipsis}.custom-search-clear{width:28px;height:28px;position:absolute;right:-4px;bottom:-3px;z-index:2;border:0;border-radius:999px;display:grid;place-items:center;color:var(--muted);background:transparent;font-size:20px;line-height:1}.custom-search-clear:hover,.custom-search-clear:focus-visible{color:var(--forest);background:#073b6414}.custom-search-menu{min-width:min(430px,calc(100vw - 32px))}.search-reference-attribution{width:fit-content;margin:5px 10px 8px auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 5px;color:#587083;font-size:10px;line-height:1.3}.search-reference-attribution a{color:inherit;text-decoration:underline;text-underline-offset:2px}.custom-hotel-filter-option{border-top:1px solid rgba(7,59,100,.1)!important}.custom-search-menu [role=option].outside-destination em{color:#8a5d12;font-weight:800}.hotel-distance{max-width:100%;display:inline-flex;align-items:center;gap:5px;color:#587083;font-size:11px;line-height:1.35}.hotel-distance svg{flex:0 0 auto}.brand-filter{min-width:0}.brand-multiselect{position:relative;min-width:0}.brand-multiselect summary{min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;color:var(--forest);cursor:pointer;font-size:12px;font-weight:650;list-style:none}.brand-multiselect summary::-webkit-details-marker{display:none}.brand-multiselect[open] summary{border-color:var(--forest)}.brand-multiselect[open] summary svg{transform:rotate(180deg)}.brand-multiselect-options{position:absolute;top:100%;left:0;z-index:2;width:100%;max-height:240px;margin-top:6px;padding:5px;border:1px solid var(--line);border-radius:9px;display:grid;overflow-y:auto;background:#fff;overscroll-behavior:contain}.brand-multiselect-options label{min-height:44px;padding:6px 7px;border-radius:7px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--ink);cursor:pointer;font-size:12px}.brand-multiselect-options label:hover,.brand-multiselect-options label.active{background:#eef6f7}.brand-multiselect-options label:has(input:disabled){color:var(--muted);cursor:not-allowed;opacity:.62}.brand-multiselect-options input{width:15px;height:15px;margin:0;accent-color:var(--forest)}.brand-multiselect-options small{color:var(--muted);font-variant-numeric:tabular-nums}.search-reference-marker{width:40px;height:40px;z-index:70;padding:0;border:0;border-radius:999px;display:grid;place-items:center;color:#fff;background:transparent;cursor:pointer}.search-reference-marker-visual{width:12px;height:12px;border:2px solid #fff;border-radius:999px;display:grid;place-items:center;background:#d35b42;box-shadow:0 3px 9px #072f4e4d;font:800 8px/1 sans-serif}.search-reference-marker.active .search-reference-marker-visual{width:14px;height:14px;background:#087fa4}.search-reference-marker:focus-visible{outline:3px solid rgba(17,154,200,.55);outline-offset:3px}.hotel-map-legend i.destination{background:#d35b42}.hotel-map-legend i.reference{background:#087fa4}.hotel-map-popup-distance{display:block;line-height:1.35}.hotel-map-reference-attribution{min-width:0;padding:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 4px;color:#405666;font-size:9px;line-height:1.2}.hotel-map-reference-attribution a{color:inherit;text-decoration:underline;text-underline-offset:2px}.center-reference-button{color:#073b64;background:#fffffff5}.customer-custom-query{min-width:0;padding:7px 9px;border:1px solid rgba(7,59,100,.12);border-radius:8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;color:#31566c;background:#f2f7f8;font-size:12px}.customer-custom-query>span{min-width:0;overflow-wrap:anywhere}.customer-custom-query em{padding:3px 6px;border-radius:999px;color:#31566c;background:#dfecef;font-size:9px;font-style:normal;font-weight:750;text-transform:uppercase;white-space:nowrap}@media(max-width:1080px){.search-card:has(.custom-search-field){grid-template-columns:repeat(4,minmax(0,1fr))}.search-card:has(.custom-search-field)>.destination-field,.search-card:has(.custom-search-field)>.custom-search-field,.search-card:has(.custom-search-field)>.date-fields{grid-column:span 2}.search-card:has(.custom-search-field)>.search-button{grid-column:1 / -1}}@media(max-width:720px){.unified-location-menu{width:100%;max-width:100%}.destination-menu button strong,.destination-menu button small{display:-webkit-box;overflow:hidden;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical}.destination-menu button strong{font-size:14px;-webkit-line-clamp:2}.destination-menu button small{font-size:11px;-webkit-line-clamp:3}.search-card:has(.custom-search-field){grid-template-columns:repeat(2,minmax(0,1fr))}.search-card:has(.custom-search-field)>.destination-field,.search-card:has(.custom-search-field)>.custom-search-field,.search-card:has(.custom-search-field)>.date-fields,.search-card:has(.custom-search-field)>.search-button{grid-column:1 / -1}.hotel-map-area-actions{width:calc(100% - 20px);max-width:none;align-items:stretch;flex-wrap:wrap}.hotel-map-area-actions button{max-width:100%;overflow:hidden;text-overflow:ellipsis}.hotel-map-legend{width:100%;align-items:stretch}.hotel-map-footer{align-items:stretch;flex-direction:column}.hotel-map-reference-legend,.hotel-map-display-legend{width:100%}.hotel-map-reference-legend button{flex:1 1 100%}.hotel-map-reference-legend button>span{max-width:none}.hotel-map-display-legend button{flex:1 1 0;justify-content:center}.hotel-map-reference-attribution{width:100%;justify-content:flex-start}}@media(max-width:350.99px){.custom-search-field label{font-size:9px;letter-spacing:.08em}.hotel-distance{font-size:10px}}.anonymous-booking-trust{width:min(1180px,calc(100% - 48px));margin:22px auto 0}.booking-trust-panel li{min-width:0;display:flex;align-items:flex-start;gap:5px;color:#315f77;font-size:12px;line-height:1.35}.booking-trust-panel li svg{flex:0 0 auto;margin-top:2px;color:var(--forest)}.booking-trust-panel.compact{margin-block:8px 10px}.rate-option-row{position:relative;grid-template-columns:minmax(220px,1.2fr) minmax(185px,.72fr) minmax(270px,1.08fr);cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.rate-option-row:hover{background:#fbfdfb;box-shadow:inset 3px 0 #119ac8b8}.rate-option-row.quote-unavailable{cursor:default}.rate-option-row.quote-unavailable:hover{background:#fffdf8;box-shadow:none}.rate-quote-unavailable{display:block;margin-top:5px;color:var(--muted)}.rate-option-row:has(.rate-option-open:focus-visible){outline:3px solid rgba(17,154,200,.38);outline-offset:-3px}.rate-option-open{position:absolute;inset:0;z-index:1;padding:0;border:0;border-radius:inherit;color:transparent;background:transparent;cursor:pointer}.rate-option-row .info-tooltip{position:relative;z-index:2}.rate-price-copy{align-self:center;justify-self:stretch;padding:0;border:0;border-radius:0;background:transparent}.rate-primary-terms,.rate-benefit-list{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px}.rate-primary-terms>span,.rate-benefit-list>span{min-width:0;display:inline-flex;align-items:center;gap:5px;color:var(--muted);line-height:1.3}.rate-primary-terms>span{white-space:nowrap}.rate-primary-terms>span.positive{color:#2f7258}.rate-primary-terms svg,.rate-benefit-list svg{flex:0 0 auto}.rate-benefit-list{margin-top:5px}.rate-benefit-list>span{color:#7b5a20}@media(max-width:980px){.rate-option-row{grid-template-columns:minmax(0,1fr) minmax(175px,auto)}.rate-terms-copy{grid-column:1 / -1}}@media(max-width:720px){.booking-trust-panel{margin-block:8px 10px;padding:9px 10px}.booking-trust-panel ul{grid-template-columns:minmax(0,1fr)}.rate-option-row{grid-template-columns:minmax(0,1fr) minmax(170px,auto);align-items:center;gap:7px 9px}.rate-room-copy{grid-column:1;align-self:center}.rate-price-copy{width:auto;grid-column:2;align-self:center;justify-self:end;padding:0}.rate-terms-copy{grid-column:1 / -1}.rate-price-copy>.rate-price-total{width:auto}}@media(max-width:350.99px){.rate-option-row{grid-template-columns:minmax(0,1fr) minmax(155px,auto)}.rate-price-copy{padding:0}}.room-drawer-title{display:grid;gap:4px}.drawer-hotel-facts{margin:0}.drawer-hotel-facts span{min-width:0;align-items:flex-start;line-height:1.35}.drawer-hotel-facts svg{flex:0 0 auto;margin-top:2px}.room-quoted-label{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.room-quoted-label strong{color:#4c687a;font-size:10px;letter-spacing:.08em}.program-section{overflow:hidden}.program-summary-main{min-width:0}.program-title-line,.best-value-label{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px}.best-value-label>span{display:inline-flex;align-items:center;gap:4px;color:#075577;font-size:12px;font-weight:700}.program-expand-toggle{width:32px;height:32px;padding:0;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--forest);background:transparent}.program-expand-toggle:hover,.program-expand-toggle:focus-visible{background:#073b6417}.info-tooltip{position:relative;z-index:4;display:inline-flex;align-items:center;vertical-align:middle}.info-tooltip.open{z-index:40}.info-tooltip-trigger{width:23px;height:23px;padding:0;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#365f75;background:#073b6414}.info-tooltip-trigger:hover,.info-tooltip-trigger:focus-visible,.info-tooltip.open .info-tooltip-trigger{color:#fff;background:var(--forest)}.info-tooltip-panel{width:min(310px,calc(100vw - 32px));padding:12px;position:absolute;right:0;bottom:calc(100% + 8px);z-index:80;border:1px solid rgba(7,59,100,.18);border-radius:10px;box-shadow:0 14px 36px #072e4d33;display:grid;gap:8px;color:var(--ink);background:#fff;font-size:12px;font-weight:400;line-height:1.4;text-align:left;white-space:normal}.best-value-label .info-tooltip-panel{right:auto;left:0}.info-tooltip-title{color:var(--ink);font-size:13px}.info-tooltip-panel>small{color:var(--muted);line-height:1.45}.total-price-detail-list{display:grid;gap:5px}.total-price-detail-list>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;color:var(--muted)}.total-price-detail-list>span strong{color:var(--ink);text-align:right;white-space:normal}.total-price-detail-list>span.pending strong{max-width:150px;color:#8c5a2f}.rate-price-copy{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;font-variant-numeric:tabular-nums}.rate-price-copy>div{min-width:0;padding:8px;border:1px solid rgba(7,59,100,.1);border-radius:9px;display:flex;align-items:flex-start;justify-content:space-between;flex-direction:column;gap:5px;background:#f8f4ec}.rate-price-copy>.rate-price-total{align-items:flex-end;text-align:right}.hotel-card.price-pending{cursor:default}.hotel-price-dots,.hotel-marker-dots{width:42px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;gap:5px}.hotel-price-dots i,.hotel-marker-dots i{width:6px;height:6px;border-radius:50%;display:block;background:#2388a8;opacity:.16;transform:translateY(1px);animation:hotel-price-dot-cycle 1.2s ease-in-out infinite}.hotel-price-dots i:nth-child(2),.hotel-marker-dots i:nth-child(2){animation-delay:.16s}.hotel-price-dots i:nth-child(3),.hotel-marker-dots i:nth-child(3){animation-delay:.32s}@keyframes hotel-price-dot-cycle{0%,18%,72%,to{opacity:.16;transform:translateY(1px)}30%,52%{opacity:1;transform:translateY(-2px)}}.rate-price-copy dt{min-height:30px;display:flex;align-items:flex-start;gap:4px;color:var(--muted);font-size:11px;line-height:1.3}.rate-price-copy dd{margin:0;color:var(--ink);font-size:15px;font-weight:750;line-height:1.15;text-align:inherit;white-space:nowrap}.rate-price-copy .rate-price-nightly dd{color:var(--forest)}.selected-price-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-variant-numeric:tabular-nums}.selected-price-facts>div{min-width:0;padding:9px 10px;border:1px solid rgba(7,59,100,.1);border-radius:9px;gap:5px;background:#f8f4ec}.selected-price-facts>div:last-child{align-items:flex-end}.selected-price-facts strong{white-space:nowrap}.selected-total-label{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px}@media(max-width:720px){.room-drawer-header{align-items:start}.room-drawer-header h2{font-size:21px}.room-quoted-label{font-size:10px}.program-summary{grid-template-columns:minmax(0,1fr) auto}.program-summary-price{grid-column:1;grid-row:2;align-items:flex-start;text-align:left}.program-expand-toggle{grid-column:2;grid-row:1 / span 2}.rate-price-copy{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-price-copy>div{align-items:flex-start;text-align:left}.rate-price-copy>.rate-price-total{align-items:flex-end;text-align:right}.rate-price-copy dt{min-height:43px}.rate-price-copy dd{font-size:14px}.info-tooltip-panel{width:auto;max-height:min(65vh,420px);padding:14px;position:fixed;inset:auto 12px 16px;overflow-y:auto}.best-value-label .info-tooltip-panel{right:12px;left:12px}.selected-price-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-form,.quote-form-section,.form-section-heading,.form-section-heading>div,.selected-offer-summary,.verified-email-card,.verified-email-card>div,.quote-submit-section,.quote-form label{min-width:0}.form-section-heading strong,.form-section-heading small,.selected-offer-summary strong,.verified-email-card strong,.verified-email-card span{overflow-wrap:anywhere}}@media(max-width:350.99px){.quote-name-fields,.deal-drawer-actions{grid-template-columns:minmax(0,1fr)}.room-drawer{padding-inline:0}.room-drawer-header{margin-inline:-9px;padding-inline:9px;grid-template-columns:48px minmax(0,1fr) auto}.room-drawer-hotel-image{width:48px;height:48px}.rate-price-copy>div,.selected-price-facts>div{padding:7px 6px}.rate-price-copy dd,.selected-price-facts strong{font-size:12px}}.chart-legend .quote{color:#526f8a}.hotel-map-area-actions{max-width:calc(100% - 28px);position:absolute;top:14px;left:50%;z-index:90;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:8px;pointer-events:none}.hotel-map-area-actions button{min-height:44px;padding:0 14px;border:1px solid rgba(7,59,100,.2);border-radius:999px;box-shadow:0 4px 16px #072e4d1f;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;pointer-events:auto;font-size:14px;font-weight:600}.filter-map-area-button{color:#fff;border-color:#073b64!important;background:#073b64}.show-all-map-results-button{color:#073b64;background:#fffffff5}.hotel-map-popup-name{max-width:260px;color:#173f58;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif!important;font-size:16px!important;font-weight:600}.hotel-map-popup-price{display:grid;gap:2px;font-variant-numeric:tabular-nums}.hotel-map-popup-price strong,.hotel-map-popup-price small{white-space:nowrap}.hotel-map-popup-price strong{color:#073b64;font-size:20px;font-weight:700}.hotel-map-popup-price small{color:#687985;font-size:12px;font-weight:500}.map-area-filter-note{border-color:#087f8c40;background:#edf8f8}@media(max-width:520px){.hotel-map-area-actions{top:10px;flex-wrap:wrap;gap:5px}.hotel-map-area-actions button{min-height:44px;padding:0 10px;font-size:12px}}.deals-load-more-sentinel{width:100%;height:1px}.deals-auto-loading{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:12px}.deals-load-more-wrap .deals-load-more{margin:4px auto 0}.deals-toolbar>*,.deals-filter-panel>*{min-width:0}.deals-count{min-width:0}.deals-count small{white-space:normal;overflow-wrap:anywhere}@media(min-width:721px)and (max-width:1100px){.deals-toolbar{grid-template-columns:auto minmax(0,220px) minmax(0,1fr)}.deals-search{grid-column:1 / -1}}@media(min-width:820px)and (max-width:1100px){.deal-list-heading,.deal-row{grid-template-columns:minmax(0,1.05fr) minmax(0,1.35fr) minmax(0,.8fr) 148px;gap:10px}.deal-action-cell{width:148px;grid-template-columns:1fr}.deal-partner-cell h2{font-size:14px}.deal-details-cell h3{font-size:13px}}@media(min-width:721px)and (max-width:819.99px){.deal-list-heading{display:none}.deal-row{min-height:0;grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);grid-template-areas:"partner actions" "details actions" "dates actions";align-items:start;gap:10px 18px;padding:14px}.deal-partner-cell{grid-area:partner}.deal-details-cell{grid-area:details}.deal-date-cell{grid-area:dates;padding-top:9px;border-top:1px solid rgba(7,59,100,.08)}.deal-mobile-label{margin-bottom:3px;display:block;color:#70808b;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.deal-action-cell{width:100%;grid-area:actions;grid-template-columns:1fr;align-self:center}}@media(max-width:720px){.deals-toolbar{grid-template-columns:minmax(0,1fr) auto}.deals-count{grid-column:1 / -1}.deals-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.deals-filter-panel input[type=date]{min-width:0}.deal-row{grid-template-columns:1fr}.deal-action-cell{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.deal-book-button,.deal-ask-button{min-height:44px}}.catalog-observation-note{margin:12px 0 0;padding:10px 12px;border-radius:9px;display:flex;align-items:flex-start;gap:7px;color:#496477;background:#eef5f7;font-size:13px;line-height:1.45}.catalog-observation-note svg{flex:0 0 auto;margin-top:2px}.resolved-program-history{margin-top:14px;border:1px solid #dce4e9;border-radius:10px;overflow:hidden}.resolved-program-history>summary{min-height:46px;padding:0 13px;display:flex;align-items:center;gap:8px;color:#294b61;background:#f7fafb;cursor:pointer;font-weight:650}.resolved-program-history>summary span{min-width:24px;padding:2px 7px;border-radius:999px;color:#075d68;background:#e2f2f3;text-align:center}.catalog-resolved-badge{display:inline-flex;align-items:center;gap:5px;color:#246249;font-weight:650;white-space:nowrap}.customer-table-heading form select{min-height:40px;padding:0 9px;border:1px solid #ccd9e1;border-radius:8px;color:#294b61;background:#fff}@media(max-width:760px){.customer-table-heading form{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto}.customer-table-heading form select{width:100%;grid-column:1 / -1}}@media(max-width:350.99px){.deal-action-cell{grid-template-columns:minmax(0,1fr)}.deal-book-button,.deal-ask-button{min-height:44px;padding-inline:4px;gap:3px;font-size:14px}}.hotel-card{grid-template-areas:"image body price action"}.hotel-image-wrap{grid-area:image;align-self:center}.hotel-card-body{grid-area:body}.hotel-price-summary{grid-area:price}.hotel-select-button{grid-area:action}@media(min-width:721px)and (max-width:1080px){.hotel-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-filter-panel>*{min-width:0}.hotel-filter-panel .offers-filter{white-space:normal}.availability-filters,.hotel-filter-actions{grid-column:1 / -1}.availability-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-filter-actions{min-width:0}}@media(max-width:980px){.hotel-card{grid-template-areas:"image body price" "image body action"}}@media(max-width:720px){.results-actions{width:100%;grid-template-columns:minmax(0,1.25fr) minmax(0,1.1fr) minmax(44px,.7fr);align-items:stretch;gap:6px}.result-view-toggle,.sort-control,.filter-toggle{width:100%;min-width:0}.result-view-toggle button{min-width:0;flex:1 1 0;justify-content:center}.sort-control{padding-left:0}.sort-control select{width:100%;min-width:0;max-width:100%;padding-left:8px;padding-right:25px;text-overflow:ellipsis}.filter-toggle{position:relative;padding-inline:8px;justify-content:center}.filter-toggle>.filter-count{position:static}.hotel-card{grid-template-areas:"image body body" "image price action";align-items:center}.hotel-image-wrap{align-self:center}.room-filter-chips{width:100%;max-width:100%;min-width:0;flex-wrap:nowrap;align-items:center;overflow:hidden;padding-bottom:0}.room-filter-chips>button:not(.clear-room-filters){min-width:0;flex:1 1 0;justify-content:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.room-filter-chips .clear-room-filters{position:static;flex:0 0 auto;max-width:100%;margin-left:auto;padding-inline:9px;overflow:visible;white-space:nowrap}.hotel-filter-panel>*,.hotel-filter-panel .clear-filters{min-width:0;max-width:100%}.hotel-filter-panel .clear-filters{justify-self:start;white-space:nowrap}.availability-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.availability-filters .offers-filter{min-width:0;padding-inline:8px;gap:5px;white-space:nowrap}.hotel-filter-actions{min-width:0;grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-filter-actions>button{width:100%}.hotel-filter-panel{gap:10px;overflow-x:hidden;overflow-y:auto}.brand-multiselect-options{position:static;width:auto}}@media(max-width:350.99px){.results-actions{grid-template-columns:84px minmax(0,1fr) 60px;gap:4px}.result-view-toggle button,.filter-toggle{padding-inline:6px}.result-view-toggle .result-control-label,.filter-toggle .result-control-label{display:none}.sort-control select{padding-left:6px;padding-right:22px;font-size:11px}}.hotel-card{min-height:0;position:relative;grid-template-areas:"image body price";grid-template-columns:140px minmax(0,1fr) minmax(138px,176px);column-gap:16px;row-gap:12px;cursor:pointer}.hotel-image-wrap{width:100%}.hotel-card-open{position:absolute;inset:0;z-index:1;width:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}.hotel-card-open:focus-visible{outline:3px solid rgba(17,154,200,.62);outline-offset:-4px}.hotel-card-open:disabled{cursor:wait}.hotel-card-body>.hotel-offer-badge{position:relative;z-index:2}.hotel-price-summary{align-items:flex-end;text-align:right}@media(max-width:980px){.hotel-card{grid-template-areas:"image body price";grid-template-columns:120px minmax(0,1fr) minmax(132px,160px)}.hotel-image-wrap{width:100%;height:88px}}@media(max-width:720px){.hotel-card{min-height:0;padding:8px;grid-template-areas:"image body" "image price";grid-template-columns:72px minmax(0,1fr);align-items:center;gap:6px 12px}.hotel-image-wrap{width:100%;height:72px;grid-area:image;align-self:center}.hotel-card-body{grid-area:body;gap:4px}.hotel-card-body>.hotel-offer-badge{min-height:24px;margin-top:0;padding:2px 8px}.hotel-meta{min-height:0;line-height:1.3}.results-heading{align-items:flex-start}.hotel-price-summary{grid-area:price;align-items:flex-end;justify-self:end;gap:1px;text-align:right}.hotel-price-summary small{align-self:auto}}@media(max-width:350.99px){.hotel-card{grid-template-columns:64px minmax(0,1fr);gap:4px 10px}.hotel-image-wrap{width:100%;height:64px}.hotel-price-summary strong{font-size:17px}}.drawer-hotel-address{min-width:0;display:inline-flex;align-items:flex-start;gap:5px;color:#315f77;line-height:1.3;text-decoration:none}.drawer-hotel-address svg{flex:0 0 auto;margin-top:2px}.drawer-hotel-address:hover,.drawer-hotel-address:focus-visible{color:var(--forest);text-decoration:underline;text-underline-offset:2px}.room-drawer-title{gap:2px}.drawer-hotel-facts{margin-block:3px 0}.rate-option-row{min-height:0;padding:9px 10px;gap:10px}.rate-price-copy{width:100%;min-width:0;margin:0;padding:8px 10px;border:1px solid rgba(7,59,100,.1);border-radius:9px;display:flex;align-items:flex-end;justify-content:center;flex-direction:column;gap:4px;color:var(--ink);background:#f8f4ec;text-align:right;font-variant-numeric:tabular-nums}.rate-price-copy>.rate-price-nightly{color:var(--forest);font-size:22px;font-weight:780;line-height:1.05;white-space:nowrap}.rate-price-copy>.rate-price-total{width:100%;min-width:0;padding:0;border:0;border-radius:0;display:flex;align-items:center;justify-content:flex-end;flex-direction:row;flex-wrap:nowrap;gap:3px 6px;color:var(--muted);background:transparent;text-align:right}.rate-price-total-label{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:3px;font-size:11px;line-height:1.25;white-space:nowrap}.rate-price-copy>.rate-price-total>strong{color:var(--ink);font-size:13px;font-weight:720;line-height:1.15;white-space:nowrap}.rate-price-total .info-tooltip-trigger{width:20px;height:20px}.rate-price-review-note{margin:6px 0 0;color:#73551d;font-size:11px;line-height:1.35}.info-tooltip-panel-portal{width:min(310px,calc(100vw - 24px));z-index:260;box-sizing:border-box}.search-help .info-tooltip-trigger{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;color:#365f75;background:transparent;flex:none}.search-help .info-tooltip-trigger:hover,.search-help .info-tooltip-trigger:focus-visible,.search-help.open .info-tooltip-trigger{color:var(--forest);background:#e8f1f5}.info-tooltip-panel.search-help{font-size:14px;line-height:1.5}@media(max-width:720px){.program-title-line,.program-summary-main,.rate-room-copy{justify-items:start;justify-content:flex-start;text-align:left}.program-title-line{align-items:flex-start}.rate-option-row{min-height:0;padding:8px;grid-template-columns:minmax(0,1fr);gap:7px}.rate-price-copy{grid-column:1;align-items:flex-end;justify-self:stretch;padding:7px 9px;text-align:right}.rate-price-copy>.rate-price-total{align-items:center;justify-content:flex-end;text-align:right}.rate-price-copy>.rate-price-nightly{font-size:20px}.info-tooltip-panel.info-tooltip-panel-portal{width:min(310px,calc(100vw - 24px));max-height:calc(100vh - 24px);padding:12px;inset:auto}}@media(max-width:350.99px){.rate-price-copy{padding:7px}.rate-price-copy>.rate-price-nightly{font-size:18px}.rate-price-total-label,.rate-price-copy>.rate-price-total>strong{font-size:10px}}.rate-option-row{grid-template-areas:"room terms price";grid-template-columns:minmax(220px,1.2fr) minmax(270px,1.08fr) minmax(185px,.72fr);align-items:stretch}.rate-room-copy{grid-area:room;align-self:center}.rate-terms-copy{grid-area:terms;align-self:center}.rate-price-copy{grid-area:price;align-self:stretch;justify-self:stretch;justify-content:center;padding:0;border:0;border-radius:0;background:transparent}.best-value-label{flex-wrap:nowrap;gap:3px}.best-value-label .info-tooltip,.best-value-label .info-tooltip-trigger{width:20px;height:20px;flex:0 0 20px}.best-value-label .info-tooltip-trigger{position:relative}.best-value-label .info-tooltip-trigger:after{content:"";position:absolute;inset:-12px}.selected-program{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.selected-program strong{max-width:100%;padding:4px 8px;border:1px solid rgba(19,129,158,.24);border-radius:7px;color:var(--forest);background:#eaf5f7;font-size:14px;line-height:1.25;overflow-wrap:anywhere}.quote-form label,.quote-phone-field>small{letter-spacing:0;text-transform:none}.selected-price-facts{margin:0;border:1px solid rgba(7,59,100,.12);border-radius:10px;display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden;background:var(--surface);font-variant-numeric:tabular-nums}.selected-price-facts>div{min-width:0;padding:9px 10px;border:0;border-bottom:1px solid rgba(7,59,100,.09);border-radius:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;background:transparent}.selected-price-facts>div:last-child{border-bottom:0;align-items:center;background:#073b640b;text-align:initial}.selected-price-facts dt{min-width:0;display:grid;gap:2px;color:var(--ink);font-size:14px;line-height:1.3}.selected-price-facts dt small{color:var(--muted);font-size:12px;line-height:1.3}.selected-price-facts dd{margin:0;color:var(--ink);font-size:14px;font-weight:600;line-height:1.2;text-align:right;white-space:nowrap}.selected-price-facts .selected-price-total dt,.selected-price-facts .selected-price-total dd{color:var(--forest);font-weight:700}.selected-price-facts .selected-price-total dd{font-size:22px}.selected-rate-includes{padding:10px 11px;border:1px solid rgba(182,127,39,.28);border-radius:10px;display:grid;gap:6px;color:#6f4b11;background:#fffaede6}.selected-rate-includes>strong{font-size:12px}.selected-rate-includes ul{margin:0;padding:0;display:grid;gap:5px;list-style:none}.selected-rate-includes li{min-width:0;display:flex;align-items:flex-start;gap:6px;color:#7b5a20;font-size:12px;line-height:1.35}.selected-rate-includes li svg{margin-top:1px;flex:0 0 auto}.selected-fx-disclosure{max-width:none;padding:9px 10px;border:1px solid rgba(7,59,100,.12);border-radius:9px;display:grid;gap:3px;background:#073b6409;text-align:left}.selected-fx-disclosure strong,.total-price-fx-disclosure strong{color:var(--ink);font-size:inherit}.selected-fx-disclosure span,.total-price-fx-disclosure span{display:block}.total-price-fx-disclosure{padding-top:7px;border-top:1px solid rgba(7,59,100,.12);display:grid;gap:3px}@media(max-width:980px){.rate-option-row{grid-template-areas:"room price" "terms price";grid-template-columns:minmax(0,1fr) minmax(175px,auto)}}@media(max-width:720px){.anonymous-booking-trust{width:calc(100% - 24px);margin-top:14px}.rate-option-row{grid-template-areas:"room price" "terms price";grid-template-columns:minmax(0,1fr) minmax(145px,42%);align-items:stretch;gap:7px 9px}.rate-room-copy{align-self:center}.rate-price-copy{width:auto;align-self:stretch;justify-self:end;justify-content:center;padding:0}.rate-terms-copy{align-self:center}.rate-price-copy>.rate-price-total{width:auto}.selected-price-facts>div{padding:8px;gap:8px}.selected-price-facts dt,.selected-price-facts dd{font-size:13px}}@media(max-width:350.99px){.rate-option-row{grid-template-columns:minmax(0,1fr) 126px}.rate-price-copy{min-width:0;padding:0}.rate-price-total-label{white-space:normal;line-height:1.1}.selected-price-facts>div{grid-template-columns:minmax(0,1fr) auto;padding:7px;gap:6px}.selected-price-facts dt,.selected-price-facts dd{font-size:13px}}.room-drawer{width:min(1040px,calc(100% - 56px));height:100%;max-height:100dvh;padding:0;border-radius:22px 0 0 22px;display:flex;flex-direction:column;overflow:hidden;color:var(--ink);background:var(--surface-subtle);box-shadow:-24px 0 70px #01192c47}.room-drawer .room-drawer-header{position:static;min-height:82px;margin:0;padding:18px 24px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;gap:14px;background:var(--surface)}.room-drawer .room-drawer-title{min-width:0;grid-column:1;display:grid;gap:5px}.room-drawer .room-drawer-header h2{margin:0;color:var(--forest-deep);font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:28px;font-weight:600;line-height:1.1;letter-spacing:-.025em}.room-drawer .room-drawer-header h2:focus{outline:none}.room-drawer .drawer-hotel-facts{margin:0}.room-drawer .drawer-hotel-address{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:13px;line-height:1.35}.room-drawer .drawer-hotel-address svg{width:13px;height:13px;flex:0 0 13px;margin:0}.room-drawer-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px}.room-drawer-header .room-drawer-badge{min-height:28px;padding:4px 9px;border:1px solid rgba(17,154,200,.22);border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:#08776e;background:#edf7f6;font-size:12px;font-weight:600;line-height:16px;letter-spacing:0;text-transform:none;white-space:nowrap}.room-drawer-header .room-drawer-badge.deal{border:1px solid rgba(183,130,39,.25);color:#79551b;background:#fff5d8}.room-drawer-badge svg{width:12px;height:12px;flex:0 0 12px}.room-drawer .room-drawer-header>.icon-button{width:44px;height:44px;grid-column:3;border-radius:50%;background:#fff}.room-drawer-nav{min-height:0;padding:8px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;background:var(--surface)}.room-drawer-tabs{padding:0;border-radius:0;display:flex;gap:16px;background:transparent}.room-drawer-tabs button{min-height:36px;padding:0 2px;border:0;border-bottom:2px solid transparent;border-radius:0;display:inline-flex;align-items:center;gap:6px;color:#456675;background:transparent;font-size:14px;font-weight:600;line-height:20px}.room-drawer-tabs button.active{color:var(--forest);border-bottom-color:var(--forest);background:transparent;box-shadow:none}.room-drawer-tabs button.deals-tab{color:#79551b;background:transparent}.room-drawer-tabs button.deals-tab.active{border-bottom-color:#b78227;background:transparent;box-shadow:none}.room-drawer-tabs button>span{min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;color:#13819e;background:#eaf5f7;font-size:9px;font-weight:700}.room-drawer-tabs .deals-tab>span{color:#79551b;background:#b8822721}.room-deal-detail-warning{padding:7px 20px;border-bottom:1px solid rgba(183,130,39,.22);color:#79551b;background:#fff8e7;font-size:11.5px}.room-drawer-body{min-height:0;flex:1;padding:12px 20px 26px;overflow-y:auto;scrollbar-gutter:stable;background:var(--surface-subtle)}.room-drawer-loading{display:grid;align-content:start;gap:10px}.room-drawer-loading .progress-panel.compact{width:100%;max-width:none;margin:0}.room-drawer-loading .booking-trust-panel.compact{margin:0}.room-tab-panel,.room-deals-panel{min-width:0}.room-drawer .room-filter-bar{margin:0 0 16px;padding:0;border:0;display:flex;align-items:center;justify-content:space-between;gap:18px;background:transparent;box-shadow:none}.room-drawer .room-filter-chips{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;overflow:visible}.room-drawer .room-filter-chips button{min-height:32px;padding:0;border:0;border-radius:8px;display:inline-flex;align-items:center;color:#456675;background:transparent;font-size:13px;font-weight:600;line-height:18px;white-space:nowrap}.room-drawer .room-filter-chips .room-filter-label{min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:7px;display:inline-flex;align-items:center;gap:5px;color:inherit;background:#fff;font:inherit}.room-drawer .room-filter-chips button.active{color:var(--forest);background:transparent}.room-drawer .room-filter-chips button.active .room-filter-label{border-color:#13819e47;background:#eaf5f7}.room-drawer .clear-room-filters .room-filter-label{border-color:transparent;background:transparent}.room-drawer .program-list{display:grid;gap:16px}.room-drawer .program-section{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 7px 20px #052b490a}.room-drawer .program-section.best-value{border-color:#13819e61}.room-drawer .program-summary{min-height:64px;padding:10px 16px;border:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(max-content,.55fr) 44px;align-items:center;gap:10px;color:var(--ink);background:#f4f8f8;text-align:left}.room-drawer .program-section.best-value .program-summary{background:#f4fafb}.room-drawer .program-summary-main{min-width:0;display:grid;gap:4px}.room-drawer .best-value-label{display:flex;align-items:center;gap:4px}.room-drawer .best-value-label>span{color:#13819e;font-size:12px;font-weight:700;line-height:1.2}.room-drawer .program-title-line{min-width:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.room-drawer .program-summary h3{min-width:0;margin:0;color:var(--forest-deep);font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:20px;font-weight:600;line-height:1.15;letter-spacing:-.01em}.perks-tooltip.info-tooltip-panel-portal{width:min(430px,calc(100vw - 24px));padding:11px 12px;border-color:#b7822747;border-radius:11px;color:#79551b;background:#fffdf8;box-shadow:0 14px 34px #422c0a29}.perks-tooltip-list{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;font-size:13px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.perks-tooltip-list>span{display:flex;align-items:flex-start;gap:5px}.perks-tooltip-list>[role=listitem]:before{content:"•";flex:0 0 8px;color:var(--gold)}.rate-program-badges{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.rate-program-badges .see-perks-trigger,.rate-program-badges .rate-booking-badge,.rate-program-badges .rate-loyalty-badge{width:auto;height:auto;min-height:28px;padding:0;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);background:transparent;font-size:12px;font-weight:600;line-height:16px;white-space:nowrap}.rate-program-badges .rate-badge-label{height:28px;padding:0 9px;border:1px solid var(--line);border-radius:999px;display:inline-flex;align-items:center;gap:5px;background:#fff;font:inherit}.rate-badge-label>svg{flex-shrink:0}.see-perks-trigger .rate-badge-label{border-color:#b782274d;color:#79551b;background:#fff5d8}.see-perks-trigger:hover .rate-badge-label,.see-perks-trigger:focus-visible .rate-badge-label,.perks-tooltip.open .see-perks-trigger .rate-badge-label{border-color:#b782278c;color:#654515;background:#ffefbd}.rate-booking-badge.direct .rate-badge-label{border-color:#13819e33;color:#08776e;background:#edf7f6}.rate-booking-badge.direct:hover .rate-badge-label,.rate-booking-badge.direct:focus-visible .rate-badge-label,.direct-booking-tooltip.open .rate-booking-badge.direct .rate-badge-label{color:#075f59;background:#e3f2ee}.info-tooltip-panel.direct-booking-tooltip small{font-size:13px;line-height:1.5}.rate-loyalty-badge .rate-badge-label{border-color:#13819e33;color:var(--forest-deep);background:#f4f8f8}.rate-primary-terms .rate-condition-badge,.selected-terms .rate-condition-badge{width:fit-content;max-width:100%;padding:4px 7px;border:1px solid var(--line);border-radius:7px;display:inline-flex;align-items:flex-start;gap:5px;color:var(--muted);background:#fff;line-height:1.4}.selected-terms{align-items:flex-start}.rate-condition-badge svg{flex-shrink:0;margin-top:2px}.rate-condition-badge.payment{white-space:nowrap}.rate-condition-badge.payment.pay-later,.rate-condition-badge.cancellation.refundable{color:#08776e;background:#f3faf7}.rate-cancellation-deadline{display:inline-block}@media(max-width:760px),(pointer:coarse){.rate-program-badges{row-gap:0}.rate-program-badges .see-perks-trigger,.rate-program-badges .rate-booking-badge.direct,.room-drawer .room-filter-chips button,.room-drawer-tabs button{min-height:44px}}.perks-tooltip-list svg{width:12px;height:12px;flex:0 0 12px;margin-top:2px;color:var(--gold)}.room-drawer .program-summary-price{min-width:0;display:flex;align-items:center;justify-content:flex-end;text-align:right;font-variant-numeric:tabular-nums}.room-drawer .program-summary-price strong{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:5px;color:var(--forest-deep);font-size:20px;font-weight:700;line-height:1.1;white-space:nowrap}.room-drawer .program-summary-price strong>span{color:var(--forest-deep);font-size:24px}.room-drawer .program-summary-price small{color:var(--muted);font-size:12px;font-weight:650}.room-drawer .program-expand-toggle{width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;color:var(--forest);background:transparent}.room-drawer .program-rate-list{position:relative;display:grid}.room-drawer .rate-option-row{min-height:108px;padding:16px;border-top:1px solid var(--line);position:relative;display:grid;grid-template-areas:"room terms price";grid-template-columns:minmax(0,1.4fr) minmax(170px,.9fr) 240px;align-items:stretch;gap:16px;background:#fff}.room-drawer .rate-option-row:hover{background:#fbfefe;box-shadow:inset 3px 0 #13819e}.room-drawer .rate-option-row.quote-unavailable,.room-drawer .rate-option-row.quote-unavailable:hover{background:#fbfcfa}.room-drawer .rate-room-copy{min-width:0;grid-area:room;align-self:center}.room-drawer .rate-room-copy h4{margin:3px 0 0;color:var(--forest-deep);font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:18px;font-weight:500;line-height:1.4;letter-spacing:-.01em;overflow-wrap:anywhere}.room-drawer .option-tags span{color:#13819e;background:transparent;font-size:12px;font-weight:700}.room-drawer .rate-terms-copy{min-width:0;grid-area:terms;align-self:center;display:grid;gap:6px}.room-drawer .rate-primary-terms{display:grid;gap:6px}.room-drawer .rate-primary-terms>span,.room-drawer .rate-quote-unavailable{display:flex;align-items:center;gap:6px;color:#58717e;font-size:13px;font-weight:400;line-height:1.5}.room-drawer .rate-primary-terms>span.positive{color:#08776e}.room-drawer .rate-primary-terms svg,.room-drawer .rate-quote-unavailable svg{width:13px;height:13px;flex:0 0 13px}.room-drawer .rate-quote-unavailable{margin:0;color:#9a5545}.room-drawer .rate-price-copy{min-width:0;grid-area:price;align-self:stretch;justify-self:stretch;margin:0;padding:0 4px 0 12px;border:0;border-left:1px solid var(--line);border-radius:0;display:grid;grid-template-areas:"nightly" "total";grid-template-columns:minmax(0,max-content);justify-content:end;align-items:center;align-content:center;gap:6px;color:var(--ink);background:transparent;text-align:right;font-variant-numeric:tabular-nums}.room-drawer .rate-price-copy>.rate-price-nightly{grid-area:nightly;justify-self:center;color:var(--muted);font-size:13px;font-weight:500;line-height:1.4;white-space:nowrap}.room-drawer .rate-price-nightly small{color:#718792;font-size:12px;font-weight:600}.room-drawer .rate-price-copy>.rate-price-total{grid-area:total;justify-self:end;width:auto;min-width:0;padding:0;border:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;color:#607987;background:transparent;font-size:13px}.room-drawer .rate-price-copy>.rate-price-total>strong{color:var(--forest-deep);font-size:24px;font-weight:700;line-height:1.2;white-space:nowrap}.room-drawer .rate-price-total>strong small{color:var(--muted);font-size:12px;font-weight:600}.room-drawer .rate-total-verification{color:#6b583c;font-size:13px;font-weight:600;line-height:1.4;text-wrap:balance}.room-drawer .program-summary-price>.rate-total-verification{color:#6b583c;font-size:13px}.room-drawer .rate-price-total .info-tooltip-trigger{width:44px;height:44px;margin-inline:-12px;color:var(--muted);background:transparent}.room-drawer .show-program-options{height:44px;min-height:44px;border:0;border-top:1px solid var(--line);background:#f4f8f8;font-size:13px}.room-deals-panel{display:grid;gap:9px}.room-deals-summary{padding:8px 12px;border:1px solid rgba(183,130,39,.25);border-radius:14px;color:#79551b;background:#fff5d8}.room-deals-summary strong{font-size:12px}.room-deal-card{min-height:100px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:8px 18px;background:#fff;box-shadow:0 7px 20px #052b490a}.room-deal-status{align-self:stretch;display:grid;place-items:center start}.room-deal-status span{min-height:24px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;color:#08776e;background:#edf7f6;font-size:10px;font-weight:650;white-space:nowrap}.room-deal-status span.not_available,.room-deal-status span.window_closed{color:#6b7f89;background:#eef2f2}.room-deal-main{min-width:0}.room-deal-main h3{margin:0;color:var(--forest-deep);font-size:16.5px;font-weight:700;line-height:1.2}.room-deal-main>p{margin:4px 0 0;color:var(--muted);font-size:11.5px;line-height:1.4}.room-deal-dates{margin-top:7px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px}.room-deal-dates>span{min-width:0;display:grid;grid-template-columns:13px auto minmax(0,1fr);align-items:center;gap:6px;color:#607987;font-size:11px;line-height:1.35}.room-deal-dates svg{color:var(--gold)}.room-deal-dates strong{color:#79551b;font-weight:650;white-space:nowrap}.room-deal-dates em{min-width:0;overflow-wrap:anywhere;font-style:normal}.room-deal-details{min-height:34px;padding:0 11px;border:1px solid rgba(183,130,39,.25);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:#79551b;background:#fff5d8;font-size:11.5px;font-weight:700;white-space:nowrap}.room-deal-expanded{margin:10px 0 0;padding:10px 12px;border:1px solid rgba(183,130,39,.18);border-radius:10px;color:#536c79;background:#fffdf8;font-size:11px;line-height:1.45}.room-deal-expanded h4,.room-deal-expanded p,.room-deal-expanded ul,.room-deal-expanded dl{margin:0 0 7px}.room-deal-expanded>:last-child{margin-bottom:0}.room-deal-expanded dl>div{display:grid;grid-template-columns:minmax(100px,auto) minmax(0,1fr);gap:8px}.room-deal-expanded dd{margin:0}@media(min-width:761px)and (max-width:920px){.room-drawer .program-summary{grid-template-columns:minmax(0,1fr) minmax(max-content,.55fr) 44px}.room-drawer .rate-option-row{grid-template-areas:"room price" "terms price";grid-template-columns:minmax(0,1fr) 240px}.room-drawer .rate-price-copy{padding-left:8px;padding-right:2px}}@media(max-width:760px){.room-drawer{width:100%;max-height:100dvh;border-radius:0}.room-drawer .room-drawer-header{min-height:0;padding:11px 14px;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.room-drawer .room-drawer-header h2{font-size:20px}.room-drawer-badges{grid-column:1 / -1;grid-row:2;justify-content:flex-start}.room-drawer .room-drawer-header>.icon-button{grid-column:2;grid-row:1}.room-drawer-nav{padding:7px 14px}.room-deal-detail-warning{padding-inline:14px}.room-drawer-body{padding:10px 14px 22px}.room-drawer .room-filter-bar{align-items:flex-start;flex-direction:column;gap:7px}.room-drawer .room-filter-chips{width:100%;flex-wrap:wrap;overflow:visible}.room-drawer .room-filter-chips>button:not(.clear-room-filters){flex:0 0 auto;padding-inline:0;overflow:visible;font-size:13px;text-overflow:clip}.room-drawer .program-summary{grid-template-columns:minmax(0,1fr) auto 44px;gap:7px;padding:9px}.room-drawer .program-summary-main,.room-drawer .program-title-line{justify-items:start;justify-content:flex-start;text-align:left}.room-drawer .program-title-line{align-items:flex-start}.room-drawer .program-summary h3{font-size:18px}.room-drawer .program-summary-price{grid-column:2;grid-row:1}.room-drawer .program-summary-price.mobile-expanded-price{display:none}.room-drawer .program-expand-toggle{grid-column:3;grid-row:1}.room-drawer .rate-option-row{grid-template-areas:"room room" "terms price";grid-template-columns:minmax(0,1fr) 240px;gap:12px;padding:14px}.room-drawer .rate-room-copy{grid-area:room}.room-drawer .rate-terms-copy{grid-area:terms}.room-drawer .rate-price-copy{grid-area:price;padding-left:9px}.room-drawer .rate-room-copy h4{font-size:17px}.room-drawer .rate-primary-terms>span,.room-drawer .rate-quote-unavailable{font-size:13px}.room-drawer .rate-price-copy>.rate-price-total>strong{font-size:22px}.room-deal-card{grid-template-columns:78px minmax(0,1fr);gap:8px}.room-deal-details{grid-column:2;justify-self:start}.room-deal-dates{grid-template-columns:1fr}}@media(max-width:480px){.room-drawer .program-summary{grid-template-columns:minmax(0,1fr) 44px;align-items:start}.room-drawer .program-title-line{flex-wrap:wrap}.room-drawer .program-summary-price{grid-column:1;grid-row:2;justify-self:end;margin-top:3px}.room-drawer .program-expand-toggle{grid-column:2;grid-row:1 / 3;align-self:center}.room-drawer .rate-option-row{grid-template-areas:"room" "terms" "price";grid-template-columns:minmax(0,1fr);gap:12px}.room-drawer .rate-price-copy{padding:12px 0 0;border-left:0;border-top:1px solid var(--line);align-items:flex-end;justify-content:center;flex-direction:column;flex-wrap:nowrap;gap:3px}.room-drawer .rate-price-copy>.rate-price-total>strong{font-size:22px}.room-deal-card{grid-template-columns:1fr}.room-deal-status,.room-deal-details{grid-column:1;justify-self:start}}@media(max-width:350px){.room-deal-detail-warning{padding-inline:10px}.room-drawer .room-drawer-header,.room-drawer-nav,.room-drawer-body{padding-left:10px;padding-right:10px}.room-drawer-tabs button{padding-inline:2px;font-size:13px}.room-drawer .rate-option-row{grid-template-columns:minmax(0,1fr)}.room-drawer .rate-price-copy>.rate-price-total>strong{font-size:22px}}body{background:#edf3f6}.app-shell{width:min(1180px,100%);margin:0 auto;background:var(--surface);box-shadow:0 0 0 1px #073b6414}.app-shell>main,.app-shell>footer{width:100%}.site-header.shared-site-header .site-header-inner{max-width:1180px;padding:0 var(--page-gutter)}.shared-site-header .hot-promotions-link{border-color:#b882278c;color:#654515;background:#fff5d8;box-shadow:none;font-weight:600}.shared-site-header .signed-out-account-button{border-color:#073b64;color:#fff;background:#073b64;box-shadow:none}.hero-section:not(.results-mode){min-height:500px;padding:0;border-radius:0;display:grid;grid-template-columns:58% 42%;overflow:visible;z-index:2;color:var(--ink);background:#eaf5f7;box-shadow:none}.hero-section:not(.results-mode):after,.hero-section:not(.results-mode) .hero-orbit{display:none}.landing-hero-copy{max-width:none;padding:40px clamp(28px,5vw,82px) 130px;display:flex;justify-content:center;flex-direction:column;background:linear-gradient(135deg,#f8fbfa,#e8f4f6)}.landing-hero-copy h1{max-width:760px;margin:0;color:#052b49;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:44px;font-weight:600;line-height:1.12;letter-spacing:-.03em}.landing-booking-steps{max-width:570px;margin:25px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:14px 20px;list-style:none}.landing-booking-steps li{display:flex;align-items:center;gap:8px;color:#466473;font-size:14px;font-weight:500;white-space:nowrap}.landing-booking-steps li>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#08776e;background:#d8ecea;font-size:12px;font-weight:700}.landing-hero-photo{min-width:0;min-height:500px;position:relative;overflow:hidden;border-radius:30px 0 0 30px;background-image:url(https://images.unsplash.com/photo-1542314831-068cd1dbfeeb?auto=format&fit=crop&w=1800&q=85);background-position:center;background-size:cover}.landing-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(234,245,247,.58),transparent 24%),linear-gradient(0deg,rgba(5,43,73,.16),transparent 42%)}.hero-section:not(.results-mode) .search-wrap{width:auto;grid-column:1 / -1;position:absolute;left:5%;right:5%;bottom:24px;z-index:3;margin:0;transform:none}.hero-section .search-card{width:100%;min-height:100px;padding:10px;border:1px solid rgba(7,59,100,.13);border-radius:18px;grid-template-columns:minmax(170px,1.5fr) minmax(130px,1fr) minmax(130px,1fr) 120px 120px minmax(190px,1.1fr);gap:0;align-items:stretch;color:var(--ink);background:#fff;box-shadow:0 12px 32px #052b491a}.hero-section .search-card>.field,.hero-section .search-card .date-range-field{min-height:76px;padding:10px 12px;border-right:1px solid rgba(7,59,100,.1);justify-content:center}.hero-section .search-card>.date-fields{grid-column:span 2;border-right:1px solid rgba(7,59,100,.1)}.hero-section .search-card>.compact-field{padding-inline:8px}.hero-section .search-card .date-range-field:last-child,.hero-section .search-card>.compact-field:nth-of-type(2){border-right:0}.hero-section .field label,.hero-section .date-range-label{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.015em}.hero-section .field input,.hero-section .field select,.hero-section .date-range-trigger,.hero-section .stepper>span{color:var(--ink);font-size:16px;font-weight:500}.hero-section .field input,.hero-section .field select{min-height:44px}.hero-section .child-ages label{color:var(--muted);font-size:13px}.hero-section .child-ages select{min-height:44px;font-size:16px}.hero-section .date-range-trigger{min-height:44px;margin-top:2px;padding:2px 0}.hero-section .date-range-trigger svg{width:16px;height:16px;flex-shrink:0}.hero-section .stepper{margin-top:2px;gap:2px}.hero-section .stepper button{width:44px;height:44px;flex:0 0 auto;border:0;background:radial-gradient(circle at center,#edf4f5 0 12px,transparent 12.5px)}.hero-section .stepper button svg{width:13px;height:13px}.hero-section .search-button{height:52px;min-height:52px;align-self:center;margin:0 2px 0 7px;padding:0 15px;border-radius:11px;color:#fff;background:#073b64;font-size:14px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:none}.hero-section .search-button svg{width:18px;height:18px;flex-shrink:0}.anonymous-booking-trust{width:100%;margin:0;padding:54px clamp(30px,5vw,68px) 58px;background:#f5f8f7}.anonymous-booking-trust .booking-trust-panel{margin:0;padding:28px 32px 30px;border:1px solid rgba(7,59,100,.14);border-radius:22px;background:#fff;box-shadow:0 6px 20px #052b490a}.anonymous-booking-trust .booking-trust-panel>div{gap:21px}.anonymous-booking-trust .booking-trust-panel strong{display:block;color:#052b49;font-size:28px;font-weight:600;line-height:1.25;letter-spacing:-.03em;text-align:center}.anonymous-booking-trust .booking-trust-panel ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.anonymous-booking-trust .booking-trust-panel li{min-height:64px;padding:16px;border-radius:14px;align-items:center;gap:10px;color:#183f53;background:#f3f8f8;font-size:14px;font-weight:500;line-height:1.5;white-space:normal}.anonymous-booking-trust .booking-trust-panel li svg{width:27px;height:27px;flex-basis:27px;margin:0;padding:7px;border-radius:50%;color:#08776e;background:#d8ecea}.app-shell>footer{margin:0;padding:24px var(--page-gutter)}.hero-section.results-mode{padding:28px var(--page-gutter);border-radius:0;overflow:visible;background:linear-gradient(125deg,#063758,#075276);box-shadow:none}.hero-section.results-mode:after{width:390px;height:390px;right:-110px;top:-230px;bottom:auto;display:block;border:1px solid rgba(255,255,255,.1);background:transparent;box-shadow:0 0 0 58px #ffffff06,0 0 0 116px #ffffff05;opacity:1}.hero-section.results-mode .hero-orbit{display:none}.compact-trip-hero{align-items:flex-end}.compact-trip-hero .eyebrow{margin-bottom:7px;color:#b8d8e2;font-size:12px;font-weight:700;letter-spacing:.2em}.compact-trip-hero h1{margin:0;color:#fff;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:28px;font-weight:600;line-height:1.2;letter-spacing:-.035em}.compact-trip-facts{margin-top:13px}.compact-trip-facts span{padding:7px 10px;font-size:13px}.compact-trip-hero>button{min-height:44px;padding:0 14px;border-radius:10px;font-size:14px}.hero-section.results-mode .search-wrap{margin-top:18px}.results-section{padding:32px var(--page-gutter) 60px;background:var(--surface-subtle)}.results-heading{margin-bottom:15px}.results-heading h2{color:#052b49;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:28px;font-weight:600;letter-spacing:-.035em}.results-toolbar{top:88px;margin-bottom:15px;padding:8px 10px 8px 14px;border-radius:14px;background:#fffffff0;box-shadow:0 7px 20px #052b490d}.results-count-copy strong{color:#08776e;font-size:13px;font-weight:700}.results-actions,.result-view-toggle{gap:8px}.result-view-toggle{padding:3px;border-radius:10px;background:#edf3f3}.result-view-toggle button,.sort-control,.filter-toggle{min-height:44px;border-radius:8px;font-size:14px}.result-view-toggle button{padding:0 11px}.hotel-grid{gap:16px}.hotel-card{min-height:156px;padding:14px;border-radius:17px;grid-template-areas:"image body price";grid-template-columns:160px minmax(0,1fr) minmax(190px,max-content);gap:20px;align-items:center;background:#fff;box-shadow:0 4px 16px #052b490a}.hotel-image-wrap{width:160px;height:128px;border-radius:12px}.hotel-card-body{align-self:center;gap:7px}.hotel-card.has-program-logos{container:hotel-card / inline-size;grid-template-areas:"image body logos price";grid-template-columns:160px minmax(0,1fr) 112px minmax(190px,max-content)}.hotel-program-logos{grid-area:logos;width:max-content;max-width:352px;align-self:end;justify-self:end;position:static;display:flex;min-height:32px;align-items:flex-end;justify-content:center;flex-direction:row-reverse;flex-wrap:wrap;column-gap:.8px;row-gap:1.6px}.hotel-program-logo{display:block;width:72px;max-width:72px;height:32px;flex-shrink:0;overflow:hidden;border-radius:2px;background:#f6f6f6}.hotel-program-logo>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;visibility:hidden}.hotel-program-logo[data-logo-state=ready]>img{visibility:visible}.hotel-program-logo[data-local-program=marriott-stars]>img{padding:2px 6px;filter:brightness(0)}@media(min-width:721px)and (max-width:1200px){.hotel-card.has-program-logos{grid-template-areas:"image body body price" "image logos logos price";row-gap:0}.hotel-card.has-program-logos .hotel-card-body{gap:4px}.hotel-program-logos{max-width:min(352px,100%)}}.hotel-card h3{margin:1px 0 0;color:#052b49;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.015em}.hotel-meta,.hotel-distance{color:var(--muted);font-size:12px}.hotel-distance{display:inline-flex;align-items:center;gap:4px}.hotel-meta .hotel-address{min-width:0;max-width:100%;align-items:flex-start;overflow-wrap:anywhere}.hotel-address>svg{flex-shrink:0;margin-top:2px}.hotel-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.hotel-tags .benefit-badge,.hotel-deal-badge{min-height:28px;padding:4px 9px;border:1px solid rgba(17,154,200,.22);border-radius:999px;display:inline-flex;align-items:center;gap:5px;color:#08776e;background:#edf7f6;font-size:12px;font-weight:600;line-height:16px}.hotel-deal-badge{border:1px solid rgba(183,130,39,.25);color:#79551b;background:#fff5d8}.hotel-price-summary{height:100%;align-self:stretch;padding:4px 8px 4px 20px;border-left:1px solid rgba(7,59,100,.13);align-items:center;justify-content:center;text-align:center}.hotel-total-line{display:flex;align-items:baseline;justify-content:center;gap:5px;white-space:nowrap}.hotel-total-line strong{color:#052b49;font-size:26px;font-weight:700}.hotel-total-line small,.hotel-price-summary>small{color:var(--muted);font-size:13px;font-weight:600}.hotel-price-summary>small{margin-bottom:3px}.hotel-price-pending{display:inline-flex;align-items:center;gap:6px;color:#607987;font-size:13px;font-weight:600;white-space:nowrap}.hotel-price-pending svg{animation:spin 1s linear infinite}@media(max-width:1050px){:root{--page-gutter: 28px}.hero-section:not(.results-mode){grid-template-columns:1fr}.landing-hero-copy{min-height:500px;position:relative;z-index:1;padding-bottom:220px;background:transparent}.landing-hero-photo{min-height:0;position:absolute;inset:0;z-index:0;display:block;border-radius:0}.landing-hero-photo:after{background:linear-gradient(135deg,#f8fbfaf0,#e8f4f6c7 58%,#e8f4f66b)}.hero-section .search-card{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-section .search-card>.destination-field{grid-column:auto}.hero-section .search-card>.search-button{margin:7px 0 0}.anonymous-booking-trust .booking-trust-panel ul{grid-template-columns:repeat(2,minmax(0,1fr))}.results-section,.hero-section.results-mode{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.hotel-card{grid-template-columns:135px minmax(0,1fr) minmax(155px,max-content)}.hotel-card.has-program-logos{grid-template-columns:135px minmax(0,1fr) 112px minmax(155px,max-content)}.hotel-image-wrap{width:135px}}@media(min-width:721px)and (max-width:920px){.hotel-card.has-program-logos{grid-template-columns:96px minmax(0,1fr) 112px minmax(155px,max-content);column-gap:12px}.hotel-card.has-program-logos .hotel-image-wrap{width:96px}}@media(max-width:720px){:root{--page-gutter: 16px}.site-header.shared-site-header .site-header-inner{padding:0 var(--page-gutter)}.hero-section:not(.results-mode){min-height:0}.landing-hero-copy{min-height:0;padding:44px 20px 28px;justify-content:flex-start}.landing-hero-copy h1{font-size:44px}.landing-booking-steps{flex-direction:column;flex-wrap:nowrap;gap:8px}.hero-section:not(.results-mode) .search-wrap{width:calc(100% - 28px);position:relative;left:auto;right:auto;bottom:auto;margin:0 auto 28px}.hero-section .search-card{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:18px}.hero-section .search-card>.destination-field,.hero-section .search-card>.date-fields,.hero-section .search-card>.search-button,.hero-section .search-card>.deal-search-notice,.hero-section .search-card>.child-ages,.hero-section .search-card>.form-error{grid-column:1 / -1}.hero-section .search-card>.field,.hero-section .search-card .date-range-field{min-height:72px;padding-inline:10px}.hero-section .search-card>.field{border-top:0;border-bottom:1px solid rgba(7,59,100,.1)}.hero-section .field input,.hero-section .field select,.hero-section .date-range-trigger,.hero-section .stepper>span{font-size:16px}.hero-section .stepper button{width:44px;height:44px;background:radial-gradient(circle at center,#edf4f5 0 9.8px,transparent 10.3px)}.hero-section .stepper button svg{width:12px;height:12px}.hero-section .compact-field .stepper{justify-content:center;gap:2px}.hero-section .search-button{min-height:52px;height:52px;margin:7px 0 0}.anonymous-booking-trust{padding:42px 16px}.anonymous-booking-trust .booking-trust-panel{padding:26px 20px}.anonymous-booking-trust .booking-trust-panel strong{font-size:20px}.anonymous-booking-trust .booking-trust-panel ul{grid-template-columns:1fr}.anonymous-booking-trust .booking-trust-panel li{white-space:normal}.hero-section.results-mode{padding:28px var(--page-gutter)}.compact-trip-hero{align-items:stretch;flex-direction:column;gap:15px}.compact-trip-hero h1{font-size:28px}.compact-trip-hero>button{width:fit-content}.results-section{padding:28px var(--page-gutter)}.results-heading{align-items:flex-start}.results-toolbar{top:78px;padding:10px}.hotel-card{min-height:112px;grid-template-areas:"image body" "image price";grid-template-columns:96px minmax(0,1fr);gap:6px 12px}.hotel-image-wrap{width:96px;height:112px}.hotel-card h3{font-size:18px}.hotel-card.has-program-logos{grid-template-areas:"image body" "logos logos" "price price";grid-template-columns:96px minmax(0,1fr)}.hotel-program-logos{width:auto;column-gap:1.6px;position:static;align-items:flex-end;justify-content:flex-end;flex-direction:row-reverse;justify-self:end;margin-top:0}@container hotel-card (width < 304px){.hotel-program-logos:has(>.hotel-program-logo:nth-child(3)){min-height:72px;align-items:flex-end;align-content:flex-end}}.hotel-price-summary{height:auto;padding:0;border-left:0;align-items:flex-end;justify-content:flex-end;text-align:right}.hotel-total-line strong{font-size:22px}.app-shell>footer{display:block;padding:24px var(--page-gutter)}.app-shell>footer span{display:block;margin-top:6px}}@media(max-width:380px){.landing-booking-steps{gap:8px}.landing-booking-steps li{font-size:13px}.hero-section .search-card>.field,.hero-section .search-card .date-range-field{padding-inline:7px}.hotel-card{grid-template-columns:78px minmax(0,1fr);gap:6px 9px}.hotel-card.has-program-logos{grid-template-columns:78px minmax(0,1fr)}.hotel-image-wrap{width:78px;height:78px}.hotel-tags{gap:4px}.hotel-tags .benefit-badge,.hotel-deal-badge{padding:4px 8px;font-size:12px}}.maintenance-page{--maintenance-ink: #0b3153;--maintenance-muted: #4f6475;--maintenance-accent: #0b4770;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:clamp(24px,5vw,64px);background:#f8fafc;color:var(--maintenance-ink);font-size:16px}.maintenance-card{width:min(100%,680px);text-align:center}.maintenance-page .maintenance-logo{display:block;width:248px;height:80px;max-width:100%;margin:0 auto 32px;background-position:center;background-repeat:no-repeat;background-size:contain}.maintenance-card h1{margin:0 0 16px;font-size:clamp(1.875rem,4vw,2.5rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}.maintenance-card p:not(.maintenance-kicker){margin:8px auto 0;max-width:480px;color:var(--maintenance-muted);line-height:1.65}.maintenance-contact{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;min-height:48px;max-width:100%;margin-top:28px;padding:12px 24px;border:1px solid transparent;border-radius:12px;background:var(--maintenance-accent);color:#fff;font-weight:600;font-family:inherit;font-size:inherit;line-height:1.4;text-decoration:none;cursor:pointer;transition:background-color .15s ease}.maintenance-contact:hover{background:#073652}.maintenance-contact:focus-visible{outline:3px solid #087da6;outline-offset:4px}.maintenance-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}.maintenance-actions .maintenance-contact{margin-top:0}.maintenance-contact.maintenance-secondary{color:var(--maintenance-ink);border-color:currentColor;background:transparent}.maintenance-contact.maintenance-secondary:hover{background:#e9f1f6}@media(prefers-reduced-motion:reduce){.maintenance-contact{transition:none}}
