* {
    margin: auto;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --color-text: #15202B;
    --background-color: hsl(240, 26%, 95%);
    --background-color2:#f2f2f2;
}

body {  
 font-family: Arial, sans-serif;
}

#darkmodeToggle {
    display: none;
}

main {
    background-color: var(--background-color);    
    color: var(--color-text);
    position: absolute;
    transition: .5s ease-in-out background, .5s ease-in-out color;
    
    display: table;
    width: 100%;
    height: 100vh;
    padding: 100px 0;
}

#darkmodeToggle:checked + main {
    --color-text: #ffffff;
    --background-color: #15202B;
    --background-color2:#8899A3;
       
    background-color: var(--background-color);    
    color: var(--color-text);
    transition: .5s ease-in-out background, .5s ease-in-out color;
}

#darkmodeToggle:checked + main .darkmodelabel:after {
    content: ' On';
}

.darkmodelabel{
    cursor: pointer;
}

.darkmodelabel:after {
    content: ' Off';
}

.menu-principal a,
.menu-principal a:hover,
.menu-principal a:visited {
    color: var(--color-text);
    text-decoration: none;
}


.container {
    width: 960px;
    margin: auto;
}

.menu-principal > ul {
    text-align: right;
    margin-top: 30px;
    padding: 10px;
}

.menu-principal > ul > li {
    margin-left: 30px;
    display: inline;
}

.menu-principal > ul > li a:hover {
    color: darkmagenta;
}

#title, .subtitle, .post_title {
color: var(--color-text)
} 

.post_title {
font-size: 16px;
font-style: italic;
margin: 0%;
margin-bottom: 25px;
}

.img_tamanho {
width: 270px;
height: 270px;
border: 5px solid rgba(0, 0, 0, 0.664);
border-radius: 50%;
} 

.post {
background: var(--background-color2);
padding: 10px;
border: 3px solid black;
margin-bottom: 20px;
border-radius: 5px;
width: 50%;
height: 50%;
}

.post_contant {
margin: 0%;
margin-bottom: 15px;
text-align: justify;
}

.post_image {
margin-bottom: 15px;
margin-inline: 35px;
width: 390px;
height: 350px;
border-radius: 15%;
}

.sobre {
    display: table;
    margin-inline: 20px;
}

.sobre > .left {
    display: table-cell;
    float: left;
    width: 65%;
}

.sobre > .right {
    text-align: right;
    display: table-cell;
    float: right;
    width: 30%;
}

.sobre p {
    font-size: 22px;
    line-height: 30px;
}

.sobre img {
    width: 250px;
}

img.redonda {
    border-radius: 20%;
}

section {
    margin-top: 100px;
    margin-bottom: 100px;
}

.servicos > .servico {
    width: 460px;
    display: inline-block;
    background-color: var(--background-color);
    margin-bottom: 30px;
    margin-right: 30px;
    padding: 20px;
    box-sizing: border-box;   
}

.servicos > .servico:nth-child(even) {
    margin-right: 0;
}

.servico h2 {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--color-text);
    margin-bottom: 10px;
}

.servico p {
    font-size: 16px;
    line-height: 22px;
}

.contato{ 
grid-area: rodape;
/* background-color: var(--background-color2); */
display: flex;
justify-content: flex-end;
align-items: center;
font-size: 1.2rem;
padding-right: 0px;
color: var(--color-text);
}

/*.img-service {
    max-width: 900px;
    max-height: 700px;
    width: auto;
    height: auto;
} */

.rodap {
    background: var(--background-color2);
padding: 10px;
border: 2px solid black;
margin-bottom: 20px;
border-radius: 5px;
width: 100%;
height: 120px;
}