/* Reference-led composition: one anchor, two concise stories, one wide finish. */
@media(min-width:768px){
.study-drift .process-list{grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(2,minmax(270px,auto));gap:18px}
.study-drift .step,.study-drift .step:last-child,.study-drift .step:nth-of-type(1),.study-drift .step:nth-of-type(2),.study-drift .step:nth-of-type(3),.study-drift .step:nth-of-type(4){display:flex;flex-direction:column;align-items:stretch;position:relative;transform:none;padding:27px;min-height:270px;border-radius:15px;background:#1b1d1d;overflow:hidden;isolation:isolate}
.study-drift .step:nth-of-type(1){grid-column:1/5;grid-row:1/3;min-height:558px}
.study-drift .step:nth-of-type(2){grid-column:5/8;grid-row:1}
.study-drift .step:nth-of-type(3){grid-column:8/11;grid-row:1}
.study-drift .step:nth-of-type(4){grid-column:5/11;grid-row:2;justify-content:flex-start;padding-right:42%}
.study-drift .step:before{background:linear-gradient(145deg,#ffffff04,transparent 65%)}
.study-drift .step-number{order:0;font-size:8px;letter-spacing:.12em;color:#9a9e97;line-height:1.4;margin:0 0 23px}
.study-drift .step-copy{display:contents}
.study-drift .step-copy h3,.study-drift .step:nth-of-type(2) h3,.study-drift .step:nth-of-type(3) h3{order:1;grid-column:auto;font-family:var(--serif);font-size:clamp(29px,3.1vw,44px);font-weight:400;line-height:1.02;letter-spacing:-.055em;margin:0 0 17px;position:relative;z-index:2}
.study-drift .step-copy p,.study-drift .step:nth-of-type(2) .step-copy p,.study-drift .step:nth-of-type(3) .step-copy p{order:2;font-size:13px;line-height:1.65;max-width:33ch;position:relative;z-index:2;margin:0}
.study-drift .step:nth-of-type(1) h3{font-size:clamp(43px,4.6vw,65px)}
.study-drift .step:nth-of-type(1) h3 span{display:inline}.study-drift .step:nth-of-type(1) h3 span:before{content:' '}
.study-drift .pictogram,.study-drift .step:nth-of-type(1) .pictogram,.study-drift .step:nth-of-type(2) .pictogram,.study-drift .step:nth-of-type(3) .pictogram,.study-drift .step:nth-of-type(4) .pictogram{order:3;position:relative;top:auto;right:auto;grid-column:auto;grid-row:auto;align-self:center;justify-self:auto;transform:none;width:140px;height:95px;margin:23px 0 -3px;flex-shrink:0}
.study-drift .step:nth-of-type(1) .pictogram{position:absolute;right:25px;top:22px;width:42px;height:38px;margin:0;opacity:.8}
.study-drift .step:nth-of-type(2) .pictogram,.study-drift .step:nth-of-type(3) .pictogram{width:calc(100% + 20px);max-width:220px;height:105px;margin-top:auto;padding-top:20px}
.study-drift .step:nth-of-type(4) .pictogram{position:absolute;right:20px;top:50%;transform:translateY(-50%);width:36%;height:190px;margin:0}
.study-drift .step:nth-of-type(4) h3{font-size:clamp(34px,3.8vw,53px);margin-top:8px}
.study-drift .step.active{border-color:#e3061870;background:#1d1f1e}
}
.review-sheet{position:relative;order:4;background:#222525;border:1px solid #ffffff1f;border-radius:10px;padding:23px 20px 18px;color:#e9e8df;box-shadow:0 15px 40px #0004;transform:rotate(-3deg);margin:42px -5px -4px;isolation:isolate}
.review-sheet:before{content:'';position:absolute;inset:10px -12px -10px;border:1px solid #ffffff12;background:#202222;border-radius:10px;z-index:-1;transform:rotate(5deg)}
.sheet-top{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.12em;padding-bottom:20px;border-bottom:1px solid #ffffff14}
.sheet-signal{width:5px;height:5px;background:#e30618;border-radius:50%}
.sheet-row{display:grid;grid-template-columns:23px 1fr 24px;gap:9px;align-items:center;padding:18px 0;border-bottom:1px solid #ffffff10;font-size:12px}
.sheet-row small{display:block;color:#939a95;font-size:10px;margin-top:5px}
.sheet-tick{width:22px;height:22px;display:grid;place-items:center;border:1px solid #e306183d;border-radius:50%;color:#e30618;font-size:12px}
.sheet-row i{height:3px;border-radius:2px;background:#e3061840;transform-origin:left;transform:scaleX(.22)}
.sheet-end{font-size:9px;color:#929a95;line-height:1.5;padding-top:18px}
.step.arrived .sheet-row i,.step.visited .sheet-row i{transform:scaleX(1)}
.step.arrived .sheet-row i{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.step.arrived .sheet-row:nth-child(3) i{transition-delay:.15s}.step.arrived .sheet-row:nth-child(4) i{transition-delay:.3s}
@media(min-width:768px) and (max-width:1000px){.study-drift .step,.study-drift .step:last-child,.study-drift .step:nth-of-type(1),.study-drift .step:nth-of-type(2),.study-drift .step:nth-of-type(3),.study-drift .step:nth-of-type(4){padding:22px;min-height:280px}.study-drift .step:nth-of-type(1){min-height:578px}.study-drift .step:nth-of-type(4){padding-right:40%}.study-drift .step:nth-of-type(1) h3{font-size:43px}.study-drift .step-number{font-size:7px}.study-drift .step-copy h3,.study-drift .step:nth-of-type(2) h3,.study-drift .step:nth-of-type(3) h3{font-size:30px}.study-drift .step-copy p,.study-drift .step:nth-of-type(2) .step-copy p,.study-drift .step:nth-of-type(3) .step-copy p{font-size:12px}.study-drift .step:nth-of-type(4) h3{font-size:36px}.review-sheet{padding:18px 15px;margin-top:35px}.sheet-row{font-size:11px}.sheet-row small{font-size:9px}}
@media(max-width:767px){.study-drift .step,.study-drift .step:last-child{border-radius:12px}.review-sheet{grid-column:1/-1;grid-row:4;margin:24px 5px 0;transform:rotate(-2deg);padding:20px}.study-drift .step-number{font-size:7px;letter-spacing:.08em}.study-drift .step-copy h3{font-family:var(--serif);font-size:32px!important;letter-spacing:-.05em}.sheet-row{padding:14px 0}.study-drift .step:nth-of-type(1) .step-copy h3{font-size:36px!important}}
@media(prefers-reduced-motion:reduce){.step.arrived .sheet-row i{transition:none}}

/* Give each miniature scene a definite drawing area, avoiding intrinsic SVG overflow. */
.study-drift .pictogram svg{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:100%}
@media(min-width:768px){.study-drift .step:nth-of-type(2) .pictogram,.study-drift .step:nth-of-type(3) .pictogram{padding:0;width:150px;height:110px;margin-top:24px;margin-bottom:0}}
