@import url('https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600&display=swap');
body {
    color: rgb(112, 112, 112);
    font-family: 'Kanit', sans-serif;
}

.btn-w {
    background-color: white;
    color: rgb(0, 177, 136);
    border-radius: 0px;
}

.btn-header {
    background-color: rgb(0, 177, 136);
    color: white;
    border-radius: 0px;
    border: 1px solid rgb(0, 177, 136);
}

.btn-header a {
    color: white;
    text-decoration: none;
}

.btn-header:hover {
    background-color: white;
    color: rgb(0, 177, 136);
    border-radius: 0px;
    border: 1px solid rgb(0, 177, 136);
}

.btn-header:hover a {
    color: rgb(0, 177, 136);
}

.btn-w-header {
    background-color: white;
    color: rgb(0, 177, 136);
    border-radius: 0px;
    border: 1px solid rgb(0, 177, 136);
}

.btn-w-header:hover {
    background-color: rgb(0, 177, 136);
    color: white;
    border-radius: 0px;
}

.btn-w:hover {
    background-color: rgb(0, 177, 136);
    color: white;
    border-radius: 0px;
    border: 1px solid rgb(0, 177, 136);
}

.btn-info-footer {
    background-color: rgb(0, 177, 136);
    color: white;
    border-radius: 0px;
    border: 1px solid white;
}

.btn-info-footer:hover {
    background-color: white;
    color: rgb(0, 177, 136);
    border-radius: 0px;
    border: 1px solid rgb(0, 177, 136);
}

ul>li {
    color: rgb(0, 177, 136);
}

ul>li>span {
    color: rgb(112, 112, 112);
}

.background-dark {
    background-color: rgb(38, 48, 59);
    width: 100%;
}

.background-light {
    background-color: rgb(213, 216, 217);
    width: 100%;
}

.separator-90 {
    position: absolute;
    width: 90%;
    height: 0px;
    background-color: rgb(0, 177, 136);
    border: 2px solid rgb(0, 177, 136);
    border-radius: 4px;
    margin-top: -2px;
    margin-left: 5%;
}

.banner-text {
    width: 40%;
    padding-top: 2%;
    padding-left: 3%;
    position: relative;
    z-index: 10;
}


/*
.banner-text:before {
    content: "";
    position: absolute;
    border-left: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    width: 100%;
    height: 80%;
    top: 0;
    left: 0;
}
*/

.margin-sup-left {
    position: relative;
    padding: 20px;
    animation: myanim 3s infinite;
}

.margin-sup-left:before {
    content: "";
    position: absolute;
    border-left: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    width: 90%;
    height: 90px;
    top: 0;
    left: 0;
}

.margin-sup-right {
    position: relative;
    padding: 20px;
}

.margin-sup-right:before {
    content: "";
    position: absolute;
    border-right: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    width: 90%;
    height: 90px;
    top: 0;
    right: 0;
}

.margin-sup-left-full {
    position: relative;
    padding: 20px;
}

.margin-sup-left-full:before {
    content: "";
    position: absolute;
    border-left: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    width: 100%;
    height: 90px;
    top: 0;
    left: 0;
}

.margin-sup-right-full {
    position: relative;
    padding: 20px;
}

.margin-sup-right-full:before {
    content: "";
    position: absolute;
    border-right: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    width: 100%;
    height: 90px;
    top: 0;
    right: 0;
}

.banner-circle {
    width: 20px;
    float: right;
    margin-top: -7.5%;
    margin-right: -2%;
}

.banner-text p {
    font-size: 18px;
}

.banner-home {
    background: url(../../assets/img/banner_home.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-experience {
    background: url(../../assets/img/banner_experience.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-model {
    background: url(../../assets/img/banner_model.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-gestion {
    background: url(../../assets/img/banner_gestion.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-casing {
    background: url(../../assets/img/banner_casing.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-cleaning {
    background: url(../../assets/img/banner_cleaning.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-partners {
    background: url(../../assets/img/banner_partners.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-leaders {
    background: url(../../assets/img/banner_leaders.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.banner-contact {
    background: url(../../assets/img/banner_contact.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 750px;
    padding-top: 70px;
    color: white;
    display: block;
}

.bg-milestones {
    background: url(../../assets/img/bg_milestone.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 900px;
    display: block;
}

.bg-milestones-section {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: 20% auto;
    margin: 0 0 0 auto;
    width: 60%;
    height: 700px;
    display: block;
}

.bg-capabilities {
    background: url(../../assets/img/bg_capabilities.jpg) no-repeat center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 600px;
    display: block;
}

.bg-casing {
    background: url(../../assets/img/bg_casing.jpg) no-repeat top left;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: auto 90%;
    width: 100%;
    display: block;
}

.text-maren {
    color: rgb(0, 177, 136);
}

.text-maren2 {
    color: rgb(38, 51, 123);
}

.content-50 {
    width: 50%;
    text-align: justify;
}

.content-60-center {
    text-align: center;
    width: 60%;
    margin: 0px auto;
}

.content-60-left {
    width: 60%;
}

.content-60-right {
    margin: 0 0 0 auto;
    width: 60%;
}

.content-90-center {
    width: 90%;
    margin: 0px auto;
}

.content-contact {
    text-align: center;
    width: 85%;
    margin: 0px auto;
}

.section-web {
    display: block;
}

.section-mobile {
    display: none;
}

.fadeTop {
    opacity: 0;
    transform: translate(0, 10vh);
    transition: all 1s;
    z-index: 100;
}

.fadeRight {
    opacity: 0;
    transform: translate(0vh, 0vh);
    transition: all 1s;
}

.fadeLeft {
    opacity: 0;
    transform: translate(-10vh, 0vh);
    transition: all 1s;
}

.visible {
    opacity: 1;
    transform: translate(0, 0);
}

.background-policy {
    background: url(../../assets/img/about_us_background1.png) no-repeat bottom right;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: auto 90%;
    width: 100%;
    display: block;
}

.background-tech {
    background: url(../../assets/img/experience_tech_bg.png) no-repeat top left;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: auto 80%;
    width: 100%;
    display: block;
    height: 700px;
    background-color: rgb(38, 48, 59);
}

.background-project {
    background: url(../../assets/img/bg_projects.png) no-repeat top right;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: auto 90%;
    width: 100%;
    display: block;
    height: 700px;
}

.background-engineering {
    background: url(../../assets/img/engineering_bg.png) no-repeat top right;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: auto 700px;
    width: 100%;
    display: block;
    background-color: rgb(38, 48, 59);
}

@media screen and (max-width: 1200px) {
    .bg-milestones-section {
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: 20% 85%;
        margin: 0 0 0 auto;
        width: 75%;
        height: 700px;
        display: block;
    }
}

.client-img {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.leaders-img {
    display: block;
}

.leaders-text {
    height: 800px;
}

.leaders-title-area {
    width: 25%;
}

.leaders-text-area {
    width: 70%;
    margin-top: 20px;
}

.project-table-content {
    width: 100%;
}

.fade-border {
    border-bottom-color: white;
    border-left-color: white;
}

.fade-border-visible:before {
    border-bottom-color: red;
    border-left-color: red;
    transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s;
}

@media screen and (max-width: 1100px) {
    .banner-text {
        width: 90%;
        padding-top: 3%;
        padding-left: 3%;
    }
    /*Image and text sections*/
    .section-web {
        display: none;
    }
    .section-mobile {
        display: block;
    }
    .leaders-title-area {
        width: 40%;
    }
    .leaders-text-area {
        width: 90%;
        margin-top: 20px;
    }
    .bg-milestones-section {
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: 20% 85%;
        margin: 0 0 0 auto;
        width: 60%;
        height: 800px;
        display: block;
    }
    .bg-milestones {
        background: url(../../assets/img/bg_milestone.jpg) no-repeat center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        width: 100%;
        height: 1000px;
        display: block;
    }
}

@media screen and (max-width: 810px) {
    .content-50 {
        width: 95%;
        text-align: justify;
    }
    .content-60-left {
        width: 90%;
    }
    .content-60-right {
        margin: 0 0 0 auto;
        width: 90%;
    }
    .bg-milestones-section {
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: 20% 85%;
        margin: 0 0 0 auto;
        width: 95%;
        height: 1000px;
        display: block;
    }
    .bg-milestones {
        background: url(../../assets/img/bg_milestone.jpg) no-repeat center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        width: 100%;
        height: 1200px;
        display: block;
    }
    .leaders-title-area {
        width: 40%;
    }
    .leaders-text-area {
        width: 100%;
        margin-top: 20px;
    }
    .projects-table {
        width: 100%;
        overflow-x: scroll;
    }
    .project-table-content {
        width: 1200px;
    }
    .content-contact {
        text-align: center;
        width: 95%;
        margin: 0px auto;
    }
}

@media screen and (max-width: 769px) {
    .leaders-img {
        display: none;
    }
    .leaders-text {
        height: 1200px;
    }
    .projects-table {
        width: 100%;
        overflow-x: scroll;
    }
    .project-table-content {
        width: 1200px;
    }
    .tubs-table-content {
        width: 800px;
    }
}

@media screen and (max-width: 500px) {
    .bg-capabilities {
        background: url(../../assets/img/bg_capabilities.jpg) no-repeat center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        width: 100%;
        height: 700px;
        display: block;
    }
    .projects-table {
        width: 100%;
        overflow-x: scroll;
    }
    .project-table-content {
        width: 1200px;
    }
    .tubs-table-content {
        width: 800px;
    }
}


/*///////////////*/

.square-left {
    display: block;
    width: 100%;
    padding: 4%;
    position: relative;
}

.square-left:before,
.square:after {
    content: "";
    width: 0%;
    height: 0%;
    position: absolute;
    border-right: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    animation-fill-mode: forwards;
}

.square-left:before {
    right: 0;
    bottom: 0;
    border-bottom: 0;
    border-left: 0;
    animation: btm 2s ease-in forwards;
}

.square-left:after {
    visibility: hidden;
    right: 0;
    top: 0;
    border-top: 0;
    border-right: 0;
    animation: btm 4s 4s ease-in forwards;
}

@keyframes btm {
    0% {
        visibility: visible;
        width: 0;
        height: 0;
    }
    50% {
        width: 0;
        height: 100%;
    }
    100% {
        width: calc(100% - 1px);
        height: 100%;
        visibility: visible;
    }
}


/*//////////*/

.square-right {
    display: block;
    width: 100%;
    padding: 4%;
    position: relative;
}

.square-right:before,
.square:after {
    content: "";
    width: 0%;
    height: 0%;
    position: absolute;
    border-left: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    animation-fill-mode: forwards;
}

.square-right:before {
    left: 0;
    bottom: 0;
    border-bottom: 0;
    border-right: 0;
    animation: btm 2s ease-in forwards;
}

.square-right:after {
    visibility: hidden;
    right: 0;
    bottom: 0;
    border-bottom: 0;
    border-left: 0;
    animation: btm 4s 4s ease-in forwards;
}


/*//////////*/

.square-right-mid {
    display: block;
    width: 100%;
    padding: 4%;
    position: relative;
}

.square-right-mid:before,
.square-right-mid:after {
    content: "";
    width: 0%;
    height: 0%;
    position: absolute;
    border-left: 3px solid rgb(0, 177, 136);
    border-top: 3px solid rgb(0, 177, 136);
    animation-fill-mode: forwards;
}

.square-right-mid:before {
    left: 0;
    top: 0;
    border-bottom: 0;
    border-right: 0;
    animation: btm2 2s ease-in forwards;
}

.square-right-mid:after {
    visibility: hidden;
    right: 0;
    top: 0;
    border-bottom: 0;
    border-left: 0;
    animation: btm2 4s 4s ease-in forwards;
}

@keyframes btm2 {
    0% {
        visibility: visible;
        width: 0;
        height: 0;
    }
    50% {
        width: 0;
        height: 100px;
    }
    100% {
        width: calc(100% - 1px);
        height: 100px;
        visibility: visible;
    }
}