.elementor-478 .elementor-element.elementor-element-3b78c0d0{--display:flex;--position:absolute;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;--z-index:999999999;}body:not(.rtl) .elementor-478 .elementor-element.elementor-element-3b78c0d0{left:0px;}body.rtl .elementor-478 .elementor-element.elementor-element-3b78c0d0{right:0px;}.elementor-478 .elementor-element.elementor-element-55f1c6eb{--display:flex;--padding-top:060px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-1a0f9e8a{padding:090px 0px 0px 0px;}.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-478 .elementor-element.elementor-element-7c605df2{width:var( --container-widget-width, 80% );max-width:80%;padding:0px 0120px 0px 0120px;--container-widget-width:80%;--container-widget-flex-grow:0;text-align:center;}.elementor-478 .elementor-element.elementor-element-7c605df2.elementor-element{--align-self:center;}.elementor-478 .elementor-element.elementor-element-7c605df2 .elementor-heading-title{font-family:"Lato", Sans-serif;font-weight:600;color:#000000;}.elementor-widget-theme-post-excerpt{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-478 .elementor-element.elementor-element-1656f29{width:var( --container-widget-width, 80vw );max-width:80vw;padding:030px 0px 0px 0px;--container-widget-width:80vw;--container-widget-flex-grow:0;text-align:justify;font-family:"Lato", Sans-serif;font-weight:400;color:#000000;}.elementor-478 .elementor-element.elementor-element-1656f29.elementor-element{--align-self:center;}.elementor-478 .elementor-element.elementor-element-10a769c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:00px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-10a769c:not(.elementor-motion-effects-element-type-background), .elementor-478 .elementor-element.elementor-element-10a769c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#A3606000;}.elementor-widget-theme-post-featured-image .widget-image-caption{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-478 .elementor-element.elementor-element-7eab2a13{width:var( --container-widget-width, 100vw );max-width:100vw;padding:020px 0px 020px 0px;--container-widget-width:100vw;--container-widget-flex-grow:0;border-radius:0px 0px 0px 0px;text-align:center;}.elementor-478 .elementor-element.elementor-element-7eab2a13.elementor-element{--align-self:flex-end;}.elementor-478 .elementor-element.elementor-element-7eab2a13 img{width:80vw;height:360px;object-fit:cover;object-position:bottom center;border-radius:024px 024px 024px 024px;}.elementor-478 .elementor-element.elementor-element-60be65c7{--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;--justify-content:center;--gap:0% 05%;--row-gap:0%;--column-gap:05%;--flex-wrap:wrap;--padding-top:0px;--padding-bottom:0120px;--padding-left:00px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-26556c06{--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;--gap:0px 40px;--row-gap:0px;--column-gap:40px;--border-radius:24px 24px 24px 24px;--padding-top:0px;--padding-bottom:0px;--padding-left:030px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-26556c06:not(.elementor-motion-effects-element-type-background), .elementor-478 .elementor-element.elementor-element-26556c06 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0C243F00;}.elementor-478 .elementor-element.elementor-element-84657c6{padding:0px 030px 0px 030px;}.elementor-478 .elementor-element.elementor-element-7b22ba04{--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;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-478 .elementor-element.elementor-element-49455670{padding:0px 0px 060px 0px;text-align:justify;color:#000000;font-family:"Lato", Sans-serif;font-weight:400;}.elementor-478 .elementor-element.elementor-element-5397a326{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-a8fd37a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-5cdd3749{width:100%;max-width:100%;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-478 .elementor-element.elementor-element-1a0f9e8a{padding:010px 0px 0px 0px;}.elementor-478 .elementor-element.elementor-element-7c605df2{padding:0px 030px 0px 30px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-478 .elementor-element.elementor-element-7eab2a13{padding:030px 0px 0px 0px;}.elementor-478 .elementor-element.elementor-element-7eab2a13 img{width:90vw;height:106px;}.elementor-478 .elementor-element.elementor-element-60be65c7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-84657c6{padding:00px 030px 0px 030px;}.elementor-478 .elementor-element.elementor-element-7b22ba04{--padding-top:020px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-478 .elementor-element.elementor-element-49455670{padding:0px 030px 060px 030px;}}@media(min-width:768px){.elementor-478 .elementor-element.elementor-element-3b78c0d0{--content-width:100%;}.elementor-478 .elementor-element.elementor-element-60be65c7{--content-width:100%;}.elementor-478 .elementor-element.elementor-element-26556c06{--width:30%;}.elementor-478 .elementor-element.elementor-element-7b22ba04{--width:55%;}.elementor-478 .elementor-element.elementor-element-a8fd37a{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-21f0d92d *//* ===== NAV: HERO ===== */
.heroNav-bar{
  --heroNav-active: #006770;   /* color activo + subrayado */
  --heroNav-bg: #D3FFF5;       /* fondo solicitado */
  --heroNav-text: #0E1111;

  background: var(--heroNav-bg);
  border-radius: 24px;
  /* más aire a la izquierda para separar el logo del borde */
  padding: .0rem 1.25rem .0rem 2rem!important; /* T R B L */
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}

.heroNav-logo{
  height: 36px;
  width: auto;
  display: block;
}

.heroNav-menu{
  gap: .25rem;
}

.heroNav-menu .nav-link{
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 700;
  color: var(--heroNav-text);
  opacity: .9;
  padding: .25rem 1rem;
  position: relative;
  transition: color .2s ease, opacity .2s ease;
  white-space: nowrap;
}

.heroNav-menu .nav-link:hover{ opacity: 1; }

/* Activo + subrayado centrado, “Inicio” del mismo color */
.heroNav-menu .nav-link.active,
.heroNav-menu .nav-link[aria-current="page"]{
  color: var(--heroNav-active) !important;
}

.heroNav-menu .nav-link.active::after,
.heroNav-menu .nav-link[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:-6px;
  width: 44px;       /* más ancho */
  height: 3px;
  border-radius: 2px;
  background: var(--heroNav-active);
}

/* CTA con !important para evitar overrides */
.heroNav-cta{
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 700 !important;
  background:#111 !important;
  color:#fff !important;
  border-radius: 999px !important;
  padding:.5rem 1rem !important;
  line-height: 1.2 !important;
  border: none !important;
  text-decoration: none !important;
  display: inline-block !important;
}
.heroNav-cta:hover{ color:#fff !important; background:#000 !important; }

/* ===== Responsive ===== */
@media (max-width: 991.98px){
  .heroNav-bar{
    border-radius: 16px;
    /* en móvil reducimos un poco el padding pero mantenemos aire a la izquierda */
    padding: .5rem .75rem .5rem 1.25rem;
  }
  .heroNav-logo{ height: 28px; }

  .heroNav-collapse{
    background: var(--heroNav-bg);
    border-radius: 12px;
    padding: .5rem;
    margin-top: .5rem;
  }

  .heroNav-menu .nav-link{
    padding: .5rem .25rem;
    display: inline-block;
  }

  .heroNav-menu .nav-link.active::after,
  .heroNav-menu .nav-link[aria-current="page"]::after{
    bottom: -2px;
    height: 2px;
    width: 36px; /* un poco menos ancho en móvil para equilibrio */
  }

  .heroNav-cta{
    width: 100% !important;
    margin-top: .5rem !important;
    text-align: center !important;
  }
}

/* Toggler */
.heroNav-toggler{ border-color: rgba(0,0,0,.25); }

[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
    background-color: #1A726B;}
.container-90{
    max-width: 90%!important;
}

/* Empuja el menú a la derecha y reduce el hueco con el CTA (solo desktop) */
@media (min-width: 992px){
  .heroNav-collapse{
    display: flex !important;
    align-items: center;
    gap: .5rem; /* reduce el espacio entre el menú y el CTA */
  }
  .heroNav-menu{
    /* anula el mx-auto del HTML */
    margin-left: auto !important;   /* empuja el menú a la derecha */
    margin-right: .25rem !important;/* pequeño colchón antes del CTA */
  }
  /* un pelín más compacto el último item para pegarlo al botón */
  .heroNav-menu .nav-item:last-child .nav-link{
    padding-right: .5rem;
  }
  /* botón bien pegado al menú */
  .heroNav-cta{
    margin-left: .25rem !important;
  }
  
}

.container-90{
      margin-top:2rem!important;
  }/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1a0f9e8a *//* ===== ENTRY META (CATEGORY + DATE) ===== */
.afb-post-meta {
  margin-bottom: 24px;
  font-family: 'Montserrat', sans-serif;
  width: 100%;
}

/* Category pill */
.afb-post-category {
  display: inline-block;
  background:#D3FFF5;
  color: #178274;
  font-weight: 500;
  font-size: 18px;
  padding: 4px 16px;
  border-radius: 40px;
  line-height: 1;
}

/* Date */
.afb-post-date {
  font-weight: 400;
  font-size: 16px;
  color: #232A34;
}

/* Responsive: mobile adjustments */
@media (max-width: 767.98px) {
  .afb-post-meta {
    flex-direction: column;
    gap: 8px;
  }
  .afb-post-category {
    font-size: 14px;
    padding: 3px 12px;
  }
  .afb-post-date {
    font-size: 14px;
    margin-left: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-84657c6 *//* ===== BLOQUE “MÁS ARTÍCULOS” ===== */
.afb-recent-posts {
  margin-top: 40px;
}
.afb-recent-posts-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #0C243F;
  margin-bottom: 16px;
}

/* Lista y items */
.afb-recent-posts-list {
  margin: 0;
  padding: 0;
}
.afb-recent-post-item {
  list-style: none;
}

/* Miniatura */
.afb-recent-post-thumb img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 8px;
}

/* Título y fecha */
.afb-recent-post-title {
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #0C243F;
}
.afb-recent-post-date {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: #232A34;
}

/* Enlace */
.afb-recent-post-link:hover .afb-recent-post-title {
  text-decoration: underline;
}

/* Responsive: adapta tamaño en móvil */
@media (max-width: 767.98px) {
  .afb-recent-post-thumb img {
    width: 48px;
    height: 48px;
  }
  .afb-recent-post-title {
    font-size: 14px;
  }
  .afb-recent-post-date {
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-519e250d *//* ===== HB – Botones flotantes (FAB stack) ===== */
.hb-fabs{
  position: fixed;
  right: clamp(16px, 2.2vw, 28px);
  bottom: calc(clamp(16px, 2.2vw, 28px) + env(safe-area-inset-bottom, 0px));
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 14px;
  z-index: 1040; /* por encima de navbars/offcanvas */
}

/* FAB base: mismo tamaño para ambos */
.hb-fab{
  --hb-fab-size: 96px;
  width: var(--hb-fab-size);
  height: var(--hb-fab-size);
  border-radius: 50%;
  background: none;
  box-shadow: 0 8px 18px rgba(0,0,0,.22);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease;
  position: relative;
  overflow: visible; /* <- permite que el badge sobresalga */
}
.hb-fab:hover{ transform: scale(1.06); box-shadow: 0 10px 24px rgba(0,0,0,.28); }

/* Wrapper que recorta SOLO la imagen (círculo perfecto) */
.hb-fab-media{
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;           /* <- recorta la imagen */
}
.hb-fab-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Badge de WhatsApp que sobresale */
.hb-fab--whatsapp .hb-fab-badge{
  position: absolute;
  top: -8px;      /* sobresale */
  left: -8px;     /* sobresale */
  width: 42px;
  height: 42px;
  background: #25D366;
  border: 3px solid #FFFFFF;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.hb-fab--whatsapp .hb-fab-badge img{
  width: 60%;
  height: 60%;
  object-fit: contain;
}

/* Responsive */
@media (max-width: 991.98px){
  .hb-fab{ --hb-fab-size: 80px; }
  .hb-fab--whatsapp .hb-fab-badge{ width: 34px; height: 34px; border-width: 3px; top:-7px; left:-7px; }
}
@media (max-width: 767.98px){
  .hb-fab{ --hb-fab-size: 64px; }
  .hb-fab--whatsapp .hb-fab-badge{ width: 26px; height: 26px; border-width: 2px; top:-6px; left:-6px; }
}
@media (prefers-reduced-motion: reduce){
  .hb-fab{ transition: none; }
  .hb-fab:hover{ transform:none; }
}

/* ===== Ajustes SOLO para el FAB superior ===== */

/* 1) Que NO recorte la imagen (la imagen ya es circular de origen) */
.hb-fab--primary .hb-fab-media{
  border-radius: 0 !important;
  overflow: visible !important;   /* permite que sobresalga su propio badge */
}
.hb-fab--primary .hb-fab-media img{
  border-radius: 0 !important;
  object-fit: contain !important; /* muestra la imagen completa tal cual */
}

/* 2) Hacerlo ligeramente más grande que el inferior */
.hb-fab--primary{
  --hb-fab-size: 104px; /* antes 96px */
}

@media (max-width: 991.98px){     /* tablet */
  .hb-fab--primary{ --hb-fab-size: 88px; }  /* el otro está en 80px */
}
@media (max-width: 767.98px){     /* móvil */
  .hb-fab--primary{ --hb-fab-size: 70px; }  /* el otro está en 64px */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5cdd3749 *//* ==========  FOOTER HERO DOC  ========== */
.herodoc-footer-wrapper{
  background:#178274;               /* verde fondo */
  color:#fff;
  font-family:'Montserrat',sans-serif;
  margin:0;
}

.herodoc-footer-bg{border-radius:50px 50px 0 0}
.herodoc-footer-content{padding:3rem 5rem}
.herodoc-footer-main{
  display:flex;justify-content:space-between;align-items:flex-start;
  flex-wrap:wrap;gap:2.5rem
}

/* ---------- izquierda ---------- */
.herodoc-footer-left{display:flex;flex-direction:column;gap:1.25rem}
.herodoc-footer-kicker{
  font-size:13px; letter-spacing:.12em; font-weight:800; opacity:.9;
  text-transform:uppercase; margin-bottom:.25rem;
}
.herodoc-footer-logo img{max-width:250px;height:auto}

.herodoc-footer-menus{display:flex;gap:4rem;flex-wrap:wrap;margin-top:1rem}
.herodoc-footer-column h4{
  font-size:16px;font-weight:800;margin-bottom:.6rem;text-transform:uppercase
}
.herodoc-footer-column ul{list-style:none;margin:0;padding:0}
.herodoc-footer-column li a{
  font-size:13px;font-weight:600;line-height:1.65;color:#fff;text-decoration:none
}
.herodoc-footer-column li a:hover{text-decoration:underline}

/* sello SSL */
.ssl-badge{max-width:120px!important;margin-top:1rem}

/* ---------- derecha ---------- */
.herodoc-footer-right{display:flex;flex-direction:column;align-items:baseline;gap:1.25rem}
.herodoc-footer-social{display:flex;gap:1rem}
.herodoc-footer-social img{width:44px;height:44px;object-fit:contain}

.herodoc-contact-button{
  background:#98FFE7 !important;
  color:#178274 !important;
  border:none;border-radius:20px;
  font-size:16px;font-weight:700;padding:12px 50px;
  text-decoration:none;transition:transform .2s ease, filter .2s ease;text-align:center;
  box-shadow:0 2px 0 rgba(0,0,0,.18);
}
.herodoc-contact-button:hover{transform:translateY(-1px);filter:saturate(1.05)}

/* contacto extra */
.footer-contact-info{display:flex;flex-direction:column;gap:.75rem;max-width:300px}
.contact-item{display:flex;align-items:flex-start;gap:.6rem;font-size:13px;font-weight:600;line-height:1.45}
.contact-item a{color:#fff;text-decoration:underline}
.contact-icon{width:18px;height:18px;margin-top:2px}

/* ---------- fila inferior ---------- */
.herodoc-footer-bottom{
  margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.25);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem
}
.herodoc-footer-rights{font-size:12px;font-weight:600;margin:0}

.herodoc-legal-links a{
  font-size:12px;font-weight:600;color:#fff;text-decoration:none;white-space:nowrap
}
.herodoc-legal-links a:hover{text-decoration:underline}

.rhodium-brand{
  order:3; width:100%; display:flex; justify-content:center; margin-top:1.25rem;
}

/* ---------- responsive ---------- */
@media(max-width:992px){
  .herodoc-footer-content{padding:2.5rem 2rem}
  .herodoc-footer-right{align-items:center}
}

@media(max-width:768px){
  .herodoc-footer-main{flex-direction:column;align-items:center;text-align:center}
  .herodoc-footer-left,.herodoc-footer-menus{align-items:center;text-align:center}
  .herodoc-footer-right{align-items:center}
  .footer-contact-info{align-items:center;text-align:center}
  .herodoc-footer-bottom{flex-direction:column;align-items:center}
  .herodoc-footer-menus{flex-wrap:nowrap}
}/* End custom CSS */