/* IMPORTANT:
   Этот файл НЕ привязан к body.elementor-page-3521.
   Поэтому он работает, когда квиз 3521 вставлен на любую другую страницу через shortcode/template/widget.
   Подключайте глобально: Elementor Site Settings > Custom CSS или Внешний вид > Дополнительные CSS.
*/


/* =========================================================
   ENGLISH HOUSE — QUIZ DESIGN
   Embedding-safe для PAFE Form Builder, form-id 3521
   Не зависит от ID страницы WordPress. Стили затрагивают только 5 экранов квиза:
   56515e0 / 3230548 / 3a4879ef / 447f52f6 / 14821925
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600&family=Lora:wght@600;700&family=Montserrat:wght@400;500;600;700;800&display=swap');

:root{
  --ehq-navy:#0c2943;
  --ehq-navy-2:#102f4d;
  --ehq-yellow:#ffbd1f;
  --ehq-yellow-2:#ffd24b;
  --ehq-red:#ff5149;
  --ehq-red-2:#ff6258;
  --ehq-mint:#69cfc3;
  --ehq-ink:#0c2340;
  --ehq-text:#202a36;
  --ehq-muted:#9a9895;
  --ehq-paper:#fffdfa;
  --ehq-line:#e7e1db;
  --ehq-shadow:0 20px 55px rgba(21,36,48,.11);
  --ehq-card-shadow:0 8px 22px rgba(20,38,53,.08);
  --ehq-radius:28px;
}

/* ---------- reset only inside quiz ---------- */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
),
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) *{
  box-sizing:border-box;
}

/* ---------- five quiz screens ---------- */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section{
  --ehq-left:318px;
  position:relative !important;
  width:min(1180px, calc(100vw - 48px)) !important;
  max-width:1180px !important;
  min-height:620px !important;
  margin:34px auto !important;
  padding:0 !important;
  overflow:hidden !important;
  isolation:isolate;
  border:1px solid rgba(224,218,211,.9);
  border-radius:var(--ehq-radius);
  background:
    radial-gradient(circle at 86% 64%, rgba(236,230,222,.34), transparent 27%),
    var(--ehq-paper) !important;
  box-shadow:var(--ehq-shadow);
  font-family:Montserrat,Arial,sans-serif !important;
}

/* navy left panel */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section::before{
  content:"";
  position:absolute;
  z-index:-3;
  left:0;
  top:0;
  bottom:0;
  width:var(--ehq-left);
  background:
    radial-gradient(circle at 28% 42%, rgba(39,81,115,.55), transparent 38%),
    linear-gradient(155deg,#102f4d 0%,#09233b 68%,#071c30 100%);
  clip-path:polygon(0 0,100% 0,88% 30%,80% 64%,84% 100%,0 100%);
}

/* white soft curve over right edge of navy panel */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section::after{
  content:"";
  position:absolute;
  z-index:-2;
  left:calc(var(--ehq-left) - 28px);
  top:-20px;
  width:92px;
  height:700px;
  background:rgba(255,253,250,.94);
  border-radius:55% 0 0 55%;
  transform:rotate(3deg);
  box-shadow:-10px 0 22px rgba(18,38,54,.04);
}

/* inner main container */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container{
  position:relative;
  width:100% !important;
  max-width:none !important;
  min-height:620px;
  margin:0 !important;
  padding:42px 46px 34px calc(var(--ehq-left) + 42px) !important;
}

/* decorative yellow paper in the lower-left corner */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container > .elementor-column::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:0;
  bottom:-46px;
  width:305px;
  height:132px;
  background:linear-gradient(145deg,var(--ehq-yellow-2),var(--ehq-yellow));
  transform:rotate(-7deg) skewX(-8deg);
  border-radius:50% 50% 0 0;
  box-shadow:0 -9px 18px rgba(203,143,8,.10);
}

/* left-side logo */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container::before{
  content:"EN   ENGLISH HOUSE\A      школа английского языка";
  position:absolute;
  z-index:5;
  left:34px;
  top:28px;
  color:#fff;
  white-space:pre;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.22;
  font-weight:700;
  letter-spacing:.1px;
  text-shadow:0 1px 0 rgba(0,0,0,.05);
}

/* slogans on left panel */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container::after{
  position:absolute;
  z-index:5;
  left:48px;
  top:130px;
  width:170px;
  color:#fff;
  white-space:pre-line;
  font:600 31px/.95 Caveat,cursive;
  transform:rotate(-4deg);
}

.elementor-element-56515e0 > .elementor-container::after{
  content:"Let’s grow\Atogether!";
}
.elementor-element-3230548 > .elementor-container::after{
  content:"Learning\Ais an\Aadventure!";
}
.elementor-element-3a4879ef > .elementor-container::after{
  content:"Small steps —\Abig results!";
}
.elementor-element-447f52f6 > .elementor-container::after{
  content:"Your goals —\Aour support!";
}
.elementor-element-14821925 > .elementor-container::after{
  content:"Мы рядом\Aс вами!";
}

/* backpack on question 1 */
.elementor-element-56515e0 > .elementor-container > .elementor-column::after{
  content:"";
  position:absolute;
  z-index:2;
  left:15px;
  bottom:-8px;
  width:280px;
  height:360px;
  background:url("https://xn----7sbhd0a5adbclgz4k.xn--p1ai/wp-content/uploads/2026/08/ru.webp") center bottom/contain no-repeat;
  pointer-events:none;
}

/* decorative line icons for screens 2–5 */
:is(
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) > .elementor-container > .elementor-column::after{
  position:absolute;
  z-index:3;
  left:58px;
  bottom:124px;
  color:var(--ehq-yellow);
  font:400 58px/1 Georgia,serif;
  opacity:.96;
}
.elementor-element-3230548 > .elementor-container > .elementor-column::after{content:"↗";}
.elementor-element-3a4879ef > .elementor-container > .elementor-column::after{content:"☆";}
.elementor-element-447f52f6 > .elementor-container > .elementor-column::after{content:"♕";}
.elementor-element-14821925 > .elementor-container > .elementor-column::after{content:"⌖";}

/* keep Elementor wrappers clean */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) .elementor-widget-wrap{
  background:transparent !important;
}

:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) .elementor-inner-section{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

/* ---------- top line: question + progress ---------- */
:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
){
  width:100% !important;
  margin:0 0 18px !important;
}

:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-heading-title{
  position:relative;
  margin:0 !important;
  color:#344150 !important;
  font:600 13px/1.2 Montserrat,Arial,sans-serif !important;
}

/* progress bar */
:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-heading-title::after{
  content:"";
  position:absolute;
  left:132px;
  top:50%;
  width:220px;
  height:9px;
  transform:translateY(-50%);
  background:
    radial-gradient(circle at 0 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 25% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 50% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 75% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 100% 50%,#d1cbc5 0 3.5px,transparent 4px),
    linear-gradient(#d7d0ca,#d7d0ca) center/100% 2px no-repeat;
}

/* active progress states */
.elementor-element-4daae442 .elementor-heading-title::after{
  background:
    radial-gradient(circle at 0 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 25% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 50% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 75% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 100% 50%,#d1cbc5 0 3.5px,transparent 4px),
    linear-gradient(90deg,var(--ehq-yellow) 0 25%,#d7d0ca 25%) center/100% 2px no-repeat;
}
.elementor-element-b4d911 .elementor-heading-title::after{
  background:
    radial-gradient(circle at 0 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 25% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 50% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 75% 50%,#d1cbc5 0 3.5px,transparent 4px),
    radial-gradient(circle at 100% 50%,#d1cbc5 0 3.5px,transparent 4px),
    linear-gradient(90deg,var(--ehq-yellow) 0 50%,#d7d0ca 50%) center/100% 2px no-repeat;
}
.elementor-element-ffce77e .elementor-heading-title::after{
  background:
    radial-gradient(circle at 0 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 25% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 50% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 75% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 100% 50%,#d1cbc5 0 3.5px,transparent 4px),
    linear-gradient(90deg,var(--ehq-yellow) 0 75%,#d7d0ca 75%) center/100% 2px no-repeat;
}
.elementor-element-17c24088 .elementor-heading-title::after{
  background:
    radial-gradient(circle at 0 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 25% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 50% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 75% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    radial-gradient(circle at 100% 50%,var(--ehq-yellow) 0 4px,#c9920a 4px 5px,transparent 5.5px),
    linear-gradient(var(--ehq-yellow),var(--ehq-yellow)) center/100% 2px no-repeat;
}

/* ---------- question titles ---------- */
:is(
  .elementor-element-30da89be,
  .elementor-element-1725ea19,
  .elementor-element-a4d6b43,
  .elementor-element-6ef30449,
  .elementor-element-2f1e5837
){
  width:100% !important;
  margin:0 0 24px !important;
}

:is(
  .elementor-element-30da89be,
  .elementor-element-1725ea19,
  .elementor-element-a4d6b43,
  .elementor-element-6ef30449,
  .elementor-element-2f1e5837
) .elementor-heading-title{
  position:relative;
  margin:0 !important;
  max-width:760px;
  color:var(--ehq-ink) !important;
  font:700 34px/1.08 Lora,Georgia,serif !important;
  letter-spacing:-.5px;
}

:is(
  .elementor-element-30da89be,
  .elementor-element-1725ea19,
  .elementor-element-a4d6b43,
  .elementor-element-6ef30449,
  .elementor-element-2f1e5837
) .elementor-heading-title::after{
  content:"";
  display:block;
  width:74px;
  height:7px;
  margin-top:12px;
  border-radius:50%;
  background:
    linear-gradient(176deg,var(--ehq-red) 0 47%,transparent 48%) left center/58px 6px no-repeat,
    linear-gradient(3deg,var(--ehq-red) 0 45%,transparent 46%) 22px center/70px 3px no-repeat;
}

/* Q4 helper */
.elementor-element-1dbd3b7a{
  width:100% !important;
  margin:-17px 0 15px !important;
}
.elementor-element-1dbd3b7a .elementor-heading-title{
  color:#303946 !important;
  font:500 13px/1.3 Montserrat,Arial,sans-serif !important;
}

/* ---------- image-select field widgets ---------- */
:is(
  .elementor-element-542f3db1,
  .elementor-element-38861859,
  .elementor-element-73c1738a,
  .elementor-element-6783d303,
  .elementor-element-23a2630d
){
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

:is(
  .elementor-element-542f3db1,
  .elementor-element-38861859,
  .elementor-element-73c1738a,
  .elementor-element-6783d303,
  .elementor-element-23a2630d
) .pafe-field-container,
:is(
  .elementor-element-542f3db1,
  .elementor-element-38861859,
  .elementor-element-73c1738a,
  .elementor-element-6783d303,
  .elementor-element-23a2630d
) .elementor-select-wrapper{
  width:100% !important;
}

/* fallback select — остаётся аккуратным, если PAFE ещё не отрисовал image choices */
:is(
  #form-field-forma,
  #form-field-vozrast,
  #form-field-class,
  #form-field-why,
  #form-field-pol
){
  width:100%;
  min-height:50px;
  border:1px solid var(--ehq-line) !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--ehq-ink) !important;
  font:600 15px/1.2 Montserrat,Arial,sans-serif !important;
  box-shadow:var(--ehq-card-shadow) !important;
}

/* if the plugin inserts visual choice labels/items, hide the source select */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select .elementor-field:has(img) > select,
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select .elementor-field:has(.pafe-image-select) > select,
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select .elementor-field:has(.piotnet-image-select) > select{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* likely PAFE visual wrappers — several versions are covered */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .pafe-image-select,
  .piotnet-image-select,
  [data-pafe-image-select],
  [data-pafe-form-builder-image-select-options]
){
  display:grid !important;
  gap:18px !important;
  width:100% !important;
}

/* common choice cards */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
){
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid #ebe5df !important;
  border-radius:15px !important;
  background:#fff !important;
  box-shadow:var(--ehq-card-shadow) !important;
  color:var(--ehq-ink) !important;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
):hover{
  transform:translateY(-2px);
  border-color:#f1ba30 !important;
  box-shadow:0 12px 26px rgba(19,38,55,.11) !important;
}

/* selected state — supports common class/checked structures */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .selected,
  .active,
  .is-selected,
  [aria-selected="true"],
  label:has(input:checked)
){
  border-color:var(--ehq-yellow) !important;
  box-shadow:0 0 0 2px rgba(255,189,31,.24),var(--ehq-card-shadow) !important;
}

/* images inside visual choices */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
) img{
  display:block;
  width:100%;
  height:128px;
  object-fit:cover;
  border-radius:12px 12px 0 0;
  box-shadow:none !important;
}

/* labels/text inside choices */
:is(.elementor-element-56515e0,.elementor-element-3230548,.elementor-element-3a4879ef,.elementor-element-447f52f6,.elementor-element-14821925) .elementor-field-type-image_select :is(
  .pafe-image-select-label,
  .pafe-image-select__label,
  .piotnet-image-select-label,
  [data-pafe-image-select-label],
  label span,
  .pafe-image-select-item > span,
  .pafe-image-select__item > span
){
  color:var(--ehq-ink) !important;
  font:700 14px/1.25 Montserrat,Arial,sans-serif !important;
}

/* ---------- per-question grids ---------- */

/* Q1: two large photo cards */
.elementor-element-542f3db1 .elementor-field-type-image_select :is(
  .pafe-image-select,
  .piotnet-image-select,
  [data-pafe-image-select],
  [data-pafe-form-builder-image-select-options]
){
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.elementor-element-542f3db1 .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
){
  min-height:205px;
}
.elementor-element-542f3db1 .elementor-field-type-image_select img{
  height:148px !important;
}

/* Q2 & Q3: six compact icon cards */
:is(.elementor-element-38861859,.elementor-element-73c1738a)
.elementor-widget-pafe-form-builder-field .elementor-field-type-image_select :is(
  .pafe-image-select,
  .piotnet-image-select,
  [data-pafe-image-select],
  [data-pafe-form-builder-image-select-options]
){
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
:is(.elementor-element-38861859,.elementor-element-73c1738a)
.elementor-widget-pafe-form-builder-field .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
){
  min-height:94px;
  padding:18px 16px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:14px;
}
:is(.elementor-element-38861859,.elementor-element-73c1738a)
.elementor-widget-pafe-form-builder-field .elementor-field-type-image_select img{
  width:46px !important;
  height:46px !important;
  flex:0 0 46px;
  object-fit:contain !important;
  border-radius:0 !important;
}

/* Q4: four goal cards */
.elementor-element-6783d303 .elementor-field-type-image_select :is(
  .pafe-image-select,
  .piotnet-image-select,
  [data-pafe-image-select],
  [data-pafe-form-builder-image-select-options]
){
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}
.elementor-element-6783d303 .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
){
  min-height:205px;
}
.elementor-element-6783d303 .elementor-field-type-image_select img{
  height:128px !important;
}

/* Q5: address cards */
.elementor-element-23a2630d .elementor-field-type-image_select :is(
  .pafe-image-select,
  .piotnet-image-select,
  [data-pafe-image-select],
  [data-pafe-form-builder-image-select-options]
){
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}
.elementor-element-23a2630d .elementor-field-type-image_select :is(
  .pafe-image-select-item,
  .pafe-image-select__item,
  .piotnet-image-select-item,
  [data-pafe-image-select-item],
  [data-pafe-form-builder-image-select-item],
  .elementor-field > label:not(.elementor-field-label)
){
  min-height:184px;
}
.elementor-element-23a2630d .elementor-field-type-image_select img{
  height:120px !important;
  filter:saturate(.72) contrast(.94);
}

/* ---------- navigation buttons ---------- */
:is(
  .elementor-element-5bfa7873,
  .elementor-element-227d8478,
  .elementor-element-16d3b744,
  .elementor-element-5fc82dae,
  .elementor-element-eef5d4
){
  width:190px !important;
  margin-top:24px !important;
}
:is(
  .elementor-element-1030c86,
  .elementor-element-1c7f8c52,
  .elementor-element-2486d675,
  .elementor-element-7a1428c9
){
  width:150px !important;
  margin-top:24px !important;
}

:is(
  .elementor-element-5bfa7873,
  .elementor-element-227d8478,
  .elementor-element-16d3b744,
  .elementor-element-5fc82dae,
  .elementor-element-eef5d4
) .elementor-button{
  width:100% !important;
  min-height:52px !important;
  padding:0 25px !important;
  border:0 !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,var(--ehq-red-2),var(--ehq-red)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 3px 0 rgba(205,61,54,.58),
    0 10px 22px rgba(222,75,65,.17) !important;
  color:#fff !important;
  font:700 15px/1 Montserrat,Arial,sans-serif !important;
}
:is(
  .elementor-element-5bfa7873,
  .elementor-element-227d8478,
  .elementor-element-16d3b744,
  .elementor-element-5fc82dae,
  .elementor-element-eef5d4
) .elementor-button-text::after{
  content:"→";
  margin-left:18px;
  font-size:22px;
  font-weight:400;
}

:is(
  .elementor-element-1030c86,
  .elementor-element-1c7f8c52,
  .elementor-element-2486d675,
  .elementor-element-7a1428c9
) .elementor-button{
  width:100% !important;
  min-height:50px !important;
  padding:0 22px !important;
  border:1px solid #e8e2dc !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 4px 14px rgba(20,37,52,.05) !important;
  color:#66717c !important;
  font:600 14px/1 Montserrat,Arial,sans-serif !important;
}
:is(
  .elementor-element-1030c86,
  .elementor-element-1c7f8c52,
  .elementor-element-2486d675,
  .elementor-element-7a1428c9
) .elementor-button-text::before{
  content:"←";
  margin-right:12px;
  font-size:17px;
}

/* make bottom navigation sit like the reference */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) .elementor-inner-section:last-child > .elementor-container{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
}

/* ---------- tablet ---------- */
@media (max-width:1024px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section{
    --ehq-left:230px;
    width:calc(100vw - 28px) !important;
    min-height:570px !important;
    margin:18px auto !important;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container{
    min-height:570px;
    padding:34px 30px 30px calc(var(--ehq-left) + 30px) !important;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container::before{
    left:22px;
    top:22px;
    font-size:14px;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container::after{
    left:34px;
    top:120px;
    font-size:26px;
  }

  .elementor-element-56515e0 > .elementor-container > .elementor-column::after{
    width:215px;
    height:300px;
  }

  :is(
    .elementor-element-30da89be,
    .elementor-element-1725ea19,
    .elementor-element-a4d6b43,
    .elementor-element-6ef30449,
    .elementor-element-2f1e5837
  ) .elementor-heading-title{
    font-size:29px !important;
  }
}

/* ---------- mobile ---------- */
@media (max-width:767px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section{
    --ehq-left:0px;
    width:calc(100vw - 20px) !important;
    min-height:0 !important;
    margin:10px auto !important;
    border-radius:22px;
  }

  /* left panel becomes a compact navy header */
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section::before{
    width:100%;
    height:92px;
    bottom:auto;
    clip-path:none;
    border-radius:21px 21px 40% 0;
  }
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section::after{
    display:none;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container{
    min-height:0;
    padding:118px 18px 24px !important;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container::before{
    left:18px;
    top:20px;
    font-size:14px;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container::after{
    display:none;
  }

  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container > .elementor-column::before,
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section > .elementor-container > .elementor-column::after{
    display:none;
  }

  :is(
    .elementor-element-30d36418,
    .elementor-element-4daae442,
    .elementor-element-b4d911,
    .elementor-element-ffce77e,
    .elementor-element-17c24088
  ) .elementor-heading-title{
    font-size:11px !important;
  }

  :is(
    .elementor-element-30d36418,
    .elementor-element-4daae442,
    .elementor-element-b4d911,
    .elementor-element-ffce77e,
    .elementor-element-17c24088
  ) .elementor-heading-title::after{
    left:105px;
    width:150px;
  }

  :is(
    .elementor-element-30da89be,
    .elementor-element-1725ea19,
    .elementor-element-a4d6b43,
    .elementor-element-6ef30449,
    .elementor-element-2f1e5837
  ) .elementor-heading-title{
    font-size:26px !important;
  }

  /* visual grids become 2 columns */
  :is(
    .elementor-element-542f3db1,
    .elementor-element-38861859,
    .elementor-element-73c1738a,
    .elementor-element-6783d303,
    .elementor-element-23a2630d
  ) .elementor-field-type-image_select :is(
    .pafe-image-select,
    .piotnet-image-select,
    [data-pafe-image-select],
    [data-pafe-form-builder-image-select-options]
  ){
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  .elementor-element-542f3db1 .elementor-field-type-image_select img,
  .elementor-element-6783d303 .elementor-field-type-image_select img,
  .elementor-element-23a2630d .elementor-field-type-image_select img{
    height:105px !important;
  }

  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4
  ),
  :is(
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ){
    width:auto !important;
    min-width:135px;
  }
}

@media (max-width:767px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ) .elementor-inner-section:last-child > .elementor-container{
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
  }

  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ){
    width:calc(50% - 5px) !important;
    min-width:0 !important;
    margin-top:18px !important;
  }

  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ) .elementor-button{
    min-height:48px !important;
    padding:0 12px !important;
  }

  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4
  ) .elementor-button-text::after{
    margin-left:8px;
    font-size:18px;
  }

  :is(
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ) .elementor-button-text::before{
    margin-right:8px;
    font-size:15px;
  }

}

@media (max-width:767px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ) .elementor-inner-section:last-child > .elementor-container{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    align-items:center !important;
    justify-content:stretch !important;
  }
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ) .elementor-inner-section:last-child > .elementor-container > .elementor-column{
    width:100% !important;
    margin:0 !important;
  }
  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ){
    width:100% !important;
    min-width:0 !important;
    margin-top:16px !important;
  }
  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ) .elementor-button{
    width:100% !important;
    min-height:46px !important;
    padding:0 8px !important;
    font-size:12px !important;
  }
  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4
  ) .elementor-button-text::after{
    margin-left:6px;
    font-size:16px;
  }
  :is(
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ) .elementor-button-text::before{
    margin-right:6px;
    font-size:14px;
  }
}

@media (max-width:480px){
  :is(
    .elementor-element-30d36418,
    .elementor-element-4daae442,
    .elementor-element-b4d911,
    .elementor-element-ffce77e,
    .elementor-element-17c24088
  ) .elementor-heading-title::after{
    left:92px;
    width:115px;
  }

  :is(
    .elementor-element-30da89be,
    .elementor-element-1725ea19,
    .elementor-element-a4d6b43,
    .elementor-element-6ef30449,
    .elementor-element-2f1e5837
  ) .elementor-heading-title{
    font-size:23px !important;
  }

  :is(
    .elementor-element-38861859,
    .elementor-element-73c1738a
  ) .elementor-field-type-image_select :is(
    .pafe-image-select,
    .piotnet-image-select,
    [data-pafe-image-select],
    [data-pafe-form-builder-image-select-options]
  ){
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V2 — геометрическая доводка под референс
   ========================================================= */

/* Переменная нужна, чтобы декоративные элементы считали
   координаты от ЛЕВОГО КРАЯ всей карточки, а не от белой колонки. */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section{
  --ehq-content-offset:42px;
}

/* Чуть компактнее фирменный блок в синей зоне */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container::before{
  left:30px !important;
  top:27px !important;
  font-size:14px !important;
  line-height:1.18 !important;
  letter-spacing:.15px !important;
}

/* Надпись чуть ближе к референсу */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container::after{
  left:43px !important;
  top:135px !important;
  width:155px !important;
  font-size:27px !important;
  line-height:.96 !important;
}

/* ВАЖНО:
   жёлтая подложка раньше считалась от начала белой колонки.
   Теперь возвращаем её физически в нижний левый угол синей части. */
:is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container > .elementor-column::before{
  left:calc(0px - var(--ehq-left) - var(--ehq-content-offset)) !important;
  bottom:-49px !important;
  width:315px !important;
  height:128px !important;
  transform:rotate(-7deg) skewX(-8deg) !important;
}

/* РЮКЗАК — полностью возвращаем на синюю сторону.
   Раньше left:15px отсчитывался от белой рабочей колонки. */
.elementor-element-56515e0 > .elementor-container > .elementor-column::after{
  left:calc(22px - var(--ehq-left) - var(--ehq-content-offset)) !important;
  bottom:-5px !important;
  width:265px !important;
  height:335px !important;
  background-position:center bottom !important;
  background-size:contain !important;
}

/* Декоративные символы экранов 2–5 также возвращаем в синюю панель */
:is(
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
) > .elementor-container > .elementor-column::after{
  left:calc(58px - var(--ehq-left) - var(--ehq-content-offset)) !important;
}

/* Белая рабочая часть первого вопроса чуть компактнее */
.elementor-element-56515e0 > .elementor-container{
  padding-top:39px !important;
  padding-right:50px !important;
  padding-bottom:28px !important;
}

/* Вопрос/прогресс */
.elementor-element-56515e0 .elementor-element-30d36418{
  margin-bottom:17px !important;
}
.elementor-element-56515e0 .elementor-element-30da89be{
  margin-bottom:21px !important;
}
.elementor-element-56515e0 .elementor-element-30da89be .elementor-heading-title{
  max-width:640px !important;
}

/* Две карточки первого вопроса — ограничиваем ширину,
   чтобы не растягивались на всю пустую правую часть. */
.elementor-element-56515e0 .elementor-element-542f3db1{
  width:620px !important;
  max-width:100% !important;
}

/* Если PAFE генерирует flex/grid контейнер — держим две карточки рядом */
.elementor-element-56515e0 .elementor-element-542f3db1 .elementor-field-type-image_select > *,
.elementor-element-56515e0 .elementor-element-542f3db1 .pafe-field-container,
.elementor-element-56515e0 .elementor-element-542f3db1 .elementor-select-wrapper{
  max-width:620px !important;
}

/* Картинки первого шага чуть ниже и аккуратнее */
.elementor-element-56515e0 .elementor-element-542f3db1 .elementor-field-type-image_select img{
  border-radius:13px 13px 0 0 !important;
}

/* ---------------------------------------------------------
   КНОПКА ПЕРВОГО ШАГА
   В HTML она находится в правой 50%-колонке.
   Убираем пустую левую половину и делаем кнопку по центру.
   --------------------------------------------------------- */
.elementor-element-56515e0 .elementor-element-6f88e1c8{
  margin-top:13px !important;
}
.elementor-element-56515e0 .elementor-element-6f88e1c8 > .elementor-container{
  display:flex !important;
  width:620px !important;
  max-width:100% !important;
  margin:0 !important;
  align-items:center !important;
  justify-content:center !important;
}

/* пустая колонка слева */
.elementor-element-56515e0 .elementor-element-3b6bd1c6{
  display:none !important;
}

/* колонка с кнопкой */
.elementor-element-56515e0 .elementor-element-6d71df96{
  width:100% !important;
  max-width:100% !important;
  flex:0 0 100% !important;
}

/* widget больше не выравнивается вправо */
.elementor-element-56515e0 .elementor-element-5bfa7873{
  width:190px !important;
  max-width:190px !important;
  margin:18px auto 0 !important;
  text-align:center !important;
}
.elementor-element-56515e0 .elementor-element-5bfa7873 .elementor-widget-container,
.elementor-element-56515e0 .elementor-element-5bfa7873 .pafe-form-builder-next-step{
  width:100% !important;
  text-align:center !important;
}

/* Кнопка чуть ниже/меньше, как на макете */
.elementor-element-56515e0 .elementor-element-5bfa7873 .elementor-button{
  min-height:48px !important;
  border-radius:11px !important;
  font-size:14px !important;
}

/* Немного смягчаем выбранную карточку —
   PAFE сейчас рисует слишком тяжёлую оранжевую рамку */
.elementor-element-56515e0 .elementor-field-type-image_select :is(
  .selected,
  .active,
  .is-selected,
  [aria-selected="true"],
  label:has(input:checked)
){
  border-color:#ffbd1f !important;
  box-shadow:0 0 0 2px rgba(255,189,31,.18),0 8px 20px rgba(20,38,53,.08) !important;
}

/* ---------- tablet ---------- */
@media (max-width:1024px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ).elementor-top-section{
    --ehq-content-offset:30px;
  }

  .elementor-element-56515e0 > .elementor-container > .elementor-column::after{
    left:calc(16px - var(--ehq-left) - var(--ehq-content-offset)) !important;
    width:205px !important;
    height:285px !important;
  }

  .elementor-element-56515e0 .elementor-element-542f3db1,
  .elementor-element-56515e0 .elementor-element-6f88e1c8 > .elementor-container{
    width:100% !important;
  }
}

/* ---------- mobile ---------- */
@media (max-width:767px){
  /* на мобильном декоративный рюкзак уже скрывается старым CSS,
     поэтому дополнительного отрицательного смещения не требуется */
  .elementor-element-56515e0 .elementor-element-542f3db1{
    width:100% !important;
  }

  .elementor-element-56515e0 .elementor-element-6f88e1c8{
    margin-top:8px !important;
  }

  .elementor-element-56515e0 .elementor-element-6f88e1c8 > .elementor-container{
    width:100% !important;
  }

  .elementor-element-56515e0 .elementor-element-5bfa7873{
    margin:14px auto 0 !important;
  }
}


/* =========================================================
   RIFERT 2.4 — SAFE PROGRESS PATCH
   End dots are inset inside the pseudo-element, so they are never cut in half.
   Every progress widget can be tuned independently in Elementor.
   ========================================================= */
:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
),
:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-widget-container,
:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-heading-title{
  overflow:visible !important;
}

:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-heading-title{
  --ehq-progress-active:var(--ehq-yellow,#ffbd1f);
  --ehq-progress-inactive:#d1cbc5;
  --ehq-progress-track:#d7d0ca;
  --ehq-progress-dot-r:4px;
  --ehq-progress-edge:5px;
  --ehq-progress-line-h:2px;
  --ehq-progress-fill:0%;
  --ehq-dot1:var(--ehq-progress-active);
  --ehq-dot2:var(--ehq-progress-inactive);
  --ehq-dot3:var(--ehq-progress-inactive);
  --ehq-dot4:var(--ehq-progress-inactive);
  --ehq-dot5:var(--ehq-progress-inactive);
}
.elementor-element-4daae442 .elementor-heading-title{
  --ehq-progress-fill:25%;
  --ehq-dot2:var(--ehq-progress-active);
}
.elementor-element-b4d911 .elementor-heading-title{
  --ehq-progress-fill:50%;
  --ehq-dot2:var(--ehq-progress-active);
  --ehq-dot3:var(--ehq-progress-active);
}
.elementor-element-ffce77e .elementor-heading-title{
  --ehq-progress-fill:75%;
  --ehq-dot2:var(--ehq-progress-active);
  --ehq-dot3:var(--ehq-progress-active);
  --ehq-dot4:var(--ehq-progress-active);
}
.elementor-element-17c24088 .elementor-heading-title{
  --ehq-progress-fill:100%;
  --ehq-dot2:var(--ehq-progress-active);
  --ehq-dot3:var(--ehq-progress-active);
  --ehq-dot4:var(--ehq-progress-active);
  --ehq-dot5:var(--ehq-progress-active);
}

:is(
  .elementor-element-30d36418,
  .elementor-element-4daae442,
  .elementor-element-b4d911,
  .elementor-element-ffce77e,
  .elementor-element-17c24088
) .elementor-heading-title::after{
  box-sizing:border-box !important;
  overflow:visible !important;
  background:
    radial-gradient(circle at var(--ehq-progress-edge) 50%, var(--ehq-dot1) 0 var(--ehq-progress-dot-r), transparent calc(var(--ehq-progress-dot-r) + 1px)),
    radial-gradient(circle at 25% 50%, var(--ehq-dot2) 0 var(--ehq-progress-dot-r), transparent calc(var(--ehq-progress-dot-r) + 1px)),
    radial-gradient(circle at 50% 50%, var(--ehq-dot3) 0 var(--ehq-progress-dot-r), transparent calc(var(--ehq-progress-dot-r) + 1px)),
    radial-gradient(circle at 75% 50%, var(--ehq-dot4) 0 var(--ehq-progress-dot-r), transparent calc(var(--ehq-progress-dot-r) + 1px)),
    radial-gradient(circle at calc(100% - var(--ehq-progress-edge)) 50%, var(--ehq-dot5) 0 var(--ehq-progress-dot-r), transparent calc(var(--ehq-progress-dot-r) + 1px)),
    linear-gradient(90deg,
      var(--ehq-progress-active) 0 var(--ehq-progress-fill),
      var(--ehq-progress-track) var(--ehq-progress-fill) 100%
    ) var(--ehq-progress-edge) center / calc(100% - var(--ehq-progress-edge) - var(--ehq-progress-edge)) var(--ehq-progress-line-h) no-repeat !important;
}

@media (max-width:767px){
  :is(
    .elementor-element-30d36418,
    .elementor-element-4daae442,
    .elementor-element-b4d911,
    .elementor-element-ffce77e,
    .elementor-element-17c24088
  ) .elementor-heading-title::after{
    left:auto !important;
    right:0 !important;
    width:min(150px, calc(100% - 105px)) !important;
    max-width:calc(100% - 105px) !important;
  }
}

@media (max-width:420px){
  :is(
    .elementor-element-30d36418,
    .elementor-element-4daae442,
    .elementor-element-b4d911,
    .elementor-element-ffce77e,
    .elementor-element-17c24088
  ) .elementor-heading-title::after{
    width:min(125px, calc(100% - 96px)) !important;
    max-width:calc(100% - 96px) !important;
  }
}

/* =========================================================
   EHQ 3.0.6 SAFE — FINAL SCREEN + PRELOADER VISUALS ONLY
   IMPORTANT:
   - PAFE/Woody owns the flow.
   - Communication method picker (Позвоните / MAX / Telegram)
     is intentionally NOT styled by this plugin.
   ========================================================= */

.elementor-3521 #piotnet-form-success,
.elementor-3521 #piotnet-form-success *{
  box-sizing:border-box;
}

.elementor-3521 #piotnet-form-success.elementor-top-section{
  --ehq-final-left:318px;
  position:relative !important;
  width:min(1180px, calc(100vw - 48px)) !important;
  max-width:1180px !important;
  min-height:620px;
  margin:34px auto !important;
  padding:0 !important;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(224,218,211,.9);
  border-radius:var(--ehq-radius,28px);
  background:
    radial-gradient(circle at 86% 64%, rgba(236,230,222,.34), transparent 27%),
    var(--ehq-paper,#fffdfa) !important;
  box-shadow:var(--ehq-shadow,0 20px 55px rgba(21,36,48,.11));
  font-family:Montserrat,Arial,sans-serif !important;
}

.elementor-3521 #piotnet-form-success.elementor-top-section::before{
  content:"";
  position:absolute;
  z-index:-3;
  left:0;
  top:0;
  bottom:0;
  width:var(--ehq-final-left);
  background:
    radial-gradient(circle at 28% 42%, rgba(39,81,115,.55), transparent 38%),
    linear-gradient(155deg,#102f4d 0%,#09233b 68%,#071c30 100%);
  clip-path:polygon(0 0,100% 0,88% 30%,80% 64%,84% 100%,0 100%);
}

.elementor-3521 #piotnet-form-success.elementor-top-section::after{
  content:"";
  position:absolute;
  z-index:-2;
  left:calc(var(--ehq-final-left) - 28px);
  top:-20px;
  width:92px;
  height:760px;
  background:rgba(255,253,250,.94);
  border-radius:55% 0 0 55%;
  transform:rotate(3deg);
  box-shadow:-10px 0 22px rgba(18,38,54,.04);
}

.elementor-3521 #piotnet-form-success > .elementor-container{
  position:relative;
  width:100% !important;
  max-width:none !important;
  min-height:620px;
  margin:0 !important;
  padding:48px 48px 38px calc(var(--ehq-final-left) + 44px) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:42px;
  align-items:center;
}


.elementor-3521 #piotnet-form-success > .elementor-container::after{
  content:"Готово!\AСтоимость\Aподобрана";
  position:absolute;
  z-index:5;
  left:48px;
  top:142px;
  width:190px;
  color:#fff;
  white-space:pre-line;
  font:600 31px/.95 Caveat,cursive;
  transform:rotate(-4deg);
}

.elementor-3521 #piotnet-form-success > .elementor-container > .elementor-column{
  width:auto !important;
  min-width:0;
}

/* Main content column: no artificial max-width; lets you style picker manually. */
.elementor-3521 #piotnet-form-success .elementor-element-3dbd0c8a{
  grid-column:1;
  max-width:none !important;
}

/* Right yellow backpack area */
.elementor-3521 #piotnet-form-success .elementor-element-359971a5{
  grid-column:2;
  position:relative;
  align-self:end;
  min-height:460px;
  border-radius:145px 145px 28px 28px;
  background:
    url("https://xn----etboblddk4bv5c.xn--p1ai/wp-content/uploads/2026/08/ru.webp") center bottom/82% auto no-repeat,
    radial-gradient(circle at 50% 22%, rgba(255,255,255,.28), transparent 20%),
    linear-gradient(145deg,var(--ehq-yellow-2,#ffd24b),var(--ehq-yellow,#ffbd1f)) !important;
  box-shadow:inset 0 8px 18px rgba(121,78,0,.12),0 16px 32px rgba(70,54,26,.09);
  overflow:hidden;
}
.elementor-3521 #piotnet-form-success .elementor-element-359971a5 > .elementor-widget-wrap{
  min-height:460px;
  background:transparent !important;
}
.elementor-3521 #piotnet-form-success .elementor-element-359971a5::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(285px,88%);
  height:92%;
  transform:translateX(-50%);
  background:url("https://xn----etboblddk4bv5c.xn--p1ai/wp-content/uploads/2026/08/ru.webp") center bottom/contain no-repeat;
  filter:drop-shadow(0 16px 18px rgba(13,35,56,.16));
  pointer-events:none;
}

.elementor-3521 #piotnet-form-success .elementor-element-50a81e1a .elementor-heading-title{
  position:relative;
  margin:0 0 28px !important;
  max-width:620px;
  color:var(--ehq-ink,#0c2340) !important;
  font-family:Lora,Georgia,serif !important;
  font-size:38px !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  letter-spacing:-.4px;
}
.elementor-3521 #piotnet-form-success .elementor-element-50a81e1a .elementor-heading-title::after{
  content:"";
  display:block;
  width:92px;
  height:5px;
  margin-top:19px;
  border-radius:999px;
  background:var(--ehq-red,#ff5149);
  transform:rotate(-2deg);
}

/* ONLY phone field is styled here. Communication-method picker is excluded. */
.elementor-3521 #piotnet-form-success .elementor-element-434416b6{
  width:100% !important;
  max-width:620px;
  margin-top:12px;
}
.elementor-3521 #piotnet-form-success .elementor-element-434416b6 .elementor-field-group{
  margin-bottom:15px !important;
}
.elementor-3521 #piotnet-form-success .elementor-element-434416b6 .elementor-field-label{
  color:var(--ehq-ink,#0c2340) !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-size:14px !important;
  font-weight:700 !important;
  margin-bottom:8px !important;
}
.elementor-3521 #piotnet-form-success .elementor-element-434416b6 input.elementor-field{
  width:100% !important;
  min-height:54px !important;
  padding:12px 16px !important;
  border:1px solid #ded8d1 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--ehq-text,#202a36) !important;
  box-shadow:0 5px 14px rgba(20,38,53,.05) !important;
  font:500 15px/1.3 Montserrat,Arial,sans-serif !important;
}
.elementor-3521 #piotnet-form-success .elementor-element-434416b6 input.elementor-field:focus{
  border-color:var(--ehq-yellow,#ffbd1f) !important;
  box-shadow:0 0 0 3px rgba(255,189,31,.16) !important;
  outline:none !important;
}

/* Submit button only */
.elementor-3521 #piotnet-form-success .elementor-element-7e05fec{
  width:100% !important;
  max-width:620px;
}
.elementor-3521 #piotnet-form-success .elementor-element-7e05fec :is(.elementor-button,button,input[type="submit"]){
  width:100% !important;
  min-height:58px !important;
  border:0 !important;
  border-radius:17px !important;
  background:linear-gradient(180deg,var(--ehq-red-2,#ff6258),var(--ehq-red,#ff5149)) !important;
  color:#fff !important;
  box-shadow:0 5px 0 #d63c36,0 14px 26px rgba(213,70,61,.17) !important;
  font:700 16px/1 Montserrat,Arial,sans-serif !important;
}

/* Preloader: appearance only. No state switching. */
.elementor-3521 #piotnet-preloader.active.elementor-top-section{
  width:min(1180px, calc(100vw - 48px)) !important;
  max-width:1180px !important;
  min-height:620px;
  margin:34px auto !important;
  padding:0 !important;
  overflow:hidden;
  border:1px solid rgba(224,218,211,.9);
  border-radius:var(--ehq-radius,28px);
  background:
    radial-gradient(circle at 82% 22%,rgba(255,210,75,.22),transparent 24%),
    radial-gradient(circle at 20% 86%,rgba(105,207,195,.15),transparent 28%),
    var(--ehq-paper,#fffdfa) !important;
  box-shadow:var(--ehq-shadow,0 20px 55px rgba(21,36,48,.11));
}
.elementor-3521 #piotnet-preloader.active > .elementor-container,
.elementor-3521 #piotnet-preloader.active .preloader-container{
  min-height:620px !important;
}
.elementor-3521 #piotnet-preloader.active .loading-text{
  color:var(--ehq-ink,#0c2340) !important;
  font-family:Montserrat,Arial,sans-serif !important;
  font-weight:700 !important;
}
.elementor-3521 #piotnet-preloader.active .spinner-minimal{
  border-color:rgba(12,41,67,.14) !important;
  border-top-color:var(--ehq-yellow,#ffbd1f) !important;
}

/* Hidden service widget marker: visible only inside Elementor editor. */
.rehq-settings-marker{display:none !important;}
.elementor-editor-active .rehq-settings-marker{
  display:block !important;
  padding:12px 14px;
  border:1px dashed #ffbd1f;
  border-radius:10px;
  background:#fff9e8;
  color:#0c2943;
  font:600 13px/1.35 Montserrat,Arial,sans-serif;
}

/* MOBILE: Back + Next stay in one line */
@media (max-width:767px){
  :is(
    .elementor-element-56515e0,
    .elementor-element-3230548,
    .elementor-element-3a4879ef,
    .elementor-element-447f52f6,
    .elementor-element-14821925
  ) .elementor-inner-section:last-child > .elementor-container{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    justify-content:space-between !important;
    gap:10px !important;
    width:100% !important;
  }
  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ){
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    margin-top:16px !important;
  }
  :is(
    .elementor-element-5bfa7873,
    .elementor-element-227d8478,
    .elementor-element-16d3b744,
    .elementor-element-5fc82dae,
    .elementor-element-eef5d4,
    .elementor-element-1030c86,
    .elementor-element-1c7f8c52,
    .elementor-element-2486d675,
    .elementor-element-7a1428c9
  ) .elementor-button{
    width:100% !important;
    min-height:46px !important;
    padding:0 10px !important;
    font-size:12px !important;
    white-space:nowrap !important;
  }

  .elementor-3521 #piotnet-form-success.elementor-top-section{
    --ehq-final-left:0px;
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-height:0;
    margin:14px auto !important;
    border-radius:22px;
    background:var(--ehq-paper,#fffdfa) !important;
  }
  .elementor-3521 #piotnet-form-success.elementor-top-section::before{
    z-index:-1;
    width:100%;
    height:118px;
    bottom:auto;
    clip-path:polygon(0 0,100% 0,100% 74%,76% 100%,0 88%);
  }
  .elementor-3521 #piotnet-form-success.elementor-top-section::after{display:none;}
  .elementor-3521 #piotnet-form-success > .elementor-container{
    min-height:0;
    display:block !important;
    padding:148px 20px 28px !important;
  }
  .elementor-3521 #piotnet-form-success > .elementor-container::before{
    left:22px;
    top:21px;
    font-size:14px;
  }
  .elementor-3521 #piotnet-form-success > .elementor-container::after{
    left:auto;
    right:23px;
    top:23px;
    width:115px;
    text-align:center;
    font-size:22px;
    line-height:.95;
  }
  .elementor-3521 #piotnet-form-success > .elementor-container > .elementor-column{
    width:100% !important;
  }
  .elementor-3521 #piotnet-form-success .elementor-element-359971a5{display:none !important;}
  .elementor-3521 #piotnet-form-success .elementor-element-50a81e1a .elementor-heading-title{
    max-width:none;
    font-size:28px !important;
    line-height:1.13 !important;
    margin-bottom:26px !important;
  }
  .elementor-3521 #piotnet-form-success .elementor-element-434416b6,
  .elementor-3521 #piotnet-form-success .elementor-element-7e05fec{
    max-width:none;
  }
  .elementor-3521 #piotnet-preloader.active.elementor-top-section{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-height:500px;
    margin:14px auto !important;
    border-radius:22px;
  }
  .elementor-3521 #piotnet-preloader.active > .elementor-container,
  .elementor-3521 #piotnet-preloader.active .preloader-container{
    min-height:500px !important;
  }
}


/* 3.0.8 — FINAL: логотип/надпись в синей зоне полностью отключены.
   Само правило, создававшее текст, удалено выше; это страховка от старого CSS Elementor/кэша. */
html body .elementor-3521 #piotnet-form-success > .elementor-container::before,
html body .elementor-3521 .piotnet-form-success > .elementor-container::before,
html body #piotnet-form-success > .elementor-container::before{
  content:"" !important;
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
  font-size:0 !important;
}


/* =========================================================
   3.0.9 — скрыть надпись EN ENGLISH HOUSE в синей панели
   ========================================================= */
html body :is(
  .elementor-element-56515e0,
  .elementor-element-3230548,
  .elementor-element-3a4879ef,
  .elementor-element-447f52f6,
  .elementor-element-14821925
).elementor-top-section > .elementor-container::before{
  content:none !important;
  display:none !important;
}
