* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root{
    --azul: #56BEC1;
    --cinza-claro: #EFEFEF;
    --cinza: #E6E6E6;
    --verde: #57C27D;
    --lilas: #577BC2;
}

html {
    font-family: "Inter";
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

body {
    background-color: var(--cinza-claro);
}

p {
    hyphens: auto;
}

/* HEADER */

#header-grid {
    display: grid;
    grid-template-areas: 
    "navbar"
    "hero";
}

#header-navbar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: "logo links resultados-link";

    position: fixed;
    z-index: 2;
    width: 100%;
    font-size: large;
    background-color: white;
    filter: drop-shadow(0 5px 10px rgba(206, 206, 206, 0.63));
}

#navbar-logo {
    grid-area: logo;
    width: 300px;
    padding: 1em;
}

#navbar-logo-img {
    display: box;
    width: 100%;
}

#navbar-links-container {
    grid-area: links;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.navbar-link {
    list-style-type: none;
    margin-left: 1em;
    margin-right: 1em;
    text-align: center;
}

.navbar-link > a {
    text-decoration: none;
    color: black;
    border: white 0.5em solid;
    padding: 1em;
}
.navbar-link > a:hover {
    border-color: var(--azul);
}

#navbar-retirar-laudo-container {
    grid-area: resultados-link;
    display: flex;
    justify-content: right;
    align-items: center;
}

#navbar-retirar-laudo-btn {
    margin-right: 2em;
    padding: 1em;
    border: var(--azul) 8px solid;
    color: black;
    text-decoration: none;
    text-wrap-mode: nowrap;
}
#navbar-retirar-laudo-btn:hover {
    border-color: var(--verde);
}

#hero {
    display: grid;
    grid-template-columns: 1fr 6fr 1fr;
    grid-template-areas: "1 hero 2";

    height: 45em;
}

#hero-content {
    grid-area: hero;

    display: grid;
    grid-template-rows: 2fr auto 1fr;
}

#hero-rect {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    grid-area: 2/1/3/2;
    background-color: white;
    filter: drop-shadow(0 5px 5px rgba(92, 92, 92, 0.2));
}

#hero-heading {
    font-weight: 500;
    font-size: 3em;
    flex-basis: 50%;
    margin: 1em;
}

#hero-foreground-img {
    position: absolute;
    right: 0;
    object-fit: contain;
    width: 40%;
    max-width: 500px;
}

#hero-background {
    position: relative;
    grid-area: 2/1/3/2;
    display: flex;
    align-items: center;
}

#hero-background-detail {
    position: absolute;
    left: 10%;
    z-index: -1;
    height: 200%;
    max-width: 80%;
    filter: drop-shadow(0 5px 5px rgba(92, 92, 92, 0.2));
}

/* MAIN */

.section {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 50px;
}
.section.dark {
    background-color: var(--cinza);
}

.img-transition-detail {
    margin-block: -5px;
    width: 100%;
    display: block;
}
.img-transition-detail.rotate180{
    rotate: 180deg;
}

.section-heading-container {
    display: flex;
    justify-content: center;
}

.section-heading {
    font-size: 2em;
    font-weight: 500;
    text-align: center;
    margin-top: 1em;
    margin-bottom: 2em;
}

.section-content {
    width: 60%;
    margin-bottom: 4em;
}

.section-paragraph {
    text-align: justify;
    font-size: x-large;
}

.section-blocks-container {
    display: grid;
    gap: 50px;
    width: 70%;
}
.section-blocks-container.three {
    grid-template-columns: 1fr 1fr 1fr;
}
.section-blocks-container.two {
    grid-template-columns: 1fr 1fr;
}

.section-box {
    position: relative;
    display: flex;
    align-items: center;
    text-align: right;
    padding: 1em;
    gap: 1em;
    background-color: white;
    filter: drop-shadow(0 5px 5px rgba(92, 92, 92, 0.2));
}
.section-box.vertical {
    flex-direction: column;
    text-align: center;
    padding: 2em;
    padding-top: 3em;
    padding-bottom: 3em;
    gap: 2em;
}

.section-box-text {
    flex-basis: 50%;
    flex-shrink: 2;
    font-size: 30px;
    font-weight: 500;
    hyphens: none;
}

.section-box-img {
    flex-basis: 50%;
    object-fit: contain;
}

.section-box-detail-top {
    position: absolute;
    top: 10%;
    left: -2%;
    height: 70px;
    width: 70px;
    border: var(--azul) 0.5em solid;
}
.section-box-detail-top.vertical{
    height: 60px;
    width: 60px;
    left: -5%;
    z-index: 1;
}
.section-box-detail-bottom {
    position: absolute;
    z-index: 1;
    bottom: -7%;
    right: 10%;
    height: 80px;
    width: 80px;
    border: var(--lilas) 0.5em solid;
}

/* FOOTER */

#footer-grid {
    display: grid;
    grid-template-areas: "none socials admin";
    grid-template-columns: 1fr 2fr 1fr;
    background-color: white;
}

#socials {
    display: flex;
    justify-content: center;
    align-items: center;
    grid-area: socials;
}

.socials-img {
    display: block;
    height: 5em;
    width: auto;
    padding: 1em;
}

#admin {
    display: flex;
    justify-content: right;
    align-items: center;
    grid-area: admin;
    padding: 1em;
}
#admin > a {
    color: black;
    text-decoration: none;
}