
/* XUNIA TECH V21 | Diseño de tema completo, scroll invisible y pantalla de bienvenida */
:root{
  --xt-bg:#171717; --xt-surface:#202124; --xt-surface-alt:#252a30;
  --xt-text:#f4f6fb; --xt-muted:#b8bfcc; --xt-border:#ffffff1c;
  --xt-field:#292b30; --xt-blue:#4385ff;
  color-scheme:dark;
}
body.light{
  --xt-bg:#f5f7fc; --xt-surface:#ffffff; --xt-surface-alt:#edf3fb;
  --xt-text:#17233b; --xt-muted:#586781; --xt-border:#d9e1ee;
  --xt-field:#f7f9fd; --xt-blue:#195dd1;
  color-scheme:light;
}
body{background:var(--xt-bg)!important;color:var(--xt-text)!important;transition:background-color .32s,color .32s}
.section:not(.hero), .inner-page main, .inner-hero, .inner-wrap{
 color:var(--xt-text);
}
.service-card, .project-card, .about-panel, .wide-callout,
.feature-panel, .process-grid>div, .testimonials article,
.xunia-support-card, .inner-page .service-card,
.inner-page .project-card, .marquee span, .social .marquee span{
 background:var(--xt-surface)!important;color:var(--xt-text)!important;
 border-color:var(--xt-border)!important;
}
.service-card:hover,.service-card.selected{background:var(--xt-surface-alt)!important}
.service-card h3,.project-card h3,.about-panel h2,.wide-callout h3,
.feature-panel h2,.inner-hero h1,.section h2,.sub-contact h2,
.xunia-support h2,.testimonials strong{color:var(--xt-text)!important}
.service-card p,.service-card ul,.proj-text p,.about-panel p,.wide-callout p,
.subtitle,.section .subtitle,.testimonials small,.section p,
.inner-page main p,.inner-page main li,.xunia-support p,.xunia-support ul,
.after-services,.sample-note{color:var(--xt-muted)!important}
.service-card ul{border-top-color:var(--xt-border)!important}
.circle-arrow{background:var(--xt-surface-alt)!important;color:var(--xt-blue)!important}
.section .overline,.stat strong{color:var(--xt-blue)!important}
form label,.check,.form-grid label{color:var(--xt-text)!important}
form input,form select,form textarea{
 background:var(--xt-field)!important;
 color:var(--xt-text)!important;
 border:1px solid var(--xt-border)!important;
}
form input::placeholder,form textarea::placeholder{color:var(--xt-muted)!important;opacity:.76}
form input:focus,form select:focus,form textarea:focus{border-color:var(--xt-blue)!important}
body.light .xunia-support{background:var(--xt-bg)!important}
body.light .marquee-track span{background:var(--xt-surface)!important}
body.light .float-actions a:first-child{background:#fff;color:#17233b}
body.light .inner-hero{background:var(--xt-bg)!important}
body.light .inner-page .inner-hero h1 span{color:#2566dd}
body.light .service-card:hover{box-shadow:0 14px 35px #123f7820}
body.light .submit{background:#245ed7!important;color:white!important}
/* Ocultar la barra nativa sin perder wheel, trackpad, gestos ni teclado. */
.services .service-list{
 overflow-y:auto!important;
 scrollbar-width:none!important; /* Firefox */
 -ms-overflow-style:none!important;
 padding-right:0!important;
 overscroll-behavior-y:contain;
}
.services .service-list::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.services .service-list::-webkit-scrollbar-thumb,
.services .service-list::-webkit-scrollbar-track{display:none!important}
/* El fondo de la portada y el océano conservan su estilo para mantener contraste. */
.hero,.hero .hero-inner,.ocean-footer,.ocean-footer .wet-content{color:white}
.hero .hero-inner p{color:#f4f6ff!important}
.ocean-footer .footer-content p{color:#fff!important}

/* Pantalla inicial, sin bloqueo si JavaScript se demora. */
.xt-loader{
 position:fixed;inset:0;z-index:2147483000;
 display:flex;align-items:center;justify-content:center;
 background:#101827;color:#fff;padding:24px;
 transition:opacity .55s ease,visibility .55s ease;
 animation:xt-loader-failsafe .65s 5s forwards;
}
.xt-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}
.xt-loader__center{display:grid;justify-items:center;gap:18px;text-align:center}
.xt-loader__mark{
 width:76px;height:76px;border-radius:23px;
 display:grid;place-items:center;
 background:linear-gradient(135deg,#1765d6,#2dc8f3);
 box-shadow:0 18px 60px #1972ef47;
 font-size:29px;font-weight:900;letter-spacing:-3px;
 animation:xt-pulse 1.7s ease-in-out infinite;
}
.xt-loader__name{font-size:clamp(21px,4vw,28px);font-weight:800;letter-spacing:.12em}
.xt-loader__sub{font-size:12px;letter-spacing:.25em;color:#aac2df}
.xt-loader__bar{height:3px;width:min(240px,55vw);overflow:hidden;border-radius:6px;background:#3d5875}
.xt-loader__bar i{display:block;height:100%;width:40%;background:#55c4fb;border-radius:6px;animation:xt-progress 1.25s ease-in-out infinite}
@keyframes xt-pulse{50%{transform:translateY(-5px) scale(1.045)}}
@keyframes xt-progress{0%{transform:translateX(-105%)}100%{transform:translateX(370%)}}
@keyframes xt-loader-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(prefers-reduced-motion:reduce){
 .xt-loader__mark,.xt-loader__bar i{animation:none!important}
 .xt-loader{transition:none}
}
