/* The hero and assembly stage follow the approved visual prototype. */
.story{height:340svh;position:relative}.story-sticky{height:100svh;min-height:700px;position:sticky;top:0;overflow:clip;padding:125px var(--gutter) 25px;background:#edf0f7;display:flex;flex-direction:column;justify-content:center;isolation:isolate}.story-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(#2854ff06 1px,transparent 1px),linear-gradient(90deg,#2854ff06 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,transparent,#000)}.story-aura{position:absolute;width:800px;height:800px;right:-5%;top:-10%;border-radius:50%;background:radial-gradient(circle,#c7d6ff66,transparent 65%);z-index:-1;pointer-events:none}.story-layout{display:grid;grid-template-columns:37% 63%;gap:0;align-items:center;flex:1}.story-copy{position:relative;z-index:3;align-self:center;padding-block:20px}.story-copy>.eyebrow{margin-bottom:35px;font-size:9px;letter-spacing:.08em}.chapter-copy h1,.chapter-copy h2{font-size:clamp(3.7rem,5.6vw,6rem);line-height:1.025;letter-spacing:-.057em;min-height:260px}.chapter-copy p{font-size:16px;color:#657088;max-width:340px;margin:35px 0 27px}.chapter-copy .text-link{margin-top:4px}.chapter-copy em{display:inline-block;padding-bottom:.08em}.chapter-note{display:flex;align-items:center;gap:16px;margin-top:40px;font-size:9px;letter-spacing:.07em;color:#7f8ca5}.chapter-number{font:400 35px/1 VisualManrope,sans-serif;color:#2854ff66}.chapter-copy.chapter-enter{animation:chapter-in .5s cubic-bezier(.2,.8,.2,1) both}@keyframes chapter-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.assembly{position:relative;height:610px;perspective:1500px;transform-style:preserve-3d;--stage-scale:1;z-index:2}.assembly-orbit{position:absolute;width:580px;height:580px;max-width:90%;border:1px solid #2854ff17;border-radius:50%;top:25px;left:7%;transform:rotateX(65deg) rotate(-22deg);pointer-events:none}.connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;stroke:#2854ff;stroke-width:1.2;opacity:.35}.connections path{stroke-dasharray:1500;stroke-dashoffset:1500}.part{position:absolute;left:50%;top:50%;width:240px;border:1px solid #18203312;border-radius:13px;background:white;box-shadow:0 22px 50px #263d6620;transform-origin:center;will-change:transform,opacity;overflow:hidden}.part-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.06em;padding:17px 19px;color:#8790a3}.part-meta b{font-size:20px;font-weight:400;color:#2854ff}.part-note{width:240px;padding-bottom:18px;background:#fcf9ee;transform:translate(-320px,-180px) rotate(-12deg);z-index:4}.part-note h3{font-size:26px;margin:3px 20px 14px;letter-spacing:-.045em;line-height:1.12}.part-note>p{font-size:12px;color:#8d8a7f;margin:0 20px}.note-line{height:2px;background:#f8ab76;width:75px;transform:rotate(-5deg);margin:20px}.part-bottom{font-size:7px;letter-spacing:.08em;color:#a0998b;margin:0 20px}.part-image{width:235px;transform:translate(35px,-240px) rotate(10deg);z-index:5}.part-image img{width:100%;height:170px;object-fit:cover}.image-footer{padding:15px 18px;display:flex;justify-content:space-between;font-size:10px}.part-logic{width:255px;padding-bottom:21px;transform:translate(55px,75px) rotate(8deg);z-index:7;background:#2854ff;color:#fff;box-shadow:0 22px 50px #2854ff33}.part-logic .part-meta{color:#c4ceff}.part-logic .part-meta b{color:#e2e8ff}.flow-item{margin:0 18px;border:1px solid #b8c9ff66;border-radius:6px;display:flex;align-items:center;gap:10px;font-size:10px;padding:12px 10px;background:#ffffff0a}.flow-item i{font-size:8px;font-style:normal;color:#b3c4ff}.flow-item b{margin-left:auto;font-size:11px;font-weight:400;color:#e5f699}.flow-stem{display:block;height:11px;width:1px;background:#b9cbff66;margin-left:46px}.part-layout{width:265px;height:200px;transform:translate(-255px,65px) rotate(-8deg);z-index:6;background:#fefeff}.wire-nav{display:flex;align-items:center;gap:9px;margin:0 20px 16px}.wire-nav i{width:15px;height:15px;background:#dfe6ff;border-radius:50%;margin-right:auto}.wire-nav>span{height:3px;width:27px;background:#d4dbeb}.wire-body{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 20px}.wire-body>div:first-child>span{display:block;height:5px;background:#ced7ed;margin-bottom:7px}.wire-body>div:first-child>span:nth-child(2){width:75%}.wire-body>div:first-child>span:nth-child(3){height:3px;margin-top:12px;width:90%}.wire-body i{display:block;width:46px;height:14px;border-radius:3px;background:#2854ff;margin-top:13px}.wire-image{height:68px;background:#eef1f9;display:grid;place-items:center;border:1px dashed #cbd4ed}.wire-image b{font-weight:400;color:#b5bfd7;font-size:25px}.wire-footer{display:flex;gap:9px;margin:15px 20px}.wire-footer span{flex:1;height:13px;background:#edf0f8}.assembled-browser{position:absolute;width:580px;left:50%;top:50%;transform:translate(-50%,-50%) rotateY(-12deg) rotateX(10deg) scale(.75);opacity:.07;border:1px solid #d4dcf0;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 45px 85px #20336926;will-change:transform,opacity;z-index:3;pointer-events:none}.assembled-browser.interactive{pointer-events:auto;z-index:8}.browser-bar{display:flex;justify-content:space-between;align-items:center;font-size:9px;padding:15px 18px;background:#f7f9fc;color:#a4afc3}.browser-dots{letter-spacing:3px;font-size:7px;color:#c7d0e1}.assembled-site{--sample:#2854ff;--sample-soft:#edf1ff;padding:28px;background:#fff}.assembled-nav{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1723471a;padding-bottom:22px}.assembled-nav b{font-size:15px;color:var(--sample);letter-spacing:-.02em;font-weight:600}.assembled-nav b>span{display:none}.assembled-nav>span{font-size:7px;letter-spacing:.04em;color:#8993a8}.assembled-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:15px;padding:30px 0;align-items:center}.sample-tag{font-size:7px;color:#9aa4b8;letter-spacing:.05em}.assembled-hero h3{font-size:32px;line-height:1.1;margin:15px 0}.assembled-hero em{color:var(--sample)}.assembled-hero p{font-size:9px;line-height:1.6;color:#8e98ae}.assembled-hero button{font-size:9px;padding:12px;border:0;background:var(--sample);color:white;border-radius:5px;margin-top:20px;display:flex;gap:18px;align-items:center;min-height:40px}.assembled-hero img{aspect-ratio:3/4;object-fit:cover;border-radius:80px 80px 8px 8px;background:var(--sample-soft)}.assembled-bottom{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #18203317;padding-top:18px;font-size:7px;color:#8790a5}.assembled-bottom i{font-style:normal;color:var(--sample);margin-left:7px}.assembly-coordinate{position:absolute;font-size:8px;letter-spacing:.09em;color:#8596b3;bottom:8px}.coord-left{left:10px}.coord-right{right:12px}.story-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid #1820331f;padding-top:20px;z-index:8;position:relative}.chapter-controls{display:flex;gap:8px}.chapter-controls button{border:0;border-radius:30px;background:transparent;color:#8b96ab;font-size:12px;padding:12px 17px;min-height:44px;display:flex;align-items:center;gap:10px;transition:background .25s,color .25s}.chapter-controls button>span{font-size:9px}.chapter-controls button[aria-pressed=true]{background:var(--blue);color:white}.story-scroll{font-size:11px;display:flex;gap:25px;align-items:center;color:#8793aa}.story-scroll>span{font-size:20px;color:var(--blue)}
.story{height:265svh;border-top:1px solid var(--line)}.story-sticky{padding:55px var(--gutter) 25px;min-height:680px}.story-layout{grid-template-columns:37% 63%}.story-copy h2{font-size:clamp(3.1rem,4.3vw,5.2rem);line-height:1.13;letter-spacing:-.055em}.story-copy h2 em{font-size:1.08em}.story-description{font-size:15px;line-height:1.85;color:var(--muted);max-width:330px;margin-top:30px}.story-copy>.eyebrow{margin-bottom:32px}.story-try{display:inline-flex;gap:30px;font-size:12px;border-bottom:1px solid var(--line);padding:12px 0;margin-top:20px}.story-try span{color:var(--accent)}.chapter-note{min-height:42px;max-width:345px;line-height:1.6}.chapter-number{font-family:VisualManrope,sans-serif}.story-bottom{flex-shrink:0}.story-bottom{flex-shrink:0}
[data-theme=dark] .story-grid{background-image:linear-gradient(#a3bdff07 1px,transparent 1px),linear-gradient(90deg,#a3bdff07 1px,transparent 1px)}[data-theme=dark] .story-aura{background:radial-gradient(circle,#4969a340,transparent 65%)}
[data-theme=dark] .story-copy>.eyebrow,[data-theme=dark] .chapter-note,[data-theme=dark] .story-scroll{color:#a6b5cf}[data-theme=dark] .chapter-number{color:#a9bfff}[data-theme=dark] .assembly-orbit{border-color:#a3b9ea20}[data-theme=dark] .connections{stroke:#9bb5fa}[data-theme=dark] .story-bottom{border-color:var(--line)}[data-theme=dark] .chapter-controls button{color:#a9b8d1}[data-theme=dark] .chapter-controls button[aria-pressed=true]{background:#587bd7;color:#fff}
.part,.assembled-browser{color:#182033;color-scheme:light}
.robi-window{border:1px solid #f3e8da35;border-radius:11px;box-shadow:0 45px 90px #0005}.robi-window .browser-bar{padding:11px 17px;font-size:8px;background:#ece8df;color:#85827b;border:0}.robi-window .browser-dots{color:#aaa69b;font-size:6px}
.robi-site{--sample:#edbc92;--sample-soft:#142a2b;padding:0;background:var(--sample-soft);color:#f5f2e9;font-family:VisualManrope,Arial,sans-serif}.robi-nav{height:68px;padding:0 27px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #ece9dc20;position:relative;z-index:3}.robi-nav>strong{display:flex;gap:8px;align-items:center;font:450 25px/1 VisualManrope,Arial,sans-serif;letter-spacing:-.075em}.robi-nav>strong>svg{width:25px;height:25px;fill:none;stroke:var(--sample);stroke-width:1}.robi-nav>strong>span{font:12px Arial,sans-serif;color:var(--sample);align-self:start;margin:0 0 0 -3px}.robi-nav>span{font-size:6px;letter-spacing:.13em;color:#ced5cd}.robi-nav>.robi-nav-note{font-size:5px;letter-spacing:.09em;display:flex;gap:12px;align-items:center}.robi-nav-note>i{font:18px/1 VisualManrope,sans-serif;color:var(--sample)}
.robi-hero{position:relative;min-height:355px;overflow:hidden;background:var(--sample-soft)}.robi-portrait{position:absolute;inset:0 0 0 auto;width:73%;overflow:hidden}.robi-portrait>img{width:100%;height:100%;object-fit:cover;object-position:57% 48%}.robi-portrait::after{content:'';position:absolute;inset:-1px;background:linear-gradient(90deg,var(--sample-soft) 0%,transparent 55%),linear-gradient(0deg,var(--sample-soft),transparent 28%)}
.robi-copy{position:relative;z-index:1;padding:35px 0 34px 28px;width:64%;pointer-events:none}.robi-kicker{font-size:6px;letter-spacing:.14em;color:#b6c4bd;display:flex;gap:8px;align-items:center;margin-bottom:22px}.robi-kicker>i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--sample);box-shadow:0 0 10px #f3cf9b55}.robi-copy h3{font:400 39px/1.04 VisualManrope,Arial,sans-serif;letter-spacing:-.057em;color:#f3f2e9;margin:0 0 20px}.robi-copy h3>span{color:var(--sample);white-space:nowrap}.robi-copy>p{font:400 8px/1.9 VisualManrope,sans-serif;color:#bfcbc4;margin:0;max-width:235px}.robi-copy>button{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:43px;padding:12px 15px;width:195px;margin-top:25px;background:#f0e8d8;color:#273a34;border:1px solid #f3ebdd;border-radius:30px;font:500 9px/1.3 VisualManrope,sans-serif;transition:background .25s}.robi-copy>button>b{font-size:18px;font-weight:400;line-height:1}.robi-copy>button:hover{background:var(--sample)}.robi-copy>button:focus-visible{outline:2px solid var(--sample);outline-offset:5px}.robi-image-note{position:absolute;right:20px;bottom:22px;z-index:1;color:#dfe4d9;font-size:5px;letter-spacing:.1em;writing-mode:vertical-rl;text-shadow:0 1px 5px #000}
.robi-bottom{display:grid;grid-template-columns:1fr 1fr;background:#eee9df;color:#27352e;min-height:113px}.robi-origin{display:flex;align-items:center;gap:14px;padding:22px 22px 22px 27px;border-right:1px solid #52635422}.robi-origin>img{width:59px;height:70px;object-fit:cover;object-position:center;border:1px solid #6c725820;transform:rotate(-5deg);box-shadow:0 4px 9px #35442612}.robi-origin>div{flex:1}.robi-origin span,.robi-manifesto>span:first-child{font-size:5px;letter-spacing:.11em;color:#7a8478;white-space:nowrap}.robi-origin p{font:400 14px/1.3 VisualManrope,sans-serif;letter-spacing:-.035em;margin:9px 0 0}.robi-origin>b{font:400 18px/1 VisualManrope,sans-serif;align-self:end;color:#75806e}.robi-manifesto{padding:25px 22px;display:flex;flex-direction:column;justify-content:center}.robi-manifesto>p{font:400 11px/1.6 VisualManrope,sans-serif;letter-spacing:-.02em;margin:10px 0 12px}.robi-signature{font-size:5px;letter-spacing:.16em;color:#92978b}
@media(max-width:1100px){.robi-copy h3{font-size:36px}.robi-nav{padding-inline:23px}.robi-copy{padding-left:24px}.robi-origin{gap:10px;padding-left:22px}.robi-origin p{font-size:13px}.robi-manifesto{padding-inline:18px}}
@media(max-width:760px){.robi-copy h3{font-size:39px}.robi-copy{padding-left:28px}.robi-copy>button{min-height:82px;width:220px;font-size:12px;padding-inline:18px}.robi-copy>button>b{font-size:23px}.robi-origin p{font-size:14px}.robi-hero{min-height:395px}.robi-nav{padding-inline:27px}}
@media(max-width:370px){.robi-copy>button{min-height:100px}}
/* Keep the real checkout and audience controls; match the prototype's hero proportions. */
.hero:not(.business-view) {
  --hero-ink: #182033;
  --hero-muted: #657088;
  color: var(--hero-ink);
  background: radial-gradient(ellipse at 75% 32%, #bfd0ff55, transparent 58%), #edf0f7;
  padding: 42px max(4.5vw, calc((100vw - 1640px)/2)) 24px;
  min-height: calc(100svh - 172px);
  display: flex;
  flex-direction: column;
}
[data-theme=dark] .hero {
  --hero-ink: #e8ebf2;
  --hero-muted: #9da9bc;
  background: radial-gradient(ellipse at 75% 28%, #3d56853d, transparent 62%), #10151e;
}
.hero .hero-topline { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.hero .hero-topline .eyebrow { color: var(--hero-muted); font-size: 10px; letter-spacing: .13em; }
.hero .hero-topline .eyebrow::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 10px; border-radius: 50%; background: #ed986b; vertical-align: 1px; }
.hero .hero-main { flex: 1; grid-template-columns: minmax(0, .83fr) minmax(0, 1.17fr); gap: clamp(32px, 4.2vw, 78px); align-items: center; padding: 8px 0 36px; }
.hero .hero-copy { padding: 20px 0 24px; }
.hero #hero-title { font-family: VisualManrope, Arial, sans-serif; font-size: clamp(42px, 4.25vw, 78px); line-height: 1.12; letter-spacing: -.065em; margin: 0; }
.hero #hero-title em { display: block; font-family: VisualCormorant, Georgia, serif; font-size: clamp(36px, 3.4vw, 59px); font-style: italic; font-weight: 500; letter-spacing: -.035em; line-height: 1.02; margin: 0 0 19px; color: #5677ca; }
.hero #hero-title span { display: block; font-family: VisualManrope, Arial, sans-serif; font-size: clamp(34px, 3.7vw, 67px); font-weight: 400; line-height: 1.13; letter-spacing: .012em; text-transform: uppercase; margin: 0; color: var(--hero-ink); }
[data-theme=dark] .hero #hero-title em { color: #a9bfff; }
.hero .hero-description { color: var(--hero-ink); font-size: clamp(18px, 1.45vw, 25px); line-height: 1.5; letter-spacing: -.035em; margin: 32px 0 0; }
.hero .hero-subline { color: var(--hero-muted); font-size: 15px; line-height: 1.8; max-width: 390px; margin: 16px 0 0; }
.hero .actions { margin-top: 29px; gap: 24px; }
.hero .actions .button { background: #486bd2; border-radius: 11px; min-height: 58px; padding: 18px 24px; font-size: 14px; box-shadow: 0 8px 30px #557ce52b; }
.hero .actions .text-link { color: var(--hero-ink); font-size: 12px; }
.hero .visual-world .world-view { aspect-ratio: 1.43; border: 1px solid #c8d7f133; border-radius: 20px; box-shadow: 0 28px 70px #050c2433; }
.hero .world-shade { position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(180deg, #09111d26, transparent 22%, transparent 82%, #09111d24); }
.hero .world-state { top: 17px; font-size: 10px; letter-spacing: .08em; padding: 9px 13px; background: #111e30ba; border-color: #ffffff55; }
.hero .world-divider svg { width: 27px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.hero .world-divider b { width: 52px; height: 52px; box-shadow: 0 4px 22px #08142955, 0 0 0 5px #ffffff22; }
.hero .world-drag-hint { position: absolute; z-index: 3; bottom: 15px; left: 50%; transform: translateX(-50%); color: #fff; background: #101b2de6; border: 1px solid #ffffff24; border-radius: 20px; padding: 8px 15px; font-size: 12px; white-space: nowrap; pointer-events: none; transition: opacity .2s; }
.hero .world-view.world-explored .world-drag-hint { opacity: 0; }
.hero .visual-world figcaption { padding: 16px 0 0; }
.hero .world-buttons { gap: 12px; }
.hero .world-buttons button { flex-direction: row; align-items: center; justify-content: flex-start; gap: 14px; text-align: left; min-height: 86px; padding: 15px 19px; border-radius: 14px; background: #e5ebf7; color: #23324b; border-color: #8697b44d; transition: transform .2s, box-shadow .2s; }
.hero .world-buttons button[data-world-view="0"] { background: #486bd2; color: #fff; border-color: #90acff88; }
.hero .world-buttons button:hover { transform: translateY(-3px); box-shadow: 0 7px 22px #07132b26; }
.hero .world-button-icon { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #2538570d; font-size: 25px; }
.hero [data-world-view="0"] .world-button-icon { background: #ffffff20; }
.hero .world-button-copy { display: flex; flex-direction: column; gap: 4px; }
.hero .world-buttons button strong { color: inherit; font-size: 19px; font-weight: 600; letter-spacing: -.025em; }
.hero .world-buttons button small { color: inherit; font-size: 12px; line-height: 1.4; opacity: .85; margin: 0; }
.hero .world-button-indicator { flex: none; width: 8px; height: 8px; margin-left: auto; border: 1px solid currentColor; border-radius: 50%; opacity: .45; }
.hero .world-buttons button[aria-pressed=true] .world-button-indicator { background: currentColor; opacity: 1; }
[data-theme=dark] .hero .world-buttons button[data-world-view="100"] { background: #263449; color: #f0f4fc; border-color: #60759680; }
.hero .visual-world figcaption .world-credit { color: var(--hero-muted); font-size: 11px; line-height: 1.6; margin: 13px 0 0; }
.world-accessible-help { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.hero .hero-proof { border-top: 1px solid var(--line); }

/* The assembled site is a complete destination; drafts converge towards it. */
.story { --gutter: max(4.5vw, calc((100vw - 1640px)/2)); --ink: #182033; --muted: #657088; --blue: #2854ff; --line: #18203325; --paper: #edf0f7; color: var(--ink); }
.story .story-sticky { background: #edf0f7; }
[data-theme=dark] .story { --ink: #e8ebf2; --muted: #9da9bc; --blue: #a9bfff; --line: #a8b8d127; --paper: #10151e; }
[data-theme=dark] .story .story-sticky { background: #10151e; }
.story .story-copy h2 { font-family: VisualManrope, Arial, sans-serif; margin: 0; }
.story .sketch-paper { border-radius: 5px 9px 7px 4px; background: #f5f1e7; border: 1px solid #d9d2c3; box-shadow: 0 22px 50px #0002; color: #555d67; }
.story .part-meta { font-size: 8px; letter-spacing: .08em; }
.story .sketch-paper .part-meta { color: #878174; }
.story .sketch-paper .part-meta b { color: #7d889b; }
.story .draft-questions { padding: 0 23px; transform: rotate(-3deg); }
.story .draft-questions p { font: italic 500 31px/1.05 VisualCormorant, Georgia, serif; margin: 8px 0; color: #4f617b; letter-spacing: -.02em; }
.story .draft-questions p:nth-child(2) { transform: rotate(2deg); }
.story .part-note .note-line { background: #bc9e79; height: 1px; margin: 16px 23px; }
.story .part-note .part-bottom { font-size: 6px; letter-spacing: .06em; }
.story .part-image { background: #f8f6ef; border-radius: 7px 4px 8px 6px; }
.story .part-image img { height: 170px; object-fit: cover; object-position: center; }
.story .part-image .image-footer { color: #777d87; font-size: 9px; }
.story .part-logic { width: 255px; background: #e9edf2; padding-bottom: 12px; box-shadow: 0 22px 50px #0002; color: #555d67; }
.story .part-logic .part-meta { color: #7c8796; }
.story .part-logic .part-meta b { color: #7588a2; }
.story .draft-flow { display: block; margin: 0 13px; width: calc(100% - 26px); height: 165px; overflow: visible; }
.story .draft-flow path { stroke: #8794a7; stroke-width: 1.3; stroke-linejoin: round; }
.story .draft-flow text { fill: #647891; font: italic 29px VisualCormorant, Georgia, serif; }
.story .part-layout { height: 215px; width: 265px; background: #f9f6ef; }
.story .draft-wire { width: 100%; height: 151px; display: block; }
.story .draft-wire path { stroke: #8a8d8e; stroke-width: 1.2; stroke-linecap: round; }
.story .draft-wire text { fill: #8190a3; font: italic 17px VisualCormorant, Georgia, serif; }
.story #visual-lab-title em { display: block; font: italic 500 clamp(36px, 3.4vw, 59px)/1.02 VisualCormorant, Georgia, serif; letter-spacing: -.035em; color: var(--blue); margin: 0 0 19px; }
.story #visual-lab-title span { display: block; font: 400 clamp(32px, 3.5vw, 60px)/1.13 VisualManrope, Arial, sans-serif; letter-spacing: .012em; text-transform: uppercase; color: var(--ink); }
.story .sketch-paper { color: #182033; }
.story .part-logic { color: #fff; }
.story .assembled-browser { color: #182033; }
.story .chapter-controls button { cursor: pointer; }
.story .scene-theme { cursor: pointer; }
.story .story-bottom { flex-shrink: 0; }

@media (min-width: 761px) and (max-width: 1100px) {
  .hero { padding-top: 35px; }
  .hero .hero-main { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 27px; }
  .hero #hero-title em { font-size: 3.8vw; }
  .hero #hero-title span { font-size: 3.65vw; }
  .hero .hero-description { font-size: 18px; }
  .hero .hero-subline { font-size: 13px; }
  .hero .actions { gap: 10px; }
  .hero .actions .button { font-size: 12px; padding: 16px 19px; min-height: 52px; }
  .hero .visual-world .world-view { aspect-ratio: 1.13; }
  .hero .world-buttons button { min-height: 80px; padding: 14px 12px; gap: 9px; }
  .hero .world-button-icon { display: none; }
  .hero .world-buttons button strong { font-size: 18px; }
  .hero .world-buttons button small { font-size: 11px; }
  .story #visual-lab-title em { font-size: 3.8vw; }
  .story #visual-lab-title span { font-size: 3.45vw; }
  .story .assembly { --stage-scale: .8; }
  .story .assembled-browser { width: 530px; }
}
@media (max-width: 760px) {
  .hero { padding: 28px 6vw 22px; min-height: 0; display: block; }
  .hero .hero-main { display: flex; flex-direction: column; align-items: stretch; gap: 27px; padding: 0 0 25px; }
  .hero .hero-copy { padding: 0; }
  .hero .hero-topline { margin-bottom: 20px; }
  .hero .hero-topline .micro { display: none; }
  .hero #hero-title em { font-size: clamp(31px, 8.6vw, 48px); margin-bottom: 13px; }
  .hero #hero-title span { font-size: clamp(29px, 8.6vw, 49px); }
  .hero .hero-description { font-size: 18px; margin-top: 22px; }
  .hero .hero-subline { font-size: 13px; line-height: 1.7; margin-top: 12px; }
  .hero .actions { margin-top: 21px; gap: 14px; }
  .hero .actions .button { min-height: 52px; font-size: 12px; padding: 15px 18px; }
  .hero .visual-world .world-view { aspect-ratio: 1.25; border-radius: 15px; }
  .hero .world-buttons button { min-height: 78px; padding: 12px; gap: 10px; }
  .hero .world-button-icon { display: none; }
  .hero .world-buttons button strong { font-size: 19px; }
  .hero .world-buttons button small { font-size: 11px; }
  .hero .world-drag-hint { font-size: 11px; padding: 7px 12px; bottom: 12px; }
  .hero .visual-world figcaption .world-credit { font-size: 10px; }
  .story { height: 245svh; }
  .story .story-sticky { min-height: 660px; padding: 32px var(--gutter) 18px; }
  .story .story-layout { display: flex; flex-direction: column; align-items: stretch; }
  .story .story-copy { padding: 0; align-self: stretch; }
  .story .story-description { font-size: 12px; line-height: 1.7; max-width: 340px; margin-top: 18px; }
  .story .chapter-note { margin-top: 20px; min-height: 32px; font-size: 7px; }
  .story .chapter-number { font-size: 26px; }
  .story .story-try { display: none; }
  .story .assembly { height: 320px; min-height: 245px; margin-top: 5px; --stage-scale: .46; }
  .story .story-bottom { margin-top: 4px; }
  .story .story-scroll { display: none; }
  .story .chapter-controls { width: 100%; justify-content: space-between; }
  .story .chapter-controls button { font-size: 9px; padding: 10px 6px; gap: 5px; }
  .story #visual-lab-title em { font-size: clamp(31px, 8.6vw, 48px); margin-bottom: 13px; }
  .story #visual-lab-title span { font-size: clamp(29px, 8.6vw, 49px); }
}
@media (max-width: 370px) { .story .assembly { --stage-scale: .39; min-height: 235px; } }
body.business-view .hero { display: block; background: var(--bg); padding: 60px max(4vw, calc((100vw - 1380px)/2)) 34px; }
body.business-view .hero .hero-main { grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: clamp(30px, 4.3vw, 80px); padding: 28px 0 50px; }
body.business-view .hero #hero-title { font-size: clamp(2.65rem, 4.7vw, 5.7rem); line-height: 1.09; }
body.business-view .hero #hero-title span { font-size: .72em; line-height: 1.09; }
body.business-view .hero .hero-description { font-size: clamp(1.1rem, 1.5vw, 1.4rem); margin: 30px 0 12px; }
body.business-view .hero .hero-subline { font-size: .95rem; }
@media (max-width: 850px) { body.business-view .hero .hero-main { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .story { height: auto; }
  .story .story-sticky { position: relative; height: auto; }
}
