:root{--paper:#eee9df;--ink:#392b27;--muted:#73675e;--accent:#683830;--rule:#392b2729;--cream:#fffaf1;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{cursor:pointer}::selection{background:#cfae96;color:var(--ink)}
.site-header{position:fixed;background:linear-gradient(#eee9dff5,#eee9dfb0);backdrop-filter:blur(8px);top:0;left:0;width:100%;height:94px;padding:0 4.5vw;display:flex;justify-content:space-between;align-items:center;z-index:10}.brand{font:normal clamp(31px,3.2vw,44px)/1 Georgia,serif;letter-spacing:-2px}.brand span{color:var(--accent)}.site-header nav{display:flex;align-items:center;gap:32px;font-size:12px}.login-link span{margin-left:5px}.site-header nav>a:not(.button){padding:14px 0}.site-header nav>a:not(.button):hover{color:#9b5948}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:48px;padding:15px 25px;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:var(--cream);font-size:12px;letter-spacing:.1px;transition:background .2s,transform .2s}.button:hover{background:#824b40;transform:translateY(-2px)}.button-small{min-height:40px;padding:11px 19px}.eyebrow{font-size:9px;line-height:1.7;text-transform:uppercase;letter-spacing:2px;font-weight:normal}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:50;padding:14px;background:var(--cream)}.skip-link:focus{transform:none}
#book-story{position:relative;height:280svh;--book-progress:0}.book-stage{position:sticky;top:0;width:100%;height:100svh;min-height:620px;overflow:hidden;background:var(--paper)}#scene{position:absolute;inset:0;display:block;width:100%;height:100%}.hero-copy{position:absolute;z-index:2;top:116px;left:0;width:100%;text-align:center;pointer-events:none;opacity:clamp(0,calc(1 - var(--book-progress)*5),1);transform:translateY(calc(var(--book-progress)*-80px));will-change:opacity,transform}.hero-copy .eyebrow{margin:0 0 13px}.hero-copy h1{font:normal clamp(46px,5.2vw,76px)/.99 Georgia,serif;letter-spacing:-3px;margin:0}.hero-copy h1 br{display:none}.hero-copy h1 em{font-weight:normal;color:var(--accent)}.hero-description{font-size:13px;line-height:1.65;color:var(--muted);margin:18px auto}.hero-description br{display:none}.hero-copy .button{pointer-events:auto}.stage-bottom{position:absolute;bottom:25px;left:4.5vw;right:4.5vw;text-align:center;z-index:3}.stage-bottom .eyebrow{color:var(--accent)}#story-description{font:normal 19px/1.4 Georgia,serif;margin:5px auto 0}.stage-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:10px;color:var(--muted)}.scroll-cue{display:flex;align-items:center;gap:10px}.scroll-cue>span{font-size:20px}.note{position:absolute;left:0;top:0;opacity:0;pointer-events:none;width:190px;padding:12px 15px;background:#fffaf1f0;border-left:2px solid #914d3d;box-shadow:0 6px 30px #44302110;transition:opacity .4s;font-size:11px;line-height:1.6}.note b{display:block;color:#914d3d;text-transform:uppercase;letter-spacing:1.6px;font-size:8px;margin-bottom:6px}.note p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section-shell{padding:105px max(6vw,24px);max-width:1600px;margin:auto}.section-intro>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:345px}.section-intro h2,h2{font:normal clamp(36px,4vw,56px)/1.12 Georgia,serif;letter-spacing:-1.8px;margin:20px 0 24px}h3{font:normal 27px/1.2 Georgia,serif;letter-spacing:-.5px}.reading-section{display:grid;grid-template-columns:1fr 1.2fr;gap:7vw;align-items:center;border-top:1px solid var(--rule)}.sample-review{background:#f8f3e9;padding:34px 38px 28px;box-shadow:4px 5px 0 #e5ded0;position:relative}.sample-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:26px;border-bottom:1px solid var(--rule)}.sample-heading>span:last-child{color:var(--muted);font-size:9px}.sample-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.sample-review blockquote{margin:36px 0 32px;font:normal clamp(18px,1.8vw,24px)/1.8 Georgia,serif;letter-spacing:-.4px}.sample-review mark{background:#dcc8a155;color:inherit;box-shadow:0 1px #b28b56;padding:2px 0}.sample-note{position:relative;margin-left:42px;padding-left:17px;border-left:1px solid #b37a66;color:var(--accent)}.sample-note .eyebrow{margin:0 0 8px;font-size:8px;letter-spacing:1.5px}.sample-note>p:last-child{font:italic 17px/1.5 Georgia,serif;max-width:330px;margin:0}.sample-footnote{margin:35px 0 0;padding-top:20px;border-top:1px solid var(--rule);font-size:10px;line-height:1.5;color:var(--muted)}.lenses-section{padding-top:50px}.section-heading{margin-bottom:45px}.section-heading>.eyebrow{color:var(--muted)}.lenses-list{border-top:1px solid var(--rule)}.lenses-list article{display:grid;grid-template-columns:70px 1fr 1.1fr;align-items:baseline;gap:20px;border-bottom:1px solid var(--rule);padding:27px 0}.index{font-size:10px;letter-spacing:1.5px;color:var(--accent)}.lenses-list h3{margin:0}.lenses-list p{font-size:13px;line-height:1.8;margin:0;color:var(--muted);max-width:440px}.workflow-section{background:#e7e0d4;max-width:none;padding-top:85px;padding-bottom:90px}.workflow-section .section-heading{max-width:1400px;margin-left:auto;margin-right:auto}.workflow-list{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;list-style:none;margin:55px auto 0;padding:0;max-width:1400px}.workflow-list li{padding-top:20px;border-top:1px solid var(--rule)}.workflow-list h3{margin:25px 0 14px;font-size:26px}.workflow-list p{font-size:13px;line-height:1.8;color:var(--muted);max-width:310px}.final-section{text-align:center;padding:110px 24px 120px}.final-section h2{font-size:clamp(38px,5vw,68px);margin:24px 0 35px}.final-section h2 em{color:var(--accent);font-weight:normal}.final-section>p:last-child{font-size:10px;color:var(--muted);margin:20px 0 0}.site-footer{margin:0 4.5vw;padding:30px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--rule);font-size:11px}.site-footer .brand{font-size:32px}.site-footer p{color:var(--muted)}
@media(min-width:1300px){.hero-copy{top:125px}.hero-description{margin:20px auto}.hero-copy h1{font-size:76px}.section-shell{padding-left:8vw;padding-right:8vw}}
@media(max-height:760px) and (min-width:701px){.hero-copy{top:100px}.hero-copy h1{font-size:52px}.hero-copy .eyebrow{margin-bottom:8px}.hero-description{margin:12px auto;font-size:12px}.hero-copy .button{min-height:42px;padding:12px 20px}.stage-bottom{bottom:16px}.stage-actions{margin-top:10px}}
@media(max-width:700px){.site-header{height:78px;padding:0 6vw}.site-header nav{gap:20px}.brand{font-size:34px}.nav-how,.nav-start{display:none}.site-header nav{font-size:12px}.hero-copy{top:108px;padding:0 22px}.hero-copy h1{font-size:54px;letter-spacing:-2.5px}.hero-copy h1 br{display:block}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:15px}.hero-description{font-size:12px;margin:17px auto}.hero-description br{display:block}.hero-copy .button{min-height:45px;font-size:11px;padding:13px 22px}.book-stage{min-height:640px}.stage-bottom{left:6vw;right:6vw;bottom:18px}#story-label{font-size:8px;letter-spacing:1.4px}#story-description{font-size:17px;max-width:300px}.stage-actions{margin-top:14px}.note{width:125px;font-size:10px;padding:9px}.note b{font-size:7px}.section-shell{padding:66px 7vw}.reading-section{grid-template-columns:1fr;gap:35px}.section-intro h2,h2{font-size:38px}.section-intro>p:not(.eyebrow){max-width:400px;font-size:13px}.sample-review{padding:25px 22px}.sample-heading{gap:8px}.sample-heading .eyebrow{font-size:7px;letter-spacing:1.2px}.sample-heading>span:last-child{font-size:8px;white-space:nowrap}.sample-review blockquote{font-size:19px;margin-top:27px}.desktop-break{display:none}.sample-note{margin-left:16px}.sample-note>p:last-child{font-size:16px}.lenses-section{padding-top:25px}.lenses-list article{grid-template-columns:30px 1fr;gap:12px;padding:25px 0}.lenses-list article p{grid-column:2}.lenses-list h3{font-size:28px}.workflow-list{grid-template-columns:1fr;gap:25px;margin-top:35px}.workflow-list h3{margin-top:17px}.workflow-list p{max-width:none}.final-section{padding:75px 20px 80px}.final-section h2{font-size:40px}.site-footer{margin:0 7vw;flex-wrap:wrap;gap:20px;padding:27px 0}.site-footer p{order:3;width:100%;margin:0;font-size:10px}.site-footer .brand{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-copy{transform:none}.button:hover{transform:none}}

@media(prefers-reduced-motion:reduce){#book-story{height:100svh}.hero-copy{opacity:1;transform:none}.hero-copy .button{pointer-events:auto}.book-stage{min-height:720px}}

.no-webgl #book-story{height:100svh}.no-webgl #scene{display:none}.no-webgl .book-stage{min-height:620px}

/* Phone composition: readable copy, dedicated book area, shorter scroll. */
.stage-actions{justify-content:center}
@media(max-width:700px){
 html{scroll-padding-top:80px}#book-story{height:210svh}
 .site-header{height:68px;padding:0 22px}.brand{font-size:30px}.site-header nav{font-size:14px}
 .site-header .login-link{min-height:44px;display:flex;align-items:center}
 .book-stage{height:100svh;min-height:580px}.hero-copy{top:86px;padding:0 22px}
 .hero-copy .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:12px}
 .hero-copy h1{font-size:clamp(40px,11.8vw,52px);line-height:1.02;letter-spacing:-1.8px}
 .hero-description{font-size:14px;line-height:1.5;margin:14px auto 18px;max-width:330px}
 .hero-copy .button{font-size:14px;min-height:48px;padding:13px 22px}
 #scene{top:clamp(90px,calc(330px - var(--book-progress)*1100px),330px);bottom:124px;height:calc(100% - clamp(90px,calc(330px - var(--book-progress)*1100px),330px) - 124px)}
 .stage-bottom{bottom:16px;left:24px;right:24px}#story-label{font-size:10px;letter-spacing:1.2px}
 #story-description{font-size:17px;line-height:1.4;max-width:340px}.stage-actions{font-size:12px;margin-top:10px}
 .section-shell{padding:52px 24px}.eyebrow{font-size:10px;letter-spacing:1.4px}
 .section-intro>p:not(.eyebrow),.lenses-list p,.workflow-list p{font-size:15px;line-height:1.7}
 .section-intro h2,h2{font-size:34px;letter-spacing:-1px}
 .sample-heading{flex-wrap:wrap;gap:8px;padding-bottom:18px}
 .sample-heading .eyebrow,.sample-heading>span:last-child,.sample-note .eyebrow{font-size:10px;white-space:normal}
 .sample-review{padding:24px 20px}.sample-review blockquote{font-size:20px;line-height:1.65}
 .sample-note{margin-left:0;padding-left:14px}.sample-note>p:last-child{font-size:18px;line-height:1.55}
 .sample-footnote,.final-section>p:last-child,.site-footer,.site-footer p{font-size:12px}
 .lenses-list article{grid-template-columns:26px 1fr}.final-section h2{font-size:36px}
}
@media(max-width:700px) and (max-height:760px){
 .hero-copy{top:78px}.hero-copy .eyebrow{display:none}.hero-copy h1{font-size:40px}
 .hero-description{font-size:13px;margin:10px auto 12px}
 #scene{top:clamp(80px,calc(270px - var(--book-progress)*950px),270px);height:calc(100% - clamp(80px,calc(270px - var(--book-progress)*950px),270px) - 112px);bottom:112px}
 #story-description{font-size:15px}.stage-actions{margin-top:6px}
}
@media(prefers-reduced-motion:reduce) and (max-width:700px){
 #book-story{height:auto}.book-stage{height:800px;min-height:0}#scene{top:330px;bottom:124px;height:346px}
}
