:root{
  --orange:#f58220;
  --orange-2:#ff9d3f;
  --orange-dark:#d96812;
  --ink:#202427;
  --ink-2:#2d3337;
  --graphite:#343a3e;
  --muted:#687177;
  --muted-light:#aab2b7;
  --line:#dfe3e5;
  --paper:#f7f7f4;
  --paper-2:#eceeea;
  --white:#fff;
  --dark:#171b1d;
  --dark-2:#202527;
  --header:76px;
  --radius:22px;
  --shadow:0 20px 60px rgba(22,27,29,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open,body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}img{display:block;max-width:100%}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.section{padding:112px 0;content-visibility:auto;contain-intrinsic-size:700px}
.overline{margin:0 0 18px;font-size:.72rem;line-height:1.2;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:var(--orange-dark)}
.overline.light{color:#ffb776}
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:3000;pointer-events:none;background:rgba(255,255,255,.05)}
.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--orange),#ffb267);transform-origin:left center;will-change:transform}

/* Header: sobrio, rápido, sin blur costoso */
.site-header{height:var(--header);position:fixed;inset:0 0 auto;z-index:1000;background:rgba(23,27,29,.96);border-bottom:1px solid rgba(255,255,255,.08);transition:height .24s ease,background .24s ease,box-shadow .24s ease}
.site-header.scrolled{height:68px;background:rgba(23,27,29,.985);box-shadow:0 12px 28px rgba(0,0,0,.14)}
.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{height:54px;display:inline-flex;align-items:center;gap:11px;flex:0 0 auto;transition:transform .2s ease}
.brand:hover{transform:translateY(-1px)}
.brand-mark{height:43px;width:39px;object-fit:contain}
.brand-copy{display:flex;flex-direction:column;line-height:1;color:#fff}.brand-copy strong{font-family:Manrope,sans-serif;font-size:1.08rem;letter-spacing:.055em}.brand-copy small{margin-top:4px;font-size:.56rem;text-transform:uppercase;letter-spacing:.09em;color:#aeb6ba;font-weight:700}
.site-header.scrolled .brand-mark{height:38px;width:35px}
.main-nav{display:flex;align-items:center;gap:26px}.nav-link{font-size:.8rem;font-weight:600;color:#c5cbce;transition:color .2s ease}.nav-link:hover,.nav-link.active{color:#fff}.nav-link.active{position:relative}.nav-link.active::after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:2px;background:var(--orange);border-radius:2px}
.nav-cta{height:42px;padding:0 17px;border:1px solid rgba(255,255,255,.22);border-radius:11px;background:rgba(255,255,255,.05);color:#fff;font-size:.78rem;font-weight:750;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.nav-cta:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-1px)}
.nav-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:11px;cursor:pointer}.nav-toggle span{display:block;width:100%;height:2px;background:#fff;margin:6px 0;transition:transform .2s ease}.nav-toggle.active span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle.active span:last-child{transform:translateY(-4px) rotate(-45deg)}

/* Hero */
.hero{min-height:100svh;display:flex;align-items:center;padding:136px 0 82px;position:relative;overflow:hidden;background:linear-gradient(135deg,#15191b 0%,#202527 54%,#24292c 100%);color:#fff}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 82%);pointer-events:none}
.hero::after{content:"";position:absolute;right:-16%;top:-20%;width:58vw;height:58vw;max-width:850px;max-height:850px;border-radius:50%;background:radial-gradient(circle,rgba(245,130,32,.18),rgba(245,130,32,.035) 38%,transparent 69%);pointer-events:none}
.hero-ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.hero-ambient span{position:absolute;border:1px solid rgba(245,130,32,.16);border-radius:50%;animation:ambientDrift 10s ease-in-out infinite alternate}.hero-ambient span:nth-child(1){width:420px;height:420px;right:6%;top:7%}.hero-ambient span:nth-child(2){width:260px;height:260px;right:14%;top:18%;animation-delay:-3s}.hero-ambient span:nth-child(3){width:90px;height:90px;right:29%;top:39%;background:rgba(245,130,32,.05);animation-delay:-6s}
.hero-layout{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;position:relative;z-index:1}.hero-copy{max-width:720px}.hero .overline{color:#ffb474}.hero h1{font-family:Manrope,sans-serif;margin:0;font-size:clamp(3.2rem,5.35vw,5.9rem);line-height:1.035;letter-spacing:-.055em;font-weight:620}.hero-accent{color:var(--orange-2);position:relative;display:inline-block}.hero-accent::after{content:"";position:absolute;height:5px;left:4%;right:1%;bottom:.015em;background:linear-gradient(90deg,var(--orange),transparent);border-radius:6px;transform:scaleX(.15);transform-origin:left;animation:accentDraw 1.2s .45s cubic-bezier(.2,.8,.2,1) forwards;pointer-events:none}
.hero-intro{max-width:650px;margin:29px 0 0;color:#c3c9cc;font-size:1.03rem;line-height:1.78}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:35px}.button{min-height:49px;padding:0 20px;border-radius:11px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:.84rem;font-weight:750;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.button svg{width:17px;height:17px}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--orange);color:#fff;box-shadow:0 12px 28px rgba(245,130,32,.22)}.button-primary:hover{background:#ff8b2b;box-shadow:0 18px 36px rgba(245,130,32,.28)}.button-light{background:#fff;color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700;color:#e5e9eb;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:3px}.text-link svg{width:16px}.hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:40px}.hero-tags span{padding:8px 10px;border:1px solid rgba(255,255,255,.13);border-radius:8px;color:#cbd0d2;font-size:.72rem;font-weight:600;background:rgba(255,255,255,.035)}

/* Technical board with only compositor-friendly animation */
.hero-system{min-height:518px;border:1px solid rgba(255,255,255,.11);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));box-shadow:0 30px 80px rgba(0,0,0,.24);overflow:hidden;position:relative;isolation:isolate}.hero-system::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.055) 48%,transparent 66%);transform:translateX(-120%);animation:panelSweep 7s ease-in-out infinite;pointer-events:none;z-index:3}.system-topbar{height:52px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;font-size:.64rem;letter-spacing:.11em;font-weight:700;color:#aab2b7}.live-dot{display:inline-flex;align-items:center;gap:7px}.live-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(245,130,32,.09);animation:pulse 2s ease-in-out infinite}.system-canvas{height:408px;position:relative}.circuit{position:absolute;inset:0;width:100%;height:100%;color:rgba(255,255,255,.04)}.circuit-base,.circuit-flow{fill:none;stroke-linecap:round;stroke-linejoin:round}.circuit-base{stroke:rgba(255,255,255,.18);stroke-width:3}.circuit-flow{stroke:var(--orange);stroke-width:3;stroke-dasharray:12 18;animation:dashFlow 3.3s linear infinite}.node{fill:#23292b;stroke:#b4bcc0;stroke-width:3}.system-label{position:absolute;width:145px;padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(23,27,29,.86);box-shadow:0 10px 28px rgba(0,0,0,.18);transition:transform .22s ease,border-color .22s ease,background .22s ease}.system-label:hover{transform:translateY(-4px);border-color:rgba(245,130,32,.5);background:#24292b}.system-label small{display:block;color:var(--orange-2);font-weight:700;font-size:.62rem;letter-spacing:.1em}.system-label strong{display:block;margin-top:4px;font-size:.78rem;color:#fff}.system-label span{display:block;margin-top:3px;color:#9ea7ab;font-size:.64rem}.label-a{left:7%;top:44%}.label-b{left:28%;top:12%}.label-c{right:9%;top:40%}.label-d{right:3%;bottom:7%}.system-footer{height:58px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:flex-start;gap:28px;padding:0 24px;color:#bec5c8}.system-footer span{display:inline-flex;align-items:center;gap:7px;font-size:.68rem;font-weight:600;white-space:nowrap}.system-footer svg{width:15px;flex:0 0 auto;color:var(--orange)}

.signal-strip{height:46px;overflow:hidden;background:var(--orange);color:#171b1d;display:flex;align-items:center}.signal-track{display:flex;align-items:center;gap:18px;width:max-content;white-space:nowrap;animation:ticker 25s linear infinite;will-change:transform}.signal-track span{font-size:.66rem;font-weight:850;letter-spacing:.14em}.signal-track i{display:block;width:5px;height:5px;border-radius:50%;background:#171b1d;opacity:.45}

.scope-strip{border-bottom:1px solid var(--line);background:#fff}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr)}.scope-grid>div{padding:30px 30px;display:grid;grid-template-columns:auto 1fr;column-gap:13px;row-gap:4px;border-right:1px solid var(--line);position:relative;overflow:hidden;transition:background .22s ease}.scope-grid>div:hover{background:#faf5ef}.scope-grid>div::after{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:var(--orange);transition:width .35s cubic-bezier(.2,.8,.2,1)}.scope-grid>div:hover::after{width:100%}.scope-grid>div:first-child{padding-left:0}.scope-grid>div:last-child{border-right:0}.scope-grid span{grid-row:1/3;color:var(--orange-dark);font-size:.68rem;font-weight:750;letter-spacing:.08em}.scope-grid strong{font-family:Manrope,sans-serif;font-size:.96rem}.scope-grid small{color:var(--muted);font-size:.74rem;line-height:1.45}

/* About: richer split layout */
.about{background:linear-gradient(180deg,#f0f1ed 0%,#f7f7f4 100%);position:relative}.about::before{content:"";position:absolute;left:0;top:0;width:28%;height:100%;background:linear-gradient(180deg,rgba(245,130,32,.08),transparent 65%);clip-path:polygon(0 0,100% 0,60% 100%,0 100%);pointer-events:none}.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:88px;position:relative}.section-title{padding:34px 0 34px 34px;border-left:4px solid var(--orange)}.section-title h2,.services-heading h2,.process-heading h2,.contact-copy h2{font-family:Manrope,sans-serif;margin:0;font-size:clamp(2.35rem,4vw,4rem);letter-spacing:-.045em;line-height:1.07;font-weight:620}.about-copy{padding:42px;border:1px solid rgba(32,36,39,.08);border-radius:var(--radius);background:rgba(255,255,255,.66);box-shadow:0 18px 48px rgba(27,31,33,.05)}.about-copy p{margin:0 0 20px;color:var(--muted);line-height:1.82}.about-copy .lead{font-size:1.13rem;color:#454d51}.principles{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}.principles span{border:1px solid #d4d9db;background:#fff;border-radius:999px;padding:9px 12px;font-size:.69rem;font-weight:650;color:#4f575c;transition:transform .2s ease,border-color .2s ease}.principles span:hover{transform:translateY(-2px);border-color:#efae79}

/* Services */
.services{background:#202527;color:#fff;position:relative;overflow:hidden}.services::before{content:"";position:absolute;right:-140px;bottom:-140px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(245,130,32,.14),transparent 67%)}.services .overline{color:#ffb474}.services-heading{max-width:790px;margin-bottom:55px;position:relative}.services-heading>p:last-child{color:#abb3b7;line-height:1.75;max-width:660px}.service-explorer{display:grid;grid-template-columns:.76fr 1.24fr;border:1px solid rgba(255,255,255,.10);border-radius:24px;overflow:hidden;background:#171b1d;box-shadow:0 24px 80px rgba(0,0,0,.2);position:relative}.service-tabs{border-right:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.02)}.service-tab{width:100%;min-height:126px;border:0;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;color:#fff;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:15px;padding:24px 23px;text-align:left;cursor:pointer;position:relative;transition:background .23s ease,color .23s ease}.service-tab:last-child{border-bottom:0}.service-tab::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--orange);transform:scaleY(0);transition:transform .24s ease;transform-origin:center}.service-tab:hover{background:rgba(255,255,255,.035)}.service-tab.active{background:linear-gradient(90deg,rgba(245,130,32,.12),rgba(245,130,32,.025))}.service-tab.active::before{transform:scaleY(1)}.service-number{align-self:start;padding-top:4px;color:#7f898e;font-size:.66rem;font-weight:750}.service-tab.active .service-number{color:var(--orange-2)}.service-tab-copy strong{display:block;font-family:Manrope,sans-serif;font-size:1rem}.service-tab-copy small{display:block;margin-top:6px;color:#8f999e;font-size:.69rem;line-height:1.35}.service-tab>svg{width:18px;color:#707a7e;transition:transform .2s ease,color .2s ease}.service-tab.active>svg{transform:translateX(3px);color:var(--orange)}
.service-detail{padding:58px 56px;min-height:440px;display:flex;flex-direction:column;justify-content:center;transition:opacity .16s ease,transform .16s ease}.service-detail.is-changing{opacity:.25;transform:translateY(8px)}.service-detail-top{display:flex;align-items:center;gap:13px;margin-bottom:26px}.service-detail-icon{width:43px;height:43px;border-radius:12px;background:rgba(245,130,32,.12);border:1px solid rgba(245,130,32,.25);display:grid;place-items:center;color:var(--orange)}.service-detail-icon svg{width:21px}.service-detail-top>span{font-size:.65rem;letter-spacing:.12em;color:#98a1a5;font-weight:750}.service-detail h3{font-family:Manrope,sans-serif;margin:0;font-size:clamp(1.9rem,2.8vw,2.75rem);line-height:1.11;letter-spacing:-.035em;font-weight:620}.service-detail>p{margin:20px 0 0;color:#aab2b6;line-height:1.76}.service-detail ul{margin:24px 0 0;padding:0;list-style:none;display:grid;gap:11px}.service-detail li{position:relative;padding-left:22px;font-size:.82rem;color:#c5cbce;line-height:1.5}.service-detail li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:3px;background:var(--orange);border-radius:3px}.detail-action{border:0;background:transparent;color:#fff;padding:0;margin-top:34px;display:inline-flex;align-items:center;gap:8px;font-weight:750;font-size:.8rem;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:3px;align-self:flex-start;transition:color .2s ease,border-color .2s ease}.detail-action:hover{color:var(--orange-2);border-color:var(--orange-2)}.detail-action svg{width:16px}

/* Process */
.process{background:linear-gradient(180deg,#fff 0%,#f7f7f4 100%)}.process-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:94px}.process-heading{position:sticky;top:116px;align-self:start}.process-heading>p:last-child{color:var(--muted);line-height:1.75;max-width:520px;margin-top:20px}.process-list{position:relative}.process-list::before{content:"";position:absolute;left:20px;top:24px;bottom:24px;width:2px;background:linear-gradient(var(--orange),#d9dddf);transform-origin:top}.process-item{display:grid;grid-template-columns:42px 1fr;gap:24px;padding:28px 0 30px 0;position:relative;transition:transform .22s ease}.process-item:hover{transform:translateX(6px)}.process-item>span{position:relative;z-index:1;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d9dddf;color:var(--orange-dark);font-size:.67rem;font-weight:800;letter-spacing:.04em;transition:background .2s ease,color .2s ease,border-color .2s ease}.process-item:hover>span{background:var(--orange);color:#fff;border-color:var(--orange)}.process-item h3{font-family:Manrope,sans-serif;margin:2px 0 0;font-size:1.08rem}.process-item p{margin:8px 0 0;color:var(--muted);line-height:1.65;font-size:.85rem}

.contact{padding-top:44px}.contact-panel{background:linear-gradient(125deg,#1d2224,#282f32);color:#fff;border-radius:26px;padding:66px 66px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:54px;position:relative;overflow:hidden;box-shadow:var(--shadow)}.contact-panel::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:38px 38px}.contact-panel::after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(245,130,32,.27);border-radius:50%;right:-230px;top:-230px;box-shadow:0 0 0 50px rgba(245,130,32,.025),0 0 0 100px rgba(245,130,32,.012)}.contact-copy{position:relative;z-index:1;max-width:760px}.contact-copy p:last-child{margin:20px 0 0;color:#b8bec1;line-height:1.7;max-width:650px}.contact-panel>.button{position:relative;z-index:1;white-space:nowrap}

.site-footer{margin-top:110px;background:#171b1d;color:#fff;padding:68px 0 22px;border-top:4px solid var(--orange)}.footer-grid{display:grid;grid-template-columns:1.45fr .72fr .95fr .85fr;gap:56px}.footer-logo{display:inline-block;width:108px}.footer-logo img{width:100%;height:auto;filter:brightness(0) invert(1);opacity:.92}.footer-brand p{max-width:320px;color:#9fa8ac;line-height:1.6;font-size:.78rem;margin:18px 0 0}.footer-column h3{font-family:Manrope,sans-serif;margin:0 0 18px;font-size:.78rem;color:#fff}.footer-column a,.footer-column p,.footer-button{display:block;margin:0 0 12px;color:#9fa8ac;font-size:.76rem;line-height:1.5}.footer-column a{transition:color .2s ease,transform .2s ease}.footer-column a:hover{color:#fff;transform:translateX(2px)}.footer-contact p{display:flex;gap:8px}.footer-contact p svg{width:15px;flex:0 0 auto;margin-top:2px}.footer-button{border:0;background:transparent;padding:0;cursor:pointer;text-align:left}.footer-button:hover{color:#fff}.footer-bottom{margin-top:48px;padding-top:19px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;color:#7f898d;font-size:.68rem}.footer-bottom a{display:inline-flex;align-items:center;gap:7px}.footer-bottom svg{width:14px}

.whatsapp-float{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;z-index:900;box-shadow:0 10px 26px rgba(24,31,27,.22);transition:transform .22s ease,box-shadow .22s ease}.whatsapp-float::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(37,211,102,.35);border-radius:50%;animation:waPulse 2.7s ease-out infinite}.whatsapp-float:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 14px 34px rgba(24,31,27,.3)}.whatsapp-float svg{width:28px;height:28px}

.quote-modal{position:fixed;inset:0;z-index:2200;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.quote-modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(14,17,19,.66)}.quote-dialog{position:relative;z-index:1;width:min(840px,100%);max-height:min(820px,calc(100svh - 48px));overflow:auto;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.8);border-radius:22px;box-shadow:0 32px 100px rgba(0,0,0,.3);padding:38px;transform:translateY(18px) scale(.985);transition:transform .24s cubic-bezier(.2,.8,.2,1),opacity .24s ease;opacity:0}.quote-modal.open .quote-dialog{transform:none;opacity:1}.modal-close{position:absolute;right:20px;top:20px;width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:9px;display:grid;place-items:center;cursor:pointer;transition:transform .2s ease,background .2s ease}.modal-close:hover{transform:rotate(5deg);background:#f4f4f2}.modal-close svg{width:17px}.quote-head{padding-right:48px;margin-bottom:30px}.quote-head h2{font-family:Manrope,sans-serif;margin:0;font-size:2rem;letter-spacing:-.04em}.quote-head>p:last-child{margin:10px 0 0;color:var(--muted);font-size:.86rem}.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}form label{display:block;margin-bottom:16px}form label>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.72rem;font-weight:650;color:#4d5559}form label em{font-style:normal;font-size:.65rem;color:#9aa1a5;font-weight:500}input,select,textarea{width:100%;border:1px solid #d6dbdd;background:#fff;border-radius:10px;padding:12px 13px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}textarea{resize:vertical;min-height:130px}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(245,130,32,.10);background:#fffdfb}label.invalid input,label.invalid select,label.invalid textarea{border-color:#d54e45;box-shadow:0 0 0 3px rgba(213,78,69,.07)}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:8px}.form-footer p{display:flex;align-items:flex-start;gap:8px;margin:0;max-width:440px;color:#7a8286;font-size:.68rem;line-height:1.5}.form-footer p svg{width:15px;flex:0 0 auto;margin-top:2px}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);padding:11px 14px;border-radius:9px;background:#24282a;color:#fff;font-size:.74rem;z-index:2600;opacity:0;visibility:hidden;transition:.22s ease}.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}

.js .reveal,.js .hero-reveal{opacity:0;transform:translateY(18px)}.js .is-visible{opacity:1;transform:none;transition:opacity .62s cubic-bezier(.2,.8,.2,1),transform .62s cubic-bezier(.2,.8,.2,1)}
.hero-copy .hero-reveal:nth-child(2){transition-delay:.07s}.hero-copy .hero-reveal:nth-child(3){transition-delay:.14s}.hero-copy .hero-reveal:nth-child(4){transition-delay:.20s}.hero-copy .hero-reveal:nth-child(5){transition-delay:.26s}
@keyframes dashFlow{to{stroke-dashoffset:-60}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 5px rgba(245,130,32,.09)}50%{box-shadow:0 0 0 9px rgba(245,130,32,.025)}}
@keyframes ambientDrift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-16px,12px,0) scale(1.04)}}
@keyframes panelSweep{0%,70%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes accentDraw{to{transform:scaleX(1)}}
@keyframes ticker{to{transform:translate3d(-50%,0,0)}}
@keyframes waPulse{0%{transform:scale(.96);opacity:.65}70%,100%{transform:scale(1.3);opacity:0}}

@media(max-width:980px){
  .container{width:min(100% - 36px,1180px)}.section{padding:88px 0}.main-nav{gap:19px}.nav-link{font-size:.75rem}.hero{min-height:auto;padding:128px 0 82px}.hero-layout{grid-template-columns:1fr;gap:54px}.hero-copy{max-width:760px}.hero-system{max-width:730px;width:100%;justify-self:center}.about-grid,.process-layout{grid-template-columns:1fr;gap:48px}.about-copy{padding:34px}.process-heading{position:static}.service-explorer{grid-template-columns:1fr}.service-tabs{border-right:0;border-bottom:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:repeat(3,1fr)}.service-tab{min-height:128px;border-right:1px solid rgba(255,255,255,.08);border-bottom:0;padding:20px 14px;grid-template-columns:30px 1fr}.service-tab:last-child{border-right:0}.service-tab>svg{display:none}.service-tab.active{padding-left:14px}.service-tab::before{left:0;right:0;top:auto;bottom:0;width:auto;height:3px;transform:scaleX(0)}.service-tab.active::before{transform:scaleX(1)}.service-detail{padding:48px;max-width:760px}.contact-panel{grid-template-columns:1fr;align-items:start}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-contact{grid-column:2/4}
}
@media(max-width:760px){
  :root{--header:68px}.container{width:calc(100% - 32px)}.site-header,.site-header.scrolled{height:68px}.brand{height:48px}.brand-mark{height:38px;width:35px}.brand-copy strong{font-size:1rem}.main-nav{position:fixed;top:68px;left:0;right:0;background:#171b1d;border-bottom:1px solid rgba(255,255,255,.08);padding:22px 16px 28px;display:flex;flex-direction:column;align-items:stretch;gap:0;transform:translateY(-120%);opacity:0;pointer-events:none;transition:transform .24s ease,opacity .24s ease}.main-nav.open{transform:none;opacity:1;pointer-events:auto}.nav-link{padding:14px 2px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.88rem}.nav-link.active::after{display:none}.nav-cta{margin-top:18px;width:100%}.nav-toggle{display:block}.hero{padding:112px 0 68px}.hero h1{font-size:clamp(2.7rem,13vw,4.2rem)}.hero-intro{font-size:.97rem}.hero-system{min-height:420px}.system-canvas{height:320px}.system-label{width:122px;padding:8px}.label-a{left:4%;top:47%}.label-b{left:25%;top:8%}.label-c{right:4%;top:42%}.label-d{right:3%;bottom:5%}.system-footer{height:48px;gap:15px;padding:0 16px}.system-footer span{font-size:.6rem}.scope-grid{grid-template-columns:1fr}.scope-grid>div,.scope-grid>div:first-child{padding:20px 0;border-right:0;border-bottom:1px solid var(--line)}.scope-grid>div:last-child{border-bottom:0}.section-title{padding-left:22px}.about-copy{padding:28px 24px}.service-tabs{grid-template-columns:1fr}.service-tab{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);min-height:94px}.service-tab:last-child{border-bottom:0}.service-tab::before{left:0;top:0;bottom:0;right:auto;width:3px;height:auto;transform:scaleY(0)}.service-tab.active::before{transform:scaleY(1)}.service-detail{padding:38px 24px}.contact-panel{padding:44px 28px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1/3}.footer-contact{grid-column:auto}.footer-bottom{gap:16px}.quote-dialog{padding:30px 20px 24px}.form-grid.two{grid-template-columns:1fr;gap:0}.form-footer{flex-direction:column;align-items:stretch}.form-footer .button{width:100%}.whatsapp-float{right:16px;bottom:16px}.signal-track{animation-duration:32s}
}
@media(max-width:480px){.brand-copy small{display:none}.hero-actions{align-items:flex-start;flex-direction:column}.hero-system{min-height:370px}.system-canvas{height:275px}.system-label{width:106px}.system-label span{display:none}.system-footer span:nth-child(2){display:none}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.contact-panel{padding:38px 22px}.section{padding:76px 0}.about::before{width:50%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.js .reveal,.js .hero-reveal{opacity:1;transform:none}}

/* v6 — Diagrama de solución interactivo y ligero */
.system-heading{display:inline-flex;align-items:center;gap:9px}
.system-led{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(245,130,32,.09);animation:pulse 2s ease-in-out infinite;flex:0 0 auto}
.system-phase{display:inline-flex;align-items:center;gap:10px;color:#8f989d;letter-spacing:.08em}
.system-phase b{color:var(--orange-2);font-size:.62rem;font-weight:800;font-variant-numeric:tabular-nums}
.system-phase span{color:#d8dddf;font-size:.61rem;font-weight:750;min-width:82px;text-align:right}
.phase-rail{position:absolute;z-index:4;top:16px;left:18px;right:18px;height:3px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;pointer-events:none}
.phase-rail span{height:100%;border-radius:3px;background:rgba(255,255,255,.09);transform-origin:left;transition:background .28s ease,transform .28s ease}
.phase-rail span.done{background:rgba(245,130,32,.38)}
.phase-rail span.active{background:var(--orange);animation:railPulse 1.45s ease-in-out infinite alternate}
.circuit-secondary{fill:none;stroke:rgba(255,255,255,.085);stroke-width:1.5;stroke-dasharray:4 9;stroke-linecap:round;stroke-linejoin:round}
.secondary-node{fill:#303639;stroke:rgba(255,255,255,.18);stroke-width:1.5}
.circuit-segment{fill:none;stroke:var(--orange-2);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .28s ease,stroke-width .28s ease}
.circuit-segment.active{opacity:.24;stroke-width:9}
.node-step .node{fill:#23292b;stroke:#aeb7bb;stroke-width:3;transition:fill .25s ease,stroke .25s ease}
.node-ring{fill:none;stroke:var(--orange);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .25s ease}
.node-step.active .node{fill:var(--orange);stroke:#ffd1a8}
.node-step.active .node-ring{opacity:.72;animation:nodeRing 1.55s ease-out infinite}
.node-step.done .node{stroke:rgba(245,130,32,.8)}
.end-node{fill:#23292b;stroke:#aeb7bb;stroke-width:3}
.energy-packet{fill:#ffd0a3;stroke:var(--orange);stroke-width:1.5;opacity:.98}
.packet-two{opacity:.72}.packet-three{opacity:.48}
.system-label{appearance:none;-webkit-appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;outline:none;z-index:5}
.system-label::after{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:3px;border-radius:4px;background:var(--orange);transform:scaleY(0);transform-origin:center;transition:transform .22s ease}
.system-label:hover,.system-label:focus-visible{transform:translateY(-4px);border-color:rgba(245,130,32,.5);background:#24292b}
.system-label:focus-visible{box-shadow:0 0 0 3px rgba(245,130,32,.14),0 10px 28px rgba(0,0,0,.18)}
.system-label.active{transform:translateY(-4px);border-color:rgba(245,130,32,.68);background:#292e30;box-shadow:0 14px 34px rgba(0,0,0,.25)}
.system-label.active::after{transform:scaleY(1)}
.system-label.active small{color:#ffc48d}
.system-label.done{border-color:rgba(245,130,32,.2)}
.system-readout{position:absolute;z-index:4;left:18px;bottom:17px;width:min(250px,45%);padding:11px 13px 10px;border-left:2px solid var(--orange);background:rgba(18,22,24,.58);pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.system-readout.changing{opacity:.32;transform:translateY(3px)}
.system-readout span{display:block;color:#f4f5f5;font-size:.61rem;letter-spacing:.1em;font-weight:800}
.system-readout p{margin:5px 0 0;color:#9ea7ab;font-size:.62rem;line-height:1.45}
.system-footer small{margin-left:auto;margin-right:0;color:#747d82;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.hero-system:hover .circuit-base{stroke:rgba(255,255,255,.23)}
.hero-system:hover .circuit-flow{stroke:#ff912f}

@keyframes nodeRing{0%{transform:scale(.72);opacity:.72}72%,100%{transform:scale(1.28);opacity:0}}
@keyframes railPulse{from{opacity:.62}to{opacity:1}}

@media(max-width:760px){
  .system-phase span{display:none}.system-phase b{font-size:.6rem}.phase-rail{left:14px;right:14px;top:13px}
  .system-readout{display:none}.system-footer small{display:none}
}
@media(max-width:480px){
  .system-topbar{padding:0 14px}.system-heading{font-size:.58rem}.system-phase{gap:4px}
}
@media(prefers-reduced-motion:reduce){
  .system-led,.node-step.active .node-ring,.phase-rail span.active{animation:none!important}
}


/* Formulario web — envío directo a DIYIA */
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.form-message{margin:6px 0 16px;padding:12px 14px;border-radius:10px;background:#eef2f3;border:1px solid #d8dfe1;color:#4d5559;font-size:.75rem;line-height:1.5}
.form-message.success{background:#eef8f2;border-color:#c8e5d3;color:#23633d}
.form-message.error{background:#fff2f0;border-color:#efccc7;color:#9c3d35}
.form-submit{min-width:168px;position:relative}
.form-submit:disabled{cursor:default;opacity:.88}
.form-submit.is-loading svg{animation:formSendSpin .9s linear infinite}
.form-submit.is-success{background:#2d7b4e;border-color:#2d7b4e}
@keyframes formSendSpin{to{transform:rotate(360deg)}}
