/* Espino Nativo — header, footer, extras (sin Elementor) */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:8px;top:8px;width:auto;height:auto;background:#C9A65C;color:#08111E;padding:8px 14px;z-index:9999;border-radius:4px}
.es-page-hero-sec{background:linear-gradient(160deg,#050b14 0%,#0d1b2e 60%,#08111e 100%);border-bottom:1px solid rgba(201,166,92,.18);padding:4.5rem 0 3rem}
.es-site-header{position:sticky;top:0;z-index:1000;background:rgba(8,17,30,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(201,166,92,.22);box-shadow:0 4px 20px rgba(0,0,0,.4)}
.es-header-inner{display:flex;align-items:center;gap:1.5rem;padding-top:.6rem;padding-bottom:.6rem}
.es-header-logo{flex:0 0 auto;display:flex;align-items:center;text-decoration:none}
.es-header-logo img{height:44px;width:auto;display:block}
.es-header-nav{flex:1 1 auto}
.es-nav-list{display:flex;align-items:center;justify-content:center;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:nowrap}
.es-nav-list a{font-size:.82rem;font-weight:500;color:#cbd5e1;padding:7px 10px;border-radius:6px;white-space:nowrap;text-decoration:none;transition:all .2s}
.es-nav-list a:hover,.es-nav-list .current-menu-item>a{color:#DFC385;background:rgba(201,166,92,.08)}
.es-header-cta{flex:0 0 auto;display:flex;align-items:center;gap:.7rem}
.es-btn-nav{display:inline-block;background:linear-gradient(135deg,#DFC385 0%,#C9A65C 100%);color:#08111e!important;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:10px 18px;border-radius:6px;text-decoration:none;border:1px solid #C9A65C;white-space:nowrap}
.es-btn-nav:hover{background:linear-gradient(135deg,#EBD39D 0%,#DFC385 100%)}
.es-nav-toggle{display:none;background:transparent;border:1px solid rgba(201,166,92,.35);border-radius:6px;padding:8px;cursor:pointer;flex-direction:column;gap:5px}
.es-nav-toggle span{display:block;width:22px;height:2px;background:#DFC385}
.es-search-toggle{background:transparent;border:1px solid rgba(201,166,92,.35);border-radius:6px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#DFC385}
.es-search-toggle:hover{background:rgba(201,166,92,.1)}
.es-searchbar{display:none;border-top:1px solid rgba(201,166,92,.18);background:#0a1422;padding:1rem 0}
.es-searchbar.open{display:block}
.es-search-form{display:flex;align-items:center;gap:.6rem;position:relative}
.es-search-form>.dashicons{position:absolute;left:.9rem;color:#94a3b8;pointer-events:none}
.es-search-input{flex:1;background:#050b14;border:1px solid rgba(201,166,92,.3);border-radius:6px;color:#e2e8f0;padding:.7rem .9rem .7rem 2.6rem;font-size:.9rem;font-family:inherit}
.es-search-input:focus{outline:2px solid #C9A65C;outline-offset:1px}
.es-search-submit{background:linear-gradient(135deg,#DFC385,#C9A65C);color:#08111e;border:0;border-radius:6px;padding:.7rem 1.3rem;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;font-family:inherit}
.es-search-term{color:#DFC385;font-style:italic}
.es-mobile-nav{display:none;border-top:1px solid rgba(201,166,92,.15);padding:1rem 1.5rem 1.5rem}
.es-mobile-nav.open{display:block}
.es-mobile-list{list-style:none;margin:0 0 1rem;padding:0}
.es-mobile-list a{display:block;color:#cbd5e1;text-decoration:none;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.06)}
.es-mobile-list a:hover{color:#DFC385}
.es-site-footer{background:#050b14;border-top:1px solid rgba(201,166,92,.25);padding:3.5rem 0 0;margin-top:0}
.es-footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1.2fr;gap:2rem;padding-bottom:2.5rem}
.es-footer-logo{max-width:130px;width:130px;height:auto;margin-bottom:.6rem}
.es-footer-tagline{color:#94a3b8;font-size:.88rem;line-height:1.7;margin:0 0 .6rem}
.es-footer-title{font-family:Cinzel,Georgia,serif;font-size:1rem;font-weight:700;color:#DFC385;margin:0 0 1rem}
.es-footer-menu{list-style:none;margin:0;padding:0}
.es-footer-menu a{color:#94a3b8;font-size:.88rem;text-decoration:none;display:block;padding:.3rem 0}
.es-footer-menu a:hover{color:#DFC385}
.es-footer-contact{list-style:none;margin:0;padding:0}
.es-footer-contact li{display:flex;gap:.6rem;color:#94a3b8;font-size:.88rem;line-height:1.6;margin-bottom:.65rem}
.es-footer-contact .dashicons{color:#C9A65C;font-size:16px;width:16px;height:16px;margin-top:3px;flex-shrink:0}
.es-social{display:flex;gap:.6rem;margin-top:.5rem}
.es-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:4px;background:rgba(201,166,92,.08);border:1px solid rgba(201,166,92,.25);color:#DFC385;text-decoration:none}
.es-social a:hover{background:#C9A65C;color:#08111e}
.es-social-ico{width:20px;height:20px;fill:currentColor}
.es-footer-bar{border-top:1px solid rgba(255,255,255,.06);padding:1.2rem 0}
.es-footer-bar-inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:#94a3b8;font-size:.82rem}
.es-footer-bar-inner a{color:#94a3b8}
.es-wa-float{position:fixed;right:1.2rem;bottom:1.2rem;z-index:1200;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.es-wa-float .dashicons{font-size:26px;width:26px;height:26px}
/* Logo oficial de WhatsApp en SVG: no depende de la fuente de iconos, asi que
   se ve igual en todos los servidores. */
.es-wa-float-ico{width:28px;height:28px;fill:#fff;position:relative;z-index:1}
/* Pulso sutil: un anillo que se expande y se desvanece, para que el boton no
   se vea estatico. Se apaga solo si el visitante prefiere sin movimiento. */
.es-wa-float::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(37,211,102,.7);animation:es-wa-pulse 2.5s ease-out infinite;pointer-events:none}
@keyframes es-wa-pulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}
@media (prefers-reduced-motion:reduce){.es-wa-float::after{animation:none;display:none}}
/* Shortcode cards que Elementor no pinta */
.es-card--link,.es-card--areapractica{text-decoration:none}
.es-badge-inline{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#DFC385;background:rgba(201,166,92,.1);border:1px solid rgba(201,166,92,.25);border-radius:4px;padding:.2rem .65rem;margin-bottom:.5rem}
.es-arrow{color:#C9A65C;font-weight:700}
.es-area-icon{display:inline-flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem;border-radius:6px;background:rgba(201,166,92,.1);color:#C9A65C;margin-bottom:.6rem}
.es-area-icon .dashicons{font-size:24px;width:24px;height:24px}
.es-area-icon--lg{width:3.4rem;height:3.4rem}
.es-services{margin:1rem 0;padding:.8rem 1rem;background:rgba(5,11,20,.4);border-radius:4px;list-style:none}
.es-services li{display:flex;gap:.5rem;font-size:.84rem;color:#cbd5e1;margin-bottom:.35rem}
.es-services li .dashicons{color:#C9A65C;font-size:15px;width:15px;height:15px}
.es-socio{display:flex;gap:1.2rem;align-items:flex-start;background:#0d1b2e;border:1px solid rgba(201,166,92,.16);border-radius:8px;padding:1.5rem}
.es-socio-photo{flex-shrink:0;width:110px;height:130px;border-radius:6px;background-size:cover;background-position:center;background-color:#050b14;border:1px solid rgba(201,166,92,.35);display:block}
.es-socio-cred{font-size:.88rem;color:#94a3b8;line-height:1.6}
.es-featured{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#0d1b2e;border:1px solid rgba(201,166,92,.16);border-radius:10px;overflow:hidden;text-decoration:none;margin-bottom:2rem}
.es-featured-media{display:block;min-height:280px;background-size:cover;background-position:center}
.es-featured-body{padding:2rem;display:flex;flex-direction:column;gap:.7rem}
.es-featured-title{font-family:Cinzel,Georgia,serif;color:#f8fafc;font-size:1.5rem;margin:0;line-height:1.3}
.es-comments{background:#0d1b2e;border:1px solid rgba(201,166,92,.16);border-radius:8px;padding:2rem;margin-top:2rem}
.es-comments-title{color:#DFC385;font-size:1.1rem}
.es-comment-list{list-style:none;margin:0 0 1.5rem;padding:0}
.es-comment-list li{border-bottom:1px solid rgba(255,255,255,.07);padding:1rem 0;color:#cbd5e1}
.es-single-wrap--page{max-width:860px;margin:0 auto;padding:1rem 0 3rem}
@media(max-width:1024px){.es-footer-grid{grid-template-columns:1fr 1fr}.es-featured{grid-template-columns:1fr}}
@media(max-width:860px){.es-header-nav{display:none}.es-nav-toggle{display:flex}.es-header-cta .es-btn-nav{display:none}.es-mobile-nav .es-btn-nav{display:inline-block}}
@media(max-width:640px){.es-footer-grid{grid-template-columns:1fr}.es-socio{flex-direction:column}}

/* ============================================================
   Crédito de agencia — MetaMax Digital
   Requisito del desarrollador. No eliminar (se restaura solo).
   ============================================================ */
.mmx-credit{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:.5rem;
    margin:0;
    padding:.95rem 1rem .4rem;
    font-size:.82rem;
    line-height:1.5;
    text-align:center;
}
.mmx-credit__text{opacity:.7}
.mmx-credit__img{
    display:block;
    flex:0 0 auto;
    height:20px;
    width:auto;
    max-width:100%;
    object-fit:contain;
    transform-origin:center bottom;
    transition:transform .45s cubic-bezier(.34,1.56,.64,1),filter .3s ease;
}
/* El enlace no lleva borde: la línea que se dibujaba al pasar el ratón
   se eliminó. El !important gana a los estilos de enlaces del pie de
   cualquier tema que se pueda activar después. */
.mmx-credit__link{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    color:inherit;
    text-decoration:none!important;
    font-weight:600;
    border:0!important;
    transition:opacity .25s ease;
}
.mmx-credit__link:hover,.mmx-credit__link:focus-visible{opacity:.92}
/* Al pasar el ratón el icono da un pequeño salto con rebote, gira y
   levanta un halo de sombra. transform-origin en la base hace que se
   impulse desde el suelo en vez de escalar desde el centro. */
.mmx-credit__link:hover .mmx-credit__img,
.mmx-credit__link:focus-visible .mmx-credit__img{
    transform:translateY(-3px) rotate(-7deg) scale(1.22);
    filter:drop-shadow(0 4px 7px rgba(30,64,175,.32));
}
.mmx-credit__link:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:480px){
    .mmx-credit{font-size:.78rem;gap:.35rem;padding:.8rem .75rem .3rem}
    .mmx-credit__img{height:18px}
}
@media(prefers-reduced-motion:reduce){
    .mmx-credit__img,.mmx-credit__link{transition:none}
}
