.elementor-kit-14{--e-global-color-primary:#2F3E58;--e-global-color-secondary:#DDB7AA;--e-global-color-text:#2F3E58;--e-global-color-accent:#E76F51;--e-global-color-ecf178a:#FDF8F3;--e-global-color-397c324:#B8A9C9;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:36px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:var( --e-global-color-ecf178a );color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;}.elementor-kit-14 button,.elementor-kit-14 input[type="button"],.elementor-kit-14 input[type="submit"],.elementor-kit-14 .elementor-button{background-color:#CBB9A6;font-size:1.5em;color:var( --e-global-color-ecf178a );}.elementor-kit-14 e-page-transition{background-color:#FFBC7D;}.site-header{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-ecf178a ) 0%, var( --e-global-color-ecf178a ) 100%);}.site-footer{background-color:var( --e-global-color-primary );}.elementor-kit-14 a{color:#FA575A;font-family:"Raleway", Sans-serif;}.elementor-kit-14 h1{color:var( --e-global-color-primary );font-family:"Rufina", Sans-serif;}.elementor-kit-14 h2{color:#293241;font-family:"Rufina", Sans-serif;}.elementor-kit-14 h3{color:var( --e-global-color-secondary );font-family:"Rufina", Sans-serif;}.elementor-kit-14 h4{color:var( --e-global-color-primary );font-family:"Rufina", Sans-serif;}.elementor-kit-14 h5{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;}.elementor-kit-14 h6{color:#293241;font-family:"Raleway", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.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);}.elementor-lightbox{--lightbox-header-icons-size:0px;}.site-header .site-navigation ul.menu li a{color:var( --e-global-color-text );}.site-header .site-navigation-toggle .site-navigation-toggle-icon{color:var( --e-global-color-ecf178a );}.site-header .site-navigation-toggle{background-color:#FDF8F3;}.site-header .site-navigation .menu li{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}footer .footer-inner .site-navigation a{color:var( --e-global-color-ecf178a );font-family:"Rufina", Sans-serif;font-weight:400;}.site-footer .copyright p{color:var( --e-global-color-ecf178a );}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//******** GLOBAL: eliminar huecos inferiores ********/
html, body,
.site, #content, .site-content, .content-area, .site-main {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Footer sin extras arriba/abajo */
.elementor-location-footer,
.elementor-location-footer .elementor-section,
.site-footer, footer {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Último bloque de la página (sección o contenedor Flex) sin espacio */
.entry-content > *:last-child,
.elementor-section-wrap > .elementor-section:last-of-type,
.elementor > .elementor-section:last-of-type,
.elementor .e-con:last-of-type {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  gap: 0 !important;
}

/* Banners que empujan el body */
body.cmplz-show-banner-bottom,
body.cli-barmodal-open { margin-bottom: 0 !important; }

/******** HEADER: menú (normal, hover y móvil) ********/
.elementor-location-header .elementor-nav-menu a.elementor-item {
  color: var(--e-global-color-text, #1f2d3d) !important;
}
.elementor-location-header .elementor-nav-menu a.elementor-item:hover,
.elementor-location-header .elementor-nav-menu .current-menu-item > a.elementor-item,
.elementor-location-header .elementor-nav-menu .current-menu-ancestor > a.elementor-item,
.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active {
  color: #E76F51 !important;
}

/* Pointers underline/border en coral — (AQUÍ estaba el error) */
.elementor-location-header .e--pointer-underline .elementor-item:after,
.elementor-location-header .e--pointer-border .elementor-item:after {
  background-color: #E76F51 !important;
  border-color: #E76F51 !important;
}

/* Menú móvil (dropdown) */
.elementor-nav-menu--dropdown a.elementor-item,
.elementor-nav-menu--dropdown a.elementor-sub-item {
  color: var(--e-global-color-text, #1f2d3d) !important;
}
.elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-nav-menu--dropdown a.elementor-sub-item:hover,
.elementor-nav-menu--dropdown .current-menu-item > a.elementor-item {
  color: #E76F51 !important;
}

/* Forzar enlaces del header a color de texto (sin tocar botones) */
.elementor-location-header a:not(.elementor-button) {
  color: var(--e-global-color-text, #1f2d3d) !important;
}

/******** “Sobre mí”: distribución y respiración ********/
/* Añade estas clases en Elementor:
   - Sección: section-about
   - Columna texto: sobre-mi-text
   - Columna foto: foto-about
   - Última sección antes del footer: no-gap (opcional) */

.section-about { padding-left: 32px; padding-right: 32px; }

.sobre-mi-text {              /* ~60–75 caracteres por línea */
  max-width: 62ch;
  padding-right: 40px;
}
.sobre-mi-text p { margin: 0 0 18px 0; }
.sobre-mi-text ul { margin: 10px 0 18px 0; padding-left: 1.1em; }

.foto-about { padding-left: 40px; }
.foto-about img {
  border-radius: 16px;
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
  object-fit: cover;
}

@media (max-width:1024px){
  .sobre-mi-text { max-width: 60ch; padding-right: 24px; }
  .foto-about { padding-left: 24px; }
}
@media (max-width:767px){
  .section-about { padding-left: 20px; padding-right: 20px; }
  .sobre-mi-text, .foto-about { padding: 0; }
}

/* Última sección sin hueco (si usas la clase no-gap) */
.no-gap,
.no-gap.elementor-section,
.no-gap.e-con {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
}
.no-gap .elementor-widget:last-child { margin-bottom: 0 !important; }/* End custom CSS */