.elementor-kit-6{--e-global-color-primary:#3D6361;--e-global-color-secondary:#A9B87B;--e-global-color-text:#3D6361;--e-global-color-accent:#964B22;--e-global-color-sn_lightbrown:#C9A78C;--e-global-color-sn_cream:#FFF8F1;--e-global-color-sn_white:#FFFFFF;--e-global-color-sn_blue:#7897B2;--e-global-color-sn_gray:#C1C8C6;--e-global-typography-primary-font-family:"Santello";--e-global-typography-primary-font-weight:normal;--e-global-typography-secondary-font-family:"Hanken Grotesk";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Hanken Grotesk";--e-global-typography-accent-font-weight:900;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.7px;--e-global-typography-f65bda8-font-family:"Santello";--e-global-typography-f65bda8-font-size:clamp(44px, 23.2px + 5.3333vw, 100px);--e-global-typography-f65bda8-font-weight:normal;--e-global-typography-f65bda8-line-height:0.9em;--e-global-typography-f65bda8-letter-spacing:-6px;--e-global-typography-a7c94e5-font-family:"Santello";--e-global-typography-a7c94e5-font-size:clamp(34px, 28.057px + 1.5238vw, 50px);--e-global-typography-a7c94e5-font-weight:normal;--e-global-typography-a7c94e5-line-height:1.3em;--e-global-typography-a7c94e5-letter-spacing:-2px;--e-global-typography-5eff3ee-font-family:"Santello";--e-global-typography-5eff3ee-font-size:clamp(30px, 23.314px + 1.7143vw, 48px);--e-global-typography-5eff3ee-font-weight:normal;--e-global-typography-5eff3ee-line-height:1.2em;--e-global-typography-0ba2c32-font-family:"Santello";--e-global-typography-0ba2c32-font-size:clamp(24px, 21.029px + 0.7619vw, 32px);--e-global-typography-0ba2c32-font-weight:normal;--e-global-typography-0ba2c32-line-height:1.3em;--e-global-typography-20e1315-font-family:"Hanken Grotesk";--e-global-typography-20e1315-font-size:clamp(26px, 22.286px + 0.9524vw, 36px);--e-global-typography-20e1315-font-weight:400;--e-global-typography-20e1315-line-height:1.11em;--e-global-typography-b05f7c1-font-family:"Hanken Grotesk";--e-global-typography-b05f7c1-font-size:clamp(20px, 16.286px + 0.9524vw, 30px);--e-global-typography-b05f7c1-font-weight:700;--e-global-typography-b05f7c1-text-transform:uppercase;--e-global-typography-b05f7c1-line-height:1.2em;--e-global-typography-3fdfaf9-font-family:"Hanken Grotesk";--e-global-typography-3fdfaf9-font-size:clamp(12px, 11.257px + 0.1905vw, 14px);--e-global-typography-3fdfaf9-font-weight:700;--e-global-typography-3fdfaf9-text-transform:uppercase;--e-global-typography-3fdfaf9-line-height:1.33em;--e-global-typography-3fdfaf9-letter-spacing:1.2px;--e-global-typography-a1c3e50-font-family:"Hanken Grotesk";--e-global-typography-a1c3e50-font-size:clamp(19px, 16.772px + 0.5714vw, 25px);--e-global-typography-a1c3e50-font-weight:400;--e-global-typography-a1c3e50-line-height:1.6em;--e-global-typography-f520670-font-family:"Hanken Grotesk";--e-global-typography-f520670-font-size:18px;--e-global-typography-f520670-font-weight:400;--e-global-typography-f520670-line-height:1.6em;--e-global-typography-fc4f011-font-family:"Hanken Grotesk";--e-global-typography-fc4f011-font-size:14px;--e-global-typography-fc4f011-font-weight:400;--e-global-typography-fc4f011-line-height:1.43em;--e-global-typography-c3e5a72-font-family:"Hanken Grotesk";--e-global-typography-c3e5a72-font-size:clamp(24px, 19.543px + 1.1429vw, 36px);--e-global-typography-c3e5a72-font-weight:300;--e-global-typography-c3e5a72-font-style:italic;--e-global-typography-c3e5a72-line-height:1.11em;--e-global-typography-b2d4f61-font-family:"Hanken Grotesk";--e-global-typography-b2d4f61-font-size:14px;--e-global-typography-b2d4f61-font-weight:900;--e-global-typography-b2d4f61-text-transform:uppercase;--e-global-typography-b2d4f61-line-height:1.07em;--e-global-typography-b2d4f61-letter-spacing:0.7px;--e-global-typography-c17d3b8-font-family:"Hanken Grotesk";--e-global-typography-c17d3b8-font-size:12px;--e-global-typography-c17d3b8-font-weight:600;--e-global-typography-c17d3b8-text-transform:uppercase;--e-global-typography-c17d3b8-line-height:1.4em;--e-global-typography-c17d3b8-letter-spacing:1.2px;--e-global-typography-d4f6b83-font-family:"Hanken Grotesk";--e-global-typography-d4f6b83-font-size:16px;--e-global-typography-d4f6b83-font-weight:400;--e-global-typography-d4f6b83-text-transform:uppercase;--e-global-typography-d4f6b83-line-height:1.6em;--e-global-typography-d4f6b83-letter-spacing:0.4px;--e-global-typography-e2f4a61-font-family:"Hanken Grotesk";--e-global-typography-e2f4a61-font-size:12px;--e-global-typography-e2f4a61-font-weight:700;--e-global-typography-e2f4a61-text-transform:uppercase;--e-global-typography-e2f4a61-line-height:1.2em;--e-global-typography-e2f4a61-letter-spacing:1.2px;--e-global-typography-e5a7c94-font-family:"Inter";--e-global-typography-e5a7c94-font-size:14px;--e-global-typography-e5a7c94-font-weight:300;--e-global-typography-e5a7c94-line-height:1.43em;--e-global-typography-f6b8d05-font-family:"Inter";--e-global-typography-f6b8d05-font-size:12px;--e-global-typography-f6b8d05-font-weight:600;--e-global-typography-f6b8d05-text-transform:uppercase;--e-global-typography-f6b8d05-line-height:1.33em;--e-global-typography-f6b8d05-letter-spacing:1.2px;--e-global-typography-d1f8b62-font-family:"Santello";--e-global-typography-d1f8b62-font-size:clamp(48px, 21.257px + 6.8571vw, 120px);--e-global-typography-d1f8b62-font-weight:normal;--e-global-typography-d1f8b62-line-height:1em;--e-global-typography-c92e5d1-font-family:"Hanken Grotesk";--e-global-typography-c92e5d1-font-size:14px;--e-global-typography-c92e5d1-font-weight:400;--e-global-typography-c92e5d1-font-style:italic;--e-global-typography-c92e5d1-line-height:1.6em;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end: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:1024px){.elementor-kit-6{--e-global-typography-d4f6b83-font-size:14px;--e-global-typography-d4f6b83-letter-spacing:-0.3px;}.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-f65bda8-font-size:clamp(44px, 23.2px + 5.3333vw, 100px);--e-global-typography-f65bda8-line-height:0.9em;--e-global-typography-f65bda8-letter-spacing:0px;--e-global-typography-f65bda8-word-spacing:0em;--e-global-typography-a7c94e5-font-size:clamp(34px, 28.057px + 1.5238vw, 50px);--e-global-typography-a7c94e5-line-height:1.3em;--e-global-typography-5eff3ee-font-size:clamp(30px, 23.314px + 1.7143vw, 48px);--e-global-typography-5eff3ee-line-height:1.2em;--e-global-typography-0ba2c32-font-size:clamp(24px, 21.029px + 0.7619vw, 32px);--e-global-typography-0ba2c32-line-height:1.3em;--e-global-typography-20e1315-font-size:clamp(26px, 22.286px + 0.9524vw, 36px);--e-global-typography-20e1315-line-height:1.11em;--e-global-typography-b05f7c1-font-size:clamp(20px, 16.286px + 0.9524vw, 30px);--e-global-typography-b05f7c1-line-height:1.2em;--e-global-typography-3fdfaf9-font-size:clamp(12px, 11.257px + 0.1905vw, 14px);--e-global-typography-3fdfaf9-line-height:1.33em;--e-global-typography-a1c3e50-font-size:clamp(19px, 16.772px + 0.5714vw, 25px);--e-global-typography-a1c3e50-line-height:1.6em;--e-global-typography-f520670-font-size:16px;--e-global-typography-f520670-line-height:1.6em;--e-global-typography-fc4f011-font-size:14px;--e-global-typography-fc4f011-line-height:1.43em;--e-global-typography-c3e5a72-font-size:clamp(24px, 19.543px + 1.1429vw, 36px);--e-global-typography-c3e5a72-line-height:1.11em;--e-global-typography-b2d4f61-font-size:14px;--e-global-typography-b2d4f61-line-height:1.07em;--e-global-typography-c17d3b8-font-size:12px;--e-global-typography-c17d3b8-line-height:1.4em;--e-global-typography-d4f6b83-font-size:16px;--e-global-typography-d4f6b83-line-height:1.6em;--e-global-typography-e2f4a61-font-size:12px;--e-global-typography-e2f4a61-line-height:1.2em;--e-global-typography-e5a7c94-font-size:14px;--e-global-typography-e5a7c94-line-height:1.43em;--e-global-typography-f6b8d05-font-size:12px;--e-global-typography-f6b8d05-line-height:1.33em;--e-global-typography-d1f8b62-font-size:clamp(84px, 22vw, 110px);--e-global-typography-d1f8b62-line-height:0.95em;--e-global-typography-c92e5d1-font-size:14px;--e-global-typography-c92e5d1-line-height:1.6em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.div-relative{
    position: relative;
}
.div-absolute{
    position: absolute;
}
/* ===== Variables de marca SerNaturaleza ===== */
:root {
  --sn-dark-green:  #3D6361;
  --sn-light-green: #A9B87B;
  --sn-brown:       #964B22;
  --sn-light-brown: #C9A78C;
  --sn-cream:       #FFF8F1;
  --sn-white:       #FFFFFF;
  --sn-blue:        #7897B2;

  /* ritmo vertical */
  --sn-section-y:   clamp(56px, 3.5vw + 20px, 95px);
  --sn-gap:         clamp(20px, 1.5vw + 8px, 32px);
  --sn-radius:      12px;
}

/* ===== Énfasis en titulares =====
   <em> dentro de un titular = acento de marca, sin tocar el widget. */
.elementor-widget-heading h1 em,
.elementor-widget-heading h2 em,
.elementor-widget-heading h3 em,
.elementor-widget-heading h4 em {
  color: var(--sn-light-green);
  font-style: italic;
}
.em-brown  .elementor-heading-title em { color: var(--sn-brown)       !important; }
.em-cream  .elementor-heading-title em { color: var(--sn-cream)       !important; }
.em-white  .elementor-heading-title em { color: var(--sn-white)       !important; }
.em-green  .elementor-heading-title em { color: var(--sn-dark-green)  !important; }

/* ===== Botones ===== */
.sn-btn,
.elementor-button {
  border-radius: var(--sn-radius);
  letter-spacing: .8px;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

/* ===== Utilidades de sección ===== */
.sn-seccion      { padding-block: var(--sn-section-y); }
.sn-fondo-crema  { background-color: var(--sn-cream); }
.sn-fondo-verde  { background-color: var(--sn-dark-green); }
.sn-fondo-marron { background-color: var(--sn-brown); }

/* ===== Imágenes de tarjeta (programas, ejes, eventos) ===== */
.sn-prog-img,
.sn-eje-img-wrap {
  border-radius: var(--sn-radius);
  overflow: hidden;
  line-height: 0;
}

/* ===== Tipografía base heredada del kit ===== */
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }

/* Nada de overflow horizontal en ningún breakpoint */
html, body { overflow-x: hidden; }

/* ===== Componentes SerNaturaleza (shortcodes) ===== */
/* Tipografía y color heredan del kit: no hay hex ni px sueltos. */

/* --- Programas: pestañas --- */

/* --- Programas: contenido --- */
.sn-prog-img{margin:0 0 28px;border-radius:var(--sn-radius);overflow:hidden;line-height:0;}
.sn-prog-img img{width:100%;height:280px;object-fit:cover;display:block;}
.sn-prog-titulo{
  font-family:var(--e-global-typography-5eff3ee-font-family),sans-serif;
  font-size:var(--e-global-typography-5eff3ee-font-size);
  line-height:var(--e-global-typography-5eff3ee-line-height);
  color:var(--sn-dark-green);text-align:center;margin:0 0 22px;
}
.sn-prog-metas{
  display:flex;gap:40px;flex-wrap:wrap;justify-content:center;
  border-top:1px solid rgba(61,99,97,.25);border-bottom:1px solid rgba(61,99,97,.25);
  padding:14px 0;margin-bottom:24px;
}
.sn-prog-meta{
  display:flex;flex-direction:column;color:var(--sn-dark-green);
  font-family:var(--e-global-typography-d4f6b83-font-family),sans-serif;
  font-size:var(--e-global-typography-d4f6b83-font-size);
  line-height:var(--e-global-typography-d4f6b83-line-height);
}
.sn-prog-meta em{
  font-style:normal;text-transform:uppercase;opacity:.6;margin-bottom:2px;
  font-size:var(--e-global-typography-3fdfaf9-font-size);
  letter-spacing:var(--e-global-typography-3fdfaf9-letter-spacing);
}
.sn-prog-desc p,.sn-prog-tagline{text-align:center;}
.sn-prog-desc p{
  font-family:var(--e-global-typography-f520670-font-family),sans-serif;
  font-size:var(--e-global-typography-f520670-font-size);
  line-height:var(--e-global-typography-f520670-line-height);
  color:var(--sn-dark-green);margin:0 0 12px;
}
.sn-prog-tagline{
  font-family:var(--e-global-typography-fc4f011-font-family),sans-serif;
  font-size:var(--e-global-typography-fc4f011-font-size);
  color:var(--sn-brown);letter-spacing:.5px;margin:0 0 24px;
}
.sn-prog-sub{
  font-family:var(--e-global-typography-0ba2c32-font-family),sans-serif;
  font-size:var(--e-global-typography-0ba2c32-font-size);
  line-height:var(--e-global-typography-0ba2c32-line-height);
  color:var(--sn-dark-green);margin:32px 0 16px;
}
.sn-momentos{display:grid;grid-template-columns:1fr 1fr;gap:24px 40px;}
.sn-momento strong{
  display:block;color:var(--sn-dark-green);margin-bottom:6px;
  font-family:var(--e-global-typography-f520670-font-family),sans-serif;
  font-size:var(--e-global-typography-f520670-font-size);
  line-height:var(--e-global-typography-f520670-line-height);
  font-weight:600;
}
.sn-momento p,.sn-actividades li{
  font-family:var(--e-global-typography-fc4f011-font-family),sans-serif;
  font-size:var(--e-global-typography-fc4f011-font-size);
  line-height:var(--e-global-typography-fc4f011-line-height);
  color:rgba(61,99,97,.85);margin:0;
}
.sn-actividades{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 40px;}
.sn-actividades li{padding-left:48px;position:relative;}
.sn-actividades li:before{content:"";position:absolute;left:0;top:.7em;width:32px;height:1px;background:var(--sn-light-brown);}
.sn-prog-noincluye{
  font-family:var(--e-global-typography-fc4f011-font-family),sans-serif;
  font-size:var(--e-global-typography-fc4f011-font-size);
  color:rgba(61,99,97,.7);margin-top:20px;
}

/* --- Botón de componente (mismo lenguaje que .elementor-button) --- */
.sn-prog-cta,.sn-eje-cta{
  display:inline-block;margin-top:28px;padding:12px 32px;text-decoration:none;
  border:2px solid var(--sn-dark-green);border-radius:35px;color:var(--sn-dark-green);
  font-family:var(--e-global-typography-b2d4f61-font-family),sans-serif;
  font-size:var(--e-global-typography-b2d4f61-font-size);
  font-weight:var(--e-global-typography-b2d4f61-font-weight);
  letter-spacing:var(--e-global-typography-b2d4f61-letter-spacing);
  transition:background-color .25s ease,color .25s ease;
}
.sn-prog-cta:hover,.sn-eje-cta:hover{background:var(--sn-dark-green);color:var(--sn-white);}

/* --- Ejes de acción --- */
.sn-eje-inner{max-width:1140px;margin:0 auto;display:flex;gap:50px;align-items:center;}
.sn-eje--reverse .sn-eje-inner{flex-direction:row-reverse;}
.sn-eje-media,.sn-eje-texto{flex:1;}
.sn-eje-media img,.sn-eje img{width:100%;height:430px;object-fit:cover;display:block;}
.sn-eje-texto h2{
  font-family:var(--e-global-typography-5eff3ee-font-family),sans-serif;
  font-size:var(--e-global-typography-5eff3ee-font-size);
  line-height:var(--e-global-typography-5eff3ee-line-height);
  color:var(--sn-dark-green);margin:0 0 18px;
}
.sn-eje-desc p{
  font-family:var(--e-global-typography-f520670-font-family),sans-serif;
  font-size:var(--e-global-typography-f520670-font-size);
  line-height:var(--e-global-typography-f520670-line-height);
  color:var(--sn-dark-green);margin:0 0 14px;
}

/* --- Eventos (Próximos Encuentros) --- */
.sn-eventos{display:flex;flex-direction:column;gap:20px;}
.sn-evento{background:var(--sn-white);border-radius:10px;padding:32px;box-shadow:0 1px 3px rgba(0,0,0,.07);}
.sn-ev-fecha{display:flex;flex-direction:column;line-height:1;}
.sn-ev-dia{
  font-family:var(--e-global-typography-20e1315-font-family),sans-serif;
  font-size:var(--e-global-typography-20e1315-font-size);
  color:var(--sn-dark-green);font-weight:500;
}
.sn-ev-mes{
  font-family:var(--e-global-typography-3fdfaf9-font-family),sans-serif;
  font-size:var(--e-global-typography-3fdfaf9-font-size);
  font-weight:var(--e-global-typography-3fdfaf9-font-weight);
  letter-spacing:var(--e-global-typography-3fdfaf9-letter-spacing);
  color:var(--sn-dark-green);
}
.sn-ev-titulo{
  font-family:var(--e-global-typography-20e1315-font-family),sans-serif;
  font-size:var(--e-global-typography-20e1315-font-size);
  line-height:var(--e-global-typography-20e1315-line-height);
  color:var(--sn-dark-green);font-weight:500;margin:16px 0 0;
}
.sn-ev-datos{display:flex;flex-direction:column;gap:6px;margin:16px 0 24px;padding-left:8px;}
.sn-ev-dato,.sn-ev-vacio{
  font-family:var(--e-global-typography-f520670-font-family),sans-serif;
  font-size:var(--e-global-typography-f520670-font-size);
  line-height:var(--e-global-typography-f520670-line-height);
  color:var(--sn-dark-green);
}
.sn-ev-cta{
  display:block;text-align:center;padding:12px;text-decoration:none;
  background:var(--sn-dark-green);color:var(--sn-light-green)!important;
  border-radius:var(--sn-radius);
  font-family:var(--e-global-typography-b2d4f61-font-family),sans-serif;
  font-size:var(--e-global-typography-b2d4f61-font-size);
  font-weight:var(--e-global-typography-b2d4f61-font-weight);
  transition:background-color .25s ease;
}
.sn-ev-cta:hover{background:#2f4f4d;}
.sn-ev-vacio{background:var(--sn-white);border-radius:10px;padding:28px 32px;}
.sn-ev-vacio a{color:var(--sn-brown);font-weight:600;}

/* --- Equipo --- */
.sn-avatar{border-radius:50%;object-fit:cover;}

/* --- Responsive de componentes --- */
@media(max-width:767px){
  
  
  .sn-prog-img img{height:180px;}
  .sn-momentos,.sn-actividades{grid-template-columns:1fr;}
  .sn-eje-inner,.sn-eje--reverse .sn-eje-inner{flex-direction:column;gap:24px;}
  .sn-eje-media img,.sn-eje img{height:260px;}
  .sn-evento{padding:22px;}
}
/* ===== Estilos de contenido del artículo (Bitácora Viva) =====
   Se aplican al contenido escrito desde el editor: no hace falta
   maquetar cada imagen, cita o subtítulo a mano. */

.sn-articulo{
  --sn-art-ancho: 780px;
}

/* medida de lectura: el texto no se estira a todo el ancho */
.sn-articulo > .elementor-widget-container > *{
  max-width: var(--sn-art-ancho);
  margin-left: auto;
  margin-right: auto;
}

/* párrafo */
.sn-articulo p{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: var(--sn-dark-green, #3D6361);
  margin: 0 0 22px;
}

/* subtítulos del cuerpo */
.sn-articulo .elementor-widget-container h2, .sn-articulo h2{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
  color: var(--sn-dark-green, #3D6361);
  margin: 46px 0 16px;
}
.sn-articulo .elementor-widget-container h3, .sn-articulo h3{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 20px;
  line-height: 28px;
  font-weight: 600;
  color: var(--sn-dark-green, #3D6361);
  margin: 32px 0 12px;
}

/* entradilla: el primer párrafo va más grande y en itálica */
.sn-articulo .elementor-widget-container > p:first-of-type{
  font-size: 20px;
  line-height: 32px;
  font-style: italic;
  font-weight: 300;
  margin-bottom: 34px;
}

/* cita destacada */
.sn-articulo blockquote{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 30px;
  line-height: 41.6px;
  font-style: italic;
  font-weight: 300;
  color: var(--sn-dark-green, #3D6361);
  border-left: 3px solid var(--sn-light-green, #A9B87B);
  padding: 6px 0 6px 30px;
  margin: 42px auto;
  background: none;
}
.sn-articulo blockquote p{ font: inherit; color: inherit; margin: 0; }
.sn-articulo blockquote cite{
  display: block;
  font-size: 14px;
  line-height: 22px;
  font-style: normal;
  opacity: .75;
  margin-top: 14px;
}

/* listas */
.sn-articulo ul, .sn-articulo ol{
  margin: 0 0 24px;
  padding-left: 0;
  list-style: none;
}
.sn-articulo li{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: var(--sn-dark-green, #3D6361);
  position: relative;
  padding-left: 48px;
  margin-bottom: 12px;
}
/* viñeta: la rayita de marca */
.sn-articulo ul > li::before{
  content: '';
  position: absolute;
  left: 0; top: 13px;
  width: 32px; height: 1px;
  background: var(--sn-light-brown, #C9A78C);
}
/* listas numeradas: el número en terracota */
.sn-articulo ol{ counter-reset: sn-li; }
.sn-articulo ol > li{ counter-increment: sn-li; }
.sn-articulo ol > li::before{
  content: counter(sn-li);
  position: absolute;
  left: 6px; top: 0;
  font-weight: 700;
  color: var(--sn-brown, #964B22);
}

/* imágenes dentro del artículo: a la medida de lectura, con esquinas suaves */
.sn-articulo img{
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}
.sn-articulo figure{ margin: 38px auto; }
/* imagen a sangre: basta con poner la clase alignfull o alignwide */
.sn-articulo .elementor-widget-container > .alignwide{ max-width: 1040px; }
.sn-articulo .elementor-widget-container > .alignfull{ max-width: 100%; }

/* pie de foto */
.sn-articulo figcaption,
.sn-articulo .wp-caption-text{
  font-family: var(--e-global-typography-f520670-font-family), sans-serif;
  font-size: 11px;
  line-height: 16.5px;
  font-style: italic;
  color: var(--sn-dark-green, #3D6361);
  opacity: .8;
  text-align: center;
  margin-top: 10px;
}

/* enlaces */
.sn-articulo a{
  color: var(--sn-brown, #964B22);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.sn-articulo a:hover{ opacity: .75; }

/* negrita y separador */
.sn-articulo strong{ font-weight: 700; }
.sn-articulo hr{
  border: 0;
  border-top: 1px solid rgba(61,99,97,.2);
  margin: 46px auto;
}

@media(max-width:767px){
  .sn-articulo blockquote{ font-size: 22px; line-height: 32px; padding-left: 20px; }
  .sn-articulo .elementor-widget-container > p:first-of-type{ font-size: 18px; line-height: 28px; }
  .sn-articulo .elementor-widget-container h2, .sn-articulo h2{ font-size: 21px; line-height: 28px; margin-top: 34px; }
  .sn-articulo li{ padding-left: 34px; }
  .sn-articulo ul > li::before{ width: 20px; }
}
/* alineacion uniforme del contenido: todo a la misma medida de lectura */
.sn-articulo > .elementor-widget-container{max-width:var(--sn-art-ancho);margin:0 auto;}
.sn-articulo > .elementor-widget-container > *{max-width:100%;margin-left:0;margin-right:0;}

/* el nav del tema blankslate se cuela en archivos y busquedas: lo ocultamos,
   el header real lo pinta Elementor */
body > nav#menu,
body > .search-form,
#menu[role=navigation]:not(.elementor-nav-menu--main){display:none!important;}

/* el tema blankslate imprime su propio footer/copyright: fuera */
footer#footer{display:none!important;}
footer#footer #copyright{display:none!important;}
/* crédito Besign — valores exactos de marcellyreynoso.com */
#besign{
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:10px !important;
  color:#CCCCCC !important;
  text-align:end !important;
  letter-spacing:normal !important;
  line-height:10px !important;
}
#besign .credit{
  color:#FFCC00 !important;
  text-decoration:none !important;
}
/* ocupa todo el ancho, como en marcelly (no el boxed del footer) */


/* hero del artículo: la imagen destacada como fondo, sin mosaico */
.sn-article-hero{ background-size:cover !important; background-position:center center !important; background-repeat:no-repeat !important; }

/* banner de cookies (CookieYes Lite trae los colores fijos en su CSS) */
.cky-consent-container .cky-consent-bar{
  background:var(--sn-cream,#FFF8F1) !important;
  border-color:var(--sn-light-brown,#C9A78C) !important;
  font-family:"Hanken Grotesk", sans-serif !important;
}
.cky-title, .cky-notice-des, .cky-notice-des *{
  color:var(--sn-dark-green,#3D6361) !important;
  font-family:"Hanken Grotesk", sans-serif !important;
}
.cky-title{ font-weight:700 !important; }
.cky-notice-des, .cky-notice-des *{ font-size:14px !important; line-height:1.5 !important; }

/* botones */
.cky-btn{ font-family:"Hanken Grotesk", sans-serif !important; font-weight:700 !important;
  font-size:13px !important; letter-spacing:.4px !important; border-radius:60px !important; }
.cky-btn-accept{
  background:var(--sn-dark-green,#3D6361) !important;
  border-color:var(--sn-dark-green,#3D6361) !important; color:#FFFFFF !important; }
.cky-btn-reject{
  background:transparent !important;
  border-color:var(--sn-dark-green,#3D6361) !important;
  color:var(--sn-dark-green,#3D6361) !important; }
.cky-btn-customize{
  background:transparent !important;
  border-color:var(--sn-brown,#964B22) !important;
  color:var(--sn-brown,#964B22) !important; }
.cky-btn:hover{ opacity:.85; }

/* centro de preferencias */
.cky-modal, .cky-preference-center{
  background:var(--sn-cream,#FFF8F1) !important;
  font-family:"Hanken Grotesk", sans-serif !important; }
.cky-preference-title, .cky-preference-content-wrapper,
.cky-accordion-header-des, .cky-accordion-btn{
  color:var(--sn-dark-green,#3D6361) !important; }
.cky-footer-wrapper{ background:var(--sn-cream,#FFF8F1) !important; }
.cky-switch input:checked{ background:var(--sn-light-green,#A9B87B) !important; }
.cky-always-active{ color:var(--sn-light-green,#A9B87B) !important; }

/* enlace "más información" y botón flotante */
.cky-policy{ color:var(--sn-brown,#964B22) !important; }
.cky-btn-revisit-wrapper{ background:var(--sn-dark-green,#3D6361) !important; }
/* fin banner de cookies */



/* liberar sticky: Lenis pone overflow-y:auto en html/body y eso rompe
   position:sticky en toda la página */
html.lenis, html.lenis body,
html, body{
  overflow-y:visible !important;
  overflow-x:clip !important;
}
/* fin liberar sticky */


/* hover de botones — estándar del sitio */
.elementor-button{
  transition:background-color .28s ease,color .28s ease,border-color .28s ease,transform .18s ease;
}
.sn-btn-outline-osc .elementor-button:hover,
.sn-btn-outline-osc .elementor-button:focus,
.elementor-button.sn-btn-outline-osc:hover{
  background-color:#3D6361 !important;
  border-color:#3D6361 !important;
  color:#FFF8F1 !important;
}
.sn-btn-outline-osc .elementor-button:hover .elementor-button-text,
.sn-btn-outline-osc .elementor-button:hover .elementor-button-icon{ color:#FFF8F1 !important; }

.sn-btn-outline-claro .elementor-button:hover,
.sn-btn-outline-claro .elementor-button:focus,
.elementor-button.sn-btn-outline-claro:hover{
  background-color:#FFF8F1 !important;
  border-color:#FFF8F1 !important;
  color:#3D6361 !important;
}
.sn-btn-outline-claro .elementor-button:hover .elementor-button-text,
.sn-btn-outline-claro .elementor-button:hover .elementor-button-icon{ color:#3D6361 !important; }

.sn-btn-solido .elementor-button:hover,
.sn-btn-solido .elementor-button:focus,
.elementor-button.sn-btn-solido:hover{
  background-color:#2C4947 !important;
  border-color:#2C4947 !important;
}
/* sólido sobre crema: sin borde */
.sn-btn-solido-crema .elementor-button{ border-color:transparent !important; }
.sn-btn-solido-crema .elementor-button:hover,
.elementor-button.sn-btn-solido-crema:hover{
  background-color:#2C4947 !important;
  border-color:transparent !important;
}
.sn-btn-solido-crema .elementor-button:hover .elementor-button-text{ color:#C3D097 !important; }

.elementor-button:hover{ transform:translateY(-1px); }
.elementor-button:active{ transform:translateY(0); }
/* fin hover de botones */
/* formulario newsletter: los campos no deben moverse cuando sale el mensaje
   de validación (el grupo con error crece y arrastraba a los demás) */
.sn-form-newsletter .elementor-form,
.elementor-widget-form .elementor-form{ align-items:flex-start; }
.sn-form-newsletter .elementor-field-group{
  align-items:flex-start !important;
  align-content:flex-start;
  position:relative;
}
/* el aviso se posiciona debajo sin empujar la fila */
.sn-form-newsletter .elementor-field-group > .elementor-message,
.sn-form-newsletter .elementor-message-danger{
  position:absolute; top:100%; left:0; margin-top:6px;
  font-size:12px; line-height:1.3; white-space:nowrap;
}
.sn-form-newsletter .elementor-field-group{ margin-bottom:26px; }
/* el mensaje general del formulario, debajo de todo */
.sn-form-newsletter .elementor-message{ font-size:13px; }
/* fin formulario newsletter */

/* hojas sobre fondo oscuro: el SVG trae su propio fill (#3D6361) y quedaban
   invisibles sobre el verde oscuro */
.elementor-48 .elementor-element-61a3074 svg,
.elementor-48 .elementor-element-61a3074 svg *,
.elementor-74 .elementor-element-eb93596 svg,
.elementor-74 .elementor-element-eb93596 svg *{
  fill:var(--sn-light-green,#A9B87B) !important;
}
/* fin hojas */
/* lista de opciones (Formas de apoyar y similares): el título de cada opción
   debe distinguirse del texto que lo acompaña */
.sn-lista-item strong{
  display:block;
  font-weight:700 !important;
  margin-bottom:4px;
}
.sn-lista-item + .sn-lista-item{ margin-top:22px; }
/* fin lista de opciones */
/* tabs deslizables en móvil: los títulos se quedan arriba en una fila que se
   arrastra en horizontal, en vez de convertirse en acordeón y separarse */
@media(max-width:767px){
  .sn-tabs-deslizables .e-n-tabs{ display:flex; flex-direction:column; }
  .sn-tabs-deslizables .e-n-tabs-heading{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    gap:8px;
    padding-bottom:8px;
    margin-bottom:16px;
    /* la barra de scroll, discreta */
    scrollbar-width:thin;
  }
  .sn-tabs-deslizables .e-n-tabs-heading::-webkit-scrollbar{ height:3px; }
  .sn-tabs-deslizables .e-n-tabs-heading::-webkit-scrollbar-thumb{
    background:var(--sn-light-brown,#C9A78C); border-radius:3px; }
  .sn-tabs-deslizables .e-n-tab-title{
    flex:0 0 auto !important;
    scroll-snap-align:start;
    white-space:nowrap;
  }
  /* el contenido, siempre debajo de la fila de títulos */
  .sn-tabs-deslizables .e-n-tabs-content{ order:2; width:100%; }
  .sn-tabs-deslizables .e-n-tabs-heading{ order:1; }
  /* anular el modo acordeón que Elementor aplica en móvil */
  .sn-tabs-deslizables .e-n-tab-title{ position:static !important; }
}
/* fin tabs deslizables */

/* iconos clicables: el SVG tiene huecos entre los trazos y el clic caía al
   vacío en vez de llegar al enlace ("hay que dar doble clic") */
.elementor-widget-icon-box .elementor-icon svg,
.elementor-widget-icon-box .elementor-icon svg *,
.elementor-widget-icon .elementor-icon svg,
.elementor-widget-icon .elementor-icon svg *{
  pointer-events:none;
}
/* el enlace ocupa todo el círculo y es el que recibe el clic */
.elementor-widget-icon-box a.elementor-icon,
.elementor-widget-icon a.elementor-icon{
  pointer-events:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
/* fin iconos clicables */

/* menú móvil pegado al header, con fondo uniforme */
@media(max-width:767px){
  .elementor-location-header .elementor-nav-menu--dropdown{
    top:100% !important;
    margin-top:0 !important;
    border-top:0 !important;
    left:0; right:0; width:100%;
    background-color:var(--sn-light-green,#A9B87B) !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-item{
    background-color:transparent !important;
    color:var(--sn-dark-green,#3D6361) !important;
    border-bottom:1px solid rgba(61,99,97,.16);
  }
  .elementor-location-header .elementor-nav-menu--dropdown li:last-child .elementor-item{
    border-bottom:0;
  }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-item:hover,
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-item.elementor-item-active{
    background-color:rgba(61,99,97,.10) !important;
  }
  .elementor-location-header .elementor-widget-nav-menu{ position:static; }
}
/* fin menú móvil */

/* display xl sin cortes: la palabra no debe partirse a media sílaba */
@media(max-width:767px){
  .elementor-2 .elementor-element-f4a2381 .elementor-heading-title{
    white-space:nowrap;
    word-break:keep-all;
    overflow-wrap:normal;
  }
}
/* fin display xl */

/* tabs textura: velo suave para que se vea la imagen, y fila a todo el ancho */
.sn-tabs-deslizables .e-n-tab-title::after{
  opacity:1 !important;
  background-color:transparent !important;
  background-image:linear-gradient(to bottom,
      rgba(61,99,97,.10) 0%,
      rgba(61,99,97,.12) 55%,
      rgba(61,99,97,.62) 100%) !important;
  transition:background-image .3s ease;
}
.sn-tabs-deslizables .e-n-tab-title:hover::after{
  background-image:linear-gradient(to bottom,
      rgba(61,99,97,.02) 0%,
      rgba(61,99,97,.04) 55%,
      rgba(61,99,97,.52) 100%) !important;
}
.sn-tabs-deslizables .e-n-tab-title[aria-selected="true"]::after{
  background-image:linear-gradient(to bottom,
      rgba(61,99,97,0) 0%,
      rgba(61,99,97,0) 55%,
      rgba(61,99,97,.48) 100%) !important;
}
.sn-tabs-deslizables .e-n-tab-title-text{
  text-shadow:0 1px 8px rgba(0,0,0,.75);
}

/* la fila abarca todo el ancho de la ventana, en cualquier tamaño */
.sn-tabs-deslizables .e-n-tabs-heading{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
/* fin tabs textura */

/* blog vacío: el mensaje de Elementor sale sin estilo (serif por defecto) */
.e-loop-nothing-found-message{
  padding:80px 20px 100px;
  text-align:center;
}
.e-loop-nothing-found-message__text{
  font-family:"Hanken Grotesk", sans-serif !important;
  font-size:22px;
  font-weight:300;
  font-style:italic;
  line-height:1.5;
  color:var(--sn-dark-green,#3D6361);
  opacity:.85;
  margin:0 auto;
  max-width:520px;
}
@media(max-width:767px){
  .e-loop-nothing-found-message{ padding:48px 20px 60px; }
  .e-loop-nothing-found-message__text{ font-size:18px; }
}
/* fin blog vacío */
/* Enlaces legales junto al copyright */
.sn-legales{display:inline;white-space:nowrap;}
.sn-legales a{font-size:.78em;opacity:.72;text-decoration:none;}
.sn-legales a:hover{opacity:1;text-decoration:underline;}
@media(max-width:767px){.sn-legales{display:block;white-space:normal;margin-top:6px;}}/* End custom CSS */