html {
    font-size: 0.87vw; 
    scroll-behavior: smooth;
    max-width: 100%;
    color: #fff;  
}
html ::-webkit-scrollbar {
    width: 7px;
    height: 0px;
}
html ::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: silver;
} 
html ::-webkit-scrollbar-track {
    background: #ededed;
}
body{
    overflow-X: hidden;
    background: linear-gradient(245.59deg, #4d9559 0%, #38703d 28.53%, #133917 75.52%);
}
header {
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1000;
    width: 99%;
    display: flex;
    justify-content: space-between;
    padding: 0%;
    background: transparent;  
    margin: 1rem; 
}
iframe {
    max-width: 100dvw;
    max-height: 100dvh;
    border: none;
}
h1 {
    font-size: 4.4rem;
    text-align: center;
    line-height: 1;
    color: white;
    font-weight: 800;
}
.logo {
    z-index: 10001;
    width: 300px;
    height: 90px;    
    object-fit: scale-down;
    margin: 1rem;
}
.navlist {
    display: flex;
}
.navlist a {
    color: white;
    margin-left: 3rem;
    font-size: 3rem;
    letter-spacing: -1px;
    font-weight: 500;
    border-bottom: 2px solid transparent; 
}
.navlist a:hover {
    border-bottom: 2px solid white;
}
#menu-icon {
    color: white;
    font-size: 3rem;
    z-index: 10001;
    cursor: pointer;
    display: none;
}
.hero { 
    position: relative;
    display: flex;
    flex-wrap: wrap;
    height: 100vh;
    padding: 0% 0% 0% 8%;
    overflow-X: hidden;
}
.hero-text {
    width: 52.5vw;
    padding-top: 5vh;
    padding-left: 3vw;
    align-self: center;
}
.hero-text p {
    text-align: justify;
    color: rgb(240, 255, 255);
    font-size: 3.1rem;
    text-indent: 2%;
    font-weight: 500;
    line-height: 1; 
    padding: 0% 0% 3% 0%; 
}
.hero-img{
    display: block;
    position: relative;
    margin-bottom: 0;
    margin-top: auto;
    margin-right: 0;
    margin-left: auto;
    object-fit: scale-down;
}
.hero-img img { 
    display: block;
    position: relative;
    width: 30vw;
    height: auto;  
}
.hero-text a {
display: inline-block;
color: white;
background-color: #41804b;
border: 1px solid transparent;
padding: 12px 30px;
margin-left: 4%;
font-size: 1.3rem;
letter-spacing: 0.9px;
font-weight:400;
border-radius: 30px;
text-transform: uppercase;
}
.hero-text a:hover {
    background-color: transparent;
    border: 1px solid white;
    transform: translateX(7px);
}
.icons {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    padding: 1rem;
    z-index: 1001;
}
.icons i{
    display: block;
    margin: 3vh;
    font-size: 3.3rem;
    color: white;
}
.icons i:hover {
    color: #4d9559;
    transform: translateY(-5px);
}
.continue{
    display: block;
    position: relative;
    width: 100%;
    height: 90%;
    padding: 0% 3% 0% 5%;
    overflow-X: hidden;
}
h2 {
    font-size: 4rem;
    text-indent: 3rem;
    line-height: 1.2 ;
    color: white;  
    font-weight: 800;
    text-align: center;
    text-indent: 5%;
    padding-top: 2%;
    padding-bottom: 2%;      
}
.hero2 {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: center;
}
.img2{
    display: block;
    position: relative;
}
.img2 img { 
    display: block;
    position: relative;
    width: 36vw;
    object-fit: cover;
}
.text {
    width: 55%;
    position: relative;
}
.text p {
    text-align: justify;
    color: white;
    font-size: 3rem;
    text-indent: 3%;
    font-weight: 500;
    line-height: 1; 
    padding: 10% 1% 3% 1%;  
}
.text a {
    font-size: 1.3rem;
}
.button {
    display: inline-block;
    color: white;
    background-color: #41804b;
    border: 1px solid transparent;
    padding: 12px 30px;
    margin-left: 9%;
    letter-spacing: 0.9px;
    font-weight:400;
    border-radius: 30px;
    text-transform: uppercase;
}
.button:hover {
    background-color: transparent;
    border: 1px solid white;
    transform: translateX(7px);
}
#video {
    background: transparent;
    border: 1px solid white;   
    margin-left: 20px;
}
#video i {
    vertical-align: middle;
    margin-right: 5px;
}
footer{
    display: block;
    position: relative;
    bottom: 0;
    padding: 3vh;
    font-size: 1.5rem;
    background-color: #7a7b7a17;
    text-align: center;
    color: rgba(255, 255, 255, 0.876);
}
.sobre {
    display: flex;
    flex-direction: column;
    padding: 1% 4%;
    line-height: 1.1; 
    font-size: 3.1rem;
}
.sobre-text {
    padding: 20% 1% 5% 1%;  
}
.sobre-text p {
    text-align: justify;
    text-indent: 1rem;
    color: #f0ffff;
    padding-top: 2%;
}
.sobremim {
    display: flex;
    width: 95%;
    align-self: center;
    flex-direction: column;
    text-align: center;
    justify-content: space-between;
    padding-top: 7%;
    background: rgba(255, 255, 255, 0.04);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    padding-bottom: 3%;
    margin-bottom: 5%;
}
.sobremim img.fotominha {
    max-width: 80vw;
    height: auto;
    margin: 0 auto;
    object-fit: scale-down;
}
.sobremim .quemsou {
    text-align: center;
    padding: 0.25%;
}
.sobremim p {
    padding: 0% 2.5% 3% 2.5%;
    color: #f0ffff;
    text-align: justify;
    text-indent: 2rem;
}
.valores p {
    padding: 0% 3% 3% 3%;
    text-align: justify;
    text-indent: 2rem;
    color: #f0ffff;
}
.contact {
    padding-top: 15%;
    height: 100%;
}   
.contact-form iframe{
    display: block;
    margin: auto; 
    height: 1100px;
}
@media (max-width: 499px) {
    html {
        font-size: 2vw; 
    }
    .logo{
        width: 150px;
        height: 45px;
    }
    #menu-icon {
        display: block;
    }
    .navlist{
        position: absolute;
        right: -100%;
        width: 300px;
        height: 25vh;
        padding-top: 5vh;
        background: #4d9559;
        display: flex;
        align-items: center;
        flex-direction: column; 
    }
    .navlist a{
        display: block;
        margin: 7px 0;
        overflow-x: hidden;
    }
    .open {
        display: flex;
        position:relative;
        right: 0;
        background-color: rgba(1, 83, 29, 0.99);
        margin-top: 25px;
    }
    .hero{
        flex-direction: column;
        padding: 0%;  
    }
    .hero-text {
        height: 45vh;
        width: 100%;
        padding: 19% 0% 0% 0%;        
    }
    h1 {
        padding: 0%;
        line-height: 1;
    }
    .hero-text p {
        text-indent: 4%;
        padding: 0% 2% 3% 2%;
    }
    .hero-text a {
        margin-left: 7%;
    }
    .hero-img{
        height: 55vh;
    }
    .hero-img img{
        position: relative;
        height: 100%;
        width: auto;
        object-fit: scale-down;
    }
    .icons{
        background: rgba(79, 79, 221, 0.76) ;
        transform:none;
        position:relative;
        display: flex;
        flex-direction: row;
        justify-content: center;  
        padding: 2% 1%;
    }
    .icons i{
        font-size: 7rem;
    }
    .continue{
        height: 100vh;
        width: 100%;
        padding-top: 3%;
        padding-left: 0%;
        padding-right: 0%;
    }
    h2{
        width: 100%;
        padding-top: 4%;
        padding-bottom: 3%; 
    }
    .hero2{
        flex-direction: column;
        padding-top: 0%
    }
    .text {
        align-self: center;
        width: 100%;
    }
    .text p {
        width: 100%;
        text-indent: 1%;
        padding: 0% 3.5% 3% 3.5%;
    }
    .img2{
        align-self: center;
    }
    .img2 img{
        position: relative;
        height: 51vh;
        width: 90vw;
        object-fit: scale-down;
    }
}
@media (max-width: 380px) {
    .hero-img{
        height: 46vh;
    }
}
@media (min-width: 768px) {
    .sobre {
        padding: 10% 6% 0% 8%;
    }
    .sobremim {
        margin-top: 5%;
        flex-direction: row;
        align-items: center;
    }
    .sobremim p {
        padding: 0% 2% 3% 3%;
    }
    .sobremim img.fotominha {
        width: 30%;
        margin-left: 3rem;
    }
    .sobremim .quemsou {
        padding: 2%;
    }
    .sobre-text, .valores {
        padding: 2rem;
    }
    .contact {
        padding-top: 15dvh;
    }
    .contact-form iframe{
        min-height: 100dvh;
    }
}