:root{--micro:220ms;--normal:450ms;--editorial:900ms;--cinematic:1400ms;--ease:cubic-bezier(.16,1,.3,1)}
html{scroll-behavior:auto}body.cinematic{background:#f8f7f3}.cinematic header{position:fixed;width:100%;padding:16px 4%;background:rgba(248,247,243,.97);border:0;height:78px}.cinematic header .brand{font-size:23px}.cinematic header nav a{font-size:13px}.cinematic .nav-cta{padding:8px 15px}.cinematic h2 em,.cinematic h3 em{font-weight:400;color:#687e6a}.cinematic .eyebrow{font-size:12px;letter-spacing:2px}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:10px 20px}.skip-link:focus{top:90px}.button,.nav-cta,.text-link{transition:background var(--micro) var(--ease),color var(--micro) var(--ease),transform var(--micro) var(--ease)}.button:hover{transform:translateY(-2px)}
.opening-stage{height:100svh;min-height:640px;position:relative;display:grid;place-items:center;overflow:hidden}.opening-content{position:relative;z-index:2;text-align:center;width:100%;padding:60px 4%}.opening-kicker{margin-bottom:48px}.opening h1{font-family:var(--serif);font-size:clamp(44px,7.5vw,112px);line-height:1.08;letter-spacing:-.055em;font-weight:400;margin:0}.mask{display:block;overflow:hidden;padding:0 .1em .08em}.hero-line{display:block}.last-phrase{font-weight:400;color:#637762}.hero-photo{position:absolute;inset:0;overflow:hidden;opacity:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,24,19,.65),transparent 70%)}.scene-foot{position:absolute;bottom:32px;left:4%;right:4%;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:1.5px;z-index:3}.scene-foot a{border-bottom:1px solid var(--line);padding-bottom:4px}.opening-stage .scene-foot span:last-child{color:var(--muted)}
.cinematic .introduction{padding-top:160px;padding-bottom:0;max-width:1250px}.introduction h2{font-size:clamp(45px,6vw,84px);line-height:1.13}.intro-copy{width:48%;margin:50px 0 100px auto;color:var(--muted);font-size:19px}.introduction .chapter-bar{padding:30px 0}.journey{background:var(--paper)}.journey-stage{padding:100px 7% 50px}.journey-top{display:flex;justify-content:space-between;align-items:start}.journey-count{font-size:12px;letter-spacing:2px}.story-scene{display:grid;grid-template-columns:1.35fr 1fr;gap:8vw;align-items:center;min-height:75svh;padding:50px 0}.story-scene h3{font-size:clamp(45px,5.2vw,78px);line-height:1.13;letter-spacing:-.035em;margin:25px 0 40px}.scene-copy{color:var(--muted);max-width:430px;font-size:18px}.scene-word{font-size:clamp(60px,10vw,160px);font-family:var(--serif);color:#d3d9cd;letter-spacing:-.06em}.metric strong{font-family:var(--serif);font-weight:400;display:block;font-size:clamp(58px,7.3vw,110px);letter-spacing:-.05em;line-height:1.1;font-variant-numeric:tabular-nums}.metric span{display:block;font-size:13px;letter-spacing:.6px;margin-top:14px;color:var(--muted)}.paired-metrics{display:flex;gap:70px}.journey-rail{display:flex;justify-content:space-between;position:relative;border-top:1px solid var(--line);padding-top:20px;font-size:12px;letter-spacing:1px}.rail-fill{position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--ink);transform-origin:left center;transform:scaleX(0)}
.achievement-stage{position:relative;overflow:hidden;min-height:100svh;background:#12392f;color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:110px 30px 60px}.rank{text-align:center}.rank-number{display:block;font-family:var(--serif);font-size:clamp(190px,36vw,560px);line-height:.8;letter-spacing:-.08em;padding-right:.08em}.rank h2{font-family:'DM Sans',sans-serif;letter-spacing:.5em;font-size:clamp(22px,3vw,40px);padding-left:.5em;margin:30px 0}.reflection{background:var(--paper);color:var(--ink);text-align:center;padding:100px 25px}.reflection h2{font-size:clamp(45px,7vw,98px);line-height:1.08}.reflection p{max-width:610px;margin:35px auto 0;color:var(--muted);font-size:18px}.reflection .reflection-close{font-family:var(--serif);font-size:25px;color:var(--ink)}
.book-stage{position:relative;min-height:100svh;padding:100px 7%;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f2f1eb;overflow:hidden}.become-word{grid-column:1/-1;text-align:center;font-family:var(--serif);font-size:clamp(65px,15vw,230px);letter-spacing:-.055em;line-height:1.1;margin-bottom:80px}.book-title{z-index:2}.book-title h2{font-size:clamp(65px,8vw,125px)}.book-object{position:relative;max-width:560px;justify-self:center;width:100%;mix-blend-mode:multiply}.book-object img{width:100%;height:auto;display:block;max-height:75svh;object-fit:contain}.book-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.2px;margin-top:40px;gap:20px}.book-invitation{padding-top:120px;padding-bottom:120px}.invitation-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8vw}.invitation-grid p{color:var(--muted)}.invitation-grid h2{font-size:clamp(38px,4vw,60px)}
.cinematic #endeavors{max-width:none;padding:130px 7% 0;background:#eeeee6}.cinematic .endeavors-header{position:relative}.cinematic .endeavors-header h2{font-size:clamp(44px,6vw,86px);max-width:700px}.cinematic .endeavors{display:block;margin:70px 0 0 45%;max-width:610px}.cinematic .endeavor{padding:45px 0 65px}.cinematic .endeavor h3{font-size:42px;margin:20px 0}.cinematic .endeavor p{font-size:18px}.life-note{margin-top:80px;padding:120px 5%;text-align:center;border-top:1px solid #cad1c3}.cinematic .personal{border:none;max-width:810px;margin:40px auto;padding:0;font-family:var(--serif);font-size:clamp(26px,3.2vw,45px);line-height:1.45;color:var(--ink)}.life-signature{display:block;font-family:var(--serif);font-size:clamp(55px,9vw,140px);font-style:italic;letter-spacing:-.04em;color:#71816c;margin-top:80px}.cinematic footer{background:#12392f;color:var(--paper);border:0;padding:45px 0}.cinematic .footer-inner,.cinematic .footer-inner .brand{color:var(--paper)}
/* Choreography only activates after the animation engine is ready. */
.motion-ready .opening{height:250svh}.motion-ready .opening-stage{position:sticky;top:0}.motion-ready .hero-photo{clip-path:inset(30% 35% 15% 35% round 180px 180px 0 0)}.motion-ready .journey{height:430svh}.motion-ready .journey-stage{position:sticky;top:0;height:100svh;min-height:640px;display:flex;flex-direction:column;justify-content:space-between}.motion-ready .story-scenes{position:relative;flex:1}.motion-ready .story-scene{position:absolute;inset:0;min-height:0;padding:20px 0}.motion-ready .story-scene:not(:first-child){visibility:hidden;opacity:0}.motion-ready .achievement{height:250svh}.motion-ready .achievement-stage{position:sticky;top:0;height:100svh}.motion-ready .reflection{position:absolute;inset:0;display:grid;align-items:center;opacity:0;visibility:hidden;padding:100px 20px 40px}.motion-ready .book-cinema{height:225svh}.motion-ready .book-stage{position:sticky;top:0;height:100svh;min-height:640px}.motion-ready .become-word{position:absolute;inset:0;display:grid;place-items:center;margin:0;z-index:3}.motion-ready .book-title,.motion-ready .book-object,.motion-ready .book-bottom{opacity:0;visibility:hidden}.motion-ready .book-bottom{position:absolute;bottom:30px;left:7%;right:7%}
@supports(animation-timeline:view()){ @media(prefers-reduced-motion:no-preference){.editorial-reveal{animation:ink-reveal linear both;animation-timeline:view();animation-range:entry 15% entry 95%}@keyframes ink-reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}}}
@media(max-width:760px){.cinematic header{height:68px;padding:12px 22px}.cinematic header nav{background:var(--paper);padding:18px 0}.cinematic header .brand{font-size:22px}.opening-stage{min-height:540px}.opening-content{padding:40px 20px}.opening-kicker{font-size:10px!important;letter-spacing:1.5px!important;margin-bottom:35px}.opening h1{font-size:clamp(37px,8.1vw,62px);line-height:1.18;letter-spacing:-.05em}.scene-foot{bottom:24px;font-size:10px;left:22px;right:22px}.scene-foot span:last-child{display:none}.hero-photo img{object-position:50% 35%}.cinematic .introduction{padding-top:85px}.introduction h2{font-size:42px}.intro-copy{width:100%;margin:35px 0 60px;font-size:17px}.chapter-bar{font-size:10px}.journey-stage{padding:95px 25px 30px}.journey-top h2{font-size:10px!important;letter-spacing:1px!important}.journey-count{font-size:10px}.story-scene{grid-template-columns:1fr;align-content:center;gap:25px;padding:30px 0}.story-scene h3{font-size:42px;margin:16px 0 22px}.story-scene .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:12px}.scene-copy{font-size:16px;line-height:1.6}.scene-copy p{margin-bottom:15px}.scene-word{font-size:73px}.metric strong{font-size:66px}.metric span{font-size:12px;margin-top:6px}.paired-metrics{gap:55px}.journey-rail{font-size:10px;letter-spacing:0}.achievement-stage{padding:100px 20px 45px}.achievement-caption{font-size:10px!important}.rank-number{font-size:65vw}.rank h2{font-size:24px}.reflection h2{font-size:49px}.reflection p{font-size:16px;margin-top:25px}.reflection .reflection-close{font-size:21px}.reflection .eyebrow{font-size:10px}.book-stage{grid-template-columns:1fr;padding:90px 24px 60px;align-content:center}.become-word{font-size:20vw}.book-title{text-align:center}.book-title h2{font-size:58px;line-height:1; margin-bottom:10px}.book-title h2 br{display:none}.book-title .eyebrow{font-size:10px;margin-bottom:14px}.book-title .eyebrow:last-child{display:none}.book-object{max-width:320px}.book-object img{max-height:48svh}.book-bottom{font-size:9px;letter-spacing:.4px;justify-content:center;text-align:center}.book-bottom span:first-child{display:none}.invitation-grid{grid-template-columns:1fr;gap:20px}.book-invitation{padding-top:75px;padding-bottom:75px}.cinematic #endeavors{padding:80px 25px 0}.cinematic .endeavors-header h2{font-size:48px}.cinematic .endeavors{margin:40px 0 0}.cinematic .endeavor{padding:30px 0 45px}.cinematic .endeavor p{font-size:16px}.life-note{padding:65px 0;margin-top:35px}.cinematic .personal{font-size:28px}.life-signature{font-size:56px;margin-top:55px}.motion-ready .opening{height:208.75svh}.motion-ready .hero-photo{clip-path:inset(30% 22% 18% 22% round 140px 140px 0 0)}.motion-ready .journey{height:390svh}.motion-ready .journey-stage{min-height:600px}.motion-ready .achievement{height:220svh}.motion-ready .book-cinema{height:200svh}.motion-ready .book-stage{min-height:580px}.motion-ready .book-bottom{left:20px;right:20px;bottom:25px}}
@media(max-height:650px) and (min-width:761px){.motion-ready .journey-stage,.motion-ready .book-stage,.opening-stage{min-height:520px}.story-scene h3{font-size:45px;margin-bottom:18px}.metric strong{font-size:64px}.scene-copy{font-size:16px}.journey-stage{padding-top:85px;padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.hero-photo{opacity:1;position:relative;height:60svh;grid-row:2;width:100%}.opening-stage{height:auto;padding-top:80px}.opening-content{grid-row:1}.scene-foot{display:none}.achievement-stage{padding-bottom:0;gap:80px}.reflection{margin:0 -30px;width:100vw}.book-title,.book-object{opacity:1!important;visibility:visible!important}.editorial-reveal{animation:none!important}.button:hover{transform:none}}
.hero-photo{background:#cec8bc}.hero-photo img{object-fit:contain}
/* Keep the future chapter anchored as its two ambitions unfold. */
@media(min-width:1001px){.cinematic #endeavors{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw}.cinematic .endeavors-header{align-self:start;position:sticky;top:140px}.cinematic .endeavors-header h2{font-size:clamp(48px,5.2vw,78px)}.cinematic .endeavors{margin:0;max-width:none}.life-note{grid-column:1/-1;position:relative;background:#eeeee6}}

@media(max-width:760px){.book-title h2{font-size:clamp(40px,11.5vw,58px)}.reflection .wrap{padding-left:5px;padding-right:5px}.reflection h2{font-size:clamp(40px,12vw,49px)}}
html:not(.motion-ready) .opening-stage{height:auto;padding-top:90px}html:not(.motion-ready) .hero-photo{position:relative;opacity:1;width:100%;height:65svh;grid-row:2}html:not(.motion-ready) .opening-content{grid-row:1}html:not(.motion-ready) .scene-foot{display:none}html:not(.motion-ready) .achievement-stage{padding-bottom:0;gap:70px}html:not(.motion-ready) .reflection{width:100vw}
.book-editorial header{position:sticky;top:0;z-index:20}.book-editorial .book-hero{min-height:85svh;padding-top:65px;padding-bottom:85px}.book-editorial .book-hero h1{font-size:clamp(72px,9vw,140px)}.book-editorial .book-section{padding:60px 0;background:#eeeee6}.book-editorial .story{padding-top:140px;padding-bottom:140px}.book-editorial .launch{padding-top:130px;padding-bottom:130px}.book-editorial .table-photo{border-radius:0}.book-editorial .themes span{border:0;border-radius:0;border-bottom:1px solid var(--line);padding:8px 12px}.book-editorial .book-grid{gap:80px}.book-editorial footer{background:#12392f;border:0}.book-editorial .footer-inner,.book-editorial .footer-inner .brand{color:var(--paper)}
@media(max-width:760px){.book-editorial .book-hero{padding-top:40px;padding-bottom:50px}.book-editorial .story{padding-top:70px;padding-bottom:70px}.book-editorial .book-grid{gap:35px}.book-editorial .launch{padding:80px 0}}
.scene-heading,.scene-copy{min-width:0}.scene-word{display:block;font-size:clamp(58px,10vw,150px)}
@media(max-width:760px){.scene-word{font-size:clamp(52px,18vw,73px)}.metric strong{font-size:clamp(52px,16.9vw,66px)}}
.bridge-b,.book-b{display:inline-block}.bridge-b{transform-origin:top left}.become-word{pointer-events:none}
/* The personal chapter: one diagram resolves into a lived moment. */
.life-chapter{background:#eeeee6;color:var(--ink)}.life-stage{position:relative}.life-map{padding:100px 6% 65px;text-align:center}.life-map h2{font-family:var(--sans);font-size:13px}.life-diagram{position:relative;width:min(100%,1000px);height: min(52vw,480px);margin:20px auto}.life-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#9aa68f;stroke-width:1}.life-center,.life-node{position:absolute;transform:translate(-50%,-50%);background:#eeeee6}.life-center{left:50%;top:48.15%;font:64px var(--serif);padding:15px 25px}.life-center span{display:block;font:10px var(--sans);text-transform:uppercase;letter-spacing:2px;margin-top:10px}.life-node{display:flex;flex-direction:column;align-items:center;gap:12px;padding:12px 20px;font-size:16px}.life-node svg{width:32px;height:35px;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.life-node-0{left:22%;top:24%}.life-node-1{left:78%;top:24%}.life-node-2{left:20%;top:70.4%}.life-node-3{left:50%;top:83.3%}.life-node-4{left:80%;top:70.4%}.life-intro{font-size:15px;line-height:1.7;max-width:660px;margin:20px auto 0;color:#64716a}.life-memory{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:100svh;background:var(--paper)}.life-memory figure{margin:0;height:100svh;overflow:hidden}.life-memory img{width:100%;height:100%;object-fit:cover;object-position:50% 78%}.life-reflection{padding:60px 12%}.life-reflection p{font:clamp(26px,3vw,46px)/1.3 var(--serif);letter-spacing:-.025em}.life-reflection .life-signature{font-size:clamp(35px,4vw,65px);margin-top:35px}.motion-ready .life-chapter{height:260svh}.motion-ready .life-stage{position:sticky;top:0;height:100svh;overflow:hidden}.motion-ready .life-map{height:100%;display:flex;flex-direction:column;justify-content:center;padding-top:85px;padding-bottom:30px}.motion-ready .life-diagram{flex-shrink:0;height:min(50svh,450px)}.motion-ready .life-memory{position:absolute;inset:0;visibility:hidden;opacity:0}.motion-ready .life-connection{stroke-dasharray:1;stroke-dashoffset:1}.motion-ready .life-node{opacity:0}
@media(max-width:760px){.life-map{padding:80px 24px 45px}.life-map h2{font-size:10px;letter-spacing:1.6px}.life-diagram,.motion-ready .life-diagram{height:380px;width:100%;max-width:340px;margin:15px auto}.life-lines{display:none}.life-diagram:before{content:'';position:absolute;top:60px;bottom:25px;left:45px;width:1px;background:#a5af9c}.life-center{left:45px;top:20px;transform:translateY(-50%);padding:0;background:transparent;font-size:39px}.life-center span{display:none}.life-node{left:45px;top:auto;transform:none;flex-direction:row;background:transparent;padding:0;gap:24px;font-size:17px}.life-node svg{background:#eeeee6;width:28px;height:30px;margin-left:-14px;padding:4px 0;box-sizing:content-box}.life-node-0{top:75px}.life-node-1{top:132px}.life-node-2{top:189px}.life-node-3{top:246px}.life-node-4{top:303px}.life-intro{font-size:13px;max-width:330px;margin-top:0}.life-memory{grid-template-columns:1fr;grid-template-rows:58svh auto;min-height:0}.life-memory figure{height:58svh}.life-memory img{object-position:50% 77%}.life-reflection{padding:22px 27px 30px}.life-reflection p{font-size:clamp(22px,5.8vw,28px);line-height:1.25;margin:0}.life-reflection .life-signature{font-size:30px;margin-top:15px}.motion-ready .life-chapter{height:245svh}.motion-ready .life-memory{display:block;padding-top:68px}.motion-ready .life-memory figure{height:49svh}.motion-ready .life-map{padding:80px 24px 20px}.motion-ready .life-diagram{height:350px}.motion-ready .life-reflection{padding-top:18px}.motion-ready .life-node-4{top:303px}}
/* Explicit typography prevents the center caption inheriting the display size. */
.life-center span{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:400;line-height:1.4;white-space:nowrap}
.life-map h2{font-family:'DM Sans',sans-serif}
@media(min-width:761px){.life-center{top:43%;font-size:clamp(44px,5vw,64px);line-height:1.1}.life-node-3{top:88%}.life-intro{margin-top:30px}}
@media(max-width:760px) and (min-height:620px){.motion-ready .life-memory figure{height:44svh}.life-reflection{padding-left:24px;padding-right:24px}.life-reflection p{font-size:clamp(21px,5.6vw,26px)}.life-reflection .life-signature{font-size:28px;line-height:1.1}.motion-ready .life-diagram{height:350px}}

.footer-contact{display:flex;align-items:center;gap:20px}.social-links{display:flex;align-items:center;gap:4px}.social-links a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;transition:background-color 220ms ease}.social-links svg{width:21px;height:21px}.social-links a:hover{background:rgba(255,255,255,.12)}.social-links a:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(max-width:760px){.footer-contact{flex-wrap:wrap;gap:12px}}

.footer-contact .social-links{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px}.footer-contact .social-links a{width:36px;height:36px;flex:0 0 36px}.footer-contact .social-links svg{display:block;width:18px;height:18px}
