/* Rev4 Engineering Approach v19 — scoped additions only */
.page-approach .approach-process-modern,
.page-approach .approach-methodology-modern{padding:clamp(40px,5vw,72px) 0!important;background:linear-gradient(180deg,#f4fafc,#fff)!important}
.page-approach .approach-methodology-modern{background:linear-gradient(180deg,#fff,#f6fafb)!important}
.page-approach .approach-process-container,
.page-approach .approach-methodology-container{max-width:1400px}
.page-approach .approach-visual-intro{text-align:center;max-width:960px;margin:0 auto 28px}
.page-approach .approach-visual-intro h2{color:#073455;font-size:clamp(29px,3.25vw,44px);letter-spacing:-.04em;line-height:1.16;margin:10px 0 10px}
.page-approach .approach-visual-intro p:last-child{margin:0 auto;color:#597388;font-size:clamp(15px,1.35vw,18px);line-height:1.7;max-width:930px}
.page-approach .approach-section-kicker{margin:0;color:#0e8f91;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.16em}
.page-approach .approach-image-figure{margin:0;position:relative;background:#fff;border:1px solid #e0eaf0;border-radius:22px;padding:clamp(8px,1.55vw,22px);box-shadow:0 15px 40px rgba(9,46,72,.075);overflow:hidden}
.page-approach .approach-image-scroll{width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b6d7e4 #eaf3f6}
.page-approach .approach-image-scroll img{width:100%;height:auto;display:block;border-radius:10px}
.page-approach .approach-image-stage{position:relative;line-height:0}
.page-approach .approach-figcaption{display:block;text-align:center;font-size:13px;color:#597388;line-height:1.5;margin:11px 0 2px}
/* A subtle revolving halo around each illustrated gear creates motion without obscuring the graphics. */
.page-approach .approach-motion-orbit{position:absolute;top:54%;width:14%;aspect-ratio:1;border:2px dashed rgba(14,149,170,.24);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);animation:rev4-approach-orbit 24s linear infinite}
.page-approach .approach-motion-orbit.orbit-one{left:10%;border-color:rgba(8,62,117,.23);animation-duration:26s}
.page-approach .approach-motion-orbit.orbit-two{left:28%;animation-direction:reverse;animation-duration:31s}
.page-approach .approach-motion-orbit.orbit-three{left:50%;width:19%;border-color:rgba(7,91,106,.23);animation-duration:35s}
.page-approach .approach-motion-orbit.orbit-four{left:72%;animation-direction:reverse;animation-duration:29s}
.page-approach .approach-motion-orbit.orbit-five{left:90%;border-color:rgba(8,62,117,.23);animation-duration:33s}
@keyframes rev4-approach-orbit{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.page-approach .approach-methodology-figure img{max-width:100%;}
@media (max-width:760px){
 .page-approach .approach-image-scroll img,
 .page-approach .approach-five-stage{width:1000px!important;max-width:none!important}
 .page-approach .approach-image-scroll{overscroll-behavior-x:contain}
 .page-approach .approach-visual-intro{margin-bottom:20px}
 .page-approach .approach-image-figure{padding:8px;border-radius:15px}
 .page-approach .approach-figcaption{padding:0 8px}
 .page-approach .approach-image-scroll::after{content:''}
}
@media (prefers-reduced-motion:reduce){.page-approach .approach-motion-orbit{animation:none}}

/* Mobile overview first, with native full-size zoom on tap */
.page-approach .approach-mobile-zoom{display:none}
@media(max-width:760px){
 .page-approach .approach-image-scroll img,.page-approach .approach-five-stage{width:100%!important;max-width:100%!important}
 .page-approach .approach-image-scroll{overflow:hidden}
 .page-approach .approach-motion-orbit{border-width:1px}
 .page-approach .approach-mobile-zoom{display:block;width:fit-content;margin:12px auto 0;color:#067d91;font-weight:750;font-size:14px;text-decoration:underline;text-underline-offset:3px;padding:8px 14px}
}
