/*
Theme Name: Funosa
Author: Novaigrup
Description: Custom theme for Funosa.
Version: 1.1
Text Domain: funosa
*/


/**/
:root :where(.is-layout-flow) > * {
    margin-block-start: 120px;
    margin-block-end: 120px;
}

@media (max-width: 1024px) {
  :root :where(.is-layout-flow) > * {
      margin-block-start: 84px;
      margin-block-end: 84px;
  }
}

@media (max-width: 768px) {
  :root :where(.is-layout-flow) > * {
      margin-block-start: 45px;
      margin-block-end: 45px;
  }
}

/*Headers*/

h1, h2, h3, h4, h5, h6{
  overflow-wrap: break-word!important;
}

/*.wp-block-media-text{
  padding: 12px 24px!important;
}*/

.wp-block-media-text__media img{
    border-radius: 10px!important;
}

.wp-block-media-text>.wp-block-media-text__content{
    padding: 0 0px 0px 18px!important;
}

.wp-block-media-text.has-media-on-the-right>.wp-block-media-text__content{
    padding: 0 18px 0px 0px!important;
}

@media (max-width: 1100px) {
  .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns:100%!important
  }
  .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
    grid-column: 1;
    grid-row: 1
  }
  .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
    grid-column: 1;
    grid-row: 2
  }
  .wp-block-media-text>.wp-block-media-text__content{
    margin-top: 20px!important;
    padding-left: 0px!important;
  }
  .wp-block-media-text.has-media-on-the-right>.wp-block-media-text__content{
    margin-top: 20px!important;
    padding-top: 0px!important;
    padding-right: 0px!important;
  }
}

@media (max-width: 1100px) {
    .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns: 100% !important;
    }
}

.gray-icons{
    margin-block-start: 18px;
}

.apartado-title p{
  position: relative;
  top: 10px;
}

/*Fila beneficios homepage*/

.fila-beneficios {
  display: flex;
  gap: 18px;
  align-items: stretch;        /* misma altura azul y gris */
}

.fila-beneficios > * {
  flex: 1 1 0;
}

.fila-beneficios .benef-card {
  display: flex;
  align-items: center;         /* texto centrado vertical */
  justify-content: center;
}

@media (max-width: 768px) {
  .fila-beneficios {
    flex-direction: column;    /* se apilan: foto, azul, gris */
  }

  .fila-beneficios > * {
    flex: 0 0 auto;            /* altura automática */
  }

  .fila-beneficios .benef-card {
    height: auto;              /* ya no fuerza igual altura */
  }
}

/*Botones*/

.is-style-white a{
    background-color:white;
    color:#0054A2;
    border:2px solid #0054A2;
}

.is-style-white a:hover{
    color:#003362;
    border:2px solid #003362;
}

.is-style-white a:hover img {
  filter: brightness(0) saturate(100%) invert(18%) sepia(81%) saturate(792%) hue-rotate(180deg) brightness(87%) contrast(95%);
}

.is-style-white a:active{
    color:#C5D8EA;
    border:2px solid #C5D8EA;
}

.is-style-white a:active img {
  filter: opacity(0.35) brightness(1.2);
}

.is-style-arrow a img{
    margin-top: -5px !important;
    position: relative;
    top: 6px;
}

/*Header home*/
.header-home .wp-block-cover__inner-container{
    position: absolute !important;
    bottom: 30px;
    width: 80% !important;
    max-width: 1016px!important;
    right: 30px;
}

.header-home .wp-block-cover__inner-container .wp-block-heading{
  padding: 30px!important;
}

@media (max-width: 1024px) {
  .wp-block-cover{
      min-height: 565px!important;
    }
}

@media (max-width: 768px) {
  .wp-block-cover{
    min-height: 498px!important;
  }
  .header-home .wp-block-cover__inner-container{
      width: calc(100% - 20px) !important;
      right: 10px;
      bottom: 20px;
  }
  .header-home .wp-block-cover__inner-container br{
    display: none!important;
  }
}


/*Pilares*/

.pilares-row {
  display: flex;
  gap: 24px;
  align-items: stretch;
}

.pilares-row > .pilar-card {
  flex: 1 1 0;
}

.pilar-card {
  display: flex;
  flex-direction: column;
}

.pilar-card img {
  width: 100%;
}

@media (min-width: 768px) and (max-width: 1024px) {
  .pilares-row {
    flex-direction: column;          /* las tarjetas una debajo de otra */
  }

  .pilar-card {
    flex-direction: row;             /* dentro de cada tarjeta: img | texto */
  }

  .pilar-card figure {
    width: 48%;
  }

  .pilar-text {
    width: 48%;
    margin-top: 0px;
    margin-left: 4%;
  }
}

@media (max-width: 768px) {
  .pilares-row {
    flex-direction: column;          /* las tarjetas una debajo de otra */
  }

  .pilar-card {
    flex-direction: column;             /* dentro de cada tarjeta: img | texto */
  }

  .pilar-text{
    min-height: auto!important;
  }
}

/*Header menu*/

header {
  position: absolute;
  z-index: 1;
  top: 15px;
  left: 2%;
  width: 96%;
}

header .header-menu{
  padding: 10px 20px;
  border-radius: 10px;
}

/*Boton destacado menu*/

.button-menu-destacado{
  background-color: #0054A2!important;
  border-width: 0!important;
  color: #fff!important;
  padding: 12px 15px!important;
  text-decoration: none!important;
  border-radius: 50px!important;
}

/*Quitar espaciado superior del inicio de la pagina*/
main{
  margin-block-start: 0px;
}

/*Submenu*/

.wp-block-navigation__container>.wp-block-navigation.wp-block-navigation-item{
  padding: 10px 5px;
}

/* SUBMENÚ DE SECTORES (solo el item nº4 del menú) */
@media (min-width: 1100px) {

  /* contenedor del panel */
  .wp-block-navigation-item:nth-child(4) > .wp-block-navigation__submenu-container {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
    max-width: 1200px;
    width: 100%;
    background: #ffffff;
    border-radius: 12px;
    padding: 10px 20px;
    box-shadow: 0 12px 30px rgba(0,0,0,.12);
    border: none;
    z-index: 99;
  }

  /* quitar bordes nativos */
  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container,
  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container li {
    border: none !important;
  }

  /* reseteo lista */
  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container li {
    margin: 4px 0;
  }

  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container a {
    display: block;
    padding: 6px 0;
    font-size: 15px;
    color: #333;
    text-decoration: none;
  }

  .wp-block-navigation-item:nth-child(4) .wp-block-navigation__submenu-container a:hover {
    color: #0058b8;
  }
}

/* MENÚ MÓVIL hasta 1100px */
@media (max-width: 1100px) {

  /* Mostrar menú móvil */
  .wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
    display: block !important;
  }

  /* Ocultar menú de escritorio */
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none !important;
  }

  /* Ocultar menú de escritorio */
  .is-menu-open.wp-block-navigation__responsive-container:not(.hidden-by-default) {
    display: block !important;
  }
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
      /* estilos aquí */
  }
  /* fondo oscuro de toda la pantalla */
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.6);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }

  /* tarjeta blanca interior */
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open > div {
    background: #fff;
    width: calc(100% - 32px);
    max-width: 420px;
    max-height: calc(100% - 32px);
    border-radius: 18px;
    padding: 24px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
  }

  /* lista del menú */
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open nav,
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open ul {
    width: 100%;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open li {
    margin: 4px 0;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open a {
    display: block;
    padding: 8px 0;
    text-decoration: none;
    color: #222;
    font-size: 16px;
  }

  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open a:hover {
    color: #0054A2;
  }

  /* botón cerrar (X) arriba a la derecha */
  .wp-block-navigation__responsive-container-close,
  .wp-block-navigation__responsive-container .wp-block-navigation__responsive-dialog-close {
    position: absolute;
    top: 18px;
    right: 20px;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    border: 0;
    background: transparent;
  }

  /* CTA “Trabaja con nosotros” al fondo de la tarjeta */
  .wp-block-navigation__responsive-container.has-modal-open.is-menu-open .button-menu-destacado {
    margin-top: auto;
    width: 100%;
    text-align: center;
    display: inline-block;
  }
  .button-menu-destacado{
    background-color: #0054A2!important;
    border-width: 0!important;
    color: #fff!important;
    padding: 12px 15px!important;
    text-decoration: none!important;
    border-radius: 50px!important;
  }
}


/*Ajustes slider arrow*/
.splide__arrow{
  border-radius: 30px!important;
  width: 50px!important;
  height: 50px!important;
}

.kb-advanced-slide-inner{
  text-align: left;
}

@media (min-width: 1100px) {
.kb-advanced-slide-inner .wp-block-group{
  width: 50%!important;
  left: 50px !important;
}
}

.kt-blocks-accordion-header{
  font-family: 'Scope';
  text-transform: uppercase;
}

/*Accordion for homepage*/

.accordion-home .kt-blocks-accordion-header{
  font-size: 24px;
}

.accordion-home p{
  font-size: 16px;
}

.accordion-home .kt-accordion-panel-inner{
  border-style: none;
  padding: 0px 16px!important;
}

.accordion-home .kt-accordion-panel-inner p{
  margin: 5px 0px;
}

.accordion-home .kt-accordion-panel-inner img{
  border-radius: 10px;
}

@media (min-width: 1100px) {
.accordion-home .wp-block-kadence-accordion .kt-accordion-wrap{
    width: 440px;
    margin-left: auto;
    padding: 0px 20px;
    min-height: 650px!important;
}

.accordion-home .wp-block-image img{
  position: absolute;
  left: 24px;
  width: calc(100% - 508px);
  top:0px;
}
}

@media (max-width: 1100px) {
.wp-block-kadence-pane{
  padding: 0px 16px!important;
}
.accordion-home .kt-accordion-panel-inner{
  border-style: none;
  padding: 0px!important;
}
.accordion-home .kt-accordion-panel-inner img{
  margin-top: 10px;
}
}

/*Quienes somos*/

.two-columns-text>h3{
width: 429px;
}
.two-columns-text>div{
  width: 645px;
}

/*block media text corner*/
.wp-block-media-text__content>div{
  border-radius: 10px;
}

.wp-block-media-text__content{
  height: 100% !important;
}

.wp-block-media-text__content>div{
  height: 100% !important;
}

.block-medioambiente{
  max-width: 850px;
  width: 100%;
  border-radius: 10px;
  margin-right: 24px !important;
}

@media (max-width: 920px) {
  .block-medioambiente{
    width: auto!important;
    margin-right: 24px !important;
    margin-left: 24px !important;
  }
}

.block-medioambiente-texto{
  max-width: 558px;
  border-radius: 10px;
}

.block-soluciones-texto{
  max-width: 500px;
  border-radius: 10px;
}





.slider-quienes-somos{
  height: 552px;
}
.kb-advanced-slide{
  height: 552px!important;
  padding: 0px!important;
  border-radius: 10px!important;
}

.kb-splide .splide__pagination, .kb-splide ul.splide__pagination.splide__pagination{
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  z-index: 1;
  background: #0054A2;
  border-radius: 10px;
  padding: 0px 5px;
  width: max-content !important;
}

.kb-splide .splide__pagination__page{
  background: #E2E2E2!important;
}

.kb-splide .splide__pagination__page.is-active{
  background: white!important;
}

@media (max-width: 1024px) {
  .slider-row{
    flex-direction: column;
  }
  .stack-iso-ecovadis>div{
    width: 100%!important;
  }
  .stack-iso-ecovadis p{
    text-align: left!important;
    max-width: 250px!important;
  }
}


/*Tables*/
.wp-block-table td, .wp-block-table th{
  border-top: 2px solid #E2E2E2;
  border-right: 0;
  border-bottom: 0;
  border-left: 0;
}

.wp-block-table thead{
  border-bottom: 0px;
}

.wp-block-table thead tr th{
  color:#0054A2;
  text-align: left;
  font-weight: 400;
  border-top: 2px solid #0054A2;
}

@media (max-width: 1024px) {
  .grid-fundicion .wp-block-media-text{
    grid-template-columns: 1fr !important; /* imagen arriba, texto abajo */
  }
}

@media (max-width: 768px) {
  .grid-fundicion {
    grid-template-columns: 1fr !important;
  }
}


/*Sectores*/
@media (max-width: 1024px) {
.row-video-sector{
    flex-direction: column-reverse;
}
.row-video-sector>div{
  width: 100%!important;
  flex-basis: auto;
}
}

.title-gray-text h3{
  width: 375px;
  flex-grow: unset;
}

@media (max-width: 1024px) {
  .title-gray-text h3{
    width: 300px;
  }
}

@media (max-width: 768px) {
  .title-gray-text h3{
    width: 100%;
    max-width: none;
  }
  .title-gray-text>div{
        flex-flow: column;
  }
  .title-gray-text>div>div{
    width: 100%;
  }
}


/*Sectores grid*/
@media (max-width: 768px) {
  .grid-mix, .grid-mix>div{
    grid-template-columns: auto;
  }
}

/*Stacked in mobile*/
@media (max-width: 768px) {
  .row-is-stacked-on-mobile{
  flex-flow: column;
  }
  .row-is-stacked-on-mobile .wp-block-group{
  flex-basis: auto;
  }
}