/* Get in Touch */
.form_map_section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 75px;
}

.form_map_section .contact_container {
    margin-left: 50px;
    margin-right: 15px;
    width: calc(40% - 65px);
}

.form_map_section h4{
    color: var(--Primary-Colours-Slate-Gray-500, #323E48);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1px;
    margin-left: 56px;
}

.form_map_section h2 {
    display: block;
    color: var(--Primary-Colours-Slate-Gray-500, #323E48);
    font-family: "IBM Plex Sans";
    font-size: 72px;
    font-style: normal;
    font-weight: 500;
    line-height: 76px;
    letter-spacing: -1.44px;
    margin-top: 10px;
    margin-bottom: 50px;
    margin-left: 56px;
}

.form_map_section h2 strong{
    font-weight: 700;
}

.form_map_section h3{
    color: var(--Primary-Colours-Slate-Gray-500, #323E48);
    font-family: "IBM Plex Sans";
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 38px;
    margin-top: 0;
}

.form_map_section .form_container {
    background: var(--Base-White, #FFF);
    box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.08);
    padding: 56px 64px;
    border-radius: 8px;
}

.form_map_section .map{
    width: 40%;
}

.form_map_section .map {
    width: 60%;
}

.form_map_section .map img {
    width: 100%;
    object-fit: cover;
}

/* Contact Form 7 */
.form_row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}

.form_row .form_column{
    width: calc(50% - 16px); 
}

.form_row p{
    display: flex;
    flex-direction: column;
    width: 100%;
}

.form_row p label{
    color: var(--Primary-Colours-Slate-Gray-600, #21282F);
    font-family: "IBM Plex Sans Medium";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 28px;
    margin-bottom: 8px;
}

.form_row p input {
    width: calc(100% - 34px);
    background: var(--Base-White, #FFF);
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    padding: 16px;
    border: 1px solid var(--Primary-Colours-Slate-Gray-200, #B7BBBF);
    border-radius: 4px;
}

.form_row p input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.form_row p input::-moz-placeholder { /* Firefox 19+ */
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.form_row p input:-ms-input-placeholder { /* IE 10+ */
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.form_row p input:-moz-placeholder { /* Firefox 18- */
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.form_row .country_code p{
    flex-direction: row;
}

.form_row .country_code .country-select input{
    display: none;
}

.form_row .country_code .country-select .selected-flag {
    top: 31px;
}

.form_row .country_code p input {
    width: calc(100% - 66px);
    padding-left: 50px;
}

.form_row .country_code p .country{
    color: var(--Primary-Colours-Slate-Gray-400, #656E76);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.form_row .wpcf7-form-control-wrap {
    display: flex;
    flex-direction: column;
}

.form_row textarea{
    width: calc(100% - 32px);
    height: 130px;
    color: var(--grey, #686C72);
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    padding: 16px;
}

.form_row.checkbox{
    margin-bottom: 16px;
}

.form_row p .wpcf7-list-item{
    margin: 0;
}

.form_row p .wpcf7-list-item input {
    width: 32px;
    height: 32px;
    margin-right: 16px;
    margin-bottom: 0;
}

.form_row p .wpcf7-list-item label {
    display: flex;
    align-items: center;
    flex-direction: row;
    color: var(--grey, #676767);
    font-family: "IBM Plex Sans";
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    margin-bottom: 0;
}

.form_row.privacy p{
    flex-direction: row;
}

.form_row.privacy p .wpcf7-list-item .wpcf7-list-item-label{
    visibility: hidden;
    position: absolute;
}

.wpcf7-form-control.wpcf7-checkbox{
    display: flex;
    align-items: center;
}

.form_row.privacy .agree{
    display: flex;
    align-items: center;
    color: var(--grey, #676767);
    font-family: "IBM Plex Sans";
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
}

.form_row.privacy .agree a{
     color: var(--grey, #676767);
}

.form_row p .wpcf7-list-item input:hover,
.form_row p .wpcf7-list-item label:hover{
    cursor: pointer;
}

.wpcf7-submit{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    background: linear-gradient(94deg, #FF9461 17.37%, #FF7533 90.35%);
    color: var(--Primary-Colours-Deep-Purple-600, #35222E);
    font-family: "IBM Plex Sans Medium";
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px; 
    padding: 16px 40px;
    border: 0 none;
    border-radius: 30px;
}

.wpcf7-submit:hover{
    cursor: pointer;
    background: #000;
    color: #fff;
}

.wpcf7-not-valid-tip {
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    margin-bottom: 0;
}

.wpcf7-form.invalid .form_row.privacy p {
    flex-direction: column;
}

.wpcf7 .wpcf7-response-output {
    font-family: "IBM Plex Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    margin-bottom: 0;
}


/* Οffices */
.matrix_offices{
    background-image: url('/wp-content/themes/matrixinternet2023/images/offices-bg.webp');
    background-size: auto;
    background-repeat: no-repeat;
    background-position: 0% 66%;
}

.matrix_offices .office_item {
    max-width: 90%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    margin-bottom: 10%;
}

.office_item:nth-child(2n+2){
  flex-direction: row-reverse;
}

.matrix_offices .office_item:last-child{
    margin-bottom: 0;
}

.office_item_text {
    padding: 10%;
}

.office_item_text h3 {
    display: flex;
    align-items: center;
    color: var(--Primary-Colours-Slate-Gray-600, #21282F);
    font-family: "IBM Plex Sans Medium";
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 4.8px;
    text-transform: uppercase;
}

.office_item_text h3 img{
    margin-right: 16px;
}

.office_item_text p{
  max-width: 300px;
  color: var(--Primary-Colours-Slate-Gray-400, #656E76);
  font-family: "IBM Plex Sans";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px; 
}

.office_item_text a{
  display: flex;
  align-items: center;
  color: var(--Primary-Colours-Slate-Gray-600, #21282F);
  font-family: "IBM Plex Sans";
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 28px;
  text-decoration: none;
  margin: 24px 0;
}

.office_item_text a img{
  margin-right: 12px;
}
  
@media only screen and (max-width: 1480px) {

    .office_item {
      margin-bottom: 5%;
    }
    
    .office_item_column{
      width: 50%;
    }

    .office_item_column img{
      max-width: 100%;
    }

    .office_item_text{
      padding: 5%;
      max-width: 40%;
    }

    .form_map_section .contact_container {
        width: calc(50% - 50px);
    }

    .form_map_section .map {
        width: 50%;
    }


}

@media only screen and (max-width: 1080px) {

    .form_map_section {
      flex-direction: column-reverse;
      margin-bottom: 0px;
    }

    .form_map_section .contact_container {
        width: 100%;
        max-width: 90%;
        padding: 5%;
        margin: 0;
    }

    .form_map_section .map {
        width: 100%;
        margin-bottom: 50px;
    }

    .form_map_section .map img {
        object-position: left;
        height: 400px;
    }

}


@media only screen and (max-width: 828px) {

     .matrix_offices{
        margin-top: 35px;
      }


    .office_item,
    .office_item:nth-child(2n+2) {
          flex-direction: column-reverse;
      }
    
    .office_item_column {
      width: 100%;
    }

    .office_item_text {
        width: 100%;
        max-width: 90%;
    }

    .office_item_text p{
      margin-left: 0;
    }

}

@media only screen and (max-width: 767px) {

    header{
        box-shadow: 0px 4px 24px 0px rgba(33, 40, 47, 0.05);
    }

    .form_map_section .contact_container {
        margin-top: -80%;
    }

    .form_map_section h2{
        margin-left: 24px;
        margin-bottom: 50%;
    }

    .form_map_section h4{
        margin-left: 24px;
        margin-bottom: 24px;
        margin-bottom: 12px;
    }
    
    .form_map_section .form_container {
        padding: 24px;
    }

    .form_map_section .map{
        margin-bottom: 0;
    }

    .form_row {
        flex-direction: column;
    }

    .form_row .form_column {
        width: calc(100% - 0px);
    }

    .form_row .country_code p input {
        width: calc(100% - 64px);
    }

    .office_item_column {
      width: 100%;
    }

    .office_item_text {
      padding: 5%;
      padding-left: 0;
      max-width: 90%;
    }

    .office_item_text p {
      margin-left: 0;
    }

    .office_item_text a {
      margin: 0;
      margin-top: 24px;
    }

}

@media only screen and (max-width: 668px) {

    .form_row.privacy .agree {
        flex-direction: column;
        align-items: flex-start;
    }

    .form_row p .wpcf7-list-item input{
        position: absolute;
        top: 0px;
        left: 0;
    }

    .form_row p .wpcf7-list-item label{
        margin-left: 50px;
    }

}