/* ==========================================================================
   Contacts page — template-contactos.php
   ========================================================================== */


.page-contacts{
   position: relative;
   padding: 242px 0 160px;
}

@media (max-width: 991px) {
   .page-contacts{
      padding: 124px 0 80px;
   }
}

.contacts-hero{
   position: fixed;
   height: 100dvh;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 0;
}

.contacts-hero__img{
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.contect-hero-title{
   position: relative;
   z-index: 1;
}

.contect-hero-title h1{
   color: #141414;
   font-style: italic;
   font-family: 'Canela Deck', sans-serif;
   opacity: 0.6
}

.contacts-form{
   position: relative;
   z-index: 1;
   margin: 120px 0 0;
}

@media (max-width: 991px) {
   .contacts-form{
      margin: 80px 0 0;
   }
}

@media (max-width: 991px) {
   .col-form-button{
      text-align: center;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 24px;
      margin-top: 24px;
   }

   .wpcf7-spinner{
      margin: 0;
   }
}

.contacts-form__inner{
   padding: 50px 111px;
   position: relative;
   isolation: isolate;
   overflow: hidden;
   background-color: #8E9166;
   border-top-left-radius: 45px;;
   border-top-right-radius: 45px;
}

@media (max-width: 991px) {
   .contacts-form__inner{
      padding: 65px 20px;
   }
}

.contacts-form__inner--has-bg::before{
   content: "";
   position: absolute;
   inset: 0;
   border-top-left-radius: inherit;
   border-top-right-radius: inherit;
   background-image: var(--ctc-form-bg-image);
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   opacity: var(--ctc-form-bg-opacity, 0.25);
   z-index: 0;
   pointer-events: none;
}

.contacts-form__inner--has-bg > *{
   position: relative;
   z-index: 1;
}

.contacts-form__title{
   position: relative;
   margin-bottom: 30px;
   padding: 19px 32px 0;
   color: #FFFFFF;
}

@media (max-width: 991px) {
   .contacts-form__title{
      margin-bottom: 53px;
   }
}

.contacts-form__title::before{
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 1px;
   height: 100%;
   background-color: #FFFFFF;
}

@media (max-width: 991px) {
   .contacts-form__title::before{
      display: none;
   }
}

.contacts-blocks{
   position: relative;
   z-index: 1;
}

.contacts-block{
   position: relative;
   isolation: isolate;
   overflow: hidden;
   padding: 120px 0;
   margin-bottom: 100px;
}

@media (max-width: 991px) {
   .contacts-block{
      padding: 62px 0;
      margin-bottom: 20px;
   }
}

.contacts-block--has-bg::before{
   content: "";
   position: absolute;
   inset: 0;
   background-image: var(--ctc-block-bg-image);
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   opacity: var(--ctc-block-bg-opacity, 0.25);
   z-index: 0;
   pointer-events: none;
}

.contacts-block--has-bg > .container{
   position: relative;
   z-index: 1;
}

.form-row-main{
   position: relative;
}

.form-row-main p{
   margin-bottom: 0;
}

.form-row-main .wpcf7-text, .form-row-main optgroup, .form-row-main select{
   border: 1px solid transparent;
   border-radius: 40px;
   padding: 10px 32px;
   font-size: 14px;
   line-height: 1.4;
   font-weight: 500;
   font-style: italic;
   font-family: 'Satoshi', sans-serif;
   width: 100%;
   margin-bottom: 32px;
   box-shadow: 0px 2px 8px 0px #00000040 inset;
}

.form-row-main textarea{
   border: 1px solid transparent;
   border-radius: 30px;
   padding: 10px 32px;
   font-size: 14px;
   line-height: 1.4;
   font-weight: 500;
   font-style: italic;
   font-family: 'Satoshi', sans-serif;
   width: 100%;
   box-shadow: 0px 2px 8px 0px #00000040 inset;
}

.form-row-main .wpcf7-submit{
   background: conic-gradient(from 11.66deg at 21.83% -13.54%, #4D4D4D 0deg, #474747 14.4deg, #303030 86.4deg, #202020 162deg, #171717 248.4deg, #141414 360deg);
    color: white;
    border: 1px solid #fff;
    border-radius: 40px;
    padding: 15px 50px;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
    font-style: normal;
    font-family: 'Canela Deck', sans-serif;
    margin-bottom: 0;

}

.form-row-main .wpcf7-form-control-wrap{
   margin-bottom: 32px;
}

.form-row-main ::placeholder{
   font-family: 'Satoshi', sans-serif;
   font-weight: 500;
}

.form-row-main .wpcf7-list-item{
   margin: 0;
}

.wpcf7-list-item-label{
   color: #FFFFFF;
}

.form-row-main .col-form-button .wpcf7-form-control-wrap{
   margin-bottom: 0;
}
   

.contacts-block--dark{
   background: radial-gradient(91.04% 153.61% at 91.04% 124.32%, #4D4D4D 0%, #474747 4%, #303030 24%, #202020 45%, #171717 69%, #141414 100%);
}

.contacts-block--terracotta{
   background: #AD644E;
}

.contacts-block--sand{
   background: #916B4F;
   padding: 44px 0 120px;
}

.contacts-block__section-label{
   font-family: 'Canela Deck', sans-serif;
   font-weight: 400;
   font-style: normal;
   font-size: 28px;
   line-height: 1.2;
   position: relative;
    margin-bottom: 30px;
    padding: 19px 32px 0;
    color: #FFFFFF;
    text-transform: uppercase;
}

@media (max-width: 991px) {
   .contacts-block__section-label{
      font-size: 20px;
      padding: 19px 16px 0;
   }
}

.contacts-block__section-label::before{
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 1px;
   height: 100%;
   background-color: #FFFFFF;
}

.contacts-block__col-item, .contacts-block__col-item a{
   color: #FFFFFF;
   font-family: 'Satoshi', sans-serif;
   font-weight: 500;
   font-style: normal;
   font-size: 15px;
   line-height: 1.4;
   text-decoration: none;
   margin-bottom: 0;
   max-width: 420px;
   margin: 0 auto;
}

@media (max-width: 991px) {
   .contacts-block__col-item, .contacts-block__col-item a{
      max-width: 290px;
   }
}

.contacts-block__left .contacts-block__logo{
   max-width: 196px;
   max-height: 66px;
   margin: 0 auto 24px;
   filter: brightness(0) invert(1);
}

.contacts-block__left{
   position: relative;
   padding: 34px;
   border-right: 0.5px solid #FFFFFF;
}

@media (max-width: 991px) {
   .contacts-block__left{
      border-right: 0;
      border-bottom: 0.5px solid #FFFFFF;
   }
}


.contacts-block__col{
   position: relative;
   display: flex;
   flex-direction: column;
   gap: 48px;
}

@media (max-width: 991px) {
   .contacts-block__col{
      padding-top: 48px;
      gap: 36px;
   }
}


.contacts-block__socials{
   list-style: none;
   padding: 28px 0 0;
   margin: 0 auto;
   max-width: 22rem;
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   column-gap: 40px;
   row-gap: 32px;
   align-items: center;
   justify-items: center;
   text-align: center;
}

.contacts-block__social-item{
   margin: 0;
   width: 100%;
}

.contacts-block__social-link{
   display: inline-block;
   color: #FFFFFF;
   font-family: 'Canela Deck', sans-serif;
   font-weight: 400;
   font-style: normal;
   font-size: 15px;
   line-height: 1.35;
   letter-spacing: 0.08em;
   text-decoration: none;
   text-transform: uppercase;
   transition: opacity 0.2s ease;
}

@media (max-width: 991px) {
   .contacts-block__social-link{
      font-size: 10px;
   }
}

.contacts-block__social-link:hover,
.contacts-block__social-link:focus-visible{
   opacity: 0.82;
}

.contacts-block__col-label{
   font-family: 'Canela Deck', sans-serif;
   font-weight: 500;
   font-style: italic;
   font-size: 32px;
   line-height: 1.2;
   position: relative;
   margin-bottom: 30px;
   padding: 19px 32px 0;
   color: #FFFFFF;
}

@media (max-width: 991px) {
   .contacts-block__col-label{
      font-size: 20px;
   }
}

.contacts-block__col--split-layout .contacts-block__col-heading{
   width: 100%;
   color: #FFFFFF;
   font-family: 'Satoshi', sans-serif;
   font-weight: 500;
   font-style: normal;
   font-size: 15px;
   line-height: 1.4;
   text-transform: uppercase;
   margin-bottom: 0;
}

.contacts-block__col--split-layout .contacts-block__col-label{
   margin-bottom: 0;
   padding: 0;
}

.contacts-block__col-split{
   display: flex;
   flex-direction: row;
   align-items: center;
   width: 100%;
   text-align: left;
}

@media (max-width: 991px) {
   .contacts-block__col-split{
      flex-direction: column;
   }
}

.contacts-block__col-split-label{
   flex: 0 1 45%;
   min-width: 0;
   padding: 72px 28px 72px 0;
   text-align: right;
   border-right: 0.5px solid #FFFFFF;
}

@media (max-width: 991px) {
   .contacts-block__col-split-label{
      padding: 0 0 44px;
      border-right: 0;
      border-bottom: 0.5px solid #FFFFFF;
      width: 100%;
      text-align: center
   }
}

.contacts-block__col-split-main{
   flex: 1 1 55%;
   min-width: 0;
   padding-left: 28px;
   display: flex;
   flex-direction: column;
   gap: 56px;
}

@media screen and (max-width: 991px) {
   .contacts-block__col-split-main{
      padding-left: 0;
      gap: 36px;
      margin-top: 48px;

   }
}

