.elementor-kit-6{--e-global-color-primary:#26377D;--e-global-color-secondary:#EC6626;--e-global-color-text:#1D2A4A;--e-global-color-accent:#F8AB08;--e-global-color-f872a76:#DFE3EE;--e-global-color-f05f088:#F6F8FC;--e-global-color-e2e449d:#FFFFFF;--e-global-color-f00a55c:#445AA5;--e-global-color-183d2ca:#00A057;--e-global-color-bf11ae3:#00684A;--e-global-color-c93ec38:#FFF2D0;--e-global-color-857989b:#E8EEFA;--e-global-color-9acf44a:#55607D;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:44px;--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:21px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:17px;--e-global-typography-accent-font-weight:700;--e-global-typography-d6dc14d-font-family:"Montserrat";--e-global-typography-d6dc14d-font-size:52px;--e-global-typography-d6dc14d-font-weight:800;--e-global-typography-1d4e2b7-font-family:"Montserrat";--e-global-typography-1d4e2b7-font-weight:500;--e-global-typography-1d4e2b7-font-style:italic;--e-global-typography-b7696eb-font-family:"Montserrat";--e-global-typography-b7696eb-font-size:14px;--e-global-typography-b7696eb-font-weight:600;--e-global-typography-b7696eb-text-transform:uppercase;--e-global-typography-b7696eb-line-height:1.1em;--e-global-typography-24717da-font-family:"NotoSans_ExtraCondensed-Black";--e-global-typography-24717da-font-size:46px;--e-global-typography-24717da-font-weight:900;--e-global-typography-24717da-line-height:1em;--e-global-typography-329b612-font-family:"Montserrat";--e-global-typography-329b612-font-size:15px;--e-global-typography-329b612-font-weight:400;--e-global-typography-599ec6e-font-family:"NotoSans_ExtraCondensed-SemiBold";--e-global-typography-599ec6e-font-size:20px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#2A414B;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-weight:500;letter-spacing:0.7px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0%;--container-default-padding-right:3%;--container-default-padding-bottom:0%;--container-default-padding-left:3%;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1200px){.elementor-kit-6{--e-global-typography-primary-font-size:44px;--e-global-typography-secondary-font-size:21px;}}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-primary-font-size:44px;--e-global-typography-secondary-font-size:21px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:19px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;--e-global-typography-d6dc14d-font-size:32px;--e-global-typography-b7696eb-font-size:13px;--e-global-typography-24717da-font-size:34px;--e-global-typography-329b612-font-size:14px;}}@media(max-width:660px){.elementor-kit-6{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:19px;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;--e-global-typography-d6dc14d-font-size:32px;--e-global-typography-d6dc14d-line-height:1.08em;--e-global-typography-b7696eb-font-size:13px;--e-global-typography-24717da-font-size:34px;--e-global-typography-329b612-font-size:14px;--e-global-typography-599ec6e-font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================
   FORO SIGÜENZA · estilos comunes de las páginas
   Pegar en: Elementor → Ajustes del sitio → CSS personalizado
   Todo va bajo .ms para no afectar al resto de la web.
   ========================================================== */
.ms {
  --ink: #26377d;   --blue: #445aa5;  --sun: #f8ab08;  --clay: #ec6626;
  --field: #00a057; --pine: #00684a;  --path: #fff2d0; --paper: #ffffff;
  --mist: #f6f8fc;  --fog: #e8eefa;   --text: #1d2a4a; --muted: #55607d; --line: #dfe3ee;
  --display: "Montserrat", "Segoe UI", system-ui, sans-serif;
  --cond: "Noto Sans ExtraCondensed", "Arial Narrow", sans-serif;
  --leaf: 0 32px 0 32px;
  background: var(--paper); color: var(--text);
  font-family: var(--display); font-size: 17px; line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.ms *, .ms *::before, .ms *::after { box-sizing: border-box; }
.ms img, .ms svg { max-width: 100%; display: block; }
.ms img { height: auto; }
.ms a { color: var(--ink); }
.ms a:focus-visible, .ms button:focus-visible, .ms input:focus-visible, .ms select:focus-visible, .ms summary:focus-visible {
  outline: 3px solid var(--sun); outline-offset: 3px;
}
.ms, .ms-noticias, .ms-formulario, .ms-single {
  --gutter: clamp(20px, 4vw, 64px);
  --max: 1520px; /* ancho máximo del contenido; los fondos siempre llegan al borde */
}
/* Las secciones ocupan siempre todo el ancho de la ventana, aunque Elementor las meta en una caja */
html, body { overflow-x: clip; }
.ms, .ms-noticias { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; }
.ms .wrap {
  width: 100%; max-width: var(--max, none); margin-inline: auto;
  padding-left: max(var(--gutter), env(safe-area-inset-left, 0px));
  padding-right: max(var(--gutter), env(safe-area-inset-right, 0px));
}
.ms .narrow { max-width: 1000px; }
.ms h1, .ms h2, .ms h3 { font-family: var(--display); color: var(--ink); line-height: 1.1; text-wrap: balance; margin: 0; letter-spacing: -0.01em; }
.ms h1 { font-size: clamp(32px, 3.6vw, 60px); font-weight: 800; }
.ms h2 { font-size: clamp(28px, 3vw, 48px); font-weight: 800; }
.ms h3 { font-size: 21px; font-weight: 700; line-height: 1.25; }
.ms p, .ms ul, .ms ol, .ms blockquote, .ms figure { margin: 0; }
.ms em.it { font-style: italic; font-weight: 500; color: var(--field); }
.ms .eyebrow {
  font-weight: 600; font-size: 14px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--clay);
  display: flex; align-items: center; gap: 10px;
}
.ms .eyebrow::before { content: "»"; color: var(--sun); font-weight: 800; }
.ms .lead { font-size: clamp(18px, 1.35vw, 22px); max-width: 36em; }
.ms .muted { color: var(--muted); }
.ms .stack { display: grid; gap: 18px; align-content: start; min-width: 0; }
.ms .stack-lg { display: grid; gap: 32px; }
.ms .ruled { border-left: 3px solid var(--clay); padding-left: 20px; }

/* Bandas y secciones */
.ms .band { padding-block: clamp(56px, 6vw, 104px); }
.ms .band-mist { background: var(--mist); }
.ms .band-path { background: var(--path); }
.ms .band-ink { background: var(--ink); color: #fff; }
.ms .band-ink h2, .ms .band-ink h3 { color: #fff; }
.ms .head { display: grid; gap: 14px; max-width: 46em; }

/* Botones */
.ms .actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.ms .btn {
  display: inline-flex; align-items: center; gap: 10px; text-decoration: none;
  font-family: var(--display); font-weight: 700; font-size: 17px; line-height: 1.2;
  padding: 15px 24px; border-radius: 999px; border: 2px solid transparent; cursor: pointer;
  transition: transform .15s ease, background-color .15s ease, color .15s ease;
}
.ms .btn::after { content: "››"; letter-spacing: -0.15em; font-weight: 800; }
.ms .btn.no-arrow::after { content: none; }
.ms .btn:hover { transform: translateY(-2px); }
.ms .btn-sun { background: var(--sun); color: var(--ink); }
.ms .btn-sun:hover { background: #ffb941; color: var(--ink); }
.ms .btn-ink { background: var(--ink); color: #fff; }
.ms .btn-ink:hover { background: var(--blue); color: #fff; }
.ms .btn-line { background: transparent; color: var(--ink); border-color: var(--ink); }
.ms .btn-line:hover { background: var(--ink); color: #fff; }
.ms .band-ink .btn-line { color: #fff; border-color: #fff; }
.ms .band-ink .btn-line:hover { background: #fff; color: var(--ink); }
.ms .link { font-weight: 700; text-decoration: none; border-bottom: 2px solid var(--sun); }
.ms .link:hover { color: var(--clay); }

/* Portada */
.ms .hero { overflow: hidden; }
.ms .hero .wrap { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 4vw, 80px); align-items: center; }
.ms .hero-text { display: grid; gap: 22px; padding-block: 48px; min-width: 0; }
.ms .hero-art { order: -1; min-width: 0; margin-left: calc(-1 * max(var(--gutter), env(safe-area-inset-left, 0px))); }
.ms .hero-art svg { width: 100%; height: auto; }

/* Cabecera de página interior */
.ms .page-head { background: var(--path); padding-block: 56px; position: relative; overflow: hidden; }
.ms .page-head .photo img { aspect-ratio: 16 / 10; }
.ms .page-head .wrap { display: grid; gap: 18px; }
.ms .page-head .lead { max-width: 40em; }

/* Firma RECAMDER */
.ms .by { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 28px; }
.ms .by .rcm { width: 190px; flex: none; }
.ms .by p { font-size: 15px; color: var(--muted); max-width: 30em; }
.ms .by-band { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding-block: 28px; }

/* Cifras */
.ms .facts-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.ms .fact { display: grid; gap: 6px; padding-left: 16px; border-left: 3px solid var(--sun); }
.ms .fact b { font-family: var(--cond); font-weight: 900; font-size: clamp(36px, 4.4vw, 52px); line-height: 1; color: var(--sun); font-variant-numeric: tabular-nums; }
.ms .fact span { font-size: 16px; color: #dfe6f7; }
.ms .src { font-size: 14px; color: #b9c5e6; }

/* Dos columnas */
.ms .split { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: clamp(32px, 5vw, 96px); }
.ms .split > .stack:last-child { max-width: 46em; }
.ms .split-even { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.ms .milestone { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: start; background: var(--path); padding: 20px 22px; border-radius: var(--leaf); }
.ms .milestone .yr { font-family: var(--cond); font-weight: 900; font-size: 40px; color: var(--clay); line-height: 1; }
.ms .goals { list-style: none; padding: 0; display: grid; gap: 12px; }
.ms .goals li { display: grid; grid-template-columns: 26px 1fr; gap: 10px; }
.ms .goals li::before { content: "»"; font-weight: 800; font-size: 24px; line-height: 1.05; color: var(--sun); }

/* Tarjetas de medidas */
.ms .grid3 { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 18px; }
.ms .card { background: var(--mist); border-radius: var(--leaf); padding: 24px; display: grid; grid-template-rows: auto auto 1fr; gap: 10px; min-width: 0; }
.ms .num {
  width: 46px; height: 46px; border-radius: 50% 50% 50% 0; display: grid; place-items: center;
  font-family: var(--cond); font-weight: 900; font-size: 23px; color: #fff; background: var(--blue);
}
.ms .c2 .num, .ms .card:nth-child(4n+2) .num { background: var(--field); }
.ms .card:nth-child(4n+3) .num { background: var(--clay); }
.ms .card:nth-child(4n+4) .num { background: var(--sun); color: var(--ink); }
.ms .card p { font-size: 16px; color: var(--muted); }

/* Acordeón del manifiesto */
.ms .measures { display: grid; gap: 12px; }
.ms .measure { background: var(--mist); border-radius: 0 24px 0 24px; }
.ms .measure summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 46px 1fr 28px; gap: 16px; align-items: center; padding: 18px 20px; }
.ms .measure summary::-webkit-details-marker { display: none; }
.ms .measure summary h3 { font-size: 19px; }
.ms .measure summary .sum { display: block; font-size: 15px; font-weight: 400; color: var(--muted); margin-top: 4px; }
.ms .measure summary::after { content: "+"; font-size: 28px; font-weight: 700; color: var(--clay); line-height: 1; justify-self: end; transition: transform .2s ease; }
.ms .measure[open] summary::after { transform: rotate(45deg); }
.ms .measure:nth-child(4n+2) .num { background: var(--field); }
.ms .measure:nth-child(4n+3) .num { background: var(--clay); }
.ms .measure:nth-child(4n+4) .num { background: var(--sun); color: var(--ink); }
.ms .measure .body { padding: 0 24px 22px 82px; display: grid; gap: 12px; font-size: 16.5px; max-width: 900px; }
.ms .measure[open] { background: #fff; box-shadow: inset 0 0 0 2px var(--fog); }

/* Cronología */
.ms .timeline { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; position: relative; }
.ms .timeline li { display: grid; gap: 8px; padding: 26px 22px 0 0; border-top: 3px solid var(--line); position: relative; }
.ms .timeline li::before { content: ""; position: absolute; top: -10px; left: 0; width: 17px; height: 17px; border-radius: 50%; background: var(--sun); border: 3px solid #fff; box-shadow: 0 0 0 2px var(--sun); }
.ms .timeline li.now::before { background: var(--clay); box-shadow: 0 0 0 2px var(--clay); }
.ms .timeline .yr { font-family: var(--cond); font-weight: 900; font-size: 34px; color: var(--ink); line-height: 1; }
.ms .timeline p { font-size: 15.5px; color: var(--muted); }
.ms .timeline .tl-link { color: inherit; font-weight: inherit; text-decoration: underline; text-underline-offset: 2px; }
.ms .timeline .tl-link:hover { color: var(--ink); }

/* Programa del Foro */
.ms .sessions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ms .session { background: #fff; border-radius: var(--leaf); padding: 24px; display: grid; gap: 10px; align-content: start; }
.ms .session .tag { font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--clay); }
.ms .sessions-list { display: grid; gap: clamp(20px, 2.4vw, 32px); }
.ms .session-row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: clamp(24px, 3.5vw, 56px); align-items: center; background: #fff; border-radius: var(--leaf); padding: clamp(14px, 1.6vw, 22px); }
.ms .session-row:nth-child(even) .photo { order: 2; }
.ms .session-row .stack { gap: 12px; padding: 8px clamp(4px, 1vw, 16px) 8px 0; }
.ms .session-row:nth-child(even) .stack { padding: 8px 0 8px clamp(4px, 1vw, 16px); }
.ms .session-row .tag { font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--clay); }
.ms .session-row h3 { font-size: clamp(20px, 1.6vw, 25px); }
.ms .speakers { list-style: none; padding: 0; margin-top: 4px; display: grid; gap: 9px; }
.ms .speakers li { display: grid; gap: 1px; padding-left: 20px; position: relative; }
.ms .speakers li::before { content: "»"; position: absolute; left: 0; top: -1px; color: var(--sun); font-weight: 800; }
.ms .speakers b { color: var(--ink); font-size: 16px; line-height: 1.35; }
.ms .speakers span { color: var(--muted); font-size: 14.5px; line-height: 1.4; }
@media (max-width: 860px) {
  .ms .session-row { grid-template-columns: 1fr; }
  .ms .session-row:nth-child(even) .photo { order: 0; }
  .ms .session-row .stack, .ms .session-row:nth-child(even) .stack { padding: 4px 6px 10px; }
}

/* Cita */
.ms .quote { border-left: 3px solid var(--sun); padding: 6px 0 6px 24px; display: grid; gap: 10px; }
.ms .quote p { font-size: clamp(20px, 2.4vw, 26px); font-weight: 600; font-style: italic; color: var(--ink); line-height: 1.35; }
.ms .quote cite { font-style: normal; font-size: 15px; color: var(--muted); }

/* Fotos */
.ms .photo { border-radius: var(--leaf); overflow: hidden; background: var(--fog); }
.ms .photo img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.ms .gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-flow: dense; gap: 14px; }
.ms .gallery .photo { border-radius: 0 20px 0 20px; }
.ms .gallery .wide { grid-column: span 2; grid-row: span 2; }
.ms .gallery .wide img { aspect-ratio: auto; height: 100%; }
.ms figcaption { font-size: 14px; color: var(--muted); padding-top: 8px; }

/* Bloque llamada a la adhesión */
.ms .cta { display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; }
.ms .cta p { color: #dfe6f7; max-width: 38em; }

/* Formularios */
.ms .forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; align-items: start; }
.ms .form-card { border-radius: var(--leaf); padding: 30px; display: grid; gap: 20px; min-width: 0; scroll-margin-top: 110px; }
.ms #adhesion-personas { background: var(--path); }
.ms #adhesion-entidades { background: var(--fog); }
.ms .form-card header { display: grid; gap: 6px; }
.ms .form-card header p { color: var(--muted); font-size: 16px; }
.ms form { display: grid; gap: 14px; }
.ms .row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ms .field { display: grid; gap: 6px; min-width: 0; }
.ms label { font-weight: 700; font-size: 15px; color: var(--ink); }
.ms label .opt, .ms .hint { font-weight: 400; color: var(--muted); font-size: 13.5px; }
.ms input[type="text"], .ms input[type="email"], .ms select {
  width: 100%; font: inherit; font-size: 16px; color: var(--text); background: #fff;
  border: 1.5px solid #c9d1e4; border-radius: 10px; padding: 12px 14px; min-height: 50px;
}
.ms input:focus, .ms select:focus { border-color: var(--blue); outline: none; }
.ms .check { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start; }
.ms .check input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--ink); }
.ms .check label { font-weight: 400; color: var(--text); font-size: 15px; line-height: 1.45; }
.ms .legal { font-size: 13px; line-height: 1.5; color: var(--muted); background: rgba(255,255,255,.65); border-radius: 10px; padding: 12px 14px; }
.ms .legal b { color: var(--text); }
.ms form .btn { justify-self: start; }
.ms .soon { justify-self: start; font-weight: 700; font-size: 15px; color: var(--ink); background: var(--sun); border-radius: 999px; padding: 6px 14px; }
.ms .steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.ms .steps div { display: grid; gap: 6px; padding-top: 18px; border-top: 3px solid var(--sun); }
.ms .steps b { color: var(--ink); font-size: 18px; }
.ms .steps p { font-size: 16px; color: var(--muted); }
.ms .sent { display: none; font-weight: 700; color: var(--pine); background: #fff; border-radius: 10px; padding: 14px 16px; }
.ms .sent.on { display: block; }

/* Aparición suave al hacer scroll (la página se ve completa aunque no haya JS) */
@media (prefers-reduced-motion: no-preference) {
  .ms.js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
  .ms.js .reveal.in { opacity: 1; transform: none; }
}

/* Responsive */
@media (max-width: 960px) {
  .ms .hero .wrap, .ms .split, .ms .split-even { grid-template-columns: 1fr; gap: 28px; }
  .ms .hero .wrap { gap: 0; }
  .ms .hero-text { padding-block: 36px 24px; }
  .ms .hero-art { order: 0; max-width: 620px; }
  .ms .sessions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ms .facts-grid, .ms .timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 34px; }
  .ms .forms { grid-template-columns: 1fr; }
  .ms .gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ms .cta { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .ms { font-size: 16px; }
  .ms .lead { font-size: 18px; }
  .ms .band { padding-block: 52px; }
  .ms .page-head { padding-block: 40px; }
  .ms .sessions, .ms .row, .ms .steps, .ms .timeline { grid-template-columns: 1fr; }
  .ms .form-card { padding: 22px 18px; }
  .ms .btn { width: 100%; justify-content: center; }
  .ms .measure summary { grid-template-columns: 40px 1fr 22px; gap: 12px; padding: 16px; }
  .ms .measure .num { width: 40px; height: 40px; font-size: 20px; }
  .ms .measure .body { padding: 0 18px 20px; }
  .ms .gallery .wide { grid-column: span 2; grid-row: auto; }
}
@media (prefers-reduced-motion: reduce) { .ms .btn { transition: none; } .ms .btn:hover { transform: none; } }

/* ==========================================================
   CABECERA (Theme Builder → Cabecera → widget HTML)
   ========================================================== */
.ms.msh { background: #fff; border-bottom: 1px solid var(--line); position: relative; z-index: 50; }
.ms.msh .wrap { display: flex; align-items: center; gap: 24px; padding-block: 14px; transition: padding .25s ease; }
.ms.msh.scrolled .wrap { padding-block: 8px; }
.ms.msh .logo { width: 250px; flex: none; transition: width .25s ease; }
.ms.msh .logo svg { width: 100%; height: auto; }
.ms.msh.scrolled .logo { width: 196px; }
.ms.msh nav { margin-left: auto; }
.ms.msh nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: clamp(18px, 2vw, 34px); }
.ms.msh nav a { font-weight: 700; font-size: 15px; color: var(--ink); text-decoration: none; padding-block: 6px; border-bottom: 2px solid transparent; }
.ms.msh nav a:hover { color: var(--clay); }
.ms.msh nav a[aria-current="page"] { border-bottom-color: var(--sun); }
.ms.msh .btn { padding: 11px 20px; font-size: 15px; }
.ms.msh .burger { display: none; width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--path); color: var(--ink); cursor: pointer; place-items: center; flex: none; }
.ms.msh .burger svg { width: 22px; height: 22px; }
.msh-panel { position: fixed; inset: 0; z-index: 99999; background: var(--ink, #26377d); color: #fff; display: flex; flex-direction: column; padding: max(18px, env(safe-area-inset-top, 0px)) max(22px, env(safe-area-inset-right, 0px)) max(28px, env(safe-area-inset-bottom, 0px)) max(22px, env(safe-area-inset-left, 0px)); font-family: "Montserrat", system-ui, sans-serif; }
.msh-panel[hidden] { display: none !important; }
.msh-panel .top { display: flex; justify-content: space-between; align-items: center; }
.msh-panel .top span { font-weight: 600; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: #f8ab08; }
.msh-panel .close { width: 46px; height: 46px; border-radius: 50%; border: 0; background: rgba(255,255,255,.12); color: #fff; font-size: 28px; line-height: 1; cursor: pointer; }
.msh-panel ul { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 4px; }
.msh-panel ul a { display: block; padding: 12px 0; font-size: 28px; font-weight: 800; color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.15); }
.msh-panel ul a::before { content: "» "; color: #f8ab08; }
.msh-panel .cta { margin-top: auto; display: block; text-align: center; background: #f8ab08; color: #26377d; font-weight: 800; font-size: 18px; padding: 18px; border-radius: 999px; text-decoration: none; }
body.msh-open { overflow: hidden; }
@media (max-width: 1024px) {
  .ms.msh nav { display: none; }
  .ms.msh .burger { display: grid; }
  .ms.msh .btn { margin-left: auto; }
}
@media (max-width: 480px) {
  .ms.msh .wrap { gap: 10px; }
  .ms.msh .logo, .ms.msh.scrolled .logo { width: 150px; }
  .ms.msh .btn { width: auto; padding: 10px 14px; font-size: 14px; }
  .ms.msh .btn::after { content: none; }
}

/* ==========================================================
   PIE (Theme Builder → Pie de página → widget HTML)
   ========================================================== */
.ms.msf { background: var(--path); }
.ms.msf .main { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: clamp(28px, 4vw, 72px); padding-block: 64px 48px; }
.ms.msf .id { display: grid; gap: 18px; align-content: start; }
.ms.msf .id .logo { width: 240px; }
.ms.msf .id p { font-size: 15px; color: var(--muted); max-width: 30em; }
.ms.msf .id .rcm { width: 170px; }
.ms.msf h3 { font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--clay); margin-bottom: 14px; }
.ms.msf ul { list-style: none; padding: 0; display: grid; gap: 10px; font-size: 15px; }
.ms.msf ul a { color: var(--ink); text-decoration: none; font-weight: 600; }
.ms.msf ul a:hover { color: var(--clay); }
.ms.msf .links a::before { content: "» "; color: var(--sun); font-weight: 800; }
.ms.msf .logos { background: #fff; border-top: 1px solid var(--line); }
/* Logos del pie en tres filas: 1) los 5 GDR de Guadalajara, 2) UE, Gobierno, JCCM, LEADER y Diputación de Guadalajara, 3) Diputaciones de Albacete y Ciudad Real, más pequeños */
.ms.msf .logos .wrap { display: grid; gap: clamp(22px, 2.6vw, 36px); padding-block: clamp(28px, 3.4vw, 48px); }
.ms.msf .logos ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 22px clamp(28px, 3.6vw, 60px); font-size: 0; }
.ms.msf .logos li { display: flex; align-items: center; color: #1d1d1b; }
.ms.msf .logos svg, .ms.msf .logos img { height: 44px; width: auto; max-width: none; }
/* Fila 1: GDR, grandes */
.ms.msf .logos .gdr img { height: 72px; }
.ms.msf .logos .gdr.tall img { height: 100px; }
/* Fila 2: instituciones, grandes */
.ms.msf .logos .ue svg { height: 54px; }
.ms.msf .logos .gob svg { height: 84px; }
.ms.msf .logos .jccm svg { height: 76px; }
.ms.msf .logos .leader svg { height: 46px; }
.ms.msf .logos .gu img { height: 64px; }
/* Fila 3: colaboradores, más pequeños */
.ms.msf .logos .dab svg { height: 38px; }
.ms.msf .logos .dcr svg { height: 46px; }
@media (max-width: 560px) {
  .ms.msf .logos ul { gap: 18px 26px; }
  .ms.msf .logos .gdr img { height: 46px; }
  .ms.msf .logos .gdr.tall img { height: 64px; }
  .ms.msf .logos .ue svg { height: 36px; }
  .ms.msf .logos .gob svg { height: 56px; }
  .ms.msf .logos .jccm svg { height: 50px; }
  .ms.msf .logos .leader svg { height: 30px; }
  .ms.msf .logos .gu img { height: 42px; }
  .ms.msf .logos .dab svg { height: 28px; }
  .ms.msf .logos .dcr svg { height: 34px; }
}
.ms.msf .bar { background: var(--ink); color: #cdd6ee; font-size: 14px; }
.ms.msf .bar .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px; padding-block: 16px; }
.ms.msf .bar nav { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.ms.msf .bar a { color: #fff; text-decoration: none; }
.ms.msf .bar a:hover { color: var(--sun); }
@media (max-width: 960px) { .ms.msf .main { grid-template-columns: 1fr 1fr; } .ms.msf .id { grid-column: 1 / -1; } }
@media (max-width: 560px) { .ms.msf .main { grid-template-columns: 1fr; padding-block: 48px 36px; } }

/* ==========================================================
   NOTICIAS · widget "Entradas" de Elementor con la clase ms-noticias
   ========================================================== */
.ms-noticias { padding: 8px max(var(--gutter), calc((100vw - 1520px) / 2)) clamp(56px, 6vw, 96px); font-family: "Montserrat", system-ui, sans-serif; }
.ms-noticias .elementor-posts-container { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)) !important; gap: 32px 24px !important; }
.ms-noticias .elementor-post { width: auto !important; }
.ms-noticias .elementor-post { background: #f6f8fc; border-radius: 0 32px 0 32px; overflow: hidden; display: flex; flex-direction: column; transition: transform .2s ease, box-shadow .2s ease; }
.ms-noticias .elementor-post:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(38,55,125,.10); }
.ms-noticias .elementor-post__thumbnail__link { margin: 0 !important; display: block; }
.ms-noticias .elementor-post__thumbnail { padding-bottom: 62% !important; }
.ms-noticias .elementor-post__thumbnail img { object-fit: cover; width: 100%; height: 100%; }
.ms-noticias .elementor-post__text { padding: 20px 24px 26px; display: flex !important; flex-direction: column; gap: 10px; flex: 1; }
.ms-noticias .elementor-post__meta-data span, .ms-noticias .elementor-post__meta-data { order: -1; margin: 0 !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase; color: #ec6626 !important; }
.ms-noticias .elementor-post__title { margin: 0 !important; font-size: 20px !important; font-weight: 800 !important; line-height: 1.25 !important; }
.ms-noticias .elementor-post__title, .ms-noticias .elementor-post__title a { font-family: "Montserrat", system-ui, sans-serif !important; font-size: 19px !important; font-weight: 800 !important; line-height: 1.28 !important; letter-spacing: 0 !important; text-transform: none !important; }
.ms-noticias .elementor-post__title a { color: #26377d !important; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ms-noticias .elementor-post__title a:hover { color: #ec6626 !important; }
.ms-noticias .elementor-post__excerpt p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ms-noticias .elementor-post__excerpt { margin: 0 !important; }
.ms-noticias .elementor-post__excerpt p { font-size: 15.5px !important; line-height: 1.55 !important; color: #55607d !important; margin: 0; }
.ms-noticias .elementor-post__read-more { margin-top: auto; align-self: flex-start; font-weight: 700 !important; font-size: 15px !important; color: #26377d !important; text-transform: none !important; border-bottom: 2px solid #f8ab08; }
.ms-noticias .elementor-post__read-more:hover { color: #ec6626 !important; }
.ms-noticias .elementor-post-avatar, .ms-noticias .elementor-post-comments { display: none !important; }
/* Portada: carrusel con tarjeta final "Ver todas las noticias" (clases ms-noticias ms-noticias-slider) */
.ms-noticias.ms-noticias-slider { padding-left: 0 !important; padding-right: 0 !important; }
.ms-noticias-slider .elementor-posts-container {
  --pad: max(var(--gutter), calc((100vw - 1520px) / 2));
  grid-template-columns: none !important; grid-auto-flow: column; grid-auto-columns: calc((100% - 72px) / 3.3);
  gap: 24px !important; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
  padding: 8px var(--pad) 22px !important; scroll-padding-inline: var(--pad);
  scrollbar-width: thin; scrollbar-color: #c9d1e4 transparent;
}
.ms-noticias-slider .elementor-post, .ms-noticias-slider .ms-more { scroll-snap-align: start; }
.ms-noticias .ms-more { display: flex; flex-direction: column; justify-content: flex-end; gap: 10px; min-height: 100%; padding: 28px; border-radius: 0 32px 0 32px; background: #26377d; color: #fff; text-decoration: none; font-family: "Montserrat", system-ui, sans-serif; transition: background .2s ease; }
.ms-noticias .ms-more .k { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #f8ab08; }
.ms-noticias .ms-more b { font-size: clamp(24px, 2vw, 32px); font-weight: 800; line-height: 1.1; color: #fff; }
.ms-noticias .ms-more .arr { font-size: 56px; font-weight: 800; line-height: .8; color: #f8ab08; letter-spacing: -0.12em; transition: transform .2s ease; }
.ms-noticias .ms-more:hover { background: #445aa5; }
.ms-noticias .ms-more:hover .arr { transform: translateX(8px); }
@media (max-width: 1024px) { .ms-noticias-slider .elementor-posts-container { grid-auto-columns: calc((100% - 24px) / 2.25); } }
@media (max-width: 640px) { .ms-noticias-slider .elementor-posts-container { grid-auto-columns: 84%; gap: 16px !important; } }
.ms-noticias .elementor-pagination { margin-top: 40px; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; font-weight: 700; }
.ms-noticias .elementor-pagination .page-numbers { min-width: 44px; height: 44px; padding: 0 14px; border-radius: 999px; display: inline-grid; place-items: center; background: #f6f8fc; color: #26377d; text-decoration: none; margin: 0 !important; }
.ms-noticias .elementor-pagination .page-numbers.current { background: #26377d; color: #fff; }
.ms-noticias .elementor-pagination a.page-numbers:hover { background: #f8ab08; }

/* ==========================================================
   FORMULARIO DE CONTACTO · widget "Formulario" con la clase ms-formulario
   ========================================================== */
.ms-formulario { font-family: "Montserrat", system-ui, sans-serif; background: #fff2d0; border-radius: 0 32px 0 32px; padding: clamp(22px, 3vw, 44px) !important; max-width: 860px; margin: 0 auto clamp(56px, 6vw, 96px) !important; box-sizing: border-box; }
.ms-formulario .elementor-form-fields-wrapper { margin: 0 !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.ms-formulario .elementor-field-group { width: 100% !important; max-width: 100% !important; padding: 0 !important; grid-column: 1 / -1; }
.ms-formulario .elementor-field-type-text, .ms-formulario .elementor-field-type-email, .ms-formulario .elementor-field-type-tel { grid-column: auto; }
@media (max-width: 620px) { .ms-formulario .elementor-form-fields-wrapper { grid-template-columns: 1fr; } }
.ms-formulario .elementor-field-group { margin-bottom: 14px; }
.ms-formulario .elementor-field-label { font-weight: 700 !important; font-size: 15px !important; color: #26377d !important; margin-bottom: 6px; }
.ms-formulario .elementor-field-textual { font-family: inherit !important; font-size: 16px !important; color: #1d2a4a !important; background: #fff !important; border: 1.5px solid #c9d1e4 !important; border-radius: 10px !important; padding: 12px 14px !important; min-height: 50px; }
.ms-formulario .elementor-field-textual:focus { border-color: #445aa5 !important; box-shadow: 0 0 0 3px rgba(248,171,8,.35); outline: none; }
.ms-formulario .elementor-field-type-acceptance label, .ms-formulario .elementor-field-option label { font-weight: 400 !important; font-size: 14.5px; color: #1d2a4a; }
.ms-formulario input[type="checkbox"] { accent-color: #26377d; width: 18px; height: 18px; }
.ms-formulario .elementor-button { background: #f8ab08 !important; color: #26377d !important; font-family: inherit !important; font-weight: 800 !important; font-size: 17px !important; border-radius: 999px !important; padding: 15px 28px !important; }
.ms-formulario .elementor-button:hover { background: #ffb941 !important; }
.ms-formulario .elementor-message { font-weight: 700; color: #00684a; }

/* ==========================================================
   ENTRADA INDIVIDUAL · contenedor de la plantilla con la clase ms-single
   ========================================================== */
.ms-single { font-family: "Montserrat", system-ui, sans-serif; color: #1d2a4a; padding: clamp(40px, 5vw, 80px) max(var(--gutter), env(safe-area-inset-left, 0px)) clamp(56px, 6vw, 96px) !important; }
/* El contenedor ocupa todo el ancho; cada bloque se limita y se centra */
.ms-single > .elementor-element { width: 100% !important; max-width: 860px !important; margin-left: auto !important; margin-right: auto !important; }
.ms-single > .elementor-widget-theme-post-featured-image { max-width: 1120px !important; }
.ms-single .elementor-widget-theme-post-featured-image img { aspect-ratio: 16 / 9; height: auto !important; object-fit: cover; object-position: center 30%; }
.ms-single .elementor-widget-theme-post-content img { aspect-ratio: 3 / 2; object-fit: cover; max-width: 100%; }
.ms-single .elementor-widget-theme-post-content p:has(> img + img), .ms-single .elementor-widget-theme-post-content p:has(> a + a > img) { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 12px; }
.ms-single .elementor-widget-theme-post-content p:has(> img + img) img, .ms-single .elementor-widget-theme-post-content p:has(> a + a > img) img { width: 100%; }
.ms-single .elementor-widget-theme-post-title .elementor-heading-title { font-size: clamp(30px, 3.4vw, 48px) !important; font-weight: 800 !important; line-height: 1.12 !important; color: #26377d !important; border-left: 3px solid #ec6626; padding-left: 20px; }
.ms-single .elementor-widget-post-info .elementor-icon-list-text, .ms-single .elementor-widget-post-info a { font-size: 13px !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase; color: #ec6626 !important; }
.ms-single .elementor-widget-theme-post-featured-image img { width: 100%; border-radius: 0 32px 0 32px; }
.ms-single .elementor-widget-theme-post-content { font-size: 17.5px; line-height: 1.7; }
.ms-single .elementor-widget-theme-post-content p { margin: 0 0 1.1em; }
.ms-single .elementor-widget-theme-post-content h2, .ms-single .elementor-widget-theme-post-content h3 { color: #26377d; font-weight: 800; line-height: 1.2; margin: 1.6em 0 .6em; }
.ms-single .elementor-widget-theme-post-content h2 { font-size: 28px; }
.ms-single .elementor-widget-theme-post-content h3 { font-size: 22px; }
.ms-single .elementor-widget-theme-post-content a { color: #26377d; font-weight: 600; text-decoration-color: #f8ab08; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.ms-single .elementor-widget-theme-post-content img { border-radius: 0 24px 0 24px; height: auto; }
.ms-single .elementor-widget-theme-post-content blockquote { border-left: 3px solid #f8ab08; margin: 1.4em 0; padding: 4px 0 4px 22px; font-style: italic; font-weight: 600; color: #26377d; font-size: 20px; }
.ms-single .elementor-widget-theme-post-content figcaption { font-size: 14px; color: #55607d; }

/* ==========================================================
   FORMULARIOS DE ACUMBAMAIL (página Adhiérete)
   ========================================================== */
.ms .acm-result { width: 100%; height: 80px; border: 0; display: block; background: #fff; border-radius: 10px; }
.ms .hp { position: absolute !important; left: -5000px !important; width: 1px; height: 1px; overflow: hidden; }
.ms .acm-result[hidden] { display: none; }

/* Indicador de scroll heredado de la web de RECAMDER (barra fina a la izquierda). Borra esta línea si lo queréis mantener. */
.scroll-indicator { display: none !important; }

/* Galería del Foro: fotos ampliables */
.ms .gallery a { display: block; height: 100%; cursor: zoom-in; }
.ms .gallery img { transition: transform .3s ease; }
.ms .gallery a:hover img { transform: scale(1.03); }
.lb { position: fixed; inset: 0; z-index: 100000; background: rgba(20, 28, 60, .94); display: grid; place-items: center; padding: 56px 12px 48px; font-family: "Montserrat", system-ui, sans-serif; }
.lb[hidden] { display: none !important; }
.lb img { max-width: min(100%, 1600px); max-height: calc(100vh - 120px); width: auto; height: auto; object-fit: contain; border-radius: 6px; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
.lb button { position: absolute; border: 0; border-radius: 50%; width: 48px; height: 48px; background: rgba(255,255,255,.14); color: #fff; font-size: 30px; line-height: 1; cursor: pointer; display: grid; place-items: center; }
.lb button:hover, .lb button:focus-visible { background: #f8ab08; color: #26377d; outline: none; }
.lb .lb-close { top: 12px; right: 12px; }
.lb .lb-prev { left: 12px; top: 50%; transform: translateY(-50%); }
.lb .lb-next { right: 12px; top: 50%; transform: translateY(-50%); }
.lb .lb-count { position: absolute; bottom: 14px; left: 0; right: 0; text-align: center; color: #cdd6ee; font-size: 14px; margin: 0; }
body.lb-open { overflow: hidden; }
@media (max-width: 640px) { .lb .lb-prev, .lb .lb-next { top: auto; bottom: 6px; transform: none; } }

/* ===== Banner de cookies (Adapta RGPD) ===== */
#cookies-eu-banner{
  position:fixed; left:24px; right:auto; bottom:24px; width:min(440px, calc(100vw - 32px));
  min-height:0; padding:24px 24px 20px; box-sizing:border-box;
  background:#fff; color:#1d2a4a; text-align:left;
  font-family:"Montserrat",system-ui,sans-serif; font-size:14px; line-height:1.55;
  border:1px solid #dfe3ee; border-top:5px solid #f8ab08; border-radius:14px;
  box-shadow:0 18px 48px -12px rgba(38,55,125,.35);
  animation:ckIn .45s cubic-bezier(.2,.8,.2,1) both;
}
#cookies-eu-label::before{
  content:"Cookies"; display:block; margin-bottom:6px;
  font-family:"Noto Sans ExtraCondensed","Montserrat",sans-serif; font-weight:900;
  font-size:26px; line-height:1; letter-spacing:.01em; text-transform:uppercase; color:#26377d;
}
#cookies-eu-label{ margin:0; color:#55607d; }
#cookies-eu-label a, #cookies-eu-more{ color:#26377d; font-weight:600; text-decoration:underline; text-underline-offset:2px; padding:0; }
#cookies-eu-buttons{ display:flex; gap:10px; margin-top:18px; }
#cookies-eu-banner #cookies-eu-accept, #cookies-eu-banner #cookies-eu-reject,
#cookies-eu-banner .cookies-eu-accept, #cookies-eu-banner .cookies-eu-reject{
  flex:1 1 0; margin:0; padding:12px 16px; border-radius:999px;
  font-family:inherit; font-size:14px; font-weight:700; letter-spacing:0; text-transform:none; line-height:1.2;
  border:2px solid #26377d; transition:background .2s,color .2s,border-color .2s;
}
#cookies-eu-banner #cookies-eu-accept{ background:#26377d; color:#fff; }
#cookies-eu-banner #cookies-eu-reject{ background:#fff; color:#26377d; }
#cookies-eu-banner #cookies-eu-accept:hover, #cookies-eu-banner #cookies-eu-accept:focus-visible{ background:#445aa5; border-color:#445aa5; color:#fff; }
#cookies-eu-banner #cookies-eu-reject:hover, #cookies-eu-banner #cookies-eu-reject:focus-visible{ background:#e8eefa; color:#26377d; border-color:#26377d; }
#cookies-eu-banner button:focus-visible{ outline:3px solid #f8ab08; outline-offset:2px; }

/* Pestaña "Privacidad" para cambiar la elección */
#cookies-eu-banner-closed{
  left:16px; right:auto; bottom:16px; min-height:0; padding:8px 14px;
  background:#fff; color:#26377d; border:1px solid #dfe3ee; border-radius:999px;
  box-shadow:0 6px 18px -6px rgba(38,55,125,.35);
  font-family:"Montserrat",system-ui,sans-serif; font-size:12px; font-weight:600;
}
#cookies-eu-banner-closed span{ border:0; display:inline; }
#cookies-eu-banner-closed span::before{ content:"🍪 "; }
#cookies-eu-banner-closed:hover{ background:#e8eefa; }
#cookies-eu-banner-closed::after{ content:none !important; }

@media (max-width:600px){
  #cookies-eu-banner{ left:16px; bottom:16px; padding:20px 18px 16px; }
  #cookies-eu-label::before{ font-size:22px; }
  #cookies-eu-banner-closed span{ display:inline; }
}
@keyframes ckIn{ from{ opacity:0; transform:translateY(16px); } to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce){ #cookies-eu-banner{ animation:none; } }

/* ==========================================================
   TEXTOS LEGALES (Aviso legal, Privacidad, Cookies, Personalizar cookies)
   ========================================================== */
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-widget-theme-page-title .elementor-heading-title {
  font-family: "Montserrat", system-ui, sans-serif !important; font-weight: 800 !important; font-size: clamp(32px, 3.6vw, 52px) !important;
  line-height: 1.1 !important; letter-spacing: -0.01em; text-transform: none !important; color: #26377d !important; text-align: left !important;
  border-left: 3px solid #ec6626; padding-left: 20px;
}
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .soda-breadcrumbs { font-family: "Montserrat", system-ui, sans-serif; font-size: 13px; font-weight: 600; color: #55607d; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .soda-breadcrumbs a { color: #ec6626; text-decoration: none; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode {
  font-family: "Montserrat", system-ui, sans-serif; font-size: 16.5px; line-height: 1.7; color: #1d2a4a; max-width: 860px;
}
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(p, li, td, th) { font-family: inherit !important; font-size: inherit; line-height: inherit; color: inherit; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode p { margin: 0 0 1em; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(h2, h3, h4) {
  font-family: "Montserrat", system-ui, sans-serif !important; color: #26377d; font-weight: 800; line-height: 1.2; letter-spacing: -0.01em; margin: 1.9em 0 .6em;
}
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode h2 { font-size: clamp(22px, 2vw, 27px); }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(h3, h4) { font-size: 19px; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(ul, ol) { margin: 0 0 1.2em; padding-left: 1.3em; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode li { margin-bottom: .45em; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode li::marker { color: #f8ab08; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(b, strong) { color: #26377d; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode a { color: #26377d; font-weight: 600; text-decoration: underline; text-decoration-color: #f8ab08; text-decoration-thickness: 2px; text-underline-offset: 3px; word-break: break-word; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode table { width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: 14.5px; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode :is(td, th) { border: 1px solid #dfe3ee; padding: 8px 10px; text-align: left; vertical-align: top; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-shortcode th { background: #f6f8fc; color: #26377d; }
body:is(.page-id-22883, .page-id-22884, .page-id-22885, .page-id-22886) .elementor-widget-theme-page-title { width: 100% !important; max-width: 100% !important; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'NotoSans_ExtraCondensed-Black';
	font-style: normal;
	font-weight: 900;
	font-display: auto;
	src: url('https://forosiguenza.es/wp-content/uploads/2026/10/notosans-extracondensed-black.ttf') format('truetype');
}
@font-face {
	font-family: 'NotoSans_ExtraCondensed-Black';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'NotoSans_ExtraCondensed-SemiBold';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://forosiguenza.es/wp-content/uploads/2026/10/notosans-extracondensed-semibold.ttf') format('truetype');
}
/* End Custom Fonts CSS */