.elementor-409 .elementor-element.elementor-element-3e69d31b{--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-409 .elementor-element.elementor-element-3e69d31b{left:0px;}body.rtl .elementor-409 .elementor-element.elementor-element-3e69d31b{right:0px;}.elementor-409 .elementor-element.elementor-element-68f821fe{--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-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-409 .elementor-element.elementor-element-1c012082 .elementor-button{background-color:#C0DDD9;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;fill:#178274;color:#178274;border-radius:30px 30px 30px 30px;}.elementor-409 .elementor-element.elementor-element-1c012082{padding:0120px 0px 030px 0px;}.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-409 .elementor-element.elementor-element-5b290f0e{width:var( --container-widget-width, 70% );max-width:70%;padding:0px 0px 0px 0px;--container-widget-width:70%;--container-widget-flex-grow:0;text-align:center;}.elementor-409 .elementor-element.elementor-element-5b290f0e.elementor-element{--align-self:center;}.elementor-409 .elementor-element.elementor-element-5b290f0e .elementor-heading-title{font-family:"Bebas Neue", Sans-serif;font-size:70px;font-weight:400;color:#030303;}.elementor-409 .elementor-element.elementor-element-68b2afe1{--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-409 .elementor-element.elementor-element-16e5e106{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-42bde8d4{width:100%;max-width:100%;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-409 .elementor-element.elementor-element-1c012082{padding:060px 0px 015px 0px;}.elementor-409 .elementor-element.elementor-element-1c012082 .elementor-button{font-size:12px;}.elementor-409 .elementor-element.elementor-element-5b290f0e{--container-widget-width:85%;--container-widget-flex-grow:0;width:var( --container-widget-width, 85% );max-width:85%;}.elementor-409 .elementor-element.elementor-element-5b290f0e .elementor-heading-title{font-size:30px;}}@media(min-width:768px){.elementor-409 .elementor-element.elementor-element-3e69d31b{--content-width:100%;}.elementor-409 .elementor-element.elementor-element-68f821fe{--content-width:100%;}.elementor-409 .elementor-element.elementor-element-16e5e106{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-39a1dcbd *//* ===== 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;
  }

.afb-archive-thumb img {
    
    max-height: 350px;}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-307374d *//* ===== ARCHIVO DE BLOG AFB ===== */
.afb-archive-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #0C243F;
}

/* Filtros */
.afb-filter-btn {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: #232A34!important;
  background: #fff!important;
  border: 1px solid #178274!important;
  border-radius: 40px!important;
  padding: 4px 16px!important;
  transition: background .2s, color .2s!important;
}
.afb-filter-btn.active,
.afb-filter-btn:hover {
  background: #98FFE7!important;
  color: #178274!important;
  gap:20px;
}

.afb-archive-filters.btn-group.mb-4 {
    gap: 20px;
}

/* Grid */
.afb-archive-grid {}

/* Card */
.afb-archive-card {
  background: #FFFFFF;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  overflow: hidden;
}
.afb-archive-thumb img {
  width: 100%;
  height: auto;
  display: block;
}

/* Body */
.afb-archive-body {
  padding: 24px;
}
.afb-archive-post-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #0C243F;
  margin: 0;
}
.afb-archive-post-title a {
  color: inherit;
  text-decoration: none;
}
.afb-archive-excerpt {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: #232A34;
  margin: 12px 0 0;
  line-height: 1.6;
  text-align:left;
}

/* Meta */
.afb-archive-cat-pill {
  background: #98FFE7;
  color: #178274;
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 40px;
  text-transform: uppercase;
}
.afb-archive-date {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  color: #0C243F;
}
.afb-archive-readmore {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: white;
  text-decoration: none;
  font-weight: 600;
  transition: color .2s;
  background: black;
  padding:3px 32px;
  border-radius: 24px;
}
.afb-archive-readmore:hover {
  color: #178274;
}

/* Paginación */
.afb-archive-pagination {
  font-family: 'Montserrat', sans-serif;
}
.afb-archive-pagination a,
.afb-archive-pagination .disabled-btn {
  font-size: 14px;
  margin: 0 8px;
  text-decoration: none;
  color: #0C243F;
  border: 1px solid #0C243F;
  border-radius: 40px;
  padding: 6px 20px;
  transition: background .2s, color .2s;
}
.afb-archive-pagination a:hover {
  background: #98FFE7;
  color: #FFF;
}
.afb-archive-pagination .disabled-btn {
  opacity: .4;
  cursor: default;
}

/* Responsive */
@media (max-width: 991.98px) {
  .afb-archive-grid .col-md-6 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .btn-group, .btn-group-vertical {
      flex-wrap: wrap;
  }
.afb-archive-cat-pill {
    font-size:9px!important;
}
.afb-archive-date {
    font-size:9px!important;
}  
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-559a6468 *//* ===== 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-42bde8d4 *//* ==========  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 */