/**
 * Theme Name:     cideu2025
 * Author:         Punt Zero
 * Template:       Divi
 * Text Domain:    cideu2025
 * Description:    CIDEU Website theme
 * Version:        1
 */

body,
html {
  overflow-x: hidden;
}

/* 2. Variables */
:root {
  --color-primary: #002856;
  --color-secondary: #E36386;
  --color-secondary-alt: #E26285;
  --color-accent: #48E5C2;
  --color-blue: #A5CFD0;
  --color-soft-blue: #99AEC6;
  --color-soft-yellow: #F2DDA7;
  --color-lila: #C6C6D4;
  --color-olive: #D4D9B7;
  --color-red-soft: #D59E97;
  --color-bg-soft: #FAF7F5;
  --color-text: #000000;
  --color-white: #ffffff;
  --color-transparent: transparent;
  --shadow-soft: 0px 2px 6px rgba(0, 0, 0, 0.2);
  --radius-sm: 20px;
  --radius-md: 24px;
  --radius-lg: 40px;
}

/* START GENERAL CLASSES */

#page-container,
#et-main-area,
#main-content {
  background-color: var(--color-white);
}

body.single-congreso {
  background-color: var(--color-transparent);
}

.text-align-center {
  text-align: center;
}

.align-content-center {
  align-content: center;
}

.align-items-center {
  align-items: center;
}

.background-white {
  background: var(--color-white);
}

.bckg-blau {
  background-color: var(--color-blue);
}

.bckg-groc {
  background-color: var(--color-soft-yellow);
}

.bckg-lila {
  background-color: var(--color-lila);
}

.bckg-rosa {
  background-color: var(--color-secondary);
}

.bckg-verd {
  background-color: var(--color-olive);
}

.bckg-vermell {
  background-color: var(--color-red-soft);
}

.bckg-grey {
  background-color: #e5e5e5;
}

.border-radius-20 {
  border-radius: var(--radius-sm);
}

.border-radius-40 {
  border-radius: var(--radius-lg);
}

.border-radius-top-40 {
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}

.box-shadow {
  box-shadow: var(--shadow-soft);
}

body .et_pb_button {
  font-weight: 800 !important;
}

.cideu-download-button::before {
  content: "\e092";
  display: inline-block;
  font-family: ETmodules !important;
  font-weight: normal;
  opacity: 1 !important;
  margin-right: 8px;
  position: static;
  vertical-align: middle;
  padding-left: 20px;
  font-size: 22px;
}

.cideu-download-button.et_pb_button::after {
  display: none !important;
  content: none !important;
}

.bullet-custom ul {
  padding: 0px;
  margin-top: 20px;
}

.bullet-custom li {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  line-height: 24px;
  font-size: 16px;
}

.bullet-custom-lp ul {
  padding: 0px;
  margin-top: 20px;
}

.bullet-custom-lp li {
  list-style: none;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  line-height: 24px;
}

.bullet-custom.calendar {
  box-shadow: 0px 2px 6px rgba(0, 0, 0, .1);
}

.bullet-custom.calendar li {
  justify-content: flex-start;
  border-bottom: 1px solid #E8E8E8;
  padding-bottom: 5px;
}

.bullet-custom.calendar li:last-of-type {
  border: none;
}

.bullet-custom-lp li:first-of-type {
  margin-top: 30px !important;
}

.bullet-custom li::before,
.bullet-custom-lp li::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url('../cideu2025/assets/images/icon-bullet.svg');
  background-repeat: no-repeat;
  background-size: 20px 20px;
  margin-top: 2px;
  flex-basis: 8%;
}

.bullet-custom li::before {
  flex-basis: 5%;
}

.bullet-custom li strong {
  flex-basis: 88%;
}

.bullet-custom-lp li strong {
  flex-basis: 88%;
}

.bullet-custom-lp li p,
.bullet-custom-lp li a,
.bullet-custom li p,
.bullet-custom li a {
  flex-basis: 90%;
}

.bullet-custom.calendar li a {
  flex-basis: 15%;
  font-family: inherit;
  font-weight: 900;
}

.bullet-custom.calendar li strong {
  flex-basis: 50%;
  margin-left: auto;
}

.capitalize {
  text-transform: capitalize;
}

.circle {
  clip-path: circle();
}

.color-black {
  color: #000000;
}

.color-blau {
  color: #A5CFD0;
}

.color-groc {
  color: #F2DDA7;
}

.color-inherit {
  color: #009ca6;
}

.color-lila {
  color: #C6C6D4;
}

.color-rosa {
  color: #E26285;
  /*  color: #E36386;*/
}

.color-verd {
  color: #D4D9B7;
}

.color-vermell {
  color: #D59E97;
}

.color-white {
  color: #ffffff;
}

.cursor-pointer {
  cursor: pointer;
}

.d-flex {
  display: flex !important;
}

.et_pb_button {
  padding: 10px 18px !important;
}

.fit-content {
  width: fit-content;
}

.flex-direction-column {
  flex-direction: column;
}

.flex-direction-row {
  flex-direction: row;
}

.flex-wrap {
  flex-wrap: wrap;
}

.font-size-sm {
  font-size: 0.8em;
}

.gap-10 {
  gap: 10px;
}

.gap-0-20 {
  gap: 0 20px;
}

.gap-20-10 {
  gap: 20px 10px;
}

.gap-20 {
  gap: 20px;
}

.gap-30 {
  gap: 30px;
}

.button-disabled {
  background-color: #ccc !important;
  color: #666 !important;
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.7;
}

.home-equal-boxes .box {
  height: auto;
}

.gradient-bottom::before {
  content: "";
  position: absolute;
  bottom: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 200px;
  background: transparent linear-gradient(180deg, #00000000 0%, #000000 100%) 0% 0% no-repeat padding-box;
  box-shadow: 0px 3px 6px #00000029;
  opacity: 1;
}

.blue::before {
  background: transparent linear-gradient(180deg, #00000000 0%, #002856 100%) 0% 0% no-repeat padding-box;
  border-radius: 0 0 40px 40px;
}

.hidden-webinar {
  display: none;
}

h6 {
  font-weight: normal !important;
  padding: 0 !important;
}

.hover-pills:hover a,
.hover-pills:hover {
  background-color: #009ca6;
  color: white !important;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-space-between {
  justify-content: space-between;
}

.justify-content-start {
  justify-content: space-between;
}

.letter-spacing-1 {
  letter-spacing: 1pt;
}

.list-style-none {
  list-style: none;
}

.margin-0 {
  margin: 0 !important;
}

.margin-bottom-10 {
  margin-bottom: 10px !important;
}

.margin-bottom-20 {
  margin-bottom: 20px !important;
}

.margin-bottom-30 {
  margin-bottom: 30px;
}

.margin-bottom-40 {
  margin-bottom: 40px;
}

.margin-bottom-50 {
  margin-bottom: 50px;
}

.margin-bottom-60 {
  margin-bottom: 60px;
}

.margin-top-5 {
  margin-top: 5px !important;
}

.margin-top-10 {
  margin-top: 10px !important;
}

.margin-top-20 {
  margin-top: 20px;
}

.margin-top-30 {
  margin-top: 30px;
}

.no-border {
  border: none !important;
}

.padding-0 {
  padding: 0px !important;
}

.padding-10 {
  padding: 10px !important;
}

.padding-10-15 {
  padding: 10px 15px !important;
}

.padding-10-20 {
  padding: 10px 20px !important;
}

body #page-container .et_pb_section .et_pb_button.padding-15-35:hover,
body #page-container .et_pb_section .et_pb_button.padding-15-35,
.padding-15-35:hover,
.padding-15-35 {
  padding: 15px 35px !important;
}

.padding-20 {
  padding: 20px;
}

.padding-30 {
  padding: 30px;
}

.padding-5-20 {
  padding: 5px 20px !important;
}

.sub {
  font-size: 0.6em;
  vertical-align: sub;
  bottom: 0;
}

.sup {
  font-size: 0.6em;
  vertical-align: super;
  bottom: 0;
}

.text-center {
  margin: 0 auto;
  text-align: center;
}

.uppercase {
  text-transform: uppercase;
}

/* END GENERAL CLASSES */

/* HOME */
.home-equal-boxes .blue,
.home-equal-boxes .blue .et_pb_blurb_content,
.home-equal-boxes .blue .et_pb_module_inner {
  overflow: visible;
}

.blurb-custom.blurb-formacion .et_pb_main_blurb_image {
  height: 250px;
  border-radius: 20px;
  overflow: hidden;
}

.et_pb_menu_0_tb_header .et-menu>li>a:hover,
.et_pb_menu_0_tb_header .et-menu>li>a:focus,
.et_pb_menu_0_tb_header .sub-menu a:hover,
.et_pb_menu_0_tb_header .sub-menu a:focus {
  font-weight: 700;
}

/* (opcional) mantener Bold en el item activo */
.et_pb_menu_0_tb_header .et-menu>li.current-menu-item>a {
  font-weight: 700;
}

/*
.slider-home .et_pb_slider_container_inner {
  vertical-align: top !important;
  padding-top: 150px;
}
 */
.slider-home .et_pb_slides {
  height: 100%;
}

/* PROXIMAS ACTIVIDADES */
.slick-track {
  display: flex !important;
}
.slick-vertical .slick-track {
  flex-direction: column;
}

.slick-slide {
  height: inherit !important;
}

.evento-slide {
  background: white;
  padding: 20px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.15);
  margin: 0 0.5% 0.5%;
}

.evento-contenidor {
  height: 100%;
  flex-direction: column;
}

.evento-slide .title {
  font-size: 18px;
  line-height: 1.1em;
  margin-bottom: 30px;
}

.evento-slide .data-event {
  justify-content: flex-start;
  align-items: center;
  margin: 0;
}

.agenda-actividades-cideu .evento-slide {
  height: calc(25vh - 180px) !important;
  margin-top: 10px;
  min-height: 124px;
}

.agenda-actividades-cideu {
  padding-left: 48px;
  padding-right: 48px;
}
.agenda-actividades-cideu .slick-prev:before,
.agenda-actividades-cideu .slick-next:before  {
  color: #002856;
}

.agenda-actividades-cideu .data-dia,
.evento-slide .data-dia {
  font-size: 42px;
  color: #002856;
  font-weight: 800;
}
.agenda-actividades-cideu .data-dia {
  font-size: 18px;
}

.agenda-actividades-cideu .data-mes-any,
.evento-slide .data-mes-any {
  font-size: 18px;
  line-height: 1.1em;
  max-width: 80px;
  text-align: right;
  color: #002856;
  font-weight: 500;
}
.agenda-actividades-cideu .data-mes-any {
  max-width: 100%;
}

/* AGENDA 2025 */
.events-month-nav-list {
  padding: 0 !important;
  list-style: none;
  margin-bottom: 30px;
}

.events-month-nav-list li {
  list-style: none;
}

.events-month-nav-list li.mes-past {
  opacity: .5;
}

.events-month-link {
  text-transform: capitalize;
  color: black;
  display: block;
}

.llistat-events[hidden] {
  display: none !important;
}

/* NOTICIAS DESTACADAS */
.noticia-destacada {
  position: relative;
  height: 100%;
}
.noticia-destacada img {
  width:100%; 
  height:auto;
  max-height: 460px;
  object-fit: cover;
}

.noticia-destacada h4 {
  position: absolute;
  bottom: 60px;
  padding: 30px;
  color: white !important;
  z-index: 1;
  max-width: 75%;
  line-height: 1.1em;
}

.noticia-destacada p {
  position: absolute;
  bottom: 40px;
  padding: 30px;
  color: white !important;
  z-index: 1;
}

.noticia-destacada::after {
  content: "";
  background: transparent linear-gradient(180deg, #00000000 0%, #000000 100%) 0% 0% no-repeat padding-box;
  box-shadow: 0px 3px 6px #00000029;
  border-radius: 0px 0px 40px 40px;
  opacity: 1;
  display: block;
  width: 100%;
  height: 220px;
  position: absolute;
  bottom: 0;
}

.module-noticia-destacada .et_pb_code_inner,
.module-noticia-destacada .noticia-destacada>div,
.module-noticia-destacada .noticia-destacada img,
.module-noticia-destacada {
  height: 100% !important;
}

.noticias-home-grid {
  position: relative;
}

.noticias-home-grid .el-dbe-blog-extra {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  column-gap: 20px;
  row-gap: 20px;
}

.noticias-home-grid article {
  flex-basis: 47.5%;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
  margin-bottom: 0px !important;
}

.noticias-home-grid article::before {
  content: "";
  width: 5px;
  height: 70%;
  background: #D7D9CE;
  display: block;
  position: absolute;
  z-index: 2;
  left: 20px;
  top: 30px;
  border-radius: 20px;
}

.noticias-home-grid article:hover::before {
  background: #99AEC6;
}

.noticias-home-grid article .post-content {
  padding: 30px 20px 30px 35px !important;
}

.noticias-home-grid article .post-content .post-data {
  display: none !important;
}

.articulos-relacionados .el-dbe-blog-extra article.post,
.noticias-relacionadas .el-dbe-blog-extra article.noticia {
  justify-content: flex-start;
  width: 23% !important;
  margin: 1% !important;
}

.articulos-relacionados .el-dbe-blog-extra article.post .post-meta,
.noticias-relacionadas .el-dbe-blog-extra article.noticia .post-meta {
  border: none !important;
}


.articulos-relacionados .el-dbe-blog-extra article.post .post-meta,
.noticias-relacionadas .el-dbe-blog-extra article.noticia .post-meta {
  padding-left: 10px !important;
  margin-left: 20px !important;
  margin-bottom: 30px;
}

.articulos-relacionados .el-dbe-blog-extra article.post .post-content,
.noticias-relacionadas .el-dbe-blog-extra article.noticia .post-content {
  padding: 10px 20px !important;
}

.articulos-relacionados .el-dbe-blog-extra article.post .post-data,
.articulos-relacionados .el-dbe-blog-extra article.post .post-meta span.et-pb-icon,
.noticias-relacionadas .el-dbe-blog-extra article.noticia .post-data,
.noticias-relacionadas .el-dbe-blog-extra article.noticia .post-meta span.et-pb-icon {
  display: none !important;
}

/* AGENDA ACTIVIDADES */
.agenda-actividades-cideu .bloc-mes {
  margin-bottom: 40px;
}

.agenda-actividades-cideu .bloc-mes .titol-mes {
  text-transform: capitalize;
  padding-left: 20px;
  position: relative;
  background: transparent;
  border: none;
  font-size: 20px;
}

.agenda-actividades-cideu .bloc-mes .titol-mes:hover {
  color: #F2DDA7 !important;
  cursor: pointer;
}

.agenda-actividades-cideu .bloc-mes .titol-mes:before {
  content: "";
  width: 5px;
  border-radius: 20px;
  height: 40px;
  max-height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: #F2DDA7 !important;
}

.agenda-actividades-cideu .llistat-events {
  padding: 0;
  margin: 0;
  list-style: none;
  justify-content: flex-start;
  gap: 1%;
  margin-top: 20px;
  overflow: hidden;
  transition: max-height 260ms ease, opacity 200ms ease;
}

.llistat-events.is-collapsed {
  max-height: 0;
  opacity: 0;
}

.bloc-mes.is-open .llistat-events {
  opacity: 1;
}

.agenda-actividades-cideu .event-border {
  padding: 20px;
  display: block;
  background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='20' ry='20' stroke='%23119DA4FF' stroke-width='3' stroke-dasharray='6%2c 14' stroke-dashoffset='10' stroke-linecap='square'/%3e%3c/svg%3e");
  border-radius: 20px;
  height: 100%;
}

.agenda-actividades-cideu .event-item {
  background: white;
  padding: 20px;
  display: flex;
}

.evento-slide:hover,
.agenda-actividades-cideu .event-item:hover {
  background: #002856;
  color: white;
}

.evento-slide:hover .event-title,
.evento-slide:hover .title,
.evento-slide:hover .data-mes-any,
.evento-slide:hover .data-dia,
.evento-slide:hover .data-event,
.agenda-actividades-cideu .event-item:hover .event-title,
.agenda-actividades-cideu .event-item:hover .data-dia,
.agenda-actividades-cideu .event-item:hover .data-event {
  color: white !important;
}

.agenda-actividades-cideu .event-item a {
  height: 100%;
}

.agenda-actividades-cideu .event-title {
  color: #002856;
  font-size: 16px;
  line-height: 20px;
  margin-bottom: 10px;
  max-height: 40px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agenda-actividades-cideu .event-content-padding {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between;
}

.agenda-actividades-cideu .data-event {
  justify-content: flex-start;
  align-items: center;
  position: relative;
  margin-bottom: 10px;
}

.agenda-actividades-cideu .data-mes-any {
  text-align: left;
  margin-left: 4px;
  font-weight: bold;
}

.agenda-actividades-cideu .event-publico {
  padding-left: 10px;
  color: #99AEC6;
  font-family: inherit;
  font-weight: 900;
  font-size: 14px;
  position: relative;
  margin-bottom: 20px;
}

.agenda-actividades-cideu .event-publico:before {
  content: "";
  width: 3px;
  height: 25px;
  background-color: #99AEC6;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 20px;
}

.agenda-actividades-cideu .event-modalidad {
  position: absolute;
  top: 0px;
  right: 0px;
  background: #99AEC6;
  color: white;
  padding: 0px 8px;
  border-radius: 20px;
  font-size: 13px;
}

.tab-link:hover,
.tab-link.active {
  /* background-color: #99AEC6; */
  background-color: #E36386;
  color: white;
}

.background-groc {
  background-color: #F2DDA7;
}

.tab-link {
  padding: 10px;
  text-align: center;
  color: white;
  font-weight: 900;
  font-size: 16px;
  flex: 1;
}

.et_pb_section {
  background: transparent;
}

.personas-field {
  font-size: 15px;
  line-height: 1.2em;
}

.docente-item img,
.docente .et_pb_main_blurb_image img,
.personas-item-thumbnail img {
  width: 135px;
  object-fit: cover;
  height: 95px;
  max-width: 100%;
}

.docente-item img {
  width: 100%;
  max-width: 100px !important;
}

.personas-item-cargo {
  margin-bottom: 10px;
}

/* Formacion - DOCENTES */
.docente .et_pb_blurb_content {
  display: block;
  border-radius: 22px;
  padding: 24px 18px;
}

.docente.coordinadora .et_pb_blurb_content {
  background: #FAF7F5;
}

.docente .et_pb_main_blurb_image {
  order: 1;
  flex-basis: 40%;
  margin-bottom: 0;
}

.docente .et_pb_blurb_container {
  order: 0;
  flex-basis: 60%;
  margin-bottom: 0px;
}

/* FAQs */
.et_pb_accordion_item {
  margin-bottom: 1.3% !important;
}

.box-a1 {
  background: white;
  padding: 10px 20px;
}

/* SEMINARIOS */
.cursos-item-image,
.cursos-item-thumbnail {
  position: relative;
  height: 100%;
  overflow: hidden;
}

.tipo-seminario {
  background: white;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
  border-radius: 40px;
}

.tipo-seminario .gradient-bottom::before {
  content: none;
}

.tipo-seminario .cursos-item-image {
  height: 180px;
  object-fit: cover;
  overflow: hidden;
}

.tipo-seminario .cursos-item-image img {
  object-fit: cover;
  transition: all ease-in-out 0.2s;
  height: 100%;
}

.tipo-seminario .cursos-item-title,
.tipo-seminario h6.cursos-item-title,
.tipo-seminario .cursos-item-meta {
  font-weight: 700 !important;
  padding: 20px !important;
  margin-bottom: 10px;
  color: #e26285;
}

.transform-scale img {
  transition: all ease-in-out 0.2s;
}

.transform-scale,
.microrredes-list-item,
.cursos-list-item {
  transition: all 300ms ease 0ms;
  overflow: hidden;
}

.transform-scale:hover img,
.cursos-list-item:hover .cursos-item-image img {
  transform: scaleX(1.1) scaleY(1.1) !important;
}

.microrredes-participan {
  width: fit-content;
}

.microrredes-participan ul {
  padding: 0;
  list-style: none;
  font-size: 17px;
}

.microrredes-participan ul li {
  margin-left: 20px;
  list-style: disc;
  font-weight: 500;
}

.microred-imagen img {
  max-width: 230px;
  margin: 0 auto;
  text-align: center;
}

.microrredes-titulo-imagen {
  font-weight: 700;
}

.congreso-organizan__item {
  height: var(--logo-box-h, 140px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  box-sizing: border-box;
}

.congreso-organizan__img {
  max-height: var(--logo-img-max, 85%);
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.congreso-badge-proximamente {
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px 12px;
  border-radius: 999px;
  background: #25e0c3;
  color: #000;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
}

/* VIDEO SLIDER */
.video-slider .et-pb-controllers {
  bottom: -60px !important;
}

.video-slider .et_pb_slider {
  overflow: visible !important;
}

.video-slider .et-pb-slider-arrows {
  color: black !important;
}

.video-slider .et_pb_slider:hover .et-pb-arrow-prev,
.video-slider .et-pb-slider-arrows .et-pb-arrow-prev {
  left: -60px !important;
  color: black !important;
  opacity: 1 !important;
}

.video-slider .et_pb_slider:hover .et-pb-arrow-next,
.video-slider .et-pb-slider-arrows .et-pb-arrow-next {
  right: -60px !important;
  color: black !important;
  opacity: 1 !important;
}

/* CURSOS ESPECIALIZACION */
.taller-item-image {
  flex-basis: 100%;
  max-height: 200px;
  overflow: hidden;
  border-radius: 20px;
}

.taller-item-title h4,
.taller-item-title h5 {
  font-weight: 900 !important;
  line-height: 1.2em;
}

.taller-item-info-dates .taller-item-edicion,
.taller-item-info-dates .taller-item-edicion h6,
.taller-item-info-dates .taller-date-duracion,
.taller-item-info-dates .taller-date-duracion h6,
.taller-item-info-dates .taller-date-fin,
.taller-item-info-dates .taller-date-fin h6,
.taller-item-info-dates .taller-date-inicio,
.taller-item-info-dates .taller-date-inicio h6 {
  font-weight: 800 !important;
}

.taller-item-image img {
  border-radius: 10px;
}

.taller-detalle__organizador-logo img {
  height: 70px;
  object-fit: contain;
}

.taller-detalle__organizador {
  flex: 1;
}
.taller-info__label {
  font-weight: bold;
}

.taller-detalle__label {
  color: #002957;
}

.taller-detalle__organizadoras .taller-detalle__label {
  margin-bottom: 20px;
}

.curso-activo-true {
  background: #CCD6E2;
}

.curso-imagen-activa img {
  height: 400px;
  max-height: 400px;
}

.capsula-formativa-item img {
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}

.microrredes-list-item .microrredes-item-image,
.cursos-item .cursos-item-image,
.capsula-formativa-item .taller-item-image {
  height: 250px;
  overflow: hidden;
}

.microrredes-list-item .microrredes-item-image img,
.cursos-item .cursos-item-image img,
.capsula-formativa-item .taller-item-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.cursos-item .capsula-title,
.capsula-formativa-item .capsula-title {
  line-height: 1.2em;
}

.capsula-formativa-item .capsula-title {
  font-size: 18px;
  font-weight: 900;
}

.cursos-item:hover .capsula-title,
.capsula-formativa-item:hover .capsula-title {
  color: #002856 !important;
}

.capsula-formativa-item:hover .capsula-content:before {
  background-color: #99AEC6 !important;
}

.display-block {
  display: block;
}

.cf7mls_next.action-button,
.cf7mls_back.action-button,
.wpcf7-form-control.wpcf7-submit {
  background-color: transparent !important;
  color: black !important;
  font-size: 16px;
  padding: 12px 28px 12px 24px;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  transition: color 0.2s ease;
  box-shadow: none !important;
}

.instrumentos-grid-wrapper,
.publicaciones-grid-wrapper {
  margin-top: 30px;
}

.instrumentos-item-title,
.publicaciones-item-title {
  line-height: 1.2em;
  font-weight: 700;
  margin: 0 auto;
  text-align: center;
  font-size: 17px;
}

.instrumentos-img-wrapper,
.publicaciones-img-wrapper {
  width: 210px;
  height: 300px;
  overflow: hidden;
  text-align: center;
  margin: 0 auto;
  border-radius: 20px;
  position: relative;
}

.selected-option {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.custom-select-container {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  align-content: center;
}

.remove-filter {
  position: relative;
  z-index: 20;
  cursor: pointer;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ddd;
  font-weight: 700;
  line-height: 1;
  pointer-events: auto;
}

.publicaciones-item-categoria,
.publicaciones-content {
  text-align: center;
}

.publicaciones-item-categoria {
  font-weight: 800;
  position: absolute;
  background: #e26285;
  padding: 3px 8px;
  border-radius: 6px;
  top: 15px;
  right: 10px;
  font-size: 13px;
  box-shadow: 0 3px 6px rgb(0 0 0 / .2);
  text-transform: uppercase;
  color: white;
  z-index: 1;
}

.instrumentos-img-wrapper img,
.publicaciones-img-wrapper img {
  object-fit: cover;
  height: 300px;
  width: 210px;
}

.instrumentos-content {
  max-width: 80%;
  margin: 0 auto;
}

.instrumentos-content span {
  display: block;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700;
  color: black !important;
}

.instrumentos-content .instrumentos-card-tipo,
.instrumentos-content .instrumentos-card-ciudad {
  color: #E26285 !important;
  font-weight: 600 !important;
  font-size: 15px;
}

/* MODALS */
.modal {
  background: rgba(255, 255, 255, 0.8);
}

.instrumentos-item-modal,
.publicaciones-item-modal {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 850px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 999999;
  justify-content: center;
  align-items: center;
}

.instrumentos-item-modal.show,
.publicaciones-item-modal.show {
  display: flex !important;
}

.instrumentos-item-modal-content,
.publicaciones-item-modal-content {
  position: relative;
  gap: 25px;
}

.instrumentos-item-modal-content .crai-modal-close,
.publicaciones-item-modal-content .crai-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 20px;
  cursor: pointer;
}

.instrumentos-item-modal-content .crai-modal-close::before,
.publicaciones-item-modal-content .crai-modal-close::before {
  content: "x";
  font-family: inherit;
  display: block;
  width: 20px;
  height: 20px;
}

.instrumentos-item-modal-content .instrumentos-item-modal-img img,
.publicaciones-item-modal-content .publicaciones-item-modal-img img {
  max-width: 220px;
  height: auto;
  transition: none !important;
  transform: none !important;
}

.crai-modal-open,
.crai-modal-close {
  cursor: pointer;
}

.instrumentos-item-modal-title,
.publicaciones-item-modal-title {
  font-family: inherit;
  font-size: 26px;
  line-height: 1.3em;
}

.instrumentos-item-modal-linea .label,
.instrumentos-item-modal-tipo .label,
.instrumentos-item-modal-ciudad .label,
.instrumentos-item-modal-categoria .label,
.instrumentos-item-modal-ano .label,
.publicaciones-item-modal-categoria .label,
.publicaciones-item-modal-ano .label {
  font-size: 16px;
  font-weight: 900;
}

.publicaciones-item-modal-enlace,
.instrumentos-item-modal-enlace {
  margin-top: 30px;
}

.publicaciones-item-modal-enlace a,
.instrumentos-item-modal-enlace a {
  /* padding: 8px 12px; */
}

.publicaciones-item-modal-enlace a:hover,
.instrumentos-item-modal-enlace a:hover {}

.instrumentos-item-modal-title,
.publicaciones-item-modal-title {
  margin-bottom: 20px;
  line-height: 1.2em;
  font-weight: 800;
}

.instrumentos-item-modal-body p,
.publicaciones-item-modal-body p {
  line-height: 1.5em !important;
}

.publicaciones-item-modal-right-col .label,
.instrumentos-item-modal-right-col .label {
  display: block;
}

.instrumentos-item-modal-right-col .instrumentos-item-modal-ciudad,
.instrumentos-item-modal-right-col .instrumentos-item-modal-tipo,
.instrumentos-item-modal-right-col .instrumentos-item-modal-linea,
.instrumentos-item-modal-right-col .instrumentos-item-modal-ano {
  padding: 5px 0;
}

.publicaciones-item-modal-right-col,
.instrumentos-item-modal-right-col {
  flex-basis: 60%;
}

select.selectpicker {
  border: none !important;
}

.custom-select-wrapper {
  position: relative;
  display: flex;
  width: fit-content;
  cursor: pointer;
  padding-right: 60px;
}

.custom-select-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: fit-content;
  cursor: pointer;
  font-family: inherit;
  padding-right: 0px;
  font-weight: 700;
}

.custom-select {
  border: none;
  background: transparent;
  font-weight: normal;
  font-size: 0.95em;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 2;
}

.custom-select-wrapper::after {
  content: "▾";
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 1em;
  color: #000;
}

.selected-option {
  margin-left: 0.5em;
  font-weight: normal;
  display: none;
}

.custom-select-label.show-value .selected-option {
  display: inline;
  font-size: 15px;
  border-radius: 40px;
  padding: 5px 10px;
  font-family: inherit;
  font-weight: 700;
}

/* assegura capes per sobre de Divi */
.instrumentos-item-modal.crai-modal.show,
.publicaciones-item-modal.crai-modal.show {
  display: block !important;
  top: 15% !important;
}

.instrumentos-item-modal.crai-modal.hide,
.publicaciones-item-modal.crai-modal.hide {
  display: none !important;
}

body.no-scroll {
  overflow: hidden;
}

.publicaciones-item-modal.crai-modal {
  z-index: 100001 !important;
  /* per sobre de l'overlay */
}

/* capes */
.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, .5);
  z-index: 2147483646;
  display: none;
}

.modal-overlay.is-visible {
  display: block !important;
}

.publicaciones-item-modal.crai-modal,
.instrumentos-item-modal.crai-modal {
  z-index: 2147483647 !important;
}


#menu-main-menu-2025 a {
  font-weight: 700 !important;
}

#menu-main-menu-2025 ul.sub-menu {
  padding: 0 !important;
}

#menu-main-menu-2025 ul.sub-menu li {
  padding: 0 !important;
  width: 100% !important;
}

#menu-main-menu-2025 ul.sub-menu li a {
  width: 100% !important;
  line-height: 1.2em;
  padding: 15px !important;
}

#menu-main-menu-2025 .current-menu-ancestor>a {
  background: #002856;
  color: white !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-radius: 20px;
  height: 45px;
  align-self: center;
  padding-left: 20px;
  padding-right: 35px;
}

#menu-main-menu-2025 .current-menu-ancestor .current-menu-ancestor>a {
  background: none;
  color: black !important;
}

#menu-main-menu-2025 .current-menu-ancestor>a::after {
  right: 10px;
}

.menu-item-42329>a::after{
  rotate: -90deg;
}

/* Tienda */
/* 1. Contenidor general del formulari */
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-MyAccount-content {
  background: #fff;
  padding: 20px;
  border-radius: 20px;
  margin-bottom: 60px;
  border: none !important;
}

.woocommerce-MyAccount-content form.woocommerce-EditAccountForm {
  padding-bottom: 60px;
}

/* 2. Títol de secció */
.woocommerce-MyAccount-content form h3,
.woocommerce-MyAccount-content form h2 {
  font-size: 24px;
  color: black;
  padding-left: 0px !important;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
  height: 60px !important;

}


.form-row-first,
.form-row-last {
  flex: 1 1 calc(50% - 0.5em);
}

/* Camp d’amplada completa */
.form-row-wide {
  flex: 1 1 100%;
}

/* 4. Labels i inputs */
.woocommerce-MyAccount-content form p.form-row label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.3em;
  color: #555;
}

.woocommerce-MyAccount-content form p.form-row .woocommerce-input-wrapper {
  display: block;
}

.woocommerce-MyAccount-content form input.input-text,
.woocommerce-MyAccount-content form select.select {
  width: 100%;
  padding: 0.6em 0.8em;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
  box-sizing: border-box;
  transition: border-color 0.2s;
  min-width: 90px;
  padding: 8px !important;
}

.woocommerce-billing-fields__field-wrapper input.input-text,
.woocommerce-billing-fields__field-wrapper select,
.woocommerce-billing-fields__field-wrapper .select2-selection {
  background-color: #fff !important;
}

#billing_phone.iti__tel-input {
  padding-left: 100px !important;
}

#post-8529 {
  margin-bottom: 60px !important;
}

#place_order.button.alt {
  border-radius: 50px !important;
  font-family: inherit;
  font-weight: 900;
}

#place_order.button.alt:hover {
  border-radius: 50px !important;
  font-family: inherit;
  font-weight: 900;
}

.woocommerce-checkout .woocommerce a.button.wc-backward,
.woocommerce-MyAccount-content .woocommerce-notices-wrapper {
  margin-bottom: 1em !important;
}

.woocommerce-MyAccount-content .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-notices-wrapper .woocommerce-error {
  border-radius: 4px;
  padding: 1em;
  font-size: 0.95rem;
}

.woocommerce-MyAccount-content .woocommerce-notices-wrapper .woocommerce-error {
  background: #fce4ec;
  border: 1px solid #f8bbd0;
  color: #b71c1c;
}

.woocommerce-MyAccount-content .woocommerce-notices-wrapper .woocommerce-message {
  border-radius: 50px;
}

.woocommerce-notices-wrapper .woocommerce-error {
  padding-left: 80px !important;

}

.woocommerce-notices-wrapper .woocommerce-error li {
  padding-left: 80px !important;
}

.woocommerce-page .product .woocommerce-product-gallery img {
  border-radius: 40px !important;

}

.woocommerce-MyAccount-navigation ul {
  font-size: 17px;
  font-family: inherit;
  font-weight: 900;
  padding-left: 0px !important;
  margin-bottom: 20px;
  list-style: none;
}

.woocommerce-MyAccount-navigation ul li {
  list-style: none;
}

.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 0.6rem 1.2rem;
  background-color: #ffffff;
  border-radius: 50px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
  color: #333333;
  text-decoration: none;
  font-weight: 500;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  margin-bottom: 20px;
  font-family: "Manrope" !important;
}

.woocommerce-MyAccount-navigation ul li a:hover {
  background-color: #009ca6;
  color: #ffffff !important;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.current a {
  background-color: #009ca6;
  color: #ffffff !important;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.woocommerce-loop-product__title {
  font-size: 17px !important;
  line-height: 1.3 !important;
  ;
}

.woocommerce-pagination {
  padding-top: 20px;
  padding-bottom: 50px;
}

.page-numbers,
.page-numbers.current,
.page-numbers:hover,
.page-numbers:focus,
.page-numbers.next,
.page-numbers.prev {
  border: none !important;
  box-shadow: none !important;
  text-decoration: none;
  outline: none;
}

.pagination,
.pagination ul,
.pagination li,
nav .page-numbers,
.woocommerce-pagination li,
.woocommerce-pagination ul,
.woocommerce-pagination a.page-numbers,
.woocommerce-pagination span.page-numbers {
  margin: 0;
  padding: 0;
  list-style: none;
  border: none !important;
}


.page-numbers {
  display: inline-block;
  margin: 0 8px;
  padding: 12px 16px;
  background-color: transparent !important;
  border-radius: 10px;
  color: #e26285 !important;
  transition: background-color 0.2s ease, color 0.2s ease;
  font-weight: bold !important;
}


.page-numbers.current {
  background-color: #EDE8F3;
  color: #333333 !important;
}


.page-numbers:not(.current):hover {
  background-color: #f0f0f0;
  color: #333333;
}


.woocommerce-pagination li,
.woocommerce-pagination a.page-numbers,
.woocommerce-pagination span.page-numbers,
.et_pb_pagination a.page-numbers,
.et_pb_pagination span.page-numbers {
  border: none !important;
  box-shadow: none !important;
}

.page-numbers-wrapper::after,
.pagination::after,
.woocommerce-pagination::after {
  content: "";
  display: table;
  clear: both;
}

.et_overlay {
  margin-bottom: 0px !important;
  padding: 0px !important;
}

ul.products li.product .woocommerce-loop-product__link .outofstock {
  display: none !important;
}

ul.products li.product.outofstock::before {
  content: "Agotado";
  position: absolute;
  top: 20px;
  right: 10px;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 50px;
  z-index: 2;
}

.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
  margin-left: 15px !important;
  margin-top: 15px !important;
  padding: 5px 20px 5px 10px;
  /* arriba, dreta, baix, esquerra */
  border-left: 4px solid #000;
  /* línia vertical negra */
  font-family: inherit;
  font-size: 16px;
  line-height: 1.2;
  color: #000 !important;
  position: relative;
}

ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.price {
  font-family: inherit;
  padding-top: 20px;
  padding-left: 15px;
}

.products .columns-4 {
  margin: 0px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  position: relative;
  transition: transform 0.2s ease-in-out;
  display: block;
  box-sizing: border-box;
  height: 100%;
  margin: 0px !important;

}

ul.products li.product {
  border-radius: 40px;
  background-color: #EECFD6;
  min-height: 450px;
  gap: 15px !important;
}

ul.products li.product .et_shop_image {
  margin: 0px !important;
  padding: 0px !important;
  overflow: hidden;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  display: block;
  width: 100%;
  height: 230px !important;
  object-fit: cover;
  display: block;
}

.woocommerce-result-count {
  padding-top: 20px;
  color: #000 !important;
}

.woocommerce .button.wc-backward {
  background-color: #e26285;
  color: #ffffff;
  padding: 12px 24px;
  border: none;
  border-radius: 40px;
  text-decoration: none;
  display: inline-block;
  font-family: inherit;
  margin-bottom: 0px;
}

.woocommerce .button.wc-backward:hover {
  background-color: #e26285;
  border-radius: 40px;
}

.orderby {
  color: black !important;
  border-radius: 50px;
  margin-top: 20px;
}

.woocommerce-Button.button {
  float: right;
  margin-top: 20px;
  margin-bottom: 40px;
  border-radius: 40px;
}

.woocommerce-Button.button:hover {
  border-radius: 50px !important;
}

input.button[name="save_profile"] {
  float: right;
  margin-top: 20px;
  margin-bottom: 40px;
  border-radius: 50px !important;
  float: right;
  margin-top: 20px;
  margin-bottom: 40px;
}

input.button[name="save_profile"]:hover {
  border-radius: 50px !important;
}

.entry-title.main_title {
  font-family: inherit;
  font-weight: 900;
}

.woocommerce a.button,
.woocommerce-page a.button {
  border-radius: 50px !important;

}

.woocommerce-info {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-end;
  align-items: center;
  border-radius: 50px !important;
  padding: 20px;
  background-color: #f9f9f9;
}

table.shop_table.woocommerce-checkout-review-order-table {
  background-color: #ffffff !important;
}

.woocommerce-page.et_pb_button_helper_class a.button {
  margin-left: auto;
  border-color: white;
  border-radius: 50px;
  border: 2px solid;
  font-family: inherit;
  font-weight: 900;
}

.woocommerce-address-fields__field-wrapper .form-row-wide {
  grid-column: 1 / -1;
}

.woocommerce button.button, .woocommerce-page button.button.single_add_to_cart_button,
button.button.single_add_to_cart_button {
  margin-top: 20px;
  padding: 10px 20px;
  font-size: 1em!important;
}
.woocommerce button.button, .woocommerce-page button.button.single_add_to_cart_button:hover,
button.button.single_add_to_cart_button:hover {
  padding: 10px 30px 10px 20px;
}
.woocommerce button.button, .woocommerce-page button.button.single_add_to_cart_button:after,
button.button.single_add_to_cart_button:after {
  right: 10px;
}

.woocommerce button.button, .woocommerce-page button.button[name="apply_coupon"] {
  margin-top: 0;
  margin-left: 10px;
  padding: 10px 20px;
}
.woocommerce button.button, .woocommerce-page button.button[name="apply_coupon"]:hover {
  padding: 10px 30px 10px 20px;
}
.woocommerce button.button, .woocommerce-page button.button[name="apply_coupon"]:after {
  right: 0;
  top: 0;
  line-height: 46px;
}

/* Torna el <td> al seu estat de taula natiu */
body .woocommerce table.cart td.actions {
  display: table-cell !important;
}

body .woocommerce table.cart td.actions .coupon {
  float: left !important;
  margin-right: 1em !important;
}

body .woocommerce table.cart td.actions>button[name="update_cart"] {
  float: right !important;
  margin: 0 !important;
}

/* 1) Assegurem que el form-row del telèfon ocupi tota l’amplada del grid */
#billing_phone_field {
  grid-column: 1 / -1;
  /* si fas servir el grid anterior */
}

/* 2) Fem que l’input de telèfon sigui 100% d’amplada */
#billing_phone_field .input-text {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
}

/* 3) Ajustem el padding-left perquè deixi espai per la bandera però no massa */
#billing_phone {
  /*padding-left: 48px !important;*/
}

/* 1) Ample del control Select2 (l’element que veus abans de fer clic) */
#billing_country.select2-hidden-accessible+.select2-container {
  width: 300px !important;
  /* ajusta a l’ample que necessitis */
  max-width: none !important;
}

/* 2) Fer que el text dins el quadre trenqui línia si cal */
#billing_country.select2-hidden-accessible+.select2-container .select2-selection__rendered {
  white-space: normal !important;
}

/* 3) Ample mínim del desplegable quan està obert */
.select2-container--open .select2-dropdown {
  min-width: 400px !important;
  /* mateix valor que al control */
  width: auto !important;
  max-width: none !important;
}

.select2-container--open .select2-dropdown.select2-dropdown--below {
  left: 0 !important;
  right: auto !important;
}

.woocommerce-error li {
  padding-right: 15px !important;
  padding-left: 15px !important;
}

.woocommerce-cart .coupon input#coupon_code,
.woocommerce-page .coupon input#coupon_code {
  max-width: 100%;
  /* perquè no se surti si la pantalla és petita */
}

.coupon {
  display: flex;
  flex: wrap;
  align-items: center;
  font-family: inherit;
  font-weight: 900;
}

.woocommerce-notices-wrapper .woocommerce-message {
  border-radius: 50px;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: black !important;
}

button.woocommerce-form-login__submit,
.woocommerce-MyAccount-content form button.button {
  background-color: #009ca6 !important;
  color: white !important;
  border: 2px solid #009ca6 !important;
  padding: 0.8em 1.2em;
  font-size: 1rem;
  border-radius: 50px !important;
  cursor: pointer;
  font-family: inherit;
  font-weight: 900;
}

button.woocommerce-form-login__submit:hover,
.woocommerce-MyAccount-content form button.button:hover {
  background-color: white;
  color: #e26285;
  border: 2px solid #e26285;
}

.product-subtotal {
  text-align: right;
}

.checkout-button.button.alt.wc-forward {
  font-family: inherit;
  font-weight: 900;
  border-radius: 40px;
}

.woocommerce-cart .coupon input#coupon_code,
.woocommerce-page .coupon input#coupon_code {
  width: 165px !important;
  max-width: 100%;
}

.checkout-button.button.alt.wc-forward,
.woocommerce a.button.alt,
.woocommerce-page a.button.alt,
.et_button_no_icon.woocommerce a.button.alt,
.et_button_no_icon.woocommerce-page a.button.alt,
.woocommerce .actions button.button:hover,
.wc-proceed-to-checkout .checkout-button.button.alt.wc-forward:hover,
.woocommerce .coupon .actions button.button:hover {
  border-radius: 50px;
}

/* Contenidor global del formulari WooCommerce (com .formulario-adhesion) */
.woocommerce-address-fields {
  position: relative;
  padding: 40px;
  color: black;
  box-sizing: border-box;
  max-width: 100%;
  background: none;
  display: flex;
  flex-wrap: wrap;
  padding: 0px !important;
  margin: 0px !important;
}


/* Barra decorativa a l’esquerra */
.woocommerce-address-fields::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 3px;
}

/* Títols (si en tens dins: h2, h3) */
.woocommerce-address-fields h2,
.woocommerce-address-fields h3 {
  color: black;
  margin-bottom: 20px;
}

.woocommerce-address-fields h2 {
  font-size: 24px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
}

.woocommerce-address-fields h3 {
  font-size: 18px;
  margin-bottom: 15px;
}

/* Layout de files/columnes com .form-row */
.woocommerce-address-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0px;
  margin-top: 30px;
}

.woocommerce-address-fields__field-wrapper .form-row-first,
.woocommerce-address-fields__field-wrapper .form-row-last {
  flex: 1 1 calc(50% - 30px);
}

.woocommerce-address-fields__field-wrapper .form-row-wide {
  flex: 1 1 100%;
}

/* Labels i marcadors de requerit/opcional */
.woocommerce-address-fields label {
  display: block;
  font-size: 16px;
  line-height: 1.2;
  margin-bottom: 0;
  color: black;
  border: 1p solid black;
  border-color: black
}

.woocommerce-address-fields .required {
  color: #fca5a5;
  margin-left: 4px;
}

.woocommerce-address-fields .optional {
  font-size: 14px;
  color: #d1d5db;
  margin-left: 6px;
}

.iti #billing_phone {
  padding-left: 88px!important;
}
.iti .iti__flag-container {
  top: auto!important;
  transform: none!important;
}

.woocommerce-address-fields input[type="text"],
.woocommerce-address-fields input[type="email"],
.woocommerce-address-fields select,
.woocommerce-address-fields .select2-container,
.woocommerce-address-fields .iti {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px;
  border-radius: 50px;
  border: 1px solid black;
  color: #333;
  box-sizing: border-box;
  margin-top: 5px;
}

.woocommerce-address-fields .iti,
.woocommerce-address-fields .select2-container,
.woocommerce-address-fields select {
  padding: 0 !important;
}

/* Botó de “Guardar dirección” (i altres submit) */
.formulario-solicitud .form-submit input.wpcf7-submit,
.woocommerce-MyAccount-content input.button,
.woocommerce-MyAccount-content button.button,
.woocommerce-address-fields button.button,
.woocommerce-address-fields input[type="submit"] {
  background-color: #0e9da4 !important;
  color: white !important;
  border-color: #0e9da4 !important;
  border-radius: 50px;
  padding: 5px 25px;
  font-weight: bold;
  font-family: inherit;
  font-weight: 900;
  cursor: pointer;

}

.formulario-solicitud .form-submit input.wpcf7-submit {
  border: 2px solid #0e9da4 !important;
}

.woocommerce-MyAccount-content input.button,
.woocommerce-MyAccount-content button.button,
.woocommerce-address-fields button.button {
  border: 2px solid !important;
  margin-top: 10px;
  border-radius: 50px;
}

.woocommerce-page.et_pb_button_helper_class button.button {
  display: flex;
  justify-content: flex-end !important;
  border-radius: 50px;
}

.formulario-solicitud .form-submit input.wpcf7-submit:hover,
.woocommerce-MyAccount-content input.button:hover,
.woocommerce-MyAccount-content button.button:hover,
.woocommerce-address-fields button.button,
.woocommerce-address-fields button.button:hover,
.woocommerce-address-fields input[type="submit"]:hover {
  border-radius: 50px !important;
  font-family: inherit;
  font-weight: 900;
}

.formulario-solicitud .form-submit input.wpcf7-submit:hover {
  color: #e26285 !important;
  border: 2px solid #e26285 !important;
  background-color: white !important;
}

/* Alineació del submit a la dreta */
.woocommerce-address-fields p:last-of-type {
  text-align: right;
  /* margin-top: 20px; */
}

/* Contenidor de missatges d’error */
.woocommerce-notices-wrapper .woocommerce-error {
  background-color: #000 !important;
  color: #fff !important;
  padding: 15px 20px !important;
  border-radius: 50px !important;
  list-style: none !important;
  margin-bottom: 20px !important;
}

/* Cada línia d’error */
.woocommerce-notices-wrapper .woocommerce-error li {
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-button button .woocommerce-form-login__submit {
  border-radius: 50px !important;
  font-family: inherit;
  font-weight: 900;
}

.woocommerce-button button .woocommerce-form-login__submit:hover {
  border-radius: 50px !important;

}

.wpcf7 form .wpcf7-response-output,
.wpcf7-not-valid-tip {
  color: black !important;
  font-family: inherit;
  font-weight: 900;
  border: none !important;
  font-size: 15px !important;
}

.wpcf7-icon-warning {
  fill: red !important;
}

/* Filet verd a l'esquerra */
.cf7mls_next.action-button::before,
.cf7mls_back.action-button::before,
.wpcf7-form-control.wpcf7-submit::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 24px;
  background-color: black;
  border-radius: 3px;
}

.cf7mls_next.action-button:hover,
.cf7mls_back.action-button:hover,
.fieldset-cf7mls .wpcf7-form-control.wpcf7-cf7mls_preview_step:hover {
  color: #009CA6 !important;
}

/* Hover amb rosa pur */
.cf7mls_next.action-button:hover::before,
.cf7mls_back.action-button:hover::before {
  color: black !important;
  background-color: #009CA6 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Formulario de adhesión */
.formulario-adhesion {
  padding: 40px;
  color: black;
  position: relative;
  box-sizing: border-box;
  max-width: 100%;
}

/* BOTO */
.formulario-adhesion input[type="submit"] {
  background-color: black;
  color: #0e9da4;
  border: none;
  border-radius: 20px;
  padding: 5px 25px;
  font-weight: bold;
  cursor: pointer;
  transition: background-color 0.3s;
}

.formulario-adhesion input[type="submit"]:hover {
  background-color: #e0f7fa;
}

.formulario-adhesion::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0px;
  bottom: 0px;
  width: 4px;
  background-color: #009CA6;
  border-radius: 3px;
}

.formulario-adhesion h2 {
  font-size: 24px !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
  margin-bottom: 20px;
  color: black;
}

.formulario-adhesion h3 {
  font-size: 18px !important;
  margin-bottom: 15px;
  color: black;
}

.formulario-adhesion .form-row {
  display: flex;
  gap: 30px;
  margin-bottom: 10px;
  margin-top: 30px;
}

.row-2 .col {
  width: 50%;
}

.row-3 .col {
  width: 33.3333%;
}

.formulario-adhesion label {
  font-size: 16px;
  margin-bottom: 0px;
  line-height: 1.2;
  font-weight: 700;
}

.formulario-adhesion .required {
  color: #fca5a5;
  margin-left: 4px;
}

.formulario-adhesion .optional {
  font-size: 14px;
  color: #506266;
  margin-left: 6px;
}

.formulario-adhesion input[type="submit"],
.formulario-adhesion .wpcf7-submit {
  background-color: white !important;
  color: black !important;
  border: none;
  border-radius: 20px;
  padding: 5px 25px;
  font-weight: bold;
  font-family: inherit;
  font-weight: 900;
  cursor: pointer;
  transition: all 0.3s ease;
}

.formulario-adhesion input[type="submit"]:hover,
.formulario-adhesion .wpcf7-submit:hover {
  background-color: #e0f7fa !important;
  color: #E36386 !important;
}

.formulario-adhesion input[type="text"],
.formulario-adhesion select {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px;
  border-radius: 20px;
  background-color: white;
  color: #333;
  box-sizing: border-box;
  margin-top: 5px;
  border: 1px solid !important;
}

.formulario-adhesion input[type="email"],
.formulario-adhesion select {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px;
  border-radius: 20px;
  border: none;
  background-color: white;
  color: #333;
  box-sizing: border-box;
  margin-top: 5px;
}

.form-submit {
  text-align: right;
  margin-top: 5px;
}

/* FORMULARIO SOLICITUD */
.formulario-solicitud {
  padding: 40px;
  color: #000;
  position: relative;
  box-sizing: border-box;
  max-width: 100%;
}

.et_pb_module.et_pb_text.et_pb_text_0.formulario-solicitud.et_pb_text_align_left.et_pb_bg_layout_light::before {
  content: "";
  position: absolute;
  left: 0;
  top: 115px;
  /* lo subimos para partir desde el H1 */
  bottom: 90px;
  /* lo bajamos hasta el botón */
  width: 4px;
  background-color: #e26285;
  border-radius: 3px;
}

.formulario-solicitud h2 {
  font-size: 24px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
  margin-bottom: 20px;
  color: #000;
}

.formulario-solicitud .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 10px;
  margin-top: 30px;
}

.formulario-solicitud .row-1 .col {
  width: 100%;
}

.formulario-solicitud .row-2 .col {
  width: calc(50% - 15px);
}

.formulario-solicitud .row-3 .col {
  width: calc(33.333% - 20px);
}

.formulario-solicitud label {
  font-size: 16px;
  margin-bottom: 0;
  line-height: 1.2;
  font-family: inherit;
  font-weight: 900;
  font-weight: bold;
}

.formulario-solicitud .required,
.formulario-solicitud .rosa.gran {
  color: #fca5a5;
  margin-left: 4px;
}

.formulario-solicitud input[type="text"],
.formulario-solicitud input[type="email"],
.formulario-solicitud input[type="date"],
.formulario-solicitud select,
.formulario-solicitud textarea {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px;
  border-radius: 20px;
  border: 0.5px solid rgba(0, 0, 0, 0.25);
  background-color: white;
  color: #000;
  box-sizing: border-box;
  margin-top: 5px;
}

.formulario-solicitud input[type="radio"],
.formulario-solicitud input[type="checkbox"] {
  margin-right: 10px;
}

.formulario-solicitud .wpcf7-radio,
.formulario-solicitud .wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 10px;
  color: #000;
}

.formulario-solicitud .form-submit {
  display: flex !important;
  justify-content: flex-end !important;
  margin-top: 10px;
}

.formulario-solicitud .form-submit p {
  margin: 0;
  padding: 0;
}

.talleres-wrapper.d-flex.flex-wrap.gap-20.capsulas .capsula-formativa-item {
  flex: 0 0 calc((100% - 60px) / 4);
  max-width: calc((100% - 60px) / 4);
  gap: 20px;
}

.noticia-destacada:hover h4 {
  color: #119DA4 !important;
}

.woocommerce-shop .et_pb_wc_title h1 {
  line-height: 1.2em !important;
}

.woocommerce form .form-row input.input-text {
  font-size: 16px !important;
}

.woocommerce #order_review_heading {
  margin-top: 30px;
}


.post-content {
  display: flex;
  flex-direction: column;

}

.post-content .post-meta {
  margin-top: auto;
  /* baja el bloque al fondo del div */
}

.post-content .post-data:empty {
  display: none;
}

.et_pb_post_extra.el_dbe_box_extended .post-meta {
  margin-top: auto;
}

.filtros-fixed.fixed {
  position: fixed;
  top: 68px;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #faf7f5;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.logged-in .filtros-fixed.fixed {
  top: 100px;
}

/* CONGRESOS TIMELINE */
.pz-tl-title {
  font-size: 22px;
  line-height: 1.2em;
}

.pz-tl-thumb img {
  width: 230px;
  border-radius: 10px;
}

.pz-tl-year {
  font-size: 16px;
}

/* GOOGLE TRANSLATE */
#glt-translate-trigger {
  bottom: auto;
  border-radius: 40px;
  font-family: inherit;
  font-weight: 900;
}

#glt-translate-trigger {
  top: 4px !important;
}
body.admin-bar #glt-translate-trigger {
  top: 36px !important;
}

.tool-container {
  top: 120px !important;
  bottom: auto !important;
}

.tool-container.tool-top.toolbar-primary.animate-standard {
  top: 120px !important;
}

.tool-container.tool-top .arrow {
  bottom: 24px;
  transform: rotate(180deg);
}

.capsula-duracion {
  font-weight: 700;
}

.footer-gradient {
  background: linear-gradient(-180deg, #1A3D63, #E77E97);
  background-size: 400% 400%;
  animation: gradientMove 25s ease infinite;
}


/* ===== Microrredes – estil targeta tipus mockup ===== */
.microrredes-list-item {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  /* retalla la imatge i la píldora dins la targeta */
  background: #fff;
  flex-basis: 23.6%;
}

.microrredes-tabs .microrredes-tab {
  border: none !important;
  background: rgba(0, 40, 86, 0.2) !important;
  color: white !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

.microrredes-tabs .microrredes-tab:hover,
.microrredes-tabs .microrredes-tab.is-active {
  background: #002856 !important;
}

.microrredes-item-trigger {
  display: block;
  position: relative;
  text-decoration: none;
}

/* Imatge responsive, tipus cover */
.microrredes-item-image {
  line-height: 0;
}

.microrredes-item-image img {
  display: block;
  width: 100%;
  height: 240px;
  /* ajusta si cal */
  object-fit: cover;
  object-position: center;
  border-radius: var(--card-radius);
}

/* Contenidor de la píldora (posicionat sobre la imatge) */
.microrredes-container {
  position: absolute;
  left: 16px;
  bottom: 16px;
  padding: 0;
  margin: 0;
}

/* Píldora blanca amb ombra */
.microrredes-content {
  margin: 0;
  background: #fff !important;
  border-radius: 16px;
  padding: 12px 16px 14px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, .1);
  border-left: 0 !important;
  display: inline-block;
  /* s’ajusta al contingut */
  margin: 0 auto;
  /* centra si el pare NO és flex */
  align-self: center;
  /* centra si el pare SÍ és flex (ex. .hero-card) */
  overflow-wrap: anywhere;
  /* evita desbordaments amb paraules llargues/URLs */
  margin-bottom: 0px !important;
  /* text dins la píldora */
  text-align: left;
  /* centra el text; canvia-ho a left si el vols alineat a l’esquerra */

}

/* Títol dins la píldora */
.microrredes-item-title {
  font-family: inherit;
  color: #111 !important;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.3;
  margin: 0;
}

.microrredes-list-item .microrredes-container.padding-20 {
  width: 90% !important;
  margin-left: auto;
  margin-right: auto;
}

/* Ocultem l'edició per replicar el disseny (només títol a la píldora) */
.microrredes-item-edicion {
  display: none;
}

.microrredes-list-item {
  position: relative;
}

.microrredes-list-item .microrredes-container.padding-20 {
  position: absolute;
  left: 50%;
  bottom: 16px;
  /* ajusta l’alçada sobre la imatge */
  transform: translateX(-50%);
  width: 90% !important;
  margin: 0;
  /* no cal amb posicionament absolut */
}

/* Wrapper amb separació si al costat hi ha text */
.microrredes-wrapper {
  gap: 28px;
  align-items: flex-start;
  width: 100%;
}

.microrred-ediciones-anteriores .microrredes-list-item .microrredes-container.padding-20,
.microrredes-year-group .microrredes-list-item .microrredes-container.padding-20 {
  width: 100% !important;
  left: 0 !important;
  transform: none !important;
  bottom: 0 !important;
  background: #48E5C2 !important;
}

.microrredes-list-item .microrredes-content {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  margin-left: auto;
  /* centra la píldora dins el contenidor */
  margin-right: auto;
}

.microrred-ediciones-anteriores .microrredes-content {
  background: transparent !important;
  box-shadow: none;
}

.custom-hover-carousel.dica_divi_carousel .dica_divi_carouselitem .et_pb_module_inner,
.microrredes-year-group .microrredes-list-item .microrredes-content,
.microrredes-year-group .microrredes-list-item {
  background: #48E5C2 !important;
}

.microrredes-year-group .microrredes-list-item .microrredes-content {
  border-radius: 0 0 20px 20px;
  width: 100% !important;
  min-height: 70px;
}

.curso-info-item .curso-matricula__content .padding-20 {
  padding: 0 !important;
}

.taller-info__item,
.curso-info-item {
  background: #e36386;
  color: white;
  width: fit-content;
  padding: 6px 16px;
  border-radius: 20px;
  display: flex;
  gap: 10px;
}

.taller-info__item.taller-info__programa {
  background: transparent;
  padding: 0;
}

.curso-info-item .numero {
  font-size: 24px;
  color: #002856;
  font-weight: 900;
  flex-basis: 15%;
}

.curso-matricula__content .d-flex {
  border-bottom: 1px solid;
}

.curso-matricula__content .d-flex p {
  flex-basis: 80%;
  font-size: 16px;
  color: #002856;
}

.docente-item {
  background: rgb(153, 174, 198, .5);
}

.curso-extra__inscripcion {
  border-left: 4px solid #e36386;
  padding: 15px;
}
.curso-extra__inscripcion a:hover {
  padding-right: 30px !important;
}

.curso-extra__logos-list {
  gap: 10px;
  justify-content: space-around;
}

.curso-extra__logo {
  flex-grow: 1;
  max-width: 50%;
  text-align: center;
}

.curso-extra__logo img {
  height: 50px;
  width: auto !important;
  object-fit: contain;
}

.curso-extra__avisos {
  padding: 20px;
  border-radius: 20px;
  background-color: rgb(72 229 194 / 50%);
  color: #002856;
  margin-top: 20px;
  margin-bottom: 20px;
}

/* DOCENTE SLIDER PONENTES - DIALOGOS */

.docente-slider.ponentes {
  width: 100% !important;
  max-width: 100%;
}

.docente-slider.ponentes .slick-list {
  overflow: hidden !important;
}

.docente-slider.ponentes .ponente-card {
  width: 100%;
  overflow: hidden;
  border-radius: 40px;
  background: #fff;
}

.docente-slider.ponentes .personas-item-thumbnail {
  line-height: 0;
}

.docente-slider.ponentes .ponente-image {
  display: block;
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 40px 40px 0 0;
}

/* 3 targetes per fila */
.webinars-realizados-wrapper .webinars-list-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  /* ja tens .gap-20; això ho reforça */
}

.webinars-realizados-wrapper .webinars-list-item {
  box-sizing: border-box;
  flex: 0 0 calc((100% - 40px) / 3) !important;
  /* 2 gaps de 20px entre 3 columnes */
  max-width: calc((100% - 40px) / 3) !important;
}

.webinars-list-item .webinar-content .webinar-name.color-black {
  font-weight: 800 !important;
}

.webinars-list-item .webinar-content.margin-bottom-20 {
  margin-bottom: 0 !important;
}

.webinars-list-item .webinar-container {
  position: relative;
  padding-bottom: 20px;
}

.webinars-list-item .webinar-content::after {
  content: none !important;
}

/* (Opcional) Estils de la data i el títol que ja tenies */
.webinars-list-item .webinar-content .webinar-date.color-black.margin-bottom-10.bold {
  color: #002856 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  font-size: 14px;
  line-height: 1.1;
  margin: 0 0 10px 0;
  display: inline-block;
}
.webinars-list-item .webinar-content .webinar-title {
  font-weight: bold;
}

.webinars-list-item .webinar-content .webinar-name.color-black {
  font-weight: 800 !important;
}

.webinars-list-item .webinar-image {
  max-height: 262px;
  object-fit: cover;
  overflow: hidden;
  border-radius: 20px;
}

.webinar-organiza-colabora-logo {
  width: auto;
  max-height: 130px;
}

/* Estat base */
#show-more-webinars {
  position: relative;
  /* necessari per a l'absolute de ::after */
  background: #002856;
  color: #fff;
  padding: 8px 40px !important;
  /* 👈 reserva espai a la dreta per la icona */
  font-size: 15px;
  font-weight: 800 !important;
  display: inline-block;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}

/* Hover/focus (mateixa amplada) */
#show-more-webinars:hover,
#show-more-webinars:focus-visible {
  background: #E26285 !important;
  color: #fff !important;
  outline: none;
}

/* L’after NO ocupa espai: està posicionat absolutament */
#show-more-webinars::after {
  content: 'E';
  position: absolute;
  right: 20px;
  /* dins la zona reservada pel padding */
  top: 50%;
  transform: translateY(-50%);
  font-family: ETmodules !important;
  font-size: 15px;
  line-height: 1;
  opacity: 0;
  /* amagat per defecte */
  transition: opacity .15s ease;
  /* només fade */
  pointer-events: none;
}

/* Només visible en hover/focus */
#show-more-webinars:hover::after,
#show-more-webinars:focus-visible::after {
  opacity: 1;
}

.custom-hover-carousel .et_pb_module_inner {
  transition: background-color .25s ease;
  border-radius: 16px;
  /* opcional */
}

.custom-hover-carousel .swiper-container .et_pb_module_inner:hover {
  background-color: #48E5C2 !important;
}

.docente-list-wrapper .ponente-slide {
  margin-bottom: 20px;
}

/* ===== Targeta: columna, ample complet dels fills ===== */
.docente-list-wrapper .personas-list-item {
  display: flex !important;
  gap: 0px;
  flex-wrap: wrap;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 0 !important;
  border-radius: 24px !important;
  background: #fff;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
  flex-basis: 100%;
}

.docente-list-wrapper .personas-list-item {
  border-radius: 24px !important;
  overflow: hidden;
}

.docente-list-wrapper .personas-list-item-wrap {
  border-radius: 24px !important;
  background: #48E5C250 !important;
  display: flex;
  flex-direction: row;
  padding-top: 10px;
  padding-bottom: 10px;
}

/* El contenidor de la imatge: mida i retall */
.docente-list-wrapper .personas-item-thumbnail {
  width: 100px;
  height: 100px;
  margin-left: 30px;
  /* o usa aspect-ratio: 16/9; */
  overflow: hidden;
  /* retalla sobrants */
  line-height: 0;
  border-radius: 0;
  /* la imatge serà rectangular */
}

/* El <img> omple TOT el contenidor i NO és rodó */
.docente-list-wrapper .personas-item-thumbnail img,
.docente-list-wrapper .personas-item-thumbnail img.circle {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  /* cobreix sense deformar */
  object-position: center;
  border-radius: 170px !important;
  /* anul·la el cercle */
  clip-path: none !important;

}

/* ===== Banda inferior turquesa amb el nom ===== */
.docente-list-wrapper .personas-list-item-info {
  order: 2;
  color: #0b0b0b !important;
  padding: 14px 18px !important;
  border-left: 0 !important;
  border-radius: 0 0 24px 24px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.docente-list-wrapper .personas-list-item>.personas-list-item-info,
.docente-list-wrapper .personas-list-item>.personas-item-thumbnail {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
}

/* Nom destacat */
.docente-list-wrapper .personas-list-item-info .personas-item-name {
  font-weight: 800;
  font-size: 18px;
  line-height: 1.25;
  margin: 0;
}

/* Amaga empresa i càrrec dins la banda inferior */
.docente-list-wrapper .personas-list-item-info .personas-item-from,
.docente-list-wrapper .personas-list-item-info .personas-item-cargo {
  display: none !important;
}

/* (Opcional) Ajusta el nom perquè no deixi espais extres */
.docente-list-wrapper .personas-list-item-info .personas-item-from {
  margin: 0 !important;
}

.et_pb_code_0_tb_body .et_pb_code_inner>h5 {
  display: block;
  text-align: center;
  margin-top: 60px;
  margin-bottom: 20px;
  font-size: 24px;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/* ===== Targetes Consell (disseny tipus imatge) ===== */

/* Grid general */
.personas-list-wrapper.colaboradoras,
.personas-list-wrapper.vocalia,
.personas-list-wrapper.secretaria,
.personas-list-wrapper.consejo {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  text-align: center;
  gap: 20px;
}

.personas-list-wrapper.consejo {
  margin-top: 40px;
}

/* Targeta */
.personas-list-wrapper.colaboradoras .personas-list-item,
.personas-list-wrapper.vocalia .personas-list-item,
.personas-list-wrapper.secretaria .personas-list-item,
.personas-list-wrapper.consejo .personas-list-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center;
  flex: 0 1 18.5%;
  background: #FAF7F5;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  padding: 24px 18px;
  border-radius: 22px;
}

.personas-item-name a,
.personas-item-thumbnail a {
  color: inherit;
  text-decoration: none;
  display: inline-block;
}

.personas-item-thumbnail a {
  display: block;
  height: 150px;
}

/* Per si porten utilitats que desalineen */
.personas-list-wrapper.colaboradoras .personas-list-item.justify-content-space-between,
.personas-list-wrapper.vocalia .personas-list-item.justify-content-space-between,
.personas-list-wrapper.secretaria .personas-list-item.justify-content-space-between,
.personas-list-wrapper.consejo .personas-list-item.justify-content-space-between {
  justify-content: center !important;
}

.personas-secretaria-group {
  flex-basis: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  text-align: center;
  gap: 20px;
  justify-content: center;
}

/* El bloc d'informació: sense línia esquerra i 100% ample */
.personas-list-wrapper.colaboradoras .personas-list-item-info,
.personas-list-wrapper.vocalia .personas-list-item-info,
.personas-list-wrapper.secretaria .personas-list-item-info,
.personas-list-wrapper.consejo .personas-list-item-info {
  order: 2;
  /* va després de la foto */
  border-left: none !important;
  width: 100% !important;
  max-width: 100% !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Anul·lar amplades 50% de les classes col-* dins la targeta */
.personas-list-wrapper.colaboradoras .personas-list-item .col-lg-6,
.personas-list-wrapper.colaboradoras .personas-list-item .col-sm-6,
.personas-list-wrapper.vocalia .personas-list-item .col-lg-6,
.personas-list-wrapper.vocalia .personas-list-item .col-sm-6,
.personas-list-wrapper.secretaria .personas-list-item .col-lg-6,
.personas-list-wrapper.secretaria .personas-list-item .col-sm-6,
.personas-list-wrapper.consejo .personas-list-item .col-lg-6,
.personas-list-wrapper.consejo .personas-list-item .col-sm-6 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

/* Reordenem els camps interns per coincidir amb la maqueta */
.personas-list-wrapper.colaboradoras .personas-item-name,
.personas-list-wrapper.secretaria .personas-item-name,
.personas-list-wrapper.consejo .personas-item-name,
.personas-list-wrapper.vocalia .personas-item-name {
  order: 1;
}

.personas-list-wrapper.colaboradoras .personas-item-tipo,
.personas-list-wrapper.vocalia .personas-item-tipo,
.personas-list-wrapper.secretaria .personas-item-tipo,
.personas-list-wrapper.consejo .personas-item-tipo {
  order: 4;
}

.personas-list-wrapper.colaboradoras .personas-item-ciudad,
.personas-list-wrapper.vocalia .personas-item-ciudad,
.personas-list-wrapper.secretaria .personas-item-ciudad,
.personas-list-wrapper.consejo .personas-item-ciudad {
  order: 3;
}

.personas-list-wrapper.colaboradoras .personas-item-cargo,
.personas-list-wrapper.vocalia .personas-item-cargo,
.personas-list-wrapper.secretaria .personas-item-cargo,
.personas-list-wrapper.consejo .personas-item-cargo {
  order: 2;
}

/* Tipografia i espais */
.docente h4.et_pb_module_header,
.personas-list-wrapper.colaboradoras .personas-item-name,
.personas-list-wrapper.vocalia .personas-item-name,
.personas-list-wrapper.secretaria .personas-item-name,
.personas-list-wrapper.consejo .personas-item-name {
  margin: 0 0 4px 0;
  font-size: 20px;
  font-weight: 800;
  color: #111;
}

.docente h4.et_pb_blurb_container .et_pb_blurb_container {
  text-align: center;
}

.personas-list-wrapper.colaboradoras .personas-item-tipo,
.personas-list-wrapper.vocalia .personas-item-tipo,
.personas-list-wrapper.secretaria .personas-item-tipo,
.personas-list-wrapper.consejo .personas-item-tipo {
  margin: 0;
  font-size: 14px;
  color: #000000;
}

.personas-list-wrapper.colaboradoras .personas-item-cargo,
.personas-list-wrapper.vocalia .personas-item-cargo,
.personas-list-wrapper.secretaria .personas-item-cargo,
.personas-list-wrapper.consejo .personas-item-cargo {
  margin: 0 0 12px 0;
  font-size: 14px;
  color: #000000;
}

/* Xip rosa per a la ciutat */
.personas-list-wrapper.colaboradoras .personas-item-ciudad,
.personas-list-wrapper.vocalia .personas-item-ciudad,
.personas-list-wrapper.secretaria .personas-item-ciudad,
.personas-list-wrapper.consejo .personas-item-ciudad {
  margin: 0 0 12px 0;
}

.docente .et_pb_blurb_description a,
.personas-list-wrapper.colaboradoras .personas-item-ciudad span,
.personas-list-wrapper.colaboradoras .personas-item-ciudad a,
.personas-list-wrapper.vocalia .personas-item-ciudad span,
.personas-list-wrapper.vocalia .personas-item-ciudad a,
.personas-list-wrapper.secretaria .personas-item-ciudad span,
.personas-list-wrapper.secretaria .personas-item-ciudad a,
.personas-list-wrapper.consejo .personas-item-ciudad span,
.personas-list-wrapper.consejo .personas-item-ciudad a {
  display: inline-block;
  padding: 7px 14px;
  border-radius: 9999px;
  background: #e56f92;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: transform .15s ease;
}

.personas-list-wrapper.colaboradoras .personas-item-tipo,
.personas-list-wrapper.secretaria .personas-item-tipo {
  display: none;
}

.docente .et_pb_blurb_description a:hover,
.personas-list-wrapper.colaboradoras .personas-item-ciudad a:hover,
.personas-list-wrapper.colaboradoras .personas-item-ciudad a:focus-visible,
.personas-list-wrapper.vocalia .personas-item-ciudad a:hover,
.personas-list-wrapper.vocalia .personas-item-ciudad a:focus-visible,
.personas-list-wrapper.secretaria .personas-item-ciudad a:hover,
.personas-list-wrapper.secretaria .personas-item-ciudad a:focus-visible,
.personas-list-wrapper.consejo .personas-item-ciudad a:hover,
.personas-list-wrapper.consejo .personas-item-ciudad a:focus-visible {
  transform: translateY(-1px);
  outline: none;
}

/* Foto circular a dalt i centrat “a prova de bombes” */
.personas-list-wrapper.colaboradoras .personas-item-thumbnail,
.personas-list-wrapper.vocalia .personas-item-thumbnail,
.personas-list-wrapper.secretaria .personas-item-thumbnail,
.personas-list-wrapper.consejo .personas-item-thumbnail {
  order: 1;
  width: 150px;
  height: 150px;
  border-radius: 9999px;
  overflow: hidden;
  margin: 0 auto 16px !important;
  /* clau per centrar */
  display: block;
  float: none !important;
  /* per si alguna classe flota */
}

.personas-list-wrapper.colaboradoras .personas-item-thumbnail img,
.personas-list-wrapper.vocalia .personas-item-thumbnail img,
.personas-list-wrapper.secretaria .personas-item-thumbnail img,
.personas-list-wrapper.consejo .personas-item-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


/* ===== Animacions ===== */
@keyframes gradientMove {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

/* ===== Carousel Blog ===== */
.carousel-blog .slick-slide.slick-current,
.carousel-blog .slick-slide.slick-active,
.carousel-blog .slick-slide {
  width: 300px !important;
}

.carousel-blog .lwp_post_carousel_excerpt,
.carousel-blog .lwp_post_carousel_meta .lwp_meta_comments,
.carousel-blog .lwp_post_carousel_meta .lwp_meta_separator,
.carousel-blog .lwp_post_carousel_meta a,
.carousel-blog .lwp_post_carousel_meta .lwp_meta_by {
  display: none;
}

.carousel-blog .lwp_meta_date {
  color: #e36386;
  font-weight: 700;
  font-size: 18px;
}

.carousel-blog .lwp_carousel_featured_image img {
  border-radius: 30px;
}

/* ===== PZ News Slider — base ===== */
.pz-news-slider-wrap {
  position: relative;
  padding: 0 74px;
}

.pz-news-slide {
  padding: 0 0.75rem;
  box-sizing: border-box;
}

.pz-news-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  overflow: hidden;
  text-decoration: none;
}

.pz-news-thumb {
  height: 200px;
  overflow: hidden;
  border-radius: 0 0 20px 20px;
}

.pz-news-thumb img {
  display: block;
  object-fit: cover;
  height: 100%;
}

.pz-news-content {
  padding: 0.9rem 1rem 1.1rem;
}

.pz-news-title {
  margin: 0 0 0.25rem;
  font-size: 18px;
  line-height: 1.3;
}

.pz-news-date {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #e36386;
  margin-bottom: 0.35rem;
  letter-spacing: -0.5pt;
}

/* L’excerpt es desactiva globalment */
.pz-news-excerpt {
  display: none !important;
}

/* Navegació (valors mòbil per defecte, mobile-first) */
.pz-news-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  background: #002856;
  color: #fff;
  border: 0;
  width: 36px;
  height: 36px;
  border-radius: 9999px;
  cursor: pointer;
  opacity: 0.9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pz-news-prev {
  left: -6px;
}

.pz-news-next {
  right: -6px;
}

/* Slider contenidor */
.pz-news-slider {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.pz-news-slider .slick-track {
  display: flex !important;
}

/* Estat sense inicialitzar (fallback abans que carregui Slick) */
.pz-news-slider:not(.slick-initialized) {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  overflow: hidden;
}

.pz-news-slider:not(.slick-initialized) .pz-news-slide {
  flex: 0 0 50%;
  max-width: 50%;
  min-width: calc(50% - 0.75rem);
}

/* ===== Botó "Conoce más" ===== */
.pz-btn-more {
  display: inline-block;
  margin-top: 0.75rem;
  background: #d8dce3;
  color: #002856;
  padding: 8px 16px;
  border-radius: 50px;
  font-size: 0.9rem;
  text-decoration: none;
  transition: background 0.3s;
  font-family: inherit;
  font-weight: 700;
}

.pz-news-cta__btn:hover,
.pz-btn-more:hover {
  background: #e36386;
  color: #fff;
}

.pz-news-cta {
  margin-top: 20px;
  text-align: center;
}

.pz-news-cta__btn {
  background: #002856;
  color: #fff;
  padding: 8px 16px;
  border-radius: 20px;
  font-weight: 600;
}

/* ===== Bloc "Recursos" ===== */
.enlaces-y-recursos-wrapper {
  text-align: left;
  margin: 0 auto;
}

/* Amaga el comptador (small) com a la imatge */
.enlaces-y-recursos-wrapper h3 small {
  display: none !important;
}

/* Llista centrada i amb espai vertical entre pastilles */
.recursos-list-wrapper {
  display: flex;
  gap: 10px;
}

/* Enllaç en forma de pastilla */
.documento-link {
  display: flex;
  justify-content: center;
  padding: 12px 20px;
  border-radius: 9999px;
  background: rgba(72, 229, 194, 1);
  text-decoration: none;
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: background-color 0.15s ease, transform 0.15s ease;
}

.enlaces-item a,
.documento-name {
  color: #111;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.2;
  text-align: center;
}

/* Ocultem el botó "IR AL RECURSO" per quedar-nos només amb el text, com a la imatge */
.documento-download {
  display: none !important;
}

/* Hover/Focus: lleu elevació i fons un pèl més clar */
.documento-link:hover,
.documento-link:focus-visible {
  background: #eff3f7;
  transform: translateY(-1px);
  outline: none;
}

.personas-tabs {
  width: 100%;
}

.personas-tabs-nav {
  display: flex;
  gap: .5rem;
  margin-bottom: 1rem;
}

.personas-tab {
  border: 1px solid rgba(227, 99, 134, 0);
  background: rgba(227, 99, 134, 0.2);
  padding: .5rem 1rem;
  border-radius: 999px;
  cursor: pointer;
  flex: 1;
  color: white;
  font-weight: 800;
  font-size: 18px;
}

.personas-tab[aria-selected="true"] {
  box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
  border: 1px solid #FF2963;
  background: #FF2963;
}

.personas-pane.is-active {
  display: block;
}

.personas-pane[hidden] {
  display: none !important;
}

/* Manté la teva graella existent */
.personas-list-wrapper {
  gap: 20px;
}

.personas-pane.secretaria .personas-item-ciudad {
  display: none !important;
}

.personas-pane.secretaria .personas-item-cargo {
  font-weight: 800;
}

.miembros-wrap .miembros-filter select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  padding: 15px;
  font-size: 18px;
  font-weight: 800;
  color: black;
  border: none;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, .2);
  background: white;
  width: 170px;
  /* espai dreta per la fletxa */
  border-radius: 40px;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23666' height='20' viewBox='0 0 20 20' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M5 7l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 15px center;
  /* aquí controles la posició */
  background-size: 16px;
}


.miembros-list-wrap ul.miembros-lista {
  padding: 0;
  list-style: none;
}

.miembros-list-wrap ul.miembros-lista li.miembro-item {
  border-bottom: 1px solid;
  padding: 10px 0;
  font-size: 18px;
  font-weight: 600;
}

/* Remove native arrow, keep only our custom one */
.miembros-filter .select-wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  padding-right: 2.5rem;
  /* space for arrow */
  margin-bottom: 20px;
}

.miembros-filter .select-wrap select::-ms-expand {
  display: none;
}

/* Positioning context */
.miembros-filter .select-wrap {
  position: relative;
  display: inline-block;
}

.miembros-filter .miembros-filter select {
  background-position: right 1rem center !important;
}

.select-chevron {
  position: absolute;
  right: 16px;
  /* ← adjust horizontal position */
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 14px;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  opacity: 1;
}

#toggle-socios {
  padding: 0;
}

#toggle-socios .et_pb_toggle_title {
  display: flex;
  flex-wrap: wrap;
}

#toggle-socios .et_pb_toggle_title::before {
  position: absolute;
  right: 0;
  top: 20px;
  background: #002856;
  border-radius: 20px;
  font-size: 30px;
  padding: 8px;
}

.miembros-lista--instituciones {
  column-count: 3;
  column-gap: 30px;
  padding-left: 0;
  margin: 0;
  list-style: none;
}

.miembros-lista--instituciones .miembro-item--institucion {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  margin: 0 0 10px 0;
}

@media (max-width: 767px) {
  .miembros-lista--instituciones {
    column-count: 1;
  }
}

.congreso-year-pane {
  display: none !important;
}

.congreso-year-pane.is-active {
  display: block !important;
}

.congresos-tabs,
.microrredes-tabs {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  margin: 0 20px 1rem 0;
  width: fit-content;
  float: left;
}

.congresos-tab,
.microrredes-tab {
  background: rgba(72, 229, 194, 0.5);
  padding: .6rem .9rem;
  border-radius: .75rem;
  cursor: pointer;
  text-align: left;
  border: none;
  font-size: 18px;
}

.congresos-tab.is-active,
.microrredes-tab.is-active {
  font-weight: 600;
  background: rgba(72, 229, 194, 1);
}

.congresos-tabpanel[hidden],
.microrredes-tabpanel[hidden] {
  display: none !important;
}

.congresos-year-items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.congreso-card {
  border: 1px solid #eee;
  border-radius: 20px;
  padding: 20px;
  background: rgba(72, 229, 194, 0.5);
}

.congreso-card-media {
  max-width: 300px;
}

.congreso-card-media img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
}

.congreso-card-title {
  margin: 0 0 .5rem 0;
  font-size: 1.3rem;
  line-height: 1.3;
  font-weight: 900;
}

.congreso-row {
  margin: .2rem 0;
}

.congreso-row .lbl {
  font-weight: 600;
}

.congreso-row.congreso-tematica {
  font-weight: 800;
  color: #e36386;
}

.congreso-row.congreso-tematica span {
  font-weight: 600;
  color: #000;
}

.microrredes-ano-layout {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.microrredes-ano-years {
  flex: 0 0 220px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.microrredes-ano-year-btn {
  width: 100%;
  text-align: left;
}

.microrredes-ano-year-btn.is-active {
  font-weight: 700;
}

.microrredes-ano-content {
  flex: 1;
}

.microrredes-ano-items {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.object-fit-cover .et_pb_image_wrap {
  width: 100% !important;
}

.object-fit-cover img {
  object-fit: cover;
  width: 100% !important;
}

.congresos-columna-left {
  background: #faf7f5;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.congreso-organizan__list,
h3#congreso-organizan-title {
  text-align: center;
}

.cg-slick .cg-img {
  display: block;
  width: 100%;
  height: auto;
}

.cg-slick .slick-arrow {
  z-index: 5;
}

/* assigna la variable CSS a partir de l’atribut data-ratio (JS no cal) */
.congresos-galeria [data-ratio]:not([data-ratio=""]) {
  --cg-ratio: calc(1% * attr(data-ratio number));
}

/* fletxes per damunt de Divi */
.congresos-galeria .slick-arrow {
  z-index: 5;
}

.congresos-videos__grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(4, 1fr);
}

.congresos-videos__item iframe,
.congresos-videos__item video {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border: 0;
}

.congresos-videos__item .fluid-width-video-wrapper iframe {
  max-height: 190px;
  overflow: hidden;
}

/* Swiper base */
.pz-swiper .swiper {
  width: 100%;
}

.pz-swiper .swiper-slide img.cg-img {
  display: block;
  width: 100%;
  height: auto;
  cursor: zoom-in;
  border-radius: 40px;
}

.pz-swiper .swiper-button-prev,
.pz-swiper .swiper-button-next {
  z-index: 10;
}

.swiper-button-next::after,
.swiper-button-prev::after {
  color: white !important;
}

.pz-swiper-organizan .swiper-button-next::after,
.pz-swiper-organizan .swiper-button-prev::after {
  color: #002856 !important;
}

.ciudades-relacionadas__item,
.ciudades-relacionadas__list {
  list-style: none;
  padding: 0 !important;
}

.congreso-cabecera {
  display: inline-block;
  padding: 6px 14px;
  color: #fff;
  font-weight: bold;
  font-size: 26px;
  line-height: 1;
  border-radius: 40px;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .8pt;
}

.ciudades-relacionadas {
  margin: 10px 0;
}

.ciudad-relacionada {
  background: #48E5C2;
  color: #000000;
  width: fit-content;
  padding: 10px;
  border-radius: 20px;
  font-weight: 900;
  text-align: center;
  margin: 0 auto;
}

.taller-list-item {
  flex-basis: 32%;
}

.taller-item-thumbnail {
  position: relative;
}

.taller-item-thumbnail .taller-badge {
  position: absolute;
  right: 10px;
  top: 10px;
  z-index: 999;
  padding: 10px;
  border-radius: 20px;
  font-weight: 800;
  color: white;
}

.taller-item-thumbnail .taller-badge-inscripciones,
.taller-item-thumbnail .inscripciones-abiertas {
  background: #E26285;
}

.taller-item-thumbnail .taller-badge-cursando,
.taller-item-thumbnail .cursando {
  background: #002856;
}

.dica_divi_carouselitem {
  align-self: center;
  height: 100%;
}

.dica_divi_carouselitem .image img {
  max-height: 70px;
  width: auto;
}

.cideu-curso-inscribirse-btn {
  width: 100%;
  text-align: center;
  background: #e36386 !important;
  font-size: 20px !important;
}

.taller-detalle div {
  margin-bottom: 30px;
}

.cideu-quienes-somos ol {
  list-style: none;
  counter-reset: item;
  padding-left: 0;
}

.cideu-quienes-somos ol li {
  counter-increment: item;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  padding: 10px;
  border-radius: 20px;
  background-color: rgba(18, 116, 117, 0.5);
  font-weight: 700;
  line-height: 1.3;
  font-size: 15px;
}

.cideu-quienes-somos ol li::before {
  content: counter(item);
  background-color: #000;
  color: #fff;
  min-width: 28px;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-right: 10px;
  font-weight: bold;
}

.crai-modal {
  display: none;
}

.crai-modal.is-open {
  display: block;
}

#publicaciones-modal.crai-modal.is-open,
#instrumentos-modal.crai-modal.is-open {
  display: block !important;
}

body.has-modal-open {
  overflow: hidden;
}

#publicaciones-modal,
#instrumentos-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
}

#publicaciones-modal .crai-modal__overlay,
#instrumentos-modal .crai-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .6);
}

#publicaciones-modal .crai-modal__panel,
#instrumentos-modal .crai-modal__panel {
  position: relative;
  max-width: 980px;
  margin: 5vh auto;
  background: #fff;
  max-height: 90vh;
  overflow: auto;
  outline: none;
  padding: 50px;
  border-radius: 20px;
}

button.crai-modal-open {
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  width: 100%;
}

.instrumentos-grid-item {
  margin: 0 auto;
}

.crai-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5vh 20px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .25s ease, visibility 0s linear .25s;
}

.crai-modal.is-open {
  visibility: visible;
  pointer-events: auto;
  transition: opacity .25s ease, visibility 0s;
}

.crai-modal.is-open.is-animate {
  opacity: 1;
}

.crai-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .6);
}

.crai-modal__panel {
  position: relative;
  width: min(980px, 100%);
  max-height: 90vh;
  overflow: auto;
  background: #fff;
  outline: none;

  transform: translateY(14px);
  opacity: 0;
  transition: transform .25s ease, opacity .25s ease;
}

.crai-modal.is-open.is-animate .crai-modal__panel {
  transform: translateY(0);
  opacity: 1;
}

.publicaciones-modal-loading,
.instrumentos-modal-loading {
  min-height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#publicaciones-modal,
#instrumentos-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  /* màxim pràctic */
}

#publicaciones-modal .crai-modal__overlay,
#instrumentos-modal .crai-modal__overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
}

#publicaciones-modal .crai-modal__panel,
#instrumentos-modal .crai-modal__panel {
  position: relative !important;
  z-index: 1 !important;
}

button.crai-modal__close {
  position: absolute;
  right: 20px;
}

.crai-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;

  width: 36px;
  height: 36px;

  border: none;
  background: none;
  cursor: pointer;

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

.crai-modal__close::before {
  content: "✕";
  font-size: 22px;
  line-height: 1;
}

.crai-modal__close {
  z-index: 10;
}

.boxes-home .et_pb_blurb_content {
  max-width: 600px;
  margin: 0 auto;
}

.boxes-home-espacios img {
  height: 170px;
  object-fit: cover;
  border-radius: 20px;
  margin-top: -50px;
}

.boxes-home .links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.boxes-home .links a {
  background: white;
  border-radius: 20px;
  padding: 10px 20px;
  color: black;
  font-weight: 700;
}

.boxes-home .links a:hover {
  background: #E26285;
  color: white;
}

.boxes-home-congresos .et_pb_blurb_description {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.boxes-home-congresos .et_pb_blurb_description p {
  flex: 1;
}

.mentorias-ciudades-imagenes {
  margin-bottom: 10px;
}

.mentorias-ciudad-imagen {
  position: relative;
  overflow: hidden;
}

.mentorias-ciudad-title {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  padding: 5px 10px;
  background: rgba(0, 0, 0, .7);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  border-radius: 8px;
}

.mentorias-ciudad-imagen img {
  height: 140px;
  width: 240px;
  object-fit: cover;
  border-radius: 20px;
}

.alianzas-logos {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 70px 60px;
  align-items: center;
}

.alianzas-logos a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 90px;
}

.alianzas-logos img {
  max-width: 100%;
  max-height: 75px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Ajuntament Barcelona & DIBA */
.alianzas-logos a:nth-of-type(2) img,
.alianzas-logos a:nth-of-type(5) img {
  height: 50px;
}

/* SMARTCITYEXPO */
.alianzas-logos a:last-of-type img {
  height: 40px;
}

@media (max-width: 980px) {
  .alianzas-logos {
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 40px;
  }
}

@media (max-width: 767px) {
  .alianzas-logos {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 30px;
  }
}

.et_pb_video_box video,
.fluid-width-video-wrapper iframe {
  border-radius: 20px;
}

.et-menu li li.menu-item-has-children>a:first-child:after {
  top: 15px;
}

.woocommerce-form-login {
  margin: 0px !important;
}

.slider-images .et_pb_slide_description {
  display: none;
}

.slider-images .et-pb-controllers {
  bottom: 0 !important;
}

.slider-images img {
  object-fit: cover !important;
  height: 210px !important;
  max-height: none !important;
  width: 100% !important;
}

.curso-tipo-capsula-formativa .box-color {
  background-color: #d6d9f0 !important;
}

.curso-galeria-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.curso-galeria-item img {
  width: 100%;
  height: 250px;
  display: block;
  object-fit: cover;
  border-radius: 20px;
}

.pz-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

.pz-blog-card {
  min-height: 250px;
  border: 1px solid #e5e5e5;
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .06);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}

.pz-blog-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .09);
}

.pz-blog-card-link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 250px;
  padding: 42px 38px 18px;
  color: inherit;
  text-decoration: none;
}

.pz-blog-card-title {
  font-size: 20px;
  line-height: 1.15;
  font-weight: 800;
  color: #000;
  margin: 0;
}

.pz-blog-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  color: #c8cda4;
  font-size: 16px;
  font-weight: 700;
}

.pz-blog-card-date::before {
  content: "▣";
  font-size: 10px;
  margin-right: 6px;
}

.pz-blog-card-author::before {
  content: "·";
  margin-right: 10px;
}

.blog-list-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

.blog-list-item {
  min-height: 250px;
  border: 1px solid #e5e5e5;
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .06);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}

.blog-list-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .09);
}

.blog-image {
  /* height: 300px; */
  height: 210px;
  overflow: hidden;
}

.blog-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-link {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.blog-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /* min-height: 250px; */
  padding: 30px 30px 20px;
}

.blog-title {
  font-size: 20px;
  line-height: 1.15;
  font-weight: 800;
  color: #000;
  margin: 0;
}

.blog-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  color: #c8cda4;
  font-size: 16px;
  font-weight: 700;
}

.blog-date::before {
  content: "▣";
  font-size: 10px;
  margin-right: 6px;
}

.blog-author::before {
  content: "·";
  margin-right: 10px;
}

.blog-load-more-wrapper {
  text-align: center;
  margin-top: 50px;
}

.blog-load-more-button {
  background: #0b315f;
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 15px 28px;
  font-weight: 800;
  cursor: pointer;
  text-transform: uppercase;
}

.blog-load-more-button.is-loading {
  opacity: .6;
  pointer-events: none;
}

@media (max-width: 980px) {
  .blog-list-wrapper {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
  }
}

@media (max-width: 767px) {
  .blog-list-wrapper {
    grid-template-columns: 1fr;
  }

  .blog-container {
    padding: 32px 28px 18px;
  }
}



@media (max-width: 980px) {
  .curso-galeria-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Responsive */
@media (max-width: 1200px) {
  .congresos-videos_grid {
    grid-template-columns: repeat(3, 1fr);
  }
  #glt-translate-trigger,
  body.admin-bar #glt-translate-trigger {
    top: 20px !important;
    right: 95px;
  }
}

@media (max-width: 767px) {
  .curso-galeria-grid {
    grid-template-columns: 1fr;
  }
  #glt-translate-trigger,
  body.admin-bar #glt-translate-trigger {
    top: 7.8vw !important;
    right: 78px;
  }
}

@media (max-width: 992px) {
  .congresos-videos__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  #glt-translate-trigger,
  body.admin-bar #glt-translate-trigger {
    top: 2.8vw !important;
  }
}

@media (max-width: 600px) {
  .congresos-videos__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width:980px) {
  .congresos-tabs {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .congreso-card {
    grid-template-columns: 1fr;
  }
}

/* ===== 📱 MÒBIL (≤ 48em) ===== */
@media screen and (max-width: 48em) {

  .et_mobile_menu {
    overflow: scroll !important;
    max-height: 65vh !important;
    height: 65vh !important;
  }

  .slider-home .et_pb_slider_container_inner {
    padding-top: 20px;
  }

  .noticia-destacada h4 {
    font-size: 18px;
    bottom: 50px;
    max-width: 100%;
  }

  .personas-tabs-nav {
    flex-wrap: wrap;
  }

  .publicaciones-item-modal-right-col,
  .instrumentos-item-modal-right-col,
  .taller-list-item,
  .tab-link,
  .webinars-realizados-wrapper .webinars-list-item,
  .mentorias-ciudad-imagen,
  .microrredes-list-item,
  .alianzas-galeria .et_pb_gallery_item,
  .personas-list-wrapper.colaboradoras .personas-list-item,
  .personas-list-wrapper.vocalia .personas-list-item,
  .personas-list-wrapper.secretaria .personas-list-item,
  .personas-list-wrapper.consejo .personas-list-item,
  .personas-tab,
  .boxes-home-congresos .et_pb_blurb_description p,
  .noticias-home-grid article {
    flex-basis: 100% !important;
  }

  .instrumentos-item-modal-title,
  .publicaciones-item-modal-title {
    font-size: 24px;
  }

  .formulario-adhesion .form-row {
    flex-direction: column;
    gap: 0;
  }

  .curso-info-item {
    display: block;
  }

  .webinars-realizados-wrapper .webinars-list-item,
  .articulos-relacionados .el-dbe-blog-extra article.post,
  .noticias-relacionadas .el-dbe-blog-extra article.noticia,
  .row-2 .col,
  .row-3 .col {
    width: 100% !important;
  }

  .webinars-realizados-wrapper .webinars-list-item {
    max-width: 100% !important;
  }

  .boxes-home-espacios img {
    margin-top: 0;
  }

  .cideu-faqs .et_pb_accordion_item,
  .personas-list-wrapper.consejo {
    margin-bottom: 20px !important;
  }

  .congresos-tab.is-active,
  .microrredes-tab.is-active {
    margin-bottom: 4px;
  }

  .et_pb_column_3 .et_pb_text.border-left.background-vermell {
    text-align: left;
    margin-left: 0;
  }

  .pz-news-slider .slick-track {
    display: block !important;
  }

  .congresos-tabs,
  .microrredes-tabs {
    display: block;
    float: none;
  }

  .microrredes-tabs .microrredes-tab {
    margin: 0 3px 3px;
  }

  .pz-news-slider .slick-slide {
    height: auto;
  }

  .pz-news-slider .slick-slide>div,
  .pz-news-slider .pz-news-slide {
    height: 100%;
  }

  .pz-news-slider,
  .pz-news-slider .slick-list {
    overflow: hidden;
  }

  .pz-news-slider .slick-list {
    margin: 0;
    padding: 0;
  }

  .pz-news-nav {
    top: 0;
  }

  .blurb-custom.blurb-formacion .et_pb_main_blurb_image {
    height: auto;
  }

  .form-submit {
    text-align: center;
  }

  .formulario-adhesion {
    padding: 20px 0 20px 20px;
  }

  .et_pb_section,
  .et_pb_column .et_pb_row_inner,
  .et_pb_row {
    padding: 0;
  }

  .personas-list-wrapper [class*="id-"] {
    margin: 0 !important;
  }

  .et_pb_text.border-left.background-vermell::before {
    height: auto;
    top: 0.1em;
    bottom: 0;
  }

  .et_pb_column_3 .et_pb_text.border-left.background-vermell {
    display: inline-block;
    position: relative;
    text-align: right;
    padding-left: 15px;
    margin-left: 20px;
  }

  .et_pb_text.border-left.background-vermell p {
    margin: 0;
    line-height: 1;
  }

  .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,
  .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap,
  #menu-main-menu-2025 {
    justify-content: flex-end !important;
  }

  /* Fletxes vídeo */
  .video-slider .et_pb_slider:hover .et-pb-arrow-prev,
  .video-slider .et-pb-slider-arrows .et-pb-arrow-prev {
    left: -30px !important;
    font-size: 30px !important;
  }

  .video-slider .et_pb_slider:hover .et-pb-arrow-next,
  .video-slider .et-pb-slider-arrows .et-pb-arrow-next {
    right: -30px !important;
    font-size: 30px !important;
  }

  /* Tallers */
  .talleres-wrapper {
    flex-wrap: wrap;
  }

  .talleres-wrapper .capsula-formativa-item {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }

  /* WooCommerce (mòbil) */
  body .woocommerce table.cart td.actions {
    display: block !important;
    text-align: center !important;
    padding: 0 0.5rem !important;
  }

  body .woocommerce table.cart td.product-name {
    text-align: left !important;
  }

  body .woocommerce table.cart td.product-name a {
    display: block !important;
    text-align: left !important;
  }

  body .woocommerce table.cart td.actions .coupon,
  body .woocommerce table.cart td.actions>button[name="update_cart"] {
    display: inline-block !important;
    float: none !important;
    vertical-align: middle !important;
    margin: 0.5rem !important;
  }

  body .woocommerce table.cart td.actions .coupon {
    display: block !important;
    margin: 0.5rem 0 !important;
    width: 100% !important;
  }

  body .woocommerce table.cart td.actions .coupon input {
    width: auto !important;
  }

  body .woocommerce table.cart td.actions .coupon input.input-text {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
    margin: 0 !important;
  }

  body .woocommerce table.cart td.actions .coupon button {
    display: block !important;
    width: 100% !important;
    margin: 0.5rem 0 0 !important;
    box-sizing: border-box !important;
  }

  body .woocommerce table.cart td.actions>button[name="update_cart"] {
    display: block !important;
    width: 100% !important;
    margin: 0.5rem 0 !important;
    box-sizing: border-box !important;
  }

  .woocommerce-checkout .form-row.place-order {
    display: flex !important;
    flex-direction: column;
    align-items: center;
  }

  .woocommerce-checkout .form-row.place-order>button#place_order {
    display: block;
    width: 100%;
    max-width: 300px;
    text-align: center;
    box-sizing: border-box;
  }

  select#billing_country,
  select#billing_country+.select2-container {
    width: 100% !important;
    box-sizing: border-box;
    display: block !important;
  }

  .select2-container--default .select2-selection--single {
    width: 100% !important;
    box-sizing: border-box;
    padding: 0.5em 0.75em !important;
    min-height: 2.5em;
  }

  .select2-container--default .select2-selection__arrow {
    right: 0.5em !important;
    height: 100% !important;
    top: 0 !important;
  }

  .input-text.iti__tel-input {
    width: 100% !important;
    box-sizing: border-box;
  }

  .woocommerce-form__label-for-checkbox.checkbox {
    display: flex !important;
    align-items: flex-start !important;
    gap: 0.5em;
    line-height: 1.2 !important;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
  }

  .woocommerce-form__label-for-checkbox.checkbox input[type="checkbox"] {
    margin-top: 0.2em;
  }

  .woocommerce-form__label-for-checkbox.checkbox abbr.required {
    margin-top: 0.2em;
    margin-left: 0.25em;
  }

  .et-db #et-boc .et-l .et_pb_shop ul.products.columns-4 li.product {
    width: 100% !important;
    margin: 0 !important;
    margin-bottom: 4% !important;
  }

  .home-box-masonry>.et_pb_column {
    display: block;
  }

  .home-box-masonry .box {
    margin-bottom: 20px !important;
  }
}

@media screen and (min-width: 981px) {
  /* 2 targetes per fila al carrusel */
  .pz-news-slider .slick-slide {
    flex: none;
    max-width: 50% !important;
  }
}
@media screen and (max: 980px) {
  .pz-news-slider .slick-slide {
    max-width: 100% !important;
  }
}

/* ===== Tablet gran (≥ 61.25em ~ 980px) ===== */
@media screen and (min-width: 61.25em) {


  /* Navegació més gran i posicions d’escriptori */
  .pz-news-nav {
    width: 40px;
    height: 40px;
  }

  .pz-news-prev {
    left: 20px;
    right: auto;
  }

  .pz-news-next {
    right: 20px;
  }

  /* Estat base */
  .microrredes-content.background-black.border-left.margin-bottom-20 {
    transition: background-color .25s ease;
  }

  /* Hover sobre la mateixa capsa */
  .microrredes-content.background-black.border-left.margin-bottom-20:hover {
    background-color: #48E5C2 !important;
    /* posa !important si cal */
  }

  /* Opcional: que el hover funcioni en passar per tota la targeta/enllaç */
  .microrredes-item-trigger:hover .microrredes-content.background-black.border-left.margin-bottom-20 {
    background-color: #48E5C2 !important;
    /* posa !important si la classe base el porta */
  }

  .home-box-masonry>.et_pb_column {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
    align-items: start;
  }

  .home-box-masonry .box {
    width: 100%;
    margin-bottom: 0 !important;
  }

  .home-box-masonry .green-top {
    grid-column: 1;
  }

  .home-box-masonry .pink {
    grid-column: 2;
  }

  .home-box-masonry .green-bottom {
    grid-column: 1;
  }

  .home-box-masonry .blue {
    grid-column: 2;
  }

}

/* ===== Forçar menú hamburguesa (≤ 75em ~ 1200px) ===== */
@media screen and (max-width: 75em) {

  /* Amaga el menú d’escriptori */
  .social-media,
  .et_pb_menu__menu,
  .et_pb_menu__wrap nav>ul {
    display: none !important;
  }

  /* Mostra el toggle i el menú mòbil */
  .et_mobile_nav_menu,
  .mobile_menu_bar {
    display: block !important;
  }

  .col-sm-3 {
    width: 24%;
  }

  .col-sm-4 {
    width: 32%;
  }

  .col-sm-6 {
    width: 49%;
  }

  .col-sm-12 {
    width: 100%;
  }

}

/* ===== 💻 Tablets i escriptoris (≥ 48em) ===== */
@media screen and (min-width: 48em) {
  .noticia-destacada h4 {
    font-size: 21px;
  }

  .formulario-solicitud .form-row {
    flex-direction: column;
    gap: 25px;
  }

  .row-2 .col,
  .row-3 .col {
    width: 100%;
  }

  .form-submit {
    text-align: center;
  }

  body .formulario-solicitud .form-row {
    flex-direction: row !important;
  }

  body .formulario-solicitud .row-2 .col {
    width: calc(50% - 15px) !important;
  }

  body .formulario-solicitud .row-3 .col {
    width: calc(33.333% - 20px) !important;
  }

  .talleres-wrapper .capsula-formativa-item {
    flex: 0 0 calc((100% - 20px) / 2);
    max-width: calc((100% - 20px) / 2);
  }

}

/* ===== 🖥️ Pantalles grans (≥ 80em) ===== */
@media screen and (min-width: 80em) {

  .slick-track,
  .ponentes .slick-track {
    width: 100% !important;
  }

  .ponentes .slick-track {
    padding: 0 15px !important;
  }

  .woocommerce .form-row {
    gap: 0;
  }

  .row-2 .col {
    width: 50%;
  }

  .row-3 .col {
    width: 33.3333%;
  }

  .form-submit {
    text-align: right;
  }

  .talleres-wrapper .capsula-formativa-item {
    flex: 0 0 calc((100% - 60px) / 4);
    max-width: calc((100% - 60px) / 4);
  }

  .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,
  .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap,
  #menu-main-menu-2025 {
    justify-content: flex-end !important;
  }

  .col-md-3,
  .col-lg-3 {
    width: 23.9%;
  }

  .col-md-4,
  .col-lg-4 {
    width: 32%;
  }

  .col-md-6,
  .col-lg-6 {
    width: 49%;
  }

  .col-md-12,
  .col-lg-12 {
    width: 100%;
  }

}

/* ===== 🖥️ Pantalles molt grans (≥ 100em) ===== */
@media screen and (min-width: 100em) {
  .agenda-slider {
    /* margin-top: -299px !important; */
  }

  .slider-home .et_pb_slide_title {
    font-size: 44px !important;
  }

  .noticias-home-grid article {
    flex-basis: 43.5%;
  }

  .col-lg-3 {
    width: 23.9%;
  }

  .col-lg-4 {
    width: 32%;
  }

  .col-lg-6 {
    width: 49%;
  }

  .col-lg-12 {
    width: 100%;
  }
}
