/* Company vision only: approved six-scene narrative, no shared layout changes. */
.cv-understanding-section{--process-paper:#fff;--process-intro:#e7ecff;--process-line:#dfe2ea;--process-inset:calc(var(--header,76px) + 24px);--process-art-top:var(--process-inset);padding:0 0 52px;background:var(--process-paper);color:var(--cv-ink)}
/* The scrolling introduction is a separate surface from the white, sticky six-step reading area. */
.cv-process-intro{padding:88px 0 64px;background:linear-gradient(180deg,#fff,var(--process-intro)) top/100% 64px no-repeat,linear-gradient(180deg,var(--process-intro),#fff) bottom/100% 40px no-repeat,var(--process-intro)}
.cv-process-heading{max-width:820px;margin:0}
.cv-process-heading .cv-label{margin-bottom:24px;color:var(--cv-blue)}
.cv-main .cv-process-heading h2{font-size:clamp(36px,4vw,56px);line-height:1.2;letter-spacing:-.045em}
.cv-process-heading>p:last-child{max-width:650px;margin:24px 0 0;color:var(--cv-muted);font-size:18px;line-height:1.8}
.cv-process-layout{display:grid;grid-template-columns:156px minmax(0,1fr);gap:clamp(24px,3vw,44px);align-items:start;position:relative}
.cv-process-nav{position:sticky;top:var(--process-inset);z-index:3;background:var(--process-paper)}
.cv-process-nav ol{list-style:none;margin:0;padding:0}
.cv-process-nav li{border-bottom:1px solid var(--process-line)}
.cv-process-nav a{display:flex;align-items:baseline;gap:10px;padding:18px 0;color:#666b77;font-size:14px;line-height:1.5;text-decoration:none;transition:color .18s}
.cv-process-nav a>span{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.cv-process-nav a:hover,.cv-process-nav a[aria-current="step"]{color:var(--cv-blue)}
.cv-process-nav a[aria-current="step"]{box-shadow:0 1px 0 var(--cv-blue);font-weight:600}
.cv-process-nav a:focus-visible{outline:2px solid var(--cv-blue);outline-offset:4px}
.cv-process-count{display:flex;gap:6px;margin:28px 0 0;font-size:16px;font-variant-numeric:tabular-nums}
.cv-process-count>span:last-child{color:#818795}
.cv-process-art{display:none;margin:0}
.cv-process-steps{min-width:0}
.cv-process-step{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;min-height:max(560px,calc(100svh - var(--process-inset) - 32px));padding:48px 0;scroll-margin-top:0}
.cv-step-image{display:block;width:100%;max-width:480px;height:auto;justify-self:center}
.cv-step-copy{width:100%;padding-top:26px;border-top:1px solid var(--process-line)}
.cv-step-number{display:flex;align-items:baseline;gap:14px;margin:0 0 22px;font-size:14px;font-variant-numeric:tabular-nums;color:var(--cv-blue)}
.cv-step-number span{color:#717785}
.cv-main .cv-process-step h3{margin:0 0 24px;font-size:clamp(28px,2.55vw,38px);line-height:1.35;letter-spacing:-.04em;word-break:keep-all;overflow-wrap:break-word}
.cv-process-step h3:focus{outline:none}
.cv-step-copy .cv-keep{white-space:nowrap}
.cv-step-copy>p:not(.cv-step-number){max-width:500px;margin:16px 0 0;font-size:17px;line-height:1.85;color:#616777;letter-spacing:-.012em;word-break:keep-all;overflow-wrap:break-word}
.cv-step-copy strong{color:#252c3f;font-weight:500}
/* Enhance only after all six accessible source images have been connected. */
[data-understanding][data-process-ready] .cv-process-layout{grid-template-columns:156px minmax(0,1fr) minmax(0,1.05fr)}
[data-process-ready] .cv-process-art{display:grid;position:sticky;top:var(--process-art-top);align-self:start;width:100%;height:min(480px,calc(100svh - var(--process-inset) - 32px));isolation:isolate}
.cv-process-art img{grid-area:1/1;width:100%;height:100%;min-height:0;max-width:480px;object-fit:contain;justify-self:center;opacity:0;transition:opacity .22s ease-out}
.cv-process-art img.is-active{opacity:1}
[data-process-ready] .cv-process-step{display:flex;align-items:center}
[data-process-ready] .cv-step-image{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1100px),(max-height:650px){
 .cv-understanding-section{--process-inset:calc(var(--header,76px) + 86px)}
 .cv-process-layout{grid-template-columns:minmax(0,1fr);gap:24px 36px}
 [data-understanding][data-process-ready] .cv-process-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}
 .cv-process-nav{grid-column:1/-1;top:var(--header,76px);padding:0;background:var(--process-paper);border-bottom:1px solid var(--process-line)}
 .cv-process-nav ol{display:flex;gap:24px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#c7cbd7 transparent}
 .cv-process-nav li{flex:0 0 auto;border:0}
 .cv-process-nav a{padding:16px 0;font-size:13px;gap:7px;white-space:nowrap}
 .cv-process-count{display:none}
}
@media(max-width:760px){
 .cv-understanding-section{padding:0 0 24px}
 .cv-process-intro{padding:56px 0 28px;background-size:100% 32px,100% 20px}
 .cv-process-heading .cv-label{margin-bottom:18px}
 .cv-main .cv-process-heading h2{font-size:clamp(31px,8vw,40px)}
 .cv-process-heading>p:last-child{font-size:16px;margin-top:20px;line-height:1.8}
 .cv-process-heading>p:last-child br{display:none}
 .cv-process-layout,[data-understanding][data-process-ready] .cv-process-layout{display:block}
 .cv-process-nav{margin:0 -24px;padding:0 24px}
 .cv-process-nav ol{gap:20px}
 .cv-process-nav a{font-size:13px;padding:15px 0}
 [data-process-ready] .cv-process-art{display:none}
 .cv-process-step,[data-process-ready] .cv-process-step{display:flex;flex-direction:column;align-items:stretch;gap:28px;min-height:0;padding:28px 0 52px}
 .cv-step-image,[data-process-ready] .cv-step-image{position:static;display:block;width:100%;height:auto;max-width:420px;margin:0 auto;clip-path:none;white-space:normal}
 .cv-step-copy{padding-top:22px}
 .cv-step-number{font-size:13px;margin-bottom:16px;gap:12px}
 .cv-main .cv-process-step h3{font-size:clamp(27px,7vw,33px);margin-bottom:18px}
 .cv-step-copy>p:not(.cv-step-number){font-size:16px;line-height:1.8;margin-top:14px}
}
@media(min-width:761px) and (max-height:650px){
 .cv-process-step,[data-process-ready] .cv-process-step{align-items:flex-start;padding:24px 0;min-height:max(420px,calc(100svh - var(--process-inset) - 24px))}
}
@media(prefers-reduced-motion:reduce){
 .cv-understanding-section *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
