*{box-sizing:border-box}
:root{
  --bg:#03140f;--green:#9be870;--green2:#53c95f;--text:#fff;--muted:rgba(255,255,255,.78);--muted2:rgba(255,255,255,.58);
  --card:#f5f3ee;--cardText:#111111;--line:rgba(255,255,255,.16);--dark:#05100c;
  --tg:#169fe8;--wa:#24c562;--max:#6554e8;--shadow:0 30px 90px rgba(0,0,0,.38);--r:28px;--container:1400px
}
html{scroll-behavior:smooth}
body{
  margin:0;min-width:320px;background:var(--bg);color:var(--text);
  font-family:"Manrope",Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;padding-bottom:84px
}
a{color:inherit}img{display:block;max-width:100%}.container{width:min(var(--container),calc(100% - 56px));margin:0 auto}
.site-header{
  position:absolute;z-index:30;top:38px;left:0;right:0;width:min(var(--container),calc(100% - 56px));
  margin:0 auto;display:flex;align-items:center;justify-content:flex-start;padding:0;background:transparent;border:0;box-shadow:none
}
.logo{display:inline-flex;align-items:center;gap:13px;color:#fff;text-decoration:none;font-size:30px;font-weight:800;letter-spacing:-.04em}
.logo__mark{display:grid;width:44px;height:44px;place-items:center;color:#fff;border:3px solid var(--green);border-radius:11px;font-size:28px;font-weight:800;line-height:1;background:rgba(0,0,0,.22)}
.section{padding:82px 0;background:#fff;color:#111827}.hero{position:relative;min-height:100vh;overflow:hidden;padding:156px 0 68px;background:radial-gradient(circle at 55% 48%,rgba(24,136,66,.55),transparent 28%),linear-gradient(110deg,#020b09 0%,#06251b 43%,#0a3622 68%,#10120f 100%);color:#fff}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.25) 47%,rgba(0,0,0,.58) 100%);pointer-events:none}
.hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,.92fr);gap:48px;align-items:center}
.hero__content{max-width:790px}
.eyebrow{display:none}
h1,h2,h3,p{margin-top:0}
h1{margin:0 0 30px;color:#fff;font-size:clamp(54px,5.25vw,92px);line-height:1.08;font-weight:800;letter-spacing:-.055em;text-shadow:0 6px 26px rgba(0,0,0,.22)}
.accent-city{color:var(--green)}
.lead{max-width:740px;margin-bottom:42px;color:var(--muted);font-size:clamp(19px,1.45vw,25px);line-height:1.55;font-weight:500}
.hero-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:820px;margin:0 0 58px}
.hero-benefits div{display:flex;align-items:flex-start;gap:14px;color:#fff}
.benefit-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;color:var(--green);border:2px solid rgba(155,232,112,.78);border-radius:14px;font-weight:800;font-size:18px}
.hero-benefits p{margin:0;color:rgba(255,255,255,.88);font-size:17px;font-weight:700;line-height:1.45}
.hero-actions,.messengers{display:flex;flex-wrap:wrap;gap:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:72px;padding:18px 28px;border:0;border-radius:16px;color:#fff;text-decoration:none;font-size:18px;font-weight:800;box-shadow:0 16px 34px rgba(0,0,0,.22);transition:transform .18s ease,filter .18s ease}
.btn:hover{transform:translateY(-2px);filter:brightness(1.05)}
.btn img{width:32px;height:32px;flex:0 0 auto}.btn--telegram{background:linear-gradient(135deg,#11a9ff,#0d83d8)}.btn--whatsapp{background:linear-gradient(135deg,#21d464,#16a944)}.btn--max{background:linear-gradient(135deg,#755bff,#553edc)}
.security-note{display:flex;align-items:center;gap:10px;margin:46px 0 0;color:rgba(255,255,255,.7);font-size:16px}.security-note span{display:grid;width:30px;height:30px;place-items:center;color:var(--green);border:1px solid rgba(155,232,112,.45);border-radius:10px}
.hero-person{position:relative;min-height:720px;display:flex;align-items:flex-end;justify-content:center}
.hero-woman{position:absolute;right:-20px;bottom:-68px;width:min(690px,47vw);height:auto;max-width:none;filter:drop-shadow(0 30px 70px rgba(0,0,0,.5))}
.application-card{position:absolute;right:0;bottom:14px;width:min(430px,34vw);padding:30px;background:rgba(250,248,242,.96);color:var(--cardText);border-radius:28px;box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.application-card h2{margin:0 0 12px;color:#111;font-size:29px;line-height:1.15;font-weight:800;letter-spacing:-.03em}
.application-card>p{margin:0 0 24px;color:#333;font-size:16px;line-height:1.45}
.application-steps{overflow:hidden;border:1px solid rgba(0,0,0,.10);border-radius:16px}
.application-steps>div{display:flex;gap:14px;align-items:flex-start;padding:17px 8px;background:rgba(255,255,255,.58);border-bottom:1px solid rgba(0,0,0,.08)}
.application-steps>div:last-child{border-bottom:0}
.step-icon{display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;margin-left:0;color:#167734;background:#e4f3df;border-radius:12px;font-size:24px;font-weight:800}
.application-steps strong{display:block;margin-bottom:4px;font-size:15px;line-height:1.25}.application-steps small{display:block;color:#555;line-height:1.35}
.section h2{max-width:860px;margin-bottom:18px;color:#111827;font-size:clamp(30px,3.2vw,46px);line-height:1.12;font-weight:800;letter-spacing:-.04em}.section h3{font-size:20px}.section p{color:#475467}
.section--soft{background:#f7f8fb}.section--warning{background:#fff7df}.cards{display:grid;gap:16px;margin-top:30px}.cards--three{grid-template-columns:repeat(3,minmax(0,1fr))}.cards--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.card,.callout,details,.cta-card{background:#fff;border:1px solid #e6ebf2;border-radius:24px;box-shadow:0 14px 38px rgba(17,24,39,.07)}.card{padding:24px}.card p{margin-bottom:0;color:#667085}
.two-columns{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1fr);gap:48px;align-items:start}.check-list{display:grid;gap:12px;padding:0;margin:0;list-style:none}.check-list li{position:relative;padding:14px 16px 14px 42px;background:#fff;border:1px solid #e6ebf2;border-radius:16px}.check-list li:before{content:"";position:absolute;left:18px;top:22px;width:7px;height:7px;background:#1d4ed8;border-radius:99px}
.callout{padding:clamp(26px,5vw,46px)}.steps{counter-reset:step;display:grid;gap:14px;max-width:900px;padding:0;margin:30px 0 0;list-style:none}.steps li{position:relative;min-height:58px;display:flex;align-items:center;padding:16px 18px 16px 70px;background:#fff;border:1px solid #e6ebf2;border-radius:18px}.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:16px;display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#1d4ed8;border-radius:13px;font-weight:800}
.faq{display:grid;gap:12px;max-width:930px}details{padding:20px 22px}summary{cursor:pointer;font-size:18px;font-weight:800}summary+p{margin-top:12px;margin-bottom:0;color:#667085}
.final-cta{color:#fff;background:#111827}.final-cta h2{color:#fff}.final-cta p{color:rgba(255,255,255,.76)}.site-footer{padding:46px 0;color:#d6dbea;background:#07110d}.footer-brand{font-size:22px;font-weight:800}.disclaimer{max-width:900px;color:#b7c0d6}.footer-links{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}.footer-links a{color:#fff}
.mobile-sticky{position:fixed;z-index:70;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));display:none;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px;background:rgba(5,16,12,.86);border:1px solid rgba(255,255,255,.16);border-radius:22px;box-shadow:0 18px 54px rgba(0,0,0,.28);backdrop-filter:blur(18px)}.mobile-sticky a{min-height:48px;display:grid;place-items:center;color:#fff;background:#0d83d8;border-radius:15px;font-size:14px;font-weight:800;text-decoration:none}.mobile-sticky a[data-messenger=whatsapp]{background:#16a944}.mobile-sticky a[data-messenger=max]{background:#553edc}
.cookie-notice{position:fixed;z-index:80;left:16px;right:16px;bottom:102px;max-width:520px;padding:16px;margin:0 auto;background:#fff;color:#111;border-radius:20px;box-shadow:var(--shadow)}.cookie-notice button{border:0;border-radius:99px;padding:10px 16px;color:#fff;background:#111;font-weight:800;cursor:pointer}
@media(max-width:1180px){.hero__grid{grid-template-columns:1fr}.hero-person{min-height:760px}.hero-woman{right:8%;width:min(690px,74vw)}.application-card{right:5%;width:min(430px,50vw)}.cards--three,.cards--four{grid-template-columns:repeat(2,minmax(0,1fr))}.two-columns{grid-template-columns:1fr}.mobile-sticky{display:grid}}
@media(max-width:760px){body{padding-bottom:84px}.container{width:min(100% - 28px,var(--container))}.site-header{top:20px;width:min(100% - 28px,var(--container))}.logo{font-size:23px}.logo__mark{width:38px;height:38px;font-size:24px}.hero{padding:104px 0 54px;min-height:auto}.hero__grid{gap:28px}h1{font-size:clamp(39px,11vw,58px);line-height:1.08}.lead{font-size:18px;margin-bottom:30px}.hero-benefits{grid-template-columns:1fr;gap:16px;margin-bottom:34px}.hero-actions,.messengers{flex-direction:column}.btn{width:100%;min-height:64px}.security-note{margin-top:24px}.hero-person{min-height:640px;align-items:flex-end}.hero-woman{right:50%;transform:translateX(50%);bottom:110px;width:680px;opacity:.9}.application-card{position:relative;right:auto;bottom:auto;width:100%;margin-top:280px;padding:22px;border-radius:24px}.application-card h2{font-size:25px}.cards--three,.cards--four{grid-template-columns:1fr}.footer-links{flex-direction:column}.mobile-sticky{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));gap:6px;padding:8px}.mobile-sticky a{min-height:46px;font-size:13px}}
@media(max-width:390px){.logo{font-size:21px}h1{font-size:36px}.application-card{margin-top:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* ===== HERO ALIGNMENT FIX 2026-07-10 =====
   Правим только первый экран:
   - H1 больше не залезает на правую часть;
   - правая девушка уходит правее;
   - карточка разбора не обрезается снизу;
   - подзаголовок и кнопки возвращаются в видимую область.
*/

@media (min-width: 1181px) {
  .hero {
    min-height: 840px;
    padding-top: 132px;
    padding-bottom: 64px;
  }

  .site-header {
    top: 34px;
  }

  .hero__grid {
    grid-template-columns: minmax(0, 720px) minmax(520px, 1fr);
    gap: 54px;
    align-items: center;
  }

  .hero__content {
    max-width: 720px;
  }

  h1 {
    max-width: 720px;
    margin-bottom: 24px;
    font-size: clamp(48px, 4.05vw, 70px);
    line-height: 1.08;
    letter-spacing: -0.055em;
  }

  .lead {
    max-width: 680px;
    margin-bottom: 30px;
    font-size: clamp(18px, 1.28vw, 22px);
    line-height: 1.52;
  }

  .hero-benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 720px;
    margin-bottom: 34px;
  }

  .hero-benefits div {
    gap: 10px;
  }

  .benefit-icon {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
    border-radius: 12px;
    font-size: 15px;
  }

  .hero-benefits p {
    font-size: 15px;
    line-height: 1.38;
  }

  .btn {
    min-height: 62px;
    padding: 16px 24px;
    font-size: 16px;
    border-radius: 15px;
  }

  .btn img {
    width: 28px;
    height: 28px;
  }

  .security-note {
    margin-top: 26px;
    font-size: 14px;
  }

  .hero-person {
    min-height: 660px;
  }

  .hero-woman {
    right: -86px;
    bottom: -56px;
    width: min(620px, 39vw);
  }

  .application-card {
    right: -8px;
    bottom: 44px;
    width: 390px;
    padding: 24px;
    border-radius: 24px;
  }

  .application-card h2 {
    font-size: 25px;
    line-height: 1.14;
  }

  .application-card > p {
    margin-bottom: 18px;
    font-size: 14px;
  }

  .application-steps > div {
    padding: 12px 8px;
    gap: 12px;
  }

  .step-icon {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
    border-radius: 10px;
    font-size: 18px;
  }

  .application-steps strong {
    font-size: 13px;
  }

  .application-steps small {
    font-size: 12px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero {
    min-height: 760px;
    padding-top: 116px;
    padding-bottom: 44px;
  }

  h1 {
    font-size: clamp(44px, 3.7vw, 62px);
    line-height: 1.07;
    margin-bottom: 18px;
  }

  .lead {
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1.48;
  }

  .hero-benefits {
    margin-bottom: 26px;
  }

  .hero-person {
    min-height: 590px;
  }

  .hero-woman {
    width: min(560px, 36vw);
    bottom: -52px;
  }

  .application-card {
    width: 360px;
    bottom: 32px;
    padding: 22px;
  }

  .application-card h2 {
    font-size: 23px;
  }

  .application-steps > div {
    padding: 10px 8px;
  }

  .security-note {
    margin-top: 20px;
  }
}

@media (min-width: 1181px) and (max-width: 1500px) {
  .container,
  .site-header {
    width: min(1240px, calc(100% - 48px));
  }

  .hero__grid {
    grid-template-columns: minmax(0, 650px) minmax(470px, 1fr);
    gap: 42px;
  }

  h1 {
    max-width: 650px;
    font-size: clamp(44px, 4vw, 62px);
  }

  .lead {
    max-width: 610px;
  }

  .hero-benefits {
    max-width: 650px;
    gap: 14px;
  }

  .hero-woman {
    right: -76px;
    width: min(560px, 37vw);
  }

  .application-card {
    right: -6px;
    width: 360px;
  }
}


/* ===== HERO POLISH FIX 2026-07-10 =====
   Точечная правка только первого экрана:
   - фото справа перестаёт выглядеть прямоугольной вставкой;
   - девушка становится крупнее и естественнее;
   - текст слева становится читабельнее;
   - плашка заявки становится компактнее;
   - CTA и преимущества остаются в первом экране.
*/

.hero {
  isolation: isolate;
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 10, 7, 0.02) 0%, rgba(0, 10, 7, 0.08) 44%, rgba(0, 10, 7, 0.56) 100%),
    radial-gradient(circle at 71% 47%, rgba(103, 232, 112, 0.16), transparent 32%);
}

.hero__grid {
  z-index: 3;
}

.lead {
  color: rgba(255, 255, 255, 0.86) !important;
}

.hero-benefits p {
  color: rgba(255, 255, 255, 0.90) !important;
}

.security-note {
  color: rgba(255, 255, 255, 0.72) !important;
}

.hero-person {
  overflow: visible;
}

.hero-person::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -120px -190px -90px -120px;
  background:
    radial-gradient(circle at 50% 46%, rgba(0, 0, 0, 0), rgba(0, 12, 8, 0.42) 64%, rgba(0, 12, 8, 0.90) 100%),
    linear-gradient(90deg, rgba(0, 12, 8, 0.96), rgba(0, 12, 8, 0.04) 38%, rgba(0, 12, 8, 0.78) 100%);
  pointer-events: none;
}

.hero-woman {
  z-index: 1;
  border-radius: 0 !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 84%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 84%, transparent 100%);
}

.application-card {
  z-index: 4;
}

@media (min-width: 1181px) {
  .hero {
    min-height: 820px;
  }

  .hero__grid {
    grid-template-columns: minmax(0, 670px) minmax(560px, 1fr);
    gap: 42px;
  }

  h1 {
    max-width: 670px;
    font-size: clamp(46px, 3.85vw, 66px);
  }

  .lead {
    max-width: 650px;
  }

  .hero-woman {
    right: -130px;
    bottom: -70px;
    width: min(650px, 42vw);
  }

  .application-card {
    right: 28px;
    bottom: 58px;
    width: 372px;
    padding: 23px;
  }

  .application-card h2 {
    font-size: 24px;
  }

  .application-card > p {
    font-size: 13px;
    margin-bottom: 16px;
  }

  .application-steps > div {
    padding: 11px 8px;
  }

  .application-steps strong {
    font-size: 13px;
  }

  .application-steps small {
    font-size: 11.5px;
  }

  .step-icon {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero {
    min-height: 740px;
    padding-top: 108px;
    padding-bottom: 40px;
  }

  h1 {
    font-size: clamp(43px, 3.55vw, 58px);
  }

  .lead {
    font-size: 17px;
    margin-bottom: 22px;
  }

  .hero-benefits {
    margin-bottom: 24px;
  }

  .btn {
    min-height: 58px;
    padding: 14px 22px;
  }

  .security-note {
    margin-top: 18px;
  }

  .hero-person {
    min-height: 560px;
  }

  .hero-woman {
    right: -115px;
    bottom: -64px;
    width: min(560px, 38vw);
  }

  .application-card {
    right: 16px;
    bottom: 32px;
    width: 340px;
    padding: 20px;
  }

  .application-card h2 {
    font-size: 22px;
  }

  .application-steps > div {
    padding: 9px 7px;
  }
}

@media (max-width: 760px) {
  .hero::after {
    background:
      linear-gradient(180deg, rgba(0, 10, 7, 0.08) 0%, rgba(0, 10, 7, 0.52) 100%),
      radial-gradient(circle at 55% 62%, rgba(103, 232, 112, 0.14), transparent 34%);
  }

  .hero-person::before {
    inset: -70px -80px -70px -80px;
  }

  .hero-woman {
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 11%, #000 88%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 11%, #000 88%, transparent 100%);
  }
}


/* ===== HERO FIX V3 2026-07-10 =====
   1) полностью убираем cookie-плашку,
   2) убираем конфликт фона и девушки,
   3) оставляем одну чистую карточку разбора заявки.
*/

.cookie-notice{display:none !important}
[data-cookie-notice]{display:none !important}

.hero{
  overflow:hidden;
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(1,14,10,.08) 0%, rgba(1,14,10,.06) 42%, rgba(1,14,10,.28) 66%, rgba(1,14,10,.56) 100%),
    radial-gradient(circle at 56% 44%, rgba(97,233,124,.17), transparent 30%);
}

.hero__grid{
  position:relative;
  z-index:3;
}

.hero-person{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  min-height:680px;
  overflow:visible;
}

.hero-person::before,
.hero-person::after{
  content:none !important;
}

.hero-woman{
  position:absolute;
  right:-28px;
  bottom:-18px;
  width:min(500px,36vw);
  height:auto;
  max-width:none;
  filter:drop-shadow(0 22px 48px rgba(0,0,0,.34));
  transform:none !important;
  border-radius:0 !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
  opacity:1 !important;
}

.application-card{
  position:absolute;
  right:6px;
  bottom:62px;
  width:370px;
  padding:26px 22px 18px;
  background:#f7f5ef;
  color:#101010;
  border:1px solid rgba(19,19,19,.08);
  border-radius:26px;
  box-shadow:0 20px 50px rgba(0,0,0,.24);
  backdrop-filter:none;
}

.application-card::before,
.application-card::after{
  content:none !important;
  display:none !important;
}

.application-card h2{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.14;
  font-weight:800;
  color:#141414;
}

.application-card > p{
  margin:0 0 16px;
  color:#4b5563;
  font-size:14px;
  line-height:1.45;
}

.application-steps{
  background:#fffdf9;
  border:1px solid rgba(18,18,18,.10);
  border-radius:18px;
  overflow:hidden;
}

.application-steps > div{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px 12px;
  background:transparent;
  border-bottom:1px solid rgba(18,18,18,.08);
}

.application-steps > div:last-child{
  border-bottom:0;
}

.step-icon{
  display:grid;
  width:36px;
  height:36px;
  flex:0 0 36px;
  place-items:center;
  color:#2f8e38;
  background:#e8f5e3;
  border-radius:11px;
  font-size:17px;
  font-weight:800;
}

.application-steps strong{
  display:block;
  margin-bottom:3px;
  color:#18181b;
  font-size:13px;
  line-height:1.28;
}

.application-steps small{
  display:block;
  color:#6b7280;
  font-size:11.5px;
  line-height:1.35;
}

.lead{
  color:rgba(255,255,255,.84) !important;
}

.hero-benefits{
  max-width:760px;
}

.hero-benefits p{
  color:rgba(255,255,255,.90) !important;
}

.security-note{
  color:rgba(255,255,255,.72) !important;
}

@media (min-width:1181px){
  .hero{
    min-height:820px;
    padding-top:124px;
    padding-bottom:52px;
  }

  .hero__grid{
    grid-template-columns:minmax(0,690px) minmax(500px,1fr);
    gap:40px;
    align-items:center;
  }

  .hero__content{
    max-width:690px;
  }

  h1{
    max-width:690px;
    font-size:clamp(46px,3.85vw,66px);
    line-height:1.08;
    margin-bottom:22px;
  }

  .lead{
    max-width:650px;
    font-size:clamp(18px,1.23vw,21px);
    margin-bottom:28px;
  }

  .hero-benefits{
    gap:16px;
    margin-bottom:28px;
  }

  .benefit-icon{
    width:34px;
    height:34px;
    flex-basis:34px;
    font-size:14px;
  }

  .hero-benefits p{
    font-size:14px;
  }

  .btn{
    min-height:58px;
    padding:15px 22px;
    font-size:15px;
  }

  .btn img{
    width:26px;
    height:26px;
  }

  .security-note{
    margin-top:18px;
    font-size:14px;
  }
}

@media (min-width:1181px) and (max-height:820px){
  .hero{
    min-height:740px;
    padding-top:110px;
    padding-bottom:36px;
  }

  .hero-person{
    min-height:575px;
  }

  .hero-woman{
    width:min(440px,32vw);
    right:-18px;
    bottom:-10px;
  }

  .application-card{
    right:0;
    bottom:40px;
    width:340px;
    padding:22px 18px 16px;
  }

  .application-card h2{
    font-size:20px;
  }

  .application-card > p{
    font-size:13px;
  }

  .application-steps > div{
    padding:12px 10px;
  }
}

@media (min-width:1181px) and (max-width:1460px){
  .hero__grid{
    grid-template-columns:minmax(0,650px) minmax(460px,1fr);
    gap:30px;
  }

  h1{
    max-width:650px;
    font-size:clamp(44px,3.6vw,60px);
  }

  .hero-woman{
    width:min(455px,33vw);
    right:-16px;
  }

  .application-card{
    width:340px;
    right:0;
  }
}

@media (max-width:1180px){
  .hero-person{
    min-height:760px;
  }

  .hero-woman{
    right:50%;
    transform:translateX(50%) !important;
    width:min(520px,72vw);
    bottom:170px;
  }

  .application-card{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:520px;
    margin:0 auto;
    top:auto;
  }
}

@media (max-width:760px){
  .hero-person{
    min-height:620px;
  }

  .hero-woman{
    width:min(420px,95vw);
    bottom:190px;
  }

  .application-card{
    margin-top:280px;
    width:100%;
  }

  .application-card h2{
    font-size:22px;
  }
}


/* ===== HERO FIX V4 2026-07-10 =====
   Фикс без дублей:
   - встроенная плашка удалена из изображения;
   - cookie-плашка скрыта и удалена из HTML;
   - правая картинка не перекрывает левый текст;
   - остаётся только одна настоящая карточка заявки.
*/

.cookie-notice,
[data-cookie-notice] {
  display: none !important;
}

.hero {
  overflow: hidden;
  isolation: isolate;
}

.hero__content {
  position: relative;
  z-index: 8;
}

.hero-person {
  position: relative;
  z-index: 2;
  min-height: 660px;
  overflow: visible;
  pointer-events: none;
}

.hero-person::before,
.hero-person::after {
  content: none !important;
  display: none !important;
}

.hero-woman {
  position: absolute;
  z-index: 1;
  right: -74px;
  bottom: -28px;
  width: min(560px, 38vw);
  height: auto;
  max-width: none;
  opacity: 1 !important;
  transform: none !important;
  border-radius: 0 !important;
  filter: drop-shadow(0 26px 62px rgba(0,0,0,.42));
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.application-card {
  position: absolute;
  z-index: 5;
  right: 30px;
  bottom: 66px;
  width: 365px;
  padding: 24px 22px 18px;
  color: #101010;
  background: #f7f4ee;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 26px;
  box-shadow: 0 22px 58px rgba(0,0,0,.30);
  backdrop-filter: none;
  pointer-events: auto;
}

.application-card::before,
.application-card::after {
  display: none !important;
  content: none !important;
}

.application-card h2 {
  margin: 0 0 10px;
  color: #111827;
  font-size: 23px;
  line-height: 1.13;
  font-weight: 800;
  letter-spacing: -0.035em;
}

.application-card > p {
  margin: 0 0 16px;
  color: #4b5563;
  font-size: 13px;
  line-height: 1.45;
}

.application-steps {
  overflow: hidden;
  background: #fffdf9;
  border: 1px solid rgba(17,24,39,.10);
  border-radius: 17px;
}

.application-steps > div {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 12px 10px;
  background: transparent;
  border-bottom: 1px solid rgba(17,24,39,.08);
}

.application-steps > div:last-child {
  border-bottom: 0;
}

.step-icon {
  display: grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  color: #2f8e38;
  background: #e8f5e3;
  border-radius: 11px;
  font-size: 17px;
  font-weight: 800;
}

.application-steps strong {
  display: block;
  margin-bottom: 3px;
  color: #18181b;
  font-size: 13px;
  line-height: 1.25;
}

.application-steps small {
  display: block;
  color: #6b7280;
  font-size: 11.5px;
  line-height: 1.35;
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0,9,6,.04) 0%, rgba(0,9,6,.06) 48%, rgba(0,9,6,.28) 72%, rgba(0,9,6,.58) 100%),
    radial-gradient(circle at 57% 47%, rgba(91, 232, 112, .13), transparent 30%);
}

.lead {
  color: rgba(255,255,255,.84) !important;
}

.hero-benefits p {
  color: rgba(255,255,255,.90) !important;
}

.security-note {
  color: rgba(255,255,255,.72) !important;
}

@media (min-width: 1181px) {
  .hero {
    min-height: 800px;
    padding-top: 122px;
    padding-bottom: 48px;
  }

  .hero__grid {
    grid-template-columns: minmax(0, 690px) minmax(480px, 1fr);
    gap: 40px;
    align-items: center;
  }

  h1 {
    max-width: 690px;
    font-size: clamp(46px, 3.85vw, 66px);
    line-height: 1.08;
    margin-bottom: 22px;
  }

  .lead {
    max-width: 650px;
    font-size: clamp(18px, 1.23vw, 21px);
    margin-bottom: 28px;
  }

  .hero-benefits {
    max-width: 720px;
    gap: 16px;
    margin-bottom: 28px;
  }

  .benefit-icon {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    font-size: 14px;
  }

  .hero-benefits p {
    font-size: 14px;
  }

  .btn {
    min-height: 58px;
    padding: 15px 22px;
    font-size: 15px;
  }

  .btn img {
    width: 26px;
    height: 26px;
  }

  .security-note {
    margin-top: 18px;
    font-size: 14px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero {
    min-height: 730px;
    padding-top: 108px;
    padding-bottom: 34px;
  }

  .hero-person {
    min-height: 565px;
  }

  .hero-woman {
    right: -56px;
    bottom: -22px;
    width: min(500px, 34vw);
  }

  .application-card {
    right: 26px;
    bottom: 42px;
    width: 340px;
    padding: 21px 18px 15px;
  }

  .application-card h2 {
    font-size: 21px;
  }

  .application-card > p {
    font-size: 12px;
    margin-bottom: 13px;
  }

  .application-steps > div {
    padding: 10px 9px;
  }
}

@media (min-width:1181px) and (max-width:1460px) {
  .container,
  .site-header {
    width: min(1240px, calc(100% - 48px));
  }

  .hero__grid {
    grid-template-columns: minmax(0, 650px) minmax(450px, 1fr);
    gap: 30px;
  }

  h1 {
    max-width: 650px;
    font-size: clamp(44px, 3.6vw, 60px);
  }

  .hero-woman {
    right: -46px;
    width: min(505px, 34vw);
  }

  .application-card {
    right: 18px;
    width: 335px;
  }
}

@media (max-width:1180px) {
  .hero-person {
    min-height: 720px;
  }

  .hero-woman {
    right: 50%;
    transform: translateX(50%) !important;
    width: min(560px, 72vw);
    bottom: 145px;
  }

  .application-card {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
}

@media (max-width:760px) {
  .hero-person {
    min-height: 600px;
  }

  .hero-woman {
    width: min(430px, 96vw);
    bottom: 176px;
  }

  .application-card {
    margin-top: 270px;
    width: 100%;
  }

  .application-card h2 {
    font-size: 22px;
  }
}


/* ===== HERO EXACT REFERENCE v1 ===== */
body{font-family:"Manrope",Inter,"Segoe UI",Arial,sans-serif}
.cookie-notice,[data-cookie-notice]{display:none!important}
.site-header{position:absolute;top:36px;left:0;right:0;z-index:30;width:min(1400px,calc(100% - 64px));margin:0 auto;display:flex;align-items:center;justify-content:flex-start;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}
.logo{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:#fff;font-size:26px;font-weight:800;letter-spacing:-.04em}
.logo__mark{display:grid;place-items:center;width:40px;height:40px;border:3px solid #98e66d;border-radius:12px;color:#fff;font-size:26px;font-weight:800;line-height:1}
.hero,.hero.section{position:relative;overflow:hidden;min-height:100vh;padding:120px 0 52px;background:radial-gradient(circle at 48% 38%,rgba(62,178,72,.34),transparent 22%),linear-gradient(90deg,#020a08 0%,#03140f 33%,#052719 60%,#07100d 100%);color:#fff}
.hero__backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,8,6,.24) 0%,rgba(1,8,6,.12) 34%,rgba(1,8,6,.02) 50%,rgba(1,8,6,.12) 68%,rgba(1,8,6,.28) 100%);pointer-events:none}
.hero__layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,700px) minmax(560px,1fr);gap:34px;align-items:center;width:min(1400px,calc(100% - 64px));margin:0 auto}
.hero__content{max-width:700px;position:relative;z-index:5}
.hero__content h1{margin:0 0 28px;color:#fff;font-size:clamp(56px,5vw,74px);line-height:1.08;font-weight:800;letter-spacing:-.06em;text-wrap:balance}
.accent-city{color:#9be870}
.hero__lead{max-width:670px;margin:0 0 34px;color:rgba(255,255,255,.86);font-size:21px;line-height:1.55;font-weight:500}
.hero__features{display:flex;gap:28px;align-items:flex-start;margin:0 0 36px}
.hero-feature{display:flex;align-items:flex-start;gap:14px;min-width:0}
.hero-feature__icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:2px solid rgba(155,232,112,.75);border-radius:15px;color:#9be870;font-size:22px;font-weight:800;line-height:1}
.hero-feature p{margin:0;color:rgba(255,255,255,.92);font-size:17px;line-height:1.38;font-weight:600}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}
.hero .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:76px;padding:18px 28px;border:0;border-radius:18px;color:#fff;text-decoration:none;font-size:17px;font-weight:800;box-shadow:0 20px 44px rgba(0,0,0,.24)}
.hero .btn img{width:29px;height:29px;flex:0 0 auto}
.hero .btn--telegram{background:linear-gradient(135deg,#1fa9ff,#138fe7)}
.hero .btn--whatsapp{background:linear-gradient(135deg,#2ed05a,#1ab449)}
.hero .btn--max{background:linear-gradient(135deg,#7a5dff,#6449ec)}
.hero__security{display:flex;align-items:center;gap:12px;margin:0;color:rgba(255,255,255,.72);font-size:15px;font-weight:500}
.hero__security span{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(155,232,112,.45);border-radius:10px;color:#9be870}
.hero__visual{position:relative;display:flex;justify-content:flex-end;align-items:flex-end;min-height:760px}
.hero__composite{display:block;width:min(760px,50vw);height:auto;filter:drop-shadow(0 28px 56px rgba(0,0,0,.36))}
@media (max-width:1400px){.hero__layout{grid-template-columns:minmax(0,650px) minmax(500px,1fr);gap:24px}.hero__content h1{font-size:clamp(48px,4.6vw,66px)}.hero__composite{width:min(700px,48vw)}}
@media (max-width:1180px){.site-header{top:24px;width:min(100% - 28px,1400px)}.hero,.hero.section{padding-top:104px;min-height:auto}.hero__layout{grid-template-columns:1fr;gap:24px;width:min(100% - 28px,1400px)}.hero__content{max-width:none}.hero__content h1{font-size:clamp(42px,8vw,64px)}.hero__lead{font-size:19px;max-width:none}.hero__features{gap:18px;flex-wrap:wrap}.hero__visual{min-height:auto;justify-content:center}.hero__composite{width:min(760px,100%);max-width:100%}}
@media (max-width:760px){.logo{font-size:22px}.logo__mark{width:38px;height:38px;font-size:24px}.hero__content h1{font-size:clamp(38px,11vw,52px);margin-bottom:18px}.hero__lead{font-size:18px;margin-bottom:24px}.hero__features{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:24px}.hero-feature__icon{width:40px;height:40px;flex-basis:40px;font-size:18px}.hero-feature p{font-size:16px}.hero__actions{flex-direction:column}.hero .btn{width:100%;min-height:62px;padding:16px 20px;font-size:16px}.hero__composite{width:100%}}


/* ===== HERO EXACT FIX v2 =====
   Исправляет текущий скрин:
   - убирает кусок текста, который остался внутри правого изображения;
   - масштабирует правый блок под реальную высоту браузера;
   - не даёт карточке справа обрезаться снизу;
   - сохраняет композицию референса.
*/

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 760px;
    padding-top: 118px;
    padding-bottom: 36px;
  }

  .hero__layout {
    grid-template-columns: minmax(0, 690px) minmax(500px, 1fr);
    gap: 44px;
    align-items: center;
  }

  .hero__content {
    max-width: 690px;
  }

  .hero__content h1 {
    max-width: 690px;
    margin-bottom: 24px;
    font-size: clamp(48px, 4.35vw, 68px);
    line-height: 1.08;
  }

  .hero__lead {
    max-width: 650px;
    margin-bottom: 30px;
    font-size: clamp(18px, 1.28vw, 21px);
  }

  .hero__features {
    gap: 24px;
    margin-bottom: 34px;
  }

  .hero-feature p {
    font-size: 16px;
  }

  .hero__visual {
    min-height: auto;
    align-self: stretch;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
  }

  .hero__composite {
    width: auto;
    height: min(690px, calc(100vh - 138px));
    max-width: min(660px, 48vw);
    object-fit: contain;
    object-position: right bottom;
  }

  .hero .btn {
    min-height: 68px;
    padding: 17px 26px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero,
  .hero.section {
    min-height: 720px;
    padding-top: 106px;
    padding-bottom: 28px;
  }

  .hero__layout {
    grid-template-columns: minmax(0, 650px) minmax(460px, 1fr);
    gap: 36px;
  }

  .hero__content h1 {
    max-width: 650px;
    margin-bottom: 20px;
    font-size: clamp(44px, 3.8vw, 60px);
  }

  .hero__lead {
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1.5;
  }

  .hero__features {
    margin-bottom: 26px;
  }

  .hero-feature__icon {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
    border-radius: 13px;
    font-size: 18px;
  }

  .hero-feature p {
    font-size: 14px;
  }

  .hero .btn {
    min-height: 58px;
    padding: 14px 22px;
    font-size: 15px;
  }

  .hero .btn img {
    width: 25px;
    height: 25px;
  }

  .hero__security {
    font-size: 13px;
  }

  .hero__composite {
    height: min(610px, calc(100vh - 126px));
    max-width: min(575px, 45vw);
  }
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__layout {
    grid-template-columns: minmax(0, 640px) minmax(440px, 1fr);
    gap: 34px;
  }

  .hero__content h1 {
    max-width: 640px;
  }

  .hero__lead {
    max-width: 610px;
  }

  .hero__features {
    gap: 20px;
  }

  .hero__composite {
    max-width: min(580px, 44vw);
  }
}

@media (max-width: 1180px) {
  .hero__composite {
    width: min(760px, 100%);
    height: auto;
  }
}


/* ===== INSTALLED HERO PHOTO WITH SOFT EDGES v1 =====
   В hero справа поставлено изображение пользователя.
   Файл: /assets/img/hero-composite.webp
   Края растворены в фон, чтобы фото не выглядело прямоугольной вставкой.
*/

.cookie-notice,
[data-cookie-notice] {
  display: none !important;
}

.hero__visual {
  position: relative;
  overflow: visible;
}

.hero__composite {
  display: block;
  width: auto;
  height: min(760px, calc(100vh - 112px));
  max-width: min(720px, 52vw);
  object-fit: contain;
  object-position: right bottom;
  margin-right: -18px;
  filter: drop-shadow(0 26px 54px rgba(0, 0, 0, 0.34));
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.86) 9%, #000 18%, #000 92%, rgba(0,0,0,.88) 96%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.86) 9%, #000 18%, #000 92%, rgba(0,0,0,.88) 96%, transparent 100%);
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__composite {
    height: min(720px, calc(100vh - 112px));
    max-width: min(660px, 49vw);
    margin-right: -10px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero__composite {
    height: min(680px, calc(100vh - 108px));
    max-width: min(640px, 49vw);
  }
}

@media (max-width: 1180px) {
  .hero__visual {
    justify-content: center;
  }

  .hero__composite {
    width: min(760px, 100%);
    height: auto;
    max-width: 100%;
    margin-right: 0;
  }
}

@media (max-width: 760px) {
  .hero__composite {
    width: 100%;
  }
}


/* ===== HERO FULL BACKGROUND EMPTY RIGHT SIDE v1 =====
   Первый экран без девушки и без плашки.
   Справа оставлен невидимый слой под будущую вставку:
   /assets/img/hero-right-overlay.webp
*/

.cookie-notice,
[data-cookie-notice] {
  display: none !important;
}

.hero,
.hero.section {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 58% 48%, rgba(98, 232, 112, 0.24), transparent 28%),
    radial-gradient(circle at 32% 36%, rgba(34, 122, 64, 0.20), transparent 24%),
    linear-gradient(90deg, #020806 0%, #03120d 34%, #052618 62%, #07100d 100%) !important;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 8, 6, 0.42) 0%, rgba(0, 8, 6, 0.18) 44%, rgba(0, 8, 6, 0.08) 72%, rgba(0, 8, 6, 0.32) 100%),
    url("/assets/img/hero-full-bg.webp");
  background-size: cover;
  background-position: center;
  opacity: 1;
}

.hero__backdrop {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 48% 48%, rgba(155, 232, 112, 0.16), transparent 34%),
    linear-gradient(90deg, rgba(0, 6, 5, 0.20) 0%, rgba(0, 6, 5, 0.04) 54%, rgba(0, 6, 5, 0.34) 100%);
}

.hero__layout {
  position: relative;
  z-index: 2;
  grid-template-columns: minmax(0, 720px) minmax(420px, 1fr) !important;
  align-items: center;
}

.hero__content {
  position: relative;
  z-index: 5;
}

.hero__visual--empty {
  position: relative;
  min-height: 680px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  pointer-events: none;
}

.hero__future-overlay {
  display: block;
  width: auto;
  height: min(760px, calc(100vh - 112px));
  max-width: min(720px, 52vw);
  object-fit: contain;
  object-position: right bottom;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.hero__visual--empty::after {
  content: "";
  position: absolute;
  right: 6%;
  bottom: 4%;
  width: min(520px, 42vw);
  height: min(520px, 54vh);
  border-radius: 999px;
  background: radial-gradient(circle, rgba(155, 232, 112, 0.16), transparent 64%);
  filter: blur(8px);
  opacity: 0.7;
}

.hero .hero__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.hero .btn {
  width: 100%;
  white-space: nowrap;
}

.hero__features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__layout {
    grid-template-columns: minmax(0, 660px) minmax(360px, 1fr) !important;
    gap: 34px;
  }

  .hero__visual--empty {
    min-height: 600px;
  }

  .hero .btn {
    font-size: 13px;
    padding-left: 12px;
    padding-right: 12px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero__visual--empty {
    min-height: 560px;
  }

  .hero__future-overlay {
    height: min(680px, calc(100vh - 108px));
  }

  .hero .btn {
    min-height: 50px;
  }
}

@media (max-width: 1180px) {
  .hero__layout {
    grid-template-columns: 1fr !important;
  }

  .hero__visual--empty {
    display: none;
  }

  .hero .hero__actions {
    grid-template-columns: 1fr;
  }

  .hero__features {
    grid-template-columns: 1fr;
  }
}


/* ===== CLEAN DARK EMPTY HERO v1 =====
   Исправление: убраны зелёные круги/мишень.
   Первый экран: цельный тёмный фон без девушки и без плашки.
*/

.cookie-notice,
[data-cookie-notice] {
  display: none !important;
}

.hero,
.hero.section {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(1, 8, 6, 0.92) 0%, rgba(2, 18, 12, 0.88) 42%, rgba(4, 28, 18, 0.78) 66%, rgba(2, 10, 8, 0.94) 100%),
    url("/assets/img/hero-clean-dark-bg.webp") center / cover no-repeat !important;
}

.hero::before,
.hero::after {
  content: "" !important;
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hero::before {
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(0, 7, 5, 0.30) 0%, rgba(0, 7, 5, 0.06) 48%, rgba(0, 7, 5, 0.28) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.20) 0%, transparent 34%, rgba(0, 0, 0, 0.24) 100%);
}

.hero::after {
  z-index: 1;
  background:
    radial-gradient(ellipse at 58% 50%, rgba(92, 232, 112, 0.12), transparent 42%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.10) 0%, transparent 55%, rgba(0, 0, 0, 0.34) 100%);
}

.hero__backdrop {
  display: none !important;
}

.hero__layout {
  position: relative;
  z-index: 2;
  grid-template-columns: minmax(0, 720px) minmax(360px, 1fr) !important;
  align-items: center;
}

.hero__content {
  position: relative;
  z-index: 5;
}

.hero__visual--empty {
  position: relative;
  min-height: 640px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  pointer-events: none;
}

.hero__future-overlay {
  display: block;
  width: auto;
  height: min(760px, calc(100vh - 112px));
  max-width: min(720px, 52vw);
  object-fit: contain;
  object-position: right bottom;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.hero__visual--empty::after {
  content: "";
  position: absolute;
  right: 8%;
  bottom: 8%;
  width: min(460px, 38vw);
  height: min(460px, 48vh);
  border-radius: 999px;
  background: radial-gradient(circle, rgba(155, 232, 112, 0.08), transparent 66%);
  filter: blur(20px);
  opacity: 0.7;
}

.hero .hero__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.hero .btn {
  width: 100%;
  white-space: nowrap;
}

.hero__features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__layout {
    grid-template-columns: minmax(0, 660px) minmax(320px, 1fr) !important;
    gap: 36px;
  }

  .hero__visual--empty {
    min-height: 560px;
  }

  .hero .btn {
    font-size: 13px;
    padding-left: 12px;
    padding-right: 12px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero__visual--empty {
    min-height: 520px;
  }

  .hero__future-overlay {
    height: min(680px, calc(100vh - 108px));
  }

  .hero .btn {
    min-height: 50px;
  }
}

@media (max-width: 1180px) {
  .hero__layout {
    grid-template-columns: 1fr !important;
  }

  .hero__visual--empty {
    display: none;
  }

  .hero .hero__actions {
    grid-template-columns: 1fr;
  }

  .hero__features {
    grid-template-columns: 1fr;
  }
}


/* ===== TEXT WIDTH FIX v1 =====
   Исправление после удаления правого фото:
   - пустая правая колонка больше не сжимает контент;
   - преимущества снова в 2 строки;
   - кнопки стоят в одну линию и не трутся о края;
   - нижняя строка не прижата к краю экрана.
*/

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 760px;
    padding-top: 116px;
    padding-bottom: 64px;
  }

  .hero__layout {
    display: block !important;
    width: min(1400px, calc(100% - 64px));
  }

  .hero__content {
    max-width: 860px !important;
  }

  .hero__visual--empty {
    display: none !important;
  }

  .hero__content h1 {
    max-width: 850px;
    margin-bottom: 26px;
    font-size: clamp(50px, 4.5vw, 72px);
    line-height: 1.08;
  }

  .hero__lead {
    max-width: 760px;
    margin-bottom: 34px;
    font-size: 20px;
    line-height: 1.55;
  }

  .hero__features {
    width: 860px;
    max-width: 100%;
    display: grid !important;
    grid-template-columns: 210px 210px 260px;
    gap: 28px;
    align-items: start;
    margin-bottom: 34px;
  }

  .hero-feature {
    display: flex;
    align-items: flex-start;
    gap: 14px;
  }

  .hero-feature__icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 15px;
    font-size: 18px;
  }

  .hero-feature p {
    margin: 0;
    max-width: none;
    color: rgba(255,255,255,.92) !important;
    font-size: 16px;
    line-height: 1.38;
    font-weight: 700;
  }

  .hero__actions {
    width: 860px;
    max-width: 100%;
    display: grid !important;
    grid-template-columns: 250px 190px 250px;
    gap: 14px;
    align-items: center;
    margin-bottom: 24px;
  }

  .hero .btn {
    width: 100%;
    min-height: 64px;
    padding: 16px 20px;
    border-radius: 18px;
    font-size: 16px;
    line-height: 1;
    white-space: nowrap;
  }

  .hero .btn img {
    width: 27px;
    height: 27px;
    flex: 0 0 27px;
  }

  .hero__security {
    margin-top: 0;
    color: rgba(255,255,255,.72) !important;
    font-size: 14px;
  }
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__content {
    max-width: 820px !important;
  }

  .hero__content h1 {
    max-width: 820px;
    font-size: clamp(46px, 4.15vw, 64px);
  }

  .hero__lead {
    max-width: 730px;
    font-size: 19px;
  }

  .hero__features {
    width: 820px;
    grid-template-columns: 205px 205px 250px;
    gap: 24px;
  }

  .hero-feature p {
    font-size: 15px;
  }

  .hero__actions {
    width: 820px;
    grid-template-columns: 240px 180px 240px;
    gap: 12px;
  }

  .hero .btn {
    font-size: 15px;
    padding-left: 18px;
    padding-right: 18px;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero,
  .hero.section {
    min-height: 710px;
    padding-top: 104px;
    padding-bottom: 48px;
  }

  .hero__content h1 {
    margin-bottom: 20px;
    font-size: clamp(42px, 3.85vw, 58px);
  }

  .hero__lead {
    margin-bottom: 26px;
    font-size: 18px;
    line-height: 1.48;
  }

  .hero__features {
    margin-bottom: 26px;
  }

  .hero-feature p {
    font-size: 14px;
  }

  .hero__actions {
    margin-bottom: 18px;
  }

  .hero .btn {
    min-height: 56px;
    font-size: 14px;
  }

  .hero .btn img {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
  }
}

@media (max-width: 1180px) {
  .hero__layout {
    grid-template-columns: 1fr !important;
  }

  .hero__visual--empty {
    display: none !important;
  }
}


/* ===== ONE SCREEN LANDING v1 =====
   Оставлен только первый экран.
   Футер встроен в нижнюю часть hero.
   На десктопе hero растянут по высоте окна.
   На мобильных высота не фиксируется, чтобы контент не обрезался.
*/

.cookie-notice,
[data-cookie-notice] {
  display: none !important;
}

html,
body {
  min-height: 100%;
}

body {
  overflow-x: hidden;
}

.hero,
.hero.section {
  display: flex !important;
  flex-direction: column !important;
  position: relative;
}

.hero__layout {
  flex: 1 0 auto;
}

.hero-footer {
  position: relative;
  z-index: 5;
  width: min(1400px, calc(100% - 64px));
  margin: auto auto 0;
  padding: 18px 0 0 !important;
  color: rgba(255,255,255,.72) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.hero-footer .footer-brand {
  display: none !important;
}

.hero-footer .disclaimer {
  max-width: 900px;
  margin: 0 0 8px;
  color: rgba(255,255,255,.56) !important;
  font-size: 12px;
  line-height: 1.45;
}

.hero-footer .footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
}

.hero-footer .footer-links a {
  color: rgba(255,255,255,.66) !important;
  font-size: 12px;
  text-decoration: none;
}

.hero-footer .footer-links a:hover {
  color: #9be870 !important;
}

/* ===== FINAL BOTTOM GAP FIX =====
   Убирает большой пустой низ на первом экране.
   Причина была в body { padding-bottom:84px } и авто-отступе футера внутри hero.
*/

body {
  padding-bottom: 0 !important;
}

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: auto !important;
    padding-bottom: 24px !important;
  }

  .hero-footer {
    margin: 24px auto 0 !important;
    padding: 0 !important;
  }

  .hero-footer .disclaimer {
    margin-bottom: 0 !important;
  }

  .hero-footer .footer-links {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  body {
    padding-bottom: 0 !important;
  }
}

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: block !important;
    position: relative !important;
  }

  .hero__layout {
    min-height: 100svh !important;
    width: min(1400px, calc(100% - 64px)) !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
  }

  .hero__content {
    transform: none !important;
  }

  .hero-footer {
    position: absolute !important;
    left: 50% !important;
    bottom: 24px !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    width: min(1400px, calc(100% - 64px)) !important;
  }
}
@media (min-width: 1181px) {
  .hero-footer {
    left: 50% !important;
    bottom: 24px !important;
    transform: translateX(-50%) !important;
    width: min(1400px, calc(100% - 64px)) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hero-footer .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hero-footer .disclaimer {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 900px !important;
  }
}

/* ===== FOOTER ALIGN FINAL FIX =====
   Финальная правка:
   - убирает лишний внутренний отступ футера;
   - выравнивает футер по той же левой линии, что логотип и основной текст;
   - сохраняет первый экран в высоту окна;
   - не трогает мобильную версию жёсткой высотой.
*/

body {
  padding-bottom: 0 !important;
}

@media (min-width: 1181px) {
  .site-header {
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto !important;
  }

  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  .hero__layout {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto !important;
    padding: 88px 0 74px !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .hero__content {
    max-width: 860px !important;
    margin: 0 !important;
    transform: none !important;
  }

  .hero-footer {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto 24px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .hero-footer .container {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hero-footer .disclaimer,
  .hero-footer p {
    max-width: 900px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(255, 255, 255, .50) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .hero-footer .footer-links {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  body {
    padding-bottom: 0 !important;
  }
}

/* ===== PHOTO LAYOUT FINAL =====
   Исправляет вставку фото справа:
   - убирает влияние пустой правой заглушки;
   - фото не режется сверху;
   - фото стоит справа аккуратно и не ломает первый экран.
*/

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .hero__layout {
    width: min(var(--container), calc(100% - 56px)) !important;
    min-height: 100svh !important;
    margin: 0 auto !important;
    padding: 92px 0 76px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 780px) minmax(360px, 1fr) !important;
    gap: 42px !important;
    align-items: center !important;
  }

  .hero__content {
    max-width: 780px !important;
    margin: 0 !important;
    transform: none !important;
  }

  .hero__visual--empty {
    display: none !important;
  }

  .hero__visual--photo {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 3 !important;
  }

  .hero__right-image {
    width: auto !important;
    height: min(660px, calc(100svh - 180px)) !important;
    max-width: min(520px, 34vw) !important;
    object-fit: contain !important;
    object-position: right center !important;
    display: block !important;
    margin: 0 !important;
    filter: drop-shadow(0 28px 60px rgba(0,0,0,.36));
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 10%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 10%, #000 100%);
  }

  .hero-footer {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 22px !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
  }
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__layout {
    grid-template-columns: minmax(0, 720px) minmax(340px, 1fr) !important;
    gap: 32px !important;
  }

  .hero__right-image {
    height: min(620px, calc(100svh - 170px)) !important;
    max-width: min(470px, 32vw) !important;
  }
}

@media (max-width: 1180px) {
  .hero__visual--photo {
    display: none !important;
  }
}

/* ===== FULLSCREEN RIGHT PHOTO SITE FIX V1 =====
   Реализация на сайте:
   - фото девушки справа на всю высоту первого экрана;
   - убран CSS-градиент/маска поверх фото;
   - фото не затемняется overlay-слоями;
   - левая текстовая часть остаётся читаемой;
   - на мобильных фото скрывается, чтобы не ломать экран.
*/

@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: relative !important;
  }

  .hero::before,
  .hero::after,
  .hero-bg,
  .hero__backdrop {
    pointer-events: none !important;
  }

  .hero::before,
  .hero::after {
    z-index: 0 !important;
  }

  .site-header {
    z-index: 60 !important;
  }

  .hero__layout,
  .container.hero__layout {
    position: relative !important;
    z-index: 10 !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    min-height: 100svh !important;
    margin: 0 auto !important;
    padding: 92px 0 78px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 780px) minmax(520px, 1fr) !important;
    gap: 22px !important;
    align-items: center !important;
  }

  .hero__content {
    max-width: 780px !important;
    margin: 0 !important;
    transform: none !important;
    position: relative !important;
    z-index: 30 !important;
  }

  .hero__visual--empty {
    display: none !important;
  }

  .hero__visual--photo {
    display: flex !important;
    position: relative !important;
    z-index: 25 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  .hero__right-image {
    display: block !important;
    height: 100svh !important;
    width: auto !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    transform: translateX(-42px) !important;
    opacity: 1 !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    mix-blend-mode: normal !important;
    border-radius: 0 !important;
  }

  .hero-footer {
    position: absolute !important;
    z-index: 50 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 22px !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
  }
}

@media (min-width: 1181px) and (max-width: 1460px) {
  .hero__layout,
  .container.hero__layout {
    grid-template-columns: minmax(0, 720px) minmax(500px, 1fr) !important;
    gap: 8px !important;
  }

  .hero__right-image {
    transform: translateX(-64px) !important;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .hero__layout,
  .container.hero__layout {
    padding-top: 84px !important;
    padding-bottom: 68px !important;
  }

  .hero__right-image {
    height: 100svh !important;
  }
}

@media (max-width: 1180px) {
  .hero__visual--photo {
    display: none !important;
  }
}

@media (min-width: 1181px) {
  .hero__layout,
  .container.hero__layout {
    grid-template-columns: minmax(0, 780px) minmax(520px, 1fr) !important;
    padding: 92px 0 78px !important;
  }

  .hero__visual--photo {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    width: min(640px, 44vw) !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
    z-index: 15 !important;
  }

  .hero__right-image {
    height: 100svh !important;
    width: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center top !important;
    transform: none !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .hero__content {
    position: relative !important;
    z-index: 30 !important;
  }
}

/* ===== ADAPTIVE HERO FIX ===== */

/* Десктоп */
@media (min-width: 1181px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    overflow: hidden !important;
  }

  .hero__layout,
  .container.hero__layout {
    min-height: 100svh !important;
    grid-template-columns: minmax(0, 760px) minmax(420px, 1fr) !important;
    gap: 24px !important;
    align-items: center !important;
  }

  .hero__visual--photo {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: min(760px, 48vw) !important;
    height: 100svh !important;
    overflow: hidden !important;
    z-index: 10 !important;
  }

  .hero__right-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  .hero__content {
    position: relative !important;
    z-index: 30 !important;
  }
}


/* Ноутбуки и маленькие экраны */
@media (max-width: 1180px) {
  .hero,
  .hero.section {
    min-height: auto !important;
    height: auto !important;
    overflow: hidden !important;
    padding: 24px 0 0 !important;
  }

  .hero__layout,
  .container.hero__layout {
    width: min(100% - 32px, 960px) !important;
    min-height: auto !important;
    padding: 72px 0 32px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    text-align: center !important;
  }

  .hero__content {
    max-width: 720px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 20 !important;
  }

  .hero__visual--photo {
    position: relative !important;
    width: min(520px, 86vw) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    overflow: visible !important;
    z-index: 10 !important;
  }

  .hero__right-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center top !important;
    transform: none !important;
  }

  .hero__actions,
  .hero__trust {
    justify-content: center !important;
  }

  .hero-footer {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: min(100% - 32px, 960px) !important;
    margin: 20px auto 0 !important;
    padding: 0 0 18px !important;
  }
}


/* Телефоны */
@media (max-width: 640px) {
  .hero,
  .hero.section {
    padding-top: 16px !important;
  }

  .hero__layout,
  .container.hero__layout {
    width: calc(100% - 24px) !important;
    padding: 56px 0 24px !important;
    gap: 22px !important;
  }

  .hero__content {
    max-width: 100% !important;
    text-align: left !important;
  }

  .hero__title {
    font-size: clamp(34px, 10vw, 48px) !important;
    line-height: 0.94 !important;
    letter-spacing: -0.05em !important;
  }

  .hero__lead {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .hero__actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .hero__actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  .hero__trust {
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  .hero__visual--photo {
    width: min(390px, 100%) !important;
    margin: 4px auto 0 !important;
  }

  .hero__right-image {
    width: 100% !important;
    height: auto !important;
  }

  .hero-footer {
    width: calc(100% - 24px) !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
  }
}


/* ===== ADAPTIVE HERO FINAL FIX V2 =====
   Исправляет:
   1) фото больше не уезжает при уменьшении окна;
   2) до 1500px фото становится обычной колонкой, а не absolute-слоем;
   3) на планшетах/телефонах фото снова показывается, несмотря на старый display:none;
   4) отключает лишний нижний padding у body.
*/

html,
body {
  overflow-x: hidden !important;
}

body {
  padding-bottom: 0 !important;
}

.hero,
.hero.section {
  position: relative !important;
  overflow: hidden !important;
}

/* Большой десктоп */
@media (min-width: 1501px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: 100svh !important;
    padding: 0 !important;
    display: block !important;
  }

  .site-header {
    z-index: 70 !important;
  }

  .hero__layout,
  .container.hero__layout {
    position: static !important;
    z-index: auto !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    min-height: 100svh !important;
    margin: 0 auto !important;
    padding: 92px 0 78px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 760px) minmax(520px, 1fr) !important;
    gap: 24px !important;
    align-items: center !important;
  }

  .hero__content {
    position: relative !important;
    z-index: 30 !important;
    max-width: 760px !important;
    margin: 0 !important;
    transform: none !important;
  }

  .hero__visual--photo {
    display: block !important;
    position: absolute !important;
    z-index: 10 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: min(760px, 46vw) !important;
    height: 100svh !important;
    min-height: 100svh !important;
    margin: 0 !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  .hero__right-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: right bottom !important;
    margin: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    mix-blend-mode: normal !important;
    border-radius: 0 !important;
  }

  .hero-footer {
    position: absolute !important;
    z-index: 50 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 18px !important;
    width: min(var(--container), calc(100% - 56px)) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
  }
}

/* Ноутбук / уменьшенное окно браузера */
@media (min-width: 1025px) and (max-width: 1500px) {
  .hero,
  .hero.section {
    min-height: 100svh !important;
    height: auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .site-header {
    top: 28px !important;
    width: min(1180px, calc(100% - 48px)) !important;
    z-index: 70 !important;
  }

  .logo {
    font-size: 22px !important;
  }

  .logo__mark {
    width: 36px !important;
    height: 36px !important;
    font-size: 22px !important;
    border-radius: 9px !important;
  }

  .hero__layout,
  .container.hero__layout {
    position: relative !important;
    z-index: 20 !important;
    width: min(1180px, calc(100% - 48px)) !important;
    min-height: calc(100svh - 76px) !important;
    margin: 0 auto !important;
    padding: 96px 0 42px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
    gap: 28px !important;
    align-items: center !important;
  }

  .hero__content {
    position: relative !important;
    z-index: 30 !important;
    max-width: 680px !important;
    margin: 0 !important;
    transform: none !important;
    text-align: left !important;
  }

  .hero__content h1 {
    font-size: clamp(42px, 4.4vw, 62px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
    margin-bottom: 22px !important;
  }

  .hero__lead {
    max-width: 610px !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
    margin-bottom: 24px !important;
  }

  .hero__features {
    gap: 14px !important;
    margin-bottom: 24px !important;
    flex-wrap: wrap !important;
  }

  .hero-feature {
    gap: 9px !important;
  }

  .hero-feature__icon {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
    font-size: 14px !important;
    border-radius: 10px !important;
  }

  .hero-feature p {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .hero__actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 10px !important;
  }

  .hero__actions .btn {
    min-height: 44px !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
  }

  .hero__security {
    font-size: 12px !important;
  }

  .hero__visual--photo {
    display: block !important;
    position: relative !important;
    z-index: 15 !important;
    width: 100% !important;
    max-width: 420px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 0 auto !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  .hero__right-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: calc(100svh - 150px) !important;
    object-fit: contain !important;
    object-position: right bottom !important;
    margin: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    mix-blend-mode: normal !important;
    border-radius: 0 !important;
  }

  .hero-footer {
    position: relative !important;
    z-index: 50 !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: min(1180px, calc(100% - 48px)) !important;
    margin: auto auto 18px !important;
    padding: 0 !important;
    transform: none !important;
  }

  .hero-footer .disclaimer {
    max-width: 820px !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
  }
}

/* Планшет и телефон */
@media (max-width: 1024px) {
  .hero,
  .hero.section {
    min-height: auto !important;
    height: auto !important;
    padding: 0 !important;
    display: block !important;
    overflow: hidden !important;
  }

  .site-header {
    position: absolute !important;
    top: 18px !important;
    width: calc(100% - 32px) !important;
    z-index: 70 !important;
  }

  .logo {
    font-size: 18px !important;
    gap: 8px !important;
  }

  .logo__mark {
    width: 32px !important;
    height: 32px !important;
    font-size: 20px !important;
    border-radius: 8px !important;
  }

  .hero__layout,
  .container.hero__layout {
    position: relative !important;
    z-index: 20 !important;
    width: calc(100% - 32px) !important;
    min-height: auto !important;
    margin: 0 auto !important;
    padding: 82px 0 28px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    align-items: start !important;
    text-align: left !important;
  }

  .hero__content {
    position: relative !important;
    z-index: 30 !important;
    max-width: 680px !important;
    margin: 0 auto !important;
    transform: none !important;
    text-align: left !important;
  }

  .hero__content h1 {
    font-size: clamp(34px, 8.8vw, 52px) !important;
    line-height: .98 !important;
    letter-spacing: -0.055em !important;
    margin-bottom: 18px !important;
  }

  .hero__lead {
    font-size: 15px !important;
    line-height: 1.45 !important;
    margin-bottom: 22px !important;
  }

  .hero__features {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-bottom: 22px !important;
  }

  .hero-feature {
    gap: 10px !important;
  }

  .hero-feature__icon {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
    font-size: 14px !important;
    border-radius: 10px !important;
  }

  .hero-feature p {
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  .hero__actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-content: stretch !important;
    gap: 10px !important;
  }

  .hero__actions .btn {
    width: 100% !important;
    justify-content: center !important;
    min-height: 48px !important;
  }

  .hero__visual--photo {
    display: block !important;
    position: relative !important;
    z-index: 15 !important;
    width: min(520px, 100%) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 2px auto 0 !important;
    overflow: visible !important;
    pointer-events: none !important;
  }

  .hero__right-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    margin: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    mix-blend-mode: normal !important;
    border-radius: 0 !important;
  }

  .hero-footer {
    position: relative !important;
    z-index: 50 !important;
    width: calc(100% - 32px) !important;
    margin: 0 auto 16px !important;
    padding: 0 !important;
    transform: none !important;
  }

  .hero-footer .disclaimer {
    max-width: 100% !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
  }
}

@media (max-width: 420px) {
  .hero__layout,
  .container.hero__layout {
    width: calc(100% - 24px) !important;
    padding-top: 74px !important;
  }

  .hero__content h1 {
    font-size: clamp(31px, 9.6vw, 42px) !important;
  }

  .hero__lead {
    font-size: 14px !important;
  }

  .hero__visual--photo {
    width: min(390px, 100%) !important;
  }

  .hero-footer {
    width: calc(100% - 24px) !important;
  }
}


/* ===== DESKTOP PHOTO CLOSER FIX V1 =====
   На широких экранах двигает девушку с плашкой ближе к тексту.
   Работает только на десктопе, адаптацию планшета/телефона не трогает.
*/
@media (min-width: 1501px) {
  .hero__visual--photo {
    right: clamp(86px, 6.8vw, 132px) !important;
    width: min(760px, 46vw) !important;
    overflow: visible !important;
  }

  .hero__right-image {
    transform: none !important;
    object-position: right bottom !important;
  }
}


/* ===== DESKTOP PHOTO MORE LEFT FIX V2 =====
   Ещё сильнее сдвигает девушку и плашку левее на широких экранах.
*/
@media (min-width: 1501px) {
  .hero__visual--photo {
    right: clamp(190px, 11vw, 240px) !important;
    width: min(760px, 46vw) !important;
    overflow: visible !important;
  }

  .hero__right-image {
    transform: none !important;
    object-position: right bottom !important;
  }
}

