/*
 Theme Name:   Elitehost Child
 Theme URI:    https://themewant.com/products/wordpress/elitehost/
 Description:  Elitehost Child
 Author:       ReacThemes
 Author URI:   http://reactheme.com
 Template:     elitehost
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
 */
/* === Dark palette override — uses Elementor kit tokens === */

body, .site, .main-contain, .offcontents,
.main-container,
.rts__section,
.rts-section-gap,
.section-area {
    background-color: var(--e-global-color-c9c27c9) !important;
    color: var(--e-global-color-text) !important;
}

/* Theme header */
#reactheme-header,
#reactheme-header .header-inner,
.rts-default-header,
.header-style-1,
.mainsmenu,
.header-top-info,
.header-bottom-area,
.header-area {
    background-color: var(--e-global-color-c9c27c9) !important;
    border-color: var(--e-global-color-d44f695) !important;
}

/* Main menu links */
#reactheme-header a,
#reactheme-header .header-inner a,
.mainmenu a,
.mainmenu li > a,
.header-top-info a,
.header-top-info span,
.menu-area a,
nav a,
.header-area a {
    color: var(--e-global-color-secondary) !important;
}

#reactheme-header a:hover,
.mainmenu a:hover,
.mainmenu li.current-menu-item > a,
.mainmenu li.current_page_item > a,
nav a:hover,
.menu-area a:hover {
    color: var(--e-global-color-primary) !important;
}

/* Logo container — make sure no white pad */
.logo-area, .header-logo {
    background: transparent !important;
}

/* Theme footer */
footer,
footer.rts-footer-area,
.footer-area,
.copyright-area,
.footer-bottom-area,
.footer-top-area,
.rts-footer-area {
    background-color: var(--e-global-color-c9c27c9) !important;
    color: var(--e-global-color-text) !important;
    border-color: var(--e-global-color-d44f695) !important;
}

footer h1, footer h2, footer h3, footer h4, footer h5, footer h6 {
    color: var(--e-global-color-secondary) !important;
}

footer p, footer span, footer li, footer label, footer td, footer th {
    color: var(--e-global-color-text) !important;
}

footer a {
    color: var(--e-global-color-text) !important;
}

footer a:hover {
    color: var(--e-global-color-primary) !important;
}

/* Form fields anywhere in header/footer */
footer input,
footer textarea,
.header-inner input,
.header-inner .form-control,
.search-form input {
    background-color: var(--e-global-color-6e7a99b) !important;
    border-color: var(--e-global-color-d44f695) !important;
    color: var(--e-global-color-secondary) !important;
}

footer input::placeholder,
.header-inner input::placeholder {
    color: var(--e-global-color-text) !important;
}

/* Buttons in header (Client Area etc.) */
.header-inner .btn,
.header-inner button:not(.search-button),
.btn-default {
    background-color: transparent !important;
    border-color: var(--e-global-color-d44f695) !important;
    color: var(--e-global-color-secondary) !important;
}

.header-inner .btn:hover,
.btn-default:hover {
    background-color: var(--e-global-color-primary) !important;
    color: var(--e-global-color-secondary) !important;
    border-color: var(--e-global-color-primary) !important;
}

/* Body text inside non-Elementor content (blog posts via theme single.php) */
.entry-content,
.entry-title,
.post-content {
    color: var(--e-global-color-text) !important;
}

.entry-title,
.post-title {
    color: var(--e-global-color-secondary) !important;
}

/* Breadcrumbs area — usually appears under header */
.breadcrumb-area,
.breadcrumb {
    background-color: var(--e-global-color-6e7a99b) !important;
    color: var(--e-global-color-text) !important;
}

.breadcrumb-area a,
.breadcrumb a {
    color: var(--e-global-color-secondary) !important;
}

/* EH HERO BLOCK */
.eh-gradient-cyan {
    background: linear-gradient(90deg, var(--e-global-color-purple_a) 0%, var(--e-global-color-accent) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.eh-color-cyan { color: var(--e-global-color-accent); }
/* END EH HERO BLOCK */

/* EH BICON CENTERING */
.eh-bicon-box {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
}
.eh-bicon-box > .e-con-inner {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%;
    padding: 0 !important;
}
.eh-bicon-box .elementor-widget-icon,
.eh-bicon-box .elementor-widget-icon > .elementor-widget-container,
.eh-bicon-box .elementor-icon-wrapper {
    width: auto !important;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.eh-bicon-box .elementor-icon { display: inline-flex; align-items: center; justify-content: center; }
.eh-bicon-box .elementor-icon i { line-height: 1; }
/* END EH BICON CENTERING */

/* EH LOGO FIX */
.custom-logo,
.hfe-site-logo-img .custom-logo,
.logo-area .custom-logo,
header .custom-logo {
    width: auto !important;
    height: auto !important;
    max-width: 130px !important;
    max-height: 55px !important;
    object-fit: contain !important;
}
/* END EH LOGO FIX */

/* === EH DOMAIN BLOCK =========================================== */
.eh-domain-block{
  position: relative;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  border-radius: 22px;
  padding: 1px;
  background: linear-gradient(180deg, #00C8FF 0%, #1f3a6b 50%, #8A3DFF 100%);
  isolation: isolate;
}
.eh-domain-inner{
  position: relative;
  border-radius: 21px;
  background:
    radial-gradient(120% 80% at 100% 0%, rgba(138,61,255,0.10) 0%, transparent 55%),
    radial-gradient(80% 60% at 0% 100%, rgba(0,200,255,0.08) 0%, transparent 60%),
    #0B1426;
  padding: 56px 60px 60px;
  overflow: hidden;
}
.eh-domain-title{
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  font-size:  56px;
  line-height: 1.15;
  margin: 0 0 32px;
  letter-spacing: -0.5px;
}

/* search row */
.eh-domain-search{
  display: flex;
  align-items: stretch;
  gap: 16px;
  margin-bottom: 56px;
  flex-wrap: wrap;
}
.eh-domain-input-wrap{
  position: relative;
  flex: 1 1 420px;
  min-width: 0;
  display: block;
}
.eh-domain-input-wrap .eh-search-icon{
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  color: #00C8FF;
  pointer-events: none;
}
.eh-domain-input{
  width: 100%;
  height: 64px;
  background: rgba(7,13,26,0.6);
  border: 1px solid #00C8FF;
  border-radius: 12px;
  padding: 0 22px 0 60px;
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
  font-size: 16px;
  font-weight: 400;
  outline: none;
  box-shadow: inset 0 0 0 1px rgba(0,200,255,0.0);
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.eh-domain-input::placeholder{ color: #6B7891; }
.eh-domain-input:focus{
  border-color: #2F5BFF;
  background: rgba(7,13,26,0.85);
  box-shadow: 0 0 0 3px rgba(47,91,255,0.25);
}

.eh-domain-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  border: 0;
  border-radius: 12px;
  padding: 0 32px;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.1px;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: transform .15s ease, box-shadow .2s ease, filter .2s ease;
}
.eh-domain-btn-cyan{
  background: #00C8FF;
  color: #061421;
}
.eh-domain-btn-cyan:hover{
  filter: brightness(1.06);
  box-shadow: 0 10px 28px rgba(0,200,255,0.32);
  transform: translateY(-1px);
}
.eh-domain-btn-purple{
  background: #8A3DFF;
  color: #FFFFFF;
}
.eh-domain-btn-purple:hover{
  filter: brightness(1.08);
  box-shadow: 0 10px 28px rgba(138,61,255,0.35);
  transform: translateY(-1px);
}

/* bottom 3 columns */
.eh-domain-cols{
  display: grid;
  grid-template-columns: 1.05fr 1fr 1.1fr;
  gap: 48px;
  align-items: start;
}
.eh-domain-col-usp .eh-domain-usp-title{
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 18px;
}
.eh-domain-col-usp .eh-domain-usp-sub{
  color: #A5B3C7;
  font-size: 16px;
  margin: 0;
}
.eh-color-cyan{ color: #00C8FF; }

.eh-domain-col-info .eh-domain-info-text{
  color: #A5B3C7;
  font-size: 16px;
  line-height: 1.55;
  margin: 0 0 18px;
  max-width: 300px;
}
.eh-domain-col-info .eh-domain-info-link{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #00C8FF;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: gap .2s, border-color .2s, color .2s;
}
.eh-domain-col-info .eh-domain-info-link:hover{ gap: 14px; color: #5fdcff; }
.eh-domain-col-info .eh-domain-info-link svg{ flex-shrink: 0; }

.eh-domain-col-prices{
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.eh-domain-price-row{
  display: flex;
  align-items: baseline;
  gap: 28px;
  font-family: Roboto, sans-serif;
}
.eh-domain-price-row .eh-tld{
  color: #F5F7FA;
  font-weight: 700;
  font-size: 18px;
  min-width: 72px;
}
.eh-domain-price-row .eh-amount{
  color: #00C8FF;
  font-weight: 700;
  font-size: 18px;
}
.eh-domain-price-row .eh-period{
  color: #A5B3C7;
  font-weight: 400;
  font-size: 15px;
  margin-left: 6px;
}

/* Laptop */
@media (max-width: 1200px){
  .eh-domain-inner{ padding: 48px 44px 52px; }
  .eh-domain-title{ font-size: 42px; }
  .eh-domain-cols{ gap: 36px; }
  .eh-domain-col-usp .eh-domain-usp-title{ font-size: 24px; }
}

/* Tablet */
@media (max-width: 1024px){
  .eh-domain-inner{ padding: 40px 36px 44px; }
  .eh-domain-title{ font-size: 36px; margin-bottom: 26px; }
  .eh-domain-search{ gap: 12px; margin-bottom: 40px; }
  .eh-domain-input-wrap{ flex: 1 1 100%; }
  .eh-domain-btn{
    flex: 1 1 calc(50% - 6px);
    padding: 0 24px;
  }
  .eh-domain-cols{
    grid-template-columns: 1fr 1fr;
    gap: 32px 36px;
  }
  .eh-domain-col-prices{ grid-column: 1 / -1; max-width: 560px; }
  .eh-domain-col-usp .eh-domain-usp-title{ font-size: 22px; }
}

/* Mobile */
@media (max-width: 640px){
  .eh-domain-block{ border-radius: 18px; }
  .eh-domain-inner{ padding: 30px 22px 34px; border-radius: 17px; }
  .eh-domain-title{ font-size: 28px; margin-bottom: 22px; line-height: 1.2; }
  .eh-domain-search{ margin-bottom: 32px; gap: 10px; }
  .eh-domain-input{ height: 54px; font-size: 15px; padding-left: 50px; padding-right: 18px; }
  .eh-domain-input-wrap .eh-search-icon{ left: 18px; width: 18px; height: 18px; }
  .eh-domain-btn{
    flex: 1 1 100%;
    height: 50px;
    font-size: 15px;
    padding: 0 20px;
  }
  .eh-domain-cols{
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .eh-domain-col-usp .eh-domain-usp-title{ font-size: 22px; }
  .eh-domain-col-info .eh-domain-info-text{ max-width: 100%; }
  .eh-domain-col-prices{ max-width: 100%; }
  .eh-domain-price-row{ gap: 16px; justify-content: flex-start; }
  .eh-domain-price-row .eh-tld{ min-width: 58px; font-size: 16px; }
  .eh-domain-price-row .eh-amount{ font-size: 16px; }
  .eh-domain-price-row .eh-period{ font-size: 14px; }
}
/* === /EH DOMAIN BLOCK ========================================== */

/* === EH PRICING BLOCK ========================================== */
.eh-pricing-block{
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
}

/* ----- header ----- */
.eh-pricing-header{
  text-align: center;
  margin: 0 auto 56px;
  max-width: 760px;
}
.eh-pricing-header-icon{
  width: 88px;
  height: 88px;
  margin: 0 auto 26px;
  color: #8A3DFF;
  filter: drop-shadow(0 0 14px rgba(138,61,255,0.35));
}
.eh-pricing-header-icon svg{ width: 100%; height: 100%; }
.eh-pricing-title{
  font-size:  48px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.4px;
  color: #F5F7FA;
  margin: 0;
}

/* ----- tariffs row ----- */
.eh-pricing-tariffs{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  margin-bottom: 96px;
}
.eh-tariff{
  position: relative;
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(0,200,255,0.06) 0%, transparent 60%),
    linear-gradient(180deg, #0C1729 0%, #0A1424 100%);
  border: 1px solid rgba(0,200,255,0.10);
  border-radius: 22px;
  padding: 36px 32px 32px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03), 0 18px 40px rgba(0,0,0,0.35);
}
.eh-tariff--vip{
  border-color: rgba(138,61,255,0.14);
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(138,61,255,0.07) 0%, transparent 60%),
    linear-gradient(180deg, #0C1729 0%, #0A1424 100%);
}

/* card icon */
.eh-tariff__icon{
  width: 56px;
  height: 56px;
  margin: 0 auto 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eh-tariff__icon svg{ width: 100%; height: 100%; }
.eh-icon-cyan{ color: #00C8FF; filter: drop-shadow(0 0 8px rgba(0,200,255,0.35)); }
.eh-icon-purple{ color: #8A3DFF; filter: drop-shadow(0 0 8px rgba(138,61,255,0.4)); }

.eh-tariff__name{
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  margin: 0 0 18px;
  color: #F5F7FA;
}

/* price block */
.eh-tariff__price{
  text-align: center;
  margin-bottom: 28px;
  min-height: 86px;
}
.eh-price-from{
  display: block;
  font-size: 14px;
  color: #A5B3C7;
  margin-bottom: 4px;
  text-transform: lowercase;
}
.eh-price-main{
  margin: 0;
  font-size: 18px;
  color: #F5F7FA;
  font-weight: 600;
  line-height: 1.25;
}
.eh-price-main .eh-amount{
  font-size:  38px;
  font-weight: 700;
  color: #F5F7FA;
  letter-spacing: -0.3px;
}
.eh-price-sep{
  font-size: 14px;
  font-weight: 500;
  color: #C8D1DD;
  margin: 0 4px;
  text-transform: uppercase;
}
.eh-price-curr{
  font-size: 16px;
  font-weight: 500;
  color: #C8D1DD;
  margin-left: 4px;
}
.eh-tariff__price--single .eh-price-main{ font-size: 22px; }
.eh-tariff__price--single .eh-price-main .eh-amount{ font-size:  42px; }
.eh-price-note{
  margin: 6px 0 0;
  color: #00C8FF;
  font-size: 13px;
  line-height: 1.45;
}
.eh-price-note em{ font-style: italic; }

/* specs list */
.eh-tariff__specs{
  list-style: none;
  margin: 0 0 24px;
  padding: 24px 0 0;
  border-top: 1px dashed rgba(255,255,255,0.04);
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.eh-tariff__specs li{
  display: flex;
  align-items: center;
  gap: 12px;
  color: #DCE3EF;
  font-size: 15px;
  line-height: 1.4;
}
.eh-spec-icon{
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.eh-spec-icon svg{ width: 100%; height: 100%; }

/* bullets */
.eh-tariff__bullets{
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}
.eh-tariff__bullets > li{
  position: relative;
  padding-left: 22px;
  color: #C8D1DD;
  font-size: 14px;
  line-height: 1.55;
}
.eh-tariff__bullets > li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 8px;
  height: 8px;
  background: #00C8FF;
  transform: rotate(45deg);
  box-shadow: 0 0 8px rgba(0,200,255,0.55);
}
.eh-tariff__bullets--expert .eh-bullet--zap{
  padding-left: 30px;
}
.eh-tariff__bullets--expert .eh-bullet--zap::before{ display: none; }
.eh-bullet-icon{
  position: absolute;
  left: 0;
  top: 0;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.eh-bullet-icon svg{ width: 100%; height: 100%; }
.eh-tariff__bullets--expert .eh-bullet--zap strong{
  color: #F5F7FA;
  font-weight: 700;
}

/* CTA */
.eh-tariff__cta{
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
  text-decoration: none;
  border-radius: 12px;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.25;
  padding: 14px 18px;
  transition: background .2s, color .2s, box-shadow .2s, transform .15s;
}
.eh-cta-outline{
  background: transparent;
  border: 1.5px solid #00C8FF;
  color: #00C8FF;
}
.eh-cta-outline:hover{
  background: rgba(0,200,255,0.08);
  box-shadow: 0 0 0 3px rgba(0,200,255,0.12);
}
.eh-cta-solid{
  background: #00C8FF;
  color: #061421;
  border: 1.5px solid #00C8FF;
}
.eh-cta-solid svg{ width: 18px; height: 18px; }
.eh-cta-solid:hover{
  filter: brightness(1.06);
  box-shadow: 0 10px 24px rgba(0,200,255,0.32);
  transform: translateY(-1px);
}

/* ----- included band ----- */
.eh-pricing-included__header{
  display: flex;
  align-items: center;
  gap: 28px;
  margin-bottom: 44px;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}
.eh-pricing-included__header h3{
  font-size: 24px;
  font-weight: 700;
  color: #F5F7FA;
  margin: 0;
  white-space: nowrap;
  text-align: center;
}
.eh-pricing-line{ flex: 1; height: 1px; min-width: 32px; }
.eh-pricing-line--left{ background: linear-gradient(90deg, transparent 0%, rgba(0,200,255,0.55) 70%, rgba(138,61,255,0.6) 100%); }
.eh-pricing-line--right{ background: linear-gradient(90deg, rgba(138,61,255,0.6) 0%, rgba(0,200,255,0.55) 30%, transparent 100%); }
@media (max-width: 560px){ .eh-pricing-included__header{ flex-direction: column; gap: 14px; } .eh-pricing-line{ width: 60%; max-width: 240px; } }

.eh-pricing-features{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}
.eh-feature{
  text-align: center;
}
.eh-feature__icon{
  width: 88px;
  height: 88px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #0C1729 0%, #0A1424 100%);
  border: 1px solid rgba(0,200,255,0.10);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}
.eh-feature__icon svg{ width: 50%; height: 50%; }
.eh-feature p{
  margin: 0;
  color: #C8D1DD;
  font-size: 14px;
  line-height: 1.5;
}

/* ----- Laptop ----- */
@media (max-width: 1200px){
  .eh-pricing-title{ font-size: 36px; }
  .eh-pricing-tariffs{ gap: 22px; }
  .eh-tariff{ padding: 32px 26px 28px; }
}

/* ----- Tablet ----- */
@media (max-width: 1024px){
  .eh-pricing-header{ margin-bottom: 44px; }
  .eh-pricing-title{ font-size: 30px; }
  .eh-pricing-header-icon{ width: 72px; height: 72px; margin-bottom: 20px; }
  .eh-pricing-tariffs{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 72px;
  }
  .eh-tariff{ padding: 28px 20px 22px; border-radius: 18px; }
  .eh-tariff__icon{ width: 48px; height: 48px; margin-bottom: 16px; }
  .eh-tariff__name{ font-size: 22px; margin-bottom: 14px; }
  .eh-price-main .eh-amount{ font-size: 26px; }
  .eh-tariff__price--single .eh-price-main .eh-amount{ font-size:  38px; }
  .eh-tariff__specs li{ font-size: 14px; gap: 10px; }
  .eh-tariff__bullets > li{ font-size: 13px; }
  .eh-tariff__cta{ font-size: 14px; padding: 12px 14px; }

  .eh-pricing-included__header{ gap: 16px; margin-bottom: 32px; }
  .eh-pricing-included__header h3{ font-size: 20px; }
  .eh-pricing-features{ gap: 16px; }
  .eh-feature__icon{ width: 72px; height: 72px; border-radius: 16px; }
  .eh-feature p{ font-size: 13px; }
}

/* ----- Small tablet / large mobile ----- */
@media (max-width: 820px){
  .eh-pricing-tariffs{ grid-template-columns: 1fr; max-width: 520px; margin-left: auto; margin-right: auto; gap: 20px; }
  .eh-pricing-features{ grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 32px; }
  .eh-feature:nth-child(4),
  .eh-feature:nth-child(5){ grid-column: span 1; }
}

/* ----- Mobile ----- */
@media (max-width: 560px){
  .eh-pricing-title{ font-size: 24px; line-height: 1.3; }
  .eh-pricing-header-icon{ width: 64px; height: 64px; }
  .eh-tariff{ padding: 26px 22px 24px; }
  .eh-pricing-included__header{ flex-direction: column; gap: 12px; }
  .eh-pricing-line{ flex: 1; height: 1px; min-width: 32px; }
.eh-pricing-line--left{ background: linear-gradient(90deg, transparent 0%, rgba(0,200,255,0.55) 70%, rgba(138,61,255,0.6) 100%); }
.eh-pricing-line--right{ background: linear-gradient(90deg, rgba(138,61,255,0.6) 0%, rgba(0,200,255,0.55) 30%, transparent 100%); }
@media (max-width: 560px){ .eh-pricing-included__header{ flex-direction: column; gap: 14px; } .eh-pricing-line{ width: 60%; max-width: 240px; } }
  .eh-pricing-features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 28px;
  }
  .eh-feature__icon{ width: 64px; height: 64px; border-radius: 14px; }
  .eh-feature p{ font-size: 13px; }
}
/* === /EH PRICING BLOCK ========================================= */

/* infinity glyph used inside feature tile */
.eh-feature__icon .eh-infinity-glyph{
  font-family: 'Arial', 'Helvetica', sans-serif;
  font-size: 56px;
  line-height: 1;
  color: #00C8FF;
  font-weight: 400;
  filter: drop-shadow(0 0 8px rgba(0,200,255,0.35));
  display: inline-block;
  transform: translateY(-3px);
}
@media (max-width: 1024px){
  .eh-feature__icon .eh-infinity-glyph{ font-size: 46px; }
}
@media (max-width: 560px){
  .eh-feature__icon .eh-infinity-glyph{ font-size: 40px; }
}

/* feature tiles — silver + purple variants */
.eh-feature__icon{
  background:
    linear-gradient(180deg, #0C1729 0%, #0A1424 100%) padding-box,
    linear-gradient(135deg, rgba(245,247,250,0.95) 0%, rgba(170,180,200,0.25) 35%, rgba(220,227,239,0.75) 65%, rgba(140,150,170,0.20) 100%) border-box;
  border: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05), 0 6px 18px rgba(0,0,0,0.25);
}
.eh-feature--purple .eh-feature__icon{
  background:
    linear-gradient(180deg, #0C1729 0%, #0A1424 100%) padding-box,
    linear-gradient(135deg, rgba(200,160,255,0.95) 0%, rgba(120,60,200,0.30) 35%, rgba(190,150,255,0.80) 65%, rgba(100,40,180,0.25) 100%) border-box;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 6px 22px rgba(138,61,255,0.18);
}
.eh-feature--silver .eh-infinity-glyph{
  background: linear-gradient(135deg, #FFFFFF 0%, #B5BCC9 35%, #E8ECF2 65%, #8E96A8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  filter: none;
}
.eh-feature--silver .eh-feature__icon svg,
.eh-feature--purple .eh-feature__icon svg{ filter: none; }
/* === EH BIZSITES BLOCK ========================================= */
.eh-bizsites-block{
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
}

/* ----- hero ----- */
.eh-bs-hero{
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 48px;
  align-items: center;
  margin-bottom: 96px;
}
.eh-bs-title{
  font-size: 44px;
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -0.4px;
  color: #F5F7FA;
  margin: 0 0 28px;
}
.eh-bs-lead{
  color: #A5B3C7;
  font-size: 17px;
  line-height: 1.6;
  margin: 0;
  max-width: 480px;
}
.eh-bs-hero__visual{
  width: 100%;
  display: flex;
  justify-content: center;
}

/* ----- section title with gradient lines ----- */
.eh-bs-section-title{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  max-width: 760px;
  margin: 0 auto 56px;
}
.eh-bs-section-title h3{
  font-size: 30px;
  font-weight: 700;
  color: #F5F7FA;
  margin: 0;
  white-space: nowrap;
}
.eh-bs-line{ flex: 1; height: 1px; min-width: 40px; }
.eh-bs-line--left{
  background: linear-gradient(90deg, transparent 0%, rgba(0,200,255,0.55) 70%, rgba(138,61,255,0.6) 100%);
}
.eh-bs-line--right{
  background: linear-gradient(90deg, rgba(138,61,255,0.6) 0%, rgba(0,200,255,0.55) 30%, transparent 100%);
}

/* ----- image placeholders ----- */
.eh-bs-img-placeholder{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 18px;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,0.02) 0 14px, rgba(255,255,255,0.04) 14px 28px),
    linear-gradient(180deg, #0D1A2F 0%, #0A1424 100%);
  border: 1px dashed rgba(0,200,255,0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}
.eh-bs-img-placeholder--hero{
  aspect-ratio: 4 / 3;
}
.eh-bs-img-label{
  color: rgba(165,179,199,0.55);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.4px;
  text-transform: lowercase;
}

/* ----- step cards (01 / 02) ----- */
.eh-bs-step{
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 40px;
  align-items: center;
  padding: 36px 40px;
  margin-bottom: 28px;
  background:
    radial-gradient(120% 90% at 0% 0%, rgba(138,61,255,0.06) 0%, transparent 60%),
    linear-gradient(180deg, #0C1729 0%, #0A1424 100%);
  border: 1px solid rgba(0,200,255,0.10);
  border-radius: 22px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03), 0 18px 40px rgba(0,0,0,0.35);
}
.eh-bs-step__top{
  display: flex;
  align-items: center;
  gap: 22px;
  margin-bottom: 18px;
}
.eh-bs-badge{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 16px;
  background: linear-gradient(135deg, #8A3DFF 0%, #5B25C9 100%);
  color: #FFFFFF;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.3px;
  flex-shrink: 0;
  box-shadow: 0 8px 24px rgba(138,61,255,0.35), inset 0 1px 0 rgba(255,255,255,0.18);
}
.eh-bs-step__name{
  font-size: 26px;
  font-weight: 700;
  color: #F5F7FA;
  margin: 0;
  line-height: 1.25;
}
.eh-bs-step__hl{
  color: #00C8FF;
  font-size: 17px;
  font-weight: 600;
  margin: 0 0 14px;
}
.eh-bs-step__text{
  color: #C8D1DD;
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
}
.eh-bs-step__visual .eh-bs-img-placeholder{ aspect-ratio: 16 / 10; }

/* ----- checklist (step 02) ----- */
.eh-bs-checklist{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.eh-bs-checklist li{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  color: #DCE3EF;
  font-size: 15px;
  line-height: 1.45;
}
.eh-bs-check-icon{
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #8A3DFF;
  filter: drop-shadow(0 0 6px rgba(138,61,255,0.25));
  margin-top: 1px;
}
.eh-bs-check-icon svg{ width: 100%; height: 100%; }

/* ----- tech features ----- */
.eh-bs-tech{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px;
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
}
.eh-bs-tech-icon{
  width: 64px;
  height: 64px;
  margin: 0 auto 18px;
  color: #00C8FF;
  filter: drop-shadow(0 0 10px rgba(0,200,255,0.35));
}
.eh-bs-tech-icon svg{ width: 100%; height: 100%; }
.eh-bs-tech-name{
  font-size: 18px;
  font-weight: 700;
  color: #F5F7FA;
  margin: 0 0 6px;
}
.eh-bs-tech-desc{
  font-size: 14px;
  color: #A5B3C7;
  line-height: 1.55;
  margin: 0;
}

/* ----- Laptop ----- */
@media (max-width: 1200px){
  .eh-bs-title{ font-size: 38px; }
  .eh-bs-step{ padding: 30px 32px; }
  .eh-bs-step__name{ font-size: 22px; }
}

/* ----- Tablet ----- */
@media (max-width: 1024px){
  .eh-bs-hero{ gap: 32px; margin-bottom: 72px; }
  .eh-bs-title{ font-size: 30px; margin-bottom: 22px; }
  .eh-bs-lead{ font-size: 15px; }
  .eh-bs-section-title{ margin-bottom: 36px; gap: 18px; }
  .eh-bs-section-title h3{ font-size: 24px; }
  .eh-bs-step{
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 26px 24px;
  }
  .eh-bs-step__visual .eh-bs-img-placeholder{ aspect-ratio: 16 / 9; }
  .eh-bs-badge{ width: 52px; height: 52px; font-size: 18px; border-radius: 14px; }
  .eh-bs-tech{ gap: 32px; }
  .eh-bs-tech-icon{ width: 56px; height: 56px; }
}

/* ----- Small / mobile ----- */
@media (max-width: 720px){
  .eh-bs-hero{ grid-template-columns: 1fr; gap: 28px; }
  .eh-bs-img-placeholder--hero{ aspect-ratio: 4 / 3; max-width: 420px; margin: 0 auto; }
  .eh-bs-title{ font-size: 26px; }
  .eh-bs-section-title{ flex-direction: column; gap: 14px; }
  .eh-bs-section-title h3{ font-size: 22px; }
  .eh-bs-line{ width: 60%; max-width: 240px; min-width: 0; }
  .eh-bs-step__top{ gap: 16px; }
  .eh-bs-badge{ width: 46px; height: 46px; font-size: 17px; border-radius: 12px; }
  .eh-bs-step__name{ font-size: 19px; }
  .eh-bs-tech{ grid-template-columns: 1fr; gap: 28px; max-width: 320px; }
}
/* === /EH BIZSITES BLOCK ======================================== */

/* === EH HERO BLOCK V2 ========================================== */
.eh-hero-block{
  position: relative;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  border-radius: 22px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(7,13,26,0.65) 0%, rgba(7,13,26,0.45) 40%, rgba(7,13,26,0.88) 100%),
    var(--bg) center/cover no-repeat,
    #070D1A;
  border: 1px solid rgba(138,61,255,0.20);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03), 0 18px 50px rgba(0,0,0,0.35);
}
.eh-hero-inner{
  padding: 60px 64px 60px;
}
.eh-hero-grid{
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 56px;
}
.eh-hero-title{
  font-family: Roboto, sans-serif;
  font-size: 56px;
  font-weight: 700;
  line-height: 1.05;
  color: #F5F7FA;
  margin: 0 0 14px;
  letter-spacing: -0.5px;
}
.eh-hero-sub{
  font-family: Roboto, sans-serif;
  color: #A5B3C7;
  font-size: 17px;
  line-height: 1.55;
  margin: 0 0 24px;
  max-width: 520px;
}
.eh-hero-line{
  height: 2px;
  width: 220px;
  background: linear-gradient(90deg, #00C8FF 0%, #8A3DFF 100%);
  border-radius: 2px;
  margin-bottom: 28px;
}
.eh-svc-row{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}
.eh-svc-card{
  background: linear-gradient(180deg, rgba(11,20,38,0.7) 0%, rgba(7,13,26,0.7) 100%);
  border: 1px solid rgba(0,200,255,0.18);
  border-radius: 14px;
  padding: 14px 10px 12px;
  text-align: center;
  backdrop-filter: blur(6px);
}
.eh-svc-card__icon{
  width: 36px;
  height: 36px;
  margin: 0 auto 8px;
  object-fit: contain;
}
.eh-svc-card__name{
  color: #DCE3EF;
  font-family: Roboto, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
}

.eh-ben-title{
  font-family: Roboto, sans-serif;
  font-size: 38px;
  font-weight: 700;
  margin: 0 0 24px;
  color: #F5F7FA;
}
.eh-ben-list{
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.eh-ben-row{
  display: flex;
  align-items: center;
  gap: 16px;
  background: linear-gradient(180deg, rgba(11,20,38,0.65) 0%, rgba(7,13,26,0.6) 100%);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 14px 16px;
}
.eh-ben-row__icon{
  width: 44px;
  height: 44px;
  object-fit: contain;
  flex-shrink: 0;
}
.eh-ben-row__text{
  color: #F5F7FA;
  font-family: Roboto, sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.35;
}

/* Tablet */
@media (max-width: 1024px){
  .eh-hero-inner{ padding: 44px 40px; }
  .eh-hero-grid{ gap: 36px; }
  .eh-hero-title{ font-size: 44px; }
  .eh-ben-title{ font-size: 30px; }
  .eh-svc-card{ padding: 10px 6px; }
  .eh-svc-card__icon{ width: 30px; height: 30px; }
  .eh-svc-card__name{ font-size: 11px; }
}

/* Mobile */
@media (max-width: 720px){
  .eh-hero-block{ border-radius: 16px; }
  .eh-hero-inner{ padding: 32px 22px; }
  .eh-hero-grid{ grid-template-columns: 1fr; gap: 36px; }
  .eh-hero-title{ font-size: 32px; }
  .eh-hero-sub{ font-size: 15px; }
  .eh-svc-row{ grid-template-columns: repeat(2, 1fr); }
  .eh-svc-card{ padding: 12px; }
  .eh-svc-card__icon{ width: 32px; height: 32px; }
  .eh-svc-card__name{ font-size: 13px; }
  .eh-ben-title{ font-size: 26px; }
  .eh-ben-row__icon{ width: 38px; height: 38px; }
  .eh-ben-row__text{ font-size: 14px; }
}
/* === /EH HERO BLOCK V2 ========================================= */

/* gradient text utility */
.eh-text-gradient{
  background: linear-gradient(90deg, #00C8FF 0%, #8A3DFF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

/* hero benefit rows — ultra compact */
.eh-hero-native .eh-ben-row{
  padding: 6px 12px !important;
}
.eh-hero-native .eh-ben-row .eh-ben-row-title .elementor-heading-title{
  font-size: 13px !important;
  line-height: 1.05 !important;
  margin: 0 !important;
}
.eh-hero-native .eh-ben-row .eh-ben-row-sub .elementor-heading-title{
  font-size: 10px !important;
  line-height: 1.1 !important;
  margin: 0 !important;
  color: #8A95AB !important;
}
.eh-hero-native .eh-ben-row-txt{
  gap: 1px !important;
}
.eh-hero-native .eh-ben-row .elementor-widget{
  margin: 0 !important;
}
.eh-hero-native .eh-ben-row-txt{
  padding: 0 !important;
}
.eh-hero-native .eh-ben-row-ic{
  padding: 0 !important;
  margin: 0 !important;
}

/* hero right — full dark overlay with no edge leak */
.eh-hero-native .eh-hero-right{
  background: #070D1A !important;
  margin: 0 !important;
  border: none !important;
}
.eh-hero-native .eh-hero-grid{
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: stretch !important;
}

/* service-cards — tighten gap to arrow */
.eh-hero-native .eh-svc-card .elementor-widget{
  margin-block-end: 0 !important;
  margin-bottom: 0 !important;
}
.eh-hero-native .eh-svc-card-img{
  padding-bottom: 8px !important;
}
.eh-hero-native .eh-svc-card-name{
  padding-bottom: 4px !important;
}
.eh-hero-native .eh-svc-card-arrow{
  padding: 0 !important;
  margin-top: 2px !important;
}

/* benefit row icon — keep width so it shows beside the text */
.eh-hero-native .eh-ben-row-ic{
  width: auto !important;
  flex: 0 0 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.eh-hero-native .eh-ben-row-ic .elementor-widget-container,
.eh-hero-native .eh-ben-row-ic .elementor-icon-wrapper,
.eh-hero-native .eh-ben-row-ic .elementor-icon{
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
.eh-hero-native .eh-ben-row{
  flex-direction: row !important;
  align-items: center !important;
}

/* === Native domain block fixes === */
.eh-dom-native{
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.eh-dom-card{
  width: 100% !important;
}
.eh-dom-search-row{
  flex-wrap: wrap !important;
}
.eh-dom-input{
  flex: 1 1 380px !important;
}
.eh-dom-btn-cyan,
.eh-dom-btn-purple{
  flex: 0 0 auto !important;
}
.eh-dom-bottom{
  flex-wrap: wrap !important;
}
.eh-dom-col-usp,
.eh-dom-col-info,
.eh-dom-col-prices{
  flex: 1 1 220px !important;
  min-width: 0 !important;
}
.eh-dom-price-row{
  justify-content: flex-start !important;
}
.eh-dom-tld{
  min-width: 60px;
}

/* domain CTA buttons — match input height */
.eh-dom-native .eh-dom-btn-cyan .elementor-button,
.eh-dom-native .eh-dom-btn-purple .elementor-button{
  min-height: 64px !important;
  padding: 0 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

/* domain search input — center icon vertically with text */
.eh-dom-input{
  align-items: center !important;
}
.eh-dom-input .eh-dom-input-icon,
.eh-dom-input .eh-dom-input-placeholder{
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}
.eh-dom-input-icon .elementor-icon-wrapper,
.eh-dom-input-icon .elementor-icon{
  display: flex !important;
  align-items: center !important;
  line-height: 1 !important;
}
.eh-dom-input-placeholder .elementor-heading-title{
  line-height: 1 !important;
  margin: 0 !important;
}

/* domain card — transparent fill with gradient outline */
.eh-dom-native .eh-dom-card{
  position: relative !important;
  background: transparent !important;
  border: none !important;
}
.eh-dom-native .eh-dom-card::before{
  content: "";
  position: absolute;
  inset: 0;
  padding: 1.5px;
  border-radius: inherit;
  background: linear-gradient(135deg, #00C8FF 0%, #8A3DFF 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: 1;
}

/* benefit-row image — bump up flex basis to match larger icon */
.eh-hero-native .eh-ben-row-ic{
  flex: 0 0 46px !important;
}
.eh-hero-native .eh-ben-row-ic img{
  width: 46px !important;
  height: 46px !important;
  object-fit: contain !important;
}

/* benefit-row title↔subtitle — kill all spacing between them */
.eh-hero-native .eh-ben-row-title,
.eh-hero-native .eh-ben-row-sub{
  padding: 0 !important;
  margin: 0 !important;
}
.eh-hero-native .eh-ben-row-title .elementor-widget-container,
.eh-hero-native .eh-ben-row-sub .elementor-widget-container{
  padding: 0 !important;
  margin: 0 !important;
}
.eh-hero-native .eh-ben-row-txt{
  gap: 0 !important;
}

/* «Что входит во все тарифы» — make side lines paper-thin */
.eh-pricing-native .eh-line,
.eh-pricing-native .eh-line--left,
.eh-pricing-native .eh-line--right{
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* «Что делаем» / «На чём разрабатываем» — thin side lines */
.eh-bs-native .eh-bs-line, .eh-brand-native .eh-bs-line, .eh-pricing-native .eh-bs-line, .eh-dom-native .eh-bs-line,
.eh-bs-native .eh-bs-line--left, .eh-brand-native .eh-bs-line--left, .eh-pricing-native .eh-bs-line--left, .eh-dom-native .eh-bs-line--left,
.eh-bs-native .eh-bs-line--right, .eh-brand-native .eh-bs-line--right, .eh-pricing-native .eh-bs-line--right, .eh-dom-native .eh-bs-line--right{
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* === bizsites — match reference layout === */
/* Hero title size + line height */
.eh-bs-native .eh-bs-hero-title .elementor-heading-title{
  font-size: 38px !important;
  line-height: 1.2 !important;
}
.eh-bs-native .eh-bs-hero-lead .elementor-widget-container p{
  font-size: 16px !important;
  line-height: 1.55 !important;
}

/* Image placeholders: use a styled empty box (in case via.placeholder.com is unreachable) */
.eh-bs-native .eh-bs-hero-img img,
.eh-bs-native .eh-bs-step-img img{
  width: 100%;
  height: auto;
  border-radius: 18px;
  background: linear-gradient(180deg, #0D1A2F 0%, #0A1424 100%);
  border: 1px dashed rgba(0,200,255,0.22);
  min-height: 280px;
  object-fit: cover;
}

/* Step cards: tighten paddings, bg darker */
.eh-bs-native .eh-bs-step-card{
  padding: 32px 36px !important;
}
.eh-bs-native .eh-bs-badge-native .elementor-heading-title{
  font-size: 22px !important;
}

/* Tech features evenly spaced, icons cyan */
.eh-bs-native .eh-bs-tech-row{
  justify-content: space-around !important;
}
.eh-bs-native .eh-bs-tech-item{
  flex: 0 0 auto !important;
  text-align: center !important;
}
.eh-bs-native .eh-bs-tech-name .elementor-heading-title{
  font-size: 18px !important;
}
.eh-bs-native .eh-bs-tech-desc .elementor-heading-title{
  font-size: 14px !important;
  color: #A5B3C7 !important;
  line-height: 1.55 !important;
}

/* bizsites hero — force-down title size via stronger selector */
.eh-bs-native .eh-bs-hero-title h2,
.eh-bs-native .eh-bs-hero-title .elementor-heading-title,
.eh-bs-native .eh-bs-hero-title h2.elementor-heading-title{
  font-size: 46px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: -0.3px !important;
  color: #F5F7FA !important;
}
.eh-bs-native .eh-bs-hero-text{
  max-width: 480px;
}

/* Make bizsites hero columns actually fill the row */
.eh-bs-native .eh-bs-hero{
  align-items: center !important;
}
.eh-bs-native .eh-bs-hero-text,
.eh-bs-native .eh-bs-hero-visual{
  flex: 1 1 0 !important;
  max-width: none !important;
  min-width: 0 !important;
}

/* Same for step cards (image was probably squished too) */
.eh-bs-native .eh-bs-step-body,
.eh-bs-native .eh-bs-step-visual{
  flex: 1 1 0 !important;
  max-width: none !important;
  min-width: 0 !important;
}

/* bizsites hero — explicit 1fr 1fr grid */
.eh-bs-native .eh-bs-hero{
  grid-template-columns: 1fr 1fr !important;
}
.eh-bs-native .eh-bs-step-card{
  grid-template-columns: 1fr 1fr !important;
}

/* Force children to fill their grid cell — Elementor inline width:50% chokes inside the grid */
.eh-bs-native .eh-bs-hero > .eh-bs-hero-text,
.eh-bs-native .eh-bs-hero > .eh-bs-hero-visual,
.eh-bs-native .eh-bs-step-card > .eh-bs-step-body,
.eh-bs-native .eh-bs-step-card > .eh-bs-step-visual{
  width: 100% !important;
}

/* Step cards — correct class is eh-bs-step */
.eh-bs-native .eh-bs-step{
  grid-template-columns: 1fr 1fr !important;
}
.eh-bs-native .eh-bs-step > .eh-bs-step-body,
.eh-bs-native .eh-bs-step > .eh-bs-step-visual{
  width: 100% !important;
}

/* Step cards — transparent background */
.eh-bs-native .eh-bs-step{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* ============================================================
   RESPONSIVE — все native блоки (hero, domain, pricing, bizsites)
   ============================================================ */

/* ----- TABLET (<= 1024px) ----- */
@media (max-width: 1024px){
  /* HERO */
  .eh-hero-native .eh-hero-card{
    border-radius: 18px !important;
  }
  .eh-hero-native .eh-hero-grid{
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  .eh-hero-native .eh-hero-left,
  .eh-hero-native .eh-hero-right{
    width: 100% !important;
    padding: 28px 24px !important;
  }
  .eh-hero-native .eh-hero-right{
    border-left: 0 !important;
    border-top: 1px solid rgba(138,61,255,0.18) !important;
  }
  .eh-hero-native .eh-hero-title-single .elementor-heading-title{
    font-size: 38px !important;
  }
  .eh-hero-native .eh-svc-row{
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
  .eh-hero-native .eh-svc-card{
    flex: 0 0 calc(33.333% - 7px) !important;
    min-height: 110px !important;
  }
  .eh-hero-native .eh-hero-ben-title{
    text-align: left !important;
  }

  /* DOMAIN */
  .eh-dom-native .eh-dom-card{
    padding: 36px 28px !important;
  }
  .eh-dom-native .eh-dom-title .elementor-heading-title{
    font-size: 34px !important;
  }
  .eh-dom-native .eh-dom-search-row{
    flex-wrap: wrap !important;
    gap: 12px !important;
  }
  .eh-dom-native .eh-dom-input{
    flex: 1 1 100% !important;
  }
  .eh-dom-native .eh-dom-btn-cyan,
  .eh-dom-native .eh-dom-btn-purple{
    flex: 1 1 calc(50% - 6px) !important;
  }
  .eh-dom-native .eh-dom-btn-cyan .elementor-button,
  .eh-dom-native .eh-dom-btn-purple .elementor-button{
    width: 100% !important;
  }
  .eh-dom-native .eh-dom-bottom{
    flex-wrap: wrap !important;
    gap: 28px !important;
  }
  .eh-dom-native .eh-dom-col-usp,
  .eh-dom-native .eh-dom-col-info{
    flex: 1 1 calc(50% - 14px) !important;
    min-width: 0 !important;
  }
  .eh-dom-native .eh-dom-col-prices{
    flex: 1 1 100% !important;
    max-width: 480px;
  }

  /* PRICING */
  .eh-pricing-native .eh-pricing-title .elementor-heading-title{
    font-size: 34px !important;
  }
  .eh-pricing-native .eh-tariffs-row{
    flex-wrap: wrap !important;
    gap: 20px !important;
  }
  .eh-pricing-native .eh-card{
    flex: 1 1 calc(50% - 10px) !important;
    min-width: 0 !important;
  }
  .eh-pricing-native .eh-features-row{
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 20px !important;
  }
  .eh-pricing-native .eh-feat{
    flex: 0 0 calc(33.333% - 14px) !important;
  }

  /* BIZSITES */
  .eh-bs-native .eh-bs-hero{
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 36px !important;
  }
  .eh-bs-native .eh-bs-step{
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 28px !important;
    padding: 28px !important;
  }
  .eh-bs-native .eh-bs-tech-row{
    flex-wrap: wrap !important;
    gap: 32px !important;
    justify-content: center !important;
  }
  .eh-bs-native .eh-bs-tech-item{
    flex: 1 1 calc(33.333% - 22px) !important;
    min-width: 0 !important;
  }
}

/* ----- MOBILE (<= 640px) ----- */
@media (max-width: 640px){
  /* Universal section padding shrink */
  .eh-hero-native,
  .eh-dom-native,
  .eh-pricing-native,
  .eh-bs-native{
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }

  /* HERO */
  .eh-hero-native .eh-hero-card{
    border-radius: 16px !important;
  }
  .eh-hero-native .eh-hero-left,
  .eh-hero-native .eh-hero-right{
    padding: 24px 18px !important;
  }
  .eh-hero-native .eh-hero-title-single .elementor-heading-title{
    font-size: 28px !important;
  }
  .eh-hero-native .eh-hero-sub .elementor-widget-container p{
    font-size: 14px !important;
  }
  .eh-hero-native .eh-svc-card{
    flex: 0 0 calc(50% - 5px) !important;
    min-height: 100px !important;
  }
  .eh-hero-native .eh-hero-ben-title .elementor-heading-title{
    font-size: 24px !important;
  }
  .eh-hero-native .eh-ben-row{
    padding: 8px 12px !important;
  }
  .eh-hero-native .eh-ben-row-ic{
    flex: 0 0 38px !important;
  }
  .eh-hero-native .eh-ben-row-ic img{
    width: 38px !important;
    height: 38px !important;
  }

  /* DOMAIN */
  .eh-dom-native .eh-dom-card{
    padding: 28px 20px !important;
    border-radius: 18px !important;
  }
  .eh-dom-native .eh-dom-title .elementor-heading-title{
    font-size: 28px !important;
    line-height: 1.18 !important;
  }
  .eh-dom-native .eh-dom-input{
    min-height: 54px !important;
  }
  .eh-dom-native .eh-dom-btn-cyan .elementor-button,
  .eh-dom-native .eh-dom-btn-purple .elementor-button{
    min-height: 50px !important;
    padding: 0 18px !important;
    font-size: 14px !important;
  }
  .eh-dom-native .eh-dom-bottom{
    gap: 24px !important;
  }
  .eh-dom-native .eh-dom-col-usp,
  .eh-dom-native .eh-dom-col-info,
  .eh-dom-native .eh-dom-col-prices{
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  .eh-dom-native .eh-dom-usp-title .elementor-heading-title{
    font-size: 22px !important;
  }

  /* PRICING */
  .eh-pricing-native .eh-pricing-server-icon i,
  .eh-pricing-native .eh-pricing-server-icon svg{
    font-size: 52px !important;
    width: 52px !important;
    height: 52px !important;
  }
  .eh-pricing-native .eh-pricing-title .elementor-heading-title{
    font-size: 28px !important;
    line-height: 1.18 !important;
  }
  .eh-pricing-native .eh-tariffs-row{
    flex-direction: column !important;
  }
  .eh-pricing-native .eh-card{
    flex: 1 1 100% !important;
    padding: 28px 24px !important;
  }
  .eh-pricing-native .eh-included-header{
    flex-direction: column !important;
    gap: 14px !important;
  }
  .eh-pricing-native .eh-line{
    width: 70% !important;
    max-width: 240px !important;
  }
  .eh-pricing-native .eh-features-row{
    grid-template-columns: repeat(2, 1fr) !important;
    display: grid !important;
    gap: 22px !important;
  }
  .eh-pricing-native .eh-feat{
    flex: unset !important;
    width: 100% !important;
  }

  /* BIZSITES */
  .eh-bs-native .eh-bs-hero-title h2,
  .eh-bs-native .eh-bs-hero-title .elementor-heading-title{
    font-size: 26px !important;
  }
  .eh-bs-native .eh-bs-step{
    padding: 22px 18px !important;
  }
  .eh-bs-native .eh-bs-badge-native{
    width: 50px !important;
    min-height: 50px !important;
  }
  .eh-bs-native .eh-bs-badge-num .elementor-heading-title{
    font-size: 18px !important;
  }
  .eh-bs-native .eh-bs-step-name .elementor-heading-title{
    font-size: 20px !important;
  }
  .eh-bs-native .eh-bs-tech-row{
    grid-template-columns: 1fr !important;
    display: grid !important;
    gap: 28px !important;
  }
  .eh-bs-native .eh-bs-tech-item{
    flex: unset !important;
    width: 100% !important;
  }
  .eh-bs-native .eh-bs-st-title .elementor-heading-title{
    font-size: 22px !important;
  }
  .eh-bs-native .eh-bs-section-title-row,
  .eh-bs-native .eh-bs-st-row{
    flex-direction: column !important;
    gap: 12px !important;
  }
  .eh-bs-native .eh-bs-line{
    width: 70% !important;
    max-width: 240px !important;
  }
}

/* Header menu — hide all dropdowns + chevrons (single-click links) */
header .sub-menu,
header .menu-item-has-children > ul,
header .rt-elementor-mega-menu-content,
header .elementor-nav-menu .sub-menu,
.rt-elements-mega-menu .rt-mega-menu-section,
.menu-item-has-children .sub-menu{
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
header .menu-item-has-children > a::after,
header .menu-item-has-children .arrow,
header .sub-arrow,
header .elementor-item-anchor i,
header .menu-item-has-children > a > .fa,
header .menu-item-has-children > a > i{
  display: none !important;
}
header .menu-item-has-children > a{
  padding-right: 0 !important;
}

/* Header — push menu to the right side */
header .elementor-nav-menu,
header .elementor-nav-menu__container,
header nav.elementor-nav-menu--main,
header .elementor-widget-nav-menu,
header [class*="nav-menu"]:not([class*="toggle"]),
header .rt-main-menu,
header .menu-main-menu-container,
header ul#menu-main-menu,
header .menu-wrapper,
header .header-menu,
header .menu-mobile-menu-container{
  margin-left: auto !important;
}

/* Header — push menu container right via space-between on the row */
header .header-inner .e-con-inner,
header .elementor-26 .e-con-inner{
  justify-content: space-between !important;
  align-items: center !important;
}
header .elementor-element-54eed4f{
  margin-left: auto !important;
}

/* Header layout — logo left, menu+buttons right */
header .header-inner .e-con-inner{
  justify-content: space-between !important;
}
header .header-inner .elementor-element-ecd6a91{
  margin-left: auto !important;
  justify-content: flex-end !important;
}

/* Hide right-side livechat container so menu sits flush right */
header .header-inner .e-con-inner > .elementor-element-b1c8c7d{
  display: none !important;
}

/* Real desktop header — logo on left, mega-menu pushed to right */
header .elementor-element-5d2ae62{
  justify-content: space-between !important;
  align-items: center !important;
}
header .elementor-element-606f801{
  margin-left: auto !important;
}

/* rt-mega-menu — kill dropdowns + arrows */
.rt-mega-navigation-menu .sub-menu,
.rt-mega-menu .sub-menu,
.rt-mega-navigation-menu .rt-mega-menu-content,
.rt-mega-navigation-menu .menu-item-has-children > .sub-menu,
.rt-mega-navigation-menu li > ul,
.rt-mega-navigation-menu .rt-menu-dropdown{
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.rt-mega-navigation-menu .menu-item-has-children > a::after,
.rt-mega-navigation-menu .menu-item-has-children > a > i,
.rt-mega-navigation-menu .menu-item-has-children > a > svg,
.rt-mega-navigation-menu .sub-arrow,
.rt-mega-navigation-menu .arrow{
  display: none !important;
}

/* rt-mega-menu — kill the chevron span next to each top-level link */
.rt-mega-navigation-menu .submenu-parent-icon,
.rt-mega-navigation-menu .pointer-none{
  display: none !important;
}

/* Hide menu arrows universally */
.submenu-parent-icon{ display: none !important; }

/* Header menu — hover color cyan */
.rt-mega-navigation-menu .main-menu-link:hover,
.rt-mega-navigation-menu .main-menu-link:hover *,
.rt-mega-navigation-menu .main-menu-link:hover .menu-text span,
.rt-mega-navigation-menu .menu-link:hover,
.rt-mega-navigation-menu .menu-link:hover *{
  color: #00C8FF !important;
}

/* Header menu — strong hover override for the inner text span */
header .elementor-element-606f801 .main-menu-link:hover,
header .elementor-element-606f801 .main-menu-link:hover .menu-text,
header .elementor-element-606f801 .main-menu-link:hover .menu-text > span,
header .elementor-element-606f801 li:hover > .main-menu-link,
header .elementor-element-606f801 li:hover > .main-menu-link .menu-text > span{
  color: #00C8FF !important;
}

/* Step-body: badge left, everything else stacks in right column */
.eh-bs-native .eh-bs-step-body{
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  column-gap: 22px !important;
  row-gap: 14px !important;
  align-items: start !important;
}
.eh-bs-native .eh-bs-step-body > .eh-bs-badge{
  grid-column: 1 !important;
  grid-row: 1 / 99 !important;
  width: 60px !important;
}
.eh-bs-native .eh-bs-step-body > *:not(.eh-bs-badge){
  grid-column: 2 !important;
  width: 100% !important;
}
/* Force hl override for purple heading */
.eh-bs-native .eh-bs-step-hl .elementor-heading-title[style*="8A3DFF"],
.eh-bs-native .eh-bs-step-hl .elementor-heading-title{
  /* default cyan unless explicitly purple via inline color */
}

/* Override the broken grid layout on step-body — use plain flex */
.eh-bs-native .eh-bs-step-body{
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 22px !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  row-gap: 0 !important;
  column-gap: 22px !important;
}
.eh-bs-native .eh-bs-step-body > .eh-bs-badge{
  flex: 0 0 60px !important;
  width: 60px !important;
}
.eh-bs-native .eh-bs-step-body > .eh-bs-step-content{
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0;
}

/* ===== MOBILE OVERRIDES (run last so they beat earlier !important) ===== */
@media (max-width: 768px){
  .eh-bs-native .eh-bs-hero-title h2,
  .eh-bs-native .eh-bs-hero-title h2.elementor-heading-title,
  .eh-bs-native .eh-bs-hero-title .elementor-heading-title{
    font-size: 28px !important;
    line-height: 1.18 !important;
  }
  .eh-bs-native .eh-bs-hero-lead .elementor-widget-container p{
    font-size: 14px !important;
  }
  .eh-bs-native .eh-bs-hero{
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }
  .eh-bs-native .eh-bs-hero-text,
  .eh-bs-native .eh-bs-hero-visual{
    width: 100% !important;
  }
  .eh-bs-native .eh-bs-step{
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 22px 18px !important;
  }
  .eh-bs-native .eh-bs-step-body{
    flex-direction: row !important;
    gap: 16px !important;
  }
  .eh-bs-native .eh-bs-step-body > .eh-bs-badge{
    flex: 0 0 50px !important;
    width: 50px !important;
    min-height: 50px !important;
  }
  .eh-bs-native .eh-bs-step-name .elementor-heading-title{
    font-size: 20px !important;
    line-height: 1.25 !important;
  }
  .eh-bs-native .eh-bs-tech-row{
    grid-template-columns: 1fr !important;
    display: grid !important;
  }
}

/* === bizsites — REAL hero mockup (override placeholder rules) === */
.eh-bs-native .eh-bs-hero-img{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.eh-bs-native .eh-bs-hero-img .elementor-widget-container{
  width: 100% !important;
}
.eh-bs-native .eh-bs-hero-img img{
  width: 100% !important;
  height: auto !important;
  max-height: 520px !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  min-height: 0 !important;
  display: block;
  margin: 0 auto;
  filter: drop-shadow(0 24px 60px rgba(0, 200, 255, 0.18))
          drop-shadow(0 8px 24px rgba(138, 61, 255, 0.14));
  transition: transform 0.5s ease;
}
.eh-bs-native .eh-bs-hero-img img:hover{
  transform: translateY(-4px) scale(1.01);
}
@media (max-width: 1024px){
  .eh-bs-native .eh-bs-hero-img img{ max-height: 440px !important; }
}
@media (max-width: 767px){
  .eh-bs-native .eh-bs-hero-img img{
    max-height: 360px !important;
    filter: drop-shadow(0 12px 30px rgba(0, 200, 255, 0.18));
  }
}

/* ===== TARIFFS ROW LAYOUT FIX (29.06.2026) =====
   Elementor _flex_size:grow ставит flex-shrink:0; без явного width
   карты разворачиваются на свой content-width и улетают за экран.
   Принудительно: row, nowrap, flex:1 1 0, min-width:0 — карты делят
   пространство поровну с учётом gap. На <=991px — wrap в колонку. */
.eh-pricing-native .eh-tariffs-row{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 28px !important;
}
.eh-pricing-native .eh-tariffs-row > .eh-card{
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
@media (max-width: 1199px){
  .eh-pricing-native .eh-tariffs-row{ gap: 20px !important; }
}
@media (max-width: 991px){
  .eh-pricing-native .eh-tariffs-row{
    flex-wrap: wrap !important;
    gap: 20px !important;
  }
  .eh-pricing-native .eh-tariffs-row > .eh-card{
    flex: 1 1 100% !important;
    width: 100% !important;
  }
}

/* ===== TARIFF CARD ICON (PNG) — адаптивный размер ===== */
.eh-pricing-native .eh-card .eh-card-icon-img img{
  width: 96px !important;
  height: 96px !important;
  max-width: 100% !important;
  object-fit: contain !important;
  filter: drop-shadow(0 6px 18px rgba(0, 200, 255, 0.18))
          drop-shadow(0 4px 12px rgba(138, 61, 255, 0.14));
  display: block;
}
@media (max-width: 1199px){
  .eh-pricing-native .eh-card .eh-card-icon-img img{
    width: 84px !important; height: 84px !important;
  }
}
@media (max-width: 767px){
  .eh-pricing-native .eh-card .eh-card-icon-img img{
    width: 76px !important; height: 76px !important;
  }
}

/* ===== TARIFF CARD ICON — центрирование (29.06.2026 v2) ===== */
.eh-pricing-native .eh-card .eh-card-icon-img{
  text-align: center !important;
}
.eh-pricing-native .eh-card .eh-card-icon-img .elementor-widget-container{
  text-align: center !important;
}
.eh-pricing-native .eh-card .eh-card-icon-img img{
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== MOBILE BURGER — видимый на тёмной шапке (30.06.2026) =====
   SVG-полоски в шаблоне жёстко прибиты fill="#000000". На тёмной
   шапке (#070D1A) их не видно. Перекрашиваем в cyan, добавляем
   квадратную рамку с радиусом — узнаваемый стиль сайта. */
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border: 1px solid rgba(0, 200, 255, 0.40) !important;
  border-radius: 10px !important;
  background: rgba(0, 200, 255, 0.08) !important;
  color: #00C8FF !important;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
  padding: 0 !important;
}
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button:hover,
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button:focus{
  background: rgba(0, 200, 255, 0.18) !important;
  border-color: #00C8FF !important;
  transform: translateY(-1px);
}
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button svg{
  width: 20px !important;
  height: 16px !important;
}
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button svg rect{
  fill: #00C8FF !important;
}

/* активное (открытое) состояние — заливка cyan */
body.rtmegamenu-open .rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button,
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button[aria-expanded="true"]{
  background: #00C8FF !important;
  border-color: #00C8FF !important;
}
body.rtmegamenu-open .rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button svg rect,
.rtmega-menu-mobile-button-wrapper .rtmega-menu-mobile-button[aria-expanded="true"] svg rect{
  fill: #070D1A !important;
}

/* плавный scroll для якорей #tariffs / #domains / #sites */
html{ scroll-behavior: smooth; }

/* ===== STEP VISUAL — image styling (30.06.2026) =====
   Реальные mockup-картинки в step-карточках (Готовые решения /
   Индивидуальная разработка). Прозрачный PNG, нужен drop-shadow
   как у hero и адаптив. */
.eh-bs-native .eh-bs-step-visual{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.eh-bs-native .eh-bs-step-visual .elementor-widget-image{
  width: 100% !important;
  text-align: center !important;
}
.eh-bs-native .eh-bs-step-visual .elementor-widget-container{
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}
.eh-bs-native .eh-bs-step-visual img{
  width: 100% !important;
  max-width: 560px !important;
  height: auto !important;
  display: block;
  margin: 0 auto;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  filter: drop-shadow(0 22px 56px rgba(0, 200, 255, 0.18))
          drop-shadow(0 8px 24px rgba(138, 61, 255, 0.14));
  transition: transform 0.5s ease;
}
.eh-bs-native .eh-bs-step-visual img:hover{
  transform: translateY(-4px) scale(1.01);
}
@media (max-width: 1199px){
  .eh-bs-native .eh-bs-step-visual img{ max-width: 480px !important; }
}
@media (max-width: 900px){
  .eh-bs-native .eh-bs-step-visual img{
    max-width: 100% !important;
    filter: drop-shadow(0 14px 36px rgba(0, 200, 255, 0.18));
  }
}

/* ===== DOMAIN INPUT — иконка + текст в одну строку на мобиле (30.06.2026) =====
   На <=767px Elementor оборачивал виджеты — иконка вставала над текстом.
   Принуждаем row + nowrap, ужимаем шрифт, текст с ellipsis если не лезет. */
.eh-dom-native .eh-dom-input{
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
}
.eh-dom-native .eh-dom-input > .elementor-widget,
.eh-dom-native .eh-dom-input > .elementor-element{
  width: auto !important;
}
.eh-dom-native .eh-dom-input > .elementor-widget-icon{
  flex: 0 0 auto !important;
}
.eh-dom-native .eh-dom-input > .elementor-widget-heading{
  flex: 1 1 0 !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.eh-dom-native .eh-dom-input .elementor-widget-icon .elementor-icon-wrapper{
  display: flex !important;
  align-items: center !important;
}
.eh-dom-native .eh-dom-input .elementor-widget-heading .elementor-heading-title{
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin: 0 !important;
}

@media (max-width: 767px){
  .eh-dom-native .eh-dom-input{
    padding-left: 16px !important;
    padding-right: 16px !important;
    gap: 8px !important;
  }
  .eh-dom-native .eh-dom-input .elementor-widget-heading .elementor-heading-title{
    font-size: 14px !important;
    line-height: 1.2 !important;
  }
  .eh-dom-native .eh-dom-input .elementor-widget-icon .elementor-icon{
    font-size: 16px !important;
  }
  .eh-dom-native .eh-dom-input .elementor-widget-icon svg{
    width: 16px !important;
    height: 16px !important;
  }
}
@media (max-width: 380px){
  .eh-dom-native .eh-dom-input .elementor-widget-heading .elementor-heading-title{
    font-size: 13px !important;
  }
}

/* ===================================================================
   PROMO BLOCK — SEO/GEO/AI/Реклама/Соцсети (30.06.2026)
   Тёмная неоновая секция с placeholders для иконок и визуала.
   =================================================================== */

/* === ROOT — bg + radial glows === */
.eh-promo-native{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(900px 520px at 12% 18%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 88% 38%, rgba(139, 66, 255, 0.12) 0%, rgba(139, 66, 255, 0) 60%),
    radial-gradient(800px 560px at 50% 100%, rgba(34, 223, 251, 0.08) 0%, rgba(34, 223, 251, 0) 65%);
  overflow: hidden;
  isolation: isolate;
}
.eh-promo-native > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* === HERO === */
.eh-promo-native .eh-promo-hero{
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.eh-promo-native .eh-promo-hero-text,
.eh-promo-native .eh-promo-hero-visual{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

.eh-promo-native .eh-promo-hero-title .elementor-heading-title{
  font-size: 58px;
  line-height: 1.08;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -0.01em;
  margin: 0;
}
.eh-promo-native .eh-promo-w-cyan{
  background: linear-gradient(135deg, #22DFFB 0%, #4FA9FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.eh-promo-native .eh-promo-w-purple{
  background: linear-gradient(135deg, #B27BFF 0%, #8B42FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.eh-promo-native .eh-promo-dot{
  color: #FFFFFF;
  opacity: 0.85;
}
.eh-promo-native .eh-promo-hero-lead p{
  font-size: 19px;
  line-height: 1.55;
  color: #C9D0E0;
  margin: 0;
  max-width: 460px;
}

/* === HERO VISUAL PLACEHOLDER === */
.eh-promo-native .eh-promo-hero-visual{
  position: relative;
}
.eh-promo-native .hero-visual-placeholder{
  width: 100% !important;
  max-width: 520px !important;
  min-height: 360px !important;
  border-radius: 24px;
  background: rgba(7, 17, 43, 0.6);
  border: 1px dashed rgba(34, 223, 251, 0.25);
  box-shadow:
    0 30px 80px rgba(34, 223, 251, 0.16),
    0 14px 40px rgba(139, 66, 255, 0.14),
    inset 0 0 80px rgba(139, 66, 255, 0.05);
  position: relative;
  overflow: hidden;
}
.eh-promo-native .hero-visual-placeholder::before{
  content: 'ИЗОБРАЖЕНИЕ';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  letter-spacing: 0.2em;
  color: rgba(201, 208, 224, 0.35);
  font-weight: 600;
  pointer-events: none;
}

/* === SECTION TITLE — "Что делаем" / "На каких площадках" === */
.eh-promo-native .eh-promo-st-row{
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.eh-promo-native .eh-promo-st-line{
  flex: 1 1 0 !important;
  min-height: 1px !important;
  height: 1px !important;
  border: 0 !important;
  padding: 0 !important;
}
.eh-promo-native .eh-promo-st-line--left{
  background: linear-gradient(90deg, rgba(34, 223, 251, 0) 0%, rgba(34, 223, 251, 0.55) 60%, rgba(139, 66, 255, 0.85) 100%);
}
.eh-promo-native .eh-promo-st-line--right{
  background: linear-gradient(90deg, rgba(139, 66, 255, 0.85) 0%, rgba(34, 223, 251, 0.55) 40%, rgba(34, 223, 251, 0) 100%);
}
.eh-promo-native .eh-promo-st-title{
  flex: 0 0 auto !important;
}
.eh-promo-native .eh-promo-st-title .elementor-heading-title{
  font-size: 30px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  padding: 0 22px;
  white-space: nowrap;
}

/* === SERVICES === */
.eh-promo-native .eh-promo-services{
  width: 100%;
}
.eh-promo-native .eh-promo-service{
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  padding: 24px 0 !important;
  position: relative;
}
.eh-promo-native .eh-promo-service + .eh-promo-service{
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.eh-promo-native .service-icon-placeholder{
  flex: 0 0 120px !important;
  width: 120px !important;
  height: 120px !important;
  min-height: 120px !important;
  border-radius: 22px;
  background: linear-gradient(160deg, rgba(7, 17, 43, 0.95) 0%, rgba(3, 11, 28, 0.95) 100%);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow:
    inset 0 0 40px rgba(34, 223, 251, 0.08),
    0 14px 36px rgba(0, 0, 0, 0.35);
  position: relative;
  overflow: hidden;
}
.eh-promo-native .service-icon-placeholder::before{
  content: '';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(201, 208, 224, 0.25);
  font-size: 11px;
  letter-spacing: 0.18em;
  font-weight: 600;
  text-transform: uppercase;
  pointer-events: none;
}
.eh-promo-native .service-icon-placeholder.service-search::before{ content: 'SEARCH'; }
.eh-promo-native .service-icon-placeholder.service-target::before{ content: 'TARGET'; }
.eh-promo-native .service-icon-placeholder.service-content::before{ content: 'CONTENT'; }

.eh-promo-native .eh-promo-service-text{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-promo-native .eh-promo-service-title .elementor-heading-title{
  font-size: 26px;
  line-height: 1.25;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
}
.eh-promo-native .eh-promo-service-body p{
  font-size: 17px;
  line-height: 1.55;
  color: #C9D0E0;
  margin: 0;
}

/* === PLATFORM CARDS === */
.eh-promo-native .eh-promo-cards{
  flex-wrap: nowrap !important;
  align-items: stretch !important;
}
.eh-promo-native .eh-promo-card{
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 26px 22px !important;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(7, 17, 43, 0.85) 0%, rgba(3, 11, 28, 0.85) 100%);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow:
    inset 0 0 60px rgba(34, 223, 251, 0.06),
    0 18px 50px rgba(0, 0, 0, 0.40);
  align-items: center !important;
}
.eh-promo-native .platform-icon-placeholder{
  width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  border-radius: 16px;
  background: rgba(3, 11, 28, 0.6);
  border: 1px dashed rgba(139, 66, 255, 0.30);
  position: relative;
  overflow: hidden;
  margin-bottom: 4px;
}
.eh-promo-native .platform-icon-placeholder::before{
  content: '';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(201, 208, 224, 0.32);
  font-size: 10px;
  letter-spacing: 0.16em;
  font-weight: 700;
  pointer-events: none;
}
.eh-promo-native .platform-icon-placeholder.platform-search::before{ content: '🔍'; font-size: 28px; opacity: 0.35; }
.eh-promo-native .platform-icon-placeholder.platform-ai::before{ content: 'AI'; font-size: 18px; opacity: 0.55; color: rgba(178, 123, 255, 0.55); }
.eh-promo-native .platform-icon-placeholder.platform-social::before{ content: '👥'; font-size: 24px; opacity: 0.35; }
.eh-promo-native .platform-icon-placeholder.platform-ads::before{ content: '📢'; font-size: 24px; opacity: 0.35; }

.eh-promo-native .eh-promo-card-title .elementor-heading-title{
  font-size: 19px;
  font-weight: 600;
  color: #FFFFFF;
  margin: 0;
  text-align: center;
}
.eh-promo-native .eh-promo-pills{
  width: 100%;
  align-items: stretch !important;
}
.eh-promo-native .eh-promo-pill{
  flex-wrap: nowrap !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 0 12px !important;
  border-radius: 12px;
  background: rgba(3, 11, 28, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.10);
  width: 100%;
}
.eh-promo-native .eh-promo-pill-ic{
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  border-radius: 6px;
  background: rgba(34, 223, 251, 0.08);
  border: 1px dashed rgba(34, 223, 251, 0.25);
}
.eh-promo-native .eh-promo-pill-text .elementor-heading-title{
  font-size: 15px;
  font-weight: 500;
  color: #E6ECF8;
  margin: 0;
  line-height: 1;
}

/* === CTA === */
.eh-promo-native .eh-promo-cta-row{
  width: 100% !important;
  align-items: center !important;
}
.eh-promo-native .eh-promo-cta .elementor-button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 18px 70px;
  background: linear-gradient(135deg, #22DFFB 0%, #6FE7FE 100%);
  color: #03152A;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.01em;
  border: 0;
  border-radius: 12px;
  box-shadow:
    0 14px 40px rgba(34, 223, 251, 0.32),
    0 0 0 1px rgba(34, 223, 251, 0.20);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.eh-promo-native .eh-promo-cta .elementor-button:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow:
    0 20px 50px rgba(34, 223, 251, 0.45),
    0 0 0 1px rgba(34, 223, 251, 0.35);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px){
  .eh-promo-native .eh-promo-hero-title .elementor-heading-title{ font-size: 44px; }
  .eh-promo-native .eh-promo-hero-lead p{ font-size: 17px; }
  .eh-promo-native .hero-visual-placeholder{ max-width: 440px !important; min-height: 320px !important; }
  .eh-promo-native .eh-promo-st-title .elementor-heading-title{ font-size: 26px; padding: 0 18px; }
  .eh-promo-native .eh-promo-service-title .elementor-heading-title{ font-size: 22px; }
  .eh-promo-native .eh-promo-service-body p{ font-size: 16px; }
  /* Cards 2x2 на tablet */
  .eh-promo-native .eh-promo-cards{
    flex-wrap: wrap !important;
    gap: 18px !important;
  }
  .eh-promo-native .eh-promo-cards .eh-promo-card{
    flex: 1 1 calc(50% - 9px) !important;
    max-width: calc(50% - 9px) !important;
  }
}

@media (max-width: 767px){
  /* Hero — колонкой */
  .eh-promo-native .eh-promo-hero{
    flex-direction: column !important;
    gap: 32px !important;
  }
  .eh-promo-native .eh-promo-hero-text,
  .eh-promo-native .eh-promo-hero-visual{
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .eh-promo-native .eh-promo-hero-title .elementor-heading-title{
    font-size: 34px;
    line-height: 1.15;
  }
  .eh-promo-native .eh-promo-hero-lead p{
    font-size: 16px;
    max-width: 100%;
  }
  .eh-promo-native .hero-visual-placeholder{
    max-width: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10;
  }

  /* Section titles — линии короче, не за экран */
  .eh-promo-native .eh-promo-st-title .elementor-heading-title{
    font-size: 22px;
    padding: 0 14px;
    white-space: normal;
    text-align: center;
  }
  .eh-promo-native .eh-promo-st-row{ gap: 10px !important; }

  /* Services — иконка слева, текст справа компактно */
  .eh-promo-native .eh-promo-service{
    gap: 18px !important;
    padding: 20px 0 !important;
  }
  .eh-promo-native .service-icon-placeholder{
    flex: 0 0 90px !important;
    width: 90px !important;
    height: 90px !important;
    min-height: 90px !important;
    border-radius: 18px;
  }
  .eh-promo-native .eh-promo-service-title .elementor-heading-title{
    font-size: 20px;
    line-height: 1.25;
  }
  .eh-promo-native .eh-promo-service-body p{
    font-size: 15px;
    line-height: 1.5;
  }

  /* Cards — 1 в колонку */
  .eh-promo-native .eh-promo-cards{
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
  }
  .eh-promo-native .eh-promo-cards .eh-promo-card{
    flex: 1 1 100% !important;
    max-width: 100% !important;
    padding: 22px 18px !important;
  }
  .eh-promo-native .platform-icon-placeholder{
    width: 64px !important;
    height: 64px !important;
    min-height: 64px !important;
  }
  .eh-promo-native .eh-promo-pill{
    min-height: 42px !important;
  }
  .eh-promo-native .eh-promo-pill-text .elementor-heading-title{
    font-size: 14px;
  }

  /* CTA full-width */
  .eh-promo-native .eh-promo-cta .elementor-button{
    width: 100%;
    max-width: 320px;
    padding: 16px 24px;
    font-size: 17px;
  }
}

@media (max-width: 480px){
  .eh-promo-native .eh-promo-hero-title .elementor-heading-title{
    font-size: 30px;
  }
  .eh-promo-native .service-icon-placeholder{
    flex: 0 0 72px !important;
    width: 72px !important;
    height: 72px !important;
    min-height: 72px !important;
    border-radius: 14px;
  }
  .eh-promo-native .eh-promo-service{ gap: 14px !important; }
  .eh-promo-native .eh-promo-service-title .elementor-heading-title{ font-size: 18px; }
  .eh-promo-native .eh-promo-service-body p{ font-size: 14px; }
}

/* ===== PILLS — со SVG логотипами (30.06.2026) =====
   После того как в pill-ic вложен Image widget c SVG логотипом,
   убираем placeholder-стилистику (dashed border / cyan tint)
   и центрируем SVG внутри 24px квадрата. */
.eh-promo-native .eh-promo-pill-ic{
  background: transparent !important;
  border: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.eh-promo-native .eh-promo-pill-ic .elementor-widget-image,
.eh-promo-native .eh-promo-pill-ic .elementor-widget-container{
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
.eh-promo-native .eh-promo-pill-ic img,
.eh-promo-native .eh-promo-pill-ic svg{
  width: 22px !important;
  height: 22px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  object-fit: contain !important;
  display: block !important;
}
@media (max-width: 480px){
  .eh-promo-native .eh-promo-pill-ic{
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
  }
  .eh-promo-native .eh-promo-pill-ic img,
  .eh-promo-native .eh-promo-pill-ic svg{
    width: 20px !important;
    height: 20px !important;
  }
}

/* ===== PROMO HERO — реальная картинка вместо placeholder (30.06.2026) ===== */
.eh-promo-native .hero-visual-placeholder.hero-visual-filled{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.eh-promo-native .hero-visual-placeholder.hero-visual-filled::before{
  content: none !important;
  display: none !important;
}
.eh-promo-native .eh-promo-hero-img{
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}
.eh-promo-native .eh-promo-hero-img .elementor-widget-container{
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}
.eh-promo-native .eh-promo-hero-img img{
  width: 100% !important;
  max-width: 560px !important;
  height: auto !important;
  display: block;
  margin: 0 auto;
  background: transparent;
  filter:
    drop-shadow(0 30px 70px rgba(34, 223, 251, 0.22))
    drop-shadow(0 14px 40px rgba(139, 66, 255, 0.18));
  transition: transform 0.5s ease;
}
.eh-promo-native .eh-promo-hero-img img:hover{
  transform: translateY(-4px) scale(1.01);
}
@media (max-width: 1024px){
  .eh-promo-native .eh-promo-hero-img img{ max-width: 480px !important; }
}
@media (max-width: 767px){
  .eh-promo-native .eh-promo-hero-img img{
    max-width: 100% !important;
    filter: drop-shadow(0 18px 44px rgba(34, 223, 251, 0.20));
  }
}

/* ===================================================================
   BRAND/NAMING SECTION — Нейминг и бренд (30.06.2026)
   Тёмная premium-секция с placeholder-блоками для иконок.
   =================================================================== */
.eh-brand-native{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(900px 540px at 8% 12%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(800px 520px at 92% 30%, rgba(154, 77, 255, 0.14) 0%, rgba(154, 77, 255, 0) 60%),
    radial-gradient(900px 600px at 50% 110%, rgba(75, 124, 255, 0.10) 0%, rgba(75, 124, 255, 0) 65%);
  overflow: hidden;
  isolation: isolate;
}
.eh-brand-native > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* === HERO === */
.eh-brand-native .eh-brand-hero{
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.eh-brand-native .eh-brand-hero-text{
  flex: 1 1 48% !important;
  min-width: 0 !important;
}
.eh-brand-native .eh-brand-hero-visual{
  flex: 1 1 52% !important;
  min-width: 0 !important;
  position: relative;
}

/* Label "Нейминг и бренд" + gradient line */
.eh-brand-native .eh-brand-label-row{
  flex-wrap: nowrap !important;
  align-items: center !important;
  padding: 0 !important;
}
.eh-brand-native .eh-brand-label .elementor-heading-title{
  display: inline-block;
  font-size: 21px;
  font-weight: 600;
  color: #B27BFF;
  background: linear-gradient(135deg, #4FA9FF 0%, #B27BFF 60%, #9A4DFF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  margin: 0;
  line-height: 1;
  white-space: nowrap;
}
.eh-brand-native .eh-brand-label-line{
  flex: 1 1 0 !important;
  height: 1px !important;
  min-height: 1px !important;
  background: linear-gradient(90deg, rgba(34, 223, 251, 0.55) 0%, rgba(154, 77, 255, 0.85) 100%);
  border: 0 !important;
  padding: 0 !important;
}

/* H1 title — 2 lines, 2nd line gradient */
.eh-brand-native .eh-brand-hero-title .elementor-heading-title{
  font-size: 60px;
  line-height: 1.08;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -0.01em;
  margin: 0;
}
.eh-brand-native .eh-brand-grad-text{
  background: linear-gradient(135deg, #22DFFB 0%, #4B7CFF 45%, #9A4DFF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* Sub heading */
.eh-brand-native .eh-brand-hero-sub .elementor-heading-title{
  font-size: 23px;
  line-height: 1.4;
  font-weight: 500;
  color: #FFFFFF;
  margin: 0;
}

/* Paragraphs */
.eh-brand-native .eh-brand-hero-p p{
  font-size: 19px;
  line-height: 1.55;
  color: #C7CDDA;
  margin: 0;
  max-width: 460px;
}

/* === HERO VISUAL PLACEHOLDER === */
.eh-brand-native .brand-hero-visual-placeholder{
  width: 100% !important;
  max-width: 560px !important;
  min-height: 420px !important;
  border-radius: 26px;
  background: rgba(7, 17, 43, 0.55);
  border: 1px dashed rgba(34, 223, 251, 0.22);
  box-shadow:
    0 36px 90px rgba(34, 223, 251, 0.18),
    0 16px 50px rgba(154, 77, 255, 0.18),
    inset 0 0 100px rgba(154, 77, 255, 0.06);
  position: relative;
  overflow: hidden;
  margin-left: auto;
}
.eh-brand-native .brand-hero-visual-placeholder::before{
  content: 'BRAND VISUAL';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  letter-spacing: 0.22em;
  color: rgba(199, 205, 218, 0.35);
  font-weight: 700;
  pointer-events: none;
}
.eh-brand-native .brand-hero-visual-placeholder.brand-hero-filled{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.eh-brand-native .brand-hero-visual-placeholder.brand-hero-filled::before{
  content: none !important;
  display: none !important;
}
.eh-brand-native .brand-hero-visual-placeholder img{
  width: 100% !important;
  max-width: 560px !important;
  height: auto !important;
  display: block;
  filter:
    drop-shadow(0 36px 80px rgba(154, 77, 255, 0.30))
    drop-shadow(0 14px 40px rgba(34, 223, 251, 0.22));
  transition: transform 0.5s ease;
}

/* === PHILOSOPHY CARD === */
.eh-brand-native .eh-brand-philosophy{
  flex-wrap: nowrap !important;
  align-items: center !important;
  border-radius: 22px;
  background: rgba(5, 14, 36, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow:
    inset 0 0 80px rgba(34, 223, 251, 0.06),
    0 16px 50px rgba(0, 0, 0, 0.40);
}

/* Lightbulb placeholder */
.eh-brand-native .philosophy-icon-placeholder{
  flex: 0 0 124px !important;
  width: 124px !important;
  height: 124px !important;
  min-height: 124px !important;
  border-radius: 24px;
  background: rgba(3, 11, 28, 0.6);
  border: 1px dashed rgba(154, 77, 255, 0.40);
  position: relative;
  overflow: hidden;
}
.eh-brand-native .philosophy-icon-placeholder::before{
  content: '💡';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 44px;
  opacity: 0.4;
  pointer-events: none;
}

/* Phil text */
.eh-brand-native .eh-brand-phil-text{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-brand-native .eh-brand-phil-title .elementor-heading-title{
  font-size: 32px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.1;
}
.eh-brand-native .eh-brand-phil-sub .elementor-heading-title{
  display: inline-block;
  font-size: 19px;
  font-weight: 400;
  color: #C7CDDA;
  margin: 0;
}

/* Benefits row with dividers */
.eh-brand-native .eh-brand-phil-benefits{
  flex: 0 0 auto !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  position: relative;
}
.eh-brand-native .eh-brand-benefit{
  padding: 6px 18px !important;
  min-width: 0 !important;
}
.eh-brand-native .eh-brand-benefit + .eh-brand-benefit{
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}
.eh-brand-native .benefit-icon-placeholder{
  width: 56px !important;
  height: 56px !important;
  min-height: 56px !important;
  border-radius: 14px;
  background: rgba(3, 11, 28, 0.5);
  border: 1px dashed rgba(154, 77, 255, 0.30);
  position: relative;
  overflow: hidden;
}
.eh-brand-native .benefit-icon-placeholder::before{
  content: '';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  opacity: 0.55;
  pointer-events: none;
}
.eh-brand-native .benefit-icon-placeholder.benefit-star::before{ content: '⭐'; }
.eh-brand-native .benefit-icon-placeholder.benefit-fingerprint::before{ content: '👆'; }
.eh-brand-native .benefit-icon-placeholder.benefit-shield::before{ content: '🛡'; }

.eh-brand-native .eh-brand-benefit-name .elementor-heading-title{
  font-size: 15px;
  font-weight: 500;
  color: #C7CDDA;
  margin: 0;
  text-align: center;
  line-height: 1.2;
}

/* === "Что мы делаем" === */
.eh-brand-native .eh-brand-st-title .elementor-heading-title{
  font-size: 36px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 50px 0 0 0;
  text-align: left;
  line-height: 1.1;
}

/* === WORKS LIST === */
.eh-brand-native .eh-brand-works{
  gap: 16px !important;
}
.eh-brand-native .eh-brand-work{
  flex-wrap: nowrap !important;
  align-items: center !important;
  border-radius: 18px;
  background: rgba(5, 14, 36, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow:
    inset 0 0 60px rgba(34, 223, 251, 0.05),
    0 14px 38px rgba(0, 0, 0, 0.35);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.eh-brand-native .eh-brand-work:hover{
  border-color: rgba(34, 223, 251, 0.40);
  box-shadow:
    inset 0 0 70px rgba(34, 223, 251, 0.08),
    0 20px 50px rgba(0, 0, 0, 0.45);
  transform: translateY(-2px);
}
.eh-brand-native .work-icon-placeholder{
  flex: 0 0 110px !important;
  width: 110px !important;
  height: 110px !important;
  min-height: 110px !important;
  border-radius: 18px;
  background: rgba(3, 11, 28, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: inset 0 0 36px rgba(34, 223, 251, 0.08);
  position: relative;
  overflow: hidden;
}
.eh-brand-native .work-icon-placeholder::before{
  content: '';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  opacity: 0.45;
  pointer-events: none;
}
.eh-brand-native .work-icon-placeholder.work-search::before{ content: '🔍'; }
.eh-brand-native .work-icon-placeholder.work-shield::before{ content: '🛡'; }
.eh-brand-native .work-icon-placeholder.work-document::before{ content: '📄'; }

.eh-brand-native .eh-brand-work-text{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-brand-native .eh-brand-work-title .elementor-heading-title{
  font-size: 25px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.25;
}
.eh-brand-native .eh-brand-work-body p{
  font-size: 19px;
  line-height: 1.45;
  color: #C7CDDA;
  margin: 0;
}

/* === CTA === */
.eh-brand-native .eh-brand-cta-row{
  width: 100% !important;
  align-items: center !important;
  margin-top: 12px;
}
.eh-brand-native .eh-brand-cta .elementor-button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 18px 70px;
  background: linear-gradient(135deg, #22DFFB 0%, #18C7EA 100%);
  color: #03152A;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.01em;
  border: 0;
  border-radius: 12px;
  box-shadow:
    0 14px 40px rgba(34, 223, 251, 0.32),
    0 0 0 1px rgba(34, 223, 251, 0.20);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.eh-brand-native .eh-brand-cta .elementor-button:hover{
  transform: translateY(-2px) scale(1.01);
  box-shadow:
    0 24px 60px rgba(34, 223, 251, 0.45),
    0 0 0 1px rgba(34, 223, 251, 0.35);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1100px){
  .eh-brand-native .eh-brand-hero-title .elementor-heading-title{ font-size: 48px; }
  .eh-brand-native .brand-hero-visual-placeholder{ max-width: 460px !important; min-height: 360px !important; }
  .eh-brand-native .eh-brand-philosophy{ padding: 26px 28px !important; gap: 24px !important; }
  .eh-brand-native .philosophy-icon-placeholder{
    flex: 0 0 100px !important; width: 100px !important; height: 100px !important; min-height: 100px !important;
  }
  .eh-brand-native .eh-brand-phil-title .elementor-heading-title{ font-size: 28px; }
}

@media (max-width: 900px){
  /* Hero in column */
  .eh-brand-native .eh-brand-hero{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 32px !important;
  }
  .eh-brand-native .eh-brand-hero-text,
  .eh-brand-native .eh-brand-hero-visual{
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .eh-brand-native .eh-brand-hero-title .elementor-heading-title{ font-size: 42px; }
  .eh-brand-native .eh-brand-hero-sub .elementor-heading-title{ font-size: 19px; }
  .eh-brand-native .eh-brand-hero-p p{ font-size: 17px; max-width: 100%; }
  .eh-brand-native .brand-hero-visual-placeholder{
    max-width: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 11;
    margin-left: 0 !important;
  }

  /* Philosophy — стек: иконка, текст, бенефиты */
  .eh-brand-native .eh-brand-philosophy{
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 22px !important;
  }
  .eh-brand-native .eh-brand-phil-text{ text-align: left; }
  .eh-brand-native .eh-brand-phil-benefits{
    width: 100%;
    justify-content: space-between !important;
    gap: 16px !important;
  }
  .eh-brand-native .eh-brand-benefit{
    flex: 1 1 0 !important;
    padding: 4px 10px !important;
  }
  .eh-brand-native .eh-brand-benefit + .eh-brand-benefit{
    border-left: 1px solid rgba(255, 255, 255, 0.12);
  }

  /* Что мы делаем */
  .eh-brand-native .eh-brand-st-title .elementor-heading-title{
    font-size: 30px;
    margin-top: 20px;
  }
}

@media (max-width: 600px){
  .eh-brand-native .eh-brand-label .elementor-heading-title{ font-size: 17px; }
  .eh-brand-native .eh-brand-hero-title .elementor-heading-title{
    font-size: 34px; line-height: 1.15;
  }
  .eh-brand-native .eh-brand-hero-sub .elementor-heading-title{ font-size: 17px; }
  .eh-brand-native .eh-brand-hero-p p{ font-size: 16px; }

  .eh-brand-native .eh-brand-philosophy{ padding: 22px 18px !important; }
  .eh-brand-native .philosophy-icon-placeholder{
    flex: 0 0 84px !important; width: 84px !important; height: 84px !important; min-height: 84px !important;
    border-radius: 18px;
  }
  .eh-brand-native .philosophy-icon-placeholder::before{ font-size: 32px; }
  .eh-brand-native .eh-brand-phil-title .elementor-heading-title{ font-size: 24px; }
  .eh-brand-native .eh-brand-phil-sub .elementor-heading-title{ font-size: 16px; }

  /* benefits — оставить горизонтально 3-в-ряд но компактно */
  .eh-brand-native .benefit-icon-placeholder{
    width: 46px !important; height: 46px !important; min-height: 46px !important;
    border-radius: 12px;
  }
  .eh-brand-native .benefit-icon-placeholder::before{ font-size: 20px; }
  .eh-brand-native .eh-brand-benefit-name .elementor-heading-title{ font-size: 13px; }

  /* Works — компактнее */
  .eh-brand-native .eh-brand-work{
    padding: 18px 16px !important;
    gap: 16px !important;
  }
  .eh-brand-native .work-icon-placeholder{
    flex: 0 0 82px !important; width: 82px !important; height: 82px !important; min-height: 82px !important;
    border-radius: 14px;
  }
  .eh-brand-native .work-icon-placeholder::before{ font-size: 28px; }
  .eh-brand-native .eh-brand-work-title .elementor-heading-title{
    font-size: 20px; line-height: 1.25;
  }
  .eh-brand-native .eh-brand-work-body p{ font-size: 15px; line-height: 1.5; }

  /* CTA */
  .eh-brand-native .eh-brand-cta .elementor-button{
    width: 100%; max-width: 320px; padding: 16px 24px;
    font-size: 17px;
  }
}

/* ===== PHILOSOPHY — фикс «не вмещаются» 3 бенефита (30.06.2026) =====
   Сжимаем gap/padding между бенефитами, форсим nowrap на названиях,
   уменьшаем left-padding на иконке + правый паддинг card-а. */
.eh-brand-native .eh-brand-philosophy{
  padding-left: 28px !important;
  padding-right: 28px !important;
  gap: 22px !important;
}
.eh-brand-native .eh-brand-phil-benefits{
  gap: 14px !important;
  flex: 0 0 auto !important;
}
.eh-brand-native .eh-brand-benefit{
  padding: 4px 12px !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
}
.eh-brand-native .eh-brand-benefit-name .elementor-heading-title{
  white-space: nowrap !important;
  font-size: 14px;
}

/* tablet — ещё компактнее */
@media (max-width: 1199px){
  .eh-brand-native .eh-brand-philosophy{
    padding-left: 24px !important;
    padding-right: 24px !important;
    gap: 18px !important;
  }
  .eh-brand-native .eh-brand-phil-benefits{ gap: 10px !important; }
  .eh-brand-native .eh-brand-benefit{ padding: 4px 8px !important; }
  .eh-brand-native .benefit-icon-placeholder{
    width: 48px !important; height: 48px !important; min-height: 48px !important;
    border-radius: 12px;
  }
  .eh-brand-native .benefit-icon-placeholder::before{ font-size: 20px; }
  .eh-brand-native .eh-brand-benefit-name .elementor-heading-title{ font-size: 13px; }
}

/* при колоночной раскладке (<=900px) бенефиты сами получат больше места */
@media (max-width: 900px){
  .eh-brand-native .eh-brand-phil-benefits{
    gap: 16px !important;
    justify-content: space-between !important;
  }
  .eh-brand-native .eh-brand-benefit{
    flex: 1 1 0 !important;
    padding: 4px 10px !important;
  }
}

/* ===== PLACEHOLDERS — унифицированная подпись "Изображение" (30.06.2026) =====
   Перекрываем все эмодзи / SEARCH-TARGET / AI хинты на короткую
   текстовую заглушку — её и в Elementor видно, и нейтрально смотрится. */

/* Brand section */
.eh-brand-native .philosophy-icon-placeholder::before,
.eh-brand-native .benefit-icon-placeholder::before,
.eh-brand-native .benefit-icon-placeholder.benefit-star::before,
.eh-brand-native .benefit-icon-placeholder.benefit-fingerprint::before,
.eh-brand-native .benefit-icon-placeholder.benefit-shield::before,
.eh-brand-native .work-icon-placeholder::before,
.eh-brand-native .work-icon-placeholder.work-search::before,
.eh-brand-native .work-icon-placeholder.work-shield::before,
.eh-brand-native .work-icon-placeholder.work-document::before,
/* Promo section */
.eh-promo-native .service-icon-placeholder::before,
.eh-promo-native .service-icon-placeholder.service-search::before,
.eh-promo-native .service-icon-placeholder.service-target::before,
.eh-promo-native .service-icon-placeholder.service-content::before,
.eh-promo-native .platform-icon-placeholder::before,
.eh-promo-native .platform-icon-placeholder.platform-search::before,
.eh-promo-native .platform-icon-placeholder.platform-ai::before,
.eh-promo-native .platform-icon-placeholder.platform-social::before,
.eh-promo-native .platform-icon-placeholder.platform-ads::before{
  content: 'Изображение' !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  color: rgba(199, 205, 218, 0.40) !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 4px !important;
  line-height: 1.2 !important;
}

/* Маленькие квадратики (benefit/pill-ic) — ужать ещё, чтоб поместилось */
.eh-brand-native .benefit-icon-placeholder::before{
  font-size: 8px !important;
  letter-spacing: 0.10em !important;
}
.eh-promo-native .platform-icon-placeholder::before{
  font-size: 8px !important;
  letter-spacing: 0.12em !important;
}

/* ===== PHILOSOPHY — фикс overflow дочерних (30.06.2026 v2) =====
   Elementor выставляет width:100% всем детям e-flex. Из-за этого
   3 блока (icon, text, benefits) — каждый 100% — overflow вправо.
   Override: width:auto, проставленные flex-basis. */
.eh-brand-native .eh-brand-philosophy{
  overflow: hidden !important;
}
.eh-brand-native .eh-brand-philosophy > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}
.eh-brand-native .eh-brand-philosophy > .philosophy-icon-placeholder{
  flex: 0 0 124px !important;
}
.eh-brand-native .eh-brand-philosophy > .eh-brand-phil-text{
  flex: 1 1 0% !important;
  min-width: 0 !important;
}
.eh-brand-native .eh-brand-philosophy > .eh-brand-phil-benefits{
  flex: 0 0 auto !important;
}
/* benefits row inner — тоже width auto */
.eh-brand-native .eh-brand-phil-benefits > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
  flex: 0 0 auto !important;
}

@media (max-width: 1199px){
  .eh-brand-native .eh-brand-philosophy > .philosophy-icon-placeholder{
    flex: 0 0 100px !important;
  }
}
@media (max-width: 900px){
  .eh-brand-native .eh-brand-philosophy > .eh-brand-phil-benefits{
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .eh-brand-native .eh-brand-phil-benefits > .elementor-element{
    flex: 1 1 0 !important;
  }
}

/* ===== PHILOSOPHY — растягиваем 3 бенефита по ширине (30.06.2026 v3) =====
   Раньше были слишком узкие. Теперь: text col не растёт (по контенту),
   benefits-row забирает оставшееся место, 3 пункта распределяются равномерно. */
.eh-brand-native .eh-brand-philosophy > .eh-brand-phil-text{
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: 320px !important;
}
.eh-brand-native .eh-brand-philosophy > .eh-brand-phil-benefits{
  flex: 1 1 auto !important;
  width: auto !important;
  justify-content: space-around !important;
  gap: 16px !important;
  padding-left: 8px !important;
}
.eh-brand-native .eh-brand-phil-benefits > .eh-brand-benefit{
  flex: 1 1 0 !important;
  max-width: 160px !important;
  padding: 6px 14px !important;
  gap: 12px !important;
}
/* Большие иконки и крупнее текст — есть место */
.eh-brand-native .eh-brand-phil-benefits .benefit-icon-placeholder{
  width: 64px !important;
  height: 64px !important;
  min-height: 64px !important;
  border-radius: 16px;
}
.eh-brand-native .eh-brand-phil-benefits .benefit-icon-placeholder::before{
  font-size: 9px !important;
  letter-spacing: 0.14em !important;
}
.eh-brand-native .eh-brand-phil-benefits .eh-brand-benefit-name .elementor-heading-title{
  font-size: 15px !important;
  font-weight: 500;
}

@media (max-width: 1199px){
  .eh-brand-native .eh-brand-philosophy > .eh-brand-phil-text{
    max-width: 260px !important;
  }
  .eh-brand-native .eh-brand-phil-benefits > .eh-brand-benefit{
    padding: 4px 10px !important;
  }
  .eh-brand-native .eh-brand-phil-benefits .benefit-icon-placeholder{
    width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
  }
  .eh-brand-native .eh-brand-phil-benefits .eh-brand-benefit-name .elementor-heading-title{
    font-size: 14px !important;
  }
}

@media (max-width: 900px){
  /* В колоночной раскладке text col берёт всю ширину */
  .eh-brand-native .eh-brand-philosophy > .eh-brand-phil-text{
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
  .eh-brand-native .eh-brand-philosophy > .eh-brand-phil-benefits{
    width: 100% !important;
    padding-left: 0 !important;
    justify-content: space-between !important;
  }
}

/* ===================================================================
   TECH SECTION — Технологии с фокусом на бизнес-результат (30.06.2026)
   =================================================================== */
.eh-tech-native{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(700px 460px at 88% 12%, rgba(34, 223, 251, 0.14) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 10% 36%, rgba(63, 140, 255, 0.10) 0%, rgba(63, 140, 255, 0) 60%),
    radial-gradient(900px 600px at 50% 100%, rgba(130, 87, 255, 0.08) 0%, rgba(130, 87, 255, 0) 65%);
  overflow: hidden;
  isolation: isolate;
}
.eh-tech-native > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* Override Elementor default width:100% on flex children — same trick as brand section */
.eh-tech-native .eh-tech-hero > .elementor-element,
.eh-tech-native .eh-tech-st-row > .elementor-element,
.eh-tech-native .eh-tech-card > .elementor-element,
.eh-tech-native .eh-tech-result > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}

/* === HERO === */
.eh-tech-native .eh-tech-hero{
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.eh-tech-native .eh-tech-hero > .eh-tech-hero-text{
  flex: 1 1 48% !important;
  min-width: 0 !important;
}
.eh-tech-native .eh-tech-hero > .eh-tech-hero-visual{
  flex: 1 1 52% !important;
  min-width: 0 !important;
}

.eh-tech-native .eh-tech-hero-title .elementor-heading-title{
  font-size: 62px;
  line-height: 1.08;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -0.01em;
  margin: 0;
}
.eh-tech-native .eh-tech-grad-text{
  background: linear-gradient(135deg, #22DFFB 0%, #3F8CFF 50%, #8257FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.eh-tech-native .eh-tech-hero-lead p{
  font-size: 20px;
  line-height: 1.55;
  color: #C8D0E0;
  margin: 0;
  max-width: 460px;
}

/* === HERO VISUAL PLACEHOLDER === */
.eh-tech-native .tech-hero-visual-placeholder{
  width: 100% !important;
  max-width: 560px !important;
  min-height: 390px !important;
  border-radius: 24px;
  background: rgba(7, 26, 54, 0.55);
  border: 1px dashed rgba(34, 223, 251, 0.22);
  box-shadow:
    0 36px 90px rgba(34, 223, 251, 0.18),
    0 16px 50px rgba(63, 140, 255, 0.18),
    inset 0 0 100px rgba(63, 140, 255, 0.06);
  position: relative;
  overflow: hidden;
  margin-left: auto;
}
.eh-tech-native .tech-hero-visual-placeholder::before{
  content: 'Изображение';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  letter-spacing: 0.20em;
  color: rgba(200, 208, 224, 0.40);
  font-weight: 700;
  text-transform: uppercase;
  pointer-events: none;
}
/* filled state — добавляется через PHP при инжекте картинки */
.eh-tech-native .tech-hero-visual-placeholder.tech-hero-filled{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.eh-tech-native .tech-hero-visual-placeholder.tech-hero-filled::before{
  content: none !important;
  display: none !important;
}
.eh-tech-native .tech-hero-visual-placeholder img{
  width: 100% !important;
  max-width: 560px !important;
  height: auto !important;
  display: block;
  filter:
    drop-shadow(0 36px 80px rgba(63, 140, 255, 0.30))
    drop-shadow(0 14px 40px rgba(34, 223, 251, 0.22));
}

/* === SECTION TITLE с линиями === */
.eh-tech-native .eh-tech-st-row{
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.eh-tech-native .eh-tech-st-line{
  flex: 1 1 0 !important;
  width: auto !important;
  height: 1px !important;
  min-height: 1px !important;
  border: 0 !important;
  padding: 0 !important;
  --container-widget-width: 0 !important;
}
.eh-tech-native .eh-tech-st-line--left{
  background: linear-gradient(90deg, rgba(34, 223, 251, 0) 0%, rgba(63, 140, 255, 0.55) 60%, rgba(34, 223, 251, 0.80) 100%);
}
.eh-tech-native .eh-tech-st-line--right{
  background: linear-gradient(90deg, rgba(34, 223, 251, 0.80) 0%, rgba(63, 140, 255, 0.55) 40%, rgba(34, 223, 251, 0) 100%);
}
.eh-tech-native .eh-tech-st-title{
  flex: 0 0 auto !important;
}
.eh-tech-native .eh-tech-st-title .elementor-heading-title{
  font-size: 32px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  padding: 0 22px;
  white-space: nowrap;
  text-align: center;
}

/* === CARDS === */
.eh-tech-native .eh-tech-cards{
  gap: 20px !important;
}
.eh-tech-native .eh-tech-card{
  flex-wrap: nowrap !important;
  align-items: center !important;
  border-radius: 20px;
  background: rgba(5, 16, 40, 0.72);
  border: 1px solid rgba(80, 140, 255, 0.28);
  box-shadow:
    inset 0 0 30px rgba(34, 223, 251, 0.04),
    0 0 35px rgba(34, 120, 255, 0.08),
    0 16px 40px rgba(0, 0, 0, 0.35);
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.eh-tech-native .eh-tech-card:hover{
  border-color: rgba(34, 223, 251, 0.45);
  transform: translateY(-2px);
  box-shadow:
    inset 0 0 40px rgba(34, 223, 251, 0.07),
    0 0 50px rgba(34, 120, 255, 0.14),
    0 20px 50px rgba(0, 0, 0, 0.45);
}

.eh-tech-native .tech-icon-placeholder{
  flex: 0 0 155px !important;
  width: 155px !important;
  height: 155px !important;
  min-height: 155px !important;
  border-radius: 18px;
  background: linear-gradient(160deg, rgba(8, 26, 56, 0.95) 0%, rgba(4, 14, 32, 0.95) 100%);
  border: 1px solid rgba(80, 140, 255, 0.28);
  box-shadow: inset 0 0 36px rgba(34, 223, 251, 0.08);
  position: relative;
  overflow: hidden;
}
.eh-tech-native .tech-icon-placeholder::before{
  content: 'Изображение';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  letter-spacing: 0.18em;
  color: rgba(200, 208, 224, 0.35);
  font-weight: 600;
  text-transform: uppercase;
  pointer-events: none;
}

.eh-tech-native .eh-tech-card-text{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-tech-native .eh-tech-card-title .elementor-heading-title{
  font-size: 30px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.22;
}
.eh-tech-native .eh-tech-card-body p{
  font-size: 19px;
  line-height: 1.5;
  color: #C8D0E0;
  margin: 0;
}

/* === FINAL CARD === */
.eh-tech-native .eh-tech-result{
  flex-wrap: nowrap !important;
  align-items: center !important;
  border-radius: 22px;
  background: rgba(5, 16, 40, 0.78);
  border: 1px solid rgba(34, 223, 251, 0.25);
  box-shadow:
    inset 0 0 60px rgba(34, 223, 251, 0.08),
    0 0 45px rgba(34, 120, 255, 0.16),
    0 18px 50px rgba(0, 0, 0, 0.40);
}
.eh-tech-native .result-icon-placeholder{
  flex: 0 0 110px !important;
  width: 110px !important;
  height: 110px !important;
  min-height: 110px !important;
  border-radius: 50%;
  background: radial-gradient(120% 120% at 30% 30%, rgba(63, 140, 255, 0.40) 0%, rgba(8, 26, 56, 0.95) 70%);
  border: 1px solid rgba(34, 223, 251, 0.30);
  position: relative;
  overflow: hidden;
}
.eh-tech-native .result-icon-placeholder::before{
  content: 'Изображение';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  letter-spacing: 0.14em;
  color: rgba(200, 208, 224, 0.45);
  font-weight: 700;
  text-transform: uppercase;
  pointer-events: none;
  text-align: center;
  padding: 4px;
}
.eh-tech-native .eh-tech-result-text{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-tech-native .eh-tech-result-title .elementor-heading-title{
  font-size: 36px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.22;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1100px){
  .eh-tech-native .eh-tech-hero-title .elementor-heading-title{ font-size: 48px; }
  .eh-tech-native .tech-hero-visual-placeholder{ max-width: 460px !important; min-height: 330px !important; }
  .eh-tech-native .eh-tech-st-title .elementor-heading-title{ font-size: 27px; padding: 0 18px; }
  .eh-tech-native .tech-icon-placeholder{
    flex: 0 0 120px !important; width: 120px !important; height: 120px !important; min-height: 120px !important;
  }
  .eh-tech-native .eh-tech-card-title .elementor-heading-title{ font-size: 26px; }
  .eh-tech-native .eh-tech-card-body p{ font-size: 17px; }
  .eh-tech-native .eh-tech-result-title .elementor-heading-title{ font-size: 28px; }
}

@media (max-width: 900px){
  /* Hero колонкой */
  .eh-tech-native .eh-tech-hero{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 32px !important;
  }
  .eh-tech-native .eh-tech-hero > .eh-tech-hero-text,
  .eh-tech-native .eh-tech-hero > .eh-tech-hero-visual{
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .eh-tech-native .eh-tech-hero-title .elementor-heading-title{ font-size: 42px; }
  .eh-tech-native .eh-tech-hero-lead p{ font-size: 17px; max-width: 100%; }
  .eh-tech-native .tech-hero-visual-placeholder{
    max-width: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10;
    margin-left: 0 !important;
  }
  .eh-tech-native .eh-tech-st-title .elementor-heading-title{
    white-space: normal;
    text-align: center;
  }
}

@media (max-width: 600px){
  .eh-tech-native .eh-tech-hero-title .elementor-heading-title{ font-size: 34px; line-height: 1.15; }
  .eh-tech-native .eh-tech-hero-lead p{ font-size: 16px; }

  .eh-tech-native .eh-tech-st-title .elementor-heading-title{
    font-size: 22px;
    padding: 0 12px;
  }
  .eh-tech-native .eh-tech-st-row{ gap: 10px !important; }

  /* Cards компактнее */
  .eh-tech-native .eh-tech-card{
    padding: 20px 18px !important;
    gap: 18px !important;
  }
  .eh-tech-native .tech-icon-placeholder{
    flex: 0 0 84px !important; width: 84px !important; height: 84px !important; min-height: 84px !important;
    border-radius: 14px;
  }
  .eh-tech-native .eh-tech-card-title .elementor-heading-title{
    font-size: 21px; line-height: 1.22;
  }
  .eh-tech-native .eh-tech-card-body p{ font-size: 15px; line-height: 1.5; }

  /* Final card — в колонку */
  .eh-tech-native .eh-tech-result{
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 24px 18px !important;
    gap: 18px !important;
  }
  .eh-tech-native .result-icon-placeholder{
    flex: 0 0 78px !important; width: 78px !important; height: 78px !important; min-height: 78px !important;
  }
  .eh-tech-native .eh-tech-result-title .elementor-heading-title{
    font-size: 22px; line-height: 1.25;
  }
}

/* ===================================================================
   CASES SECTION — Кейсы и отзывы клиентов (30.06.2026)
   =================================================================== */
.eh-cases-native{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(900px 520px at 50% 0%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 8% 50%, rgba(63, 140, 255, 0.10) 0%, rgba(63, 140, 255, 0) 60%),
    radial-gradient(700px 480px at 92% 60%, rgba(130, 87, 255, 0.10) 0%, rgba(130, 87, 255, 0) 60%);
  overflow: hidden;
  isolation: isolate;
}
.eh-cases-native > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* Override Elementor default width:100% on flex children */
.eh-cases-native .eh-cases-grid > .elementor-element,
.eh-cases-native .case-card > .elementor-element,
.eh-cases-native .case-review-box > .elementor-element,
.eh-cases-native .case-author > .elementor-element,
.eh-cases-native .case-author-info > .elementor-element,
.eh-cases-native .eh-cases-title-row > .elementor-element,
.eh-cases-native .eh-cases-cta-row > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}

/* === TITLE === */
.eh-cases-native .eh-cases-title-row{
  align-items: center !important;
  text-align: center;
}
.eh-cases-native .eh-cases-title .elementor-heading-title{
  font-size: 46px;
  line-height: 1.15;
  font-weight: 800;
  margin: 0;
  text-align: center;
  letter-spacing: -0.01em;
  color: #FFFFFF;
}
.eh-cases-native .eh-cases-w-white{ color: #FFFFFF; }
.eh-cases-native .eh-cases-w-cyan{ color: #22DFFB; }
.eh-cases-native .eh-cases-w-grad{
  background: linear-gradient(135deg, #22DFFB 0%, #3F8CFF 45%, #8257FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.eh-cases-native .eh-cases-subtitle .elementor-heading-title{
  display: inline-block;
  font-size: 16px;
  color: #C7D0E0;
  margin: 0;
  font-weight: 400;
  text-align: center;
  line-height: 1.4;
}

/* === GRID === */
.eh-cases-native .eh-cases-grid{
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
.eh-cases-native .eh-cases-grid > .case-card{
  flex: 1 1 calc(25% - 12px) !important;
  max-width: calc(25% - 12px) !important;
  min-width: 0 !important;
  width: auto !important;
  --container-widget-width: auto !important;
}

/* === CARD === */
.eh-cases-native .case-card{
  background: rgba(5, 16, 40, 0.78);
  border: 1px solid rgba(34, 223, 251, 0.26);
  border-radius: 10px;
  box-shadow: 0 0 28px rgba(34, 120, 255, 0.10);
  overflow: hidden;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.eh-cases-native .case-card:hover{
  transform: translateY(-4px);
  border-color: rgba(34, 223, 251, 0.45);
  box-shadow: 0 0 40px rgba(34, 223, 251, 0.18), 0 12px 30px rgba(0, 0, 0, 0.4);
}

/* Image placeholder — top, 16:8 */
.eh-cases-native .case-image-placeholder{
  width: 100% !important;
  aspect-ratio: 16 / 8;
  min-height: 0 !important;
  border-radius: 8px;
  background: linear-gradient(160deg, rgba(8, 26, 56, 0.95) 0%, rgba(4, 14, 32, 0.95) 100%);
  border: 1px solid rgba(255, 255, 255, 0.10);
  overflow: hidden;
  position: relative;
}
.eh-cases-native .case-image-placeholder::before{
  content: 'Изображение';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  letter-spacing: 0.16em;
  color: rgba(199, 208, 224, 0.40);
  font-weight: 600;
  text-transform: uppercase;
  pointer-events: none;
}
/* filled state */
.eh-cases-native .case-image-placeholder.case-image-filled{
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
.eh-cases-native .case-image-placeholder.case-image-filled::before{ display: none !important; }
.eh-cases-native .case-image-placeholder img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

/* === CATEGORY BADGE === */
.eh-cases-native .case-category-badge{
  margin-top: 4px;
}
.eh-cases-native .case-category-badge .elementor-heading-title{
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  color: #FFFFFF;
  padding: 4px 8px;
  border-radius: 5px;
  margin: 0;
  letter-spacing: 0.01em;
  line-height: 1.2;
}
.eh-cases-native .case-category-badge.cat-corp .elementor-heading-title{    background: #3F8CFF; }
.eh-cases-native .case-category-badge.cat-shop .elementor-heading-title{    background: #8257FF; }
.eh-cases-native .case-category-badge.cat-seo .elementor-heading-title{     background: #28F5A4; color: #052012; }
.eh-cases-native .case-category-badge.cat-brand .elementor-heading-title{   background: linear-gradient(135deg, #8257FF, #C56BFF); }
.eh-cases-native .case-category-badge.cat-hosting .elementor-heading-title{ background: #22DFFB; color: #052012; }

/* === COMPANY + DESC === */
.eh-cases-native .case-company .elementor-heading-title{
  font-size: 14px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.25;
}
.eh-cases-native .case-description .elementor-heading-title{
  display: block;
  font-size: 12px;
  color: #C7D0E0;
  margin: 0;
  font-weight: 400;
  line-height: 1.35;
}

/* === RESULTS LIST === */
.eh-cases-native .case-results .elementor-widget-container,
.eh-cases-native .case-results ul.case-results-list{
  margin: 0 !important;
  padding: 0 !important;
}
.eh-cases-native .case-results ul.case-results-list{
  list-style: none !important;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.eh-cases-native .case-results ul.case-results-list li{
  position: relative;
  padding-left: 18px;
  font-size: 12px;
  line-height: 1.4;
  color: #DCE3F0;
  margin: 0;
  list-style: none !important;
}
.eh-cases-native .case-results ul.case-results-list li::before{
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  width: 12px;
  height: 8px;
  border-left: 2px solid #28F5A4;
  border-bottom: 2px solid #28F5A4;
  transform: rotate(-45deg);
  border-radius: 1px;
}

/* === REVIEW BOX === */
.eh-cases-native .case-review-box{
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 7px;
  margin-top: auto;
}
.eh-cases-native .case-stars .elementor-heading-title{
  font-size: 13px;
  color: #FFD15C;
  margin: 0;
  line-height: 1;
  letter-spacing: 1px;
}
.eh-cases-native .case-review-text .elementor-heading-title{
  display: block;
  font-size: 11.5px;
  color: #E6ECF8;
  margin: 0;
  line-height: 1.4;
  font-weight: 400;
  font-style: italic;
}

/* === AUTHOR === */
.eh-cases-native .case-author{
  flex-wrap: nowrap !important;
  align-items: center !important;
  margin-top: 4px;
}
.eh-cases-native .case-avatar-placeholder{
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(63, 140, 255, 0.35) 0%, rgba(130, 87, 255, 0.35) 100%);
  border: 1px solid rgba(255, 255, 255, 0.18);
  overflow: hidden;
  position: relative;
}
.eh-cases-native .case-avatar-placeholder::before{
  content: 'IMG';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 8px;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.55);
  font-weight: 700;
  pointer-events: none;
}
.eh-cases-native .case-author-info{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-cases-native .case-author-name .elementor-heading-title{
  font-size: 12px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.25;
}
.eh-cases-native .case-author-role .elementor-heading-title{
  display: block;
  font-size: 10.5px;
  color: #A8B2C7;
  margin: 0;
  line-height: 1.25;
}

/* === MORE BUTTON === */
.eh-cases-native .case-more-button{
  margin-top: 4px;
  width: 100%;
}
.eh-cases-native .case-more-button .elementor-button-wrapper,
.eh-cases-native .case-more-button .elementor-button{
  width: 100% !important;
}
.eh-cases-native .case-more-button .elementor-button{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  padding: 0 10px !important;
  background: transparent !important;
  border: 1px solid rgba(34, 223, 251, 0.55);
  border-radius: 6px;
  color: #22DFFB;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.01em;
  transition: background 0.2s ease, color 0.2s ease;
}
.eh-cases-native .case-more-button .elementor-button:hover{
  background: rgba(34, 223, 251, 0.12) !important;
  color: #FFFFFF;
}

/* === BOTTOM CTA === */
.eh-cases-native .eh-cases-cta-row{
  margin-top: 12px;
}
.eh-cases-native .cases-review-button .elementor-button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 65px;
  background: linear-gradient(90deg, #3F8CFF 0%, #8257FF 100%);
  color: #FFFFFF;
  font-weight: 700;
  font-size: 17px;
  border: 0;
  border-radius: 10px;
  box-shadow: 0 12px 36px rgba(63, 140, 255, 0.30);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.eh-cases-native .cases-review-button .elementor-button:hover{
  transform: translateY(-2px) scale(1.01);
  box-shadow: 0 18px 48px rgba(130, 87, 255, 0.40);
}
.eh-cases-native .eh-cases-cta-hint .elementor-heading-title{
  display: inline-block;
  font-size: 11px;
  color: #C7D0E0;
  text-align: center;
  margin: 0;
  font-weight: 400;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1100px){
  .eh-cases-native .eh-cases-grid > .case-card{
    flex: 1 1 calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
  }
}
@media (max-width: 768px){
  .eh-cases-native .eh-cases-title .elementor-heading-title{ font-size: 32px; }
  .eh-cases-native .eh-cases-subtitle .elementor-heading-title{ font-size: 14px; }
}
@media (max-width: 600px){
  .eh-cases-native .eh-cases-grid > .case-card{
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  .eh-cases-native .eh-cases-title .elementor-heading-title{ font-size: 28px; line-height: 1.18; }
  .eh-cases-native .cases-review-button .elementor-button{
    width: 100%;
    max-width: 320px;
    padding: 14px 24px;
    font-size: 16px;
  }
}

/* ===================================================================
   CONTACT SECTION — Обратная связь (30.06.2026)
   =================================================================== */
.contact-section{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(900px 580px at 80% 30%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 88% 80%, rgba(139, 66, 255, 0.14) 0%, rgba(139, 66, 255, 0) 60%),
    radial-gradient(600px 420px at 8% 30%, rgba(37, 136, 255, 0.06) 0%, rgba(37, 136, 255, 0) 60%);
  overflow: hidden;
  isolation: isolate;
}
.contact-section > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* Override Elementor default width:100% */
.contact-section .contact-container > .elementor-element,
.contact-section .contact-info > .elementor-element,
.contact-section .contact-form-card > .elementor-element,
.contact-section .contact-benefits-list > .elementor-element,
.contact-section .contact-benefit-item > .elementor-element,
.contact-section .contact-benefit-text-col > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}

/* === ROW LAYOUT === */
.contact-section .contact-container{
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
}
.contact-section .contact-container > .contact-info{
  flex: 1 1 36% !important;
  min-width: 0 !important;
  max-width: 38% !important;
}
.contact-section .contact-container > .contact-form-card{
  flex: 1 1 64% !important;
  min-width: 0 !important;
}

/* === TITLE === */
.contact-section .contact-title .elementor-heading-title{
  font-size: 44px;
  line-height: 1.15;
  font-weight: 800;
  margin: 0;
  letter-spacing: -0.01em;
  color: #FFFFFF;
}
.contact-section .contact-w-white{ color: #FFFFFF; }
.contact-section .contact-w-grad{
  background: linear-gradient(135deg, #2588FF 0%, #8B42FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* === DIVIDER under title === */
.contact-section .contact-divider{
  width: 50px !important;
  min-height: 2px !important;
  height: 2px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 2px;
  background: linear-gradient(90deg, #22DFFB 0%, #8B42FF 100%);
  margin: 24px 0 26px 0 !important;
  flex: 0 0 2px !important;
}

/* === DESCRIPTION === */
.contact-section .contact-description p{
  font-size: 19px;
  line-height: 1.55;
  color: #FFFFFF;
  margin: 0;
  font-weight: 400;
}

/* === HR === */
.contact-section .contact-hr{
  width: 100% !important;
  min-height: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(255, 255, 255, 0.10);
  margin: 28px 0 !important;
  flex: 0 0 1px !important;
}

/* === BENEFITS === */
.contact-section .contact-benefits-list{
  gap: 22px !important;
}
.contact-section .contact-benefit-item{
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.contact-section .contact-benefit-icon-placeholder{
  flex: 0 0 80px !important;
  width: 80px !important;
  height: 80px !important;
  min-height: 80px !important;
  border-radius: 50% !important;
  background: rgba(5, 16, 40, 0.85);
  border: 1px solid rgba(34, 223, 251, 0.35);
  box-shadow:
    inset 0 0 20px rgba(34, 223, 251, 0.10),
    0 0 0 1px rgba(139, 66, 255, 0.20);
  position: relative;
  overflow: hidden;
}
.contact-section .contact-benefit-icon-placeholder::before{
  content: '';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(34, 223, 251, 0.55);
  font-size: 22px;
  font-weight: 700;
  pointer-events: none;
}
.contact-section .contact-benefit-icon-placeholder.benefit-fast::before{    content: '⚡'; opacity: 0.85; }
.contact-section .contact-benefit-icon-placeholder.benefit-experts::before{ content: '🛡'; opacity: 0.75; }
.contact-section .contact-benefit-icon-placeholder.benefit-contact::before{ content: '💬'; opacity: 0.75; }

.contact-section .contact-benefit-text-col{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.contact-section .contact-benefit-title .elementor-heading-title{
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #22DFFB;
  margin: 0;
  line-height: 1.3;
}
.contact-section .contact-benefit-text .elementor-heading-title{
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: #C7D0E0;
  margin: 0;
  line-height: 1.45;
}

/* === FORM CARD === */
.contact-section .contact-form-card{
  background: rgba(5, 16, 40, 0.78);
  border: 1px solid rgba(34, 223, 251, 0.14);
  border-radius: 14px;
  box-shadow: 0 0 35px rgba(34, 120, 255, 0.08), inset 0 0 40px rgba(34, 223, 251, 0.03);
}

/* === FORM === */
.contact-section .contact-form{
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}
.contact-section .form-row{
  display: flex;
  flex-direction: row;
  gap: 14px;
  width: 100%;
}
.contact-section .form-row.form-row-2 > .form-group{
  flex: 1 1 50%;
  min-width: 0;
}
.contact-section .form-row:not(.form-row-2) > .form-group{
  flex: 1 1 100%;
  min-width: 0;
}
.contact-section .form-group{
  display: flex;
  flex-direction: column;
  background: rgba(4, 14, 34, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  padding: 12px 16px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.contact-section .form-group:focus-within{
  border-color: rgba(34, 223, 251, 0.55);
  box-shadow: 0 0 0 2px rgba(34, 223, 251, 0.10);
}
.contact-section .form-label{
  display: block;
  font-size: 12.5px;
  font-weight: 600;
  color: #FFFFFF;
  margin: 0 0 4px 0;
  line-height: 1.2;
}
.contact-section .form-req{
  color: #FF6B6B;
  margin-left: 2px;
}
.contact-section .form-input,
.contact-section .form-select,
.contact-section .form-textarea{
  width: 100%;
  background: transparent;
  border: 0;
  outline: 0;
  color: #FFFFFF;
  font-size: 14px;
  font-family: inherit;
  padding: 4px 0;
  line-height: 1.4;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.contact-section .form-input::placeholder,
.contact-section .form-textarea::placeholder{
  color: #9BA6BA;
  opacity: 1;
}
.contact-section .form-select{
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1L6 6L11 1' stroke='%2322DFFB' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 4px center;
  padding-right: 24px;
  cursor: pointer;
}
.contact-section .form-select option{
  background: #061329;
  color: #FFFFFF;
}
.contact-section .form-textarea{
  resize: vertical;
  min-height: 110px;
  padding-top: 6px;
}

/* === SUBMIT BUTTON === */
.contact-section .contact-submit-button{
  width: 100%;
  padding: 18px 24px;
  background: linear-gradient(90deg, #2588FF 0%, #8B42FF 100%);
  color: #FFFFFF;
  font-weight: 700;
  font-size: 18px;
  border: 0;
  border-radius: 12px;
  cursor: pointer;
  box-shadow: 0 10px 30px rgba(37, 136, 255, 0.25);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  margin-top: 4px;
  font-family: inherit;
}
.contact-section .contact-submit-button:hover{
  transform: translateY(-2px);
  box-shadow: 0 0 28px rgba(139, 66, 255, 0.45), 0 14px 36px rgba(37, 136, 255, 0.30);
}

/* === POLICY === */
.contact-section .contact-policy-text{
  font-size: 11.5px;
  color: #C7D0E0;
  text-align: center;
  margin: 16px 0 0 0;
  line-height: 1.4;
}
.contact-section .contact-policy-text a{
  color: #22DFFB;
  text-decoration: none;
  transition: color 0.2s ease;
}
.contact-section .contact-policy-text a:hover{
  color: #6FE7FE;
  text-decoration: underline;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px){
  .contact-section .contact-container{ gap: 36px !important; }
  .contact-section .contact-container > .contact-info{
    flex: 1 1 38% !important; max-width: 40% !important;
  }
  .contact-section .contact-title .elementor-heading-title{ font-size: 36px; }
  .contact-section .contact-description p{ font-size: 17px; }
}

@media (max-width: 820px){
  .contact-section .contact-container{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 36px !important;
  }
  .contact-section .contact-container > .contact-info,
  .contact-section .contact-container > .contact-form-card{
    flex: 1 1 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 600px){
  .contact-section .contact-title .elementor-heading-title{ font-size: 32px; }
  .contact-section .contact-description p{ font-size: 16px; }
  .contact-section .contact-form-card{ padding: 18px !important; }
  .contact-section .form-row.form-row-2{
    flex-direction: column;
    gap: 12px;
  }
  .contact-section .contact-submit-button{
    padding: 16px 18px;
    font-size: 16px;
  }
  .contact-section .form-textarea{ min-height: 100px; }
  .contact-section .contact-benefit-icon-placeholder{
    flex: 0 0 64px !important; width: 64px !important; height: 64px !important; min-height: 64px !important;
  }
}

/* ===================================================================
   SITE FOOTER — ЭластикХостинг (30.06.2026)
   =================================================================== */
.site-footer{
  position: relative;
  background: #030817;
  background-image:
    radial-gradient(900px 480px at 70% 30%, rgba(34, 223, 251, 0.05) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(600px 400px at 20% 80%, rgba(130, 87, 255, 0.05) 0%, rgba(130, 87, 255, 0) 60%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  isolation: isolate;
}
.site-footer > .e-con-inner{
  max-width: 1240px !important;
  width: 100% !important;
}

/* Override Elementor default width:100% */
.site-footer .footer-main > .elementor-element,
.site-footer .footer-brand-column > .elementor-element,
.site-footer .footer-nav-column > .elementor-element,
.site-footer .footer-docs-column > .elementor-element,
.site-footer .footer-bottom > .elementor-element,
.site-footer .footer-container > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}

/* === MAIN ROW === */
.site-footer .footer-main{
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
}
.site-footer .footer-main > .footer-brand-column{
  flex: 1 1 30% !important;
  min-width: 0 !important;
}
.site-footer .footer-main > .footer-nav-column:nth-of-type(2){
  flex: 1 1 20% !important;
  min-width: 0 !important;
}
.site-footer .footer-main > .footer-nav-column:nth-of-type(3){
  flex: 1 1 18% !important;
  min-width: 0 !important;
}
.site-footer .footer-main > .footer-docs-column{
  flex: 1 1 32% !important;
  min-width: 0 !important;
}

/* === BRAND COLUMN === */
.site-footer .footer-logo{
  display: flex;
  align-items: center;
  gap: 10px;
}
.site-footer .footer-logo-icon-placeholder{
  display: inline-block;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, transparent 0%, transparent 100%),
    linear-gradient(180deg, #22DFFB 0%, #22DFFB 33%, transparent 33%, transparent 36%, #3F8CFF 36%, #3F8CFF 66%, transparent 66%, transparent 69%, #8257FF 69%, #8257FF 100%);
  background-blend-mode: normal;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.12);
  overflow: hidden;
}
.site-footer .footer-logo-text{
  font-size: 19px;
  font-weight: 700;
  color: #FFFFFF;
  letter-spacing: -0.005em;
}

.site-footer .footer-description p{
  font-size: 13.5px;
  line-height: 1.6;
  color: #C7D0E0;
  margin: 0;
  max-width: 290px;
}

.site-footer .footer-slogan .elementor-heading-title{
  font-size: 23px;
  font-weight: 800;
  line-height: 1.28;
  margin: 8px 0 4px 0;
  letter-spacing: -0.005em;
}
.site-footer .footer-slogan-grad{
  background: linear-gradient(135deg, #22DFFB 0%, #3F8CFF 50%, #8257FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* === SOCIALS === */
.site-footer .footer-socials{
  display: flex;
  gap: 10px;
  margin-top: 4px;
}
.site-footer .footer-social-placeholder{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.035);
  color: #C7D0E0;
  text-decoration: none;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.18s ease, color 0.2s ease;
}
.site-footer .footer-social-placeholder:hover{
  border-color: rgba(34, 223, 251, 0.55);
  background: rgba(34, 223, 251, 0.10);
  color: #22DFFB;
  transform: translateY(-1px);
  box-shadow: 0 0 16px rgba(34, 223, 251, 0.25);
}
.site-footer .social-icon-hint{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  pointer-events: none;
}

/* === COLUMN TITLES === */
.site-footer .footer-column-title .elementor-heading-title{
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.2;
}

/* === NAV LINKS === */
.site-footer .footer-nav-html .elementor-widget-container,
.site-footer .footer-docs-html .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}
.site-footer .footer-links-list,
.site-footer .footer-docs-list{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-footer .footer-links-list li,
.site-footer .footer-docs-list li{
  list-style: none !important;
  margin: 0 0 14px 0;
  padding: 0;
}
.site-footer .footer-links-list li:last-child,
.site-footer .footer-docs-list li:last-child{
  margin-bottom: 0;
}
.site-footer .footer-link{
  display: inline-block;
  font-size: 14px;
  color: #C7D0E0;
  text-decoration: none;
  line-height: 1.4;
  transition: color 0.2s ease, transform 0.18s ease;
}
.site-footer .footer-link:hover{
  color: #22DFFB;
  transform: translateX(2px);
  text-shadow: 0 0 12px rgba(34, 223, 251, 0.4);
}

/* === DOC LINKS (with chevron) === */
.site-footer .footer-doc-link{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  color: #C7D0E0;
  text-decoration: none;
  line-height: 1.45;
  transition: color 0.2s ease;
}
.site-footer .footer-doc-text{ flex: 1 1 auto; }
.site-footer .footer-doc-arrow-placeholder{
  flex: 0 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 20px;
  color: #6B7793;
  font-size: 18px;
  line-height: 1;
  font-weight: 600;
  transition: color 0.2s ease, transform 0.18s ease;
}
.site-footer .footer-doc-link:hover{ color: #22DFFB; }
.site-footer .footer-doc-link:hover .footer-doc-arrow-placeholder{
  color: #22DFFB;
  transform: translateX(2px);
}

/* === BOTTOM ROW === */
.site-footer .footer-bottom{
  margin-top: 40px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.site-footer .footer-bottom-inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.site-footer .footer-copyright{
  font-size: 12.5px;
  color: #AAB3C5;
}
.site-footer .footer-contacts{
  display: flex;
  gap: 32px;
  align-items: center;
}
.site-footer .footer-contact-item{
  display: flex;
  align-items: center;
  gap: 10px;
}
.site-footer .footer-contact-icon-placeholder{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.035);
  color: #22DFFB;
}
.site-footer .contact-icon-hint{
  font-size: 13px;
  line-height: 1;
  font-weight: 700;
}
.site-footer .footer-contact-link{
  font-size: 13.5px;
  color: #FFFFFF;
  text-decoration: none;
  transition: color 0.2s ease;
}
.site-footer .footer-contact-link:hover{
  color: #22DFFB;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px){
  .site-footer .footer-main{ gap: 36px !important; flex-wrap: wrap !important; }
  .site-footer .footer-main > .footer-brand-column,
  .site-footer .footer-main > .footer-nav-column,
  .site-footer .footer-main > .footer-docs-column{
    flex: 1 1 calc(50% - 18px) !important;
    max-width: calc(50% - 18px) !important;
  }
  .site-footer .footer-main > .footer-brand-column{ flex: 1 1 100% !important; max-width: 100% !important; }
}

@media (max-width: 640px){
  .site-footer .footer-main{ gap: 32px !important; }
  .site-footer .footer-main > .footer-brand-column,
  .site-footer .footer-main > .footer-nav-column,
  .site-footer .footer-main > .footer-docs-column{
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  .site-footer .footer-slogan .elementor-heading-title{ font-size: 20px; }
  .site-footer .footer-bottom-inner{
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
  .site-footer .footer-contacts{
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
  }
  .site-footer .footer-doc-link{ font-size: 13.5px; }
}

/* ===================================================================
   SEAMLESS SECTIONS — свечения сливаются на стыках (30.06.2026)
   Убираем solid bg секций + переносим radial-glow в ::before с
   bleed-зоной ±100px и mask-fade на краях. body даёт единый фон.
   =================================================================== */

/* Единый тёмный фон сайта */
body{
  background: #030817 !important;
}
.site-content,
.page-content,
.elementor-section-wrap,
main{
  background: transparent !important;
}

/* Все мои новые секции: прозрачный bg, видимый overflow */
.eh-promo-native,
.eh-brand-native,
.eh-tech-native,
.eh-cases-native,
.contact-section{
  background-color: transparent !important;
  background-image: none !important;
  overflow: visible !important;
  isolation: auto !important;
  position: relative !important;
  z-index: 0;
}

/* Общее правило для ::before — экстенд 100px и плавный fade */
.eh-promo-native::before,
.eh-brand-native::before,
.eh-tech-native::before,
.eh-cases-native::before,
.contact-section::before{
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -100px;
  bottom: -100px;
  z-index: -1;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 100px, #000 calc(100% - 100px), transparent 100%);
  mask-image:         linear-gradient(to bottom, transparent 0%, #000 100px, #000 calc(100% - 100px), transparent 100%);
}

/* === PROMO (SEO/GEO/AI) — свои радиалы === */
.eh-promo-native::before{
  background-image:
    radial-gradient(900px 520px at 12% 18%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 88% 38%, rgba(139, 66, 255, 0.14) 0%, rgba(139, 66, 255, 0) 60%),
    radial-gradient(800px 560px at 50% 100%, rgba(34, 223, 251, 0.08) 0%, rgba(34, 223, 251, 0) 65%);
}

/* === BRAND === */
.eh-brand-native::before{
  background-image:
    radial-gradient(900px 540px at 8% 12%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(800px 520px at 92% 30%, rgba(154, 77, 255, 0.16) 0%, rgba(154, 77, 255, 0) 60%),
    radial-gradient(900px 600px at 50% 110%, rgba(75, 124, 255, 0.10) 0%, rgba(75, 124, 255, 0) 65%);
}

/* === TECH === */
.eh-tech-native::before{
  background-image:
    radial-gradient(700px 460px at 88% 12%, rgba(34, 223, 251, 0.14) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 10% 36%, rgba(63, 140, 255, 0.12) 0%, rgba(63, 140, 255, 0) 60%),
    radial-gradient(900px 600px at 50% 100%, rgba(130, 87, 255, 0.10) 0%, rgba(130, 87, 255, 0) 65%);
}

/* === CASES === */
.eh-cases-native::before{
  background-image:
    radial-gradient(900px 520px at 50% 0%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 8% 50%, rgba(63, 140, 255, 0.12) 0%, rgba(63, 140, 255, 0) 60%),
    radial-gradient(700px 480px at 92% 60%, rgba(130, 87, 255, 0.12) 0%, rgba(130, 87, 255, 0) 60%);
}

/* === CONTACT === */
.contact-section::before{
  background-image:
    radial-gradient(900px 580px at 80% 30%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(700px 480px at 88% 80%, rgba(139, 66, 255, 0.16) 0%, rgba(139, 66, 255, 0) 60%),
    radial-gradient(600px 420px at 8% 30%, rgba(37, 136, 255, 0.08) 0%, rgba(37, 136, 255, 0) 60%);
}

/* === FOOTER — тоже на общем фоне, без жёсткой границы === */
.site-footer{
  background-color: transparent !important;
  background-image: none !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  overflow: visible !important;
  isolation: auto !important;
  position: relative !important;
}
.site-footer::before{
  content: '';
  position: absolute;
  left: 0; right: 0;
  top: -100px; bottom: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    radial-gradient(900px 480px at 70% 30%, rgba(34, 223, 251, 0.06) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(600px 400px at 20% 80%, rgba(130, 87, 255, 0.06) 0%, rgba(130, 87, 255, 0) 60%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 100px, #000 100%);
  mask-image:         linear-gradient(to bottom, transparent 0%, #000 100px, #000 100%);
}

/* ===================================================================
   FOOTER FIXES — белый фон + лого (30.06.2026)
   =================================================================== */

/* Parent-theme рисует body{background:#fff} + #colophon обёртки могут
   подсвечивать белым. Аккуратно бьём все footer-wrappers. */
body{ background: #030817 !important; }
footer#colophon,
.footer-width-fixer,
.site-footer,
.site-footer .elementor,
.site-footer .e-con,
.site-footer .e-con-inner,
.site-footer .footer-bottom,
.site-footer .footer-bottom-html,
.site-footer .footer-bottom-html .elementor-widget-container{
  background: transparent !important;
  background-color: transparent !important;
}

/* Чтобы пограничные `box-shadow inset` и фоновые цвета Elementor
   виджетов html не делали белый прямоугольник */
.site-footer .elementor-widget-html .elementor-widget-container{
  background: transparent !important;
}

/* === LOGO (реальная картинка как в шапке) === */
.site-footer .footer-logo-real{
  display: flex;
  align-items: center;
  gap: 10px;
}
.site-footer .footer-logo-img{
  display: block;
  height: 34px;
  width: auto;
  max-width: 180px;
  object-fit: contain;
}
/* Скрыть текст-дубль если в самом лого-картинке уже есть надпись */
.site-footer .footer-logo-real .footer-logo-text{
  display: none;
}

@media (max-width: 640px){
  .site-footer .footer-logo-img{ height: 30px; }
}

/* ===== CONTACT — gradient на заголовках преимуществ (30.06.2026) ===== */
.contact-section .contact-benefit-title .elementor-heading-title{
  background: linear-gradient(135deg, #22DFFB 0%, #2588FF 50%, #8B42FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-weight: 700;
}

/* ===== Кнопки — естественный регистр, без uppercase (30.06.2026) ===== */
.contact-section .contact-submit-button,
.eh-promo-native .eh-promo-cta .elementor-button,
.eh-brand-native .eh-brand-cta .elementor-button,
.eh-cases-native .cases-review-button .elementor-button,
.eh-cases-native .case-more-button .elementor-button{
  text-transform: none !important;
}

/* ===== CONTACT — короткая линия под заголовком (30.06.2026) =====
   Elementor по умолчанию даёт детям flex-контейнера width:100%.
   Принудительно: width 50px и flex 0 0 auto. */
.contact-section .contact-info > .contact-divider,
.contact-section .contact-divider{
  width: 50px !important;
  max-width: 50px !important;
  flex: 0 0 50px !important;
  --container-widget-width: 50px !important;
  align-self: flex-start !important;
}

/* ===== TECH — «бизнес-результат» голубой, не градиент (30.06.2026) ===== */
.eh-tech-native .eh-tech-grad-text{
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #22DFFB !important;
  color: #22DFFB !important;
}

/* Scope cyan только для hero "бизнес-результат", у result card оставим градиент */
.eh-tech-native .eh-tech-result-title .eh-tech-grad-text{
  background: linear-gradient(135deg, #22DFFB 0%, #3F8CFF 50%, #8257FF 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* ===== BRAND BENEFITS — жёсткое центрирование всех 3 (30.06.2026) =====
   Уникальность визуально съезжала влево. Принудительное center
   на иконке и тексте. */
.eh-brand-native .eh-brand-phil-benefits > .eh-brand-benefit{
  align-items: center !important;
  text-align: center !important;
  justify-content: flex-start !important;
}
.eh-brand-native .eh-brand-phil-benefits > .eh-brand-benefit > .elementor-element{
  align-self: center !important;
}
.eh-brand-native .eh-brand-phil-benefits .benefit-icon-placeholder{
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  --container-widget-width: 64px !important;
}
.eh-brand-native .eh-brand-phil-benefits .eh-brand-benefit-name{
  width: 100% !important;
  text-align: center !important;
}
.eh-brand-native .eh-brand-phil-benefits .eh-brand-benefit-name .elementor-heading-title{
  text-align: center !important;
  margin: 0 auto !important;
}

/* ===== BIZSITES — вертикальные дивайдеры между Frontend/Backend/CMS (30.06.2026) ===== */
.eh-bs-native .eh-bs-tech-row{
  align-items: stretch !important;
}
.eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item + .eh-bs-tech-item{
  position: relative;
}
.eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item + .eh-bs-tech-item::before{
  content: '';
  position: absolute;
  left: 0;
  top: 12%;
  bottom: 12%;
  width: 1px;
  background: rgba(255, 255, 255, 0.10);
  pointer-events: none;
}
@media (max-width: 900px){
  /* в колоночной раскладке вертикальных дивайдеров нет */
  .eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item + .eh-bs-tech-item::before{
    display: none;
  }
}

/* ===== «Что входит во все тарифы» — в одну строку на ПК (30.06.2026) ===== */
.eh-pricing-native .eh-included-header{
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
}
.eh-pricing-native .eh-included-header > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}
.eh-pricing-native .eh-included-header .eh-line{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.eh-pricing-native .eh-included-header h2,
.eh-pricing-native .eh-included-header h3,
.eh-pricing-native .eh-included-header .elementor-heading-title{
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

/* На мобилке (<=600px) разрешаем перенос — там линий не видно */
@media (max-width: 600px){
  .eh-pricing-native .eh-included-header .elementor-heading-title{
    white-space: normal !important;
    text-align: center !important;
  }
}

/* ===== TARIFF CARDS — иконки-маркеры перед bullet-текстами (30.06.2026) ===== */

/* Общая логика — добавляем символ через ::before внутри widget-container */
.eh-pricing-native .eh-card .eh-card-bullet .elementor-widget-container{
  position: relative;
  padding-left: 22px;
}
.eh-pricing-native .eh-card .eh-card-bullet .elementor-widget-container::before{
  position: absolute;
  left: 0;
  top: 0;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 700;
}

/* Базовый — голубой ромбик */
.eh-pricing-native .eh-card--basic .eh-card-bullet .elementor-widget-container::before{
  content: '◆';
  color: #00C8FF;
}

/* ВИП — голубой ромбик */
.eh-pricing-native .eh-card--vip .eh-card-bullet .elementor-widget-container::before{
  content: '◆';
  color: #00C8FF;
}

/* Эксперт — первый bullet (про сайты) фиолетовый ромбик */
.eh-pricing-native .eh-card--expert .eh-card-bullet:first-of-type .elementor-widget-container::before{
  content: '◆';
  color: #8A3DFF;
}

/* Эксперт — второй bullet (про масштабирование) голубая молния */
.eh-pricing-native .eh-card--expert .eh-card-bullet:nth-of-type(2) .elementor-widget-container::before,
.eh-pricing-native .eh-card--expert .eh-card-bullet ~ .eh-card-bullet .elementor-widget-container::before{
  content: '\26A1';  /* ⚡ */
  color: #00C8FF;
  font-size: 15px;
}

/* ===== FIX — таргетим конкретные element-ID для Эксперт (30.06.2026) =====
   :first-of-type/:nth-of-type работают по тегу, а оба bullet-а — div'ы.
   Используем точные ID-селекторы. */

/* Эксперт — первый bullet id=540d967 (про сайты) → фиолетовый ромбик */
.eh-pricing-native .eh-card--expert .elementor-element-540d967 .elementor-widget-container::before{
  content: '◆' !important;
  color: #8A3DFF !important;
  font-size: 14px !important;
}

/* Эксперт — второй bullet id=bfdd4d5 (про масштабирование) → голубая молния */
.eh-pricing-native .eh-card--expert .elementor-element-bfdd4d5 .elementor-widget-container::before{
  content: '\26A1' !important;
  color: #00C8FF !important;
  font-size: 15px !important;
}

/* Чтобы не сработали ранее заданные :first-of-type/:nth-of-type
   (которые могли поломать порядок) — переопределяем дефолт */
.eh-pricing-native .eh-card--expert .eh-card-bullet:first-of-type .elementor-widget-container::before,
.eh-pricing-native .eh-card--expert .eh-card-bullet:nth-of-type(2) .elementor-widget-container::before,
.eh-pricing-native .eh-card--expert .eh-card-bullet ~ .eh-card-bullet .elementor-widget-container::before{
  content: none;
}
/* и снова вернём правильные */
.eh-pricing-native .eh-card--expert .elementor-element-540d967 .elementor-widget-container::before{
  content: '◆' !important;
}
.eh-pricing-native .eh-card--expert .elementor-element-bfdd4d5 .elementor-widget-container::before{
  content: '\26A1' !important;
}

/* ===== TARIFF CARDS — ИСПРАВЛЕНО маркеры по правильным ID (30.06.2026) =====
   Сбрасываем все ранее заданные ::before и ставим точно по ID. */

/* СБРОС всех старых правил */
.eh-pricing-native .eh-card .eh-card-bullet .elementor-widget-container::before{
  content: none !important;
  padding: 0 !important;
}
.eh-pricing-native .eh-card .eh-card-bullet .elementor-widget-container{
  padding-left: 0 !important;
}

/* Базовый — голубой ◆ (id=b268319) */
.eh-pricing-native .elementor-element-b268319 .elementor-widget-container{
  position: relative !important;
  padding-left: 22px !important;
}
.eh-pricing-native .elementor-element-b268319 .elementor-widget-container::before{
  content: '◆' !important;
  color: #00C8FF !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

/* ВИП — фиолетовый ◆ (id=4085ac4) */
.eh-pricing-native .elementor-element-4085ac4 .elementor-widget-container{
  position: relative !important;
  padding-left: 22px !important;
}
.eh-pricing-native .elementor-element-4085ac4 .elementor-widget-container::before{
  content: '◆' !important;
  color: #8A3DFF !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

/* Эксперт первый текст «Масштабирование...» — голубая ⚡ (id=540d967) */
.eh-pricing-native .elementor-element-540d967 .elementor-widget-container{
  position: relative !important;
  padding-left: 22px !important;
}
.eh-pricing-native .elementor-element-540d967 .elementor-widget-container::before{
  content: '\26A1' !important;
  color: #00C8FF !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

/* Эксперт второй текст «Интернет-магазины...» — голубой ◆ (id=bfdd4d5) */
.eh-pricing-native .elementor-element-bfdd4d5 .elementor-widget-container{
  position: relative !important;
  padding-left: 22px !important;
}
.eh-pricing-native .elementor-element-bfdd4d5 .elementor-widget-container::before{
  content: '◆' !important;
  color: #00C8FF !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

/* ===== BIZSITES TECH ROW — равномерное центрирование (30.06.2026) =====
   3 блока (Frontend / Backend / CMS) — flex:1 1 0 поровну, content center. */
.eh-bs-native .eh-bs-tech-row{
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: center !important;
}
.eh-bs-native .eh-bs-tech-row > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
}
.eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item{
  flex: 1 1 0 !important;
  max-width: 33.34% !important;
  align-items: center !important;
  text-align: center !important;
  padding: 18px 16px !important;
}
.eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item > .elementor-element{
  width: auto !important;
  --container-widget-width: auto !important;
  text-align: center !important;
}
.eh-bs-native .eh-bs-tech-item .elementor-heading-title,
.eh-bs-native .eh-bs-tech-item .elementor-widget-container{
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.eh-bs-native .eh-bs-tech-item .elementor-icon-wrapper,
.eh-bs-native .eh-bs-tech-item .elementor-icon{
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 900px){
  .eh-bs-native .eh-bs-tech-row{
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item{
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
}

/* ===== TECH ROW — больше gap между блоками (30.06.2026) ===== */
.eh-bs-native .eh-bs-tech-row{
  gap: 48px !important;
  column-gap: 48px !important;
  --gap: 48px !important;
  --column-gap: 48px !important;
}

/* Дивайдеры подвинуть от края item (т.к. gap увеличился) */
.eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item + .eh-bs-tech-item::before{
  left: -24px !important;
}

@media (max-width: 1100px){
  .eh-bs-native .eh-bs-tech-row{
    gap: 32px !important;
    column-gap: 32px !important;
    --gap: 32px !important;
    --column-gap: 32px !important;
  }
  .eh-bs-native .eh-bs-tech-row > .eh-bs-tech-item + .eh-bs-tech-item::before{
    left: -16px !important;
  }
}
@media (max-width: 900px){
  .eh-bs-native .eh-bs-tech-row{
    gap: 20px !important;
    column-gap: 20px !important;
    row-gap: 20px !important;
    --gap: 20px !important;
  }
}

/* ===== FOOTER CONTACTS — SVG-иконки вместо эмодзи (30.06.2026) ===== */
.site-footer .footer-contact-icon-placeholder{
  width: 30px !important;
  height: 30px !important;
  border-radius: 7px;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px;
  border: 1px solid rgba(34, 223, 251, 0.30);
  background: rgba(34, 223, 251, 0.06);
  color: #22DFFB;
}
.site-footer .footer-contact-icon-placeholder svg{
  width: 100%;
  height: 100%;
  display: block;
  color: #22DFFB;
  stroke: currentColor;
  fill: none;
}
.site-footer .footer-contact-link{
  font-size: 14px;
  color: #FFFFFF;
  text-decoration: none;
  transition: color 0.2s ease;
}
.site-footer .footer-contact-link:hover{
  color: #22DFFB;
}
/* убрать старую эмодзи-подсказку если осталась */
.site-footer .contact-icon-hint{ display: none !important; }

/* ===== ICON PLACEHOLDERS — filled-state для всех типов (30.06.2026) =====
   Когда внутрь placeholder-контейнера добавляется .icon-filled,
   убираем dashed bg + текст «Изображение» и аккуратно показываем картинку. */
.eh-promo-native .service-icon-placeholder.icon-filled,
.eh-promo-native .platform-icon-placeholder.icon-filled,
.eh-brand-native .philosophy-icon-placeholder.icon-filled,
.eh-brand-native .benefit-icon-placeholder.icon-filled,
.eh-brand-native .work-icon-placeholder.icon-filled,
.eh-tech-native .tech-icon-placeholder.icon-filled,
.eh-tech-native .result-icon-placeholder.icon-filled,
.eh-cases-native .case-image-placeholder.icon-filled,
.contact-section .contact-benefit-icon-placeholder.icon-filled{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 8px !important;
}
.eh-promo-native .service-icon-placeholder.icon-filled::before,
.eh-promo-native .platform-icon-placeholder.icon-filled::before,
.eh-brand-native .philosophy-icon-placeholder.icon-filled::before,
.eh-brand-native .benefit-icon-placeholder.icon-filled::before,
.eh-brand-native .work-icon-placeholder.icon-filled::before,
.eh-tech-native .tech-icon-placeholder.icon-filled::before,
.eh-tech-native .result-icon-placeholder.icon-filled::before,
.eh-cases-native .case-image-placeholder.icon-filled::before,
.contact-section .contact-benefit-icon-placeholder.icon-filled::before{
  content: none !important;
  display: none !important;
}
.eh-promo-native .icon-filled .elementor-widget-image,
.eh-promo-native .icon-filled .elementor-widget-container,
.eh-brand-native .icon-filled .elementor-widget-image,
.eh-brand-native .icon-filled .elementor-widget-container,
.eh-tech-native .icon-filled .elementor-widget-image,
.eh-tech-native .icon-filled .elementor-widget-container,
.eh-cases-native .icon-filled .elementor-widget-image,
.eh-cases-native .icon-filled .elementor-widget-container,
.contact-section .icon-filled .elementor-widget-image,
.contact-section .icon-filled .elementor-widget-container{
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
.eh-promo-native .icon-filled img,
.eh-brand-native .icon-filled img,
.eh-tech-native .icon-filled img,
.eh-cases-native .icon-filled img,
.contact-section .icon-filled img{
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  background: transparent !important;
}

/* ===== PLATFORM ICONS — увеличиваем (30.06.2026) =====
   Было 72×72 с padding 8 (рабочая зона ~56px). Делаем 104×104 desktop,
   88 tablet, 72 mobile + убираем padding на filled-state. */
.eh-promo-native .platform-icon-placeholder{
  width: 104px !important;
  height: 104px !important;
  min-height: 104px !important;
  border-radius: 20px;
}
.eh-promo-native .platform-icon-placeholder.icon-filled{
  padding: 4px !important;
}
.eh-promo-native .platform-icon-placeholder.icon-filled img{
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}

@media (max-width: 1100px){
  .eh-promo-native .platform-icon-placeholder{
    width: 88px !important;
    height: 88px !important;
    min-height: 88px !important;
    border-radius: 18px;
  }
}
@media (max-width: 767px){
  .eh-promo-native .platform-icon-placeholder{
    width: 84px !important;
    height: 84px !important;
    min-height: 84px !important;
  }
}
@media (max-width: 480px){
  .eh-promo-native .platform-icon-placeholder{
    width: 76px !important;
    height: 76px !important;
    min-height: 76px !important;
    border-radius: 16px;
  }
}

/* ===== PLATFORM ICONS — ЕЩЁ больше (30.06.2026 v2) ===== */
.eh-promo-native .platform-icon-placeholder{
  width: 140px !important;
  height: 140px !important;
  min-height: 140px !important;
  border-radius: 24px;
}
@media (max-width: 1100px){
  .eh-promo-native .platform-icon-placeholder{
    width: 120px !important;
    height: 120px !important;
    min-height: 120px !important;
    border-radius: 22px;
  }
}
@media (max-width: 767px){
  .eh-promo-native .platform-icon-placeholder{
    width: 110px !important;
    height: 110px !important;
    min-height: 110px !important;
    border-radius: 20px;
  }
}
@media (max-width: 480px){
  .eh-promo-native .platform-icon-placeholder{
    width: 96px !important;
    height: 96px !important;
    min-height: 96px !important;
    border-radius: 18px;
  }
}

/* ===== PRICING — иконка сервер+облако вместо FA (30.06.2026) ===== */
.eh-pricing-native .eh-pricing-header-img{
  text-align: center !important;
}
.eh-pricing-native .eh-pricing-header-img .elementor-widget-container{
  display: flex !important;
  justify-content: center !important;
}
.eh-pricing-native .eh-pricing-header-img img{
  width: 110px !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  display: block;
  margin: 0 auto;
  background: transparent !important;
  filter:
    drop-shadow(0 12px 24px rgba(0, 200, 255, 0.20))
    drop-shadow(0 6px 14px rgba(138, 61, 255, 0.18));
}
@media (max-width: 1024px){
  .eh-pricing-native .eh-pricing-header-img img{ width: 92px !important; }
}
@media (max-width: 600px){
  .eh-pricing-native .eh-pricing-header-img img{ width: 80px !important; }
}

/* ===================================================================
   MOBILE SIDEBAR — стилизация под бренд (30.06.2026)
   plugin rt-mega-menu выкидывает белый sidebar справа → темнее
   =================================================================== */

/* Overlay-фон поверх контента когда меню открыто */
.mobile-menu-area{
  background: rgba(3, 8, 23, 0.78) !important;
}

/* Sam сайдбар */
.rtmega-menu-mobile-sidebar{
  background: #06112B !important;
  background-image:
    radial-gradient(500px 380px at 100% 0%, rgba(34, 223, 251, 0.10) 0%, rgba(34, 223, 251, 0) 60%),
    radial-gradient(420px 360px at 0% 100%, rgba(139, 66, 255, 0.12) 0%, rgba(139, 66, 255, 0) 60%) !important;
  border-left: 1px solid rgba(34, 223, 251, 0.18);
  box-shadow: -16px 0 60px rgba(0, 0, 0, 0.45);
  padding: 56px 18px 24px !important;
  color: #FFFFFF;
  width: 320px !important;
  max-width: 88vw !important;
}

/* Крестик закрытия */
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close{
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 10px;
  border: 1px solid rgba(34, 223, 251, 0.40);
  background: rgba(34, 223, 251, 0.08);
  color: #22DFFB;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close:hover{
  background: rgba(34, 223, 251, 0.18);
  border-color: #22DFFB;
  transform: scale(1.05);
}
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close svg{
  width: 14px;
  height: 14px;
  fill: currentColor;
}

/* Меню-список */
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-navigation{
  margin-top: 10px;
}
.rtmega-menu-mobile-sidebar .menu,
.rtmega-menu-mobile-sidebar ul.menu{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
.rtmega-menu-mobile-sidebar .menu li,
.rtmega-menu-mobile-sidebar .menu .menu-item{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
.rtmega-menu-mobile-sidebar .menu li + li{
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* Ссылки пунктов */
.rtmega-menu-mobile-sidebar .menu-link,
.rtmega-menu-mobile-sidebar .main-menu-link,
.rtmega-menu-mobile-sidebar .menu li a{
  display: flex !important;
  align-items: center !important;
  padding: 14px 14px !important;
  background: transparent !important;
  color: #E6ECF8 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  border-radius: 10px !important;
  transition: background 0.2s ease, color 0.2s ease, transform 0.15s ease;
}
.rtmega-menu-mobile-sidebar .menu-link .menu-text,
.rtmega-menu-mobile-sidebar .menu-link .menu-text span{
  color: inherit !important;
  background: transparent !important;
}

/* Hover/active пунктов */
.rtmega-menu-mobile-sidebar .menu li a:hover,
.rtmega-menu-mobile-sidebar .menu li a:focus,
.rtmega-menu-mobile-sidebar .menu li.current-menu-item > a,
.rtmega-menu-mobile-sidebar .menu li.current_page_item > a{
  background: rgba(34, 223, 251, 0.10) !important;
  color: #22DFFB !important;
  transform: translateX(2px);
}

/* Скрыть лишние chevron-иконки (у нас плоское меню) */
.rtmega-menu-mobile-sidebar .submenu-parent-icon,
.rtmega-menu-mobile-sidebar .pointer-none{
  display: none !important;
}

/* ===================================================================
   MOBILE SIDEBAR — minimal/Stripe-like (30.06.2026 v2)
   Плоский тёмный фон, без glow/radial, тонкие разделители,
   аккуратная типографика. Перебивает прошлую версию.
   =================================================================== */

/* Overlay */
.mobile-menu-area{
  background: rgba(0, 0, 0, 0.55) !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

/* Сам сайдбар — плоский, без свечений */
.rtmega-menu-mobile-sidebar{
  background: #0B1224 !important;
  background-image: none !important;
  border-left: 1px solid rgba(255, 255, 255, 0.06) !important;
  box-shadow: none !important;
  padding: 64px 8px 24px !important;
  color: #FFFFFF;
  width: 300px !important;
  max-width: 86vw !important;
}

/* Крестик — минимальный */
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close{
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
  border: 0 !important;
  background: transparent !important;
  color: #8F9AAF !important;
  transform: none !important;
  transition: background 0.15s ease, color 0.15s ease;
}
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close:hover{
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: transparent !important;
  color: #FFFFFF !important;
  transform: none !important;
}
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-close svg{
  width: 14px;
  height: 14px;
  fill: currentColor;
}

/* Меню-список */
.rtmega-menu-mobile-sidebar .rtmega-menu-mobile-navigation{
  margin-top: 4px;
}
.rtmega-menu-mobile-sidebar .menu,
.rtmega-menu-mobile-sidebar ul.menu{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
.rtmega-menu-mobile-sidebar .menu li{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
/* Тонкие разделители */
.rtmega-menu-mobile-sidebar .menu li + li{
  border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

/* Ссылки — плоские, без translation, без cyan */
.rtmega-menu-mobile-sidebar .menu-link,
.rtmega-menu-mobile-sidebar .main-menu-link,
.rtmega-menu-mobile-sidebar .menu li a{
  display: flex !important;
  align-items: center !important;
  padding: 14px 16px !important;
  background: transparent !important;
  color: #C7D0E0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  border-radius: 0 !important;
  transform: none !important;
  transition: color 0.15s ease, background 0.15s ease;
}
.rtmega-menu-mobile-sidebar .menu-link .menu-text,
.rtmega-menu-mobile-sidebar .menu-link .menu-text span{
  color: inherit !important;
  background: transparent !important;
}

/* Hover/active — белый цвет, лёгкий fill */
.rtmega-menu-mobile-sidebar .menu li a:hover,
.rtmega-menu-mobile-sidebar .menu li a:focus,
.rtmega-menu-mobile-sidebar .menu li.current-menu-item > a,
.rtmega-menu-mobile-sidebar .menu li.current_page_item > a{
  background: rgba(255, 255, 255, 0.04) !important;
  color: #FFFFFF !important;
  transform: none !important;
}

/* Скрыть лишние chevron-иконки */
.rtmega-menu-mobile-sidebar .submenu-parent-icon,
.rtmega-menu-mobile-sidebar .pointer-none{
  display: none !important;
}

/* ===== MOBILE SIDEBAR — прижать к правому краю экрана (30.06.2026 v3) ===== */
.rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar{
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  margin: 0 !important;
  height: 100vh !important;
  width: 300px !important;
  max-width: 86vw !important;
}
/* На узких экранах — больше */
@media (max-width: 480px){
  .rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar{
    width: 88vw !important;
    max-width: 88vw !important;
  }
}
/* На логине admin bar отжимал top на 10px — фиксим */
body.logged-in .rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar{
  top: 32px !important;
}

/* Overlay поверх ВСЕГО экрана */
.rtmega-menu-area .mobile-menu-area.opened .overlay,
.mobile-menu-area .overlay{
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
}

/* ===== FIX (30.06.2026 v3.1) — overlay только при .opened =====
   Прошлая версия сделала overlay fixed всегда → блокировал клик
   на бургер. Возвращаем только при .opened и сбрасываем для закрытого. */
.mobile-menu-area .overlay{
  /* сбрасываем — при закрытом меню overlay не должен ничего перекрывать */
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
  background: transparent !important;
}
/* При .opened — overlay снова full-screen */
.rtmega-menu-area .mobile-menu-area.opened .overlay{
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  pointer-events: auto !important;
  background: rgba(0, 0, 0, 0.55) !important;
}

/* ===== MOBILE SIDEBAR — агрессивный force-flush right (30.06.2026 v4) =====
   Юзер видит щель справа + sidebar тянется влево. Принудительно сбрасываем
   все возможные смещения через inset + box-sizing + reset parent paddings. */

/* Reset parent wrappers */
.rtmega-menu-area,
.rtmega-menu-area .mobile-menu-area,
.rtmega-menu-area .mobile-menu-area > *{
  padding-right: 0 !important;
  margin-right: 0 !important;
}

/* Sidebar — flush right, no offset */
.rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar,
.rtmega-menu-mobile-sidebar{
  position: fixed !important;
  inset: 0 0 0 auto !important;  /* top:0 right:0 bottom:0 left:auto */
  margin: 0 !important;
  box-sizing: border-box !important;
  width: 320px !important;
  max-width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;  /* динамическая высота для мобильных браузеров */
  padding: 64px 18px 24px !important;
  transform: translate3d(360px, 0, 0);  /* closed: уехал вправо за экран на 360px */
  z-index: 99999 !important;
}
.rtmega-menu-area .mobile-menu-area.opened .rtmega-menu-mobile-sidebar{
  transform: translate3d(0, 0, 0) !important;  /* open: на месте */
}

/* На широких мобилках (>480) — 320px фиксированно */
@media (max-width: 480px){
  .rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar,
  .rtmega-menu-mobile-sidebar{
    width: 100vw !important;  /* на узких — на всю ширину */
    max-width: 100vw !important;
    transform: translate3d(100vw, 0, 0);
  }
  .rtmega-menu-area .mobile-menu-area.opened .rtmega-menu-mobile-sidebar{
    transform: translate3d(0, 0, 0) !important;
  }
}

/* ===== MOBILE SIDEBAR — фикс closed-state transform (30.06.2026 v5) =====
   translate3d(360px) не покрывал всю ширину сайдбара на планшетах.
   Используем translateX(100%) — гарантированно уезжает на свою ширину. */
.rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar,
.rtmega-menu-mobile-sidebar{
  transform: translateX(100%) !important;
  visibility: hidden !important;
  transition: transform 0.4s ease, visibility 0s linear 0.4s !important;
}
.rtmega-menu-area .mobile-menu-area.opened .rtmega-menu-mobile-sidebar{
  transform: translateX(0) !important;
  visibility: visible !important;
  transition: transform 0.4s ease, visibility 0s linear 0s !important;
}

/* Media query тоже переписываем чтоб не конфликтовало */
@media (max-width: 480px){
  .rtmega-menu-area .mobile-menu-area .rtmega-menu-mobile-sidebar,
  .rtmega-menu-mobile-sidebar{
    transform: translateX(100%) !important;
  }
  .rtmega-menu-area .mobile-menu-area.opened .rtmega-menu-mobile-sidebar{
    transform: translateX(0) !important;
  }
}

/* =====================================================================
   TYPO UNIFY 04.07.2026 — единая шкала заголовков секций главной.
   H1 hero-шапки (hero, promo, brand, tech) → 52 desktop / 32 mobile.
   H2 section-title (dom, pricing, bs, cases, contact) → 46 / 28
   (эталон блока «Кейсы и отзывы»).
   Lead под section-title → 16 / 14.
   ===================================================================== */
.eh-promo-hero-title .elementor-heading-title,
.eh-brand-hero-title .elementor-heading-title,
.eh-tech-hero-title  .elementor-heading-title{
  font-size: 52px !important;
  line-height: 1.1 !important;
}
.eh-dom-title       .elementor-heading-title,
.eh-pricing-title   .elementor-heading-title,
.eh-bs-hero-title   .elementor-heading-title,
.contact-title      .elementor-heading-title{
  font-size: 46px !important;
  line-height: 1.15 !important;
}
.contact-section .contact-description p{
  font-size: 16px !important;
  line-height: 1.4 !important;
}

@media (max-width: 768px){
  .eh-promo-hero-title .elementor-heading-title,
  .eh-brand-hero-title .elementor-heading-title,
  .eh-tech-hero-title  .elementor-heading-title{
    font-size: 32px !important;
    line-height: 1.18 !important;
  }
  .eh-dom-title       .elementor-heading-title,
  .eh-pricing-title   .elementor-heading-title,
  .eh-bs-hero-title   .elementor-heading-title,
  .contact-title      .elementor-heading-title{
    font-size: 28px !important;
    line-height: 1.18 !important;
  }
  .contact-section .contact-description p{
    font-size: 14px !important;
  }
}

/* ---- Sub-section H2 (внутр. заголовки в promo/brand/tech/bs/pricing) ---- */
.eh-bs-st-title       .elementor-heading-title,
.eh-promo-st-title    .elementor-heading-title,
.eh-brand-st-title    .elementor-heading-title,
.eh-brand-hero-sub    .elementor-heading-title,
.eh-tech-result-title .elementor-heading-title,
.eh-included-title    .elementor-heading-title{
  font-size: 28px !important;
  line-height: 1.25 !important;
}

/* ---- Card-title (крупные заголовки карточек) ---- */
.eh-card-name             .elementor-heading-title,
.eh-bs-step-name          .elementor-heading-title,
.eh-promo-service-title   .elementor-heading-title,
.eh-brand-work-title      .elementor-heading-title,
.eh-tech-card-title       .elementor-heading-title{
  font-size: 22px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

/* ---- Sub-card-title (компактные) ---- */
.eh-bs-tech-name     .elementor-heading-title,
.eh-promo-card-title .elementor-heading-title{
  font-size: 18px !important;
  line-height: 1.35 !important;
}

/* ---- Hero-lead (под H1 hero) ---- */
.eh-hero-sub p,
.eh-bs-hero-lead p,
.eh-promo-hero-lead p,
.eh-brand-hero-p p,
.eh-tech-hero-lead p{
  font-size: 18px !important;
  line-height: 1.5 !important;
}

/* ---- Card-body (описания в карточках) ---- */
.eh-promo-service-body p,
.eh-brand-work-body p,
.eh-tech-card-body p,
.eh-bs-step-text p,
.eh-bs-check li,
.eh-card-specs li{
  font-size: 16px !important;
  line-height: 1.5 !important;
}

@media (max-width: 768px){
  .eh-bs-st-title       .elementor-heading-title,
  .eh-promo-st-title    .elementor-heading-title,
  .eh-brand-st-title    .elementor-heading-title,
  .eh-brand-hero-sub    .elementor-heading-title,
  .eh-tech-result-title .elementor-heading-title,
  .eh-included-title    .elementor-heading-title{
    font-size: 22px !important;
  }
  .eh-card-name             .elementor-heading-title,
  .eh-bs-step-name          .elementor-heading-title,
  .eh-promo-service-title   .elementor-heading-title,
  .eh-brand-work-title      .elementor-heading-title,
  .eh-tech-card-title       .elementor-heading-title{
    font-size: 18px !important;
  }
  .eh-bs-tech-name     .elementor-heading-title,
  .eh-promo-card-title .elementor-heading-title{
    font-size: 16px !important;
  }
  .eh-hero-sub p,
  .eh-bs-hero-lead p,
  .eh-promo-hero-lead p,
  .eh-brand-hero-p p,
  .eh-tech-hero-lead p{
    font-size: 15px !important;
  }
  .eh-promo-service-body p,
  .eh-brand-work-body p,
  .eh-tech-card-body p,
  .eh-bs-step-text p,
  .eh-bs-check li,
  .eh-card-specs li{
    font-size: 14px !important;
  }
}

/* Hidden sections (temporary hide via Elementor css_classes) */
.eh-section-hidden{ display: none !important; }

/* eh-bs-st-row: центрируем группу line+heading+line независимо от длины heading */
.eh-bs-native .eh-bs-st-row, .eh-brand-native .eh-bs-st-row, .eh-pricing-native .eh-bs-st-row, .eh-dom-native .eh-bs-st-row{
  justify-content: center !important;
}


/* ===== DIVIDER ICON — мягкое свечение сзади =====
   Работает для всех st-row: bs / brand / pricing / domain */
.eh-bs-native   .eh-bs-st-row .elementor-widget-image,
.eh-brand-native .eh-bs-st-row .elementor-widget-image,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image,
.eh-dom-native  .eh-bs-st-row .elementor-widget-image{
  position: relative;
}
.eh-bs-native   .eh-bs-st-row .elementor-widget-image::before,
.eh-brand-native .eh-bs-st-row .elementor-widget-image::before,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image::before,
.eh-dom-native  .eh-bs-st-row .elementor-widget-image::before{
  content: "";
  position: absolute;
  inset: -30%;
  background:
    radial-gradient(circle at 35% 45%, rgba(34, 223, 251, 0.32) 0%, transparent 55%),
    radial-gradient(circle at 70% 60%, rgba(138, 61, 255, 0.28) 0%, transparent 60%);
  filter: blur(28px);
  z-index: 0;
  pointer-events: none;
}
.eh-bs-native   .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-brand-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-dom-native  .eh-bs-st-row .elementor-widget-image .elementor-widget-container{
  position: relative;
  z-index: 1;
}

/* =====================================================================
   MOBILE MENU 08.07.2026 — свой чистый burger + drawer
   ===================================================================== */

/* Скрываем существующий rt-mega-menu row на <=1024 */
@media (max-width: 1024px){
  .rtmega-menu-mobile-button-wrapper, .rtmega-menu-mobile-button, .rtmega-menu-mobile-sidebar, .rtmega-menu-mobile-navigation, .mobile-menu-area,
  .rtmega-elelmentor-widget,
  .responsive-mega-menu, .mobile-menu-area{
    display: none !important;
  }
}

/* Burger — виден только на <=1024 */
.eh-mburger{
  display: none;
}
@media (max-width: 1024px){
  .eh-mburger{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 14px;
    right: 14px;
    width: 46px;
    height: 46px;
    padding: 0;
    border: 1px solid rgba(34, 223, 251, 0.35);
    border-radius: 12px;
    background: rgba(7, 13, 26, 0.72);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    color: #F5F7FA;
    cursor: pointer;
    z-index: 100000;
    box-shadow: 0 6px 22px rgba(0,0,0,0.35), 0 0 0 1px rgba(138,61,255,0.14);
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
    -webkit-tap-highlight-color: transparent;
  }
  .eh-mburger:active{ transform: scale(0.94); }
  .eh-mburger:hover{ border-color: rgba(34,223,251,0.55); }
}
.eh-mburger-bars{
  position: relative;
  width: 20px;
  height: 14px;
  display: block;
}
.eh-mburger-bars::before,
.eh-mburger-bars::after,
.eh-mburger-bars > span{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform 0.25s cubic-bezier(0.4,0.02,0.2,1), opacity 0.2s ease;
}
.eh-mburger-bars::before{ top: 0; }
.eh-mburger-bars > span{ top: 6px; }
.eh-mburger-bars::after{ bottom: 0; }
.eh-mburger.is-open .eh-mburger-bars::before{ transform: translateY(6px) rotate(45deg); }
.eh-mburger.is-open .eh-mburger-bars::after{ transform: translateY(-6px) rotate(-45deg); }
.eh-mburger.is-open .eh-mburger-bars > span{ opacity: 0; }

/* Backdrop */
.eh-mbackdrop{
  position: fixed;
  inset: 0;
  background: rgba(3, 8, 20, 0.62);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  opacity: 0;
  pointer-events: none;
  z-index: 99998;
  transition: opacity 0.28s ease;
}
.eh-mbackdrop.is-open{
  opacity: 1;
  pointer-events: auto;
}

/* Drawer */
.eh-mdrawer{
  position: fixed;
  top: 0;
  right: 0;
  width: min(88%, 340px);
  height: 100vh;
  height: 100dvh;
  background: linear-gradient(180deg, #0A1428 0%, #060D1E 100%);
  border-left: 1px solid rgba(34, 223, 251, 0.18);
  box-shadow: -24px 0 60px rgba(0,0,0,0.5);
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.22, 0.61, 0.36, 1);
  z-index: 99999;
  display: flex;
  flex-direction: column;
  will-change: transform;
  overscroll-behavior: contain;
}
.eh-mdrawer.is-open{
  transform: translateX(0);
}
.eh-mdrawer-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 22px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.eh-mdrawer-brand{
  font-family: Roboto, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #22DFFB;
}
.eh-mdrawer-close{
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 10px;
  color: #F5F7FA;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}
.eh-mdrawer-close:hover{
  border-color: rgba(34,223,251,0.45);
  background: rgba(34,223,251,0.06);
}
.eh-mdrawer-close svg{ display: block; }
.eh-mdrawer-nav{
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 8px 0 12px;
  -webkit-overflow-scrolling: touch;
}
.eh-mdrawer-nav ul{
  list-style: none;
  margin: 0;
  padding: 0;
}
.eh-mdrawer-nav a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 22px;
  font-family: Roboto, system-ui, sans-serif;
  font-size: 17px;
  font-weight: 500;
  color: #F5F7FA;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: background 0.18s ease, color 0.18s ease, padding 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}
.eh-mdrawer-nav a::after{
  content: "";
  width: 8px;
  height: 8px;
  border-right: 1.5px solid rgba(255,255,255,0.35);
  border-top: 1.5px solid rgba(255,255,255,0.35);
  transform: rotate(45deg);
  transition: border-color 0.18s ease, transform 0.18s ease;
}
.eh-mdrawer-nav a:hover,
.eh-mdrawer-nav a:active{
  background: rgba(34,223,251,0.06);
  color: #22DFFB;
  padding-left: 26px;
}
.eh-mdrawer-nav a:hover::after,
.eh-mdrawer-nav a:active::after{
  border-color: #22DFFB;
  transform: translateX(2px) rotate(45deg);
}
.eh-mdrawer-cta{
  padding: 16px 22px 22px;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.eh-mdrawer-cta a{
  display: block;
  padding: 16px 20px;
  text-align: center;
  background: linear-gradient(135deg, #22DFFB 0%, #6FE7FE 100%);
  color: #03152A;
  font-family: Roboto, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-decoration: none;
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(34, 223, 251, 0.28);
  transition: transform 0.15s ease, box-shadow 0.2s ease;
}
.eh-mdrawer-cta a:active{
  transform: scale(0.98);
  box-shadow: 0 6px 18px rgba(34, 223, 251, 0.22);
}

/* Desktop: полностью прячем drawer/backdrop чтобы не занимали DOM/painting */
@media (min-width: 1025px){
  .eh-mburger,
  .eh-mdrawer,
  .eh-mbackdrop{
    display: none !important;
  }
}


/* === Mobile icons resize (2026-07-08) ================================== */
/* На <=767px несогласованные размеры img в promo/brand — приводим к шкале. */
@media (max-width: 767px){
  /* Promo — 11 логотипов площадок (Яндекс, Google, Алиса, Нейро, ChatGPT,
     Gemini, Perplexity, VK, Дзен, Яндекс Директ, VK Реклама). Было 20px,
     на мобиле нечитаемо → 32px. */
  .elementor-widget-image.eh-promo-pill-img img{
    width: 32px;
    height: 32px;
    max-width: 32px;
  }

  /* Brand → блок «Философия» (звёздочка, отпечаток, замок). Было 40px, а
     в соседнем блоке «Что мы делаем» те же по смыслу иконки — 66px.
     Приводим философию к 56px, чтобы шкала читалась как одна серия. */
  .elementor-widget-image.eh-brand-benefit-icon-img img{
    width: 56px;
    height: 56px;
    max-width: 56px;
  }
}

/* =====================================================================
   MOBILE FIXES 09.07.2026 — divider row + tech-icon size
   ===================================================================== */

/* 1) Все st-row (line | icon/heading | line) держим в ряд на всех вьюпортах.
      Раньше на <=640 форсилось flex-direction:column — линии/картинка
      разлетались вертикально. Работает для eh-bs / eh-brand / eh-pricing / eh-dom. */
@media (max-width: 640px){
  .eh-bs-native   .eh-bs-section-title-row,
  .eh-bs-native   .eh-bs-st-row,
  .eh-brand-native .eh-bs-st-row,
  .eh-pricing-native .eh-bs-st-row,
  .eh-dom-native  .eh-bs-st-row{
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
  }
  /* Линии-градиенты — растянутся флексом, min-width убираем, лишний ограничитель тоже */
  .eh-bs-native   .eh-bs-st-row .eh-bs-line,
  .eh-brand-native .eh-bs-st-row .eh-bs-line,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line,
  .eh-dom-native  .eh-bs-st-row .eh-bs-line,
  .eh-bs-native   .eh-bs-st-row .eh-bs-line--left,
  .eh-brand-native .eh-bs-st-row .eh-bs-line--left,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left,
  .eh-dom-native  .eh-bs-st-row .eh-bs-line--left,
  .eh-bs-native   .eh-bs-st-row .eh-bs-line--right,
  .eh-brand-native .eh-bs-st-row .eh-bs-line--right,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--right,
  .eh-dom-native  .eh-bs-st-row .eh-bs-line--right{
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 20px !important;
  }
  /* Средний виджет (heading или image) — фиксированная доля, не растягивается */
  .eh-bs-native   .eh-bs-st-row > .elementor-widget-image,
  .eh-brand-native .eh-bs-st-row > .elementor-widget-image,
  .eh-pricing-native .eh-bs-st-row > .elementor-widget-image,
  .eh-dom-native  .eh-bs-st-row > .elementor-widget-image{
    flex: 0 0 auto !important;
  }
  /* Универсальный fallback по классу-родителю: любой e-flex с двумя bs-line-детьми */
  .e-con:has(> .eh-bs-line--left):has(> .eh-bs-line--right){
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
  }
}

/* 2) Tech-cards — иконка на мобилке была 84px, стала слишком мелкой на фоне
      1024×1024 png с сильной внутренней иконкой. Возвращаем к 120px
      (то, что раньше применялось на <=1100px). Так карта дышит и иконка читается. */
@media (max-width: 600px){
  .eh-tech-native .tech-icon-placeholder{
    flex: 0 0 120px !important;
    width: 120px !important;
    height: 120px !important;
    min-height: 120px !important;
    border-radius: 16px !important;
  }
}

@media (max-width: 420px){
  .eh-tech-native .tech-icon-placeholder{
    flex: 0 0 104px !important;
    width: 104px !important;
    height: 104px !important;
    min-height: 104px !important;
  }
}


/* =====================================================================
   HERO SVC CARDS 09.07.2026 — «Бренды» (5-я карточка) на всю ширину на мобилке
   ===================================================================== */

/* На <=640 карточек 5 штук по 50% → 5-я одна в 3-м ряду. Растягиваем её на 100%
   (замыкающая полоса), чтобы ряды выглядели [1|2] [3|4] [5======]. */
@media (max-width: 640px){
  .eh-hero-native .eh-svc-row > .eh-svc-card:last-child{
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
}

/* FIX 09.07.2026 — parent .eh-svc-row на <=640 оказался display:grid (не flex),
   поэтому flex-basis:100% игнорируется. Grid — grid-column: 1/-1 растягивает
   на все колонки родителя. */
@media (max-width: 640px){
  .eh-hero-native .eh-svc-row > .eh-svc-card:last-child{
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}

/* =====================================================================
   MOBILE OVERFLOW-X FIX 09.07.2026
   Проблема: .eh-dom-card::before (gradient border через padding+mask)
   выходит на 2px за размер карты → правая граница обрезается за viewport,
   визуально «блок ушёл вправо на 1 см». Плюс на некоторых секциях
   могут возникать сходные краевые баги. Глобально режем горизонтальный
   overflow — как на html/body, так и на всех наших native-секциях.
   ===================================================================== */
html, body{
  overflow-x: hidden !important;
  max-width: 100% !important;
}
.eh-hero-native,
.eh-dom-native,
.eh-pricing-native,
.eh-bs-native,
.eh-brand-native,
.eh-tech-native,
.eh-promo-native{
  overflow-x: hidden !important;
}

/* MOBILE PADDING FIX 09.07.2026 — карточки прижаты к 0/vw, gradient border ::before
   на 2px шире карты → режется overflow-x:hidden справа. Даём секциям side-padding. */
@media (max-width: 767px){
  .eh-hero-native,
  .eh-dom-native,
  .eh-pricing-native,
  .eh-bs-native,
  .eh-brand-native,
  .eh-tech-native,
  .eh-promo-native{
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

/* MOBILE HERO TITLE FIX 09.07.2026 — на 375-480px 28px + жёсткие <br>
   не помещали «от лендингов до сложных» → уезжало вправо. Уменьшаем шрифт
   и глушим <br>, чтобы браузер сам переносил по ширине. */
@media (max-width: 480px){
  .eh-bs-native .eh-bs-hero-title h2,
  .eh-bs-native .eh-bs-hero-title h2.elementor-heading-title,
  .eh-bs-native .eh-bs-hero-title .elementor-heading-title{
    font-size: 22px !important;
    line-height: 1.22 !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }
  .eh-bs-native .eh-bs-hero-title br{ display: none !important; }
  .eh-bs-native .eh-bs-hero-lead .elementor-widget-container p{
    font-size: 13px !important;
    line-height: 1.5 !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
  }
  .eh-bs-native .eh-bs-hero-lead br{ display: none !important; }
}
@media (max-width: 375px){
  .eh-bs-native .eh-bs-hero-title h2,
  .eh-bs-native .eh-bs-hero-title h2.elementor-heading-title,
  .eh-bs-native .eh-bs-hero-title .elementor-heading-title{
    font-size: 20px !important;
  }
}

/* ============================================================
   HERO BENEFITS SCALE-UP (desktop) — 10.07.2026
   Увеличиваем ТОЛЬКО содержимое (заголовок, иконку, тексты).
   Плашки, отступы, gap — не трогаем.
   Специфичность 4 класса чтобы перебить существующие 13/10px rules.
   ============================================================ */
@media (min-width: 1025px) {
  .eh-hero-native .eh-hero-ben-title .elementor-heading-title,
  .eh-hero-native .eh-hero-ben-title h2.elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.15 !important;
  }
  .eh-hero-native .eh-ben-row-ic,
  .eh-hero-native .eh-ben-row-ic.elementor-widget-image {
    width: 60px !important;
    min-width: 60px !important;
    height: 60px !important;
    flex: 0 0 60px !important;
  }
  .eh-hero-native .eh-ben-row-ic img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
  .eh-hero-native .eh-ben-row .eh-ben-row-title .elementor-heading-title,
  .eh-hero-native .eh-ben-row .eh-ben-row-title span.elementor-heading-title,
  .eh-hero-native .eh-ben-row .eh-ben-row-title h4.elementor-heading-title {
    font-size: 22px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    color: #ffffff !important;
  }
  .eh-hero-native .eh-ben-row .eh-ben-row-sub .elementor-heading-title,
  .eh-hero-native .eh-ben-row .eh-ben-row-sub span.elementor-heading-title,
  .eh-hero-native .eh-ben-row .eh-ben-row-sub h4.elementor-heading-title {
    font-size: 16px !important;
    line-height: 1.35 !important;
    color: rgba(180, 190, 210, 0.85) !important;
  }
}

/* ============================================================
   SECTION-TITLE DIVIDER redesign — 11.07.2026
   Было: [line — icon — line], всё по центру.
   Стало: [icon]  [label]
          ───────────────────────  (одна градиент-полоса под ними)
   Применяем к dom, bs, pricing (brand — st-row нет).
   ============================================================ */
.eh-dom-native .eh-bs-st-row,
.eh-bs-native .eh-bs-st-row,
.eh-pricing-native .eh-bs-st-row {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  justify-items: start !important;
  justify-content: stretch !important;
  gap: 12px 20px !important;
  flex-wrap: nowrap !important;
  max-width: 100% !important;
  padding: 28px 0 22px !important;
  box-sizing: border-box !important;
}

/* иконка — row 1 / col 1 */
.eh-dom-native .eh-bs-st-row .elementor-widget-image,
.eh-bs-native .eh-bs-st-row .elementor-widget-image,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image {
  grid-row: 1 !important;
  grid-column: 1 !important;
  flex: none !important;
  order: 0 !important;
  justify-self: start !important;
  align-self: center !important;
}

/* label ::before — row 1 / col 2 */
.eh-dom-native .eh-bs-st-row::before,
.eh-bs-native .eh-bs-st-row::before,
.eh-pricing-native .eh-bs-st-row::before {
  grid-row: 1;
  grid-column: 2;
  align-self: center;
  justify-self: start;
  font-family: 'Roboto', sans-serif;
  font-size: clamp(22px, 2.4vw, 32px);
  font-weight: 700;
  color: #F5F7FA;
  line-height: 1.12;
  letter-spacing: 0.005em;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
}
.eh-dom-native .eh-bs-st-row::before     { content: "Домены"; }
.eh-bs-native .eh-bs-st-row::before      { content: "Сайты для бизнеса"; }
.eh-pricing-native .eh-bs-st-row::before { content: "Тарифы"; }

/* левая полоса становится одной под icon+label — row 2, span 2 col */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  grid-row: 2 !important;
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 2px !important;
  flex: none !important;
  margin: 6px 0 0 !important;
  background: linear-gradient(90deg,
    rgba(34, 223, 251, 0.75) 0%,
    rgba(138, 61, 255, 0.60) 55%,
    rgba(138, 61, 255, 0.08) 92%,
    transparent 100%) !important;
  box-shadow: 0 0 12px rgba(34, 223, 251, 0.20) !important;
}

/* правая полоса скрыта — она теперь не нужна */
.eh-dom-native .eh-bs-st-row .eh-bs-line--right,
.eh-bs-native .eh-bs-st-row .eh-bs-line--right,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--right {
  display: none !important;
}

/* mobile: уменьшаем padding + label помельче */
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row,
  .eh-bs-native .eh-bs-st-row,
  .eh-pricing-native .eh-bs-st-row {
    gap: 8px 14px !important;
    padding: 20px 0 16px !important;
  }
  .eh-dom-native .eh-bs-st-row::before,
  .eh-bs-native .eh-bs-st-row::before,
  .eh-pricing-native .eh-bs-st-row::before {
    font-size: 18px;
    white-space: normal;
  }
}


/* ============================================================
   SECTION DIVIDER — уменьшить иконку + сжать полосу — 11.07.2026
   ============================================================ */
/* Иконка: примерно 48-56px */
.eh-dom-native .eh-bs-st-row .elementor-widget-image,
.eh-bs-native .eh-bs-st-row .elementor-widget-image,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image {
  width: 52px !important;
  max-width: 52px !important;
}
.eh-dom-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-bs-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container {
  max-width: 52px !important;
}
.eh-dom-native .eh-bs-st-row .elementor-widget-image img,
.eh-bs-native .eh-bs-st-row .elementor-widget-image img,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image img {
  width: 52px !important;
  max-width: 52px !important;
  height: auto !important;
}

/* Полоса — только под лейблом (col 2), не под иконкой */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  grid-column: 2 / -1 !important;
  margin: 4px 0 0 !important;
  height: 2px !important;
  justify-self: start !important;
}
/* Ширины полосы «чуть длиннее текста» — per section */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left {
  width: 200px !important;
  max-width: 200px !important;
}
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  width: 200px !important;
  max-width: 200px !important;
}
.eh-bs-native .eh-bs-st-row .eh-bs-line--left {
  width: 380px !important;
  max-width: 380px !important;
}

/* Mobile: полосу сузим ещё */
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .elementor-widget-image,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image,
  .eh-dom-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-dom-native .eh-bs-st-row .elementor-widget-image img,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image img,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image img {
    width: 40px !important;
    max-width: 40px !important;
  }
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
    width: 140px !important;
    max-width: 140px !important;
  }
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left {
    width: 240px !important;
    max-width: 240px !important;
  }
}


/* ============================================================
   SECTION DIVIDER — вертикальный разделитель + полоса ближе к тексту
   11.07.2026
   ============================================================ */
/* Полоса ближе к тексту */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  margin: -2px 0 0 !important;
}

/* Позиционируем родителя для вертикального сепаратора */
.eh-dom-native .eh-bs-st-row,
.eh-bs-native .eh-bs-st-row,
.eh-pricing-native .eh-bs-st-row {
  position: relative !important;
}

/* Тонкий вертикальный разделитель между иконкой и текстом.
   Высота = высота иконки, с плавным fade top/bottom, еле заметный. */
.eh-dom-native .eh-bs-st-row::after,
.eh-bs-native .eh-bs-st-row::after,
.eh-pricing-native .eh-bs-st-row::after {
  content: "";
  position: absolute;
  top: 32px;
  height: 42px;
  left: 62px;
  width: 1px;
  background: linear-gradient(180deg,
    transparent 0%,
    rgba(255, 255, 255, 0.10) 20%,
    rgba(255, 255, 255, 0.16) 50%,
    rgba(255, 255, 255, 0.10) 80%,
    transparent 100%);
  pointer-events: none;
  z-index: 1;
}

/* Mobile: чуть корректируем позицию разделителя под меньшую иконку 40px */
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row::after,
  .eh-bs-native .eh-bs-st-row::after,
  .eh-pricing-native .eh-bs-st-row::after {
    top: 24px;
    height: 32px;
    left: 50px;
  }
}


/* ============================================================
   SECTION DIVIDER — иконка чуть больше — 11.07.2026
   Icon 52 -> 64 (desktop), 40 -> 48 (mobile). Синхроним сепаратор.
   ============================================================ */
.eh-dom-native .eh-bs-st-row .elementor-widget-image,
.eh-bs-native .eh-bs-st-row .elementor-widget-image,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image,
.eh-dom-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-bs-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container {
  width: 64px !important;
  max-width: 64px !important;
}
.eh-dom-native .eh-bs-st-row .elementor-widget-image img,
.eh-bs-native .eh-bs-st-row .elementor-widget-image img,
.eh-pricing-native .eh-bs-st-row .elementor-widget-image img {
  width: 64px !important;
  max-width: 64px !important;
}

.eh-dom-native .eh-bs-st-row::after,
.eh-bs-native .eh-bs-st-row::after,
.eh-pricing-native .eh-bs-st-row::after {
  top: 30px !important;
  height: 54px !important;
  left: 74px !important;
}

@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .elementor-widget-image,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image,
  .eh-dom-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image .elementor-widget-container,
  .eh-dom-native .eh-bs-st-row .elementor-widget-image img,
  .eh-bs-native .eh-bs-st-row .elementor-widget-image img,
  .eh-pricing-native .eh-bs-st-row .elementor-widget-image img {
    width: 48px !important;
    max-width: 48px !important;
  }
  .eh-dom-native .eh-bs-st-row::after,
  .eh-bs-native .eh-bs-st-row::after,
  .eh-pricing-native .eh-bs-st-row::after {
    top: 22px !important;
    height: 42px !important;
    left: 58px !important;
  }
}


/* SECTION DIVIDER — полоса ещё ближе к тексту (11.07.2026 iter) */
.eh-dom-native .eh-bs-st-row,
.eh-bs-native .eh-bs-st-row,
.eh-pricing-native .eh-bs-st-row {
  row-gap: 2px !important;
}
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  margin: -4px 0 0 !important;
}


/* SECTION DIVIDER — прижимаем label к низу иконки + линию под самый label */
.eh-dom-native .eh-bs-st-row::before,
.eh-bs-native .eh-bs-st-row::before,
.eh-pricing-native .eh-bs-st-row::before {
  align-self: end !important;
  padding-bottom: 2px !important;
}
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  margin: -1px 0 0 !important;
  align-self: start !important;
}
.eh-dom-native .eh-bs-st-row,
.eh-bs-native .eh-bs-st-row,
.eh-pricing-native .eh-bs-st-row {
  row-gap: 0 !important;
}


/* SECTION DIVIDER — линия жёстко под label через transform (11.07.2026 iter2) */
.eh-dom-native .eh-bs-st-row::before,
.eh-bs-native .eh-bs-st-row::before,
.eh-pricing-native .eh-bs-st-row::before {
  line-height: 1 !important;
  padding: 0 !important;
  align-self: end !important;
}
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  margin: 0 !important;
  align-self: start !important;
  transform: translateY(-14px) !important;
}


/* SECTION DIVIDER — линия длиннее + вспышка на конце (11.07.2026 iter3) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  width: 260px !important;
  max-width: 260px !important;
  position: relative !important;
  overflow: visible !important;
}
.eh-bs-native .eh-bs-st-row .eh-bs-line--left {
  width: 460px !important;
  max-width: 460px !important;
  position: relative !important;
  overflow: visible !important;
}

/* Круглая вспышка на конце полосы */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 8px;
  height: 8px;
  transform: translateY(-50%);
  border-radius: 50%;
  background: rgba(34, 223, 251, 1);
  box-shadow:
    0 0 10px 2px rgba(34, 223, 251, 0.85),
    0 0 22px 6px rgba(34, 223, 251, 0.45),
    0 0 40px 14px rgba(138, 61, 255, 0.25);
  pointer-events: none;
  z-index: 2;
}

@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
    width: 180px !important;
    max-width: 180px !important;
  }
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left {
    width: 300px !important;
    max-width: 300px !important;
  }
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 6px;
    height: 6px;
    right: 6px;
  }
}


/* SECTION DIVIDER — точка раньше конца + фиолетовая яркая (11.07.2026) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
  right: auto !important;
  left: 60% !important;
  width: 10px !important;
  height: 10px !important;
  background: #B36DFF !important;
  box-shadow:
    0 0 6px 1px rgba(179, 109, 255, 1),
    0 0 14px 4px rgba(155, 92, 255, 0.85),
    0 0 28px 10px rgba(138, 61, 255, 0.55),
    0 0 50px 18px rgba(138, 61, 255, 0.28) !important;
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 8px !important;
    height: 8px !important;
    left: 60% !important;
  }
}


/* SECTION DIVIDER — сине-белая яркая точка + полоса длиннее (11.07.2026 iter4) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  width: 340px !important;
  max-width: 340px !important;
}
.eh-bs-native .eh-bs-st-row .eh-bs-line--left {
  width: 560px !important;
  max-width: 560px !important;
}

.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
  background: #FFFFFF !important;
  box-shadow:
    0 0 3px 1px #FFFFFF,
    0 0 8px 2px #E7FBFF,
    0 0 16px 5px #22DFFB,
    0 0 32px 12px rgba(34, 223, 251, 0.75),
    0 0 60px 22px rgba(34, 223, 251, 0.4) !important;
}

@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
    width: 220px !important;
    max-width: 220px !important;
  }
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left {
    width: 360px !important;
    max-width: 360px !important;
  }
}


/* SECTION DIVIDER — полоса ещё длиннее (11.07.2026 iter5) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
  width: 480px !important;
  max-width: 480px !important;
}
.eh-bs-native .eh-bs-st-row .eh-bs-line--left {
  width: 760px !important;
  max-width: 760px !important;
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left {
    width: 280px !important;
    max-width: 280px !important;
  }
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left {
    width: 460px !important;
    max-width: 460px !important;
  }
}


/* SECTION DIVIDER — сама точка с градиентом внутри (11.07.2026 iter6) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
  width: 14px !important;
  height: 14px !important;
  background: radial-gradient(circle at 35% 35%,
    #FFFFFF 0%,
    #E7FBFF 25%,
    #22DFFB 55%,
    #0BC7DC 85%,
    #0891B2 100%) !important;
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 11px !important;
    height: 11px !important;
  }
}


/* SECTION DIVIDER — точка дальше от конца текста, правее (11.07.2026 iter7) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  left: 78% !important;
}


/* SECTION DIVIDER — точку раньше на полосе (11.07.2026 iter8) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  left: 42% !important;
}


/* SECTION DIVIDER — точку ещё раньше (11.07.2026 iter9) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  left: 30% !important;
}


/* SECTION DIVIDER — точка меньше и приглушённее (11.07.2026 iter10) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  width: 9px !important;
  height: 9px !important;
  box-shadow:
    0 0 4px 1px rgba(34, 223, 251, 0.55),
    0 0 10px 3px rgba(34, 223, 251, 0.30),
    0 0 20px 6px rgba(34, 223, 251, 0.15) !important;
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 7px !important;
    height: 7px !important;
  }
}


/* SECTION DIVIDER — кружок cyan→purple gradient + свечение крупнее (11.07.2026 iter11) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  background: radial-gradient(circle at 30% 30%,
    #FFFFFF 0%,
    #E7FBFF 12%,
    #22DFFB 40%,
    #8A3DFF 90%,
    #5B1FBF 100%) !important;
  box-shadow:
    0 0 6px 1px rgba(34, 223, 251, 0.65),
    0 0 14px 4px rgba(34, 223, 251, 0.40),
    0 0 26px 8px rgba(138, 61, 255, 0.35),
    0 0 44px 14px rgba(138, 61, 255, 0.20) !important;
}


/* SECTION DIVIDER — не солидный круг, а мягкая вспышка (11.07.2026 iter12) */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  width: 20px !important;
  height: 20px !important;
  background: radial-gradient(circle,
    rgba(255, 255, 255, 0.95) 0%,
    rgba(231, 251, 255, 0.65) 15%,
    rgba(34, 223, 251, 0.35) 40%,
    rgba(34, 223, 251, 0.10) 70%,
    transparent 100%) !important;
  box-shadow:
    0 0 8px 2px rgba(34, 223, 251, 0.35),
    0 0 20px 6px rgba(34, 223, 251, 0.20),
    0 0 40px 12px rgba(138, 61, 255, 0.15) !important;
  filter: blur(0.3px);
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 15px !important;
    height: 15px !important;
  }
}


/* SECTION DIVIDER — точку в bs дальше, т.к. текст длиннее (11.07.2026 iter13) */
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  left: 55% !important;
}
@media (max-width: 640px) {
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
    left: 62% !important;
  }
}


/* ============================================================
   SECTION DIVIDER — reset для НЕ-первых st-row в bs
   Sub-dividers «Что делаем» / «На чём разрабатываем» —
   оригинальный centered pattern: [line] [heading] [line]
   11.07.2026 iter14
   ============================================================ */
.eh-bs-native .eh-bs-st-row:not(:first-of-type) {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  padding: 40px 0 20px !important;
  position: relative !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  row-gap: normal !important;
}
/* Убираем наш label */
.eh-bs-native .eh-bs-st-row:not(:first-of-type)::before,
.eh-bs-native .eh-bs-st-row:not(:first-of-type)::after {
  content: none !important;
  display: none !important;
}
/* Иконка (если есть) — обратно auto */
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .elementor-widget-image,
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .elementor-widget-image .elementor-widget-container,
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .elementor-widget-image img {
  width: auto !important;
  max-width: none !important;
  grid-row: auto !important;
  grid-column: auto !important;
}
/* Обе полосы возвращаем видимыми и симметричными */
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--left,
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--right {
  display: block !important;
  flex: 1 1 0 !important;
  height: 1px !important;
  width: auto !important;
  max-width: none !important;
  min-width: 40px !important;
  margin: 0 !important;
  transform: none !important;
  grid-row: auto !important;
  grid-column: auto !important;
  box-shadow: none !important;
  align-self: center !important;
  position: static !important;
}
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--left {
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(34, 223, 251, 0.35) 45%,
    rgba(138, 61, 255, 0.5) 100%) !important;
}
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--right {
  background: linear-gradient(90deg,
    rgba(138, 61, 255, 0.5) 0%,
    rgba(34, 223, 251, 0.35) 55%,
    transparent 100%) !important;
}
/* Точку на конце полосы убираем */
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row:not(:first-of-type) .eh-bs-line--right::after {
  content: none !important;
  display: none !important;
}


/* SECTION DIVIDER — вспышка как на референсе: точечное ядро + чистый halo
   Никакого видимого круга — весь эффект через box-shadow. 11.07.2026 iter15 */
.eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
.eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
  width: 5px !important;
  height: 5px !important;
  background: #FFFFFF !important;
  filter: none !important;
  border-radius: 50% !important;
  box-shadow:
    0 0 2px 1px #FFFFFF,
    0 0 6px 2px rgba(231, 251, 255, 0.9),
    0 0 14px 4px rgba(34, 223, 251, 0.65),
    0 0 28px 8px rgba(138, 61, 255, 0.45),
    0 0 55px 18px rgba(138, 61, 255, 0.20) !important;
}
@media (max-width: 640px) {
  .eh-dom-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-pricing-native .eh-bs-st-row .eh-bs-line--left::after,
  .eh-bs-native .eh-bs-st-row .eh-bs-line--left::after {
    width: 4px !important;
    height: 4px !important;
  }
}

/* === BANNERS ALL 2026-07-14 (compact, left-aligned) === */
.eh-dom-banner-row,
.eh-pricing-banner-row,
.eh-bs-banner-row,
.eh-promo-banner-row,
.eh-brand-banner-row,
.eh-contact-banner-row,
.eh-tech-banner-row{
  justify-content: flex-start !important;
  padding-bottom: 32px !important;
}
.eh-dom-banner-img,
.eh-pricing-banner-img,
.eh-bs-banner-img,
.eh-promo-banner-img,
.eh-brand-banner-img,
.eh-contact-banner-img,
.eh-tech-banner-img{
  width: 100%;
  max-width: 320px;
  margin: 0;
}
.eh-dom-banner-img .elementor-widget-container,
.eh-pricing-banner-img .elementor-widget-container,
.eh-bs-banner-img .elementor-widget-container,
.eh-promo-banner-img .elementor-widget-container,
.eh-brand-banner-img .elementor-widget-container,
.eh-contact-banner-img .elementor-widget-container,
.eh-tech-banner-img .elementor-widget-container{
  width: 100%;
  display: block;
}
.eh-dom-banner-img img,
.eh-pricing-banner-img img,
.eh-bs-banner-img img,
.eh-promo-banner-img img,
.eh-brand-banner-img img,
.eh-contact-banner-img img,
.eh-tech-banner-img img{
  width: 100%;
  max-width: 320px;
  height: auto;
  display: block;
  margin: 0;
}
@media (max-width: 1024px){
  .eh-dom-banner-img,
  .eh-pricing-banner-img,
  .eh-bs-banner-img,
  .eh-promo-banner-img,
  .eh-brand-banner-img,
  .eh-tech-banner-img,
  .eh-contact-banner-img,
  .eh-dom-banner-img img,
  .eh-pricing-banner-img img,
  .eh-bs-banner-img img,
  .eh-promo-banner-img img,
  .eh-brand-banner-img img,
    .eh-contact-banner-img img,
  .eh-tech-banner-img img{
    max-width: 280px;
  }
}
@media (max-width: 768px){
  .eh-dom-banner-row,
  .eh-pricing-banner-row,
  .eh-bs-banner-row,
  .eh-promo-banner-row,
  .eh-brand-banner-row,
    .eh-contact-banner-row,
  .eh-tech-banner-row{
    padding-bottom: 20px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .eh-dom-banner-img,
  .eh-pricing-banner-img,
  .eh-bs-banner-img,
  .eh-promo-banner-img,
  .eh-brand-banner-img,
  .eh-tech-banner-img,
  .eh-contact-banner-img,
  .eh-dom-banner-img img,
  .eh-pricing-banner-img img,
  .eh-bs-banner-img img,
  .eh-promo-banner-img img,
  .eh-brand-banner-img img,
    .eh-contact-banner-img img,
  .eh-tech-banner-img img{
    max-width: 220px;
  }
}


/* ============================================================
   INCLUDED-HEADER — симметричная правая линия через ::after
   (12.07.2026) — в DOM только .eh-line--left, из-за flex:1
   heading уходил вправо. Добавляем зеркальную линию справа.
   ============================================================ */
.eh-pricing-native .eh-included-header{
  position: relative;
}
.eh-pricing-native .eh-included-header::after{
  content: "";
  flex: 1 1 0 !important;
  min-width: 0 !important;
  height: 1px !important;
  align-self: center !important;
  background-image: linear-gradient(90deg, #00C8FF 0%, rgba(0,200,255,0) 100%) !important;
  box-shadow: 0 0 10px rgba(0,200,255,0.30) !important;
}
/* мобилка — линии не видны, спрячем правую */
@media (max-width: 600px){
  .eh-pricing-native .eh-included-header::after{
    display: none !important;
  }
}


/* ============================================================
   BRAND — уменьшение картинок на ПК (12.07.2026)
   Философия (лампочка) + benefits (звезда/отпечаток/щит) +
   works (лупа/щит-чек/документ) рендерились в оригинале
   250-342px = огромные. Приводим к читаемой иконочной шкале.
   ============================================================ */

/* Философия — крупная лампочка отдельно от 3 benefit'ов */
.eh-brand-native .elementor-widget-image.eh-brand-philosophy-icon-img img{
  width: 96px !important;
  height: auto !important;
  max-width: 96px !important;
}

/* Benefit-иконки (звезда/отпечаток/щит) — на ПК */
.eh-brand-native .elementor-widget-image.eh-brand-benefit-icon-img img{
  width: 72px !important;
  height: auto !important;
  max-width: 72px !important;
}

/* Work-иконки (лупа/щит-чек/документ) — «Что мы делаем» */
.eh-brand-native .elementor-widget-image.eh-brand-work-icon-img img{
  width: 88px !important;
  height: auto !important;
  max-width: 88px !important;
}

/* Планшет 768-1024 — оставляем плавно */
@media (max-width: 1024px) and (min-width: 768px){
  .eh-brand-native .elementor-widget-image.eh-brand-philosophy-icon-img img{
    width: 84px !important; max-width: 84px !important;
  }
  .eh-brand-native .elementor-widget-image.eh-brand-benefit-icon-img img{
    width: 64px !important; max-width: 64px !important;
  }
  .eh-brand-native .elementor-widget-image.eh-brand-work-icon-img img{
    width: 76px !important; max-width: 76px !important;
  }
}

/* Мобилка (<=767) — уже была настройка benefit=56px, добавим остальные */
@media (max-width: 767px){
  .eh-brand-native .elementor-widget-image.eh-brand-philosophy-icon-img img{
    width: 72px !important; max-width: 72px !important;
  }
  .eh-brand-native .elementor-widget-image.eh-brand-work-icon-img img{
    width: 64px !important; max-width: 64px !important;
  }
}


/* ============================================================
   BRAND ICONS — жёсткий override по widget-id (12.07.2026 iter2)
   Первый iter1 не долетел до юзера (кеш/специфичность).
   Селектор с elementor-element-<id> = specificity (0,4,0) —
   гарантированно выше любого child-theme правила.
   ============================================================ */

/* Философия — лампочка (id d299e72) */
.eh-brand-native .elementor-element-d299e72 img,
.eh-brand-native .elementor-element-d299e72 .elementor-widget-container img,
.eh-brand-native .eh-brand-philosophy-icon-img img{
  width: 96px !important;
  height: auto !important;
  max-width: 96px !important;
  min-width: 0 !important;
}
/* сам widget-container не даёт растянуть на всю ширину */
.eh-brand-native .elementor-element-d299e72,
.eh-brand-native .elementor-element-d299e72 .elementor-widget-container{
  width: 96px !important;
  max-width: 96px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Benefit-иконки (звезда 49fbd24, отпечаток 07a5000, щит 9959abf) */
.eh-brand-native .elementor-element-49fbd24 img,
.eh-brand-native .elementor-element-07a5000 img,
.eh-brand-native .elementor-element-9959abf img,
.eh-brand-native .eh-brand-benefit-icon-img img{
  width: 72px !important;
  height: auto !important;
  max-width: 72px !important;
  min-width: 0 !important;
}
.eh-brand-native .elementor-element-49fbd24,
.eh-brand-native .elementor-element-07a5000,
.eh-brand-native .elementor-element-9959abf,
.eh-brand-native .elementor-element-49fbd24 .elementor-widget-container,
.eh-brand-native .elementor-element-07a5000 .elementor-widget-container,
.eh-brand-native .elementor-element-9959abf .elementor-widget-container{
  width: 72px !important;
  max-width: 72px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Work-иконки (лупа 706155b, щит-чек 7632792, док 93a1a71) */
.eh-brand-native .elementor-element-706155b img,
.eh-brand-native .elementor-element-7632792 img,
.eh-brand-native .elementor-element-93a1a71 img,
.eh-brand-native .eh-brand-work-icon-img img{
  width: 88px !important;
  height: auto !important;
  max-width: 88px !important;
  min-width: 0 !important;
}
.eh-brand-native .elementor-element-706155b,
.eh-brand-native .elementor-element-7632792,
.eh-brand-native .elementor-element-93a1a71,
.eh-brand-native .elementor-element-706155b .elementor-widget-container,
.eh-brand-native .elementor-element-7632792 .elementor-widget-container,
.eh-brand-native .elementor-element-93a1a71 .elementor-widget-container{
  width: 88px !important;
  max-width: 88px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Планшет */
@media (max-width: 1024px) and (min-width: 768px){
  .eh-brand-native .elementor-element-d299e72,
  .eh-brand-native .elementor-element-d299e72 .elementor-widget-container,
  .eh-brand-native .elementor-element-d299e72 img{
    width: 84px !important; max-width: 84px !important;
  }
  .eh-brand-native .elementor-element-49fbd24,
  .eh-brand-native .elementor-element-07a5000,
  .eh-brand-native .elementor-element-9959abf,
  .eh-brand-native .elementor-element-49fbd24 .elementor-widget-container,
  .eh-brand-native .elementor-element-07a5000 .elementor-widget-container,
  .eh-brand-native .elementor-element-9959abf .elementor-widget-container,
  .eh-brand-native .elementor-element-49fbd24 img,
  .eh-brand-native .elementor-element-07a5000 img,
  .eh-brand-native .elementor-element-9959abf img{
    width: 64px !important; max-width: 64px !important;
  }
  .eh-brand-native .elementor-element-706155b,
  .eh-brand-native .elementor-element-7632792,
  .eh-brand-native .elementor-element-93a1a71,
  .eh-brand-native .elementor-element-706155b .elementor-widget-container,
  .eh-brand-native .elementor-element-7632792 .elementor-widget-container,
  .eh-brand-native .elementor-element-93a1a71 .elementor-widget-container,
  .eh-brand-native .elementor-element-706155b img,
  .eh-brand-native .elementor-element-7632792 img,
  .eh-brand-native .elementor-element-93a1a71 img{
    width: 76px !important; max-width: 76px !important;
  }
}

/* Мобилка */
@media (max-width: 767px){
  .eh-brand-native .elementor-element-d299e72,
  .eh-brand-native .elementor-element-d299e72 .elementor-widget-container,
  .eh-brand-native .elementor-element-d299e72 img{
    width: 72px !important; max-width: 72px !important;
  }
  .eh-brand-native .elementor-element-49fbd24,
  .eh-brand-native .elementor-element-07a5000,
  .eh-brand-native .elementor-element-9959abf,
  .eh-brand-native .elementor-element-49fbd24 .elementor-widget-container,
  .eh-brand-native .elementor-element-07a5000 .elementor-widget-container,
  .eh-brand-native .elementor-element-9959abf .elementor-widget-container,
  .eh-brand-native .elementor-element-49fbd24 img,
  .eh-brand-native .elementor-element-07a5000 img,
  .eh-brand-native .elementor-element-9959abf img{
    width: 56px !important; max-width: 56px !important;
  }
  .eh-brand-native .elementor-element-706155b,
  .eh-brand-native .elementor-element-7632792,
  .eh-brand-native .elementor-element-93a1a71,
  .eh-brand-native .elementor-element-706155b .elementor-widget-container,
  .eh-brand-native .elementor-element-7632792 .elementor-widget-container,
  .eh-brand-native .elementor-element-93a1a71 .elementor-widget-container,
  .eh-brand-native .elementor-element-706155b img,
  .eh-brand-native .elementor-element-7632792 img,
  .eh-brand-native .elementor-element-93a1a71 img{
    width: 64px !important; max-width: 64px !important;
  }
}

/* =====================================================================
   HOSTING PAGE (post 8109) — 17.07.2026
   Первый экран лендинга «ЭластикХостинг — хостинг нового поколения»
   ===================================================================== */

/* --- 1) Тёмный фон для всей страницы + parent-theme wrappers.
       Elementor kit tokens могут не резолвиться на новой странице,
       поэтому хардкодим #030817. --- */
body.page-id-8109,
body.page-id-8109 .site,
body.page-id-8109 .main-contain,
body.page-id-8109 .offcontents,
body.page-id-8109 .main-container,
body.page-id-8109 #content,
body.page-id-8109 .entry-content{
  background: #030817 !important;
  background-color: #030817 !important;
  color: #F5F7FA;
}

/* --- секции прозрачны + glow bg аналогично promo/brand/tech --- */
.eh-host-native{
  background-color: transparent !important;
  background-image: none !important;
  overflow: visible !important;
  isolation: auto !important;
  position: relative !important;
  z-index: 0;
}

/* ---------- HERO ---------- */
.eh-host-hero{
  min-height: auto;
}
.eh-host-hero::before{
  content: '';
  position: absolute;
  left: 0; right: 0;
  top: -100px; bottom: -100px;
  z-index: -1;
  pointer-events: none;
  background-image:
    radial-gradient(900px 620px at 68% 22%, rgba(34,223,251,0.14) 0%, rgba(34,223,251,0) 60%),
    radial-gradient(700px 500px at 88% 70%, rgba(139,66,255,0.14) 0%, rgba(139,66,255,0) 60%),
    radial-gradient(600px 500px at 10% 60%, rgba(37,136,255,0.06) 0%, rgba(37,136,255,0) 60%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 100px, #000 calc(100% - 100px), transparent 100%);
          mask-image: linear-gradient(to bottom, transparent 0%, #000 100px, #000 calc(100% - 100px), transparent 100%);
}
/* перспективная неоновая сетка в правой нижней части */
.eh-host-hero::after{
  content: '';
  position: absolute;
  right: -6%;
  bottom: -4%;
  width: 62%;
  height: 58%;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(0,207,255,0.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(139,66,255,0.14) 1px, transparent 1px);
  background-size: 46px 46px, 46px 46px;
  background-position: 0 0, 0 0;
  transform: perspective(700px) rotateX(58deg) rotateZ(-2deg);
  transform-origin: 50% 100%;
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at 60% 65%, #000 0%, transparent 75%);
          mask-image: radial-gradient(ellipse 80% 60% at 60% 65%, #000 0%, transparent 75%);
  opacity: .9;
}

/* ---------- grid 43/57 ---------- */
/* hero-grid — boxed container, использует .e-con-inner */
.eh-host-hero-grid{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  align-items: center;
}
.eh-host-hero-grid > .e-con-inner{
  display: grid !important;
  grid-template-columns: minmax(0, 890fr) minmax(0, 980fr);
  gap: 20px;
  align-items: center;
  padding: 0;
}
/* hero-left / hero-right — full containers (без .e-con-inner) */
.eh-host-hero-left,
.eh-host-hero-right{
  width: 100%;
  min-width: 0;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column;
  gap: 6px;
}
.eh-host-hero-right{
  justify-content: center;
  align-items: flex-start;
  gap: 0;
}

/* ---------- H1 (обновлено 18.07: crumbling переносы через span.line, clamp typo) ---------- */
.eh-host-h1 .elementor-heading-title{
  font-family: "Inter", "Roboto", sans-serif;
  color: #F7F9FF !important;
  font-size: clamp(38px, 3vw, 58px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em;
  margin: 0 0 8px !important;
  overflow-wrap: normal;
  hyphens: none;
}
.eh-host-h1 .eh-h1-line1,
.eh-host-h1 .eh-h1-line2{
  display: inline;
  white-space: nowrap;
}

/* ---------- H2 accent cyan (Под любой бюджет и проект) ---------- */
.eh-host-h2-accent .elementor-heading-title{
  color: #00EAFF !important;
  font-size: clamp(22px, 1.85vw, 34px) !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  margin: 12px 0 4px !important;
  white-space: nowrap;
}

/* ---------- Sublead (От лендинга до маркетплейса) ---------- */
.eh-host-lead p{
  color: #B9C2D2 !important;
  font-size: clamp(16px, 1.25vw, 24px) !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  white-space: nowrap;
}

/* ---------- Claims «Быстро • Надежно • Просто» ---------- */
.eh-host-trio .elementor-heading-title{
  color: #F7F9FF !important;
  font-size: clamp(20px, 1.55vw, 28px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 22px 0 0 !important;
  white-space: nowrap;
}
.eh-host-trio .eh-host-dot{
  display: inline-block;
  color: transparent;
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #00EAFF;
  box-shadow: 0 0 8px rgba(0, 234, 255, 0.55);
  font-size: 0;
  line-height: 0;
  margin: 0 4px;
}

/* ---------- Features list (5 пунктов, min-height 76, разделитель на всю ширину) ---------- */
.eh-host-features{
  margin-top: 28px;
  --icon-size: 44px !important;
}
.eh-host-features .elementor-icon-list-items{
  padding: 0;
  margin: 0;
}
.eh-host-features .elementor-icon-list-item{
  position: relative;
  padding: 14px 0 !important;
  margin: 0 !important;
  min-height: 76px;
  align-items: center;
  box-sizing: border-box;
}
.eh-host-features .elementor-icon-list-item:not(:last-child){
  border-bottom: 1px solid rgba(48, 115, 151, 0.35);
}
.eh-host-features .elementor-icon-list-item:not(:last-child)::after{
  content: none;
}
.eh-host-features .elementor-icon-list-icon{
  width: 56px;
  min-width: 56px;
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  padding-right: 18px !important;
  font-size: 44px !important;
}
.eh-host-features .elementor-icon-list-icon i,
.eh-host-features .elementor-icon-list-icon svg{
  font-size: 44px !important;
  width: 44px !important;
  height: 44px !important;
  color: #00EAFF !important;
  fill: #00EAFF !important;
  filter: drop-shadow(0 0 8px rgba(0, 234, 255, 0.35));
}
.eh-host-features .elementor-icon-list-text{
  color: #EFF2FA !important;
  font-size: clamp(15px, 1.15vw, 20px) !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

/* ---------- Illustration ---------- */
.eh-host-illustration img{
  max-width: 100%;
  height: auto;
  filter: drop-shadow(0 12px 40px rgba(0,207,255,0.18));
}

/* ---------- Tariffs title ---------- */
.eh-host-tariffs > .e-con-inner{
  max-width: 1240px;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
  gap: 14px;
}
.eh-host-tariffs-title .elementor-heading-title{
  color: #00D7F7 !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

/* ---------- Tariffs row (full container, без .e-con-inner) ---------- */
.eh-host-tariffs-row{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  padding: 0 !important;
}

/* ---------- Tariff card (обновлено 18.07: крупнее, 100px иконка, name 28, desc 20) ---------- */
.eh-host-tariff{
  min-height: 180px;
  padding: 28px 32px !important;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(3, 18, 34, 0.94), rgba(3, 9, 25, 0.98));
  border: 1px solid rgba(0, 234, 255, 0.5);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
  cursor: pointer;
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 24px !important;
  width: 100%;
  box-shadow: 0 0 14px rgba(0, 234, 255, 0.06), inset 0 0 14px rgba(0, 234, 255, 0.02);
}
.eh-host-tariff:hover{
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0, 234, 255, 0.16), inset 0 0 16px rgba(0, 234, 255, 0.03);
  border-color: rgba(0, 234, 255, 0.9);
}
.eh-host-tariff:focus-visible{
  outline: 2px solid #00EAFF;
  outline-offset: 2px;
}

/* purple variant */
.eh-host-tariff-purple{
  border-color: rgba(179, 70, 255, 0.5);
  box-shadow: 0 0 14px rgba(179, 70, 255, 0.07), inset 0 0 14px rgba(179, 70, 255, 0.02);
}
.eh-host-tariff-purple:hover{
  border-color: rgba(179, 70, 255, 0.9);
  box-shadow: 0 10px 24px rgba(179, 70, 255, 0.2), inset 0 0 16px rgba(179, 70, 255, 0.03);
}
.eh-host-tariff-purple:focus-visible{ outline-color: #B346FF; }

/* icon block — крупнее по новому ТЗ */
.eh-host-tariff-icon{
  flex: 0 0 100px;
  width: 100px;
}
.eh-host-tariff-icon .elementor-widget-container,
.eh-host-tariff-icon img{
  width: 100px !important;
  max-width: 100px !important;
  height: auto;
  display: block;
}

/* text block */
.eh-host-tariff-text{
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column;
  gap: 6px !important;
}
.eh-host-tariff-name .elementor-heading-title{
  font-size: clamp(22px, 1.8vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  color: #00EAFF !important;
  margin: 0 !important;
  letter-spacing: 0.2px;
}
.eh-host-tariff-purple .eh-host-tariff-name .elementor-heading-title{
  color: #B346FF !important;
}
.eh-host-tariff-desc p{
  color: #939DB2 !important;
  font-size: clamp(15px, 1.15vw, 20px) !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  color: #B9C2D2 !important;
  font-weight: 400 !important;
}

/* --- Safety: скрыть заголовок «Тарифы» если Elementor кэш его подтянет --- */
.eh-host-tariffs-title{ display: none !important; }

/* ---------- PLAN "BASIC" — TARIFF CARD BLOCK (18.07.2026) ---------- */
/* full-width container wrapper — секция без max-width, block сам держит 1860 */
.eh-host-plan-basic{ width: 100%; }
.eh-host-plan-basic .eh-plan-basic-wrap{ width: 100%; display: block; }
.eh-host-plan-basic .eh-plan-basic-wrap .elementor-widget-container{ padding: 0; }

.eh-plan{
  --eh-plan-bg-1: #03101f;
  --eh-plan-bg-2: #020817;
  --eh-plan-bg-3: #08031a;
  --eh-plan-text: #f6f8ff;
  --eh-plan-text-soft: #e9edf7;
  --eh-plan-text-mut: #bac3d3;
  --eh-plan-cyan: #00eaff;
  --eh-plan-cyan-2: #00bfe8;
  --eh-plan-purple: #b346ff;
  --eh-plan-purple-2: #d259ff;
  --eh-plan-div-cyan: rgba(33, 105, 143, 0.35);
  --eh-plan-div-purple: rgba(126, 45, 165, 0.35);

  position: relative;
  width: calc(100% - 40px);
  max-width: 1240px;
  min-height: auto;
  margin: 20px auto;
  padding: 20px;
  border-radius: 16px;
  background:
    radial-gradient(circle at 5% 50%, rgba(0, 225, 255, 0.08), transparent 28%),
    radial-gradient(circle at 95% 50%, rgba(166, 55, 255, 0.09), transparent 30%),
    linear-gradient(135deg, var(--eh-plan-bg-1) 0%, var(--eh-plan-bg-2) 50%, var(--eh-plan-bg-3) 100%);
  color: var(--eh-plan-text);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 22px rgba(0, 225, 255, 0.08),
    0 0 26px rgba(151, 55, 255, 0.08),
    inset 0 0 24px rgba(0, 136, 255, 0.025);
  overflow: hidden;
  isolation: isolate;
}
/* neon gradient border через ::before + mask */
.eh-plan::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #00eaff 0%, #4ba7ff 50%, #a83cff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-plan__inner{
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

/* ============== ROW 1: title | types | included ============== */
.eh-plan__row--1{
  display: grid;
  grid-template-columns: 560fr 620fr 560fr;
  gap: 14px;
  align-items: stretch;
}
.eh-plan__cell{
  min-width: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* --- TITLE + PRICE --- */
.eh-plan__cell--title{
  gap: 4px;
  justify-content: center;
}
.eh-plan__title{
  margin: 0 !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em;
  color: var(--eh-plan-text) !important;
  white-space: nowrap;
}
.eh-plan__title-nowrap{ white-space: nowrap; }
.eh-plan__price{
  display: flex;
  align-items: baseline;
  gap: 5px;
  margin-top: 4px;
  white-space: nowrap;
}
.eh-plan__price-from,
.eh-plan__price-unit{
  font-size: 16px;
  font-weight: 400;
  color: var(--eh-plan-text-mut);
}
.eh-plan__price-value{
  font-size: 32px;
  font-weight: 600;
  color: var(--eh-plan-cyan);
  letter-spacing: -0.01em;
  white-space: nowrap;
}

/* --- TYPES (tabs) --- */
.eh-plan__cell--types{
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  flex-wrap: wrap;
  align-self: center;
}
.eh-plan__cell--included{ align-self: stretch; }
.eh-plan__type{
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 40px;
  padding: 0 12px;
  border-radius: 5px;
  background: rgba(5, 18, 37, 0.9);
  border: 1px solid;
  font-family: inherit;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.01em;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.eh-plan__type-ico{
  width: 17px;
  height: 17px;
  flex-shrink: 0;
}
.eh-plan__type--start{
  color: var(--eh-plan-cyan);
  border-color: #00cfee;
}
.eh-plan__type--start.is-active{
  box-shadow:
    inset 0 0 12px rgba(0, 229, 255, 0.08),
    0 0 8px rgba(0, 229, 255, 0.08);
}
.eh-plan__type--pro{
  color: #e0c5ff;
  border-color: #a944ff;
}
.eh-plan__type--pro.is-active{
  box-shadow:
    inset 0 0 12px rgba(169, 68, 255, 0.10),
    0 0 8px rgba(169, 68, 255, 0.10);
}
.eh-plan__type--biz{
  color: var(--eh-plan-cyan);
  border-color: #008ebc;
}
.eh-plan__type--biz.is-active{
  box-shadow:
    inset 0 0 12px rgba(0, 142, 188, 0.10),
    0 0 8px rgba(0, 142, 188, 0.10);
}
.eh-plan__type:hover{
  background: rgba(9, 26, 48, 0.95);
  transform: translateY(-1px);
}
.eh-plan__type:focus-visible{
  outline: 2px solid var(--eh-plan-cyan);
  outline-offset: 2px;
}

/* --- SECTION TITLES --- */
.eh-plan__section-title{
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin: 0 0 8px;
  text-transform: none;
  line-height: 1;
}
.eh-plan__section-title--cyan{ color: var(--eh-plan-cyan); }
.eh-plan__section-title--purple{ color: var(--eh-plan-purple-2); }

/* --- INCLUDED (4 columns) --- */
.eh-plan__inc{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 0;
}
.eh-plan__inc-item{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  padding: 2px 8px;
  border-left: 1px solid var(--eh-plan-div-cyan);
  min-width: 0;
  text-align: center;
}
.eh-plan__inc-item:first-child{ border-left: 0; padding-left: 0; }
.eh-plan__inc-ico{
  width: 30px;
  height: 30px;
  color: var(--eh-plan-cyan);
  flex-shrink: 0;
}
.eh-plan__inc-text{
  font-size: 11px;
  line-height: 1.25;
  color: var(--eh-plan-text);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-plan__nowrap{ white-space: nowrap; }

/* ============== ROW 2: packages | bonuses ============== */
/* пропорция подобрана так, чтобы bonuses по правому краю совпадал
   с колонкой "включено" в row-1 (32.2%): 67.8/32.2 = 2.106 */
.eh-plan__row--2{
  display: grid;
  grid-template-columns: 1180fr 560fr;
  gap: 14px;
  align-items: stretch;
}

/* --- PACKAGES (5 items) --- */
.eh-plan__cell--packages{ padding: 2px 0; }
.eh-plan__pkg{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
  gap: 0;
}
.eh-plan__pkg-item{
  display: grid;
  grid-template-columns: 16px 1fr;
  column-gap: 8px;
  align-items: start;
  min-width: 0;
  padding: 2px 0 2px 12px;
  border-left: 1px solid rgba(30, 100, 135, 0.35);
}
.eh-plan__pkg-item:first-child{ border-left: 0; padding-left: 0; }
.eh-plan__pkg-ico{
  width: 16px;
  height: 16px;
  color: var(--eh-plan-cyan);
  margin-top: 1px;
  flex-shrink: 0;
}
.eh-plan__pkg-text{
  font-size: 11px;
  line-height: 1.3;
  color: var(--eh-plan-text-soft);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* --- BONUSES (3 items) --- */
.eh-plan__cell--bonuses{ padding: 2px 0; }
.eh-plan__bon{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 0;
}
.eh-plan__bon-item{
  display: grid;
  grid-template-columns: 20px 1fr;
  column-gap: 7px;
  align-items: start;
  min-width: 0;
  padding: 2px 0 2px 10px;
  border-left: 1px solid var(--eh-plan-div-purple);
}
.eh-plan__bon-item:first-child{ border-left: 0; padding-left: 0; }
.eh-plan__bon-ico{
  width: 20px;
  height: 20px;
  color: #c64cff;
  margin-top: 1px;
  flex-shrink: 0;
}
.eh-plan__bon-text{
  font-size: 10px;
  line-height: 1.3;
  color: var(--eh-plan-text-soft);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* ============== ROW 3: CTA ============== */
.eh-plan__row--3{ padding: 0; margin-top: 2px; }
.eh-plan__cta{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
  height: 40px;
  border-radius: 12px;
  background: rgba(1, 17, 32, 0.8);
  border: 1px solid #00dfff;
  color: var(--eh-plan-cyan) !important;
  font-family: inherit;
  font-size: 14px !important;
  font-weight: 500;
  text-decoration: none !important;
  box-shadow:
    inset 0 0 12px rgba(0, 229, 255, 0.035),
    0 0 8px rgba(0, 229, 255, 0.04);
  transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.eh-plan__cta-ico{
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.eh-plan__cta:hover{
  background: rgba(0, 190, 225, 0.08);
  box-shadow:
    inset 0 0 18px rgba(0, 229, 255, 0.08),
    0 0 14px rgba(0, 229, 255, 0.10);
  transform: translateY(-1px);
  color: var(--eh-plan-cyan) !important;
}
.eh-plan__cta:focus-visible{
  outline: 2px solid var(--eh-plan-cyan);
  outline-offset: 3px;
}

/* ============== TABLET (768–1279px) ============== */
@media (max-width: 1279px){
  .eh-plan{ padding: 16px; min-height: auto; }
  .eh-plan__inner{ gap: 14px; }
  .eh-plan__row--1{
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "title types"
      "included included";
  }
  .eh-plan__cell--title   { grid-area: title; }
  .eh-plan__cell--types   { grid-area: types; }
  .eh-plan__cell--included{ grid-area: included; }
  .eh-plan__row--2{
    grid-template-columns: 1fr;
  }
  .eh-plan__cell{ padding: 8px 10px; }
  .eh-plan__cell--title{ padding-left: 0; }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-plan{
    width: calc(100% - 24px);
    margin: 12px auto;
    padding: 16px;
    border-radius: 14px;
  }
  .eh-plan__inner{ gap: 14px; }
  .eh-plan__row--1{
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "types"
      "included";
    gap: 12px;
  }
  .eh-plan__row--2{
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .eh-plan__cell{ padding: 0; }

  .eh-plan__title{
    font-size: clamp(23px, 7vw, 28px) !important;
    white-space: normal;
  }
  .eh-plan__price-value{ font-size: 30px; }

  /* на мобильном — принудительные <br> из десктопных строк убираем,
     пусть текст перестраивается естественно */
  .eh-plan__inc-text br,
  .eh-plan__pkg-text br,
  .eh-plan__bon-text br{ display: none; }

  /* tabs — 3 в ряд с равной шириной */
  .eh-plan__cell--types{
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 8px;
    flex-wrap: initial;
  }
  .eh-plan__type{
    height: 44px;
    justify-content: center;
    width: 100%;
  }

  /* included: 2x2 grid */
  .eh-plan__inc{
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 8px;
  }
  .eh-plan__inc-item:nth-child(3){ border-left: 0; padding-left: 0; }

  /* packages: вертикальный список с горизонтальными разделителями */
  .eh-plan__pkg{
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .eh-plan__pkg-item{
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid rgba(30, 100, 135, 0.30);
    padding-top: 12px;
  }
  .eh-plan__pkg-item:first-child{ border-top: 0; padding-top: 0; }
  .eh-plan__pkg-text{ font-size: 12px; }

  /* bonuses: вертикальный список */
  .eh-plan__bon{
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .eh-plan__bon-item{
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid rgba(126, 45, 165, 0.30);
    padding-top: 12px;
  }
  .eh-plan__bon-item:first-child{ border-top: 0; padding-top: 0; }
  .eh-plan__bon-text{ font-size: 11px; }

  /* CTA */
  .eh-plan__cta{
    min-height: 48px;
    font-size: 13px !important;
    gap: 10px;
    padding: 0 12px;
  }
}

/* ---------- TABLET (<= 1024) ---------- */
@media (max-width: 1024px){
  .eh-host-hero-grid > .e-con-inner{
    grid-template-columns: 46% 54% !important;
    gap: 24px !important;
  }
  .eh-host-illustration img{ max-width: 100%; }
  .eh-host-h1 .elementor-heading-title{ font-size: 36px !important; }
  .eh-host-h2-accent .elementor-heading-title{ font-size: 22px !important; }
  .eh-host-lead p{ font-size: 18px !important; }
  .eh-host-trio .elementor-heading-title{ font-size: 20px !important; }
  .eh-host-features .elementor-icon-list-text{ font-size: 16px !important; }
  .eh-host-features .elementor-icon-list-icon i,
  .eh-host-features .elementor-icon-list-icon svg{ font-size: 28px !important; }
  .eh-host-features .elementor-icon-list-item:not(:last-child)::after{ width: 220px; left: 52px; }

  .eh-host-tariffs-row > .e-con-inner{ gap: 14px; }
  .eh-host-tariff{ min-height: 140px; padding: 20px 22px !important; gap: 18px !important; }
  .eh-host-tariff-name .elementor-heading-title{ font-size: 22px !important; }
  .eh-host-tariff-desc p{ font-size: 15px !important; }
  .eh-host-tariff-icon{ flex: 0 0 72px; width: 72px; }
  .eh-host-tariff-icon img{ width: 72px !important; max-width: 72px !important; }
}

/* ---------- MOBILE (<= 720) ---------- */
@media (max-width: 720px){
  .eh-host-hero{ min-height: auto; padding-top: 32px !important; padding-bottom: 24px !important; }
  .eh-host-hero-grid > .e-con-inner{
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  /* распакуем left-column так, чтобы её дети стали sibling'ами картинки */
  .eh-host-hero-left{ display: contents !important; }
  /* порядок: H1 → картинка → остальной текст */
  .eh-host-h1        { order: 1; }
  .eh-host-hero-right{ order: 2; margin: 4px auto 8px; }
  .eh-host-h2-accent { order: 3; }
  .eh-host-lead      { order: 4; }
  .eh-host-trio      { order: 5; }
  .eh-host-features  { order: 6; }

  .eh-host-h1 .elementor-heading-title{ font-size: 28px !important; line-height: 1.1 !important; letter-spacing: -0.3px; }
  .eh-host-h1 .eh-h1-line1,
  .eh-host-h1 .eh-h1-line2{ white-space: normal; }
  .eh-host-h2-accent .elementor-heading-title{ font-size: 20px !important; white-space: normal; }
  .eh-host-lead p{ font-size: 16px !important; white-space: normal; }
  .eh-host-trio .elementor-heading-title{ font-size: 18px !important; white-space: normal; }
  .eh-host-tariff-name .elementor-heading-title{ white-space: normal; }
  .eh-host-features .elementor-icon-list-item{ padding: 8px 0 !important; }
  .eh-host-features .elementor-icon-list-text{ font-size: 15px !important; }
  .eh-host-features .elementor-icon-list-icon{ width: 36px; min-width: 36px; padding-right: 12px !important; }
  .eh-host-features .elementor-icon-list-icon i,
  .eh-host-features .elementor-icon-list-icon svg{ font-size: 26px !important; }
  .eh-host-features .elementor-icon-list-item:not(:last-child)::after{ width: calc(100% - 48px); left: 48px; }

  .eh-host-illustration img{ max-width: 88%; margin: 0 auto; }

  .eh-host-tariffs-row{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .eh-host-tariff{ min-height: 84px; padding: 16px !important; }
  /* упрощаем сетку на мобильном */
  .eh-host-hero::after{ opacity: .5; width: 100%; right: 0; bottom: 0; height: 40%; background-size: 32px 32px, 32px 32px; }

  /* plan-basic banner на мобиле — на всю ширину */
  .eh-host-plan-basic-banner img{ max-width: 100% !important; }
}

/* ---------- Tablet-narrow (900px и меньше) — тарифы 1 col ---------- */
@media (max-width: 900px){
  .eh-host-tariffs-row{
    grid-template-columns: 1fr !important;
  }
}

/* ---------- SMALL MOBILE (<= 400) ---------- */
@media (max-width: 400px){
  .eh-host-h1 .elementor-heading-title{ font-size: 28px !important; }
  .eh-host-tariff-icon{ flex: 0 0 48px; width: 48px; }
  .eh-host-tariff-icon img{ width: 48px !important; max-width: 48px !important; }
}
/* ---------- TARIFF COMPARE BLOCK (18.07.2026) — .eh-tc-* ---------- */
.eh-host-plan-compare{ width: 100%; }
.eh-host-plan-compare .eh-tc-wrap{ width: 100%; display: block; }
.eh-host-plan-compare .eh-tc-wrap .elementor-widget-container{ padding: 0; }

.eh-tc{
  --tc-bg-1: #03101f;
  --tc-bg-2: #020817;
  --tc-bg-3: #07021a;
  --tc-card-bg-top: rgba(4, 15, 32, 0.88);
  --tc-card-bg-bot: rgba(2, 9, 23, 0.94);
  --tc-text-1: #f7f9ff;
  --tc-text-2: #d5dce8;
  --tc-text-mut: #96a4b8;
  --tc-btn-text: #00131c;

  position: relative;
  width: calc(100% - 40px);
  max-width: 1240px;
  margin: 20px auto;
  padding: 20px;
  border-radius: 18px;
  box-sizing: border-box;
  background:
    radial-gradient(circle at 8% 20%, rgba(0, 229, 255, 0.06), transparent 32%),
    radial-gradient(circle at 92% 20%, rgba(190, 38, 255, 0.07), transparent 32%),
    linear-gradient(135deg, var(--tc-bg-1) 0%, var(--tc-bg-2) 50%, var(--tc-bg-3) 100%);
  color: var(--tc-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 18px rgba(0, 229, 255, 0.05),
    0 0 24px rgba(180, 54, 255, 0.05),
    inset 0 0 18px rgba(0, 174, 255, 0.025);
  overflow: hidden;
  isolation: isolate;
}
/* neon gradient outer border */
.eh-tc::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #00eaff 0%, #179eff 35%, #7c43ff 65%, #d637ff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-tc__symbols{ position: absolute; width: 0; height: 0; pointer-events: none; }
.eh-tc__sr-only{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.eh-tc__grid{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

/* ============== CARD ============== */
.eh-tc__card{
  --tc-accent: #00eaff;
  --tc-accent-2: #009cff;
  --tc-border-soft: rgba(0, 215, 255, 0.18);
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  border-radius: 14px;
  background: linear-gradient(180deg, var(--tc-card-bg-top), var(--tc-card-bg-bot));
  box-shadow: 0 0 16px rgba(0, 224, 255, 0.08), inset 0 0 16px rgba(0, 224, 255, 0.025);
  isolation: isolate;
}
.eh-tc__card::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(180deg, var(--tc-accent), var(--tc-accent-2));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  z-index: 1;
}
.eh-tc__card--pers{
  --tc-accent: #658dff;
  --tc-accent-2: #8265ff;
  --tc-border-soft: rgba(101, 141, 255, 0.20);
  box-shadow: 0 0 16px rgba(90, 113, 255, 0.08), inset 0 0 16px rgba(93, 95, 255, 0.025);
}
.eh-tc__card--pers::before{
  background: linear-gradient(180deg, #37c7ff, #666dff, #7c4cff);
}
.eh-tc__card--biz{
  --tc-accent: #d735ff;
  --tc-accent-2: #8b3dff;
  --tc-border-soft: rgba(196, 58, 255, 0.20);
  box-shadow: 0 0 16px rgba(199, 48, 255, 0.09), inset 0 0 16px rgba(177, 40, 255, 0.03);
}
.eh-tc__card--biz::before{
  background: linear-gradient(180deg, #d83bff, #8e3eff);
}

/* --- soft internal box border --- */
.eh-tc__box{
  position: relative;
  z-index: 2;
  border: 1px solid var(--tc-border-soft);
  border-radius: 6px;
  padding: 8px 10px;
}
.eh-tc__box--head{ padding: 6px 8px; }
.eh-tc__box--price{ padding: 8px 8px; text-align: center; }
.eh-tc__box--cta{ padding: 4px; border: 0; }
.eh-tc__box--feat{ padding: 10px; flex-grow: 1; }
.eh-tc__box--use{ padding: 10px; }
.eh-tc__box--instr{ padding: 6px 8px; }

/* --- HEADER --- */
.eh-tc__head{
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
}
.eh-tc__ico{
  width: 24px;
  height: 24px;
  color: var(--tc-accent);
  flex-shrink: 0;
}
.eh-tc__name{
  margin: 0 !important;
  padding: 0;
  border: 0;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: var(--tc-text-1) !important;
  white-space: nowrap;
}
.eh-tc__name span{ display: inline-block; line-height: 1; }

/* --- PRICE --- */
.eh-tc__price{
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
}
.eh-tc__price-cur{
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  color: var(--tc-text-1);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.eh-tc__price-val{
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #ffffff;
  letter-spacing: 0.01em;
  font-variant-numeric: tabular-nums;
}
.eh-tc__price-per{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  margin-top: 4px;
  font-size: 10px;
  font-weight: 400;
  color: var(--tc-text-2);
  white-space: nowrap;
}
.eh-tc__price-chev{
  width: 9px;
  height: 9px;
  color: var(--tc-text-2);
}

/* --- BUY BUTTON --- */
.eh-tc__buy{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 36px;
  border: 0;
  border-radius: 6px;
  background: linear-gradient(90deg, #09cfe9 0%, #00ddf4 45%, #00c6e7 100%);
  color: var(--tc-btn-text) !important;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}
.eh-tc__buy:hover{
  transform: translateY(-1px);
  filter: brightness(1.08);
  box-shadow: 0 0 12px rgba(0, 224, 255, 0.25);
}
.eh-tc__buy:active{ transform: translateY(0); filter: brightness(0.96); }
.eh-tc__buy:focus-visible{
  outline: 2px solid rgba(0, 234, 255, 0.7);
  outline-offset: 2px;
}

/* --- FEATURE LIST --- */
.eh-tc__feat{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.eh-tc__feat > li{
  display: grid;
  grid-template-columns: 15px minmax(0, 1fr);
  column-gap: 7px;
  align-items: center;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 400;
  color: #e7edf7;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-tc__feat svg{
  width: 14px;
  height: 14px;
  color: var(--tc-accent);
  flex-shrink: 0;
}

/* --- USE-CASES --- */
.eh-tc__use-title{
  font-size: 11px;
  font-weight: 500;
  color: #ffffff;
  margin: 0 0 8px;
  line-height: 1;
}
.eh-tc__use{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 10px;
  row-gap: 5px;
}
.eh-tc__use > li{
  display: grid;
  grid-template-columns: 11px minmax(0, 1fr);
  column-gap: 5px;
  align-items: start;
  font-size: 10px;
  line-height: 1.25;
  color: #e7edf7;
}
.eh-tc__use svg{
  width: 10px;
  height: 10px;
  color: var(--tc-accent);
  margin-top: 2px;
  flex-shrink: 0;
}

/* --- INSTRUCTIONS --- */
.eh-tc__instr{
  display: grid;
  grid-template-columns: 30px 30px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}
.eh-tc__instr-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: 1px solid var(--tc-accent);
  border-radius: 4px;
  color: var(--tc-accent) !important;
  text-decoration: none !important;
  transition: background-color 160ms ease, box-shadow 160ms ease;
}
.eh-tc__instr-btn:hover{
  background: rgba(0, 234, 255, 0.06);
  box-shadow: 0 0 8px rgba(0, 234, 255, 0.15);
}
.eh-tc__instr-btn svg{
  width: 16px;
  height: 16px;
}
.eh-tc__instr-text{
  font-size: 10px;
  line-height: 1.25;
  font-weight: 400;
  color: #f1f4fb;
}

/* --- NOWRAP --- */
.eh-tc__nw{ white-space: nowrap; }

/* ============== TABLET (768–1279px) ============== */
@media (max-width: 1279px){
  .eh-tc{ padding: 16px; }
  .eh-tc__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .eh-tc__card:last-child{
    grid-column: 1 / -1;
    max-width: calc(50% - 7px);
    width: 100%;
    justify-self: center;
  }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-tc{
    width: calc(100% - 24px);
    margin: 12px auto;
    padding: 12px;
    border-radius: 14px;
  }
  .eh-tc__grid{
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .eh-tc__card{
    padding: 16px;
    max-width: none !important;
    width: 100% !important;
    justify-self: stretch !important;
    grid-column: auto !important;
  }
  .eh-tc__card:last-child{
    grid-column: auto !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .eh-tc__use{
    grid-template-columns: 1fr;
    row-gap: 6px;
  }
  .eh-tc__use > li{ font-size: 11px; }
  .eh-tc__buy{
    height: 44px;
    font-size: 14px;
  }
  .eh-tc__price-val{ font-size: 24px; }
}
/* ---------- VIP PLAN BLOCK (18.07.2026) — .eh-vip-* ---------- */
.eh-host-plan-vip{ width: 100%; }
.eh-host-plan-vip .eh-vip-wrap{ width: 100%; display: block; }
.eh-host-plan-vip .eh-vip-wrap .elementor-widget-container{ padding: 0; }

.eh-vip{
  --vip-bg-1: #0b0f1e;
  --vip-bg-2: #080b19;
  --vip-bg-3: #10071e;
  --vip-surface: rgba(8, 11, 27, 0.55);
  --vip-text-1: #ffffff;
  --vip-text-2: #d9dceb;
  --vip-purple: #9b4dff;
  --vip-purple-light: #bd57ff;
  --vip-purple-dark: #6327d8;
  --vip-border: rgba(90, 45, 145, 0.75);
  --vip-divider: rgba(155, 77, 255, 0.30);

  position: relative;
  width: calc(100% - 40px);
  max-width: 1240px;
  margin: 20px auto;
  padding: 20px;
  border-radius: 20px;
  box-sizing: border-box;
  background:
    radial-gradient(circle at 15% 20%, rgba(121, 54, 255, 0.08), transparent 35%),
    radial-gradient(circle at 85% 70%, rgba(177, 45, 255, 0.07), transparent 35%),
    linear-gradient(135deg, var(--vip-bg-1) 0%, var(--vip-bg-2) 55%, var(--vip-bg-3) 100%);
  color: var(--vip-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 20px rgba(155, 77, 255, 0.08),
    inset 0 0 20px rgba(155, 77, 255, 0.025);
  overflow: hidden;
  isolation: isolate;
}
.eh-vip::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #6e35ff 0%, #9b4dff 50%, #c03cff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-vip__symbols{ position: absolute; width: 0; height: 0; pointer-events: none; }

.eh-vip__inner{
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.eh-vip__nw{ white-space: nowrap; }

.eh-vip__box{
  border: 1px solid var(--vip-border);
  border-radius: 12px;
  background: var(--vip-surface);
  padding: 12px 16px;
}

/* --- HEAD: title + price --- */
.eh-vip__box--head{ text-align: center; padding: 14px 16px; }
.eh-vip__title{
  margin: 0 !important;
  font-size: 25px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  color: var(--vip-text-1) !important;
  text-align: center !important;
  white-space: nowrap;
}
.eh-vip__price{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 5px;
  margin-top: 4px;
  white-space: nowrap;
}
.eh-vip__price-from,
.eh-vip__price-unit{
  font-size: 17px;
  font-weight: 500;
  color: var(--vip-text-1);
}
.eh-vip__price-value{
  font-size: 26px;
  font-weight: 700;
  color: var(--vip-purple);
  line-height: 1;
  white-space: nowrap;
}

/* --- TABS --- */
.eh-vip__box--tabs{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding: 10px 14px;
}
.eh-vip__tab{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 36px;
  padding: 0 16px;
  border-radius: 5px;
  border: 1px solid #5a2d91;
  background: rgba(13, 14, 35, 0.9);
  color: var(--vip-text-1);
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
  transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease, filter 180ms ease;
}
.eh-vip__tab-ico{
  width: 20px;
  height: 20px;
  color: var(--vip-purple);
  flex-shrink: 0;
}
.eh-vip__tab.is-active{
  background: linear-gradient(90deg, #7436db, #9b4dff);
  border-color: #a957ff;
  color: var(--vip-text-1);
  box-shadow:
    inset 0 0 12px rgba(255, 255, 255, 0.06),
    0 0 10px rgba(155, 77, 255, 0.18);
}
.eh-vip__tab.is-active .eh-vip__tab-ico{ color: #ffffff; }
.eh-vip__tab:hover{
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.eh-vip__tab:focus-visible{
  outline: 2px solid var(--vip-purple);
  outline-offset: 2px;
}

/* --- INCLUDED (4 columns) --- */
.eh-vip__box--inc{ padding: 14px 16px; }
.eh-vip__inc{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 0;
}
.eh-vip__inc-item{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  padding: 4px 12px;
  border-left: 1px solid var(--vip-divider);
  min-width: 0;
}
.eh-vip__inc-item:first-child{ border-left: 0; padding-left: 0; }
.eh-vip__inc-ico{
  width: 36px;
  height: 36px;
  color: var(--vip-purple);
  margin-bottom: 7px;
  flex-shrink: 0;
}
.eh-vip__inc-text{
  font-size: 12px;
  font-weight: 400;
  line-height: 1.25;
  color: var(--vip-text-1);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* --- PACKAGES (2 columns × up to 3 rows) --- */
.eh-vip__box--pkg{ padding: 14px 18px; }
.eh-vip__pkg{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 34px;
  row-gap: 9px;
}
.eh-vip__pkg > li{
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  font-size: 11px;
  line-height: 1.25;
  color: var(--vip-text-1);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-vip__pkg svg{
  width: 14px;
  height: 14px;
  color: var(--vip-purple);
  flex-shrink: 0;
}

/* --- BONUSES (3 columns) --- */
.eh-vip__box--bon{ padding: 14px 16px; }
.eh-vip__bon{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  align-items: stretch;
}
.eh-vip__bon-item{
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 2px 16px;
  border-left: 1px solid var(--vip-divider);
  min-width: 0;
}
.eh-vip__bon-item:first-child{ border-left: 0; padding-left: 0; }
.eh-vip__bon-ico{
  width: 40px;
  height: 40px;
  color: var(--vip-purple);
  flex-shrink: 0;
}
.eh-vip__bon-text{
  font-size: 11px;
  line-height: 1.3;
  font-weight: 400;
  color: var(--vip-text-1);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* --- CTA --- */
.eh-vip__cta{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 48px;
  width: 100%;
  min-height: 40px;
  padding: 8px 20px;
  border-radius: 6px;
  border: 1px solid var(--vip-purple);
  background: linear-gradient(90deg, #6527d1 0%, #8e36ee 50%, #6c24d5 100%);
  color: var(--vip-text-1) !important;
  font-family: inherit;
  font-size: 14px !important;
  font-weight: 500;
  text-decoration: none !important;
  transition: filter 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.eh-vip__cta-ico{
  width: 21px;
  height: 21px;
  color: var(--vip-text-1);
  flex-shrink: 0;
}
.eh-vip__cta:hover{
  filter: brightness(1.12);
  box-shadow: 0 0 14px rgba(155, 77, 255, 0.28);
  transform: translateY(-1px);
  color: var(--vip-text-1) !important;
}
.eh-vip__cta:focus-visible{
  outline: 2px solid var(--vip-purple);
  outline-offset: 3px;
}

/* ============== TABLET (768–1199px) ============== */
@media (max-width: 1199px){
  .eh-vip{ padding: 16px; }
  .eh-vip__inner{ gap: 10px; }
  .eh-vip__inc{
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 0;
  }
  .eh-vip__inc-item:nth-child(3){ border-left: 0; padding-left: 0; }
  .eh-vip__bon{
    grid-template-columns: 1fr;
    gap: 0;
  }
  .eh-vip__bon-item{
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid var(--vip-divider);
    padding: 10px 0;
  }
  .eh-vip__bon-item:first-child{ border-top: 0; padding-top: 2px; }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-vip{
    width: calc(100% - 24px);
    margin: 12px auto;
    padding: 14px;
    border-radius: 16px;
  }
  .eh-vip__title{ white-space: normal; font-size: 22px !important; }
  .eh-vip__box{ padding: 12px 14px; }

  /* tabs → 1 col */
  .eh-vip__box--tabs{
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 10px 12px;
  }
  .eh-vip__tab{ min-height: 44px; }

  /* характеристики: 2 col, на очень узком → 1 col */
  .eh-vip__inc{
    grid-template-columns: repeat(2, 1fr);
    gap: 14px 0;
  }
  .eh-vip__inc-item:nth-child(3){ border-left: 0; padding-left: 0; }
  .eh-vip__inc-ico{ width: 32px; height: 32px; }

  /* возможности: 1 col */
  .eh-vip__pkg{
    grid-template-columns: 1fr;
    row-gap: 8px;
  }

  /* бонусы: 1 col + горизонтальные разделители */
  .eh-vip__bon{ grid-template-columns: 1fr; }
  .eh-vip__bon-item{
    grid-template-columns: 40px minmax(0, 1fr);
    border-left: 0;
    padding: 10px 0;
    border-top: 1px solid var(--vip-divider);
  }
  .eh-vip__bon-item:first-child{ border-top: 0; padding-top: 2px; }
  .eh-vip__bon-ico{ width: 34px; height: 34px; }

  /* на мобильном отключаем принудительные <br> */
  .eh-vip__inc-text br,
  .eh-vip__bon-text br{ display: none; }

  .eh-vip__cta{
    min-height: 48px;
    font-size: 13px !important;
    gap: 12px;
  }
}
@media (max-width: 420px){
  .eh-vip__inc{ grid-template-columns: 1fr; }
  .eh-vip__inc-item{ border-left: 0; padding: 6px 0; border-top: 1px solid var(--vip-divider); }
  .eh-vip__inc-item:first-child{ border-top: 0; }
}
/* ---------- PROFESSIONAL / CORPORATE / UNLIMITED (18.07.2026) — .eh-pro-* ---------- */
.eh-host-plan-pro{ width: 100%; }
.eh-host-plan-pro .eh-pro-wrap{ width: 100%; display: block; }
.eh-host-plan-pro .eh-pro-wrap .elementor-widget-container{ padding: 0; }

.eh-pro{
  --pro-bg-1: #03101f;
  --pro-bg-2: #020817;
  --pro-bg-3: #08031a;
  --pro-card-bg-top: rgba(3, 15, 31, 0.94);
  --pro-card-bg-bot: rgba(2, 9, 23, 0.98);
  --pro-text-1: #ffffff;
  --pro-text-2: #edf2fa;
  --pro-text-mut: #c9d0de;
  --pro-btn-text: #00131c;

  position: relative;
  width: calc(100% - 40px);
  max-width: 1240px;
  margin: 20px auto;
  padding: 20px;
  border-radius: 16px;
  box-sizing: border-box;
  background:
    radial-gradient(circle at 8% 20%, rgba(0, 225, 255, 0.07), transparent 32%),
    radial-gradient(circle at 50% 20%, rgba(190, 55, 255, 0.06), transparent 30%),
    radial-gradient(circle at 92% 20%, rgba(0, 225, 255, 0.06), transparent 32%),
    linear-gradient(135deg, var(--pro-bg-1) 0%, var(--pro-bg-2) 52%, var(--pro-bg-3) 100%);
  color: var(--pro-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 20px rgba(0, 229, 255, 0.06),
    0 0 24px rgba(178, 55, 255, 0.05),
    inset 0 0 20px rgba(0, 180, 255, 0.02);
  overflow: hidden;
  isolation: isolate;
}
.eh-pro::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #00eaff 0%, #1a9cff 32%, #bb3fff 58%, #00eaff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-pro__symbols{ position: absolute; width: 0; height: 0; pointer-events: none; }
.eh-pro__sr-only{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.eh-pro__nw{ white-space: nowrap; }

.eh-pro__grid{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}

/* ============== CARD ============== */
.eh-pro__card{
  --pro-accent: #00eaff;
  --pro-accent-2: #009dff;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: 20px;
  border-radius: 14px;
  background: linear-gradient(180deg, var(--pro-card-bg-top), var(--pro-card-bg-bot));
  box-shadow: 0 0 16px rgba(0, 224, 255, 0.06), inset 0 0 16px rgba(0, 224, 255, 0.02);
  isolation: isolate;
}
.eh-pro__card::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(180deg, var(--pro-accent), var(--pro-accent-2));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  z-index: 1;
}
.eh-pro__card--corp{
  --pro-accent: #d344ff;
  --pro-accent-2: #7f39ff;
  box-shadow: 0 0 16px rgba(190, 60, 255, 0.06), inset 0 0 16px rgba(155, 77, 255, 0.02);
}
.eh-pro__card--unlim{
  --pro-accent: #00eaff;
  --pro-accent-2: #00a8d4;
}
.eh-pro__card > *{ position: relative; z-index: 2; }

/* --- HEADER --- */
.eh-pro__head{
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
}
.eh-pro__head-ico{
  width: 32px;
  height: 32px;
  color: var(--pro-accent);
  flex: 0 0 32px;
}
.eh-pro__name{
  margin: 0 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  color: var(--pro-text-1) !important;
  white-space: nowrap;
}

/* --- PRICE --- */
.eh-pro__price{
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  margin-top: 2px;
  white-space: nowrap;
}
.eh-pro__price-cur{
  font-size: 14px;
  font-weight: 600;
  color: var(--pro-text-1);
  white-space: nowrap;
  letter-spacing: 0.02em;
}
.eh-pro__price-val{
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: var(--pro-text-1);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.eh-pro__price-per{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  font-size: 11px;
  font-weight: 400;
  color: var(--pro-text-mut);
  text-align: center;
  margin-top: 3px;
  white-space: nowrap;
}
.eh-pro__price-chev{
  width: 9px;
  height: 9px;
  color: var(--pro-text-mut);
}

/* --- BUY BUTTON --- */
.eh-pro__buy{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 6px;
  background: linear-gradient(90deg, #08cfe9 0%, #00e2f4 50%, #00c7e7 100%);
  color: var(--pro-btn-text) !important;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  margin-top: 4px;
  transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}
.eh-pro__buy:hover{
  filter: brightness(1.08);
  transform: translateY(-1px);
  box-shadow: 0 0 14px rgba(0, 229, 255, 0.22);
}
.eh-pro__buy:focus-visible{
  outline: 2px solid rgba(0, 234, 255, 0.7);
  outline-offset: 2px;
}

/* --- FEATURE LIST --- */
.eh-pro__feat{
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.eh-pro__feat > li{
  display: grid;
  grid-template-columns: 15px minmax(0, 1fr);
  column-gap: 7px;
  align-items: center;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 400;
  color: var(--pro-text-2);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-pro__feat svg{
  width: 14px;
  height: 14px;
  color: var(--pro-accent);
  flex-shrink: 0;
}

/* --- DIVIDER --- */
.eh-pro__divider{
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  margin: 12px 0 10px;
  height: 0;
}

/* --- DESC (Подходит для...) --- */
.eh-pro__desc{
  margin: 0 0 10px;
  font-size: 10px;
  line-height: 1.3;
  font-weight: 400;
  color: var(--pro-text-2);
}
.eh-pro__desc-l{
  display: block;
}
.eh-pro__desc-l:first-child{
  color: var(--pro-text-1);
  font-weight: 500;
  margin-bottom: 2px;
}

/* --- USE-CASES (2 col × 5 rows) --- */
.eh-pro__use{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 6px;
}
.eh-pro__use > li{
  display: grid;
  grid-template-columns: 11px minmax(0, 1fr);
  column-gap: 5px;
  align-items: start;
  font-size: 10px;
  line-height: 1.25;
  color: var(--pro-text-2);
}
.eh-pro__use svg{
  width: 10px;
  height: 10px;
  color: var(--pro-accent);
  margin-top: 2px;
  flex-shrink: 0;
}

/* --- INSTRUCTIONS --- */
.eh-pro__instr{
  margin-top: auto;
  padding-top: 14px;
  display: grid;
  grid-template-columns: 28px 28px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}
.eh-pro__instr-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: 1px solid var(--pro-accent);
  border-radius: 4px;
  color: var(--pro-accent) !important;
  text-decoration: none !important;
  transition: background-color 160ms ease, box-shadow 160ms ease;
}
.eh-pro__instr-btn:hover{
  background: rgba(0, 234, 255, 0.06);
  box-shadow: 0 0 8px rgba(0, 234, 255, 0.15);
}
.eh-pro__instr-btn svg{
  width: 16px;
  height: 16px;
}
.eh-pro__instr-text{
  font-size: 10px;
  line-height: 1.2;
  font-weight: 400;
  color: var(--pro-text-2);
  white-space: nowrap;
}

/* ============== TABLET (768–1279px) ============== */
@media (max-width: 1279px){
  .eh-pro{ padding: 16px; }
  .eh-pro__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .eh-pro__card:last-child{
    grid-column: 1 / -1;
    max-width: calc(50% - 7px);
    width: 100%;
    justify-self: center;
  }
  .eh-pro__desc-l{ display: inline; }
  .eh-pro__desc-l + .eh-pro__desc-l{ margin-left: 4px; }
  .eh-pro__desc-l:first-child{ display: block; }
  .eh-pro__use > li span br{ display: none; }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-pro{
    width: calc(100% - 24px);
    margin: 12px auto;
    padding: 12px;
    border-radius: 14px;
  }
  .eh-pro__grid{
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .eh-pro__card{
    padding: 16px;
    max-width: none !important;
    width: 100% !important;
    justify-self: stretch !important;
    grid-column: auto !important;
  }
  .eh-pro__card:last-child{
    grid-column: auto !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  .eh-pro__buy{ min-height: 44px; font-size: 14px; }
  .eh-pro__price-val{ font-size: 24px; }
  .eh-pro__use{
    grid-template-columns: 1fr;
    row-gap: 6px;
  }
  .eh-pro__use > li{ font-size: 11px; }
  .eh-pro__use > li span br{ display: none; }
  .eh-pro__instr-text{ white-space: normal; }
}
/* ---------- EXPERT PLAN BLOCK (18.07.2026) — .eh-ex-* ---------- */
.eh-host-plan-expert{ width: 100%; }
.eh-host-plan-expert .eh-ex-wrap{ width: 100%; display: block; }
.eh-host-plan-expert .eh-ex-wrap .elementor-widget-container{ padding: 0; }

.eh-ex{
  --ex-bg-1: #03101f;
  --ex-bg-2: #020817;
  --ex-bg-3: #09031b;
  --ex-surface: rgba(4, 15, 31, 0.65);
  --ex-control: rgba(6, 19, 41, 0.92);
  --ex-text-1: #ffffff;
  --ex-text-2: #d7deea;
  --ex-text-mut: #94a0b4;
  --ex-cyan: #00eaff;
  --ex-cyan-2: #00c8e8;
  --ex-purple: #9b4dff;
  --ex-purple-2: #c449ff;
  --ex-border-cyan: rgba(0, 225, 255, 0.28);
  --ex-border-purple: rgba(135, 64, 255, 0.30);
  --ex-track: rgba(27, 69, 100, 0.55);

  position: relative;
  width: calc(100% - 40px);
  max-width: 1240px;
  margin: 20px auto;
  padding: 20px;
  border-radius: 20px;
  box-sizing: border-box;
  background:
    radial-gradient(circle at 8% 18%, rgba(0, 225, 255, 0.08), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(142, 48, 255, 0.08), transparent 34%),
    linear-gradient(135deg, var(--ex-bg-1) 0%, var(--ex-bg-2) 52%, var(--ex-bg-3) 100%);
  color: var(--ex-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 20px rgba(0, 229, 255, 0.06),
    0 0 22px rgba(158, 58, 255, 0.05),
    inset 0 0 22px rgba(0, 180, 255, 0.02);
  overflow: hidden;
  isolation: isolate;
}
.eh-ex::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #00eaff 0%, #179fff 38%, #7f44ff 66%, #d23dff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-ex__symbols{ position: absolute; width: 0; height: 0; pointer-events: none; }
.eh-ex__nw{ white-space: nowrap; }

.eh-ex__grid{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.eh-ex__col{
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.eh-ex__box{
  border: 1px solid var(--ex-border-cyan);
  border-radius: 12px;
  background: var(--ex-surface);
  padding: 14px 16px;
}
.eh-ex__col--right .eh-ex__box{ border-color: var(--ex-border-purple); }

/* ============== LEFT: HEAD ============== */
.eh-ex__box--head{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
}
.eh-ex__badge{
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid var(--ex-cyan);
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--ex-cyan);
  white-space: nowrap;
  letter-spacing: 0.05em;
}
.eh-ex__name{
  margin: 0 !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: var(--ex-text-1) !important;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

/* ============== LEFT: SUB ============== */
.eh-ex__box--sub{ padding: 10px 16px; }
.eh-ex__sub{
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--ex-text-2);
}

/* ============== LEFT: CALLOUT ============== */
.eh-ex__box--callout{
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
}
.eh-ex__callout-ico{
  width: 44px;
  height: 44px;
  color: var(--ex-cyan);
  flex-shrink: 0;
}
.eh-ex__callout-body{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.eh-ex__callout-text{
  font-size: 12px;
  line-height: 1.3;
  color: var(--ex-text-1);
  font-weight: 500;
}
.eh-ex__callout-badge{
  display: inline-flex;
  padding: 4px 10px;
  border-radius: 3px;
  background: #00d9eb;
  color: #00131c;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  align-self: flex-start;
  white-space: normal;
}

/* ============== LEFT: 2 info columns ============== */
.eh-ex__cols{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.eh-ex__box--info{ padding: 12px 14px; }
.eh-ex__info-head{
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.eh-ex__info-ico{
  width: 22px;
  height: 22px;
  color: var(--ex-cyan);
  flex-shrink: 0;
}
.eh-ex__info-title{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--ex-text-1);
}
.eh-ex__info-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.eh-ex__info-list > li{
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  column-gap: 8px;
  align-items: start;
  font-size: 12px;
  line-height: 1.3;
  color: var(--ex-text-1);
}
.eh-ex__info-list svg{
  width: 12px;
  height: 12px;
  color: var(--ex-cyan);
  margin-top: 3px;
  flex-shrink: 0;
}

/* ============== LEFT: SECTION (Подходит для / Управление) ============== */
.eh-ex__box--section{ padding: 12px 14px; }
.eh-ex__section-head{
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}
.eh-ex__section-ico{
  width: 22px;
  height: 22px;
  color: var(--ex-cyan);
  flex-shrink: 0;
}
.eh-ex__section-title{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--ex-text-1);
}
.eh-ex__section-body{
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: var(--ex-text-2);
}
.eh-ex__section-body span{ display: block; }

/* ============== LEFT: PAY ============== */
.eh-ex__box--pay{
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 14px;
  align-items: flex-start;
  padding: 14px 16px;
}
.eh-ex__pay-ico{
  width: 44px;
  height: 44px;
  color: var(--ex-cyan);
  margin-top: 6px;
  flex-shrink: 0;
}
.eh-ex__pay-body{ display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.eh-ex__pay-label{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--ex-text-2);
}
.eh-ex__pay-price-row{
  display: flex;
  align-items: baseline;
  gap: 16px;
  flex-wrap: wrap;
}
.eh-ex__pay-price{
  display: flex;
  align-items: baseline;
  gap: 4px;
  white-space: nowrap;
}
.eh-ex__pay-value{
  font-size: 28px;
  font-weight: 700;
  color: var(--ex-text-1);
  line-height: 1;
  white-space: nowrap;
}
.eh-ex__pay-unit{
  font-size: 13px;
  color: var(--ex-text-2);
}
.eh-ex__pay-note{
  font-size: 10px;
  line-height: 1.3;
  color: var(--ex-text-2);
}
.eh-ex__pay-note span{ display: block; }
.eh-ex__pay-sub{
  margin-top: 6px;
  font-size: 11px;
  color: var(--ex-text-2);
}
.eh-ex__pay-foot{
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.35;
  color: var(--ex-text-mut);
}

/* ============== RIGHT: PANEL HEAD ============== */
.eh-ex__box--panel-head{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
}
.eh-ex__panel-title{
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--ex-text-1);
  min-width: 0;
}
.eh-ex__mode{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.eh-ex__mode-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 6px;
  border: 1px solid rgba(0, 225, 255, 0.30);
  background: var(--ex-control);
  color: var(--ex-text-2);
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}
.eh-ex__mode-btn svg{ width: 14px; height: 14px; flex-shrink: 0; }
.eh-ex__mode-btn.is-active{
  background: linear-gradient(90deg, #00bcd9, #00dff0);
  color: #00131c;
  border-color: #00e0ee;
  box-shadow: 0 0 12px rgba(0, 224, 255, 0.20);
}
.eh-ex__mode-btn:hover:not(.is-active){
  background: rgba(9, 30, 60, 0.95);
  color: var(--ex-text-1);
}
.eh-ex__mode-btn:focus-visible{
  outline: 2px solid var(--ex-cyan);
  outline-offset: 2px;
}

/* ============== RIGHT: SLIDERS ============== */
.eh-ex__box--sliders{
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.eh-ex__res{
  --ex-fill: var(--ex-cyan);
  display: grid;
  grid-template-columns: 34px minmax(0, 130px) 30px minmax(110px, 1fr) 30px minmax(0, 96px);
  column-gap: 12px;
  align-items: center;
  padding: 10px 6px;
  border-top: 1px solid rgba(30, 60, 90, 0.35);
}
.eh-ex__res:first-child{ border-top: 0; }
.eh-ex__res--purple{ --ex-fill: var(--ex-purple); }
.eh-ex__res-ico{
  width: 22px;
  height: 22px;
  color: var(--ex-fill);
  justify-self: center;
}
.eh-ex__res-title{
  font-size: 11px;
  line-height: 1.2;
  color: var(--ex-text-1);
  font-weight: 500;
  min-width: 0;
}
.eh-ex__res-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid rgba(0, 225, 255, 0.22);
  border-radius: 6px;
  background: rgba(5, 20, 41, 0.9);
  color: #dce6f4;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 140ms ease, border-color 140ms ease;
}
.eh-ex__res--purple .eh-ex__res-btn{ border-color: rgba(155, 77, 255, 0.28); }
.eh-ex__res-btn:hover{ background: rgba(0, 225, 255, 0.10); }
.eh-ex__res--purple .eh-ex__res-btn:hover{ background: rgba(155, 77, 255, 0.14); }
.eh-ex__res-btn:focus-visible{
  outline: 2px solid var(--ex-fill);
  outline-offset: 2px;
}
.eh-ex__res-slider{
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.eh-ex__res-slider input[type="range"]{
  --eh-ex-fill: 0%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(to right,
    var(--ex-fill) 0 var(--eh-ex-fill),
    var(--ex-track) var(--eh-ex-fill) 100%);
  outline: none;
  cursor: pointer;
  margin: 4px 0;
}
.eh-ex__res-slider input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance: none;
          appearance: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #ffffff;
  border: 0;
  box-shadow: 0 0 6px var(--ex-fill);
  cursor: grab;
}
.eh-ex__res-slider input[type="range"]::-moz-range-thumb{
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #ffffff;
  border: 0;
  box-shadow: 0 0 6px var(--ex-fill);
  cursor: grab;
}
.eh-ex__res-slider input[type="range"]::-moz-range-track{
  background: transparent;
  height: 8px;
}
.eh-ex__res-slider input[type="range"]:focus-visible{
  outline: 2px solid var(--ex-fill);
  outline-offset: 4px;
  border-radius: 999px;
}
.eh-ex__res-scale{
  display: flex;
  justify-content: space-between;
  font-size: 9px;
  color: var(--ex-text-mut);
  padding: 0 2px;
}
.eh-ex__res-val{ text-align: right; min-width: 0; }
.eh-ex__res-value{
  font-size: 13px;
  font-weight: 700;
  color: var(--ex-text-1);
  line-height: 1.1;
  white-space: nowrap;
}
.eh-ex__res-range{
  font-size: 10px;
  color: var(--ex-text-mut);
  line-height: 1.2;
}

/* ============== RIGHT: TIMER ============== */
.eh-ex__box--timer{
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
}
.eh-ex__timer-ico{
  width: 30px;
  height: 30px;
  color: var(--ex-purple);
  flex-shrink: 0;
}
.eh-ex__timer-body{ min-width: 0; }
.eh-ex__timer-title{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--ex-text-1);
  line-height: 1.2;
}
.eh-ex__timer-sub{
  margin-top: 3px;
  font-size: 10px;
  color: var(--ex-text-mut);
  line-height: 1.25;
}

/* Switch */
.eh-ex__switch{ display: inline-flex; cursor: pointer; }
.eh-ex__switch input{ position: absolute; opacity: 0; pointer-events: none; }
.eh-ex__switch-track{
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: rgba(30, 44, 68, 0.9);
  border: 1px solid rgba(0, 225, 255, 0.3);
  transition: background 180ms ease, border-color 180ms ease;
}
.eh-ex__switch-thumb{
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #ffffff;
  transition: transform 180ms ease;
}
.eh-ex__switch input:checked + .eh-ex__switch-track{
  background: linear-gradient(90deg, #00bcd9, #00dff0);
  border-color: #00e0ee;
}
.eh-ex__switch input:checked + .eh-ex__switch-track .eh-ex__switch-thumb{
  transform: translateX(20px);
}
.eh-ex__switch input:focus-visible + .eh-ex__switch-track{
  outline: 2px solid var(--ex-cyan);
  outline-offset: 2px;
}

/* ============== RIGHT: USAGE ============== */
.eh-ex__box--usage{ padding: 12px 14px; }
.eh-ex__usage-title{
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--ex-text-1);
  margin-bottom: 8px;
}
.eh-ex__usage-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
}
.eh-ex__usage-item{ --ex-fill: var(--ex-cyan); min-width: 0; }
.eh-ex__usage-item--purple{ --ex-fill: var(--ex-purple); }
.eh-ex__usage-row{
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 600;
  color: var(--ex-text-1);
  margin-bottom: 4px;
}
.eh-ex__usage-bar{
  height: 4px;
  border-radius: 999px;
  background: rgba(27, 69, 100, 0.55);
  overflow: hidden;
}
.eh-ex__usage-bar > span{
  display: block;
  height: 100%;
  background: var(--ex-fill);
  border-radius: inherit;
}

/* ============== RIGHT: ACTIONS ============== */
.eh-ex__actions{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 4px;
}
.eh-ex__action{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 8px 16px;
  border-radius: 8px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-decoration: none !important;
  cursor: pointer;
  transition: filter 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}
.eh-ex__action svg{ width: 18px; height: 18px; flex-shrink: 0; }
.eh-ex__action--cyan{
  background: linear-gradient(90deg, #00d8e8, #00bfe1);
  color: #00131c !important;
}
.eh-ex__action--purple{
  background: linear-gradient(90deg, #6727d8, #9b3cff);
  color: #ffffff !important;
}
.eh-ex__action:hover{
  filter: brightness(1.10);
  transform: translateY(-1px);
  box-shadow: 0 0 14px rgba(0, 224, 255, 0.20);
}
.eh-ex__action--purple:hover{ box-shadow: 0 0 14px rgba(155, 77, 255, 0.28); }
.eh-ex__action:focus-visible{
  outline: 2px solid #ffffff;
  outline-offset: 2px;
}

/* ============== TABLET (768–1279px) ============== */
@media (max-width: 1279px){
  .eh-ex{ padding: 16px; }
  .eh-ex__grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .eh-ex__name{ font-size: 24px !important; }
}

/* ============== RESOURCE ROW: 2-tier layout (<= 1023px) ==============
   На средней-узкой ширине кнопки ± перестают влезать в один ряд со слайдером.
   Разделяем: [icon | title | value] сверху, [− slider +] снизу — во всю строку. */
@media (max-width: 1023px){
  .eh-ex__res{
    grid-template-columns: 30px minmax(0, 1fr) auto;
    grid-template-areas:
      "icon title value"
      "controls controls controls";
    column-gap: 10px;
    row-gap: 10px;
  }
  .eh-ex__res-ico{ grid-area: icon; }
  .eh-ex__res-title{ grid-area: title; }
  .eh-ex__res-val{ grid-area: value; text-align: right; min-width: 0; }
  .eh-ex__res-title br{ display: none; }

  /* controls-row: − slider + — во всю ширину строки */
  .eh-ex__res > .eh-ex__res-btn:nth-of-type(1){
    grid-area: controls;
    grid-column: 1 / 2;
    justify-self: start;
    align-self: center;
  }
  .eh-ex__res > .eh-ex__res-slider{
    grid-area: controls;
    grid-column: 2 / 3;
    align-self: center;
  }
  .eh-ex__res > .eh-ex__res-btn:nth-of-type(2){
    grid-area: controls;
    grid-column: 3 / 4;
    justify-self: end;
    align-self: center;
  }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-ex{
    width: calc(100% - 24px);
    margin: 12px auto;
    padding: 12px;
    border-radius: 16px;
  }
  .eh-ex__box{ padding: 10px 12px; }

  .eh-ex__box--head{
    flex-wrap: wrap;
    gap: 6px 10px;
  }
  .eh-ex__name{ font-size: 22px !important; white-space: normal; }
  .eh-ex__cols{ grid-template-columns: 1fr; }
  .eh-ex__section-body span{ display: inline; }
  .eh-ex__section-body span + span::before{ content: ' '; }
  .eh-ex__info-list > li span br{ display: none; }
  .eh-ex__pay-note span{ display: inline; }
  .eh-ex__pay-note span + span::before{ content: ' '; }

  /* Panel head */
  .eh-ex__box--panel-head{
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .eh-ex__mode{ grid-template-columns: 1fr 1fr; }
  .eh-ex__mode-btn{ min-height: 44px; }

  /* Resource rows: 2-tier layout уже унаследован от 1023↓,
     на мобиле только сенсорно-удобные размеры кнопок */
  .eh-ex__res-btn{ width: 40px; height: 40px; font-size: 18px; }

  /* Timer */
  .eh-ex__box--timer{
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: 10px;
  }

  /* Usage: 1 col */
  .eh-ex__usage-grid{ grid-template-columns: 1fr; gap: 8px; }

  /* Actions: 1 col */
  .eh-ex__actions{ grid-template-columns: 1fr; gap: 10px; }
  .eh-ex__action{ min-height: 48px; font-size: 12px; }
  .eh-ex__action--purple span br{ display: none; }
}

/* ---------- MOBILE OVERFLOW SAFETY (page 8109) ----------
   Гарантирует что ни один блок не выходит за viewport на мобиле.
   Причина: длинные nowrap-строки/фиксированные gap могут «выпихнуть»
   контент за 100vw. Chиним точечно + safety через overflow-x: clip. */
@media (max-width: 767px){
  body.page-id-8109{ overflow-x: clip; }
  body.page-id-8109 .entry-content,
  body.page-id-8109 .site,
  body.page-id-8109 .main-contain{ overflow-x: clip; }

  /* Все hosting-секции — жёстко в пределах viewport, без горизонтального скролла */
  .eh-host-plan-basic,
  .eh-host-plan-compare,
  .eh-host-plan-vip,
  .eh-host-plan-pro,
  .eh-host-plan-expert{
    overflow-x: clip;
    max-width: 100vw;
  }
  .eh-host-plan-basic > .e-con-inner,
  .eh-host-plan-compare > .e-con-inner,
  .eh-host-plan-vip > .e-con-inner,
  .eh-host-plan-pro > .e-con-inner,
  .eh-host-plan-expert > .e-con-inner{
    max-width: 100vw;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Каждый основной wrap-контейнер — заменяем calc(100% - Npx)
     на margin — это безопаснее если родитель имеет padding.
     max-width жёстко: 100vw - 24px (12px внешних отступа) */
  .eh-plan,
  .eh-tc,
  .eh-vip,
  .eh-pro,
  .eh-ex{
    width: auto;
    max-width: calc(100vw - 24px);
    margin-left: 12px;
    margin-right: 12px;
    box-sizing: border-box;
    min-width: 0;
  }

  /* Внутренние flex/grid контейнеры — min-width: 0 чтобы children сжимались */
  .eh-plan__inner,
  .eh-plan__row,
  .eh-plan__cell,
  .eh-tc__grid,
  .eh-tc__card,
  .eh-tc__box,
  .eh-vip__inner,
  .eh-vip__box,
  .eh-vip__bon-item,
  .eh-pro__grid,
  .eh-pro__card,
  .eh-ex__grid,
  .eh-ex__col,
  .eh-ex__box,
  .eh-ex__res,
  .eh-ex__res-slider,
  .eh-ex__res-val,
  .eh-ex__res-title{
    min-width: 0 !important;
    max-width: 100%;
    box-sizing: border-box;
  }

  /* Nowrap-элементы — на очень узких экранах могут выходить за границу.
     Разрешаем ломать длинные слова в самом крайнем случае. */
  .eh-plan__inc-text,
  .eh-plan__pkg-text,
  .eh-plan__bon-text,
  .eh-tc__feat > li,
  .eh-tc__use > li,
  .eh-vip__inc-text,
  .eh-vip__bon-text,
  .eh-vip__pkg > li,
  .eh-pro__feat > li,
  .eh-pro__use > li,
  .eh-pro__desc,
  .eh-ex__info-list > li,
  .eh-ex__section-body,
  .eh-ex__pay-note,
  .eh-ex__pay-foot,
  .eh-ex__res-value,
  .eh-ex__res-range,
  .eh-ex__usage-row,
  .eh-ex__usage-item{
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: none;
  }

  /* На очень узких экранах даже nowrap-span могут ломаться */
  .eh-plan__nw,
  .eh-tc__nw,
  .eh-vip__nw,
  .eh-pro__nw,
  .eh-ex__nw{
    overflow-wrap: normal;
  }

  /* Range slider — width 100% + min-width: 0 для корректного sizing в grid */
  .eh-ex__res-slider input[type="range"]{
    min-width: 0;
    max-width: 100%;
  }

  /* SVG иконки — flex-shrink: 0 уже задан, но подстрахуем через max-width */
  .eh-ex__usage-bar{ max-width: 100%; }

  /* Actions — уверенно 1 колонка, gap не превышает ширину */
  .eh-ex__mode{ min-width: 0; }
  .eh-ex__mode-btn{ min-width: 0; padding: 0 8px; }
}

/* Дополнительная защита на очень узких экранах (<= 420px):
   на них уже допустим wrap tabs types в plan-basic */
@media (max-width: 420px){
  .eh-plan__cell--types{ padding: 0; }
  .eh-tc__price-val,
  .eh-vip__price-value,
  .eh-pro__price-val,
  .eh-ex__pay-value{ font-size: 20px !important; }
  .eh-ex__box{ padding: 10px 10px; }
  .eh-ex__actions{ margin-top: 0; }
}
/* ---------- FAQ BLOCK (18.07.2026) — .eh-faq-* ---------- */
.eh-host-plan-faq{ width: 100%; }
.eh-host-plan-faq .eh-faq-wrap{ width: 100%; display: block; }
.eh-host-plan-faq .eh-faq-wrap .elementor-widget-container{ padding: 0; }

.eh-faq{
  --faq-bg-1: #061020;
  --faq-bg-2: #030918;
  --faq-bg-3: #0a031b;
  --faq-card-bg: #0d1b2a;
  --faq-card-border: #1e2a3a;
  --faq-text-1: #ffffff;
  --faq-text-2: #c9d1de;
  --faq-cyan: #00eaff;
  --faq-purple: #8565ff;

  position: relative;
  width: auto;
  max-width: min(1240px, calc(100vw - 24px));
  margin: 40px auto;
  padding: 40px 40px 30px;
  border-radius: 24px;
  box-sizing: border-box;
  background:
    radial-gradient(circle at 8% 20%, rgba(0, 225, 255, 0.06), transparent 32%),
    radial-gradient(circle at 92% 20%, rgba(190, 55, 255, 0.07), transparent 32%),
    linear-gradient(135deg, var(--faq-bg-1) 0%, var(--faq-bg-2) 52%, var(--faq-bg-3) 100%);
  color: var(--faq-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 22px rgba(0, 229, 255, 0.07),
    0 0 24px rgba(190, 55, 255, 0.06),
    inset 0 0 20px rgba(0, 153, 255, 0.025);
  overflow: hidden;
  isolation: isolate;
}
.eh-faq::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(90deg, #00eaff 0%, #319fff 35%, #8a49ff 68%, #d23fff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-faq__symbols{ position: absolute; width: 0; height: 0; pointer-events: none; }

/* --- HEADER --- */
.eh-faq__header{
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 24px;
}
.eh-faq__title{
  margin: 0 !important;
  font-family: inherit !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em;
  color: var(--faq-text-1) !important;
  text-align: center !important;
  text-transform: uppercase;
  white-space: nowrap;
}
.eh-faq__divider{
  position: relative;
  width: 200px;
  height: 4px;
  margin: 20px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--faq-cyan) 35%,
    var(--faq-purple) 65%,
    transparent 100%);
}
.eh-faq__divider-dot{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--faq-cyan);
  box-shadow:
    0 0 12px rgba(0, 234, 255, 0.9),
    0 0 20px rgba(111, 73, 255, 0.55);
}

/* --- LIST --- */
.eh-faq__list{
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* --- ITEM (static article) --- */
.eh-faq__item{
  background: var(--faq-card-bg);
  border: 1px solid var(--faq-card-border);
  border-radius: 16px;
  padding: 0;
}

/* --- ROW --- */
.eh-faq__row{
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 48px;
  column-gap: 28px;
  align-items: center;
  padding: 20px 32px;
  min-height: 112px;
}

/* --- NUMBER (left circle) --- */
.eh-faq__num{
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 2px solid var(--faq-cyan);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--faq-text-1);
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  background: rgba(2, 10, 24, 0.65);
  box-shadow:
    inset 0 0 12px rgba(0, 225, 255, 0.05),
    0 0 12px rgba(0, 225, 255, 0.06);
  flex-shrink: 0;
}

/* --- CONTENT --- */
.eh-faq__content{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.eh-faq__q{
  margin: 0 !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: var(--faq-text-1) !important;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-faq__a{
  display: block;
  margin: 4px 0 0;
  font-size: 13.5px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--faq-text-2);
}
.eh-faq__line{ display: block; }

/* --- HELP ICON (right ?) --- */
.eh-faq__icon{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: var(--faq-cyan);
  flex-shrink: 0;
}
.eh-faq__icon svg{
  width: 100%;
  height: 100%;
}

.eh-faq__nw{ white-space: nowrap; }

/* ============== TABLET (768–1279px) ============== */
@media (max-width: 1279px){
  .eh-faq{ padding: 32px 24px 24px; }
  .eh-faq__row{
    grid-template-columns: 64px minmax(0, 1fr) 48px;
    column-gap: 20px;
    padding: 18px 24px;
    min-height: 96px;
  }
  .eh-faq__num{ width: 64px; height: 64px; font-size: 24px; }
  .eh-faq__line{ display: inline; }
  .eh-faq__line + .eh-faq__line::before{ content: ' '; }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-faq{
    max-width: calc(100vw - 24px);
    margin: 20px auto;
    padding: 24px 12px 12px;
    border-radius: 18px;
  }
  .eh-faq__title{
    font-size: clamp(20px, 6vw, 26px) !important;
    white-space: normal;
    line-height: 1.15 !important;
  }
  .eh-faq__divider{ margin-top: 14px; }
  .eh-faq__list{ gap: 12px; }

  .eh-faq__row{
    grid-template-columns: 48px minmax(0, 1fr) 32px;
    grid-template-areas: "number content icon";
    column-gap: 12px;
    row-gap: 4px;
    padding: 14px 14px;
    min-height: 0;
    align-items: start;
  }
  .eh-faq__num{
    grid-area: number;
    width: 48px;
    height: 48px;
    font-size: 20px;
  }
  .eh-faq__content{ grid-area: content; }
  .eh-faq__icon{ grid-area: icon; width: 32px; height: 32px; align-self: start; margin-top: 4px; }
  .eh-faq__q{ font-size: 15px; line-height: 1.3; }
  .eh-faq__a{ font-size: 12.5px; line-height: 1.45; }
}

/* ============== VERY NARROW (<= 480px) — прячем ? иконку ============== */
@media (max-width: 480px){
  .eh-faq__row{
    grid-template-columns: 44px minmax(0, 1fr);
    grid-template-areas: "number content";
    column-gap: 10px;
  }
  .eh-faq__icon{ display: none; }
  .eh-faq__num{ width: 44px; height: 44px; font-size: 18px; }
}
/* ---------- USEFUL INFO BLOCK (18.07.2026, обновлено: native Elementor widgets) — .eh-info-* ----------
   Структура (native):
     .eh-host-plan-info.eh-info  (section container, boxed)
       .e-con-inner
         .eh-info__header (inner container row: icon + column-inner{h2 + p})
         .eh-info__grid   (inner container column, поверх — CSS grid 2 col)
           .eh-info__card.eh-info__card--{cyan|purple} (inner container с link → <a>)
             .eh-info__ico   (elementor-widget-icon с FA <i>)
             .eh-info__body  (inner container column: heading + text-editor)
             .eh-info__arrow (elementor-widget-icon с FA chevron-right) */

.eh-info{
  --info-bg-1: #061220;
  --info-bg-2: #030918;
  --info-bg-3: #09031b;
  --info-card-bg-1: rgba(4, 21, 39, 0.92);
  --info-card-bg-2: rgba(3, 11, 27, 0.96);
  --info-text-1: #ffffff;
  --info-text-2: #c8d0dd;
  --info-text-mut: #a9b2c2;
  --info-cyan: #00eaff;
  --info-purple: #b346ff;

  position: relative;
  width: 100% !important;
  max-width: 1240px !important;
  margin: 40px auto !important;
  padding: 32px !important;
  border-radius: 24px !important;
  box-sizing: border-box !important;
  align-self: center !important;
  background:
    radial-gradient(circle at 8% 15%, rgba(0, 225, 255, 0.06), transparent 32%),
    radial-gradient(circle at 92% 20%, rgba(175, 50, 255, 0.07), transparent 34%),
    linear-gradient(135deg, var(--info-bg-1) 0%, var(--info-bg-2) 52%, var(--info-bg-3) 100%) !important;
  color: var(--info-text-1);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  box-shadow:
    0 0 20px rgba(0, 229, 255, 0.05),
    0 0 22px rgba(183, 55, 255, 0.05),
    inset 0 0 18px rgba(0, 160, 255, 0.02);
  overflow: hidden;
  isolation: isolate;
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}
.eh-info::before{
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(90deg, #00eaff 0%, #318fff 38%, #884bff 68%, #cc3fff 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  opacity: .9;
  z-index: 1;
}
.eh-info__nw{ white-space: nowrap; }

/* Все inner containers .eh-info__* — обнуляем Elementor padding и делаем
   z-index чтобы контент был над ::before градиентной рамкой */
.eh-info .eh-info__header,
.eh-info .eh-info__head-body,
.eh-info .eh-info__grid,
.eh-info .eh-info__card,
.eh-info .eh-info__body{
  position: relative;
  z-index: 2;
  padding: 0 !important;
}
.eh-info .elementor-widget-container{ padding: 0 !important; }

/* --- HEADER (inner container row: icon-widget + head-body) --- */
.eh-info__header{
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  column-gap: 18px !important;
  row-gap: 0 !important;
  align-items: center !important;
  padding: 0 !important;
  width: 100% !important;
}
.eh-info__logo{
  width: 64px !important;
  height: 64px !important;
  box-sizing: border-box !important;
}
.eh-info__logo .elementor-widget-container{
  width: 64px;
  height: 64px;
  padding: 10px !important;
  border: 1px solid rgba(158, 66, 255, 0.8);
  border-radius: 10px;
  background: rgba(13, 12, 38, 0.72);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eh-info__logo .elementor-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.eh-info__logo .elementor-icon i{
  font-size: 30px;
  line-height: 1;
  color: var(--info-purple);
}
.eh-info__head-body{
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  align-items: flex-start !important;
}
.eh-info__title{ width: 100% !important; }
.eh-info__title .elementor-heading-title{
  margin: 0 !important;
  font-family: inherit !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em;
  color: var(--info-text-1) !important;
  text-align: left !important;
}
.eh-info__subtitle{ width: 100% !important; }
.eh-info__subtitle p{
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: var(--info-text-2) !important;
}

/* --- GRID (inner container column, поверх — CSS grid 2 col) --- */
.eh-info__grid{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  padding: 0 !important;
  width: 100% !important;
}

/* --- CARD (inner container с link → <a>) --- */
.eh-info__card{
  --info-accent: var(--info-cyan);
  --info-border: rgba(30, 95, 147, 0.65);
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) 20px !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  align-items: center !important;
  padding: 16px 20px !important;
  min-height: 104px;
  border: 1px solid var(--info-border) !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, var(--info-card-bg-1), var(--info-card-bg-2)) !important;
  color: var(--info-text-1) !important;
  text-decoration: none !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
  box-sizing: border-box;
}
.eh-info__card--purple{
  --info-accent: var(--info-purple);
  --info-border: rgba(141, 56, 204, 0.65);
}

/* Card icon (elementor-widget-icon) */
.eh-info__ico{
  width: 52px !important;
  height: 52px !important;
  box-sizing: border-box !important;
}
.eh-info__ico .elementor-widget-container{
  width: 52px;
  height: 52px;
  padding: 10px !important;
  border: 1px solid var(--info-accent);
  border-radius: 10px;
  background: rgba(4, 18, 34, 0.72);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eh-info__ico .elementor-icon-wrapper,
.eh-info__ico .elementor-icon{
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.eh-info__ico .elementor-icon i{
  font-size: 24px;
  line-height: 1;
  color: var(--info-accent);
}

/* Card body (inner container column: heading + text-editor) */
.eh-info__body{
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  align-items: flex-start !important;
}
.eh-info__q{ width: 100% !important; }
.eh-info__q .elementor-heading-title{
  margin: 0 !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: var(--info-text-1) !important;
  text-align: left !important;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-info__d{ width: 100% !important; }
.eh-info__d p{
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: var(--info-text-2) !important;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.eh-info__line{ display: block; }

/* Arrow (elementor-widget-icon с chevron-right) */
.eh-info__arrow{
  width: 20px !important;
  height: 20px !important;
  box-sizing: border-box !important;
  transition: transform 180ms ease;
}
.eh-info__arrow .elementor-widget-container{
  width: 20px;
  height: 20px;
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eh-info__arrow .elementor-icon-wrapper,
.eh-info__arrow .elementor-icon{
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.eh-info__arrow .elementor-icon i{
  font-size: 18px;
  line-height: 1;
  color: var(--info-accent);
}

/* Hover */
.eh-info__card--cyan:hover{
  border-color: var(--info-cyan) !important;
  background: linear-gradient(135deg, rgba(4, 29, 49, 0.96), rgba(3, 13, 29, 0.98)) !important;
  box-shadow:
    0 0 14px rgba(0, 229, 255, 0.10),
    inset 0 0 16px rgba(0, 229, 255, 0.025);
  transform: translateY(-1px);
}
.eh-info__card--purple:hover{
  border-color: var(--info-purple) !important;
  background: linear-gradient(135deg, rgba(24, 8, 44, 0.96), rgba(12, 4, 26, 0.98)) !important;
  box-shadow:
    0 0 14px rgba(179, 70, 255, 0.11),
    inset 0 0 16px rgba(179, 70, 255, 0.025);
  transform: translateY(-1px);
}
.eh-info__card:hover .eh-info__arrow{
  transform: translateX(4px);
}
.eh-info__card:focus-visible{
  outline: 2px solid var(--info-accent);
  outline-offset: 3px;
}

/* ============== TABLET (768–1199px) ============== */
@media (max-width: 1199px){
  .eh-info{ padding: 24px 20px !important; }
  .eh-info__header{ padding: 0 !important; column-gap: 14px !important; grid-template-columns: 56px minmax(0, 1fr) !important; }
  .eh-info__logo{ width: 56px !important; height: 56px !important; }
  .eh-info__logo .elementor-widget-container{ width: 56px; height: 56px; padding: 8px !important; }
  .eh-info__logo .elementor-icon i{ font-size: 26px; }
  .eh-info__title .elementor-heading-title{ font-size: 23px !important; }
  .eh-info__subtitle p{ font-size: 13.5px !important; }
  .eh-info__grid{ padding: 0 !important; gap: 12px !important; }
  .eh-info__card{
    grid-template-columns: 46px minmax(0, 1fr) 18px !important;
    column-gap: 14px !important;
    padding: 14px 16px !important;
    min-height: 90px;
  }
  .eh-info__ico{ width: 46px !important; height: 46px !important; }
  .eh-info__ico .elementor-widget-container{ width: 46px; height: 46px; padding: 8px !important; }
  .eh-info__ico .elementor-icon i{ font-size: 22px; }
  .eh-info__q .elementor-heading-title{ font-size: 14px !important; }
  .eh-info__d p{ font-size: 11.5px !important; }
  .eh-info__line{ display: inline; }
  .eh-info__line + .eh-info__line::before{ content: ' '; }
}

/* ============== MOBILE (<= 767px) ============== */
@media (max-width: 767px){
  .eh-info{
    max-width: calc(100vw - 24px) !important;
    margin: 20px auto !important;
    padding: 20px 16px !important;
    border-radius: 18px !important;
  }
  .eh-info__header{
    grid-template-columns: 48px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    padding: 0 !important;
  }
  .eh-info__logo{ width: 48px !important; height: 48px !important; }
  .eh-info__logo .elementor-widget-container{ width: 48px; height: 48px; padding: 8px !important; }
  .eh-info__logo .elementor-icon i{ font-size: 22px; }
  .eh-info__title .elementor-heading-title{ font-size: 21px !important; }
  .eh-info__subtitle p{ font-size: 13px !important; }
  .eh-info__grid{ padding: 0 !important; grid-template-columns: 1fr !important; gap: 10px !important; }
  .eh-info__card{
    grid-template-columns: 42px minmax(0, 1fr) 18px !important;
    column-gap: 12px !important;
    padding: 14px !important;
    min-height: 0;
  }
  .eh-info__ico{ width: 42px !important; height: 42px !important; }
  .eh-info__ico .elementor-widget-container{ width: 42px; height: 42px; padding: 7px !important; }
  .eh-info__ico .elementor-icon i{ font-size: 20px; }
  .eh-info__q .elementor-heading-title{ font-size: 14px !important; }
  .eh-info__d p{ font-size: 12px !important; }
  .eh-info__line{ display: inline; }
  .eh-info__line + .eh-info__line::before{ content: ' '; }
}
/* === /HOSTING PAGE === */
