html {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

html {
    font-size: 10px;
}

* {
    font-size: 1.4rem;
}

body {
    margin: 0 0 0 0;
    font-family: "Roboto", arial, sans-serif;
    color: #818589;
    background: #E2E2E2;
    z-index: 0;
    counter-reset: count;
}

a {
    text-decoration: none;
    scroll-behavior: smooth;
}

.page-header {
    background: url('../img/header.jpg') no-repeat center;
    height: 43vw;
    text-align: center;
}

.page-header a {
    color: #FFFFFF;
    transition: all 1.8s ease-in-out, transform 0.5s ease-out;
    font-size: 6.4rem;
}

.page-header a h1 {
    padding-top: calc(43vw * 0.85 - 20px);
    background: linear-gradient(to right, #FFF 20%, #EC7305 40%, #EC7305 60%, #FFF 80%);
    animation: shine 4s linear infinite;
    background-size: 200% auto;

    color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@keyframes shine {
    to {
        background-position: 200% center;
    }
}

.page-header a h1 svg {
    width: 50px;
    transform: translate(0, 25%);
}

.page-header a h1 svg path {
    fill: #EC7305;
    transition: all 1.8s ease-in-out;
}

.page-header a:hover {
    transform: scale(1.05);
}

.nav-main {
    position: sticky;
    top: 0;
    height: 7vh;
    min-height: 55px;
    max-height: 80px;
    background: white;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
    z-index: 10;
    transition: all 0.3s ease-in-out;
}

.nav-items, .nav-lang-items {
    float: left;
    width: 50%;
    height: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.show-button {
    display: none;
}

.nav-lang-items {
    justify-content: unset;
    flex-direction: row-reverse;
}

.nav-main a {
    scroll-behavior: smooth;
    font-size: 2.4rem;
    color: #818589;
    padding: 0.4rem 1.3rem;
    flex-basis: auto;
    position: relative;
    font-weight: normal;
}

.nav-main a svg {
    width: 35px;
    height: 35px;
    margin-right: 10%;
    position: absolute;
    left: -30px;
    top: 0px;
}

.nav-main a:hover {
    color: rgb(49, 53, 57);
}

.nav-main a span {
    height: 0;
    border-radius: 10px;
    border: solid #EC7305 2px;
    background: #EC7305;
    position: absolute;
    bottom: 5%;
    left: 5%;
    right: 5%;
    transform: scale(0);
}

.nav-main .active span {
    transition: all 0.4s ease-in-out;
    transform: scale(1);
}

.about {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.63) 0%, rgba(255, 255, 255, 0) 100%), #E2E2E2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    color: rgba(0, 0, 0, 0);
    height: 581px;
    transition: all 0.6s ease-out;
}

.about h1 {
    color: rgba(236, 115, 5, 0.8);
    font-style: italic;
    font-size: 6.4rem;
    margin: 0 0 2% 8%;
    width: 100%;
}

.about .illustration {
    position: relative;
    width: 30%;
    height: 60%;
    border: 3px solid #EC7305;
    background: no-repeat url('../img/illustration1.jpg') center;
    transition: all 0.2s ease-out;
}

.about .illustration .text-background {
    height: 100%;
    transition: background-color 0.2s ease-out;
}

.about:hover .text-background {
    background: rgba(0, 0, 0, 0.65);
}

.about:hover .container {
    color: white;
}

.about .container {
    box-sizing: border-box;
    line-height: 2.8rem;
    font-size: 1.8rem;
    text-align: justify;
    font-weight: normal;
    padding: auto 40px;
    transition: all 0.2s ease-out;
}

.about .side-text {
    color: #818589;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-left: 2%;
}

.about .side-text h2 {
    font-weight: bold;
    font-size: 3rem;
    margin: 0;
}

.about .side-text h3 {
    margin: 0;
    font-size: 2.4rem;
    font-style: italic;
    font-weight: normal;
}

.about .side-text hr {
    height: 5px;
    width: 100%;
    border: none;
    background: #818589;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.20);
    border-radius: 60px
}

.about .side-text li::before {
    content: counter(count) '. ';
    counter-increment: count;
    font-size: 2.6rem;
    font-weight: bold;
    color: #EC7305;
    left: 2%;
    top: -30%;
    position: absolute;
}

.about .side-text li {
    position: relative;
    display: list-item;
    margin: 5% 0 5% 0;
    padding-left: 38px;
    font-size: 1.8rem;
    color: #818589;
    font-weight: bold;
}

.who {
    box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.1);
    background: #FFFFFF;
    padding: 5%
}

.who .img {
    width: 150px;
    height: 150px;
    display: block;
    float: left;
    position: relative;
    background: url("../img/face.JPEG") no-repeat;
    background-size: cover;
    border-radius: 100%;
    border: solid #EC7305;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.who .creator-name, .who .creator-desc {
    margin-left: 200px;
    font-weight: normal;
    margin-top: 19px;
}

.who .creator-name {
    font-size: 4.8rem;
    color: #EC7305;
}

.who .creator-desc {
    font-size: 2.4rem;
    color: #818589;
}

.who hr {
    clear: both;
}

.services {
    background: no-repeat url('../img/illustration2.jpg');
    background-size: cover;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 3% 0;
    transition: height 0.2s ease-in-out;
}

.services .service {
    box-sizing: border-box;
    text-align: center;
    background: rgba(255, 255, 255, 0.8);
    border: solid rgba(236, 115, 5, 0.9);
    border-radius: 20px;
    width: 20vw;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 56px 19px 19px 19px;
    color: #818589;
    transition: all 0.2s ease-in-out;
    position: unset;
}

.services .coaching h2 {
    height: 84px;
}

.services .service:hover {
    color: #FFFFFF;
    background: rgba(129, 133, 137, 0.8);
}

.services .service .cont {
    width: 100%;
    height: 310px;
}

.services .service h3 {
    margin-top: 10%;
    display: block;
}

.services .service p {
    margin-top: 10%;
    display: none;
    font-size: 1.8rem;
    text-align: justify;
    color: rgba(0, 0, 0, 0);
    cursor: pointer;
}

.services .service:hover p {
    transition: color 0.2s ease-out;
    display: block;
    color: #FFFFFF;
}

.services .service:hover h3 {
    display: none;
    transition: color 0.2s ease-out;
    color: rgba(0, 0, 0, 0);
}

.services h2 {
    font-size: 3.6rem;
    margin-bottom: 0;
}

.services h3 {
    text-align: center;
    font-weight: normal;
    font-size: 2.4rem;
    cursor: default;
}

.contact {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.contact form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 61.875vw;
    height: 80%;
    margin: 5% 0 0 0;
}

.contact form input, .contact form textarea {
    font-size: 1.6rem;
    border: solid #EC7305 1px;
    width: 100%;
    height: 4.8rem;
    margin: 21px 0;
    font-family: "Roboto", sans-serif;
    color: #818589;
    padding: 1rem;
    position: relative;
    resize: vertical;
}

.contact form label {
    margin: 0;
    position: absolute;
    top: 0.2rem;
    left: 20px;
    font-size: 1.6rem;
    font-weight: normal;
    color: #EC7305;
}

.first-name, .name {
    position: relative;
    width: 43.1%;
}

.email, .message {
    position: relative;
    width: 100%;
}

.contact .button {
    margin: 5% auto 2% auto;
    font-size: 2.4rem;
}

.contact .button:hover {
    cursor: pointer;
}