

.contact-section{ position: relative; clear: both; width: 100%; z-index: 1; background-color: var(--light-txt); min-height: 741px;}
.contact-main { padding: 212px 0 0; height: 100%; align-items: stretch; min-height: 741px; }
.contact-left{width: 50%;}
.contact-right{width: 50%; padding-left: 58px; position: relative;}
.contact-left h1{font-size: 2rem; line-height: 1.2; max-width: 392px; margin-bottom: 16px;}
.contact-left h1 span{position: relative; display: inline-block;}
.contact-left h1 span::before{position: absolute; display: block; width: 145px; height: 9px; right: 17px; bottom: -5px; content: "";}
.contact-left p{font-size: 1rem; line-height: 1.38; color: var(--text-color); font-weight: 600; font-family: 'Outfit';}
.contact-text span.optional-text{margin: 0 0 14px 0;}
.contact-address{margin-top: 50px;}
.contact-info { display: flex; position: relative; align-items: center; flex-wrap: wrap; margin-bottom: 45px;}
.contact-info span{position: relative; font-size: 16px; display: inline-block; text-align: center; line-height: 40px; transition: all 0.3s ease-in-out; -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; top: -1px; margin-right: 24px; width: 40px; color: var( --heading); z-index: 1;}
.contact-info span::after{ content: ""; background: var(--yellow); width: 40px; height: 40px; display: block; border-radius: 50%; position: absolute; z-index: -1; left: 0; top: 0; }
.contact-info .text a{font-size: 1.25rem; line-height: 24px; font-weight: 900; font-family: 'Satoshi', sans-serif;}
.contact-info .text p{line-height: 1.7; font-size: 1.125rem; font-weight: normal;}
.contact-info:nth-child(1) span{transform: rotate(45deg);}
.contact-info:nth-child(1){margin-bottom: 24px;}
.contact-map{z-index: -1; display: block; width: 852px; height: 741px; bottom: 0; right: 0;}
.contact-right:after{position: absolute; content: ""; left:0; top: -212px;  background-image: linear-gradient(to top, #fff, #f5f5f5), linear-gradient(to bottom, #fff, #fff); width: 1000vw; height: 100%; min-height: 742px; z-index: -1;}
.contact-stripline {  content: ""; display: block; width: 100%; height: 6px; max-width: 1090px; margin: 0 auto; position: absolute; bottom: 0; left: 0; right: 0;}
.contact-stripline span{height: 100%; display: block; background-color: var(--outline-btn); margin-left: auto;}
.contact-left.no_form{width: 100%;}
.contact-left.no_form h1{max-width: 100%;}
.contact-left.no_form .contact-map{width: 100%;}

.contact-module{position: relative; clear: both; width: 100%; z-index: 1; background: var(--light-txt);}
.contact-wrap{padding: 80px 0 86px;}
.contact-row{align-items: center; margin-bottom: 13px;}
.contact-icon img{width: 64px; height: 64px;}
.contact-car-img{top: -58px; left: 50%; transform: translateX(-50%); max-width: 468px; }
.contact-cont h2{font-size: 1.5rem; line-height: 1.17; position: relative;}
.contact-cont h2 span{display: inline-block; position: relative;}
.contact-cont h2 span::before{position: absolute; content: ""; display: block; right: -3px; bottom: -5px; width: 107px; height: 7px; background-image: url("../images/short-line.svg"); animation: lineanimation 2s infinite alternate;}
.contact-list p{margin-bottom: 16px;}
.contact-list:nth-child(even) .contact-cont h2 span:before{right: 0px;}

.contact-list .button{min-width: 128px; font-weight: 600;}

@media only screen and (min-width: 1024px) {
    .contact-left h1 span:before{ background-image: url("../images/heading-line.svg"); animation: lineanimation 2s infinite alternate;}
    .contact-intro-main{gap: 406px; justify-content: space-between;}
    .contact-list{flex: 0 0 50%; max-width: 342px;}
    .contact-row{gap: 16px; }
    .contact-icon{flex: 0 0 64px;}
    .contact-cont{flex: 0 0 calc(100% - 80px)}
    .contact-right{ padding-top: 15px;}
    .contact-cont h2{margin-bottom: 0;}
}


@media only screen and (max-width: 1199px) and (min-width:1024px){
    .contact-right{padding-left: 20px;}
    .contact-intro-main { gap: 300px; }
    .contact-list:nth-child(even){margin-left: auto;}
    .contact-info:nth-child(odd){margin-right: auto;}
    .contact-stripline{width: calc(100% - 40px);}
}

@media only screen and (max-width: 1023px) and (min-width:768px){
    .contact-main{display: block; padding: 150px 0 0;}
    .contact-stripline{width: calc(100% - 40px);}
    .contact-left{width: 100%; margin-bottom: 40px;}
    .contact-left h1 span:before{ background-image: url("../images/heading-line.svg"); animation: lineanimation 2s infinite alternate;}

    .contact-right::after {left: -20px; top:0;}
    .contact-right{width: 100%; padding-left: 0; padding-bottom: 40px;}

    .contact-row{gap: 20px; }
    .contact-list{margin-bottom: 100px;}
    .contact-list:last-child{margin-bottom: 0;}
    .contact-car-img {top: -108px; left: inherit; transform: translateX(-50%); max-width: 340px; rotate: -90deg; right: -55px; }
}

@media only screen and (max-width: 767px) and (min-width:200px){
    .contact-main{display: block; padding: 120px 0 46px;}
    .contact-stripline{width: calc(100% - 32px);}
    .contact-left{width: 100%; margin-bottom: 40px;}
    .contact-text span.optional-text { margin: 0 0 16px 0; }
    .contact-left h1{font-size: 1.75rem; margin-bottom: 18px; line-height: 1.43;}
    .contact-left h1 span::before{background-image: url("../images/short-line.svg"); width: 107px; height: 7px; right: 21px; animation: lineanimation 2s infinite alternate;}

    .contact-map { width: 446px; height: 590px; right: -52px; bottom: -39px; }
    .contact-right::after {left: -20px; top:0;}
    .contact-right{width: 100%; padding: 40px  0; padding-bottom: 40px;}
    .contact-right::before{background: var(--outline-btn); content: ""; display: block; width: 100%; height: 6px; max-width: 1090px; margin: 0 auto; position: absolute; top: 0; left: 0; right: 0;}

    .contact-wrap{padding: 40px 0;}
    .contact-row{gap: 16px;}
    .contact-cont h2{font-size: 1.125rem; margin-bottom: 0;}
    .contact-icon img{width: 48px; height: 48px;}
    .contact-list{margin-bottom: 65px; min-height: 200px;}
    .contact-list:last-child{margin-bottom: 0;}
    .contact-car-img { top: 172px; right: -34px; left: auto; transform: rotate(-90deg); max-width: 195px; max-height: 195px; }
    .frm_forms.frm_style_formidable-style.with_frm_style .frm_form_fields .frm_fields_container .frm_wrapper { margin-top: 10px; display: block; }
    .frm_button_submit.frm_final_submit.button{width: 100%!important; min-width: inherit!important; margin-top: 78px!important;}
    .frm_forms.frm_style_formidable-style.with_frm_style .frm_form_fields .frm_fields_container .frm_wrapper .info-wrap.flex { width: 100%;}
    .contact-cont h2 span::before {right: -11px; bottom: -10px;}
}