/* ============================================================
   SarafanPRO — Figma redesign (Sarafan Pro / node 10-2)
   Isolated, additive stylesheet. Design changes only — no SEO/markup structure changes.
   Loaded after theme CSS in header.tpl.
   Palette + type extracted from Figma:
     blue #0066b2 · navy #2e437b · muted #5b6d9c · teal #39c9a0 · bg #f1f3f5 · font Rubik
   ============================================================ */

:root{
  --fg-blue:#0066b2;
  --fg-navy:#2e437b;
  --fg-muted:#5b6d9c;
  --fg-teal:#0066B2;
  --fg-teal-dark:#00538F;
  --fg-bg:#f1f3f5;
  --fg-line:#e3e8ef;
  --fg-text:#5b6d9c;
  --fg-radius:12px;
  --fg-container:1200px;
}

/* ---- Typography: Rubik ---- */
body,
.site-header, .main-navigation, .primary.nav-menu,
button, input, select, textarea,
.home-widget-title, .home-widget-description,
h1,h2,h3,h4,h5,h6{
  font-family:'Rubik', 'Open Sans', system-ui, -apple-system, Arial, sans-serif;
}
body{ color:var(--fg-text); }

/* ---- Links / accents ---- */
a{ color:var(--fg-blue); }
a:hover{ color:var(--fg-blue); }

/* ---- Section headings (home widget titles etc.) ---- */
.home-widget-title,
h2.home-widget-title{
  color:var(--fg-blue);
  font-weight:500;
  letter-spacing:.2px;
}

/* ---- Buttons: teal primary per Figma ---- */
.button,
a.button,
.btn,
button.search-submit,
.search-submit{
  background:var(--fg-teal);
  border-color:var(--fg-teal);
  color:#fff;
  border-radius:8px;
  transition:background .15s ease, box-shadow .15s ease;
}
.button:hover,
a.button:hover,
.btn:hover,
.search-submit:hover{
  background:var(--fg-teal-dark);
  border-color:var(--fg-teal-dark);
  color:#fff;
}

/* Secondary / outline button variant */
.button.circle{
  border-radius:999px;
  padding:14px 34px;
  font-weight:500;
}

/* ============================================================
   HOME PAGE
   ============================================================ */

/* Centered section headings across home */
.common-home .home-widget-title,
.common-home h2.home-widget-title,
.common-home .home_whats_new > h2,
.common-home .home_best_rating .home-widget-title{
  text-align:center;
  color:var(--fg-blue);
  font-weight:500;
  font-size:32px;
  margin-bottom:8px;
}
.common-home .home-widget-description{ text-align:center; color:var(--fg-muted); }

/* Welcome intro block */
.common-home .home-widget .home-widget-section-title h2.home-widget-title{ font-size:30px; }
.common-home .home-widget-title2{ text-align:center; font-size:18px; font-weight:400; }
.common-home .home-widget-title2 a{ color:var(--fg-blue); }

/* ---- Dark "trust" section (3 features) → navy rounded panel per Figma ---- */
.common-home .home-features-wrapper{
  position:relative;
  background:linear-gradient(180deg,#16326f 0%,#0f244f 100%);
  border-radius:20px;
  padding:56px 40px;
  margin:40px 0;
  color:#fff;
}
.common-home .home-features-wrapper .col-md-4,
.common-home .home-features-wrapper .home-feature,
.common-home .home-features-wrapper .content-box{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}
.common-home .home-features-wrapper .home-feature{ text-align:center; padding:0 14px; }
.common-home .home-features-wrapper .home-feature .img{
  width:96px;height:96px;margin:0 auto 22px;
  display:flex;align-items:center;justify-content:center;
  border:2px solid rgba(255,255,255,.35);
  border-radius:50%;
}
.common-home .home-features-wrapper .home-feature .img img{ max-width:48px;height:auto;filter:brightness(0) invert(1); }
.common-home .home-features-wrapper .home-feature-title h2,
.common-home .home-features-wrapper .home-feature-title h2 span{
  color:#fff !important;
  font-size:22px;font-weight:500;margin-bottom:14px;
}
.common-home .home-features-wrapper .home-feature-description,
.common-home .home-features-wrapper .home-feature-description p,
.common-home .home-features-wrapper .home-feature-description a{
  color:rgba(255,255,255,.85);
  font-size:15px;line-height:1.7;text-align:left;
}
.common-home .home-features-wrapper .home-feature-description a{ color:#8fd0ff; }

/* ============================================================
   GLOBAL: section titles + subcategory chips + breadcrumbs
   ============================================================ */
h1.home-widget-title,
.page_category h1.home-widget-title{
  color:var(--fg-blue);font-weight:500;text-align:center;
}
.breadcrumb{ font-size:13px; }
.breadcrumb a{ color:var(--fg-muted); }

/* Subcategory chips (category + home tabs) */
.like_tabs_links{
  display:flex;flex-wrap:wrap;justify-content:center;gap:10px;
  list-style:none;padding:0;margin:22px 0 30px;
}
.like_tabs_links li{ margin:0; }
.like_tabs_links li a{
  display:inline-block;padding:9px 18px;border-radius:999px;
  background:var(--fg-bg);color:var(--fg-blue);font-size:14px;
  border:1px solid var(--fg-line);line-height:1.2;text-decoration:none;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.like_tabs_links li.active a,
.like_tabs_links li a:hover{
  background:var(--fg-blue);color:#fff;border-color:var(--fg-blue);
}

/* ============================================================
   CATEGORY PAGE — specialist cards
   ============================================================ */
.offers_list{ gap:24px; }
.offers_list .item{ background:transparent; }
.offers_list .item .item_inner{
  background:#fff;border:1px solid var(--fg-line);border-radius:16px;
  overflow:hidden;height:100%;
  transition:transform .15s ease, box-shadow .15s ease;
}
.offers_list .item .item_inner:hover{
  transform:translateY(-4px);box-shadow:0 14px 32px rgba(16,42,95,.14);
}
.offers_list .item .img img{ border-radius:0; }
.offers_list .item .texts{ padding:14px 16px 4px; }
.offers_list .item .name a{ color:var(--fg-blue);font-weight:500;font-size:17px; }
.offers_list .item .text{ color:var(--fg-muted);font-size:13px;line-height:1.6; }
.offers_list .item .location{ padding:0 16px;font-size:13px; }
.offers_list .item .location a{ color:var(--fg-blue); }
.offers_list .item .reviews_stat{ padding:8px 16px; }
.offers_list .item .reviews_stat a{ color:var(--fg-muted); }
/* teal WA/contact buttons already covered by global .button */

/* ============================================================
   SPECIALIST DETAIL PAGE (.pro_page)
   ============================================================ */
.pro_page_top{ padding-bottom:10px; }
.pro_page_top h1{ font-weight:500; }
.pro_page .name_before{ color:var(--fg-teal); font-weight:500; }
.pro_page_gallery .module-title,
.pro_page .module-title{ color:var(--fg-blue); font-weight:500; }
/* in-page tab nav (header menu repurposed on specialist page) */
body[class*="product-product"] #menu-primary.menu{
  display:flex;flex-wrap:wrap;gap:8px;
}
body[class*="product-product"] #menu-primary.menu > li > a{
  border-radius:999px;padding:8px 16px;font-size:14px;font-weight:500;
}
.pro_page_description .left_column{ color:var(--fg-text); }

/* ============================================================
   NEWSBLOG PAGES (Блог / Афиша / Акции / Отзывы)
   ============================================================ */
/* Dark hero band per Figma */
.page-cover.has-image{
  position:relative;
  background-color:#0f244f;
  background-blend-mode:multiply;
  background-size:cover;background-position:center;
  padding:56px 0 64px;
}
.page-cover.has-image::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,50,111,.82),rgba(15,36,79,.92));
}
.page-cover.has-image > *{ position:relative;z-index:1; }
.page-cover .page-title{
  color:#fff;text-align:center;font-weight:500;max-width:1100px;margin:0 auto;
}
.page-cover .breadcrumb,
.page-cover .breadcrumb a,
.page-cover .breadcrumb li{ color:rgba(255,255,255,.8); justify-content:flex-start; }
.page-cover > .container .breadcrumb{ display:flex; flex-wrap:wrap; justify-content:flex-start; text-align:left; }
.page-cover .breadcrumb a:hover{ color:#fff; }

/* Article / event / promo cards */
.newsblog-category .content-area .item,
.newsblog-latest .item{
  background:#fff;border:1px solid var(--fg-line);border-radius:16px;
  overflow:hidden;height:100%;
  transition:transform .15s ease, box-shadow .15s ease;
}
.newsblog-category .content-area .item:hover{
  transform:translateY(-4px);box-shadow:0 14px 32px rgba(16,42,95,.14);
}
.newsblog-category .content-area .item .img img{ width:100%;display:block; }
.newsblog-category .content-area .item .date{
  color:var(--fg-muted);font-size:13px;padding:12px 16px 0;
}
.newsblog-category .content-area .item .name{ padding:4px 16px 0; }
.newsblog-category .content-area .item .name a{ color:var(--fg-blue);font-weight:500;font-size:17px; }
.newsblog-category .content-area .item .text{
  padding:8px 16px 16px;color:var(--fg-muted);font-size:13px;line-height:1.6;
}

/* ---- Stats block ---- */
.fg-stats{ margin:48px 0; }
.fg-stats-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:28px 24px;
}
.fg-stat{ text-align:center;padding:0 8px; }
.fg-stat-num{ color:var(--fg-blue);font-size:44px;font-weight:600;line-height:1.1;font-family:'Rubik',sans-serif; }
.fg-stat-cap{ color:var(--fg-blue);font-size:15px;font-weight:500;margin:8px 0 6px; }
.fg-stat-desc{ color:var(--fg-muted);font-size:13px;line-height:1.5; }
@media (max-width:900px){ .fg-stats-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .fg-stats-grid{ grid-template-columns:1fr; } .fg-stat-num{ font-size:38px; } }

/* ---- Catalog category grid cards ---- */
.common-home .like_tabs_links,
.common-home .home_whats_new .like_tabs_links{
  display:flex;flex-wrap:wrap;justify-content:center;gap:10px;
  list-style:none;padding:0;margin:0 0 28px;
}
.common-home .like_tabs_links li a{
  display:inline-block;padding:9px 18px;border-radius:999px;
  background:var(--fg-bg);color:var(--fg-blue);font-size:14px;
  border:1px solid var(--fg-line);
}
.common-home .like_tabs_links li.active a,
.common-home .like_tabs_links li a:hover{
  background:var(--fg-blue);color:#fff;border-color:var(--fg-blue);
}

/* Category tiles */
.items-home-categories .home-category-item{
  border-radius:14px;overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease;
}
.items-home-categories .home-category-item:hover{
  transform:translateY(-3px);box-shadow:0 12px 28px rgba(16,42,95,.18);
}
.items-home-categories .home-category-item .name{
  font-family:'Rubik',sans-serif;font-weight:500;
}

/* ---- Best rating cards row ---- */
.common-home .home_best_rating{ margin-top:48px; }

/* Specialist cards (Новые люди / best rating) */
.common-home .job_listing .content-box,
.common-home .home_best_rating-products .job_listing{
  border-radius:14px;overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease;
}
.common-home .job_listing .content-box:hover{
  transform:translateY(-3px);box-shadow:0 12px 28px rgba(16,42,95,.14);
}
.common-home .job_listing-title,
.common-home .job_listing-title a{ color:var(--fg-blue); font-weight:500; }

/* Blog cards on home */
.common-home .blog-archive--grid .content-box{
  border:1px solid var(--fg-line);border-radius:var(--fg-radius);overflow:hidden;
  transition:box-shadow .15s ease, transform .15s ease;
}
.common-home .blog-archive--grid .content-box:hover{
  box-shadow:0 10px 30px rgba(16,42,95,.12);transform:translateY(-3px);
}
.common-home .entry-title--grid a{ color:var(--fg-blue); }

/* ================= PRO TABS (страница специалиста, 5 вкладок по ТЗ) ================= */
.pro_tabs_wrap{ padding:18px 0 6px; }
.pro_tabs{
  display:flex; align-items:stretch;
  background:linear-gradient(90deg,#0b2f7a 0%,#123c94 50%,#0b2f7a 100%);
  border-radius:999px; padding:6px; gap:4px;
}
.pro_tabs .pro_tab{
  flex:1 1 0; text-align:center; padding:12px 10px;
  border-radius:999px; color:#fff; font-weight:400; font-size:16px;
  text-decoration:none; line-height:1.2; white-space:nowrap;
  transition:background .18s ease, color .18s ease;
}
.pro_tabs .pro_tab:hover{ background:rgba(255,255,255,.14); color:#fff; }
.pro_tabs .pro_tab.is-active{ background:#fff; color:#0b2f7a; font-weight:500; }

/* Вкладки как в макете: видна одна панель. Текст всех секций всё равно в HTML (SEO). Якоря #about…#contacts. */
.pro_tabpanel{ display:none !important; scroll-margin-top: 140px; }
.pro_tabpanel.is-active{ display:block !important; }
.pro_tabpanels{ min-height:0; height:auto; }
.sp-privacy {
  margin: 16px 0;
  padding: 14px 16px;
  background: #F4F8FC;
  border: 1px solid #D5DEEE;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.45;
  color: #2A3550;
  text-align: left;
}
.sp-privacy__notice { margin: 0 0 12px; }
.sp-privacy__check { display: flex; gap: 8px; align-items: flex-start; margin: 8px 0 0; cursor: pointer; }
.sp-privacy__check input { margin-top: 3px; }

/* «Обо мне» теперь на всю ширину — контакты переехали в свою вкладку */
.pro_page_description .left_column.is-full{ width:100%; max-width:100%; float:none; }
.pro_page_contacts .right_column{ width:100%; max-width:100%; float:none; }
.pro_page_contacts .right_column .img_wrap{ max-width:220px; }

/* дублирование вкладок в липком меню шапки */
body[class*="product-product"] #menu-primary a.is-active{
  background:var(--fg-blue); color:#fff;
}

@media (max-width:767px){
  .pro_tabs{ flex-wrap:nowrap; overflow-x:auto; border-radius:20px; -webkit-overflow-scrolling:touch; }
  .pro_tabs .pro_tab{ flex:0 0 auto; font-size:14px; padding:10px 16px; }
  .pro_page_contacts .right_column .img_wrap{ margin:0 auto 12px; }
}

/* Вкладка «Галерея Видео» — Figma 745:55684 / Card Video Web 580×300 r6 gap 20
   2 колонки, превью + play, не raw YouTube chrome iframe. */
#gallery .pro_video_gallery__in,#tab-gallery .pro_video_gallery__in,
#gallery > #video_gallery > .container.pro_video_gallery__in,#tab-gallery > #video_gallery > .container.pro_video_gallery__in{
  display:block !important;
  max-width:1180px;
  margin:0 auto;
  padding:16px 0 40px;
  box-sizing:border-box;
}
#gallery .pro_video_gallery__title,#tab-gallery .pro_video_gallery__title{
  margin:0 0 20px !important;
  font-size:20px !important;
  font-weight:400 !important;
  line-height:1.2 !important;
  color:#0066B2 !important;
  text-align:left !important;
  text-transform:none !important;
}
#gallery .pro_video_gallery__grid,#tab-gallery .pro_video_gallery__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 580px));
  gap:20px;
  justify-content:start;
  max-width:1180px;
}
#gallery .pro_video_card,#tab-gallery .pro_video_card{
  display:block;
  position:relative;
  width:100%;
  max-width:580px;
  height:300px;
  border-radius:6px;
  overflow:hidden;
  text-decoration:none;
  background:#0a1628;
  box-shadow:0 5px 20px rgba(193,200,218,.35);
}
#gallery .pro_video_card__media,#tab-gallery .pro_video_card__media{
  display:block;
  position:relative;
  width:100%;
  height:100%;
}
#gallery .pro_video_card__thumb,#tab-gallery .pro_video_card__thumb{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  object-fit:cover;
  object-position:center;
  display:block;
  border:0;
  border-radius:6px;
}
#gallery .pro_video_card__play,#tab-gallery .pro_video_card__play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:50px;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.35));
  transition:transform .15s ease;
}
#gallery .pro_video_card:hover .pro_video_card__play,#tab-gallery .pro_video_card:hover .pro_video_card__play{
  transform:translate(-50%,-50%) scale(1.06);
}
/* inline play replaces thumb with iframe */
#gallery .pro_video_card.is-playing .pro_video_card__play,#tab-gallery .pro_video_card.is-playing .pro_video_card__play{ display:none; }
#gallery .pro_video_card iframe,#tab-gallery .pro_video_card iframe{
  position:absolute; inset:0;
  width:100% !important; height:100% !important;
  border:0; border-radius:6px;
}
/* kill legacy single-column iframe rules on this tab */
#gallery .description_video,#tab-gallery .description_video,
#gallery .module-title,#tab-gallery .module-title{ display:none !important; }
#gallery .fluid-width-video-wrapper,#tab-gallery .fluid-width-video-wrapper{ display:none !important; }

@media (max-width:1023px){
  #gallery .pro_video_gallery__grid,  #tab-gallery .pro_video_gallery__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  #gallery .pro_video_card,  #tab-gallery .pro_video_card{
    max-width:none;
    height:auto;
    aspect-ratio:580 / 300;
  }
}
@media (max-width:767px){
  #gallery .pro_video_gallery__grid,  #tab-gallery .pro_video_gallery__grid{ grid-template-columns:1fr; gap:16px; }
  #gallery .pro_video_card,  #tab-gallery .pro_video_card{ height:auto; aspect-ratio:16 / 9; }
}

/* Вкладка «Услуги»: квадратные превью (полный кадр, без кругового кропа) */
#services .pro_page_gallery .items,#tab-services .pro_page_gallery .items{
  display:grid; grid-template-columns:repeat(4,1fr); gap:34px 24px;
  padding-bottom:24px;
}
#services .pro_page_gallery .items .item,#tab-services .pro_page_gallery .items .item{
  width:auto; margin:0; padding:0; background:none; border:0; box-shadow:none; text-align:center;
}
#services .pro_page_gallery .items .item > a.magnificPopup,#tab-services .pro_page_gallery .items .item > a.magnificPopup{
  display:flex; align-items:center; justify-content:center;
  width:186px; height:186px; margin:0 auto; padding:6px;
  border-radius:16px; background:#eef3f9; border:1px solid #d5e4f4;
  box-sizing:border-box; overflow:hidden;
}
#services .pro_page_gallery .items .item > a.magnificPopup img,#tab-services .pro_page_gallery .items .item > a.magnificPopup img{
  display:block; width:100%; height:100%; object-fit:contain; object-position:center;
  border-radius:12px; border:0; background:#eef3f9;
}
#services .pro_page_gallery .items .item .description,#tab-services .pro_page_gallery .items .item .description{
  margin-top:14px; color:var(--fg-blue); font-size:15px; font-weight:500;
  line-height:1.35; text-align:center; padding:0 6px;
}
#services .pro_page_gallery .items .item .description .btn,#tab-services .pro_page_gallery .items .item .description .btn{
  display:inline-block; margin-top:8px; padding:7px 16px;
  border-radius:999px; background:var(--fg-teal); color:#fff; font-size:13px;
}
@media (max-width:1023px){
  #services .pro_page_gallery .items,  #tab-services .pro_page_gallery .items{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:767px){
  #services .pro_page_gallery .items,  #tab-services .pro_page_gallery .items{ grid-template-columns:repeat(2,1fr); gap:24px 14px; }
  #services .pro_page_gallery .items .item > a.magnificPopup,  #tab-services .pro_page_gallery .items .item > a.magnificPopup{ width:140px; height:140px; }
}

/* колонки одинаковой ширины независимо от длины подписи */
#services .pro_page_gallery .items,#tab-services .pro_page_gallery .items{ grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:1023px){ #services .pro_page_gallery .items, #tab-services .pro_page_gallery .items{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:767px){ #services .pro_page_gallery .items, #tab-services .pro_page_gallery .items{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Вкладка «Контакты»: слева список контактов, справа карта (как в макете) */
.pro_page_description.pro_page_contacts .right_column{
  width:100% !important; max-width:none !important; float:none !important; padding-left:0; padding-right:0;
}
.pro_page_contacts .right_column .img_wrap{ max-width:110px; margin:0 0 18px; }
.pro_page_contacts .right_column .img_wrap img{ width:100%; border-radius:50%; display:block; }

.pro_page_contacts .right_column_contacts{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:16px 48px; align-items:start; align-content:start;
  padding-bottom:0; margin-bottom:0 !important;
}
.pro_page_contacts .fg-contacts-list{ grid-column:1; min-width:0; }
.pro_page_contacts .right_column_contacts > *{ min-width:0; }
.pro_page_contacts #listing-contact-map{
  grid-column:2; grid-row:1;
  width:100% !important; height:420px !important; max-height:420px !important;
  margin-bottom:0 !important;
  border-radius:14px; overflow:hidden;
}
.pro_page_contacts #listing-contact-map .gm-style,
.pro_page_contacts #listing-contact-map > div{
  max-height:420px !important;
}
.pro_page_contacts .offer_contacts_item{
  display:flex; align-items:center; gap:10px; padding:7px 0; margin:0;
}
.pro_page_contacts .offer_contacts_item svg{ width:20px; height:20px; flex:0 0 20px; }
.pro_page_contacts .offer_contacts_item a{ color:var(--fg-blue); word-break:break-word; }
.pro_page_contacts .offer_contacts_item p{ margin:0; }
.pro_page_contacts .job_listing-directions a{ color:var(--fg-blue); }
.pro_page_contacts .offer_contacts_discount{ margin:10px 0; }

/* Админ: счётчики переходов — только group 2, публичный макет не ломаем */
.pro_page_contacts .offer_contacts_item_stat{
  font-size: 12px;
  line-height: 1.35;
  color: #7A879E;
  margin: -2px 0 10px 30px;
}
.sp-admin-card-stats{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 6px 0 4px;
  font-size: 11px;
  color: #7A879E;
}
#contacts.pro_tabpanel,
#tab-contacts.pro_tabpanel,
#contacts .pro_page_description.pro_page_contacts,#tab-contacts .pro_page_description.pro_page_contacts{
  min-height:0 !important;
  height:auto;
  margin-bottom:0;
}
#contacts .pro_page_description.pro_page_contacts,#tab-contacts .pro_page_description.pro_page_contacts{ margin-top:24px; }

@media (max-width:767px){
  .pro_page_contacts .right_column_contacts{ grid-template-columns:minmax(0,1fr); gap:4px; }
  .pro_page_contacts .fg-contacts-list{ grid-column:1; }
  .pro_page_contacts #listing-contact-map{
    grid-column:1; grid-row:auto; height:260px !important; margin-bottom:14px;
  }
  .pro_page_contacts .right_column .img_wrap{ margin:0 auto 14px; }
}

/* Вкладка «Отзывы»: карточки отзывов и блок формы (как в макете).
   Внутреннюю раскладку .item не трогаем — там абсолютно спозиционированные
   декоративные линии line_left/line_right с инлайновой шириной. */
#reviews #review .items,#tab-reviews #review .items{ max-width:900px; margin:0 auto; }
#reviews #review .items .item,#tab-reviews #review .items .item{
  background:#fff; border:1px solid var(--fg-line); border-radius:10px;
  box-shadow:0 6px 20px rgba(16,42,95,.06); margin-bottom:22px;
}
#reviews #review .items .item .author,#tab-reviews #review .items .item .author{ color:var(--fg-blue); font-weight:500; font-size:18px; }
#reviews #review .items .item .date,#tab-reviews #review .items .item .date{ color:var(--fg-blue); font-size:13px; }
#reviews #review .items .item .text,#tab-reviews #review .items .item .text{ color:var(--fg-muted); line-height:1.6; }

#reviews #review_wrap .module-title,#tab-reviews #review_wrap .module-title{ color:var(--fg-blue); font-weight:500; }

/* Figma feedback web 880×634 r6 — form only, no giant pill CTA above */
#reviews #form-review,#tab-reviews #form-review{
  max-width:880px; width:100%; margin:28px auto 40px; padding:32px;
  background:#F1F3F5; border-radius:6px; box-sizing:border-box;
}
#reviews #form-review .gw-form-title,#tab-reviews #form-review .gw-form-title{
  font-size:25px !important; font-weight:400 !important; line-height:1.2 !important;
  color:#0066B2 !important; text-align:center; margin:0 0 20px !important;
}
#reviews #form-review .star-cb-group-label,#tab-reviews #form-review .star-cb-group-label{ color:#0066B2; font-size:14px; }
#reviews #form-review .review-phone-note,#tab-reviews #form-review .review-phone-note,
.review-phone-note{ margin:4px 0 0; color:#0066B2; font-size:11px !important; line-height:1.3; font-weight:400; }
/* Submit: Figma Button web 154×34 r6 — NOT legacy .button_circle 254×76 SVG */
#reviews #form-review .pro_review_submit,#tab-reviews #form-review .pro_review_submit,
#reviews #button-review.pro_review_submit,#tab-reviews #button-review.pro_review_submit{
  display:block !important;
  width:auto !important; min-width:154px; height:34px !important;
  margin:24px auto 0 !important;
  padding:0 22px !important;
  font-size:16px !important; font-weight:400 !important; line-height:34px !important;
  color:#fff !important;
  background:#0066B2 !important;
  border:0 !important; border-radius:6px !important;
  box-shadow:none !important;
  background-image:none !important;
  cursor:pointer;
  text-align:center;
}
#reviews #form-review .pro_review_submit:hover,#tab-reviews #form-review .pro_review_submit:hover{
  background:#00538F !important; opacity:1;
}
/* kill leftover giant pill if any link remains */
#reviews a.button_circle,#tab-reviews a.button_circle{ display:none !important; }

@media (max-width:767px){
  #reviews #form-review,  #tab-reviews #form-review{ padding:20px 14px; }
  /* Figma mob: отзыв — колонка, без 450px-плашки звёзд (она ломала карточку) */
  .pro_page #review .items .item .line_left,
  .pro_page #review .items .item .line_right{ display:none !important; }
  .pro_page #review .items .item .container{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px;
    padding:0 8px;
  }
  .pro_page #review .items .item .date{
    position:static !important;
    padding:0 !important;
    right:auto !important;
    top:auto !important;
  }
  .pro_page #review .items .item .img,
  .pro_page #review .items .item .stars{
    width:100% !important;
    height:auto !important;
    margin:0 !important;
  }
  .pro_page #review .items .item .img .bg,
  .pro_page #review .items .item .stars .bg{ display:none !important; }
  .pro_page #review .items .item .stars{
    border-radius:10px !important;
    box-sizing:border-box;
  }
  .pro_page #review .items .item .stars .stars-rating{
    width:100% !important;
    display:flex !important;
    justify-content:space-between;
    padding:4px 0 !important;
  }
  .pro_page #review .items .item .texts{ padding:0 !important; }
}

/* Вкладка «Обо мне»: типографика текстового блока по макету */
#about .left_column.is-full,#tab-about .left_column.is-full{ padding-bottom:36px; }
#about .all_title,#tab-about .all_title{ color:var(--fg-blue); font-weight:500; }
#about .description_text,#tab-about .description_text{
  max-width:920px; color:var(--fg-muted); font-size:15px; line-height:1.8;
}
#about .description_text p,#tab-about .description_text p{ margin:0 0 14px; }
#about .description_text strong,#tab-about .description_text strong{ color:var(--fg-blue); font-weight:500; }
#about .description_text h2,#tab-about .description_text h2{
  color:var(--fg-blue); font-weight:600; font-size:26px; margin:34px 0 16px;
}
#about .description_text h3,#tab-about .description_text h3{ font-weight:600; font-size:20px; margin:24px 0 12px; }
#about .description_text h4,#tab-about .description_text h4{ font-weight:600; font-size:16px; margin:16px 0 8px; }
#about .description_text a,#tab-about .description_text a{ color:var(--fg-blue); }
#about .description_text img,#tab-about .description_text img{ max-width:100%; height:auto; }
#about .reviews_stat,#tab-about .reviews_stat{ margin-top:24px; }

/* Футер: вертикальный градиент точно по макету (#000E37 → #0065B1) */
footer{
  background:linear-gradient(180deg,#000e37 0%,#0065b1 100%) !important;
}
footer .footer_line2{
  border-top:1px solid rgba(255,255,255,.18);
  background:transparent;
}
footer .footer_columns .column_right ul li a{
  color:rgba(255,255,255,.88);
}
footer .footer_columns .column_right ul li a:hover{ color:#fff; }
footer .copyright2 a{ color:rgba(255,255,255,.75); }
footer .copyright2 a:hover{ color:#fff; }
footer .slogan{ color:rgba(255,255,255,.9); }
footer p{ color:rgba(255,255,255,.75); }

/* Текстовые блоки контентных страниц (FAQ, Единство, Инструкции, Документы, описания разделов):
   у темы line-height:normal и строка во всю ширину 1150px — нечитаемо. Приводим к макету. */
.newsblog_specials_description{
  max-width:980px; margin:0 auto; font-size:16px; line-height:1.75; color:var(--fg-muted);
}
.newsblog_specials_description p{ margin:0 0 14px; line-height:1.75; }
.newsblog_specials_description h2{ color:var(--fg-blue); font-weight:500; font-size:26px; margin:34px 0 14px; }
.newsblog_specials_description h3{ color:var(--fg-blue); font-weight:500; font-size:19px; margin:26px 0 10px; }
.newsblog_specials_description strong{ color:var(--fg-blue); font-weight:500; }
.newsblog_specials_description a{ color:var(--fg-blue); }
.newsblog_specials_description ul,
.newsblog_specials_description ol{ padding-left:22px; margin:0 0 14px; }
.newsblog_specials_description li{ margin-bottom:6px; }
.newsblog_specials_description img{ max-width:100%; height:auto; }

@media (max-width:767px){
  .newsblog_specials_description{ font-size:15px; }
  .newsblog_specials_description h2{ font-size:21px; }
  .newsblog_specials_description h3{ font-size:17px; }
}

/* Заголовки системных попапов (Авторизация, Регистрация, Пополнение счета и т.д.)
   переведены с <h2> на <div class="popup-title">, чтобы не засорять SEO-структуру страницы
   (требование ТЗ). Стили повторяют прежний вид <h2> внутри .popup один в один. */
.popup .popup-title{
  font-family:Rubik,"Open Sans",system-ui,-apple-system,Arial,sans-serif;
  font-size:21px; line-height:21px; font-weight:400;
  color:#0066b2; margin:0 0 20px; text-align:left;
}
.popup .popup-title.text-center{ text-align:center; }

/* Информационные страницы (О нас, Инструкции, Контакты, Условия, Политика, Оферта)
   используют #main > article, а не .newsblog_specials_description — накрываем и их. */
#content .site-main article{
  max-width:980px; margin:0 auto; font-size:16px; line-height:1.75; color:var(--fg-muted);
}
#content .site-main article p{ margin:0 0 14px; line-height:1.75; }
#content .site-main article h2{ color:var(--fg-blue); font-weight:500; font-size:26px; margin:34px 0 14px; }
#content .site-main article h3{ color:var(--fg-blue); font-weight:500; font-size:19px; margin:26px 0 10px; }
#content .site-main article strong{ color:var(--fg-blue); font-weight:500; }
#content .site-main article a{ color:var(--fg-blue); }
#content .site-main article ul,
#content .site-main article ol{ padding-left:22px; margin:0 0 14px; }
#content .site-main article li{ margin-bottom:6px; }
#content .site-main article img{ max-width:100%; height:auto; }

@media (max-width:767px){
  #content .site-main article{ font-size:15px; }
  #content .site-main article h2{ font-size:21px; }
  #content .site-main article h3{ font-size:17px; }
}

/* ============ КАТАЛОГ: карточка специалиста по макету ============
   Разметка не меняется — в ней уже есть избранное, фото, рейтинг,
   локация, скидка, контакты и кнопка. Меняем только подачу. */
.offers_list{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px;
  align-items:stretch;
}
.offers_list .item{ width:auto !important; margin:0 !important; float:none !important; }
.offers_list .item .item_inner{
  position:relative; height:100%;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  padding:18px 18px 20px; border-radius:14px;
  background:#fff; border:1px solid var(--fg-line);
  transition:transform .15s ease, box-shadow .15s ease;
}
.offers_list .item .item_inner:hover{
  transform:translateY(-4px); box-shadow:0 14px 32px rgba(16,42,95,.14);
}

/* круглое фото в градиентном кольце */
.offers_list .item_inner .img{
  position:static; width:170px; height:170px; margin:14px auto 14px;
  padding:6px; border-radius:50%; overflow:visible;
  background:linear-gradient(140deg,#7fb3ff 0%,#c3b7ff 50%,#f3a7dd 100%);
}
.offers_list .item_inner .img > a:not(.js-add-wishlist){
  display:block; width:100%; height:100%;
  overflow:hidden; border-radius:50%;
}
.offers_list .item_inner .img img{
  display:block; width:100%; height:100%; object-fit:cover; object-position:50% 20%;
  transform:scale(1.12);
  border-radius:50%; border:5px solid #fff;
}
/* звёзды показываем в строке статистики, а не поверх фото */
.offers_list .item_inner .img .listing-stars{ display:none; }
/* избранное — в правый верхний угол карточки */
.offers_list .item_inner .img .js-add-wishlist{
  position:absolute; top:12px; right:14px; display:flex; align-items:center; gap:5px;
}
.offers_list .item_inner .img .js-add-wishlist .heart{ width:17px; height:17px; }

.offers_list .item_inner .texts{ width:100%; }
.offers_list .item_inner .name{ margin:0 0 6px; }
.offers_list .item_inner .name a,
.offers_list .item_inner .name{ color:var(--fg-blue); font-weight:500; font-size:17px; line-height:1.3; }
.offers_list .item_inner .text{
  color:var(--fg-muted); font-size:13px; line-height:1.55; margin:0 0 12px;
  display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden;
}
.offers_list .item_inner .location{
  width:100%; padding-top:10px; margin-bottom:8px;
  border-top:1px solid var(--fg-line); font-size:13px;
}
.offers_list .item_inner .location a{ color:var(--fg-blue); }
.offers_list .item_inner .reviews_stat{
  display:flex; justify-content:center; align-items:center; gap:16px;
  width:100%; font-size:13px; margin-bottom:12px;
}
/* сердце уже есть вверху карточки — в строке статистики оно дублируется */
.offers_list .item_inner .reviews_stat .js-add-wishlist{ display:none; }
.offers_list .item_inner .discount{
  width:100%; font-size:12px; color:var(--fg-blue);
  background:#eef7f3; border-radius:8px; padding:7px 10px; margin-bottom:10px;
}
.offers_list .item_inner .contacts_wrap{
  margin-top:auto; width:100%;
  display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap;
}
.offers_list .item_inner .contacts_wrap .btn{
  order:10; flex:1 1 100%;
  display:block; width:100%; padding:11px 14px;
  background:var(--fg-blue); color:#fff; border-radius:8px;
  font-size:14px; font-weight:500; text-align:center;
}
.offers_list .item_inner .contacts_wrap .btn:hover{ background:#00538f; color:#fff; }

@media (max-width:1023px){
  .offers_list{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
}
@media (max-width:600px){
  .offers_list{ grid-template-columns:minmax(0,1fr); }
  .offers_list .item_inner .img{ width:140px; height:140px; }
}

/* На мобильной тема перебивает размеры фото в карточке каталога — фиксируем жёстко */
.offers_list .item_inner .img img{
  width:100% !important; height:100% !important; object-fit:cover !important;
}
.offers_list .item_inner .img > a:not(.js-add-wishlist){
  width:100% !important; height:100% !important;
}

/* ============ КАТАЛОГ (корень /specialists/): строки-разделы по макету ============
   В макете каждая категория — широкая строка: фото слева, синий заголовок,
   ниже чипсы подкатегорий. Фон-картинка задана инлайном на .home-category-item,
   поэтому прижимаем её к левой колонке через background-position/size. */
/* Card Catalog2 (Figma 758:32986): 1180×253, image 280×253, radius 6, HORIZONTAL gap 4 */
body.product-category-all .page_category > .container{
  max-width:1180px;
  width:100%;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}
.page_category .items-home-categories{
  display:block;
  max-width:1180px;
  margin:0 auto;
  width:100%;
  box-sizing:border-box;
}
.page_category .items-home-categories .image-grid-item{
  width:100% !important; max-width:none !important; flex:0 0 100% !important;
  padding:0 !important; margin:0 0 20px !important; /* Figma catalog list gap 20, pitch 273 */
}
.page_category .items-home-categories .home-category-item{
  display:block; position:relative;
  min-height:253px !important; height:auto !important;
  padding:16px 24px 16px 304px; /* Figma content pad T/B 16; 280 image + 4 gap + 20 */
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:280px 100% !important;
  /* Right panel fill; photo is inline background-image (left 280px) */
  background-color:#F1F3F5;
  border:0 !important; border-radius:6px !important;
  overflow:hidden; text-decoration:none;
  box-shadow:0 5px 20px rgba(193,200,218,.35);
}
/* Figma Card Catalog2 surface gradient #FFFFFF → #F1F3F5 on content area only
   (inline photo bg must stay intact on the left).
   z-index:0 + pointer-events:none — текст/ссылки (z-index:2) сверху и кликабельны. */
body.product-category-all .page_category .items-home-categories .home-category-item::after{
  content:"";
  position:absolute;
  left:280px; top:0; right:0; bottom:0;
  background:linear-gradient(180deg,#FFFFFF 0%,#F1F3F5 100%);
  z-index:0;
  pointer-events:none;
  border-radius:0 6px 6px 0;
}
/*
  LEGACY KILL (additional_102024.css):
  .items-home-categories .name { position:absolute; left:60px; top:30px; color:#fff; uppercase }
  .items-home-categories .children { position:absolute; left:30px; top:90px }
  MUST stay position:relative (not static) so z-index works above ::after.
*/
body.product-category-all .page_category .items-home-categories .home-category-item > .name,
body.product-category-all .page_category .items-home-categories .home-category-item .name,
body.product-category-all .page_category .items-home-categories .home-category-item a.name,
body.product-category-all .page_category .items-home-categories .home-category-item span.name,
body.product-category-all .page_category .items-home-categories .home-category-item > .children,
body.product-category-all .page_category .items-home-categories .home-category-item .children{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:2 !important;
  float:none !important;
  transform:none !important;
  pointer-events:auto !important;
}
.page_category .items-home-categories .home-category-item:hover{
  box-shadow:0 10px 26px rgba(16,42,95,.12);
}
.page_category .items-home-categories .home-category-item > .name,
.page_category .items-home-categories .home-category-item .name{
  display:block !important;
  width:100%;
  max-width:100%;
  color:#0066B2 !important;
  font-size:20px !important;
  font-weight:400 !important;
  line-height:1.185 !important;
  text-transform:none !important;
  margin:0 0 16px !important;
  padding:0 0 12px !important;
  background:none !important;
  text-shadow:none !important;
  /* Figma title rule under name */
  border-bottom:1px solid #4CA8ED !important;
  border-image:none !important;
  text-decoration:none !important;
}
/* kill legacy green/white dot before name */
body.product-category-all .page_category .items-home-categories .name:before{
  content:none !important;
  display:none !important;
}
/* Categories: Figma 872×160 — rows h=44, row gap 14, item gap 40; 3 cols */
.page_category .items-home-categories .children{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px 40px !important;
  align-items:start;
  width:100% !important;
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
}
/* Subcategory row: 40×40 icon + 18/400 #0066B2 label, row h≈44 */
.page_category .items-home-categories .children a,
.page_category .items-home-categories .children a.cat-sub{
  display:inline-flex !important; align-items:center; gap:4px;
  min-height:44px; padding:0 4px; box-sizing:border-box;
  background:none !important; border:0 !important; border-radius:0;
  color:#0066B2; font-size:18px; font-weight:400; line-height:21.33px;
  text-decoration:none; white-space:normal;
}
.page_category .items-home-categories .children a:hover,
.page_category .items-home-categories .children a.cat-sub:hover{
  color:#00538F; text-decoration:none; background:none !important; border:0 !important;
  opacity:.88;
}
.page_category .items-home-categories .children .cat-sub__icon{
  flex:0 0 40px; width:40px; height:40px;
  display:inline-flex; align-items:center; justify-content:center;
}
.page_category .items-home-categories .children .cat-sub__icon img{
  width:40px; height:40px; object-fit:contain; display:block;
}
.page_category .items-home-categories .children .cat-sub__icon--empty{
  border:1.5px solid rgba(0,102,178,.35); border-radius:8px;
  box-sizing:border-box;
}
.page_category .items-home-categories .children .cat-sub__label{
  flex:1 1 auto; min-width:0;
  font-size:18px; font-weight:400; line-height:21.33px; color:inherit;
  text-transform:none;
}
/* Business row: Figma 1180×220, 3×380 gap 20 */
.page_category .items-home-categories .cat-business-row{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 380px));
  gap:20px;
  justify-content:start;
  width:100%;
  max-width:1180px;
  margin:0 0 20px;
}
.page_category .items-home-categories .cat-business-card{
  display:flex; align-items:flex-start; justify-content:center;
  width:100%; max-width:380px; height:220px;
  border-radius:10px; overflow:hidden;
  background-size:cover; background-position:center;
  background-repeat:no-repeat;
  text-decoration:none;
  box-shadow:0 5px 20px rgba(193,200,218,.45);
  position:relative;
  padding:14px 12px 16px;
  box-sizing:border-box;
}
/* Figma: soft white «засвет» сверху, title on top */
.page_category .items-home-categories .cat-business-card::after{
  content:""; position:absolute; left:0; right:0; top:0; height:50%;
  background:linear-gradient(180deg,
    rgba(255,255,255,.95) 0%,
    rgba(255,255,255,.7) 35%,
    rgba(255,255,255,.2) 70%,
    rgba(255,255,255,0) 100%);
  pointer-events:none;
  border-radius:10px 10px 0 0;
}
.page_category .items-home-categories .cat-business-card__title{
  position:relative; z-index:1;
  color:#0066B2; font-size:20px; font-weight:400; line-height:23.7px;
  text-align:center;
  text-shadow:none;
}
.page_category .items-home-categories .cat-sale-wrap{
  width:100%; max-width:1180px; margin:0 0 20px;
  flex:0 0 100%;
}
body.product-category-all .page_category .sale-bar{
  margin-bottom:0;
}

@media (max-width:1023px){
  .page_category .items-home-categories .home-category-item{
    min-height:200px; padding:20px 18px 20px 220px;
    background-size:200px 100% !important;
  }
  body.product-category-all .page_category .items-home-categories .home-category-item::after{
    left:200px;
  }
  .page_category .items-home-categories .children{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px 20px !important;
  }
  .page_category .items-home-categories .cat-business-row{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
@media (max-width:767px){
  .page_category .items-home-categories .home-category-item{
    min-height:0; padding:168px 16px 18px;
    background-position:center top !important;
    background-size:100% 150px !important;
  }
  body.product-category-all .page_category .items-home-categories .home-category-item::after{
    left:0; top:150px; border-radius:0 0 6px 6px;
  }
  .page_category .items-home-categories .children{
    grid-template-columns:minmax(0,1fr);
    gap:10px !important;
  }
  .page_category .items-home-categories .cat-business-row{
    grid-template-columns:minmax(0,1fr);
  }
  .page_category .items-home-categories .cat-business-card{
    max-width:none; height:180px;
  }
  .page_category .items-home-categories .children .cat-sub__icon,
  .page_category .items-home-categories .children .cat-sub__icon img{
    width:32px; height:32px; flex-basis:32px;
  }
  .page_category .items-home-categories .children a,
  .page_category .items-home-categories .children a.cat-sub{
    font-size:16px; min-height:36px;
  }
}

/* ============ ГЛАВНАЯ: блок «Каталог специалистов» ============
   В макете это компактные плитки 3 в ряд: фото слева, синее название справа.
   Скоупим по body.common-home, чтобы не задеть строки в корне каталога. */
body.common-home .items-home-categories{
  display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px; margin:0;
}
body.common-home .items-home-categories .image-grid-item{
  width:auto !important; max-width:none !important; flex:0 0 auto !important;
  padding:0 !important; margin:0 !important;
}
body.common-home .items-home-categories .home-category-item{
  display:flex; align-items:center;
  min-height:88px; height:auto !important;
  padding:12px 16px 12px 122px;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:104px 100% !important;
  background-color:#fff;
  border:1px solid var(--fg-line); border-radius:10px;
  overflow:hidden; text-decoration:none;
  transition:box-shadow .15s ease, transform .15s ease;
}
body.common-home .items-home-categories .home-category-item:hover{
  transform:translateY(-2px); box-shadow:0 10px 24px rgba(16,42,95,.12);
}
body.common-home .items-home-categories .home-category-item .name{
  position:static; display:block;
  color:var(--fg-blue); font-size:15px; font-weight:500; line-height:1.3;
  margin:0; padding:0; background:none !important; text-shadow:none;
  text-align:left; text-decoration:none;
}
body.common-home .items-home-categories .home-category-item .children{ display:none; }

@media (max-width:1023px){
  body.common-home .items-home-categories{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px){
  body.common-home .items-home-categories{ grid-template-columns:minmax(0,1fr); }
}

/* Главная, секция доверия: иконки в тонких кольцах и центрированный заголовок (как в макете) */
.home-features-wrapper .home-feature .img{
  width:96px; height:96px; margin:0 auto 20px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.35); border-radius:50%;
}
.home-features-wrapper .home-feature .img img{
  width:44px; height:auto; margin:0;
  filter:brightness(0) invert(1);
}
.home-features-wrapper .home-feature-title{ text-align:center; margin-bottom:16px; }
.home-features-wrapper .home-feature-title h2{ font-size:21px; font-weight:500; margin:0; }
.home-features-wrapper .home-feature-description{ font-size:14px; line-height:1.7; }

@media (max-width:767px){
  .home-features-wrapper .home-feature .img{ width:76px; height:76px; }
  .home-features-wrapper .home-feature .img img{ width:36px; }
}
/* тема ставит 2px — в макете кольцо тонкое */
.home-features-wrapper .home-feature .img{ border-width:1px !important; }

/* ============ ПОИСК: строка поиска по макету ============
   Белая карточка, поле с подчёркиванием, синяя кнопка «Найти» с лупой.
   У кнопки в шаблоне нет текста — подписываем её через ::after. */
.search-form{
  display:flex; align-items:center; gap:12px;
  background:#fff; border:1px solid var(--fg-line); border-radius:14px;
  padding:14px 16px; box-shadow:0 10px 30px rgba(16,42,95,.10);
}
.search-form label{ flex:1 1 auto; margin:0; min-width:0; }
.search-form .search-field{
  width:100%; height:44px;
  border:0 !important; border-bottom:1px solid #cbd8ea !important; border-radius:0 !important;
  background:transparent; padding:0 4px; font-size:16px; color:var(--fg-blue);
  box-shadow:none !important;
}
.search-form .search-field::placeholder{ color:#9fb0cc; }
.search-form .search-field:focus{ border-bottom-color:var(--fg-blue) !important; outline:none; }
.search-form .search-submit{
  flex:0 0 auto; display:inline-flex; align-items:center; gap:8px;
  height:48px; padding:0 26px;
  background:var(--fg-blue) !important; border:0; border-radius:10px;
  color:#fff; font-size:16px; font-weight:500; cursor:pointer;
}
.search-form .search-submit::after{ content:"Найти"; }
.search-form .search-submit:hover{ background:#00538f !important; }

@media (max-width:600px){
  .search-form{ flex-wrap:wrap; padding:12px; }
  .search-form label{ flex:1 1 100%; }
  .search-form .search-submit{ flex:1 1 100%; justify-content:center; }
}

/* ============ ВЫДАЧА ПОИСКА ============
   Дефолтная раскладка OpenCart выводила результаты списком во всю ширину
   (страница вырастала до 22000px). Приводим к сетке карточек как в каталоге. */
body.product-search #content .row:has(> .product-layout){
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:0;
}
body.product-search .product-layout{
  width:auto !important; max-width:none !important; flex:0 0 auto !important;
  padding:0 !important; margin:0 !important;
}
body.product-search .product-thumb{
  height:100%; display:flex; flex-direction:column; align-items:center; text-align:center;
  background:#fff; border:1px solid var(--fg-line); border-radius:14px; padding:18px;
  transition:transform .15s ease, box-shadow .15s ease;
}
body.product-search .product-thumb:hover{
  transform:translateY(-4px); box-shadow:0 14px 32px rgba(16,42,95,.14);
}
body.product-search .product-thumb .image{
  width:170px; height:170px; margin:6px auto 14px; padding:6px;
  border-radius:50%; background:linear-gradient(140deg,#7fb3ff 0%,#c3b7ff 50%,#f3a7dd 100%);
}
body.product-search .product-thumb .image a{ display:block; width:100%; height:100%; }
body.product-search .product-thumb .image img{
  width:100% !important; height:100% !important; object-fit:cover;
  border-radius:50%; border:5px solid #fff; display:block;
}
body.product-search .product-thumb .caption{ width:100%; padding:0; }
body.product-search .product-thumb .caption h4{ margin:0 0 8px; font-size:16px; line-height:1.3; }
body.product-search .product-thumb .caption h4 a{ color:var(--fg-blue); font-weight:500; }
body.product-search .product-thumb .caption p{
  color:var(--fg-muted); font-size:13px; line-height:1.55; margin:0;
  display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden;
}
body.product-search .product-thumb .button-group{ margin-top:auto; width:100%; padding-top:14px; }

@media (max-width:1023px){
  body.product-search #content .row:has(> .product-layout){ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px){
  body.product-search #content .row:has(> .product-layout){ grid-template-columns:minmax(0,1fr); }
}

/* ============ СТРАНИЦА СТАТЬИ / МЕРОПРИЯТИЯ / СЕРТИФИКАТА ============
   Один шаблон newsblog-article на все три типа. */

/* блок «Содержание» — в макете светлая карточка со списком якорей */
body.newsblog-article .page_contents_title{
  color:var(--fg-blue); font-weight:500; font-size:15px;
  background:#f1f5fa; border:1px solid var(--fg-line); border-bottom:0;
  border-radius:12px 12px 0 0; padding:16px 20px 8px; margin:0;
}
body.newsblog-article .page_contents_links{
  display:flex; flex-direction:column; gap:8px;
  background:#f1f5fa; border:1px solid var(--fg-line); border-top:0;
  border-radius:0 0 12px 12px; padding:4px 20px 18px; margin:0 0 28px;
}
body.newsblog-article .page_contents_links a{
  color:var(--fg-blue); font-size:14px; line-height:1.45; text-decoration:none;
}
body.newsblog-article .page_contents_links a:hover{ text-decoration:underline; }

/* мета-строка: дата, автор с аватаром, комментарии — в одну строку */
body.newsblog-article .entry-meta{
  display:flex; align-items:center; flex-wrap:wrap; gap:8px 20px;
  color:var(--fg-muted); font-size:13px; margin-bottom:18px;
}
body.newsblog-article .entry-meta .entry-author{
  display:inline-flex; align-items:center; gap:9px;
}
body.newsblog-article .entry-meta .avatar{
  width:32px !important; height:32px !important; border-radius:50%; object-fit:cover;
}
body.newsblog-article .entry-meta a{ color:var(--fg-blue); }

/* картинки и цитаты в теле статьи */
body.newsblog-article .entry-content img{ max-width:100%; height:auto; border-radius:12px; }
body.newsblog-article .entry-content blockquote{
  margin:20px 0; padding:14px 20px;
  border-left:3px solid var(--fg-teal); background:#f5f9fc;
  border-radius:0 10px 10px 0; color:var(--fg-blue);
}
body.newsblog-article .entry-content ul,
body.newsblog-article .entry-content ol{ padding-left:22px; margin:0 0 14px; }
body.newsblog-article .entry-content li{ margin-bottom:6px; }
@media (max-width:767px){
  body.newsblog-article .entry-meta{ gap:6px 14px; font-size:12px; }
  body.newsblog-article .entry-meta .avatar{ width:26px !important; height:26px !important; }
  body.newsblog-article .page_contents_title{ padding:14px 16px 6px; }
  body.newsblog-article .page_contents_links{ padding:4px 16px 14px; }
}

/* Кнопка «Войти» в шапке — форма как в макете (пилюля с обводкой) */
.primary-header a.js-open-popup{
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 18px; border:1px solid rgba(255,255,255,.6); border-radius:999px;
  color:#fff; font-size:14px; line-height:1.2; text-decoration:none;
  transition:background .15s ease, border-color .15s ease;
}
.primary-header a.js-open-popup:hover{
  background:rgba(255,255,255,.14); border-color:#fff; color:#fff;
}

/* ============ ХЕДЕР: белая шапка по макету ============
   Логотип заменён на синий вариант logo_sarafan-blue.svg
   (оригинал logo_sarafan-mini.svg сделан под тёмный фон и остаётся на месте). */
header .primary-header{
  background:#fff !important;
  box-shadow:0 1px 0 rgba(16,42,95,.10);
}
header .primary-header a{ color:var(--fg-blue); }
header .primary-header a:hover{ color:var(--fg-blue); }
header .primary-header .container > *{ color:var(--fg-blue); }

/* кнопка «Войти» — синяя обводка на белом */
.primary-header a.js-open-popup{
  border-color:var(--fg-blue) !important;
  color:var(--fg-blue) !important;
}
.primary-header a.js-open-popup:hover{
  background:var(--fg-blue) !important; color:#fff !important;
}

/* иконки в шапке (поиск, корзина, избранное) — тёмно-синие вместо белых */
header .primary-header svg{ fill:var(--fg-blue); }
header .primary-header svg path{ fill:inherit; }

/* полоса соцсетей: в макете её нет — делаем нейтральной, а не бирюзовой */
header .social-header{
  background:#f1f5fa !important;
  border-bottom:1px solid var(--fg-line);
}
header .social-header,
header .social-header a{ color:var(--fg-blue); }
header .social-header a:hover{ color:var(--fg-blue); }

/* Пункты главного меню были белыми (шапка была синей) — на белом фоне они пропадали */
header .primary-header .nav-menu-container ul.menu > li > a{ color:var(--fg-blue) !important; }
header .primary-header .nav-menu-container ul.menu > li > a:hover{ color:var(--fg-blue) !important; }
/* но активная вкладка профиля специалиста остаётся белой на синей заливке */
body[class*="product-product"] #menu-primary a.is-active{ color:#fff !important; }

/* ============ СПИСКИ: Блог / Афиша / Акции / Единство / Отзывы ============
   Карточки были разной высоты, описание не обрезалось (до 944px на карточку).
   Приводим к сетке равной высоты с обрезкой текста, как в макете. */
.newsblog-category .content-area .blog-items.row{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin:0;
}
.newsblog-category .content-area .blog-items.row > [class*="col-"]{
  width:auto !important; max-width:none !important; flex:0 0 auto !important;
  padding:0 !important; margin:0 !important;
}
.newsblog-category .content-area .blog-items .item{
  display:flex; flex-direction:column; height:100%;
}
.newsblog-category .content-area .blog-items .item .img img{
  width:100%; height:auto; aspect-ratio:1 / 1; object-fit:contain; object-position:center; background:#eef3f9; display:block;
}
.newsblog-category .content-area .blog-items .item .text{
  display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical;
  overflow:hidden; margin-bottom:14px;
}
.newsblog-category .content-area .blog-items .item .button_white{
  margin-top:auto; align-self:flex-start;
  display:inline-block; padding:9px 18px; border-radius:999px;
  background:var(--fg-blue); color:#fff; font-size:13px; font-weight:500;
  margin-left:16px; margin-right:16px; margin-bottom:16px;
}
.newsblog-category .content-area .blog-items .item .button_white:hover{
  background:#00538f; color:#fff;
}

@media (max-width:1023px){
  .newsblog-category .content-area .blog-items.row{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
}
@media (max-width:600px){
  .newsblog-category .content-area .blog-items.row{ grid-template-columns:minmax(0,1fr); }
}

/* Формы на страницах «Контакты» и «Создание сайта» — белая карточка, как в макете */
#content .content-box{
  background:#fff; border:1px solid var(--fg-line); border-radius:14px;
  padding:28px 30px; box-shadow:0 10px 30px rgba(16,42,95,.07);
}
#content .content-box .home-widget-section-title{ margin-bottom:8px; }
#content .content-box .home-widget-description{ color:var(--fg-muted); font-size:14px; }
#content .content-box .field{ margin-bottom:14px; }
#content .content-box input[type=text],
#content .content-box input[type=email],
#content .content-box input[type=tel],
#content .content-box input[type=phone],
#content .content-box textarea{
  width:100%; border:1px solid #d7e3f5; border-radius:8px;
  padding:11px 14px; font-size:15px; color:var(--fg-blue); background:#fff;
}
#content .content-box input:focus,
#content .content-box textarea:focus{ border-color:var(--fg-blue); outline:none; }
#content .content-box .create_account_checkbox{
  display:flex; align-items:flex-start; gap:9px;
  font-size:13px; color:var(--fg-muted); margin-bottom:9px; line-height:1.5;
}
#content .content-box button,
#content .content-box input[type=submit]{
  background:var(--fg-blue); color:#fff; border:0; border-radius:999px;
  padding:12px 30px; font-size:15px; font-weight:500; cursor:pointer;
}
#content .content-box button:hover,
#content .content-box input[type=submit]:hover{ background:#00538f; }

@media (max-width:767px){
  #content .content-box{ padding:20px 16px; }
}

/* ============ FAQ: аккордеон по макету 803:47763 ============
   Component select closed: 1180×72; section titles 38/400 #0066B2; body 18/400 #5B6D9C */
body.newsblog-category .site-main,
body.newsblog-category #content,
body.newsblog-category .container,
body[class*="faq"] .site-main{
  max-width:1180px !important;
  width:100%;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}
body.newsblog-category .faq-accordion,
body.newsblog-category .faq-item{
  max-width:1180px !important;
  width:100% !important;
}
/* FAQ: accordion is full 1180; other newsblog text pages keep narrower measure */
html.gw-p-faq .newsblog_specials_description,
html.gw-p-faq .content-area .newsblog_specials_description,
html.gw-p-faq .faq-accordion,
html.gw-p-faq .faq-item{
  max-width:1180px !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
body.newsblog-category h2,
.faq-section-title{
  font-size:38px !important;
  font-weight:400 !important;
  line-height:1.18 !important;
  color:#0066B2 !important;
  margin:32px 0 12px !important;
}
body.newsblog-category h2 + p,
.faq-section-lead{
  font-size:18px !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  color:#5B6D9C !important;
  max-width:1180px;
  margin:0 0 24px !important;
}
.faq-accordion{
  display:flex; flex-direction:column; gap:12px; margin-top:8px;
  max-width:1180px; width:100%;
}
.faq-item{
  background:#F5F8FC; border:1px solid #D7E3F5; border-radius:8px; overflow:hidden;
  min-height:72px; max-width:1180px; width:100%; box-sizing:border-box;
}
.faq-item .faq-q{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  width:100%; min-height:72px; text-align:left; cursor:pointer;
  background:none; border:0; padding:20px 24px;
  font-family:inherit; font-size:18px; font-weight:400; color:#0066B2; line-height:1.3;
  box-sizing:border-box;
}
.faq-item .faq-q::after{
  content:""; flex:0 0 auto; width:10px; height:10px;
  border-right:2px solid #0066B2; border-bottom:2px solid #0066B2;
  transform:rotate(45deg); transition:transform .2s ease; margin-top:-4px;
}
.faq-item.is-open .faq-q::after{ transform:rotate(-135deg); margin-top:3px; }
.faq-item .faq-a{ display:none; padding:0 24px 20px; }
.faq-item.is-open .faq-a{ display:block; }
.faq-item .faq-a p{ margin:0 0 10px; font-size:16px; line-height:1.5; color:#5B6D9C; }
.faq-item .faq-a p:last-child{ margin-bottom:0; }

@media (max-width:767px){
  .faq-item{ min-height:0; }
  .faq-item .faq-q{ min-height:56px; padding:14px 16px; font-size:15px; }
  .faq-item .faq-a{ padding:0 16px 14px; }
  body.newsblog-category h2{ font-size:28px !important; }
}

/* ============ ФУТЕР: три колонки по макету ============ */
footer .footer_columns{
  display:grid; grid-template-columns:300px minmax(0,1fr) 240px; gap:40px;
  align-items:start;
}
footer .footer_columns .column_left,
footer .footer_columns .column_specialists,
footer .footer_columns .column_right{ width:auto !important; float:none !important; }

footer .footer-col-title{
  color:#fff; font-size:19px; font-weight:500;
  padding-bottom:12px; margin-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.25);
}
footer .column_specialists ul{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 24px;
  list-style:none; margin:0; padding:0;
}
footer .column_specialists ul li{ margin:0; }
footer .column_specialists ul li a{
  color:rgba(255,255,255,.85); font-size:13px; line-height:1.5;
}
footer .column_specialists ul li a:hover{ color:#fff; }
footer .column_right ul{ list-style:none; margin:0; padding:0; }
footer .column_right ul li a{ font-size:13px; line-height:1.6; }

@media (max-width:1023px){
  footer .footer_columns{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  footer .footer_columns .column_left{ grid-column:1 / -1; }
}
@media (max-width:767px){
  footer .footer_columns{ grid-template-columns:minmax(0,1fr); gap:26px; }
  footer .column_specialists ul{ grid-template-columns:minmax(0,1fr); }
}

/* Кнопка «Присоединиться» в шапке (макет) */
.primary-header .header-join .btn-join{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 20px; border-radius:999px;
  background:linear-gradient(90deg,var(--fg-navy),var(--fg-blue)) !important; color:#fff !important;
  font-size:14px; font-weight:500; line-height:1.2; text-decoration:none; white-space:nowrap;
}
.primary-header .header-join .btn-join:hover{ background:var(--fg-blue) !important; color:#fff !important; }

/* Время чтения статьи */
.entry-reading-time{ color:var(--fg-muted); }
.entry-reading-time::before{ content:"⏱ "; }

@media (max-width:767px){
  .primary-header .header-join .btn-join{ padding:8px 14px; font-size:13px; }
}

/* ============ СТРАНИЦА ТАРИФОВ — Figma Услуги WEB 803:47171 ============ */
body.information-tarify .tarify_page{ background:#fff; }
.tarify_cover{ text-align:center; }
.tarify_cover .breadcrumb{ justify-content:flex-start; max-width:1180px; margin:0 auto; padding:0 0 0 0; }
.tarify_cover-text{
  position:relative; z-index:1; max-width:900px; margin:14px auto 0;
  color:rgba(255,255,255,.88); font-size:16px; line-height:1.55; text-align:center; font-weight:400;
}
.tarify_page > .container{
  max-width:1180px; margin:0 auto; padding:24px 0 56px; box-sizing:border-box;
}
.tarify_h2{
  color:#0066B2; font-weight:400; font-size:38px; line-height:1.18;
  margin:48px 0 12px; text-align:left;
}
.tarify_h2--ai{ text-align:center; max-width:980px; margin-left:auto; margin-right:auto; }
.tarify_sub{ color:#5B6D9C; font-size:18px; line-height:1.4; margin:0 0 24px; font-weight:400; }
.tarify_sub--center{ text-align:center; max-width:900px; margin:16px auto 24px; }

/* stats: Figma numbers 800+/15/48 */
.tarify_stats{
  display:grid; grid-template-columns:repeat(3, minmax(0, 280px));
  gap:40px; justify-content:center;
  padding:40px 0 8px; text-align:center;
}
.tarify_stat .num{
  color:#5B6DFF; font-size:64px; font-weight:300; line-height:1.1;
  font-family:Rubik,system-ui,sans-serif;
}
.tarify_stat .cap{ color:#5B6D9C; font-size:16px; line-height:1.4; margin-top:10px; max-width:240px; margin-left:auto; margin-right:auto; }

/* plans: 3×380 gap 20, r6, equal height */
.tarify_plans{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 380px));
  gap:20px; justify-content:start; align-items:stretch;
  max-width:1180px;
}
.tarify_plan{
  position:relative; display:flex; flex-direction:column; overflow:hidden;
  width:100%; max-width:380px; min-height:0;
  background:#fff; border:0; border-radius:6px;
  box-shadow:0 5px 20px rgba(193,200,218,.4);
}
.tarify_plan-head{
  background:#0066B2; color:#fff; text-align:center;
  font-size:22px; font-weight:500; letter-spacing:.04em; padding:16px 10px;
}
.tarify_plan--popular .tarify_plan-head{ background:linear-gradient(90deg,#002B66,#0066B2); }
.tarify_ribbon{
  position:absolute; top:18px; left:-36px; transform:rotate(-45deg);
  background:#E2342D; color:#fff; font-size:11px; font-weight:600; letter-spacing:.02em;
  padding:6px 42px; z-index:2; text-transform:lowercase;
}
.tarify_plan-body{ display:flex; flex-direction:column; flex:1 1 auto; padding:20px 20px 22px; }
.tarify_plan .price{ color:#0066B2; font-size:36px; font-weight:400; text-align:center; line-height:1.15; }
.tarify_plan .period{ color:#5B6D9C; font-size:14px; text-align:center; margin:4px 0 16px; }
.tarify_plan .note{ color:#5B6D9C; font-size:14px; line-height:1.45; margin:14px 0 12px; text-align:center; }
.tarify_plan .tarify_list{ flex:1 1 auto; }

.tarify_btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  text-align:center; padding:10px 20px; border-radius:6px;
  background:#0066B2; color:#fff !important; font-size:16px; font-weight:400;
  text-decoration:none; border:1.3px solid #0066B2; line-height:1.2; box-sizing:border-box;
}
.tarify_btn:hover{ background:#00538f; border-color:#00538f; color:#fff !important; }
.tarify_btn--outline{ background:#fff; color:#0066B2 !important; }
.tarify_btn--outline:hover{ background:#0066B2; color:#fff !important; }
.tarify_btn--solid{ background:linear-gradient(90deg,#002B66,#0066B2); border:0; }
.tarify_btn--small{ padding:8px 16px; font-size:14px; border-radius:6px; }
.tarify_btn--wa{ background:#25D366; border-color:#25D366; white-space:nowrap; }
.tarify_btn--wa-outline{
  background:transparent; color:#fff !important; border:1.5px solid #fff; white-space:nowrap;
}
.tarify_btn--wa-outline:hover{ background:#fff; color:#002B66 !important; }
.tarify_plan .tarify_btn{ display:flex; width:100%; min-height:44px; }

.tarify_list{ list-style:none; margin:0; padding:0; }
.tarify_list li{
  position:relative; padding-left:26px; margin-bottom:10px;
  color:#5B6D9C; font-size:14px; line-height:1.45;
}
.tarify_list li::before{
  content:""; position:absolute; left:2px; top:3px;
  width:14px; height:14px; border-radius:50%;
  background:#E8F1FB;
  box-shadow:inset 0 0 0 1.5px #0066B2;
}
.tarify_list li::after{
  content:""; position:absolute; left:6px; top:5px;
  width:5px; height:8px; border-right:2px solid #0066B2; border-bottom:2px solid #0066B2;
  transform:rotate(45deg);
}
.tarify_list li strong{ color:#0066B2; font-weight:500; }
.tarify_bonus{
  margin-top:auto; padding:12px 0 0; background:transparent; border-radius:0;
  color:#5B6D9C; font-size:13px; line-height:1.45; border-top:1px solid #E8EEF7;
}
.tarify_bonus-title{ color:#0066B2; font-weight:500; margin-bottom:6px; font-size:14px; }

/* extras: single column ~980 like Figma List */
.tarify_extras{
  display:flex; flex-direction:column; gap:16px;
  max-width:980px; margin:0 auto;
}
.tarify_extra{
  display:flex; flex-direction:column;
  background:#fff; border:0; border-radius:6px; padding:20px 24px;
  box-shadow:0 5px 20px rgba(193,200,218,.35);
}
.tarify_extra-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:12px; }
.tarify_extra-title{ color:#0066B2; font-size:20px; font-weight:400; margin:0 0 6px; }
.tarify_extra-desc{ color:#5B6D9C; font-size:14px; line-height:1.45; }
.tarify_extra-price{ text-align:right; flex:0 0 auto; }
.tarify_extra-price b{ display:block; color:#0066B2; font-size:28px; font-weight:400; line-height:1.15; }
.tarify_extra-price span{ display:block; color:#5B6D9C; font-size:13px; margin-top:4px; }
.tarify_extra-price--text b{ font-size:20px; }
.tarify_extra-badge{
  display:inline-block; margin-left:4px; padding:2px 8px; border-radius:999px;
  background:#0066B2; color:#fff; font-size:11px; font-style:normal; vertical-align:middle;
}
.tarify_extra-note{ color:#5B6D9C; font-size:13px; margin:4px 0 12px; }
.tarify_extra-foot{ display:flex; justify-content:flex-end; margin-top:12px; }
.tarify_extra .tarify_btn--small{ margin-top:0; }

.tarify_cta{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  max-width:980px; margin:28px auto 40px;
  background:linear-gradient(90deg,#000B2B,#002B66 40%,#0066B2);
  border-radius:6px; padding:28px 32px; color:#fff;
  box-sizing:border-box;
}
.tarify_cta-title{ font-size:22px; font-weight:400; margin-bottom:8px; }
.tarify_cta-text{ color:rgba(255,255,255,.88); font-size:15px; line-height:1.45; max-width:640px; }

/* Guide video block */
.tarify_guide{ max-width:1180px; margin:48px auto 24px; }
.tarify_guide-video{
  position:relative; height:420px; border-radius:6px; overflow:hidden;
  background:linear-gradient(135deg,#0a1a3a 0%,#1a3a6a 50%,#2a5080 100%);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:20px;
}
.tarify_guide-play{ position:relative; z-index:1; }
.tarify_guide-caption{
  position:absolute; left:0; right:0; bottom:0; padding:28px 32px;
  background:linear-gradient(180deg,transparent,rgba(0,11,43,.85));
  color:#fff; text-align:center;
}
.tarify_guide-kicker{ font-size:28px; font-weight:400; margin-bottom:6px; }
.tarify_guide-title{ font-size:18px; opacity:.9; }
.tarify_guide-help{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:20px 0 8px;
}
.tarify_guide-help-title{ color:#0066B2; font-size:20px; margin-bottom:6px; }
.tarify_guide-help-text{ color:#5B6D9C; font-size:15px; line-height:1.45; max-width:720px; }

/* AI VS section */
.tarify_ai{ margin:48px 0 24px; padding:40px 0; }
.tarify_ai-vs{
  display:grid; grid-template-columns:1fr auto 1fr; gap:16px; align-items:stretch;
  max-width:1180px; margin:28px auto 0;
}
.tarify_ai-card{
  background:#fff; border-radius:6px; padding:24px;
  box-shadow:0 5px 20px rgba(193,200,218,.35); min-height:280px;
}
.tarify_ai-card--bad{ border-top:4px solid #96A1BD; }
.tarify_ai-card--good{ border-top:4px solid #0066B2; }
.tarify_ai-label{ font-size:22px; color:#0066B2; font-weight:400; margin-bottom:8px; }
.tarify_ai-tag{
  display:inline-block; padding:4px 12px; border-radius:999px; font-size:13px;
  background:#EEF1F6; color:#5B6D9C; margin-bottom:16px;
}
.tarify_ai-tag--good{ background:#E8F1FB; color:#0066B2; }
.tarify_ai-list{ list-style:none; margin:0; padding:0; }
.tarify_ai-list li{
  position:relative; padding:8px 0 8px 22px; color:#5B6D9C; font-size:15px; line-height:1.4;
  border-top:1px solid #EEF1F6;
}
.tarify_ai-list li:first-child{ border-top:0; }
.tarify_ai-list li::before{
  content:""; position:absolute; left:0; top:14px; width:8px; height:8px; border-radius:50%;
  background:#96A1BD;
}
.tarify_ai-card--good .tarify_ai-list li::before{ background:#0066B2; }
.tarify_ai-mid{
  display:flex; align-items:center; justify-content:center; width:80px;
}
.tarify_ai-mid span{
  display:inline-flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:50%;
  background:#0066B2; color:#fff; font-size:16px; font-weight:500;
  box-shadow:0 4px 16px rgba(0,102,178,.35);
}

.tarify_features{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.tarify_feature{ background:#fff; border:0; border-radius:6px; padding:20px; box-shadow:0 5px 20px rgba(193,200,218,.3); }
.tarify_feature .tag{
  display:inline-block; background:#E8F1FB; color:#0066B2;
  border-radius:999px; padding:4px 12px; font-size:12px; margin-bottom:10px;
}
.tarify_feature h3{ color:#0066B2; font-size:18px; font-weight:400; margin:0 0 8px; }
.tarify_feature p{ color:#5B6D9C; font-size:14px; line-height:1.5; margin:0; }

.tarify_rules{ display:grid; grid-template-columns:1fr; gap:12px; max-width:1080px; }
.tarify_rule{ background:#F5F8FC; border:0; border-radius:6px; padding:18px 20px; }
.tarify_rule h3{ color:#0066B2; font-size:18px; font-weight:400; margin:0 0 8px; }
.tarify_rule p{ color:#5B6D9C; font-size:15px; line-height:1.5; margin:0; }

@media (max-width:1200px){
  .tarify_page > .container{ padding-left:16px; padding-right:16px; }
  .tarify_plans{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .tarify_plan{ max-width:none; }
}
@media (max-width:1023px){
  .tarify_plans, .tarify_features{ grid-template-columns:1fr; }
  .tarify_stats{ grid-template-columns:1fr; gap:20px; }
  .tarify_ai-vs{ grid-template-columns:1fr; }
  .tarify_ai-mid{ width:100%; padding:8px 0; }
  .tarify_guide-video{ height:280px; }
  .tarify_guide-help{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:767px){
  .tarify_h2{ font-size:26px; }
  .tarify_stat .num{ font-size:48px; }
  .tarify_cta{ flex-direction:column; align-items:flex-start; padding:20px; }
  .tarify_extra-top{ flex-direction:column; }
  .tarify_extra-price{ text-align:left; }
  .tarify_extra-foot{ justify-content:flex-start; }
}

/* ============ ОТЗЫВЫ О ПЛАТФОРМЕ (макет «Отзыв WEB») ============
   В шаблоне уже есть дата, скриншот отзыва, текст, имя и ссылка на сайт-визитку.
   Приводим к виду карточки из макета: скриншот слева, текст справа. */
body.newsblog-category .content-area > .site-main{ max-width:none; }
body.newsblog-category article.content-box{
  background:#fff; border:1px solid var(--fg-line); border-radius:14px;
  box-shadow:0 8px 24px rgba(16,42,95,.07);
  margin:0 auto 22px; padding:22px 24px; max-width:1000px;
}
body.newsblog-category article.content-box .entry-meta{
  color:var(--fg-muted); font-size:13px; margin-bottom:12px;
}
body.newsblog-category article.content-box .page-specials-top{
  display:grid; grid-template-columns:220px minmax(0,1fr); gap:26px; align-items:start;
}
body.newsblog-category article.content-box .images{ width:auto !important; }
body.newsblog-category article.content-box .images img{
  width:100% !important; height:auto !important;
  border-radius:12px; border:1px solid var(--fg-line); display:block;
}
body.newsblog-category article.content-box .texts{ width:auto !important; }
body.newsblog-category article.content-box blockquote{
  margin:0 0 14px; padding:0 0 0 16px;
  border-left:3px solid var(--fg-teal); background:none;
  color:var(--fg-text,#3c4a63); font-size:15px; line-height:1.7; font-style:normal;
  white-space:pre-line;
}
body.newsblog-category article.content-box .texts p{
  color:var(--fg-blue); font-weight:500; font-size:15px; margin:0 0 14px;
}
body.newsblog-category article.content-box .texts .btn{
  display:inline-block; padding:10px 20px; border-radius:999px;
  background:var(--fg-blue); color:#fff; font-size:14px; font-weight:500;
}
body.newsblog-category article.content-box .texts .btn:hover{ background:#00538f; color:#fff; }

@media (max-width:767px){
  body.newsblog-category article.content-box{ padding:16px; }
  body.newsblog-category article.content-box .page-specials-top{
    grid-template-columns:minmax(0,1fr); gap:16px;
  }
  body.newsblog-category article.content-box .images{ max-width:260px; margin:0 auto; }
}

/* ============ КОНТАКТЫ: способы связи сгруппированными карточками
   (макет «Контакты WEB» 852:44993, Tab/Mob 1050:78957) ============
   Контент: интро-абзац, .contacts-cards с двумя .contacts-card
   (WhatsApp / Соцсети), финальный абзац с почтой — структура задана
   в oc_information_description (information_id=8), стили — здесь.
   Замер по узлу: card padding 16px, radius 8px, shadow 0 5px 20px
   rgba(193,200,218,.4), заголовок карточки 25px/500 #0066B2,
   пункт-ссылка 18px/500 #0066B2, разделитель между пунктами #DDDDDD. */
body[class*="information-information-8"] #content .site-main article{
  display:block; max-width:1000px; margin:0 auto;
}
body[class*="information-information-8"] #content .site-main article > p{
  margin:0 0 24px; font-size:16px; line-height:1.6; color:var(--fg-muted);
}
body[class*="information-information-8"] #content .site-main article .contacts-cards{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px; margin:0 0 24px;
}
body[class*="information-information-8"] #content .site-main article .contacts-card{
  background:#fff; border-radius:8px; padding:16px;
  box-shadow:0 5px 20px rgba(193,200,218,.4);
}
body[class*="information-information-8"] #content .site-main article .contacts-card-title{
  font-size:25px; line-height:1.18; font-weight:500; color:#0066B2;
  margin:0 0 16px;
}
body[class*="information-information-8"] #content .site-main article .contacts-card p{
  margin:0; font-size:18px; line-height:1.35; font-weight:500; color:#0066B2;
  padding:12px 0;
}
body[class*="information-information-8"] #content .site-main article .contacts-card p:first-child{
  padding-top:0;
}
body[class*="information-information-8"] #content .site-main article .contacts-card p:last-child{
  padding-bottom:0;
}
body[class*="information-information-8"] #content .site-main article .contacts-card p + p{
  border-top:1px solid #DDDDDD;
}
body[class*="information-information-8"] #content .site-main article .contacts-card p a{
  color:#0066B2; font-weight:500;
  /* тап-таргет: ссылка была 18px высотой внутри 48px карточки-строки.
     Растягиваем ссылку на всю строку, отрицательный margin гасит двойной отступ. */
  display:block; padding:12px 0; margin:-12px 0;
}
/* Подписи-описания у пунктов (текст дословно из макета 852:45010, узлы
   "Frame 427321621"): Rubik 16px/400, цвет — ближайший из палитры
   var(--fg-muted) #5B6D9C (в узле fill #808791, не входит в палитру).
   Ссылки/почта/телефоны не меняются, только добавлена вторая строка. */
body[class*="information-information-8"] #content .site-main article .contacts-card p .contacts-item-desc,
body[class*="information-information-8"] #content .site-main article > p:last-child .contacts-item-desc{
  display:block; font-size:16px; line-height:1.35; font-weight:400;
  color:#808791; margin-top:6px;
}
/* Цвет взят из узла 852:45010 напрямую: подпись 16/400 #808791 (×6).
   В моём списке палитры этого оттенка не было — список неполон, макет первичен. */
body[class*="information-information-8"] #content .site-main article > p a{
  color:#0066B2; font-weight:500;
}
/* Финальный абзац (почта создателя) — тоже карточка в макете (852:45055):
   белая, radius 8, та же тень, что и у .contacts-card. */
body[class*="information-information-8"] #content .site-main article > p:last-child a{
  display:block; padding:11px 0; margin:-11px 0;
}
body[class*="information-information-8"] #content .site-main article > p:last-child{
  background:#fff; border-radius:8px; padding:16px;
  box-shadow:0 5px 20px rgba(193,200,218,.4);
  margin:0;
}

@media (max-width:1024px){
  body[class*="information-information-8"] #content .site-main article .contacts-cards{
    grid-template-columns:minmax(0,1fr);
    gap:16px;
  }
}


/* Бейдж «SarafanPRO» в углу карточки каталога (макет) */
.offers_list .item_inner .card-badge{
  position:absolute; top:12px; left:14px; z-index:2;
  display:inline-flex; align-items:center; gap:5px;
  background:var(--fg-teal); color:#fff;
  font-size:11px; font-weight:500; line-height:1;
  padding:5px 10px; border-radius:999px;
}
.offers_list .item_inner .card-badge::before{ content:"✦"; font-size:10px; }

/* Телефон в футере (номер из макета) */
footer .footer-phone{ margin:14px 0 10px; }
footer .footer-phone a{
  display:inline-flex; align-items:center; gap:8px;
  color:#fff; font-size:16px; font-weight:500; text-decoration:none;
}
footer .footer-phone a::before{ content:"☎"; font-size:14px; opacity:.85; }
footer .footer-phone a:hover{ color:#fff; text-decoration:underline; }

/* ============ HERO КАТЕГОРИИ (макет «Каталог2») ============
   Тёмная полоса на всю ширину: крошки, H1 и чипсы подкатегорий. */
.page_category .cat_hero{
  background:linear-gradient(180deg,#0b2f7a 0%,#123c94 100%);
  padding:26px 0 30px; margin-bottom:34px;
}
.page_category .cat_hero .breadcrumb,
.page_category .cat_hero .breadcrumb li,
.page_category .cat_hero .breadcrumb a{
  color:rgba(255,255,255,.8); justify-content:center;
}
.page_category .cat_hero .breadcrumb a:hover{ color:#fff; }
.page_category .cat_hero h1.home-widget-title{
  color:#fff; text-align:center; font-weight:500; margin:10px auto 18px; max-width:1000px;
}
.page_category .cat_hero .like_tabs_links{
  display:flex; flex-wrap:wrap; justify-content:center; gap:9px;
  list-style:none; margin:0; padding:0;
}
.page_category .cat_hero .like_tabs_links li{ margin:0; }
.page_category .cat_hero .like_tabs_links li a{
  display:inline-block; padding:8px 16px; border-radius:999px;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.3);
  color:#fff; font-size:13px; line-height:1.2; text-decoration:none;
}
.page_category .cat_hero .like_tabs_links li a:hover,
.page_category .cat_hero .like_tabs_links li.active a{
  background:#fff; border-color:#fff; color:var(--fg-blue);
}

@media (max-width:767px){
  .page_category .cat_hero{ padding:18px 0 22px; margin-bottom:22px; }
  .page_category .cat_hero .like_tabs_links li a{ font-size:12px; padding:7px 13px; }
}

/* ============ ГЛАВНАЯ: блок поиска «Я хочу найти» ============ */
.home_find{ padding:36px 0 10px; }
.home_find-title{
  color:var(--fg-blue); font-size:26px; font-weight:500; margin-bottom:16px;
}
.home_find .home_find-form{ max-width:860px; }
.home_find-popular{ margin-top:16px; }
.home_find-popular-label{ color:var(--fg-muted); font-size:13px; margin-bottom:9px; }
.home_find-chips{
  display:flex; flex-wrap:wrap; gap:9px; list-style:none; margin:0; padding:0;
}
.home_find-chips li{ margin:0; }
.home_find-chips li a{
  display:inline-block; padding:7px 15px; border-radius:999px;
  background:#fff; border:1px solid #d7e3f5; color:var(--fg-blue);
  font-size:13px; line-height:1.2; text-decoration:none;
}
.home_find-chips li a:hover{ background:var(--fg-blue); border-color:var(--fg-blue); color:#fff; }

/* ============ ГЛАВНАЯ: вкладки «Знакомьтесь!» ============ */
.meet_block{ padding:34px 0 10px; }
.meet_title{
  color:var(--fg-blue); font-size:28px; font-weight:500; text-align:center; margin-bottom:18px;
}
.meet_tabs{
  display:flex; justify-content:center; gap:8px; flex-wrap:wrap;
  background:#eef2f8; border-radius:999px; padding:6px; margin:0 auto 26px; width:fit-content; max-width:100%;
}
.meet_tabs .meet_tab{
  display:block; padding:10px 22px; border-radius:999px;
  color:var(--fg-blue); text-decoration:none; transition:background .18s ease, color .18s ease;
}
.meet_tabs .meet_tab h2{
  margin:0; font-size:15px; font-weight:500; color:inherit; line-height:1.2; text-align:center;
}
.meet_tabs .meet_tab:hover{ background:rgba(255,255,255,.7); }
.meet_tabs .meet_tab.is-active{ background:var(--fg-blue); color:#fff; }
.meet_tabs .meet_tab.is-active h2{ color:#fff; }
.meet_panel{ display:none; }
.meet_panel.is-active{ display:block; }

@media (max-width:767px){
  .home_find-title{ font-size:21px; }
  .meet_title{ font-size:22px; }
  .meet_tabs{ flex-direction:column; border-radius:16px; width:100%; }
  .meet_tabs .meet_tab{ text-align:center; }
}

/* ============ HERO КОРНЯ КАТАЛОГА: поиск и популярные запросы ============ */
.cat_hero .cat_hero-form{ max-width:760px; margin:0 auto; }
.cat_hero-popular{ text-align:center; margin-top:16px; }
.cat_hero-popular-label{ color:rgba(255,255,255,.75); font-size:13px; margin-bottom:9px; }
.cat_hero .home_find-chips{ justify-content:center; }
.cat_hero .home_find-chips li a{
  background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.3); color:#fff;
}
.cat_hero .home_find-chips li a:hover{ background:#fff; border-color:#fff; color:var(--fg-blue); }

/* ссылка на карту — вторичная кнопка, а не крупная салатовая пилюля */
.cat_hero .from-the-blog{ text-align:center; margin:20px 0 0; }
.cat_hero-maplink{
  display:inline-flex; align-items:center; gap:9px;
  padding:10px 22px; border-radius:999px;
  background:transparent; border:1px solid rgba(255,255,255,.55);
  color:#fff !important; font-size:15px; font-weight:400; text-decoration:none;
}
.cat_hero-maplink::before{ content:"⌖"; font-size:17px; line-height:1; }
.cat_hero-maplink:hover{ background:#fff; border-color:#fff; color:var(--fg-blue) !important; }

@media (max-width:767px){
  .cat_hero-maplink{ font-size:14px; padding:9px 18px; }
}

/* ============ ГЛАВНАЯ: первый экран по макету ============
   Старый видео-баннер (HTML-модуль «Главная - видео») в макете отсутствует —
   скрываем его. Модуль стоит отключить в админке, чтобы не грузить mp4. */
body.common-home .home_video{ display:none !important; }

.fg-hero{ background:#fff; padding:10px 0 0; overflow:hidden; }
.fg-hero-inner{ position:relative; }
.fg-hero-collage{
  display:block; width:100%; height:auto; margin:0 auto;
}
.fg-hero-text{
  position:absolute; top:26px; right:0; z-index:2; max-width:470px; text-align:left;
}
.fg-hero-title{
  color:var(--fg-blue); font-size:44px; font-weight:500; line-height:1.12; margin-bottom:12px;
}
.fg-hero-sub{ color:var(--fg-muted); font-size:15px; line-height:1.55; max-width:400px; }

.fg-partners{ background:#f5f8fc; padding:18px 0; }
.fg-partners img{ display:block; width:100%; height:auto; }

@media (max-width:1023px){
  .fg-hero-title{ font-size:32px; }
  .fg-hero-text{ top:12px; max-width:340px; }
  .fg-hero-sub{ font-size:13px; }
}
@media (max-width:767px){
  .fg-hero-inner{ display:flex; flex-direction:column; }
  .fg-hero-text{ position:static; max-width:none; text-align:center; padding:14px 0 10px; }
  .fg-hero-title{ font-size:26px; }
  .fg-hero-sub{ margin:0 auto; }
  .fg-partners{ overflow-x:auto; }
  .fg-partners img{ min-width:640px; }
}

/* Текстовый дубль «SarafanPRO в цифрах» из админ-модуля — цифры выводит блок .fg-stats */
body.common-home #content > .container.homepage-hero-style-image > section.home-widget{ display:none; }

/* ============ Contacts WEB Figma 852:44993 ============ */
body.information-information-8 .fg-info-cover .page-title,
body.information-information-8 .page-cover h1{
  font-size:48px !important; font-weight:300 !important; line-height:1.15 !important;
  margin:0 auto !important; padding:0 !important; color:#fff !important;
  text-align:center; max-width:1180px;
}
/* Real lead under H1 (not ::after — gw11 hides page-cover::after) */
body.information-information-8 .fg-info-cover__titles{
  position:relative; z-index:2;
  max-width:1180px; margin:0 auto; padding:0 16px 8px;
  text-align:center; box-sizing:border-box;
}
body.information-information-8 .fg-info-cover__lead{
  display:block !important;
  max-width:980px; margin:14px auto 0;
  color:#BFDBFE; font-size:16px; line-height:1.5; font-weight:400;
  text-align:center;
}
/* Kill dark film + any leftover pseudo lead */
body.information-information-8 .page-cover::after{
  content:none !important; display:none !important;
}
/* Figma: one feedback form in content — hide layout module duplicate */
body.information-information-8 section.add_info-offers{
  display:none !important;
}
/* Content width matches Figma Content 1180 */
body.information-information-8 #primary.container,
body.information-information-8 #content .site-main article{
  max-width:1180px; margin-left:auto; margin-right:auto;
}
body.information-information-8 .fg-contacts{
  max-width:1180px; margin:0 auto; padding:8px 0 48px;
}
body.information-information-8 #primary{ padding-top:28px; }

.fg-contacts__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
  margin-top:8px;
  align-items:stretch;
}
.fg-contacts__card{
  background:#fff;
  border-radius:8px;
  padding:16px;
  box-shadow:0 5px 20px rgba(193,200,218,.4);
  box-sizing:border-box;
  min-height:100%;
}
.fg-contacts__card--wide{ grid-column:1 / -1; }
.fg-contacts__title{
  margin:0 0 4px !important;
  font-size:25px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  color:#0066B2 !important;
  text-decoration:none !important;
}
.fg-contacts__sub{
  margin:0 0 12px;
  font-size:14px;
  line-height:1.4;
  color:#5B6D9C;
}
.fg-contacts__row{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px 0;
  border-top:1px solid #DDDDDD;
  text-decoration:none !important;
  color:inherit;
}
.fg-contacts__row:first-of-type{ border-top:0; padding-top:4px; }
.fg-contacts__row:hover .fg-contacts__row-title{ text-decoration:underline; }
.fg-contacts__ico{
  flex:0 0 20px; width:20px; height:20px; margin-top:2px;
  border-radius:50%;
  background:#25D366 center/12px no-repeat;
}
.fg-contacts__ico--wa{
  background-color:#25D366;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M12 2a9 9 0 0 0-7.7 13.5L3 21l5.7-1.5A9 9 0 1 0 12 2zm0 2a7 7 0 0 1 0 14 7 7 0 0 1-3.5-.9l-.3-.2-3.4.9.9-3.3-.2-.3A7 7 0 0 1 12 4zm-2.4 3.4c-.2 0-.5.1-.7.3-.3.3-.8.8-.8 1.9s.8 2.2.9 2.3c.1.2 1.6 2.6 4 3.5 2 .8 2.4.6 2.8.6.4 0 1.4-.6 1.6-1.1.2-.5.2-1 .1-1.1-.1-.1-.3-.2-.7-.4s-1.4-.7-1.6-.8c-.2-.1-.4-.1-.5.1l-.7.9c-.1.1-.3.2-.5.1-.2-.1-.9-.3-1.8-1.1-.7-.6-1.1-1.3-1.3-1.5-.1-.2 0-.4.1-.5l.4-.5c.1-.1.2-.3.3-.4.1-.1.1-.3 0-.4l-.8-1.8c-.2-.4-.4-.4-.6-.4z'/%3E%3C/svg%3E");
  background-size:12px; background-position:center; background-repeat:no-repeat;
}
.fg-contacts__ico--fb{
  background-color:#1877F2;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M14 8h2V5h-2c-2.2 0-4 1.8-4 4v2H8v3h2v7h3v-7h2.2l.8-3H13V9c0-.6.4-1 1-1z'/%3E%3C/svg%3E");
  background-size:12px; background-position:center; background-repeat:no-repeat;
}
.fg-contacts__ico--ig{
  background-color:#E1306C;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M7 3h10a4 4 0 0 1 4 4v10a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V7a4 4 0 0 1 4-4zm5 4.5A4.5 4.5 0 1 0 16.5 12 4.5 4.5 0 0 0 12 7.5zm5.2-.9a1.1 1.1 0 1 0 1.1 1.1 1.1 1.1 0 0 0-1.1-1.1zM12 9.5A2.5 2.5 0 1 1 9.5 12 2.5 2.5 0 0 1 12 9.5z'/%3E%3C/svg%3E");
  background-size:12px; background-position:center; background-repeat:no-repeat;
}
/* Gmail multicolor M brand mark (Figma) — not solid blue envelope circle */
.fg-contacts__ico--mail{
  background-color:transparent !important;
  border-radius:0 !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23EA4335' d='M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z'/%3E%3Cpath fill='%23FBBC05' d='M0 5.457v1.5l8.727 6.545V21H1.636A1.636 1.636 0 0 1 0 19.366V5.457z'/%3E%3Cpath fill='%2334A853' d='M24 5.457v1.5l-8.727 6.545V21h6.091A1.636 1.636 0 0 0 24 19.366V5.457z'/%3E%3Cpath fill='%23C5221F' d='M0 5.457c0-2.023 2.309-3.178 3.927-1.964L12 9.548 5.455 4.64 3.927 3.493C2.309 2.279 0 3.434 0 5.457z'/%3E%3Cpath fill='%23EA4335' d='M24 5.457c0-2.023-2.309-3.178-3.927-1.964L12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z'/%3E%3C/svg%3E") !important;
  background-size:20px 20px !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.fg-contacts__row-body{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.fg-contacts__row-title{
  font-size:18px; font-weight:500; color:#0066B2; line-height:1.3;
}
.fg-contacts__row-desc{
  font-size:16px; line-height:1.35; font-weight:400; color:#808791;
}

/* feedback form — Figma feedback 780×638 */
.fg-contacts-form{
  max-width:780px;
  margin:40px auto 12px;
  padding:28px 32px 32px;
  background:#F1F3F5;
  border-radius:8px;
  box-shadow:0 5px 20px rgba(193,200,218,.25);
  box-sizing:border-box;
}
.fg-contacts-form__title{
  margin:0 0 8px !important;
  text-align:center;
  font-size:25px !important;
  font-weight:400 !important;
  color:#0066B2 !important;
}
.fg-contacts-form__lead{
  text-align:center;
  color:#5B6D9C;
  font-size:15px;
  line-height:1.45;
  margin:0 0 22px;
}
.fg-contacts-form__field{ display:block; margin:0 0 12px; }
.fg-contacts-form__label{ display:block; margin:0 0 6px; font-size:14px; color:#5B6D9C; }
.fg-contacts-form__label.sr-only,
.fg-contacts-form .sr-only{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.fg-contacts-form__form input[type="text"],
.fg-contacts-form__form input[type="tel"],
.fg-contacts-form__form input[type="email"],
.fg-contacts-form__form textarea{
  width:100%; box-sizing:border-box;
  height:43px;
  padding:12px 14px;
  border:1px solid #DCE3EC;
  border-radius:6px;
  background:#fff;
  font-size:15px;
  color:#2E437B;
  font-family:inherit;
}
.fg-contacts-form__form input::placeholder,
.fg-contacts-form__form textarea::placeholder{ color:#96A1BD; }
.fg-contacts-form__form textarea{ min-height:120px; height:auto; resize:vertical; }
/* Figma: name / phone / proposal only — hide Email row (desktop + tablet) */
body.information-information-8 .fg-contacts-form__field:has(input[type="email"]),
body.information-information-8 .fg-contacts-form__form input[name="email"]{
  display:none !important;
}
.fg-contacts-form__check{
  display:flex; align-items:flex-start; gap:10px;
  margin:0 0 10px; font-size:14px; line-height:1.4; color:#5B6D9C;
}
.fg-contacts-form__check input{
  margin-top:3px; flex:0 0 auto; width:16px; height:16px;
  accent-color:#0066B2;
}
.fg-contacts-form__check a{ color:#0066B2; text-decoration:underline; }
.fg-contacts-form__submit{
  display:block; margin:18px auto 0;
  min-width:154px; height:34px; padding:0 22px;
  border:0; border-radius:6px;
  background:#0066B2; color:#fff;
  font-size:16px; font-weight:400; line-height:34px; cursor:pointer;
  font-family:inherit;
}
.fg-contacts-form__submit:hover{ background:#00538F; }

/* Desktop 1440 rhythm — Figma hero ≈205px; kill stacked cover pad + map chrome.
   Scoped min-width:861 so mobile (≤860/≤480) keeps gw15-infomob rules. */
@media (min-width:861px){
  /* Hero: gw15@1025 sets pad 56/56; gw11 cover-wrapper/container +40/40 — collapse */
  body.information-information-8 .page-cover.fg-info-cover,
  body.information-information-8 .fg-info-cover.page-cover,
  body.information-information-8 .page-cover{
    padding:28px 24px 36px !important;
    min-height:0 !important;
  }
  body.information-information-8 .page-cover > .container,
  body.information-information-8 .fg-info-cover > .container{
    padding-top:0 !important;
    padding-bottom:0 !important;
  }
  body.information-information-8 .fg-info-cover__titles.cover-wrapper,
  body.information-information-8 .fg-info-cover__titles,
  body.information-information-8 .page-cover .cover-wrapper{
    padding:0 16px 0 !important;
    padding-bottom:0 !important;
  }
  body.information-information-8 .fg-info-cover__lead{
    margin-top:10px !important;
    margin-bottom:0 !important;
  }
  body.information-information-8 .fg-info-breadcrumb,
  body.information-information-8 .page-cover .breadcrumb{
    margin:0 0 16px !important;
    padding:0 !important;
  }
  /* Circular map/search float over hero — absent in Figma */
  body.information-information-8 .header_link_map{
    display:none !important;
  }
  /* Cover→cards: theme .content-area has mt:80 mb:64 — kills Figma ~30–40px */
  body.information-information-8 #primary .content-area,
  body.information-information-8 .content-area{
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
  body.information-information-8 #primary.container,
  body.information-information-8 #primary{
    padding-top:28px !important;
    padding-bottom:24px !important;
  }
  body.information-information-8 .fg-contacts{
    padding-top:0 !important;
    padding-bottom:16px !important;
    margin-top:0 !important;
  }
  /* Equal-height stretch left empty third on WA card — align start */
  body.information-information-8 .fg-contacts__grid{
    align-items:start;
    margin-top:0;
  }
  body.information-information-8 .fg-contacts__card{
    min-height:0;
  }
  /* Subtitle under card titles: tighter single-line rule */
  body.information-information-8 .fg-contacts__sub,
  body.information-information-8 #content .site-main article:has(.fg-contacts) .fg-contacts__sub{
    padding:0 0 8px !important;
    margin:0 0 8px !important;
    border-bottom:1px solid #E3E8EF;
    line-height:1.35 !important;
  }
  /* Form→footer white gap (~172px) */
  body.information-information-8 .fg-contacts-form{
    margin:32px auto 0;
  }
  /* Cookie banner: dock bottom-left so it doesn’t clip social card */
  body.information-information-8 #cookie_popup{
    right:auto !important;
    left:16px !important;
    bottom:16px !important;
    z-index:900 !important;
  }
}

@media (max-width:900px){
  .fg-contacts__grid{ grid-template-columns:1fr; }
  .fg-contacts__card--wide{ grid-column:auto; }
  body.information-information-8 .fg-info-cover__lead{ font-size:14px; }
  body.information-information-8 .fg-info-cover .page-title{ font-size:32px !important; }
  .fg-contacts-form{ padding:20px 16px; }
  .fg-contacts__row-title{ font-size:16px; }
  .fg-contacts__row-desc{ font-size:14px; }
}

/* Business tiles row: full 1180, 3×380 gap20; single tile stays 380 left */
body.product-category-all .cat-business-row{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 380px));
  gap:20px;
  max-width:1180px;
  width:100%;
  margin:0 auto 20px;
  justify-content:start;
}
body.product-category-all .cat-business-card{
  width:100%;
  max-width:380px;
  height:220px !important;
  min-height:220px;
  border-radius:10px !important;
  background-size:cover !important;
  background-position:center !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center;
  text-decoration:none;
  overflow:hidden;
  box-shadow:0 5px 20px rgba(193,200,218,.45);
  padding-top:14px !important;
}
body.product-category-all .cat-business-card__title{
  display:block;
  width:100%;
  padding:4px 16px 0;
  background:none !important;
  color:#0066B2 !important;
  font-size:20px !important;
  font-weight:400 !important;
  text-align:center;
  text-transform:none !important;
  position:relative;
  z-index:1;
}

/* legacy additional_102024 .pro_page .description_video iframe height 450 / r30 — not on new cards */
body.product-product #gallery .description_video,body.product-product #tab-gallery .description_video,
body.product-product .pro_page .description_video{ display:none !important; }

/* ============ ГАЛЕРЕЯ product — Figma: Галерея Фото + Галерея Видео ============ */
#gallery .fg-pro-gallery,#tab-gallery .fg-pro-gallery{
  padding-top:28px;
  padding-bottom:48px;
  box-sizing:border-box;
}
#gallery .fg-pro-gallery__title,#tab-gallery .fg-pro-gallery__title{
  margin:0 0 20px !important;
  font-size:20px !important;
  font-weight:400 !important;
  line-height:1.2 !important;
  color:#0066B2 !important;
  text-align:left !important;
  text-transform:none !important;
}
#gallery .fg-pro-gallery__photos,#tab-gallery .fg-pro-gallery__photos{
  margin-bottom:40px;
}
#gallery .fg-pro-gallery__photos-grid,#tab-gallery .fg-pro-gallery__photos-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
}
#gallery .fg-pro-gallery__photo,#tab-gallery .fg-pro-gallery__photo{
  display:block;
  position:relative;
  border-radius:6px;
  overflow:hidden;
  aspect-ratio:4 / 3;
  background:#0a1628;
  box-shadow:0 5px 20px rgba(193,200,218,.35);
  text-decoration:none;
}
#gallery .fg-pro-gallery__photo img,#tab-gallery .fg-pro-gallery__photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  display:block;
  border:0;
}
#gallery .fg-pro-gallery__videos,#tab-gallery .fg-pro-gallery__videos{
  margin-top:8px;
}
/* video cards: media 580×300, title under if present */
#gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,#tab-gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,
#gallery .pro_video_gallery__grid,#tab-gallery .pro_video_gallery__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 580px));
  gap:20px;
  justify-content:start;
  max-width:1180px;
}
#gallery .pro_video_card.fg-pro-gallery__video,#tab-gallery .pro_video_card.fg-pro-gallery__video,
#gallery .fg-pro-gallery__video.pro_video_card,#tab-gallery .fg-pro-gallery__video.pro_video_card{
  display:flex;
  flex-direction:column;
  height:auto;
  max-width:580px;
  text-decoration:none;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  border-radius:0;
}
#gallery .fg-pro-gallery__video .pro_video_card__media,#tab-gallery .fg-pro-gallery__video .pro_video_card__media{
  display:block;
  position:relative;
  width:100%;
  height:300px;
  border-radius:6px;
  overflow:hidden;
  background:#0a1628;
  box-shadow:0 5px 20px rgba(193,200,218,.35);
}
#gallery .fg-pro-gallery__video-title,#tab-gallery .fg-pro-gallery__video-title{
  display:block;
  margin-top:10px;
  font-size:16px;
  font-weight:400;
  line-height:1.3;
  color:#0066B2;
  text-align:left;
}
@media (max-width:1023px){
  #gallery .fg-pro-gallery__photos-grid,  #tab-gallery .fg-pro-gallery__photos-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:12px;
  }
  #gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,  #tab-gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,
  #gallery .pro_video_gallery__grid,  #tab-gallery .pro_video_gallery__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  #gallery .fg-pro-gallery__video .pro_video_card__media,  #tab-gallery .fg-pro-gallery__video .pro_video_card__media{
    height:auto;
    aspect-ratio:580 / 300;
  }
}
@media (max-width:767px){
  #gallery .fg-pro-gallery__photos-grid,  #tab-gallery .fg-pro-gallery__photos-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
  }
  #gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,  #tab-gallery .fg-pro-gallery__videos-grid.pro_video_gallery__grid,
  #gallery .pro_video_gallery__grid,  #tab-gallery .pro_video_gallery__grid{
    grid-template-columns:1fr;
    gap:16px;
  }
}

/* ── Promo blog cards (module promo_blog) ── */
.fg-promo-blog{ padding:40px 0 48px; background:#fff; }
.fg-promo-blog__head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:24px; max-width:1180px; margin-left:auto; margin-right:auto; }
.fg-promo-blog__title{ margin:0; font-size:28px; font-weight:500; color:#0066B2; }
.fg-promo-blog__more{ color:#0066B2; font-size:15px; text-decoration:none; border-bottom:1px dashed #0066B2; }
.fg-promo-blog__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; max-width:1180px; margin:0 auto; }
.fg-promo-blog__card{ display:flex; flex-direction:column; text-decoration:none; border-radius:8px; overflow:hidden; background:#FAFCFF; border:1px solid #E3E8EF; box-shadow:0 5px 20px rgba(193,200,218,.3); transition:box-shadow .15s; }
.fg-promo-blog__card:hover{ box-shadow:0 10px 28px rgba(16,42,95,.12); }
.fg-promo-blog__img{ display:block; height:180px; background-size:cover; background-position:center; }
.fg-promo-blog__name{ display:block; padding:14px 16px 6px; font-size:18px; font-weight:500; color:#000E37; line-height:1.3; }
.fg-promo-blog__preview{ display:block; padding:0 16px 16px; font-size:14px; color:#5B6D9C; line-height:1.4; }
@media (max-width:1023px){ .fg-promo-blog__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px){ .fg-promo-blog__grid{ grid-template-columns:1fr; } .fg-promo-blog__head{ flex-direction:column; } }



/* ========== /add_info/ + /tarify/ Figma Услуги WEB (2026-08-12) ========== */
body.information-information-6 .tarify_page,
body.information-tarify .tarify_page { background:#fff; }

/* body class on info-6: reuse tarify tokens */
body.information-information-6 .tarify_cover,
body.information-tarify .tarify_cover,
body.information-tarify .page-cover.tarify_cover {
  /* solid navy gradient only — do NOT set background-image:none (kills gradient) */
  background-color: #000E37 !important;
  background-image: linear-gradient(180deg, #000E37 0%, #0065B1 100%) !important;
  background-size: cover !important;
  background-position: center !important;
  text-align: center;
  /* beat gw11 @min-width:1025 body[class*="information-"] .page-cover {padding:64/72} */
  padding: 32px 16px 40px !important;
  min-height: 0 !important;
}
body.information-information-6 .tarify_cover .page-title,
body.information-tarify .tarify_cover .page-title,
body.information-tarify .tarify_cover h1.page-title.cover-wrapper,
body.information-tarify .tarify_cover .cover-wrapper {
  color: #fff !important;
  font-size: 42px !important;
  font-weight: 300 !important;
  line-height: 1.2 !important;
  max-width: 900px;
  /* beat gw11 .page-cover .cover-wrapper {padding:40px 0} — was 181px title box */
  padding: 8px 0 10px !important;
  margin: 8px auto 0 !important;
}
body.information-tarify .tarify_cover > .container {
  /* beat gw11 .page-cover > .container {padding:40px 0} — dead band above H1 */
  padding: 8px 15px 0 !important;
  max-width: 1180px;
}
body.information-tarify .tarify_cover-text {
  max-width: 720px !important;
  margin: 12px auto 0 !important;
  font-size: 16px;
  line-height: 1.55;
  color: rgba(255,255,255,.88);
  text-align: center;
}
body.information-information-6 .tarify_cover .breadcrumb,
body.information-information-6 .tarify_cover .breadcrumb a,
body.information-information-6 .tarify_cover .breadcrumb li,
body.information-tarify .tarify_cover .breadcrumb,
body.information-tarify .tarify_cover .breadcrumb a {
  color: rgba(255,255,255,.85) !important;
}

/* hide legacy CMS blocks if any leak */
body.information-information-6 .add_info-offers,
body.information-information-6 .banner_rezident { display:none !important; }

/* extras: narrower centered column (~980) like Figma List */
body.information-information-6 .tarify_extras,
body.information-tarify .tarify_extras {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}
body.information-information-6 .tarify_extra,
body.information-tarify .tarify_extra {
  width: 100% !important;
  max-width: none !important;
  background: #fff;
  border: 1px solid #E3E8EF;
  border-radius: 10px;
  padding: 20px 24px;
  box-shadow: 0 5px 20px rgba(193,200,218,.28);
  box-sizing: border-box;
}
body.information-information-6 .tarify_extra-top,
body.information-tarify .tarify_extra-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 10px;
}
body.information-information-6 .tarify_extra-price b,
body.information-tarify .tarify_extra-price b {
  color: #0066B2;
  font-size: 28px;
  font-weight: 400;
}
body.information-information-6 .tarify_extra-price span,
body.information-tarify .tarify_extra-price span {
  display: block;
  color: #96A1BD;
  font-size: 13px;
  text-align: right;
}
body.information-information-6 .tarify_extra-foot,
body.information-tarify .tarify_extra-foot {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}
body.information-information-6 .tarify_extra-note,
body.information-tarify .tarify_extra-note {
  color: #0066B2;
  font-size: 14px;
  margin-top: 8px;
}
body.information-information-6 .tarify_extra-badge,
body.information-tarify .tarify_extra-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 2px 8px;
  border-radius: 99px;
  background: #E8F1FB;
  color: #0066B2;
  font-size: 12px;
  font-style: normal;
}

/* features bento */
body.information-information-6 .tarify_features,
body.information-tarify .tarify_features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  max-width: 1180px;
}
body.information-information-6 .tarify_feature,
body.information-tarify .tarify_feature {
  background: #FAFCFF;
  border: 1px solid #E3E8EF;
  border-radius: 10px;
  padding: 20px 18px;
  box-shadow: 0 5px 16px rgba(193,200,218,.25);
  position: relative;
  min-height: 160px;
}
body.information-information-6 .tarify_feature .tag,
body.information-tarify .tarify_feature .tag {
  position: absolute;
  top: 14px; right: 14px;
  font-size: 12px;
  color: #96A1BD;
}
body.information-information-6 .tarify_feature h3,
body.information-tarify .tarify_feature h3 {
  margin: 28px 0 8px;
  color: #0066B2;
  font-size: 18px;
  font-weight: 500;
}
body.information-information-6 .tarify_feature p,
body.information-tarify .tarify_feature p {
  margin: 0;
  color: #5B6D9C;
  font-size: 14px;
  line-height: 1.45;
}
body.information-information-6 .tarify_feature-ico,
body.information-tarify .tarify_feature-ico {
  font-size: 22px;
  line-height: 1;
}
body.information-information-6 .tarify_feature--dark,
body.information-tarify .tarify_feature--dark {
  grid-column: span 2;
  background: linear-gradient(135deg, #002B66 0%, #0066B2 100%);
  border: 0;
  color: #fff;
}
body.information-information-6 .tarify_feature--dark h3,
body.information-information-6 .tarify_feature--dark p,
body.information-information-6 .tarify_feature--dark .tag,
body.information-tarify .tarify_feature--dark h3,
body.information-tarify .tarify_feature--dark p,
body.information-tarify .tarify_feature--dark .tag {
  color: #fff !important;
}

/* guide video full width */
body.information-information-6 .tarify_guide,
body.information-tarify .tarify_guide {
  max-width: 1180px;
  margin: 40px auto 20px;
}
body.information-information-6 .tarify_guide-video,
body.information-tarify .tarify_guide-video {
  position: relative;
  display: block;
  height: 420px;
  min-height: 420px;
  border-radius: 12px;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(0,14,55,.45) 0%, rgba(0,40,90,.7) 100%),
    url('/_html/images/figma/home/guide.jpg') center/cover no-repeat,
    #002B66;
  color: #fff;
  text-align: center;
  padding: 0 !important;
}
body.information-information-6 .tarify_guide-play,
body.information-tarify .tarify_guide-play {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
body.information-information-6 .tarify_guide-caption,
body.information-tarify .tarify_guide-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: 28px 32px;
  background: linear-gradient(180deg, transparent, rgba(0,11,43,.85));
  color: #fff;
  text-align: center;
}
body.information-information-6 .tarify_guide-kicker,
body.information-tarify .tarify_guide-kicker {
  font-size: 32px;
  font-weight: 400;
  margin: 0 0 6px;
}
body.information-information-6 .tarify_guide-title,
body.information-tarify .tarify_guide-title {
  font-size: 18px;
  opacity: .92;
  margin: 0;
}

/* registration help two-col */
body.information-information-6 .tarify_guide-help,
body.information-tarify .tarify_guide-help {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  max-width: 1180px;
  margin: 0 auto 40px;
  border: 1px solid #E3E8EF;
  border-radius: 12px;
  overflow: hidden;
  background: #FAFCFF;
  box-shadow: 0 5px 20px rgba(193,200,218,.25);
}
body.information-information-6 .tarify_guide-help-col,
body.information-tarify .tarify_guide-help-col {
  padding: 28px 28px;
}
body.information-information-6 .tarify_guide-help-col--list,
body.information-tarify .tarify_guide-help-col--list {
  border-left: 1px solid #E3E8EF;
  background: #fff;
}
body.information-information-6 .tarify_guide-help-col--list ul,
body.information-tarify .tarify_guide-help-col--list ul {
  margin: 0 0 16px;
  padding-left: 18px;
  color: #5B6D9C;
  font-size: 14px;
  line-height: 1.5;
}
body.information-information-6 .tarify_guide-help-title,
body.information-tarify .tarify_guide-help-title {
  color: #0066B2;
  font-size: 22px;
  margin: 0 0 10px;
  font-weight: 500;
}
body.information-information-6 .tarify_guide-help-text,
body.information-tarify .tarify_guide-help-text {
  color: #5B6D9C;
  font-size: 15px;
  line-height: 1.5;
}

/* AI VS */
body.information-information-6 .tarify_ai-vs,
body.information-tarify .tarify_ai-vs {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 16px;
  align-items: stretch;
  max-width: 980px;
  margin: 0 auto 40px;
}
body.information-information-6 .tarify_ai-card,
body.information-tarify .tarify_ai-card {
  border-radius: 12px;
  padding: 20px;
  background: #fff;
  border: 1px solid #E3E8EF;
  box-shadow: 0 8px 24px rgba(193,200,218,.3);
}
body.information-information-6 .tarify_ai-card--good,
body.information-tarify .tarify_ai-card--good {
  background: linear-gradient(160deg, #002B66 0%, #0066B2 100%);
  border: 0;
  color: #fff;
}
body.information-information-6 .tarify_ai-card--good .tarify_ai-list span,
body.information-tarify .tarify_ai-card--good .tarify_ai-list span {
  color: #fff;
}
body.information-information-6 .tarify_ai-list,
body.information-tarify .tarify_ai-list {
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
}
body.information-information-6 .tarify_ai-list li,
body.information-tarify .tarify_ai-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
  font-size: 14px;
  color: #5B6D9C;
}
body.information-information-6 .tarify_ai-card--good .tarify_ai-list li,
body.information-tarify .tarify_ai-card--good .tarify_ai-list li {
  border-bottom-color: rgba(255,255,255,.15);
  color: #fff;
}
body.information-information-6 .tarify_ai-list li::before,
body.information-tarify .tarify_ai-list li::before {
  content: none;
}
body.information-information-6 .tarify_ai-list li,
body.information-tarify .tarify_ai-list li {
  padding-left: 0;
}
body.information-information-6 .tarify_ai-list i,
body.information-tarify .tarify_ai-list i {
  font-style: normal;
  font-weight: 700;
  color: #E2342D;
}
body.information-information-6 .tarify_ai-card--good .tarify_ai-list i,
body.information-tarify .tarify_ai-card--good .tarify_ai-list i {
  color: #7CFFB2;
}
body.information-information-6 .tarify_ai-tag,
body.information-tarify .tarify_ai-tag {
  font-size: 16px;
  font-weight: 500;
  color: #0066B2;
}
body.information-information-6 .tarify_ai-tag--good,
body.information-tarify .tarify_ai-tag--good {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 99px;
  background: #C8F5A8;
  color: #1A5C00;
  font-size: 12px;
  font-weight: 500;
}
body.information-information-6 .tarify_ai-label--bad,
body.information-tarify .tarify_ai-label--bad {
  color: #E2342D;
  font-size: 13px;
  margin-top: 4px;
}
body.information-information-6 .tarify_ai-mid,
body.information-tarify .tarify_ai-mid {
  display: flex;
  align-items: center;
  justify-content: center;
}
body.information-information-6 .tarify_ai-mid span,
body.information-tarify .tarify_ai-mid span {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #E3E8EF;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0066B2;
  font-weight: 600;
  font-size: 13px;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}

/* rules FAQ style */
body.information-information-6 .tarify_rules,
body.information-tarify .tarify_rules {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 900px;
  margin: 0 auto 28px;
}
body.information-information-6 .tarify_rule,
body.information-tarify .tarify_rule {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
body.information-information-6 .tarify_rule h3,
body.information-tarify .tarify_rule h3 {
  margin: 0 0 6px;
  color: #000E37;
  font-size: 16px;
  font-weight: 500;
}
body.information-information-6 .tarify_rule p,
body.information-tarify .tarify_rule p {
  margin: 0;
  color: #5B6D9C;
  font-size: 14px;
  line-height: 1.5;
}

/* CTA dark bar — Figma mid/bottom bars ~980, softer radius */
body.information-information-6 .tarify_cta,
body.information-tarify .tarify_cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  max-width: 980px;
  margin: 28px auto;
  padding: 22px 28px;
  border-radius: 10px;
  background: linear-gradient(90deg, #000E37 0%, #002B66 50%, #0066B2 100%);
  color: #fff;
  box-sizing: border-box;
}
body.information-information-6 .tarify_cta-title,
body.information-tarify .tarify_cta-title {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 6px;
}
body.information-information-6 .tarify_cta-text,
body.information-tarify .tarify_cta-text {
  font-size: 14px;
  opacity: .9;
  max-width: 640px;
  line-height: 1.45;
}

@media (max-width: 1023px) {
  body.information-information-6 .tarify_features,
  body.information-tarify .tarify_features { grid-template-columns: 1fr 1fr; }
  body.information-information-6 .tarify_feature--dark,
  body.information-tarify .tarify_feature--dark { grid-column: span 2; }
  body.information-information-6 .tarify_guide-help,
  body.information-tarify .tarify_guide-help { grid-template-columns: 1fr; }
  body.information-information-6 .tarify_guide-help-col--list,
  body.information-tarify .tarify_guide-help-col--list { border-left: 0; border-top: 1px solid #E3E8EF; }
  body.information-information-6 .tarify_ai-vs,
  body.information-tarify .tarify_ai-vs { grid-template-columns: 1fr; }
  body.information-information-6 .tarify_ai-mid,
  body.information-tarify .tarify_ai-mid { display: none; }
  body.information-information-6 .tarify_cta,
  body.information-tarify .tarify_cta { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 767px) {
  body.information-information-6 .tarify_features,
  body.information-tarify .tarify_features { grid-template-columns: 1fr; }
  body.information-information-6 .tarify_feature--dark,
  body.information-tarify .tarify_feature--dark { grid-column: auto; }
  body.information-information-6 .tarify_cover .page-title,
  body.information-tarify .tarify_cover .page-title { font-size: 28px !important; }
  body.information-information-6 .tarify_extra-top,
  body.information-tarify .tarify_extra-top { flex-direction: column; }
}

/* ========== /tarify/ desktop Figma 803:47170 — high-win reassert (2026-08-12) ==========
   figma-redesign loads BEFORE gw11-info; gw11 @min-width:1025
   body[class*="information-"] .page-cover {padding:64/72} + .cover-wrapper {pad:40}
   inflated hero to ~498px. These !important rules reassert compact navy band. */
@media (min-width: 861px) {
  body.information-tarify .page-cover.tarify_cover,
  body.information-tarify .tarify_cover {
    padding: 32px 16px 40px !important;
    min-height: 0 !important;
    background-color: #000E37 !important;
    background-image: linear-gradient(180deg, #000E37 0%, #0065B1 100%) !important;
  }
  body.information-tarify .tarify_cover > .container {
    padding: 8px 15px 0 !important;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
  }
  body.information-tarify .tarify_cover h1.page-title.cover-wrapper,
  body.information-tarify .tarify_cover .cover-wrapper,
  body.information-tarify .tarify_cover h1.page-title {
    padding: 8px 0 10px !important;
    margin: 8px auto 0 !important;
    font-size: 42px !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    max-width: 900px;
    color: #fff !important;
  }
  body.information-tarify .tarify_cover-text {
    max-width: 720px !important;
    margin: 12px auto 0 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
  }
  body.information-tarify .tarify_cover .breadcrumb {
    margin: 0 0 4px !important;
    padding: 0 !important;
  }

  /* Map FAB sits on hero top-right — not in Figma Услуги WEB */
  body.information-tarify .header_link_map {
    display: none !important;
  }

  /* Plans: drop forced 680px; stretch equal height to content */
  body.information-tarify .tarify_plans {
    align-items: stretch !important;
  }
  body.information-tarify .tarify_plan {
    min-height: 0 !important;
    height: 100%;
  }
  body.information-tarify .tarify_plan .tarify_list {
    flex: 1 1 auto;
  }
  body.information-tarify .tarify_plan-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }
  body.information-tarify .tarify_bonus {
    margin-top: auto;
  }

  /* Extras + CTA bars: Figma ~980 centered under full plans grid */
  body.information-tarify .tarify_extras {
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.information-tarify .tarify_cta {
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 10px !important;
  }

  /* Guide: mountain poster + centered play + lower-third caption */
  body.information-tarify .tarify_guide-video {
    height: 420px !important;
    min-height: 420px !important;
    padding: 0 !important;
    display: block !important;
    background:
      linear-gradient(180deg, rgba(0,14,55,.45) 0%, rgba(0,40,90,.7) 100%),
      url('/_html/images/figma/home/guide.jpg') center/cover no-repeat,
      #002B66 !important;
  }
  body.information-tarify .tarify_guide-play {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 2;
  }
  body.information-tarify .tarify_guide-caption {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 28px 32px !important;
    z-index: 2;
  }

  /* Rules: tighter FAQ column */
  body.information-tarify .tarify_rules {
    max-width: 980px !important;
    gap: 18px !important;
    margin-left: auto;
    margin-right: auto;
  }
  body.information-tarify .tarify_rule h3 {
    font-size: 16px !important;
    color: #000E37 !important;
  }
  body.information-tarify .tarify_rule p {
    font-size: 14px !important;
    color: #5B6D9C !important;
  }

  /* AI cards: photo slots when <img> present; empty ::after reserved for crops */
  body.information-tarify .tarify_ai-card img {
    display: block;
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: 8px;
    margin-top: 16px;
  }
}
