/* Instituto Friol sobre o template Generosity: fotos próprias, rodapé sólido, PIX e formulário. */
#preloader { display: none !important; }
.section-cta { background-image: url("../images/foto-conversa.jpg"); background-position: center; }
.section-counter { background-image: url("../images/foto-turma.jpg") !important; background-position: center; }
.page-header { background-image: url("../images/foto-sorrisos.jpg"); background-position: center 30%; }
.footer-widget-area-bg { background-image: none !important; background-color: #241433 !important; }
.footer-contents { background-color: #1a0f26 !important; }

.header-logo img { max-height: 84px; width: auto; }
.section-banner .banner-content h2 { font-size: 64px; line-height: 1.12; }
.section-banner .banner-content h3 { max-width: 760px; margin-left: auto; margin-right: auto; line-height: 1.5; }
@media (max-width: 767px) { .section-banner .banner-content h2 { font-size: 36px; } }

.about-highlight-1 .about-text, .cause-content p { min-height: 0; }
.frentes .about-highlight-1 { min-height: 270px; }
@media (max-width: 991px) { .frentes .about-highlight-1 { min-height: 0; } }
.counter-block-1 .counter-texto { display: block; font-size: 30px; font-weight: 700; color: #fff; margin-top: 6px; }

.pix-caixa { background: #ffffff; border: 2px dashed #6a3d9a; border-radius: 6px; padding: 26px; text-align: center; }
.pix-caixa small { display: block; text-transform: uppercase; letter-spacing: 2px; font-weight: 700; color: #777; }
.pix-caixa code { display: block; background: none; color: #241433; font-size: 30px; font-weight: 700; margin: 10px 0 14px; padding: 0; white-space: normal; word-break: break-all; }
.pix-caixa output { display: block; min-height: 22px; margin-top: 10px; color: #6a3d9a; font-weight: 600; }
.section-newsletter .newsletter-heading, .section-newsletter .newsletter-subheading { color: #fff; }

.form-group label { font-weight: 600; }
.form-aviso { display: block; color: #777; margin-top: 6px; }
.escondido { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.retorno { padding: 12px 16px; border-radius: 4px; font-weight: 600; margin-top: 12px; }
.retorno.ok { background: #e6f4ea; color: #1e5631; }
.retorno.erro { background: #fbe4e8; color: #8a1c2c; }
.texto-legal h3 { margin-top: 28px; }
.diretoria-nome { font-size: 22px; font-weight: 700; margin: 0; }

/* contraste nos quadros violeta: título e ícone sempre brancos */
.about-featured-block .about-content h3, .about-featured-block .about-content h3 a,
.about-featured-block:hover .about-content h3, .about-featured-block:hover .about-content h3 a,
.about-featured-block:hover i.fa, .about-featured-block:hover .about-text { color: #ffffff !important; }
.about-highlight-1 .about-content h3 { color: #111111; }
.about-highlight-1 .about-text { color: #444444; }
.about-featured-block .about-text { color: #ffffff; }

/* PIX com QR code */
.pix-bloco { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; justify-content: center; text-align: left; }
.pix-bloco img.pix-qr { width: 190px; height: 190px; background: #fff; border: 1px solid #ddd; border-radius: 6px; padding: 6px; }
.pix-bloco .pix-dados { flex: 1 1 260px; min-width: 0; }
.pix-bloco .btn { margin: 4px 6px 4px 0; }
.pix-passo { color: #555; margin: 0 0 8px; }

/* faixa de doação */
.faixa-doacao { background: #6a3d9a; color: #fff; padding: 34px 0; }
.faixa-doacao h2 { color: #fff; margin: 0 0 6px; font-size: 30px; }
.faixa-doacao p { color: #f1eaf8; margin: 0; font-size: 17px; }
.faixa-doacao .btn { background: #ffffff; color: #6a3d9a; border-color: #ffffff; font-weight: 700; margin-top: 8px; }
.faixa-doacao .btn:hover { background: #241433; color: #fff; border-color: #241433; }
@media (min-width: 992px) { .faixa-doacao .text-right-md { text-align: right; } }

/* botão flutuante de doação */
.doar-flutuante { position: fixed; right: 18px; bottom: 76px; z-index: 999; background: #e8457a; color: #fff !important; font-weight: 700; padding: 13px 20px; border-radius: 40px; box-shadow: 0 8px 22px rgba(0,0,0,.25); text-decoration: none !important; }
.doar-flutuante:hover { background: #241433; }
.doar-flutuante .fa { margin-right: 6px; }

/* lousa de idiomas (no lugar da foto em inscrições abertas) */
.lousa-idiomas { background: #2c4636; border: 14px solid #8a6a46; border-radius: 4px; box-shadow: inset 0 0 70px rgba(0,0,0,.4); padding: 40px 34px; color: #f2f0e6; font-family: "Caveat", "Comic Sans MS", cursive; min-height: 340px; display: flex; flex-direction: column; justify-content: center; gap: 6px; }
.lousa-idiomas .l1 { font-size: 64px; line-height: 1; }
.lousa-idiomas .l2 { font-size: 64px; line-height: 1; color: #f6d77b; margin-left: 40px; }
.lousa-idiomas .l3 { font-size: 34px; margin-top: 14px; opacity: .9; }
.lousa-idiomas .l4 { font-size: 34px; color: #9fd6b0; margin-left: 30px; }
@media (max-width: 767px) { .lousa-idiomas { margin-bottom: 24px; } .lousa-idiomas .l1, .lousa-idiomas .l2 { font-size: 46px; } }
.footer-qr { width: 120px; height: 120px; background: #fff; border-radius: 6px; padding: 4px; margin-top: 8px; }
