/* ===== [pme tokens] ===================================================== */
:root{
  --pme-ink:#131a24; --pme-ink2:#2c3744; --pme-blue:#123a6d; --pme-blue2:#0e2d55;
  --pme-red:#c02a2f; --pme-red2:#a3202a; --pme-ash:#5a6472;
  --pme-paper:#ffffff; --pme-wash:#f4f7fa; --pme-canvas:#e9edf2;
  --pme-line:#d3dae2; --pme-line2:#c9d4e2; --pme-rose:#fdf6f6;
  --pme-w:888px; --pme-wide:1120px;
  /* срез справа у узких блоков в широкой полосе: 1120 − 888 − 20 */
  --pme-rcut:212px;
  --pme-pad:20px; --pme-sheet:36px; --pme-gap:28px;
  --pme-s1:10px; --pme-s2:18px; --pme-s3:30px; --pme-s4:48px;
  --pme-sans:"pme-sans","Poppins","Segoe UI",system-ui,-apple-system,sans-serif;
  --pme-serif:"pme-serif","Iowan Old Style","Palatino Linotype",Georgia,serif;
}
@font-face{font-family:"pme-sans";src:url(/assets/pme-sans-400.woff2)format("woff2");
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"pme-sans";src:url(/assets/pme-sans-600.woff2)format("woff2");
  font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"pme-sans";src:url(/assets/pme-sans-400-i.woff2)format("woff2");
  font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"pme-serif";src:url(/assets/pme-serif.woff2)format("woff2");
  font-weight:400 700;font-style:normal;font-display:swap}

/* ===== [pme base] ======================================================= */
*,*::before,*::after{box-sizing:border-box}
/* ⚠ СВОЙ РАЗМЕР У ИНЛАЙНОВОЙ ИКОНКИ ОБЯЗАТЕЛЕН. <svg> без width/height тянется
   на всю ячейку-родителя: иконка «дальше» в шапке раздела рисовалась 113×113 px
   при сетке 24. Ни один другой гейт этого не видит — переполнения нет */
.pme-i{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;
  stroke-linejoin:round;display:inline-block;vertical-align:middle;
  width:1.05em;height:1.05em;flex:0 0 auto}
html{-webkit-text-size-adjust:100%}
body.pme-page{margin:0;background:var(--pme-canvas);color:var(--pme-ink);
  font:400 17px/1.7 var(--pme-sans);text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
/* ⛔ hyphens:auto крупному заголовку НЕ давать: на полосе 890 px «Rappel de lot,
   alerte, mise en garde : com-ment savoir…» — издание так заголовок не ломает,
   а гейты этого не видят (переполнения нет, всё внутри колонки). Длинное слово
   и без переносов не вылезет: за это отвечает overflow-wrap. Переносы включаются
   обратно только на узком экране, где строка короче слова */
h1,h2,h3,h4{font-family:var(--pme-serif);font-weight:600;line-height:1.22;margin:0;
  hyphens:manual;overflow-wrap:break-word}
p{margin:0}
a{color:var(--pme-blue)}
.pme-skip{position:absolute;left:-9999px;top:0;background:var(--pme-ink);color:#fff;
  padding:10px 16px;z-index:60}
.pme-skip:focus{left:0}

/* ===== [pme band] — полоса-центровщик, контракт один на все ярусы ======== */
.pme-in{max-width:var(--pme-wide);margin-left:auto;margin-right:auto;
  padding-left:var(--pme-pad);padding-right:var(--pme-pad)}
/* ⚠⚠ ХАБЫ, ГЛАВНАЯ И ИНДЕКС кладут блоки прямо в <main>, без полосы-центровщика:
   до 27.09.2026 у них не было НИ ширины, НИ отступов — заголовок и карточки шли
   от края окна до края (83 элемента «текст у края» на одной главной). Полосу
   держит сам <main>: ярус контента — тот же контракт, что у шапки и подвала.
   Лист статьи (.pme-sheet) со своей шириной из правила исключён.
   ⚠ Отступ здесь именно ПОЛЯМИ, а не padding'ом: с padding'ом коробка блока
   всё равно упиралась в край окна, и на мобиле проверка «текст у края» ловила
   заголовок и подзаголовок на каждом хабе (6 элементов × 5 хабов) — она мерит
   коробку элемента, а не то, где внутри неё оказалась строка. Поля дают ту же
   картинку и ставят блок на одну вертикаль с содержимым шапки */
.pme-main>*:not(.pme-sheet){width:calc(100% - var(--pme-pad)*2);
  max-width:calc(var(--pme-wide) - var(--pme-pad)*2);
  margin-left:auto;margin-right:auto}
/* Строка не длиннее 888 px — но ЛЕВЫЙ край на одной вертикали с карточками,
   поэтому режем справа отступом, а не max-width: центрованная узкая коробка
   съезжает от сетки на 96 px и шапка раздела перестаёт совпадать с текстом */
.pme-main>.pme-h1,.pme-main>.pme-dek,.pme-main>.pme-prose,
.pme-main>.pme-lead>.pme-lead__t,.pme-main>.pme-lead>.pme-lead__d{
  padding-right:var(--pme-rcut)}
.pme-main>.pme-lead .pme-fig img{max-width:var(--pme-w)}

/* ===== [pme masthead] =================================================== */
.pme-hd{position:relative;z-index:30;background:var(--pme-paper);
  border-bottom:3px solid var(--pme-red)}
.pme-hd__strip{background:var(--pme-blue);color:#ffffff}
/* ⚠ justify-content обязателен: строка-анонс с прижатым влево содержимым имеет
   середину на 466 px при 720 у мачты и ряда рубрик — R20 читает это как «строки
   шапки не по одной линии», и владелец видит то же самое */
.pme-hd__strip .pme-in{display:flex;flex-wrap:wrap;align-items:center;
  justify-content:space-between;gap:4px 20px;
  padding-top:8px;padding-bottom:8px;font-size:12px;letter-spacing:.09em;
  text-transform:uppercase;min-width:0}
.pme-hd__strip span{min-width:0}
.pme-hd__strip a{color:#ffffff;text-decoration:none;font-weight:600}
.pme-hd__strip a:hover{text-decoration:underline}
.pme-hd__strip svg{width:14px;height:14px;color:#c9d4e2;vertical-align:-2px;margin-right:5px}
.pme-hd__mast .pme-in{padding-top:22px;padding-bottom:14px;text-align:center}
.pme-mark{display:flex;align-items:center;justify-content:center;gap:12px;
  text-decoration:none;color:var(--pme-ink)}
.pme-mark svg{width:44px;height:44px;display:block;flex:0 0 44px}
.pme-wm{font-family:var(--pme-serif);font-weight:600;font-size:40px;line-height:1;
  letter-spacing:-.015em;display:block}
.pme-wm i{font-style:normal;color:var(--pme-red)}
.pme-tag{display:block;margin-top:8px;font-size:11.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--pme-ash)}
.pme-hd__nav{border-top:1px solid var(--pme-line)}
.pme-hd__nav .pme-in{padding-top:0;padding-bottom:0}
.pme-nav{display:block}
.pme-nav__list{display:flex;flex-wrap:wrap;justify-content:center;list-style:none;
  margin:0;padding:0}
.pme-nav__list li{min-width:0}
.pme-nav__list a{display:flex;align-items:center;min-height:46px;line-height:1.4;
  padding-left:15px;padding-right:15px;font-size:13px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--pme-ink);text-decoration:none;
  border-bottom:3px solid transparent}
.pme-nav__list a:hover{color:var(--pme-red)}
.pme-nav__list .is-on>a{color:var(--pme-red);border-bottom-color:var(--pme-red)}
/* ⚠ переключатель бургера прячется РАЗМЕРОМ, а не выносом за экран: коробка
   13×13 никуда не девается, и проверка меню принимала её за кнопку («цель
   кнопки 13×13», «кнопка меню видна на десктопе»). 1×1 + opacity:0 оставляет
   его в потоке фокуса — клавиатурой меню по-прежнему открывается */
.pme-burg__t{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0;
  border:0;clip-path:inset(50%)}
.pme-burg{display:none}

/* ===== [pme sheet] — лист контента на полотне ============================ */
.pme-main{display:block}
.pme-sheet{max-width:calc(var(--pme-w) + var(--pme-sheet)*2);
  margin-left:auto;margin-right:auto;margin-top:var(--pme-gap);margin-bottom:var(--pme-gap);
  background:var(--pme-paper);border:1px solid var(--pme-line);
  box-shadow:0 1px 3px rgba(19,26,36,.07);padding:var(--pme-sheet)}
.pme-sheet>*+*{margin-top:var(--pme-s3)}

/* ===== [pme crumbs] ===================================================== */
.pme-crumb{font-size:12.5px;color:var(--pme-ash)}
.pme-crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;
  list-style:none;margin:0;padding:0}
.pme-crumb li{min-width:0}
.pme-crumb li+li::before{content:"\203A";margin-right:8px;color:var(--pme-line2)}
.pme-crumb a{color:var(--pme-ash);text-decoration:none}
.pme-crumb a:hover{color:var(--pme-red)}

/* ===== [pme title] ====================================================== */
.pme-kick{display:block;font-size:11.5px;font-weight:600;letter-spacing:.17em;
  text-transform:uppercase;color:var(--pme-red);margin-bottom:10px}
.pme-h1{font-size:40px;margin-top:6px}
.pme-h1--wide{font-size:34px}
.pme-dek{font-family:var(--pme-serif);font-size:20px;line-height:1.5;
  color:var(--pme-ink2);margin-top:14px}
/* ⚠ на индексе и в каталоге сразу за деком идёт .pme-prose, а у него самого
   отступа сверху нет (есть только между детьми). Засечный дек и наборный абзац
   слипались в один блок, у которого посреди меняется шрифт */
.pme-dek+.pme-prose{margin-top:var(--pme-s2)}
.pme-by{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:16px;
  padding-top:12px;border-top:1px solid var(--pme-line);font-size:13.5px;color:var(--pme-ash)}
.pme-by a{color:var(--pme-blue);font-weight:600;text-decoration:none}
.pme-by a:hover{text-decoration:underline}
.pme-by svg{width:15px;height:15px;color:var(--pme-ash);vertical-align:-2px;margin-right:5px}
.pme-by span{min-width:0}
.pme-by time{font-weight:600;color:var(--pme-ink)}

/* ===== [pme figure] ===================================================== */
.pme-fig{margin:0}
.pme-fig img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;
  background:var(--pme-wash)}
.pme-fig figcaption{margin-top:9px;padding-top:9px;border-top:1px solid var(--pme-line);
  font-size:13px;line-height:1.55;color:var(--pme-ash)}
.pme-cred{display:block;margin-top:5px;font-size:11.5px;letter-spacing:.03em;
  color:var(--pme-ash)}

/* ===== [pme section] ==================================================== */
.pme-sec__hd{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:4px 18px;margin-top:var(--pme-s3);margin-bottom:var(--pme-s2);padding-bottom:8px;
  border-bottom:2px solid var(--pme-ink)}
.pme-sheet>.pme-sec__hd:first-child{margin-top:0}
.pme-grid+.pme-sec__hd,.pme-rows+.pme-sec__hd,.pme-prodgrid+.pme-sec__hd,
.pme-prose+.pme-sec__hd,.pme-pack+.pme-sec__hd{margin-top:var(--pme-s4)}
.pme-sec__t{font-family:var(--pme-sans);font-size:13.5px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;color:var(--pme-ink)}
.pme-sec__m{font-size:13px;color:var(--pme-ash)}
.pme-sec__m a{color:var(--pme-red);font-weight:600;text-decoration:none}
.pme-sec__m a:hover{text-decoration:underline}

/* ===== [pme lead] — ведущая полоса (propublica: один столбец) =========== */
.pme-lead{display:block}
.pme-lead__k{display:block;font-size:11.5px;font-weight:600;letter-spacing:.17em;
  text-transform:uppercase;color:var(--pme-red);margin-bottom:10px}
.pme-lead__t{font-size:44px;margin-top:0}
.pme-lead__t a{color:var(--pme-ink);text-decoration:none}
.pme-lead__t a:hover{color:var(--pme-red)}
.pme-lead__d{font-family:var(--pme-serif);font-size:19px;line-height:1.5;
  color:var(--pme-ink2);margin-top:12px}
.pme-lead__m{margin-top:12px;font-size:12.5px;color:var(--pme-ash)}
.pme-lead .pme-fig{margin-bottom:18px}

/* ===== [pme cards] ====================================================== */
.pme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 22px;
  list-style:none;margin:0;padding:0}
.pme-grid--2{grid-template-columns:repeat(2,1fr)}
.pme-card{display:flex;flex-direction:column;min-width:0;
  border-top:3px solid var(--pme-line2);padding-top:14px}
.pme-card__ph{display:block;align-self:start;margin-bottom:12px}
.pme-card__ph img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;
  background:var(--pme-wash)}
.pme-card__k{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--pme-red);margin-bottom:7px}
.pme-card__t{font-family:var(--pme-serif);font-size:19px;line-height:1.3}
.pme-card__t a{color:var(--pme-ink);text-decoration:none}
.pme-card__t a:hover{color:var(--pme-red)}
.pme-card__d{font-size:14.5px;line-height:1.6;color:var(--pme-ash);margin-top:9px}
.pme-card__m{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:auto;padding-top:12px;
  font-size:12px;color:var(--pme-ash)}

/* ===== [pme rows] — список-индекс: ровно два ребёнка в ряду ============= */
.pme-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--pme-line)}
.pme-rows>li{border-bottom:1px solid var(--pme-line)}
.pme-rows__r{display:flex;align-items:flex-start;gap:18px;
  padding-top:16px;padding-bottom:16px}
.pme-rows__ph{flex:0 0 132px;width:132px;display:block}
.pme-rows__ph img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;
  background:var(--pme-wash)}
.pme-rows__b{flex:1 1 auto;min-width:0}
.pme-rows__k{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--pme-red);margin-bottom:6px}
.pme-rows__t{font-family:var(--pme-serif);font-size:20px;line-height:1.3}
.pme-rows__t a{color:var(--pme-ink);text-decoration:none}
.pme-rows__t a:hover{color:var(--pme-red)}
.pme-rows__d{font-size:14.5px;line-height:1.6;color:var(--pme-ash);margin-top:7px}
.pme-rows__m{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:12px;
  color:var(--pme-ash)}

/* ===== [pme panel] — врезка «En bref» с трёхцветной кромкой ============= */
/* ⚠ кромка — ОТДЕЛЬНЫЙ слой ::before, а не background-image самой врезки.
   Градиент на предке текста читается как ФОН ТЕКСТА: чекер контраста усредняет
   стопы (#0055a4 + #f2f4f7 + #ef4135 = серо-сиреневый) и объявляет синий
   заголовок «En bref» нечитаемым — 3.36 при норме 4.5. Полоса шириной 6 px
   под текстом не лежит, и фоном ему быть не должна */
.pme-panel{position:relative;background:var(--pme-wash);
  border:1px solid var(--pme-line);
  padding-top:18px;padding-bottom:18px;padding-left:26px;padding-right:20px}
.pme-panel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;
  background:linear-gradient(to bottom,#0055a4 0 33.34%,#f2f4f7 33.34% 66.67%,
    #ef4135 66.67% 100%)}
.pme-panel__t{font-family:var(--pme-sans);font-size:11.5px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--pme-blue);margin-bottom:10px}
.pme-panel ul{list-style:none;margin:0;padding:0}
.pme-panel li{display:flex;align-items:flex-start;gap:11px;font-size:15.5px;
  line-height:1.55;padding-top:6px;padding-bottom:6px}
.pme-panel li+li{border-top:1px solid var(--pme-line)}
.pme-panel svg{flex:0 0 18px;width:18px;height:18px;color:var(--pme-red);margin-top:4px}
.pme-panel b{font-weight:600}

/* ===== [pme note] — предупреждение ====================================== */
.pme-note{background:var(--pme-rose);border:1px solid var(--pme-red);
  padding-top:16px;padding-bottom:16px;padding-left:20px;padding-right:20px}
.pme-note__t{display:flex;align-items:center;gap:9px;font-family:var(--pme-sans);
  font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--pme-red2);margin-bottom:9px}
.pme-note__t svg{flex:0 0 17px;width:17px;height:17px;color:var(--pme-red2)}
.pme-note p{font-size:15.5px;line-height:1.65}
.pme-note p+p{margin-top:9px}
.pme-note a{color:var(--pme-red2)}

/* ===== [pme facts] — полоса факта на фише препарата ===================== */
.pme-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--pme-line);border:1px solid var(--pme-line)}
.pme-facts__c{background:var(--pme-wash);min-width:0;
  padding-top:14px;padding-bottom:14px;padding-left:16px;padding-right:16px}
.pme-facts__k{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;color:var(--pme-ash)}
.pme-facts__k svg{flex:0 0 15px;width:15px;height:15px;color:var(--pme-blue)}
.pme-facts__v{font-family:var(--pme-serif);font-size:18px;line-height:1.3;margin-top:7px;
  overflow-wrap:break-word;hyphens:auto}
.pme-facts__v a{color:var(--pme-blue);text-decoration:none}

/* ===== [pme meta] — определения (ингредиент, фабрикант…) ================ */
.pme-meta{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;
  font-size:15px;line-height:1.55}
.pme-meta dt{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--pme-ash);padding-top:3px}
.pme-meta dd{margin:0;min-width:0;overflow-wrap:break-word}

/* ===== [pme pack] — таблицы доз донора (монетизация, разметка дословно) == */
.pme-pack{margin-top:var(--pme-s3)}
.pme-pack__hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;
  margin-bottom:10px}
.pme-pack__dose{font-family:var(--pme-serif);font-size:22px;font-weight:600}
.pme-pack__sub{font-size:12.5px;color:var(--pme-ash)}
.pme-pack__cols{display:grid;grid-template-columns:112px 84px 158px 1fr 172px;gap:14px;
  align-items:center;background:var(--pme-blue);color:#ffffff;
  padding-top:11px;padding-bottom:11px;padding-left:16px;padding-right:16px;
  font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}
.pme-pack__cols span{min-width:0}
.pme-pack .product_table{display:block}
.pme-pack .package-row{display:grid;grid-template-columns:112px 84px 158px 1fr 172px;
  gap:14px;align-items:center;border:1px solid var(--pme-line);border-top:none;
  background:var(--pme-paper);
  padding-top:14px;padding-bottom:14px;padding-left:16px;padding-right:16px}
.pme-pack .package-row:nth-child(even){background:var(--pme-wash)}
.pme-pack .package-dosage-size{order:1;min-width:0}
.pme-pack .package-pill-image{order:2;min-width:0}
.pme-pack .package-current-price{order:3;min-width:0}
.pme-pack .package-bonus{order:4;min-width:0}
.pme-pack .add-to-cart-package{order:5;min-width:0}
.package-pill-dose{font-family:var(--pme-serif);font-size:20px;font-weight:600;
  line-height:1.2}
.package-pill-type{font-size:13px;color:var(--pme-ash);line-height:1.4}
.package-pill-image img{display:block;width:100%;height:auto;max-width:84px}
.package-current-price{font-family:var(--pme-serif);font-size:23px;font-weight:600;
  line-height:1.2;color:var(--pme-ink)}
.package-old-price{display:block;font-family:var(--pme-sans);font-size:12.5px;
  font-weight:400;color:var(--pme-ash);text-decoration:line-through}
.package-pill-price{display:block;margin-top:3px;font-family:var(--pme-sans);
  font-size:12.5px;font-weight:400;color:var(--pme-ash);line-height:1.4}
.our-bonus{font-size:13px;line-height:1.5;color:var(--pme-ash)}
.add-to-cart-btn{display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:46px;padding-left:14px;padding-right:14px;background:var(--pme-red);
  color:#ffffff;font-size:13.5px;font-weight:600;letter-spacing:.02em;text-decoration:none}
.add-to-cart-btn:hover{background:var(--pme-red2)}
.add-to-cart-mobile-btn{display:none}
.package-save{margin-top:7px;text-align:center;font-size:12px;color:var(--pme-ash)}
.dose-type{margin-right:4px}
.pill-save{font-weight:600;color:var(--pme-ink)}

/* ===== [pme prod] — карточка препарата в каталоге ======================= */
.pme-prodgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  list-style:none;margin:0;padding:0}
.pme-prod{display:flex;flex-direction:column;min-width:0;background:var(--pme-paper);
  border:1px solid var(--pme-line);
  padding-top:16px;padding-bottom:16px;padding-left:16px;padding-right:16px}
.pme-prod__ph{display:block;text-align:center}
.pme-prod__ph img{display:block;margin-left:auto;margin-right:auto;height:88px;width:auto}
.pme-prod__mol{display:block;margin-top:12px;font-size:10.5px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--pme-red)}
.pme-prod__mol--void{min-height:1.25em}
.pme-prod__t{font-family:var(--pme-serif);font-size:18px;line-height:1.3;margin-top:5px}
.pme-prod__t a{color:var(--pme-ink);text-decoration:none}
.pme-prod__t a:hover{color:var(--pme-red)}
.pme-prod__d{font-size:13.5px;line-height:1.55;color:var(--pme-ash);margin-top:8px}
.pme-prod__p{margin-top:auto;padding-top:12px;font-size:12.5px;color:var(--pme-ash)}
.pme-prod__p b{display:block;font-family:var(--pme-serif);font-size:19px;
  color:var(--pme-ink)}
.pme-prod__go{display:flex;align-items:center;justify-content:center;min-height:46px;
  margin-top:11px;border:1.5px solid var(--pme-blue);color:var(--pme-blue);
  font-size:13.5px;font-weight:600;text-decoration:none}
.pme-prod__go:hover{background:var(--pme-blue);color:#ffffff}

/* ===== [pme chips] — срезы каталога ===================================== */
.pme-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.pme-chips a{display:flex;align-items:center;min-height:38px;padding-left:14px;
  padding-right:14px;border:1px solid var(--pme-line2);background:var(--pme-wash);
  color:var(--pme-ink);font-size:13px;font-weight:600;text-decoration:none}
.pme-chips a:hover{border-color:var(--pme-red);color:var(--pme-red)}
.pme-chips svg{width:15px;height:15px;color:var(--pme-blue);margin-right:8px;flex:0 0 15px}

/* ===== [pme art] — обёртка материала внутри листа ====================== */
.pme-art{display:block}
.pme-art>*+*{margin-top:var(--pme-s3)}
.pme-art>.pme-prose+.pme-prose{margin-top:var(--pme-s3)}
.pme-art>h2{margin-top:var(--pme-s4)}

/* ===== [pme src] — откуда взяты числа ================================== */
.pme-src{border-top:2px solid var(--pme-blue);background:var(--pme-wash);
  padding:18px 20px}
.pme-src__t{display:flex;align-items:center;gap:9px;font-family:var(--pme-sans);
  font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--pme-blue)}
.pme-src__t svg{flex:0 0 16px;width:16px;height:16px;color:var(--pme-blue)}
.pme-src ul{list-style:none;margin-top:11px;padding:0}
.pme-src li+li{margin-top:7px;padding-top:7px;border-top:1px solid var(--pme-line)}
.pme-src a{color:var(--pme-ink2);font-size:14.5px;line-height:1.5;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;
  overflow-wrap:anywhere}
.pme-src a:hover{color:var(--pme-red2)}

/* ===== [pme prose] — тело материала ==================================== */
/* overflow-wrap на САМОМ контейнере прозы, а не на абзацах: голый адрес без
   пробелов робот кладёт и в <p>, и в <li>, и в <td> — п. 12.16 */
.pme-prose{font-size:17.5px;line-height:1.75;overflow-wrap:break-word}
.pme-prose>*+*{margin-top:1.05em}
.pme-prose h2{font-size:26px;margin-top:1.7em;padding-bottom:7px;
  border-bottom:1px solid var(--pme-line)}
.pme-prose h3{font-size:20px;margin-top:1.5em}
.pme-prose h4{font-size:17px;font-family:var(--pme-sans);letter-spacing:.02em;
  margin-top:1.4em}
.pme-prose a{color:var(--pme-blue);text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:2px;overflow-wrap:anywhere}
.pme-prose ul,.pme-prose ol{padding-left:24px;margin-top:1em}
.pme-prose li+li{margin-top:7px}
.pme-prose ul>li::marker{color:var(--pme-red)}
.pme-prose ol>li::marker{color:var(--pme-red);font-weight:600}
.pme-prose blockquote{margin:0;padding-left:20px;border-left:3px solid var(--pme-red);
  font-family:var(--pme-serif);font-size:19px;line-height:1.5;color:var(--pme-ink2)}
.pme-prose strong{font-weight:600}
.pme-prose img{display:block;height:auto;background:var(--pme-wash)}
.pme-prose figure{margin:0}
.pme-prose pre{max-width:100%;overflow-x:auto;background:var(--pme-wash);
  padding-top:12px;padding-bottom:12px;padding-left:16px;padding-right:16px}
.pme-prose pre code{white-space:pre-wrap;overflow-wrap:anywhere}
.pme-prose hr{border:none;border-top:1px solid var(--pme-line);margin-top:1.6em}

/* ===== [pme table] — таблицы в теле ==================================== */
/* container-type даёт подписи ВИДИМУЮ ширину прокрутки: `100%` меряется от
   прокручиваемой ширины таблицы (1487 px при окне 886), а `calc(100vw - поля)`
   врёт на странице с боковой колонкой — оба режут подпись */
.pme-tbl{overflow-x:auto;margin-top:1.2em;container-type:inline-size}
.pme-tbl table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.5;
  background:var(--pme-paper)}
/* ⛔ display:block у <caption> выбивает её из табличной раскладки: блок прямым
   ребёнком <table> заворачивается в анонимную ячейку, и ширина подписи
   становится ШИРИНОЙ ПЕРВОЙ КОЛОНКИ (886 + 94 вместо 886 на десктопе) */
.pme-tbl caption{position:sticky;left:0;width:100cqi;
  text-align:left;font-family:var(--pme-sans);font-size:11.5px;
  font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pme-ash);
  padding-bottom:8px}
.pme-tbl th,.pme-tbl td{border:1px solid var(--pme-line);text-align:left;
  padding-top:9px;padding-bottom:9px;padding-left:16px;padding-right:16px;
  max-width:340px;overflow-wrap:break-word}
.pme-tbl th{background:var(--pme-blue);color:#ffffff;font-family:var(--pme-sans);
  font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.pme-tbl tbody tr:nth-child(even) td{background:var(--pme-wash)}
/* Правила на .pme-tbl--c4…c6 здесь нет: на этом сайте все таблицы — 2 и 3
   колонки, а правило под колонки, которых в разметке не бывает, — балласт.
   Класс шаблон всё равно ставит: появится широкая таблица — правило вернётся. */
/* ⛔⛔ ГОЛАЯ ТАБЛИЦА СТАТЬИ РОБОТА. В %CONTENT_1% приезжает HTML moz.biz: обёртки
   .pme-tbl у его таблиц не будет никогда, а замерить это на живом сайте нельзя —
   свои таблицы завёрнуты все до одной, и gate.py с рендер-чекерами дают ноль.
   display:block обязателен: у <table> прокрутка иначе не работает вовсе */
/* width:100% — чтобы таблица СНАЧАЛА сжималась, как своя в .pme-tbl, и только
   неуменьшаемое содержимое уезжало в прокрутку. Без него донорская таблица на
   трёх колонках раскладывалась по своей ширине и вылезала за экран на 390:
   документ оставался 390 px, а TBODY/TR/TH торчали из коробки (4 выпирания в
   мини-гейте на 16 страницах-фишах) */
.pme-prose>table{display:block;max-width:100%;width:100%;overflow-x:auto;
  border-collapse:collapse;font-size:15px;line-height:1.5;
  background:var(--pme-paper);container-type:inline-size}
.pme-prose>table caption{position:sticky;left:0;width:100cqi;text-align:left;
  font-family:var(--pme-sans);font-size:11.5px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--pme-ash);padding-bottom:8px}
/* ⛔ width:auto СНИМАЕТ ДОНОРСКИЙ АТРИБУТ `<th width="201">`. Атрибут ширины —
   презентационная подсказка, любое авторское правило её перебивает, но пока
   правила не было, три колонки по 201 px давали 603 px в коробке 358: документ
   оставался 390 px (коробка прокручивается), а TBODY/TR/TH торчали наружу */
.pme-prose>table th,.pme-prose>table td{border:1px solid var(--pme-line);
  text-align:left;padding-top:9px;padding-bottom:9px;padding-left:16px;
  padding-right:16px;width:auto;max-width:340px;overflow-wrap:break-word}
.pme-prose>table th{background:var(--pme-blue);color:#ffffff;
  font-family:var(--pme-sans);font-size:12px;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase}
.pme-tbl__hint{font-size:12.5px;color:var(--pme-ash);margin-top:8px}
.pme-tbl__hint svg{width:14px;height:14px;color:var(--pme-ash);vertical-align:-2px;
  margin-right:6px}

/* ===== [pme toc] ======================================================= */
.pme-toc{background:var(--pme-wash);border:1px solid var(--pme-line);
  padding-top:14px;padding-bottom:14px;padding-left:20px;padding-right:20px}
.pme-toc>summary{cursor:pointer;font-family:var(--pme-sans);font-size:11.5px;
  font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--pme-blue);
  min-height:26px}
.pme-toc ol{margin-top:12px;margin-bottom:0;padding-left:22px;font-size:15px;
  line-height:1.55}
.pme-toc li+li{margin-top:7px}
.pme-toc li::marker{color:var(--pme-red)}
.pme-toc a{color:var(--pme-ink);text-decoration:none}
.pme-toc a:hover{color:var(--pme-red);text-decoration:underline}

/* ===== [pme faq] — ответы всегда раскрыты ============================== */
.pme-faq{border-top:1px solid var(--pme-line)}
.pme-faq__i{border-bottom:1px solid var(--pme-line);padding-top:16px;padding-bottom:16px}
.pme-faq__q{font-family:var(--pme-serif);font-size:19px;line-height:1.3;
  display:flex;align-items:flex-start;gap:10px}
.pme-faq__q svg{flex:0 0 17px;width:17px;height:17px;color:var(--pme-red);margin-top:4px}
.pme-faq__a{margin-top:9px;font-size:16px;line-height:1.7}
.pme-faq__a p+p{margin-top:.8em}
.pme-faq__a ul{padding-left:22px;margin-top:.6em}

/* ===== [pme wire] — лента общих новостей (цель автопостинга) =========== */
.pme-wire{margin:0;padding:0}
/* анонс приносит робот: <div style="margin-bottom:20px"><h4><a>…</a></h4><p>…</p></div>.
   Оформление — от контейнера, инлайновое поле перебиваем. */
.pme-wire>div{border-bottom:1px solid var(--pme-line);
  padding-top:14px;padding-bottom:14px;margin-bottom:0!important}
.pme-wire h4{font-family:var(--pme-serif);font-weight:600;font-size:19px;
  line-height:1.3;margin:0}
.pme-wire h4 a{color:var(--pme-ink);text-decoration:none}
.pme-wire h4 a:hover{color:var(--pme-red)}
.pme-wire p{font-size:14.5px;color:var(--pme-ash);margin-top:6px;margin-bottom:0}
/* до первой публикации гнездо пусто — заглушка снимается сама первой депешей */
.pme-wire:empty::before{content:"Les dépêches du fil arrivent ici dès leur publication.";
  display:block;background:var(--pme-wash);border:1px dashed var(--pme-line2);
  font-size:15px;color:var(--pme-ash);
  padding-top:16px;padding-bottom:16px;padding-left:20px;padding-right:20px}

/* ===== [pme steps] — порядок заказа / статус ========================== */
.pme-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;
  background:var(--pme-line);border:1px solid var(--pme-line);list-style:none;
  margin:0;padding:0;counter-reset:pme-st}
.pme-steps li{background:var(--pme-paper);min-width:0;
  padding-top:16px;padding-bottom:16px;padding-left:18px;padding-right:18px}
.pme-steps li::before{counter-increment:pme-st;content:counter(pme-st);
  display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;
  background:var(--pme-blue);color:#ffffff;font-size:13px;font-weight:600;
  margin-bottom:9px}
.pme-steps b{display:block;font-family:var(--pme-serif);font-size:17px;margin-bottom:5px}
.pme-steps p{font-size:14.5px;line-height:1.6;color:var(--pme-ash)}

/* ===== [pme sign] — редакционная подпись, НЕ карточка персоны (п. 11.6a) == */
.pme-auth{display:flex;align-items:flex-start;gap:20px;border:1px solid var(--pme-line);
  border-top:3px solid var(--pme-blue);background:var(--pme-wash);
  padding-top:18px;padding-bottom:18px;padding-left:20px;padding-right:20px;
  margin-top:32px}
.pme-auth__ph{flex:0 0 56px;width:56px;display:block}
.pme-auth__ph svg{display:block;width:56px;height:56px}
.pme-auth__b{flex:1 1 auto;min-width:0}
.pme-auth__t{font-family:var(--pme-serif);font-size:18px;font-weight:700;
  margin-bottom:10px}
.pme-auth__t a{color:var(--pme-ink);text-decoration:none}
.pme-auth__t a:hover{color:var(--pme-blue);text-decoration:underline}
.pme-auth ul{list-style:none;display:grid;gap:8px}
.pme-auth li{display:flex;gap:9px;font-size:14.5px;line-height:1.6;
  color:var(--pme-ash)}
.pme-auth li svg{flex:0 0 16px;width:16px;height:16px;margin-top:3px;
  color:var(--pme-blue)}
.pme-auth__d{margin-top:12px;font-size:13.5px;color:var(--pme-ash)}
.pme-auth__d time{font-weight:600;color:var(--pme-ink)}

/* ===== [pme widget] — форма обратной связи fortunida =================== */
/* ⛔⛔ Это НАШ сервис (владелец 21.09.2026, п. 05.7ж): в снимке скрипт стоял на
   /nous-contacter.html, и там же стоит теперь. Своей формы на статическом
   снапшоте быть не может — POST некуда отправить, а форма, которая ничего не
   отправляет, это ложное обещание читателю (п. 09.28а). Поэтому самодельная
   .pme-form снята, а виджет вернулся.
   ⚠ Классы виджет ставит сам, скоуп — по id контейнера: #feedback-form + класс
   специфичнее одиночного класса виджета, и !important нужен только на honeypot
   (у него инлайновый left:-10000px, иначе overflow-гейт краснеет).
   ⚠ Своего <h2> над виджетом нет: заголовок и текст печатает он сам. */
#feedback-form .feedback-form-container{background:var(--pme-wash);
  border:1px solid var(--pme-line);border-radius:0;box-shadow:none;
  padding-top:20px;padding-bottom:20px;padding-left:22px;padding-right:22px}
/* обёртка у виджета своя: белая, радиус 12, тень — наш скин плоский */
#feedback-form .feedback-form-wrapper{max-width:none;margin-left:0;margin-right:0;
  background:none;border-radius:0;box-shadow:none;
  padding-top:0;padding-bottom:0;padding-left:0;padding-right:0}
#feedback-form .feedback-form-header h3{font-family:var(--pme-serif);
  font-size:26px;color:var(--pme-ink)}
/* подводка виджета #6B7280 по светлому полотну — контраст 4.0, R3 краснеет */
#feedback-form .feedback-form-header p{color:var(--pme-ash)}
#feedback-form .feedback-form-label{font-family:var(--pme-sans);font-size:12px;
  font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--pme-ash)}
#feedback-form .feedback-form-group{margin-bottom:14px}
#feedback-form .feedback-form-input,#feedback-form .feedback-form-textarea{
  width:100%;font:400 16px/1.5 var(--pme-sans);color:var(--pme-ink);
  background:var(--pme-paper);border:1px solid var(--pme-line2);border-radius:0;
  box-shadow:none;padding-top:11px;padding-bottom:11px;
  padding-left:12px;padding-right:12px}
/* подводка у виджета #6B7280 — на нашем полотне это контраст 4.0, R3 краснеет */
#feedback-form .feedback-form-input::placeholder,
#feedback-form .feedback-form-textarea::placeholder{color:#565f6b;opacity:1}
#feedback-form .feedback-form-required{color:var(--pme-red)}
#feedback-form .feedback-form-submit{min-height:46px;border:none;border-radius:0;
  box-shadow:none;background:var(--pme-red);color:#ffffff;
  font:600 14px/1 var(--pme-sans);cursor:pointer;
  padding-left:22px;padding-right:22px}
#feedback-form .feedback-form-submit:hover{background:var(--pme-red2)}
#feedback-form .feedback-form-success{color:#1c6b3c}
#feedback-form .feedback-form-error{color:var(--pme-red2)}
#feedback-form input[aria-hidden="true"][tabindex="-1"]{left:0!important;
  pointer-events:none}

/* ===== [pme value] — §18: чем мы полезны ============================== */
.pme-value{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--pme-line);border:1px solid var(--pme-line);list-style:none;
  margin:0;padding:0}
.pme-value li{background:var(--pme-wash);min-width:0;
  padding-top:16px;padding-bottom:16px;padding-left:18px;padding-right:18px}
.pme-value svg{width:20px;height:20px;color:var(--pme-red);display:block;margin-bottom:9px}
.pme-value b{display:block;font-family:var(--pme-serif);font-size:20px;
  margin-bottom:4px}
.pme-value span{font-size:14px;line-height:1.55;color:var(--pme-ash);display:block}

/* ===== [pme 404] ====================================================== */
.pme-404{text-align:center;padding-top:var(--pme-s3);padding-bottom:var(--pme-s3)}
.pme-404 svg{width:56px;height:56px;color:var(--pme-line2)}

/* ===== [pme footer] =================================================== */
.pme-ft{background:var(--pme-paper);border-top:4px solid var(--pme-red);
  margin-top:var(--pme-s4)}
.pme-ft__trust{background:var(--pme-wash);border-bottom:1px solid var(--pme-line)}
.pme-ft__trust .pme-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;
  padding-top:16px;padding-bottom:16px}
.pme-ft__trust img{display:block;height:40px;width:auto}
.pme-ft__trust span{font-size:11.5px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--pme-ash);flex:0 0 100%}
.pme-ft__cols .pme-in{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 24px;
  padding-top:28px;padding-bottom:26px}
.pme-ft__col{min-width:0}
.pme-ft__col h2{font-family:var(--pme-sans);font-size:11.5px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;color:var(--pme-red);margin-bottom:12px}
.pme-ft__col ul{list-style:none;margin:0;padding:0;font-size:14.5px}
.pme-ft__col li+li{margin-top:8px}
.pme-ft__col a{color:var(--pme-ink);text-decoration:none}
.pme-ft__col a:hover{color:var(--pme-red);text-decoration:underline}
.pme-ft__card{background:var(--pme-wash);border:1px solid var(--pme-line2);
  font-size:13.5px;line-height:1.65;color:var(--pme-ink2);
  padding-top:14px;padding-bottom:14px;padding-left:16px;padding-right:16px}
.pme-ft__card b{display:block;font-family:var(--pme-serif);font-size:16px;
  color:var(--pme-ink);margin-bottom:6px}
.pme-ft__card a{color:var(--pme-blue)}
.pme-ft__card svg{width:14px;height:14px;color:var(--pme-ash);vertical-align:-2px;
  margin-right:6px}
.pme-ft__legal{background:var(--pme-canvas);border-top:1px solid var(--pme-line)}
.pme-ft__legal .pme-in{padding-top:18px;padding-bottom:26px;font-size:12.5px;
  line-height:1.65;color:var(--pme-ash)}
.pme-ft__legal p+p{margin-top:9px}
.pme-ft__legal a{color:var(--pme-ash)}
.pme-ft__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;
  margin-bottom:10px}
.pme-age{display:inline-flex;align-items:center;justify-content:center;min-width:44px;
  height:26px;border:1.5px solid var(--pme-ink);color:var(--pme-ink);font-size:12px;
  font-weight:600;letter-spacing:.04em}
.pme-ft__val{font-size:13px;color:var(--pme-ink2);font-weight:600}

/* ===== [pme mobile] — переопределения НИЖЕ базовых правил ============== */
@media (max-width:900px){
  /* срез справа держится только там, где полоса шире строки */
  :root{--pme-rcut:0px}
  .pme-hd__nav .pme-in{position:relative}
  .pme-burg{display:flex;align-items:center;gap:10px;min-height:48px;cursor:pointer;
    font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:var(--pme-ink)}
  .pme-burg svg{width:20px;height:20px;color:var(--pme-ink)}
  .pme-nav{display:none;padding-bottom:12px;border-top:1px solid var(--pme-line)}
  .pme-burg__t:checked~.pme-nav{display:block}
  .pme-nav__list{flex-direction:column;flex-wrap:nowrap}
  .pme-nav__list li{width:100%}
  .pme-nav__list a{min-height:48px;justify-content:space-between;padding-left:0;
    padding-right:0;border-bottom:1px solid var(--pme-line)}
  .pme-nav__list .is-on>a{border-bottom-color:var(--pme-line)}
  .pme-nav__x{display:flex;align-items:center;min-height:48px;font-size:12.5px;
    font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pme-ash);
    cursor:pointer}
}
@media (min-width:901px){
  .pme-nav__x{display:none}
}
@media (max-width:860px){
  .pme-grid{grid-template-columns:repeat(2,1fr)}
  .pme-prodgrid{grid-template-columns:repeat(2,1fr)}
  .pme-facts{grid-template-columns:repeat(2,1fr)}
  .pme-value{grid-template-columns:1fr}
  .pme-ft__cols .pme-in{grid-template-columns:repeat(2,1fr)}
  .pme-lead__t{font-size:34px}
  .pme-h1{font-size:32px}
  .pme-h1--wide{font-size:28px}
  .pme-wm{font-size:32px}
}
@media (max-width:760px){
  :root{--pme-pad:14px;--pme-sheet:16px;--pme-gap:14px;--pme-s3:24px;--pme-s4:34px}
  .pme-sheet{border-left:none;border-right:none;margin-left:0;margin-right:0;
    max-width:none}
  .pme-pack__cols{display:none}
  .pme-pack .package-row{grid-template-columns:72px 1fr;gap:6px 14px;
    padding-left:14px;padding-right:14px}
  .pme-pack .package-pill-image{order:1;grid-column:1;grid-row:1/span 2;align-self:start}
  .pme-pack .package-dosage-size{order:2;grid-column:2}
  .pme-pack .package-current-price{order:3;grid-column:2}
  .pme-pack .package-bonus{order:4;grid-column:1/-1;padding-top:6px;
    border-top:1px solid var(--pme-line)}
  .pme-pack .add-to-cart-package{order:5;grid-column:1/-1}
  .package-pill-image img{max-width:72px}
  .package-current-price::before{content:"Prix du colis";display:block;
    font-family:var(--pme-sans);font-size:10.5px;font-weight:600;letter-spacing:.12em;
    text-transform:uppercase;color:var(--pme-ash);margin-bottom:2px}
  .our-bonus::before{content:"Inclus";display:block;font-size:10.5px;font-weight:600;
    letter-spacing:.12em;text-transform:uppercase;color:var(--pme-ash);margin-bottom:3px}
  .pme-auth{gap:14px}
  .pme-auth__ph{flex:0 0 44px;width:44px}
  .pme-auth__ph svg{width:44px;height:44px}
  .pme-steps{grid-template-columns:1fr}
  /* голая таблица (донор, статья робота) ужимается на узком экране ровно как
     своя: иначе она уходит в прокрутку раньше завёрнутой — а подсказки
     «листните вбок» у неё нет и быть не может, её ставит только шаблон */
  .pme-tbl th,.pme-tbl td,
  .pme-prose>table th,.pme-prose>table td{max-width:260px;
    padding-left:12px;padding-right:12px}
}
@media (max-width:640px){
  /* на 390 px строка короче французского «dysfonctionnement», и перенос без
     дефиса читается хуже переноса с дефисом — здесь hyphens возвращается */
  h1,h2,h3,h4{hyphens:auto}
  .pme-grid,.pme-prodgrid{grid-template-columns:1fr}
  .pme-rows__ph{flex:0 0 104px;width:104px}
  .pme-lead__t{font-size:29px}
  .pme-h1{font-size:27px}
  .pme-h1--wide{font-size:24px}
  .pme-dek,.pme-lead__d{font-size:17.5px}
  .pme-prose{font-size:17px}
  .pme-prose h2{font-size:22px}
  .pme-facts{grid-template-columns:1fr}
  /* ⚠ «ярлык слева, значение справа» на 390 px оставляет значению 140 px, и
     адрес почты ломается посреди слова: support@acs / -24.com. Ярлык уходит
     над значением, значение получает всю ширину */
  .pme-meta{grid-template-columns:1fr;gap:0}
  .pme-meta dt{padding-top:14px}
  .pme-meta dt:first-child{padding-top:0}
}
@media (max-width:520px){
  .pme-rows__r{gap:12px}
  .pme-rows__ph{flex:0 0 88px;width:88px}
  .pme-wm{font-size:27px}
  .pme-mark svg{width:36px;height:36px;flex:0 0 36px}
}
