/* ===== Everbyte · estilos compartidos (nav, footer, widget NEXO, responsive) ===== */
:root{
  --ev-teal:#025c68; --ev-cyan:#00869d; --ev-gold:#fab718;
  --ev-cyan-light:#3fc6d6; --ev-ink:#0c2a30; --ev-bg:#f4f8f8;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--ev-bg);font-family:'IBM Plex Sans',system-ui,sans-serif;color:var(--ev-ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;}

/* ---------- NAV ---------- */
.ev-nav{position:sticky;top:0;z-index:60;background:rgba(244,248,248,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid #dde9ea;font-family:'IBM Plex Sans',system-ui,sans-serif;}
.ev-nav-inner{max-width:1200px;margin:0 auto;padding:13px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.ev-brand img{height:40px;display:block;}
.ev-links{display:flex;align-items:center;gap:30px;}
.ev-links>a{text-decoration:none;font-size:15px;font-weight:500;color:#52707a;transition:color .15s;}
.ev-links>a:hover{color:var(--ev-teal);}
.ev-cta-nav{font-family:'Poppins';font-weight:600;font-size:14.5px;color:#fff!important;background:var(--ev-teal);padding:11px 22px;border-radius:9px;box-shadow:0 8px 20px -9px rgba(2,92,104,.8);}
.ev-cta-nav:hover{color:#fff!important;background:#03707e;}
.ev-serv{position:relative;}
.ev-serv-trigger{text-decoration:none;font-size:15px;font-weight:500;display:flex;align-items:center;gap:6px;cursor:pointer;transition:color .15s;}
.ev-serv-trigger:hover{color:var(--ev-teal);}
.ev-caret{font-size:9px;opacity:.7;}
.ev-drop{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:12px;z-index:80;opacity:0;visibility:hidden;transition:opacity .16s;}
.ev-serv:hover .ev-drop{opacity:1;visibility:visible;}
.ev-drop-card{width:340px;background:#fff;border:1px solid #e3eced;border-radius:14px;box-shadow:0 26px 54px -22px rgba(2,45,52,.4);padding:8px;display:flex;flex-direction:column;}
.ev-drop-item{text-decoration:none;color:var(--ev-ink);font-size:14px;line-height:1.35;padding:11px 14px;border-radius:9px;transition:background .15s,color .15s;}
.ev-drop-item:hover{background:#eef6f6;color:var(--ev-teal);}
.ev-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.ev-burger span{width:24px;height:2px;background:var(--ev-teal);border-radius:2px;display:block;}

/* ---------- FOOTER ---------- */
.ev-footer{background:#021e24;color:#9fbcc0;font-family:'IBM Plex Sans',system-ui,sans-serif;}
.ev-footer-grid{max-width:1200px;margin:0 auto;padding:60px 32px 40px;display:grid;grid-template-columns:1.5fr 1fr 1.1fr;gap:48px;}
.ev-foot-logo{height:36px;display:block;}
.ev-foot-desc{margin:20px 0 0;max-width:320px;font-size:14.5px;line-height:1.65;color:#83a4a9;}
.ev-social{display:flex;gap:10px;margin-top:24px;}
.ev-social a{text-decoration:none;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono';font-size:13px;color:#cfe0e1;transition:background .15s;}
.ev-social a:hover{background:rgba(255,255,255,.14);}
.ev-foot-h{font-family:'Poppins';font-weight:600;font-size:14px;letter-spacing:.04em;color:#fff;margin:0 0 18px;}
.ev-foot-col{display:flex;flex-direction:column;gap:12px;}
.ev-foot-link{text-decoration:none;color:#9fbcc0;font-size:14px;line-height:1.4;transition:color .15s;}
.ev-foot-link:hover{color:var(--ev-gold);}
.ev-foot-contact{text-decoration:none;color:#cfe0e1;font-size:14.5px;display:flex;align-items:center;gap:10px;}
.ev-ic{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono';font-size:14px;flex-shrink:0;}
.ev-ic-gold{background:rgba(250,183,24,.16);color:var(--ev-gold);}
.ev-ic-cyan{background:rgba(0,134,157,.18);color:var(--ev-cyan-light);}
.ev-foot-bottom{border-top:1px solid rgba(255,255,255,.08);}
.ev-foot-bottom-inner{max-width:1200px;margin:0 auto;padding:20px 32px;font-family:'IBM Plex Mono';font-size:12.5px;color:#5f7e83;}

/* ---------- WIDGET NEXO ---------- */
.ev-nexo{position:fixed;right:24px;bottom:24px;z-index:90;font-family:'IBM Plex Sans',system-ui,sans-serif;}
.ev-nexo-fab{display:flex;align-items:center;gap:10px;border:none;cursor:pointer;background:var(--ev-teal);color:#fff;padding:13px 20px 13px 16px;border-radius:30px;box-shadow:0 16px 34px -12px rgba(2,92,104,.75);font-family:'Poppins';font-weight:600;font-size:15px;transition:transform .18s,background .18s;}
.ev-nexo-fab:hover{transform:translateY(-2px);background:#03707e;}
.ev-nexo-fab-ic{font-size:18px;line-height:1;}
.ev-nexo-panel{position:absolute;right:0;bottom:64px;width:390px;max-width:calc(100vw - 32px);height:600px;max-height:calc(100vh - 120px);background:#fff;border:1px solid #d7e6e7;border-radius:18px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(2,30,36,.55);display:flex;flex-direction:column;}
/* El display:flex de arriba anula el atributo [hidden]; esta regla (más específica) lo restaura para que el panel quede oculto hasta abrirlo. */
.ev-nexo-panel[hidden]{display:none;}
.ev-nexo-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(150deg,#025c68,#02333b);color:#fff;}
.ev-nexo-id{display:flex;align-items:center;gap:9px;font-family:'Poppins';font-weight:600;font-size:14.5px;}
.ev-nexo-dot{width:9px;height:9px;border-radius:50%;background:var(--ev-cyan-light);box-shadow:0 0 10px var(--ev-cyan-light);animation:ev-pulse 1.6s ease-in-out infinite;}
.ev-nexo-close{background:rgba(255,255,255,.12);border:none;color:#fff;width:28px;height:28px;border-radius:8px;cursor:pointer;font-size:13px;}
.ev-nexo-close:hover{background:rgba(255,255,255,.22);}
.ev-nexo-frame{border:none;width:100%;flex:1;background:#fff;}
.ev-nexo.ev-open .ev-nexo-fab-txt{display:none;}

@keyframes ev-pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.3;transform:scale(.8);}}
@keyframes ev-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-12px);}}
@keyframes ev-bar{0%,100%{height:30%;}50%{height:90%;}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:980px){
  .ev-hero-grid{grid-template-columns:1fr!important;gap:40px!important;}
  .ev-2col{grid-template-columns:1fr!important;gap:40px!important;}
  .ev-cards-3{grid-template-columns:repeat(2,1fr)!important;}
  .ev-cycle-5{grid-template-columns:repeat(2,1fr)!important;}
  .ev-cap-4{grid-template-columns:repeat(2,1fr)!important;}
  .ev-footer-grid{grid-template-columns:1fr 1fr!important;gap:32px!important;}
}
@media (max-width:860px){
  .ev-burger{display:flex;}
  .ev-links{position:absolute;top:66px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid #dde9ea;padding:8px 16px 16px;box-shadow:0 24px 40px -24px rgba(2,45,52,.4);display:none;}
  .ev-links.ev-show{display:flex;}
  .ev-links>a{padding:13px 8px;border-bottom:1px solid #eef4f4;}
  .ev-cta-nav{margin-top:10px;text-align:center;}
  .ev-serv{order:1;}
  .ev-drop{position:static;transform:none;padding-top:0;opacity:1;visibility:visible;display:none;}
  .ev-serv.ev-drop-open .ev-drop{display:block;}
  .ev-drop-card{width:100%;box-shadow:none;border:none;padding:0 0 8px;}
  .ev-serv-trigger{padding:13px 8px;justify-content:space-between;}
}
@media (max-width:680px){
  .ev-cards-3,.ev-cycle-5,.ev-cap-4,.ev-footer-grid{grid-template-columns:1fr!important;}
  .ev-h1{font-size:38px!important;}
  .ev-stats{flex-wrap:wrap;gap:24px!important;}
  .ev-nexo-fab-txt{display:none;}
  .ev-nexo-fab{padding:14px;}
}

/* ---------- FAQ acordeón ---------- */
.ev-faq-a{display:none;}
.ev-faq-item.ev-faq-open .ev-faq-a{display:block;}
/* ---------- Hover tarjetas de servicio ---------- */
.ev-svc-card:hover{transform:translateY(-6px);box-shadow:0 26px 50px -28px rgba(2,45,52,.4);border-color:#bfdfe2;}

/* ---------- NEXO acciones cabecera ---------- */
.ev-nexo-actions{display:flex;align-items:center;gap:8px;}
.ev-nexo-ext{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.12);color:#fff;text-decoration:none;font-size:14px;}
.ev-nexo-ext:hover{background:rgba(255,255,255,.22);}

/* ---------- Identidad NEXO (avatar) ---------- */
.ev-nexo-fab-ic{width:28px;height:28px;border-radius:50%;display:block;flex-shrink:0;}
.ev-nexo-avatar{width:26px;height:26px;border-radius:50%;display:block;}
.ev-nexo-id{display:flex;align-items:center;gap:9px;font-family:'Poppins';font-weight:600;font-size:14.5px;}
