/* Keep the page inside the viewport, including fractional desktop zoom.
   Clip does not introduce a nested scroll container or change vertical flow. */
html:has(> body.production-page) { overflow-x: clip; }
.production-page .home-header-stack { width: var(--layout-width, 100%); }
.production-page{--production-orange:#ff6a33;--production-muted:#929292;--production-ease:cubic-bezier(.22,1,.36,1)}
.production-main{padding-top:76px}.production-page h1,.production-page h2,.production-page h3{font-weight:400;letter-spacing:normal}.production-page h1,.production-page h2{font-size:clamp(34px,calc(var(--site-vw,1vw)*3.6),58px);line-height:1.08;margin:0}.production-page h1 span,.production-page h2 span,.production-page h3 span:not(.production-disclosure-label):not(.production-disclosure-icon):not(.production-index){color:var(--production-orange)}
.production-section{padding-block:80px}.production-section p{font-size:18px;line-height:1.5;margin:0;color:#b4b4b4}.production-section h2{margin-bottom:64px}.production-hero{height:calc(var(--site-vh,1svh)*70);min-height:360px;max-height:740px;background:#222;overflow:hidden}.production-hero>img,.production-hero>video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 45%}.production-intro{padding-block:48px}.production-intro>.container{display:grid;grid-template-columns:1.25fr 1fr;gap:15%;align-items:center}.production-intro h1{margin-bottom:36px;font-size:clamp(38px,calc(var(--site-vw,1vw)*4.1),66px)}.production-intro p{font-size:20px;color:#ddd}.production-intro .button-grey{min-width:270px;max-width:300px;display:flex;justify-content:space-between;gap:48px}.production-down{display:grid;place-items:center;margin:44px 0 0 auto;width:64px;height:64px;border-radius:50%;border:1px solid #555;color:#999;font-size:30px;transition:color .25s,border-color .25s,transform .25s}.production-down:hover{color:var(--production-orange);border-color:var(--production-orange);transform:translateY(3px)}
.production-material{background:#f4f4f4;color:#111}.production-material-top{display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center;margin-bottom:48px}.production-material-top h2{max-width:760px;margin-bottom:110px}.production-material-top p{max-width:720px;color:#888}.production-material-top>img{display:block;width:90%;max-height:430px;object-fit:contain;align-self:end}.production-cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.production-cert{background:#efefef;border:1px solid #e8e8e8;min-height:250px;padding:28px 44px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;transition:background-color .35s,color .35s,border-color .35s}.production-cert>strong{font-family:'Helvetica Neue',var(--first-font),sans-serif;font-size:94px;font-weight:200;line-height:1}.production-cert p{color:#999;max-width:560px;transition:color .35s}@media(hover:hover){.production-cert:hover{background:var(--production-orange);border-color:var(--production-orange);color:#fff}.production-cert:hover p{color:#fff}}
.production-accordion h3{margin:0}.production-disclosure{width:100%;background:none;color:inherit;border:0;border-bottom:1px solid #ffffff30;display:flex;align-items:center;gap:28px;text-align:left;padding:38px 0;font:inherit;font-size:34px;line-height:1.2;cursor:pointer;transition:color .25s}.production-disclosure-label{flex:1;min-width:0}.production-disclosure::before{content:'';width:0;height:1px;background:linear-gradient(90deg,#ff6a3300,#ff6a33);flex-shrink:0;transition:width .5s var(--production-ease)}.production-disclosure[aria-expanded=true]{color:var(--production-orange)}.production-disclosure[aria-expanded=true]::before{width:14%}.production-disclosure-icon{position:relative;display:block;flex:0 0 26px;height:26px;color:#999}.process .production-disclosure-icon::before{content:'';position:absolute;inset:4px;border-right:1.5px solid;border-bottom:1.5px solid}.process .production-disclosure-icon::after{content:'';position:absolute;left:1px;top:12px;width:28px;height:1.5px;background:currentColor;transform:rotate(45deg)}.process [aria-expanded=true] .production-disclosure-icon::before{inset:0;border:none;background:currentColor;height:1px;top:12px;transform:rotate(-45deg)}.process [aria-expanded=true] .production-disclosure-icon::after{left:0;width:26px;top:12px}.production-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s var(--production-ease),opacity .35s ease}.production-accordion[data-expanded=true]>.production-panel{grid-template-rows:1fr;opacity:1}.production-panel-inner{min-height:0;overflow:hidden}.production-panel-inner>p{max-width:970px;margin-block:30px}.process .production-panel-inner>p:first-child{margin-top:56px}.production-panel-inner h3{font-size:24px;margin-top:26px}.production-panel-inner .production-pair{margin-block:48px 24px}.production-pair{display:grid;grid-template-columns:1.4fr 1fr;gap:8px}.production-pair img{display:block;width:100%;height:100%;max-height:680px;aspect-ratio:1.2;object-fit:cover}.production-stage-stats{display:flex;align-items:stretch;margin:30px 0}.production-stage-stats>div{flex:1;min-width:0;background:#1b1b1b;padding:22px;display:flex;flex-direction:column;justify-content:center;gap:6px}.production-stage-stats>div:nth-child(2){background:#383838}.production-stage-stats>div:nth-child(3){background:#646464}.production-stage-stats strong{display:block;color:#fff;font-size:clamp(28px,calc(var(--site-vw,1vw)*3.3),52px);font-weight:400;line-height:1.1;overflow-wrap:anywhere}.production-stage-stats span{font-size:16px;line-height:1.4}.production-steps{list-style:none;display:flex;padding:0;margin:32px 0}.production-steps li{flex:1;display:flex;align-items:center;gap:18px;padding:22px 24px;border:1px solid #666;margin-left:-1px;font-size:17px;line-height:1.4}.production-steps li:first-child{margin-left:0}.production-steps span{color:var(--production-orange)}
.production-machine-copy{display:grid;grid-template-columns:1fr 1fr;gap:20%;align-items:end;margin-top:-25px;margin-bottom:26px}.production-machine-copy p:first-child{padding-top:110px}.production-slider-tools{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:24px}.production-slide-count{margin-right:auto;font-size:14px;color:#999;font-variant-numeric:tabular-nums}.production-slider-tools button{width:52px;height:52px;display:grid;place-items:center;background:var(--production-orange);border:1px solid var(--production-orange);color:#fff;font-size:24px;cursor:pointer;transition:background .25s,color .25s}.production-slider-tools button:disabled{background:transparent;border-color:#555;color:#666;cursor:default}.production-slider-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;border:0;touch-action:pan-x pan-y}.production-slider-track::-webkit-scrollbar{display:none}.production-slide{margin:0;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;aspect-ratio:2.07}.production-slide img{display:block;width:100%;height:100%;object-fit:cover}.production-slider-progress{height:2px;background:#555;margin-top:30px}.production-slider-progress span{display:block;width:20%;height:100%;background:var(--production-orange);transition:transform .35s ease}.production-machine-features{margin-top:80px}.production-machine-features h3{font-size:38px;margin:0 0 24px}.production-machine-features ul{list-style:none;padding:0;max-width:1080px}.production-machine-features li{position:relative;padding-left:28px;color:#bbb;font-size:18px;line-height:1.5;margin:8px 0}.production-machine-features li::before{content:'✓';position:absolute;left:0;color:var(--production-orange)}.production-note{border:1px solid #242424;text-align:center;padding:24px 10%;margin-top:48px!important;font-size:15px!important;color:#888!important}.production-joints-title{margin-top:120px!important}.production-joints{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #666;border-left:1px solid #666}.production-joint{min-width:0;border-right:1px solid #666;border-bottom:1px solid #666;padding:28px 30px 50px}.production-joint h3{font-size:25px;line-height:1.25;margin:24px 0 16px}.production-joint p{font-size:17px;color:#999;line-height:1.5}.production-joint-visual{position:relative;overflow:hidden;aspect-ratio:var(--crop-ratio);isolation:isolate}.production-joint-visual img{position:absolute;max-width:none;height:auto;display:block;pointer-events:none}
.production-specs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.production-specs article{grid-column:span 2;background:#111;border:1px solid #232323;min-height:265px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:50px}.production-specs article:nth-last-child(-n+2){grid-column:span 3}.production-specs strong{font-weight:400;font-size:clamp(34px,calc(var(--site-vw,1vw)*4.4),70px);line-height:1.1;white-space:nowrap}.production-section-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:start;margin-bottom:50px}.production-section-heading h2{margin:0}.production-section-heading p{font-size:16px;color:#999}.benefit .production-disclosure,.faq .production-disclosure{font-size:20px;gap:28px;padding:25px 0}.benefit .production-disclosure::before,.faq .production-disclosure::before{display:none}.production-index{min-width:44px;color:#999}.benefit .production-disclosure-icon,.faq .production-disclosure-icon{width:14px;height:14px;flex-basis:14px}.benefit .production-disclosure-icon::before,.faq .production-disclosure-icon::before{content:'';position:absolute;width:10px;height:1px;left:2px;top:6px;background:currentColor}.benefit .production-disclosure-icon::after,.faq .production-disclosure-icon::after{content:'';position:absolute;height:10px;width:1px;left:6px;top:2px;background:currentColor;transition:transform .3s,opacity .3s}.benefit [aria-expanded=true] .production-disclosure-icon::after,.faq [aria-expanded=true] .production-disclosure-icon::after{transform:rotate(90deg);opacity:0}.benefit[data-expanded=true] .production-disclosure,.faq[data-expanded=true] .production-disclosure{border-bottom-color:transparent;color:#fff}.benefit .production-panel-inner>p{margin:0 40px 30px 72px;max-width:650px;color:#999}.faq .production-panel-inner>p{margin:0 40px 30px 0;max-width:650px;font-size:16px;color:#999}.benefit[data-expanded=true],.faq[data-expanded=true]{border-bottom:1px solid #ffffff30}
.production-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.production-gallery a{overflow:hidden;grid-column:auto;aspect-ratio:3/2;display:block;cursor:url('../img/main/project-cursor.svg') 24 24,pointer}.production-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--production-ease)}.production-gallery a:hover img{transform:scale(1.025)}
.production-page .consultation-heading h2{font-size:clamp(32px,calc(var(--site-vw,1vw)*3.1),50px);line-height:1.1}.production-page .consultation-heading h2 span{color:var(--production-orange)}.production-page button:focus-visible,.production-page a:focus-visible{outline:2px solid var(--production-orange);outline-offset:5px}.production-page :is(#material,#process,#hundegger,#specifications,#advantages,#gallery,#faq,#consultation){scroll-margin-top:96px}
@media(max-width:1100px){.production-main{padding-top:64px}.production-section{padding-block:64px}.production-hero{height:55svh;min-height:300px}.production-intro>.container{gap:6%}.production-intro p{font-size:18px}.production-material-top h2{margin-bottom:55px}.production-cert{padding:24px 28px;min-height:230px}.production-machine-copy{gap:8%}.production-machine-copy p:first-child{padding-top:50px}.production-stage-stats strong{font-size:32px}.production-steps li{padding:16px 12px;font-size:15px;gap:10px}.production-joint{padding:20px 20px 34px}.production-joint h3{font-size:23px}.production-joint p{font-size:16px}}
@media(max-width:700px){.production-section{padding-block:48px}.production-page h1,.production-page h2{font-size:34px;line-height:1.1}.production-page h2 br{display:none}.production-section h2{margin-bottom:32px}.production-section p{font-size:16px;line-height:1.5}.production-hero{height:48svh;min-height:280px}.production-intro>.container{grid-template-columns:1fr;gap:28px}.production-intro h1{font-size:40px;margin-bottom:28px}.production-intro .button-grey{min-width:0;max-width:100%;width:100%;min-height:56px}.production-intro>.container>div:last-child{display:flex;align-items:center;gap:24px}.production-intro p{font-size:17px}.production-down{flex-shrink:0;margin:0;width:48px;height:48px;font-size:24px}.production-material-top{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.production-material-top h2{margin-bottom:28px}.production-material-top>img{width:78%;max-height:300px;margin:auto;order:1}.production-cert-grid{gap:8px}.production-cert{padding:18px 16px;min-height:205px;gap:28px}.production-cert>strong{font-size:58px}.production-cert p{font-size:14px;line-height:1.4}.production-disclosure{font-size:23px;gap:14px;padding:28px 0}.production-disclosure[aria-expanded=true]::before{width:8%}.production-disclosure-icon{flex-basis:20px;width:20px;height:20px;transform:scale(.8)}.production-panel-inner>p{margin-block:24px}.process .production-panel-inner>p:first-child{margin-top:28px}.production-stage-stats{flex-direction:column;margin:24px 0}.production-stage-stats>div{padding:20px;gap:6px}.production-stage-stats strong{font-size:34px}.production-stage-stats span{font-size:15px}.production-steps{display:grid;grid-template-columns:1fr 1fr;margin:24px 0}.production-steps li{margin:0 -1px -1px 0;padding:16px;font-size:14px}.production-pair{gap:6px;grid-template-columns:1fr 1fr}.production-pair img{aspect-ratio:.8;min-height:0;max-height:400px}.production-panel-inner .production-pair{margin-block:28px 12px}.production-machine-copy{grid-template-columns:1fr;gap:22px;margin:0 0 26px}.production-machine-copy p:first-child{padding:0}.production-slider-tools{margin-bottom:16px}.production-slider-tools button{width:44px;height:44px}.production-slide{aspect-ratio:1.3}.production-slider-progress{margin-top:20px}.production-machine-features{margin-top:40px}.production-machine-features h3{font-size:28px;line-height:1.15}.production-machine-features li{font-size:16px;margin:12px 0}.production-note{padding:20px;margin-top:28px!important;font-size:13px!important}.production-joints-title{margin-top:64px!important}.production-joints{grid-template-columns:1fr 1fr}.production-joint{padding:12px 14px 26px}.production-joint h3{font-size:20px;margin:12px 0}.production-joint p{font-size:14px}.production-specs{grid-template-columns:1fr 1fr;gap:8px}.production-specs article,.production-specs article:nth-last-child(-n+2){grid-column:auto;padding:20px 16px;min-height:180px;gap:38px}.production-specs article:last-child{grid-column:span 2}.production-specs strong{font-size:clamp(25px,6.5vw,40px);white-space:normal}.production-specs p{font-size:14px}.production-section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.production-section-heading h2{margin:0}.production-section-heading p{font-size:15px}.benefit .production-disclosure,.faq .production-disclosure{font-size:17px;gap:14px;padding-block:23px}.production-index{min-width:24px;font-size:15px}.benefit .production-panel-inner>p{margin:0 28px 24px 38px;font-size:15px}.faq .production-panel-inner>p{font-size:15px;margin:0 28px 24px 0}.production-gallery{grid-template-columns:1fr 1fr;gap:6px}.production-gallery a,.production-gallery a:nth-child(n){grid-column:auto;aspect-ratio:1}.production-page .consultation-heading h2{font-size:32px}.production-page :is(#material,#process,#hundegger,#specifications,#advantages,#gallery,#faq,#consultation){scroll-margin-top:80px}}
@media(prefers-reduced-motion:reduce){.production-page *, .production-page *::before,.production-page *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.production-page{padding-bottom:0;}
/* No empty indent while a production stage is collapsed. */
.process .production-disclosure{gap:0;}
.process .production-disclosure-label{padding-right:24px;}
.process .production-disclosure::before{margin-right:0;transition:width .5s var(--production-ease),margin-right .5s var(--production-ease);}
.process .production-disclosure[aria-expanded=true]::before{margin-right:28px;}
@media(max-width:700px){.process .production-disclosure[aria-expanded=true]::before{margin-right:14px;}}

.production-process .production-panel-inner > p { color: #fff; }

/* Match the reference's tighter heading-to-content spacing. */
#hundegger > .container > h2 { margin-bottom: 36px; }
.production-machine-copy { margin-top: 0; align-items: start; }
.production-machine-copy p:first-child { padding-top: 28px; }
#faq > .container > h2 { margin-bottom: 24px; }
.production-pair > a { display: block; min-width: 0; overflow: hidden; }
.production-slide > a { display: block; height: 100%; }
.production-page [data-production-photo] { cursor: url('../img/main/zoom-cursor.svg?v=2') 24 24, zoom-in; }
.production-page [data-production-photo] img { cursor: inherit; }
/* The viewer lives outside the proportionally zoomed body. */
html:has(body.production-page) > .fancybox__container { --fancybox-bg: rgba(10,10,10,.97); --fancybox-accent-color: #ff6a33; }
@media(max-width:700px) {
    #hundegger > .container > h2 { margin-bottom: 24px; }
    .production-machine-copy p:first-child { padding-top: 0; }
    #faq > .container > h2 { margin-bottom: 16px; }
}

.production-joint-visual { display: block; aspect-ratio: 1.5; }
.production-joint-visual img { position: static; width: 100%; height: 100%; max-width: 100%; object-fit: contain; pointer-events: auto; }

.production-intro p { color: #fff; }
.production-intro .button-grey { background: #242424; color: #fff; min-height: var(--cta-height); padding: 14px var(--cta-padding); font-size: 16px; gap: 20px; }
.production-intro .button-grey:hover { background: #333; }
@media(max-width:700px) { .production-intro .button-grey { min-height: var(--cta-height); } }

/* Photo navigation stays within reach, including on short desktop screens. */
.production-slider-viewport { position: relative; background: #101010; isolation: isolate; }
.production-slider-viewport :is(img,a) { -webkit-user-drag: none; user-select: none; }
.production-slide { aspect-ratio: auto; height: clamp(280px,calc(var(--site-vh,1svh)*52),540px); }
.production-slide img { object-fit: contain; }
.production-slider-tools { margin: 14px 0 0; justify-content: space-between; }
.production-slider-hint { color: #888; font-size: 13px; }
.production-slider-progress { margin-top: 14px; }
.production-slide-zone { position: absolute; top: 0; bottom: 0; width: 23%; z-index: 2; border: 0; padding: 0; color: #fff; background: transparent; cursor: pointer; }
.production-slide-zone--prev { left: 0; }
.production-slide-zone--next { right: 0; }
.production-slide-zone > span { position: absolute; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid #ffffff70; border-radius: 50%; background: #171717b8; font-size: 26px; line-height: 1; transition: background-color .2s,opacity .2s; pointer-events: none; }
.production-slide-zone--prev > span { left: 18px; }
.production-slide-zone--next > span { right: 18px; }
.production-slide-zone:disabled { opacity: .25; cursor: default; }
.production-slide-zone:not(:disabled):hover > span { background: #ff6a33; }
.production-slider-enlarge { position: absolute; right: 18px; top: 16px; z-index: 3; display: flex; align-items: center; gap: 9px; border: 1px solid #ffffff40; background: #171717b8; color: #fff; padding: 10px 14px; font-size: 13px; cursor: pointer; }
.production-slider-enlarge img { width: 17px; height: 17px; }
.production-slider-enlarge:hover { background: #333; }
@media(hover:hover) and (pointer:fine) {
    .production-slide-zone--prev:not(:disabled) { cursor: url('../img/icons/slider-cursor-left.svg') 24 24,w-resize; }
    .production-slide-zone--next:not(:disabled) { cursor: url('../img/icons/slider-cursor-right.svg') 24 24,e-resize; }
    .production-slide-zone:not(:disabled):hover > span { opacity: 0; }
    .production-slide-zone:focus-visible > span { opacity: 1; }
    .production-slider-viewport.is-dragging,.production-slider-viewport.is-dragging * { cursor: grabbing!important; }
}
@media(max-width:700px) {
    .production-slide { height: clamp(240px,calc(var(--site-vh,1svh)*44),380px); }
    .production-slide-zone { top: 50%; bottom: auto; transform: translateY(-50%); width: 44px; height: 44px; }
    .production-slide-zone--prev { left: 10px; }
    .production-slide-zone--next { right: 10px; }
    .production-slide-zone > span { inset: 0; width: 44px; height: 44px; transform: none; }
    .production-slider-enlarge { top: 10px; right: 10px; padding: 8px 10px; font-size: 12px; }
    .production-slider-hint { font-size: 12px; }
}

/* Larger photos, retaining navigation inside the image area. */
.production-slide { height: clamp(400px,calc(var(--site-vh,1svh)*70),720px); }
@media(max-width:700px) {
    .production-slide { height: clamp(300px,calc(var(--site-vh,1svh)*54),460px); }
}

/* Compact machining catalogue: four desktop columns, two on phones. */
.production-joints { grid-template-columns: repeat(4,minmax(0,1fr)); }
.production-joint { padding: 18px 18px 24px; }
.production-joint-visual { aspect-ratio: 1.65; }
.production-joint h3 { font-size: 20px; line-height: 1.25; margin: 16px 0 10px; }
.production-joint p { font-size: 15px; line-height: 1.45; }
.production-joints-title { margin-top: 80px!important; margin-bottom: 36px!important; }
@media(max-width:700px) {
 .production-joints { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .production-joint { padding: 10px 10px 16px; }
 .production-joint-visual { aspect-ratio: 1.6; }
 .production-joint h3 { font-size: 16px; line-height: 1.25; margin: 10px 0 8px; }
 .production-joint p { font-size: 13px; line-height: 1.4; }
 .production-joints-title { margin-top: 44px!important; margin-bottom: 24px!important; }
}

/* Accordion controls use one complete SVG instead of unrelated pseudo-elements. */
.production-page .production-disclosure-icon,
.production-page .process .production-disclosure-icon,
.production-page .benefit .production-disclosure-icon,
.production-page .faq .production-disclosure-icon {
 display: grid; place-items: center; flex: 0 0 24px; width: 24px; height: 24px;
 color: #b6b6b6; transform: none;
}
.production-page .production-disclosure-icon::before,
.production-page .production-disclosure-icon::after { content: none!important; }
.production-disclosure-icon svg { display: block; width: 24px; height: 24px; transition: transform .3s var(--production-ease),color .2s; }
.production-disclosure[aria-expanded=true] .production-disclosure-icon svg { transform: rotate(180deg); color: #ff6a33; }
.production-panel { transition: grid-template-rows .42s var(--production-ease), opacity .24s ease; }
.production-accordion { overflow-anchor: none; }
.production-page.is-disclosure-scrolling .home-header-stack { transition: none; }
/* The active heading should not slide sideways while its panel opens. */
.process .production-disclosure::before { display: none; }
.production-page :is(h1,h2,h3) { overflow-wrap: anywhere; }
.production-page .production-machine-copy > *, .production-page .production-section-heading > * { min-width: 0; }
@media(max-width:700px) {
 .production-intro { padding-top: 24px; padding-bottom: 36px; }
 .production-intro > .container { gap: 24px; }
 .production-intro > .container > div:last-child { display: block; }
 .production-intro .production-down { display: none; }
 .production-intro p { width: 100%; max-width: none; }
 .production-intro h1 { margin-bottom: 24px; font-size: clamp(34px,9vw,40px); }
 .production-page h2 { font-size: clamp(28px,7.5vw,34px); line-height: 1.13; }
 .production-page h2 br { display: none; }
 #hundegger > .container > h2 { hyphens: manual; }
 .production-material-top p { color: #555; }
 .production-cert p { color: #616161; }
 .production-disclosure { padding-block: 23px; font-size: 22px; line-height: 1.3; }
 .process .production-disclosure-label { padding-right: 16px; }
 .production-disclosure-icon svg { width: 22px; height: 22px; }
 .production-stage-stats strong { font-size: clamp(25px,7vw,34px); }
 .production-panel-inner > p { margin-block: 20px; }
}

/* Restore the original active-stage accent and horizontal title reveal. */
.process .production-disclosure::before {
 display: block;
 content: '';
 width: 0;
 height: 1px;
 flex-shrink: 0;
 margin-right: 0;
 background: linear-gradient(90deg,#ff6a3300,#ff6a33);
 transition: width .42s var(--production-ease),margin-right .42s var(--production-ease);
}
.process .production-disclosure[aria-expanded=true]::before { width: 14%; margin-right: 28px; }
@media(max-width:700px) {
 .process .production-disclosure[aria-expanded=true]::before { width: 8%; margin-right: 14px; }
}

@media(min-width:1101px) {
    /* Shrink the video frame in normal flow, so no empty strip remains below it. */
    .production-hero {
        height: calc(var(--site-vh,1svh)*70 - 75px);
        min-height: 285px;
        max-height: 665px;
        background: #0d0d0d;
    }
    .production-hero > :is(img,video) { height: 100%; object-fit: cover; }
    .production-intro { padding-top: 32px; }
}

/* Large stages fold at a readable pace; photographs remain visible during closing. */
.production-page { --production-stage-duration: 900ms; }
.process > .production-panel {
 opacity: 1;
 transition: grid-template-rows var(--production-stage-duration) cubic-bezier(.42,0,.58,1);
}
.process .production-disclosure::before {
 transition: width .72s cubic-bezier(.42,0,.58,1),margin-right .72s cubic-bezier(.42,0,.58,1);
}

/* The image viewer is attached to html, outside body's font inheritance. */
html:has(body.production-page) > .fancybox__container {
 font-family: var(--first-font,'PP Neue Montreal Book',Arial,sans-serif);
 font-weight: 400;
}
html:has(body.production-page) > .fancybox__container .fancybox__caption {
 font-family: inherit;
 font-weight: 400;
 font-size: 16px;
 line-height: 1.4;
 color: #ececec;
}
@media(max-width:700px) {
 html:has(body.production-page) > .fancybox__container .fancybox__caption { font-size: 14px; }
}

/* Keep label width stable: the accent and title move without reflowing words. */
.process .production-disclosure { position: relative; container-type: inline-size; }
.process .production-disclosure::before,
.process .production-disclosure[aria-expanded=true]::before {
 position: absolute; left: 0; top: 50%; width: 14%; margin: 0;
 transform: scaleX(0); transform-origin: left center;
 transition: transform .72s cubic-bezier(.42,0,.58,1);
}
.process .production-disclosure[aria-expanded=true]::before { transform: scaleX(1); }
.process .production-disclosure-label {
 --stage-indent: calc(14cqw + 28px);
 margin-right: var(--stage-indent);
 transform: translate3d(0,0,0);
 transition: transform .72s cubic-bezier(.42,0,.58,1);
}
.process .production-disclosure[aria-expanded=true] .production-disclosure-label {
 transform: translate3d(var(--stage-indent),0,0);
}
/* Panel folding and scrolling share one clock in production.js. */
.process > .production-panel { display: block; height: 0; overflow: hidden; opacity: 1; transition: none; }
.process[data-expanded=true] > .production-panel { height: auto; }
@media(max-width:700px) {
 .process .production-disclosure::before,
 .process .production-disclosure[aria-expanded=true]::before { width: 8%; }
 .process .production-disclosure-label { --stage-indent: calc(8cqw + 14px); }
}
@media(prefers-reduced-motion:reduce) {
 .process .production-disclosure-label,
 .process .production-disclosure::before { transition: none; }
}

/* Hundegger uses the bundled Swiper engine and its standard wrapper lifecycle. */
.production-slider-viewport.swiper { overflow: hidden; touch-action: pan-y pinch-zoom; }
.production-slider-track.swiper-wrapper {
 overflow: visible; height: auto; scroll-snap-type: none;
 overscroll-behavior: auto; touch-action: auto;
}
.production-slider-track.swiper-wrapper > .swiper-slide {
 flex: 0 0 auto; scroll-snap-align: none; scroll-snap-stop: normal;
}

/* The source photograph has a pale two-pixel right edge; trim only its display. */
.production-page img[src*="sawmill-wide.jpg"],
html:has(body.production-page) > .fancybox__container img[src*="sawmill-wide.jpg"] {
 clip-path:inset(0 .16% 0 0);
}
