

:root {
  --ink: #071a1d;
  --ink-2: #0b2528;
  --paper: #f2f5ed;
  --cream: #e8eddf;
  --lime: #c7f25b;
  --lime-2: #9fd72e;
  --teal: #15b8a6;
  --muted: #607173;
  --line: rgba(7, 26, 29, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body { margin: 0; min-width: 0; overflow-x: clip; background: var(--paper); color: var(--ink); font-family: Inter, "Segoe UI", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--lime); color: var(--ink); }

.site-header { height: 82px; padding: 0 clamp(24px, 5vw, 76px); display: flex; align-items: center; justify-content: space-between; position: fixed; inset: 0 0 auto; z-index: 50; width: 100%; color: white; border-bottom: 1px solid rgba(255,255,255,.1); background: linear-gradient(to bottom,rgba(7,26,29,.55),transparent); transition: height .25s,background .25s,border-color .25s,box-shadow .25s; }
.site-header.scrolled { height: 70px; background: rgba(7,26,29,.9); border-color: rgba(199,242,91,.12); box-shadow: 0 12px 40px rgba(0,0,0,.24); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 11px; min-width: max-content; transition: opacity .2s, transform .2s; }
.brand:hover { opacity: .92; transform: translateY(-1px); }
.brand-symbol { display: block; width: 44px; height: 44px; flex: 0 0 44px; object-fit: contain; filter: drop-shadow(0 5px 14px rgba(0,0,0,.18)); }
.brand-lockup { display: flex; flex-direction: column; justify-content: center; gap: 2px; line-height: 1; }
.brand-wordmark { display: flex; align-items: baseline; font-size: 21px; font-weight: 850; letter-spacing: -.025em; }
.brand-wordmark b { font: inherit; }
.brand-wordmark b:first-child { color: #f1f6f3; }
.brand-wordmark b:last-child { color: #f08a27; }
.brand-descriptor { color: rgba(225,236,230,.58); font-size: 6.5px; font-weight: 700; letter-spacing: .24em; line-height: 1.2; text-transform: uppercase; }
.brand-mark { width: 31px; height: 31px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 3px; transform: rotate(45deg); margin-right: 3px; }
.brand-mark i { display: block; background: var(--lime); border-radius: 2px 8px 2px 8px; }
.brand-mark i:nth-child(2) { opacity: .6; }
.brand-mark i:nth-child(3) { grid-column: 1 / 3; width: 55%; justify-self: center; opacity: .85; }
.brand-name { font-weight: 850; font-size: 20px; letter-spacing: .12em; }
.brand-tag { margin-left: 8px; padding-left: 17px; border-left: 1px solid rgba(255,255,255,.2); font-size: 10px; text-transform: uppercase; letter-spacing: .15em; color: rgba(255,255,255,.58); max-width: 70px; line-height: 1.35; }
.main-nav { display: flex; align-items: center; gap: clamp(22px, 2.5vw, 42px); font-size: 13px; }
.main-nav > a:not(.nav-cta) { color: rgba(255,255,255,.72); transition: color .2s; }
.main-nav > a:hover { color: white; }
.nav-cta { padding: 12px 18px; border: 1px solid rgba(255,255,255,.28); border-radius: 2px; display: flex; gap: 20px; transition: background .2s, color .2s; }
.nav-cta:hover { background: var(--lime); border-color: var(--lime); color: var(--ink) !important; }
.menu-toggle { display: none; background: none; border: 0; padding: 12px; }

.hero { position: relative; min-height: 740px; height: min(860px, 100svh); background: var(--ink); color: white; overflow: hidden; display: grid; grid-template-columns: minmax(420px, .88fr) minmax(560px, 1.12fr); gap: clamp(26px, 3vw, 58px); align-items: center; padding: 105px clamp(30px, 5.2vw, 86px) 52px; }
.hero-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 78px 78px; mask-image: linear-gradient(to right, black, transparent 90%); }
.hero::before { content: ""; position: absolute; width: 1px; height: 62%; left: 54%; top: 20%; background: linear-gradient(transparent, rgba(199,242,91,.2), transparent); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(1px); pointer-events: none; }
.hero-glow-one { width: 650px; height: 650px; right: -180px; top: -230px; background: radial-gradient(circle, rgba(21,184,166,.18), transparent 67%); }
.hero-glow-two { width: 520px; height: 520px; left: 28%; bottom: -410px; background: radial-gradient(circle, rgba(199,242,91,.12), transparent 68%); }
.hero-copy { position: relative; z-index: 3; max-width: 640px; }
.eyebrow, .section-kicker { display: flex; align-items: center; gap: 12px; text-transform: uppercase; letter-spacing: .2em; font-weight: 700; font-size: 10px; }
.eyebrow { color: rgba(255,255,255,.62); margin-bottom: 27px; }
.eyebrow span { width: 32px; height: 1px; background: var(--lime); position: relative; }
.eyebrow span::after { content: ""; width: 4px; height: 4px; border-radius: 50%; background: var(--lime); position: absolute; right: 0; top: -1.5px; box-shadow: 0 0 9px var(--lime); }
.hero h1 { margin: 0; font-size: clamp(52px, 4.35vw, 76px); line-height: .98; letter-spacing: -.052em; font-weight: 520; }
.hero h1 em { color: var(--lime); font-style: normal; }
.hero-lead { font-size: clamp(15px, 1.08vw, 18px); line-height: 1.65; color: rgba(255,255,255,.64); max-width: 590px; margin: 24px 0 28px; }
.hero-actions { display: flex; gap: 13px; align-items: center; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; padding: 0 22px; border-radius: 2px; font-size: 13px; font-weight: 700; border: 1px solid transparent; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--lime); color: var(--ink); min-width: 235px; }
.button-primary:hover { background: white; }
.button-ghost { color: rgba(255,255,255,.83); border-color: rgba(255,255,255,.17); }
.button-ghost:hover { background: rgba(255,255,255,.08); }
.play { width: 23px; height: 23px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; display: grid; place-items: center; font-size: 7px; padding-left: 1px; }
.hero-proof { display: flex; gap: 0; margin-top: 42px; }
.hero-proof div { min-width: 0; flex: 1; padding: 0 18px; border-left: 1px solid rgba(255,255,255,.12); display: flex; gap: 10px; align-items: flex-start; }
.hero-proof div:first-child { padding-left: 0; border-left: 0; }
.hero-proof strong { font-family: ui-monospace, Consolas, monospace; font-size: 11px; color: var(--lime); }
.hero-proof span { font-size: 11px; line-height: 1.45; color: rgba(255,255,255,.47); text-transform: uppercase; letter-spacing: .08em; }

.product-stage { position: relative; z-index: 2; min-height: 560px; display: grid; place-items: center; perspective: 1300px; }
.orbit { position: absolute; border: 1px solid rgba(199,242,91,.12); border-radius: 50%; }
.orbit-one { width: 570px; height: 570px; }
.orbit-two { width: 430px; height: 430px; border-style: dashed; animation: orbit 38s linear infinite; }
@keyframes orbit { to { transform: rotate(360deg); } }
.panel-cloud { position:absolute; inset:-1% -4% 0; z-index:1; pointer-events:none; }
.panel-cloud::before { content:""; position:absolute; inset:12%; background-image:radial-gradient(rgba(199,242,91,.2) 1px,transparent 1px); background-size:18px 18px; mask-image:radial-gradient(circle,black 15%,transparent 68%); opacity:.5; }
.cloud-panel { position:absolute; width:116px; height:80px; padding:12px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid rgba(199,242,91,.16); background:linear-gradient(145deg,rgba(20,62,63,.82),rgba(7,26,29,.58)); box-shadow:0 18px 55px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.04); backdrop-filter:blur(8px); border-radius:8px; color:rgba(255,255,255,.62); opacity:.9; animation:panel-float 8s ease-in-out infinite; }
.cloud-panel i { width:25px; height:25px; display:grid; place-items:center; border-radius:6px; background:rgba(199,242,91,.1); color:var(--lime); font:700 9px ui-monospace,monospace; font-style:normal; }
.cloud-panel b { font-size:8px; text-transform:uppercase; letter-spacing:.1em; font-weight:650; }
.cloud-panel-1{left:0;top:2%;transform:rotate(-5deg);animation-delay:-1s}.cloud-panel-2{right:0;top:2%;transform:rotate(5deg);animation-delay:-4.5s}.cloud-panel-3,.cloud-panel-4{display:none}.cloud-panel-5{left:3%;bottom:0;transform:rotate(-4deg);animation-delay:-3.7s}.cloud-panel-6{right:3%;bottom:0;transform:rotate(4deg);animation-delay:-.3s}
@keyframes panel-float { 0%,100%{translate:0 0} 50%{translate:0 -12px} }
.dashboard-shell { position: relative; z-index:2; width: min(660px, 44vw); min-width: 540px; background: #0c2225; border: 1px solid rgba(255,255,255,.16); box-shadow: 0 38px 100px rgba(0,0,0,.46), 0 0 65px rgba(21,184,166,.06); transform: rotateY(-4deg) rotateX(1deg); animation:dashboard-breathe 8s ease-in-out infinite; }
@keyframes dashboard-breathe { 0%,100%{translate:0 0;box-shadow:0 45px 120px rgba(0,0,0,.5),0 0 70px rgba(21,184,166,.06)} 50%{translate:0 -7px;box-shadow:0 58px 130px rgba(0,0,0,.54),0 0 90px rgba(21,184,166,.1)} }
.dashboard-topbar { height: 43px; border-bottom: 1px solid rgba(255,255,255,.08); display: flex; align-items: center; justify-content: space-between; padding: 0 16px; }
.mini-brand { font-size: 9px; font-weight: 800; letter-spacing: .1em; display: flex; align-items: center; gap: 7px; }
.mini-brand > span { width: 11px; height: 11px; background: var(--lime); transform: rotate(45deg); border-radius: 2px; }
.mini-brand b { font-size: 6px; color: var(--lime); border: 1px solid rgba(199,242,91,.4); padding: 2px 4px; margin-left: 5px; }
.window-actions { display: flex; gap: 5px; }.window-actions i { width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,.25); }
.dashboard-body { display: flex; min-height: 370px; }
.dash-sidebar { width: 53px; border-right: 1px solid rgba(255,255,255,.07); display: flex; flex-direction: column; gap: 19px; align-items: center; padding-top: 24px; }
.dash-sidebar span { width: 16px; height: 16px; border: 1px solid rgba(255,255,255,.13); border-radius: 4px; position: relative; }
.dash-sidebar span.active { background: rgba(199,242,91,.12); border-color: var(--lime); }
.dash-sidebar span.active::before { content: ""; position: absolute; left: -19px; top: 3px; height: 8px; width: 2px; background: var(--lime); }
.dash-main { flex: 1; padding: 23px; }
.dash-heading { display: flex; justify-content: space-between; align-items: flex-start; }
.dash-heading div { display: flex; flex-direction: column; gap: 5px; }.dash-heading small { font-size: 6px; letter-spacing: .18em; color: rgba(255,255,255,.38); }.dash-heading strong { font-size: 15px; font-weight: 600; }
.dash-heading > span { font-size: 7px; color: var(--lime); padding: 5px 8px; background: rgba(199,242,91,.08); border: 1px solid rgba(199,242,91,.2); }
.metric-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 20px 0 12px; }
.metric-grid > div { border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.025); padding: 15px; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 5px; }
.metric-grid small { grid-column: 1/3; color: rgba(255,255,255,.43); font-size: 7px; }.metric-grid b { font-size: 22px; font-weight: 500; }.metric-grid em { color: var(--lime); font-size: 7px; font-style: normal; }
.dash-lower { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10px; }
.chart-card,.activity-card { border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.018); padding: 13px; min-height: 181px; }
.card-label { font-size: 7px; color: rgba(255,255,255,.48); display: flex; justify-content: space-between; align-items: center; }.card-label i { width: 23px; height: 3px; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }.card-label b { font-size: 6px; color: var(--lime); }
.chart-bars { height: 118px; display: flex; align-items: end; gap: 9px; padding: 15px 6px 0; border-bottom: 1px solid rgba(255,255,255,.08); position: relative; }
.chart-bars i { flex: 1; background: linear-gradient(to top, rgba(21,184,166,.15), var(--teal)); height: 35%; opacity: .65; }.chart-bars i:nth-child(2){height:52%}.chart-bars i:nth-child(3){height:43%}.chart-bars i:nth-child(4){height:67%}.chart-bars i:nth-child(5){height:59%}.chart-bars i:nth-child(6){height:81%; background:linear-gradient(to top,rgba(199,242,91,.15),var(--lime))}.chart-bars i:nth-child(7){height:73%}.chart-bars i:nth-child(8){height:92%; background:linear-gradient(to top,rgba(199,242,91,.15),var(--lime))}
.chart-line { display: flex; justify-content: space-between; padding-top: 8px; }.chart-line span { width: 12px; height: 1px; background: rgba(255,255,255,.08); }
.activity-row { display: grid; grid-template-columns: 7px 1fr auto; gap: 8px; align-items: center; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.06); }.activity-row > i { width: 6px; height: 6px; border-radius: 50%; }.activity-row i.green{background:var(--lime)}.activity-row i.blue{background:#4fc4e8}.activity-row i.amber{background:#f5b34f}.activity-row span { display:flex; flex-direction:column; gap:3px }.activity-row b { font-size:7px }.activity-row small,.activity-row em { font-size:6px; color:rgba(255,255,255,.35); font-style:normal; }
.float-card { position: absolute; z-index: 5; background: rgba(9,35,37,.92); border: 1px solid rgba(255,255,255,.15); backdrop-filter: blur(12px); box-shadow: 0 20px 60px rgba(0,0,0,.3); }
.float-card-left { left: 1%; bottom: 82px; padding: 13px 18px; display: flex; gap: 12px; align-items: center; }.pulse { width: 8px; height: 8px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 6px rgba(199,242,91,.1),0 0 14px var(--lime); }.float-card div { display:flex; flex-direction:column; gap:3px }.float-card small { font-size:6px; letter-spacing:.15em; color:rgba(255,255,255,.4) }.float-card strong { font-size:10px; }
.float-card-right { right: 2%; top: 92px; width: 145px; padding: 13px; }.float-card-right strong { display:block; margin:5px 0 10px }.spark { height:22px!important; display:flex!important; flex-direction:row!important; align-items:end; gap:4px }.spark i { width:18px; background:var(--teal); height:30% }.spark i:nth-child(2){height:55%}.spark i:nth-child(3){height:45%}.spark i:nth-child(4){height:90%;background:var(--lime)}
.scroll-cue { position: absolute; left: clamp(30px,6vw,98px); bottom: 23px; display:flex; gap:14px; align-items:center; color:rgba(255,255,255,.35); font-size:8px; text-transform:uppercase; letter-spacing:.18em; }.scroll-cue i { width:42px; height:1px; background:rgba(255,255,255,.2); position:relative }.scroll-cue i::after { content:""; width:12px; height:1px; background:var(--lime); position:absolute; left:0; animation:scroll 2s ease-in-out infinite }.scroll-cue:hover{color:white}@keyframes scroll{50%{left:30px}}

.section { padding: 120px clamp(26px, 7vw, 112px); }
.section-kicker { color: #688083; margin-bottom: 25px; }.section-kicker::before { content:""; width:8px; height:8px; background:var(--lime-2); transform:rotate(45deg); }.section-kicker.light { color:rgba(255,255,255,.42) }.section-kicker.light::before{background:var(--lime)}
.problem-section { background: #f4f7f0; }
.problem-heading { display:grid; grid-template-columns:1.45fr .55fr; gap:70px; align-items:end; margin-bottom:65px; }.problem-heading h2,.section-heading-row h2,.method-section h2 { margin:0; font-size:clamp(38px,4.2vw,66px); line-height:1.05; letter-spacing:-.045em; font-weight:540 }.problem-heading h2 span,.section-heading-row h2 span,.method-section h2 span { color:#7d8d88 }.problem-heading > p,.section-heading-row > p { color:var(--muted); line-height:1.7; font-size:15px; max-width:470px; margin:0 0 6px; }
.problem-grid { display:grid; grid-template-columns:1.4fr .8fr .8fr; grid-template-rows:310px 190px; gap:12px; }
.problem-grid article { border:1px solid var(--line); position:relative; overflow:hidden; }
.problem-main { grid-row:1/3; background:var(--ink); color:white; padding:35px; display:flex; flex-direction:column; justify-content:space-between; }.problem-index { font:11px ui-monospace,monospace; color:var(--lime) }.problem-main small,.problem-card small { font-size:8px; letter-spacing:.18em; color:rgba(255,255,255,.4); font-weight:700 }.problem-main h3 { font-size:34px; line-height:1.12; margin:12px 0 }.problem-main p { color:rgba(255,255,255,.5); max-width:470px; font-size:13px; line-height:1.6; }
.signal-visual { position:absolute; right:-10px; top:25px; width:62%; height:55%; display:flex; align-items:center; justify-content:center; gap:13px; transform:skewY(-10deg); opacity:.8 }.signal-visual span { width:2px; background:linear-gradient(transparent,var(--teal),transparent); height:30% }.signal-visual span:nth-child(2),.signal-visual span:nth-child(5){height:55%}.signal-visual span:nth-child(3){height:85%;box-shadow:0 0 18px var(--teal)}.signal-visual span:nth-child(4){height:70%}.signal-visual span:nth-child(6){height:40%}.signal-visual i { position:absolute; width:180px;height:180px;border:1px solid rgba(199,242,91,.16);border-radius:50%; }
.problem-card { padding:30px; background:white; display:flex; flex-direction:column; justify-content:flex-end }.problem-card > span { position:absolute; top:25px; right:28px; font-size:25px; color:#8d9996 }.problem-card small { color:#83908e }.problem-card h3 { font-size:22px; margin:9px 0 }.problem-card p { margin:0;color:var(--muted);font-size:12px;line-height:1.55 }.problem-card.accent { background:var(--lime);border-color:var(--lime) }.problem-card.accent small,.problem-card.accent p{color:#53643a}.problem-card.accent>span{color:var(--ink)}.problem-card.wide{grid-column:2/4;display:grid;grid-template-columns:.6fr 1.4fr;align-items:center}.wide-number{font-size:60px;letter-spacing:-.06em;color:#b2bcb6}.problem-card.wide h3{margin-top:6px}

.gesfru-section { background:var(--ink); color:white; }
.product-intro { display:grid;grid-template-columns:1fr .55fr;gap:70px;align-items:end }.product-intro h2{font-size:clamp(80px,10vw,160px);line-height:.8;letter-spacing:-.08em;margin:50px 0 30px;color:var(--lime);font-weight:750}.product-tagline{font-size:clamp(27px,3vw,45px);line-height:1.1;margin:0;letter-spacing:-.035em}.product-tagline span{color:rgba(255,255,255,.35)}.product-description{color:rgba(255,255,255,.53);font-size:16px;line-height:1.75;margin:0 0 5px;max-width:520px}
.flow-map { margin:85px 0 55px;display:grid;grid-template-columns:repeat(5,1fr);position:relative }.flow-line{position:absolute;top:50px;left:5%;right:5%;height:1px;background:linear-gradient(90deg,var(--lime),var(--teal),rgba(255,255,255,.15))}.flow-step{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.flow-step span{font:8px ui-monospace;color:rgba(255,255,255,.35)}.flow-step b{font-size:11px;font-weight:600}.flow-step i{order:-1;width:14px;height:14px;background:var(--ink);border:2px solid var(--lime);border-radius:50%;box-shadow:0 0 0 7px var(--ink),0 0 0 8px rgba(199,242,91,.18);margin-top:20px}.flow-step:nth-child(4) i,.flow-step:nth-child(5) i{border-color:var(--teal)}.flow-step:nth-child(6) i{border-color:rgba(255,255,255,.35)}
.modules-grid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.1);border-left:1px solid rgba(255,255,255,.1) }.module-card{min-height:290px;padding:28px;border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);position:relative;transition:background .25s,transform .25s}.module-card:hover{background:rgba(255,255,255,.035);transform:translateY(-3px)}.module-number{font:9px ui-monospace;color:rgba(255,255,255,.28)}.module-icon{width:40px;height:40px;margin:38px 0 25px;position:relative}.module-icon i:first-child{position:absolute;width:28px;height:28px;border:1px solid var(--teal);transform:rotate(45deg);top:6px;left:6px}.module-icon i:last-child{position:absolute;width:8px;height:8px;background:var(--lime);top:16px;left:16px}.module-card:nth-child(even) .module-icon i:first-child{border-radius:50%;transform:none}.module-card h3{font-size:19px;margin:0 0 12px}.module-card p{font-size:12px;line-height:1.6;color:rgba(255,255,255,.45);max-width:320px}.module-card a{position:absolute;bottom:26px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55);display:flex;gap:12px}.module-card a:hover{color:var(--lime)}
.gesfru-cta{border:1px solid rgba(199,242,91,.3);margin-top:24px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,rgba(199,242,91,.06),transparent)}.gesfru-cta>div{display:flex;align-items:center;gap:18px}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 7px rgba(199,242,91,.08)}.gesfru-cta p{display:flex;flex-direction:column;gap:5px;margin:0}.gesfru-cta small{font-size:7px;letter-spacing:.15em;color:rgba(255,255,255,.4)}.gesfru-cta strong{font-size:15px}.button-light{background:white;color:var(--ink);min-width:230px}.button-light:hover{background:var(--lime)}

.solutions-section{background:#eef2e9}.section-heading-row{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:70px;margin-bottom:65px}.solution-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.solution-card{min-height:570px;padding:28px;border:1px solid var(--line);display:flex;flex-direction:column;background:#f7f9f4;position:relative;overflow:hidden}.solution-meta{display:flex;justify-content:space-between;align-items:center}.solution-meta span{font:10px ui-monospace;color:#84928e}.solution-meta small{font-size:8px;letter-spacing:.13em;font-weight:750}.solution-card h3{font-size:29px;letter-spacing:-.035em;line-height:1.12;margin:28px 0 12px}.solution-card p{font-size:13px;color:var(--muted);line-height:1.65;max-width:370px}.solution-card>a{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:750;margin-top:auto;display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line)}
.inventory-visual,.calendar-visual,.custom-visual{height:230px;margin:35px -28px 0;position:relative}.inventory-visual{padding:30px 45px;display:flex;gap:12px;align-items:flex-end;background:linear-gradient(135deg,#d8e6db,#f2f5ed)}.inventory-visual>div{display:grid;grid-template-columns:repeat(2,42px);gap:7px}.inventory-visual i{display:block;width:42px;height:38px;background:#b6c8bc;border:1px solid #9daf9f;position:relative}.inventory-visual i::after{content:"";width:17px;height:3px;background:#899c8d;position:absolute;top:7px;left:12px}.inventory-visual>div:nth-child(2) i{background:#c8f25c;border-color:#a8cb4d}.inventory-visual>span{position:absolute;right:24px;top:28px;font-size:8px;background:var(--ink);color:white;padding:7px 9px}.calendar-visual{margin:35px 0 0;background:white;border:1px solid var(--line);padding:20px}.calendar-head{display:flex;justify-content:space-between;font-size:12px;margin-bottom:19px}.calendar-head span{color:#80908d}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-days i{font-style:normal;font-size:8px;height:22px;display:grid;place-items:center;color:#758480}.calendar-days i.booked{background:var(--teal);color:white;border-radius:50%}.hotel{background:#e9f1ef}.custom{background:#0c2528;color:white}.custom p{color:rgba(255,255,255,.48)}.custom .solution-meta span{color:rgba(255,255,255,.35)}.custom>a{border-color:rgba(255,255,255,.12)}.custom-visual{margin:35px -28px 0;background:radial-gradient(circle at center,rgba(199,242,91,.1),transparent 55%);display:grid;place-items:center}.custom-visual>span{position:absolute;width:100px;height:100px;border:1px solid rgba(199,242,91,.25);transform:rotate(45deg)}.custom-visual>span:nth-child(2){width:145px;height:145px;border-color:rgba(21,184,166,.2)}.custom-visual>span:nth-child(3){width:190px;height:190px;border-color:rgba(255,255,255,.08)}.custom-visual i{width:54px;height:54px;background:var(--lime);transform:rotate(45deg)}.custom-visual b{position:absolute;font-size:8px;color:var(--ink);z-index:2}.solution-card:hover .custom-visual>span{animation:orbit 14s linear infinite}.solution-card>a:hover{color:var(--teal)}.custom>a:hover{color:var(--lime)}

.services-section{background:#0b2225;color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.services-intro{position:sticky;top:80px;height:max-content}.services-intro h2{font-size:clamp(38px,4vw,63px);line-height:1.05;letter-spacing:-.045em;font-weight:520;margin:0 0 25px}.services-intro h2 span{color:var(--lime)}.services-intro>p{color:rgba(255,255,255,.45);line-height:1.7;max-width:460px}.services-list{border-top:1px solid rgba(255,255,255,.12)}.services-list article{display:grid;grid-template-columns:50px 1fr 1.2fr 24px;gap:20px;align-items:center;padding:30px 5px;border-bottom:1px solid rgba(255,255,255,.12);transition:padding .2s,background .2s}.services-list article:hover{padding-left:16px;background:rgba(255,255,255,.025)}.services-list span{font:9px ui-monospace;color:var(--lime)}.services-list h3{font-size:18px;margin:0}.services-list p{font-size:12px;line-height:1.55;color:rgba(255,255,255,.43);margin:0}.services-list i{font-style:normal;color:rgba(255,255,255,.3)}

.method-section{background:#f3f6ee}.method-track{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-top:80px}.method-track::before{content:"";position:absolute;left:0;right:0;top:53px;height:1px;background:var(--line)}.method-track article{padding-right:35px;position:relative}.method-track article>span{font:9px ui-monospace;color:#7c8b87}.method-node{height:56px;display:flex;align-items:center}.method-node i{width:13px;height:13px;border-radius:50%;background:var(--paper);border:2px solid var(--ink);box-shadow:0 0 0 7px #f3f6ee}.method-track article:first-child .method-node i{background:var(--lime);box-shadow:0 0 0 7px #f3f6ee,0 0 0 8px var(--lime-2)}.method-track h3{font-size:23px;margin:16px 0 11px}.method-track p{font-size:12px;color:var(--muted);line-height:1.65;margin:0;max-width:250px}

.contact-section{background:var(--ink);color:white;padding-top:100px;padding-bottom:100px}.contact-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.contact-copy h2{font-size:clamp(43px,5vw,76px);line-height:.98;letter-spacing:-.055em;margin:0 0 28px;font-weight:520}.contact-copy h2 span{color:var(--lime)}.contact-copy>p{color:rgba(255,255,255,.52);line-height:1.7;max-width:530px}.contact-promise{margin-top:45px;border-top:1px solid rgba(255,255,255,.1)}.contact-promise>div{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}.contact-promise>div>span{font:8px ui-monospace;color:var(--lime)}.contact-promise p{margin:0;display:flex;flex-direction:column;gap:4px}.contact-promise strong{font-size:12px}.contact-promise small{font-size:10px;color:rgba(255,255,255,.36)}
.form-card{background:#f5f7f1;color:var(--ink);min-height:600px;padding:40px}.form-heading{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:25px}.form-heading small{font-size:8px;letter-spacing:.17em;color:#748480}.form-heading h3{font-size:23px;margin:8px 0 0}.form-heading>span{font-size:25px;color:var(--teal)}.form-card form>label,.field-row label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.form-card label>span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:750;color:#536360}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-card input,.form-card select,.form-card textarea{width:100%;border:0;border-bottom:1px solid #cbd2ca;background:transparent;padding:10px 2px 12px;color:var(--ink);outline:none;border-radius:0}.form-card select{cursor:pointer}.form-card textarea{resize:vertical}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--teal)}.form-card input::placeholder,.form-card textarea::placeholder{color:#9aa59f;font-size:12px}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden}.submit-button{width:100%;height:57px;border:0;background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:12px;font-weight:750;cursor:pointer;margin-top:8px;transition:background .2s}.submit-button:hover{background:#163a3d}.submit-button:disabled{opacity:.6;cursor:wait}.privacy-note{font-size:9px!important;text-align:center;color:#84918d!important;margin:11px 0 0!important}.form-error{font-size:11px;color:#b42318;background:#fee4e2;padding:10px}.success-state{min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:440px;margin:auto}.success-icon{width:70px;height:70px;border-radius:50%;background:var(--lime);display:grid;place-items:center;font-size:30px;margin-bottom:24px}.success-state small{letter-spacing:.16em;color:#71807c;font-size:8px}.success-state h3{font-size:32px;margin:12px 0}.success-state p{color:var(--muted);line-height:1.7;font-size:13px}.button-dark{background:var(--ink);color:white;border:0;cursor:pointer;margin-top:15px}

.faq-section{background:#eef2e9;display:grid;grid-template-columns:.55fr 1.45fr;gap:9vw}.faq-heading h2{font-size:42px;letter-spacing:-.04em}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:0 4px}.faq-list summary{list-style:none;display:grid;grid-template-columns:45px 1fr 30px;align-items:center;min-height:78px;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:9px ui-monospace;color:#81908c}.faq-list summary b{font-size:15px}.faq-list summary i{font-style:normal;font-size:21px;text-align:right;transition:transform .2s}.faq-list details[open] summary i{transform:rotate(45deg)}.faq-list details p{margin:-5px 30px 25px 45px;max-width:650px;color:var(--muted);font-size:13px;line-height:1.7}

footer{background:#061719;color:white;padding:70px clamp(26px,7vw,112px) 25px}.footer-main{display:grid;grid-template-columns:.6fr .9fr 1.3fr .8fr;gap:50px;align-items:start;padding-bottom:60px}.footer-brand .brand-tag{display:none}.footer-main>p{font-size:13px;line-height:1.6;color:rgba(255,255,255,.38);margin:0}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;gap:35px}.footer-main nav>div{display:flex;flex-direction:column;gap:11px}.footer-main nav small{font-size:8px;color:var(--lime);letter-spacing:.15em;margin-bottom:5px}.footer-main nav a{font-size:11px;color:rgba(255,255,255,.48)}.footer-main nav a:hover{color:white}.footer-cta{border:1px solid rgba(255,255,255,.15);padding:18px;display:flex;flex-direction:column;gap:8px}.footer-cta>span{font-size:9px;color:rgba(255,255,255,.36)}.footer-cta strong{font-size:16px;display:flex;justify-content:space-between}.footer-cta i{font-style:normal;color:var(--lime)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.28)}.footer-bottom div{display:flex;gap:25px}

@media (max-width: 1180px) {
  .hero{grid-template-columns:1fr 1fr;padding-left:45px;padding-right:35px}.hero h1{font-size:58px}.dashboard-shell{min-width:500px}.float-card-right{right:-2%}.product-stage{transform:scale(.9)}
  .section{padding-left:55px;padding-right:55px}.problem-grid{grid-template-columns:1.1fr .9fr .9fr}.solution-card{padding:23px}.services-section{gap:6vw}.contact-wrap{gap:5vw}
}
@media (max-width: 960px) {
  .site-header,.site-header.scrolled{height:72px}.brand-tag{display:none}.menu-toggle{display:flex;flex-direction:column;gap:7px;z-index:60}.menu-toggle span{width:25px;height:1px;background:white}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:25px;background:#0a2224;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:10px}.nav-cta{justify-content:space-between}
  .hero{height:auto;min-height:100vh;grid-template-columns:minmax(0,1fr);padding:130px clamp(22px,6vw,55px) 70px}.hero-copy{width:100%;min-width:0;max-width:760px}.hero h1{font-size:clamp(42px,7.2vw,58px);overflow-wrap:anywhere}.hero-lead{max-width:100%}.hero-actions{flex-wrap:wrap}.product-stage{width:100%;min-width:0;margin-top:50px;min-height:480px;transform:none;overflow:hidden}.dashboard-shell{width:min(720px,88vw);min-width:0}.panel-cloud{inset:0}.cloud-panel{opacity:.82}.orbit-one{width:520px;height:520px}.orbit-two{width:390px;height:390px}.float-card-left{left:0}.hero::before{display:none}.scroll-cue{display:none}
  .problem-heading,.section-heading-row,.product-intro,.contact-wrap{grid-template-columns:1fr}.problem-heading>p,.section-heading-row>p{max-width:620px}.problem-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 230px 190px}.problem-main{grid-column:1/3;grid-row:auto}.problem-card.wide{grid-column:1/3}.modules-grid{grid-template-columns:1fr 1fr}.solution-cards{grid-template-columns:1fr 1fr}.solution-card.custom{grid-column:1/3;min-height:500px}.services-section{grid-template-columns:1fr}.services-intro{position:static}.method-track{grid-template-columns:1fr 1fr;gap:55px 20px}.method-track::before{display:none}.faq-section{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-main nav{order:3}.footer-cta{order:4}
}
@media (max-width: 640px) {
  .site-header{padding:0 20px}.brand-name{font-size:17px}.hero{padding:112px 18px 55px;min-height:auto}.hero h1{font-size:clamp(38px,11.5vw,46px);line-height:1;letter-spacing:-.045em;overflow-wrap:normal}.eyebrow{font-size:8px;letter-spacing:.16em}.hero-lead{font-size:15px}.hero-actions{width:100%;flex-direction:column;align-items:stretch}.button,.button-primary,.button-ghost{width:100%;min-width:0;max-width:100%;gap:14px}.button-ghost{justify-content:flex-start}.hero-proof{width:100%;margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.hero-proof div{min-width:0;padding-left:15px}.hero-proof div:nth-child(3){grid-column:1/3;border-left:0;padding-left:0}.product-stage{width:100%;min-height:390px;margin:42px 0 0;padding:44px 0 34px;overflow:visible}.dashboard-shell{width:100%;min-width:0;transform:none;animation:dashboard-breathe-mobile 8s ease-in-out infinite}.dashboard-body{min-height:280px}.dash-sidebar{width:38px;gap:14px;padding-top:18px}.dash-sidebar span{width:12px;height:12px}.dash-sidebar span.active::before{left:-13px}.dash-main{min-width:0;padding:15px 12px}.dash-heading strong{font-size:12px}.metric-grid{gap:5px;margin:14px 0 8px}.metric-grid>div{min-width:0;padding:9px 6px;grid-template-columns:1fr}.metric-grid small{grid-column:auto;font-size:6px}.metric-grid b{font-size:16px}.metric-grid em{display:none}.dash-lower{grid-template-columns:1fr}.chart-card{min-height:130px}.activity-card{display:none}.chart-bars{height:82px;gap:6px}.panel-cloud{inset:0 -10px}.cloud-panel{width:74px;height:57px;padding:8px;border-radius:6px;opacity:.78}.cloud-panel i{width:19px;height:19px;font-size:7px}.cloud-panel b{font-size:5px}.cloud-panel-1{left:-5px;top:0}.cloud-panel-2{right:-5px;top:4px}.cloud-panel-3{display:none}.cloud-panel-4{display:none}.cloud-panel-5{left:8px;bottom:0}.cloud-panel-6{right:8px;bottom:0}.orbit{display:none}.float-card{display:none}.section{padding:80px 22px}.problem-heading h2,.section-heading-row h2,.method-section h2{font-size:37px}.problem-grid{display:flex;flex-direction:column}.problem-main{min-height:420px}.problem-card{min-height:210px}.problem-card.wide{display:flex}.wide-number{font-size:48px}.product-intro h2{font-size:82px;margin-top:35px}.product-tagline{font-size:28px}.flow-map{grid-template-columns:1fr;margin:60px 0;gap:0}.flow-line{top:0;bottom:0;left:22px;right:auto;width:1px;height:auto}.flow-step{height:70px;display:grid;grid-template-columns:45px 1fr;align-items:center;text-align:left}.flow-step i{position:absolute;left:16px;top:8px;margin:0;width:13px;height:13px}.modules-grid{grid-template-columns:1fr}.module-card{min-height:275px}.sisfru-cta{flex-direction:column;align-items:stretch;gap:22px}.sisfru-cta>div{align-items:flex-start}.solution-cards{grid-template-columns:1fr}.solution-card.custom{grid-column:auto}.services-list article{grid-template-columns:35px 1fr 20px;padding:25px 0}.services-list article p{grid-column:2/4}.services-list article i{grid-column:3;grid-row:1}.method-track{grid-template-columns:1fr}.method-track article{padding-right:0}.method-node{height:35px}.contact-section{padding-top:75px}.contact-copy h2{font-size:clamp(39px,12vw,48px)}.form-card{padding:24px;margin:0 -6px;min-height:0}.field-row{grid-template-columns:1fr}.success-state{min-height:450px}.faq-list summary{grid-template-columns:35px 1fr 25px;gap:5px}.faq-list summary b{font-size:13px}.faq-list details p{margin-left:35px}.footer-main{grid-template-columns:1fr}.footer-main nav{order:initial}.footer-cta{order:initial}.footer-bottom{flex-direction:column;gap:15px}.footer-bottom div{justify-content:space-between}
}

@keyframes dashboard-breathe-mobile { 0%,100%{translate:0 0} 50%{translate:0 -5px} }

@media (max-width: 380px) {
  .site-header{padding-inline:16px}.hero{padding-inline:16px}.hero h1{font-size:clamp(35px,11vw,40px)}.hero-proof{grid-template-columns:1fr;gap:16px}.hero-proof div,.hero-proof div:nth-child(3){grid-column:auto;border-left:0;padding-left:0}.section{padding-left:18px;padding-right:18px}.product-intro h2{font-size:72px}
}

@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto} *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important} }

/* Accesibilidad y estado temporal del formulario estático. */
.skip-link { position: fixed; left: 18px; top: -70px; z-index: 100; padding: 12px 16px; background: var(--lime); color: var(--ink); font-weight: 750; transition: top .2s; }
.skip-link:focus { top: 18px; }
:focus-visible { outline: 3px solid var(--lime); outline-offset: 4px; }
.form-phase { display: flex; flex-direction: column; gap: 4px; margin: -5px 0 24px; padding: 12px 14px; border-left: 3px solid var(--teal); background: #e5f3ee; }
.form-phase strong { font-size: 11px; }
.form-phase span { color: var(--muted); font-size: 10px; line-height: 1.45; }
.form-status { min-height: 0; margin: 0; color: #245b53; background: #def3e9; font-size: 11px; line-height: 1.5; }
.form-status:not(:empty) { min-height: 44px; margin: 4px 0 12px; padding: 10px 12px; }

@media (max-width: 640px) {
  .brand { gap: 8px; }
  .brand-symbol { width: 38px; height: 38px; flex-basis: 38px; }
  .brand-wordmark { font-size: 18px; }
  .brand-descriptor { font-size: 5.5px; letter-spacing: .2em; }
  .gesfru-cta { flex-direction: column; align-items: stretch; gap: 22px; }
  .gesfru-cta > div { align-items: flex-start; }
}
