.elementor-257 .elementor-element.elementor-element-2de9449{--display:flex;--margin-top:70px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-257 .elementor-element.elementor-element-60418e0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 11px) 0px;}.elementor-257 .elementor-element.elementor-element-60418e0 .elementor-icon-list-icon{width:6px;}.elementor-257 .elementor-element.elementor-element-60418e0 .elementor-icon-list-icon i{font-size:6px;}.elementor-257 .elementor-element.elementor-element-60418e0 .elementor-icon-list-icon svg{--e-icon-list-icon-size:6px;}.elementor-257 .elementor-element.elementor-element-60418e0 .elementor-icon-list-item{font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-257 .elementor-element.elementor-element-e2a3ee8 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-weight:600;line-height:56px;color:#000000;}.elementor-257 .elementor-element.elementor-element-9141373 .elementor-icon-list-icon{width:14px;}.elementor-257 .elementor-element.elementor-element-9141373 .elementor-icon-list-icon i{font-size:14px;}.elementor-257 .elementor-element.elementor-element-9141373 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-257 .elementor-element.elementor-element-9141373 .elementor-icon-list-item{font-family:"Montserrat", Sans-serif;font-weight:500;}.elementor-257 .elementor-element.elementor-element-f97c3dd{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 60px;--row-gap:0px;--column-gap:60px;--margin-top:70px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-257 .elementor-element.elementor-element-2b692ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:5px 5px 5px 5px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-257 .elementor-element.elementor-element-2b692ea:not(.elementor-motion-effects-element-type-background), .elementor-257 .elementor-element.elementor-element-2b692ea > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFAFA;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-257 .elementor-element.elementor-element-4beb796{--box-min-height:0px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--box-border-width:0px;--box-border-radius:1px;--separator-width:0px;--item-text-color:#000000;--item-text-hover-color:#767676;--marker-size:0px;}.elementor-257 .elementor-element.elementor-element-4beb796 .elementor-toc__header-title{text-align:start;}.elementor-257 .elementor-element.elementor-element-4beb796 .elementor-toc__header, .elementor-257 .elementor-element.elementor-element-4beb796 .elementor-toc__header-title{font-family:"Playfair Display", Sans-serif;font-size:22px;font-weight:600;}.elementor-257 .elementor-element.elementor-element-4beb796 .elementor-toc__list-item{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:500;}.elementor-257 .elementor-element.elementor-element-d0df980{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-257 .elementor-element.elementor-element-592c758{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;color:#000000;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:500;}.elementor-257 .elementor-element.elementor-element-7d249af{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:22px 22px 22px 22px;--margin-top:14px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:36px;--padding-bottom:36px;--padding-left:36px;--padding-right:36px;}.elementor-257 .elementor-element.elementor-element-7d249af:not(.elementor-motion-effects-element-type-background), .elementor-257 .elementor-element.elementor-element-7d249af > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F3F3;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-257 .elementor-element.elementor-element-42cf1f3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-257 .elementor-element.elementor-element-42cf1f3 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:32px;font-weight:600;line-height:38px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-257 .elementor-element.elementor-element-ad8cf43{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;text-align:center;font-family:"Montserrat", Sans-serif;font-size:19px;font-weight:500;text-shadow:0px 0px 10px rgba(0, 0, 0, 0);color:#000000;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-257 .elementor-element.elementor-element-b6bf151 .elementor-button{background-color:#7B3FE4;font-family:"Playfair Display", Sans-serif;font-size:26px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:16px 16px 16px 16px;padding:20px 90px 20px 80px;}.elementor-257 .elementor-element.elementor-element-b6bf151{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;}.elementor-257 .elementor-element.elementor-element-b6bf151.elementor-element{--align-self:center;}.elementor-257 .elementor-element.elementor-element-b6495c1{--display:flex;--margin-top:30px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-257 .elementor-element.elementor-element-bb0bdc2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-257 .elementor-element.elementor-element-f157b0a{text-align:center;}.elementor-257 .elementor-element.elementor-element-f157b0a .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:37px;font-weight:600;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-257 .elementor-element.elementor-element-ba888ba{--divider-border-style:solid;--divider-color:#7B3FE4;--divider-border-width:4px;}.elementor-257 .elementor-element.elementor-element-ba888ba .elementor-divider-separator{width:10%;margin:0 auto;margin-center:0;}.elementor-257 .elementor-element.elementor-element-ba888ba .elementor-divider{text-align:center;padding-block-start:15px;padding-block-end:15px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-257 .elementor-element.elementor-element-70440a3{--grid-columns:3;}@media(max-width:1024px){.elementor-257 .elementor-element.elementor-element-70440a3{--grid-columns:2;}}@media(min-width:768px){.elementor-257 .elementor-element.elementor-element-2de9449{--content-width:1400px;}.elementor-257 .elementor-element.elementor-element-f97c3dd{--content-width:1400px;}.elementor-257 .elementor-element.elementor-element-2b692ea{--width:30%;}.elementor-257 .elementor-element.elementor-element-d0df980{--width:70%;}.elementor-257 .elementor-element.elementor-element-bb0bdc2{--content-width:1400px;}}@media(max-width:767px){.elementor-257 .elementor-element.elementor-element-2de9449{--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-257 .elementor-element.elementor-element-f97c3dd{--margin-top:30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-257 .elementor-element.elementor-element-d0df980{--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-257 .elementor-element.elementor-element-592c758{font-size:19px;}.elementor-257 .elementor-element.elementor-element-b6495c1{--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-257 .elementor-element.elementor-element-70440a3{--grid-columns:1;}}/* Start custom CSS for table-of-contents, class: .elementor-element-4beb796 *//* Línea debajo de cada item del TOC */
.toc-lineas .elementor-toc__list-item {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

/* Quitar la línea del último elemento */
.toc-lineas .elementor-toc__list-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.toc-lineas .elementor-toc__list-item {
  border-bottom: 1px solid rgba(0,0,0,0.08);
  transition: border-color .2s ease;
}

.toc-lineas .elementor-toc__list-item:hover {
  border-bottom-color: #000;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2b692ea *//* TOC sticky real, limitado al alto de su contenedor */
.single-post .toc-col{
  position: relative;
}

/* tu clase del widget TOC */
.single-post .toc-col .toc-lineas{
  position: sticky;
  top: 120px;                  /* ajusta si tienes header */
  align-self: flex-start;      /* importante en contenedores flex */
  max-height: calc(100vh - 140px);
  overflow: auto;              /* si es muy larga, hace scroll interno */
}
/* Quitar sticky de la TOC en móvil */
@media (max-width: 768px) {
  .single-post .toc-col .toc-lineas {
    position: static !important;
    top: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-592c758 */.elementor-257 .elementor-element.elementor-element-592c758 a {
    color: #000000 !important;
}

.elementor-257 .elementor-element.elementor-element-592c758 a:hover {
    color: #000000 !important;
    text-decoration: underline; 
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b6bf151 *//* Deja sitio a la pastilla para el círculo */
.elementor-257 .elementor-element.elementor-element-b6bf151 .elementor-button{
  position: relative;
  padding-right: 78px;
}

/* Círculo + flecha SVG (siempre centrada) */
.elementor-257 .elementor-element.elementor-element-b6bf151 .elementor-button::after{
  content:"";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);

  width:38px;
  height:38px;
  border:1px solid #000;
  border-radius:50%;
  background-color: transparent;

  /* Flecha negra (SVG) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h12' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 22px 22px;

  transition: background-color .25s ease, border-color .25s ease, transform .25s ease;
}

/* Hover: círculo morado + flecha blanca */
.elementor-257 .elementor-element.elementor-element-b6bf151 .elementor-button:hover::after{
  background-color:#7b3fe4;
  border-color:#FFFFFF;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h12' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round'/%3E%3Cpath d='M13 6l6 6-6 6' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

  transform:translateY(-50%) translateX(3px);
}

/* Por si hay icono nativo activado */
.elementor-257 .elementor-element.elementor-element-b6bf151 .elementor-button-icon{
  display:none !important;
}
/* Centrar aceptación (checkbox + texto) en Elementor Form */
.elementor-field-type-acceptance {
  text-align: center;
}

.elementor-field-type-acceptance .elementor-field-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

/* Por si el label estuviera forzando ancho completo */
.elementor-field-type-acceptance label {
  width: auto !important;
  display: inline-flex;
  align-items: center;
}
/* Tamaño solo del texto de aceptación */
.elementor-field-type-acceptance label {
  font-size: 0.85em;
  line-height: 1.3;
}
/* Solo el texto de aceptación: forzar tamaño */
.elementor-field-type-acceptance label,
.elementor-field-type-acceptance label span{
  font-size: 20px !important;
  line-height: 2 !important;
}/* End custom CSS */