:root {
  --home-brand: #022639;
  --home-brand-deep: #022639;
  --home-accent: #aabf00;
  --home-orange: #ffb502;
  --home-cyan: #ffb502;
  --home-black: #1d1d1b;
  --home-ink: #1d1d1b;
  --home-muted: #4a4a46;
  --home-surface: #f4f8f9;
  --home-paper: #ffffff;
  --home-paper-cool: #f7fafb;
  --home-paper-mist: #edf3f5;
  --home-line: rgba(2, 38, 57, .14);
  --home-radius: 1.25rem;
  --home-shadow: 0 28px 80px rgba(0, 38, 59, .14);
  --home-ease: cubic-bezier(.22, 1, .36, 1);
  --font-brand: "Comfortaa", "Trebuchet MS", Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body { color: var(--home-ink); font-size: 16px; }
.home-page,
.home-page button,
.home-page input,
.home-page textarea,
.home-page select { font-family: var(--font-brand); }
.home-page h1,
.home-page h2,
.home-page h3,
.home-page h4,
.home-page h5,
.home-page h6 { font-family: var(--font-brand); font-weight: 700; }
.home-page .btn-primary { color:#fff; background:var(--home-accent); border-color:var(--home-accent); font-weight:700; }
.home-page .btn-primary:hover,
.home-page .btn-primary:focus { color:#fff; background:var(--home-orange); border-color:var(--home-orange); }
.home-page .bg-ds-secondary { background-color:var(--home-accent) !important; }
.home-page .text-ds-blue { color:var(--home-brand) !important; }
.home-page .text-accent { color:var(--home-accent) !important; }
.home-page .ds-link-item-accent { color:var(--home-brand) !important; }
.home-page .main-header .ds-link-item--current { color:var(--home-brand) !important; background:var(--home-orange) !important; border-radius:999px; padding:4px 12px; }
.home-page .main-header.header-white,
.home-page .main-header.header-white.transparent {
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid rgba(0, 38, 59, .09);
  box-shadow: 0 8px 28px rgba(0, 38, 59, .07);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
  transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.home-page .main-header.header-white.sticky-nav,
.home-page .main-header.header-white.transparent.sticky-nav {
  background: rgba(255, 255, 255, .99);
  border-bottom-color: rgba(0, 38, 59, .13);
  box-shadow: 0 10px 34px rgba(0, 38, 59, .11);
}
.home-page .main-header .glass-effect {
  background: transparent;
  border: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.home-page .main-header.header-white.transparent .navbar .navbar-nav > li > a,
.home-page .main-header.header-white.transparent .navbar-pos-search .navbar-link {
  color: var(--home-brand);
}
.home-page .main-header .navbar-toggler {
  border-color: rgba(0, 38, 59, .16);
}
.home-skip-link { position:fixed; top:1rem; left:1rem; z-index:99999; padding:.75rem 1rem; color:#fff; background:var(--home-brand); border:2px solid var(--home-accent); border-radius:.5rem; transform:translateY(-150%); transition:transform .2s ease; }
.home-skip-link:focus { color:#fff; transform:none; }
.home-scroll-progress { position:fixed; inset:0 0 auto; z-index:10000; height:3px; pointer-events:none; background:rgba(255,255,255,.08); }
.home-scroll-progress span { display:block; width:100%; height:100%; background:linear-gradient(90deg,var(--home-accent),var(--home-orange)); box-shadow:0 0 14px rgba(255,181,2,.48); transform:scaleX(var(--home-scroll-progress,0)); transform-origin:left center; will-change:transform; }
.ds-home { margin-top: 0; overflow: clip; background: #fff; }
.home-shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; position: relative; }
.home-section { padding: clamp(6.5rem, 11vw, 10rem) 0; position: relative; isolation:isolate; }
.home-kicker { display: flex; align-items:center; gap:.75rem; color: var(--home-brand); font-size: clamp(.78rem,1vw,.88rem); font-weight: 700; letter-spacing: .12em; line-height: 1.4; margin: 0 0 1rem; text-transform: uppercase; }
.home-kicker::before { content:""; width:2.5rem; height:2px; border-radius:999px; background:var(--home-orange); }
.home-hero .home-kicker,
.home-erp .home-kicker,
.home-contact .home-kicker { color:var(--home-accent); }
.home-section-heading { max-width: 720px; margin-bottom: clamp(2.5rem, 5vw, 5rem); }
.home-section-heading h2 { color: var(--home-brand); font-size: clamp(2.4rem, 5.5vw, 5rem); letter-spacing: -.055em; line-height: .95; margin: 0; }
.home-index { display: inline-flex; align-items: center; gap: .7rem; color: var(--home-brand); font: 700 .72rem/1 Comfortaa, "Trebuchet MS", Arial, sans-serif; letter-spacing: .14em; margin-bottom: 1.5rem; }
.home-index::after { content: ""; width: 3rem; height: 1px; background: var(--home-accent); }
.home-lead { color: #4f6875; font-size: clamp(1.0625rem, 1.7vw, 1.3rem); line-height: 1.7; margin: 1.25rem 0 0; }
.home-cta { align-items:center; justify-content:center; text-align:center; display:inline-flex; gap:.8rem; min-height:48px; transition:transform .35s var(--home-ease),box-shadow .35s var(--home-ease); }
.home-cta span { transition: transform .35s var(--home-ease); }
.home-cta:hover { box-shadow: 0 14px 30px rgba(163, 194, 0, .2); transform: translateY(-2px); }
.home-cta:hover span { transform: translateX(4px); }
.home-cta:focus-visible, .home-contact__whatsapp:focus-visible, .home-solution:focus-visible, .home-scroll-cue:focus-visible { outline: 3px solid var(--home-orange); outline-offset: 4px; }

.home-hero { width:100%; position:relative; overflow:hidden; background:var(--home-brand); }
.home-hero__visual { display:block; width:100%; margin:0; }
.home-hero__visual img { display:block; width:100%; height:auto; }
.home-hero__cta { position:absolute; left:10%; top:54%; z-index:2; display:inline-flex; align-items:center; justify-content:center; text-align:center; gap:.65rem; min-height:48px; padding:.75rem 1.5rem; color:#fff; background:var(--home-accent); border:2px solid var(--home-accent); border-radius:999px; font-size:clamp(.8rem,1vw,1rem); font-weight:700; letter-spacing:.08em; text-transform:uppercase; box-shadow:0 12px 28px rgba(2,38,57,.18); animation:home-hero-cta-float 3.2s ease-in-out infinite; transition:transform .3s var(--home-ease),background-color .3s ease,border-color .3s ease; }
.home-hero__cta:hover,.home-hero__cta:focus { color:#fff; background:var(--home-orange); border-color:var(--home-orange); animation-play-state:paused; transform:translateY(-3px); }
.home-hero__cta:focus-visible { outline:3px solid #fff; outline-offset:4px; }
@keyframes home-hero-cta-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-6px); } }
@keyframes home-pulse { 70%,100% { box-shadow: 0 0 0 24px transparent, 0 0 24px transparent; } }

.home-values { color:var(--home-ink); background:linear-gradient(180deg,#fff 0%,var(--home-paper-cool) 62%,var(--home-paper-mist) 100%); }
.home-values::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background-color:#edf3f5; background-image:url("../assets/images/home/values-growth-background-1672.webp"); background-blend-mode:multiply; background-position:center top; background-repeat:no-repeat; background-size:100% auto; filter:contrast(1.5) saturate(1.75); }
.home-values__layout { z-index:1; }
.home-values__intro { position:relative; max-width:640px; margin-bottom:clamp(10rem,16vw,15rem); }
.home-values .home-section-heading h2 { color: var(--home-brand); }.home-values .home-index { color: #315164; }.home-values .home-lead { color: #4f6875; }
.home-values__rail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; counter-reset:value; }
.home-value { min-height:220px; padding:clamp(1.5rem,2.4vw,2rem); border:1px solid rgba(2,38,57,.12); display:grid; grid-template-columns:76px 1fr; gap:1.25rem; align-items:center; border-radius:var(--home-radius); overflow:hidden; position:relative; background:rgba(255,255,255,.7); box-shadow:0 16px 45px rgba(2,38,57,.07); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); transition:background-color .55s var(--home-ease),box-shadow .55s var(--home-ease),transform .55s var(--home-ease),border-color .4s ease; }
.home-value:first-child { grid-column:1 / -1; min-height:190px; }
.home-value::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(105deg,transparent 30%,rgba(255,181,2,.12) 50%,transparent 70%); transform:translateX(-120%); transition:transform .8s var(--home-ease); }
.home-value__icon { width:82px; aspect-ratio:1; display:grid; place-items:center; border-radius:24%; background:var(--home-brand); box-shadow:0 14px 32px rgba(2,38,57,.18); transition:transform .6s var(--home-ease),box-shadow .6s var(--home-ease); }
.home-value__icon--green { background:var(--home-accent); }
.home-value__icon svg { width:52px; height:52px; fill:none; stroke:var(--home-orange); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.home-value__icon--green svg { stroke:var(--home-brand); }
.home-value__icon svg .accent { stroke:var(--home-accent); }
.home-value__icon--green svg .accent { stroke:#fff; }
.home-value h3 { color:var(--home-brand); font-size:clamp(1.5rem,2.2vw,2rem); letter-spacing:-.04em; line-height:1.1; margin:0 0 .8rem; }
.home-value p { color: #415d6b; font-size:clamp(1rem,1.2vw,1.1rem); line-height: 1.8; max-width: 600px; margin: 0; }
.home-value:hover { background:rgba(255,255,255,.94); border-color:rgba(255,181,2,.34); box-shadow:0 22px 60px rgba(0,38,59,.1); transform:translate3d(8px,-4px,0); }
.home-value:hover::after { transform:translateX(120%); }
.home-value:hover .home-value__icon { transform:translateY(-6px) rotate(-4deg) scale(1.05); box-shadow:0 22px 42px rgba(2,38,57,.24); }
.home-motion .home-value.is-visible .home-value__icon { animation:home-value-icon-in .85s var(--home-ease) both; }
@keyframes home-value-icon-in { from { opacity:0; transform:translate3d(-26px,18px,0) rotate(-12deg) scale(.75); } to { opacity:1; transform:none; } }

.home-solutions { background: var(--home-paper); }
.home-solutions__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.home-solution { min-height: 260px; padding: 0; color: var(--home-brand); border: 1px solid var(--home-line); border-radius: var(--home-radius); background:#fff; overflow: hidden; position: relative; isolation:isolate; transition: transform .55s var(--home-ease), box-shadow .55s var(--home-ease), border-color .45s; }
.home-solution:hover { color: var(--home-brand); transform: translateY(-7px); border-color: rgba(37,185,233,.38); box-shadow: var(--home-shadow); }
.home-solution::after { content:""; position:absolute; inset:38% 0 0; z-index:-1; background:linear-gradient(0deg,rgba(255,255,255,.98) 30%,rgba(255,255,255,.82) 72%,transparent); }
.home-solution img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; transition:transform .8s var(--home-ease),filter .6s ease; }
.home-solution h3 { position:absolute; left:clamp(1.25rem,2.2vw,2rem); right:1.25rem; bottom:clamp(1.15rem,2vw,1.8rem); color:var(--home-brand); font-size:clamp(1.2rem,2vw,1.7rem); margin:0; max-width:14ch; text-shadow:0 1px #fff; transition:transform .55s var(--home-ease); }
.home-solution:hover img { transform:scale(1.055); filter:saturate(1.06); }
.home-solution:hover h3 { transform:translateY(-5px); }
.home-solution--featured { grid-column: span 2; min-height: 360px; }

.home-products { background:linear-gradient(155deg,var(--home-paper) 0%,var(--home-paper-cool) 62%,var(--home-paper-mist) 100%); }
.home-products__layout { display:block; }
.home-products__sticky { position:relative; top:auto; max-width:none; margin-bottom:clamp(2.5rem,5vw,4.5rem); }
.home-products__sticky h2 { white-space:nowrap !important; font-size:clamp(2.4rem,5.5vw,5rem); letter-spacing:-.055em; }
.home-products__stack { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1rem,2vw,1.5rem); }
.home-product { min-height:350px; border-radius:var(--home-radius); background:#fff; border:1px solid var(--home-line); border-top:3px solid var(--home-orange); position:relative; isolation:isolate; overflow:hidden; box-shadow:0 18px 48px rgba(2,38,57,.08); transition:transform .6s var(--home-ease),box-shadow .6s var(--home-ease),border-color .4s ease; }
.home-product:first-child { grid-column:1 / -1; min-height:460px; border-top-color:var(--home-accent); }
.home-product:nth-child(3) { border-top-color:var(--home-accent); }
.home-product::before { content:""; position:absolute; z-index:2; top:1.25rem; right:1.25rem; width:44px; height:44px; border-top:2px solid var(--home-orange); border-right:2px solid var(--home-orange); border-radius:0 18px 0 0; opacity:.8; transition:transform .5s var(--home-ease); }
.home-product:first-child::before,.home-product:nth-child(3)::before { border-color:var(--home-accent); }
.home-product::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 34%,rgba(255,255,255,.28) 68%,transparent 100%); }
.home-product > img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; transition:transform .9s var(--home-ease),filter .6s ease; }
.home-product__content { position:absolute; z-index:1; left:clamp(1.5rem,3.5vw,3rem); top:50%; max-width:52%; transform:translateY(-50%); transition:transform .6s var(--home-ease); }
.home-product__content > span { font-size:.72rem; font-weight:700; letter-spacing:.18em; color:var(--home-brand); }
.home-product h3 { color:var(--home-brand); font-size:clamp(2rem,3.5vw,3.35rem); letter-spacing:-.05em; line-height:1.02; margin:.8rem 0 0; }
.home-product:first-child .home-product__content { max-width:68%; }
.home-product:first-child h3 { white-space:nowrap; font-size:clamp(2.15rem,4.8vw,4.6rem); }
.home-product:hover { transform:translateY(-8px); border-color:rgba(170,191,0,.45); box-shadow:0 30px 75px rgba(2,38,57,.16); }
.home-product:hover > img { transform:scale(1.055); filter:saturate(1.08); }
.home-product:hover .home-product__content { transform:translate3d(7px,-50%,0); }
.home-product:hover::before { transform:translate3d(-5px,5px,0); }

.home-offers { overflow:hidden; background:linear-gradient(155deg,var(--home-paper) 0%,var(--home-paper-cool) 62%,var(--home-paper-mist) 100%); }
.home-offers .home-shell { width:calc(100% - clamp(40px,6.5vw,128px)); max-width:none; }
.home-offers__intro { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:clamp(2.5rem,5vw,4rem); }.home-offers__intro .home-section-heading { margin:0; max-width:820px; }.home-offers__legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.6rem; padding-bottom:.35rem; }
.home-offer-filter { min-height:38px; padding:.55rem .85rem; color:var(--home-brand); border:1px solid rgba(2,38,57,.16); border-radius:999px; background:#fff; font-size:.66rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; transition:transform .22s var(--home-ease),background-color .22s ease,border-color .22s ease; }.home-offer-filter::before { content:""; display:inline-block; width:7px; aspect-ratio:1; margin-right:.45rem; border-radius:50%; background:currentColor; }.home-offer-filter--product.is-active { background:var(--home-accent); border-color:var(--home-accent); }.home-offer-filter--service.is-active { background:var(--home-orange); border-color:var(--home-orange); }.home-offer-filter:not(.home-offer-filter--product):not(.home-offer-filter--service).is-active { color:#fff; background:var(--home-brand); border-color:var(--home-brand); }.home-offer-filter:hover { transform:translateY(-2px); }.home-offer-filter:focus-visible { outline:3px solid var(--home-accent); outline-offset:3px; }
.home-offers__viewport { width:100%; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; touch-action:pan-y pinch-zoom; -webkit-overflow-scrolling:touch; cursor:grab; border-radius:var(--home-radius); }.home-offers__viewport:active { cursor:grabbing; }.home-offers__viewport::-webkit-scrollbar { display:none; }
.home-offers__track { display:flex; gap:1rem; width:max-content; padding:.25rem 0 1.5rem; }
.home-offer-card { position:relative; flex:0 0 clamp(250px,18.5vw,340px); height:420px; overflow:hidden; isolation:isolate; color:var(--home-brand); border:1px solid var(--home-line); border-top:4px solid var(--home-orange); border-radius:var(--home-radius); background:#fff; box-shadow:0 16px 42px rgba(2,38,57,.09); scroll-snap-align:start; transition:transform .45s var(--home-ease),box-shadow .45s var(--home-ease),border-color .3s ease,opacity .25s ease; }
.home-offer-card[hidden] { display:none; }
.home-offer-card--product { border-top-color:var(--home-accent); }.home-offer-card::after { content:""; position:absolute; inset:auto 0 0; z-index:-1; height:112px; background:var(--home-orange); }.home-offer-card--product::after { background:var(--home-accent); }.home-offer-card img { position:absolute; inset:0 0 auto; z-index:-2; width:100%; height:calc(100% - 112px); padding:.35rem; object-fit:contain; object-position:center; background:#f6f8f9; transition:transform .75s var(--home-ease),filter .5s ease; }
.home-offer-card h3 { position:absolute; left:1.35rem; right:1.35rem; bottom:1.35rem; display:flex; min-height:64px; align-items:center; margin:0; color:var(--home-brand); font-size:clamp(1.15rem,1.45vw,1.55rem); letter-spacing:-.04em; line-height:1.08; }.home-offer-card:first-child h3 { white-space:nowrap; font-size:clamp(1.1rem,1.35vw,1.45rem); }
.home-offer-badge { display:inline-flex; align-items:center; gap:.45rem; min-height:30px; padding:.4rem .7rem; color:var(--home-brand); border-radius:999px; font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.home-offer-badge::before { content:""; width:7px; aspect-ratio:1; border-radius:50%; background:currentColor; }.home-offer-badge--product { background:var(--home-accent); }.home-offer-badge--service { background:var(--home-orange); }
.home-offer-card > .home-offer-badge { position:absolute; top:1.25rem; left:1.25rem; box-shadow:0 8px 20px rgba(2,38,57,.12); }.home-offer-card:hover { color:var(--home-brand); transform:translateY(-7px); box-shadow:0 26px 62px rgba(2,38,57,.16); }.home-offer-card:hover img { transform:scale(1.055); filter:saturate(1.06); }.home-offer-card:focus-visible { outline:3px solid var(--home-brand); outline-offset:4px; }
.home-offers__controls { display:grid; grid-template-columns:minmax(120px,1fr) auto auto auto; gap:.75rem; align-items:center; margin-top:1rem; }.home-offers__progress { height:3px; overflow:hidden; border-radius:999px; background:rgba(2,38,57,.12); }.home-offers__progress span { display:block; width:10%; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--home-accent),var(--home-orange)); transform-origin:left; transition:width .45s var(--home-ease); }.home-offers__status { min-width:58px; margin:0 .5rem 0 0; color:#617783; font-size:.72rem; letter-spacing:.08em; }.home-offers__status span { color:var(--home-brand); font-weight:700; }
.home-offers__arrow { width:48px; aspect-ratio:1; display:grid; place-items:center; padding:0; color:var(--home-brand); border:1px solid rgba(2,38,57,.14); border-radius:50%; background:#fff; box-shadow:0 8px 22px rgba(2,38,57,.07); transition:transform .25s var(--home-ease),background-color .25s ease; }.home-offers__arrow svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }.home-offers__arrow:hover { background:var(--home-orange); transform:translateY(-2px); }.home-offers__arrow:focus-visible { outline:3px solid var(--home-accent); outline-offset:3px; }

.home-erp { color:#fff; background:var(--home-brand-deep); }
.home-erp .home-section-heading { max-width:none; }.home-erp .home-section-heading h2 { color:#fff; white-space:nowrap; font-size:clamp(1.55rem,5vw,4.5rem); letter-spacing:-.065em; }.home-erp .home-index { display:none; }.home-erp .home-lead { max-width:720px; color:rgba(255,255,255,.68); }
.home-erp__story { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(3rem,7vw,7rem); align-items:center; }
.home-erp__copy p,.home-flex__copy { line-height:1.9; }.home-erp__copy p { color:rgba(255,255,255,.72); }
.home-erp-showcase { position:relative; padding:.65rem; border:1px solid rgba(255,255,255,.18); border-radius:calc(var(--home-radius) + .25rem); background:rgba(255,255,255,.07); box-shadow:0 35px 80px rgba(0,0,0,.32); overflow:hidden; transform:perspective(1200px) rotateY(-4deg) rotateX(1deg); }
.home-erp-showcase__stage { position:relative; aspect-ratio:1672/941; overflow:hidden; border-radius:var(--home-radius); background:#f4f7f8; isolation:isolate; }
.home-erp-slide { position:absolute; inset:0; z-index:1; margin:0; opacity:0; transform:translate3d(6%,0,0) scale(.985); animation:home-erp-slide-cycle 24s var(--home-ease) infinite both; will-change:transform,opacity; }
.home-erp-slide:nth-child(2) { animation-delay:-18s; }.home-erp-slide:nth-child(3) { animation-delay:-12s; }.home-erp-slide:nth-child(4) { animation-delay:-6s; }
.home-erp-slide img { display:block; width:100%; height:100%; object-fit:cover; }
.home-erp-slide figcaption { position:absolute; right:1rem; bottom:1rem; z-index:2; max-width:70%; padding:.55rem .85rem; color:var(--home-brand); background:rgba(255,255,255,.94); border:1px solid rgba(2,38,57,.12); border-radius:999px; box-shadow:0 8px 24px rgba(2,38,57,.16); font-size:clamp(.58rem,.75vw,.74rem); font-weight:700; letter-spacing:.02em; }
.home-erp-showcase__brand { position:absolute; z-index:4; inset:0 auto auto 0; width:var(--home-erp-sidebar-width); height:var(--home-erp-brand-height); display:grid; place-items:center; overflow:hidden; background:var(--home-brand); }
.home-erp-showcase__brand img { display:block; width:min(72%,9.5rem); height:auto; }
.home-erp-slide--dashboard { --home-erp-sidebar-width:15.32%; --home-erp-brand-height:12.55%; }
.home-erp-slide--employees { --home-erp-sidebar-width:13.22%; --home-erp-brand-height:8.28%; }
.home-erp-slide--products { --home-erp-sidebar-width:13.16%; --home-erp-brand-height:8.4%; }
.home-erp-slide--clients { --home-erp-sidebar-width:14.12%; --home-erp-brand-height:10.73%; }
.home-erp-showcase__progress { position:absolute; z-index:5; left:0; bottom:0; width:100%; height:4px; background:linear-gradient(90deg,var(--home-accent),var(--home-orange)); transform:scaleX(0); transform-origin:left; animation:home-erp-progress 6s linear infinite; }
@keyframes home-erp-slide-cycle { 0%,18% { opacity:1; transform:translate3d(0,0,0) scale(1); } 24% { opacity:0; transform:translate3d(-5%,0,0) scale(.99); } 25%,94% { opacity:0; transform:translate3d(6%,0,0) scale(.985); } 100% { opacity:1; transform:translate3d(0,0,0) scale(1); } }
@keyframes home-erp-progress { to { transform:scaleX(1); } }
.home-modules { margin-top:6rem; border-top:1px solid rgba(255,255,255,.15); padding-top:2rem; }.home-modules > p { color:rgba(255,255,255,.7); }.home-modules ul { display:flex; flex-wrap:wrap; gap:.75rem; padding:0; margin:1.5rem 0 0; list-style:none; }.home-modules li { padding:.8rem 1rem; border:1px solid rgba(255,255,255,.16); border-radius:999px; font-size:.72rem; letter-spacing:.06em; color:#fff; background:rgba(255,255,255,.045); }

.home-flex { background:linear-gradient(145deg,var(--home-paper-mist),var(--home-paper) 48%,var(--home-paper-cool)); }
.home-flex__campaign { display:grid; grid-template-columns:minmax(320px,.84fr) minmax(0,1.16fr); gap:clamp(2.5rem,6vw,6.5rem); align-items:center; }
.home-flex__content h2 { color:var(--home-brand); font-size:clamp(2.7rem,5.2vw,5.6rem); letter-spacing:-.065em; line-height:.96; margin:0; }
.home-flex__content h2 span { color:var(--home-accent); }
.home-flex__content .home-lead { max-width:650px; margin-top:1.6rem; }
.home-flex__content > .home-cta { margin-top:1.8rem; }
.home-flex__benefits { display:grid; gap:.85rem; padding:0; margin:1.65rem 0 0; list-style:none; }
.home-flex__benefits li { position:relative; display:grid; grid-template-columns:48px 1fr; column-gap:1rem; align-items:center; min-height:74px; padding:.9rem 1rem; border:1px solid rgba(2,38,57,.11); border-radius:18px; background:rgba(255,255,255,.74); box-shadow:0 10px 30px rgba(2,38,57,.045); transition:transform .45s var(--home-ease),border-color .45s ease,box-shadow .45s var(--home-ease); }
.home-flex__benefits li > span { grid-row:1 / 3; width:46px; aspect-ratio:1; display:grid; place-items:center; color:var(--home-brand); border-radius:14px 14px 22px 14px; background:var(--home-orange); font-weight:700; font-size:1.2rem; }
.home-flex__benefits li:nth-child(2) > span { background:var(--home-accent); }
.home-flex__benefits strong { color:var(--home-brand); font-size:1rem; line-height:1.3; }
.home-flex__benefits small { color:#526b77; font-size:.86rem; line-height:1.5; }
.home-flex__benefits li:hover { transform:translateX(7px); border-color:rgba(170,191,0,.46); box-shadow:0 16px 40px rgba(2,38,57,.09); }
.home-motion .home-flex__benefits li { opacity:0; transform:translateX(-20px); transition:opacity .65s var(--home-ease),transform .65s var(--home-ease),border-color .45s ease,box-shadow .45s var(--home-ease); }
.home-motion .home-flex__content.is-visible .home-flex__benefits li { opacity:1; transform:none; }
.home-motion .home-flex__content.is-visible .home-flex__benefits li:nth-child(2) { transition-delay:.1s; }
.home-motion .home-flex__content.is-visible .home-flex__benefits li:nth-child(3) { transition-delay:.2s; }
.home-motion .home-flex__content.is-visible .home-flex__benefits li:hover { transform:translateX(7px); }
.home-flex__visual { position:relative; margin:0; min-width:0; padding:clamp(.7rem,1.5vw,1.1rem); border:1px solid rgba(2,38,57,.12); border-radius:30px 30px 52px 30px; background:rgba(255,255,255,.82); box-shadow:0 36px 85px rgba(2,38,57,.16); overflow:visible; transform:perspective(1200px) rotateY(-2deg); transition:transform .8s var(--home-ease),box-shadow .8s var(--home-ease); }
.home-flex__visual::before { content:""; position:absolute; z-index:-1; inset:10% -4% -6% 13%; border-radius:34px 34px 58px 34px; background:linear-gradient(135deg,rgba(255,181,2,.16),rgba(170,191,0,.16)); filter:blur(1px); }
.home-flex__visual picture,.home-flex__visual img { display:block; width:100%; }
.home-flex__visual img { height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:22px 22px 42px 22px; }
.home-flex__visual:hover { transform:perspective(1200px) rotateY(0) translateY(-8px); box-shadow:0 44px 100px rgba(2,38,57,.21); }
.home-flex__signal { position:absolute; display:flex; align-items:center; gap:.55rem; min-height:40px; padding:.6rem .85rem; color:var(--home-brand); border:1px solid rgba(2,38,57,.1); border-radius:999px; background:rgba(255,255,255,.94); box-shadow:0 12px 32px rgba(2,38,57,.15); backdrop-filter:blur(10px); font-size:.72rem; font-weight:700; letter-spacing:.04em; animation:home-signal-float 4.5s ease-in-out infinite; }
.home-flex__signal i { width:9px; aspect-ratio:1; border-radius:50%; background:var(--home-accent); box-shadow:0 0 0 5px rgba(170,191,0,.14); }
.home-flex__signal--sales { top:8%; right:-3%; }
.home-flex__signal--inventory { left:-4%; bottom:24%; animation-delay:-1.4s; }
.home-flex__signal--inventory i { background:var(--home-orange); box-shadow:0 0 0 5px rgba(255,181,2,.14); }
.home-flex__signal--cash { right:7%; bottom:-3%; animation-delay:-2.8s; }
@keyframes home-signal-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }

.home-web { background:var(--home-paper); }.home-web__layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(3rem,7vw,7rem); align-items:center; }.home-web .home-section-heading { margin-bottom:0; }.home-web .home-section-heading h2 { margin-bottom:1.5rem; }.home-web .home-cta { margin-top:1.8rem; }
.home-web__visual { position:relative; margin:0; padding:clamp(.6rem,1.3vw,1rem); border:1px solid var(--home-line); border-radius:var(--home-radius); background:#fff; box-shadow:var(--home-shadow); overflow:hidden; }
.home-web__video { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:calc(var(--home-radius) - .4rem); background:var(--home-paper-mist); }
.home-web__badge { position:absolute; right:clamp(1.1rem,3vw,2rem); bottom:clamp(1.1rem,3vw,2rem); display:inline-flex; align-items:center; min-height:44px; padding:.7rem 1rem; color:var(--home-brand); background:var(--home-orange); border-radius:999px; box-shadow:0 12px 28px rgba(2,38,57,.18); font-size:.72rem; font-weight:700; letter-spacing:.04em; }
.home-responsive-demo { position:relative; min-height:560px; perspective:1200px; }.demo-desktop,.demo-tablet,.demo-mobile { position:absolute; overflow:hidden; background:#fff; border:8px solid var(--home-brand); box-shadow:var(--home-shadow); }
.demo-desktop { width:86%; height:65%; right:0; top:3%; border-radius:1rem; transform:rotateY(-8deg); }.demo-nav { height:12%; background:var(--home-brand); }.demo-hero { height:45%; margin:5%; border-radius:.5rem; background:linear-gradient(120deg,var(--home-brand),var(--home-cyan)); }.demo-cards { display:flex; gap:4%; margin:0 5%; }.demo-cards i { flex:1; height:55px; border-radius:.4rem; background:var(--home-surface); }
.demo-tablet { width:38%; height:55%; left:3%; bottom:0; border-radius:1.3rem; transform:rotateY(8deg); padding:8%; }.demo-mobile { width:22%; height:43%; right:5%; bottom:0; border-radius:1.5rem; padding:7%; }.demo-tablet div,.demo-mobile div { height:38%; border-radius:.4rem; background:linear-gradient(140deg,var(--home-brand),var(--home-cyan)); margin-bottom:12%; }.demo-tablet i,.demo-mobile i { display:block; height:12%; border-radius:.3rem; background:var(--home-surface); margin:7% 0; }

.home-contact { min-height:70svh; display:grid; place-items:center; position:relative; overflow:hidden; color:#fff; background:var(--home-brand); padding:6rem 0; }.home-contact__glow { position:absolute; width:60vw; aspect-ratio:1; border-radius:50%; background:rgba(37,185,233,.18); filter:blur(120px); }.home-contact__inner { text-align:center; z-index:1; }.home-contact h2 { max-width:920px; color:#fff; font-size:clamp(2.8rem,6vw,6rem); letter-spacing:-.06em; line-height:.98; margin:0 auto 2.8rem; }.home-contact h2 span { color:var(--home-accent); }.home-contact__actions { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:1.4rem; }.home-contact__whatsapp { color:#fff; display:inline-flex; align-items:center; gap:.6rem; min-height:48px; padding:.6rem; }.home-contact__whatsapp:hover { color:var(--home-accent); }

.home-footer-legacy { display:none !important; }
.home-footer { position:relative; padding:clamp(4rem,7vw,6.5rem) 0 6rem; color:#fff; background:var(--home-brand); }
.home-footer::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--home-accent),var(--home-orange)); }
.home-footer__shell { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.home-footer__top { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.home-footer__brand img { display:block; width:200px; height:auto; object-fit:contain; }
.home-footer__brand p { max-width:520px; margin:1rem 0 0; color:rgba(255,255,255,.72); font-size:.95rem; line-height:1.7; }
.home-footer__brand p span { color:var(--home-accent); font-weight:700; }
.home-footer__social { display:flex; align-items:center; gap:.65rem; }
.home-footer__social > span { margin-right:.4rem; color:rgba(255,255,255,.72); font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.home-footer__social a { width:44px; aspect-ratio:1; display:grid; place-items:center; color:#fff; border:1px solid rgba(255,255,255,.18); border-radius:14px; background:rgba(255,255,255,.07); transition:transform .25s var(--home-ease),background-color .25s ease,color .25s ease; }
.home-footer__social svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }.home-footer__social svg .fill { fill:currentColor; stroke:none; }
.home-footer__social a:hover { color:var(--home-brand); background:var(--home-orange); transform:translateY(-3px); }
.home-footer__grid { display:grid; grid-template-columns:.75fr 1.25fr 1fr 1.45fr; gap:1rem; }
.home-footer__card { min-width:0; padding:clamp(1.35rem,2.4vw,2rem); border:1px solid rgba(255,255,255,.09); border-radius:var(--home-radius); background:rgba(255,255,255,.075); box-shadow:0 20px 50px rgba(0,0,0,.09); }
.home-footer__card:nth-child(2) { border-top-color:rgba(170,191,0,.72); }.home-footer__card:nth-child(4) { border-top-color:rgba(255,181,2,.72); }
.home-footer__card h2 { margin:0 0 1.2rem; color:var(--home-orange); font-size:1rem; letter-spacing:.02em; }
.home-footer__card ul { margin:0; padding:0; list-style:none; }.home-footer__card li + li { margin-top:.62rem; }
.home-footer__card a { color:rgba(255,255,255,.76); font-size:.82rem; line-height:1.5; transition:color .2s ease,transform .2s ease; }.home-footer__card a:hover { color:var(--home-orange); }
.home-footer__card address { display:grid; gap:.85rem; margin:0; font-style:normal; }.home-footer__card address a { display:grid; grid-template-columns:22px 1fr; gap:.55rem; align-items:start; overflow-wrap:anywhere; }
.home-footer__card address span { color:var(--home-accent); font-size:1rem; text-align:center; }
.home-footer__contact-icon { display:grid; width:20px; height:20px; place-items:center; }.home-footer__contact-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.home-footer__bottom { display:flex; justify-content:space-between; gap:1.5rem; margin-top:1.5rem; padding-top:1.5rem; border-top:1px solid rgba(255,255,255,.12); }
.home-footer__bottom p { margin:0; color:rgba(255,255,255,.6); font-size:.76rem; line-height:1.6; }
.home-whatsapp-float { position:fixed; z-index:9990; right:clamp(1rem,2.5vw,2rem); bottom:clamp(1rem,2.5vw,2rem); display:flex; align-items:center; gap:.75rem; min-height:58px; padding:.65rem 1rem .65rem .7rem; color:var(--home-brand); border:1px solid rgba(2,38,57,.12); border-radius:999px; background:#fff; box-shadow:0 18px 48px rgba(2,38,57,.24); transition:transform .3s var(--home-ease),box-shadow .3s var(--home-ease); }
.home-whatsapp-float__icon { display:block; width:38px; height:38px; padding:8px; flex:0 0 auto; object-fit:contain; border-radius:50%; background:var(--home-accent); }
.home-whatsapp-float span { display:grid; gap:.08rem; }.home-whatsapp-float strong { color:var(--home-brand); font-size:.78rem; line-height:1.25; }.home-whatsapp-float small { color:#526b77; font-size:.68rem; line-height:1.25; }
.home-whatsapp-float:hover { color:var(--home-brand); transform:translateY(-4px); box-shadow:0 24px 56px rgba(2,38,57,.3); }.home-whatsapp-float:focus-visible,.home-footer a:focus-visible { outline:3px solid var(--home-orange); outline-offset:3px; }
.home-page #scroll-to-top { display:none !important; }

.home-page .home-contact-panel { width:min(430px,100vw); padding:0; color:var(--home-brand); background:linear-gradient(165deg,#fff 0%,var(--home-paper-cool) 100%); box-shadow:-28px 0 70px rgba(2,38,57,.18); overflow-x:hidden; }
.home-page.nav-active { overflow:hidden; }
.home-contact-panel__inner { min-height:100%; padding:clamp(1.5rem,4vw,2.5rem); }
.home-contact-panel__close { position:sticky; top:0; z-index:3; display:flex; justify-content:flex-end; padding:1rem 1rem 0; background:linear-gradient(#fff 60%,rgba(255,255,255,0)); }
.home-page .home-contact-panel .home-contact-panel__close a { width:46px; aspect-ratio:1; display:grid; place-items:center; color:var(--home-brand); border:1px solid rgba(2,38,57,.12); border-radius:14px; background:#fff; box-shadow:0 8px 24px rgba(2,38,57,.09); transform:none; transition:transform .25s var(--home-ease),background-color .25s ease; }
.home-contact-panel__close a:hover { background:var(--home-orange); transform:rotate(4deg) !important; }.home-contact-panel__close svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.home-contact-panel__header { padding-bottom:1.5rem; border-bottom:1px solid var(--home-line); }.home-contact-panel__logo { display:inline-block; margin-bottom:1.8rem; }.home-contact-panel__logo img { display:block; width:172px; height:auto; }
.home-contact-panel__eyebrow { margin:0 0 .65rem; color:var(--home-accent); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.home-contact-panel__header h2 { margin:0; color:var(--home-brand); font-size:clamp(1.65rem,4vw,2.15rem); letter-spacing:-.04em; line-height:1.12; }.home-contact-panel__header > p:last-child { margin:1rem 0 0; color:#526b77; font-size:.9rem; line-height:1.65; }
.home-contact-panel__form { padding:1.75rem 0; }.home-contact-panel__form .form-group { margin-bottom:1rem; }.home-contact-panel__form label { display:block; margin:0 0 .5rem; color:var(--home-brand); font-size:.76rem; font-weight:700; }
.home-page .home-contact-panel__form .form-control { width:100%; height:52px; padding:.8rem 1rem; color:var(--home-brand); border:1px solid rgba(2,38,57,.15); border-radius:14px; background:#fff; box-shadow:0 7px 20px rgba(2,38,57,.035); font-size:.9rem; letter-spacing:0; transition:border-color .25s ease,box-shadow .25s ease,transform .25s var(--home-ease); }
.home-page .home-contact-panel__form textarea.form-control { min-height:130px; resize:vertical; }.home-page .home-contact-panel__form .form-control::placeholder { color:#758894; opacity:1; }.home-page .home-contact-panel__form .form-control:focus { border-color:var(--home-accent); box-shadow:0 0 0 4px rgba(170,191,0,.14),0 10px 24px rgba(2,38,57,.07); transform:translateY(-1px); }
.home-contact-panel__submit { width:100%; min-height:52px; display:flex; align-items:center; justify-content:center; gap:.75rem; margin-top:.5rem; color:var(--home-brand); border:0; border-radius:999px; background:var(--home-accent); font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; box-shadow:0 12px 26px rgba(170,191,0,.22); transition:background-color .25s ease,transform .25s var(--home-ease),box-shadow .25s ease; }.home-contact-panel__submit span { font-size:1.2rem; transition:transform .25s var(--home-ease); }.home-contact-panel__submit:hover { background:var(--home-orange); transform:translateY(-2px); box-shadow:0 16px 30px rgba(255,181,2,.22); }.home-contact-panel__submit:hover span { transform:translateX(4px); }
.home-contact-panel__details { padding:1.5rem; border:1px solid rgba(2,38,57,.1); border-radius:var(--home-radius); background:#fff; box-shadow:0 14px 34px rgba(2,38,57,.06); }.home-contact-panel__details h3 { margin:0 0 1.2rem; color:var(--home-brand); font-size:.9rem; line-height:1.45; }
.home-contact-panel__links { display:grid; gap:.65rem; }.home-contact-panel__links > a { display:grid; grid-template-columns:42px minmax(0,1fr); gap:.8rem; align-items:center; padding:.6rem; color:var(--home-brand); border-radius:12px; transition:background-color .2s ease,transform .2s var(--home-ease); }.home-contact-panel__links > a:hover { color:var(--home-brand); background:var(--home-paper-cool); transform:translateX(3px); }.home-contact-panel__links a > span:last-child { display:grid; min-width:0; overflow-wrap:anywhere; font-size:.82rem; font-weight:700; }.home-contact-panel__links small { color:#617783; font-size:.68rem; font-weight:400; }
.home-contact-panel__contact-icon { width:40px; aspect-ratio:1; display:grid; place-items:center; color:#fff; border-radius:12px; background:var(--home-brand); }.home-contact-panel__contact-icon--green { color:var(--home-brand); background:var(--home-accent); }.home-contact-panel__contact-icon--orange { color:var(--home-brand); background:var(--home-orange); }.home-contact-panel__contact-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }.home-contact-panel__contact-icon--green svg path { fill:currentColor; stroke:none; }
.home-contact-panel__social { display:flex; align-items:center; gap:.6rem; padding:1.5rem 0 .5rem; }.home-contact-panel__social > span { margin-right:auto; color:#617783; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.home-contact-panel__social a { width:44px; aspect-ratio:1; display:grid; place-items:center; color:var(--home-brand); border:1px solid rgba(2,38,57,.12); border-radius:14px; background:#fff; box-shadow:0 8px 20px rgba(2,38,57,.055); transition:background-color .25s ease,transform .25s var(--home-ease); }.home-contact-panel__social a:hover { color:var(--home-brand); background:var(--home-orange); transform:translateY(-3px); }.home-contact-panel__social svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }.home-contact-panel__social .fill { fill:currentColor; stroke:none; }
.home-contact-panel a:focus-visible,.home-contact-panel button:focus-visible { outline:3px solid var(--home-orange); outline-offset:3px; }
.home-contact-panel__header,.home-contact-panel__form,.home-contact-panel__details,.home-contact-panel__social { opacity:0; transform:translateX(18px); transition:opacity .45s var(--home-ease),transform .45s var(--home-ease); }.nav-active .home-contact-panel__header,.nav-active .home-contact-panel__form,.nav-active .home-contact-panel__details,.nav-active .home-contact-panel__social { opacity:1; transform:none; }.nav-active .home-contact-panel__form { transition-delay:.05s; }.nav-active .home-contact-panel__details { transition-delay:.1s; }.nav-active .home-contact-panel__social { transition-delay:.15s; }

.home-reveal { opacity:1; transform:none; }.home-motion .home-reveal { opacity:0; transform:translate3d(0,64px,0) scale(.975); filter:blur(8px); transition:opacity 1s var(--home-ease),transform 1s var(--home-ease),filter 1s var(--home-ease); will-change:opacity,transform; }.home-motion .home-reveal.is-visible { opacity:1; transform:none; filter:none; }.home-motion .home-hero__copy { transform:translate3d(-54px,0,0); transition-duration:1.15s; }.home-motion .home-hero__copy.is-visible { transform:none; }.home-value:nth-child(2),.home-solution:nth-child(2),.home-product:nth-child(2){transition-delay:.08s}.home-value:nth-child(3),.home-solution:nth-child(3),.home-product:nth-child(3){transition-delay:.16s}.home-value:nth-child(4),.home-solution:nth-child(4){transition-delay:.24s}.home-value:nth-child(5),.home-solution:nth-child(5){transition-delay:.32s}.home-solution:nth-child(6){transition-delay:.4s}.home-solution:nth-child(7){transition-delay:.48s}

.home-section-wash { position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:-1; }
.home-section-wash span { position:absolute; display:block; width:clamp(220px,34vw,560px); aspect-ratio:1; border-radius:50%; filter:blur(2px); opacity:.42; background:radial-gradient(circle at 35% 35%,rgba(37,185,233,.15),rgba(37,185,233,0) 68%); transform:translate3d(-24%,18%,0) scale(.78); transition:transform 1.5s var(--home-ease),opacity 1.2s ease; }
.home-section-wash span:first-child { top:-12%; left:-8%; }
.home-section-wash span:last-child { right:-10%; bottom:-18%; background:radial-gradient(circle at 45% 45%,rgba(163,194,0,.16),rgba(163,194,0,0) 68%); transform:translate3d(24%,-18%,0) scale(.72); }
.home-section-wash--right span:first-child { left:auto; right:-10%; }.home-section-wash--right span:last-child { right:auto; left:-8%; }
.home-motion-section::before { content:""; position:absolute; inset:0 0 auto; height:1px; background:linear-gradient(90deg,transparent,rgba(0,38,59,.16),transparent); transform:scaleX(.15); opacity:0; transition:transform 1.25s var(--home-ease),opacity .8s ease; }
.home-motion-section.is-section-active::before { transform:scaleX(1); opacity:1; }
.home-motion-section.is-section-active .home-section-wash span { transform:translate3d(0,0,0) scale(1); opacity:.72; }
.home-motion-section.is-section-active .home-section-wash span:last-child { transition-delay:.12s; }
.home-motion-section .home-section-heading h2 { text-wrap:balance; }
.home-motion-section p { text-wrap:pretty; }

/* Lenguaje visual oficial DS Solutions: iconos lineales, cursor y curvas de crecimiento. */
.home-brand-icon { width:72px; aspect-ratio:1; display:grid; place-items:center; position:relative; margin-top:1.25rem; border-radius:18px 18px 28px 18px; background:var(--home-brand); box-shadow:0 12px 28px rgba(2,38,57,.12); transition:transform .45s var(--home-ease),box-shadow .45s var(--home-ease); }
.home-brand-icon svg { width:46px; height:46px; fill:none; stroke:var(--home-orange); stroke-width:3.2; stroke-linecap:round; stroke-linejoin:round; }
.home-brand-icon--green { background:var(--home-accent); }
.home-brand-icon--green svg { stroke:var(--home-brand); }
.home-brand-icon .home-brand-icon__cursor { stroke:var(--home-accent); }
.home-brand-icon--green .home-brand-icon__cursor { stroke:#fff; }
.home-solution:hover .home-brand-icon { transform:translateY(-4px) rotate(-1deg); box-shadow:0 18px 35px rgba(2,38,57,.2); }
.home-section-wash::before { content:""; position:absolute; top:clamp(1.5rem,4vw,4rem); right:clamp(1rem,5vw,5rem); width:clamp(110px,18vw,240px); height:clamp(45px,7vw,80px); border-top:2px solid var(--home-orange); border-right:2px solid var(--home-orange); border-radius:0 42px 0 0; opacity:.42; transform:translate3d(24px,-12px,0); transition:transform 1.2s var(--home-ease),opacity 1s ease; }
.home-section-wash--right::before { right:auto; left:clamp(1rem,5vw,5rem); border-right:0; border-left:2px solid var(--home-accent); border-radius:42px 0 0 0; }
.home-motion-section.is-section-active .home-section-wash::before { opacity:.76; transform:none; }

/* Sustituciones cromáticas: la interfaz usa únicamente la paleta principal del brandbook. */
.home-hero__glow,
.home-contact__glow { background:rgba(170,191,0,.17); }
.home-hero__signal { border-color:rgba(255,181,2,.58); border-radius:3px 3px 8px 3px; box-shadow:0 0 0 8px rgba(255,181,2,.09),0 0 24px var(--home-orange); }
.home-solution:hover { border-color:rgba(255,181,2,.5); }
.demo-hero,
.demo-tablet div,
.demo-mobile div { background:linear-gradient(120deg,var(--home-brand),var(--home-orange)); }
.home-section-wash span { background:radial-gradient(circle at 35% 35%,rgba(255,181,2,.14),rgba(255,181,2,0) 68%); }
.home-section-wash span:last-child { background:radial-gradient(circle at 45% 45%,rgba(170,191,0,.15),rgba(170,191,0,0) 68%); }

@media (max-width: 991px) {
  .home-values::before { background-image:url("../assets/images/home/values-growth-background-1200.webp"); }
  .home-page .main-header .navbar-collapse { background:#fff; border-top:1px solid rgba(0,38,59,.08); box-shadow:0 18px 30px rgba(0,38,59,.1); }
  .home-values__layout,.home-products__layout,.home-flex__campaign,.home-web__layout { grid-template-columns:1fr; }.home-values__intro,.home-products__sticky { position:relative; top:auto; }.home-solutions__grid { grid-template-columns:repeat(2,1fr); }.home-erp__story { grid-template-columns:1fr; }.home-flex__content { max-width:760px; }.home-flex__visual { transform:none; }.home-web .home-section-heading { margin-bottom:2rem; }
  .home-footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  body { font-size:16px; }.home-shell { width:min(100% - 32px, 620px); }.home-section { padding:6rem 0; }.home-hero__cta { top:auto; right:auto; bottom:4%; left:7%; min-height:44px; padding:.6rem 1.05rem; font-size:.68rem; }
  .home-values::before { background-image:url("../assets/images/home/values-growth-background-1200.webp"); background-position:center; background-size:cover; filter:contrast(1.45) saturate(1.65); }
  .home-values__intro { margin-bottom:2.5rem; }.home-values__layout { gap:1rem; }.home-values__rail { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; width:100%; margin:0; padding:0; overflow:visible; }.home-value,.home-value:first-child { grid-column:auto; width:100%; min-width:0; min-height:0; grid-template-columns:66px minmax(0,1fr); align-items:start; gap:1rem; padding:1.5rem 1.25rem; }.home-value__icon { width:66px; }.home-value__icon svg { width:42px; height:42px; }.home-value h3 { font-size:clamp(1.3rem,6vw,1.65rem); margin-bottom:.65rem; }.home-value p { font-size:1rem; line-height:1.65; overflow-wrap:anywhere; }
  .home-solutions__grid { grid-template-columns:1fr; }.home-solution--featured { grid-column:auto; min-height:280px; }.home-solution { min-height:240px; }.home-solution h3 { font-size:1.3rem; }
  .home-products__sticky h2 { font-size:clamp(1.75rem,8vw,2.5rem); }.home-products__stack { grid-template-columns:1fr; }.home-product,.home-product:first-child { grid-column:auto; min-height:310px; }.home-product__content,.home-product:first-child .home-product__content { left:1.25rem; max-width:72%; }.home-product h3 { font-size:clamp(1.7rem,8vw,2.45rem); }.home-product:first-child h3 { font-size:clamp(1.55rem,7.1vw,2.15rem); }
  .home-offers__intro { align-items:flex-start; flex-direction:column; gap:1.25rem; }.home-offers__legend { justify-content:flex-start; }.home-offer-card { flex-basis:min(82vw,310px); height:400px; }.home-offers__controls { grid-template-columns:1fr auto auto; }.home-offers__status { display:none; }.home-offers__progress { grid-column:1 / -1; grid-row:2; }
  .home-erp-showcase { padding:.35rem; transform:none; border-radius:1rem; }.home-erp-showcase__stage { border-radius:.75rem; }.home-erp-slide figcaption { right:.55rem; bottom:.55rem; padding:.4rem .65rem; max-width:72%; }
  .home-flex__campaign { gap:2.5rem; }.home-flex__content h2 { font-size:clamp(2.45rem,11vw,3.7rem); }.home-flex__content .home-lead { font-size:1rem; line-height:1.7; }.home-flex__benefits { margin:1.6rem 0 1.8rem; }.home-flex__benefits li { grid-template-columns:44px 1fr; padding:.8rem; }.home-flex__benefits li > span { width:42px; }.home-flex__visual { padding:.55rem; border-radius:24px 24px 40px 24px; }.home-flex__visual img { aspect-ratio:4/5; border-radius:18px 18px 34px 18px; }.home-flex__signal { display:none; }.home-web__video { aspect-ratio:16/9; }.home-web__badge { left:1.1rem; right:auto; }
  .home-contact { min-height:620px; }.home-contact__actions { flex-direction:column; }
  .home-footer__top,.home-footer__bottom { align-items:flex-start; flex-direction:column; }.home-footer__social { flex-wrap:wrap; }.home-footer__social > span { width:100%; }.home-footer__grid { grid-template-columns:1fr; }.home-footer__card { padding:1.5rem; }.home-whatsapp-float { right:1rem; bottom:1rem; min-width:58px; padding:.6rem; }.home-whatsapp-float span { display:none; }.home-whatsapp-float__icon { width:40px; height:40px; }
}

@media (max-width: 520px) {
  .home-values::before { background-image:url("../assets/images/home/values-growth-background-1200.webp"); }
}

@media (max-width: 374px) {
  .home-section-heading h2 { font-size:2.25rem; }.home-modules li { font-size:.66rem; }.home-responsive-demo { min-height:360px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }.home-reveal,.home-motion .home-reveal { opacity:1; transform:none; filter:none; }.home-parallax,.home-section-wash span { transform:none !important; }.home-section-wash span { opacity:.35; }.home-values__intro,.home-products__sticky { position:relative; top:auto; }.home-erp-slide { animation:none !important; opacity:0; transform:none; }.home-erp-slide:first-child { opacity:1; }.home-erp-showcase__progress { display:none; }
}
