/* Motion Edition — natural scrolling, progressive enhancement, native cursor retained. */
.pointer-light{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(340px circle at var(--light-x,72%) var(--light-y,45%),#d9edff30,transparent 75%);mix-blend-mode:soft-light;opacity:0;transition:opacity .7s}
.hero.is-pointer-inside .pointer-light{opacity:1}
.hero-art img{transform:translate3d(var(--art-x,0px),calc(var(--art-y,0px) + var(--hero-shift,0px)),0) scale(calc(1.035 + var(--hero-zoom,0)));transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.hero-copy{transform:translateY(var(--hero-copy-shift,0px));will-change:transform}
.hero-soft{background:linear-gradient(100deg,#bed8ff 10%,#eef6ff 48%,#99beff 78%);background-size:180% 100%;background-position:var(--hero-highlight,0%) 50%;background-clip:text;-webkit-background-clip:text;color:transparent}
.button{translate:var(--mag-x,0px) var(--mag-y,0px);transition:translate .4s var(--ease),transform .35s var(--ease),box-shadow .3s,background .25s}
.button:after{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(105deg,transparent 15%,#ffffff24 46%,transparent 70%);background-size:250% 100%;background-position:150% 0;opacity:0;transition:background-position .8s var(--ease),opacity .35s;pointer-events:none}
.button:hover:after{background-position:-40% 0;opacity:1}
.cursor-halo{position:fixed;top:0;left:0;width:38px;height:38px;border:1px solid #fff9;border-radius:50%;mix-blend-mode:difference;pointer-events:none;z-index:150;opacity:0;display:none;transform:translate3d(-100px,-100px,0);transition:width .3s var(--ease),height .3s var(--ease),border-color .3s,opacity .25s;will-change:transform}
.cursor-capable .cursor-halo{display:block}.cursor-halo.is-visible{opacity:1}.cursor-halo.is-action{width:62px;height:62px;border-color:#ffffff4d}.cursor-halo.is-image{width:86px;height:86px;border-color:#ffffffa6}.cursor-halo span{position:absolute;width:4px;height:4px;border-radius:50%;top:50%;left:50%;background:#fff;transform:translate(-50%,-50%);opacity:.5}.cursor-halo.is-action span{opacity:0}

/* The full story remains readable without JavaScript or animation. */
.life-story{margin-top:65px;background:#f4f7fb;border-block:1px solid #e1e7f1;position:relative;scroll-margin-top:0}
.story-pin{padding-block:90px}.story-intro{margin-bottom:55px}.story-intro h2{margin-top:22px;font-size:clamp(43px,4.5vw,69px);line-height:1.08;letter-spacing:-.055em}.story-scenes{display:grid;gap:75px}.story-scene{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.scene-overline{font-size:12px;color:#6b80a5;font-weight:500;letter-spacing:.09em}.scene-copy h3{font-size:29px;font-weight:500;line-height:1.25;letter-spacing:-.035em;margin:18px 0}.scene-copy p{font-size:17px;line-height:1.85;color:#53627c;max-width:420px}.scene-copy .scene-detail{font-size:14px;line-height:1.85;color:#738098;margin-top:16px;max-width:410px}.scene-copy .text-link{margin-top:25px;color:var(--blue);font-size:14px}
.scene-image{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:13px;background:#cad9ed;isolation:isolate;margin:0}.scene-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s var(--ease),filter .8s;transform:scale(1.035)}.scene-people img{object-position:72% 50%}.scene-sculpture img{object-position:62% 50%}.scene-portrait img{object-position:55% 39%}.scene-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0b24459e);pointer-events:none}.scene-image figcaption{position:absolute;left:28px;right:28px;bottom:25px;z-index:2;color:#fff;font-size:15px;line-height:1.5;font-weight:500}.scene-image figcaption span{display:block;font-size:11px;font-weight:400;opacity:.8;margin-top:5px}
.story-nav{display:none}.story-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:40px;border-top:1px solid #d8e1ef;padding-top:22px;font-size:11px;color:#7888a3;letter-spacing:.08em}.story-bottom a{letter-spacing:0;font-size:13px;border-bottom:1px solid #bbc7da;padding-bottom:2px}

/* Desktop: a pinned three-chapter story, controlled by ordinary page scroll. */
.story-enhanced .life-story{height:280svh;min-height:1900px}
.story-enhanced .story-pin{position:sticky;top:78px;height:calc(100svh - 78px);min-height:640px;padding-block:45px;display:flex;align-items:center;overflow:hidden}
.story-enhanced .story-stage{display:grid;grid-template-columns:.88fr 1.12fr;grid-template-rows:auto 1fr auto auto;gap:25px 75px;height:min(760px,calc(100svh - 178px));min-height:550px;position:relative}
.story-enhanced .story-intro{grid-area:1/1;margin:0;align-self:start}.story-enhanced .story-intro h2{font-size:clamp(43px,4.2vw,65px);margin-top:22px}
.story-enhanced .story-scenes,.story-enhanced .story-scene{display:contents}
.story-enhanced .scene-copy{grid-area:2/1;align-self:center;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .6s var(--ease),transform .7s var(--ease),visibility .6s;pointer-events:none}
.story-enhanced .story-scene.is-current .scene-copy{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.story-enhanced .scene-copy h3{font-size:27px;margin:13px 0 15px}.story-enhanced .scene-copy p{font-size:16px;line-height:1.8}.story-enhanced .scene-copy .scene-detail{font-size:14px;line-height:1.8;margin-top:14px}.story-enhanced .scene-copy .text-link{margin-top:20px}
.story-enhanced .scene-image{grid-column:2;grid-row:1/4;aspect-ratio:auto;height:100%;width:100%;opacity:0;visibility:hidden;transform:translate3d(0,38px,0) rotate(2deg) scale(.975);transform-origin:50% 85%;transition:opacity .75s var(--ease),transform 1.05s var(--ease),visibility .75s;pointer-events:none;box-shadow:0 20px 60px #2147700d}
.story-enhanced .scene-image img{transform:scale(1.1)}
.story-enhanced .story-scene.is-current .scene-image{opacity:1;visibility:visible;transform:translate3d(0,0,0) rotate(0) scale(1);pointer-events:auto}
.story-enhanced .story-scene.is-current .scene-image img{transform:scale(1.025)}
.story-enhanced .story-nav{grid-area:3/1;display:flex;gap:20px;align-self:end;padding-top:15px;max-width:410px}
.story-nav button{flex:1;position:relative;text-align:left;background:none;display:flex;gap:9px;align-items:baseline;padding:13px 0 19px;font-size:14px;color:#7789a6;border-bottom:1px solid #d0daea;transition:color .3s}
.story-nav button>span:first-child{font-size:11px;letter-spacing:.04em}.story-nav button.is-current{color:var(--blue)}.story-nav button i{position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--blue);transform:scaleX(var(--chapter-progress,0));transform-origin:left;transition:background .3s}.story-nav button:hover{color:var(--blue)}
.story-enhanced .story-bottom{grid-column:1/-1;grid-row:4;align-self:end;margin:0;padding-top:18px;font-size:10px}

.decision-guide{background:#fff;padding-top:15px}.decision-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.decision-title h2{margin-top:24px;font-size:clamp(36px,3.4vw,52px)}.decision-title>p:last-child{font-size:16px;line-height:1.85;color:var(--muted);max-width:360px;margin-top:24px}.decision-question{display:flex;align-items:flex-start;gap:25px;border-top:1px solid var(--line);padding-top:26px;margin-bottom:32px}.decision-question:last-child{margin-bottom:0}.decision-question>span{font-size:12px;color:var(--blue);padding-top:5px}.decision-question h3{font-size:21px;font-weight:500;letter-spacing:-.025em;line-height:1.4;margin-bottom:13px}.decision-question p{font-size:15px;line-height:1.85;color:var(--muted)}
.consultation{grid-template-columns:1.08fr 1fr;gap:75px}.consultation-image{height:auto;aspect-ratio:1.15;align-self:center}.consultation-image img{object-position:50% 45%;transform:translateY(var(--photo-y,0px)) scale(1.08);transition:transform 1s var(--ease)}.consultation-image:hover img{transform:translateY(var(--photo-y,0px)) scale(1.11)}.consultation-image .photo-caption{left:30px;right:20px;bottom:27px}.consultation-image .photo-caption p{font-size:32px}.consultation-image .photo-caption>span{font-size:10px}.consultation-image .photo-credit{background:#0b244552;backdrop-filter:blur(5px);padding:5px 9px;border-radius:4px;font-size:10px;left:17px;top:17px;max-width:calc(100% - 34px)}

@media(max-width:1200px){.story-enhanced .story-stage{gap:23px 50px}.story-enhanced .scene-copy h3{font-size:25px}.story-enhanced .scene-copy p{font-size:15px}.story-enhanced .scene-copy .scene-detail{font-size:13px}.story-enhanced .story-intro h2{font-size:51px}.scene-copy h3{font-size:25px}.story-scene{gap:55px}.decision-layout{gap:65px}.consultation{gap:50px}.consultation-image .photo-caption p{font-size:28px}}
@media(max-width:980px){.life-story{margin-top:45px}.story-pin{padding-block:75px}.story-intro{margin-bottom:45px}.story-scenes{gap:55px}.story-scene{gap:40px;grid-template-columns:1fr 1fr}.scene-copy h3{font-size:24px}.scene-copy p{font-size:15px;line-height:1.8}.scene-copy .scene-detail{font-size:13px}.scene-copy .text-link{font-size:13px}.scene-image{aspect-ratio:.8}.scene-image figcaption{font-size:13px;left:22px;right:20px;bottom:22px}.scene-image figcaption span{font-size:10px}.decision-layout{gap:45px}.decision-question{gap:20px}.decision-question h3{font-size:19px}.decision-question p{font-size:14px}.consultation{gap:40px}.consultation-image{aspect-ratio:.84}.consultation-image .photo-credit{font-size:9px}.consultation-image .photo-caption>span{font-size:9px}}
@media(max-width:720px){.hero-art img{transform:translate3d(0,var(--hero-shift,0px),0) scale(1.035)}.hero-copy{transform:none}.pointer-light,.cursor-halo{display:none!important}.button{translate:none!important}.life-story{margin-top:35px}.story-pin{padding-block:65px}.story-intro{margin-bottom:33px}.story-intro h2{font-size:46px;margin-top:21px}.story-intro .section-kicker{font-size:10px}.story-scenes{gap:55px}.story-scene{display:flex;flex-direction:column;gap:26px;align-items:stretch}.scene-image{order:-1;aspect-ratio:1.04;border-radius:10px;width:100%}.scene-image img{transform:none}.scene-people img{object-position:74% 50%}.scene-image figcaption{font-size:13px;bottom:20px;left:22px}.scene-copy h3{font-size:28px;line-height:1.25;margin-top:13px}.scene-copy p{font-size:16px;line-height:1.85;max-width:none}.scene-copy .scene-detail{font-size:14px;line-height:1.8;max-width:none}.scene-copy .text-link{font-size:14px;margin-top:23px}.scene-overline{font-size:11px}.story-bottom{display:block;margin-top:35px;font-size:9px;line-height:1.8}.story-bottom>a{display:block;width:fit-content;margin-top:12px;font-size:13px}.decision-guide{padding-top:0}.decision-layout{display:block}.decision-title h2{font-size:37px}.decision-title>p:last-child{font-size:16px;max-width:none;margin-top:22px}.decision-questions{margin-top:35px}.decision-question{gap:18px;padding-top:25px;margin-bottom:28px}.decision-question h3{font-size:21px}.decision-question p{font-size:15px}.consultation{gap:35px}.consultation-image{aspect-ratio:1.03;height:auto;max-width:none}.consultation-image .photo-caption p{font-size:27px}.consultation-image .photo-caption>span{font-size:8px;letter-spacing:.08em}.consultation-image .photo-caption{left:23px;bottom:23px}.consultation-image .photo-credit{font-size:9px;line-height:1.5;left:13px;top:13px}.consultation-image img{transform:scale(1.035)!important}.consultation-image:hover img{transform:scale(1.035)!important}}
@media(max-width:380px){.story-intro h2{font-size:41px}.scene-copy h3{font-size:25px}.decision-title h2{font-size:33px}.scene-image figcaption{font-size:12px;left:20px}.scene-image figcaption span{font-size:10px}.consultation-image .photo-caption p{font-size:25px}}
@media(prefers-reduced-motion:reduce){.cursor-halo,.pointer-light{display:none!important}.hero-copy,.hero-art img,.consultation-image img{transform:none!important}.button{translate:none!important}.hero-soft{background:none;color:#bcd6ff}}
.reduce-motion .cursor-halo,.reduce-motion .pointer-light{display:none!important}.reduce-motion .hero-copy,.reduce-motion .hero-art img,.reduce-motion .consultation-image img{transform:none!important}.reduce-motion .button{translate:none!important}.reduce-motion .hero-soft{background:none;color:#bcd6ff}
@media(min-width:981px) and (max-height:860px){.story-enhanced .story-stage{height:calc(100svh - 148px);gap:15px 55px}.story-enhanced .story-intro h2{font-size:48px;margin-top:14px}.story-enhanced .scene-copy h3{font-size:24px;margin:10px 0 12px}.story-enhanced .scene-copy p{font-size:15px;line-height:1.7}.story-enhanced .scene-copy .scene-detail{font-size:13px;line-height:1.75;margin-top:10px}.story-enhanced .scene-copy .text-link{margin-top:16px}.story-enhanced .story-nav{padding-top:4px}.story-enhanced .story-nav button{padding-block:10px 14px}.story-enhanced .story-bottom{padding-top:13px}}
