main {
    height: 100vh;
}

.black {
    font-weight: 900;
}

.extra-bold {
    font-weight: 800;
}

.bold {
    font-weight: 700;
}

.semi-bold {
    font-weight: 600;
}

.medium {
    font-weight: 500;
}

.regular {
    font-weight: 400;
}

.light {
    font-weight: 300;
}

.extra-light {
    font-weight: 200;
}

.thin {
    font-weight: 100;
}

/* --------- ESTILO COM FUNDO PRETO --------- */
.agape-black {
    color: #FFFFFF8C;
    background-color: #000000;
}

.agape-black h1 {
    color: #FFFFFF;
}

.agape-black span {
    color: #FFFFFF8C;
}

/* ------------------------------------------ */

.carousel-item {
    height: 35rem;
}

.carousel img {
    object-fit: cover;
    object-position: center 10%;
}

/* `sm` applies to x-small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
    .carousel-item {
        height: 12rem;
    }
}

/* `md` applies to small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {}

/* `lg` applies to medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {}

/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {}

/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {}

@media (min-width: 1920px) {
    .carousel-item {
        height: 45rem;
    }
}

.wide {
    width: 100%;
    padding-bottom: 56.25%;
    background-size: cover;
    background-position: top center;
}

.square-img {
    width: 100%;
    object-fit: cover;
    object-position: top left;
}

.grecaptcha-badge {
    visibility: hidden;
}

.square-container {
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    /* Define a proporção quadrada (1:1) */
    overflow: hidden;
}

.square-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position-x: center;
    background-position-y: top;
    background-size: cover;
}