/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

/* menus */
.hidden-menu {
  display: none;
}

#top nav ul .slide-out-widget-area-toggle a:after {
    border: 0px !important;
}
.menu-destaque {
    width: 100%;
    margin: 50px 0 0 0 !important;
}
.menu-destaque::after {
    display: block;
    content: "";
    height: 1px;
    background-color: rgb(255 255 255 / 30%);
    width: 100%;
    position: relative;
    top: 100px;
}


.menu-destaque ul li {
  font-family: "Hanken Grotesk", sans-serif;
  font-size: 20px;
  line-height: 32px;
  font-weight: 600;
}

.menu-destaque ul li {
    background-color: rgb(17 35 55 / 100%);
    border: 1px solid rgb(255 255 255 / 30%);
    border-radius: 15px;
    text-align: center;
    font-size: 16px;
    padding: 10px;
}
.menu-destaque ul li span.nectar-menu-icon-text {
    position: relative;
    top: -7px;
}
.menu-destaque ul li span.nectar-menu-icon-text span.menu-title-text {
    text-align: left;
    float: left;
}
.menu-destaque ul li span.nectar-menu-icon-text span.nectar-menu-label.nectar-pseudo-expand {
    text-align: left;
    padding: 0 10px 0 0;
    margin: 0;
    font-weight: lighter;
    line-height: 16px;
}
.menu-destaque ul li .nectar-menu-label:before {
    background-color: transparent !important;
}

.menu-destaque ul li a {
    gap: 10px !important;
}
.menu-destaque ul li a img {
  width: 33px !important;
  height: 33px !important;
}
.menu-destaque ul li:hover {
    background-color: rgb(255 255 255 / 30%);
    cursor: pointer;
}

.menu-destaque ul li:hover a {
    color: #1D2E52 !important;
}

.off-canvas-menu-container {
    margin: 0 0 auto 0 !important;
}

.off-canvas-menu-container::after {
    display: block;
    content: "";
    height: 1px;
    background-color: rgb(255 255 255 / 30%);
    width: 100%;
    position: relative;
    top: 150px;
}


.off-canvas-menu-container ul li a {
  color: #ffffff !important;
}

#slide-out-widget-area .off-canvas-social-links {
    justify-content: center;
}

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

.lista-branco ul {
  margin-left: 17px;
  margin-bottom: 0px;
}

.lista-branco ul li {
  color: #ffffff;
}

.lista-branco ul li::marker {
  color: var(--p-gold);
}

.lista-horizontal ul {
  display: flex;
}

.lista-horizontal ul li {
  margin-right: 30px;
}

/* ----- BOTÕES ----- */
.botao-seta.nectar-cta.has-icon .link_wrap {
  display: inline-flex;
}

.botao-cseta.nectar-cta.has-icon .link_wrap .link_text {
  order: 1;
  font-weight: 500;
}

.botao-seta.nectar-cta.has-icon .link_wrap i.fa {
  order: 2;
}

.botao-seta.nectar-cta.has-icon .link_wrap i.fa {
  margin-left: 10px;
  margin-right: 0;
}

.no-click {
  pointer-events: none;
}

/* =========================================================
   TESTEMUNHOS 
   Dimensões: 400 x 492px | Espaço: 12px
   ========================================================= */

/* ---------- BLOCKQUOTE (card) ---------- */
#testemunhos-area .flickity-slider blockquote {
  width: 400px;
  height: 492px;
  margin: 6px;
  position: relative;
  background: none !important;
  box-sizing: border-box;
  flex: 0 0 auto;
  padding: 0;
}

/* ---------- INNER (background + conteúdo) ---------- */
#testemunhos-area .flickity-slider blockquote .inner {
  width: 100%;
  height: 100% !important;
  min-height: 100%;
  padding: 24px;
  border-radius: 0px;

  display: grid;
  align-content: end;
  align-items: end;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;

  
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* ---------- ÍCONE QUOTE ---------- */
#testemunhos-area .flickity-slider blockquote .inner::after {
  content: "";
  position: absolute;
  top: 24px;
  left: 24px;

  width: 14px;
  height: 16px;

  background-image: url("https://heroispme.pt/wp-content/uploads/2026/01/quote.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  z-index: 2;
}


/* ---------- OVERLAY ---------- */
#testemunhos-area .flickity-slider blockquote .inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 0;
}

/* ---------- CONTEÚDO ACIMA DO OVERLAY ---------- */
#testemunhos-area .flickity-slider blockquote .inner > * {
  position: relative;
  z-index: 1;
}

/* ---------- ORDEM E CORES DO CONTEÚDO ---------- */
#testemunhos-area .flickity-slider blockquote .inner p {
  order: 1;
  color: #ffffff;
  font-size: 20px;
  line-height: 28px;
  margin-bottom: 24px;
}

#testemunhos-area .flickity-slider blockquote .inner span {
  order: 2;
  color: #ffffff;
  opacity: 1;
  font-family: Inter;
}

#testemunhos-area .flickity-slider blockquote .inner span.testimonial-name {
    font-size: 16px;
    line-height: 24px;
}

#testemunhos-area .flickity-slider blockquote .inner span.title {
    font-size: 14px;
    line-height: 20px;
}

/* ---------- HOVER STATE ---------- */
#testemunhos-area .flickity-slider blockquote:hover .inner {
  background-image: none !important;
  background-color: var(--p-gold);
}

#testemunhos-area .flickity-slider blockquote:hover .inner::before {
  background: rgba(0, 0, 0, 0);
}

/* garantir texto sempre branco */
#testemunhos-area .flickity-slider blockquote:hover .inner * {
  color: #ffffff;
}

/* animação */
#testemunhos-area .flickity-slider blockquote .inner,
#testemunhos-area .flickity-slider blockquote .inner::before {
  transition: background-color 0.3s ease, background-image 0.3s ease;
}

/* ---------- PAGINAÇÂO ---------- */
#testemunhos-area .flickity-page-dots {
  display: none;
}

/* =========================================================
   FORMULÁRIOS
   ========================================================= */

.gform-theme--foundation .gform_fields {
    row-gap: 23px !important;
}

.gform-field-label {
  color: #ffffff !important;
}

.gform-field-label:hover a {
  font-weight: 500;
}

.gform-field-label .gfield_required_asterisk {
  visibility: hidden;
}

form input,
form .select2-selection,
.ginput_container_select {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #ffffff;
    height: 58px !important;
    border: 1px solid rgb(255, 255, 255, 0.2) !important;
    border-radius: 15px !important;
    color: #ffffff !important;
}

form .gfield.gfield--type-select,
.gform-theme--foundation.gfield select.large,
.gform-theme--foundation .gfield select.large {
    height: 58px !important;
    border-bottom: 0;
} 

.gform-theme--foundation .gfield select {
  padding-top: 11px !important;
}

.gform-theme--foundation .gfield select option {
  color:#0a0a0a !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 45px !important;
}

/*body[data-fancy-form-rcs="1"] .select2-container--default .select2-selection--single .select2-selection__rendered:not(section option) {
  color: rgb(255, 255, 255, 0.5) !important;
}

select :first-of-type {
  color: rgb(255, 255, 255, 0.5) !important;
}*/

body[data-fancy-form-rcs="1"] .fancy-select-wrap {
    padding-top: 0px !important;
}

body[data-fancy-form-rcs="1"] .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 39px;
    width: 30px;
    top: -40px;
    position: relative;
    float: right;
}

form input[type="radio"],
form input[type="checkbox"] {
  height: 20px !important;
  color: #ffffff !important;
  background-color: rgb(255, 255, 255, 0.5) !important;
}

form input[type="submit"] {
  border: 0px !important;
}

input[type="submit"] {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  text-indent: -15px;
  background-color: var(--p-gold) !important;
  color: #ffffff;
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):checked::before, .gform-theme--framework input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):checked::before {
    color: var(--s-navy) !important;
}

input[type="submit"]:hover {
  background-color: var(--s-navy) !important;
}

.gform_validation_errors,
.gform_required_legend {
  display: none !important;
}

.gfield_validation_message {
  margin-top: 1px !important;
}

.gform-theme--framework .gf_progressbar_title {
    margin-block-end: var(--gf-field-pg-prog-title-margin-y-end);
    color: rgb(255 255 255 / 50%);
    font-size: 12px !important;
    font-family: Inter;
    font-weight: 400;
}

.gf_progressbar.gf_progressbar_custom,
.gf_progressbar_percentage.percentbar_custom.percentbar_100 {
    height: 5px;
}

.gf_progressbar_percentage.percentbar_custom.percentbar_50
.gf_progressbar_percentage.percentbar_custom.percentbar_100 {
    height: 5px;
}


.gform-theme-button {
  /*background-color: var(--p-gold) !important;*/
  background-color: rgb(255 255 255 / 20%) !important;
  border: 1px solid rgb(255 255 255 / 10%) !important;
  height: 58px !important;
}

.gform-theme-button:hover {
  background-color: var(--s-navy) !important;
}

.gform-theme--foundation #field_submit, .gform-theme--foundation .gform_footer, 
.gform-theme--foundation .gform_page_footer {
    flex-wrap: nowrap;
}

/* icon dentro do botao ( fuciona juntamente com jQuery ) */
.submit-icon-dynamic {
  position: absolute !important;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;

  color: #ffffff;
  font-size: 14px;
}

/* pagina de candidaturas */
.vc_row.formulario-candidatura,
.vc_row.formulario-recomendacao,
.formulario-voltar {
  display: none;
}

.gform_confirmation_message {
  color: #ffffff !important;
}

/* ---------- ICON NO PLACEHOLDER  ---------- */
.form-newsletter input[type=email] {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  color: #ffffff;

  background-image: url("https://heroispme.pt/wp-content/uploads/2026/01/email-placeholder.png");
  background-repeat: no-repeat;
  background-position: 16px center;
  background-size: 20px;
}
/* esconder ícone quando HÁ TEXTO */
.form-newsletter input[type=email]:not(:placeholder-shown) {
  background-image: none;
}

/* ---------- PLACEHOLDERS FORMS---------- */
::placeholder {
  font-family: 'Inter', sans-serif;
  color: #ffffff;
  opacity: 0.5;
  font-size: 16px;
}

/* Chrome, Safari, Edge */
::-webkit-input-placeholder {
  font-family: 'Inter', sans-serif;
  color: #ffffff;
  opacity: 0.5;
  font-size: 16px;
}

/* Firefox */
::-moz-placeholder {
  font-family: 'Inter', sans-serif;
  color: #ffffff;
  opacity: 0.5;
  font-size: 16px;
}

/* Internet Explorer 10–11 */
:-ms-input-placeholder {
  font-family: 'Inter', sans-serif;
  color: #ffffff;
  opacity: 0.5;
  font-size: 16px;
}

/* Microsoft Edge (legacy) */
::-ms-input-placeholder {
  font-family: 'Inter', sans-serif;
  color: #ffffff;
  opacity: 0.5;
  font-size: 16px;
}

/* ---------- PLACEHOLDERS NEWSLETTER---------- */
.form-newsletter input[type=email]::placeholder {
  padding-left: 35px;
}

/* =========================================================
   NEWSLETTER
   ========================================================= */
#newsletter .iwithtext {
  background-color: rgb(186 142 79 / 20%);
  border: 1px solid rgb(186 142 79 / 30%);
  padding: 10px 20px;
  border-radius: 50px;
  display: table;
}

#newsletter .iwithtext .iwt-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
}

#newsletter .iwithtext .iwt-text {
    padding-left: 20px;
    color: #ffffff;
    font-size: 14px;
    line-height: 18px;
}

/* =========================================================
   PAGINA DE CANDIDATURA
   ========================================================= */
.candidatura,
.recomendacao,
.formulario-voltar {
  cursor: pointer;
}

.formulario-voltar .iwithtext {
  background-color: rgb(186 142 79 / 20%);
  border: 1px solid rgb(186 142 79 / 30%);
  padding: 10px 20px;
  border-radius: 50px;
  display: table;
}

.formulario-voltar .iwithtext .iwt-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
}
.formulario-voltar .iwithtext .fa {
  color: #ffffff;
  font-size: 16px;
  line-height: 16px;
  height: 26px;
  width: 16px;
}

.formulario-voltar .iwithtext .iwt-text {
    padding-left: 20px;
    color: #ffffff;
    font-size: 14px;
    line-height: 18px;
}

/* =========================================================
   PAGINA DE INICIATIVA
   ========================================================= */
#cta {
  /*transition: top 0.35s ease;*/
}
#cta.cta-offset {
  /*top: 80px;*/
  /*transform: translateY(var(--cta-offset, 80px));*/
}

#cta {
    width: 100%;
}

.cta-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
}


#cta h5 {
  font-size: 30px;
}

#impacto .contadores .wpb_text_column {
    min-height: 55px;
}

#impacto .contadores .contador-volume h5 span::after {
  /*display: contents;
  content: " M€";*/
  font-weight: 400 !important;
}

#impacto .contadores .wpb_text_column p {
  font-size: 14px !important;
  line-height: 20px !important;
}

.apoio-card .vc_column-inner {
  width: 340px;
  height: 100%
}

#proposito .iwithtext .iwt-icon {
    width: 28px !important;
    height: 28px !important;
}
#proposito .iwithtext .iwt-text {
    padding-left: 45px;
    color: #ffffff;
    font-size: 14px;
    line-height: 18px;
}

.tabbed>ul, .wpb_content_element .tabbed .wpb_tabs_nav {
    margin-left: 0;
    margin-bottom: 120px;
}

.tabbed[data-style="minimal_alt"] >ul li:not(.cta-button) {
    margin: 0 100px !important;
}

.tabbed[data-alignment=center] .wpb_tabs_nav li, 
.tabbed[data-alignment=right] .wpb_tabs_nav li {
    float: inline-start !important;
}

.tabbed > ul li.tab-item {
    background-color: rgb(186, 142, 79, 0.2) !important;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex !important;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.tabbed > ul li.tab-item a {
    background-color: rgb(186, 142, 79, 0.3) !important;
    width: 48px;
    height: 48px;
    border-radius: 50%;
}

.tabbed > ul li.tab-item.active-tab,
.tabbed > ul li.tab-item:hover {
  background-color: rgb(186, 142, 79, 0.2) !important;
}

.tabbed > ul li.tab-item.active-tab a,
.tabbed > ul li.tab-item:hover a {
  background-color: rgb(186, 142, 79, 1) !important;
}

.tabbed > ul li a span {
    color: #ffffff !important;
    position: relative;
    top: 1px;
}

/* Adicionar o titulo abaixo dos tabs */
.tabbed > ul li.tab-item {
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* círculo / número */
.tabbed > ul li.tab-item a {
	display: flex;
	justify-content: center;
	align-items: center;
}

/* texto (Missão / Visão / Valor) */
.tabbed > ul li.tab-item .tab-label {
	position: absolute;
  top: 85px;
  font-family: "Hanken Grotesk", sans-serif;
  letter-spacing: -0.7px;
  font-size: 36px;
  line-height: 40px;
  font-weight: 400;
	color: rgb(10, 10, 10,0.3);
	text-align: center;
	pointer-events: none;
}

.tabbed > ul li.tab-item.active-tab .tab-label,
.tabbed > ul li.tab-item:hover .tab-label {
  color: rgb(10, 10, 10, 1);
}

li.magic-line {
	transform: none !important;
	width: 70% !important;
	left: 10px !important;
	position: absolute !important;
	top: 34px !important;

	height: 2px !important;
	background: repeating-linear-gradient(
		to right,
		#e0e0dc,
		#e0e0dc 8px,
		transparent 8px,
		transparent 16px
	) !important;
}

/* área de texto dos tabuladores */
.wpb_tab p, 
.wpb_tab p strong {
    font-family: "Hanken Grotesk", sans-serif;
    font-size: 24px;
    line-height: 36px;

}
.wpb_tab p strong {
  font-weight: 600;
}


/* =========================================================
   FOOTER
   ========================================================= */
.logo-footer {
  width: 100%;
  max-width: 142px;
  height: auto;
}

#footer-outer .footer-social-area i {
  color: #ffffff;
}

/* SOCIAL LINKS WIDGET */
.footer-social-area ul.footer-social-links {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: baseline;
}
.footer-social-area ul.footer-social-links li {
  margin-right: 10px;
}

.footer-social-area ul.footer-social-links li a {
  padding: 10px;
  border-radius: 50px;
  border: 1px solid #ffffff;
}

.footer-social-area ul.footer-social-links li:hover > a {
  border: 1px solid var(--p-gold);
  background-color: var(--p-gold);
}

#footer-outer #footer-widgets .col ul li:first-child >a, 
#footer-outer #footer-widgets .col ul li:first-child {
    padding-top: 10px !important;
}
.footer-social-area ul.footer-social-links li i.fa,
.footer-social-area ul.footer-social-links li i.fa::after,
.footer-social-area ul.footer-social-links li i.fa::before {
  display: grid;
  color: #ffffff;
  width: 20px !important;
  height: 20px !important;
}

.footer-social-area ul.footer-social-links li:hover i.fa::before {
  color: var(--s-navy) !important;
}

#footer-outer .jelly-link::before {
   content: "";
   display: inline-block;
   width: 100px;
   height: 30px;
   background: url('https://jelly.pt/images/svg/jellycode-mono-vclara.svg') no-repeat center / contain;
   vertical-align: middle;
   float: left;
   margin-right: -23px;
}

#footer-outer .politicas {
    float: right;
}

/* =========================================================
   MEDIA QUERIES
   ========================================================= */
/* Desktop muito grande */
@media (max-width: 1400px) { }

/* Desktop grande */
@media (max-width: 1200px) { }



/* Desktop normal com zoom ~125% */
@media (max-width: 1100px) { }

@media (max-width: 1024px) { 
  .wpb_column:not([class*=vc_col-xs]) {
    margin-bottom: 0 !important;
  }
}

/* Tablet grande / laptop pequeno */
@media (max-width: 992px) { }

/* Tablet */
@media (max-width: 768px) { 
}

/* Mobile grande / phablet */
@media (max-width: 576px) { }

/* Mobile */
@media (max-width: 480px) { 
  /* Geral */
  p {
    font-size: 16px;
  }

  .titulo-pagina {
    font-size: 12px !important;
    margin-bottom: 0 !important;
  }
  .botao-seta span {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }

  .botao-seta.texto-grande span {
      padding-top: 30px !important;
      padding-bottom: 20px !important;
      padding-left: 0px !important;
      padding-right: 0px !important;
  }
  .botao span {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .botao-seta span a span {
    font-size: 16px !important
  }
  .botao span a span{
    font-size: 14px !important
  }

   /* Testemunhos */
  #testemunhos-area .flickity-slider blockquote {
    width: 320px;
    height: 450px;
  }
  #testemunhos-area .flickity-slider blockquote .inner p {
    font-size: 19px !important;
    line-height: 22px !important;
  }
  #testemunhos-area .flickity-slider blockquote .inner span {
      line-height: 22px;
  }

  /* Newsletter */
  .lista-horizontal ul {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
  }
  .lista-horizontal ul li {
    margin-right: 0px;
    margin-bottom: 20px;
  }
  /* Parceiros */
  .parceiros-logos .vc_row-fluid>.span_12 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    float: none;
  }
  /* Inscrição */
  .cadidatura-left-area .column-bg-overlay {
    border-radius: 15px 15px 0 0 !important;
  }

  .cadidatura-right-area .column-bg-overlay {
    border-radius: 0 0 15px 15px !important;
    border-top-right-radius: 0px !important;
  }

  .cadidatura-left-area.wpb_column.bl_br_15px > .vc_column-inner > div[class*="-wrap"], 
  .cadidatura-left-area.wpb_column.bl_br_15px > .vc_column-inner {
    border-bottom-left-radius: 0px !important;
  }

  .cadidatura-right-area.wpb_column.tr_br_15px > .vc_column-inner > div[class*="-wrap"], 
  .cadidatura-right-area.wpb_column.tr_br_15px > .vc_column-inner {
      border-top-right-radius: 0px !important;
  }

  .candidatura .vc_column-inner, 
  .recomendacao .vc_column-inner {
      border-radius: 15px !important;
  }

  .candidatura .img-with-aniamtion-wrap, 
  .recomendacao .img-with-aniamtion-wrap {
      margin-right: 0px !important;
  }

  .recomendacao .vc_column-inner {
      margin-top: 30px;
  }

  /* Iniciativa */
  #cta h5 {
    font-size: 24px;
    line-height: 30px;
  }
  #impacto .contadores .wpb_text_column {
    min-height: 0px;
  }

  .apoio-card .vc_column-inner {
    width: 100%;
    height: auto;
    margin-top: 20px;
  }
  .apoio-card  .wpb_wrapper {
    align-items: flex-start !important;
  }

  .apoio-card  .wpb_wrapper .wpb_text_column {
    max-width: 220px !important;
  }

  /* Patrocinadores */
  .patrocinador,
  .patrocinador .column-image-bg {
    max-height: 250px !important;
    min-height: 250px !important;
  }
  .botao-seta.patrocinios.nectar-cta.has-icon .link_wrap {
    display: flex;
    justify-content: center;
  }
}

/* Mobile pequeno */
@media (max-width: 360px) {
  /* Menu */
  .menu-destaque::after {
    top: 60px;
  }
  .off-canvas-menu-container::after {
    top: 100px;
}


  /* Testemunhos */
  #testemunhos-area .flickity-slider blockquote {
    width: 310px;
  }
  /* Iniciativa */
  #cta h5 {
    font-size: 22px;
    line-height: 26px;
  }
  .apoio-card  .wpb_wrapper .wpb_text_column {
    max-width: 195px !important;
  }
 
 }
