/* Next Factory V5 / Build 4. Page-scoped additions; Build 3 common styles untouched. */
.nf4-process-chain{--nf4-muted:#b7bec7;--nf4-line:rgba(255,255,255,.15)}
.nf4-process-chain *, .nf4-production-layout *, .nf4-kern-proof *{min-width:0}
.nf4-process-chain a:focus-visible,.nf4-process-chain button:focus-visible,.nf4-pause:focus-visible{outline:3px solid #ff747c;outline-offset:5px}
.nf4-origin{position:relative;border-left:3px solid #e30613;padding:27px 30px;margin:32px 0 18px;border-radius:0 18px 18px 0;background:linear-gradient(100deg,#191d24,#101319)}
.nf4-origin>span,.nf4-route-label,.nf4-theme-heading>span{font-size:10px;line-height:1.6;letter-spacing:.13em;font-weight:850;color:#ff858d}
.nf4-origin h3{font-size:clamp(27px,3vw,40px);line-height:1.06;letter-spacing:-.035em;margin:14px 0 9px;color:#fff}
.nf4-origin p{margin:0;color:var(--nf4-muted);font-size:15px;line-height:1.7}
.nf4-origin a{display:inline-block;margin-top:17px;font-size:12px;font-weight:750;color:#fff;text-decoration:underline;text-underline-offset:5px}
.nf4-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:38px}
.nf4-routes article{padding:30px;background:#11161c;border:1px solid var(--nf4-line);border-radius:20px;display:flex;flex-direction:column;align-items:flex-start}
.nf4-routes article:nth-child(2){background:linear-gradient(145deg,#18151c,#11161c)}
.nf4-routes h3{font-size:clamp(26px,2.5vw,36px);line-height:1.08;letter-spacing:-.035em;color:#fff;margin:22px 0 12px}
.nf4-routes p{color:var(--nf4-muted);font-size:14px;line-height:1.7;margin:0 0 20px}
.nf4-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;margin-bottom:22px}
.nf4-chips span{font-size:11px;line-height:1.4;padding:8px 10px;border-radius:7px;border:1px solid var(--nf4-line);color:#e0e4e9;background:rgba(255,255,255,.035)}
.nf4-routes .nf4-route-end{font-size:12px;margin:0;padding-top:17px;border-top:1px solid var(--nf4-line);width:100%;color:#e0e4e9}
.nf4-theme-browser{border:1px solid var(--nf4-line);border-radius:23px;overflow:hidden;background:#0e1218}
.nf4-theme-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:23px 28px}
.nf4-theme-heading p{color:#d1d6de;font-size:13px;line-height:1.5;margin:0}
.nf4-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;background:rgba(255,255,255,.12)}
.nf4-tabs button{font:inherit;font-size:12px;line-height:1.5;font-weight:750;border:0;padding:17px 10px;background:#181d25;color:#c4cbd4;cursor:pointer;position:relative;transition:background .2s,color .2s}
.nf4-tabs button:hover{background:#262c36;color:white}
.nf4-tabs button[aria-selected="true"]{background:#f4f5f7;color:#131921;box-shadow:inset 0 -3px #e30613}
.nf4-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:center;padding:30px;min-height:350px}
.nf4-panel+.nf4-panel{border-top:1px solid var(--nf4-line)}
.nf4-panel-copy h3{font-size:clamp(24px,2.3vw,34px);line-height:1.12;letter-spacing:-.025em;color:white;margin:18px 0 16px}
.nf4-panel-copy p{font-size:14px;line-height:1.75;color:var(--nf4-muted);margin:0}
.nf4-panel-copy .nf4-small-note{font-size:11px;line-height:1.7;margin-top:16px;border-left:2px solid #626a76;padding-left:12px;color:#d2d7de}
.nf4-themed-media{margin:0;width:100%}
.nf4-player{position:relative;overflow:hidden;border-radius:14px;background:#0b0d11}
.nf4-themed-media video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#11161d}
.nf4-themed-media figcaption{font-size:11px;line-height:1.6;color:#b2bac5;padding:12px 0 0}
.nf4-pause{border:1px solid rgba(255,255,255,.5);background:rgba(8,11,15,.94);color:#fff;border-radius:999px;padding:9px 13px;min-height:38px;font:inherit;font-size:11px;font-weight:700;line-height:1.4;cursor:pointer;z-index:4}
.nf4-pause:hover{background:#303946}
.nf4-pause:disabled{cursor:default;color:#b4beca}
.nf4-player>.nf4-pause{position:absolute;right:10px;bottom:10px;max-width:calc(100% - 20px)}
.nf4-media-pending{padding:30px;border:1px dashed #626a76;border-radius:16px;min-height:245px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(125deg,#1c222c,#121720)}
.nf4-media-pending>span{font-size:10px;letter-spacing:.11em;color:#ffd39c;line-height:1.5;font-weight:800}
.nf4-media-pending strong{color:#fff;display:block;font-size:22px;line-height:1.25;margin:18px 0 12px}
.nf4-media-pending p{font-size:13px;line-height:1.65;color:#c2c9d2;margin:0 0 18px}
.nf4-media-pending .textLink{color:#fff;font-size:12px;line-height:1.6;align-self:flex-start;border-bottom:1px solid #8993a0;padding-bottom:4px}
.nf4-version-note{font-size:10px;line-height:1.7;color:#aab3bf;margin:0;padding:18px 28px;border-top:1px solid var(--nf4-line)}
.nf4-tabs[hidden],.nf4-panel[hidden],.nf4-pause[hidden]{display:none!important}

/* Only the dark métier panel overrides the light section's heading inheritance. */
.breadthSection .nf5-focus .nf5-focus-head h3{color:#f7f8fa}
.breadthSection .nf5-focus .nf5-focus-head p{color:#bcc4ce}
.nf4-event-teaser.nf5-polaroids{grid-template-columns:1.15fr 1fr;grid-auto-rows:300px;gap:22px;padding:18px;margin:20px 0 0}
.nf4-event-teaser .nf5-polaroid:first-child img{object-position:center 48%}

/* Background loop: preserve all existing foreground text/cards/actions. */
.nf4-centre-live{position:relative;isolation:isolate;overflow:hidden;background:#080b10}
.nf4-centre-backdrop{position:absolute!important;inset:0;z-index:-2;pointer-events:none}
.nf4-centre-backdrop video{width:100%;height:100%;object-fit:cover;opacity:.72}
.nf4-centre-live::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,10,15,.95),rgba(7,10,15,.7) 60%,rgba(7,10,15,.62)),linear-gradient(0deg,rgba(7,10,15,.74),transparent 55%);pointer-events:none}
.nf4-centre-live .applicationGrid article{background:rgba(12,17,24,.92);border-color:rgba(255,255,255,.22)}
.nf4-centre-live .sectionActions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.nf4-centre-live .sectionActions>.nf4-pause{position:static;min-height:44px}

/* Carbide detail stays close to its native resolution instead of being enlarged. */
.nf4-kern-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.46fr);gap:16px;align-items:start}
.nf4-kern-proof figure{margin:0}
.nf4-machine-context{border:1px solid rgba(255,255,255,.15);border-radius:18px;overflow:hidden;background:#141920}
.nf4-machine-context img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}
.nf4-machine-context figcaption{padding:18px 20px;display:flex;flex-direction:column;gap:7px;font-size:12px;line-height:1.6}
.nf4-machine-context figcaption strong{font-weight:800;color:#fff}
.nf4-machine-context figcaption span{color:#b7bec9}
.nf4-carbure-detail{max-width:270px;justify-self:end}
.nf4-carbure-detail video{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain}
.nf4-carbure-detail figcaption{font-size:10px;line-height:1.65;color:#b2bbc7;padding:12px 2px 0}
.nf4-carbure-detail .nf4-pause{font-size:10px;padding:7px 10px;right:7px;bottom:7px}
.nf4-machine-mosaic .nf4-machine-render{background:#fff}
.nf4-machine-mosaic .nf4-machine-render img{object-fit:contain;padding:18px 16px 60px;background:#fff}
.nf4-machine-mosaic .nf5-kern-card figcaption{right:12px;width:fit-content;max-width:calc(100% - 24px);border-radius:10px;line-height:1.5;background:rgba(7,9,12,.9)}
.nf4-machine-mosaic .nf4-result-small img{object-position:center}

/* Original five-axis and finished-part files, shown at one shared compact height. */
.nf4-production-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:32px}
.nf4-video-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.nf4-video-duo figure{margin:0;max-width:240px;justify-self:center;width:100%}
.nf4-video-duo .nf4-player{width:100%;aspect-ratio:960/1706;max-height:420px;border:1px solid rgba(255,255,255,.15);margin:auto}
.nf4-video-duo video{display:block;width:100%;height:100%;object-fit:contain}
.nf4-video-duo figcaption{font-size:11px;line-height:1.6;color:#b4bdc9;padding:12px 0 0}
.nf4-production-context{display:grid;gap:22px}
.nf4-production-copy{padding:0 2px}
.nf4-production-copy>span{color:#ff858d;font-size:10px;letter-spacing:.13em;font-weight:850}
.nf4-production-copy h3{font-size:clamp(25px,2.5vw,35px);line-height:1.09;letter-spacing:-.03em;margin:15px 0 12px;color:#fff}
.nf4-production-copy p{color:#b4bdc9;line-height:1.7;font-size:14px;margin:0}
.nf4-production-context figure{margin:0;position:relative;overflow:hidden;border-radius:16px}
.nf4-production-context img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center;display:block}
.nf4-production-context figcaption{position:absolute;bottom:12px;left:12px;padding:7px 10px;border-radius:999px;background:rgba(8,11,15,.9);font-size:10px;color:#fff}

@media(max-width:1100px){
 .nf4-panel{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;padding:26px}
 .nf4-kern-proof{grid-template-columns:minmax(0,1fr) minmax(140px,.44fr)}
 .nf4-production-layout{gap:22px}
 .nf4-production-copy h3{font-size:27px}
 .nf4-video-duo .nf4-player{max-height:370px}
}
@media(max-width:900px){
 .nf4-production-layout{grid-template-columns:1fr}
 .nf4-video-duo{max-width:550px;margin:0 auto;width:100%;gap:20px}
 .nf4-video-duo figure{max-width:208px}
 .nf4-production-context{grid-template-columns:1fr 1fr;align-items:center}
 .nf4-production-context img{aspect-ratio:4/3}
 .nf4-production-copy h3{font-size:25px}
}
@media(max-width:720px){
 .nf4-origin{padding:24px 22px;margin-top:24px}
 .nf4-routes{grid-template-columns:1fr;gap:14px;margin-bottom:26px}
 .nf4-routes article{padding:24px}
 .nf4-theme-heading{display:block;padding:22px}
 .nf4-theme-heading p{margin-top:10px}
 .nf4-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .nf4-tabs button{font-size:11px;padding:14px 8px;min-height:46px}
 .nf4-panel{grid-template-columns:1fr;padding:24px 20px;gap:22px;min-height:0}
 .nf4-panel-copy h3{font-size:28px}
 .nf4-version-note{padding:18px 20px}
 .nf4-media-pending{padding:23px;min-height:230px}
 .nf4-event-teaser.nf5-polaroids{grid-template-columns:1fr;grid-auto-rows:250px;gap:18px;padding:8px}
 .nf4-centre-backdrop video{object-position:57% center}
 .nf4-kern-proof{grid-template-columns:1fr;gap:22px}
 .nf4-machine-context img{aspect-ratio:4/3}
 .nf4-carbure-detail{max-width:250px;width:100%;justify-self:center}
 .nf4-machine-mosaic .nf4-machine-render{height:350px}
 .nf4-machine-mosaic .nf5-kern-card:not(.nf4-machine-render){height:240px}
 .nf4-video-duo{grid-template-columns:1fr;gap:24px}
 .nf4-video-duo figure{max-width:225px}
 .nf4-video-duo .nf4-player{max-height:400px}
 .nf4-production-context{grid-template-columns:1fr;gap:20px}
 .nf4-production-copy h3{font-size:29px}
 .nf4-production-context img{aspect-ratio:4/3}
}
@media(prefers-reduced-motion:reduce){
 .nf4-tabs button,.nf4-pause{transition:none}
 .nf4-event-teaser .nf5-polaroid:hover,.breadthSection .nf5-focus .nf5-polaroid:hover{transform:rotate(var(--r,0deg))}
}

.lightSection .nf4-carbure-detail figcaption{color:#505b6a}
/* Final framing pass: balanced proof pair, without enlarging the carbide source. */
.nf4-kern-proof{grid-template-columns:minmax(0,1fr) clamp(210px,24vw,300px);gap:24px}
.nf4-machine-context img{height:370px;aspect-ratio:auto;object-fit:cover;object-position:50% 51%}
.nf4-carbure-detail{max-width:300px;justify-self:center}
.nf4-centre-live .sectionHead p{color:#d5dbe3}
@media(max-width:1050px){.nf4-machine-context img{height:330px}}
@media(max-width:720px){.nf4-kern-proof{grid-template-columns:1fr}.nf4-machine-context img{height:250px}.nf4-carbure-detail{max-width:250px}}
/* Existing KERN flow had six columns on a narrow viewport; only its scoped layout changes. */
@media(max-width:720px){.kernWorkSection .kernFlow{grid-template-columns:repeat(3,minmax(0,1fr))}.kernWorkSection .kernFlow b{min-width:0;white-space:normal;padding:17px 10px;font-size:11px}}
