
  :root{
    --sv-primary:#7d179f;
    --sv-primary-2:#f464fe;
    --sv-bg:#f7f4fb;
    --sv-surface:#ffffff;
    --sv-text:#1f1b24;
    --sv-muted:#6b6473;
    --sv-border:rgba(125,23,159,.14);
    --sv-shadow:0 10px 28px rgba(20,10,30,.08);
    --sv-radius:18px;
  }

  html{ scroll-behavior:smooth; }

  /* WRAPS (поддержка всех вариантов классов) */
  .svb-wrap,
  .sv-article-wrap{
    background:linear-gradient(180deg, var(--sv-bg) 0%, #fff 65%);
    color:var(--sv-text);
    font-family:"TildaSans", Arial, sans-serif;
  }

  /* CONTAINERS (поддержка всех вариантов) */
  .svb-container,
  .sv-container{
    max-width:980px;
    margin:0 auto;
    padding:28px 16px 56px;
  }
  /* если где-то было 32px сверху — оставим чуть больше */
  .sv-container{ padding-top:32px; }

  /* LINKS */
  .svb-wrap a,
  .sv-article-wrap a{
    color:var(--sv-primary) !important;
    text-decoration:none;
  }
  .svb-wrap a:hover,
  .sv-article-wrap a:hover{
    color:var(--sv-primary) !important;
    text-decoration:underline;
  }

  /* TITLES */
  .svb-title,
  .sv-title{
    font-size:38px;
    line-height:1.15;
    margin:0 0 10px;
    letter-spacing:-.02em;
  }
  .svb-subtitle,
  .sv-subtitle{
    font-size:16px;
    color:var(--sv-muted);
    margin:0 0 18px;
  }
  .svb-kicker{
    font-size:14px;
    color:var(--sv-muted);
    margin:0 0 18px;
  }

  /* CARDS */
  .svb-card,
  .sv-card{
    background:var(--sv-surface);
    border:1px solid var(--sv-border);
    border-radius:var(--sv-radius);
    box-shadow:var(--sv-shadow);
    overflow:hidden;
  }
  .svb-pad,
  .sv-pad{ padding:18px; }

  /* EXPERT */
  .svb-expert,
  .sv-expert{
    display:grid;
    grid-template-columns:260px 1fr;
    gap:0;
    align-items:stretch;
  }
  .svb-expert-photo,
  .sv-expert-photo{
    width:100%;
    height:100%;
    min-height:230px;
    object-fit:cover;
    display:block;
    background:#eee;
  }
  .sv-expert-photo{ min-height:220px; }

  .svb-expert-body,
  .sv-expert-body{ padding:18px; }

  .svb-expert-kicker,
  .sv-expert-title{
    font-size:13px;
    color:var(--sv-muted);
    margin:0 0 6px;
  }
  .svb-expert-name,
  .sv-expert-name{
    font-size:16px;
    font-weight:900;
    margin:0 0 6px;
  }
  .svb-expert-role,
  .sv-expert-role{
    font-size:14px;
    margin:0 0 12px;
    color:var(--sv-text);
  }

  .svb-meta,
  .sv-meta{
    display:grid;
    gap:6px;
    font-size:14px;
    margin:0;
    color:var(--sv-text);
  }
  .svb-meta span,
  .sv-meta span{
    color:var(--sv-muted);
    margin-right:6px;
  }

  .svb-actions,
  .sv-actions{
    display:flex;
    gap:10px;
    margin-top:14px;
    flex-wrap:wrap;
  }
  .svb-btn,
  .sv-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 14px;
    border-radius:999px;
    border:0;
    cursor:pointer;
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
    text-decoration:none !important;
    color:#fff !important;
    background:linear-gradient(90deg, var(--sv-primary) 0%, var(--sv-primary-2) 100%);
    box-shadow:0 8px 18px rgba(125,23,159,.22);
    min-width:240px;
  }
  .svb-btn:hover,
  .sv-btn:hover{ filter:brightness(1.03); text-decoration:none !important; }

  .svb-btn.secondary,
  .sv-btn.secondary{
    background:#fff;
    color:var(--sv-primary) !important;
    border:1px solid rgba(125,23,159,.35);
    box-shadow:none;
    text-transform:none;
    font-weight:800;
    min-width:auto;
  }

  /* TYPOGRAPHY */
  .svb-h2,
  .sv-h2{
    font-size:24px;
    line-height:1.25;
    margin:22px 0 10px;
    letter-spacing:-.01em;
    scroll-margin-top:90px;
  }
  .svb-p,
  .sv-p{
    font-size:16px;
    line-height:1.65;
    margin:0 0 12px;
  }
  .svb-ul,
  .sv-ul{
    margin:0 0 14px 18px;
    padding:0;
    line-height:1.65;
    font-size:16px;
  }
  .svb-ul li,
  .sv-ul li{ margin:6px 0; }

  .svb-divider,
  .sv-divider{
    height:1px;
    background:var(--sv-border);
    margin:16px 0;
  }

  /* INTRO GRIDS */
  .svb-intro,
  .sv-intro-grid{
    display:grid;
    grid-template-columns:1.15fr 0.85fr;
    gap:16px;
    align-items:start;
  }

  /* FIGURE */
  .svb-figure,
  .sv-figure{
    margin:0;
    border-radius:var(--sv-radius);
    overflow:hidden;
    border:1px solid var(--sv-border);
    background:linear-gradient(180deg, rgba(125,23,159,.05), rgba(125,23,159,.02));
    width:60%;
    margin-left:auto;
    margin-right:auto;
  }
  .svb-figure img,
  .sv-figure img{
    width:100%;
    height:auto;
    display:block;
    object-fit:contain;
    background:#fff;
  }
  .svb-figcap,
  .sv-figcap{
    padding:12px 14px;
    font-size:14px;
    color:var(--sv-muted);
    background:transparent;
  }

  /* TOC */
  .svb-toc,
  .sv-toc{ margin-top:14px; }
  .svb-toc, .svb-toc *,
  .sv-toc, .sv-toc *{
    color:var(--sv-primary) !important;
  }
  .svb-toc-title,
  .sv-toc-title{
    margin:0 0 10px;
    font-size:14px;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .svb-toc ol,
  .sv-toc ol{ margin:0; padding-left:18px; }
  .svb-toc li,
  .sv-toc li{ margin:8px 0; line-height:1.35; }
  .svb-toc a,
  .sv-toc a{
    color:var(--sv-primary) !important;
    text-decoration:none !important;
    border-bottom:1px dashed rgba(125,23,159,.55);
  }
  .svb-toc a:hover,
  .sv-toc a:hover{
    border-bottom-color:rgba(125,23,159,.9);
    text-decoration:none !important;
  }

  /* SECTIONS (2 columns with media) */
  .svb-sec{
    display:grid;
    grid-template-columns:1fr 360px;
    gap:16px;
    align-items:start;
    margin:18px 0;
  }
  .svb-sec.reverse{ grid-template-columns:360px 1fr; }
  .svb-sec.reverse .svb-sec-media{ order:1; }
  .svb-sec.reverse .svb-sec-text{ order:2; }

  .svb-media{
    border-radius:var(--sv-radius);
    overflow:hidden;
    border:1px solid var(--sv-border);
    background:#fff;
  }
  .svb-media img{
    width:100%;
    height:auto;
    display:block;
    object-fit:contain;
    background:#fff;
  }
  .svb-media-cap{
    padding:10px 12px;
    font-size:13px;
    color:var(--sv-muted);
    background:rgba(125,23,159,.04);
    border-top:1px solid var(--sv-border);
  }

  /* CALLOUTS */
  .svb-callout,
  .sv-quote{
    margin:14px 0 16px;
    padding:14px 16px;
    border-left:4px solid var(--sv-primary);
    background:rgba(125,23,159,.06);
    border-radius:14px;
    color:var(--sv-text);
  }
  .svb-callout b,
  .sv-quote b{ color:var(--sv-primary); }

  /* QUOTE (имплантация) */
  .svb-quote{
    margin:14px 0 16px;
    padding:14px 16px;
    border:1px solid rgba(125,23,159,.22);
    background:#fff;
    border-radius:14px;
  }
  .svb-quote p{ margin:0; font-size:15px; line-height:1.6; }
  .svb-quote-meta{
    margin-top:10px;
    color:var(--sv-muted);
    font-size:13px;
    line-height:1.45;
  }

  /* PROMO (имплантация) */
  .svb-promo{
    margin:0 0 16px;
    padding:16px;
    border-radius:16px;
    background:linear-gradient(180deg, rgba(125,23,159,.08), rgba(125,23,159,.03));
    border:1px solid var(--sv-border);
  }
  .svb-promo-title{
    margin:0 0 10px;
    font-weight:900;
    font-size:16px;
  }
  .svb-promo-ul{
    margin:0 0 12px 18px;
    padding:0;
    line-height:1.65;
    font-size:15px;
    color:var(--sv-text);
  }
  .svb-promo-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
  }
  .svb-price{ font-weight:900; color:var(--sv-primary); }

  /* GRID-2 (аппарат/гигиена и т.п.) */
  .svb-grid-2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:10px 0 4px;
  }
  .svb-box{
    border:1px solid var(--sv-border);
    border-radius:14px;
    padding:12px 12px;
    background:#fff;
  }
  .svb-box-title{
    margin:0 0 6px;
    font-weight:900;
    color:var(--sv-text);
    font-size:15px;
  }
  .svb-box-text{
    margin:0;
    color:var(--sv-muted);
    font-size:14px;
    line-height:1.55;
  }

  /* TOOLS GRID (брекеты) */
  .svb-tools-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:10px 0 4px;
  }
  .svb-tool{
    border:1px solid var(--sv-border);
    border-radius:14px;
    padding:12px 12px;
    background:#fff;
  }
  .svb-tool-title{
    margin:0 0 6px;
    font-weight:900;
    color:var(--sv-text);
    font-size:15px;
  }
  .svb-tool-text{
    margin:0;
    color:var(--sv-muted);
    font-size:14px;
    line-height:1.55;
  }

  /* SPECIAL: дуга колет (брекеты) */
  .svb-sec-duga .svb-media img{
    max-height:420px;
    width:100%;
    object-fit:contain;
  }

  /* CTA PLANK (удаление) */
  .svb-cta{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin:18px 0;
    padding:16px;
    border-radius:16px;
    background:linear-gradient(180deg, rgba(125,23,159,.08), rgba(125,23,159,.03));
    border:1px solid var(--sv-border);
  }
  .svb-cta-title{
    margin:0;
    font-size:18px;
    font-weight:900;
  }
  .svb-cta-sub{
    margin:0;
    color:var(--sv-muted);
    font-size:14px;
    line-height:1.55;
  }
  .svb-cta-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:6px;
  }

  /* FINAL (разные варианты) */
  .svb-final{
    margin-top:18px;
    padding:16px;
    border-radius:16px;
    background:linear-gradient(180deg, rgba(125,23,159,.06), rgba(125,23,159,.03));
    border:1px solid var(--sv-border);
  }
  .svb-final-title{
    margin:0 0 8px;
    font-weight:900;
    font-size:16px;
  }
  .svb-final-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:10px;
  }

  /* RESPONSIVE */
  @media (max-width: 980px){
    .svb-sec{ grid-template-columns:1fr 320px; }
    .svb-sec.reverse{ grid-template-columns:320px 1fr; }
  }
  @media (max-width: 900px){
    .svb-intro, .sv-intro-grid{ grid-template-columns:1fr; }
    .svb-figure, .sv-figure{ width:min(520px, 100%); }
    .svb-sec, .svb-sec.reverse{ grid-template-columns:1fr; }
    .svb-sec.reverse .svb-sec-media,
    .svb-sec.reverse .svb-sec-text{ order:unset; }
    .svb-sec-duga .svb-media img{ max-height:340px; }
  }
  @media (max-width: 720px){
    .svb-title, .sv-title{ font-size:30px; }
    .svb-expert, .sv-expert{ grid-template-columns:1fr; }
    .svb-expert-body, .sv-expert-body{ padding:16px; }
    .svb-btn, .sv-btn{ width:100%; min-width:unset; }
    .svb-grid-2{ grid-template-columns:1fr; }
    .svb-tools-grid{ grid-template-columns:1fr; }
    .svb-sec-duga .svb-media img{ max-height:300px; }
  }
</style>
