/* ============================================================================
   Home restyle — "deep-navy gallery" (user-directed 2026-09-19).
   Reference: refero style e5f5f8cf (dark AI system). DNA kept: single dark
   canvas, oversized left-aligned light-weight headlines with negative
   tracking, floating content with no card panels, ONE pill CTA, 24px rounded
   imagery, tags as pills. Palette re-mapped to JYX: void -> navy-900, violet
   -> brand blue, amber spark -> brass (gold-plated parts).
   Loaded after home-metalli; homepage-only overrides.
   ========================================================================== */

.home {
	--r-canvas: #071522;
	--r-canvas-2: #0A1C30;
	--r-line: rgba(255, 255, 255, .12);
	--r-line-soft: rgba(255, 255, 255, .07);
	--r-text: #F4F7FA;
	--r-mute: #93A5B8;
	--r-dim: #5F7288;
	--r-accent: #3D93EC;   /* brand blue lifted for dark ground */
	--r-gold: #E8A33D;     /* brass — plating colour of the parts */
	background: var(--r-canvas);
	color: var(--r-text);
}

/* ---- canvas: one dark velvet, no alternating banding ---------------------- */
.home .m-sec,
.home .m-sec--gray,
.home .m-slider,
.home .m-stats { background: transparent; }
.home .m-sec { padding-block: clamp(4rem, 3rem + 4vw, 7rem); }

/* ---- section heads: oversized, left-aligned, sculptural -------------------- */
.home .m-sec-head { text-align: left; max-width: none; margin: 0 0 clamp(2.5rem, 2rem + 2.5vw, 4.5rem); }
.home .m-sec-head .kick {
	display: inline-block; font-family: inherit; font-size: 11px; font-weight: 600;
	letter-spacing: .2em; text-transform: uppercase; color: var(--r-accent);
	border: 1px solid rgba(61, 147, 236, .35); border-radius: 999px;
	padding: 7px 14px; margin-bottom: 22px;
}
.home .m-sec-head .kick::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--r-gold); margin-right: 9px; vertical-align: 2px; }
.home .m-sec-head h2 {
	font-size: clamp(2.75rem, 4.6vw, 4.5rem); font-weight: 700; line-height: .98;
	letter-spacing: -.025em; text-transform: none; color: var(--r-text); max-width: 20ch;
}
.home .m-sec-head .lead { margin: 20px 0 0; font-size: 17px; line-height: 1.6; color: var(--r-mute); max-width: 62ch; }

/* ---- floating cards: no panel, image + type on the void -------------------- */
.home .mcard { background: transparent; border: 0; box-shadow: none; border-radius: 0; }
.home .mcard::after { content: none; }
.home .mcard .ph { border-radius: 22px; background: var(--r-canvas-2); }
.home .mcard .bd { padding: 20px 2px 4px; }
.home .mcard .bd b, .home .mcard .t { color: var(--r-text); font-weight: 600; }
.home .mcard .bd .spec { color: var(--r-mute); }
.home .mcard .bd b a { color: inherit; }
.home .mcard .bd b a:hover { color: var(--r-accent); }
.home .mcard .inquire { color: var(--r-text); }
.home .mcard .inquire::after { content: " →"; display: inline-block; transition: transform .45s cubic-bezier(.22,.61,.36,1); }
.home .mcard .inquire:hover::after { transform: translateX(4px); }
.home .mcard:hover { transform: scale(1.03); }
.home .mcard:hover .ph img { filter: brightness(1.06); }
.home .mcard .ph img { transition: filter .6s var(--ease-out); }

/* ---- pills: the one CTA shape ---------------------------------------------- */
.home .btn, .home .m-inq .btn-white, .home .site-header__cta { border-radius: 999px; }
.home .btn-light, .home .btn-primary { background: var(--r-accent); border-color: var(--r-accent); color: #fff; }
.home .btn-light:hover, .home .btn-primary:hover { background: #5CA6F2; border-color: #5CA6F2; }
.home .btn-ghost, .home .btn-ghost-light, .home .btn-line { border: 1px solid var(--r-line); color: var(--r-text); background: transparent; }
.home .btn-ghost:hover, .home .btn-ghost-light:hover { border-color: var(--r-text); background: rgba(255, 255, 255, .06); color: var(--r-text); }
.home .m-more .btn-line { overflow: visible; }
.home .m-more .btn-line::before { content: none; }
.home .m-more .btn-line:hover { background: rgba(255,255,255,.06); color: var(--r-text); border-color: var(--r-text); }

/* ---- hero: scroll-driven pinned product showcase (3 linked screens) -------- */
.hero-scroll { position: relative; height: 300vh; }
.hero-scroll__stage { position: sticky; top: 0; height: 100vh; overflow: hidden; display: flex; align-items: center;
	background:
		radial-gradient(70% 90% at 68% 50%, rgba(18, 103, 196, .26) 0%, rgba(18, 103, 196, 0) 62%),
		var(--r-canvas); }
.hero-scroll .cine-canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-scroll__page { position: absolute; left: 0; right: 0; z-index: 1; padding: clamp(1.5rem, 4.5vw, 4.5rem);
	padding-top: clamp(7rem, 14vh, 10rem); opacity: 0; visibility: hidden; }
.hero-scroll__page.is-active { visibility: visible; }
/* scene 2: formation travels LEFT, the copy flips to the RIGHT half */
@media (min-width: 901px) {
	.hero-scroll__page--flip { left: auto; right: 0; max-width: 46%; }
	.hero-scroll__page--flip .hero-cine__title { max-width: none; }
}
.hero-cine__title { font-size: clamp(2.7rem, 5.7vw, 6rem); font-weight: 700; line-height: 1.0; letter-spacing: -.03em; color: var(--r-text); max-width: 13ch; margin: 18px 0 22px; }
.hero-cine__lead { font-size: 17.5px; line-height: 1.65; color: var(--r-mute); max-width: 52ch; margin-bottom: 34px; }
.hero-pill { display: inline-flex; align-items: center; gap: 10px; margin-top: 6px; font-size: 14.5px; font-weight: 600; color: #fff;
	background: var(--r-accent); border-radius: 999px; padding: 15px 28px; transition: background-color .35s var(--ease-out), transform .5s cubic-bezier(.32,.72,0,1); }
.hero-pill:hover { background: #5CA6F2; transform: translate3d(0, -2px, 0); }
.hero-pill span { transition: transform .45s cubic-bezier(.32,.72,0,1); }
.hero-pill:hover span { transform: translateX(4px); }
.hero-scroll__idx { position: absolute; right: clamp(1.5rem, 4.5vw, 4.5rem); top: 50%; transform: translateY(-50%); z-index: 1;
	display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.hero-scroll__num { font-family: var(--font-mono); font-size: 12px; letter-spacing: .18em; color: var(--r-dim); }
.hero-scroll__num b { color: var(--r-text); font-weight: 600; }
.hero-scroll__line { width: 2px; height: 88px; background: rgba(255, 255, 255, .14); border-radius: 2px; overflow: hidden; display: block; }
.hero-scroll__fill { display: block; width: 100%; height: 0%; background: var(--r-accent); }
.hero-cine .m-kicker { color: var(--r-gold); letter-spacing: .22em; }
.hero-scroll .m-kicker { color: var(--r-gold); letter-spacing: .22em; }
@media (max-width: 900px) {
	.hero-cine__inner { padding-top: 9rem; }
	.hero-cine__title { max-width: none; }
	.hero-ask { flex-direction: column; border-radius: 26px; }
	.hero-ask__btn { width: 100%; border-radius: 18px; }
}
.home .m-dots button { background: rgba(255, 255, 255, .22); }
.home .m-dots button.is-active { background: var(--r-text); }
.home .m-slider__arrows button { border-color: var(--r-line); color: var(--r-text); background: rgba(7, 21, 34, .45); }
.home .m-slider__arrows button:hover { background: var(--r-accent); border-color: var(--r-accent); }

/* ---- stats: dial-in readouts on a measurement rule -------------------------- */
.home .m-stats { padding-block: clamp(3.5rem, 2.5rem + 3.5vw, 5.75rem); }
.home .m-stats .mgrid4 { border-top: 1px solid var(--r-line); }
.home .m-stats .stat { position: relative; text-align: left; justify-items: start; }
.home .m-stats .stat::before { content: ""; position: absolute; top: -1px; left: 0; width: 2px; height: 12px; background: var(--r-gold); }
.home .m-stats .stat__idx { font-family: BarlowSC, var(--font-mono); font-size: 10.5px; letter-spacing: .22em; color: var(--r-dim); transition: color .3s var(--ease-out); }
.home .m-stats .stat:hover .stat__idx { color: var(--r-accent); }
.home .m-stats .stat__v { display: flex; align-items: flex-end; gap: .06em; min-height: clamp(3.4rem, 2.2rem + 3.4vw, 5.25rem); margin-top: 12px; font-family: BarlowSC, var(--font-mono); font-weight: 500; font-size: clamp(3.4rem, 2.2rem + 3.4vw, 5.25rem); line-height: .95; letter-spacing: -.02em; color: var(--r-text); font-variant-numeric: tabular-nums; }
.home .m-stats .stat__v em { font-style: normal; font-size: .48em; color: var(--r-accent); letter-spacing: 0; transform: translateY(-.5em); }
.home .m-stats .stat__v--word { font-size: clamp(2.35rem, 1.55rem + 2vw, 3.7rem); letter-spacing: -.01em; }
.home .m-stats .stat--iso .stat__v::after { content: ""; width: 46px; height: 2px; background: var(--r-accent); margin-left: .2em; transition: width .5s var(--ease-out); }
.home .m-stats .stat--iso:hover .stat__v::after { width: 74px; }
.home .m-stats .stat__l { margin-top: 16px; font-weight: 700; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--r-gold); }
.home .m-stats .stat__n { margin-top: 6px; font-size: 13.5px; color: var(--r-dim); line-height: 1.55; }
@media (max-width: 768px) {
	.home .m-stats .mgrid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 22px; }
	.home .m-stats .stat__v { min-height: 3.4rem; font-size: 3.4rem; }
	.home .m-stats .stat__v--word { font-size: 2.35rem; }
}

/* ---- company profile: editorial left block + hairline tiles ----------------- */
.home .mtext { max-width: 880px; margin: 0; text-align: left; }
.home .mtext h2 {
	font-size: clamp(2.25rem, 3.8vw, 3.6rem); font-weight: 700; line-height: 1.02;
	letter-spacing: -.025em; text-transform: none; color: var(--r-text);
}
.home .mtext p { color: var(--r-mute); }
.home .mtext a { color: var(--r-accent); }
.home .mtext a:hover { color: var(--r-text); }
.home .m-tiles { margin-top: clamp(2.5rem, 2rem + 2vw, 4rem) !important; }
.home .m-tiles .mtext {
	background: transparent; border: 0; border-top: 1px solid var(--r-line);
	border-radius: 0; padding: 22px 26px 0 0;
}
.home .m-tiles .mtext h2 { font-size: clamp(1.25rem, 1.8vw, 1.6rem); font-weight: 600; letter-spacing: -.01em; }
.home .m-tiles .mtext .kick { color: var(--r-gold); }

/* ---- RFQ finale: contained rounded band, one pill --------------------------- */
.home .m-inq { background: var(--r-canvas-2); border-radius: 24px; margin: 0 16px clamp(4rem, 3rem + 4vw, 6rem); padding-block: clamp(3rem, 2rem + 3.5vw, 5rem); }
.home .m-inq .wrap { max-width: 1160px; margin-inline: auto; padding-inline: 24px; }
.home .m-inq h2 { font-size: clamp(2rem, 3.4vw, 3.2rem); font-weight: 700; letter-spacing: -.025em; text-transform: none; line-height: 1.02; }
.home .m-inq p { color: var(--r-mute); }
.home .m-inq .btn-white { background: var(--r-accent); color: #fff; border-radius: 999px; padding: 18px 30px; }
.home .m-inq .btn-white:hover { background: #5CA6F2; color: #fff; }

/* ---- header: overlay chrome comes from .site-header--overlay (components.css);
       home-metalli restyles .site-header at equal specificity and loads later,
       so restore the overlay behaviour at higher specificity here ------------ */
.home .site-header--overlay { position: fixed; left: 0; right: 0; background: transparent; border-color: transparent; }
.home .site-header--overlay .nav__link, .home .site-header--overlay .brand__name { color: var(--r-mute); }
.home .site-header--overlay .nav__link:hover { color: var(--r-text); }
.home .site-header--overlay.is-scrolled { background: rgba(7, 21, 34, .88); backdrop-filter: blur(14px); border-color: var(--r-line-soft); }
.home .site-header .nav__link::after { background: var(--r-accent); }
.home .site-header__cta { background: var(--r-accent); border-radius: 999px; }
.home .site-header__cta:hover { background: #5CA6F2; }
.home .utilbar { background: #050E18; }
.home .utilbar a { color: var(--r-mute); }
.home .utilbar a:hover { color: var(--r-gold); }

/* ---- floaters / misc chrome -------------------------------------------------- */
.home .flo { background: rgba(10, 28, 48, .92); color: var(--r-text); border: 1px solid var(--r-line-soft); }
.home .flo--msg { background: rgba(61, 147, 236, .92); }
.home .flo:hover { color: #fff; }

/* ---- footer on the same velvet (homepage scope) ------------------------------ */
.home .site-footer { background: #050E18; color: var(--r-mute); }
.home .site-footer h2, .home .site-footer h3, .home .site-footer strong, .home .site-footer .t { color: var(--r-text); }
.home .site-footer a { color: var(--r-mute); }
.home .site-footer a:hover { color: var(--r-text); }
.home .site-footer { border-top: 1px solid var(--r-line-soft); }

/* ---- reduced motion / no-js: engine handles; nothing theme-specific here ----- */

/* ---- hero particle field: canvas assembles the part; img is the fallback ---- */
.home .m-slide .art--pfx .pfx { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1.6s var(--ease-out); }
.home .m-slide .art--pfx.pfx-live .pfx { opacity: 1; }
.home .m-slide .art--pfx.pfx-live > img { opacity: 0; }

/* Dala-inspired photo constellation, September 2026. */
.home { --r-canvas: #061427; }
.hero-scroll { height: 440svh; background: #061427; }
.hero-scroll__stage { height: 100svh; background: #061427; isolation: isolate; }
.hero-scroll__page { width: 41%; right: auto; top: 50%; padding: 0 0 0 4.5vw; margin-top: -230px; }
.hero-scroll__page--flip { width: 40%; left: 58%; right: auto; padding: 0 3vw 0 0; }
.hero-scroll__page--wide { top: 16%; left: 4.5%; width: 90%; padding: 0; margin-top: 0; }
.hero-cine__title { font-size: clamp(38px,4.9vw,82px); line-height: 1.03; letter-spacing: -.045em; margin: 20px 0 24px; max-width: 12ch; }
.hero-cine__title--sub { font-size: clamp(38px,4.8vw,76px); }
.hero-scroll__page--wide .hero-cine__title { max-width: 21ch; margin: 12px 0; font-size: clamp(34px,4.2vw,68px); }
.hero-scroll__page--wide .hero-cine__title br { display: none; }
.hero-scroll__page--wide .hero-cine__lead { max-width: 62ch; margin-bottom: 12px; }
.hero-cine__lead { font-size: clamp(14px,1.18vw,18px); color:#b1c2d5; line-height:1.6; max-width:40ch; margin-bottom:24px; }
.hero-scroll .m-kicker {font-size:10px;letter-spacing:.19em;color:#a5dfed;}
.hero-ask {display:flex;align-items:center;flex-wrap:wrap;gap:10px;max-width:420px;background:transparent;border:0;}
.hero-ask__input {width:100%;min-width:0;color:#ddd;background:transparent;border:0;border-bottom:1px solid #27415b;padding:12px 0;font:inherit;font-size:12px;border-radius:0;}
.hero-ask__input::placeholder{color:#829bb4;}
.hero-ask__btn,.hero-scroll .hero-pill{border:0;border-radius:999px;background:#2c76c6;color:white;font:inherit;font-size:12px;font-weight:600;padding:14px 22px;cursor:pointer;width:auto;}
.hero-ask__btn:hover,.hero-scroll .hero-pill:hover{background:#4191de;}
.hero-cine__links{margin-top:16px;font-size:12px;}
.hero-cine__links a{color:#9fb5cb;text-decoration:underline;text-underline-offset:4px;}
.hero-scroll__idx {right:2.4%;top:50%;}
.hero-scroll__fill{background:#2c76c6;}
.hero-scene-nav {position:absolute;z-index:3;left:4.5%;bottom:26px;display:flex;gap:22px;}
.hero-scene-nav button{display:flex;gap:8px;align-items:center;background:transparent;border:0;border-top:1px solid #27415b;color:#8098b1;padding:12px 0;font-size:11px;cursor:pointer;transition:color .25s,border-color .25s;}
.hero-scene-nav button[aria-current="step"]{color:#fff;border-color:#2c76c6;}
.hero-scene-nav button span{font-size:10px;}
.hero-scroll-hint{position:absolute;bottom:32px;right:4.5%;font-size:9px;letter-spacing:.18em;color:#829bb4;}
.hero-scroll-hint span{display:inline-block;margin-left:14px;font-size:18px;}
.constellation-fallback {display:none;position:absolute;object-fit:contain;right:4%;top:25%;width:48%;height:65%;}
.has-particle-fallback .constellation-fallback{display:block;}
.has-particle-fallback{height:100svh;}
.has-particle-fallback .hero-scene-nav,.has-particle-fallback .hero-scroll__idx,.has-particle-fallback .hero-scroll-hint{display:none;}
.hero-scene-nav button:focus-visible,.hero-ask__btn:focus-visible{outline:2px solid #a5dfed;outline-offset:6px;}
@media(min-width:760px) and (max-height:760px){
 .hero-scroll__page:not(.hero-scroll__page--wide){margin-top:-190px;}
 .hero-cine__title{font-size:clamp(38px,4.3vw,66px);}
 .hero-cine__lead{font-size:14px;margin-bottom:12px;}
 .hero-scroll__page--wide{top:14%;}
}
@media(max-width:759px){
 .hero-scroll{height:400svh;}
 .hero-scroll__page,.hero-scroll__page--flip,.hero-scroll__page--wide{top:100px;left:7%;right:auto;width:86%;padding:0;margin-top:0;max-width:none;}
 .hero-cine__title,.hero-cine__title--sub{font-size:clamp(30px,7.8vw,48px);line-height:1.05;max-width:20ch;margin:12px 0 14px;}
 .hero-cine__title br{display:none;}
 .hero-cine__lead{font-size:12px;line-height:1.5;max-width:44ch;margin-bottom:12px;}
 .hero-scroll .m-kicker{font-size:8px;}
 .hero-ask{flex-direction:row;gap:8px;}
 .hero-ask__input{display:none;}
 .hero-ask__btn,.hero-scroll .hero-pill{padding:11px 17px;font-size:10px;}
 .hero-cine__links{display:none;}
 .hero-scroll__idx{display:none;}
 .hero-scene-nav{left:7%;right:7%;bottom:18px;justify-content:space-between;gap:12px;}
 .hero-scene-nav button{font-size:10px;gap:6px;}
 .hero-scene-nav button span{font-size:8px;}
 .hero-scroll-hint{display:none;}
 .hero-scroll__page--wide .hero-cine__title{font-size:34px;}
 .constellation-fallback{width:86%;right:7%;top:49%;height:38%;}
}
@media(prefers-reduced-motion:reduce){.hero-scroll *{transition:none!important;}}
@media(min-width:760px){
 .hero-scroll__page:not(.hero-scroll__page--wide){top:18%;margin-top:0;}
 .hero-scroll__page:not(.hero-scroll__page--flip):not(.hero-scroll__page--wide){width:43%;}
 .hero-cine__title{max-width:none;font-size:clamp(38px,4.5vw,76px);}
}
.home .hero-ask input.hero-ask__input{background:transparent;color:#ddd;border:0;border-bottom:1px solid #27415b;box-shadow:none;border-radius:0;padding:10px 0;}
.home .hero-ask__input:focus{outline:0;border-bottom-color:#72bcf0;}
.home .utilbar{display:none;}
.home .site-header--overlay{background:linear-gradient(#061427e6,#06142700);}
.home .site-header__cta{background:#2c76c6;border-color:#2c76c6;}
@media(max-width:759px){
 .home.constellation-in-view .floaters{visibility:hidden;pointer-events:none;}
 .hero-scene-nav button{min-height:44px;}
}
/* Sparse particle choreography: readable interludes in the dispersed field. */
.hero-scroll{height:600svh;}
.hero-scroll__stage::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.93' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23grain)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");}
.particle-story{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:46px;padding:110px 8% 100px;text-align:center;pointer-events:none;opacity:0;visibility:hidden;}
.particle-story p{margin:0;color:#f1f7fc;font-size:clamp(23px,2.5vw,38px);font-weight:400;line-height:1.32;letter-spacing:-.025em;text-wrap:balance;text-shadow:0 2px 22px #000;}
@media(max-width:759px){
 .hero-scroll{height:540svh;}
 .particle-story{gap:32px;padding:90px 8%;}
 .particle-story p{font-size:24px;line-height:1.4;}
 .particle-story br{display:none;}
}

/* Catalogue blues: keep the entire home palette within the brochure family. */
.home{--r-canvas:#061427;--r-canvas-2:#0b2036;--r-accent:#2c76c6;--r-gold:#a5dfed;--r-mute:#a6bbcf;}
.hero-scroll__stage{background:radial-gradient(ellipse at 65% 45%,#102649 0%,#07172c 50%,#061427 82%);}
.hero-scroll .m-kicker{color:#a5dfed;}
.hero-scroll__stage::after{opacity:.012;}

/* Scroll is the clock: text flows continuously, followed by a full-particle exit. */
.hero-scroll{height:660svh;}
.hero-scroll__page,.particle-story,.particle-story p{will-change:transform,opacity;}
.hero-scroll__fill{height:100%;transform:scaleY(0);transform-origin:top;will-change:transform;}
@media(max-width:759px){.hero-scroll{height:600svh;}}

/* Next section rises into the dispersing stage, avoiding an empty pinned screen. */
.home .hero-scroll + #products{position:relative;z-index:2;margin-top:-120svh;padding-top:10svh;background:linear-gradient(180deg,transparent 0%,#061427 200px);}

/* The products heading enters as a unit; no stretched characters over the lead. */
.home #products .m-sec-head h2{line-height:1.08;margin-bottom:0;}
.home #products .m-sec-head .lead{margin-top:24px;}

/* Concise B2B homepage: two-case layout and a proof block built around buyer questions. */
.home .mgrid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3vw,40px);}
.home-case-grid .mcard--wide .ph{aspect-ratio:16/9;}
.home-proof{
 position:relative;
 border-block:1px solid var(--r-line-soft);
 background:
  radial-gradient(ellipse at 88% 8%,rgba(44,118,198,.18),transparent 42%),
  linear-gradient(180deg,#07172c 0%,#0a1d32 54%,#061427 100%);
 overflow:hidden;
}
.home-proof::before{
 content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;
 background-image:linear-gradient(rgba(165,223,237,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(165,223,237,.08) 1px,transparent 1px);
 background-size:72px 72px;
 mask-image:linear-gradient(90deg,transparent,#000 24%,#000 76%,transparent);
}
.home-proof .container{position:relative;z-index:1;}
/* Measurement readouts: one tick-marked rule, bottom-anchored figures — no cell boxes. */
.proof-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(42px,5.5vw,82px);}
.proof-fact{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;min-height:clamp(190px,16vw,264px);padding:30px clamp(18px,2.5vw,42px) clamp(26px,3vw,38px);border-top:1px solid rgba(165,223,237,.28);}
/* tick crosses the rule (4px above, 12px below) — a machinist's mark; overflow must
   stay visible or the pixel above the border gets clipped and the tick reads detached. */
.proof-fact::before{content:"";position:absolute;top:-4px;left:0;width:2px;height:16px;background:var(--r-gold);transition:height .6s cubic-bezier(.16,1,.3,1) .35s,background-color .3s var(--ease-out);}
.proof-fact[style*="opacity: 1"]::before{height:16px;}
.proof-fact:hover::before{height:30px;background:var(--r-accent);}
.proof-fact__idx{margin-bottom:auto;font-family:BarlowSC,var(--font-mono);font-size:10.5px;letter-spacing:.24em;color:var(--r-dim);transition:color .3s var(--ease-out);}
.proof-fact:hover .proof-fact__idx{color:var(--r-accent);}
.proof-fact strong{display:block;color:var(--r-text);font-size:clamp(52px,5.4vw,94px);font-weight:600;line-height:.88;letter-spacing:-.045em;white-space:nowrap;text-shadow:0 0 36px rgba(44,118,198,.12);font-variant-numeric:tabular-nums;}
.proof-fact strong>span{color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;}
.proof-fact>span{max-width:25ch;min-height:3.1em;color:#a9bed2;font-size:clamp(13px,1vw,16px);line-height:1.55;}
.proof-decisions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:clamp(46px,6vw,84px);border-top:1px solid var(--r-line);}
.proof-decision{padding:clamp(26px,3vw,42px) clamp(18px,3vw,42px) clamp(34px,4vw,54px) 0;border-bottom:1px solid var(--r-line);}
.proof-decision:nth-child(odd){border-right:1px solid var(--r-line);}
.proof-decision:nth-child(even){padding-left:clamp(18px,3vw,42px);}
.proof-decision p{margin:0 0 18px;color:var(--r-gold);font-family:var(--font-mono);font-size:11px;line-height:1.4;letter-spacing:.15em;text-transform:uppercase;}
.proof-decision h3{margin:0 0 13px;color:var(--r-text);font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.18;letter-spacing:-.02em;}
.proof-decision span{display:block;max-width:53ch;color:var(--r-mute);font-size:14px;line-height:1.7;}
.proof-industries{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:34px;}
.proof-industries>span{margin-right:8px;color:var(--r-dim);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;}
.proof-industries a{display:inline-flex;align-items:center;min-height:38px;padding:8px 15px;border:1px solid var(--r-line);border-radius:999px;color:var(--r-mute);font-size:12px;transition:border-color .25s,color .25s,background-color .25s;}
.proof-industries a:hover{border-color:var(--r-accent);background:rgba(44,118,198,.12);color:var(--r-text);}
@media(max-width:900px){
 .proof-facts{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:759px){
 .home .mgrid2{grid-template-columns:1fr;}
 .home-case-grid .mcard--wide .ph{aspect-ratio:4/3;}
 .proof-fact{min-height:168px;padding:24px 18px 22px;gap:12px;}
 .proof-fact strong{font-size:clamp(42px,12vw,58px);}
 .proof-fact>span{font-size:12px;min-height:4.65em;}
 .proof-decisions{grid-template-columns:1fr;}
 .proof-decision,.proof-decision:nth-child(even){padding:26px 0 32px;border-right:0;}
 .proof-industries{align-items:flex-start;}
 .proof-industries>span{flex:0 0 100%;margin:0 0 4px;}
}

/* ISO 9001 — single-line figure, same anatomy as the numeric cells (unified 2026-09-24):
   "ISO" gold prefix + "9001" near-numeral size on one baseline; ice rule beneath.
   Never a count-up (handoff §2.5). Rides the same inline-opacity reveal as the tick. */
.proof-fact--iso strong{display:flex;align-items:baseline;gap:.14em;white-space:nowrap;position:relative;}
.proof-iso__std{color:var(--r-gold);font-size:clamp(22px,2.1vw,38px);font-weight:600;letter-spacing:.04em;}
.proof-iso__num{font-size:.82em;}
.proof-iso__rule{position:absolute;left:0;bottom:-13px;width:0;height:2px;background:var(--r-accent);}
.proof-fact--iso .proof-iso__std,.proof-fact--iso .proof-iso__num{opacity:0;transform:translateY(14px);}
.proof-fact--iso[style*="opacity: 1"] .proof-iso__std{animation:proof-iso-rise 650ms cubic-bezier(.16,1,.3,1) both;}
.proof-fact--iso[style*="opacity: 1"] .proof-iso__num{animation:proof-iso-rise 650ms 80ms cubic-bezier(.16,1,.3,1) both;}
.proof-fact--iso[style*="opacity: 1"] .proof-iso__rule{animation:proof-iso-rule 900ms 250ms cubic-bezier(.16,1,.3,1) both;}
@keyframes proof-iso-rise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
@keyframes proof-iso-rule{from{width:0;}to{width:72px;}}
@media(max-width:759px){
 .proof-iso__std{font-size:14px;}
 .proof-iso__num{font-size:.9em;}
 .proof-iso__rule{bottom:-11px;}
}
@media(prefers-reduced-motion:reduce){
 .proof-fact--iso .proof-iso__std,.proof-fact--iso .proof-iso__num{opacity:1;transform:none;animation:none;}
 .proof-iso__rule{width:72px;animation:none;}
}

/* zh static hero (EN keeps the frozen particle scene; brief §5.2). */
.hero-scroll--zh{height:auto;background:#061427;}
.hero-scroll--zh.hero-scroll{height:auto;}
.hero-scroll__stage--zh{height:auto;min-height:min(88vh,820px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(110px,15vh,170px) 4.5% clamp(56px,8vh,90px);background:radial-gradient(ellipse at 65% 45%,#102649 0%,#07172c 50%,#061427 82%);}
.hero-scroll__page--zh{position:relative;top:auto;left:auto;width:auto;padding:0;margin-top:0;max-width:none;}
.hero-zh-visual{width:100%;max-width:620px;justify-self:end;filter:drop-shadow(0 24px 60px rgba(0,0,0,.45));}
.hero-cine__cta{margin-top:6px;}
@media(max-width:759px){
 .hero-scroll__stage--zh{grid-template-columns:1fr;min-height:0;padding:100px 7% 48px;gap:22px;}
 .hero-zh-visual{order:-1;max-width:88%;margin-inline:auto;justify-self:center;}
 .hero-scroll__page--zh{width:100%;}
}
