/* LUMENAUTO CONTACTS V3 — компоновка концепта, стиль главной */
.contacts-main{position:relative;isolation:isolate}
.contacts-page{position:relative;padding:132px 0 110px;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#020711 0%,#030914 48%,#020711 100%)}
.contacts-bg-grid{position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:linear-gradient(rgba(114,158,210,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(114,158,210,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.contacts-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(520px,.85fr);gap:36px;align-items:start}
.contacts-heading{position:relative;min-height:280px;padding:10px 0 30px;background:radial-gradient(circle at 92% 38%,rgba(28,79,157,.11),transparent 34%)}
.contacts-heading::after{content:"";position:absolute;right:-40px;top:10px;width:420px;height:250px;pointer-events:none;opacity:.45;background:radial-gradient(ellipse at center,rgba(43,112,218,.22),transparent 64%);filter:blur(16px)}
.contacts-title{position:relative;z-index:1;margin:22px 0 20px;font-size:clamp(58px,5.4vw,88px);line-height:.92;letter-spacing:-.055em;text-transform:uppercase;font-weight:800}
.contacts-heading p{position:relative;z-index:1;max-width:660px;margin:0;color:#aeb9c9;font-size:16px;line-height:1.72}
.contacts-cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.contact-box{position:relative;min-height:290px;display:flex;flex-direction:column;padding:26px 20px 22px;color:inherit;text-decoration:none;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(8,17,30,.9),rgba(3,8,17,.96));transition:transform .35s ease,background .35s ease,box-shadow .35s ease}
.contact-box::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--blue);box-shadow:0 0 16px rgba(50,132,255,.8);transition:right .4s ease}
.contact-box:hover{transform:translateY(-6px);background:linear-gradient(180deg,rgba(11,25,45,.96),rgba(3,9,18,.98));box-shadow:0 20px 45px rgba(0,0,0,.26)}
.contact-box:hover::after{right:0}
.contact-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:28px;border:1px solid rgba(78,145,237,.42);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);background:rgba(26,78,151,.1);color:#6da9fa}
.contact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.contact-icon-text{font-size:13px;font-weight:800}
.contact-label{color:var(--blue2);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.contact-box strong{min-height:52px;margin:14px 0 8px;font-size:16px;line-height:1.45;text-transform:uppercase}
.contact-box small{color:var(--muted);font-size:11px;line-height:1.55}
.contact-box>b{margin-top:auto;padding-top:22px;border-top:1px solid rgba(112,158,215,.13);color:#dfeaff;font-size:11px;text-transform:uppercase}
.contact-box>b i{margin-left:10px;color:var(--blue2);font-style:normal}

.map-panel,.contact-form-panel,.business-panel{border:1px solid var(--line2);background:linear-gradient(180deg,rgba(8,18,32,.93),rgba(3,9,18,.98));box-shadow:0 24px 60px rgba(0,0,0,.22)}
.map-visual{position:relative;height:314px;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#07111f,#040a14)}
.map-grid{position:absolute;inset:0;opacity:.28;background-image:linear-gradient(rgba(105,151,211,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(105,151,211,.12) 1px,transparent 1px);background-size:52px 52px;transform:rotate(-9deg) scale(1.25)}
.map-road{position:absolute;height:24px;border-top:1px solid rgba(101,145,207,.22);border-bottom:1px solid rgba(101,145,207,.18);background:rgba(13,26,45,.55)}
.road-a{width:120%;left:-10%;top:55%;transform:rotate(-10deg)}
.road-b{width:85%;left:12%;top:31%;transform:rotate(8deg)}
.road-c{width:60%;left:38%;top:72%;transform:rotate(15deg)}
.map-pin{position:absolute;left:48%;top:47%;display:flex;align-items:center;gap:12px}
.map-pin span{width:24px;height:32px;display:block;clip-path:polygon(50% 100%,0 42%,10% 15%,30% 0,70% 0,90% 15%,100% 42%);background:linear-gradient(180deg,#3d89f3,#174a9e);box-shadow:0 0 22px rgba(44,124,255,.56)}
.map-pin b{color:#8fc3ff;font-size:13px}
.map-controls{position:absolute;right:14px;top:14px;display:grid;gap:6px}
.map-controls button{width:34px;height:34px;border:1px solid var(--line2);background:#06101d;color:#dce9f9;font-size:19px}
.map-info{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.map-info>div{display:flex;gap:12px;min-height:112px;padding:24px 18px;border-right:1px solid var(--line)}
.map-info>div:last-child{border-right:0}
.map-info-icon{color:#6da9fa;font-size:24px}
.map-info p{margin:0}.map-info b,.map-info small{display:block}.map-info b{font-size:10px;letter-spacing:.08em;text-transform:uppercase}.map-info small{margin-top:7px;color:var(--muted);font-size:10px;line-height:1.55}
.map-route{height:62px;display:flex;align-items:center;justify-content:center;gap:16px;margin:22px;border:1px solid var(--line2);color:#f1f6ff;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:linear-gradient(180deg,rgba(14,28,49,.82),rgba(3,8,17,.78))}
.map-route span{color:var(--blue2)}

.contact-form-panel{display:grid;grid-template-columns:.82fr 1.18fr;min-height:330px;margin-top:26px}
.contact-form-copy{position:relative;padding:34px 30px;overflow:hidden;border-right:1px solid var(--line)}
.contact-form-copy h2{margin:15px 0 15px;font-size:27px;line-height:1.08;text-transform:uppercase}
.contact-form-copy p{max-width:340px;margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.form-blueprint{position:absolute;left:5px;right:0;bottom:-20px;opacity:.58}
.form-blueprint svg{width:100%}
.contact-form{padding:30px;display:flex;flex-direction:column}
.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:0;outline:none;background:#030914;color:#edf4ff;font:inherit;font-size:12px}
.contact-form input,.contact-form select{height:48px;padding:0 13px}
.contact-form textarea{min-height:95px;padding:13px;resize:vertical}
.contact-form select,.contact-form textarea{margin-top:12px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#4f8de2;box-shadow:inset 3px 0 0 rgba(49,119,222,.75)}
.contact-form-bottom{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;margin-top:15px}
.contact-form-bottom .btn{min-height:48px;padding:0 24px}
.contact-form-bottom small{color:#64758d;font-size:9px;line-height:1.5}
.form-success{display:none;margin-top:12px;padding:10px 12px;border:1px solid rgba(75,210,141,.26);color:#8fe0b7;font-size:11px}.form-success.is-visible{display:block}

.business-panel{position:relative;min-height:330px;margin-top:26px;padding:34px;overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center}
.business-panel h2{margin:15px 0 12px;font-size:38px;line-height:1;text-transform:uppercase}
.business-panel p{max-width:390px;margin:0 0 28px;color:var(--muted);font-size:12px;line-height:1.7}
.business-panel .btn{width:max-content;min-height:50px}
.business-blueprint{position:relative;height:250px}
.building-lines{position:absolute;inset:20px 10px 0;border:1px solid rgba(80,137,210,.22);border-bottom:0;transform:skewY(-5deg);background-image:linear-gradient(90deg,transparent 24%,rgba(83,135,201,.15) 25%,transparent 26%,transparent 49%,rgba(83,135,201,.15) 50%,transparent 51%,transparent 74%,rgba(83,135,201,.15) 75%,transparent 76%),linear-gradient(transparent 24%,rgba(83,135,201,.13) 25%,transparent 26%,transparent 49%,rgba(83,135,201,.13) 50%,transparent 51%,transparent 74%,rgba(83,135,201,.13) 75%,transparent 76%)}
.business-blueprint>span{position:absolute;right:22%;top:28%;color:#68aaff;font-size:17px;font-weight:800;font-style:italic;transform:skewY(-5deg)}
.business-blueprint>i{position:absolute;right:8%;bottom:18px;width:62%;height:48px;border:1px solid rgba(95,157,239,.3);border-top-left-radius:80% 100%;border-top-right-radius:35% 80%}
.business-blueprint>i::before,.business-blueprint>i::after{content:"";position:absolute;bottom:-12px;width:28px;height:28px;border:1px solid rgba(95,157,239,.35);border-radius:50%;background:#030914}.business-blueprint>i::before{left:14%}.business-blueprint>i::after{right:14%}

@media(max-width:1180px){
  .contacts-layout{grid-template-columns:1fr}
  .contacts-right{display:grid;grid-template-columns:1fr 1fr;gap:26px}
  .business-panel{margin-top:0}
}
@media(max-width:900px){
  .contacts-cards{grid-template-columns:repeat(2,1fr)}
  .contacts-right{grid-template-columns:1fr}
  .contact-form-panel{grid-template-columns:1fr}
  .contact-form-copy{min-height:270px;border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:820px){
  .contacts-page{padding-top:110px}
  .contacts-title{font-size:clamp(46px,12vw,70px)}
  .contacts-heading{min-height:auto}
}
@media(max-width:620px){
  .contacts-cards{grid-template-columns:1fr}
  .contact-box{min-height:245px}
  .map-info{grid-template-columns:1fr}
  .map-info>div{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}
  .map-info>div:last-child{border-bottom:0}
  .contact-form-row{grid-template-columns:1fr}
  .contact-form-row input+input{margin-top:12px}
  .contact-form-bottom{grid-template-columns:1fr}
  .contact-form-bottom .btn{width:100%}
  .business-panel{grid-template-columns:1fr}
  .business-blueprint{min-height:220px}
}


/* ===== V4: реальные карты и новые спокойные визуалы ===== */

.form-blueprint,
.business-blueprint,
.map-grid,
.map-road,
.map-pin,
.map-controls{
  display:none!important;
}

.form-visual{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:190px;
  overflow:hidden;
  border-top:1px solid rgba(112,158,215,.10);
  background:#030914;
}
.form-visual::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,7,17,.02),rgba(2,7,17,.16) 55%,rgba(2,7,17,.72)),
    linear-gradient(90deg,rgba(2,7,17,.1),transparent 55%);
}
.form-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.map-visual-real{
  position:relative;
  height:314px;
  background:#040a14;
}
.map-visual-real iframe{
  width:100%;
  height:100%;
  display:block;
  border:0;
  filter:saturate(.62) brightness(.58) contrast(1.16) hue-rotate(178deg);
}
.map-visual-real::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 70px rgba(2,7,17,.76);
  background:linear-gradient(180deg,rgba(2,7,17,.12),transparent 45%,rgba(2,7,17,.2));
}
.map-address-badge{
  position:absolute;
  z-index:2;
  left:22px;
  bottom:20px;
  max-width:330px;
  padding:14px 17px;
  border:1px solid rgba(98,160,239,.46);
  background:rgba(3,9,18,.9);
  backdrop-filter:blur(10px);
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.map-address-badge b,
.map-address-badge span{
  display:block;
}
.map-address-badge b{
  color:#7bb8ff;
  font-size:11px;
  letter-spacing:.12em;
}
.map-address-badge span{
  margin-top:5px;
  color:#e7f0fb;
  font-size:11px;
}

.business-visual{
  position:relative;
  height:270px;
  overflow:hidden;
  border-left:1px solid rgba(112,158,215,.12);
  background:#030914;
}
.business-visual::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(3,9,18,.2),transparent 38%),
    linear-gradient(180deg,transparent 44%,rgba(3,9,18,.76));
}
.business-visual img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

@media(max-width:620px){
  .form-visual{height:155px}
  .business-visual{height:230px;border-left:0;border-top:1px solid rgba(112,158,215,.12)}
  .map-address-badge{left:12px;right:12px;bottom:12px;max-width:none}
}


/* ===== V5: чертёж фары пользователя в блоке консультации ===== */

.contact-form-panel{
  grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);
  min-height:430px;
}

.contact-form-copy{
  min-height:430px;
  padding:38px 34px 228px;
  overflow:hidden;
}

.contact-form-copy .eyebrow{
  position:relative;
  z-index:3;
  display:block;
  margin-bottom:18px;
}

.contact-form-copy h2{
  position:relative;
  z-index:3;
  max-width:310px;
  margin:0 0 18px;
  font-size:clamp(30px,2.35vw,42px);
  line-height:.98;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.contact-form-copy p{
  position:relative;
  z-index:3;
  max-width:310px;
  margin:0;
  color:#aeb9c9;
  font-size:12px;
  line-height:1.7;
}

.form-visual{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:215px;
  overflow:hidden;
  border-top:1px solid rgba(112,158,215,.16);
  background:#020711;
}

.form-visual img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(.84) brightness(.72) contrast(1.14);
  transform:scale(1.015);
}

.form-visual::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,7,17,.14),transparent 26%,transparent 68%,rgba(2,7,17,.52)),
    linear-gradient(90deg,rgba(2,7,17,.12),transparent 42%,rgba(2,7,17,.08));
}

.form-visual::after{
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  box-shadow:
    inset 0 0 52px rgba(2,7,17,.62),
    inset 0 1px rgba(119,176,245,.08);
  background:none;
}

.contact-form{
  min-width:0;
  padding:38px;
  justify-content:center;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  font-size:13px;
}

.contact-form textarea{
  min-height:128px;
}

.contact-form-bottom{
  grid-template-columns:minmax(250px,auto) minmax(150px,1fr);
}

.contact-form-bottom .btn{
  width:100%;
}

@media(max-width:900px){
  .contact-form-panel{
    grid-template-columns:1fr;
  }

  .contact-form-copy{
    min-height:445px;
    padding:34px 30px 235px;
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .contact-form-copy h2,
  .contact-form-copy p{
    max-width:520px;
  }
}

@media(max-width:620px){
  .contact-form-copy{
    min-height:420px;
    padding:30px 22px 205px;
  }

  .contact-form-copy h2{
    max-width:280px;
    font-size:31px;
  }

  .form-visual{
    height:185px;
  }

  .contact-form{
    padding:24px 18px;
  }

  .contact-form-bottom{
    grid-template-columns:1fr;
  }
}


/* ===== V6: чертёж фоном всей левой карточки + исправленная подпись ===== */

.contact-form-panel{
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);
  min-height:430px;
  overflow:hidden;
}

.contact-form-copy{
  position:relative;
  min-height:430px;
  padding:42px 34px;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(2,7,17,.95) 0%,rgba(2,7,17,.84) 48%,rgba(2,7,17,.45) 100%),
    linear-gradient(180deg,rgba(2,7,17,.72) 0%,rgba(2,7,17,.22) 54%,rgba(2,7,17,.82) 100%),
    url("Image/contacts-headlight-blueprint.png") center center / cover no-repeat;
}

.contact-form-copy::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 72% 54%,rgba(31,100,207,.16),transparent 34%),
    linear-gradient(180deg,transparent 0%,rgba(2,7,17,.08) 62%,rgba(2,7,17,.45) 100%);
}

.contact-form-copy::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:
    inset -52px 0 70px rgba(2,7,17,.42),
    inset 0 0 70px rgba(2,7,17,.34);
}

.contact-form-copy .eyebrow,
.contact-form-copy h2,
.contact-form-copy p{
  position:relative;
  z-index:2;
}

.contact-form-copy h2{
  max-width:330px;
  margin:0 0 20px;
  font-size:clamp(31px,2.45vw,43px);
  line-height:.98;
}

.contact-form-copy p{
  max-width:330px;
  color:#c0ccdb;
}

.form-visual{
  display:none!important;
}

.contact-form{
  min-width:0;
  padding:38px 38px 34px;
  overflow:hidden;
}

.contact-form-bottom{
  display:grid;
  grid-template-columns:minmax(250px,1fr) minmax(190px,.72fr);
  gap:20px;
  align-items:center;
  width:100%;
}

.contact-form-bottom .btn{
  width:100%;
  min-width:0;
}

.contact-form-bottom .form-consent{
  display:block;
  min-width:0;
  max-width:100%;
  color:#65758c;
  font-size:10px;
  line-height:1.55;
  overflow-wrap:anywhere;
  word-break:normal;
}

@media(max-width:1100px){
  .contact-form-panel{
    grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);
  }

  .contact-form-bottom{
    grid-template-columns:1fr;
  }

  .contact-form-bottom .form-consent{
    max-width:460px;
  }
}

@media(max-width:900px){
  .contact-form-panel{
    grid-template-columns:1fr;
  }

  .contact-form-copy{
    min-height:390px;
    padding:36px 30px;
    border-right:0;
    border-bottom:1px solid var(--line);
    background:
      linear-gradient(90deg,rgba(2,7,17,.94) 0%,rgba(2,7,17,.70) 56%,rgba(2,7,17,.32) 100%),
      linear-gradient(180deg,rgba(2,7,17,.66),rgba(2,7,17,.25) 55%,rgba(2,7,17,.74)),
      url("Image/contacts-headlight-blueprint.png") center center / cover no-repeat;
  }

  .contact-form-copy h2,
  .contact-form-copy p{
    max-width:520px;
  }
}

@media(max-width:620px){
  .contact-form-copy{
    min-height:360px;
    padding:30px 22px;
    background:
      linear-gradient(90deg,rgba(2,7,17,.95),rgba(2,7,17,.62)),
      linear-gradient(180deg,rgba(2,7,17,.72),rgba(2,7,17,.32) 58%,rgba(2,7,17,.82)),
      url("Image/contacts-headlight-blueprint.png") 58% center / cover no-repeat;
  }

  .contact-form-copy h2{
    max-width:280px;
    font-size:31px;
  }

  .contact-form{
    padding:24px 18px;
  }

  .contact-form-bottom{
    grid-template-columns:1fr;
    gap:12px;
  }

  .contact-form-bottom .form-consent{
    font-size:9px;
  }
}


/* ===== V7: нормальная компоновка кнопки и согласия ===== */

.contact-form{
  padding:38px;
}

.contact-form-bottom{
  display:flex!important;
  flex-direction:column;
  align-items:stretch!important;
  gap:12px!important;
  width:100%;
  margin-top:18px;
}

.contact-form-bottom .btn{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}

.contact-form-bottom .form-consent{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0 2px!important;
  color:#65758c!important;
  font-size:10px!important;
  line-height:1.55!important;
  text-align:left!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

@media(max-width:1100px){
  .contact-form-bottom{
    display:flex!important;
    grid-template-columns:none!important;
  }
}

@media(max-width:620px){
  .contact-form{
    padding:24px 18px;
  }

  .contact-form-bottom .form-consent{
    font-size:9px!important;
    line-height:1.5!important;
  }
}


/* ===== V8: реальная фотография в блоке «Для бизнеса» ===== */

.business-panel{
  min-height:360px;
  grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);
}

.business-visual{
  position:relative;
  min-height:360px;
  height:100%;
  overflow:hidden;
  border-left:1px solid rgba(112,158,215,.14);
  background:#020711;
}

.business-visual img{
  width:100%;
  height:100%;
  min-height:360px;
  display:block;
  object-fit:cover;
  object-position:67% center;
  filter:saturate(.82) brightness(.72) contrast(1.13);
  transform:scale(1.01);
}

.business-visual::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(3,9,18,.88) 0%,rgba(3,9,18,.46) 24%,rgba(3,9,18,.08) 58%,rgba(3,9,18,.03) 100%),
    linear-gradient(180deg,rgba(2,7,17,.10),transparent 45%,rgba(2,7,17,.42));
}

.business-visual::after{
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 78% 48%,rgba(62,133,233,.08),transparent 34%);
  box-shadow:
    inset 0 0 62px rgba(2,7,17,.48),
    inset 1px 0 rgba(112,158,215,.08);
}

/* На ПК карточки всегда видимы: без выплывания и исчезновения. */
@media(min-width:821px){
  .contacts-main .reveal{
    opacity:1!important;
    transform:none!important;
    visibility:visible!important;
    transition:none!important;
  }

  .contacts-main .reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    visibility:visible!important;
  }
}

/* На телефоне оставляем существующие анимации. */
@media(max-width:820px){
  .business-panel{
    grid-template-columns:1fr;
  }

  .business-visual{
    min-height:300px;
    border-left:0;
    border-top:1px solid rgba(112,158,215,.14);
  }

  .business-visual img{
    min-height:300px;
    object-position:70% center;
  }
}

@media(max-width:620px){
  .business-visual{
    min-height:245px;
  }

  .business-visual img{
    min-height:245px;
  }
}


/* ===== V9: «Для бизнеса» — фото фоном всей карточки ===== */

.business-panel{
  position:relative!important;
  display:block!important;
  min-height:380px!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
  background:#020711!important;
}

.business-panel > div:first-child{
  position:relative;
  z-index:3;
  width:58%;
  min-height:380px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:44px 42px;
}

.business-panel > div:first-child::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(2,7,17,.98) 0%,
      rgba(2,7,17,.94) 52%,
      rgba(2,7,17,.76) 78%,
      rgba(2,7,17,0) 100%);
}

.business-panel .business-visual{
  position:absolute!important;
  z-index:0!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:380px!important;
  border:0!important;
  background:#020711!important;
}

.business-panel .business-visual img{
  width:100%!important;
  height:100%!important;
  min-height:380px!important;
  display:block!important;
  object-fit:cover!important;
  object-position:72% center!important;
  filter:saturate(.82) brightness(.68) contrast(1.15)!important;
  transform:scale(1.015)!important;
}

.business-panel .business-visual::before{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      rgba(2,7,17,.97) 0%,
      rgba(2,7,17,.80) 40%,
      rgba(2,7,17,.28) 67%,
      rgba(2,7,17,.05) 100%),
    linear-gradient(180deg,
      rgba(2,7,17,.18),
      transparent 42%,
      rgba(2,7,17,.58))!important;
}

.business-panel .business-visual::after{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 77% 47%,rgba(55,127,228,.08),transparent 34%)!important;
  box-shadow:
    inset 0 0 72px rgba(2,7,17,.58),
    inset 0 1px rgba(112,158,215,.08)!important;
}

.business-panel h2{
  max-width:430px;
  margin:16px 0 14px!important;
}

.business-panel p{
  max-width:430px!important;
  margin:0 0 30px!important;
}

.business-panel .btn{
  position:relative;
  z-index:4;
  width:max-content!important;
  max-width:100%;
}

/* Гарантируем, что старые grid-настройки не сжимают текст. */
.business-panel{
  grid-template-columns:none!important;
}

@media(max-width:820px){
  .business-panel{
    min-height:420px!important;
  }

  .business-panel > div:first-child{
    width:100%;
    min-height:420px;
    padding:34px 28px;
    justify-content:flex-end;
  }

  .business-panel > div:first-child::before{
    background:
      linear-gradient(180deg,
        rgba(2,7,17,.38) 0%,
        rgba(2,7,17,.60) 38%,
        rgba(2,7,17,.95) 72%,
        rgba(2,7,17,.99) 100%);
  }

  .business-panel .business-visual,
  .business-panel .business-visual img{
    min-height:420px!important;
  }

  .business-panel .business-visual img{
    object-position:70% center!important;
  }

  .business-panel .business-visual::before{
    background:
      linear-gradient(180deg,
        rgba(2,7,17,.14) 0%,
        rgba(2,7,17,.28) 40%,
        rgba(2,7,17,.88) 72%,
        rgba(2,7,17,.98) 100%)!important;
  }

  .business-panel h2,
  .business-panel p{
    max-width:560px!important;
  }
}

@media(max-width:620px){
  .business-panel{
    min-height:450px!important;
  }

  .business-panel > div:first-child{
    min-height:450px;
    padding:28px 22px;
  }

  .business-panel .business-visual,
  .business-panel .business-visual img{
    min-height:450px!important;
  }

  .business-panel h2{
    font-size:32px!important;
  }

  .business-panel .btn{
    width:100%!important;
  }
}
