.contact-page{
  background:
    linear-gradient(90deg,rgba(19,19,18,.045) 1px,transparent 1px),
    linear-gradient(0deg,rgba(19,19,18,.045) 1px,transparent 1px),
    #f6f6f7;
  background-size:58px 58px;
}

.contacts-main{
  overflow:hidden;
}

.contacts-hero{
  padding:clamp(88px,7vw,126px) 0 clamp(58px,6vw,92px);
}

.contacts-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);
  gap:clamp(28px,5vw,84px);
  align-items:end;
}

.contacts-title{
  max-width:980px;
  margin:0;
  color:var(--black);
  font-size:clamp(3.3rem,7.2vw,8rem);
  line-height:.92;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-weight:950;
}

.contacts-hero__text{
  max-width:760px;
  margin:28px 0 0;
  color:rgba(19,19,18,.72);
  font-size:16px;
  line-height:1.55;
  font-weight:600;
}

.contacts-hero__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
  margin-top:34px;
}

.contacts-hero__link{
  display:inline-flex;
  align-items:center;
  min-height:56px;
  padding:0 24px;
  border:1px solid rgba(19,19,18,.14);
  border-radius:999px;
  background:#fff;
  color:var(--black);
  font-weight:800;
  text-decoration:none;
}

.contacts-hero__panel{
  position:relative;
  min-height:390px;
  padding:34px;
  border-radius:32px;
  background:#111113;
  color:#fff;
  overflow:hidden;
}

.contacts-hero__panel::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:31px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(0deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:46px 46px;
  pointer-events:none;
}

.contacts-hero__panel::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-120px;
  width:330px;
  height:330px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(219,37,16,.32),rgba(219,37,16,0) 68%);
}

.contacts-panel__label{
  position:relative;
  z-index:1;
  margin:0 0 86px;
  color:var(--red);
  font-size:13px;
  line-height:1;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.contacts-hero__panel h2{
  position:relative;
  z-index:1;
  max-width:420px;
  margin:0 0 18px;
  font-size:clamp(2rem,3vw,3.25rem);
  line-height:.98;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-weight:950;
}

.contacts-hero__panel p:last-child{
  position:relative;
  z-index:1;
  max-width:430px;
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:16px;
  line-height:1.55;
  font-weight:650;
}

.contacts-orbit{
  position:absolute;
  right:28px;
  top:28px;
  width:132px;
  height:132px;
  border:1px solid rgba(219,37,16,.42);
  border-radius:50%;
}

.contacts-orbit span{
  position:absolute;
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--red);
}

.contacts-orbit span:nth-child(1){
  left:10px;
  top:52px;
}

.contacts-orbit span:nth-child(2){
  right:20px;
  top:20px;
}

.contacts-orbit span:nth-child(3){
  right:32px;
  bottom:18px;
}

.contacts-info,
.contacts-form-section{
  padding:clamp(72px,7vw,116px) 0;
  background:#f3f3f4;
}

.contacts-section-head{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(280px,.78fr);
  gap:28px;
  align-items:end;
  margin-bottom:36px;
}

.contacts-section-head p:last-child{
  max-width:720px;
  margin:0;
  color:rgba(19,19,18,.66);
  font-size:16px;
  line-height:1.55;
}

.contacts-section-title{
  margin:0;
  color:var(--black);
  font-size:clamp(2.45rem,5vw,5.6rem);
  line-height:.95;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-weight:950;
}

.contacts-section-title--light{
  color:#fff;
}

.contacts-info-grid{
  display:grid;
  grid-template-columns:1.1fr .72fr .9fr;
  gap:16px;
}

.contacts-info-card{
  min-height:238px;
  padding:28px;
  border:1px solid rgba(19,19,18,.1);
  border-radius:26px;
  background:#fff;
}

.contacts-info-card span{
  display:block;
  margin-bottom:48px;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.contacts-info-card a,
.contacts-info-card strong{
  display:block;
  margin-bottom:16px;
  color:var(--black);
  font-size:clamp(1.45rem,2vw,2.4rem);
  line-height:1.04;
  letter-spacing:.02em;
  font-weight:950;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.contacts-info-card p{
  margin:0;
  color:rgba(19,19,18,.66);
  font-size:15px;
  line-height:1.55;
  font-weight:600;
}

.contacts-info-card--dark{
  background:#111113;
  border-color:#111113;
}

.contacts-info-card--dark a,
.contacts-info-card--dark strong{
  color:#fff;
}

.contacts-info-card--dark p{
  color:rgba(255,255,255,.72);
}

.contacts-process{
  padding:clamp(78px,7vw,124px) 0;
  background:#09090b;
}

.contacts-section-head--light p:last-child{
  color:rgba(255,255,255,.72);
}

.contacts-process-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  padding-top:34px;
}

.contacts-process-grid::before{
  content:"";
  position:absolute;
  left:9%;
  right:9%;
  top:0;
  height:2px;
  background:linear-gradient(90deg,rgba(219,37,16,.08),rgba(219,37,16,.78),rgba(219,37,16,.08));
}

.contacts-process-grid article{
  position:relative;
  min-height:260px;
  padding:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
}

.contacts-process-grid article::before{
  content:"";
  position:absolute;
  left:32px;
  top:-43px;
  width:17px;
  height:17px;
  border:4px solid var(--red);
  border-radius:50%;
  background:#09090b;
}

.contacts-process-grid span{
  display:block;
  margin-bottom:46px;
  color:var(--red);
  font-size:15px;
  font-weight:950;
}

.contacts-process-grid h3{
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(1.55rem,2vw,2.25rem);
  line-height:1.02;
  letter-spacing:.02em;
  font-weight:950;
}

.contacts-process-grid p{
  margin:0;
  color:rgba(255,255,255,.7);
  font-size:15px;
  line-height:1.6;
  font-weight:650;
}

.contacts-form-shell{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(420px,1fr);
  gap:22px;
  align-items:stretch;
}

.contacts-form-copy{
  position:relative;
  padding:34px;
  border-radius:30px;
  background:#111113;
  color:#fff;
  overflow:hidden;
}

.contacts-form-copy::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:29px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(0deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:44px 44px;
  pointer-events:none;
}

.contacts-form-copy > *{
  position:relative;
  z-index:1;
}

.contacts-form-copy .contacts-section-title,
.contacts-form-copy p{
  color:#fff;
}

.contacts-form-copy p:not(.section-kicker){
  max-width:520px;
  margin:24px 0 0;
  color:rgba(255,255,255,.72);
  font-size:16px;
  line-height:1.6;
  font-weight:650;
}

.contacts-form-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:42px;
}

.contacts-form-badges span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#fff;
  font-size:13px;
  font-weight:800;
}

.contacts-page-form{
  padding:28px;
  border:1px solid rgba(19,19,18,.1);
  border-radius:30px;
  background:#fff;
}

.contacts-page-form__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.contacts-page-form__grid .contact-input--full{
  grid-column:1/-1;
}

.contacts-page-form textarea{
  min-height:146px;
}

.contacts-page-form__bottom{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:16px;
}

.contacts-page-form__bottom .btn-primary{
  flex:0 0 auto;
}

.technologies#contact-tech{
  margin:0;
}

@media (max-width:1100px){
  .contacts-hero__grid,
  .contacts-section-head,
  .contacts-info-grid,
  .contacts-form-shell{
    grid-template-columns:1fr;
  }

  .contacts-info-card{
    min-height:210px;
  }

  .contacts-process-grid{
    grid-template-columns:1fr;
  }

  .contacts-process-grid::before,
  .contacts-process-grid article::before{
    display:none;
  }
}

@media (max-width:767px){
  .contact-page{
    background-size:46px 46px;
  }

  .contacts-hero{
    padding:78px 0 54px;
  }

  .contacts-title{
    font-size:clamp(2.6rem,13vw,4.2rem);
  }

  .contacts-hero__actions,
  .contacts-hero__actions .btn-primary,
  .contacts-hero__link{
    width:100%;
  }

  .contacts-hero__link{
    justify-content:center;
    padding-inline:16px;
  }

  .contacts-hero__panel{
    min-height:300px;
    padding:24px;
    border-radius:24px;
  }

  .contacts-orbit{
    width:92px;
    height:92px;
  }

  .contacts-panel__label{
    margin-bottom:62px;
  }

  .contacts-info,
  .contacts-form-section,
  .contacts-process{
    padding:58px 0;
  }

  .contacts-section-title{
    font-size:clamp(2rem,10vw,3.1rem);
  }

  .contacts-info-card,
  .contacts-process-grid article,
  .contacts-form-copy,
  .contacts-page-form{
    border-radius:22px;
    padding:22px;
  }

  .contacts-info-card span,
  .contacts-process-grid span{
    margin-bottom:32px;
  }

  .contacts-form-shell{
    gap:14px;
  }

  .contacts-page-form__grid{
    grid-template-columns:1fr;
  }

  .contacts-page-form__bottom{
    display:grid;
    gap:12px;
  }

  .contacts-page-form__bottom .btn-primary{
    width:100%;
  }
}


.contact-hp,
.contacts-page-form .contact-hp,
.contact-form .contact-hp{
  position:absolute !important;
  left:-9999px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  min-width:1px !important;
  min-height:1px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  appearance:none !important;
}

.contacts-process-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);
  grid-template-rows:repeat(3,auto);
  gap:34px 0;
  padding-top:54px;
  padding-bottom:42px;
}

.contacts-process-grid::before{
  content:"";
  position:absolute;
  left:50%;
  top:54px;
  bottom:50px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(219,37,16,.08),rgba(219,37,16,.95) 14%,rgba(219,37,16,.95) 86%,rgba(219,37,16,.08));
}

.contacts-process-grid::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:35px;
  width:13px;
  height:13px;
  border-right:2px solid var(--red);
  border-bottom:2px solid var(--red);
  transform:translateX(-50%) rotate(45deg);
}

.contacts-process-grid article{
  position:relative;
  min-height:190px;
  padding:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:0 20px 46px rgba(0,0,0,.2);
}

.contacts-process-grid article:nth-child(1){
  grid-column:1;
  grid-row:1;
}

.contacts-process-grid article:nth-child(2){
  grid-column:3;
  grid-row:2;
}

.contacts-process-grid article:nth-child(3){
  grid-column:1;
  grid-row:3;
}

.contacts-process-grid article::before{
  content:"";
  position:absolute;
  top:50%;
  width:20px;
  height:20px;
  border:4px solid var(--red);
  border-radius:50%;
  background:#09090b;
  box-shadow:0 0 0 9px rgba(219,37,16,.12);
  transform:translateY(-50%);
}

.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(3)::before{
  right:-58px;
}

.contacts-process-grid article:nth-child(2)::before{
  left:-58px;
}

.contacts-process-grid span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  margin-bottom:42px;
  border:1px solid rgba(219,37,16,.78);
  border-radius:999px;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:950;
}

.contacts-process-grid h3{
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(1.55rem,2vw,2.25rem);
  line-height:1.02;
  letter-spacing:.02em;
  font-weight:950;
}

.contacts-process-grid p{
  margin:0;
  color:rgba(255,255,255,.7);
  font-size:15px;
  line-height:1.6;
  font-weight:650;
}

@media (max-width:1100px){
  .contacts-process-grid{
    grid-template-columns:1fr 70px 1fr;
  }

  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(3)::before{
    right:-46px;
  }

  .contacts-process-grid article:nth-child(2)::before{
    left:-46px;
  }
}

@media (max-width:767px){
  .contacts-process-grid{
    display:grid;
    grid-template-columns:28px 1fr;
    grid-template-rows:auto;
    gap:16px;
    padding-top:22px;
    padding-bottom:0;
  }

  .contacts-process-grid::before{
    left:12px;
    top:24px;
    bottom:24px;
    transform:none;
  }

  .contacts-process-grid::after{
    left:12px;
    bottom:6px;
    transform:translateX(-50%) rotate(45deg);
  }

  .contacts-process-grid article,
  .contacts-process-grid article:nth-child(1),
  .contacts-process-grid article:nth-child(2),
  .contacts-process-grid article:nth-child(3){
    grid-column:2;
    grid-row:auto;
    min-height:0;
    padding:22px;
    border-radius:22px;
  }

  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(2)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:-29px;
    right:auto;
    width:16px;
    height:16px;
    border-width:3px;
  }

  .contacts-process-grid span{
    margin-bottom:30px;
  }
}


.contacts-hero__panel--image{
  min-height:440px;
  padding:24px;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
}

.contacts-hero__panel--image::after,
.contacts-hero__panel--image .contacts-orbit{
  display:none;
}

.contacts-image-slot{
  position:relative;
  z-index:1;
  width:100%;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:28px;
  border:1px dashed rgba(255,255,255,.18);
  border-radius:24px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(0deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:42px 42px;
}

.contacts-image-slot strong{
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.contacts-image-slot span{
  max-width:320px;
  margin-top:10px;
  color:#fff;
  font-size:clamp(1.7rem,2.2vw,2.6rem);
  line-height:1;
  letter-spacing:.02em;
  font-weight:950;
  text-transform:uppercase;
}

.contacts-info-grid{
  grid-template-columns:1.05fr .78fr .9fr;
  align-items:stretch;
}

.contacts-info-card{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:260px;
  overflow:hidden;
}

.contacts-info-card::before{
  content:"";
  position:absolute;
  left:28px;
  top:0;
  width:86px;
  height:3px;
  background:var(--red);
}

.contacts-info-card span{
  margin:0 0 auto;
}

.contacts-info-card a,
.contacts-info-card strong{
  font-size:clamp(1.35rem,1.65vw,2rem);
  letter-spacing:.02em;
}

.contacts-info-card a{
  margin-top:12px;
  margin-bottom:14px;
}

.contacts-info-card__link{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:42px;
  margin-top:24px !important;
  padding:0 18px;
  border:1px solid rgba(219,37,16,.2);
  border-radius:999px;
  background:#fff0ee;
  color:var(--red) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-decoration:none;
}

.contacts-info-card--accent{
  border-color:rgba(219,37,16,.22);
  background:#fff8f7;
}

.contacts-process-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);
  grid-template-rows:repeat(3,auto);
  gap:54px 0;
  padding:72px 0 46px;
}

.contacts-process-grid::before{
  content:"";
  position:absolute;
  left:50%;
  top:52px;
  bottom:30px;
  width:3px;
  transform:translateX(-50%);
  background:var(--red);
  opacity:1;
  z-index:0;
}

.contacts-process-grid::after{
  display:none;
}

.contacts-process-grid article{
  position:relative;
  z-index:1;
  min-height:210px;
  padding:30px;
}

.contacts-process-grid article:nth-child(1){
  grid-column:1;
  grid-row:1;
}

.contacts-process-grid article:nth-child(2){
  grid-column:3;
  grid-row:2;
}

.contacts-process-grid article:nth-child(3){
  grid-column:1;
  grid-row:3;
}

.contacts-process-grid article::before{
  content:"";
  position:absolute;
  top:50%;
  width:22px;
  height:22px;
  border:4px solid var(--red);
  border-radius:50%;
  background:#09090b;
  box-shadow:0 0 0 8px #09090b,0 0 24px rgba(219,37,16,.44);
  transform:translateY(-50%);
  z-index:3;
}

.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(3)::before{
  right:-71px;
}

.contacts-process-grid article:nth-child(2)::before{
  left:-71px;
}

.contacts-process-grid span{
  margin-bottom:46px;
}

.contacts-form-shell{
  grid-template-columns:minmax(360px,.78fr) minmax(420px,1fr);
}

.contacts-form-copy{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(160px,.48fr);
  gap:20px;
  min-height:520px;
  padding:28px;
}

.contacts-form-copy__text{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:0;
}

.contacts-form-copy .contacts-section-title{
  font-size:clamp(2.4rem,4.2vw,5rem);
}

.contacts-form-visual{
  position:relative;
  z-index:1;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:20px;
  border:1px dashed rgba(255,255,255,.18);
  border-radius:22px;
  background:rgba(255,255,255,.035);
}

.contacts-form-visual strong{
  color:var(--red);
  font-size:12px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.contacts-form-visual span{
  margin-top:8px;
  color:#fff;
  font-size:16px;
  line-height:1.35;
  font-weight:800;
}

@media (max-width:1100px){
  .contacts-process-grid{
    grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);
  }

  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(3)::before{
    right:-57px;
  }

  .contacts-process-grid article:nth-child(2)::before{
    left:-57px;
  }

  .contacts-form-shell{
    grid-template-columns:1fr;
  }
}

@media (max-width:767px){
  .contacts-hero__panel--image{
    min-height:320px;
  }

  .contacts-image-slot{
    padding:22px;
  }

  .contacts-info-card{
    min-height:210px;
  }

  .contacts-process-grid{
    grid-template-columns:34px 1fr;
    gap:18px;
    padding:24px 0 0;
  }

  .contacts-process-grid::before{
    left:12px;
    top:32px;
    bottom:32px;
    transform:none;
  }

  .contacts-process-grid article,
  .contacts-process-grid article:nth-child(1),
  .contacts-process-grid article:nth-child(2),
  .contacts-process-grid article:nth-child(3){
    grid-column:2;
    grid-row:auto;
    min-height:0;
  }

  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(2)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:-36px;
    right:auto;
    width:18px;
    height:18px;
    border-width:3px;
  }

  .contacts-form-copy{
    grid-template-columns:1fr;
    min-height:0;
  }

  .contacts-form-visual{
    min-height:260px;
  }
}


.contacts-hero__panel--image{
  min-height:460px;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(19,19,18,.08);
  background:#111113;
}

.contacts-hero__panel--image::before,
.contacts-hero__panel--image::after{
  display:none;
}

.contacts-hero__panel--image img{
  display:block;
  width:100%;
  height:100%;
  max-height:430px;
  object-fit:cover;
  border-radius:24px;
}

.contacts-info-grid--clean{
  grid-template-columns:1fr 1fr 1fr;
  gap:18px;
}

.contacts-info-grid--clean .contacts-info-card{
  min-height:230px;
  padding:30px;
  justify-content:flex-start;
}

.contacts-info-grid--clean .contacts-info-card::before{
  left:30px;
  width:76px;
}

.contacts-info-grid--clean .contacts-info-card span{
  margin:0 0 48px;
}

.contacts-info-grid--clean .contacts-info-card a,
.contacts-info-grid--clean .contacts-info-card strong{
  margin:0 0 16px;
  font-size:clamp(1.45rem,1.7vw,2.15rem);
  line-height:1.08;
  letter-spacing:.02em;
  word-break:normal;
  overflow-wrap:anywhere;
}

.contacts-info-grid--clean .contacts-info-card p{
  max-width:430px;
}

.contacts-info-grid--clean .contacts-info-card__link{
  margin-top:auto !important;
}

.contacts-process-grid{
  grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);
  gap:58px 0;
  padding:78px 0 48px;
}

.contacts-process-grid::before{
  left:50%;
  top:54px;
  bottom:34px;
  width:3px;
  background:#e42416;
  opacity:1;
  box-shadow:0 0 18px rgba(228,36,22,.38);
}

.contacts-process-grid article::before{
  display:none;
}

.contacts-process-grid article::after{
  content:"";
  position:absolute;
  top:50%;
  height:3px;
  background:#e42416;
  box-shadow:0 0 14px rgba(228,36,22,.28);
  transform:translateY(-50%);
  z-index:1;
}

.contacts-process-grid article:nth-child(1)::after,
.contacts-process-grid article:nth-child(3)::after{
  left:100%;
  width:120px;
}

.contacts-process-grid article:nth-child(2)::after{
  right:100%;
  width:120px;
}

.contacts-process-grid span::after{
  content:"";
  position:absolute;
  top:50%;
  width:22px;
  height:22px;
  border:4px solid #e42416;
  border-radius:50%;
  background:#09090b;
  box-shadow:0 0 0 8px #09090b,0 0 24px rgba(228,36,22,.44);
  transform:translateY(-50%);
  z-index:4;
}

.contacts-process-grid article:nth-child(1) span::after,
.contacts-process-grid article:nth-child(3) span::after{
  right:-72px;
}

.contacts-process-grid article:nth-child(2) span::after{
  left:-72px;
}

@media (max-width:1100px){
  .contacts-info-grid--clean{
    grid-template-columns:1fr;
  }

  .contacts-hero__panel--image{
    min-height:390px;
  }

  .contacts-process-grid{
    grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);
  }

  .contacts-process-grid article:nth-child(1)::after,
  .contacts-process-grid article:nth-child(3)::after{
    width:92px;
  }

  .contacts-process-grid article:nth-child(2)::after{
    width:92px;
  }

  .contacts-process-grid article:nth-child(1) span::after,
  .contacts-process-grid article:nth-child(3) span::after{
    right:-58px;
  }

  .contacts-process-grid article:nth-child(2) span::after{
    left:-58px;
  }
}

@media (max-width:767px){
  .contacts-hero__panel--image{
    min-height:320px;
    padding:12px;
  }

  .contacts-hero__panel--image img{
    max-height:300px;
    border-radius:18px;
  }

  .contacts-info-grid--clean .contacts-info-card{
    min-height:200px;
    padding:24px;
  }

  .contacts-info-grid--clean .contacts-info-card span{
    margin-bottom:34px;
  }

  .contacts-process-grid{
    grid-template-columns:34px 1fr;
    gap:18px;
    padding:26px 0 0;
  }

  .contacts-process-grid::before{
    left:12px;
    top:28px;
    bottom:28px;
    transform:none;
  }

  .contacts-process-grid article::after,
  .contacts-process-grid article:nth-child(1)::after,
  .contacts-process-grid article:nth-child(2)::after,
  .contacts-process-grid article:nth-child(3)::after{
    left:auto;
    right:100%;
    width:22px;
  }

  .contacts-process-grid article:nth-child(1) span::after,
  .contacts-process-grid article:nth-child(2) span::after,
  .contacts-process-grid article:nth-child(3) span::after{
    left:-38px;
    right:auto;
    width:18px;
    height:18px;
    border-width:3px;
  }
}


.contacts-hero__grid{
  align-items:start !important;
}

.contacts-hero__panel--image{
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.contacts-hero__panel--image::before,
.contacts-hero__panel--image::after{
  display:none !important;
}

.contacts-hero__panel--image img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  border-radius:28px !important;
}

.contacts-process-grid::before{
  left:50% !important;
  top:58px !important;
  bottom:58px !important;
  width:3px !important;
  background:#e42416 !important;
  opacity:1 !important;
  box-shadow:0 0 18px rgba(228,36,22,.38) !important;
  z-index:1 !important;
}

.contacts-process-grid article::after,
.contacts-process-grid article:nth-child(1)::after,
.contacts-process-grid article:nth-child(2)::after,
.contacts-process-grid article:nth-child(3)::after{
  display:none !important;
}

.contacts-process-grid article::before,
.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(2)::before,
.contacts-process-grid article:nth-child(3)::before{
  display:none !important;
}

.contacts-process-grid span::after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  width:22px !important;
  height:22px !important;
  border:4px solid #e42416 !important;
  border-radius:50% !important;
  background:#09090b !important;
  box-shadow:0 0 0 8px #09090b,0 0 24px rgba(228,36,22,.44) !important;
  transform:translateY(-50%) !important;
  z-index:4 !important;
}

.contacts-process-grid article:nth-child(1) span::after,
.contacts-process-grid article:nth-child(3) span::after{
  right:-73px !important;
}

.contacts-process-grid article:nth-child(2) span::after{
  left:-73px !important;
}

@media (max-width:1100px){
  .contacts-process-grid::before{
    top:50px !important;
    bottom:50px !important;
  }

  .contacts-process-grid article:nth-child(1) span::after,
  .contacts-process-grid article:nth-child(3) span::after{
    right:-59px !important;
  }

  .contacts-process-grid article:nth-child(2) span::after{
    left:-59px !important;
  }
}

@media (max-width:767px){
  .contacts-hero__grid{
    align-items:start !important;
  }

  .contacts-hero__panel--image img{
    border-radius:22px !important;
  }

  .contacts-process-grid::before{
    left:12px !important;
    top:26px !important;
    bottom:26px !important;
    transform:none !important;
  }

  .contacts-process-grid article:nth-child(1) span::after,
  .contacts-process-grid article:nth-child(2) span::after,
  .contacts-process-grid article:nth-child(3) span::after{
    left:-38px !important;
    right:auto !important;
    width:18px !important;
    height:18px !important;
    border-width:3px !important;
  }
}


@keyframes contacts-process-pulse{
  0%,100%{box-shadow:0 0 0 8px rgba(9,9,11,.96),0 0 0 0 rgba(228,36,22,.26),0 0 22px rgba(228,36,22,.34);opacity:1}
  50%{box-shadow:0 0 0 8px rgba(9,9,11,.96),0 0 0 7px rgba(228,36,22,.12),0 0 32px rgba(228,36,22,.52);opacity:1}
}

.contacts-hero__grid{
  align-items:start !important;
}

.contacts-hero__panel--image{
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.contacts-hero__panel--image::before,
.contacts-hero__panel--image::after{
  display:none !important;
}

.contacts-hero__panel--image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:32px !important;
}

.contacts-process-grid{
  position:relative !important;
  grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr) !important;
  gap:54px 0 !important;
  padding:72px 0 46px !important;
}

.contacts-process-grid::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:56px !important;
  bottom:56px !important;
  width:3px !important;
  transform:translateX(-50%) !important;
  background:#e42416 !important;
  box-shadow:0 0 18px rgba(228,36,22,.45) !important;
  opacity:1 !important;
  z-index:1 !important;
  display:block !important;
}

.contacts-process-grid::after{
  display:none !important;
}

.contacts-process-grid article{
  position:relative !important;
  z-index:2 !important;
}

.contacts-process-grid article::before{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  width:22px !important;
  height:22px !important;
  border:4px solid #e42416 !important;
  border-radius:50% !important;
  background:#09090b !important;
  transform:translateY(-50%) !important;
  box-shadow:0 0 0 8px #09090b,0 0 22px rgba(228,36,22,.38) !important;
  z-index:3 !important;
  animation:contacts-process-pulse 2.3s ease-in-out infinite !important;
}

.contacts-process-grid article::after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  height:2px !important;
  background:#e42416 !important;
  box-shadow:0 0 14px rgba(228,36,22,.35) !important;
  transform:translateY(-50%) !important;
  z-index:2 !important;
}

.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(3)::before{
  right:-71px !important;
}

.contacts-process-grid article:nth-child(2)::before{
  left:-71px !important;
}

.contacts-process-grid article:nth-child(1)::after,
.contacts-process-grid article:nth-child(3)::after{
  right:-60px !important;
  width:60px !important;
}

.contacts-process-grid article:nth-child(2)::after{
  left:-60px !important;
  width:60px !important;
}

@media (max-width:1100px){
  .contacts-process-grid{
    grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr) !important;
  }

  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(3)::before{
    right:-53px !important;
  }

  .contacts-process-grid article:nth-child(2)::before{
    left:-53px !important;
  }

  .contacts-process-grid article:nth-child(1)::after,
  .contacts-process-grid article:nth-child(3)::after{
    right:-44px !important;
    width:44px !important;
  }

  .contacts-process-grid article:nth-child(2)::after{
    left:-44px !important;
    width:44px !important;
  }
}

@media (max-width:767px){
  .contacts-hero__panel--image img{
    border-radius:24px !important;
  }

  .contacts-process-grid{
    grid-template-columns:28px 1fr !important;
    gap:16px !important;
    padding:22px 0 0 !important;
  }

  .contacts-process-grid::before{
    left:12px !important;
    top:24px !important;
    bottom:24px !important;
    transform:none !important;
  }

  .contacts-process-grid article,
  .contacts-process-grid article:nth-child(1),
  .contacts-process-grid article:nth-child(2),
  .contacts-process-grid article:nth-child(3){
    grid-column:2 !important;
    grid-row:auto !important;
  }

  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(2)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:-29px !important;
    right:auto !important;
    width:18px !important;
    height:18px !important;
    border-width:3px !important;
  }

  .contacts-process-grid article::after,
  .contacts-process-grid article:nth-child(1)::after,
  .contacts-process-grid article:nth-child(2)::after,
  .contacts-process-grid article:nth-child(3)::after{
    left:-20px !important;
    right:auto !important;
    width:20px !important;
  }
}


.contacts-process-grid{
  --process-line-space:clamp(38px,4.4vw,68px);
}

.contacts-process-grid::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:var(--process-line-space) !important;
  bottom:var(--process-line-space) !important;
  width:3px !important;
  height:auto !important;
  min-height:0 !important;
  transform:translateX(-50%) !important;
  background:#e42416 !important;
  box-shadow:0 0 18px rgba(228,36,22,.45) !important;
  opacity:1 !important;
  z-index:1 !important;
  display:block !important;
}

.contacts-process-grid article::after,
.contacts-process-grid article:nth-child(1)::after,
.contacts-process-grid article:nth-child(2)::after,
.contacts-process-grid article:nth-child(3)::after{
  display:none !important;
}

.contacts-process-grid article::before,
.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(2)::before,
.contacts-process-grid article:nth-child(3)::before{
  display:block !important;
  animation:contacts-process-pulse 2.3s ease-in-out infinite !important;
}

@media (max-width:1100px){
  .contacts-process-grid{
    --process-line-space:clamp(32px,4vw,54px);
  }
}

@media (max-width:767px){
  .contacts-process-grid{
    --process-line-space:24px;
  }

  .contacts-process-grid::before{
    left:12px !important;
    transform:none !important;
  }
}


.contacts-process-grid span::after,
.contacts-process-grid article:nth-child(1) span::after,
.contacts-process-grid article:nth-child(2) span::after,
.contacts-process-grid article:nth-child(3) span::after{
  content:none !important;
  display:none !important;
}

.contacts-process-grid article::before,
.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(2)::before,
.contacts-process-grid article:nth-child(3)::before{
  display:block !important;
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  width:22px !important;
  height:22px !important;
  border:4px solid #e42416 !important;
  border-radius:50% !important;
  background:#09090b !important;
  transform:translateY(-50%) !important;
  box-shadow:0 0 0 8px #09090b,0 0 0 0 rgba(228,36,22,.28),0 0 22px rgba(228,36,22,.34) !important;
  z-index:4 !important;
  animation:contacts-process-pulse 2.2s ease-in-out infinite !important;
}

.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(3)::before{
  right:-71px !important;
}

.contacts-process-grid article:nth-child(2)::before{
  left:-71px !important;
}

@media (max-width:1100px){
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(3)::before{
    right:-53px !important;
  }

  .contacts-process-grid article:nth-child(2)::before{
    left:-53px !important;
  }
}

@media (max-width:767px){
  .contacts-process-grid{
    grid-template-columns:30px minmax(0,1fr) !important;
  }

  .contacts-process-grid::before{
    left:12px !important;
    top:24px !important;
    bottom:24px !important;
    width:3px !important;
    transform:none !important;
  }

  .contacts-process-grid article,
  .contacts-process-grid article:nth-child(1),
  .contacts-process-grid article:nth-child(2),
  .contacts-process-grid article:nth-child(3){
    grid-column:2 !important;
    grid-row:auto !important;
  }

  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(2)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:-31px !important;
    right:auto !important;
    width:18px !important;
    height:18px !important;
    border-width:3px !important;
    box-shadow:0 0 0 7px #09090b,0 0 0 0 rgba(228,36,22,.3),0 0 18px rgba(228,36,22,.38) !important;
  }
}


.contacts-process-grid span::after,
.contacts-process-grid article:nth-child(1) span::after,
.contacts-process-grid article:nth-child(2) span::after,
.contacts-process-grid article:nth-child(3) span::after{
  content:none !important;
  display:none !important;
}

.contacts-process-grid article::before,
.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(2)::before,
.contacts-process-grid article:nth-child(3)::before{
  display:block !important;
}


.contacts-process-grid article::before,
.contacts-process-grid article:nth-child(1)::before,
.contacts-process-grid article:nth-child(3)::before{
  left:calc(100% + 47px) !important;
  right:auto !important;
}

.contacts-process-grid article:nth-child(2)::before{
  right:calc(100% + 46px) !important;
  left:auto !important;
}

.contacts-process-grid span::after,
.contacts-process-grid article span::after,
.contacts-process-grid article:nth-child(1) span::after,
.contacts-process-grid article:nth-child(2) span::after,
.contacts-process-grid article:nth-child(3) span::after{
  content:none !important;
  display:none !important;
}

@media (max-width:1100px){
  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:calc(100% + 30px) !important;
    right:auto !important;
  }

  .contacts-process-grid article:nth-child(2)::before{
    right:calc(100% + 30px) !important;
    left:auto !important;
  }
}

@media (max-width:767px){
  .contacts-process-grid article::before,
  .contacts-process-grid article:nth-child(1)::before,
  .contacts-process-grid article:nth-child(2)::before,
  .contacts-process-grid article:nth-child(3)::before{
    left:-45px !important;
    right:auto !important;
  }
}


.contacts-hero__email{
  display:inline-flex;
  align-items:center;
  min-height:56px;
  border:1px solid rgba(19,19,18,.14);
  border-radius:999px;
  background:#fff;
  overflow:hidden;
}

.contacts-hero__email .contacts-hero__link{
  min-height:54px;
  padding:0 14px 0 24px;
  border:0;
  border-radius:0;
  background:transparent;
  white-space:nowrap;
}

.contacts-email-copy{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  margin-right:5px;
  border:0;
  border-radius:50%;
  background:#f2f2f2;
  color:var(--black);
  cursor:pointer;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}

.contacts-email-copy svg{
  width:19px;
  height:19px;
}

.contacts-email-copy span{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  padding:8px 10px;
  border-radius:999px;
  background:#111113;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:850;
  white-space:nowrap;
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  transition:opacity .2s ease,visibility .2s ease,transform .2s ease;
  pointer-events:none;
}

.contacts-email-copy:hover,
.contacts-email-copy.is-copied{
  background:var(--red);
  color:#fff;
}

.contacts-email-copy.is-copied span{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.contacts-section-title,
.contacts-form-copy .contacts-section-title{
  font-size:clamp(2rem,3vw,3.5rem) !important;
  line-height:.95 !important;
  letter-spacing:.02em !important;
}

@media (max-width:767px){
  .contacts-hero__email{
    width:100%;
  }

  .contacts-hero__email .contacts-hero__link{
    flex:1;
    min-width:0;
    justify-content:flex-start;
    padding-left:18px;
    padding-right:8px;
    font-size:14px;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .contacts-email-copy{
    flex:0 0 42px;
    width:42px;
    height:42px;
  }

  .contacts-section-title,
  .contacts-form-copy .contacts-section-title{
    font-size:clamp(1.9rem,10vw,3rem) !important;
  }
}


.contacts-main > section:not(.contacts-hero){
  padding-top:84px !important;
  padding-bottom:84px !important;
}

@media (max-width:1100px){
  .contacts-main > section:not(.contacts-hero){
    padding-top:64px !important;
    padding-bottom:64px !important;
  }
}

@media (max-width:767px){
  .contacts-main > section:not(.contacts-hero){
    padding-top:35px !important;
    padding-bottom:35px !important;
  }
}


.contacts-hero{
  padding-top:clamp(52px,4.8vw,84px) !important;
  padding-bottom:clamp(52px,5vw,76px) !important;
}

.contacts-hero__email{
  position:relative !important;
  overflow:visible !important;
}

.contacts-email-copy span{
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:calc(100% + 10px) !important;
  transform:translate(-50%,4px) !important;
  padding:9px 12px !important;
  border-radius:999px !important;
  background:#111113 !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  box-shadow:0 14px 32px rgba(0,0,0,.18) !important;
  z-index:20 !important;
}

.contacts-email-copy.is-copied span{
  opacity:1 !important;
  visibility:visible !important;
  transform:translate(-50%,0) !important;
}

.contacts-info-grid--clean .contacts-info-card{
  justify-content:flex-start !important;
}

.contacts-info-grid--clean .contacts-info-card span{
  margin-bottom:36px !important;
}

.contacts-info-email-row{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  max-width:100%;
}

.contacts-info-card--dark .contacts-info-email,
.contacts-info-grid--clean .contacts-info-card--dark .contacts-info-email{
  display:block;
  min-width:0;
  margin:0 !important;
  color:#fff;
  font-size:clamp(1.35rem,1.55vw,1.85rem) !important;
  line-height:1.08 !important;
  letter-spacing:.02em !important;
  font-weight:950 !important;
  overflow-wrap:anywhere;
  word-break:normal;
}

.contacts-info-copy{
  flex:0 0 44px;
  width:44px;
  height:44px;
  margin:0 !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
}

.contacts-info-copy:hover,
.contacts-info-copy.is-copied{
  background:var(--red) !important;
  color:#fff !important;
}

.contacts-info-card--dark p{
  margin-top:22px !important;
}

.contacts-info-card__link{
  min-height:48px !important;
  margin-top:auto !important;
  padding:0 22px !important;
  border-color:var(--red) !important;
  background:var(--red) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:950 !important;
}

.contacts-info-card__link:hover{
  background:#111113 !important;
  border-color:#111113 !important;
  color:#fff !important;
}

@media (max-width:1100px){
  .contacts-hero{
    padding-top:clamp(44px,5vw,64px) !important;
    padding-bottom:64px !important;
  }
}

@media (max-width:767px){
  .contacts-hero{
    padding-top:35px !important;
    padding-bottom:42px !important;
  }

  .contacts-email-copy span{
    left:auto !important;
    right:0 !important;
    transform:translateY(4px) !important;
  }

  .contacts-email-copy.is-copied span{
    transform:translateY(0) !important;
  }

  .contacts-info-grid--clean .contacts-info-card span{
    margin-bottom:28px !important;
  }

  .contacts-info-email-row{
    align-items:flex-start;
  }

  .contacts-info-card--dark .contacts-info-email,
  .contacts-info-grid--clean .contacts-info-card--dark .contacts-info-email{
    font-size:clamp(1.25rem,7.2vw,1.75rem) !important;
  }
}


.contacts-hero__email .contacts-hero__link{
  font-size:clamp(.98rem,1.02vw,1.08rem) !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
}

.contacts-email-copy{
  width:50px !important;
  height:50px !important;
  margin-right:4px !important;
  border:1px solid rgba(19,19,18,.18) !important;
  background:#ffffff !important;
  color:#111113 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
}

.contacts-email-copy svg{
  width:20px !important;
  height:20px !important;
}

.contacts-email-copy span{
  display:none !important;
}

.contacts-copy-toast{
  position:fixed;
  left:50%;
  bottom:28px;
  padding:12px 16px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:#111113;
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:900;
  letter-spacing:.02em;
  box-shadow:0 16px 40px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,16px);
  transition:opacity .2s ease,visibility .2s ease,transform .2s ease;
  z-index:1200;
  pointer-events:none;
}

.contacts-copy-toast.is-visible{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.contacts-info-grid--clean .contacts-info-card{
  overflow:visible !important;
}

.contacts-info-email-row{
  align-items:center !important;
  gap:14px !important;
  flex-wrap:nowrap !important;
}

.contacts-info-card--dark .contacts-info-email,
.contacts-info-grid--clean .contacts-info-card--dark .contacts-info-email{
  flex:1 1 auto;
  font-size:clamp(1rem,1.02vw,1.28rem) !important;
  line-height:1.16 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.contacts-info-copy{
  flex:0 0 50px !important;
  width:50px !important;
  height:50px !important;
  border:1px solid rgba(255,255,255,.88) !important;
  background:rgba(255,255,255,.06) !important;
  color:#ffffff !important;
  box-shadow:0 12px 28px rgba(0,0,0,.2) !important;
}

.contacts-info-card--dark p{
  margin-top:20px !important;
}

.contacts-info-card__link{
  margin-top:32px !important;
  min-height:50px !important;
  padding:0 24px !important;
  box-shadow:none !important;
}

.contacts-info-card__link:hover{
  color:#fff !important;
}

@media (max-width:1100px){
  .contacts-info-card--dark .contacts-info-email,
  .contacts-info-grid--clean .contacts-info-card--dark .contacts-info-email{
    font-size:clamp(.94rem,1.55vw,1.12rem) !important;
  }
}

@media (max-width:767px){
  .contacts-email-copy,
  .contacts-info-copy{
    width:46px !important;
    height:46px !important;
    flex-basis:46px !important;
  }

  .contacts-copy-toast{
    bottom:20px;
    padding:10px 14px;
    font-size:12px;
  }

  .contacts-info-card__link{
    margin-top:28px !important;
  }

  .contacts-info-card--dark .contacts-info-email,
  .contacts-info-grid--clean .contacts-info-card--dark .contacts-info-email{
    font-size:clamp(.92rem,4vw,1.05rem) !important;
  }
}


.contacts-email-copy,
.contacts-info-copy{
  transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease !important;
}

.contacts-email-copy:hover,
.contacts-email-copy:focus-visible{
  background:var(--red) !important;
  color:#fff !important;
  border-color:var(--red) !important;
  box-shadow:0 14px 28px rgba(219,37,16,.26) !important;
  transform:translateY(-1px);
}

.contacts-email-copy:hover svg,
.contacts-email-copy:focus-visible svg,
.contacts-info-copy:hover svg,
.contacts-info-copy:focus-visible svg{
  color:inherit !important;
}

.contacts-info-grid--clean .contacts-info-card__link,
.contacts-info-card__link{
  margin-top:30px !important;
}

.contacts-info-card__link.btn-primary,
.contacts-info-grid--clean .contacts-info-card__link.btn-primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
}

.contacts-info-card__link.btn-primary:hover,
.contacts-info-card__link.btn-primary:focus-visible,
.contacts-info-grid--clean .contacts-info-card__link.btn-primary:hover,
.contacts-info-grid--clean .contacts-info-card__link.btn-primary:focus-visible{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
  box-shadow:0 14px 34px rgba(0,0,0,.12) !important;
}

@media (max-width:767px){
  .contacts-info-grid--clean .contacts-info-card__link,
  .contacts-info-card__link{
    margin-top:26px !important;
  }
}

.contacts-form-section{
  padding:64px 0 !important;
  background:#f3f3f4 !important;
}

.contacts-form-section .container{
  max-width:1780px !important;
}

.contacts-form-shell{
  display:grid !important;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.08fr) !important;
  gap:26px !important;
  align-items:stretch !important;
}

.contacts-form-copy{
  min-height:460px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:24px !important;
  padding:clamp(26px,2.1vw,34px) !important;
  border-radius:30px !important;
  background:#111113 !important;
}

.contacts-form-copy__text{
  display:block !important;
  max-width:560px !important;
}

.contacts-form-copy .section-kicker{
  margin:0 0 16px !important;
  color:#fff !important;
}

.contacts-form-copy .contacts-section-title{
  max-width:480px !important;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(2.8rem,3.9vw,3.9rem) !important;
  line-height:.94 !important;
  letter-spacing:.02em !important;
}

.contacts-form-copy p:not(.section-kicker),
.contacts-form-badges{
  display:none !important;
}

.contacts-form-visual{
  width:100% !important;
  min-height:188px !important;
  margin-top:0 !important;
  padding:0 !important;
  display:block !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:22px !important;
  background:#0f0f12 !important;
}

.contacts-form-visual strong{
  margin:0 0 10px !important;
  color:var(--red) !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.contacts-form-visual span{
  max-width:520px !important;
  color:#fff !important;
  font-size:clamp(1rem,1vw,1.16rem) !important;
  line-height:1.35 !important;
  font-weight:900 !important;
}

.contacts-form-visual strong,
.contacts-form-visual span{
  display:none !important;
}

.contacts-form-visual__img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:188px !important;
  object-fit:cover !important;
  object-position:center center !important;
}

.contacts-page-form{
  min-height:460px !important;
  padding:34px !important;
  border-radius:30px !important;
  background:#fff !important;
  border:1px solid rgba(19,19,18,.1) !important;
}

.contacts-page-form__grid{
  gap:14px !important;
}

.contacts-page-form input{
  min-height:62px !important;
}

.contacts-page-form textarea{
  min-height:180px !important;
}

.contacts-page-form__bottom{
  margin-top:22px !important;
  gap:24px !important;
}

@media (max-width:1100px){
  .contacts-form-section{
    padding:52px 0 !important;
  }

  .contacts-form-shell{
    grid-template-columns:1fr !important;
  }

  .contacts-form-copy,
  .contacts-page-form{
    min-height:auto !important;
  }

  .contacts-form-copy{
    padding:28px !important;
  }

  .contacts-page-form{
    padding:28px !important;
  }

  .contacts-form-visual{
    min-height:160px !important;
  }
}

@media (max-width:767px){
  .contacts-form-section{
    padding:35px 0 !important;
  }

  .contacts-form-copy,
  .contacts-page-form{
    border-radius:22px !important;
    padding:24px !important;
  }

  .contacts-form-copy{
    gap:18px !important;
  }

  .contacts-form-copy .contacts-section-title{
    max-width:300px !important;
    font-size:clamp(2.35rem,11vw,3.3rem) !important;
  }

  .contacts-form-visual{
    min-height:132px !important;
    margin-top:0 !important;
  }

  .contacts-page-form__grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .contacts-page-form input{
    min-height:56px !important;
  }

  .contacts-page-form textarea{
    min-height:150px !important;
  }

  .contacts-page-form__bottom{
    display:grid !important;
    gap:16px !important;
    margin-top:18px !important;
  }

  .contacts-page-form__bottom .btn-primary{
    width:100% !important;
  }
}

.contact-page .contacts-title{
  font-size:clamp(2.35rem,5.5vw,5.7rem) !important;
  line-height:1 !important;
  letter-spacing:-.03em !important;
  max-width:1280px !important;
}

@media (min-width:768px) and (max-width:1100px){
  .contact-page .contacts-title{
    font-size:clamp(2.55rem,6.2vw,5.1rem) !important;
  }
}

@media (max-width:767px){
  .contact-page .contacts-title{
    font-size:clamp(2.55rem,13vw,4.2rem) !important;
  }
}


/* v61 contacts hero image size aligned with about page */
.contacts-hero__grid{
  align-items:start !important;
  gap:clamp(24px,4vw,56px) !important;
}

.contacts-hero__panel--image{
  justify-self:start !important;
  align-self:start !important;
  width:100% !important;
  max-width:430px !important;
}

.contacts-hero__panel--image img{
  display:block !important;
  width:min(100%,clamp(320px,30vw,430px)) !important;
  max-width:430px !important;
  margin:0 !important;
  height:auto !important;
}

@media (min-width:1101px){
  .contacts-hero__grid{
    grid-template-columns:minmax(0,1.04fr) minmax(300px,.62fr) !important;
  }
}

@media (min-width:768px) and (max-width:1100px){
  .contacts-hero__grid{
    grid-template-columns:minmax(0,1fr) minmax(260px,.52fr) !important;
    gap:clamp(20px,3vw,36px) !important;
  }

  .contacts-hero__panel--image{
    max-width:380px !important;
  }

  .contacts-hero__panel--image img{
    width:min(100%,clamp(290px,34vw,380px)) !important;
    max-width:380px !important;
    border-radius:26px !important;
  }
}

@media (max-width:767px){
  .contacts-hero__grid{
    gap:22px !important;
  }

  .contacts-hero__panel--image{
    max-width:330px !important;
    margin:0 auto !important;
  }

  .contacts-hero__panel--image img{
    width:100% !important;
    max-width:330px !important;
    border-radius:24px !important;
  }
}
