.site-promotions{padding:38px 0 25px;}
.promotions-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:22px;}
.promotions-heading h2{font-size:var(--type-h2);margin:0;}
.promotions-heading>a{font-size:12px;color:#a93b2b;background:#fff7f2;border:1px solid #eed9d0;border-radius:99px;padding:10px 18px;white-space:nowrap;}
.promotion-carousel{position:relative;}
.promotion-track{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#bdb8b4 transparent;border-radius:20px;}
.promotion-card{flex:0 0 100%;min-width:0;scroll-snap-align:start;overflow:hidden;background:#fff;border:1px solid #e6e3e3;border-radius:20px;}
.promotion-image{background:#f3f1ef;overflow:hidden;aspect-ratio:2.47;}
.promotion-art{display:block;width:100%;height:100%;object-fit:cover;}
.promotion-image-empty{width:100%;height:100%;background:#eae7e4;}
.promotion-copy{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;}
.promotion-copy h3{font-size:var(--type-h3);line-height:1.45;}
.promotion-copy p{font-size:14px;line-height:1.7;margin:5px 0 0;max-width:80ch;}
.promotion-contact{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 18px;white-space:nowrap;border:1px solid #ead4ca;border-radius:99px;color:#a93b2b;background:#fff7f2;font-size:13px;font-weight:600;}
.promotion-contact:hover{background:#f8e9df;}
.promotion-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:13px;}
.promotion-dots,.promotion-arrows{display:flex;align-items:center;gap:8px;}
.promotion-dot{width:28px;height:28px;padding:0;border:0;background:transparent;display:grid;place-items:center;}
.promotion-dot::after{content:"";width:8px;height:8px;background:#beb8b4;border-radius:50%;transition:background .2s,transform .2s;}
.promotion-dot[aria-current=true]::after{background:#b74330;transform:scale(1.4);}
.promotion-prev,.promotion-next{display:grid;place-items:center;width:44px;height:44px;border:1px solid #dedbd9;border-radius:50%;background:#fff;font-size:20px;}
.promotion-prev:hover,.promotion-next:hover{background:#f9f2ee;border-color:#d9b5a4;}
.promotions-terms{font-size:12px;color:#71717a;margin-top:13px;line-height:1.8;}
@media(max-width:760px){.site-promotions{padding:25px 0 15px;}.promotions-heading{margin-bottom:16px;gap:12px;flex-wrap:wrap;}.promotion-card,.promotion-track{border-radius:16px;}.promotion-copy{display:block;padding:17px 18px;}.promotion-copy p{font-size:13px;}.promotion-contact{margin-top:14px;}.promotion-controls{margin-top:8px;}}
@media(prefers-reduced-motion:reduce){.promotion-dot::after{transition:none;}}
