:root{--bg:#F8F7F5;--ink:#1E1E1E;--red:#F9423A;--secondary:#616162;--line:#E2DFD9}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #73566F;outline-offset:6px}h1,h2,p{margin:0}.skip{position:fixed;top:-60px;left:20px;background:white;padding:12px;z-index:50}.skip:focus{top:12px}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:linear-gradient(var(--bg),#f8f7f500)}.brand{font:900 21px/1 Arial,sans-serif;letter-spacing:-.8px}nav{display:flex;align-items:center;gap:38px;font-size:13px}nav a{padding:12px 0}nav .download{background:var(--ink);color:white;border-radius:5px;padding:13px 18px;display:flex;gap:32px;align-items:center;min-height:44px}.download:hover,.button:hover{background:#353535}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}#journey{height:580svh}.sticky-scene{height:100svh;position:sticky;top:0;overflow:hidden;background:var(--bg)}#world{position:absolute;inset:0;touch-action:pan-y;user-select:none}#world canvas{display:block;width:100%;height:100%;outline:none}.story-copy{position:absolute;left:48px;top:51%;transform:translateY(-32%);width:320px;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:-.02em;font-weight:550}.story-copy .eyebrow{color:var(--red);margin-bottom:22px}.story-copy h1{font-size:clamp(34px,3.2vw,48px);letter-spacing:-.055em;line-height:1.23;white-space:pre-line;font-weight:730}.story-copy>p:last-child{font-size:14px;line-height:1.85;color:var(--secondary);margin-top:25px;white-space:pre-line}.fallback{display:block;position:absolute;inset:0}.world-ready .fallback{display:none}.fallback img{width:100%;height:100%;object-fit:cover}.no-webgl .fallback{display:block}.no-webgl #journey{height:100svh}.product{padding:130px 0 0;background:#fff;position:relative;overflow:hidden}.product .eyebrow{color:var(--red)}h2{font-size:clamp(40px,5.1vw,72px);line-height:1.2;font-weight:720;letter-spacing:-.055em}.product h2{margin-top:25px}.intro-line{display:flex;justify-content:space-between;align-items:end;margin:30px 0 72px;gap:40px}.intro-line p{font-size:20px;line-height:1.7;color:var(--secondary)}.button{display:inline-flex;align-items:center;gap:54px;justify-content:space-between;padding:18px 26px;background:var(--ink);color:white;min-height:56px;border-radius:5px;font-size:14px;font-weight:550}.product-picture{border:1px solid var(--line);border-radius:12px 12px 0 0;box-shadow:0 20px 70px #1e1e1e10;max-height:650px;overflow:hidden}.product-picture img{width:100%;height:auto;display:block}.benefits{padding-block:130px;display:grid;grid-template-columns:1fr 1fr;gap:140px}.benefit .eyebrow{color:var(--secondary);margin-bottom:25px}.benefit h2{font-size:48px}.benefit>p:last-child{font-size:16px;line-height:1.9;color:var(--secondary);margin-top:28px;max-width:36ch}.private{display:flex;gap:100px;align-items:center;padding:60px 0 140px}.private-mark{width:240px;height:240px;border-radius:60px;display:grid;place-items:center;background:#EDEBE7;color:var(--secondary);font-size:68px;transform:rotate(-8deg);box-shadow:inset 0 1px white,0 10px 0 #e2dfd9}.private h2{font-size:45px;margin:20px 0}.private p:last-child{font-size:16px;color:var(--secondary);line-height:1.85}.closing{background:var(--red);padding:100px 0}.closing h2{margin:28px 0 42px}footer{padding-block:34px;display:flex;justify-content:space-between;gap:30px;align-items:center}footer span{font-size:12px;color:var(--secondary)}
@media(min-width:1600px){.story-copy{left:4vw;width:370px}.site-header{padding:0 4vw}}
@media(max-width:1100px){.story-copy{left:30px;width:270px}.story-copy h1{font-size:35px}.story-copy>p:last-child{font-size:12px}.site-header{padding:0 30px}.wrap{width:calc(100% - 64px)}.benefits{gap:70px}.benefit h2{font-size:39px}}
@media(max-width:760px){.site-header{height:70px;padding:0 20px}.brand{font-size:17px}nav>a:first-child{display:none}nav .download{font-size:11px;gap:18px;padding:11px 13px}.story-copy{left:24px;top:auto;bottom:42px;transform:none;width:calc(100% - 48px)}.story-copy h1{font-size:34px}.story-copy .eyebrow{margin-bottom:14px;font-size:11px}.story-copy>p:last-child{font-size:13px;line-height:1.7;margin-top:17px}#journey{height:500svh}.wrap{width:calc(100% - 40px)}.product{padding-top:76px}h2{font-size:39px}.intro-line{display:block;margin:24px 0 40px}.intro-line p{font-size:16px}.intro-line .button{margin-top:26px}.product-picture{width:750px}.product-picture img{width:750px;transform:translateX(-210px)}.benefits{grid-template-columns:1fr;padding-block:76px;gap:64px}.benefit h2{font-size:35px}.benefit>p:last-child{font-size:14px;margin-top:20px}.private{gap:30px;padding:0 0 76px}.private-mark{width:76px;height:90px;flex:none;font-size:30px;border-radius:20px}.private h2{font-size:29px}.private .eyebrow{font-size:10px}.private p:last-child{font-size:12px}.closing{padding:72px 0}.closing h2{font-size:38px}.button{padding:16px 20px;gap:35px;font-size:13px}footer{flex-wrap:wrap;gap:20px}footer span{font-size:11px}}
@media(prefers-reduced-motion:reduce){#journey{height:300svh}}

/* Live product components: no scaled or cropped screenshot. */
.product-demo{margin-bottom:70px;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 24px 70px #2527250b;background:var(--bg)}
.demo-caption{padding:24px 28px;display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid var(--line);background:#fff}.demo-caption strong{display:block;font-size:19px;letter-spacing:-.04em}.demo-caption span{display:block;margin-top:9px;font-size:14px;line-height:1.65;color:var(--secondary)}.demo-controls{display:flex;gap:8px;flex:none}.demo-controls button,.demo-step{font:inherit;cursor:pointer;color:var(--secondary);border:0;background:transparent;min-height:44px;padding:10px 14px;font-size:12px}.demo-controls button:hover,.demo-step:hover{background:#eeece7;color:var(--ink)}button:focus-visible{outline:2px solid var(--red);outline-offset:-3px}#product-film{display:block;border:0;width:100%;height:720px;background:var(--bg);pointer-events:none}.demo-chapters{display:flex;border-top:1px solid var(--line);padding:6px 18px;gap:10px;background:white}.demo-step{position:relative}.demo-step[aria-current=true]{color:var(--ink);font-weight:650}.demo-step[aria-current=true]:after{content:'';position:absolute;bottom:-6px;left:14px;right:14px;height:2px;background:var(--red)}
@media(max-width:760px){.demo-caption{padding:20px;display:block}.demo-caption strong{font-size:17px}.demo-caption span{font-size:12px}.demo-controls{margin:12px 0 -8px}.demo-controls button{padding-left:0;padding-right:20px}#product-film{height:610px}.demo-chapters{padding:5px 4px;gap:0;justify-content:space-between}.demo-step{font-size:11px;padding:10px 8px}.product-demo{margin-bottom:40px;border-radius:8px}}

#context-story{height:480svh;background:var(--bg)}.context-sticky{height:100svh;position:sticky;top:0;overflow:hidden}#context-world{position:absolute;inset:0}#context-world canvas{display:block}.context-copy{position:absolute;top:45%;left:4vw;width:340px;pointer-events:none}.context-copy .eyebrow{color:var(--red);margin-bottom:22px}.context-copy h2{font-size:40px;white-space:pre-line;line-height:1.3;letter-spacing:-.055em}.context-copy>p:last-child{font-size:14px;line-height:1.9;white-space:pre-line;color:var(--secondary);margin-top:24px}.context-static{display:none}.context-fallback{height:100svh!important}.context-fallback .context-static{display:block;position:absolute;top:25%;left:8%;right:8%;text-align:center;font-size:24px;color:var(--red)}
@media(max-width:760px){.context-copy{top:auto;bottom:44px;left:24px;width:calc(100% - 48px)}.context-copy h2{font-size:30px}.context-copy>p:last-child{font-size:12px;margin-top:16px}.context-copy .eyebrow{font-size:11px;margin-bottom:14px}#context-story{height:400svh}}@media(prefers-reduced-motion:reduce){#context-story{height:300svh}}

/* One pinned composition per viewport, with deliberate reading holds. */
#journey{height:760svh}.intro-overlay{position:absolute;inset:0;height:100%;padding:0;display:flex;align-items:center;background:var(--bg);opacity:0;visibility:hidden;z-index:3;will-change:opacity}.intro-overlay .wrap{transform:translateY(0);}.intro-overlay .intro-line{margin-bottom:0}.intro-overlay h2{font-size:clamp(44px,6vw,84px)}#context-story{height:600svh}.gather-label{position:absolute;right:12%;bottom:13%;font-size:17px;font-weight:650;color:var(--ink);background:var(--bg);padding:8px 14px;opacity:0;pointer-events:none}
#details-story{height:360svh}.details-sticky{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.4fr);gap:6vw;align-items:center;padding:100px 4vw 50px;overflow:hidden}.details-copy h2{font-size:clamp(32px,3.5vw,52px);white-space:pre-line;line-height:1.3}.details-copy .eyebrow{color:var(--secondary);margin-bottom:24px}.details-copy>p:last-child{font-size:16px;line-height:1.9;color:var(--secondary);margin-top:26px;max-width:34ch;white-space:pre-line}.details-example{min-width:0;will-change:transform,opacity}.example-caption{font-size:12px;color:var(--secondary);margin-bottom:15px}.example-window{height:540px;overflow:hidden;border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 70px #25272512;background:var(--bg)}#detail-film{border:0;width:100%;height:100%;display:block;pointer-events:none}.private{min-height:100svh;padding-top:100px;padding-bottom:100px;justify-content:center}.closing{min-height:90svh;display:flex;align-items:center}
@media(max-width:760px){#journey{height:680svh}.intro-overlay .wrap{width:calc(100% - 48px)}.intro-overlay h2{font-size:43px}.intro-overlay .intro-line{margin-top:30px}.gather-label{right:24px;bottom:37%;font-size:12px}#context-story{height:550svh}#details-story{height:360svh}.details-sticky{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:24px;padding:90px 24px 25px}.details-copy h2{font-size:30px}.details-copy .eyebrow{font-size:11px;margin-bottom:12px}.details-copy>p:last-child{font-size:12px;line-height:1.7;margin-top:14px;max-width:100%}.example-window{height:42svh;min-height:240px}.example-caption{font-size:10px;margin-bottom:8px}.private{min-height:100svh;gap:24px}.private h2{font-size:28px}}@media(prefers-reduced-motion:reduce){#journey{height:540svh}#context-story{height:420svh}#details-story{height:260svh}}

.gather-label{left:65%;right:auto;bottom:17%;transform:translateX(-50%);white-space:nowrap}@media(max-width:760px){.gather-label{left:50%;bottom:37%}}

@media(max-width:760px){.example-window{height:52svh;min-height:410px}.details-sticky{gap:18px;padding-top:80px;padding-bottom:20px}.details-copy>p:last-child{margin-top:10px}}

#details-story{height:620svh}@media(max-width:760px){#details-story{height:560svh}.example-window{height:55svh;min-height:435px}.details-copy h2{font-size:28px}}@media(prefers-reduced-motion:reduce){#details-story{height:460svh}}

@media(min-width:1100px){.details-sticky{grid-template-columns:minmax(260px,.7fr) minmax(0,1.5fr);gap:4vw}.example-window{height:590px}}

@media(max-width:760px){.example-window{height:60svh;min-height:510px}.details-sticky{padding-top:72px;gap:14px}.details-copy h2{font-size:26px}.details-copy .eyebrow{margin-bottom:8px}}
/* Final typography, contrast and keyboard pass. Brand surfaces keep the source red. */
.story-copy .eyebrow,.context-copy .eyebrow,.product .eyebrow{color:#B52D26}
.language-switch{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:650}
.site-header nav{gap:22px}.site-header{background:linear-gradient(var(--bg) 25%,#f8f7f500)}
h1,h2{text-wrap:balance}html[lang=en] h1,html[lang=en] h2{letter-spacing:-.045em}html[lang=en] .story-copy{width:350px}html[lang=en] .story-copy h1{font-size:42px}html[lang=en] .context-copy{width:365px}html[lang=en] .context-copy h2{font-size:37px}html[lang=en] .details-copy h2{font-size:42px}
@media(max-width:760px){.site-header nav{gap:6px}.language-switch{font-size:11px}.site-header{padding-inline:16px}html[lang=en] .story-copy,html[lang=en] .context-copy{width:calc(100% - 48px)}html[lang=en] .story-copy h1,html[lang=en] .context-copy h2{font-size:29px}html[lang=en] .details-copy h2{font-size:25px}html[lang=en] .details-copy>p:last-child{font-size:12px}.closing h2{font-size:36px}.details-sticky{padding-top:74px;padding-bottom:16px}}
@media(prefers-reduced-motion:reduce){.details-example{transform:none!important}}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
