/* Header Base */
.ib-header-fixed-mobile{position:fixed;top:0;left:0;right:0;z-index:9999;background:rgba(255,255,255,.98);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 2px 12px rgba(0,0,0,.06);transition:background .3s ease,box-shadow .3s ease;padding:.5rem 0}
.ib-header-fixed-mobile .navbar{padding:.5rem 0;min-height:50px}

/* Logo */
.ib-brand{display:flex;align-items:center;text-decoration:none!important}
.ib-logo{height:35px;width:auto;transition:transform .3s ease}
.ib-brand:hover .ib-logo{transform:scale(1.05)}

/* Desktop Navigation */
.ib-desktop-nav .ib-nav-menu{align-items:center}
.ib-nav-item{position:relative;margin:0 .25rem}
.ib-nav-link{color:#374151!important;font-weight:500;padding:.5rem .75rem!important;border-radius:8px;transition:all .3s ease;text-decoration:none!important;position:relative;display:flex;align-items:center;font-size:.9rem}
.ib-nav-link:hover{color:#c2185b!important;background:rgba(233,30,99,.06)!important}
.ib-nav-item.active .ib-nav-link{color:#c2185b!important;font-weight:600}
.ib-nav-item.active .ib-nav-link::after{content:'';position:absolute;bottom:5px;left:50%;transform:translateX(-50%);width:20px;height:2px;background:#e91e63;border-radius:1px}

/* Services Dropdown */
.ib-dropdown-icon{margin-left:.5rem;font-size:.7rem;transition:transform .3s ease;font-style:normal}
.ib-services-dropdown:hover .ib-dropdown-icon{transform:rotate(180deg)}

/* Mega Dropdown — only Y animates; X stays -50% so it can't slide sideways */
.ib-mega-dropdown{position:absolute;top:100%;left:50%;width:900px;max-width:95vw;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.15);padding:2rem;margin-top:.5rem;opacity:0;visibility:hidden;transform:translate(-50%,-10px);transition:opacity .25s ease,transform .25s ease,visibility .25s;z-index:1000}
.ib-services-dropdown:hover .ib-mega-dropdown,.ib-services-dropdown:focus-within .ib-mega-dropdown{opacity:1;visibility:visible;transform:translate(-50%,0)}

.ib-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.ib-platform-card{background:#f9fafb;border-radius:8px;padding:1rem;transition:none;border:1px solid #e5e7eb}

.ib-platform-header{display:flex;align-items:center;gap:.5rem}
.ib-platform-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;overflow:hidden}
.ib-platform-icon img{width:100%;height:100%;object-fit:contain;display:block}
.ib-platform-name{font-size:.9rem;font-weight:600;color:#111827;margin:0;flex:1}
.ib-popular-badge{background:#fce7f3;color:#be185d;font-size:.65rem;padding:.15rem .4rem;border-radius:10px;font-weight:500}

.ib-services-list{display:flex;flex-direction:column;gap:.25rem;margin-top:.75rem;}
.ib-service-link{display:flex;align-items:center;justify-content:space-between;padding:.4rem .6rem;color:#6b7280;text-decoration:none;border-radius:4px;transition:background-color .12s ease,color .12s ease;font-size:.8rem;background:#fff}
.ib-service-link:hover{background:#e91e63!important;color:#fff!important;text-decoration:none!important}

.ib-arrow{opacity:0;transition:opacity .2s ease;font-style:normal}
.ib-service-link:hover .ib-arrow{opacity:1}

.ib-service-slug{text-decoration:none;color:inherit;display:block;transition:all 0.3s ease;border-radius:8px;padding:5px;}.ib-service-slug:hover{background-color:rgb(0 123 255 / .05);transform:translateY(-2px);box-shadow:0 4px 12px rgb(0 0 0 / .1);color:inherit;text-decoration:none}.ib-service-slug:focus{outline:2px solid #007bff;outline-offset:2px}.ib-service-slug:active{transform:translateY(0)}.ib-service-slug{border:1px solid #fff0}.ib-service-slug:hover{border-color:rgb(0 123 255 / .2)}.ib-service-slug .ib-popular-badge{pointer-events:none}

/* Highlighted Automatic services block (added to mirror pergo theme) */
.ib-mega-highlight{margin-top:1.5rem;padding:1.1rem 1.25rem 1.2rem;background:#fafafa;border:1px solid #e5e7eb;border-radius:14px}
.ib-mega-highlight-head{margin:0 0 .85rem}
.ib-mega-highlight-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#e61c72;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.45rem}
.ib-mega-highlight-head h5{font-size:1.02rem;font-weight:700;color:#1f2937;margin:0 0 .22rem;letter-spacing:-.01em;line-height:1.25}
.ib-mega-highlight-head p{font-size:.83rem;color:#6b7280;margin:0;line-height:1.45}
.ib-mega-highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ib-mega-highlight-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid rgba(230,28,114,.18);border-radius:12px;text-decoration:none!important;color:#1f2937;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.ib-mega-highlight-card:hover{transform:translateY(-2px);border-color:#e61c72;box-shadow:0 6px 18px rgba(230,28,114,.14);color:#1f2937;text-decoration:none!important}
.ib-mega-highlight-icon{flex-shrink:0;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#e61c72,#ff4d94);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(230,28,114,.28)}
.ib-mega-highlight-text{flex:1;min-width:0;line-height:1.3}
.ib-mega-highlight-text strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.92rem;font-weight:700;color:#1f2937;margin:0 0 2px}
.ib-mega-highlight-text span{display:block;font-size:.78rem;color:#6b7280}
.ib-mega-highlight-pill{background:rgba(16,185,129,.12);color:#059669;font-size:.6rem;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 7px;border-radius:999px;line-height:1.3}
.ib-mega-highlight-arrow{color:#e61c72;font-weight:700;font-size:1.1rem;transition:transform .18s ease}
.ib-mega-highlight-card:hover .ib-mega-highlight-arrow{transform:translateX(3px)}
@media (max-width:960px){.ib-mega-highlight-grid{grid-template-columns:1fr}}

/* Mega Footer */
.ib-mega-footer{border-top:1px solid #e5e7eb;padding-top:1.5rem;margin-top:1.5rem}
.ib-footer-content{display:flex;align-items:center;justify-content:space-between}
.ib-footer-text h5{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .25rem 0}
.ib-footer-text p{color:#6b7280;margin:0;font-size:.85rem}
.ib-footer-buttons{display:flex;gap:.5rem}
.ib-btn-contact,.ib-btn-all{padding:.5rem 1rem;border-radius:6px;text-decoration:none;font-size:.8rem;font-weight:500;transition:all .3s ease}
.ib-btn-contact{background:#e91e63;color:#fff}
.ib-btn-contact:hover{background:#c2185b;color:#fff;text-decoration:none}
.ib-btn-all{background:#f3f4f6;color:#374151}
.ib-btn-all:hover{background:#e5e7eb;color:#111827;text-decoration:none}

/* CTA Button */
.ib-cta-item{margin-left:1rem}
.ib-cta-btn{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff!important;padding:.5rem 1.25rem;border-radius:20px;text-decoration:none!important;font-weight:600;font-size:.85rem;transition:all .3s ease;display:inline-block;box-shadow:0 4px 15px rgba(233,30,99,.3);will-change:transform}
.ib-cta-btn:hover{color:#fff!important;text-decoration:none!important;transform:translateY(-2px);box-shadow:0 6px 20px rgba(233,30,99,.4)}

/* Mobile Toggle */
.ib-mobile-toggler{display:none;border:none!important;padding:.5rem;background:none!important;outline:none!important;box-shadow:none!important}
.ib-hamburger{display:flex;flex-direction:column;justify-content:center;align-items:center;width:30px;height:30px}
.ib-line{display:block;width:25px;height:3px;background:#e91e63;margin:2px 0;border-radius:2px;transition:transform .3s ease,opacity .3s ease}
.ib-mobile-toggler.active .ib-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.ib-mobile-toggler.active .ib-line:nth-child(2){opacity:0}
.ib-mobile-toggler.active .ib-line:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}

/* Mobile Menu */
.ib-mobile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;will-change:opacity}
.ib-mobile-overlay.active{opacity:1;visibility:visible}

.ib-mobile-menu{position:fixed;top:0;right:0;width:320px;max-width:85vw;height:100vh;background:#fff;z-index:9999;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);will-change:transform;overflow-y:auto;-webkit-overflow-scrolling:touch;contain:layout style}
.ib-mobile-menu.active{transform:translateX(0)}

/* Mobile Header - POSICIÓN CORREGIDA */
.ib-mobile-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:1.5rem;
  border-bottom:1px solid #e5e7eb;
  background:#fff;
  position:sticky;
  top:0;
  z-index:10;
  box-shadow:0 2px 4px rgba(0,0,0,.05);
  min-height:80px;
}

.ib-mobile-logo{
  flex:1;
  display:flex;
  justify-content:flex-start;
  align-items:center;
}

.ib-mobile-logo img{
  height:45px!important;
  width:auto!important;
  max-width:180px!important;
  object-fit:contain!important;
  display:block!important;
  image-rendering:-webkit-optimize-contrast!important;
  image-rendering:crisp-edges!important;
}

/* Botón Cerrar - DISEÑO MEJORADO */
.ib-mobile-close{
  background:none!important;
  border:none;
  color:#6b7280;
  cursor:pointer;
  padding:0;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:0;
  transition:color .2s ease,transform .2s ease;
  margin-left:1rem;
  flex-shrink:0;
}

.ib-mobile-close:hover{
  background:none!important;
  color:#e91e63;
  transform:scale(1.1);
}

.ib-mobile-close:active{
  transform:scale(0.95);
}

.ib-mobile-close svg{
  width:20px;
  height:20px;
}

/* Mobile Content */
.ib-mobile-content{padding:1.5rem}
.ib-mobile-nav-section{margin-bottom:2rem}
.ib-mobile-nav-list{list-style:none;padding:0;margin:0}
.ib-mobile-nav-item{margin-bottom:.5rem}
.ib-mobile-nav-link{display:flex;align-items:center;padding:1rem;color:#374151;text-decoration:none;border-radius:8px;transition:color .2s ease,background-color .2s ease;font-weight:500}
.ib-mobile-nav-link:hover{background:#f3f4f6;color:#e91e63;text-decoration:none}
.ib-mobile-nav-item.active .ib-mobile-nav-link{background:#fce7f3;color:#e91e63;font-weight:600}
.ib-nav-icon{font-size:1.2rem;margin-right:.75rem;width:24px;text-align:center}

/* Mobile Services - SIN botón cerrar flotante */
.ib-mobile-services-section{margin-bottom:2rem;position:relative}
.ib-section-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;position:relative}
.ib-section-header h3{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .5rem 0}
.ib-section-header p{color:#6b7280;margin:0;font-size:.9rem}

.ib-mobile-platform{margin-bottom:.75rem;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:none}
.ib-mobile-platform-header{display:flex;align-items:center;padding:1rem;background:#f9fafb;cursor:pointer;transition:none}
.ib-mobile-platform-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;margin-right:.75rem}
.ib-mobile-platform-icon img{width:100%;height:100%;object-fit:contain;display:block}
.ib-mobile-platform-info{flex:1}
.ib-mobile-platform-name{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .25rem 0}
.ib-mobile-popular{background:#fce7f3;color:#be185d;font-size:.7rem;padding:.2rem .5rem;border-radius:12px;font-weight:500}
.ib-mobile-expand-btn{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:50%;transition:color .2s ease,background-color .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.ib-mobile-expand-btn:hover{background:#e5e7eb;color:#e91e63}
.ib-expand-icon{transition:transform .3s ease;will-change:transform}
.ib-mobile-platform.expanded .ib-expand-icon{transform:rotate(45deg)}

/* Mobile Services Dropdown */
.ib-mobile-services-dropdown{max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1);background:#fff;contain:content}
.ib-mobile-platform.expanded .ib-mobile-services-dropdown{max-height:500px;padding:.5rem 0}
.ib-mobile-service-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;color:#6b7280;text-decoration:none;transition:color .2s ease,background-color .2s ease;border-bottom:1px solid #f3f4f6}
.ib-mobile-service-item:last-child{border-bottom:none}
.ib-mobile-service-item:hover{background:#f9fafb;color:#e91e63;text-decoration:none}
.ib-service-arrow{opacity:0;transition:opacity .3s ease;font-style:normal}
.ib-mobile-service-item:hover .ib-service-arrow{opacity:1}

/* Mobile CTA */
.ib-mobile-cta-section{padding-top:1.5rem}
.ib-mobile-cta-btn{display:flex;align-items:center;width:100%;padding:1rem;background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff !important;text-decoration:none !important;border-radius:12px;transition:transform .2s ease;box-shadow:0 4px 15px rgba(233,30,99,.3)}
.ib-mobile-cta-btn:hover{color:#fff !important;text-decoration:none !important;transform:translateY(-2px)}
.ib-cta-icon{font-size:1.5rem;margin-right:1rem}
.ib-cta-text strong{display:block;font-size:1.1rem;font-weight:600}
.ib-cta-text small{display:block;opacity:.9;font-size:.85rem}

/* Responsive */
@media (max-width:991.98px){
.ib-desktop-nav{display:none!important}
.ib-mobile-toggler{display:block}
.ib-brand{position:absolute!important;left:50%!important;transform:translateX(-50%)!important;z-index:10!important}
.navbar-brand{position:absolute!important;left:50%!important;transform:translateX(-50%)!important;z-index:10!important}
.ib-mobile-toggler{margin-left:auto;z-index:11}
/* Offset body so the fixed navbar (~66px: .5rem+.5rem+50px min-height)
   doesn't overlap page content on mobile. Internal pages only. */
body{padding-top:66px}
}
@media (min-width:992px){
.ib-mobile-toggler{display:none}
.ib-mobile-overlay,.ib-mobile-menu{display:none!important}
}
@media (max-width:576px){
.ib-header-fixed-mobile .navbar{padding:.5rem 0}
.ib-logo{height:35px}
.ib-mobile-menu{width:100%;max-width:100%}
.ib-mobile-content{padding:1rem}
.ib-footer-content{flex-direction:column;text-align:center;gap:1rem}
.ib-footer-buttons{justify-content:center}
.ib-mobile-header{padding:1rem 1.5rem}
.ib-mobile-logo img{height:40px!important}
}

/* Scroll Effects */
.ib-header-fixed-mobile.scrolled{background:rgba(255,255,255,.99);box-shadow:0 2px 30px rgba(0,0,0,.15)}

/* Performance optimizations */
*{box-sizing:border-box}
.ib-header-fixed-mobile *{will-change:auto}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ====== Packs nav link (desktop) ====== */
.ib-packs-link{position:relative;display:inline-flex !important;align-items:center;gap:6px}
.ib-nav-badge{display:inline-block;background:linear-gradient(135deg,#e61c72,#ff4d94);color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 7px;border-radius:10px;line-height:1.2;box-shadow:0 2px 6px rgba(230,28,114,.3);vertical-align:middle}

/* ====== Packs banner (mobile menu) ====== */
.ib-mobile-packs-banner{display:flex;align-items:center;gap:12px;width:100%;margin-bottom:12px;padding:14px 16px;background:linear-gradient(135deg,#e61c72 0%,#ff4d94 100%);border-radius:12px;color:#fff !important;text-decoration:none !important;box-shadow:0 6px 18px rgba(230,28,114,.28);transition:transform .15s ease, box-shadow .15s ease}
.ib-mobile-packs-banner:hover,.ib-mobile-packs-banner:active{transform:translateY(-1px);box-shadow:0 10px 24px rgba(230,28,114,.36);color:#fff !important;text-decoration:none !important}
.ib-mobile-packs-banner.active{outline:3px solid rgba(255,255,255,.45);outline-offset:2px}
.ib-mobile-packs-banner__icon{font-size:22px;line-height:1;flex-shrink:0}
.ib-mobile-packs-banner__text{flex:1;display:flex;flex-direction:column;line-height:1.25;min-width:0}
.ib-mobile-packs-banner__text strong{font-size:15px;font-weight:700}
.ib-mobile-packs-banner__text small{font-size:12px;opacity:.92;font-weight:500}
.ib-mobile-packs-banner__badge{background:#fff;color:#c9156e;font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:4px 10px;border-radius:50px;flex-shrink:0;box-shadow:0 2px 6px rgba(0,0,0,.12)}
