/* Cleaned & documented on 2025-08-28 */
/* ====================================================================
   SODIGITION UI v16
   - Modern vertical glass cards (transparent + blur) en todo lo posible
   - Secciones eliminadas: Equipo, Proceso
   - Marca: .brandify (S = #ff6f00, ODIGITION = #1e90ff) — mayúsculas
   - Limpieza de estilos no usados (layout horizontal)
   ==================================================================== */
:root{--bg:#0b1020;--bg-muted:#0f1630;--card:#121a38;--text:#f0f3fa;--muted:#c0c0c0;--primary:#1e90ff;--primary-2:#309bff;--accent:#ff6f00;--accent-2:#ff8a25;--shadow:rgba(2,8,39,.45);--radius:18px;--container:1160px;--space-xs:.5rem;--space-s:.75rem;--space-m:1rem;--space-l:1.5rem;--space-xl:2.5rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;color:var(--text);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:clamp(15px,1.05vw+12px,18px)}#bg-wrap{position:fixed;inset:0;z-index:-2;overflow:hidden}#bg-canvas{position:absolute;width:120%;height:120%;top:-10%;left:-10%;opacity:.28;filter:blur(.25px)}.bg-gradient{position:absolute;inset:-10%;background:radial-gradient(1200px 800px at 10% 10%,rgba(30,144,255,.25),transparent 60%),radial-gradient(1000px 600px at 90% 20%,rgba(255,111,0,.22),transparent 60%),radial-gradient(900px 700px at 50% 120%,rgba(30,144,255,.16),transparent 60%);animation:floatGradient 18s ease-in-out infinite alternate;z-index:-1;filter:saturate(1.05)}#bg-stars{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.28) 1px,transparent 1px);background-size:2px 2px;opacity:.06;animation:panStars 60s linear infinite}@keyframes floatGradient{0%{transform:translateY(-2%) scale(1.02)}100%{transform:translateY(2%) scale(1.04)}}@keyframes panStars{0%{background-position:0 0}100%{background-position:0 1000px}}.container{width:min(100% - 2rem,var(--container));margin-inline:auto}.section{padding:clamp(3rem,6vw,5rem) 0}.section--alt{background:linear-gradient(180deg,transparent,rgba(255,255,255,.03) 28%,transparent)}.section__header{text-align:center;margin-bottom:var(--space-xl)}.section__header h2{font-family:'Poppins','Montserrat',system-ui;font-size:clamp(1.8rem,2.6vw,2.3rem);margin:0 0 .5rem;letter-spacing:.1px}.section__header p{color:var(--muted);margin:0}.grid-2{display:grid;gap:var(--space-xl);grid-template-columns:repeat(1,1fr)}@media(min-width:900px){.grid-2{grid-template-columns:1fr 1fr}}.stack{display:grid}.stack.gap-m{gap:1rem}.stack.gap-l{gap:1.5rem}.row{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.site-header{position:sticky;top:0;z-index:20;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));border-bottom:none;backdrop-filter:none}.header-inner{display:flex;align-items:center;justify-content:space-between;padding-block:.6rem}.brand img{display:block}.nav__toggle{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);color:var(--text);border-radius:10px;padding:.45rem .65rem;display:none}.nav__menu{display:flex;gap:1rem;list-style:none;padding:0;margin:0;align-items:center}.nav__menu a{color:var(--text);text-decoration:none;opacity:.96}.nav__menu .btn--sm{padding:.5rem .8rem}@media(max-width:820px){.nav__toggle{display:inline-block}.nav__menu{position:absolute;right:1rem;top:60px;background:rgba(8,12,26,.95);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 8px 22px rgba(0,0,0,.18);border-radius:14px;padding:.8rem;flex-direction:column;display:none}.nav__menu.show{display:flex}}h1,h2,h3,h4{font-family:'Poppins','Montserrat',system-ui;font-weight:800;line-height:1.2}.hero .hero__title{font-size:clamp(2.2rem,4vw,3.2rem);margin:0;text-shadow:0 2px 18px rgba(30,144,255,.25)}.hero .hero__subtitle{color:var(--muted);margin:0;font-size:clamp(1rem,1.2vw,1.1rem)}.brandify{text-transform:uppercase;color:var(--primary);font-weight:800;letter-spacing:.6px}.brandify::first-letter{color:var(--accent)}a{color:inherit;text-decoration:none;transition:color .2s ease,box-shadow .2s ease,transform .12s ease}a:focus-visible{outline:2px dashed var(--primary);outline-offset:3px;border-radius:6px}a:hover:not(.btn):not(.brand):not(.nav__toggle){color:var(--primary);box-shadow:inset 0 -0.45em rgba(30,144,255,.22)}a:active:not(.btn):not(.brand):not(.nav__toggle){transform:translateY(1px)}.link{color:var(--primary);text-decoration:none;border-bottom:0;padding-bottom:0}.link:hover{box-shadow:inset 0 -0.35em rgba(255,111,0,.22)}.icon{width:1.05em;height:1.05em;vertical-align:middle}.icon-badge{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:radial-gradient(circle at 30% 30%,rgba(30,144,255,.18),rgba(255,111,0,.14));box-shadow:0 4px 12px rgba(30,144,255,.2)}.card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:1.05rem 1.15rem;box-shadow:0 10px 26px rgba(0,0,0,.20);backdrop-filter:blur(8px) saturate(1.04);transition:transform .14s ease,box-shadow .24s ease,border-color .2s ease}.card:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(0,0,0,.26);border-color:rgba(255,255,255,.22)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;padding:.85rem 1.15rem;border-radius:12px;text-decoration:none;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 8px 22px rgba(0,0,0,.18);font-weight:800;letter-spacing:.2px;box-shadow:0 12px 28px rgba(30,144,255,.28);transition:transform .12s ease,box-shadow .2s ease,background-position .2s ease;background-size:150% 150%;background-position:0% 50%}.btn:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(30,144,255,.34);background-position:100% 50%}.btn:active{transform:translateY(0)}.btn--ghost{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.24);color:var(--text);font-weight:700}.btn--grad{background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 12px 28px rgba(255,111,0,.25)}.btn--icon{width:44px;height:44px;padding:0;border-radius:12px;display:inline-grid;place-items:center}.list{margin:.8rem 0 0;padding-left:1.1rem}.list li{margin-bottom:.4rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;align-items:stretch}.services-grid h3{display:flex;gap:.5rem;align-items:center}.services-grid>.card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:1.05rem 1.15rem;box-shadow:0 10px 26px rgba(0,0,0,.20);backdrop-filter:blur(8px) saturate(1.04);transition:transform .14s ease,box-shadow .24s ease,border-color .2s ease}.services-grid>.card .link{margin-top:auto;align-self:flex-start}.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;text-align:center;align-items:stretch}.kpi{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:1.1rem 1.2rem;box-shadow:0 8px 22px rgba(0,0,0,.18)}.kpi strong{font-size:clamp(1.4rem,3vw,2rem);display:block}.kpi span{color:var(--muted)}@media(min-width:800px){.kpis{grid-template-columns:repeat(4,1fr)}}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;align-items:stretch}.portfolio-card{border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.12);height:100%}.portfolio-card img{display:block;width:100%;height:auto}.portfolio-card figcaption{padding:.8rem 1rem;color:var(--muted);display:flex;gap:.5rem;align-items:center}.cta__inner{display:grid;place-items:center;text-align:center;padding:2rem}.hero__visual{position:relative;min-height:320px}.hero__visual::after{content:"";width:min(540px,90%);height:300px;background:url('../img/illus/hero-abstract.svg') no-repeat center/cover;filter:drop-shadow(0 10px 30px rgba(30,144,255,.15));border-radius:18px;opacity:.9}@media(min-width:900px){.hero__visual::after{height:360px}}.form label{display:grid;gap:.4rem;margin-bottom:.8rem}.form input,.form textarea{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:.7rem .8rem;color:var(--text)}.form input:focus,.form textarea:focus{outline:2px solid rgba(30,144,255,.6);border-color:rgba(30,144,255,.6)}.form .hp{position:absolute;left:-9999px;opacity:0}.form__note{font-size:.9rem;color:var(--muted);display:flex;gap:.5rem;align-items:center}.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.social{margin-top:.6rem}.social h4{margin:.2rem 0 .4rem;color:var(--muted)}.social-list{display:flex;gap:.6rem;list-style:none;margin:0;padding:0}.social-list a{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));border:none}.social-list a:hover{background:rgba(255,255,255,.1)}.map-embed{margin-top:1rem}.contact-chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.chip:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(30,144,255,.22);border-color:rgba(255,255,255,.26)}.chip--wa{background:linear-gradient(135deg,rgba(255,111,0,.15),rgba(30,144,255,.12))}.chip--mail{background:linear-gradient(135deg,rgba(30,144,255,.15),rgba(255,255,255,.05))}.chip--map{background:linear-gradient(135deg,rgba(30,144,255,.12),rgba(255,111,0,.12))}.legal-mini{display:flex;gap:.5rem;margin-top:.4rem;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;padding:.35rem .6rem;border-radius:999px;font-weight:600;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 8px 22px rgba(0,0,0,.18);background:transparent}.tag:hover{border-style:solid;border-color:rgba(255,255,255,.35)}.site-footer{padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);background:rgba(4,6,16,.6)}.footer-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(1,minmax(0,1fr));align-items:start}.footer-grid h4{margin:0 0 .6rem;font-size:1.05rem;font-weight:800;color:var(--muted)}.footer-nav ul,.footer-contact ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.footer-cta{display:flex;align-items:center}@media(min-width:820px){.footer-grid{grid-template-columns:1.2fr 1fr 1fr auto}}.footer-bottom{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 0 2rem;border-top:1px solid rgba(255,255,255,.06);margin-top:1rem;flex-wrap:wrap}.footer-links{display:flex;gap:.9rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}.muted{color:var(--muted)}.copyright{color:var(--muted);font-size:.95rem}.faq{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:.9rem 1rem;margin:.6rem 0}.faq>summary{cursor:pointer;font-weight:700}.faq[open]{border-color:rgba(255,255,255,.16)}.faq p{color:var(--muted)}.quick-dock{position:fixed;right:16px;bottom:18px;display:flex;flex-direction:column;gap:.5rem;z-index:50}.qbtn{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,rgba(30,144,255,.2),rgba(255,111,0,.16));backdrop-filter:saturate(1.2) blur(8px);box-shadow:0 12px 28px rgba(0,0,0,.28);transition:transform .12s ease,box-shadow .2s ease,filter .2s ease}.qbtn:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 18px 36px rgba(0,0,0,.35)}#backTop{position:fixed;right:16px;bottom:180px;opacity:0;pointer-events:none;transition:opacity .25s ease}#backTop.show{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(10px);transition:.6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}[data-parallax]{will-change:transform;transform:translateZ(0)}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.card--stack{display:grid;gap:.6rem;align-content:start;justify-items:start;text-align:left}.card--stack .icon-badge{width:48px;height:48px;border-radius:12px}.card--stack h3{margin:0}.card--stack .list{margin-top:.2rem}.card--stack .link{margin-top:.4rem}.services-grid{gap:1.1rem}.services-grid>.card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:1.05rem 1.15rem;box-shadow:0 10px 26px rgba(0,0,0,.20);backdrop-filter:blur(8px) saturate(1.04);transition:transform .14s ease,box-shadow .24s ease,border-color .2s ease}.features-grid,.process{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.feature.card,.step .card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:1.05rem 1.15rem;box-shadow:0 10px 26px rgba(0,0,0,.20);backdrop-filter:blur(8px) saturate(1.04);transition:transform .14s ease,box-shadow .24s ease,border-color .2s ease}.card--row::before{display:none}.section__header h2{letter-spacing:.2px}.section__header p{max-width:62ch}.section{padding-top:clamp(3.2rem,6vw,5.4rem);padding-bottom:clamp(3.2rem,6vw,5.4rem)}.container{max-width:1160px}.services-grid,.features-grid,.process,.portfolio-grid,.clients-grid,.pricing-grid,.testimonials-grid{gap:1.2rem}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.pricing.card,.testimonial .card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:1.05rem 1.15rem;box-shadow:0 10px 26px rgba(0,0,0,.20);backdrop-filter:blur(8px) saturate(1.04);transition:transform .14s ease,box-shadow .24s ease,border-color .2s ease}.pricing.card h3{margin:0}.pricing.card .price{margin:.1rem 0 .3rem}.avatar-sm{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,rgba(30,144,255,.5),rgba(255,111,0,.5));border:1px solid rgba(255,255,255,.22)}blockquote{margin:0;line-height:1.6}figure figcaption{color:var(--muted);margin-top:.5rem}.clients-grid span{font-weight:700}.clients-grid small{color:var(--muted)}.card--stack{display:grid;gap:.6rem;align-content:start;justify-items:start;text-align:left}.card--stack .icon-badge{width:48px;height:48px;border-radius:12px}.card--stack h3{margin:0}.card--stack .list{margin-top:.2rem}.card--stack .link{margin-top:.4rem}.clients-grid li.card{padding:1rem 1.1rem}.section__header{margin-bottom:clamp(1.6rem,3.5vw,2.2rem)}.services-grid,.features-grid,.process,.pricing-grid,.testimonials-grid,.clients-grid,.portfolio-grid{gap:1.2rem}.card--row{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem}.card--row .icon-badge{width:52px;height:52px;border-radius:14px}.card--row .card__media{flex:0 0 auto;display:grid;place-items:center}.card--row .card__body{flex:1;display:grid;gap:.35rem}.card--row h3{margin:0}@media(max-width:720px){.card--row{flex-direction:column;align-items:flex-start}}.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem}.clients-grid li.card{padding:1rem 1.1rem}.hero .row{margin-top:.3rem}.card{transform-style:preserve-3d}.card:hover .icon-badge{transform:translateZ(6px) scale(1.05)}.card:hover h3{text-shadow:0 2px 14px rgba(30,144,255,.2)}.portfolio-card img{transition:transform .28s ease,filter .28s ease}.portfolio-card:hover img{transform:scale(1.03);filter:saturate(1.05)}.btn:hover .icon{transform:translateY(-1px)}a:hover:not(.btn):not(.brand):not(.nav__toggle){color:var(--primary);box-shadow:inset 0 -0.45em rgba(30,144,255,.20)}.card--row:hover{border-color:rgba(255,255,255,.24)}.section__header p{max-width:60ch}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.1rem}.iframe-map{width:100%;height:280px;border:0;border-radius:12px}
:root {
  --brand-s: #ff6f00;
  --brand-od: #1e90ff;
}
