@import url("_cg.css");
/* /factory/ (design-v2-066), private-label style. Prefix fac-. Locked tokens only, no glows or gradients. */

/* 1 capacity */
.fac-cap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);align-items:center}
.fac-cap__ph{position:relative;margin:0;border-radius:24px;overflow:hidden;aspect-ratio:557/746}
.fac-cap__ph img{width:100%;height:100%;object-fit:cover;display:block}
.fac-cap__ph figcaption{position:absolute;left:12px;bottom:12px;padding:7px 14px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:600}
.fac-nums{list-style:none;margin:clamp(24px,3vw,36px) 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fac-nums li{padding:20px 22px;border-radius:18px;background:var(--ink-2);border-top:3px solid var(--tang)}
.fac-nums b{display:block;font:800 clamp(48px,5.4vw,76px)/.95 var(--display);color:#fff;font-variant-numeric:tabular-nums}
.fac-nums span{display:block;margin-top:8px;font-size:16px;color:var(--on-ink-2)}

/* 2 stations */
.fac-flow__grid{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.6fr);gap:clamp(20px,3vw,40px);align-items:start}
.fac-sts{list-style:none;margin:0;padding:0;border-top:1px solid var(--sand)}
.fac-st{display:flex;align-items:center;gap:14px;width:100%;padding:14px 8px;border:0;border-bottom:1px solid var(--sand);background:none;text-align:left;cursor:pointer;font:inherit;border-radius:10px;transition:background .2s}
.fac-st:hover{background:#fff}
.fac-st:focus-visible{outline:3px solid var(--tang);outline-offset:2px}
.fac-st__n{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font:800 16px/1 var(--display)}
.fac-st__name{font:800 24px/1 var(--display);text-transform:uppercase;color:var(--ink)}
.fac-st.is-on{background:#fff}
.fac-st.is-on .fac-st__n{background:var(--tang)}
.fac-phs{list-style:none;margin:0;padding:0;position:relative;aspect-ratio:16/10}
.fac-ph{position:absolute;inset:0;opacity:0;transition:opacity .45s ease;pointer-events:none}
.fac-ph.is-on{opacity:1;pointer-events:auto}
.fac-ph img{display:block;width:100%;height:calc(100% - 52px);object-fit:cover;border-radius:22px}
.fac-ph__cap{margin:14px 0 0;font-size:18px;color:var(--text-2)}
.fac-ph__cap b{margin-right:10px;font:800 22px/1 var(--display);text-transform:uppercase;color:var(--ink)}
.fac-prog{display:none;align-items:center;gap:14px;margin-top:20px}
.fac-prog__n{font:800 22px/1 var(--display);color:var(--ink);min-width:66px}
.fac-prog__n b{color:var(--tang-d)}
.fac-prog__bar{flex:1;height:4px;border-radius:4px;background:var(--sand);overflow:hidden}
.fac-prog__bar i{display:block;height:100%;width:100%;background:var(--tang);transform-origin:0 50%;transform:scaleX(0)}
/* pinned (desktop, JS adds .is-pin): a stretch of scroll per station */
.fac-flow.is-pin{height:calc(100vh + 4 * 70vh);padding:0}
.fac-flow.is-pin .fac-flow__in{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:calc(var(--hdr) + 8px);padding-bottom:24px;box-sizing:border-box}
.fac-flow.is-pin .cg-head{margin-bottom:clamp(16px,2vw,26px)}
.fac-flow.is-pin .fac-phs{aspect-ratio:auto;height:clamp(300px,56vh,560px)}
.fac-flow.is-pin .fac-prog{display:flex}

/* 3 people */
.fac-team{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fac-pp{padding:26px 22px;border-radius:20px;background:var(--ink-2)}
.fac-pp__mono{display:grid;place-items:center;width:84px;height:84px;margin-bottom:18px;border-radius:50%;background:var(--tang);color:#fff;font:800 34px/1 var(--display)}
.fac-pp h3{margin:0 0 4px;font:800 28px/1 var(--display);text-transform:uppercase;color:#fff}
.fac-pp p{margin:0;font-size:16px;color:var(--on-ink-2)}

/* 4 check us */
.fac-ways{list-style:none;margin:0 0 30px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.fac-way img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:18px;margin-bottom:14px}
.fac-way h3{margin:0 0 4px;font:800 26px/1 var(--display);text-transform:uppercase;color:var(--ink)}
.fac-way p{margin:0;font-size:16px;color:var(--text-2)}
.fac-certs{padding-top:24px;border-top:1px solid var(--sand);color:var(--ink)}

@media (max-width:960px){
  .fac-cap{grid-template-columns:1fr}
  .fac-cap__ph{aspect-ratio:4/3}
  .fac-team{grid-template-columns:1fr 1fr}
  .fac-ways{grid-template-columns:1fr}
}
/* phones / no pin: stacked station cards */
@media (max-width:760px){
  .fac-flow__grid{grid-template-columns:1fr}
  .fac-flow__nav{display:none}
  .fac-phs{aspect-ratio:auto;display:grid;gap:16px}
  .fac-ph{position:static;opacity:1;pointer-events:auto;background:#fff;border-radius:20px;overflow:hidden}
  .fac-ph img{height:auto;aspect-ratio:16/10;border-radius:0}
  .fac-ph__cap{margin:0;padding:14px 16px 18px;font-size:16px}
  .fac-ph__cap b{display:block;margin:0 0 4px;font-size:22px}
}
@media (max-width:640px){
  .fac-nums{gap:10px}
  .fac-nums li{padding:16px}
  .fac-nums b{font-size:42px}
  .fac-nums span{font-size:14.5px}
  .fac-pp{padding:18px 14px}
  .fac-pp__mono{width:60px;height:60px;font-size:24px;margin-bottom:12px}
  .fac-pp h3{font-size:21px}
  .fac-pp p{font-size:14.5px}
}
