:root,.on-light{color-scheme:light;--bg-deep: #eef2f7;--bg: #ffffff;--bg-soft: #f4f7fa;--surface: #ffffff;--surface-2: #f8fafc;--surface-3: #eef2f6;--glass: #ffffff;--glass-hover: #ffffff;--glass-dark: rgba(3, 3, 3, .8);--fill: rgba(15, 23, 42, .035);--fill-strong: rgba(15, 23, 42, .07);--border: rgba(15, 23, 42, .09);--border-strong: rgba(15, 23, 42, .14);--border-hover: rgba(15, 23, 42, .26);--text: #0b1524;--text-1: #1e293b;--text-2: #475569;--text-3: #64748b;--text-eyebrow: #64748b;--accent: #0284c7;--accent-strong: #0ea5e9;--accent-dark: #0369a1;--accent-ultra: #0369a1;--accent-soft: rgba(14, 165, 233, .1);--accent-line: rgba(14, 165, 233, .3);--accent-glow: 0 8px 30px rgba(14, 165, 233, .3);--chip-text: #0369a1;--on-light: #030303;--d-automatizacion: #0284c7;--d-redes: #6366f1;--d-procesos: #0d9488;--d-obras: #d97706;--d-general: #64748b;--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .08);--success: #16a34a;--success-soft: rgba(22, 163, 74, .1);--font-display: "Exo 2", "Segoe UI", system-ui, sans-serif;--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, "Cascadia Mono", monospace;--fs-xs: .8rem;--fs-sm: .9375rem;--fs-base: 1rem;--fs-lead: clamp(1.0625rem, 1rem + .3vw, 1.1875rem);--fs-h3: 1.25rem;--fs-h2: clamp(1.875rem, 1.3rem + 2.2vw, 2.75rem);--fs-h1: clamp(2.25rem, 1.5rem + 3vw, 3.5rem);--gutter: clamp(20px, 4vw, 32px);--max: 1200px;--header-h: 72px;--admin-bar-h: 0px;--section-y: clamp(40px, 5vw, 60px);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-pill: 999px;--ease: cubic-bezier(.22, 1, .36, 1);--shadow: 0 18px 40px rgba(15, 23, 42, .1);--shadow-card: 0 1px 2px rgba(15, 23, 42, .04), 0 6px 20px rgba(15, 23, 42, .05)}.on-light{color:var(--text-2)}.on-dark{color-scheme:dark;--bg-deep: #030303;--bg: #0a0a0a;--bg-soft: #101010;--surface: #131313;--surface-2: #181818;--surface-3: #202020;--glass: rgba(255, 255, 255, .03);--glass-hover: rgba(255, 255, 255, .055);--fill: rgba(255, 255, 255, .04);--fill-strong: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--border-hover: rgba(255, 255, 255, .24);--text: #ffffff;--text-1: rgba(255, 255, 255, .85);--text-2: rgba(255, 255, 255, .65);--text-3: rgba(255, 255, 255, .42);--text-eyebrow: rgba(255, 255, 255, .55);--accent: #38bdf8;--accent-strong: #0ea5e9;--accent-dark: #0284c7;--accent-ultra: #7dd3fc;--accent-soft: rgba(14, 165, 233, .12);--accent-line: rgba(14, 165, 233, .3);--chip-text: rgba(125, 211, 252, .92);--d-automatizacion: #38bdf8;--d-redes: #818cf8;--d-procesos: #2dd4bf;--d-obras: #f5a623;--d-general: #94a3b8;--shadow: 0 20px 50px rgba(0, 0, 0, .35);--shadow-card: none;color:var(--text-2)}body.is-admin{--admin-bar-h: 40px}[data-d=automatizacion],[data-d=automatizacion] .on-dark{--d: var(--d-automatizacion)}[data-d=redes],[data-d=redes] .on-dark{--d: var(--d-redes)}[data-d=procesos],[data-d=procesos] .on-dark{--d: var(--d-procesos)}[data-d=obras],[data-d=obras] .on-dark{--d: var(--d-obras)}[data-d=general],[data-d=general] .on-dark{--d: var(--d-general)}*,*:before,*:after{box-sizing:border-box}html{font-size:106.25%;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + var(--admin-bar-h) + 16px)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text-2);font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}body.no-scroll{overflow:hidden}img,svg,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,figure,dl,dd{margin:0}::selection{background:var(--accent-soft);color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.container{width:100%;max-width:calc(var(--max) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-y)}.section--tight{padding-block:clamp(32px,4vw,44px)}.section--soft{background:var(--bg-soft)}.section--deep{background:var(--bg-deep);border-top:1px solid rgba(14,165,233,.12)}.section-head{display:grid;gap:16px;max-width:680px;margin-bottom:clamp(24px,3.5vw,36px)}.section-head--split{max-width:none}@media(min-width:900px){.section-head--split{grid-template-columns:1fr 1fr;align-items:end;gap:48px}.section-head--split>:last-child{justify-self:end;max-width:440px}}.section-head--center{margin-inline:auto;text-align:center;justify-items:center}.section-head--center .lead{margin-inline:auto}.stack{display:grid;justify-items:start;gap:14px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:10px 16px;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);font-size:var(--fs-sm);font-weight:500;transform:translateY(-160%);transition:transform .2s var(--ease)}.skip-link:focus{transform:none}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--glass);box-shadow:var(--shadow-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease}a.card:hover,.card--hover:hover{background:var(--glass-hover);border-color:#0ea5e940;box-shadow:var(--shadow),0 0 0 1px #0ea5e91a;transform:translateY(-4px)}.icon-box{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--fill);color:var(--accent);transition:background-color .3s,box-shadow .3s}.icon-box--sm{width:40px;height:40px;border-radius:10px}.icon-box--lg{width:60px;height:60px;border-radius:14px}.divider{height:1px;border:0;margin:0;background:var(--border)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#0ea5e966;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-strong)}.h1,.h2,.h3,h1,h2,h3,h4{font-family:var(--font-display);color:var(--text);font-weight:700;text-wrap:balance}.h1{font-size:var(--fs-h1);font-weight:800;line-height:1.08;letter-spacing:-.01em}.h2{font-size:var(--fs-h2);font-weight:800;line-height:1.12;letter-spacing:-.005em}.h3{font-size:var(--fs-h3);line-height:1.3}.lead{font-size:var(--fs-lead);line-height:1.75;color:var(--text-2);text-wrap:pretty;max-width:62ch}p{text-wrap:pretty}.mono{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em}.eyebrow{display:inline-flex;align-items:center;padding:3px 0 3px 12px;border-left:3px solid var(--d, var(--accent-strong));font-family:var(--font-mono);font-size:.82rem;font-weight:400;line-height:1.3;letter-spacing:.22em;text-transform:uppercase;color:var(--text-eyebrow)}.section-head--center .eyebrow{padding-right:12px}.dot{display:inline-block;flex:none;width:6px;height:6px;border-radius:50%;background:var(--d, var(--accent))}.chip{display:inline-flex;align-items:center;gap:8px;height:26px;padding:0 10px;border:1px solid rgba(14,165,233,.22);border-radius:6px;background:#0ea5e914;color:var(--chip-text);font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.03em;white-space:nowrap;transition:border-color .2s,background-color .2s,color .2s}a.chip:hover{border-color:#0ea5e980;background:#0ea5e929;color:var(--accent-ultra)}.link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:600;letter-spacing:.03em;transition:gap .25s ease,color .2s}.link aris-icon{transition:transform .25s var(--ease)}.link:hover{gap:10px;color:var(--accent-ultra)}.link:hover aris-icon{transform:translate(2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 26px;border:1px solid transparent;border-radius:10px;font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.04em;line-height:1;white-space:nowrap;transition:background .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,transform .3s ease}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn .slide{transition:transform .25s var(--ease)}.btn:hover .slide{transform:translate(3px)}.btn--primary{background:linear-gradient(135deg,var(--accent-strong) 0%,var(--accent-dark) 100%);color:#fff;box-shadow:0 4px 20px #0ea5e94d}.btn--primary:hover:not(:disabled){background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);box-shadow:0 8px 30px #0ea5e973;transform:translateY(-2px)}.btn--ghost{border-color:var(--border-hover);background:transparent;color:var(--text);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-weight:600}.btn--ghost:hover:not(:disabled){border-color:var(--accent-strong);background:#0ea5e91a;color:var(--accent-ultra);box-shadow:0 4px 20px #0ea5e926;transform:translateY(-2px)}.btn--danger{border-color:#f8717159;background:var(--danger-soft);color:var(--danger)}.btn--danger:hover:not(:disabled){border-color:var(--danger)}.btn--sm{height:38px;padding:0 18px;font-size:.8125rem}.btn--block{width:100%}.btn--wrap{height:auto;min-height:46px;padding-block:12px;white-space:normal;text-align:center;line-height:1.3}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-strong);border-radius:10px;background:var(--fill);color:var(--text-2);cursor:pointer;transition:border-color .2s,color .2s,background-color .2s}.icon-btn:hover:not(:disabled):not(.is-disabled){border-color:#0ea5e966;background:#0ea5e91a;color:var(--accent-ultra)}.icon-btn:disabled,.icon-btn.is-disabled{cursor:not-allowed;opacity:.4}.icon-btn--sm{width:32px;height:32px}.icon-btn.danger:hover:not(:disabled){border-color:#f8717180;background:var(--danger-soft);color:var(--danger)}.field{display:grid;gap:8px}.field>span:first-child{font-size:.8125rem;font-weight:500;color:var(--text-1)}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);font-size:var(--fs-base);transition:border-color .2s,box-shadow .2s}.field input::placeholder,.field select::placeholder,.field textarea::placeholder{color:var(--text-3)}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--border-hover)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent-strong);background:#0ea5e90a;box-shadow:0 0 0 3px var(--accent-soft)}.field select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2338bdf8' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.field select option,.field select optgroup{background:var(--surface-2);color:var(--text)}.field textarea{resize:vertical;min-height:120px;line-height:1.6}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#f8717199}.field-error{font-size:.8125rem;color:var(--danger)}.form-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-size:var(--fs-sm);line-height:1.5}.form-alert aris-icon{margin-top:1px}.spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.reveal{opacity:0}.reveal.is-visible{animation:reveal-in .8s var(--ease) var(--reveal-delay, 0ms) both}@keyframes reveal-in{0%{opacity:0;translate:0 14px}to{opacity:1;translate:none}}@media(prefers-reduced-motion:reduce){.reveal,.reveal.is-visible{opacity:1;animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::view-transition-old(root),::view-transition-new(root){animation-duration:.28s;animation-timing-function:var(--ease)}
