/* Mobile-only header/sidebar and footer refinements. Desktop is unchanged. */
@media(max-width:1080px){
 .header{z-index:1000!important}
 .ik-sidebar-backdrop[hidden],#mobile-menu[hidden]{display:none!important}
 .ik-sidebar-backdrop{position:fixed;inset:0;z-index:1100;background:rgba(9,4,26,.68);backdrop-filter:blur(4px)}
 #mobile-menu.mobile-menu{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:1101!important;width:min(365px,88vw)!important;max-width:88vw!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0 0 max(20px,env(safe-area-inset-bottom))!important;overflow-y:auto!important;overscroll-behavior:contain;background:linear-gradient(165deg,#281044 0%,#160b30 65%,#10091e 100%)!important;color:#fff!important;border:0!important;border-radius:22px 0 0 22px!important;box-shadow:-18px 0 50px rgba(0,0,0,.4)!important}
 #mobile-menu .ik-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.13)}
 #mobile-menu .ik-sidebar-head img{display:block;width:160px;max-height:68px;height:auto;object-fit:contain}
 #mobile-menu .ik-sidebar-close{width:42px;height:42px;flex:none;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:30px;line-height:1;cursor:pointer}
 #mobile-menu .ik-sidebar-links{display:flex;flex-direction:column;gap:3px;padding:18px 20px}
 #mobile-menu .ik-sidebar-links>a:not(.mobile-cta),#mobile-menu .mobile-nav-group>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:48px!important;padding:12px 13px!important;border-radius:10px!important;border-bottom:1px solid rgba(255,255,255,.1)!important;background:transparent!important;color:#f8f4ff!important;font-size:15px!important;font-weight:650!important;text-decoration:none!important}
 #mobile-menu .mobile-nav-group{background:transparent!important;border:0!important;color:#fff!important}
 #mobile-menu .mobile-nav-group a{color:#f7edff!important}
 #mobile-menu .mobile-nav-group>summary .mobile-nav-label{color:#fff!important;text-decoration:none!important}
 #mobile-menu .mobile-nav-group>a{display:block;padding:10px 20px!important;color:#e6d6f8!important;font-size:13px!important}
 #mobile-menu .ik-sidebar-links>a.mobile-cta{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;width:min(100%,270px)!important;min-height:48px!important;margin:24px auto 4px!important;padding:12px 18px!important;border-radius:13px!important;color:#fff!important}
 #mobile-menu .ik-sidebar-close:focus-visible,#mobile-menu a:focus-visible,#mobile-menu summary:focus-visible{outline:2px solid #ff8b42;outline-offset:3px}
}
@media(max-width:700px){
 footer.footer-reference .footer-main{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px!important;row-gap:28px!important}
 footer.footer-reference .footer-main>.footer-brand,footer.footer-reference .footer-main>.footer-contact{grid-column:1/-1!important}
 footer.footer-reference .footer-main>.footer-nav{grid-column:1!important}
 footer.footer-reference .footer-main>.footer-links{grid-column:2!important}
 footer.footer-reference .footer-main>.footer-nav,footer.footer-reference .footer-main>.footer-links{min-width:0!important}
 footer.footer-reference .footer-main>.footer-nav>a,footer.footer-reference .footer-main>.footer-links>a{font-size:12px!important;gap:7px!important}
 footer.footer-reference .footer-contact>a.footer-map{display:flex!important;align-items:center!important;justify-content:center!important;width:fit-content!important;max-width:100%!important;margin:22px auto 0!important;text-align:center!important}
 footer.footer-reference .footer-bottom{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;text-align:center!important}
 footer.footer-reference .footer-bottom>span{display:block!important;width:100%!important;text-align:center!important;line-height:1.6!important}
 footer.footer-reference .footer-bottom .footer-legal{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:100%!important;text-align:center!important;line-height:1.6!important}
}

/* Mobile sidebar v2: restrained gradient, fine contour accents, real topbar data. */
@media(max-width:1080px){
 #mobile-menu.mobile-menu{display:flex!important;flex-direction:column!important;background:radial-gradient(ellipse at 100% 0%,rgba(155,68,226,.26),transparent 48%),radial-gradient(ellipse at 0% 85%,rgba(97,32,157,.24),transparent 58%),linear-gradient(160deg,#281143 0%,#170b30 52%,#0d071d 100%)!important}
 #mobile-menu.mobile-menu[hidden]{display:none!important}
 #mobile-menu.mobile-menu::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background:repeating-radial-gradient(ellipse 220px 145px at 110% -10%,transparent 0 25px,rgba(196,143,247,.35) 26px,transparent 27px,transparent 46px),repeating-radial-gradient(ellipse 200px 130px at -25% 110%,transparent 0 30px,rgba(196,143,247,.22) 31px,transparent 32px,transparent 54px);mask-image:linear-gradient(#000,transparent 75%)}
 #mobile-menu .ik-sidebar-head,#mobile-menu .ik-sidebar-links,#mobile-menu .ik-sidebar-meta,#mobile-menu .ik-sidebar-quote{position:relative;z-index:1}
 #mobile-menu .ik-sidebar-links{flex:0 0 auto!important}
 #mobile-menu .ik-sidebar-meta{margin-top:auto;padding:20px 22px 8px;border-top:1px solid rgba(222,174,255,.17)}
 #mobile-menu .ik-sidebar-contact{display:flex;flex-direction:column;gap:12px}
 #mobile-menu .ik-sidebar-contact .topbar-contact-link{display:flex!important;align-items:center;gap:12px;min-width:0;text-decoration:none;color:#e8ddf6!important;background:none!important;box-shadow:none!important;padding:0!important}
 #mobile-menu .ik-sidebar-contact .topbar-contact-link>svg{display:block!important;flex:none;width:20px;height:20px;color:#ff963e}
 #mobile-menu .ik-sidebar-contact .topbar-contact-copy{display:flex!important;flex-direction:column;gap:2px;min-width:0}
 #mobile-menu .ik-sidebar-contact .topbar-contact-copy strong{font-size:12px;font-weight:650;overflow-wrap:anywhere;color:#fff}
 #mobile-menu .ik-sidebar-contact .topbar-contact-copy small{font-size:11px;color:#bdb0d0}
 #mobile-menu .ik-sidebar-social-title{font-size:11px;letter-spacing:.06em;font-weight:750;color:#d3b5ed;margin:18px 0 9px}
 #mobile-menu .ik-sidebar-social{display:flex!important;flex-wrap:wrap;align-items:center;gap:12px}
 #mobile-menu .ik-sidebar-social .topbar-social-link{display:inline-flex!important;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid rgba(218,163,250,.2);border-radius:10px;background:rgba(255,255,255,.055);color:#f5eafa!important;position:relative}
 #mobile-menu .ik-sidebar-social .topbar-social-link>svg{display:block!important;width:18px;height:18px;position:relative;z-index:2}
 #mobile-menu .ik-sidebar-social .social-cube,#mobile-menu .ik-sidebar-social .social-cube-zone{display:none!important}
 #mobile-menu>a.ik-sidebar-quote{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;flex:none!important;min-height:48px!important;width:calc(100% - 44px)!important;margin:14px 22px max(22px,env(safe-area-inset-bottom))!important;padding:12px 15px!important;border-radius:14px!important;background:linear-gradient(110deg,#ff9734,#ff641c)!important;color:#fff!important;font-size:13px!important;font-weight:750!important;box-shadow:0 8px 22px rgba(255,108,35,.2)!important;text-decoration:none!important}
}
@media(max-width:700px){
 #contacto.contact-cta .cta-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important}
 #contacto.contact-cta .cta-actions{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;margin:52px auto 0!important;transform:none!important;text-align:center!important}
 #contacto.contact-cta .cta-actions .btn-primary{margin:0 auto!important;flex:0 0 auto!important;max-width:calc(100vw - 36px)!important}
 #contacto.contact-cta .cta-actions .btn-primary::before{left:50%!important;transform:translateX(-50%)!important}
}

/* Sidebar v3: restore full contact details, align socials, and refine navigation. */
@media(max-width:1080px){
 #mobile-menu .ik-sidebar-meta{width:100%!important;box-sizing:border-box!important;overflow:visible!important}
 #mobile-menu .ik-sidebar-contact{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;max-width:none!important;gap:13px!important;overflow:visible!important}
 #mobile-menu .ik-sidebar-contact>a.topbar-contact-link{display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;align-items:start!important;column-gap:12px!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:38px!important;overflow:visible!important;white-space:normal!important;opacity:1!important;visibility:visible!important;line-height:1.4!important}
 #mobile-menu .ik-sidebar-contact>a.topbar-contact-link>svg{display:block!important;position:static!important;grid-column:1!important;margin:2px 0 0!important;max-width:22px!important;max-height:22px!important;transform:none!important}
 #mobile-menu .ik-sidebar-contact>a.topbar-contact-link>.topbar-contact-copy{display:flex!important;grid-column:2!important;flex-direction:column!important;align-items:flex-start!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;overflow:visible!important;white-space:normal!important;opacity:1!important;visibility:visible!important}
 #mobile-menu .ik-sidebar-contact .topbar-contact-copy strong,#mobile-menu .ik-sidebar-contact .topbar-contact-copy small{display:block!important;width:100%!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;text-overflow:clip!important;overflow:visible!important;opacity:1!important;visibility:visible!important}
 #mobile-menu .ik-sidebar-social-title{text-align:center!important;margin-top:19px!important}
 #mobile-menu .ik-sidebar-social{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;gap:12px!important}
 #mobile-menu .ik-sidebar-links>a:not(.mobile-cta),#mobile-menu .mobile-nav-group>summary{gap:10px!important}
 #mobile-menu .ik-sidebar-links .ik-nav-icon{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 19px;width:19px;height:19px;color:#c69fe9}
 #mobile-menu .ik-sidebar-links .ik-nav-icon svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
 #mobile-menu .ik-sidebar-links>a:not(.mobile-cta)>span[data-es],#mobile-menu .mobile-nav-group>summary .mobile-nav-label{flex:1!important}
 #mobile-menu .mobile-nav-group>a{position:relative!important;display:flex!important;align-items:center!important;min-height:38px!important;margin:0 0 0 13px!important;padding:9px 10px 9px 24px!important;border:0!important;border-bottom:1px solid rgba(178,122,220,.21)!important;background:transparent!important;color:#e8d8f3!important;text-decoration:none!important;line-height:1.35!important}
 #mobile-menu .mobile-nav-group>a::before{content:""!important;display:block!important;position:absolute!important;left:7px!important;top:50%!important;transform:translateY(-50%)!important;width:6px!important;height:6px!important;border-radius:50%!important;background:#b57bdc!important;box-shadow:0 0 0 2px rgba(181,123,220,.12)!important}
 #mobile-menu .mobile-nav-group>a:last-child{border-bottom:0!important}
}

/* Sidebar v4: consistent spacing for expandable menu labels and lighter submenu text. */
@media(max-width:1080px){
 #mobile-menu .mobile-nav-group>summary{justify-content:flex-start!important;gap:10px!important}
 #mobile-menu .mobile-nav-group>summary>.mobile-nav-label{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;flex:1 1 auto!important;min-width:0!important}
 #mobile-menu .mobile-nav-group>summary>.mobile-nav-label>.ik-nav-icon{flex:0 0 19px!important;width:19px!important;margin:0!important}
 #mobile-menu .mobile-nav-group>summary>.mobile-nav-label>span[data-es]{flex:1 1 auto!important}
 #mobile-menu .mobile-nav-group>summary>.mobile-chevron{flex:none!important;margin-left:auto!important}
 #mobile-menu .mobile-nav-group>a{font-weight:400!important;font-size:12.5px!important;letter-spacing:.005em!important}
 #mobile-menu .mobile-nav-group>a>span{font-weight:400!important}
}

/* Mobile sidebar v5: understated animated cosmic background, behind content. */
@media(max-width:1080px){
 #mobile-menu.mobile-menu{isolation:isolate!important}
 #mobile-menu.mobile-menu::after{
  content:""!important;display:block!important;position:absolute!important;
  inset:-35% -60%!important;z-index:0!important;pointer-events:none!important;
  background-image:
   radial-gradient(1.2px 1.2px at 12% 16%,rgba(232,199,255,.75) 98%,transparent),
   radial-gradient(1px 1px at 31% 42%,rgba(255,206,168,.6) 98%,transparent),
   radial-gradient(1.5px 1.5px at 70% 23%,rgba(213,169,255,.65) 98%,transparent),
   radial-gradient(1px 1px at 86% 61%,rgba(228,195,255,.7) 98%,transparent),
   radial-gradient(1px 1px at 43% 79%,rgba(255,194,144,.45) 98%,transparent),
   radial-gradient(1.5px 1.5px at 92% 90%,rgba(218,179,255,.6) 98%,transparent),
   radial-gradient(ellipse at 66% 48%,rgba(134,63,197,.12),transparent 52%)!important;
  background-size:250px 320px,290px 380px,350px 400px,320px 360px,370px 450px,430px 500px,100% 100%!important;
  opacity:.58!important;
  animation:ikSidebarStardrift 32s ease-in-out infinite alternate!important;
  will-change:transform;
 }
 #mobile-menu .ik-sidebar-head,#mobile-menu .ik-sidebar-links,#mobile-menu .ik-sidebar-meta,#mobile-menu .ik-sidebar-quote{z-index:2!important}
}
@keyframes ikSidebarStardrift{from{transform:translate3d(-3%,2%,0) rotate(-2deg)}to{transform:translate3d(3%,-3%,0) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){#mobile-menu.mobile-menu::after{animation:none!important;will-change:auto!important}}

/* Sidebar v6: dark cosmic field with saturated nebulae and shooting stars. */
@media(max-width:1080px){
 #mobile-menu.mobile-menu{
  background:
   radial-gradient(ellipse 75% 42% at 110% 12%,rgba(104,15,163,.34),transparent 75%),
   radial-gradient(ellipse 80% 38% at -25% 82%,rgba(89,17,153,.27),transparent 80%),
   linear-gradient(165deg,#0d041c 0%,#110522 45%,#090315 100%)!important;
 }
 #mobile-menu.mobile-menu::before{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
   radial-gradient(1.8px 1.8px at 18% 9%,#e9bbff 98%,transparent),
   radial-gradient(1.3px 1.3px at 72% 15%,#fff 98%,transparent),
   radial-gradient(2px 2px at 40% 36%,#cb82ff 98%,transparent),
   radial-gradient(1.3px 1.3px at 86% 53%,#f5c8ff 98%,transparent),
   radial-gradient(1.5px 1.5px at 13% 71%,#ffd5b1 98%,transparent),
   radial-gradient(1.8px 1.8px at 65% 88%,#d6a1ff 98%,transparent),
   repeating-radial-gradient(ellipse 260px 180px at 110% -10%,transparent 0 32px,rgba(174,76,242,.18) 33px,transparent 34px,transparent 58px),
   repeating-radial-gradient(ellipse 270px 190px at -20% 105%,transparent 0 35px,rgba(199,61,220,.13) 36px,transparent 37px,transparent 64px)!important;
  background-size:260px 330px,320px 390px,370px 410px,300px 340px,390px 450px,450px 530px,100% 100%,100% 100%!important;
  opacity:.83!important;mask-image:none!important;animation:ikSidebarStardrift 22s ease-in-out infinite alternate!important;
 }
 #mobile-menu.mobile-menu::after{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
   linear-gradient(130deg,transparent 44%,rgba(255,134,191,.05) 47%,#ffd4fc 49%,#ff75d2 50%,rgba(146,40,250,.2) 53%,transparent 57%) 160% -30% / 115px 3px no-repeat,
   linear-gradient(130deg,transparent 44%,rgba(255,134,191,.05) 47%,#fff0ff 49%,#b961ff 50%,rgba(146,40,250,.2) 53%,transparent 57%) -40% 25% / 95px 3px no-repeat,
   linear-gradient(130deg,transparent 44%,rgba(255,160,85,.05) 47%,#ffe2bc 49%,#ff8742 50%,rgba(236,79,145,.2) 53%,transparent 57%) 150% 70% / 120px 3px no-repeat,
   radial-gradient(ellipse at 92% 20%,rgba(170,36,245,.15),transparent 55%)!important;
  opacity:1!important;
  animation:ikSidebarComets 8s linear infinite!important;
 }
}
@keyframes ikSidebarComets{
  0%{background-position:130% -15%, -30% 18%,130% 64%,center}
  100%{background-position:-30% 40%, 130% 70%,-30% 110%,center}
}
@media(prefers-reduced-motion:reduce){
 #mobile-menu.mobile-menu::before,#mobile-menu.mobile-menu::after{animation:none!important}
}
