:root{
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 3rem;
  --space-5: 4.5rem;

  --radius-2: 1.25rem;
  --radius-3: 1.75rem;

  --container: 75rem;
  --control-h: 3rem;
}

body.page-shop{ min-height: 100%; margin:0; color: var(--text, #0b3b40); }
html, body{ font-family: "Nunito", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
body, button, input, select, textarea{ font-family: inherit; }

#container{
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--space-3);
  display:block;
  gap:0;
  align-items:stretch;
}

header{ position:relative; z-index:9000; margin-top:var(--space-3); }
header #container{
  background: var(--header-bg, #ffffff);
  border-radius: var(--radius-2);
  padding: var(--space-2);
  border: 1px solid rgba(15,118,128,.10);
  box-shadow:0 18px 45px rgba(6,111,120,.08);
}
    .logo{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      flex-shrink:0;
      line-height:0;
    }
    .logo-img{
      width:140px;
      height:32px;
      display:block;
    }
    @keyframes logo-glow{
      0%{background-position:0% 50%;}
      50%{background-position:100% 50%;}
      100%{background-position:0% 50%;}
    }
    .top_header{
      width:100%;
      display:grid;
      grid-template-columns: auto 1fr auto;
      align-items:center;
      gap: var(--space-3);
      min-height: calc(var(--control-h) + .5rem);
    }
    .top-header__primary{
      display:flex;
      align-items:center;
      gap: var(--space-3);
      min-width: 0;
      flex:0 0 auto;
    }
    .top-header__primary-row{
      display:flex;
      align-items:center;
      gap: var(--space-2);
      min-width: 0;
      flex:0 0 auto;
    }
    .menu{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:1.25rem;
      min-width:0;
      justify-self:center;
    }
    .top-header__actions{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:wrap;
      gap: var(--space-2);
      min-width:0;
    }
    .header-tg{ display:inline-flex; align-items:center; justify-content:center; }
    .header-tg img{ width:2rem; height:2rem; }
    .header-tg__title{
      margin-left:.4rem;
      font-weight:800;
      color: var(--header-link,var(--main-2,#00889b));
      line-height:1;
    }
    .header-phone{
      display:flex;
      flex-direction:column;
      gap:.15rem;
      line-height:1.1;
      color: var(--header-phone-color, var(--main-2,#099d8c));
      font-weight:800;
    }
    .header-phone a{ text-decoration:none; color: inherit; }
    .header-phone span{ font-size:.75rem; font-weight:700; color: rgba(11,59,64,.65); }
    .header-phone--actions{ display:flex; }
    .menu-item{ position:relative; }
    .menu-link{ color:var(--main-2,#00889b); font-weight:700; text-decoration:none; }
    .menu-link:hover{ color:var(--main-1,#00b6ce); }
    .submenu{
      position:absolute; top:100%; left:0; min-width:220px;
      background:#fff; border-radius:1rem; box-shadow:0 8px 30px rgba(0,0,0,.12);
      padding:.5rem; visibility:hidden; opacity:0; pointer-events:none;
      transform:translateY(6px) scale(.98);
      transition:opacity .16s, transform .16s, visibility 0s linear .16s;
      z-index:12000;
    }
    .menu-item:hover>.submenu, .menu-item:focus-within>.submenu, .menu-item.open>.submenu{
      visibility:visible; opacity:1; pointer-events:auto; transform:none; transition-delay:0s;
    }
    .submenu-link{ display:block; padding:.6rem .9rem; border-radius:.75rem; text-decoration:none; color:var(--text,#222); font-weight:600; }
    .submenu-link:hover{ background:#f5f9fa; color:var(--main-2,#00889b); }
    .burger{
      display:none; align-items:center; gap:.5rem; background:#fff;
      border:1.5px solid #e5f2f2; border-radius:1rem; padding:.45rem .6rem;
      font-weight:800; color:var(--main-1,#099d8c); cursor:pointer;
    }
    .burger .lines{ width:18px; height:14px; position:relative; }
    .burger .lines::before, .burger .lines::after, .burger .line{
      content:""; position:absolute; left:0; right:0; height:2px; background:var(--main-1,#099d8c); border-radius:2px;
    }
    .burger .line{ top:50%; transform:translateY(-50%); }
    .burger .lines::before{ top:0; } .burger .lines::after{ bottom:0; }
    .call{
      display:inline-flex; align-items:center; justify-content:center; gap:.35rem;
      min-height: var(--control-h);
      padding:.7rem 1rem;
      border-radius:1rem;
      border:1.5px solid #e5f2f2;
      text-decoration:none;
      font-weight:800;
      color:var(--main-2,#099d8c);
      background:#fff;
      white-space:nowrap;
      transition:background .15s ease, transform .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease;
    }
    .call:hover{ background:#f1fbfb; color:var(--main-1,#00b6ce); }
    .call--primary{
      border-color: transparent;
      background: var(--cta-btn-bg, linear-gradient(45deg, var(--main-1,#00b6ce), var(--main-2,#00889b)));
      color:#fff;
      box-shadow:0 16px 36px rgba(11,179,196,.20);
    }
    .call--primary:hover{ transform: translateY(-1px); filter: brightness(.98); color:#fff; }
    .call--ghost{
      background: rgba(255,255,255,.75);
      border-color: rgba(15,118,128,.16);
      color: var(--header-text, #0b3b40);
    }
    .call--ghost:hover{ background: rgba(255,255,255,.92); color: var(--header-link-hover, #00b6ce); }
    .cart-wrap{ position:relative; }
    .auth-links{ display:flex; gap:var(--space-2); align-items:center; }
    .cart-btn{
      display:flex; align-items:center; justify-content:center; gap:.5rem;
      min-height: var(--control-h);
      background: rgba(255,255,255,.75); border:1.5px solid rgba(15,118,128,.16); border-radius:1rem;
      padding:.75rem 1rem;
      font-weight:800; color:var(--text,#0b3b40); cursor:pointer; text-decoration:none;
      white-space:nowrap;
    }
    .cart-badge{
      min-width:1.5rem; height:1.5rem; border-radius:999px; display:inline-flex; align-items:center; justify-content:center;
      font-size:.85rem; background:var(--main-1,#00b6ce); color:#fff; padding:0 .35rem;
    }
    .cart-dd{
      position:absolute; right:0; top:calc(100% + .5rem); width:min(92vw, 380px);
      background:#fff; border:1px solid #e5f2f2; border-radius:1rem; box-shadow:0 18px 40px rgba(0,0,0,.16);
      padding:.75rem; display:none; z-index:20000;
    }
    .cart-dd.open{ display:block; }
    .cart-item{ display:grid; grid-template-columns:1fr auto; gap:.4rem .75rem; align-items:center; padding:.35rem .25rem; border-radius:.5rem; }
    .cart-item:hover{ background:#f7fbfb; }
    .cart-title{ font-weight:700; color:var(--text,#0b3b40); }
    .cart-meta{ color:#475569; font-size:.92rem; }
    .cart-actions{ display:flex; gap:.4rem; align-items:center; }
    .cart-actions form{ margin:0; display:inline; }
    .cart-empty{ color:#64748b; text-align:center; padding:.5rem 0; }
    .cart-footer{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; border-top:1px dashed #e5f2f2; padding-top:.6rem; margin-top:.6rem; }
    .btn-primary, .btn-outline{
      display:inline-flex; align-items:center; justify-content:center;
      padding:.55rem 1.1rem; border-radius:1rem; font-weight:800; text-decoration:none;
      border:1.5px solid #e5f2f2; background:#fff; color:var(--text,#0b3b40); cursor:pointer;
      transition:background .15s ease, transform .15s ease, box-shadow .15s ease;
    }
    .btn-primary{ background:var(--main-1,#0bb3c4); border-color:var(--main-1,#0bb3c4); color:#fff; box-shadow:0 10px 24px rgba(11,179,196,.25); }
    .btn-primary:hover{ transform:translateY(-1px); box-shadow:0 14px 36px rgba(11,179,196,.25); }
    .btn-outline:hover{ background:#eefbfc; color:var(--main-1,#00b6ce); }
    .page-main{ padding: var(--space-4) 0 var(--space-4); }
    .page-main #container{ display:block; }
    .shop-header{ margin-bottom:2.5rem; text-align:center; }
    .shop-header h1{ margin:0 0 .5rem; font-size:clamp(28px, 4vw, 42px); font-weight:900; }
    .shop-header p{ color:#48626c; margin:0; }
    footer{
      margin-top: 0;
      padding: var(--space-4) 0 var(--space-4);
      background: transparent;
      position:relative;
      color:var(--footer-text,#0b3b40);
      border-top: 1px solid rgba(15,118,128,.10);
    }
    footer #container.footer-grid{
      display:flex;
      flex-direction:column;
      align-items:stretch;
      gap: var(--space-3);
      text-align:left;
      background: transparent;
      box-shadow:none;
      border-radius: 0;
      padding: 0 var(--space-3);
    }
    .qr-col{ display:none; }
    .footer-center{
      width:100%;
      display:flex;
      flex-direction:column;
      align-items:stretch;
      gap: var(--space-3);
    }
    .footer-cols{
      width:100%;
      display:grid;
      grid-template-columns: 1fr 1.2fr;
      gap: var(--space-3);
      align-items:start;
      max-width: var(--container);
    }
    .footer-col{ min-width:0; }
    .footer-social{
      display:flex;
      justify-content:flex-start;
      align-items:center;
      gap: var(--space-2);
      flex-wrap:wrap;
    }
    .footer-social a{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:44px;
      height:44px;
      border-radius:1rem;
      background:#fff;
      border:1px solid rgba(15,118,128,.16);
      box-shadow:0 10px 22px rgba(8,107,120,.12);
      transition:transform .18s ease, box-shadow .18s ease;
      text-decoration:none;
    }
    .footer-social a:hover{ transform:translateY(-2px); box-shadow:0 16px 28px rgba(8,107,120,.18); }
    .footer-social img{ width:100%; height:100%; object-fit:contain; border-radius:inherit; }
    .footer-contacts{
      margin-top: var(--space-2);
      font-size:.95rem;
      color:var(--footer-text,#334155);
      display:flex;
      gap:var(--space-2);
      flex-wrap:wrap;
      justify-content:flex-start;
      max-width: var(--container);
    }
    .footer-contacts a{ color:var(--footer-link,var(--main-2,#099d8c)); text-decoration:none; font-weight:700; }
    .footer-contacts a:hover{ text-decoration:underline; }

    .footer-nav-group{ display:flex; flex-direction:column; gap: var(--space-2); }
    .footer-nav-title{
      font-weight:900;
      letter-spacing:.02em;
      color: var(--footer-text, #0b3b40);
    }
    .footer-nav{ display:grid; gap: .6rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .footer-nav a{ color:var(--footer-link,var(--footer-text,#222)); text-decoration:none; font-weight:700; line-height:1.35; }
    .footer-nav a:hover{ text-decoration:underline; }
    .copy{
      color:#475569;
      margin-top: var(--space-2);
      padding-top: var(--space-2);
      border-top: 1px dashed rgba(15,118,128,.14);
      text-align:center;
    }

    /* Тарифы — общая раскладка по количеству */
    .tariffs-header{ text-align:center; max-width: 52rem; margin: 0 auto; display:flex; flex-direction:column; gap: var(--space-2); }
    .tariffs-header h1{ margin:0; font-size:clamp(2rem, 4vw, 2.8rem); font-weight:900; color:var(--tariffs-text,var(--text,#0b3b40)); }
    .tariffs-header p{ margin:0; color: rgba(11,59,64,.70); line-height:1.6; font-weight:700; }

    .tariff-toggle{
      display:inline-flex;
      align-items:center;
      gap:.4rem;
      background:#ffffff;
      border:1.5px solid #e6f2f3;
      border-radius:999px;
      padding:.35rem;
      box-shadow:0 10px 24px rgba(8,107,120,.08);
      margin: 0 auto;
    }
    .tariff-toggle__option{ position:relative; }
    .tariff-toggle__input{ position:absolute; inset:0; opacity:0; pointer-events:none; }
    .tariff-toggle__label{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:.45rem 1rem;
      border-radius:999px;
      font-weight:900;
      color:var(--header-link,var(--main-2,#00889b));
      cursor:pointer;
      transition:all .16s ease;
      min-width:84px;
      font-size:1rem;
    }
    .tariff-toggle__option.is-active .tariff-toggle__label,
    .tariff-toggle__input:checked + .tariff-toggle__label{
      background: var(--cta-btn-bg, linear-gradient(45deg, var(--main-1,#00b6ce), var(--main-2,#00889b)));
      color:#fff;
      box-shadow:0 10px 22px rgba(0,134,155,.25);
    }
    .tariff-toggle__input:disabled + .tariff-toggle__label,
    .tariff-toggle__option.is-disabled .tariff-toggle__label{ opacity:.45; cursor:not-allowed; }

    .tariff-list{
      display:grid;
      gap: var(--space-3);
      grid-template-columns: repeat(var(--tariff-cols, 1), minmax(0, 1fr));
      align-items:stretch;
    }
    .tariff-list[data-layout="two"]{ max-width: 60rem; margin: 0 auto; }
    .tariff-list[data-layout="three"]{ max-width: var(--container); margin: 0 auto; }
    .tariff-list[data-layout="grid2"]{ max-width: var(--container); margin: 0 auto; }
    .tariff-list[data-layout="one"],
    .tariff-list[data-layout="wide"],
    .tariff-list[data-layout="wide-media"]{ max-width: 60rem; margin: 0 auto; }
    .tariff-list[data-layout="three"]{ --tariff-cols: 3; }
    .tariff-list[data-layout="two"]{ --tariff-cols: 2; }
    .tariff-list[data-layout="grid2"]{ --tariff-cols: 2; }
    .tariff-list[data-layout="one"]{ --tariff-cols: 1; }
    .tariff-list[data-layout="wide"],
    .tariff-list[data-layout="wide-media"]{ --tariff-cols: 1; }
    .tariff-list[data-layout="wide"] > .tariff-card,
    .tariff-list[data-layout="wide-media"] > .tariff-card{
      display:grid;
      grid-template-columns: 240px minmax(0, 1fr);
      grid-template-areas:
        "media header"
        "media body"
        "media footer";
      gap: var(--space-3);
      align-items:start;
    }
    .tariff-list[data-layout="wide"] > .tariff-card > img,
    .tariff-list[data-layout="wide-media"] > .tariff-card > img{
      grid-area: media;
      width:100%;
      height:auto;
      border-radius: var(--radius-2);
      align-self:start;
    }
    .tariff-list[data-layout="wide"] > .tariff-card > img{ display:none; }
    .tariff-list[data-layout="wide-media"] > .tariff-card > img{ display:block; }
    .tariff-list[data-layout="wide"] .tariff-header,
    .tariff-list[data-layout="wide-media"] .tariff-header{ grid-area: header; }
    .tariff-list[data-layout="wide"] .tariff-body,
    .tariff-list[data-layout="wide-media"] .tariff-body{ grid-area: body; }
    .tariff-list[data-layout="wide"] .tariff-footer,
    .tariff-list[data-layout="wide-media"] .tariff-footer{ grid-area: footer; }
    @media (max-width: 900px){
      .tariff-list[data-layout="wide"] > .tariff-card,
      .tariff-list[data-layout="wide-media"] > .tariff-card{
        grid-template-columns: 1fr;
        grid-template-areas:
          "media"
          "header"
          "body"
          "footer";
      }
      .tariff-list[data-layout="wide"] > .tariff-card > img,
      .tariff-list[data-layout="wide-media"] > .tariff-card > img{ display:block; }
    }
    @media (max-width: 640px){
      .tariff-list{ display:flex; flex-direction:column; }
    }
    @media (max-width: 1100px){
      .tariff-list[data-layout="three"]{ --tariff-cols: 2; }
    }

    /* Карточка тарифа — общий компонент */
    .tariff-card{
      background:var(--tariffs-card-bg,var(--card-bg,#fff));
      border-radius: var(--radius-3);
      padding: var(--space-3);
      box-shadow:0 18px 40px rgba(8,107,120,.10);
      border:1px solid rgba(15,118,128,.10);
      display:flex;
      flex-direction:column;
      gap: var(--space-2);
      color:var(--tariffs-text,var(--text,#0b3b40));
      height:100%;
      min-width:0;
    }
    .tariff-header{ display:flex; flex-direction:column; gap:.35rem; }
    .tariff-card h2{ margin:0; font-size:1.45rem; font-weight:900; color:inherit; }
    .tariff-description{ color: rgba(11,59,64,.72); line-height:1.55; font-weight:700; }
    .tariff-body{ display:flex; flex-direction:column; gap:.75rem; }
    .tariff-features{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.5rem; }
    .tariff-features li{ color:var(--tariffs-text,var(--text,#0b3b40)); line-height:1.45; font-weight:700; }
    .tariff-features li::before{ content:"•"; color:var(--main-1,#0bb3c4); margin-right:.5rem; }
    .tariff-courses, .tariff-topics{
      font-size:.92rem;
      color:var(--tariffs-text,var(--text,#0b3b40));
      background:rgba(0,182,206,.08);
      border-radius:1rem;
      padding:.75rem 1rem;
      font-weight:800;
    }
    .tariff-topics{ background:rgba(13,148,136,.08); }
    .tariff-footer{ margin-top:auto; display:flex; flex-direction:column; gap:.75rem; }
    .tariff-price-block{ display:flex; align-items:baseline; gap:.6rem; margin-top:.15rem; }
    .tariff-price{ font-size:1.3rem; font-weight:900; color:var(--main-1,#0bb3c4); }
    .tariff-price-old{ font-size:1.05rem; font-weight:800; color:rgba(71,98,108,.75); text-decoration:line-through; }
    .tariff-actions{ display:flex; gap:.75rem; align-items:center; }
    .tariff-actions form{ margin:0; }
    .tariff-actions button{
      padding:.65rem 1.1rem;
      border-radius:1rem;
      border:1.5px solid var(--main-1,#0bb3c4);
      background: var(--main-1,#0bb3c4);
      color:#fff;
      font-weight:900;
      cursor:pointer;
      transition:filter .15s ease, transform .15s ease;
      white-space:nowrap;
    }
    .tariff-actions button:hover{ filter:brightness(.98); transform: translateY(-1px); }
    .tariff-actions .btn-outline{ white-space:nowrap; }
    @media (max-width: 900px){
      .footer-cols{ grid-template-columns: 1fr; gap: var(--space-3); }
      .footer-nav{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 520px){
      .footer-nav{ grid-template-columns: 1fr; }
    }
    .messages{ position:fixed; top:10px; left:0; right:0; display:flex; justify-content:center; z-index:12050; padding:0 1rem; }
    .messages .message{ background:#e8fff7; color:var(--main-2,#065f46); border:1px solid #b7f1d5; border-radius:.75rem; padding:.5rem 1rem; box-shadow:0 8px 24px rgba(0,0,0,.08); }
    .actual-programs{ position:sticky; top:var(--banner-top-desktop, 0px); z-index:10000; padding:0; margin:0; background:var(--banner-bg,var(--header-bg,#fff)); }
    .actual-programs #container{
      position:relative;
      width:100%;
      max-width:none;
      margin:0;
      border-radius:0;
      padding:0;
      background:var(--banner-bg,var(--header-bg,#fff));
      box-shadow:none;
    }
    .actual_header{ width:100%; height:auto; }
    .actual-img{ width:100%; height:auto; object-fit:cover; border-radius:0; display:block; }
    .actual-close{ position:absolute; top:6px; right:10px; border:1px solid #e6f0f0; background:#fff; border-radius:.5rem; padding:.25rem .55rem; font-size:18px; line-height:1; cursor:pointer; }
    .scrim{ position:fixed; inset:0; background:rgba(0,0,0,.35); opacity:0; visibility:hidden; transition:.15s; z-index:11990; }
    .scrim.show{ opacity:1; visibility:visible; }
    .mobile-nav{ position:fixed; inset:0 auto 0 0; width:86vw; max-width:360px; background:#f9feff; transform:translateX(-100%); transition:transform .2s ease; z-index:12000; box-shadow:0 0 2rem rgba(0,0,0,.15); display:flex; flex-direction:column; padding:18px; color:#0b3b40; }
    .mobile-nav.open{ transform:translateX(0); }
    .mnav-head{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:10px; }
    .mnav-title{ font-weight:900; color:var(--header-link,var(--main-2,#099d8c)); }
    .mnav-close{ background:#fff; border:1.5px solid #d7e7ea; border-radius:.5rem; padding:.45rem .6rem; cursor:pointer; color:#0b3b40; }
    .mnav-list{ display:flex; flex-direction:column; gap:6px; overflow:auto; padding-right:4px; }
    .mnav-item{ border:1px solid #d7e7ea; border-radius:1rem; background:#fff; }
    .mnav-parent, .mnav-link{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.8rem 1rem; font-weight:800; color:#0b3b40; text-decoration:none; }
    .mnav-parent{ cursor:pointer; }
    .mnav-children{ display:none; padding:.5rem .75rem 1rem; background:#f3f8fb; border-top:1px dashed #d7e7ea; }
    .mnav-item.open .mnav-children{ display:block; }
    .mnav-children a{ display:block; padding:.5rem .6rem; border-radius:.5rem; text-decoration:none; color:#1f2937; font-weight:700; }
    .mnav-children a:hover{ background:#eef9fb; color:var(--header-link-hover,var(--main-2,#00889b)); }
    .page-main{ padding: var(--space-4) 0; }
    @media (max-width: 768px){
      .actual-programs{ top:var(--banner-top-mobile, var(--banner-top-desktop, 0px)); }
    }
    [data-review-slider]{ --reviews-gap:1.25rem; --reviews-nav-space:48px; --reviews-visible:1; }
    @media (min-width:700px){ [data-review-slider]{ --reviews-visible:2; --reviews-nav-space:48px; } }
    @media (min-width:1024px){ [data-review-slider]{ --reviews-visible:3; --reviews-nav-space:48px; } }
    .testimonial-slider{ position:relative; overflow:hidden; padding:0 calc(var(--reviews-nav-space)); }
    .testimonial-track{ display:flex; gap:0; transition:transform .35s ease; margin:0; }
    .testimonial-slide{ flex:0 0 calc(100% / var(--reviews-visible)); display:flex; justify-content:center; padding:var(--space-2) 0; }
    .testimonial-card{
      width: min(42rem, calc(100vw - 6rem));
      background:var(--review-card-bg,var(--card-bg,#fff));
      border-radius: var(--radius-3);
      box-shadow:0 16px 40px rgba(8,107,120,.10);
      border:1px solid #eef2f2;
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
      gap:var(--space-2);
      padding:var(--space-3);
      color:var(--review-text,var(--text,#0b3b40));
    }
    .testimonial-text{
      color: rgba(11,59,64,.78);
      line-height:1.55;
      font-weight:700;
    }
    .testimonial-photo{ width:100%; height:auto; border-radius:16px; object-fit:cover; display:block; box-shadow:0 12px 28px rgba(8,107,120,.12); }
    .testimonial-meta{ display:flex; flex-direction:column; gap:.25rem; color:var(--review-text,var(--text,#0b3b40)); }
    .author-name{ font-weight:900; font-size:1.05rem; color:var(--review-text,var(--text,#0b3b40)); }
    .author-city{ color:rgba(100,116,139,.85); font-size:.95rem; }
    
    .testimonial-nav{ position:absolute; top:50%; transform:translateY(-50%); background:#fff; border:1.5px solid #e5f2f2; border-radius:50%; width:44px; height:44px; display:grid; place-items:center; font-size:24px; color:var(--main-2,#00889b); cursor:pointer; box-shadow:0 10px 24px rgba(8,107,120,.12); transition:background .2s ease, color .2s ease; }
    .testimonial-nav:hover{ background:var(--main-1,#00b6ce); color:#fff; }
    .testimonial-nav.prev{ left:8px; }
    .testimonial-nav.next{ right:8px; }
    .testimonial-dots{ display:flex; justify-content:center; gap:8px; margin-top:1.1rem; }
    
    
    @media (max-width:900px){ .testimonial-slider{ padding:0 36px; } }
    @media (max-width:700px){
      .testimonial-slider{ padding:0 24px; }
      .testimonial-nav{ width:36px; height:36px; font-size:20px; }
      .testimonial-nav.prev{ left:4px; }
      .testimonial-nav.next{ right:4px; }
    }
    @media (max-width:1024px){
      header #container{ padding: var(--space-2); border-radius:1rem; }
      .menu{ display:none; }
      .burger{ display:inline-flex; }
      .top_header{ display:flex; flex-wrap:wrap; gap: var(--space-2); }
      .top-header__actions{ justify-content:flex-end; flex:1 1 100%; width:100%; flex-wrap:wrap; }
      .header-phone--actions{ display:none; }
      .call{ width:auto; }
    }
    @media (max-width:768px){
      header{ margin-top:var(--header-top-space); padding:0; }
      header #container{ width:100%; margin:0 auto; padding:1.25rem; border-radius:1.25rem; }
      .call{
        width:auto;
        justify-content:center;
        padding:.65rem 1rem;
        font-size:15px;
        border-radius:.9rem;
        min-width:0;
      }
      .auth-links{ width:100%; justify-content:center; }
      .cart-btn{ padding:.45rem .6rem; }
      .top_header{ gap:1.25rem; }
    }
    @media (max-width:700px){
      .call,
      .btn-outline{
        padding:.35rem .6rem;
        font-size:.9rem;
        border-radius:.6rem;
      }
      .cart-btn{ padding:.35rem .5rem; }
    }
    @media (max-width:640px){
      header{ margin-top:1.5rem; }
      .shop-header h1{ font-size:28px; }
      .btn-primary, .btn-outline{ width:100%; justify-content:center; }
    }
