/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.2.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
:root {
    --color-B26552: #B26552;
    --color-CACACA: #CACACA;
    --font-family-inter: 'Inter', sans-serif;
}

html, body { overflow-x: hidden; }

.title-comments,
.logged-in-as,
.none { display: none; }

/* --- Esconder campos */
#form-field-anexo { display: none; }

/* --- Faça Parte da Equipe --- */
.page-faca-parte-da-equipe .elementor-form-fields-wrapper.elementor-form-fields-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Duas colunas iguais */
    gap: 20px; /* Espaçamento entre colunas e linhas */
}
/* Coloca as 5 primeiras divs na primeira coluna */
.page-faca-parte-da-equipe .elementor-form-fields-wrapper > .elementor-field-group:nth-child(-n+5) {
    grid-column: 1;
}
/* Coloca a textarea (sexta div) na segunda coluna */
.page-faca-parte-da-equipe .elementor-form-fields-wrapper > .elementor-field-group:nth-child(6) {
    grid-column: 2;
    grid-row: span 5; /* Faz a textarea ocupar a altura de todas as 5 da esquerda, se quiser */
    position: relative;
    bottom: 420px;
}
.page-faca-parte-da-equipe .elementor-form-fields-wrapper > .elementor-field-group:nth-child(6) textarea { height: 490px; }
/* Botão de envio para ficar embaixo das 5 primeiras */
.page-faca-parte-da-equipe .elementor-form-fields-wrapper {
    display: grid; /* garantir que é grid */
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(10, auto);
}
.page-faca-parte-da-equipe .elementor-form-fields-wrapper > .elementor-field-group.elementor-field-type-submit {
    grid-row: 6;
    justify-self: center;
    margin-left: 50%;
    margin-right: -50%;
}

/* Envie sua sugestão */
form[name="enviar_sugestao_form"] label[for="form-field-anexo"]::after, 
.page-envie-sua-sugestao label[for="form-field-anexo"]::after {
    content: 'Selecionar arquivo...';
    display: inline-block;
    font-family: var(--font-family-inter);
    color: var(--color-B26552);
    text-decoration: underline;
    margin-left: 10px;
}

/* Crie sua conta */
/* .page-faca-parte-da-equipe .elementor-field-type-submit {
    position: relative;
} */
.enviar-sugestao-popup .elementor-field-type-submit,
.page-faca-parte-da-equipe .elementor-field-type-submit,
.page-fazer-login .elementor-field-type-submit,
.page-crie-sua-conta .elementor-field-type-submit { 
    align-items: center;
    gap: 15px;
    margin-top: 25px; 
}
.page-fazer-login .elementor-field-type-submit::before,
.page-fazer-login .elementor-field-type-submit::after {
    content: '';
    height: 1px;
    width: 210px;
    flex: 1;
    background-color: var(--color-CACACA);
}
.page-faca-parte-da-equipe .elementor-field-type-submit::before,
.page-faca-parte-da-equipe .elementor-field-type-submit::after,
.page-busca .elementor-field-type-submit::before,
.page-busca .elementor-field-type-submit::after,
.page-crie-sua-conta .elementor-field-type-submit::before,
.page-crie-sua-conta .elementor-field-type-submit::after {
    content: '';
    height: 1px;
    width: 210px;
    /* flex: 1; */
    background-color: var(--color-CACACA);
}
.enviar-sugestao-popup .elementor-field-type-submit::before {
    content: '';
    height: 1px;
    flex: 1;
    background-color: var(--color-CACACA);
} 
#feedbackPass {
    font-family: var(--font-family-inter);
    color: brown;
}

/* Single Colegio/Edicao/Jornais */
.wishlist-container .fa-bookmark {
    font-size: 23px;
    color: #719F67;
    cursor: pointer;
    transition: .2s ease-in-out;
}
.page-meus-favoritos .wishlist-container .fa-bookmark { font-size: 16px; }
.e-loop-item:hover .wishlist-container .fa-bookmark { transform: scale(1.2); }

/* Seção de comentário */
#respond { 
    font-family: var(--font-family-inter); 
    color: #000;
}
#respond input:not(#submit) {
    border: 1px solid var(--color-CACACA);
    border-radius: 10px;
    filter: drop-shadow(0px 2px 0px #CACACA);
    outline: none;
}
#reply-title {
    font-family: Oswald;
    letter-spacing: -2px;
    font-size: 26px;
    font-weight: 600;
    color: #4B6C5B;
    margin: 20px 0 5px 0;
}
#cancel-comment-reply-link {
    color: brown;
    margin-left: 10px;
}
#comment {
    border: 1px solid var(--color-CACACA);
    height: 125px;
    border-radius: 10px;
    filter: drop-shadow(0px 2px 0px #CACACA);
    outline: none;
}
.comment-form-comment label {
    color: #000;
    margin-bottom: 10px;
}
#submit {
    color: #719F67;
    font-weight: 700;
    border-color: #719F67;
    border-radius: 5px;
}
#submit:focus,
#submit:hover {
    background-color: #719F67;
    color: #fff;
}
#comments ol.comment-list .children:before {
    content: "";
    display: inline-block;
    /* font-size: 1em; */
    /* font-weight: 400; */
    left: 0;
    /* line-height: 100%; */
    position: absolute;
    top: 45px;
    width: 20px;
    height: 20px;
    border-bottom: 1px solid #8AC17C;
    border-left: 1px solid #8AC17C;
}
.comment-body,
.comment-author.vcard b a { color: #000; }
.comment-body a { color: #719F67; }

/* Páginação */
.elementor-pagination i { color: var(--color-CACACA); }

/* Busca */
.page-busca .elementor-field-type-submit {
    align-items: center;
    gap: 15px;
}

/* Loading */
.loading-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.loading-spinner {
  font-size: 2rem;
  color: #8AC17C;
  animation: spin 1s linear infinite;
}

/* Elipssis */
.text-elipssis,
.text-elipssis .elementor-icon-list-text,
.text-elipssis .elementor-heading-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 150px;
}

/* Remover ellipsis ao passar o mouse sobre o card */
/* .e-loop-item:hover .text-elipssis .elementor-icon-list-text,
.e-loop-item:hover .text-elipssis .elementor-heading-title {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    width: auto;
} */

/* Card Slide */
/* .e-loop-item { height: 420px; }
.e-loop-item .loop-item-principal-medio .elementor-widget-button {
    opacity: 0;
    position: relative;
    transition: opacity 0.3s ease;
}
.e-loop-item:hover .loop-item-principal-medio::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 1;
    transition: height 0.3s ease;
    border-radius: 10px;
    box-shadow: 0 1px 6px #00000033;
} 
.e-loop-item:hover .elementor-widget-button { opacity: 1; } */

/* Formulário Filtra por Periodo */
form[name="search_editions_form"] .elementor-field-group {
    flex-wrap: nowrap;
    width: auto;
}
form[name="search_editions_form"] .elementor-field-group label {
    white-space: nowrap;
    padding-right: 5px;
}
#form-field-edicao_i,
#form-field-edicao_f { width: 100px; }
form[name="search_editions_form"] input {
    padding: 5px 10px;
    filter: drop-shadow(0 2px 0 #CACACA);
}
form[name="search_editions_form"] .elementor-field-type-html {
    width: auto;
    display: flex;
    align-items: center;
    padding: 0px 0px 10px 0;
    font-family: 'Inter';
    color: #999999;
}
form[name="search_editions_form"] .elementor-form-fields-wrapper {
    display: flex;
    align-items: end;
}
form[name="search_editions_form"] .elementor-field-type-submit { width: auto; }

/* Carregar mais */
.e-loop__load-more .elementor-button {
    background-color: transparent;
    border: 2px solid #719F67;
    border-radius: 5px;
    padding: 10px 20px 10px 20px;
    font-family: var(--font-family-inter);
    font-weight: 700;
    color: #719F67 !important;
}
.e-loop__load-more .elementor-button:hover {
    background-color: #719F67;
    color: #fff !important;
}
.e-loop__load-more .elementor-button:hover .e-load-more-spinner svg { fill: #fff !important; }
.e-load-more-spinner svg { fill: #719F67 !important; }

/* Widget de galeria */
.elementor-widget-image-gallery img:hover { border: 2px solid #cacaca; }

.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true] {
    background-color: transparent !important;
}

.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
    background-color: #4B6C5B !important;
    color: #fff !important;
}

#colegio_popup .colegio-container ul {
    padding: 0;
    list-style: none;
}

.cursor-pointer {
    cursor: pointer;
}

.line-clamp-paragraph {
    display: -webkit-box;
    -webkit-line-clamp: 3;   /* número de linhas */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.cluster-wrapper {
    background: transparent;
}

.custom-cluster {
    background-color: #140a059c;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    font-family: 'Inter', sans-serif;
    font-weight: 700;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Dispositivos pequenos (celulares) */
@media screen and (max-width: 320px) {}

/* Celulares comuns */
@media screen and (max-width: 480px) {}

/* Celulares grandes / pequenos tablets */
@media screen and (max-width: 600px) {}

/* Tablets em modo retrato */
@media screen and (max-width: 768px) {
    .page-busca .elementor-field-type-submit::before,
    .page-busca .elementor-field-type-submit::after,
    .page-crie-sua-conta .elementor-field-type-submit::before,
    .page-crie-sua-conta .elementor-field-type-submit::after {
        width: 0;
        flex: 1;
    }
}

/* Tablets em modo paisagem / notebooks pequenos */
@media screen and (max-width: 992px) {}

/* Laptops e desktops médios */
@media screen and (max-width: 1200px) {}

/* Desktops grandes */
@media screen and (max-width: 1400px) {}

/* Telas muito grandes (TVs, monitores ultrawide) */
@media screen and (min-width: 1600px) {}

.switch {
    display: block;
    --width-of-switch: 3.5em;
    --height-of-switch: 2em;
    --size-of-icon: 1.4em;
    --slider-offset: 0.3em;
    position: relative;
    width: var(--width-of-switch);
    height: var(--height-of-switch);
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #f4f4f5;
    transition: .4s;
    border-radius: 30px;
}

.slider:before {
    position: absolute;
    content: "";
    height: var(--size-of-icon,1.4em);
    width: var(--size-of-icon,1.4em);
    border-radius: 20px;
    left: var(--slider-offset,0.3em);
    top: 50%;
    transform: translateY(-50%);
    background: linear-gradient(40deg,#ff0080,#ff8c00 70%);
    ;
    transition: .4s;
}

.toggle:checked + .slider {
    background-color: #303136;
}

.toggle:checked + .slider:before {
    left: calc(100% - (var(--size-of-icon,1.4em) + var(--slider-offset,0.3em)));
    background: #303136;
    box-shadow: inset -3px -2px 5px -2px #8983f7, inset -10px -4px 0 0 #a3dafb;
}

body[data-theme="dark"] {
    background: #111;
    color: #fff;
}

body[data-theme="light"] {
    background: #fff;
    color: #000;
}