/* Wide, readable cards remain in one native, horizontally scrollable row. */
.offers-section>.wrap{width:min(1760px,calc(100% - 64px))}
.offers-section .section-heading,.offers-section .comparison,.offers-section .guide{max-width:1280px;margin-inline:auto}
.offers-carousel{margin-top:38px}
.offer-rail-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding-inline:2px}
.offer-rail-toolbar[hidden]{display:none}
.offer-rail-toolbar>p{font-size:13px;color:#58634f}
.offer-rail-controls{display:flex;align-items:center;gap:10px}
.offer-rail-controls>span{min-width:68px;margin-right:6px;color:#58634f;text-align:right;font-size:12px;font-variant-numeric:tabular-nums}
.offer-rail-controls button{display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid #d7dfcd;border-radius:50%;background:#fff;color:#35432b;transition:background .2s,border-color .2s}
.offer-rail-controls button:hover:not(:disabled){background:#eaf3dd;border-color:#adc78d}
.offer-rail-controls button:disabled{opacity:.35;cursor:default}
.offer-rail-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.offer-grid.offer-grid-four.offer-rail{position:relative;display:grid;grid-template-columns:none;grid-template-rows:auto auto auto minmax(0,1fr) auto;grid-auto-flow:column;grid-auto-columns:clamp(380px,31vw,420px);column-gap:24px;row-gap:0;align-items:stretch;margin:0;padding:4px 2px 18px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:2px;scrollbar-width:thin;scrollbar-color:#92ab71 #e5e9df}
.offer-rail::-webkit-scrollbar{height:5px}.offer-rail::-webkit-scrollbar-track{background:#e5e9df;border-radius:10px}.offer-rail::-webkit-scrollbar-thumb{background:#92ab71;border-radius:10px}
.offer-rail:focus-visible{outline:2px solid #7a9857;outline-offset:5px;border-radius:18px}
.offer-rail>.offer{display:grid;grid-row:span 5;grid-template-rows:auto auto auto minmax(0,1fr) auto;align-items:start;row-gap:0;min-width:0;padding:25px 23px;border-radius:20px;scroll-snap-align:start;scroll-margin:0}
@supports(grid-template-rows:subgrid){.offer-rail>.offer{grid-template-rows:subgrid}}
.offer-rail .offer-overview{min-width:0;padding-bottom:17px}
.offer-rail .offer-overview>.eyebrow{margin:0 0 13px;min-height:36px!important;font-size:10px;letter-spacing:.08em;gap:10px}
.offer-rail .offer-symbol,.offer-rail .site-symbol-ring{flex:0 0 36px;width:36px;height:36px}
.offer-grid-four.offer-rail .offer h3{min-height:1.16em;margin:0 0 11px;font-size:27px;line-height:1.14;letter-spacing:-.04em;white-space:normal}
.offer-grid-four.offer-rail .offer-description{min-height:6em;margin:0;font-size:14px;line-height:1.5}
.offer-rail .offer-meta{min-height:2.9em;margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.offer-rail .offer-pricing{min-width:0;padding-bottom:16px}
.offer-grid-four.offer-rail .offer .price{margin:0;font-size:40px;line-height:1.1;white-space:normal}
.offer-rail .price small{font-size:13px;letter-spacing:0;white-space:nowrap}
.offer-grid-four.offer-rail .price-context{min-height:4.5em;margin:7px 0 0;font-size:11px;line-height:1.5}
.offer-grid-four.offer-rail .offer>.segmented{grid-column:auto;grid-row:auto;align-self:start;min-height:44px;margin:0}
.offer-grid-four.offer-rail .offer>.segmented button{min-height:44px;padding:8px 6px;font-size:12px;line-height:1.25}
.offer-rail .offer-inclusions{min-width:0;padding:15px 0 18px}
.offer-card-details>h4{margin:0 0 7px;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:12px;font-weight:600;line-height:1.4;letter-spacing:0}
.featured .offer-card-details>h4{border-bottom-color:#3f443b}
.offer-card-details>.offer-list{margin:0!important;padding:5px 0 0;font-size:12px!important;line-height:1.42}
.offer-card-details>.offer-list li{margin:0;padding:5px 0;gap:8px}
.offer-grid-four.offer-rail .offer>.button{grid-column:auto;grid-row:auto;align-self:end;width:100%;min-height:50px;margin:0;padding:14px;gap:14px;font-size:13px;line-height:1.35;text-align:center}
.offer-rail .offer>.button>span{flex-shrink:0}
@media(max-width:1100px){
  .offers-section>.wrap{width:min(900px,calc(100% - 64px))}
  .offer-rail-toolbar{display:none!important}
  .offer-grid.offer-grid-four.offer-rail{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-flow:row;grid-auto-columns:auto;gap:22px;max-width:760px;margin-inline:auto;padding:0;overflow:visible;scroll-snap-type:none}
  .offer-rail>.offer{grid-row:auto;grid-template-rows:auto auto auto minmax(0,1fr) auto;scroll-snap-align:none}
  .offer-grid-four.offer-rail .offer h3{min-height:1.16em}
  .offer-grid-four.offer-rail .offer-description{min-height:3em}
  .offer-rail .offer-meta{min-height:1.45em}
  .offer-grid-four.offer-rail .price-context{min-height:3em}
}
@media(max-width:700px){
  .offers-section>.wrap{width:calc(100% - 32px)}
  .offers-section .section-heading{padding-inline:4px}
  .offers-carousel{margin-top:26px}
  .offer-grid.offer-grid-four.offer-rail{gap:14px;max-width:none}
  .offer-grid-four.offer-rail>.offer{position:relative;display:flex;padding:18px 17px 17px;border-radius:18px;box-shadow:0 10px 26px rgba(16,16,16,.045);overflow:hidden}
  .offer-grid-four.offer-rail>.offer:before{position:absolute;top:18px;right:18px;color:#87917e;font-size:11px;font-weight:650;letter-spacing:.12em}
  .offer-grid-four.offer-rail>.offer:nth-child(1):before{content:"01"}.offer-grid-four.offer-rail>.offer:nth-child(2):before{content:"02"}.offer-grid-four.offer-rail>.offer:nth-child(3):before{content:"03"}.offer-grid-four.offer-rail>.offer:nth-child(4):before{content:"04"}
  .offer-grid-four.offer-rail>.offer.featured:before{color:#87957a}
  .offer-rail .offer-overview{padding:0 40px 14px 0;border-bottom:1px solid var(--line)}
  .offer-rail .featured .offer-overview{border-bottom-color:#3d4239}
  .offer-rail .offer-overview>.eyebrow{min-height:30px!important;margin:0 0 11px;font-size:9px;letter-spacing:.085em;gap:8px}
  .offer-rail .offer-symbol,.offer-rail .site-symbol-ring{flex-basis:31px;width:31px;height:31px}
  .offer-rail .offer-symbol svg,.offer-rail .site-symbol-ring svg{width:17px;height:17px}
  .offer-grid-four.offer-rail .offer h3{min-height:0;margin:0 0 8px;font-size:clamp(22px,6.7vw,26px);line-height:1.08;white-space:normal}
  .offer-grid-four.offer-rail .offer-description{min-height:0;font-size:13px;line-height:1.45}
  .offer-rail .offer-meta{min-height:0;margin-top:8px;font-size:10px;line-height:1.45}
  .offer-rail .offer-pricing{margin:11px 0 10px;padding:12px 13px;border:1px solid #dfe5d7;border-radius:12px;background:rgba(255,255,255,.68)}
  .offer-rail .featured .offer-pricing{border-color:#42473e;background:#282b26}
  .offer-grid-four.offer-rail .offer .price{font-size:36px;line-height:1.05;white-space:nowrap}
  .offer-rail .price small{font-size:11px}
  .offer-grid-four.offer-rail .price-context{min-height:0;margin-top:6px;font-size:11px;line-height:1.42}
  .offer-grid-four.offer-rail .offer>.segmented{order:3;width:100%;min-height:43px;margin:0}
  .offer-grid-four.offer-rail .offer>.segmented button{min-height:44px;padding:8px 5px;font-size:12px;font-weight:550}
  .offer-rail .offer-inclusions{order:4;margin-top:11px;padding:0}
  .offer-card-details>h4{margin-bottom:5px;padding-bottom:8px}
  .offer-card-details>.offer-list{line-height:1.38}
  .offer-card-details>.offer-list li{padding:4px 0}
  .offer-grid-four.offer-rail .offer>.button{order:5;min-height:48px;margin-top:12px;padding:13px;font-size:13px;border-radius:12px}
}
@media(prefers-reduced-motion:reduce){.offer-rail-controls button{transition:none}}
