.landing-rates{padding-block:58px 65px;scroll-margin-top:24px}.landing-rate-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:28px}.landing-rate-heading h2{font-size:clamp(32px,3.6vw,51px);max-width:850px;margin:13px 0 17px}.landing-rate-heading p:not(.eyebrow){max-width:690px;color:var(--muted);font-size:15px;line-height:1.8}.landing-rate-heading>a{flex-shrink:0}.rate-config{padding:24px;background:var(--soft);border:1px solid var(--line);border-radius:12px;margin-bottom:25px}.rate-config-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rate-config-fields.has-type{grid-template-columns:repeat(4,minmax(0,1fr))}.rate-config label{display:block;font-size:11px;line-height:1.6;margin-bottom:8px}.rate-config input,.rate-config select{width:100%;font-size:14px;background:var(--surface)}.rate-config-actions{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:18px}.rate-config-actions>p{font-size:11px;margin:0;line-height:1.7;color:var(--muted);max-width:770px}.rate-config .button{font-size:11px;min-height:43px;flex-shrink:0}.rate-config .error{margin-top:12px;font-size:13px}.rate-context{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 20px;font-size:12px;color:var(--muted);line-height:1.7}.rate-context strong{font-weight:650;color:var(--ink)}
.rate-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.rate-card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:25px;min-width:0;display:flex;flex-direction:column;transition:border-color 160ms ease}.rate-card.is-selected{border-color:var(--green);outline:1px solid var(--green)}.rate-provider{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--line)}.rate-letter{height:37px;width:37px;display:grid;place-items:center;flex-shrink:0;border-radius:8px;background:var(--soft);color:var(--ink);font-size:19px;letter-spacing:-.05em}.rate-provider-name{font-size:12px;font-weight:700;color:var(--ink);line-height:1.4}.rate-provider small{display:block;color:var(--muted);font-size:9px;line-height:1.6}.rate-mode{display:block;width:100%;font-size:10px;color:var(--muted);margin-top:3px;line-height:1.5}.rate-card[data-provider=b]{border-top:3px solid var(--ink);padding-top:23px}.rate-card[data-provider=b] .rate-letter{background:var(--ink);color:var(--bg)}.rate-card[data-provider=c] .rate-letter{background:var(--accent);color:var(--accent-ink)}.rate-heading{padding-block:22px 12px}.rate-heading .eyebrow{font-size:9px}.rate-heading h3{font-size:clamp(25px,2.35vw,32px);line-height:1.12;letter-spacing:-.045em;margin:12px 0 16px;color:var(--ink)}.rate-heading>p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted);margin:0;min-height:44px}.rate-total{padding-block:15px 23px;border-bottom:1px solid var(--line)}.rate-total>span,.rate-total>small{display:block;font-size:10px;color:var(--muted);line-height:1.7}.rate-total>strong{display:block;font-size:clamp(33px,3.6vw,48px);line-height:1.15;font-weight:600;letter-spacing:-.065em;color:var(--ink);margin:9px 0;font-variant-numeric:tabular-nums;white-space:nowrap}.rate-inclusions{padding:18px 0 0;margin:0;list-style:none;font-size:12px;line-height:1.8}.rate-inclusions li{position:relative;padding:5px 0 5px 19px}.rate-inclusions li:before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:650}.rate-inclusions li.rate-limitation{font-weight:650}.rate-inclusions li.rate-limitation:before{content:'!';color:var(--error)}.rate-conditions{border:0;padding:17px 0 23px;margin-top:auto}.rate-conditions summary{cursor:pointer;font-size:11px;line-height:1.6;color:var(--green);font-weight:650;list-style:revert}.rate-conditions>div{padding-top:7px}.rate-conditions p{font-size:11px;line-height:1.8;color:var(--muted);margin:12px 0 0}.rate-choose{width:100%;justify-content:space-between;gap:15px;background:var(--ink);color:var(--bg);font-size:12px;min-height:49px}.rate-card[data-provider=b] .rate-choose{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.rate-choose span{font-size:20px}.rate-footnote{font-size:11px;line-height:1.8;max-width:920px;color:var(--muted);margin-top:23px}.rate-cards-grid[data-invalid=true] .rate-card{opacity:.65}.rate-cards-grid[data-invalid=true] .rate-choose{cursor:not-allowed}
.landing-request{background:var(--soft);border:1px solid var(--line);padding:30px;border-radius:14px;scroll-margin-top:20px;margin-top:35px}.landing-request-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}.landing-request-heading strong{font-size:13px}.landing-request-heading span{font-size:11px;color:var(--muted)}.landing-request-heading button{font-size:11px;background:none;border:0;color:var(--green);text-decoration:underline;text-underline-offset:4px;min-height:44px}.landing-request .flow-stage-heading h2{font-size:37px}.landing-reprice-note{font-size:13px;line-height:1.7;background:var(--soft);padding:14px;border-left:3px solid var(--green);margin-top:20px}.landing-request [data-step-panel][hidden],.landing-request[hidden]{display:none!important}.rate-inline-requirement{font-size:12px;color:var(--muted);margin-top:15px}.hero-rate-summary{background:var(--accent);padding:30px;border-radius:10px;color:var(--accent-ink)}.hero-rate-summary .eyebrow{color:#43572c}.hero-rate-summary h2{font-size:31px;line-height:1.13;color:var(--accent-ink);margin:15px 0 20px}.hero-rate-summary p:not(.eyebrow){font-size:13px;line-height:1.8;color:#3a4b28}.hero-rate-summary .button{display:flex;margin-top:25px;background:#222c17;color:#f4f7e9}.hero-rate-summary dl{margin:20px 0 0}.hero-rate-summary dl>div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #a5bc6a;padding:12px 0;font-size:12px}.hero-rate-summary dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}.hero-rate-summary small{display:block;font-size:10px;line-height:1.7;margin-top:15px;color:#43572c}
/* The main comparator uses the same offer component in a horizontal hotel-style list. */
.hotel-offers .rate-card{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(0,1.6fr) 235px;column-gap:30px}.hotel-offers .rate-provider{grid-column:1;grid-row:1;border:0;padding:0;align-content:start}.hotel-offers .rate-heading{grid-column:1;grid-row:2/4;padding-top:10px}.hotel-offers .rate-heading h3{font-size:29px}.hotel-offers .rate-total{grid-column:3;grid-row:1/3;border:0;text-align:right;padding:10px 0 10px 25px;border-left:1px solid var(--line)}.hotel-offers .rate-total>strong{font-size:39px}.hotel-offers .rate-inclusions{grid-column:2;grid-row:1/3;padding:0}.hotel-offers .rate-conditions{grid-column:2;grid-row:3;margin:0;padding-bottom:0}.hotel-offers .rate-choose{grid-column:3;grid-row:3;align-self:end}.hotel-offers .rate-mode{margin-top:0}
@media(hover:hover) and (pointer:fine){.rate-card:hover{border-color:var(--green)}.rate-choose:hover{filter:brightness(.95)}}
@media(max-width:1100px){.rate-card{padding:20px}.rate-card[data-provider=b]{padding-top:18px}.rate-config-fields.has-type{grid-template-columns:1fr 1fr}.rate-cards-grid{gap:13px}.rate-total>strong{font-size:35px}.rate-heading h3{font-size:27px}.hotel-offers .rate-card{grid-template-columns:minmax(140px,.8fr) minmax(0,1.4fr) 205px;column-gap:23px}.hotel-offers .rate-total>strong{font-size:33px}.landing-request{padding:25px}.landing-request .booking-details-layout{grid-template-columns:1.4fr 1fr}}
@media(max-width:850px){.rate-cards-grid{grid-template-columns:1fr}.rate-card{padding:26px;display:grid;grid-template-columns:1.3fr 1fr;column-gap:30px}.rate-card[data-provider=b]{padding-top:24px}.rate-provider{grid-column:1/-1}.rate-heading{grid-column:1;grid-row:2}.rate-total{grid-column:2;grid-row:2;text-align:right;border-bottom:0;padding-block:27px}.rate-total>strong{font-size:40px}.rate-inclusions{grid-column:1/-1;border-top:1px solid var(--line)}.rate-conditions{grid-column:1;grid-row:4;padding:20px 0 0}.rate-choose{grid-column:2;grid-row:4;align-self:end}.rate-mode{width:auto;margin-left:auto}.rate-config-fields{grid-template-columns:1fr 1fr}.rate-config-fields>div:last-child{grid-column:1/-1}.rate-config-fields.has-type>div:last-child{grid-column:auto}.rate-config-actions{align-items:flex-start}.landing-rate-heading{align-items:start;flex-direction:column;gap:12px}.landing-request .booking-details-layout{grid-template-columns:1fr}.landing-request .booking-selected{display:block}.landing-request .booking-selected>p:last-child{margin-top:20px}.landing-request .booking-selected>strong{margin-top:15px}.hotel-offers .rate-card{grid-template-columns:1fr 1fr}.hotel-offers .rate-provider{grid-column:1/-1;grid-row:1;padding-bottom:18px;border-bottom:1px solid var(--line)}.hotel-offers .rate-heading{grid-column:1;grid-row:2}.hotel-offers .rate-total{grid-column:2;grid-row:2;border:0;padding-left:0}.hotel-offers .rate-inclusions{grid-column:1/-1;grid-row:3;padding-top:15px}.hotel-offers .rate-conditions{grid-column:1;grid-row:4}.hotel-offers .rate-choose{grid-column:2;grid-row:4}}
@media(max-width:600px){.landing-rates{padding-block:35px 45px}.rate-config{padding:20px}.rate-config-fields,.rate-config-fields.has-type{grid-template-columns:1fr}.rate-config-fields>div:last-child{grid-column:auto}.rate-config input,.rate-config select{font-size:16px}.rate-config label{font-size:12px}.rate-config-actions{display:block}.rate-config-actions .button{width:100%;font-size:13px;margin-top:15px}.rate-config-actions>p{font-size:12px}.rate-card,.hotel-offers .rate-card{display:flex;padding:24px;gap:0}.rate-card[data-provider=b]{padding-top:22px}.rate-provider,.hotel-offers .rate-provider{padding-bottom:17px;align-content:normal;flex-wrap:wrap}.rate-provider-name{font-size:14px}.rate-provider small{font-size:10px}.rate-mode{font-size:10px;width:auto;margin-left:auto}.rate-heading,.hotel-offers .rate-heading{padding-block:23px 10px}.rate-heading h3,.hotel-offers .rate-heading h3{font-size:31px}.rate-heading>p:not(.eyebrow){font-size:14px;min-height:0}.rate-total,.hotel-offers .rate-total{text-align:left;border:0;padding:13px 0 23px}.rate-total>strong,.hotel-offers .rate-total>strong{font-size:44px}.rate-total>span,.rate-total>small{font-size:11px}.rate-inclusions,.hotel-offers .rate-inclusions{font-size:14px;padding-top:17px;border-top:1px solid var(--line)}.rate-inclusions li{padding-block:6px}.rate-conditions,.hotel-offers .rate-conditions{padding:18px 0 25px;margin-top:auto}.rate-conditions summary{font-size:12px}.rate-conditions p{font-size:13px}.rate-choose{font-size:14px;min-height:52px}.landing-request{padding:19px;margin-top:25px}.landing-request-heading{align-items:flex-start}.landing-request .flow-stage-heading h2{font-size:31px}.landing-request .booking-form{padding:20px}.landing-request .flow-stage-heading>div>p:not(.eyebrow){font-size:15px}.hero-rate-summary{padding:25px}.hero-rate-summary p:not(.eyebrow){font-size:15px}.hero-rate-summary dl>div{font-size:13px}.rate-context{font-size:12px}.rate-footnote{font-size:12px}}
@media(prefers-reduced-motion:reduce){.rate-card{transition:none}}
.rate-choose:disabled{opacity:.55;cursor:default}
.hotel-profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.hotel-search-hero .hotel-profile-fields{gap:12px;margin-top:12px}.hotel-search-hero .hotel-profile-fields select{font-size:13px}.hotel-profile-fields>div{min-width:0}
@media(max-width:600px){.hotel-profile-fields{grid-template-columns:1fr}.hotel-search-hero .hotel-profile-fields select{font-size:16px}}
