/* Страница «Предложения месяца» (offers.html, js/offers.js).
   Карточки повторяют язык предложений на страницах направлений
   (.promo__badge, .promo__price…), но стоят сеткой, а не полосой. */
.offers-page .dir-switch:not(:has(.is-active)) .dir-switch__thumb{display:none;}
.offers-sec[hidden],.offers-empty[hidden],.offers-jump[hidden]{display:none;}
/* Стоматология на общей странице — в своём цвете, как на её разделе. */
.offers-sec--dent{--accent:var(--mineral);--accent-soft:rgba(127,160,147,.16);}

.offers-jump{display:flex;flex-wrap:wrap;gap:10px 18px;margin:22px 0 0;}
.offers-jump a{font-size:12px;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:2px;}

.offers-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.offer{display:flex;flex-direction:column;gap:12px;padding:24px 24px 22px;background:var(--milk);
  border:1px solid var(--line);border-radius:14px;scroll-margin-top:96px;}
.offer__top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;}
.offer__top .promo__badge{justify-self:auto;min-width:0;}
.offer__meta{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:13px;}
.offer__title{margin:0;font-family:var(--font-display);font-size:clamp(19px,1.7vw,23px);line-height:1.28;color:var(--ink);overflow-wrap:anywhere;}
.offer__text{margin:0;font-size:15px;line-height:1.6;color:var(--wood);}
.offer .promo__rules{margin:0;}
.offer__actions{margin-top:auto;padding-top:6px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.offer__done{font-size:13px;color:var(--accent);min-height:1em;}
.offer.is-flash{animation:offerFlash 1.8s ease-out 1;}
@keyframes offerFlash{0%,35%{box-shadow:0 0 0 3px var(--accent);border-color:var(--accent);}100%{box-shadow:0 0 0 0 transparent;}}
@media (prefers-reduced-motion: reduce){.offer.is-flash{animation:none;box-shadow:0 0 0 3px var(--accent);}}

.offers-note{max-width:var(--wrap,1200px);margin:0 auto;padding:0 var(--gutter) 40px;}
.offers-empty .section-lead a{text-decoration:underline;text-underline-offset:3px;}

@media (max-width:760px){
  .offers-list{grid-template-columns:minmax(0,1fr);gap:12px;}
  .offer{padding:20px 18px 18px;}
  .offer__actions .btn{flex:1 1 auto;}
}

.offers-status{max-width:var(--wrap,1200px);margin:0 auto;padding:0 var(--gutter) 24px;color:var(--wood);}
.offers-status[hidden]{display:none;}
.offer:focus-visible,.offers-jump:focus-visible{outline:2px solid var(--accent);outline-offset:5px;}
.offer__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
