/* NubeGuard: ajustes mínimos sobre Hostinza */
.xs-logo img, .footer-logo img { height: 46px; width: auto; }
.xs-top-bar-info .fa-whatsapp { margin-right: 6px; }
.xs-menu-tools .ng-header-btn { padding: 10px 22px; line-height: 1.2; font-size: 14px; margin-left: 10px; }
.xs-menu-tools .ng-header-btn:before { display:none; }
.pricing-price h2.ng-price-text { font-size: 34px; line-height: 1.4; }
.ng-pay li i { font-size: 34px; color: rgba(255,255,255,.75); }
.social-list .ng-svg svg { vertical-align: middle; }
.ng-wa-float { position: fixed; right: 22px; bottom: 90px; width: 54px; height: 54px; border-radius: 50%; background: #25D366; color: #fff !important;
  display: flex; align-items: center; justify-content: center; font-size: 30px; box-shadow: 0 6px 18px rgba(0,0,0,.2); z-index: 999; }
.xs-single-pricing .pricing-body > p { min-height: 60px; }
.ng-note { text-align: center; color: #6b7b93; font-size: 14px; margin: 30px 0 0; }
.pricing-matrix .pricing-price .ng-per { margin: -4px 0 14px; font-size: 14px; font-weight: 500; }
.xs-table th .ng-tld { font-family: Rubik, sans-serif; font-weight: 700; font-size: 21px; line-height: 20px; display: inline-block; color: #1a3fe0; }
.xs-table th, .xs-table td { vertical-align: middle !important; }
#planes.pt-0 { padding-top: 40px !important; }

/* Páginas de texto, gaming y Libro de Reclamaciones */
.terms-wraper .order-list li a, .ng-note a { color: #1062fe; }
.ng-cta { margin-top: 30px; }
.ng-cta p { font-size: 18px; margin-bottom: 25px; }
.ng-lr-box { background: #fff; border-radius: 6px; box-shadow: 0 10px 30px rgba(17, 22, 85, .08); padding: 40px; }
.ng-lr-head { display: flex; justify-content: space-between; gap: 20px; border-bottom: 1px solid #e6e8f2; padding-bottom: 20px; margin-bottom: 25px; line-height: 1.7; }
.ng-lr-num { text-align: right; }
.ng-lr-form h4.xs-title { font-size: 18px; margin: 25px 0 15px; color: #0c1066; }
.ng-lr-form label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 6px; color: #333; }
.ng-lr-form .form-control { margin-bottom: 15px; height: 46px; border: 1px solid #dde0ee; border-radius: 4px; padding: 0 14px; font-size: 15px; }
.ng-lr-form textarea.form-control { height: auto; padding: 12px 14px; }
.ng-lr-form label.ng-check { font-weight: 400; display: flex; gap: 10px; align-items: flex-start; margin-bottom: 12px; }
.ng-lr-form label.ng-check input { margin-top: 4px; flex: none; }
.ng-lr-form .xs-btn-wraper { margin-top: 15px; }
.ng-lr-msg { margin: 15px 0 0; font-weight: 500; }
.ng-lr-msg.is-ok { color: #1a7f37; }
.ng-lr-msg.is-error { color: #c62828; }
.ng-lr-legal { margin-top: 25px; padding-top: 20px; border-top: 1px solid #e6e8f2; font-size: 13px; color: #555; }
.ng-lr-legal p { margin-bottom: 6px; }
@media (max-width: 767px) {
  .ng-lr-box { padding: 22px; }
  .ng-lr-head { flex-direction: column; }
  .ng-lr-num { text-align: left; }
}

/* Pie de página: franja de ayuda, medios de pago y barra final */
.ng-help { display: flex; align-items: center; gap: 30px; margin-top: 0; padding: 45px 55px; border-radius: 18px; background: linear-gradient(120deg, #0c0f5c 0%, #1a2aa8 60%, #1062fe 100%); box-shadow: 0 20px 50px rgba(5, 8, 60, .35); position: relative; overflow: hidden; }
.ng-help::after { content: ""; position: absolute; right: -80px; top: -80px; width: 320px; height: 320px; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); }
.ng-help-text { flex: 1; position: relative; z-index: 1; }
.ng-help-text h3 { color: #fff; font-size: 30px; line-height: 1.3; font-weight: 600; margin-bottom: 22px; }
.ng-help-text h3 span { color: #4ee0ff; }
.ng-help-phone { display: inline-flex; align-items: center; gap: 14px; color: #fff; font-size: 38px; font-weight: 700; margin-bottom: 24px; }
.ng-help-phone:hover { color: #fff; }
.ng-help-phone .fa { width: 60px; height: 60px; border-radius: 50%; background: #25d366; display: inline-flex; align-items: center; justify-content: center; font-size: 30px; box-shadow: 0 0 0 8px rgba(37, 211, 102, .2); }
.ng-help-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.ng-help-actions .btn { background: #25d366; border-color: #25d366; }
.ng-help-badge { color: #fff; font-size: 14px; display: inline-flex; align-items: center; gap: 8px; }
.ng-flag { width: 22px; height: 15px; border-radius: 2px; background: linear-gradient(90deg, #d91023 33%, #fff 33%, #fff 66%, #d91023 66%); display: inline-block; }
.ng-help-img { flex: none; width: 260px; position: relative; z-index: 1; text-align: center; }
.ng-help-img img { max-width: 100%; background: #fff; border-radius: 50%; padding: 35px; }
.ng-paybar { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 30px; padding-bottom: 10px; }
.ng-paybar-label { color: rgba(255,255,255,.8); font-size: 14px; }
.ng-paybar ul { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.ng-paybar li { background: #fff; color: #0c1066; font-size: 13px; font-weight: 600; padding: 8px 16px; border-radius: 6px; display: inline-flex; align-items: center; gap: 6px; }
.ng-paybar li .fa { font-size: 20px; color: #1a2aa8; }
.ng-foot-logo { display: inline-block; margin-bottom: 18px; }
.ng-foot-about { color: rgba(255,255,255,.75); font-size: 14px; line-height: 1.7; }
.ng-foot-company { color: #fff; font-size: 14px; line-height: 1.7; margin-top: 12px; }
.ng-foot-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 15px; }
.ng-foot-bottom p { margin: 0; color: rgba(255,255,255,.75); font-size: 14px; }
.ng-lr-btn { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 14px; font-weight: 600; border: 1px solid rgba(255,255,255,.35); border-radius: 6px; padding: 8px 16px; }
.ng-lr-btn:hover { color: #fff; background: rgba(255,255,255,.1); }
@media (max-width: 991px) {
  .ng-help { flex-direction: column; text-align: center; padding: 35px 25px; }
  .ng-help-actions { justify-content: center; }
  .ng-help-img { width: 180px; }
  .ng-help-text h3 { font-size: 24px; }
  .ng-help-phone { font-size: 28px; }
  .ng-foot-bottom { justify-content: center; text-align: center; }
}
.footer-group > .container:first-child { padding-top: 90px; }
.xs-feature-section ~ .footer-group .ng-help { margin-top: 70px; }
.ng-paybar li { padding: 6px 10px; border-radius: 10px; height: 52px; }
.ng-paybar li img { height: 40px; width: auto; display: block; }

/* Banner de atención con anuncios flotantes */
.ng-help2 { position: relative; display: flex; align-items: center; gap: 40px; padding: 55px 60px; border-radius: 22px; overflow: hidden;
  background: radial-gradient(circle at 85% 50%, rgba(16, 98, 254, .35) 0%, rgba(16, 98, 254, 0) 45%), linear-gradient(120deg, #0b0a2c 0%, #16135a 55%, #1a1f7a 100%);
  border: 1px solid rgba(255,255,255,.08); box-shadow: 0 25px 60px rgba(4, 6, 40, .45); }
.ng-help2::before, .ng-help2::after { content: ""; position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,.07); }
.ng-help2::before { width: 900px; height: 900px; left: -300px; top: -420px; }
.ng-help2::after { width: 600px; height: 600px; right: -120px; bottom: -330px; }
.ng-h2-dot { position: absolute; width: 8px; height: 8px; border-radius: 50%; animation: ngBlink 3s ease-in-out infinite; }
.ng-h2-dot.d1 { background: #4ee0ff; left: 12%; top: 14%; }
.ng-h2-dot.d2 { background: #ff7a45; left: 46%; bottom: 12%; animation-delay: 1s; }
.ng-h2-dot.d3 { background: #8b7bff; right: 34%; top: 20%; animation-delay: 2s; }
.ng-h2-text { flex: 1; position: relative; z-index: 2; }
.ng-h2-text h3 { color: #fff; font-size: 32px; line-height: 1.3; font-weight: 600; margin-bottom: 26px; max-width: 620px; }
.ng-h2-text h3 span { color: #4ee0ff; }
.ng-h2-phone { display: inline-flex; align-items: center; gap: 18px; color: #fff; font-size: 44px; font-weight: 700; letter-spacing: 1px; margin-bottom: 28px; }
.ng-h2-phone:hover { color: #fff; }
.ng-h2-ico { position: relative; width: 66px; height: 66px; border-radius: 50%; background: #25d366; display: inline-flex; align-items: center; justify-content: center; font-size: 32px; }
.ng-h2-ico::before, .ng-h2-ico::after { content: ""; position: absolute; inset: -8px; border-radius: 50%; border: 2px solid rgba(37, 211, 102, .55); animation: ngPulse 2.2s ease-out infinite; }
.ng-h2-ico::after { animation-delay: 1.1s; }
.ng-h2-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.ng-h2-btn { display: inline-flex; align-items: center; gap: 10px; background: #25d366; color: #fff; font-weight: 600; padding: 15px 28px; border-radius: 10px; box-shadow: 0 10px 25px rgba(37, 211, 102, .35); transition: transform .2s; }
.ng-h2-btn:hover { color: #fff; transform: translateY(-2px); }
.ng-h2-btn .fa { font-size: 20px; }
.ng-h2-badge { color: #fff; font-size: 14px; font-weight: 500; display: inline-flex; align-items: center; gap: 10px; }
.ng-h2-media { position: relative; flex: none; width: 360px; height: 340px; z-index: 2; }
.ng-h2-photo { position: absolute; inset: 30px; border-radius: 50%; overflow: hidden; border: 6px solid rgba(255,255,255,.12); box-shadow: 0 0 0 14px rgba(78, 224, 255, .08), 0 20px 50px rgba(0,0,0,.35); }
.ng-h2-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.ng-orbit { position: absolute; inset: 0; border-radius: 50%; border: 1px dashed rgba(255,255,255,.25); animation: ngSpin 22s linear infinite; }
.ng-orbit.o2 { inset: -22px; border-style: solid; border-color: rgba(255,255,255,.08); animation-duration: 34s; animation-direction: reverse; }
.ng-orbit i { position: absolute; top: 50%; left: -6px; width: 12px; height: 12px; border-radius: 50%; background: #ff7a45; box-shadow: 0 0 12px #ff7a45; }
.ng-orbit.o2 i { left: auto; right: 20%; top: -6px; background: #8b7bff; box-shadow: 0 0 12px #8b7bff; }
.ng-float { position: absolute; display: inline-flex; align-items: center; gap: 8px; background: #fff; color: #0c1066; font-size: 13px; font-weight: 600; padding: 9px 16px; border-radius: 30px; box-shadow: 0 10px 25px rgba(0,0,0,.25); white-space: nowrap; animation: ngFloat 4s ease-in-out infinite; }
.ng-float.f1 { top: 10px; right: -30px; }
.ng-float.f2 { bottom: 18px; left: -50px; animation-delay: 2s; }
.ng-live { width: 9px; height: 9px; border-radius: 50%; background: #25d366; box-shadow: 0 0 0 0 rgba(37,211,102,.6); animation: ngLive 1.6s ease-out infinite; }
@keyframes ngFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes ngSpin { to { transform: rotate(360deg); } }
@keyframes ngPulse { 0% { transform: scale(1); opacity: 1; } 100% { transform: scale(1.5); opacity: 0; } }
@keyframes ngLive { 0% { box-shadow: 0 0 0 0 rgba(37,211,102,.6); } 100% { box-shadow: 0 0 0 9px rgba(37,211,102,0); } }
@keyframes ngBlink { 0%,100% { opacity: .25; } 50% { opacity: 1; } }
.xs-feature-section ~ .footer-group .ng-help2 { margin-top: 70px; }
@media (max-width: 991px) {
  .ng-help2 { flex-direction: column; text-align: center; padding: 40px 25px; }
  .ng-h2-text h3 { font-size: 24px; margin-left: auto; margin-right: auto; }
  .ng-h2-phone { font-size: 30px; }
  .ng-h2-actions { justify-content: center; }
  .ng-h2-media { width: 280px; height: 270px; }
  .ng-float.f1 { right: -10px; } .ng-float.f2 { left: -10px; }
}
@media (prefers-reduced-motion: reduce) {
  .ng-orbit, .ng-float, .ng-h2-ico::before, .ng-h2-ico::after, .ng-live, .ng-h2-dot { animation: none; }
}
.ng-float.f1 { top: 8px; right: -40px; left: auto; }
.ng-float.f2 { bottom: 10px; left: -60px; right: auto; }
@media (max-width: 991px) { .ng-float.f1 { right: -10px; } .ng-float.f2 { left: -10px; } }
/* Persona recortada sobre el círculo */
.ng-help2 { padding-bottom: 55px; }
.ng-h2-media { width: 380px; height: 330px; align-self: flex-end; margin-bottom: -55px; }
.ng-orbit { inset: 10px 10px 40px 10px; }
.ng-orbit.o2 { inset: -14px -14px 16px -14px; }
.ng-h2-circle { position: absolute; left: 30px; right: 30px; top: 30px; bottom: 60px; border-radius: 50%; background: radial-gradient(circle at 40% 35%, #ffffff 0%, #dfe4ff 55%, #b9c2ff 100%); box-shadow: 0 0 0 14px rgba(78, 224, 255, .08); }
.ng-h2-person { position: absolute; left: -40px; bottom: 0; width: 430px; max-width: none; z-index: 1; filter: drop-shadow(0 10px 25px rgba(0,0,0,.35)); }
.ng-float { z-index: 3; }
.ng-float.f1 { top: 0; right: -40px; left: auto; }
.ng-float.f2 { bottom: 95px; left: -80px; right: auto; }
@media (max-width: 991px) {
  .ng-h2-media { width: 300px; height: 270px; margin: 20px auto -40px; }
  .ng-h2-person { width: 340px; left: -30px; }
  .ng-float.f1 { right: -10px; } .ng-float.f2 { left: -10px; bottom: 80px; }
}

/* Pie de página limpio (estructura estilo ColdHosting, colores NubeGuard) */
.ng-foot { color: rgba(255,255,255,.75); }
.ng-foot-main { padding: 80px 0 50px; }
.ng-foot-brand-top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 15px; margin-bottom: 22px; }
.ng-foot .social-list { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ng-foot .social-list li { margin: 0; }
.ng-foot .social-list a { width: 40px; height: 40px; border-radius: 10px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); color: #fff !important; display: inline-flex; align-items: center; justify-content: center; font-size: 15px; transition: background .2s; }
.ng-foot .social-list a:hover { background: #1062fe; }
.ng-foot .social-list a::before, .ng-foot .social-list a::after { display: none; }
.ng-foot-brand p { color: rgba(255,255,255,.75); font-size: 15px; line-height: 1.75; margin-bottom: 14px; max-width: 380px; }
.ng-foot-brand .ng-foot-ruc { color: #fff; font-size: 14px; }
.ng-foot-title { color: #fff; font-size: 14px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; margin: 6px 0 22px; }
.ng-foot-title-sm { margin-top: 26px; margin-bottom: 14px; }
.ng-foot-list { list-style: none; padding: 0; margin: 0; }
.ng-foot-list li { margin-bottom: 13px; }
.ng-foot-list a { color: rgba(255,255,255,.75); font-size: 15px; display: inline-flex; align-items: center; gap: 10px; transition: color .2s; }
.ng-foot-list a::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #4ea1ff; flex: none; }
.ng-foot-list a:hover { color: #fff; }
.ng-foot-contact { list-style: none; padding: 0; margin: 0; }
.ng-foot-contact li { color: #fff; font-size: 15px; margin-bottom: 14px; }
.ng-foot-contact span { display: block; color: rgba(255,255,255,.55); font-size: 12px; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 2px; }
.ng-foot-contact a { color: #fff; }
.ng-foot-contact a:hover { color: #4ea1ff; }
.ng-foot-pay { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ng-foot-pay li { background: #fff; border-radius: 6px; height: 32px; padding: 4px 6px; display: inline-flex; align-items: center; }
.ng-foot-pay img { height: 24px; width: auto; display: block; }
.ng-foot-bar { background-color: #0d2352; padding: 22px 0; }
.ng-foot-bar-in { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 15px; }
.ng-foot-bar p { margin: 0; color: rgba(255,255,255,.7); font-size: 14px; }
.ng-foot-badges { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 22px; }
.ng-foot-badges li { color: rgba(255,255,255,.8); font-size: 14px; display: inline-flex; align-items: center; gap: 7px; }
.ng-foot-badges .fa { color: #25d366; }
@media (max-width: 991px) {
  .ng-foot-main { padding: 60px 0 30px; }
  .ng-foot-brand { margin-bottom: 30px; }
  .ng-foot-main [class*="col-"] { margin-bottom: 20px; }
  .ng-foot-bar-in { justify-content: center; text-align: center; }
}
.xs-logo img { height: 58px !important; }
.ng-foot-brand-top img { height: 52px; width: auto; }
.xs-logo img { width: auto !important; max-width: none !important; }

/* Menú con submenús */
.ng-mi { flex:none; width:42px; height:42px; border-radius:11px; background:linear-gradient(135deg,#1062fe,#22d3ff); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:18px; margin-right:15px; }
.ng-mega .media { align-items:center; }
.ng-mi-tag { display:inline-block; background:#ff7a45; color:#fff; font-size:10px; font-weight:600; padding:2px 7px; border-radius:10px; vertical-align:middle; margin-left:6px; }
.ng-tld-strip { font-family: Rubik, sans-serif; font-weight: 700; font-size: 24px; color: #1a3fe0; margin-right: 12px; vertical-align: middle; }

/* Precio de renovación bajo el precio del plan */
.pricing-price .ng-renew{margin:4px 0 0;font-size:13px;color:#6b7a99;font-style:normal}

/* Botón flotante de WhatsApp: late (se agranda y encoge) con ondas verdes */
.ng-wa-float { animation: ng-wa-beat 1.6s ease-in-out infinite; }
.ng-wa-float::before, .ng-wa-float::after { content:""; position:absolute; inset:0; border-radius:50%; background:#25D366; z-index:-1; animation: ng-wa-wave 1.6s ease-out infinite; }
.ng-wa-float::after { animation-delay:.8s; }
.ng-wa-float:hover { animation-play-state:paused; }
@keyframes ng-wa-beat { 0%,100% { transform:scale(1); } 15% { transform:scale(1.18); } 30% { transform:scale(.96); } 45% { transform:scale(1.12); } 60% { transform:scale(1); } }
@keyframes ng-wa-wave { 0% { transform:scale(1); opacity:.6; } 100% { transform:scale(2); opacity:0; } }
@media (prefers-reduced-motion: reduce) { .ng-wa-float, .ng-wa-float::before, .ng-wa-float::after { animation:none; } }

/* ===== Menús desplegables estilo tarjetas (columnas con título) ===== */
.xs-menus .megamenu-panel.xs-service-menu.ng-mega { padding:18px; border-radius:18px; box-shadow:0 24px 60px rgba(12,16,102,.18); }
.ng-mega .row { margin:0 -7px; }
.ng-mega .row > .col-lg-6 { padding:0 7px; }
.ng-mcol { background:#f6f7fb; border-radius:14px; padding:14px 10px 8px; height:100%; }
.ng-mh { display:flex; align-items:center; gap:10px; font-size:11px; font-weight:700; letter-spacing:1.6px; text-transform:uppercase; color:#6b7390;
  padding:0 8px 12px; margin-bottom:6px; border-bottom:1px solid #e3e6f0; }
.ng-mh > span { width:26px; height:26px; border-radius:50%; background:#e8ebf5; color:#3b4170; display:inline-flex; align-items:center; justify-content:center; font-size:12px; }
.ng-mega .ng-mcol > a { display:block; }
.ng-mega .ng-mcol .media { padding:10px 8px; border-radius:11px; transition:background .2s, box-shadow .2s; }
.ng-mega .ng-mcol a:hover .media { background:#fff; box-shadow:0 6px 16px rgba(20,30,90,.08); }
.ng-mega .ng-mi { width:38px; height:38px; border-radius:10px; font-size:16px; margin-right:13px; }
.ng-mega .media-body h4 { font-size:15px; margin:0 0 2px; }
.ng-mega .media-body p { font-size:12.5px; margin:0; line-height:1.4; }
/* Soluciones */
.ng-sol { min-width:640px; }
.ng-sol-head { border-bottom:0; padding:4px 8px 14px; margin:0; }
.ng-sol-all { margin-left:auto; background:#0c1066; color:#fff !important; font-size:11px; letter-spacing:.5px; text-transform:none; padding:6px 14px; border-radius:20px; }
.ng-sol-all:hover { background:#1468ff; }
.ng-sol-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.ng-sol-cell { display:flex; align-items:flex-start; gap:11px; background:#f6f7fb; border:1px solid #eceff7; border-radius:12px; padding:12px; transition:background .2s, box-shadow .2s, transform .2s; }
.ng-sol-cell:hover { background:#fff; box-shadow:0 8px 20px rgba(20,30,90,.10); transform:translateY(-2px); }
.ng-sol-ico { flex:none; width:34px; height:34px; border-radius:9px; background:color-mix(in srgb,var(--c) 14%,#fff); color:var(--c); display:inline-flex; align-items:center; justify-content:center; font-size:16px; }
.ng-sol-txt b { display:block; color:#0c1066; font-size:14px; margin-bottom:2px; }
.ng-sol-txt small { display:block; color:#6b7390; font-size:12px; line-height:1.35; }
@media (max-width:991px) { .ng-sol { min-width:0; } .ng-sol-grid { grid-template-columns:1fr; } }
/* Efecto de "barras": la columna bajo el mouse se levanta en blanco y las demás se atenúan */
.ng-mcol { transition:background .25s, box-shadow .25s, transform .25s, opacity .25s; }
.ng-mega .row:hover .ng-mcol { opacity:.72; }
.ng-mega .row .ng-mcol:hover { opacity:1; background:#fff; transform:translateY(-3px); box-shadow:0 14px 34px rgba(12,16,102,.14); }
.ng-mega .ng-mcol:hover a:hover .media { background:#f4f6fc; box-shadow:0 6px 16px rgba(20,30,90,.10); }
.ng-sol-grid:hover .ng-sol-cell { opacity:.75; }
.ng-sol-grid .ng-sol-cell:hover { opacity:1; }
.ng-sol-cell { transition:background .2s, box-shadow .2s, transform .2s, opacity .2s; }
/* Apertura suave del panel */
.xs-menus .nav-menu > li:hover > .ng-mega { animation:ng-drop .28s ease-out; }
@keyframes ng-drop { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
.xs-menus .ng-sol a.ng-sol-cell { display:flex !important; flex-direction:row; align-items:center; padding:12px 14px; } .ng-sol { min-width:0; } .ng-sol-txt { min-width:0; }

/* ===== Pie de página v2 (distribución tipo ColdHosting, colores NubeGuard) ===== */
.ng-foot2 .ng-foot-main { position:relative; overflow:hidden; padding:80px 0 60px; }
.ng-foot2 .container { position:relative; z-index:1; max-width:1240px; }
.ng-foot-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1.35fr; gap:40px; }
.ng-foot-mark { position:absolute; left:50%; top:52%; transform:translate(-50%,-50%); font-size:170px; font-weight:900; letter-spacing:6px; color:rgba(255,255,255,.035); white-space:nowrap; pointer-events:none; line-height:1; }
.ng-foot2 .ng-foot-brand-top { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.ng-foot2 .ng-foot-brand p { margin-top:18px; }
.ng-foot-btns { display:flex; flex-wrap:wrap; gap:10px; margin:6px 0 18px; }
.ng-fb { display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border-radius:12px; font-weight:700; font-size:14px; color:#fff !important;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); transition:background .2s, transform .2s; }
.ng-fb:hover { background:rgba(255,255,255,.16); transform:translateY(-2px); }
.ng-fb-hl { background:#25d366; border-color:#25d366; }
.ng-fb-hl:hover { background:#1fbd5a; }
.ng-foot-contact2 { list-style:none; padding:0; margin:0 0 22px; }
.ng-foot-contact2 li { display:flex; align-items:center; gap:12px; margin-bottom:14px; color:#fff; font-weight:600; font-size:14px; }
.ng-foot-contact2 small { display:block; text-transform:uppercase; letter-spacing:1.4px; font-size:10.5px; font-weight:600; color:rgba(255,255,255,.6); }
.ng-foot-contact2 a { color:#fff; }
.ng-fc-ico { flex:none; width:42px; height:42px; border-radius:12px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); display:inline-flex; align-items:center; justify-content:center; font-size:17px; color:#fff; }
.ng-foot-pills { gap:10px; }
.ng-foot-pills li { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:30px; padding:7px 14px; }
@media (max-width:1199px) { .ng-foot-grid { grid-template-columns:1fr 1fr 1fr; } .ng-foot-brand { grid-column:1 / -1; } }
@media (max-width:767px) { .ng-foot-grid { grid-template-columns:1fr 1fr; gap:28px; } .ng-foot-grid > div:last-child { grid-column:1 / -1; } .ng-foot-mark { font-size:70px; } }
.ng-fb { padding:9px 14px; font-size:13px; gap:7px; } .ng-foot-btns { gap:8px; flex-wrap:nowrap; }
.ng-fb { white-space:nowrap; }
.ng-foot2 .ng-foot-pay { display:grid; grid-template-columns:repeat(3,auto); justify-content:start; gap:8px; }
.ng-foot2 .ng-foot-pay { grid-template-columns:repeat(3,1fr); max-width:270px; } .ng-foot2 .ng-foot-pay li { width:auto !important; min-width:0 !important; height:42px; margin:0 !important; display:flex; align-items:center; justify-content:center; } .ng-foot2 .ng-foot-pay li img { max-height:26px; max-width:72%; width:auto; height:auto; }
.ng-foot2 .ng-foot-list li { margin-bottom:10px; line-height:1.4; } .ng-foot2 .ng-foot-list li a { font-size:14.5px; } .ng-foot2 .ng-foot-title { margin-bottom:20px; }
.ng-foot2 .ng-foot-list li { margin-bottom:9px; line-height:1.25; } .ng-foot2 .ng-foot-list li a { line-height:1.25; }
.ng-foot2 .ng-foot-list li { font-size:14.5px; margin-bottom:9px; }
.ng-foot2 .ng-foot-pay { grid-template-columns:repeat(5,52px); max-width:none; gap:7px; } .ng-foot2 .ng-foot-pay li { height:34px; border-radius:7px; } .ng-foot2 .ng-foot-pay li img { max-height:20px; max-width:80%; }
.ng-foot-pills { gap:8px; } .ng-foot-pills li { padding:4px 11px; font-size:12.5px; } .ng-foot2 .ng-lr-btn { padding:7px 14px; font-size:13px; }
/* Pie de página compacto (proporciones tipo ColdHosting) */
.ng-foot2 .ng-foot-main { padding:60px 0 46px; }
.ng-foot2 .ng-foot-brand-top img { height:30px; width:auto; }
.ng-foot2 .social-list li a { width:34px; height:34px; line-height:34px; font-size:14px; }
.ng-foot2 .ng-foot-brand p { font-size:13.5px; line-height:1.65; margin-top:14px; }
.ng-foot2 .ng-foot-brand .ng-foot-ruc { font-size:12.5px; }
.ng-fb { padding:7px 13px; font-size:12.5px; border-radius:10px; }
.ng-foot2 .ng-foot-title { font-size:13.5px; margin-bottom:16px; letter-spacing:1px; }
.ng-foot2 .ng-foot-list li { font-size:13.5px; margin-bottom:9px; }
.ng-foot2 .ng-foot-list li a { font-size:13.5px; }
.ng-foot-contact2 li { font-size:13px; margin-bottom:11px; gap:10px; }
.ng-foot-contact2 small { font-size:10px; }
.ng-fc-ico { width:34px; height:34px; border-radius:10px; font-size:14px; }
.ng-foot2 .ng-foot-title-sm { font-size:12px; margin:6px 0 10px; }
.ng-foot2 .ng-foot-pay { grid-template-columns:repeat(5,44px); gap:6px; }
.ng-foot2 .ng-foot-pay li { height:30px; border-radius:7px; }
.ng-foot2 .ng-foot-pay li img { max-height:17px; }
.ng-foot2 .ng-foot-bar p { font-size:13px; }
.ng-foot-mark { font-size:150px; }
.ng-foot2 .ng-foot-brand-top { flex-wrap:nowrap; } .ng-foot2 .ng-foot-brand-top img { height:27px; } .ng-foot2 .ng-foot-brand-top .social-list { display:flex; gap:6px; margin:0; flex-wrap:nowrap; } .ng-foot2 .ng-foot-brand-top .social-list li { margin:0; } .ng-foot2 .social-list li a { width:30px; height:30px; line-height:30px; font-size:13px; border-radius:9px; }
.ng-foot2 .ng-foot-brand-top > a { flex:none; } .ng-foot2 .ng-foot-brand-top img { height:26px; width:auto; max-width:none; } .ng-foot2 .ng-foot-brand-top .social-list { gap:5px; } .ng-foot2 .social-list li a { width:29px; height:29px; line-height:29px; }
.ng-foot2 .ng-foot-list a { white-space:nowrap; } .ng-foot2 .ng-foot-list .ng-mi-tag { margin-left:0; font-size:9.5px; padding:1px 7px; }
.ng-foot2 .ng-foot-list li { margin-bottom:13px; line-height:1.6; } .ng-foot2 .ng-foot-list li a { line-height:1.6; }
.ng-foot2 .ng-foot-list li, .ng-foot2 .ng-foot-list li a { font-size:14.5px; } .ng-foot-contact2 li { font-size:14px; }
.xs-header .xs-logo img { height:46px !important; }
.xs-header .xs-logo img { height:40px !important; }

/* ===== Responsive: celular ===== */
@media (max-width:575px) {
  .ng-wa-float { width:48px; height:48px; right:14px; bottom:18px; }
  .xs-table .domain-pricing-header th { font-size:13px; padding:12px 4px; }
  .xs-table td, .xs-table th { padding:11px 4px; font-size:14px; }
  .xs-table th img { max-width:58px; height:auto; }
  .xs-table th .ng-tld { font-size:17px; }
}
@media (max-width:576px) {
  .xs-table.fixed-column { display:none !important; }
  .xs-table:not(.fixed-column) { left:0 !important; width:100%; table-layout:fixed; }
  .xs-table:not(.fixed-column) tr th:first-child { display:table-cell !important; }
  .xs-table .domain-pricing-header th { font-size:12px !important; padding:12px 2px !important; width:auto; }
}
@media (max-width:767px) { .ng-foot-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } .ng-foot-grid > div { min-width:0; } }
@media (max-width:400px) { .ng-foot2 .ng-foot-brand-top { flex-wrap:wrap !important; justify-content:flex-start; } .ng-foot2 .ng-foot-brand-top .social-list { flex-wrap:wrap !important; } }
@media (max-width:400px) { .ng-foot2 .ng-foot-list a { white-space:normal; overflow-wrap:anywhere; } .ng-foot2 .ng-foot-list li { white-space:normal; } }
/* Buscador de dominios en celular: botón ancho + precios en pastillas */
@media (max-width:575px) {
  .xs-domain-search .domain-search-form { display:flex; flex-direction:column; gap:12px; }
  .xs-domain-search .domain-search-form input[type=search] { width:100%; border-radius:16px; }
  .xs-domain-search .domain-search-form .select-group { position:static; width:100%; }
  .xs-domain-search .domain-search-form .select-group input[type=submit] { position:static; width:100%; border-radius:16px; height:56px; font-weight:700; font-size:17px; }
  .xs-domain-search .xs-domain-info { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:22px; padding-top:20px; border-top:1px solid #eef0f4; }
  .xs-domain-search .xs-domain-info li { display:inline-flex !important; align-items:center; gap:8px; width:auto !important; margin:0 !important; padding:9px 18px; border:1px solid #e3e6ee; border-radius:999px; background:#fff; }
  .xs-domain-search .xs-domain-info li img { height:20px; width:auto; margin:0 !important; }
  .xs-domain-search .xs-domain-info li .ng-tld { font-size:22px; line-height:1; margin:0 !important; }
  .xs-domain-search .xs-domain-info li strong { font-size:16px; margin:0 !important; }
}
@media (max-width:575px) {
  .xs-domain-search .domain-search-form { margin-bottom:0 !important; }
  .xs-domain-search .xs-domain-info { margin-top:20px !important; gap:10px; }
  .xs-domain-search .xs-domain-info li { padding:8px 16px; }
  .xs-domain-search .xs-domain-info li img { height:15px; }
  .xs-domain-search .xs-domain-info li .ng-tld { font-size:18px; }
  .xs-domain-search .xs-domain-info li strong { font-size:15px; }
}
/* Celular: extensiones en texto uniforme (estilo ColdHosting) */
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li img { display:none !important; }
  .xs-domain-search .xs-domain-info li::before, .xs-domain-search .xs-domain-info li .ng-tld { font-family:Rubik, sans-serif; font-weight:600; font-size:19px; line-height:1; }
  .xs-domain-search .xs-domain-info li:nth-child(1)::before { content:".com"; color:#1a3fe0; }
  .xs-domain-search .xs-domain-info li:nth-child(2)::before { content:".net"; color:#111827; }
  .xs-domain-search .xs-domain-info li:nth-child(5)::before { content:".co"; color:#ea580c; }
  .xs-domain-search .xs-domain-info li:nth-child(3) .ng-tld { color:#7c3aed; }
  .xs-domain-search .xs-domain-info li:nth-child(4) .ng-tld { color:#dc2626; }
  .xs-domain-search .xs-domain-info li strong { font-family:Rubik, sans-serif; font-size:16px; font-weight:500; color:#374151; }
}
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li:nth-child(1)::before, .xs-domain-search .xs-domain-info li:nth-child(2)::before { content:"."; order:1; }
  .xs-domain-search .xs-domain-info li:nth-child(1)::after, .xs-domain-search .xs-domain-info li:nth-child(2)::after { order:2; margin-left:-8px; font-family:Rubik, sans-serif; font-weight:600; font-size:19px; line-height:1; }
  .xs-domain-search .xs-domain-info li:nth-child(1) strong, .xs-domain-search .xs-domain-info li:nth-child(2) strong { order:3; }
  .xs-domain-search .xs-domain-info li:nth-child(1)::before { color:#fa7700; }
  .xs-domain-search .xs-domain-info li:nth-child(1)::after { content:"com"; color:#0080cf; }
  .xs-domain-search .xs-domain-info li:nth-child(2)::before { color:#02c9ce; }
  .xs-domain-search .xs-domain-info li:nth-child(2)::after { content:"net"; color:#252122; }
}
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li:nth-child(5)::before { content:"."; order:1; color:#0aa20f; }
  .xs-domain-search .xs-domain-info li:nth-child(5)::after { content:"co"; order:2; margin-left:-8px; color:#60238c; font-family:Rubik, sans-serif; font-weight:600; font-size:19px; line-height:1; }
  .xs-domain-search .xs-domain-info li:nth-child(5) strong { order:3; }
}
@media (max-width:575px) { .xs-domain-search .xs-domain-info li:nth-child(3) .ng-tld { color:#ea580c; } }
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li .ng-tld { display:inline-block; }
  .xs-domain-search .xs-domain-info li:nth-child(3) .ng-tld { color:#111827; }
  .xs-domain-search .xs-domain-info li:nth-child(3) .ng-tld::first-letter { color:#ea580c; }
  .xs-domain-search .xs-domain-info li:nth-child(4) .ng-tld::first-letter { color:#111827; }
}
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li:nth-child(3) .ng-tld, .xs-domain-search .xs-domain-info li:nth-child(4) .ng-tld { display:none !important; }
  .xs-domain-search .xs-domain-info li:nth-child(3)::before, .xs-domain-search .xs-domain-info li:nth-child(4)::before { content:"."; order:1; font-family:Rubik, sans-serif; font-weight:600; font-size:19px; line-height:1; }
  .xs-domain-search .xs-domain-info li:nth-child(3)::after, .xs-domain-search .xs-domain-info li:nth-child(4)::after { order:2; margin-left:-8px; font-family:Rubik, sans-serif; font-weight:600; font-size:19px; line-height:1; }
  .xs-domain-search .xs-domain-info li:nth-child(3) strong, .xs-domain-search .xs-domain-info li:nth-child(4) strong { order:3; }
  .xs-domain-search .xs-domain-info li:nth-child(3)::before { color:#ea580c; }
  .xs-domain-search .xs-domain-info li:nth-child(3)::after { content:"org"; color:#111827; }
  .xs-domain-search .xs-domain-info li:nth-child(4)::before { color:#111827; }
  .xs-domain-search .xs-domain-info li:nth-child(4)::after { content:"pe"; color:#dc2626; }
}
@media (max-width:575px) { .xs-domain-search .xs-domain-info li:nth-child(3)::before { color:#111827; } .xs-domain-search .xs-domain-info li:nth-child(3)::after { color:#ea580c; } }
/* .org: punto negro, letras azul NubeGuard (PC y celular) */
.ng-tld .ng-dot { font-style:normal; color:#111827; }
@media (max-width:575px) {
  .xs-domain-search .xs-domain-info li:nth-child(3)::before { color:#111827; }
  .xs-domain-search .xs-domain-info li:nth-child(3)::after { color:#1a3fe0; }
}
.ng-tld.ng-tld-pe { color:#dc2626; }
.xs-table th .ng-tld.ng-tld-pe { color:#dc2626; }
