.elementor-5000 .elementor-element.elementor-element-7cf18231{--display:flex;--background-transition:0.3s;}.elementor-5000 .elementor-element.elementor-element-a6e59b6{column-gap:0px;color:#474C51;}/* Start custom CSS *//* ===== Форма записи: светло-бежевая карточка, компактный заголовок ===== */
#zayavka.snpat-form-card{
  background:#FAF5EA;
  border:1px solid #E3D6B8;
  border-radius:20px;
  padding:34px 36px;
}
#zayavka h2{
  font-size: 24px !important;
  color:#211F1B !important;
  margin-bottom:8px;
}
#zayavka > p{ margin-bottom:20px; }
#zayavka label{ display:block; padding-bottom:6px; }
#zayavka button.btn, #zayavka .snpat-submit{
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
#zayavka button.btn:hover, #zayavka .snpat-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(231,194,94,.45);
  filter:brightness(0.96);
}

/* ===== Общие hover-состояния карточек ===== */
.snpat-check-col{ transition:box-shadow .15s ease, transform .15s ease, border-color .15s ease; }
.snpat-check-col:hover{ box-shadow:0 14px 30px rgba(33,31,27,.08); transform:translateY(-3px); border-color:#E7C25E; }
.snpat-value-card{ transition:box-shadow .15s ease, transform .15s ease; }
.snpat-value-card:hover{ box-shadow:0 14px 26px rgba(33,31,27,.08); transform:translateY(-2px); }
.snpat-step-card{ transition:box-shadow .15s ease, transform .15s ease; }
.snpat-step-card:hover{ box-shadow:0 12px 24px rgba(33,31,27,.08); transform:translateY(-2px); }
.snpat-review-card{ transition:box-shadow .15s ease; }
.snpat-review-card:hover{ box-shadow:0 10px 22px rgba(33,31,27,.08); }
.snpat-outline-btn:hover{ background:#211F1B !important; color:#fff !important; }
.snpat-btn-tg:hover{ border-color:#E7C25E !important; color:#A9885A !important; }
a.btn.btn--primary:hover{ filter:brightness(0.94); transform:translateY(-2px); }

/* ===== Визуальные правки: отступы, ширина текста ===== */
section.lp-hero h1{ margin-bottom:14px; }
article.snpat-content p{ max-width:640px; }

/* ===== Плавающая кнопка чата: не перекрывает форму на мобильных ===== */
@media (max-width: 782px){
  #chaty-widget-0{ bottom:88px !important; }
  #zayavka.snpat-form-card{ padding:26px 22px; }
}

/* ===== Мобильный порядок: сначала контент, потом форма ===== */
@media (max-width: 768px){
  section.lp-hero .wrap{ display:flex !important; flex-direction:column; }
  section.lp-hero .wrap > article.snpat-content{ order:1; }
  section.lp-hero .wrap > aside.snpat-form-card{ order:2; }
}


/* ===== Unify all buttons to a single consistent size/style ===== */
.snpat-outline-btn,
.snpat-submit,
.btn.btn--primary.full {
  font-size: 15px !important;
  padding: 14px 26px !important;
}



/* ================================================================
   CONSULTATION PAGE REDESIGN MODULE (scoped, page-specific)
   Uses only existing brand colors: gold, gold-dark, graphite,
   heading dark, beige, borders. No new palette introduced.
   ================================================================ */
:root{
  --cp-gold:#E7C25E;
  --cp-gold-dark:#D9B658;
  --cp-graphite:#2B2F33;
  --cp-heading:#211F1B;
  --cp-beige:#FAF5EA;
  --cp-border:#E3D6B8;
  --cp-border-2:#E7E3DA;
  --cp-accent2:#A9885A;
  --cp-r-sm:10px; --cp-r-md:12px; --cp-r-lg:16px; --cp-r-pill:999px;
  --cp-sp-1:8px; --cp-sp-2:12px; --cp-sp-3:16px; --cp-sp-4:24px;
  --cp-sp-5:32px; --cp-sp-6:48px; --cp-sp-7:64px; --cp-sp-8:80px;
}

/* ---------- Container / grid fix: 2 columns only in hero zone ---------- */
section.lp-hero .wrap,
section.lp-body.snpat-body > .wrap{
  display:block !important;
  max-width:1240px;
  margin:0 auto;
  padding:0 var(--cp-sp-4);
}
article.snpat-content{
  width:100% !important;
  max-width:100% !important;
}
article.snpat-content p{ max-width:720px; }

.cp-hero-zone{
  display:flex;
  align-items:flex-start;
  gap:var(--cp-sp-6);
  position:relative;
}
.cp-hero-main{ flex:1 1 auto; min-width:0; max-width:820px; }
aside.snpat-form-card.cp-form-in-zone{
  flex:0 0 360px;
  width:360px;
  position:sticky;
  top:var(--cp-sp-4);
  align-self:flex-start;
}
@media (max-width:1080px){
  .cp-hero-zone{ flex-wrap:wrap; }
  .cp-hero-main{ max-width:100%; }
  aside.snpat-form-card.cp-form-in-zone{ position:static; width:100%; flex-basis:100%; }
}

.cp-full{ width:100%; max-width:100%; }
.cp-full > *{ max-width:100%; }

/* ---------- Typography scale ---------- */
section.lp-hero h1{ font-size:42px; line-height:1.15; margin-bottom:var(--cp-sp-3); }
.cp-hero-lead{ font-size:16px; line-height:1.6; color:var(--cp-graphite); max-width:640px; margin-bottom:var(--cp-sp-4); }

.cp-steps-section h2,
.cp-trust-section h2,
.cp-reviews-section h2{
  font-size:30px;
  line-height:1.2;
  color:var(--cp-heading);
  margin-bottom:var(--cp-sp-5);
}
.snpat-check-col h3{ font-size:21px; margin-bottom:var(--cp-sp-2); }
.cp-doctor-name{ font-size:21px; margin:0 0 4px; color:var(--cp-heading); }
.cp-results-list h4{ font-size:17px; margin:0 0 4px; color:var(--cp-heading); font-weight:700; }
.cp-results-list p{ font-size:14px; line-height:1.5; margin:0; color:var(--cp-graphite); }
.cp-doctor-role{ font-size:16px; line-height:1.6; margin-bottom:var(--cp-sp-4); }

@media (max-width:768px){
  section.lp-hero h1{ font-size:32px; }
  .cp-steps-section h2, .cp-trust-section h2, .cp-reviews-section h2{ font-size:26px; }
  .snpat-check-col h3, .cp-doctor-name{ font-size:20px; }
}

/* ---------- Hero actions / stats ---------- */
.cp-hero-actions{ display:flex; gap:var(--cp-sp-3); flex-wrap:wrap; margin-bottom:var(--cp-sp-5); }
.cp-trust-stats{ display:flex; gap:var(--cp-sp-6); flex-wrap:wrap; margin-bottom:var(--cp-sp-6); padding-bottom:var(--cp-sp-5); border-bottom:1px solid var(--cp-border-2); }
.cp-stat strong{ display:block; font-size:22px; color:var(--cp-heading); }
.cp-stat span{ font-size:14px; color:var(--cp-graphite); }

/* ---------- Format cards (kept as cards) ---------- */
.cp-format-grid{ margin-top:0; }
.cp-format-price{ display:flex; justify-content:space-between; align-items:center; font-size:14px; padding-top:var(--cp-sp-2); border-top:1px solid var(--cp-border-2); margin-top:var(--cp-sp-2); }

/* ---------- Info plaque (no card/border) ---------- */
.cp-note-plaque{
  background:var(--cp-beige);
  border-radius:var(--cp-r-md);
  padding:var(--cp-sp-4) var(--cp-sp-5);
  font-size:16px; line-height:1.6;
  color:var(--cp-graphite);
  margin:var(--cp-sp-7) 0;
}

/* ---------- Steps: horizontal sequence with connector line ---------- */
.cp-steps-section{ margin:var(--cp-sp-7) 0; }
.cp-steps{ display:flex; align-items:flex-start; gap:var(--cp-sp-4); position:relative; }
.cp-step{ flex:1; position:relative; padding-top:var(--cp-sp-6); text-align:left; }
.cp-step-num{
  position:absolute; top:0; left:0;
  width:44px; height:44px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:var(--cp-gold);
  color:var(--cp-heading);
  font-weight:700; font-size:15px;
  z-index:1;
}
.cp-step::before{
  content:"";
  position:absolute; top:22px; left:44px;
  width:calc(100% - 20px); height:2px;
  background:var(--cp-border);
}
.cp-step:last-child::before{ display:none; }
.cp-step p{ font-size:15px; line-height:1.5; margin:0; color:var(--cp-graphite); max-width:220px; }
@media (max-width:768px){
  .cp-steps{ flex-direction:column; gap:var(--cp-sp-5); }
  .cp-step{ padding-left:60px; padding-top:0; width:100%; }
  .cp-step-num{ left:0; top:0; }
  .cp-step::before{
    top:44px; left:22px; width:2px; height:calc(100% + var(--cp-sp-5) - 44px);
  }
  .cp-step p{ max-width:100%; }
}

/* ---------- Merged trust/doctor block (editorial, no card border) ---------- */
.cp-trust-section{ margin:var(--cp-sp-7) 0; }
.cp-trust-grid{ display:flex; gap:var(--cp-sp-6); align-items:flex-start; }
.cp-trust-photo{ flex:0 0 280px; }
.cp-trust-photo img{ width:100%; height:auto; border-radius:var(--cp-r-lg); display:block; }
.cp-trust-content{ flex:1; min-width:0; }
.cp-trust-stats-row{ display:flex; gap:var(--cp-sp-5); flex-wrap:wrap; margin-bottom:var(--cp-sp-5); padding:var(--cp-sp-3) 0; border-top:1px solid var(--cp-border-2); border-bottom:1px solid var(--cp-border-2); }
.cp-stat-sm strong{ display:block; font-size:18px; color:var(--cp-heading); }
.cp-stat-sm span{ font-size:14px; color:var(--cp-graphite); }
.cp-results-list{ list-style:none; margin:0 0 var(--cp-sp-5); padding:0; display:grid; grid-template-columns:1fr 1fr; gap:var(--cp-sp-4) var(--cp-sp-5); }
.cp-results-list li{ display:flex; gap:var(--cp-sp-2); }
.cp-result-num{ font-size:13px; font-weight:700; color:var(--cp-accent2); flex:0 0 auto; }
.cp-trust-actions{ display:flex; align-items:center; gap:var(--cp-sp-4); flex-wrap:wrap; }
.cp-edu-link{ font-size:14px; color:var(--cp-accent2); text-decoration:underline; }
@media (max-width:768px){
  .cp-trust-grid{ flex-direction:column; }
  .cp-trust-photo{ flex-basis:auto; max-width:240px; margin:0 auto; }
  .cp-results-list{ grid-template-columns:1fr; }
}

/* ---------- Reviews: credibility improvements ---------- */
.cp-reviews-section{ margin:var(--cp-sp-7) 0; }
.cp-reviews-head{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:var(--cp-sp-5); }
.cp-reviews-link{ font-size:14px; color:var(--cp-accent2); text-decoration:underline; white-space:nowrap; }
.cp-reviews-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--cp-sp-4); align-items:stretch; margin-bottom:var(--cp-sp-4); }
.cp-review-card{ display:flex; flex-direction:column; justify-content:space-between; height:100%; }
.cp-review-quote{ font-size:16px; line-height:1.5; margin:0 0 var(--cp-sp-3); color:var(--cp-graphite); }
.cp-review-meta{ font-size:14px; color:var(--cp-accent2); }
@media (max-width:768px){
  .cp-reviews-grid{ grid-template-columns:1fr; }
}

/* ---------- Final CTA ---------- */
.cp-final-cta{ text-align:center; margin:var(--cp-sp-7) 0 var(--cp-sp-6); }
.cp-final-cta .snpat-disclaimer{ font-size:13px; color:var(--cp-graphite); opacity:.7; margin-top:var(--cp-sp-3); }

/* ---------- Compact sidebar form ---------- */
#zayavka.snpat-form-card{ padding:var(--cp-sp-4) var(--cp-sp-4) !important; }
#zayavka p{ margin-bottom:var(--cp-sp-3) !important; }
#zayavka .snpat-field{ margin-bottom:var(--cp-sp-2) !important; }
#zayavka input[type="text"], #zayavka input[type="tel"], #zayavka textarea{
  height:44px; padding:10px var(--cp-sp-2); border-radius:var(--cp-r-sm); box-sizing:border-box;
}
#zayavka textarea{ height:64px; resize:vertical; }
#zayavka label[for="snpat_comment"]::after{ content:" (необязательно)"; font-weight:400; color:var(--cp-graphite); opacity:.6; font-size:13px; }
#zayavka .snpat-consent{ font-size:12px; line-height:1.4; }
#zayavka .snpat-submit{ min-height:44px; }

/* ---------- Buttons / interactive size (WCAG 2.2, ~44px) ---------- */
a.btn.btn--primary, .snpat-submit, .snpat-btn-tg, .snpat-outline-btn{ min-height:44px; display:inline-flex; align-items:center; justify-content:center; }

/* ---------- Focus-visible: page-scoped gold/graphite override ---------- */
body.page-id-5000 a:focus-visible,
body.page-id-5000 button:focus-visible,
body.page-id-5000 input:focus-visible,
body.page-id-5000 textarea:focus-visible{
  outline:2px solid var(--cp-gold-dark) !important;
  outline-offset:2px;
  box-shadow:none !important;
}
body.page-id-5000 input:focus,
body.page-id-5000 textarea:focus{
  border-color:var(--cp-gold-dark) !important;
}



/* ================================================================
   DESIGN POLISH PATCH: review cards + secondary buttons consistency
   ================================================================ */

/* Real review cards, matching format-card visual language */
.cp-review-card{
  background:var(--cp-beige);
  border:1px solid var(--cp-border-2);
  border-radius:var(--cp-r-lg);
  padding:var(--cp-sp-4);
  box-shadow:0 2px 10px rgba(33,31,27,.05);
}
.cp-reviews-grid{ align-items:stretch; }
.cp-review-quote{ font-style:normal; }

/* Secondary/outline buttons: real button look (border + pill), consistent family with primary gold button */
.snpat-btn-tg{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px;
  padding:14px 26px;
  border-radius:999px;
  border:1.5px solid var(--cp-heading);
  color:var(--cp-heading) !important;
  font-size:15px;
  font-weight:600;
  background:transparent;
  text-decoration:none !important;
}
.snpat-btn-tg:hover{
  background:var(--cp-heading) !important;
  color:#fff !important;
  border-color:var(--cp-heading) !important;
}
.snpat-outline-btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px;
  border:1.5px solid var(--cp-heading);
  border-radius:999px;
  color:var(--cp-heading);
  background:transparent;
  font-weight:600;
  text-decoration:none;
}

/* Edu link: keep as text link but tidy vertical alignment next to primary button */
.cp-trust-actions{ align-items:center; }
.cp-edu-link{ display:inline-flex; align-items:center; }

/* Section rhythm: consistent spacing between all major full-width sections */
.cp-note-plaque,
.cp-steps-section,
.cp-trust-section,
.cp-reviews-section{
  margin:var(--cp-sp-7) 0;
}
.cp-full > *:first-child{ margin-top:0; }

/* Reviews section: align action row */
.cp-reviews-section > .snpat-outline-btn{ margin-top:var(--cp-sp-2); }/* End custom CSS */