/* innovdeERP */
.erp-hero{ align-items:center; min-height:100svh; }

/* Dashboard promo backdrop — poster paints first, the loop fades in once it plays */
.erp-promo__bg .erp-promo__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition:opacity 1.2s var(--ease-out); }
.erp-promo__bg .erp-promo__video.is-playing{ opacity:.9; }
/* the flow is livelier than a still, so the mockup gets a little more separation from it */
.erp-promo__bg::after{ background:linear-gradient(var(--page), rgba(5,9,18,.3) 22%, rgba(5,9,18,.42) 72%, var(--page)); }
@media (prefers-reduced-motion: reduce){ .erp-promo__bg .erp-promo__video{ display:none; } }
.erp-hero__grid{ display:grid; grid-template-columns:minmax(0,6fr) minmax(0,7fr); gap:clamp(32px,4vw,64px); align-items:center; }
@media (max-width:1000px){ .erp-hero__grid{ grid-template-columns:minmax(0,1fr); } } /* minmax(0,…) — the mockup's nowrap table must not widen the column */
.erp-hero .page-hero__inner{ position:relative; z-index:2; } /* copy stays above the tilted mockup */
.erp-hero__title{ font-size:clamp(2.4rem, 3.7vw, 4.2rem); hyphens:manual; -webkit-hyphens:manual; }
.erp-hero__stage{ perspective:1600px; min-width:0; }
.erp-hero .erp-ui__kpi b{ white-space:nowrap; font-size:clamp(14px, 1.25vw, 20px); }
@media (min-width:981px){ .erp-hero .erp-ui{ grid-template-columns:clamp(150px, 13vw, 220px) minmax(0,1fr); } .erp-hero .erp-ui__nav{ font-size:12.5px; } }
.erp-hero .erp-ui__kpi span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
@media (min-width:1001px){ .erp-hero .erp-ui{ min-height:0; } .erp-hero{ padding-bottom:clamp(40px, 6vh, 96px); } }
.erp-ui--layers{ transform-style:preserve-3d; transform:rotateY(-14deg) rotateX(8deg); }
.erp-ui--layers .erp-ui__side{ transform:translateZ(20px); }
.erp-ui--layers .erp-ui__kpis{ transform:translateZ(70px); }
.erp-ui--layers .erp-ui__row{ transform:translateZ(45px); }
.erp-ui--layers .erp-ui__table-wrap{ transform:translateZ(30px); }
.erp-ui--layers .erp-ui__main{ transform-style:preserve-3d; }
@media (max-width:1000px), (prefers-reduced-motion: reduce){ .erp-ui--layers{ transform:none; } .erp-ui--layers *{ transform:none !important; } }

/* Product tour */
.tour__grid{ display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(24px,4vw,56px); align-items:start; }
.tour__steps{ list-style:none; padding:0; margin:0; display:grid; gap:0; }
.tour__step{ display:grid; grid-template-columns:44px 1fr; gap:14px; padding:16px 0; border-top:1px solid var(--line); }
.tour__num{ color:var(--cyan); font-size:12.5px; letter-spacing:.12em; padding-top:5px; }
.tour__title{ font:600 20px/1.25 var(--font-display); }
.tour__subs{ font-size:14px; margin-top:4px; }
.tour__ui{ position:sticky; top:calc(var(--header-h) + 24px); }
.erp-ui--tour{ min-height:520px; }
.tour__main{ position:relative; }
.tour__panel{ display:none; gap:14px; align-content:start; }
.tour__panel.is-active{ display:grid; }
.tour__tabs{ display:flex; flex-wrap:wrap; gap:6px; }
.tour__tab{ padding:6px 12px; border-radius:999px; border:1px solid var(--ui-line, rgba(255,255,255,.07)); font-size:12px; color:var(--text-3); }
.tour__tab.is-on{ background:rgba(42,159,216,.14); border-color:rgba(42,159,216,.4); color:var(--text); }
@media (max-width:1000px){ .tour__grid{ grid-template-columns:1fr; } .tour__ui{ display:none; } }

.tour.is-scene .tour__step{ opacity:.35; transition:opacity .35s var(--ease-out); }
.tour.is-scene .tour__step.is-active{ opacity:1; }
.tour.is-scene .tour__step.is-active .tour__title{ color:var(--brand-bright); }
.tour.is-scene .tour__ui{ position:relative; top:auto; }
/* pinned tour = exactly one viewport: header-safe padding, compact head, steps + mockup share the rest */
.tour.is-scene{ box-sizing:border-box; height:100vh; height:100svh; display:flex; flex-direction:column;
  padding-block:calc(var(--header-h) + clamp(12px, 3vh, 36px)) clamp(16px, 3.5vh, 40px); }
.tour.is-scene > .container{ flex:1 1 auto; min-height:0; width:100%; display:flex; flex-direction:column; }
.tour.is-scene .section__head{ flex:none; gap:clamp(8px, 1.5vh, 16px); margin-bottom:clamp(12px, 3vh, 36px); }
.tour.is-scene .section__head h2{ font-size:min(var(--fs-h2), 6vh); }
.tour.is-scene .tour__grid{ flex:1 1 auto; min-height:0; align-items:stretch; }
.tour.is-scene .tour__steps{ align-content:space-between; min-height:0; }
.tour.is-scene .tour__step{ padding:clamp(4px, 1vh, 12px) 0; align-items:center; }
.tour.is-scene .tour__num{ padding-top:0; }
.tour.is-scene .tour__title{ font-size:clamp(15px, 2.4vh, 20px); }
.tour.is-scene .tour__step:not(.is-active) .tour__subs{ display:none; }
.tour.is-scene .tour__subs{ font-size:13px; margin-top:2px; }
.tour.is-scene .tour__ui{ min-height:0; display:flex; align-items:center; }
.tour.is-scene .erp-ui--tour{ width:100%; min-height:0; height:100%; max-height:620px; }
.tour.is-scene .erp-ui--tour .erp-ui__side{ overflow:hidden; gap:clamp(0px, .4vh, 4px); padding-block:clamp(10px, 2vh, 18px); }
.tour.is-scene .erp-ui--tour .erp-ui__nav{ padding-block:clamp(5px, 1vh, 9px); }
.tour.is-scene .erp-ui--tour .erp-ui__main{ overflow:hidden; }
.erp-ui__nav{ transition:background-color .3s, color .3s; }

/* MULTI kinetic type */
.multi__kinetic{ display:flex; align-items:baseline; gap:.18em; flex-wrap:wrap; font:700 clamp(2.6rem, min(10vw, 16vh), 10rem)/1 var(--font-display); letter-spacing:-.04em; }
.multi.is-scene{ box-sizing:border-box; height:100vh; height:100svh; display:flex; flex-direction:column; justify-content:center;
  padding-block:calc(var(--header-h) + clamp(12px, 3vh, 36px)) clamp(16px, 3.5vh, 40px); }
.multi.is-scene .section__head{ margin-bottom:clamp(8px, 2vh, 24px); }
.multi.is-scene .multi__chips{ margin-top:clamp(20px, 4vh, 48px); }
.multi.is-scene .multi__chips .chip{ padding:clamp(8px, 1.3vh, 12px) 16px; }
.multi__fixed{ color:var(--text); }
.multi__slot{ display:inline-block; height:1.02em; overflow:hidden; vertical-align:bottom; }
.multi__reel{ display:grid; }
.multi__reel span{ display:block; height:1.02em; line-height:1.02; background:linear-gradient(90deg, var(--brand-bright), var(--cyan)); -webkit-background-clip:text; background-clip:text; color:transparent; white-space:nowrap; }
.multi__kinetic::before{ content:"–"; order:1; color:var(--text-3); display:none; }
.multi__chips{ list-style:none; padding:0; margin:48px 0 0; display:flex; flex-wrap:wrap; gap:10px; }
.multi__chips .chip{ font-size:14px; color:var(--text); padding:12px 16px; }
.multi.is-scene .multi__chips .chip{ transition:border-color .3s, background-color .3s; }
.multi.is-scene .multi__chips .chip.is-on{ border-color:var(--brand-bright); background:rgba(42,159,216,.12); }
@media (max-width:767px), (prefers-reduced-motion: reduce){ .multi__slot{ display:none; } }

/* 11 parts with sticky index */
.parts__grid{ display:grid; grid-template-columns:minmax(0,3.4fr) minmax(0,8fr); gap:clamp(24px,4vw,64px); align-items:start; }
.parts__index{ position:sticky; top:calc(var(--header-h) + 28px); }
.parts__index ol{ list-style:none; padding:0; margin:0; display:grid; gap:2px; }
.parts__index a{ display:flex; gap:12px; align-items:baseline; padding:8px 12px; border-radius:var(--r-1); color:var(--text-3); font-size:15px; transition:color .3s, background-color .3s; }
.parts__index a .mono{ font-size:11.5px; color:inherit; }
.parts__index a:hover{ color:var(--text); }
.parts__index a.is-active{ color:var(--text); background:rgba(42,159,216,.1); }
.parts__index a.is-active .mono{ color:var(--cyan); }
.parts__cards{ display:grid; gap:16px; }
.part{ display:grid; gap:20px; scroll-margin-top:calc(var(--header-h) + 24px); }
.part:hover{ transform:none; }
.part__head{ display:flex; align-items:center; gap:16px; }
.part__num{ color:var(--cyan); font-size:13px; letter-spacing:.12em; }
.part__chips{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.part__chips .chip{ font-family:var(--font-body); font-size:13.5px; letter-spacing:0; color:var(--text-2); }
@media (max-width:900px){ .parts__grid{ grid-template-columns:1fr; } .parts__index{ display:none; } }
