/*
 * Reference lock: John's Home_Page_Animation (lQy0gI15tjvpPUQjgS4qO0),
 * three ink states at 52:45 / 55:538 / 55:542. Keep Mach canvas/type/corners,
 * three headings above copy-left/photo-right, and the matching Figma photos.
 * User direction: active heading turns Mach red, including Quality checked.
 * Refero's Factory/Andercore research contributes open rows and fine rules;
 * Refero motion guidance contributes directional continuity and reduced motion.
 * One native pinned scroll sequence; no wheel interception or autoplay.
 */
.custom-engineering{--engineering-top:calc(var(--site-header-height) + var(--site-header-offset) + 16px);--engineering-media-height:clamp(280px,calc(100svh - 560px),420px);width:calc(100% - 32px);margin:48px auto 0;position:relative;scroll-margin-top:var(--engineering-top)}
.custom-engineering__surface{border-radius:40px}
.custom-engineering__inner{padding:32px max(32px,calc(var(--gutter) - 16px)) 28px}
.custom-engineering__header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}
.custom-engineering__hint{font-size:14px;line-height:1.4;max-width:370px;text-align:right}
.custom-engineering__nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-bottom:32px}
.custom-engineering__tab{min-width:0;display:grid;gap:10px;padding-bottom:20px;position:relative;color:var(--light-muted);transition:color 200ms ease-out}
.custom-engineering__number{font:500 11px/16px var(--mono);letter-spacing:.6px}
.custom-engineering__tab-title{font:600 clamp(30px,3.4vw,48px)/1.08 var(--display);text-wrap:balance}
.custom-engineering__tab-line{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--dark-line)}
.custom-engineering__tab-line:after{content:"";position:absolute;inset:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 400ms cubic-bezier(.22,1,.36,1)}
.custom-engineering__tab:hover,.custom-engineering__tab[aria-selected="true"]{color:var(--red)}
.custom-engineering__tab[aria-selected="true"] .custom-engineering__tab-line:after{transform:scaleX(1)}
.custom-engineering__panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:64px;scroll-margin-top:var(--engineering-top)}
.custom-engineering__panel+.custom-engineering__panel{margin-top:72px}
.custom-engineering__copy{max-width:460px;padding:16px 0}
.custom-engineering__chapter{margin-bottom:18px}
.custom-engineering__copy h3{font-size:clamp(40px,4.3vw,64px);line-height:1.05;letter-spacing:-.3px;margin-bottom:24px}
.custom-engineering__description{font-size:20px;line-height:1.5;max-width:420px;text-wrap:pretty}
.custom-engineering__media{width:min(100%,550px);justify-self:end;min-width:0;touch-action:pan-y}
.custom-engineering__image-wrap{height:var(--engineering-media-height);overflow:hidden;display:grid;place-items:center}
.custom-engineering__image-wrap img{width:100%;height:100%;min-height:0;object-fit:contain}
.custom-engineering__media--assembly img{filter:grayscale(1)}
.custom-engineering__media figcaption{font:500 10px/16px var(--mono);letter-spacing:1px;color:var(--light-muted);padding-top:14px}
@media(min-width:900px){.custom-engineering__media figcaption{width:min(100%,calc(var(--engineering-media-height) * 1.25));margin-inline:auto}}
.custom-engineering__controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px}
.custom-engineering__paging{display:flex;align-items:center;gap:14px}
.custom-engineering__paging button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--dark-line);font-size:24px;color:var(--paper);transition:color 160ms,border-color 160ms}
.custom-engineering__paging button:hover{color:var(--red);border-color:var(--red)}
.custom-engineering__count{font:500 11px/16px var(--mono);color:var(--light-muted);min-width:55px;text-align:center}
.custom-engineering__motion{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--light-muted)}
.custom-engineering__motion input{width:16px;height:16px;accent-color:var(--red)}
.custom-engineering__footer{margin-top:20px;padding-top:18px;border-top:1px solid var(--dark-line);display:flex;align-items:center;justify-content:space-between;gap:32px}
.custom-engineering__footer p{font-size:14px;line-height:1.5;max-width:580px}
.custom-engineering__inquiry{display:inline-flex;align-items:center;gap:20px;min-height:44px;flex:none;font-size:16px;text-decoration:underline;text-underline-offset:5px}
.custom-engineering__inquiry span{color:var(--red);font-size:26px;text-decoration:none}
.custom-engineering__sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.custom-engineering.is-enhanced .custom-engineering__panel{margin-top:0}
.custom-engineering.is-enhanced .custom-engineering__panels{display:grid}
.custom-engineering.is-enhanced .custom-engineering__panel{grid-area:1/1;visibility:hidden;pointer-events:none;opacity:0}
.custom-engineering.is-enhanced .custom-engineering__panel.is-active{visibility:visible;pointer-events:auto;opacity:1}
.custom-engineering.is-enhanced:not(.is-reduced) .custom-engineering__panel.is-entering .custom-engineering__copy{animation:engineering-copy-in 420ms cubic-bezier(.22,1,.36,1) both}
.custom-engineering.is-enhanced:not(.is-reduced) .custom-engineering__panel.is-entering .custom-engineering__image-wrap{animation:engineering-photo-in 650ms cubic-bezier(.22,1,.36,1) both}
.custom-engineering.is-enhanced:not(.is-reduced) .custom-engineering__panel.is-entering img{animation:engineering-photo-settle 850ms cubic-bezier(.22,1,.36,1) both}
.custom-engineering.is-scroll-driven{height:calc(var(--engineering-height) + var(--engineering-travel))}
.custom-engineering.is-scroll-driven .custom-engineering__surface{position:sticky;top:var(--engineering-top)}
.custom-engineering.is-reduced *{animation:none!important;transition:none!important}
@keyframes engineering-copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes engineering-photo-in{from{opacity:0;clip-path:inset(12% 0 0 0);transform:translateY(24px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}
@keyframes engineering-photo-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(min-width:900px) and (max-height:850px){.custom-engineering__inner{padding-block:24px}.custom-engineering__header{margin-bottom:20px}.custom-engineering__nav{margin-bottom:24px}.custom-engineering__tab{padding-bottom:16px;gap:6px}.custom-engineering__tab-title{font-size:38px}.custom-engineering__copy h3{font-size:52px}.custom-engineering__description{font-size:18px}.custom-engineering__controls{margin-top:10px}.custom-engineering__footer{margin-top:12px;padding-top:12px}}
@media(max-width:1100px){.custom-engineering__nav{gap:24px}.custom-engineering__panel{gap:40px}.custom-engineering__footer p{max-width:450px}}
@media(max-width:899px){.custom-engineering{--engineering-media-height:auto}.custom-engineering__header{align-items:flex-start}.custom-engineering__hint{max-width:260px}.custom-engineering__panel{grid-template-columns:1fr;gap:28px}.custom-engineering__copy{max-width:600px;padding:0}.custom-engineering__description{max-width:550px}.custom-engineering__media{justify-self:center;width:100%;max-width:550px}.custom-engineering__image-wrap{aspect-ratio:5/4}.custom-engineering__footer{align-items:flex-start}.custom-engineering__footer p{max-width:390px}}
@media(max-width:767px){
 .custom-engineering{width:calc(100% - 24px);margin-top:32px}
 .custom-engineering__surface{border-radius:28px}
 .custom-engineering__inner{padding:28px 24px}
 .custom-engineering__header{margin-bottom:24px}
 .custom-engineering__header>.eyebrow{font-size:10px;letter-spacing:.3px}
 .custom-engineering__hint{display:none}
 .custom-engineering__nav{gap:12px;margin-bottom:28px}
 .custom-engineering__tab{gap:8px;padding-bottom:14px}
 .custom-engineering__tab-title{font-size:23px;line-height:1.05;text-wrap:initial}
 .custom-engineering__number{font-size:10px}
 .custom-engineering__chapter{margin-bottom:12px;font-size:10px}
 .custom-engineering__copy h3{font-size:44px;margin-bottom:18px}
 .custom-engineering__description{font-size:17px;line-height:1.5}
 .custom-engineering__panel{gap:24px}
 .custom-engineering__media figcaption{font-size:9px;padding-top:10px}
 .custom-engineering__controls{margin-top:20px;gap:12px}
 .custom-engineering__paging{gap:8px}
 .custom-engineering__motion{font-size:12px;gap:6px}
 .custom-engineering__footer{flex-direction:column;gap:12px;margin-top:20px;padding-top:20px}
 .custom-engineering__footer p{font-size:13px}
 .custom-engineering__inquiry{font-size:15px;gap:16px}
}
@media(max-width:359px){.custom-engineering__inner{padding-inline:20px}.custom-engineering__nav{gap:8px}.custom-engineering__tab-title{font-size:19px}.custom-engineering__copy h3{font-size:38px}.custom-engineering__paging{gap:4px}.custom-engineering__count{min-width:44px}.custom-engineering__motion{font-size:11px}}
@media(prefers-reduced-motion:reduce){.custom-engineering *{animation:none!important;transition:none!important}}
