/* =========================================================
   Sportalya — Custom Styles
   Base: 17px, Rubik + Public Sans
   ========================================================= */

/* ---------- Переменные ---------- */
:root{
  --sa-bg:#f7faf9;
  --sa-ink:#0b1720;
  --sa-mute:#5b6b75;
  --sa-line:#e2ece8;

  --sa-brand:#0ea5a4;      /* teal */
  --sa-brand-d:#0b7b7a;
  --sa-accent:#ff6a3d;     /* coral */

  --sa-card:#ffffff;
  --sa-radius:16px;
  --sa-shadow:0 14px 34px rgba(0,0,0,.08);
}

/* ---------- База / Reset ---------- */
html{ font-size:17px; }
*,*::before,*::after{ box-sizing:border-box; }
body.sa-body{
  margin:0; color:var(--sa-ink); background:var(--sa-bg);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  font-family:"Public Sans",system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
  line-height:1.55;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; text-decoration:none; transition:color .15s ease, background-color .15s ease, opacity .15s ease; }
:focus-visible{
  outline:3px solid rgba(14,165,164,.45);
  outline-offset:2px;
  border-radius:10px;
}
::selection{ background:rgba(14,165,164,.18); }

/* ---------- Хелперы лэйаута ---------- */
.sa-wrap{ width:min(1120px, 92vw); margin-inline:auto; }
.sa-section{ padding:44px 0; }
.sa-h2{
  font-family:"Rubik", sans-serif; font-weight:800;
  font-size: clamp(1.4rem, 1rem + 1.6vw, 2rem); margin:0 0 8px;
}
.sa-h2--light{ color:#fff; }
.sa-h3{ font-family:"Rubik", sans-serif; font-size:1.35rem; margin:0 0 6px; }
.sa-h5{ font-weight:800; margin:0; }
.sa-lead{ color:var(--sa-mute); }
.sa-lead--light{ color:#e7fffe; opacity:.95; }

/* =========================================================
   Header / Navigation
   ========================================================= */
.sa-header{
  position:sticky; top:0; z-index:50;
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.65));
  border-bottom:1px solid rgba(0,0,0,.06);
  backdrop-filter:saturate(140%) blur(6px);
  transition: box-shadow .2s ease;
}
.sa-header.is-scrolled{ box-shadow: 0 10px 24px rgba(0,0,0,.06); }

.sa-nav{
  height:64px; display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.sa-brand{ display:flex; align-items:center; gap:10px; }
.sa-mark{
  width:34px; height:34px; display:grid; place-items:center; border-radius:10px;
  background:linear-gradient(135deg, var(--sa-brand), #18cabf); color:#fff;
  box-shadow:inset 0 0 12px rgba(255,255,255,.24), 0 6px 14px rgba(14,165,164,.35);
}
.sa-word{ font-family:"Rubik", sans-serif; font-weight:800; letter-spacing:.06em; color:var(--sa-ink); }

.sa-menu{ display:flex; gap:18px; }
.sa-menu a{ font-weight:700; padding:6px 2px; border-radius:8px; }
.sa-menu a:hover{ color:var(--sa-brand); }

.sa-burger{
  display:none; border:1px solid #dbe7e3; background:#fff;
  border-radius:10px; width:40px; height:40px;
}
.sa-drawer{
  display:flex; flex-direction:column; padding:10px 16px;
  border-top:1px solid var(--sa-line); background:#ffffff;
}
.sa-drawer a{ padding:8px 2px; font-weight:700; }

@media (max-width: 860px){
  .sa-menu{ display:none; }
  .sa-burger{ display:inline-grid; place-items:center; }
}

/* =========================================================
   Hero
   ========================================================= */
.sa-hero{ position:relative; min-height:64svh; display:grid; place-items:center; overflow:hidden; }
.sa-hero-pic{ position:absolute; inset:0; z-index:-2; }
.sa-hero-pic img{
  width:100%; height:100%; object-fit:cover; object-position:center;
  filter:brightness(.9) contrast(1.05);
}
.sa-hero-tint{
  position:absolute; inset:0; z-index:-1;
  background:
    repeating-linear-gradient(45deg, rgba(255,255,255,.08) 0 2px, transparent 2px 8px),
    radial-gradient(1200px 420px at 10% -10%, rgba(255,255,255,.12), transparent 60%),
    linear-gradient(180deg, rgba(6,26,26,.70), rgba(6,26,26,.35));
}
.sa-hero-inner{ padding:44px 0; color:#fff; }

/* Бейдж (обновлено — яркая версия) */
.sa-hero-badge{
  display:inline-flex; align-items:center; gap:8px;
  font-size:.8rem; font-weight:800; text-transform:uppercase;
  padding:.4rem .7rem; border-radius:999px;
  background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.35);
}
.sa-hero-badge--pop{
  background: linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.06)), 
              radial-gradient(18px 18px at 0% 100%, rgba(255,106,61,.55), transparent 60%);
  border-color: rgba(255,255,255,.7);
  box-shadow: 0 10px 24px rgba(0,0,0,.15),
              0 0 0 4px rgba(255,106,61,.18),
              inset 0 0 12px rgba(255,255,255,.25);
  letter-spacing:.02em;
  backdrop-filter: blur(4px) saturate(150%);
}
.sa-hero-badge--pop i{ color:#ffd19f; filter:saturate(120%); }

.sa-hero-title{
  font-family:"Rubik", sans-serif; font-weight:800;
  font-size: clamp(2rem, 1.5rem + 2.2vw, 3.2rem); margin:14px 0 6px;
}
.sa-hero-sub{ color:#f1fffe; opacity:.95; max-width:60ch; }
.sa-actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }

/* Кнопки */
.sa-btn{
  display:inline-flex; align-items:center; gap:10px;
  font-weight:900; border-radius:14px;
  padding:.9rem 1.2rem; border:1px solid transparent; transition:.15s ease;
}
.sa-btn--solid{
  background:#fff; color:#093235;
  box-shadow:0 10px 22px rgba(31,111,229,0), 0 10px 22px rgba(14,165,164,.22);
}
.sa-btn--solid:hover{ transform:translateY(-1px); }
.sa-btn--ghost{
  background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.35);
}
.sa-btn--ghost:hover{ background:rgba(255,255,255,.14); transform:translateY(-1px); }
.sa-btn--line{ background:#fff; border-color:#dfe7ff; color:#1e2a57; }
.sa-btn--line:hover{ background:#f5f8ff; }

/* =========================================================
   Sélection (Betsson + картинка)
   ========================================================= */
.sa-callout{
  background:var(--sa-card); border:1px solid var(--sa-line);
  border-radius:var(--sa-radius); box-shadow:var(--sa-shadow); padding:18px;
}
.sa-callout-head{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.sa-chip{
  display:inline-flex; align-items:center; gap:6px; font-size:.8rem; font-weight:900; color:#0a4b4b;
  background:linear-gradient(180deg,#dcfdfb,#b7f0ed); border:1px solid #9be4df; padding:.35rem .6rem; border-radius:999px;
}
.sa-callout-body{ display:grid; grid-template-columns: 1.35fr .65fr; gap:16px; margin-top:14px; }
@media (max-width:920px){ .sa-callout-body{ grid-template-columns:1fr; } }

.sa-points{ margin:0; padding-left:0; list-style:none; display:grid; gap:8px; }
.sa-points li{ display:flex; gap:8px; align-items:flex-start; }
.sa-points i{ color:var(--sa-brand); margin-top:.2rem; }

.sa-cta{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-top:10px; }
.sa-score{
  font-weight:900; color:#183e3e; background:#fff3ee;
  border:1px solid #ffd4c6; padding:.4rem .6rem; border-radius:12px;
}

/* Лого оператора + картинка в секции */
.sa-op{ display:inline-flex; align-items:center; gap:10px; }
.sa-oplogo{ height:26px; width:auto; vertical-align:middle; display:inline-block; }
.sa-operator-figure{ margin:12px 0 0; }
.sa-operator-figure img{
  width:100%; height:auto; border-radius:12px;
  border:1px solid #e2ece8; box-shadow:0 10px 24px rgba(0,0,0,.06);
}
.sa-operator-figure figcaption{ margin-top:6px; font-size:.9rem; color:var(--sa-mute); }

/* Боковая панель «Détails rapides» */
.sa-callout-aside{
  background:#f3fbfa; border:1px dashed #cfeae7; border-radius:12px; padding:14px;
}
.sa-kv{ margin:0; display:grid; gap:10px; }
.sa-kv div{ display:flex; gap:8px; }
.sa-kv dt{ width:140px; color:var(--sa-mute); }
.sa-kv dd{ margin:0; }
.sa-note{ color:var(--sa-mute); font-size:.95rem; }

/* =========================================================
   Critères (мозаика на текстурном фоне)
   ========================================================= */
.sa-criteria{
  position:relative; color:#fff;
  background:
    radial-gradient(1000px 360px at 12% -10%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(180deg, #052325, #0a3a3c);
}
.sa-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; margin-top:14px; }
@media (max-width:920px){ .sa-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .sa-grid{ grid-template-columns:1fr; } }

.sa-card{
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.35);
  border-radius:14px; padding:14px;
  backdrop-filter: blur(6px) saturate(130%); -webkit-backdrop-filter: blur(6px) saturate(130%);
  box-shadow: 0 14px 34px rgba(0,0,0,.28);
}
.sa-ic{
  width:40px; height:40px; border-radius:10px; display:grid; place-items:center;
  background:linear-gradient(135deg, rgba(255,255,255,.35), rgba(255,255,255,.18)); margin-bottom:8px;
}

/* =========================================================
   Panorama
   ========================================================= */
.sa-row{
  display:grid; grid-template-columns: 1.2fr 1fr auto; align-items:center; gap:12px;
  background:#fff; border:1px solid var(--sa-line); border-radius:14px; padding:14px; box-shadow:var(--sa-shadow);
}
@media (max-width:920px){ .sa-row{ grid-template-columns:1fr; } }
.sa-row--featured{ position:relative; }
.sa-row--featured::before{
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background:linear-gradient(180deg, var(--sa-accent), #ff8a63);
  border-top-left-radius:14px; border-bottom-left-radius:14px;
}
.sa-row-main{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.sa-badge{
  background:#f5f8ff; border:1px solid #dfe7ff; padding:.35rem .6rem; border-radius:999px;
  font-weight:800; color:#243158;
}
.sa-pills{ display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.sa-pill{
  display:inline-flex; align-items:center; gap:8px; padding:.45rem .7rem; border-radius:999px;
  background:#f7faf9; border:1px solid #e2ece8; color:#183e3e; font-weight:800;
}
.sa-pill i{ color:var(--sa-brand); }
.sa-row-cta{ display:flex; align-items:center; gap:10px; }
.sa-score-chip{
  font-weight:900; color:#183e3e; background:#fff3ee; border:1px solid #ffd4c6;
  padding:.38rem .6rem; border-radius:12px;
}

/* =========================================================
   Avis (отзывы без фото)
   ========================================================= */
#avis .sa-grid{ align-items:stretch; }
#avis .sa-card{
  background:#fff; border:1px solid var(--sa-line); color:var(--sa-ink);
  box-shadow:var(--sa-shadow);
}
#avis .sa-card .sa-ic{
  background:linear-gradient(135deg, rgba(14,165,164,.12), rgba(14,165,164,.06));
  color:var(--sa-brand);
}
#avis .sa-card p[aria-label], 
#avis .sa-card [title*="Note"]{
  margin:.4rem 0 0; color:#ffae53;
}
#avis .sa-card [title*="Note"] .fa-regular.fa-star{ color:#ccd5dd; }

/* =========================================================
   Contact
   ========================================================= */
.sa-contact{
  background:
    radial-gradient(1000px 360px at 85% -10%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(180deg, #f8fffe, #ecfffd);
  border-top:1px solid #e8f4f2;
}
.sa-split{ display:grid; grid-template-columns: 1.1fr .9fr; gap:14px; }
@media (max-width:920px){ .sa-split{ grid-template-columns:1fr; } }

.sa-form-card, .sa-info-card{
  background:#fff; border:1px solid var(--sa-line); border-radius:var(--sa-radius); box-shadow:var(--sa-shadow); padding:18px;
}
.sa-form label{ display:block; font-weight:700; margin-top:8px; }
.sa-form input, .sa-form textarea{
  width:100%; margin-top:6px; border:1px solid #dbe7e3; border-radius:12px; padding:.7rem .8rem; font:inherit; color:var(--sa-ink);
  background:#fff;
}
.sa-form input::placeholder, .sa-form textarea::placeholder{ color:#95a7b1; }
.sa-form input:focus, .sa-form textarea:focus{
  outline:none; border-color:#ffd4c6; box-shadow:0 0 0 8px rgba(255,106,61,.12);
}
.sa-links{ margin:8px 0 0; padding-left:18px; }
.sa-links a{ color:var(--sa-ink); text-decoration:underline; text-underline-offset:3px; }
.sa-links a:hover{ color:var(--sa-brand-d); }
.sa-muted{ color:var(--sa-mute); }

/* =========================================================
   Logos + Prévention (оставлено без изменений)
   ========================================================= */
.compliance-prevention{
  position: relative;
  width: 100%;
  padding: 22px 16px;
  color: #fff;
  background:
    radial-gradient(900px 320px at 12% -10%, rgba(255,255,255,.07), transparent 60%),
    linear-gradient(180deg, #0e1638, #1b255b);
  border-top: 1px solid rgba(255,255,255,.12);
  border-bottom: 1px solid rgba(0,0,0,.25);
  box-shadow: 0 16px 46px rgba(0,0,0,.18) inset;
}
.compliance-prevention .logos-line{
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
  justify-content: center;
  margin: 0 0 12px;
}
.compliance-prevention .logos-line img{
  height: 70px;
  width: auto;
  display: block;
  filter: brightness(1.12) contrast(1.08);
}
.compliance-prevention h3{
  margin: 4px 0 8px;
  text-align: center;
  font-size: 1.05rem;
  letter-spacing: .06em;
}
.compliance-prevention p{
  margin: 0 auto;
  text-align: center;
  max-width: 1000px;
  line-height: 1.65;
  color: #eef3ff;
}
@media (max-width: 560px){
  .compliance-prevention{ padding: 18px 14px; }
  .compliance-prevention .logos-line img{ height: 24px; }
  .compliance-prevention h3{ font-size: 1rem; }
}

/* ---------- Прочее ---------- */
@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; scroll-behavior:auto !important; }
}
/* добавьте в начало style.css (после reset) */
[hidden] { display: none !important; }

/* дроуэр скрыт по умолчанию; показываем только когда есть класс */
.sa-drawer { display: none; }
.sa-drawer.is-open { display: flex; }
.sa-hero-badge--pop{
  border-width:2px;
  transform:translateZ(0);
}
.sa-hero-badge.sa-hero-badge--pop {
    background: linear-gradient(135deg, rgb(255 5 5), rgba(255, 255, 255, .06)), radial-gradient(18px 18px at 0% 100%, rgb(255 0 0), transparent 60%)!important;
    border-color: rgba(255, 255, 255, .7);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .15), 0 0 0 4px rgba(255, 106, 61, .18), inset 0 0 12px rgba(255, 255, 255, .25);
    color: #fff;
    letter-spacing: .02em;
    backdrop-filter: blur(4px) saturate(150%);
}
/* --- AVIS: фон картинкой + оверлей --- */
.sa-avis{ position:relative; overflow:hidden; }
.sa-avis .sa-avis-bg{ position:absolute; inset:0; z-index:-2; }
.sa-avis .sa-avis-bg picture,
.sa-avis .sa-avis-bg img{
  width:100%; height:100%; object-fit:cover; display:block;
  filter: brightness(.9) contrast(1.05);
}
/* полупрозрачный градиент поверх фото, чтобы текст/карточки читались */
.sa-avis::before{
  content:""; position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(900px 320px at 10% -10%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(6,26,26,.55), rgba(6,26,26,.35)),
    repeating-linear-gradient(45deg, rgba(255,255,255,.06) 0 2px, transparent 2px 8px);
}

/* заголовок/подзаголовок поверх фото — светлые */
.sa-avis .sa-h2{ color:#fff; text-shadow:0 2px 8px rgba(0,0,0,.25); }
.sa-avis .sa-lead{ color:#eaffff; }

/* карточки отзывов — белый фон и тёмные шрифты (поверх фото) */
.sa-avis .sa-card{
  background:#fff; color:var(--sa-ink);
  border:1px solid var(--sa-line); border-radius:14px; box-shadow:var(--sa-shadow);
}
.sa-avis .sa-card .sa-ic{
  background:linear-gradient(135deg, rgba(14,165,164,.12), rgba(14,165,164,.06));
  color:var(--sa-brand);
}
.sa-avis .sa-card [title*="Note"]{ color:#ffae53; }
.sa-avis .sa-card .fa-regular.fa-star{ color:#cfd7dd; }
/* --- Footer: 3 колонки + стили рассылки --- */
.sa-footer .sa-footer-grid{
  display:grid;
  grid-template-columns: 1.1fr 1fr .9fr; /* бренд | рассылка | ссылки */
  gap:14px; padding:22px 0;
}
@media (max-width: 860px){
  .sa-footer .sa-footer-grid{ grid-template-columns:1fr; }
}

.sa-foot-brand .sa-brand .sa-word{ color:#fff; }
.sa-foot-note{ color:#bcd5d2; margin:.15rem 0 .6rem; }
.sa-foot-mini{ display:block; color:#9fc4c0; margin-top:.35rem; }
.sa-foot-mini a{ color:#e6f2f1; text-decoration:underline; text-underline-offset:3px; }

/* Форма подписки */
.sa-news-form{
  display:flex; align-items:center; gap:8px; margin:.25rem 0 0;
}
.sa-input{
  flex:1 1 auto;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08); color:#e6f2f1;
  border-radius:12px; padding:.7rem .8rem;
}
.sa-input::placeholder{ color:#cfe1df; }
.sa-input:focus{
  outline:none; border-color:#ffd4c6;
  box-shadow:0 0 0 8px rgba(255,106,61,.12);
  background:rgba(255,255,255,.12);
}
.sa-btn--nl{
  white-space:nowrap;
  background:#fff; color:#093235;
  border-radius:12px; padding:.7rem 1rem;
}
.sa-btn--nl i{ margin-right:.45rem; }

/* Доступность: скрытый label */
.visually-hidden{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
/* ===== Footer — DARK THEME override ===== */
.sa-footer{
  background:
    radial-gradient(900px 380px at -10% 0%, rgba(255,255,255,.05), transparent 60%),
    linear-gradient(180deg, #070b0f, #0b141a 60%, #0e1b21);
  color:#eaf4f3;
  border-top:1px solid rgba(255,255,255,.06);
}
.sa-footer .sa-footer-grid{
  grid-template-columns: 1.1fr 1fr .9fr;
  gap:16px; padding:26px 0;
}
@media (max-width:860px){ .sa-footer .sa-footer-grid{ grid-template-columns:1fr; } }

.sa-foot-brand .sa-brand .sa-word{ color:#ffffff; }
.sa-mark{
  background:linear-gradient(135deg,#0ea5a4,#18cabf);
  box-shadow:inset 0 0 12px rgba(255,255,255,.25), 0 6px 14px rgba(14,165,164,.35);
}

.sa-foot-links{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.sa-foot-links a{
  color:#e6f2f1;
  text-decoration:none;
}
.sa-foot-links a:hover{
  color:#ffffff;
  text-decoration:underline;
  text-underline-offset:3px;
}

.sa-copy{ color:#bcd5d2; margin:.4rem 0 0; }
.sa-foot-note{ color:#a7c3c0; }
.sa-foot-mini{ color:#9fc4c0; }
.sa-foot-mini a{ color:#e6f2f1; text-decoration:underline; text-underline-offset:3px; }

/* Newsletter form на тёмном фоне */
.sa-news-form{ display:flex; align-items:center; gap:10px; margin:.35rem 0 0; }
.sa-input{
  flex:1 1 auto;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
  color:#f4fbfa;
  border-radius:12px;
  padding:.75rem .85rem;
}
.sa-input::placeholder{ color:#c8d8d6; }
.sa-input:focus{
  outline:none; border-color:#ffd4c6;
  box-shadow:0 0 0 8px rgba(255,106,61,.12);
  background:rgba(255,255,255,.12);
}
.sa-btn--nl{
  background:#ffffff; color:#0b141a;
  border:1px solid #e6eef4;
  border-radius:12px; padding:.75rem 1rem; font-weight:900;
}
.sa-btn--nl:hover{ background:#f5f8ff; }

/* Нижняя плашка с дисклеймером */
.sa-legal{
  margin:0; padding:14px 16px 20px;
  text-align:center;
  color:#cfe1df;
  background:rgba(0,0,0,.28);
  border-top:1px solid rgba(255,255,255,.06);
}
  /* -------- Banner layout -------- */
  #sa-cookie[hidden]{ display:none !important; }
  .sa-cookie{
    position:fixed; inset-inline:1rem; bottom:1rem; z-index:9999;
    display:flex; justify-content:center;
  }
  .sa-cookie__inner{
    width:min(960px, 100%);
    background:#fff; color:#0b1720;
    border:1px solid #e2ece8; border-radius:16px;
    box-shadow:0 16px 38px rgba(0,0,0,.14);
    padding:14px;
  }
  /* адаптация под тёмный футер/страницу */
  @media (prefers-color-scheme: dark){
    .sa-cookie__inner{
      background:#0f171d; color:#eaf4f3; border-color:rgba(255,255,255,.14);
    }
    .sa-cookie__link{ color:#bfe8e5; }
  }

  .sa-cookie__content{ display:grid; gap:.5rem; }
  .sa-cookie__title{ margin:0; font:800 1.05rem/1.2 "Rubik", system-ui, sans-serif; }
  .sa-cookie__text{ margin:0; line-height:1.55; }
  .sa-cookie__link{ color:#0ea5a4; text-decoration:underline; text-underline-offset:3px; }

  .sa-cookie__details{ margin:.25rem 0 0; }
  .sa-cookie__summary{
    cursor:pointer; user-select:none; display:inline-flex; align-items:center; gap:.5rem;
    padding:.35rem .6rem; border-radius:10px;
    background:#f2f8f7; border:1px solid #e2ece8; color:#0b1720; font-weight:700;
  }
  .sa-cookie__prefs{ margin:.6rem 0 .2rem; display:grid; gap:.4rem; }
  .sa-cookie__check{ display:flex; align-items:center; gap:.5rem; font-weight:600; }
  .sa-cookie__check input{ width:16px; height:16px; accent-color:#0ea5a4; }

  .sa-cookie__actions{
    display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.8rem; justify-content:flex-end;
  }

  /* Кнопки — используем стили сайта (fallback на случай отсутствия) */
  .sa-btn{
    display:inline-flex; align-items:center; gap:.5rem; cursor:pointer;
    border-radius:12px; border:1px solid transparent; padding:.65rem .9rem; font-weight:800;
  }
  .sa-btn--solid{ background:#0ea5a4; color:#fff; }
  .sa-btn--solid:hover{ filter:brightness(1.05); }
  .sa-btn--ghost{ background:#f1f5f4; color:#0b1720; border-color:#e2ece8; }
  .sa-btn--ghost:hover{ background:#eaf2f0; }
  .sa-btn--line{ background:#fff; color:#1e2a57; border-color:#dfe7ff; }
  .sa-btn--line:hover{ background:#f5f8ff; }

  @media (max-width: 560px){
    .sa-cookie{ inset-inline:.75rem; bottom:.75rem; }
    .sa-cookie__actions{ justify-content:stretch; }
    .sa-btn{ flex:1 1 auto; text-align:center; }
  }

/* альтернатива: авто-перенос без медиа */
.sa-avis .sa-grid--avis{
  display:grid;
  gap:12px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
 @media (max-width: 560px){
  .sa-grid {
        grid-template-columns: 1fr!important;
    }
    .sa-cookie{ inset-inline:.75rem; bottom:.75rem; }
    .sa-cookie__actions{ justify-content:stretch; }
    .sa-btn{ flex:1 1 auto; text-align:center; }
  }