.section02{position:absolute;inset:0;z-index:6;overflow:hidden;background:#080809;clip-path:circle(var(--iris-r,0px) at var(--iris-x,50%) var(--iris-y,50%));transition:clip-path .06s linear}
.section02.is-active{clip-path:circle(150vmax at 50% 50%);transition:clip-path .42s ease-out}
.section02-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#111}
.section02:not(.is-active) .section02-film{filter:blur(var(--reflection-blur,0px));transform:scale(1.025)}
.section02-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.47),transparent 67%),linear-gradient(0deg,rgba(0,0,0,.87),transparent 65%,rgba(0,0,0,.13));opacity:0;transition:opacity .65s}
.section02.is-active .section02-shade{opacity:1}
.pupil-glint{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 6% 9% at 47% 40%,rgba(255,255,255,.28),transparent);mix-blend-mode:screen;opacity:var(--glint,0)}
.section02-copy{position:absolute;left:clamp(24px,5.2vw,100px);bottom:clamp(60px,10vh,108px);max-width:min(650px,65vw);opacity:0;transform:translateY(28px);transition:opacity .45s,transform .65s cubic-bezier(.2,.7,.3,1);pointer-events:none;text-shadow:0 2px 20px #0008}
.section02-copy.is-visible{opacity:1;transform:translateY(0)}
.section02-kicker,.section02-scroll-hint,.section02-progress,.section03-index{font:500 11px/1.5 Arial,sans-serif;letter-spacing:.18em}
.section02-title{font:500 clamp(40px,6.2vw,100px)/.91 Arial,Helvetica,sans-serif;letter-spacing:-.07em;margin:16px 0 20px;text-transform:uppercase;text-wrap:balance}
.section02-body{font:400 clamp(13px,1.04vw,16px)/1.65 Arial,sans-serif;max-width:460px;margin:0 0 25px;word-break:keep-all}
.section02-scroll-hint{opacity:.8;display:inline-block;border-top:1px solid #ffffff90;padding-top:12px}
.section02-progress{position:absolute;right:clamp(24px,3.2vw,60px);top:50%;transform:translateY(-50%);text-align:right;display:flex;align-items:flex-end;flex-direction:column;gap:13px;opacity:0;transition:opacity .4s;text-shadow:0 1px 8px #000a}
.section02.is-active .section02-progress{opacity:1}
.section02-current{font-size:21px;letter-spacing:.04em}
.section02-progress-lines{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.section02-progress-lines i{display:block;width:24px;height:1px;background:#ffffff7d;transition:width .3s,background .3s}
.section02-progress-lines i.is-current{width:52px;background:#fff}
.section02-chapter{max-width:150px;font-size:10px}
.section02-retry{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);padding:15px 22px;background:#0a0a0cdd;border:1px solid #fff;color:#fff;letter-spacing:.15em;font:12px Arial,sans-serif}
.section03{position:absolute;inset:0;z-index:9;background:#f6f5f0;color:#171717;overflow:auto;transform:translate3d(0,100%,0);transition:none}
.section03.is-visible{transform:translateY(0)}
.section03-main{min-height:100%;padding:clamp(90px,16vh,150px) clamp(26px,8vw,150px) 110px;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.48fr);column-gap:7vw;align-content:center}
.section03-index{grid-column:1/-1;align-self:end;margin-bottom:42px}
.section03-main h2{grid-column:1;font:600 clamp(46px,6.2vw,112px)/1.08 Arial,sans-serif;letter-spacing:-.075em;word-break:keep-all;margin:0 0 35px;max-width:950px}
.section03-main p{grid-column:1;font:400 clamp(16px,1.25vw,22px)/1.7 Arial,sans-serif;max-width:640px;word-break:keep-all;margin:0}
.section03-main strong{grid-column:2;grid-row:2;font:500 clamp(28px,3vw,52px)/.97 Arial,sans-serif;letter-spacing:-.065em;align-self:start}
.section03-main small{grid-column:2;grid-row:3;font:400 14px/1.55 Arial,sans-serif;max-width:330px;align-self:start}
.section03-corners{position:absolute;inset:0;pointer-events:none;font:10px/1.35 Arial,sans-serif;letter-spacing:.07em}
.section03-corners span{position:absolute}.section03-corners span:nth-child(1){left:26px;top:25px}.section03-corners span:nth-child(2){right:26px;top:25px;text-align:right}.section03-corners span:nth-child(3){left:26px;bottom:25px}.section03-corners span:nth-child(4){right:26px;bottom:25px}
@media(max-width:700px){.section02-shade{background:linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.62) 35%,transparent 82%)}.section02-copy{left:24px;right:24px;bottom:clamp(124px,21vh,180px);max-width:none}.section02-title{font-size:clamp(41px,12vw,74px);max-width:95%;margin:10px 0 14px}.section02-body{font-size:13px;line-height:1.5;max-width:92%;margin-bottom:13px}.section02-kicker,.section02-scroll-hint{font-size:9px}.section02-progress{left:24px;right:24px;top:auto;bottom:24px;transform:none;align-items:center;display:grid;grid-template-columns:auto 1fr;gap:5px 16px;text-align:left}.section02-current{grid-row:1/3;font-size:26px}.section02-progress-lines{flex-direction:row;justify-content:space-between;gap:4px;width:100%}.section02-progress-lines i,.section02-progress-lines i.is-current{width:auto;flex:1;height:2px}.section02-chapter{max-width:none;font-size:9px}.section03-main{display:block;padding:105px 25px 125px}.section03-index{display:block;margin-bottom:32px}.section03-main h2{font-size:clamp(43px,12vw,72px);margin:0 0 24px}.section03-main p{font-size:16px}.section03-main strong{display:block;font-size:35px;margin:60px 0 20px}.section03-main small{display:block;max-width:320px}.section03-corners span:nth-child(3){max-width:55%}.section03-corners span:nth-child(4){max-width:28%;text-align:right}}
@media(prefers-reduced-motion:reduce){.section02,.section02-copy,.section03{transition-duration:.01ms!important}}
