/* ===== STICKY-ФУТЕР: прижат к низу экрана на ЛЮБОМ адаптиве (в т.ч. >1920 и на высоких экранах, где контент короче вьюпорта) ===== */
/* Без этого на больших разрешениях под футером оставалась пустота (контент < высоты вьюпорта, футер отлипал от низа). */
body{min-height:100vh;display:flex;flex-direction:column}
body>main.pmain{flex:1 0 auto}      /* контент растягивается и выталкивает футер вниз; при коротком контенте — упирается в низ экрана */
body>.site-footer.site-footer-simple{flex:0 0 auto}   /* футер не сжимается и не растёт — всегда у нижней кромки */

/* ===== ФУТЕР (site-footer-simple) — дизайн из деплоя, раскладка пересобрана на flexbox (тянется на всех ширинах, включая >1920) ===== */
.site-footer.site-footer-simple{position:relative;margin-top:0;padding:56px 0 55px;background:#1A1A1A;color:rgba(255,255,255,.35)}
.site-footer-simple .footer-simple__inner{width:min(var(--container),calc(100% - 48px));margin:0 auto}   /* тянется как весь контент (сводка/хедер): ≤1920 → 1400, >1920 → на всю ширину */
.footer-simple__top{margin-bottom:26px}
.footer-simple__logo{display:inline-block}
.footer-simple__logo img{display:block;width:124px;height:auto}
.footer-simple__bottom{display:flex;justify-content:space-between;align-items:center;gap:18px 40px;flex-wrap:wrap}
.footer-simple__bottom p{margin:0;color:rgba(255,255,255,.35);font-size:12px;line-height:16px;font-weight:300}
.footer-simple__links{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px}
.footer-simple__links button{padding:0;border:0;background:none;color:rgba(255,255,255,.35);font-family:inherit;font-size:12px;line-height:16px;font-weight:300;text-decoration:none;cursor:pointer;transition:color .18s ease}
.footer-simple__links button:hover,.footer-simple__links button:focus-visible{color:#fff;outline:none}
@media(max-width:820px){
  .site-footer.site-footer-simple{padding:42px 0}
  .site-footer-simple .footer-simple__inner{width:calc(100% - 32px)}
  .footer-simple__bottom{flex-direction:column;align-items:flex-start;gap:20px}
  .footer-simple__links{flex-direction:column;align-items:flex-start;gap:12px}
}
/* ===== Правовая модалка (legal-modal) — 1:1 из деплоя (дизайн + анимация появления) ===== */
.legal-modal,.legal-modal *{box-sizing:border-box}
.legal-modal{position:fixed;inset:0;z-index:2600;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
.legal-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.legal-modal__backdrop{position:absolute;inset:0;background:rgba(9,21,32,.58);will-change:opacity;transform:translateZ(0)}
.legal-modal__dialog{position:relative;display:flex;flex-direction:column;width:min(100%,760px);max-height:min(82vh,720px);overflow:hidden;background:#fff;border-radius:44px;box-shadow:0 34px 90px rgba(9,21,32,.22);transform:translateY(12px) scale(.985);transition:transform .18s ease;will-change:transform;backface-visibility:hidden}
.legal-modal.is-open .legal-modal__dialog{transform:translateY(0) scale(1)}
.legal-modal__head{position:relative;flex:0 0 auto;padding:40px 88px 24px 40px;border-bottom:1px solid rgba(9,21,32,.08)}
.legal-modal__eyebrow{margin:0 0 10px;color:#FF5029;font-size:14px;line-height:18px;font-weight:500}
.legal-modal__head h3{margin:0;color:#091520;font-size:28px;line-height:34px;font-weight:500;letter-spacing:-.03em}
.legal-modal__close{position:absolute;top:24px;right:24px;width:44px;height:44px;border:0;border-radius:999px;background:#F6F6F7;color:rgba(9,21,32,.55);font-size:26px;line-height:1;font-weight:300;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .18s ease,color .18s ease}
.legal-modal__close:hover,.legal-modal__close:focus-visible{background:#E8EAED;color:#091520;outline:none}
.legal-modal__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:28px 40px 40px;color:rgba(9,21,32,.72);font-size:15px;line-height:23px;font-weight:300;letter-spacing:-.01em;overscroll-behavior:contain}
.legal-modal__body p,.legal-modal__body ul{margin:0 0 16px}
.legal-modal__body p:last-child,.legal-modal__body ul:last-child{margin-bottom:0}
.legal-modal__body h4{margin:22px 0 10px;color:#091520;font-size:16px;line-height:22px;font-weight:500}
.legal-modal__body ul{padding-left:22px}
.legal-modal__body li{margin:0 0 10px;padding-left:2px}
.legal-modal__body li:last-child{margin-bottom:0}
.legal-modal__body::-webkit-scrollbar{width:10px}
.legal-modal__body::-webkit-scrollbar-track{background:transparent}
.legal-modal__body::-webkit-scrollbar-thumb{border:3px solid #fff;border-radius:999px;background:rgba(9,21,32,.18)}
@media(max-width:640px){.legal-modal{align-items:flex-end;padding:12px}.legal-modal__dialog{width:100%;max-height:88dvh;border-radius:32px}.legal-modal__head{padding:32px 76px 20px 24px}.legal-modal__head h3{font-size:23px;line-height:28px}.legal-modal__eyebrow{font-size:13px;line-height:18px}.legal-modal__close{top:18px;right:18px;width:40px;height:40px}.legal-modal__body{padding:22px 24px 30px;font-size:14px;line-height:21px}}
@media(max-width:420px){.legal-modal{padding:8px}.legal-modal__dialog{border-radius:28px}.legal-modal__head{padding:28px 68px 18px 20px}.legal-modal__head h3{font-size:21px;line-height:26px}.legal-modal__body{padding:20px 20px 28px}}
