.promotions-page{max-width:75rem;margin-inline:auto;padding:clamp(1.5rem,5vw,4rem) 1rem;display:grid;gap:2rem}
.promotions-page__header{max-width:48rem}.promotions-page__header h1{margin-block:0 .75rem}
.promotions-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1.25rem}
.promotion-card{border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column}
.promotion-card__image{width:100%;aspect-ratio:4/3;object-fit:cover}.promotion-card__body{padding:1.25rem;display:grid;gap:.85rem;align-content:start}
.promotion-card__body h2,.promotion-card__body p,.promotion-card__facts{margin:0}.promotion-card__eyebrow{font-size:.85em;font-weight:600}
.promotion-card__badges{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}.promotion-card__badges li{border:1px solid currentColor;border-radius:999px;padding:.2rem .65rem;font-size:.85em}
.promotion-card__facts{display:grid;gap:.5rem}.promotion-card__facts div{display:flex;justify-content:space-between;gap:1rem}.promotion-card__facts dd{margin:0}
.promotion-card__eligibility,.promotion-card__availability{font-size:.9em}.promotion-card__action{justify-self:start}
.promotions-page__pagination{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}.promotions-page a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
