/* Smile Lab USA — страницы (pages/*.html и служебные) в дизайне hellopepti.
   Обёртка поверх экспорта темы: контент (слова, картинки, порядок) не меняется,
   меняются контейнеры, сетка, типографика и анимации.

   Механики — их точным кодом из docs/pepti-design/mechanics/*.css (Tailwind,
   резолвнутый по классам фрагмента), rem → px по базе 16px:
     --spacing 4px · text-[10px]/[11px]/[13px]/[15px] · xs 12/16 · sm 14/20 ·
     base 16/24 · lg 18/28 · xl 20/28 · 2xl 24/32 · 3xl 30/36 · 4xl 36/40 ·
     5xl 48/1 · rounded-3xl 24 · [2rem] 32 · blur-sm 8px · blur-3xl 64px ·
     leading-relaxed 1.625 · leading-snug 1.375 · tracking-[0.3em] .3em.
   Цвета их → наши токены (sl-pepti.css): #0c2f25→--ink, #1f5145→--ink-2,
   gray-900→--dark, #e8ff70→--accent, #d7ebe3→--sage-soft, #d8e9e0→--ribbon-mist,
   #f3f8f4/#e4efe8/#cfe3d8→--mist-grad.
   Доноры по типу: how-it-works-steps + how-it-works-timeline (how-it-works),
   about-reasons (about-us), contact-form (contact), cost-cards (hsa-fsa,
   лендинги .sll, инфо-страницы), лист pepti-page-safety (политики).
   Подключается после sl-pepti.css; общий верх вставляет sl-pepti-chrome.js. */

:root {
  --pp-gray-300: #d1d5dc;
  --pp-gray-400: #99a1af;
  --pp-gray-500: #6a7282;
  --pp-gray-600: #4a5565;
  --pp-ease: cubic-bezier(.4, 0, .2, 1);
  --pp-card-grad: linear-gradient(160deg, #fff 0%, var(--mist-2) 100%);
  --pp-plate-grad: radial-gradient(120% 100% at 50% 0%, #fff 0%, var(--mist-2) 100%);
  --pp-faq-grad: linear-gradient(180deg, var(--mist) 0%, var(--mist-2) 55%, var(--sage-soft) 100%);
  --pp-price-grad: linear-gradient(180deg, #f6f3ec 0%, var(--mist-2) 55%, var(--sage-soft-2) 100%);
  --pp-call-grad: radial-gradient(125% 100% at 50% 0%, #1f4a3f 0%, #14322b 50%, #0b1c17 100%);
  --pp-shadow-card: 0 18px 40px -28px rgba(12, 47, 37, .4);
  --pp-shadow-white: 0 24px 55px -34px rgba(20, 50, 38, .4);
  --pp-shadow-panel: 0 30px 60px -24px rgba(20, 50, 38, .22);
  /* их лента: <svg viewBox="0 0 340 720"><path fill=#d8e9e0 fill-opacity=.85 d="M125 -20 …"/></svg> — у нас токенами */
  --pp-ribbon-mist: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 340 720' preserveAspectRatio='none'%3E%3Cpath fill='%23e3d5b8' fill-opacity='.85' d='M125 -20 C125 200 75 300 75 360 C75 420 125 520 125 740 L215 740 C215 520 165 420 165 360 C165 300 215 200 215 -20 Z'/%3E%3C/svg%3E");
  --pp-ribbon-night: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 340 720' preserveAspectRatio='none'%3E%3Cpath fill='%23e8dcc2' fill-opacity='.9' d='M125 -20 C125 200 75 300 75 360 C75 420 125 520 125 740 L215 740 C215 520 165 420 165 360 C165 300 215 200 215 -20 Z'/%3E%3C/svg%3E");
  --pp-ribbon-accent: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 340 720' preserveAspectRatio='none'%3E%3Cpath fill='%23ecd79a' fill-opacity='.9' d='M125 -20 C125 200 75 300 75 360 C75 420 125 520 125 740 L215 740 C215 520 165 420 165 360 C165 300 215 200 215 -20 Z'/%3E%3C/svg%3E");
}

/* ------------------------------------------------ страница и шапка темы ---- */
.section-header { display: none !important; }
.has-pp-chrome body { padding-top: 0; }
button.sl-fab { display: none !important; }            /* инлайн-плашка темы: прятал sl-motion.js, он снят */
main.pp-pg {
  padding: 80px 12px 0;                                 /* их <section class="px-3 pt-20"> под фикс-верх */
  background: #fff;
  color: var(--text);
  font-family: var(--font-body);
}
main.pp-pg .page-width { max-width: none; margin: 0; padding: 0; }
main.pp-pg .ecom-builder, main.pp-pg .ecom-sections { width: 100%; max-width: none; }
main.pp-pg .shopify-section { padding: 0; }
main.pp-pg a { text-decoration: none; }
main.pp-pg * { box-sizing: border-box; }

/* ---------------------------------------------------------- панели ---- */
/* их: relative isolate overflow-hidden rounded-[2rem] border border-black/5 p-6 sm:p-10 lg:p-14
   + лента svg absolute left-1/2 -z-10 h-full w-[560px] opacity-70 */
.pp-pg .pp-panel {
  position: relative; isolation: isolate; overflow: hidden; display: block;
  border-radius: 32px; border: 1px solid rgba(0, 0, 0, .05);
  padding: 24px; margin: 0 0 16px; width: auto; max-width: none;
  background: var(--mist-grad); color: var(--text); text-align: left;
}
.pp-pg .pp-panel::after {
  content: ''; position: absolute; top: 0; left: 50%; z-index: -1; height: 100%; width: 560px;
  transform: translateX(-50%); opacity: .7; pointer-events: none;
  background: var(--pp-ribbon-mist) center / 100% 100% no-repeat;
}
.pp-pg .pp-panel--white { background: #fff; border-color: color-mix(in srgb, var(--ink) 8%, transparent); box-shadow: var(--pp-shadow-panel); }
.pp-pg .pp-panel--white::after { opacity: 0; }
.pp-pg .pp-panel--faq { background: var(--pp-faq-grad); }
.pp-pg .pp-panel--night { background: var(--night); border-color: rgba(255, 255, 255, .1); color: #fff; }
.pp-pg .pp-panel--night::after { background-image: var(--pp-ribbon-night); opacity: .3; }
.pp-pg .pp-panel--accent { background: linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 60%, #fff) 0%, var(--accent-soft-2) 100%); }
.pp-pg .pp-panel--accent::after { background-image: var(--pp-ribbon-accent); opacity: .9; }
.pp-pg .pp-panel--hero { margin-top: 0; }
.pp-pg .pp-panel > * { position: relative; z-index: 1; }

/* ----------------------------------------------------- типографика ---- */
/* h1: display text-4xl leading-[1.02] tracking-tight text-ink (sm: 5xl) */
.pp-pg h1, .pp-pg h1.ecom__heading, .pp-pg h1.ecom__heading.ecom-db,
.pp-pg .sll-h1, .pp-pg .slh-hero h1, .pp-pg .slcontact__h1, .pp-pg .slc-title, .pp-pg--util h1, .pp-pg--status h1 {
  font-family: var(--font-display) !important; font-weight: 800 !important;
  font-size: 36px !important; line-height: 1.02 !important; letter-spacing: -.025em !important;
  color: var(--ink) !important; text-align: center; margin: 0 !important; padding: 0 !important; border: 0 !important;
  text-transform: none !important; white-space: normal !important; text-wrap: balance; max-width: none;
}
/* h2 секций: display text-3xl leading-[1.05] text-ink */
.pp-pg .pp-panel h2, .pp-pg .pp-panel h2.ecom__heading, .pp-pg .pp-panel h2.ecom__heading.ecom-db,
.pp-pg .pp-panel .slsteps__title, .pp-pg .pp-panel .sll-h2, .pp-pg .pp-panel .slh-sec > h2 {
  font-family: var(--font-display) !important; font-weight: 800 !important;
  font-size: 30px !important; line-height: 1.05 !important; letter-spacing: -.02em !important;
  color: var(--ink) !important; text-align: center; margin: 0 0 20px !important;
  text-transform: none !important; white-space: normal !important; text-wrap: balance;
  padding: 0 !important; border: 0 !important; background: none !important;
}
/* h3 секций (у eComposer часто вместо h2): тот же display, чуть меньше */
.pp-pg .pp-panel h3.ecom__heading, .pp-pg .pp-panel h3.ecom__heading.ecom-db, .pp-pg .pp-panel .sll-h3, .pp-pg .pp-panel .slh-sec h3 {
  font-family: var(--font-display) !important; font-weight: 800 !important;
  font-size: 20px !important; line-height: 1.2 !important; letter-spacing: -.02em !important;
  color: var(--ink) !important; margin: 0 0 8px !important; padding: 0 !important; border: 0 !important;
  text-transform: none !important; white-space: normal !important; background: none !important;
}
.pp-pg .pp-panel--night h2, .pp-pg .pp-panel--night h3.ecom__heading, .pp-pg .pp-panel--night .sll-h2 { color: #fff !important; }
/* абзацы: text-sm leading-relaxed text-ink/65 */
.pp-pg .pp-panel .text-content, .pp-pg .pp-panel .text-content p, .pp-pg .pp-panel .text-content div,
.pp-pg .pp-panel .sll-p, .pp-pg .pp-panel .slh-intro, .pp-pg .pp-panel .slh-hedge, .pp-pg .pp-panel .slh-panel p,
.pp-pg .pp-panel .slcontact__lead, .pp-pg .pp-panel .slsteps__note, .pp-pg .pp-panel .slqa-cta {
  font-family: var(--font-body) !important; font-size: 14px !important; line-height: 1.625 !important;
  color: color-mix(in srgb, var(--ink) 70%, transparent) !important; margin: 0 0 12px; padding: 0; border: 0;
  font-weight: 400; text-align: left; max-width: none;
}
.pp-pg .pp-panel .text-content { margin: 0; }
.pp-pg .pp-panel .text-content:last-child, .pp-pg .pp-panel .sll-p:last-child { margin-bottom: 0; }
.pp-pg .pp-panel .text-content b, .pp-pg .pp-panel .text-content strong, .pp-pg .pp-panel .sll-p strong, .pp-pg .pp-panel .sll-p b { color: var(--ink); font-weight: 600; }
.pp-pg .pp-panel .text-content a, .pp-pg .pp-panel .sll-p a, .pp-pg .pp-panel .slh-hedge a, .pp-pg .pp-panel .slh-panel a,
.pp-pg .pp-panel .slsteps__note a, .pp-pg .pp-panel .sll-link:not(.sll-actions .sll-link) { color: var(--ink-2); text-decoration: underline; text-underline-offset: 2px; }
.pp-pg .pp-panel--night .text-content, .pp-pg .pp-panel--night .text-content p, .pp-pg .pp-panel--night .text-content div,
.pp-pg .pp-panel--night .sll-p { color: rgba(255, 255, 255, .72) !important; }
.pp-pg .pp-panel--night .text-content b, .pp-pg .pp-panel--night .text-content strong, .pp-pg .pp-panel--night .sll-p strong { color: #fff; }
.pp-pg .pp-panel--night .text-content a, .pp-pg .pp-panel--night .sll-p a { color: var(--accent); }
/* эйбро: text-[11px] font-bold uppercase tracking-[0.25em] — только из слов, что уже на странице */
.pp-pg .pp-eyebrow-sm, .pp-pg .pp-panel .sll-eyebrow, .pp-pg .pp-panel .slh-step em, .pp-pg .pp-panel .slcontact__card b,
.pp-pg .pp-panel .sll-crumbs, .pp-pg--util .slu__code, .pp-pg--status .ordno, .pp-pg--util .slu__group h2 {
  display: block; margin: 0 0 12px; padding: 0 !important; border: 0; border-radius: 0; background: none !important; box-shadow: none !important;
  font-family: var(--font-body) !important; font-size: 11px !important; line-height: 16px !important; font-weight: 700 !important;
  text-transform: uppercase !important; letter-spacing: .25em !important; color: var(--ink-2) !important; white-space: normal !important;
}
.pp-pg .pp-panel .sll-eyebrow::before, .pp-pg .pp-panel .slh-step em::before, .pp-pg--util .slu__code::before { content: '— '; }
.pp-pg .pp-panel .sll-crumbs a { color: inherit; }
.pp-pg .pp-panel .sll-crumbs a + a::before, .pp-pg .pp-panel .sll-crumbs a + span::before { content: '·'; margin: 0 8px; color: var(--pp-gray-400); }
/* лид под h1: text-base leading-relaxed text-ink/70 */
.pp-pg .pp-panel--hero .text-content, .pp-pg .pp-panel--hero .text-content p, .pp-pg .pp-panel--hero .text-content div,
.pp-pg .pp-panel .sll-lede, .pp-pg .pp-panel .slh-lead, .pp-pg .pp-panel .slcontact__lead, .pp-pg--util .slu__lead, .pp-pg--status .sub {
  font-family: var(--font-body) !important; font-size: 16px !important; line-height: 1.625 !important; font-weight: 400 !important;
  color: color-mix(in srgb, var(--ink) 70%, transparent) !important; text-align: center; margin: 16px auto 0; max-width: 32rem;
}
.pp-pg .pp-panel .slh-sub, .pp-pg .pp-panel .slh-fine, .pp-pg .pp-panel .sll-fresh, .pp-pg .pp-panel .slh-legal, .pp-pg--status .hint, .pp-pg--status .foot {
  margin: 12px auto 0; font-family: var(--font-body); font-size: 12px; line-height: 1.625; text-align: center;
  color: color-mix(in srgb, var(--ink) 55%, transparent); max-width: 32rem;
}
.pp-pg .pp-panel--night .sll-fresh { color: rgba(255, 255, 255, .5); }

/* -------------------------------------------------------- карточки ---- */
/* их карточка: rounded-3xl border border-white/70 bg-white/60 p-5 backdrop-blur-sm shadow-[0_18px_40px_-28px_rgba(12,47,37,0.4)] */
.pp-pg .pp-card, .pp-pg .pp-panel .sll-card, .pp-pg .pp-panel .slh-col, .pp-pg .pp-panel .slh-step, .pp-pg .pp-panel .slh-panel,
.pp-pg .pp-panel .sll-faq details, .pp-pg .pp-panel .slh-faq details, .pp-pg .pp-panel .slqa details,
.pp-pg .pp-panel .ecom-accordion__item, .pp-pg--status .card, .pp-pg--status .act, .pp-pg--status .tips, .pp-pg--status .done,
.pp-pg .pp-panel .sll-plate, .pp-pg .pp-panel .slov {
  display: block; position: relative; margin: 0 0 12px; padding: 20px; width: auto; max-width: none;
  border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: var(--pp-shadow-card);
  color: var(--ink); text-align: left; font-family: var(--font-body);
}
.pp-pg .pp-card:last-child { margin-bottom: 0; }
.pp-pg .pp-panel--night .pp-card, .pp-pg .pp-panel--night .sll-card, .pp-pg .pp-panel--night .sll-plate {
  background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .1); box-shadow: none; color: #fff;
}
/* заголовок карточки: display text-xl text-ink (их «Licensed physicians») */
.pp-pg .pp-card > .ecom-block:first-child h2.ecom__heading, .pp-pg .pp-card > h2, .pp-pg .pp-card h2.ecom__heading {
  font-size: 20px !important; line-height: 1.2 !important; text-align: left; margin: 0 0 10px !important;
}
.pp-pg .pp-card h3.ecom__heading, .pp-pg .pp-card h3, .pp-pg .pp-panel .sll-card .sll-h3, .pp-pg .pp-panel .slh-col h3 {
  font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important;
  letter-spacing: 0 !important; color: var(--ink) !important; margin: 14px 0 6px !important; text-align: left;
}
.pp-pg .pp-card h3.ecom__heading:first-child, .pp-pg .pp-card > .ecom-block:first-child h3.ecom__heading, .pp-pg .pp-panel .slh-col h3 { margin-top: 0 !important; }
.pp-pg .pp-card .text-content, .pp-pg .pp-card .text-content p, .pp-pg .pp-card .text-content div, .pp-pg .pp-card p, .pp-pg .pp-panel .sll-card p {
  font-size: 13px !important; line-height: 1.625 !important; color: color-mix(in srgb, var(--ink) 65%, transparent) !important;
}
.pp-pg .pp-card .text-content ~ .text-content, .pp-pg .pp-card p + p, .pp-pg .pp-card .ecom-block + .ecom-block { margin-top: 10px; }
/* белая карточка-список (их «price by strength» / «Direct emails»): rounded-3xl border-black/5 bg-white shadow */
.pp-pg .pp-white, .pp-pg .pp-panel .sll-tablewrap, .pp-pg .pp-panel .slcontact__card, .pp-pg .pp-panel .slh-card, .pp-pg .pp-panel .sl-guide__card,
.pp-pg--cart .slc-items, .pp-pg--cart .slc-sum, .pp-pg--cart .slc-empty, .pp-pg--util .slu__list, .pp-pg--util .slu__door {
  position: relative; display: block; overflow: hidden; margin: 0; border-radius: 24px; border: 1px solid rgba(0, 0, 0, .05);
  background: #fff; box-shadow: var(--pp-shadow-white); color: var(--ink);
}

/* нумерованные карточки: их <span class="display h-9 w-9 rounded-full bg-ink text-[13px] text-accent">01</span> */
.pp-pg .pp-nums { counter-reset: ppnum; }
.pp-pg .pp-nums > .pp-num { counter-increment: ppnum; }
.pp-pg .pp-num::before {
  content: '0' counter(ppnum); display: flex; width: 36px; height: 36px; align-items: center; justify-content: center;
  border-radius: 999px; background: var(--ink); color: var(--accent); margin: 0 0 16px;
  font-family: var(--font-display); font-size: 13px; font-weight: 800; letter-spacing: -.02em;
}
/* крупный номер шага: their <span class="display text-xl text-ink-2 h-10 w-10">01</span> + линия w-px bg-black/10 */
.pp-pg .pp-steplist { counter-reset: ppstep; }
.pp-pg .pp-steplist > .pp-step { position: relative; counter-increment: ppstep; display: grid; grid-template-columns: 40px 1fr; column-gap: 20px; padding: 0 0 28px; }
.pp-pg .pp-steplist > .pp-step:last-child { padding-bottom: 0; }
.pp-pg .pp-steplist > .pp-step::before {
  content: '0' counter(ppstep); grid-column: 1; display: flex; width: 40px; height: 40px; align-items: center; justify-content: center;
  font-family: var(--font-display); font-size: 20px; line-height: 1; font-weight: 800; letter-spacing: -.02em; color: var(--ink-2);
}
.pp-pg .pp-steplist > .pp-step:not(:last-child)::after { content: ''; position: absolute; left: 19px; top: 44px; bottom: 4px; width: 1px; background: rgba(0, 0, 0, .1); }

/* стат-плитки (их 24/7 · < hrs · 5): display text-3xl + text-[10px] uppercase tracking-widest */
.pp-pg .pp-tile {
  padding: 24px; text-align: center; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .55);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: var(--pp-shadow-card);
}
.pp-pg .pp-tile__v { display: block; font-family: var(--font-display); font-size: 30px; line-height: 1; font-weight: 800; letter-spacing: -.02em; color: var(--ink); }
.pp-pg .pp-tile__k { display: block; margin-top: 6px; font-size: 10px; line-height: 15px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ink-2); }

/* чеклист-пилюли (их «что входит»): flex items-center gap-2.5 rounded-full border-white/70 bg-white/55 px-4 py-2.5 backdrop-blur-sm · ✓ text-ink-2 */
.pp-pg .pp-pills { display: grid; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.pp-pg .pp-pills > li {
  position: relative; display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 16px; border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .55); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  font-size: 13px; line-height: 1.375; font-weight: 500; color: var(--ink); text-align: left; box-shadow: none;
}
.pp-pg .pp-pills > li::before { content: '✓'; position: static; width: 14px; height: 14px; flex-shrink: 0; border-radius: 0; background: none; font-size: 12px; font-weight: 900; line-height: 14px; color: var(--ink-2); }
.pp-pg .pp-panel--night .pp-pills > li { border-color: rgba(255, 255, 255, .2); background: rgba(255, 255, 255, .08); color: #fff; }
.pp-pg .pp-panel--night .pp-pills > li::before { color: var(--accent); }
/* стеклянный чеклист (их hero-чеклист с галочками в кружках): rounded-[28px] строки через 1px */
.pp-pg .pp-check { display: grid; gap: 1px; margin: 16px 0 0; padding: 0; list-style: none; overflow: hidden; border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, .35); background: rgba(255, 255, 255, .35); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%);
  box-shadow: 0 20px 45px -34px rgba(12, 47, 37, .35), inset 0 1px 0 rgba(255, 255, 255, .45); }
.pp-pg .pp-check > li { display: flex; align-items: center; gap: 12px; margin: 0; padding: 14px 20px; background: rgba(255, 255, 255, .35);
  font-size: 14px; line-height: 20px; font-weight: 500; color: var(--ink); text-align: left; }
.pp-pg .pp-check > li::before { content: '✓'; display: flex; width: 20px; height: 20px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 999px; background: var(--ink-2); color: #fff; font-size: 11px; font-weight: 900; }
.pp-pg .pp-check--no > li::before { content: '–'; background: var(--pp-gray-300); color: var(--ink); }
.pp-pg .pp-check--no > li { color: color-mix(in srgb, var(--ink) 60%, transparent); }
/* списки в тексте eComposer → тот же стеклянный чеклист; нумерованные → с номерами в кружках */
.pp-pg .pp-panel .text-content ul, .pp-pg .pp-panel .pp-card ul, .pp-pg .pp-panel .slh-col ul, .pp-pg--imp .pp-card ul, .pp-pg--imp .pp-panel--hero ul {
  display: grid; gap: 1px; margin: 14px 0; padding: 0; list-style: none; overflow: hidden; border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, .5); background: rgba(255, 255, 255, .35);
}
.pp-pg .pp-panel .text-content ul li, .pp-pg .pp-panel .pp-card ul li, .pp-pg .pp-panel .slh-col ul li, .pp-pg--imp .pp-card ul li, .pp-pg--imp .pp-panel--hero ul li {
  display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 10px 16px; background: rgba(255, 255, 255, .4);
  font-size: 13px; line-height: 1.5; font-weight: 500; color: var(--ink);
}
.pp-pg .pp-panel .text-content ul li::before, .pp-pg .pp-panel .pp-card ul li::before, .pp-pg .pp-panel .slh-col ul li::before, .pp-pg--imp .pp-card ul li::before, .pp-pg--imp .pp-panel--hero ul li::before {
  content: '✓'; position: static; display: flex; width: 18px; height: 18px; flex-shrink: 0; align-items: center; justify-content: center; margin-top: 1px;
  border-radius: 999px; background: var(--ink-2); color: #fff; font-size: 10px; font-weight: 900; transform: none;
}
.pp-pg .pp-panel .slh-col--no ul li::before { content: '–'; background: var(--pp-gray-300); color: var(--ink); }
.pp-pg .pp-panel .slh-col--no ul li { color: color-mix(in srgb, var(--ink) 60%, transparent); }
.pp-pg .pp-panel .text-content ol, .pp-pg .pp-card ol, .pp-pg .pp-panel .sll-steps { display: grid; gap: 10px; margin: 14px 0; padding: 0; list-style: none; counter-reset: ppol; }
.pp-pg .pp-panel .text-content ol li, .pp-pg .pp-card ol li, .pp-pg .pp-panel .sll-steps li {
  position: relative; counter-increment: ppol; display: block; margin: 0; padding: 14px 16px 14px 56px; border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .55); font-size: 13px; line-height: 1.5; color: color-mix(in srgb, var(--ink) 70%, transparent);
}
.pp-pg .pp-panel .text-content ol li::before, .pp-pg .pp-card ol li::before, .pp-pg .pp-panel .sll-steps li::before {
  content: '0' counter(ppol); position: absolute; left: 14px; top: 12px; display: flex; width: 28px; height: 28px; align-items: center; justify-content: center;
  border-radius: 999px; background: var(--ink); color: var(--accent); font-family: var(--font-display); font-size: 11px; font-weight: 800;
}
.pp-pg .pp-panel .text-content ol li strong, .pp-pg .pp-panel .sll-steps li b { display: block; color: var(--ink); font-weight: 700; font-size: 14px; margin: 0 0 2px; }
.pp-pg .pp-panel--night .pp-card ul li, .pp-pg .pp-panel--night .text-content ul li { background: rgba(255, 255, 255, .06); color: #fff; }

/* кнопки: их dark pill rounded-full bg-ink px-7 py-3.5 text-sm font-bold text-white, outline — border-ink/25 bg-white/50 */
.pp-pg .pp-btn, .pp-pg .pp-panel .ecom__element--button, .pp-pg .pp-panel .sll-cta, .pp-pg .pp-panel .sll-actions .sll-link, .pp-pg .pp-panel .slh-cta, .pp-pg .pp-panel .slcontact__btn,
.pp-pg .pp-panel .dev-btn, .pp-pg--cart .slc-btn, .pp-pg--cart .slc-cta, .pp-pg--util .slu__form button, .pp-pg--status button, .pp-pg--status .act a.up,
.pp-pg--status .done a, .pp-pg--status #blocked .card a, .pp-pg--oc .act a {
  display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; width: auto; min-height: 0;
  margin: 0; padding: 14px 28px !important; border-radius: 999px !important; border: 0 !important; box-shadow: 0 10px 15px -3px color-mix(in srgb, var(--ink) 15%, transparent) !important;
  background: var(--ink) !important; color: #fff !important; font-family: var(--font-body) !important; font-size: 14px !important; line-height: 20px !important;
  font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important; text-decoration: none !important; cursor: pointer;
  transition: background-color .15s var(--pp-ease), color .15s var(--pp-ease);
}
.pp-pg .pp-btn:hover, .pp-pg .pp-panel .ecom__element--button:hover, .pp-pg .pp-panel .sll-cta:hover, .pp-pg .pp-panel .slh-cta:hover, .pp-pg .pp-panel .slcontact__btn:hover,
.pp-pg .pp-panel .dev-btn:hover, .pp-pg--cart .slc-btn:hover, .pp-pg--cart .slc-cta:hover, .pp-pg--util .slu__form button:hover, .pp-pg--status button:hover { background: #000 !important; color: #fff !important; }
.pp-pg .pp-panel .ecom__element--button .ecom__element--button-icon-text { color: inherit !important; font: inherit !important; }
.pp-pg .pp-panel .ecom__element--button .ecom-button-icon { display: none !important; }
.pp-pg .pp-btn--outline, .pp-pg .pp-panel .sll-actions .sll-link, .pp-pg .pp-panel .slcontact__btn--ghost, .pp-pg--status .answer button.alt, .pp-pg--status .act a:not(.up) {
  background: rgba(255, 255, 255, .5) !important; color: var(--ink) !important; box-shadow: none !important;
  border: 1px solid color-mix(in srgb, var(--ink) 25%, transparent) !important; text-decoration: none !important;
}
.pp-pg .pp-btn--outline:hover, .pp-pg .pp-panel .sll-actions .sll-link:hover, .pp-pg .pp-panel .slcontact__btn--ghost:hover { background: #fff !important; color: var(--ink) !important; }
.pp-pg .pp-panel--night .ecom__element--button, .pp-pg .pp-panel--night .sll-cta { background: #fff !important; color: #000 !important; box-shadow: none !important; }
.pp-pg .pp-panel--night .ecom__element--button:hover { background: var(--sage) !important; color: #000 !important; }
.pp-pg .pp-panel--accent .ecom__element--button + .ecom__element--button { background: rgba(255, 255, 255, .5) !important; color: var(--ink) !important; }
.pp-pg .pp-actions, .pp-pg .pp-panel .sll-actions, .pp-pg .pp-panel .slcontact__cta { display: flex; flex-direction: column; align-items: stretch; gap: 12px; margin: 24px 0 0; padding: 0; }
.pp-pg .pp-panel .sll-actions .sll-cta, .pp-pg .pp-panel .sll-actions .sll-link, .pp-pg .pp-panel .slcontact__btn { width: 100%; margin: 0 !important; flex: 0 0 auto !important; }
.pp-pg .pp-panel .ecom__element--button { margin: 0 auto !important; }

/* фото на светлой плашке (их product plate): rounded-[1.75rem] border-white/60 py-8 min-h-[300px] + blob + object-contain drop-shadow */
.pp-pg .pp-plate, .pp-pg .pp-panel .sll-hero__media, .pp-pg .pp-panel .sll-fig {
  position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; margin: 0; padding: 32px 24px; min-height: 240px;
  border-radius: 28px; border: 1px solid rgba(255, 255, 255, .6); background: var(--pp-plate-grad); box-shadow: 0 24px 55px -30px rgba(20, 50, 38, .45);
}
.pp-pg .pp-plate::before, .pp-pg .pp-panel .sll-hero__media::before, .pp-pg .pp-panel .sll-fig::before {
  content: ''; position: absolute; left: 50%; top: 50%; width: 224px; height: 224px; transform: translate(-50%, -50%); border-radius: 999px; background: rgba(255, 255, 255, .7); filter: blur(64px); pointer-events: none;
}
.pp-pg .pp-plate img, .pp-pg .pp-panel .sll-hero__media img, .pp-pg .pp-panel .sll-fig img {
  position: relative; display: block; width: 100%; max-width: 360px; height: auto; max-height: 320px; object-fit: contain; border-radius: 18px;
  filter: drop-shadow(0 18px 28px rgba(20, 50, 38, .14)); margin: 0 auto;
}
/* обычная фигура: rounded-3xl overflow-hidden shadow */
.pp-pg .pp-panel .ecom-base-image figure { margin: 0 !important; }
.pp-pg .pp-panel .ecom-base-image .ecom-image-content-position, .pp-pg .pp-fig { overflow: hidden; border-radius: 24px; box-shadow: 0 24px 55px -30px rgba(20, 50, 38, .3); }
.pp-pg .pp-panel .ecom-base-image img { width: 100% !important; height: auto !important; border-radius: 0 !important; display: block; }
.pp-pg .pp-panel .ecom-image-picture-link { display: block; overflow: hidden; border-radius: 16px; background: rgba(255, 255, 255, .5); border: 1px solid rgba(255, 255, 255, .6); }
.pp-pg .pp-panel .ecom-image-picture-link img { width: 100%; height: auto; display: block; border-radius: 0; }

/* таблица (их «price by strength»): белая карточка, строки через border-t; на телефоне — строка-карточка */
.pp-pg .pp-panel .sll-table { width: 100%; border-collapse: collapse; margin: 0; font-family: var(--font-body); font-size: 14px; line-height: 1.375; background: none; }
.pp-pg .pp-panel .sll-table thead { display: block; }
.pp-pg .pp-panel .sll-table thead tr { display: flex; gap: 4px 12px; padding: 10px 20px 6px; border-bottom: 1px solid rgba(0, 0, 0, .06); }
.pp-pg .pp-panel .sll-table thead th { flex: 1 1 0; padding: 0; border: 0; background: none; text-align: left; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pp-gray-500); }
.pp-pg .pp-panel .sll-table tbody tr { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 12px 20px; border: 0; border-top: 1px solid rgba(0, 0, 0, .05); background: none; }
.pp-pg .pp-panel .sll-table tbody tr:first-child { border-top: 0; }
.pp-pg .pp-panel .sll-table tbody tr:nth-child(2n) { background: #f9fafb; }
.pp-pg .pp-panel .sll-table tbody th { flex: 1 1 100%; padding: 0 0 2px; border: 0; background: none; text-align: left; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ink-2); }
.pp-pg .pp-panel .sll-table tbody td { flex: 0 0 auto; padding: 0; border: 0; background: none; font-size: 14px; font-weight: 700; color: var(--ink); text-align: left; }
.pp-pg .pp-panel .sll-table tbody td:first-of-type { flex: 1 1 auto; }
.pp-pg .pp-panel .sll-table tbody td.sll-money { font-size: 18px; font-weight: 800; color: var(--ink); margin-left: 8px; }
.pp-pg .pp-panel .sll-table tbody td.sll-money + td.sll-money::before { content: '·'; margin-right: 8px; font-weight: 600; color: var(--pp-gray-400); }

/* крупная цена в строке (их «+$149» display text-lg) и в плитке (display text-3xl) */
.pp-pg .pp-panel .sll-price {
  display: block; margin: 20px 0 0; padding: 16px 20px; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: var(--pp-shadow-card);
  font-family: var(--font-body); font-size: 14px; line-height: 1.5; font-weight: 500; color: color-mix(in srgb, var(--ink) 80%, transparent); text-align: center;
}
.pp-pg .pp-panel .sll-price b { display: inline; font-family: var(--font-display); font-weight: 800; font-size: 30px; line-height: 1.1; letter-spacing: -.025em; color: var(--ink); margin: 0 2px; }
.pp-pg .pp-panel .sll-nums, .pp-pg .pp-panel .slh-nums { display: grid; gap: 12px; margin: 20px 0 0; }
.pp-pg .pp-panel .sll-num, .pp-pg .pp-panel .slh-num {
  margin: 0; padding: 20px; text-align: center; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); font-size: 11px; line-height: 1.4; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; color: color-mix(in srgb, var(--ink) 50%, transparent);
}
.pp-pg .pp-panel .sll-num b, .pp-pg .pp-panel .slh-num b { display: block; margin: 0 0 6px; font-family: var(--font-display); font-size: 30px; line-height: 1; font-weight: 800; letter-spacing: -.02em; color: var(--ink); text-transform: none; }

/* --------------------------------------------------------------- FAQ ---- */
/* их карточка-вопрос: rounded-3xl bg-white/60 p-5 + <button> с плюсом h-6 w-6 rounded-full bg-ink text-accent (rotate-45 открытым) */
.pp-pg .pp-panel .sll-faq, .pp-pg .pp-panel .slh-faq, .pp-pg .pp-panel .slqa, .pp-pg .pp-panel .core__group--items {
  display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 20px 0 0 !important; padding: 0 !important; border: 0 !important; background: none !important; width: 100% !important; max-width: 100% !important; border-radius: 0 !important;
}
.pp-pg .pp-panel .sll-faq details, .pp-pg .pp-panel .slh-faq details, .pp-pg .pp-panel .slqa details { margin: 0; padding: 20px; }
.pp-pg .pp-panel .sll-faq summary, .pp-pg .pp-panel .slh-faq summary, .pp-pg .pp-panel .slqa summary {
  display: flex !important; align-items: center; justify-content: space-between; gap: 16px; margin: 0 !important; padding: 0 !important; list-style: none; cursor: pointer; background: none !important; border: 0 !important;
  font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important; color: var(--ink) !important;
}
.pp-pg .pp-panel .sll-faq summary::-webkit-details-marker, .pp-pg .pp-panel .slh-faq summary::-webkit-details-marker, .pp-pg .pp-panel .slqa summary::-webkit-details-marker { display: none; }
.pp-pg .pp-panel .slqa summary > h3 { display: inline; margin: 0 !important; padding: 0; font: inherit !important; color: inherit !important; letter-spacing: 0 !important; text-transform: none !important; }
.pp-pg .pp-panel .sll-faq summary::after, .pp-pg .pp-panel .slh-faq summary::after, .pp-pg .pp-panel .slqa summary::after,
.pp-pg .pp-panel .ecom-accordion_nav--icon {
  content: '+'; position: static; display: flex; width: 24px; height: 24px; flex-shrink: 0; align-items: center; justify-content: center; margin: 0;
  border-radius: 999px; background: var(--ink); color: var(--accent); font-size: 14px; line-height: 1; font-weight: 500; transform: none; transition: transform .15s var(--pp-ease);
}
.pp-pg .pp-panel .sll-faq summary::before, .pp-pg .pp-panel .slh-faq summary::before, .pp-pg .pp-panel .slqa summary::before { display: none; }
.pp-pg .pp-panel .sll-faq details[open] summary::after, .pp-pg .pp-panel .slh-faq details[open] summary::after, .pp-pg .pp-panel .slqa details[open] summary::after { transform: rotate(45deg); }
.pp-pg .pp-panel .sll-faq details p, .pp-pg .pp-panel .slh-faq details p, .pp-pg .pp-panel .slqa details p {
  margin: 12px 0 0 !important; padding: 0 !important; border: 0; font-family: var(--font-body) !important; font-size: 13px !important; line-height: 1.625 !important; color: color-mix(in srgb, var(--ink) 65%, transparent) !important;
}
/* аккордеон eComposer (FAQ, about): та же карточка, плюс из нашего ::before, их svg спрятан */
.pp-pg .pp-panel .ecom-accordion__item { margin: 0 !important; padding: 20px !important; width: auto !important; }
.pp-pg .pp-panel .ecom-accordion__title { display: flex !important; align-items: center; justify-content: space-between; gap: 16px; padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; cursor: pointer; min-height: 0 !important; }
.pp-pg .pp-panel .ecom-accordion_wrapper-info { order: 1 !important; flex: 1 1 auto; min-width: 0; padding: 0 !important; margin: 0 !important; gap: 0 !important; }
.pp-pg .pp-panel .ecom-accordion_icon-title { display: none !important; }
.pp-pg .pp-panel .ecom-accordion__title-text { margin: 0 !important; padding: 0 !important; font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ink) !important; }
.pp-pg .pp-panel .ecom-accordion_nav--icon { order: 2 !important; padding: 0 !important; margin: 0 !important; }
.pp-pg .pp-panel .ecom-accordion_nav--icon svg { display: none !important; }
.pp-pg .pp-panel .ecom-accordion_nav--icon::before { content: '+'; }
.pp-pg .pp-panel .ecom-accordion_nav--icon.ecom-items-icon-active { display: none !important; }
.pp-pg .pp-panel .ecom-item-active > .ecom-accordion__title .ecom-accordion_nav--icon { transform: rotate(45deg); }
.pp-pg .pp-panel .ecom-accordion__body { padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; }
.pp-pg .pp-panel .ecom-accordion__body .ec-flex-wp, .pp-pg .pp-panel .ecom-accordion__body .core__blocks, .pp-pg .pp-panel .ecom-accordion__body .core__blocks--body { padding: 0 !important; margin: 0 !important; }
.pp-pg .pp-panel .ecom-accordion__body .ecom-block { margin: 12px 0 0 !important; padding: 0 !important; }
.pp-pg .pp-panel .ecom-accordion__body .text-content, .pp-pg .pp-panel .ecom-accordion__body .text-content p, .pp-pg .pp-panel .ecom-accordion__body .text-content div { font-size: 13px !important; color: color-mix(in srgb, var(--ink) 65%, transparent) !important; }
.pp-pg .pp-panel details.ecom-accordion__item > summary { display: flex !important; align-items: center; justify-content: space-between; gap: 16px; padding: 0 !important; margin: 0 !important; list-style: none; background: none !important; border: 0 !important; cursor: pointer; }
.pp-pg .pp-panel details.ecom-accordion__item > summary::-webkit-details-marker { display: none; }
.pp-pg .pp-panel details.ecom-accordion__item > summary::after { content: '+'; display: flex; width: 24px; height: 24px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 999px; background: var(--ink); color: var(--accent); font-size: 14px; line-height: 1; transition: transform .15s var(--pp-ease); }
.pp-pg .pp-panel details.ecom-accordion__item[open] > summary::after { transform: rotate(45deg); }
.pp-pg .pp-panel details.ecom-accordion__item > summary svg, .pp-pg .pp-panel details.ecom-accordion__item > summary i { display: none !important; }
.pp-pg .pp-panel .slqa-cta { margin: 20px 0 0; text-align: center; }

/* ------------------------------------------------------------- шаги ---- */
/* .slsteps (иконка + подпись) → строки с иконкой в стеклянной карточке, как на товаре */
.pp-pg .pp-panel .slsteps { max-width: none; margin: 0; padding: 0; border: 0; background: none; font-family: var(--font-body); width: auto; }
.pp-pg .pp-panel.slsteps { max-width: none; width: auto; font-family: var(--font-body); }
.pp-pg .pp-panel .slsteps__list { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; margin: 0; padding: 0; list-style: none; }
.pp-pg .pp-panel .slsteps__list > li {
  display: grid !important; grid-template-columns: 56px 1fr !important; grid-template-rows: auto auto; column-gap: 14px; align-items: center; align-content: center;
  margin: 0 !important; padding: 16px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important;
  background: rgba(255, 255, 255, .6) !important; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: var(--pp-shadow-card);
}
.pp-pg .pp-panel .slsteps__ico, .pp-pg .pp-panel .slsteps__list > li > img { grid-row: 1 / 3; width: 56px !important; height: 56px !important; border-radius: 12px !important; background: var(--sage-soft) !important; padding: 8px !important; object-fit: contain; margin: 0 !important; }
.pp-pg .pp-panel .slsteps__list > li b { font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important; color: var(--ink) !important; margin: 0 !important; }
.pp-pg .pp-panel .slsteps__list > li span { font-family: var(--font-body) !important; font-size: 13px !important; line-height: 1.625 !important; color: color-mix(in srgb, var(--ink) 65%, transparent) !important; }
.pp-pg .pp-panel .slsteps__note { border: 0 !important; padding: 0 !important; margin: 14px 0 0 !important; text-align: center; }

/* ----------------------------------------------- eComposer-секции в панели ---- */
.pp-pg .pp-panel .ecom-section, .pp-pg .pp-panel .ecom-row { padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; width: 100% !important; max-width: none !important; min-height: 0 !important; }
.pp-pg .pp-panel .ecom-section + .ecom-section, .pp-pg .pp-panel .ecom-section + form, .pp-pg .pp-panel form + .ecom-section { margin-top: 20px !important; }
.pp-pg .pp-panel .core__row--columns { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 16px !important; margin: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; }
.pp-pg .pp-panel .ecom-column { padding: 0 !important; width: 100% !important; max-width: none !important; min-width: 0 !important; flex: none !important; }
.pp-pg .pp-panel .core__column--wrapper { padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; min-height: 0 !important; }
.pp-pg .pp-panel .ecom-block { padding: 0 !important; margin: 0 0 12px !important; width: 100% !important; max-width: none !important; background: none !important; border: 0 !important; box-shadow: none !important; }
.pp-pg .pp-panel .ecom-block:last-child { margin-bottom: 0 !important; }
.pp-pg .pp-panel .ecom__element, .pp-pg .pp-panel .ecom-element { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; }
.pp-pg .pp-panel .ecom__heading:not(.pp-shine) { background: none !important; padding: 0 !important; }
.pp-pg .ecom-group, .pp-pg .core__group--wrapper { width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; left: 0 !important; }
.pp-pg .pp-panel .ecom-section .ecom-animation { animation: none !important; opacity: 1 !important; transform: none !important; }
.pp-pg .pp-panel .ecom-overlay, .pp-pg .pp-panel .ecom-column__overlay, .pp-pg .pp-panel .ecom-section__overlay { display: none !important; }
.pp-pg .pp-panel .element__spacer, .pp-pg .pp-panel .ecom__element-spacer { display: none !important; }
/* «View more / View less» конструктора оставляем как на проде (16.10): кнопки — часть контента */
.pp-pg .pp-panel .ecom-text--is-mark::after { display: none !important; }
.pp-pg .pp-panel .sl-disc-h h2 { }
/* слайдер eComposer: слайд как карточка с фото, стрелки — их круглые кнопки */
.pp-pg .pp-panel .ecom-slider--container { border-radius: 24px; overflow: hidden; }
.pp-pg .pp-panel .ecom-swiper-slide, .pp-pg .pp-panel .ecom-content-item, .pp-pg .pp-panel .ecom-slider__image--wrapper { border: 0 !important; border-radius: 24px; overflow: hidden; box-shadow: none !important; }
.pp-pg .pp-panel .ecom-slider__image--wrapper img { border-radius: 0; width: 100% !important; height: 100% !important; object-fit: cover; }
.pp-pg .pp-panel .ecom-content-item__container { padding: 20px !important; }
.pp-pg .pp-panel .ecom-content-item__container .core__row--columns { gap: 12px !important; }
.pp-pg .pp-panel .ecom-content-item__container .ecom-column:has(.text-content, .ecom__heading, .ecom-image-picture-link) { border-radius: 20px; background: rgba(255, 255, 255, .72) !important; padding: 16px !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.pp-pg .pp-panel .ecom-content-item__container:not(:has(.text-content, .ecom__heading, .ecom-image-picture-link)) { display: none !important; }
.pp-pg .pp-panel .ecom-swiper-button { width: 40px !important; height: 40px !important; border-radius: 999px !important; background: rgba(255, 255, 255, .9) !important; color: var(--dark) !important; border: 1px solid rgba(0, 0, 0, .1) !important; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1); }
.pp-pg .pp-panel .ecom-swiper-button svg { width: 14px !important; height: 14px !important; }
/* таймлайн eComposer: пункт — карточка с фото */
.pp-pg .pp-panel .ecom-timeline_grid { display: grid !important; gap: 12px; }
.pp-pg .pp-panel .ecom-timeline_item { padding: 0 !important; margin: 0 !important; }
.pp-pg .pp-panel .timeline-item_line-holder, .pp-pg .pp-panel .timeline-item_point-holder, .pp-pg .pp-panel .ecom-timeline_dynamic-line, .pp-pg .pp-panel .ecom-timeline_prev, .pp-pg .pp-panel .ecom-timeline_next { display: none !important; }
.pp-pg .pp-panel .timeline-item_content-wrapper { display: block; padding: 16px !important; margin: 0 !important; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); box-shadow: var(--pp-shadow-card); }
.pp-pg .pp-panel .timeline-item_content--top { padding: 0 !important; margin: 0 0 12px !important; }
.pp-pg .pp-panel .timeline-item_content--top:empty, .pp-pg .pp-panel .timeline-item_image:empty, .pp-pg .pp-panel .timeline-item_title:empty, .pp-pg .pp-panel .timeline-item_text:empty, .pp-pg .pp-panel .timeline-item_date:empty { display: none !important; }
.pp-pg .pp-panel .timeline-item_image img { width: 100%; height: auto; border-radius: 16px; display: block; }
.pp-pg .pp-panel .timeline-item_content, .pp-pg .pp-panel .timeline-item_wrapper { padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
.pp-pg .pp-panel .timeline-item_title { font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important; color: var(--ink) !important; margin: 0 0 6px !important; }
.pp-pg .pp-panel .timeline-item_text { font-family: var(--font-body) !important; font-size: 13px !important; line-height: 1.625 !important; color: color-mix(in srgb, var(--ink) 65%, transparent) !important; }
.pp-pg .pp-panel .timeline-item_text b { display: block; color: var(--ink); font-weight: 700; font-size: 15px; margin: 0 0 4px; }
.pp-pg .pp-panel .ecom-base-timeline[data-appearance-animation] .timeline-item_content--top, .pp-pg .pp-panel .ecom-base-timeline[data-appearance-animation] .timeline-item_content,
.pp-pg .pp-panel .ecom-base-timeline[data-appearance-animation] .timeline-item_content-info, .pp-pg .pp-panel .ecom-timeline_item { opacity: 1 !important; transform: none !important; visibility: visible !important; }
/* галерея eComposer */
.pp-pg .pp-panel .ecom-gallery--container { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 16px 0 0; }
.pp-pg .pp-panel .ecom-gallery--item { margin: 0 !important; padding: 0 !important; border-radius: 16px; overflow: hidden; }
.pp-pg .pp-panel .ecom-gallery--item img { width: 100%; height: auto; display: block; }
/* вкладки eComposer (how-it-works на телефоне): навигация — их чипы, тело — карточка */
.pp-pg .pp-panel .tabs__navs, .pp-pg .pp-panel .tabs__navs-wrapper { margin: 0 0 12px !important; padding: 0 !important; background: none !important; border: 0 !important; width: 100% !important; }
.pp-pg .pp-panel .tabs__navs--items { display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.pp-pg .pp-panel .tabs__nav { flex: 0 0 auto !important; margin: 0 !important; padding: 8px 14px !important; border-radius: 999px !important; border: 1px solid color-mix(in srgb, var(--ink) 20%, transparent) !important; background: rgba(255, 255, 255, .55) !important; width: auto !important; min-width: 0 !important; box-shadow: none !important; }
.pp-pg .pp-panel .tabs__nav.ecom-item-active { background: var(--dark) !important; border-color: var(--dark) !important; }
.pp-pg .pp-panel .tabs__nav .tabs_nav--text { margin: 0 !important; padding: 0 !important; font-family: var(--font-body) !important; font-size: 12px !important; line-height: 16px !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ink) !important; white-space: nowrap; }
.pp-pg .pp-panel .tabs__nav.ecom-item-active .tabs_nav--text { color: #fff !important; }
.pp-pg .pp-panel .tabs_nav--sub-text:empty, .pp-pg .pp-panel .tabs_nav--content_right > :empty { display: none !important; }
.pp-pg .pp-panel .tabs__body { padding: 20px !important; margin: 0 !important; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); box-shadow: var(--pp-shadow-card); }
.pp-pg .pp-panel .tabs__body h3.ecom__heading { font-size: 18px !important; text-align: left; margin: 0 0 6px !important; }

/* ------------------------------------------------------ липкие табы ---- */
/* их <nav class="sticky top-[60px] z-30 border-y border-gray-200 bg-white/90 backdrop-blur"> ·
   <a class="border-b-2 border-transparent py-4 text-sm font-semibold text-gray-700"> */
.pp-pg .pp-tabs {
  position: sticky; top: calc(env(safe-area-inset-top) + 86px); z-index: 30; margin: 0 -12px 16px; border-top: 1px solid #e5e7eb; border-bottom: 1px solid #e5e7eb;
  background: rgba(255, 255, 255, .9); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.pp-pg .pp-tabs__in { display: flex; align-items: center; gap: 32px; padding: 0 24px; overflow-x: auto; scrollbar-width: none; max-width: 64rem; margin: 0 auto; }
.pp-pg .pp-tabs__in::-webkit-scrollbar { display: none; }
.pp-pg .pp-tabs a { display: inline-block !important; white-space: nowrap; border-bottom: 2px solid transparent; padding: 16px 0; font-size: 14px; line-height: 20px; font-weight: 600; color: #374151; transition: color .15s var(--pp-ease), border-color .15s var(--pp-ease); }
.pp-pg .pp-tabs a::before { content: attr(data-l); }
.pp-pg .pp-tabs a:hover { border-color: var(--sage); color: var(--ink-2); }
.pp-pg .pp-panel[id] { scroll-margin-top: 150px; }

/* ================================================= how-it-works (steps + timeline) */
/* hero: h1 + три шага с фото → их чеклист шагов с номерами в кружках (h-11 w-11 rounded-full bg-white border-white/70 shadow-sm display text-sm text-ink-2) */
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj { margin-top: 24px !important; counter-reset: pphiw; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .core__row--columns { gap: 12px !important; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-column { counter-increment: pphiw; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .core__blocks--body {
  display: grid; grid-template-columns: 44px 1fr; grid-template-rows: auto auto auto; column-gap: 14px; row-gap: 4px; align-items: start;
  padding: 16px; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); box-shadow: var(--pp-shadow-card);
}
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .core__blocks--body::before {
  content: '0' counter(pphiw); grid-area: 2 / 1 / 4 / 2; display: flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .7); background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .1); font-family: var(--font-display); font-size: 14px; font-weight: 800; color: var(--ink-2);
}
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block { margin: 0 !important; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block:nth-child(1) { grid-area: 1 / 1 / 2 / 3; margin-bottom: 12px !important; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block:nth-child(2) { grid-area: 2 / 2 / 3 / 3; align-self: center; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block:nth-child(3) { grid-area: 3 / 2 / 4 / 3; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block:nth-child(2) .text-content { font-family: var(--font-display) !important; font-size: 18px !important; line-height: 1.2 !important; font-weight: 800 !important; letter-spacing: -.02em; color: var(--ink) !important; text-align: left; margin: 0; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-block:nth-child(3) .text-content { font-size: 13px !important; color: color-mix(in srgb, var(--ink) 60%, transparent) !important; text-align: left; margin: 0; }
.pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .ecom-image-content-position { border-radius: 16px; box-shadow: none; }
/* «Before you open the putty»: текст + карточка-гид с фото (их фигура rounded-3xl) */
.pp-pg--hiw .pp-hiw-putty .sl-guide__card { display: block; margin: 16px auto 0; max-width: 480px; }
.pp-pg--hiw .pp-hiw-putty .sl-guide__img, .pp-pg--hiw .pp-hiw-putty .sl-guide__card img { display: block; width: 100%; height: auto; border-radius: 0; }
.pp-pg--hiw .pp-hiw-putty .sl-guide__cap { display: block; padding: 14px 20px; font-size: 14px; font-weight: 700; color: var(--ink-2); background: #fff; }
.pp-pg--hiw .pp-hiw-putty .sl-guide__cap::after { content: ' →'; }
/* таймлайн: их ряды border-t border-black/10 pt-4 · подпись text-[10px] uppercase tracking-widest text-ink-2 · h3 display text-lg · p text-sm text-gray-500 */
.pp-pg--hiw .pp-hiw-timeline .ecom-yjpmbpuj2oo { margin-top: 8px !important; }
.pp-pg--hiw .pp-hiw-timeline .ecom-m41acphr5v .ecom-block { position: relative; margin: 0 !important; padding: 16px 0 16px 28px !important; border-top: 1px solid rgba(0, 0, 0, .1); }
.pp-pg--hiw .pp-hiw-timeline .ecom-m41acphr5v .ecom-block::before { content: ''; position: absolute; left: 4px; top: 22px; width: 10px; height: 10px; border-radius: 999px; background: var(--ink-2); box-shadow: 0 0 0 4px color-mix(in srgb, var(--sage-soft) 70%, transparent); }
.pp-pg--hiw .pp-hiw-timeline .ecom-m41acphr5v .ecom-block:last-child::before { background: var(--accent); }
.pp-pg--hiw .pp-hiw-timeline .ecom-m41acphr5v .ecom-block .text-content { text-align: left; font-size: 14px !important; color: var(--pp-gray-500) !important; }
.pp-pg--hiw .pp-hiw-timeline .ecom-m41acphr5v .ecom-block .text-content ul { margin: 12px 0 0; }
.pp-pg--hiw .pp-hiw-timeline .ecom-he3ss72ysrr img { border-radius: 24px; box-shadow: 0 24px 55px -30px rgba(20, 50, 38, .3); }
/* «Eight things»: карточки 2 в ряд, первый текст — заголовок */
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .ecom-mxtmg70b2kc > .core__column--wrapper > .core__blocks > .core__blocks--body > .ecom-block { margin: 0 0 12px !important; }
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .core__row--columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px !important; }
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .ecom-column > .core__column--wrapper { padding: 16px !important; border-radius: 20px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card); height: 100%; }
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .ecom-column .ecom-block:first-child .text-content { font-size: 15px !important; font-weight: 700 !important; color: var(--ink) !important; text-align: left; }
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .ecom-column .ecom-block + .ecom-block .text-content { font-size: 13px !important; text-align: left; }
.pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .ecom-column .ecom-block { margin: 0 0 4px !important; }
/* «Not sure which one you need» (ночная панель): три семейства как карточки, фото-ссылки парой */
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .core__row--columns { gap: 12px !important; }
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .ecom-column > .core__column--wrapper { padding: 20px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .1) !important; background: rgba(255, 255, 255, .06) !important; }
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .ecom-column .ecom-block:first-child .text-content { font-family: var(--font-display) !important; font-size: 22px !important; line-height: 1.1 !important; font-weight: 800 !important; color: #fff !important; text-align: left; }
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .core__blocks--body { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .core__blocks--body > .ecom-block { grid-column: 1 / -1; }
.pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .core__blocks--body > .ecom-block:has(.ecom-image-picture-link) { grid-column: auto; margin: 0 !important; }
.pp-pg--hiw .pp-hiw-families .ecom-image-picture-link { background: linear-gradient(180deg, rgba(255, 255, 255, .10) 0%, rgba(255, 255, 255, .03) 100%); border-color: rgba(255, 255, 255, .1); }
.pp-pg--hiw .pp-hiw-families .ecom-image-picture-link img { filter: drop-shadow(0 18px 28px rgba(0, 0, 0, .45)); }
.pp-pg--hiw .pp-hiw-families .ecom-swiper-slide .ecom-content-item__container .ecom-column { background: rgba(0, 0, 0, .55) !important; color: #fff; }
.pp-pg--hiw .pp-hiw-families .ecom-swiper-slide h3.ecom__heading { color: #fff !important; }
.pp-pg--hiw .pp-hiw-families .ecom-swiper-slide .text-content { color: rgba(255, 255, 255, .8) !important; }
.pp-pg--hiw .pp-hiw-families .ecom-mv7hzragnx .text-content, .pp-pg--hiw .pp-hiw-families .ecom-6wee1xdz24n .text-content { text-align: left; }
.pp-pg--hiw .pp-hiw-families .text-content ul li { background: rgba(255, 255, 255, .06); color: #fff; }
.pp-pg--hiw .pp-hiw-families .text-content ul { border-color: rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .04); }
.pp-pg--hiw .pp-hiw-families .text-content ul li::before { background: var(--accent); color: var(--ink); }
/* «Inside the kit» (золотая панель): список → пилюли, фото → плашка */
.pp-pg--hiw .pp-hiw-kit .text-content ul { border-color: rgba(255, 255, 255, .6); background: rgba(255, 255, 255, .35); }
.pp-pg--hiw .pp-hiw-kit .ecom-base-image .ecom-image-content-position { background: var(--pp-plate-grad); border: 1px solid rgba(255, 255, 255, .6); padding: 16px; }
.pp-pg--hiw .pp-hiw-kit .slov { padding: 16px; background: #fff; border-color: rgba(0, 0, 0, .05); }
/* цвет и исправление: фото + текст */
.pp-pg--hiw .pp-hiw-color .ecom-pded26lvhh .text-content, .pp-pg--hiw .pp-hiw-fix .ecom-cly8de9qqgm .text-content { text-align: left; }
/* «Three things in every box»: три карточки (название · подпись · фото) */
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .core__row--columns { gap: 12px !important; }
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .ecom-column > .core__column--wrapper { padding: 16px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card); }
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .ecom-column .ecom-block:first-child .text-content { font-family: var(--font-display) !important; font-size: 18px !important; line-height: 1.2 !important; font-weight: 800 !important; color: var(--ink) !important; text-align: left; }
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .ecom-column .ecom-block + .ecom-block .text-content { font-size: 13px !important; text-align: left; }
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .ecom-column .ecom-block { margin: 0 0 6px !important; }
.pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .ecom-base-image .ecom-image-content-position { border-radius: 16px; box-shadow: none; margin-top: 8px; }

/* ====================================================== about-us (about-reasons) */
/* hero: h1 display + фото в плашке + лид */
.pp-pg--about .pp-ab-hero .ecom-y2gah7x1itb, .pp-pg--about .pp-ab-hero .ecom-plynpn20w9 { margin-top: 20px !important; }
.pp-pg--about .pp-ab-hero .ecom-base-image .ecom-image-content-position { border-radius: 28px; }
/* «Why we exist»: их display text-5xl leading-[0.98] + text-lg lead + чеклист */
.pp-pg--about .pp-ab-why h2.ecom__heading, .pp-pg--about .pp-ab-why h3.ecom__heading { font-size: 36px !important; line-height: .98 !important; text-align: center; margin: 0 0 24px !important; }
.pp-pg--about .pp-ab-why .ecom-k2o4b1ls3q .text-content { font-size: 16px !important; color: color-mix(in srgb, var(--ink) 70%, transparent) !important; text-align: center; max-width: 32rem; margin: 0 auto; }
.pp-pg--about .pp-ab-why .ecom-fob8ptpkm5n .text-content ul { margin: 0; }
/* «Who is at the bench» (белая панель): два фото рядом */
.pp-pg--about .pp-ab-bench .ecom-0jvxe8qesb6d .core__row--columns { grid-template-columns: 1fr 1fr; gap: 12px !important; margin-top: 16px !important; }
.pp-pg--about .pp-ab-bench .text-content { text-align: center; max-width: 32rem; margin: 0 auto; }
/* «What we make»: стат-плитки 3 (их 2×2 «60 / 50») + карточки семейств с номерами 01–03 + кнопка */
.pp-pg--about .pp-ab-make .ecom-eduqdc0m7a7 .core__row--columns { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px !important; margin-top: 20px !important; }
.pp-pg--about .pp-ab-make .ecom-eduqdc0m7a7 .ecom-column > .core__column--wrapper { padding: 16px 8px !important; text-align: center; border-radius: 20px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .55) !important; box-shadow: var(--pp-shadow-card); }
.pp-pg--about .pp-ab-make .ecom-eduqdc0m7a7 .ecom-block { margin: 0 !important; }
.pp-pg--about .pp-ab-make .ecom-eduqdc0m7a7 .ecom-block:first-child .text-content { font-family: var(--font-display) !important; font-size: 15px !important; line-height: 1.1 !important; font-weight: 800 !important; color: var(--ink) !important; text-align: center; }
.pp-pg--about .pp-ab-make .ecom-eduqdc0m7a7 .ecom-block + .ecom-block .text-content { margin-top: 6px; font-size: 10px !important; line-height: 15px !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .1em !important; color: var(--ink-2) !important; text-align: center; }
.pp-pg--about .pp-ab-make .ecom-pla7jcplfac .core__row--columns, .pp-pg--about .pp-ab-make .ecom-36ekt1aydx9 .ecom-timeline_grid { gap: 12px !important; margin-top: 20px !important; counter-reset: ppnum; }
.pp-pg--about .pp-ab-make .ecom-pla7jcplfac .ecom-column > .core__column--wrapper, .pp-pg--about .pp-ab-make .ecom-36ekt1aydx9 .timeline-item_content-wrapper {
  counter-increment: ppnum; padding: 20px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card); position: relative;
}
.pp-pg--about .pp-ab-make .ecom-pla7jcplfac .ecom-column > .core__column--wrapper::before, .pp-pg--about .pp-ab-make .ecom-36ekt1aydx9 .timeline-item_content-wrapper::before,
.pp-pg--about .pp-ab-lab .ecom-xp45f1xizgm .ecom-column > .core__column--wrapper::before, .pp-pg--about .pp-ab-lab .ecom-bgkkrvh3ass .ecom-column > .core__column--wrapper::before {
  content: '0' counter(ppnum); display: flex; width: 36px; height: 36px; align-items: center; justify-content: center; border-radius: 999px; background: var(--ink); color: var(--accent); margin: 0 0 14px;
  font-family: var(--font-display); font-size: 13px; font-weight: 800; letter-spacing: -.02em;
}
.pp-pg--about .pp-ab-make .ecom-pla7jcplfac .ecom-base-image .ecom-image-content-position { border-radius: 16px; box-shadow: none; }
.pp-pg--about .pp-ab-make .ecom-pla7jcplfac .text-content { text-align: left; font-size: 13px !important; }
.pp-pg--about .pp-ab-make .ecom-9x3q7fblke .text-content { text-align: center; }
.pp-pg--about .pp-ab-make .ecom-nn4a0g8zvgm, .pp-pg--about .pp-ab-make .ecom-z0mt7k83gil { text-align: center; }
/* «What you get from a lab»: карточки с номерами (их «6 reasons») */
.pp-pg--about .pp-ab-lab .ecom-xp45f1xizgm .core__row--columns, .pp-pg--about .pp-ab-lab .ecom-bgkkrvh3ass .core__row--columns { gap: 12px !important; margin-top: 20px !important; counter-reset: ppnum; }
.pp-pg--about .pp-ab-lab .ecom-xp45f1xizgm .ecom-column > .core__column--wrapper, .pp-pg--about .pp-ab-lab .ecom-bgkkrvh3ass .ecom-column > .core__column--wrapper {
  counter-increment: ppnum; padding: 24px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card);
}
.pp-pg--about .pp-ab-lab .ecom-column .ecom-block { margin: 0 !important; }
.pp-pg--about .pp-ab-lab .ecom-column .ecom-block:first-child .text-content { font-family: var(--font-display) !important; font-size: 20px !important; line-height: 1.2 !important; font-weight: 800 !important; color: var(--ink) !important; text-align: left; margin: 0 0 8px; }
.pp-pg--about .pp-ab-lab .ecom-column .ecom-block + .ecom-block .text-content { font-size: 13px !important; text-align: left; color: color-mix(in srgb, var(--ink) 60%, transparent) !important; }
.pp-pg--about .pp-ab-lab .ecom-eut3ae1ysg .text-content, .pp-pg--about .pp-ab-lab .ecom-jjjrpygytzg .text-content { text-align: center; max-width: 32rem; margin: 0 auto; }
/* CTA (золотая): h2 крупно, фото-слайдер, две кнопки */
.pp-pg--about .pp-ab-cta h2.ecom__heading, .pp-pg--about .pp-ab-cta h3.ecom__heading { font-size: 36px !important; line-height: 1.02 !important; text-align: center; }
.pp-pg--about .pp-ab-cta .text-content { text-align: center; max-width: 32rem; margin: 0 auto; }
.pp-pg--about .pp-ab-cta .ecom-6i1cfm5dahw .core__row--columns, .pp-pg--about .pp-ab-cta .ecom-2f2j73n3gu5 .core__row--columns { gap: 12px !important; }
.pp-pg--about .pp-ab-cta .ecom-gh5k5t5mhch .ecom__element--button, .pp-pg--about .pp-ab-cta .ecom-y9dhxmjscr .ecom__element--button { background: rgba(255, 255, 255, .5) !important; color: var(--ink) !important; box-shadow: none !important; border: 1px solid color-mix(in srgb, var(--ink) 25%, transparent) !important; }
.pp-pg--about .pp-ab-cta .ecom__element--button { width: 100%; }
.pp-pg--about .pp-ab-faq .ecom__element--button { margin-top: 20px !important; }

/* ======================================================== contact (contact-form) */
.pp-pg--contact .slcontact { width: auto; max-width: none; margin: 0 0 16px; }
.pp-pg--contact .slcontact__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 24px 0 0; }
/* их карточка «Direct emails»: p-7, эйбро, display text-2xl, p text-sm gray-600, низ со стрелкой border-t */
.pp-pg--contact .slcontact__card { display: flex; flex-direction: column; padding: 28px; transition: transform .3s var(--pp-ease); }
.pp-pg--contact a.slcontact__card:hover { transform: translateY(-4px); background: #fff; border-color: rgba(0, 0, 0, .05); }
.pp-pg--contact .slcontact__card b { margin: 0 0 16px; }
.pp-pg--contact .slcontact__card span { display: block; font-family: var(--font-display); font-size: 22px; line-height: 1.1; font-weight: 800; letter-spacing: -.02em; color: var(--dark); margin: 0 0 8px; overflow-wrap: anywhere; }
.pp-pg--contact a[href^="mailto"].slcontact__card span { font-size: 17px; }
.pp-pg--contact .slcontact__card em { display: block; font-style: normal; font-size: 14px; line-height: 1.625; color: var(--pp-gray-600); flex: 1; margin: 0 0 20px; }
.pp-pg--contact a.slcontact__card::after { content: '→'; display: block; padding: 16px 0 0; border-top: 1px solid rgba(0, 0, 0, .05); font-size: 14px; font-weight: 600; color: var(--ink-2); text-align: right; }
.pp-pg--contact .pp-panel div.slcontact__card { background: var(--pp-call-grad); border-color: transparent; color: #fff; }
.pp-pg--contact .pp-panel div.slcontact__card b { color: rgba(255, 255, 255, .7) !important; }
.pp-pg--contact .pp-panel div.slcontact__card span { color: #fff; }
.pp-pg--contact .pp-panel div.slcontact__card em { color: rgba(255, 255, 255, .7); margin: 0; }
.pp-pg--contact .slcontact-steps .slsteps__title { margin-bottom: 20px !important; }

/* ===================================================== лендинги .sll (cost-cards) */
.pp-pg--sll .sll { background: #fff; color: var(--text); font-family: var(--font-body); }
.pp-pg--sll .sll-in { max-width: none; padding: 0; }
.pp-pg--sll .pp-panel.sll-sec, .pp-pg--sll .pp-panel.sll-hero { padding: 24px; border: 1px solid rgba(0, 0, 0, .05); }
.pp-pg--sll .pp-panel.sll-sec--warm, .pp-pg--sll .pp-panel.sll-sec--plain, .pp-pg--sll .pp-panel.sll-sec--prose { background: var(--mist-grad); }
.pp-pg--sll .pp-panel.sll-sec--ink { background: var(--night); color: #fff; }
.pp-pg--sll .sll-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.pp-pg--sll .sll-hero__media { order: 2; }
.pp-pg--sll .sll-hero__copy { order: 1; text-align: center; }
.pp-pg--sll .sll-crumbs { text-align: center; margin-bottom: 16px; }
.pp-pg--sll .sll-eyebrow { margin: 0 0 12px; text-align: center; }
.pp-pg--sll .sll-chips { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.pp-pg--sll .sll-chips li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 16px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .55);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); font-size: 13px; line-height: 1.375; font-weight: 500; color: var(--ink); box-shadow: none; white-space: normal; }
.pp-pg--sll .sll-chips li::before { content: '✓'; position: static; width: 14px; height: 14px; border-radius: 0; background: none; font-size: 12px; font-weight: 900; line-height: 14px; color: var(--ink-2); flex-shrink: 0; }
.pp-pg--sll .sll-split { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.pp-pg--sll .sll-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 20px 0 0; }
.pp-pg--sll .sll-card { margin: 0; }
.pp-pg--sll .sll-card .sll-h3 { margin-top: 0 !important; }
.pp-pg--sll .sll-card--sq img { width: 100%; height: auto; border-radius: 16px; display: block; margin: 0 0 12px; }
.pp-pg--sll .sll-tablewrap { margin: 20px 0 0; }
.pp-pg--sll .sll-steps { margin: 20px 0 0; }
.pp-pg--sll .sll-steps li { font-size: 14px; }
.pp-pg--sll .sll-sec--ink .sll-p a { color: var(--accent); }
.pp-pg--sll .sll-sec--ink .sll-plate { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .1); color: #fff; }
.pp-pg--sll .sll-sec--ink .sl-oos__head, .pp-pg--sll .sll-sec--ink .sl-oos__note { color: #fff; }
.pp-pg--sll .sll-sec--ink .sl-oos__note { color: rgba(255, 255, 255, .7); }
.pp-pg--sll .sll-sec--ink h2 { text-align: center; }
.pp-pg--sll .sll-sec--ink .sll-p { text-align: center; }
.pp-pg--sll .sll-sec--prose .sll-p { font-size: 15px !important; }

/* ============================================================ hsa-fsa (cost-cards) */
.pp-pg--hsa .slh { background: #fff; }
.pp-pg--hsa .slh-wrap { max-width: none; padding: 0; margin: 0; }
.pp-pg--hsa .slh-hero { text-align: center; }
.pp-pg--hsa .slh-hero .slh-cta { display: flex !important; width: 100%; margin: 24px 0 0 !important; }
.pp-pg--hsa .slh-two { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 20px 0 0; }
.pp-pg--hsa .slh-col { margin: 0; }
.pp-pg--hsa .slh-col ul { margin: 12px 0 0; }
.pp-pg--hsa .slh-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 20px 0 0; }
/* их список «More in Recovery»: миниатюра h-14 w-14 rounded-xl bg-mist + имя font-bold + цена font-extrabold */
.pp-pg--hsa .slh-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 14px; align-items: center; padding: 12px 16px 12px 12px; }
.pp-pg--hsa .slh-card img { grid-row: 1 / 3; width: 72px; height: 72px; border-radius: 16px; object-fit: cover; background: var(--mist-2); display: block; }
.pp-pg--hsa .slh-card b { display: block; padding: 0; font-size: 15px; font-weight: 700; line-height: 1.3; color: var(--ink); white-space: normal; }
.pp-pg--hsa .slh-card span { display: block; padding: 2px 0 0; font-size: 18px; font-weight: 800; line-height: 1.2; color: var(--ink); }
.pp-pg--hsa .slh-card::after { content: '→'; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 14px; font-weight: 700; color: var(--ink-2); }
.pp-pg--hsa .slh-steps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 20px 0 0; }
.pp-pg--hsa .slh-step { margin: 0; }
.pp-pg--hsa .slh-step p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink); }
.pp-pg--hsa .slh-panel { margin: 20px 0 0; }
.pp-pg--hsa .slh-panel p + p { margin-top: 10px; }
.pp-pg--hsa .sl-oos-note { margin: 12px 0; }
.pp-pg--hsa .slh-hedge { margin-top: 16px; text-align: center; }
.pp-pg--hsa .slh-legal { text-align: left; max-width: none; }

/* ====================================================== инфо-страницы eComposer */
.pp-pg--policy .pp-panel--hero .text-content, .pp-pg--care .pp-panel--hero .text-content, .pp-pg--faq .pp-panel--hero .text-content, .pp-pg--acc .pp-panel--hero .text-content, .pp-pg--excl .pp-panel--hero .text-content { margin-top: 16px; }
.pp-pg--policy .pp-panel--hero h2.ecom__heading { font-size: 20px !important; margin: 24px 0 12px !important; text-align: left; }
.pp-pg--policy .pp-panel--hero .pp-card h2.ecom__heading { margin: 0 0 10px !important; }
.pp-pg--policy .pp-card + .pp-card { margin-top: 12px; }
.pp-pg--policy .pp-panel .text-content ul li, .pp-pg--care .pp-panel .text-content ul li { align-items: flex-start; }
.pp-pg--policy .sl-policy-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; font-size: 13px; font-weight: 700; color: var(--ink-2) !important; text-decoration: none !important; }
.pp-pg--policy .sl-policy-link::after { content: '→'; }
.pp-pg--policy .pp-panel--hero .pp-card, .pp-pg--care .pp-panel .pp-card { margin-top: 12px; }
.pp-pg--policy .pp-panel--hero > .ecom-section > .core__row--columns > .ecom-column > .core__column--wrapper > .core__blocks > .core__blocks--body > .ecom-block:first-child { margin-bottom: 0 !important; }
.pp-pg--policy .pp-panel .text-content h3 { font-family: var(--font-body) !important; font-size: 15px !important; font-weight: 700 !important; color: var(--ink) !important; margin: 14px 0 6px !important; }
.pp-pg .pp-panel--hero .pp-card .text-content, .pp-pg .pp-panel--hero .pp-card .text-content p, .pp-pg .pp-panel--hero .pp-card .text-content div { font-size: 13px !important; text-align: left; margin: 0; max-width: none; }
.pp-pg .pp-panel--hero .pp-card h2.ecom__heading { font-size: 20px !important; line-height: 1.2 !important; text-align: left; margin: 0 0 10px !important; }
.pp-pg .pp-panel--hero .pp-card h3.ecom__heading { font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.375 !important; font-weight: 700 !important; letter-spacing: 0 !important; margin: 14px 0 6px !important; text-align: left; }
.pp-pg .pp-panel--hero .pp-card > .ecom-block:first-child h3.ecom__heading { margin-top: 0 !important; }
/* care-and-use: фото сверху hero */
.pp-pg--care .pp-panel--hero .ecom-base-image .ecom-image-content-position { border-radius: 28px; margin-bottom: 20px; }
.pp-pg--care .pp-panel--hero .text-content strong { display: block; font-size: 16px; line-height: 1.5; color: var(--ink); font-weight: 600; }
/* how-to-take-an-impression: сырой HTML с инлайн-стилями → те же карточки */
.pp-pg--imp .pp-panel > .ecom-section div[style*="max-width:1000px"] { max-width: none !important; padding: 0 !important; }
.pp-pg--imp .pp-panel h1 { margin: 0 0 16px !important; }
.pp-pg--imp .pp-panel p { font-family: var(--font-body) !important; font-size: 14px !important; line-height: 1.625 !important; color: color-mix(in srgb, var(--ink) 70%, transparent) !important; margin: 0 0 12px !important; text-align: left; }
.pp-pg--imp .pp-panel > .ecom-section > div > div > p:first-of-type { font-size: 16px !important; text-align: center; max-width: 32rem; margin: 0 auto 8px !important; }
.pp-pg--imp .pp-panel > .ecom-section > div > div > p:nth-of-type(2) { font-size: 12px !important; text-align: center; margin: 0 auto 20px !important; }
.pp-pg--imp .pp-panel > .ecom-section img[style] { border-radius: 24px !important; box-shadow: 0 24px 55px -30px rgba(20, 50, 38, .3); margin: 0 0 20px !important; }
.pp-pg--imp .pp-card h2 { font-family: var(--font-display) !important; font-size: 20px !important; line-height: 1.2 !important; font-weight: 800 !important; letter-spacing: -.02em !important; color: var(--ink) !important; margin: 0 0 10px !important; text-align: left; }
.pp-pg--imp .pp-card p { font-size: 13px !important; }
.pp-pg--imp .pp-card p:last-child { margin-bottom: 0 !important; }
.pp-pg--imp .pp-card .slsteps { margin: 12px 0; }
.pp-pg--imp .pp-card .slsteps__title { font-size: 20px !important; text-align: left; margin: 0 0 12px !important; }
.pp-pg--imp .pp-card .slsteps__list > li { background: #fff !important; }
/* FAQ-страница: каждая тема — FAQ-панель */
.pp-pg--faq .pp-panel--faq h2.ecom__heading { margin-bottom: 8px !important; }
/* accessories: товар — фото-слайдер + карточка с ценой и кнопкой */
.pp-pg--acc .pp-panel .text-content b font, .pp-pg--acc .pp-panel .text-content font { color: var(--ink) !important; font-family: var(--font-display) !important; font-size: 30px !important; font-weight: 800 !important; letter-spacing: -.025em; line-height: 1 !important; }
.pp-pg--acc .pp-panel .ecom-column > .core__column--wrapper:has(h3.ecom__heading) { padding: 20px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card); }
.pp-pg--acc .pp-panel .ecom__element--button { width: 100%; margin-top: 8px !important; }
.pp-pg--acc .pp-panel--hero .sl-oos, .pp-pg--excl .pp-panel .sl-oos { margin-top: 16px; }
/* exclusive-services: карточки услуг с ценой в заголовке */
.pp-pg--excl .pp-panel .ecom-column > .core__column--wrapper:has(> .core__blocks > .core__blocks--body > .ecom-block > .ecom__element > h3.ecom__heading) { padding: 20px !important; border-radius: 24px !important; border: 1px solid rgba(255, 255, 255, .7) !important; background: rgba(255, 255, 255, .6) !important; box-shadow: var(--pp-shadow-card); }
.pp-pg--excl .pp-panel .ecom-product-form { margin: 0 !important; padding: 0 !important; }
.pp-pg--excl .pp-panel .tabs__body .ecom-product-form { margin: 0 !important; }
/* order-confirmed: одинокая страница со своей шапкой → наш верх, карточки */
.pp-pg--oc { max-width: 640px; margin: 0 auto; padding: 96px 12px 48px !important; }
body:has(.pp-pg--oc) .hdr { display: none; }
.pp-pg--oc .mark { width: 52px; height: 52px; border-radius: 999px; background: var(--ink); color: var(--accent); display: flex; align-items: center; justify-content: center; font-size: 24px; font-weight: 800; margin: 0 auto 18px; }
.pp-pg--oc h1 { margin: 0 0 12px !important; }
.pp-pg--oc .sub { text-align: center; margin: 0 auto 24px; font-size: 16px; color: color-mix(in srgb, var(--ink) 70%, transparent); max-width: 32rem; font-family: var(--font-body); }
.pp-pg--oc .card, .pp-pg--oc .act { margin: 0 0 12px; padding: 20px; border-radius: 24px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); box-shadow: var(--pp-shadow-card); font-family: var(--font-body); }
.pp-pg--oc .act { background: linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 60%, #fff) 0%, var(--accent-soft-2) 100%); }
.pp-pg--oc .card h2, .pp-pg--oc .act h2 { font-family: var(--font-display); font-size: 18px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 0 0 6px; white-space: normal; }
.pp-pg--oc .card p, .pp-pg--oc .act p { margin: 0; font-size: 13px; line-height: 1.625; color: color-mix(in srgb, var(--ink) 65%, transparent); }
.pp-pg--oc .foot { margin: 20px 0 0; font-size: 12px; line-height: 1.625; text-align: center; color: color-mix(in srgb, var(--ink) 55%, transparent); font-family: var(--font-body); }
.pp-pg--oc .foot a { color: var(--ink-2); text-decoration: underline; }

/* =========================================================== служебные страницы */
/* search / 404: сам <main> — панель (их hero), форма — их поиск с лупой-пилюлей, результаты — белая карточка-список */
main.pp-pg--util { position: relative; isolation: isolate; overflow: hidden; max-width: none; margin: 88px 12px 16px; padding: 32px 24px; border-radius: 32px; border: 1px solid rgba(0, 0, 0, .05); background: var(--mist-grad); font-family: var(--font-body); }
main.pp-pg--util::after { content: ''; position: absolute; top: 0; left: 50%; z-index: -1; height: 100%; width: 560px; transform: translateX(-50%); opacity: .7; pointer-events: none; background: var(--pp-ribbon-mist) center / 100% 100% no-repeat; }
.pp-pg--util .slu__code { text-align: center; }
.pp-pg--util .slu__lead { margin: 16px auto 24px; max-width: 32rem; text-align: center; }
.pp-pg--util .slu__form { display: flex; gap: 8px; margin: 20px auto 28px; max-width: 520px; }
.pp-pg--util .slu__form input { flex: 1 1 auto; min-width: 0; height: 52px; padding: 0 20px; border-radius: 999px; border: 1px solid #e5e7eb; background: #fff; font: 400 15px/1.4 var(--font-body); color: #111827; }
.pp-pg--util .slu__form input:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 4px color-mix(in srgb, var(--ink) 8%, transparent); }
.pp-pg--util .slu__form button { height: 52px; flex: 0 0 auto; }
.pp-pg--util .slu__group { margin: 0 0 20px; }
.pp-pg--util .slu__group h2 { margin: 0 0 10px; letter-spacing: .25em !important; }
.pp-pg--util .slu__list .slsr__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border-top: 1px solid rgba(0, 0, 0, .05); color: var(--ink); }
.pp-pg--util .slu__list .slsr__row:first-child { border-top: 0; }
.pp-pg--util .slu__list .slsr__row:hover { background: #f9fafb; }
.pp-pg--util .slu__list .slsr__t { font-size: 15px; font-weight: 700; line-height: 1.375; }
.pp-pg--util .slu__list .slsr__m { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.pp-pg--util .slu__list .slsr__k { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ink-2); background: var(--sage-soft); padding: 3px 8px; border-radius: 999px; }
.pp-pg--util .slu__list .slsr__p { font-size: 15px; font-weight: 800; color: var(--ink); }
.pp-pg--util .slu__empty { margin: 0 0 24px; font-size: 15px; text-align: center; color: color-mix(in srgb, var(--ink) 65%, transparent); }
.pp-pg--util .slu__doors { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 0 0 24px; }
.pp-pg--util .slu__door { display: grid; grid-template-columns: minmax(0, 1fr) 42%; height: 132px; box-shadow: var(--pp-shadow-white); }
.pp-pg--util .slu__door:hover { transform: translateY(-2px); }
.pp-pg--util .slu__copy { display: flex; flex-direction: column; justify-content: center; gap: 4px; padding: 16px 20px; min-width: 0; }
.pp-pg--util .slu__media { display: flex; align-items: center; justify-content: flex-end; min-width: 0; min-height: 0; background: var(--pp-plate-grad); }
.pp-pg--util .slu__door img { max-width: 100%; height: 100%; width: auto; object-fit: contain; }
.pp-pg--util .slu__eyebrow { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ink-2); }
.pp-pg--util .slu__name { font-family: var(--font-display); font-size: 18px; font-weight: 800; letter-spacing: -.02em; line-height: 1.15; color: var(--ink); }
.pp-pg--util .slu__from { font-size: 13px; font-weight: 700; color: var(--ink); }
.pp-pg--util .slu__out { margin: 0; font-size: 14px; line-height: 1.6; text-align: center; color: color-mix(in srgb, var(--ink) 65%, transparent); }
.pp-pg--util .slu__out + .slu__out { margin-top: 6px; }
.pp-pg--util .slu__out a { color: var(--ink-2); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
/* cart: обёртка — панель, сумма и список — белые карточки, кнопка — их тёмная пилюля */
html, body.template-cart { background: #fff; }
main.pp-pg--cart { background: #fff; padding: 88px 12px 16px !important; min-height: 0; font-family: var(--font-body); color: var(--text); }
.pp-pg--cart .slc-wrap { position: relative; isolation: isolate; overflow: hidden; max-width: none; padding: 24px; border-radius: 32px; border: 1px solid rgba(0, 0, 0, .05); background: var(--mist-grad); }
.pp-pg--cart .slc-wrap::after { content: ''; position: absolute; top: 0; left: 50%; z-index: -1; height: 100%; width: 560px; transform: translateX(-50%); opacity: .7; pointer-events: none; background: var(--pp-ribbon-mist) center / 100% 100% no-repeat; }
.pp-pg--cart .slc-title { margin: 0 0 20px !important; }
.pp-pg--cart .slc-boot { text-align: center; font-size: 14px; color: color-mix(in srgb, var(--ink) 55%, transparent); padding: 16px 0; }
.pp-pg--cart .slc-empty { padding: 32px 20px; text-align: center; }
.pp-pg--cart .slc-empty img { width: 200px; height: 200px; border-radius: 24px; object-fit: cover; margin: 0 auto 20px; }
.pp-pg--cart .slc-empty h2 { font-family: var(--font-display); font-size: 24px; line-height: 1.1; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 0 0 8px; text-transform: none; }
.pp-pg--cart .slc-empty p { font-size: 14px; line-height: 1.625; color: color-mix(in srgb, var(--ink) 65%, transparent); margin: 0 auto 20px; max-width: 28rem; }
.pp-pg--cart .slc-hsa { margin: 0 0 12px; font-size: 12px; text-align: center; color: var(--ink-2); font-weight: 600; }
.pp-pg--cart .slc-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.pp-pg--cart .slc-items { padding: 4px 20px; }
.pp-pg--cart .slc-item { grid-template-columns: 80px minmax(0, 1fr) auto; gap: 14px; padding: 16px 0; border-bottom: 1px solid rgba(0, 0, 0, .05); }
.pp-pg--cart .slc-thumb { width: 80px; height: 80px; border-radius: 16px; background: var(--mist-2); }
.pp-pg--cart .slc-name { font-size: 15px; font-weight: 700; color: var(--ink); }
.pp-pg--cart .slc-var { font-size: 13px; color: var(--pp-gray-500); }
.pp-pg--cart .slc-qty { border-radius: 999px; border-color: #e5e7eb; }
.pp-pg--cart .slc-sum { padding: 20px; }
.pp-pg--cart .slc-line { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; font-size: 14px; color: var(--pp-gray-600); border-bottom: 1px solid rgba(0, 0, 0, .05); }
.pp-pg--cart .slc-line b { color: var(--ink); font-weight: 700; }
.pp-pg--cart .slc-line--total { border-bottom: 0; font-size: 15px; font-weight: 700; color: var(--ink); }
.pp-pg--cart .slc-line--total b { font-family: var(--font-display); font-size: 24px; font-weight: 800; letter-spacing: -.02em; }
.pp-pg--cart .slc-label { display: block; margin: 16px 0 6px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .18em; color: var(--pp-gray-500); }
.pp-pg--cart .slc-input { width: 100%; padding: 14px 20px; border-radius: 999px; border: 1px solid #e5e7eb; background: #f9fafb; font: 400 14px/1.4 var(--font-body); color: #111827; }
.pp-pg--cart .slc-input:focus { outline: none; border-color: var(--ink); background: #fff; }
.pp-pg--cart .slc-cta { width: 100%; margin-top: 12px !important; padding: 16px 28px !important; }
.pp-pg--cart .slc-note { margin: 12px 0 0; font-size: 12px; line-height: 1.625; text-align: center; color: var(--pp-gray-500); }
.pp-pg--cart .slc-error { margin: 10px 0 0; font-size: 13px; color: var(--sl-copper); }
.pp-pg--cart .slc-oos { margin-top: 16px; }
/* status / upload: своя шапка прячется, карточки — стекло, кнопка — пилюля */
body:has(.pp-pg--status) { background: #fff; font-family: var(--font-body); }
body:has(.pp-pg--status) .hdr { display: none; }
main.pp-pg--status { max-width: 640px; margin: 0 auto; padding: 96px 12px 48px; font-family: var(--font-body); }
.pp-pg--status h1 { margin: 0 0 10px !important; }
.pp-pg--status .sub { margin: 0 auto 20px !important; }
.pp-pg--status .card, .pp-pg--status .act, .pp-pg--status .tips, .pp-pg--status .done { margin: 0 0 12px; border-color: rgba(0, 0, 0, .05); background: var(--mist-grad); }
.pp-pg--status .act, .pp-pg--status .tips { background: linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 60%, #fff) 0%, var(--accent-soft-2) 100%); border-left-width: 1px; }
.pp-pg--status label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .18em; color: var(--pp-gray-500); margin: 0 0 6px; }
.pp-pg--status input { border-radius: 12px; border: 1px solid #e5e7eb; background: #f9fafb; padding: 14px 16px; font: 400 14px/1.4 var(--font-body); }
.pp-pg--status input:focus { outline: none; border-color: var(--ink); background: #fff; box-shadow: 0 0 0 4px color-mix(in srgb, var(--ink) 6%, transparent); }
.pp-pg--status button { width: 100%; }
.pp-pg--status .answer button { width: auto; flex: 1 1 160px; }
.pp-pg--status .stage h2 { font-family: var(--font-display); font-size: 22px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); white-space: normal; }
.pp-pg--status .stage-desc { font-size: 14px; line-height: 1.625; color: color-mix(in srgb, var(--ink) 65%, transparent); }
.pp-pg--status .eta { border-radius: 999px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); padding: 10px 16px; }
.pp-pg--status .err { border-radius: 12px; border: 1px solid color-mix(in srgb, var(--sl-copper) 30%, transparent); background: #fdf3f1; }
.pp-pg--status .act h3, .pp-pg--status .tips b, .pp-pg--status .done h2 { font-family: var(--font-display); font-size: 17px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); white-space: normal; }
.pp-pg--status .act p, .pp-pg--status .tips p, .pp-pg--status .done p { font-size: 13px; line-height: 1.625; color: color-mix(in srgb, var(--ink) 70%, transparent); }
.pp-pg--status .act a.up, .pp-pg--status .done a { display: flex !important; margin-top: 14px; }
.pp-pg--status .tl li::before { background: color-mix(in srgb, var(--ink) 12%, transparent); }
.pp-pg--status .tl li::after { border-color: color-mix(in srgb, var(--ink) 25%, transparent); }
.pp-pg--status .tl li.done::after, .pp-pg--status .tl li.done::before { background: var(--ink-2); border-color: var(--ink-2); }
.pp-pg--status .tl li.now::after { background: var(--accent); border-color: var(--accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 25%, transparent); }
.pp-pg--status .tl li.now .t-label { color: var(--ink); }
.pp-pg--status .receipt a { color: var(--ink-2); }
.pp-pg--status .hint { text-align: left; max-width: none; }
.pp-pg--status .foot a { color: var(--ink-2); }
/* sku: карточки-секции */
body.pp-pg--sku { padding: 100px 12px 28px; background: #fff; font-family: var(--font-body); color: var(--text); }
body.pp-pg--sku h1 { font-family: var(--font-display); font-size: 24px; line-height: 1.1; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 0 0 20px; }
body.pp-pg--sku section { border-radius: 24px; border: 1px solid rgba(0, 0, 0, .05); background: var(--mist-grad); padding: 20px; margin: 0 0 12px; box-shadow: var(--pp-shadow-card); }
body.pp-pg--sku h2 { font-family: var(--font-display); font-size: 16px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); }
body.pp-pg--sku .chip { border-radius: 999px; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .6); color: var(--ink-2); font-weight: 700; }
body.pp-pg--sku .grid img { border-radius: 16px; border: 1px solid rgba(255, 255, 255, .7); background: #fff; }
/* admin: только общий верх (их плашка + пилюля) и отступ под него */
body.pp-pg--admin { padding-top: 88px; }
body.pp-pg--admin #login { min-height: calc(100vh - 88px); }
body.pp-pg--admin .box { border-radius: 24px; border: 1px solid rgba(0, 0, 0, .05); background: var(--mist-grad); box-shadow: var(--pp-shadow-card); }

/* ------------------------------------------------------------- футер ---- */
/* Текст футера не трогаем: только скругление и шрифт, как у их тёмных панелей */
.shopify-section-group-ecom-69a1e4e7e72b74009f0a5cc2_footer { margin: 0 12px 12px; border-radius: 32px; overflow: hidden; }
.shopify-section-group-ecom-69a1e4e7e72b74009f0a5cc2_footer .text-content,
.shopify-section-group-ecom-69a1e4e7e72b74009f0a5cc2_footer .ecom-menu_title,
.shopify-section-group-ecom-69a1e4e7e72b74009f0a5cc2_footer .ecom-shopify__menu-list { font-family: var(--font-body) !important; }
body:has(.pp-pg) .slc-foot { font-family: var(--font-body); }

/* ----------------------------------------------- анимации появления ---- */
.pp-pg .pp-panel.fade-in { transform: translateY(24px); }
.pp-pg .pp-panel.fade-in.visible { transform: none; }
.pp-pg .pp-panel--hero.fade-load { animation-delay: .1s; }

/* ------------------------------------------------------------ desktop ---- */
@media (min-width: 640px) {
  main.pp-pg { padding: 96px 20px 0; }
  .pp-pg .pp-panel { padding: 40px; }
  .pp-pg h1, .pp-pg h1.ecom__heading, .pp-pg .sll-h1, .pp-pg .slh-hero h1, .pp-pg .slcontact__h1, .pp-pg .slc-title, .pp-pg--util h1 { font-size: 48px !important; }
  .pp-pg .pp-panel h2, .pp-pg .pp-panel h2.ecom__heading, .pp-pg .pp-panel .slsteps__title, .pp-pg .pp-panel .sll-h2, .pp-pg .pp-panel .slh-sec > h2 { font-size: 36px !important; }
  .pp-pg--about .pp-ab-why h2.ecom__heading, .pp-pg--about .pp-ab-why h3.ecom__heading, .pp-pg--about .pp-ab-cta h2.ecom__heading, .pp-pg--about .pp-ab-cta h3.ecom__heading { font-size: 56px !important; }
  .pp-pg .pp-tile__v, .pp-pg .pp-panel .sll-num b, .pp-pg .pp-panel .slh-num b { font-size: 36px; }
  .pp-pg .pp-actions, .pp-pg .pp-panel .sll-actions, .pp-pg .pp-panel .slcontact__cta { flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: center; }
  .pp-pg .pp-panel .sll-actions .sll-cta, .pp-pg .pp-panel .sll-actions .sll-link, .pp-pg .pp-panel .slcontact__btn, .pp-pg--hsa .slh-hero .slh-cta, .pp-pg--about .pp-ab-cta .ecom__element--button { width: auto; display: inline-flex !important; }
  .pp-pg--hsa .slh-hero .slh-cta { margin: 24px auto 0 !important; }
  .pp-pg .pp-panel .sll-faq, .pp-pg .pp-panel .slh-faq, .pp-pg .pp-panel .slqa, .pp-pg .pp-panel--faq .core__group--items { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
  .pp-pg .pp-panel .sll-table thead { display: table-header-group; }
  .pp-pg .pp-panel .sll-table { display: table; }
  .pp-pg .pp-panel .sll-table thead th { padding: 14px 20px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ink-2); text-align: left; border-bottom: 1px solid rgba(0, 0, 0, .05); background: none; }
  .pp-pg .pp-panel .sll-table tbody tr { display: table-row; }
  .pp-pg .pp-panel .sll-table tbody th, .pp-pg .pp-panel .sll-table tbody td { display: table-cell; padding: 14px 20px; vertical-align: middle; }
  .pp-pg .pp-panel .sll-table tbody th { font-size: 14px; text-transform: none; letter-spacing: 0; color: var(--ink); }
  .pp-pg .pp-panel .sll-table tbody td.sll-money + td.sll-money::before { display: none; }
  .pp-pg .pp-panel .sll-table tbody td.sll-money { margin: 0; }
  .pp-pg .pp-panel .sll-nums, .pp-pg .pp-panel .slh-nums, .pp-pg--hsa .slh-steps, .pp-pg--hsa .slh-two { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--hsa .slh-two { grid-template-columns: 1fr 1fr; }
  .pp-pg--hsa .slh-grid, .pp-pg--sll .sll-grid { grid-template-columns: 1fr 1fr; }
  .pp-pg--sll .sll-split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
  .pp-pg--sll .sll-split--media-first .sll-fig { order: -1; }
  .pp-pg--sll .sll-chips { grid-template-columns: 1fr 1fr; }
  .pp-pg--contact .slcontact__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg .pp-panel .slsteps__list { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .pp-pg--hiw .pp-hiw-hero .ecom-sbaakmnxwj .core__row--columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--hiw .pp-hiw-eight .ecom-4wqzldsejq4 .core__block .core__row--columns { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pp-pg--hiw .pp-hiw-timeline .ecom-yjpmbpuj2oo .ecom-qb2m87xpif .core__row--columns { grid-template-columns: 1.1fr .9fr; align-items: center; gap: 32px !important; }
  .pp-pg--hiw .pp-hiw-families .ecom-5gbmc75yh4m .core__row--columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pp-pg--hiw .pp-hiw-kit .ecom-pzzs1jlb77a .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 32px !important; }
  .pp-pg--hiw .pp-hiw-color .ecom-pded26lvhh .core__row--columns, .pp-pg--hiw .pp-hiw-fix .ecom-cly8de9qqgm .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 32px !important; }
  .pp-pg--hiw .pp-hiw-box .ecom-5tqlu8r658e .core__row--columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--about .pp-ab-make .ecom-pla7jcplfac .core__row--columns, .pp-pg--about .pp-ab-lab .ecom-xp45f1xizgm .core__row--columns, .pp-pg--about .pp-ab-lab .ecom-bgkkrvh3ass .core__row--columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--about .pp-ab-make .ecom-36ekt1aydx9 .ecom-timeline_grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--about .pp-ab-hero .ecom-y2gah7x1itb .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 32px !important; }
  .pp-pg--about .pp-ab-why .ecom-c6l8ybfnu2e .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 32px !important; }
  .pp-pg--about .pp-ab-cta .ecom-jyzhxblf5gl .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 32px !important; }
  .pp-pg--about .pp-ab-cta .ecom-6i1cfm5dahw .core__row--columns, .pp-pg--about .pp-ab-cta .ecom-2f2j73n3gu5 .core__row--columns { grid-template-columns: auto auto; justify-content: center; }
  .pp-pg--acc .pp-panel .core__row--columns { grid-template-columns: 1fr 1fr; align-items: center; gap: 24px !important; }
  .pp-pg--excl .pp-panel .ecom-42ks886ndeq .core__row--columns { grid-template-columns: 1fr 1fr; }
  .pp-pg--util .slu__doors { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--cart .slc-grid { grid-template-columns: minmax(0, 1fr) 340px; align-items: start; }
  main.pp-pg--util { margin: 104px 20px 20px; padding: 40px; }
  main.pp-pg--cart { padding: 104px 20px 20px !important; }
  .pp-pg--cart .slc-wrap { padding: 40px; }
  .pp-pg .pp-tabs { margin: 0 -20px 16px; }
}
@media (min-width: 1024px) {
  main.pp-pg, main.pp-pg--util { max-width: 1140px; margin-left: auto; margin-right: auto; }
  .pp-pg .pp-panel { padding: 56px; }
  .pp-pg .pp-panel::after { left: 25%; }
  .pp-pg .pp-panel--faq::after { left: 24%; }
  .pp-pg .pp-panel--night::after { left: 22%; }
  .pp-pg h1, .pp-pg h1.ecom__heading { text-align: left; }
  .pp-pg .pp-panel h2, .pp-pg .pp-panel h2.ecom__heading, .pp-pg .pp-panel .slsteps__title, .pp-pg .pp-panel .sll-h2, .pp-pg .pp-panel .slh-sec > h2 { text-align: left; }
  .pp-pg .pp-panel--hero .text-content, .pp-pg .pp-panel .sll-lede, .pp-pg .pp-panel .slh-lead, .pp-pg .pp-panel .slcontact__lead { text-align: left; margin-left: 0; }
  .pp-pg--sll .sll-hero__grid { grid-template-columns: 1.1fr .9fr; align-items: center; gap: 48px; }
  .pp-pg--sll .sll-hero__media { order: 2; }
  .pp-pg--sll .sll-hero__copy, .pp-pg--sll .sll-crumbs, .pp-pg--sll .sll-eyebrow, .pp-pg--sll .sll-price { text-align: left; }
  .pp-pg--sll .sll-chips { grid-template-columns: 1fr 1fr; }
  .pp-pg .pp-actions, .pp-pg .pp-panel .sll-actions, .pp-pg .pp-panel .slcontact__cta { justify-content: flex-start; }
  .pp-pg--hsa .slh-hero, .pp-pg--hsa .slh-hero .slh-sub, .pp-pg--hsa .slh-hero .slh-fine { text-align: left; margin-left: 0; }
  .pp-pg--hsa .slh-hero .slh-cta { margin-left: 0 !important; }
  .pp-pg--hsa .slh-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pp-pg--sll .sll-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pp-pg--sll .sll-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pp-pg--sll .sll-grid--four, .pp-pg--sll .sll-grid--two { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pp-pg--sll .sll-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pp-pg--about .pp-ab-why .text-content, .pp-pg--about .pp-ab-bench .text-content, .pp-pg--about .pp-ab-lab .ecom-eut3ae1ysg .text-content, .pp-pg--about .pp-ab-lab .ecom-jjjrpygytzg .text-content { text-align: left; margin-left: 0; }
  .pp-pg--about .pp-ab-why h2.ecom__heading, .pp-pg--about .pp-ab-why h3.ecom__heading { text-align: left; }
  .pp-pg--util .slu__code, .pp-pg--util .slu__lead, .pp-pg--util .slu__out { text-align: left; margin-left: 0; }
  .pp-pg--util .slu__form { margin-left: 0; }
  .pp-pg--imp .pp-panel > .ecom-section > div > div > p:first-of-type, .pp-pg--imp .pp-panel > .ecom-section > div > div > p:nth-of-type(2) { text-align: left; margin-left: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .pp-pg .pp-panel .ecom-accordion_nav--icon, .pp-pg .pp-panel summary::after, .pp-pg--contact .slcontact__card { transition: none; }
}

/* 16.10: горизонтальная лента конструктора (exclusive-services) на десктопе —
   grid без колонок давал элементам нулевую ширину, картинки «Days 1-3…»
   пропадали. Колонки по числу элементов, как у темы (flex-строка). */
@media (min-width: 1024px) {
  .pp-pg .pp-panel .ecom-timeline--horizontal .ecom-timeline_grid { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
}
.pp-pg .pp-panel .ecom-timeline_item { min-width: 0; }
/* тема даёт .ecom-timeline--horizontal .ecom-timeline_item { width:0; flex:1 } — в grid это ноль; возвращаем auto */
.pp-pg .pp-panel .ecom-timeline--horizontal .ecom-timeline_item { width: auto !important; }

/* ------------------------------------------------------ our story ---- */
.pp-pg--story .pp-st-hero { text-align: center; padding-bottom: 0; overflow: hidden; }
.pp-pg--story .pp-st-h1 { font-size: 34px; line-height: 1.04; letter-spacing: -.02em; margin: 8px auto 14px; max-width: 22rem; }
.pp-pg--story .pp-st-lead { font-size: 16px; line-height: 1.5; color: color-mix(in srgb, var(--ink) 72%, transparent); max-width: 30rem; margin: 0 auto 22px; }
.pp-pg--story .pp-st-photo { display: block; width: calc(100% + 48px); max-width: none; margin: 0 -24px -1px; height: auto; border-radius: 28px 28px 0 0; object-fit: cover; aspect-ratio: 3 / 2; }
.pp-pg--story .pp-st-text p { font-size: 16px; line-height: 1.55; color: color-mix(in srgb, var(--ink) 78%, transparent); margin: 0 0 14px; }
.pp-pg--story .pp-st-text p:last-child { margin-bottom: 0; }
.pp-pg--story .pp-st-h2 { font-size: 28px; line-height: 1.06; letter-spacing: -.02em; margin: 6px 0 16px; }
.pp-pg--story .pp-st-sign { font-weight: 700; color: var(--ink) !important; }
.pp-pg--story .pp-st-stats__list { list-style: none; margin: 0; padding: 4px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 18px 14px; }
.pp-pg--story .pp-st-stats__list b { display: block; font-family: var(--font-display); font-weight: 800; font-size: 34px; line-height: 1; letter-spacing: -.03em; color: var(--night); margin-bottom: 6px; }
.pp-pg--story .pp-st-stats__list span { display: block; font-size: 13.5px; line-height: 1.4; color: color-mix(in srgb, var(--ink) 66%, transparent); }
.pp-pg--story .pp-st-fit p { font-size: 16px; line-height: 1.55; color: rgba(255,255,255,.82); margin: 0 0 20px; }
.pp-pg--story .pp-st-fit .pp-st-h2 { color: #fff; }
.pp-pg--story .pp-st-fit .pp-eyebrow { color: rgba(255,255,255,.7); }
.pp-pg--story .pp-st-fit .pp-btn-gold { width: 100%; text-transform: uppercase; }
@media (min-width: 640px) {
  .pp-pg--story .pp-st-h1 { font-size: 48px; max-width: 30rem; }
  .pp-pg--story .pp-st-h2 { font-size: 36px; }
  .pp-pg--story .pp-st-text { padding: 40px; } .pp-pg--story .pp-st-text p { max-width: 38rem; }
  .pp-pg--story .pp-st-stats__list { grid-template-columns: repeat(4, 1fr); }
  .pp-pg--story .pp-st-photo { width: calc(100% + 80px); margin: 0 -40px -1px; }
  .pp-pg--story .pp-st-fit .pp-btn-gold { width: auto; display: inline-flex; }
}
.pp-pg--story .pp-st-text .pp-st-h2, .pp-pg--story .pp-st-fit .pp-st-h2 { text-align: left; }
.pp-pg--story .pp-st-h1 { max-width: 24rem; }
.pp-pg--story .pp-ai-note--hero { margin: 6px 0 10px; font: 500 11px/1.4 var(--font-body, Inter, sans-serif); color: color-mix(in srgb, var(--ink) 55%, transparent); text-align: center; }
@media (min-width: 640px) { .pp-pg--story .pp-st-hero .pp-st-h1 { max-width: 30rem; margin-left: auto; margin-right: auto; text-align: center; } }

/* ------------------------------------------------------ smile care plan ---- */
.pp-pg--plan .pp-st-hero { padding-bottom: 24px; }
.pp-pg--plan .pp-plan__tiers { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 20px 0 12px; }
.pp-pg--plan .pp-plan__tier { display: flex; flex-direction: column; gap: 4px; padding: 16px 14px; border-radius: 18px; background: #fff; border: 2px solid rgba(11,11,12,.1); text-align: left; }
.pp-pg--plan .pp-plan__tier--two { border-color: var(--accent); background: linear-gradient(180deg, #fff, #fff6dc); }
.pp-pg--plan .pp-plan__k { font: 700 12px/1 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: rgba(11,11,12,.6); }
.pp-pg--plan .pp-plan__v { font: 800 30px/1 var(--font-display); letter-spacing: -.03em; color: var(--night); }
.pp-pg--plan .pp-plan__v small { font: 700 13px/1 var(--font-body); letter-spacing: 0; color: rgba(11,11,12,.55); }
.pp-pg--plan .pp-plan__s { font: 500 12.5px/1.35 var(--font-body); color: rgba(11,11,12,.62); }
.pp-pg--plan .pp-plan__fine { margin: 0 auto 8px; font: 600 12.5px/1.45 var(--font-body); color: var(--ink); max-width: 30rem; }
.pp-pg--plan .pp-plan__soon { margin: 0 auto; font: 500 12px/1.4 var(--font-body); color: rgba(11,11,12,.55); max-width: 28rem; }
.pp-pg--plan .pp-plan__steps { margin: 0; padding: 0 0 0 22px; }
.pp-pg--plan .pp-plan__steps li { margin: 0 0 12px; font: 500 15.5px/1.5 var(--font-body); color: color-mix(in srgb, var(--ink) 78%, transparent); }
.pp-pg--plan .pp-plan__steps b, .pp-pg--plan .pp-plan__list b { color: var(--ink); }
.pp-pg--plan .pp-plan__cols { display: grid; gap: 16px; }
.pp-pg--plan .pp-plan__colh { margin: 0 0 8px; font: 800 13px/1 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--ink); }
.pp-pg--plan .pp-plan__list { list-style: none; margin: 0; padding: 0; }
.pp-pg--plan .pp-plan__list li { position: relative; padding: 0 0 8px 26px; font: 500 15px/1.45 var(--font-body); color: color-mix(in srgb, var(--ink) 78%, transparent); }
.pp-pg--plan .pp-plan__list li::before { position: absolute; left: 0; top: 1px; width: 18px; height: 18px; border-radius: 50%; display: grid; place-items: center; font: 800 11px/1 var(--font-body); }
.pp-pg--plan .pp-plan__list--yes li::before { content: '✓'; background: var(--night); color: var(--accent); }
.pp-pg--plan .pp-plan__list--no li::before { content: '×'; background: rgba(11,11,12,.12); color: var(--ink); }
.pp-pg--plan .pp-plan__list--dot li::before { content: ''; width: 8px; height: 8px; top: 8px; left: 6px; background: var(--accent); }
.pp-pg--plan .pp-plan__table { width: 100%; border-collapse: collapse; margin: 0 0 14px; font: 500 14px/1.4 var(--font-body); }
.pp-pg--plan .pp-plan__table th { text-align: left; font: 800 11px/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: rgba(11,11,12,.55); padding: 0 8px 8px 0; }
.pp-pg--plan .pp-plan__table td { padding: 10px 8px 10px 0; border-top: 1px solid rgba(11,11,12,.08); color: color-mix(in srgb, var(--ink) 80%, transparent); vertical-align: top; }
.pp-pg--plan .pp-plan__table td:last-child { font-weight: 700; color: var(--ink); white-space: nowrap; }
.pp-pg--plan .pp-faq__list { display: grid; gap: 6px; }
@media (min-width: 640px) { .pp-pg--plan .pp-plan__tiers { max-width: 30rem; margin-left: auto; margin-right: auto; } .pp-pg--plan .pp-plan__cols { grid-template-columns: 1fr 1fr; } }
.pp-pdp .slplan__more { display: inline-block; margin-top: 6px; font: 700 13px/1 var(--font-body) !important; color: var(--ink) !important; text-decoration: underline; text-underline-offset: 3px; }
.pp-pg--plan .pp-plan__tier { min-width: 0; }
.pp-pg--plan .pp-plan__v { font-size: 25px; white-space: nowrap; }
@media (min-width: 640px) { .pp-pg--plan .pp-plan__v { font-size: 32px; } }
/* 18.10 — заметки про дантиста и дисклеймер 466 (APPROVAL-LIST пп.15–16) */
.sl-dentist-note { margin: 14px auto 0 !important; max-width: 40rem; font: 500 14px/1.5 var(--font-body, Inter, sans-serif) !important; color: var(--ink-2, #1f5145) !important; text-align: center; }
.sl-dentist-note--466 { font-size: 12.5px !important; color: #6b6b6b !important; }
