/* ======================================
   assets/css/style.css (полный, обновлённый)
   ====================================== */

/* Цветовая тема: основной текст — синий */
:root{
  --bg:#f5ede0;        /* фон сайта и header */
  --header-bg:#f5ede0;
  --footer-bg:#444b91; /* фон footer (было #00437e) */
  --text:#444b91;      /* основной цвет текста — новый (#444b91) */
  --muted:#35679b;     /* приглушённый синий для мета-текста */

  --card-bg:#ffffff;   /* белый фон карточек */
  --card-border:rgba(0,67,126,.12);
  --card-shadow:0 8px 22px rgba(0,0,0,.08);
  --card-shadow-hover:0 16px 34px rgba(0,0,0,.14);

  --radius:18px;
  --accent:#1b75bb;

  --ease-out: cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Roboto Condensed",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;display:block}

.container{
  width:100%;
  max-width:1200px;
  margin-inline:auto;
  padding:0 16px;
}

/* Header */
.site-header{
  position:sticky; top:0; inset-inline:0; z-index:1000;
  background:var(--header-bg);
  transition:box-shadow .25s ease;
}
.site-header.with-shadow{ box-shadow:0 6px 20px rgba(0,0,0,0.12); }
.header-inner{ display:flex; align-items:center; gap:24px; padding:12px 0; }

.nav ul{ display:flex; gap:20px; list-style:none; margin:0; padding:0; }
.nav a{
  display:inline-block; padding:8px 10px;
  color:var(--text); text-decoration:none; font-weight:600; letter-spacing:.02em;
}
.nav a:hover{ opacity:.85 }

.burger{ display:none; width:40px; height:40px; border:0; background:transparent; cursor:pointer; }
.burger span{ display:block; width:22px; height:2px; background:#333; margin:5px auto; }

@media (max-width:900px){
  .burger{ display:flex; align-items:center; justify-content:center; margin-left:auto }
  .nav{
    position:fixed; inset:64px 16px auto 16px; background:var(--bg); border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.15); transform:translateY(-20px); opacity:0;
    pointer-events:none; transition:all .2s ease;
  }
  .nav ul{ flex-direction:column; padding:12px }
  .nav[data-open="true"]{ transform:translateY(0); opacity:1; pointer-events:auto }
}

/* Hero / Slider */
.hero{ padding:12px 0 8px }
.slider{ position:relative; border-radius:16px; overflow:hidden }
.slides{ position:relative; height:320px }
.slide{
  position:absolute; inset:0;
  opacity:0; transform:scale(1.02);
  transition:opacity .6s, transform .6s;
  background:#f5ede0; /* подложка под contain */
}
.slide.is-active{ opacity:1; transform:scale(1) }
/* Чтобы не было обрезки — используем contain */
.slide img{ width:100%; height:100%; object-fit:contain; background:#f5ede0 }
.caption{
  position:absolute; left:16px; bottom:16px;
  background:rgba(0,0,0,.45); color:#fff;
  padding:8px 12px; border-radius:8px; font-weight:600;
}
/* На телефонах скрываем подпись слайда */
@media (max-width:900px){
  .caption{ display:none; }
}

.ctrl{
  position:absolute; top:50%; transform:translateY(-50%);
  width:40px; height:40px; border-radius:50%;
  border:0; background:rgba(255,255,255,.8); box-shadow:0 4px 14px rgba(0,0,0,.2);
  font-size:22px; line-height:40px; cursor:pointer;
}
.ctrl:hover{ background:#fff }
.prev{ left:12px } .next{ right:12px }
.dots{ position:absolute; left:50%; bottom:12px; transform:translateX(-50%); display:flex; gap:8px }
.dots button{ width:8px; height:8px; border-radius:50%; border:0; background:rgba(255,255,255,.6); cursor:pointer }
.dots button.is-active{ background:#fff }

/* Section title */
.section-products{ padding:36px 0 56px }
.section-title{
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: .03em;
  text-transform: uppercase;
  margin: 0 auto 28px;
  padding-bottom: 12px;
  text-align: center;
  width: 100%;
}
.section-title::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 120px;
  height: 4px;
  background: linear-gradient(90deg, #444b91 0%, #5b62a8 100%); /* обновлён под новый цвет */
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(68,75,145,0.3);
}
.section-title::before{
  content: "✦";
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 18px;
  color: #5b62a8; /* акцент под новый цвет */
  opacity: 0.8;
}
@media (max-width:768px){
  .section-title{ font-size: 28px; padding-bottom: 10px; }
  .section-title::after{ width: 80px; height: 3px; }
  .section-title::before{ top: -10px; font-size: 14px; }
}

/* Панели групп продуктов */
.products-group{
  background:rgba(255,255,255,0.8);
  border:1px solid rgba(0,0,0,.06);
  border-radius:20px;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
  padding:16px;
  margin:20px 0;
}
.group-head{
  display:flex;
  align-items:center;
  gap:10px;
  padding:4px 8px 10px;
  border-bottom:1px dashed rgba(0,0,0,.08);
  margin-bottom:12px;
}
.group-title{
  font-size:20px;
  margin:0;
  color:var(--text);
  letter-spacing:.01em;
  position:relative;
  padding-left:0; /* было 28px — убрали отступ под «коробочку» */
}
/* Убираем цветные «коробочки» перед типом фасовки */
.group-title::before{
  content:'';
  display:none; /* скрываем декоративный квадратик */
  position:absolute; left:0; top:50%;
  transform:translateY(-50%);
  width:18px; height:18px; border-radius:4px;
}

/* Цвет текста типа фасовки по типу группы */
.products-group.group-jar .group-title{ color:#5b62a8; } /* банке — синий */
.products-group.group-box .group-title{ color:#2a9d6f; } /* коробке — зелёный */
.products-group.group-bag .group-title{ color:#e3b04b; } /* пакете — оранжевый */

/* Грид карточек: центрирование и авто-колонки */
.products-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 280px));
  justify-content: center;
  gap:20px;
}

/* Карточка товара — улучшенное оформление */
.product-card{
  position: relative;
  isolation: isolate;
  width:100%;
  max-width:280px;
  margin:0 auto;

  background: rgba(255,255,255,0.85);
  border:1px solid var(--card-border);
  border-radius: var(--radius);
  box-shadow: var(--card-shadow);
  backdrop-filter: saturate(1.08) blur(2px);

  transform: translateY(0) scale(1);
  backface-visibility: hidden;
  will-change: transform, box-shadow;

  transition:
    transform 240ms var(--ease-out),
    box-shadow 240ms var(--ease-out);
}
.product-card::before{
  content:"";
  position:absolute; inset:0;
  border-radius:var(--radius);
  padding:1px;
  background: linear-gradient(120deg, rgba(0,67,126,.18), rgba(27,117,187,.12));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events:none;
}
.product-card::after{
  content:"";
  position:absolute; top:10px; right:10px;
  width: 12px; height: 12px; border-radius:50%;
  background: linear-gradient(135deg,#1b75bb,#00437e);
  box-shadow: 0 2px 6px rgba(0,0,0,.22);
  opacity: .85;
}

/* Медиа-блок карточки */
.card-media{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius: 14px;
  background: linear-gradient(180deg,#ffffff 0%, #f2f6fb 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 10px 26px rgba(0,0,0,.06);
}
.card-media img{
  width:100%; height:100%; object-fit:contain; background:#fff;
  filter: drop-shadow(0 6px 12px rgba(0,0,0,.08));
}
.card-media::after{
  content:"";
  position:absolute; left:50%; bottom:0; transform:translateX(-50%);
  width: 60%; height: 6px; border-radius: 8px 8px 0 0;
  background: linear-gradient(90deg, #00437e, #1b75bb);
  opacity: .12;
}

/* Тело карточки */
.card-link{ color:inherit; text-decoration:none; display:block; height:100% }
.card-body{
  display:grid;
  grid-template-rows:auto auto auto;
  gap:10px;
  padding:16px 16px 18px;
  text-align:center;
}
.card-title{
  margin:0; font-size:19px; font-weight:700; letter-spacing:.015em;
  line-height:1.25;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:calc(1.25em * 2);
}
.card-meta{
  margin:0; color:#444b91; opacity:.95; font-size:14px; line-height:1.2;
  display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden;
  min-height:calc(1.2em * 1);
}
.card-cta{
  justify-self:center;
  display:inline-flex; align-items:center; gap:8px;
  font-weight:700; letter-spacing:.02em;
  color:#444b91;
  border:1px solid rgba(68,75,145,.22);
  border-radius:999px;
  padding:10px 16px;
  background:#fff;
  box-shadow: 0 6px 12px rgba(0,0,0,.06);
  transition: transform .14s ease, box-shadow .18s ease, background .2s ease, border-color .2s ease;
}
.card-cta::after{ content:"›"; font-size:18px; line-height:1; opacity:.85; }
.card-cta:hover{
  transform: translateY(-1px);
  background:#f6fbff;
  border-color: rgba(68,75,145,.35);
  box-shadow: 0 10px 20px rgba(0,0,0,.08);
}

/* Hover-эффект (десктоп) */
@media (hover: hover) and (pointer: fine){
  .product-card:hover{
    transform: translateY(-6px) scale(1.02);
    box-shadow: var(--card-shadow-hover);
  }
  .product-card:hover::before{
    background: linear-gradient(120deg, rgba(0,67,126,.28), rgba(27,117,187,.2));
  }
  .card-media:hover::after{ opacity:.2 }
}

/* Фокус */
.product-card:focus-within{
  outline: 2px solid #1b75bb;
  outline-offset: 3px;
}

/* Мобайл логика */
@media (hover:none), (max-width:768px){
  .product-card{
    transition:
      transform 360ms var(--ease-out),
      box-shadow 300ms var(--ease-out);
  }
  .card-media{
    transition: filter 90ms linear;
    filter: blur(var(--blur, 0px)) brightness(var(--bright, 1));
    will-change: filter;
    transform: translateZ(0);
    backface-visibility: hidden;
  }
  .product-card:hover{
    transform: translateY(0) scale(1);
    box-shadow: var(--card-shadow);
  }
  .product-card.is-center{
    transform: none;
    box-shadow: 0 16px 36px rgba(0,0,0,.18);
    animation: centerGlow 3.2s ease-in-out infinite;
  }
  .product-card.is-center .card-media{
    transform: scale(1.02) translateZ(0);
    transition: transform 300ms var(--ease-out), filter 90ms linear;
    filter: blur(0px) brightness(1);
  }
  .products-grid[data-scrolling="true"] .product-card{
    transition:
      transform 220ms var(--ease-out),
      box-shadow 220ms var(--ease-out);
  }
}

/* Варианты бейджа по типу упаковки */
.products-group.group-jar .product-card::after{
  background: linear-gradient(135deg,#5cb3ff,#1b75bb);
}
.products-group.group-box .product-card::after{
  background: linear-gradient(135deg,#6bd19b,#2a9d6f);
}
.products-group.group-bag .product-card::after{
  background: linear-gradient(135deg,#ffd36a,#e3b04b);
}

/* Footer */
.site-footer{
  background:var(--footer-bg);
  color:#fff;
  padding:32px 0 24px;
  margin-top:24px;
}
.footer-inner{ display:grid; gap:24px; grid-template-columns:2fr 1fr }
.footer-brand p{ opacity:.9; margin-top:12px; line-height:1.5 }
.footer-nav{ display:flex; flex-direction:column; gap:8px; align-items:flex-start }
.footer-nav a{ color:#cfe6ff; text-decoration:none }
.footer-nav a:hover{ text-decoration:underline }
.footer-copy{ grid-column:1 / -1; opacity:.8; font-size:14px; margin-top:8px }
@media (max-width:700px){ .footer-inner{ grid-template-columns:1fr } }

/* Accessibility: reduce motion */
@media (prefers-reduced-motion: reduce){
  .slide, .product-card{ transition:none; animation:none }
  .site-header{ transition:none }
}

/* Мягкое «дыхание» тени центральной карточки (мобайл) */
@keyframes centerGlow{
  0%   { box-shadow: 0 16px 36px rgba(0,0,0,.18); }
  50%  { box-shadow: 0 22px 48px rgba(0,0,0,.22); }
  100% { box-shadow: 0 16px 36px rgba(0,0,0,.18); }
}

/* ===== Modal: плавное появление и красивое оформление (сертификат без анимаций) ===== */
.product-modal{
  position: fixed; inset: 0;
  display: grid; place-items: center;
  z-index: 2000;

  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .38s ease, visibility 0s linear .38s;
}
.product-modal.is-open{
  opacity: 1; visibility: visible; pointer-events: auto;
  transition: opacity .38s ease;
}
.product-modal__backdrop{
  position:absolute; inset:0;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(2px);
  opacity: 0;
  transition: opacity .38s ease;
}
.product-modal.is-open .product-modal__backdrop{ opacity: 1; }

.product-modal__dialog{
  position: relative;
  width: min(940px, calc(100% - 24px));
  max-height: min(calc(100% - 24px), 90vh);
  overflow: auto;
  border-radius: 18px;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 24px 68px rgba(0,0,0,.28);
  backdrop-filter: saturate(1.1) blur(2px);

  transform: translateY(18px) scale(.98);
  opacity: 0;
  transition: transform .42s var(--ease-out), opacity .32s ease;
}
.product-modal.is-open .product-modal__dialog{
  transform: translateY(0) scale(1);
  opacity: 1;
}

.product-modal__close{
  position:absolute; top:10px; right:10px;
  width:36px; height:36px; border-radius:10px;
  border:0; cursor:pointer;
  background:#ffffff;
  box-shadow: 0 4px 12px rgba(0,0,0,.12);
  font-size:24px; line-height:36px;
  transition: transform .12s ease, box-shadow .2s ease, background .2s ease;
}
.product-modal__close:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.16);
  background:#f4f7fb;
}

.product-modal__section h4{
  margin:0 0 8px 0; font-size:16px; color:var(--text);
}
.product-modal__text{
  padding:20px;
  background: linear-gradient(92deg,#f7f6f9,#eee7f4);
  color:#034683;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  box-shadow: 0 6px 14px rgba(0,0,0,.06);
}

.product-modal__footer{
  display:flex; gap:10px; flex-wrap:wrap;
  padding:12px 18px 18px 18px;
  border-top: 1px dashed rgba(0,0,0,.08);
  background-color:#f5ede0;
}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:8px; padding:10px 14px; border-radius:999px;
  font-weight:700; letter-spacing:.02em; text-decoration:none;
  border:1px solid transparent; cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease;
}
.btn:active{ transform: translateY(1px) }
.btn-primary{
  background: linear-gradient(90deg,#00437e,#1b75bb);
  color:#fff; border-color: rgba(0,0,0,.05);
  box-shadow: 0 6px 14px rgba(0,67,126,.25);
}
.btn-primary:hover{ box-shadow: 0 8px 18px rgba(0,67,126,.30); }

/* Сертификат: без анимаций — просто show/hide */
.product-modal__certificate{
  display: none;
  margin: 10px 18px 18px 18px;
  padding: 10px 18px 18px 18px;
}
.product-modal__certificate.is-visible{ display: block; }
.product-modal__certificate img{
  max-width:100%;
  border-radius:12px;
  box-shadow: 0 8px 22px rgba(0,0,0,.18);
  background:#fff;
}
.product-modal__cert-close{
  margin-top:10px;
  border:0; border-radius:8px; padding:8px 12px;
  background:#eef5ff; color:#0b4280; cursor:pointer;
}
.product-modal__cert-close:hover{ background:#e4efff }

/* ======================================
   About Company Section - FIXED VERSION
   ====================================== */

.about-company {
  padding: 60px 0;
  background: var(--bg);
  position: relative;
}

.about-card {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
  background: var(--card-bg);
  border-radius: var(--radius);
  padding: 48px 40px;
  box-shadow: var(--card-shadow);
  border: 1px solid var(--card-border);
}

/* Бейдж */
.about-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #444b91, #5b62a8);
  color: white;
  padding: 8px 16px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 24px;
  box-shadow: 0 4px 12px rgba(68, 75, 145, 0.3);
}

.badge-icon {
  font-size: 16px;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}

/* Заголовок с МИНИМАЛЬНОЙ высотой вместо фиксированной */
.about-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--text);
  line-height: 1.3;
  margin-bottom: 40px;
  text-align: center;
  min-height: 120px; /* МИНИМАЛЬНАЯ высота вместо фиксированной */
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

.title-accent {
  background: linear-gradient(135deg, #444b91, #5b62a8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.typed-text {
  color: var(--text);
  position: relative;
  display: inline;
  text-align: center;
  word-wrap: break-word; /* Разрешаем переносы */
  white-space: normal; /* Разрешаем переносы строк */
}

.cursor {
  color: #5b62a8;
  animation: blink 1s infinite;
  font-weight: 400;
  display: inline; /* Курсор должен быть в строке */
}

@keyframes blink {
  0%, 50% { opacity: 1; }
  51%, 100% { opacity: 0; }
}

/* Статистика */
.about-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 32px;
  margin: 48px 0;
  padding: 32px 0;
  border-top: 1px dashed rgba(68, 75, 145, 0.2);
  border-bottom: 1px dashed rgba(68, 75, 145, 0.2);
}

.stat-item {
  text-align: center;
}

.stat-number {
  font-size: 2.5rem;
  font-weight: 700;
  color: #444b91;
  margin-bottom: 8px;
  font-family: 'Roboto Condensed', sans-serif;
}

.stat-label {
  font-size: 0.9rem;
  color: var(--muted);
  font-weight: 500;
}

/* Детали */
.about-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 24px;
  margin-top: 32px;
}

.detail-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 12px;
  border: 1px solid rgba(68, 75, 145, 0.1);
  transition: transform 0.3s var(--ease-out), box-shadow 0.3s var(--ease-out);
}

.detail-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--card-shadow-hover);
}

.detail-icon {
  font-size: 2rem;
  flex-shrink: 0;
}

.detail-text strong {
  display: block;
  color: var(--text);
  font-weight: 600;
  margin-bottom: 4px;
  font-size: 1.1rem;
}

.detail-text p {
  color: var(--muted);
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.4;
}

/* Адаптивность */
@media (max-width: 768px) {
  .about-company {
    padding: 40px 0;
  }
  
  .about-card {
    padding: 32px 24px;
    margin: 0 16px;
  }
  
  .about-title {
    font-size: 1.8rem;
    min-height: 100px; /* Меньшая минимальная высота для мобильных */
  }
  
  .about-stats {
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 32px 0;
  }
  
  .stat-number {
    font-size: 2rem;
  }
  
  .about-details {
    grid-template-columns: 1fr;
  }
  
  .detail-item {
    padding: 16px;
  }
}

@media (max-width: 480px) {
  .about-title {
    font-size: 1.5rem;
    min-height: 90px;
  }

  /* На очень маленьких экранах делаем заголовок более компактным */
  .about-title {
    flex-direction: column;
    gap: 4px;
  }
}

/* ======================================
   Кнопка политики конфиденциальности в футере
   ====================================== */
.footer-privacy-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #fff;
  background: rgba(255,255,255,0.10);
  border: 1.5px solid rgba(255,255,255,0.30);
  border-radius: 999px;
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .03em;
  text-decoration: none;
  margin-top: 4px;
  transition: background .2s ease, border-color .2s ease, transform .15s ease, box-shadow .2s ease;
  box-shadow: 0 2px 10px rgba(0,0,0,.10);
}
.footer-privacy-btn::before {
  content: "🔒";
  font-size: 13px;
  line-height: 1;
}
.footer-privacy-btn:hover {
  background: rgba(255,255,255,0.22);
  border-color: rgba(255,255,255,0.55);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
  text-decoration: none;
}

/* ======================================
   Страница политики конфиденциальности
   ====================================== */
.privacy-page {
  padding: 48px 0 64px;
  min-height: calc(100vh - 200px);
}

.privacy-hero {
  text-align: center;
  margin-bottom: 40px;
}

.privacy-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #444b91, #5b62a8);
  color: #fff;
  padding: 7px 18px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .03em;
  box-shadow: 0 4px 12px rgba(68,75,145,.30);
  margin-bottom: 18px;
}

.privacy-main-title {
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--text);
  margin: 0 0 18px;
  letter-spacing: .02em;
  line-height: 1.2;
}

.privacy-subtitle {
  font-size: 1.1rem;
  color: var(--muted);
  max-width: 620px;
  margin: 0 auto;
  line-height: 1.6;
}

.privacy-link {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px dashed rgba(27,117,187,.4);
  transition: border-color .2s;
}
.privacy-link:hover { border-color: var(--accent); }

.privacy-card {
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(68,75,145,.10);
  border-radius: var(--radius);
  box-shadow: var(--card-shadow);
  padding: 48px 52px;
  max-width: 900px;
  margin: 0 auto;
}

.privacy-section {
  padding-bottom: 32px;
  margin-bottom: 32px;
  border-bottom: 1px dashed rgba(68,75,145,.15);
}
.privacy-section--last {
  border-bottom: none;
  margin-bottom: 0;
}

.privacy-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin: 0 0 18px;
}

.privacy-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #444b91, #5b62a8);
  color: #fff;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 3px 8px rgba(68,75,145,.28);
}

.privacy-section p {
  font-size: 1.05rem;
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 12px;
}

.privacy-list {
  padding-left: 0;
  list-style: none;
  margin: 0 0 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.privacy-list li {
  position: relative;
  padding: 12px 16px 12px 42px;
  background: linear-gradient(92deg, #f7f6f9, #eee7f4);
  border: 1px solid rgba(68,75,145,.10);
  border-radius: 10px;
  color: #034683;
  line-height: 1.6;
  font-size: 1.05rem;
}

.privacy-list li::before {
  content: "›";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  font-weight: 700;
  color: #5b62a8;
  line-height: 1;
}

.privacy-list--markers li::before { content: "✦"; font-size: 12px; top: 14px; transform: none; }

.privacy-note {
  background: rgba(68,75,145,.07);
  border-left: 3px solid #5b62a8;
  border-radius: 0 8px 8px 0;
  padding: 10px 16px;
  font-size: 1rem;
  color: var(--muted);
  margin: 0 !important;
}

.privacy-footer-note {
  text-align: center;
  margin-top: 40px;
  padding-top: 32px;
  border-top: 1px dashed rgba(68,75,145,.15);
}

.privacy-back-btn {
  font-size: .95rem;
  padding: 12px 32px;
}

@media (max-width: 768px) {
  .privacy-page { padding: 28px 0 48px; }
  .privacy-card { padding: 28px 20px; }
  .privacy-main-title { font-size: 1.7rem; }
  .privacy-heading { font-size: 1.1rem; }
}