:root {
  --bs-body-font-family: 'Inter';
  --bs-body-bg: #FFFFFF;
  --bs-blue: #0051A0;
  --bs-yellow: #F2C300;
  --bs-green:#04D16E;
  --bs-green-bold:#577253;
  --bs-navbar-color: #DEDEDE;
  --bg-dark: #353535;
  --bg-white: #FFFFFF;
  --bg-light: #FCD1C0;
  --bg-blue: #0051A0;
  --bg-green:#04D16E;
  --bs-navbar-toggler-icon-bg-white: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color-white: white;
  --nav-link-color: #0051A0 !important; /* verde */
  --nav-link-font-weight: bold;
  --nav-link-hover-color: #04D16E; /* verde escuro */
  --title-color: #0051A0;/* azul escuro */
  --footer-link-color: #FFFFFF; /* azul */
  --footer-link-hover-color: #04D16E; /* azul */
  --text-color-silver-dark: #716969;
  /* Gradiente do tema */
  --gradient-theme: linear-gradient(to right, 
    #137AC9 0%, 
    #1C80BE 5%, 
    #2486B5 10%, 
    #2B8BAD 15%, 
    #3390A3 20%, 
    #3C9699 25%, 
    #449C90 30%, 
    #4DA286 35%, 
    #55A87C 40%, 
    #5DAD73 45%, 
    #66B469 50%, 
    #73B85F 55%, 
    #81BC55 60%, 
    #90C04B 65%, 
    #9FC341 70%, 
    #B1C835 76%, 
    #BBCB2E 80%, 
    #CACF24 85%, 
    #DBD319 90%, 
    #E9D70F 95%, 
    #F8DB05 100%);

  --gradient-theme-invert: linear-gradient(to left, 
    #137AC9 0%, 
    #1C80BE 5%, 
    #2486B5 10%, 
    #2B8BAD 15%, 
    #3390A3 20%, 
    #3C9699 25%, 
    #449C90 30%, 
    #4DA286 35%, 
    #55A87C 40%, 
    #5DAD73 45%, 
    #66B469 50%, 
    #73B85F 55%, 
    #81BC55 60%, 
    #90C04B 65%, 
    #9FC341 70%, 
    #B1C835 76%, 
    #BBCB2E 80%, 
    #CACF24 85%, 
    #DBD319 90%, 
    #E9D70F 95%, 
    #F8DB05 100%);

  --gradient-blue-top-to-bottom: linear-gradient(to bottom, 
    #0051A0 0%, 
    #00488E 18%, 
    #00407F 33%, 
    #00376D 50%, 
    #002F5C 67%, 
    #00264B 83%, 
    #001D3A 100% 
  );

  --gradient-theme-2: linear-gradient(to right, 
    #00A6FF 0%,  
    #01B4CF 33%, 
    #02B7C5 40%, 
    #02BCB5 50%, 
    #03C49B 70%, 
    #03CA85 85%, 
    #04D16E 100% 
  );
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: var(--bg-blue) !important;
}

/* Voting Results Styles */
.voting-title {
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 1rem;
    color: var(--bs-blue);
}

.voting-number {
    font-size: 70px;
    font-weight: bold;
    margin-bottom: 0;
    background: var(--gradient-theme-2);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.voting-result-block {
    margin-bottom: 0;
}

.gradient-divider {
    height: 5px;
    background: var(--gradient-theme);
    width: 100%;
    margin: 0 auto;
}

/* Denunciations form: larger inputs */
.denunciation-form .form-control,
.denunciation-form .form-select,
.denunciation-form textarea.form-control {
    font-size: 1.05rem;
    padding: 1rem 1rem;
    min-height: 58px;
}

.denunciation-form .input-group-text {
    font-size: 1.05rem;
    padding: 1rem 1rem;
}

.btn-gradient-theme {
    background: var(--gradient-theme-2);
    border: none;
    color: white;
    font-weight: bold;
    font-size: 2rem;
    transition: opacity 0.3s ease;
}

.btn-gradient-theme:hover {
    opacity: 0.9;
    color: white;
}

[data-bs-theme="menu-transparent-over"]{
  font-family: "Inter", sans-serif;
  --bs-navbar-color: #DEDEDE !important;
  --bs-navbar-hover-color: var(--bs-green);
  --bs-nav-link-font-size: 1.2rem;
}

.btn-lg {--bs-btn-padding-y: 1.5rem;}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #18456E;
  --bs-btn-border-color: #18456E;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #2ea63c;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49,132,253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
  font-family: "Inter", sans-serif;
  font-weight: var(--nav-link-font-weight);
}

#header{
  border-bottom: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
  width: 100%;
  transition: background-color 0.3s ease;
}
/* Borda inferior com gradiente */
#header::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background: var(--gradient-theme);
}
#header .navbar-brand{max-width: 250px;}
#header-logo{max-width: 55%;}
#header .navbar{background: var(--bg-white)}
.nav-link {
  font-family: "Inter", sans-serif;
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: 18px;
  font-weight: var(--nav-link-font-weight);
  color: var(--nav-link-color);
  text-decoration: none;
  background: 0 0;
  border: 0;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;
}

.nav-link:focus, .nav-link:hover {color: var(--nav-link-hover-color);}

/* Espaçamento entre itens do menu */
.navbar-nav .nav-item:not(:last-child):not(.nav-item-empty) {margin-right: 2rem;}

/* Maior espaçamento em telas grandes */
@media (min-width: 1400px) {
  .navbar-nav .nav-item:not(:last-child):not(.nav-item-empty) {
    margin-right: 2rem;
  }
}

.nav-item .btn{font-size: var(--bs-nav-link-font-size) !important;}

.main{padding-top: 80px;}

.btn-success {--bs-btn-bg: var(--bs-green);}

.btn-lg-md {--bs-btn-padding-y: 0.5rem; --bs-btn-padding-x: 3rem; --bs-btn-font-size: 2rem;}
.btn-lg-2x {--bs-btn-padding-y: 1.5rem; --bs-btn-padding-x: 2rem; --bs-btn-font-size: 1.5rem; --bs-btn-border-radius: var(--bs-border-radius-lg);}

.btn-rounded-40{border-radius: 40px !important;}
.box-shadow-theme{box-shadow: 0.5rem 0.2rem 1rem var(--bs-green) !important;}

.border-success {--bs-border-opacity: 0.8; border-color: var(--bs-green) !important;}

.nav-item-empty{padding-right: 3rem; padding-left: 3rem;}
.nav-link.social{font-size: 1.1rem;}
.fab{color: var(--bs-green)}
.fab:hover{color: var(--bs-white)}

.position-absolute-bottom-center{position: absolute;top: 70%;left: 50%;transform: translate(-50%, -50%);}

.stay-informed{background: var(--gradient-theme-invert); height: 165px;}
.stay-informed .text-stay{height: auto; color: white; }
.stay-informed .text-stay h2{font-weight: normal; font-size: 1.8rem; padding: 0px; margin: 0px;}
.stay-informed .text-stay a img{max-width: 60%;}
.stay-informed .text-stay a img:hover{opacity: 0.5;}
.stay-informed .text-stay i{color: white; font-size: 49px;}
.stay-informed .text-stay i:hover{opacity: 0.8;}
.text-stay a img:hover{opacity: 0.5;}

.title-page{
    font-family: "Inter", sans-serif; font-style: normal;
    text-transform: uppercase; 
    font-size: 3rem; 
    color: var(--title-color) !important; 
    font-weight: bold;
  }

.subtitle-page{font-size: 2.3rem; color: var(--bs-blue); }

.about-us{/*background-image: url('../img/bg-about-us.jpg');*/ color: var(--text-color-silver-dark); text-align: justify; font-size: 1.25rem;}
.about-us p{font-size: 1.2rem;}

.our-flags{background: var(--gradient-blue-top-to-bottom); color: white; border-top: 15px solid var(--bs-green); min-height: 900px;}
.our-flags h5{color: white; text-transform: uppercase; font-weight: bold; font-size: 1.20rem;}
.our-flags .title-page{color: white !important;}
.our-flags .div-img-flag{height: 200px;}


/* Estilo para notícias na home (fundo azul) */
.notices .div-notice{border: 1px solid #0051A0; border-radius: 4px; background-color: #0051A0; color: white;}
.notices .div-notice h5,
.notices .div-notice .div-text-notice h5{color: white;}
.notices .div-notice .div-text-notice{text-align: justify; color: white;}

/* Estilo para notícias na página interna (fundo branco) */
.div-notice-view{
  border: 1px solid #e0e0e0; 
  border-radius: 4px; 
  background-color: #FFFFFF; 
  color: #333;
}
.div-notice-view h2,
.div-notice-view h5{color: #333;}
.div-notice-view .div-text-notice-view{
  text-align: justify; 
  color: #333;
}
.btn-notice{background-color: #00A6FF; border-color: #00A6FF; color: white; font-weight: 700;}
.btn-notice:hover{color: white; background-color: #0095e5; border-color: #0095e5; opacity: 0.9;}

.petitions .title-page{color: #2B7E08 !important;}
.petitions .div-petition{border: 1px solid #2B7E08; border-radius: 4px; background-color: #2B7E08; color: white;}
.petitions .div-petition h5,
.petitions .div-petition .div-text-petition h5{color: white;}
.petitions .div-petition .div-text-petition{text-align: justify; color: white;}
.petitions .btn-add-petition{font-size: 30px; padding-left: 30px; padding-right: 30px;}

.commitments{background-color: white; color: var(--bs-green-bold); color: var(--bs-blue); height: auto;}
.commitments .text-commitments{min-height: 90px; font-size: 1.3rem;}
.commitments-header{display: flex; align-items: center; justify-content: center; gap: 1.5rem; padding: 2rem 0;}
.commitments-header__icon{max-width: 160px; height: auto;}

#banner-meio-1 a img:hover, #banner-meio-2 a img:hover, #banner-meio-3 a img:hover, #banner-meio-4 a img:hover{opacity: 0.8;}
#banner-meio-1{border-top: 15px solid var(--bs-yellow);}

.video-home iframe{width: 100%; height: auto; min-height: 620px;}

.contact .input-group-text{background-color: transparent !important; border-right: 0px !important; align-items: baseline; padding-top: 15px;}
.contact .input-group .form-control{border-left: 0px !important;}


.lh-40{line-height: 40px;}
.lh-50{line-height: 50px;}

.swiper-button-prev::after{font-family: 'Font Awesome 6 Brands';}
.swiper-button-prev::after, .swiper-rtl, .swiper-button-next::after, .swiper-rtl{content: '';}
.carousel-control-prev-icon, .swiper-button-prev{background-image: url('../img/seta-prev.png');}
.carousel-control-prev-icon, .swiper-button-next{background-image: url('../img/seta-next.png');}
.carousel-control-next-icon{background-image: url('../img/seta-next.png');}
.swiper-button-next, .swiper-button-prev{width: 44px;}

.carousel-control-next, .carousel-control-prev{width: 5%;}
.carousel-inner .block-text{min-height: 250px; height: auto; max-height: 450px; overflow: auto; background: white; border-radius: 20px;}

#header.scrolled {
  background-color: var(--bg-white) !important; /* Cor de fundo alterada ao rolar */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Sombra sutil ao rolar */
}
#header-logo.scrolled {/*width: 65%;  Dimensões do logo alteradas ao rolar */}


#depoimentos .title{color: var(--bs-heading-color);}
#depoimentos h3{color: var(--bs-green); font-weight: bold;}
#depoimentos .carousel-inner{overflow: inherit !important;}
#depoimentos .carousel-inner .block-text{min-height: 350px; height: auto; max-height: 400px; overflow: auto; background: white; border-radius: 20px;}

.faq-item h3.question{padding: 0px; margin: 0px;}
.faq-item .question p{padding: 0px; margin: 0px;}


.swiper.depoimentos .swiper-slide .depoimento-foto{transform: translateY(50px);}
.swiper.depoimentos .swiper-slide .content-text{min-height: 250px; height: auto; max-height: 400px; overflow: auto; background: white; border-radius: 20px;}
.swiper.depoimentos .swiper-slide .content-text .block-text{transform: translateY(20px);}

#cadastro .title{color: var(--bs-green);}

#cadastro .form-control{background-color: var(--bs-white); color: var(--bs-gray)}
#cadastro .form-control.form-control-lg{height: 70px;}
#cadastro .form-check-label{font-size: 1.7rem; color: var(--bs-gray)}
#cadastro .form-check-input{width: 2em; height: 2em; margin-right: 10px; background: white;}
#cadastro .form-check-input:checked{background: var(--bs-green);}

#result .message.success{text-align: center;font-size: 20px;color: var(--bs-green);}
#result .message.error{text-align: center;font-size: 20px;color: red;}

#bt-youtube a:hover{opacity: 0.8;}
#grupo-whatsapp a:hover{opacity: 0.8;}
#video a:hover{opacity: 0.8;}

footer{
  border-top: 10px solid var(--bs-green);
  background: var(--gradient-blue-top-to-bottom) !important;
}

footer .nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--nav-link-font-weight);
  color: var(--footer-link-color);
  text-decoration: none;
  background: 0 0;
  border: 0;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;
}

footer .nav-link:hover{opacity: 0.8; color: var(--footer-link-hover-color);} 

footer .icons{max-width: 80%;}

footer .first-column{border-right: 2px solid var(--bs-blue);}

::placeholder {
  color: color: var(--bs-gray);
  opacity: 1; /* Firefox */
}

::-ms-input-placeholder { /* Edge 12 -18 */
  color: color: var(--bs-gray);
}

.top-50-negative{top: -50px;}
.top-60-negative{top: -60px;}
.top-25{top: 25%;}
.top-30{top: 30%;}
.top-35{top: 35%;}
.top-40{top: 40%;}
.start-30{left: 30%;}
.start-31{left: 31%;}
.start-65{left: 65%;}
.start-70{left: 70%;}
.w-30{width: 30%;}
.w-max-70{max-width: 70%;}
.min-height-body-footer{min-height: 450px;}

.position-bt-close-modal{top: -7px !important; right: 2px !important;}

.logo-sit{position: absolute; bottom: -40px; left: 0; max-width: 12%;}
.copyright{background: var(--gradient-theme-invert); height: 60px; line-height: 60px; color: var(--bs-white); font-size: 13px;}
.copyright a{color: var(--bs-white); text-decoration: none;}
.copyright a:hover{color: var(--bs-green);}

@media (max-width: 768px) {

  footer .first-column{border-right: 0px solid var(--bs-blue);}
  .main{margin-top: 0px; padding-top: 80px;}
  .navbar-brand{max-width: 70% !important;}
  #header-logo.scrolled {width: 100%;}
  .navbar-nav .nav-item:not(:last-child):not(.nav-item-empty) {margin-right: 0;margin-bottom: 0.5rem;}
  .title-page{font-size: 2rem;}
  .subtitle-page{font-size: 1.5rem;}

  /* Voting Results Responsive */
  .voting-title {font-size: 28px;}
  .voting-number {font-size: 40px;}
  .voting-action img{width: 30px;}
  .btn-gradient-theme {font-size: 1rem; padding: 0.75rem 2rem !important;}
  /*#navbarNav.navbar-collapse.collapse.show{padding-top: 20px;}*/
  
  .commitments .subtitle-page {font-size: 2rem;}
  .commitments-header{padding: 1.5rem 0; gap: 1rem; display: block; text-align: center;}
  .commitments-header__icon{max-width: 120px; text-align: center;}

  .stay-informed {height: 230px; text-align: center;}
  .stay-informed .text-stay{height: 70px; color: white;}
  .stay-informed .text-stay h2{font-size: 1.2rem;}
  .stay-informed .text-stay img{max-width: 80%;}

  .modal-body{min-height: 350px;}
  .video-home iframe {min-height: 320px;}

  .our-flags img{max-width: 70%;}
  .our-flags h5{font-size: 1rem;}

  .copyright {height: auto;line-height: 20px;font-size: 10px;padding: 10px;}

  .swiper-button-next, .swiper-button-prev{display: none;}
  
  .form-check-label h3{font-size: 1rem;}
  #cadastro .form-check-label{font-size: 1rem;}
  /*.navbar-toggler-icon{background-image: var(--bs-navbar-toggler-icon-bg-white) !important; }
  .navbar-toggler{border: 1px solid white !important;}*/
}

@media (min-width: 769px) and (max-width: 992px) {
  footer .first-column{border-right: 0px solid var(--bs-blue);}
  .main{margin-top: 0px; padding-top: 80px;}
  .stay-informed .text-stay h2{margin-top: 40px;}
  .stay-informed .text-stay img{max-width: 90%;}
  .about-us{font-size: 0.9rem !important;}
  .about-us .w-30{width: 45% !important;}
  .about-us .start-31{left: 28% !important;}
  .about-us .top-40{top: 48% !important;}
  .title-page{font-size: 2rem;}
  .subtitle-page{font-size: 1.5rem;}
}

@media (min-width: 1000px) and (max-width: 1024px) {
  #header-logo{max-width: 100px;}
  .nav-link{font-size: 12px !important;}
  .navbar-nav .nav-item:not(:last-child):not(.nav-item-empty) {
    margin-right: 0.75rem;
  }
  .nav-item-empty{padding-right: 0.25rem; padding-left: 0.25rem;}
  .fs-5 {
    font-size: 0.7rem !important;
  }
  .about-us .top-40{top: 50% !important;}
  #cadastro .form-check-label {font-size: 1.0rem !important;}
  #como-ajudamos img{width: 100%;}
  #como-ajudamos p{font-size: 12px;}
}

@media (min-width: 1200px) and (max-width: 1450px) {
  .about-us .top-40{top: 50% !important;}
  .about-us .start-31 {left: 25%;}
  .about-us .w-30{width: 40% !important;}
  .fs-5 {
    font-size: 0.9rem !important;
  }
}

/* Ajuste de scroll para compensar menu fixo - não altera layout */
html {
  scroll-padding-top: 100px;
}