/* Original imagery stays sharp, complete and proportionate to its purpose. */
.spotlight-image{height:auto;aspect-ratio:4/3;background:#f2e1a4}.spotlight-image img{object-fit:contain;object-position:center}.spotlight-image[data-open=flower]{background:#f2f2ed}.spotlight-image[data-open=bento]{background:#c9e3dd}.spotlight-image:hover img{transform:none}
.project-card.featured{grid-template-columns:1.06fr 1fr}.project-card.featured .project-media{height:auto;aspect-ratio:4/3}.project-media{height:auto;aspect-ratio:4/3}.project-media img{object-fit:contain;object-position:center}.project-card:hover .project-media img{transform:scale(1.015)}.project-card[data-project=dispenser] .project-media{background:#f2e1a4}.project-card[data-project=flower] .project-media{background:#f1f1ed}.project-card[data-project=blade] .project-media{background:#b0b0b0}.project-card[data-project=aerosling] .project-media{background:#a7a7a7}.project-card[data-project=coupe] .project-media{background:#e8e8e6}.project-card[data-project=meta] .project-media{background:#e9e3db}.project-card[data-project=bento] .project-media{background:#c9e3dd}
.case-hero{grid-template-columns:1fr 1.08fr;gap:55px}.case-hero-image{height:auto;max-height:600px;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:12px}.hero-blade .case-hero-image{height:580px;background:#b0b0b0}.hero-aerosling .case-hero-image{height:560px;background:#a7a7a7}.hero-meta .case-hero-image{background:#e9e3db}.case-images{align-items:start;gap:24px}.case-images img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:8px}.asset-enlarge{padding:0;display:block;width:100%;background:#f0efea;border-radius:9px;position:relative;overflow:hidden}.asset-enlarge>span{position:absolute;bottom:10px;right:10px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#fffffff0;font-size:18px;opacity:0;transition:opacity .2s}.asset-enlarge:hover>span,.asset-enlarge:focus-visible>span{opacity:1}.case-images figcaption{margin-top:11px;line-height:1.7}.gallery-dispenser .figure-0,.gallery-flower .figure-0,.gallery-aerosling .figure-0{grid-column:1/-1}.gallery-flower .figure-0 .asset-enlarge{background:#efeee5}.gallery-flower .figure-0 img{height:630px;object-fit:contain;padding:30px}.gallery-flower .figure-1 img,.gallery-flower .figure-2 img{height:430px;padding:25px;background:#efeee5}.gallery-meta{grid-template-columns:1.25fr .75fr;align-items:center}.gallery-meta .figure-0 img{height:470px;object-fit:contain;background:white}.gallery-meta .figure-1 img{max-height:530px;object-fit:contain}.enlarged-asset{margin:0;padding:20px 30px;background:#efeee7}.enlarged-asset img{width:100%;height:auto;max-height:77vh;object-fit:contain}.enlarged-asset figcaption{font-size:12px;color:var(--muted);line-height:1.6;margin-top:16px}
.compare{aspect-ratio:1.47;background:#e5e4dc}.compare img{object-fit:contain;padding:16px 25px 48px}.compare-labels{bottom:12px}.compare-labels span{font-size:10px;background:#fffffff2}.compare-line span{box-shadow:0 3px 12px #0002}
/* Dispenser: the full sequence and the architecture behind it. */
.dispenser-explorer{display:grid;grid-template-columns:240px 1fr;gap:28px;border:1px solid #dedecf;border-radius:14px;padding:24px;background:#f0eee3}.dispenser-step-controls{display:flex;flex-direction:column;gap:9px}.dispenser-step-controls button{background:transparent;border:1px solid #d2d2c2;border-radius:9px;text-align:left;display:grid;grid-template-columns:27px 1fr 15px;gap:10px;align-items:center;min-height:76px;padding:15px;font-size:12px;line-height:1.5}.dispenser-step-controls button>span{font-family:var(--serif);font-size:23px;color:#8f945d}.dispenser-step-controls button>b{font-size:17px;font-weight:400}.dispenser-step-controls button[aria-pressed=true]{background:#e5ecb9;border-color:#a6b279}.dispenser-step-controls button[aria-pressed=true]>span{color:#536324}.dispenser-step-display{min-width:0}.step-picture{height:340px;display:grid;place-items:center;background:white;border-radius:9px;overflow:hidden}.step-picture img{width:100%;height:100%;object-fit:contain;padding:15px}.step-description{padding:20px 2px 2px}.step-description h3{font-size:24px;letter-spacing:-.8px;line-height:1.2;margin:10px 0}.step-description>p:last-child{font-size:13px;color:var(--muted);line-height:1.8;max-width:620px}.module-story{margin-top:65px}.module-story>h3{font-size:34px;letter-spacing:-1.2px;line-height:1.2;margin-top:16px;margin-bottom:28px}.module-figures{display:grid;grid-template-columns:1fr 1fr;gap:24px}.module-figures figure{margin:0}.module-figures img{width:100%;height:290px;object-fit:contain;background:#eeede5;border-radius:10px;padding:20px}.module-figures figcaption{font-size:12px!important;line-height:1.8!important}.module-figures figcaption b{font-size:9px;letter-spacing:1px;display:block;margin-bottom:9px;color:var(--ink)}.module-range{margin-top:30px}.module-range img{width:100%;height:auto;background:white;border-radius:9px}
/* Use the red bloom, foliage and golden pot of the actual prototype. */
.flower-red{background:#ececdf;grid-template-columns:1fr 1fr;align-items:center;gap:28px;padding:28px}.flower-red .flower-visual{min-height:410px}.flower-portrait{height:390px;max-width:100%;width:360px;overflow:visible}.flower-illustration-caption{position:absolute;bottom:2px;font-size:8px;letter-spacing:1.5px;color:#7a8068}.bloom-head{transform-box:fill-box;transform-origin:center;transition:transform .7s}.bloom-body{transform-origin:182px 280px;transition:transform .7s}.flower-red[data-state=excited] .bloom-head{animation:flower-bounce 1.3s ease-in-out infinite}.flower-red[data-state=relax] .bloom-body{transform:rotate(-10deg)}.flower-red[data-state=relax] .bloom-head{transform:rotate(-14deg) scale(.9)}.flower-red[data-state=withdraw] .bloom-head{transform:scaleX(.4) rotate(12deg)}.flower-red[data-state=withdraw] .bloom-body{transform:rotate(12deg)}.flower-red .flower-state-buttons button[aria-pressed=true]{background:#b82025;border-color:#b82025}.flower-red .flower-controls h3{font-size:29px}.flower-red .flower-controls>.eyebrow{color:#9f2227}.flower-red .prototype-note{font-size:10px!important;line-height:1.7}@keyframes flower-bounce{0%,100%{transform:rotate(-5deg) scale(.96)}50%{transform:rotate(6deg) scale(1.03)}}
/* Structural analysis with a complete geometry and visible criteria. */
.blade-study{border:1px solid #ccd6d9;border-radius:14px;overflow:hidden;background:#e7edef}.variant-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:20px;border-bottom:1px solid #ccd6d9}.variant-tabs button{background:transparent;border:1px solid #c0cdd0;border-radius:9px;padding:13px 16px;display:flex;align-items:center;gap:11px;font-size:12px;line-height:1.4;text-align:left}.variant-tabs button>span{font-family:var(--serif);font-size:22px;color:#7e9098}.variant-tabs button[aria-pressed=true]{background:#243d49;color:#f0f6f5;border-color:#243d49}.variant-tabs button[aria-pressed=true]>span{color:#a8c1c8}.variant-panel{display:grid;grid-template-columns:.72fr 1fr;gap:30px;padding:27px}.variant-visual{min-width:0;background:#e0e1dc;border-radius:10px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.variant-visual img{width:100%;height:365px;object-fit:contain;padding:25px 10px}.variant-visual span{font-size:9px;letter-spacing:1px;position:absolute;left:20px;bottom:18px;color:#4e585b}.variant-analysis h3{font-size:25px;letter-spacing:-.8px;line-height:1.2;margin:12px 0 26px}.metric-track{margin:22px 0}.metric-track>div:first-child{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin-bottom:10px}.metric-track strong{font-size:21px;letter-spacing:-.5px}.metric-rail{height:9px;background:#cbd7db;border-radius:100px;position:relative}.metric-rail i{height:100%;border-radius:100px;background:#658a97;display:block}.metric-rail b{position:absolute;width:2px;height:17px;top:-4px;background:#252e2f}.metric-track small{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#6b7a7e;margin-top:11px}.metric-track small em{font-style:normal;color:#98623f}.fatigue-status{border:1px solid #c4d1d5;border-radius:8px;padding:14px;margin-top:24px}.fatigue-status>span{font-size:8px;letter-spacing:1px;display:block;margin-bottom:7px}.fatigue-status>strong{font-size:12px;font-weight:600}.fatigue-status p{font-size:10px;line-height:1.7;color:var(--muted);margin-top:8px}.fatigue-status.met{background:#d9e6d4;border-color:#afc5a6}.variant-summary{font-size:11px;line-height:1.8;color:var(--muted);margin-top:17px}.stress-tag{font-size:10px;display:block;margin-top:12px;color:#456371}.comparison-table-wrap{overflow-x:auto;padding:0 27px}.comparison-table{width:100%;border-collapse:collapse;font-size:11px;min-width:550px}.comparison-table caption{text-align:left;font-size:9px;letter-spacing:1px;text-transform:uppercase;padding-bottom:14px}.comparison-table th,.comparison-table td{padding:14px 10px;border-top:1px solid #c8d4d8;text-align:left;line-height:1.5}.comparison-table thead th{font-weight:400;color:#728287;font-size:10px}.comparison-table tbody th{font-weight:600}.study-note{font-size:10px;color:#6b7a7e;line-height:1.8;padding:22px 27px}
/* The original circular system, rebuilt as two connected material loops. */
.circular-system{background:#f2ece1;border:1px solid #ded7c7;border-radius:14px;padding:28px}.cycle-heading{display:flex;justify-content:space-between;align-items:center;gap:28px}.cycle-heading h3{font-size:34px;letter-spacing:-1.1px;line-height:1.1;margin-top:13px}.cycle-key{display:flex;flex-direction:column;gap:13px;font-size:9px;color:#68705d}.cycle-key>span{display:flex;align-items:center;gap:8px}.cycle-key i{display:block;width:8px;height:8px;border-radius:50%}.cycle-key .hard i{background:#c39649}.cycle-key .soft i{background:#409c76}.cycle-key .shared i{background:#348aa7}.system-map{height:540px;position:relative;margin-top:20px}.cycle-paths{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.cycle-paths>path{fill:none;stroke-width:2.5;transition:stroke-width .3s,opacity .3s}.hard-path{stroke:#c39649}.soft-path{stroke:#409c76}.hard-return{stroke:#c39649;stroke-dasharray:5 5}.soft-return,.soft-recovery{stroke:#409c76;stroke-dasharray:5 5}.system-map[data-active-loop=hard] .hard-path,.system-map[data-active-loop=hard] .hard-return{stroke-width:4}.system-map[data-active-loop=hard] .soft-path,.system-map[data-active-loop=hard] .soft-return,.system-map[data-active-loop=hard] .soft-recovery{opacity:.3}.system-map[data-active-loop=soft] .soft-path,.system-map[data-active-loop=soft] .soft-return,.system-map[data-active-loop=soft] .soft-recovery{stroke-width:4}.system-map[data-active-loop=soft] .hard-path,.system-map[data-active-loop=soft] .hard-return{opacity:.3}.system-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:110px;min-height:106px;padding:10px 9px;border-radius:11px;border:1px solid transparent;background:#f2ece1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;transition:background .2s,border-color .2s,box-shadow .2s}.system-node img{height:63px;max-width:78px;width:auto;object-fit:contain}.system-node span{font-size:9px;line-height:1.4;font-weight:600;text-align:center}.system-node.hard:hover,.system-node.hard.selected{background:#f2e0ba;border-color:#c39649}.system-node.soft:hover,.system-node.soft.selected{background:#d5ecdf;border-color:#409c76}.system-node.shared{background:#d7e6e9;width:146px;min-height:137px;border-color:#a5c3ca}.system-node.shared img{height:86px;max-width:115px}.system-node.shared.selected{background:#c3dfe6;border-color:#348aa7;box-shadow:0 0 0 5px #348aa714}.loop-label{position:absolute;top:51%;font-size:9px;letter-spacing:1.5px;pointer-events:none}.loop-label.hard{left:21%;color:#a57e3b}.loop-label.soft{right:21%;color:#3b8767}.cycle-detail{display:grid;grid-template-columns:145px 1fr;gap:27px;padding:26px;border-radius:10px;background:#faf7f0;border:1px solid #e1dbcf;margin-top:8px;min-height:234px}.cycle-detail-art{display:grid;place-items:center;border-radius:9px;background:#e9efea}.cycle-detail-art.hard{background:#f2e0ba}.cycle-detail-art.soft{background:#d5ecdf}.cycle-detail-art.shared{background:#d7e6e9}.cycle-detail-art img{width:100%;max-height:130px;object-fit:contain;padding:15px}.cycle-detail h3{font-size:25px;letter-spacing:-.6px;margin:10px 0 12px}.cycle-detail>div>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.8}.cycle-responsibility{border-top:1px solid #ddd8cb;margin-top:18px;padding-top:13px;font-size:11px;line-height:1.7}.cycle-responsibility span{font-size:8px;letter-spacing:1px;display:block;color:#7b8470;margin-bottom:4px}.diagram-credit{font-size:9px;color:#78806c;line-height:1.8;margin-top:17px}.ownership-model{margin-top:60px}.ownership-model>h3{font-size:34px;letter-spacing:-1px;margin:15px 0 24px}.flow-tabs{display:flex;gap:8px;flex-wrap:wrap}.flow-tabs button{border:1px solid var(--line);background:transparent;border-radius:100px;padding:11px 18px;font-size:11px}.flow-tabs button[aria-pressed=true]{background:#243d49;border-color:#243d49;color:white}.flow-panel{background:#e7eddf;border-radius:11px;padding:27px;margin-top:18px}.flow-route{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}.flow-route>span{font-size:11px;padding:15px;border-radius:7px;background:#f8f8ef;border:1px solid #d0d8c6}.flow-route>b{font-size:16px;font-weight:400;color:#8c9d75}.flow-panel>p:last-child{font-size:13px;line-height:1.8;color:var(--muted);max-width:800px}.passport-preview{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;border:1px solid var(--line);border-radius:11px;overflow:hidden;margin-top:25px}.passport-preview img{width:100%;height:auto;object-fit:contain}.passport-preview>div{padding:24px 24px 24px 0}.passport-preview h4{font-size:24px;font-weight:600;letter-spacing:-.7px;margin:14px 0}.passport-preview p:not(.eyebrow){font-size:11px;line-height:1.8;color:var(--muted)}.passport-preview span{font-size:9px;line-height:1.8;display:block;margin-top:18px;color:#849173}
@media(max-width:1150px){.case-hero{gap:35px}.system-node{width:95px;min-height:100px}.system-node img{height:55px;max-width:67px}.system-node.shared{width:125px;min-height:120px}.system-node.shared img{height:73px;max-width:100px}.loop-label.hard{left:18%}.loop-label.soft{right:18%}.dispenser-explorer{grid-template-columns:210px 1fr;gap:20px}.variant-panel{gap:22px}.variant-tabs button{padding:12px}.cycle-detail{padding:23px}}
@media(max-width:800px){.project-card.featured .project-media{height:auto}.case-hero{grid-template-columns:1fr}.case-hero-image{width:100%;max-height:620px}.hero-blade .case-hero-image{height:500px}.hero-aerosling .case-hero-image{height:500px}.gallery-meta{grid-template-columns:1fr 1fr}.gallery-meta .figure-0 img{height:350px}.gallery-flower .figure-0 img{height:550px}.dispenser-explorer{grid-template-columns:1fr}.dispenser-step-controls{display:grid;grid-template-columns:1fr 1fr}.dispenser-step-controls button{min-height:70px}.step-picture{height:380px}.cycle-heading h3{font-size:30px}.circular-system{padding:22px}.system-map{height:515px}.system-node{width:90px;padding:8px 5px;gap:7px}.system-node span{font-size:8px}.system-node.shared{width:118px}.cycle-detail{grid-template-columns:125px 1fr;gap:22px}.variant-panel{grid-template-columns:.75fr 1fr;padding:22px}.variant-analysis h3{font-size:23px}.variant-tabs{gap:7px;padding:15px}.variant-tabs button{font-size:10px;gap:8px}.flower-red .flower-visual{min-height:370px}.flower-portrait{height:350px}.flower-red .flower-controls h3{font-size:26px}}
@media(max-width:540px){.project-card.featured{grid-template-columns:1fr}.project-card.featured .project-media{height:auto;aspect-ratio:4/3}.project-media{height:auto;aspect-ratio:4/3}.spotlight-image{height:auto;aspect-ratio:4/3}.case-hero{gap:27px}.hero-blade .case-hero-image,.hero-aerosling .case-hero-image{height:420px}.case-images{grid-template-columns:1fr;gap:28px}.gallery-meta{grid-template-columns:1fr}.gallery-meta .figure-0 img{height:auto;min-height:200px}.gallery-meta .figure-1 img{max-height:520px;width:100%;object-fit:contain}.gallery-flower .figure-0 img{height:480px;padding:25px}.gallery-flower .figure-1 img,.gallery-flower .figure-2 img{height:340px;padding:20px}.compare{aspect-ratio:1.4}.compare img{padding:10px 8px 39px}.compare-labels{left:7px;right:7px;bottom:8px}.compare-labels span{font-size:8px;padding:7px 9px}.compare-line span{height:35px;width:35px}.dispenser-explorer{padding:15px;gap:18px}.dispenser-step-controls{gap:7px}.dispenser-step-controls button{padding:11px;gap:7px;grid-template-columns:20px 1fr;font-size:10px;min-height:73px}.dispenser-step-controls button>b{display:none}.dispenser-step-controls button>span{font-size:20px}.step-picture{height:290px}.step-description h3{font-size:22px}.step-description>p:last-child{font-size:12px}.module-story{margin-top:43px}.module-story>h3{font-size:27px}.module-figures{grid-template-columns:1fr}.module-figures img{height:300px}.flower-red{grid-template-columns:1fr;padding:21px;gap:20px}.flower-red .flower-visual{min-height:360px}.flower-portrait{height:340px}.flower-red .flower-controls{padding:0 4px 7px}.variant-tabs{grid-template-columns:1fr;padding:15px;gap:7px}.variant-tabs button{font-size:12px;padding:10px 14px}.variant-tabs button>span{font-size:20px}.variant-panel{grid-template-columns:1fr;gap:24px;padding:20px}.variant-visual img{height:280px;padding:15px}.variant-visual span{font-size:8px;bottom:15px}.variant-analysis h3{font-size:25px}.comparison-table-wrap{padding:0 20px}.comparison-table{min-width:480px;font-size:10px}.comparison-table th,.comparison-table td{padding:12px 8px}.study-note{padding:20px;font-size:9px}.circular-system{padding:17px}.cycle-heading{display:block}.cycle-heading h3{font-size:29px}.cycle-key{gap:8px;margin-top:20px;font-size:8px}.system-map{height:630px;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:25px;padding:6px 0;align-content:start}.cycle-paths,.loop-label{display:none}.system-node{position:static;transform:none;width:auto;min-height:95px;border:1px solid #ded7c7;flex-direction:row;gap:9px;padding:9px;text-align:left;justify-content:start}.system-node img{height:48px;max-width:44px}.system-node span{font-size:9px;text-align:left}.system-node.shared{grid-column:1/-1;grid-row:1;width:auto;min-height:104px;justify-content:center}.system-node.shared img{height:72px;max-width:94px}.system-node.shared span{font-size:14px}.system-node.hard{background:#f4e7cd;grid-column:1}.system-node.soft{background:#def0e5;grid-column:2}.system-node[data-cycle-stage=sourcing],.system-node[data-cycle-stage=feedstock]{grid-row:2}.system-node[data-cycle-stage=refining],.system-node[data-cycle-stage=spinning]{grid-row:3}.system-node[data-cycle-stage=manufacturing],.system-node[data-cycle-stage=fabrication]{grid-row:4}.system-node[data-cycle-stage=assembly],.system-node[data-cycle-stage=laundry]{grid-row:5}.system-node[data-cycle-stage=maintenance],.system-node[data-cycle-stage=recycling]{grid-row:6}.cycle-detail{grid-template-columns:1fr;gap:18px;padding:20px;margin-top:10px}.cycle-detail-art{height:115px;width:100%}.cycle-detail-art img{height:100%;width:auto;max-width:160px;padding:12px}.cycle-detail h3{font-size:24px}.cycle-detail>div>p:not(.eyebrow){font-size:12px}.diagram-credit{font-size:8px}.ownership-model{margin-top:43px}.ownership-model>h3{font-size:28px}.flow-tabs button{font-size:10px;padding:10px 13px}.flow-panel{padding:22px}.flow-route{gap:8px;margin:20px 0}.flow-route>span{font-size:10px;padding:12px}.flow-panel>p:last-child{font-size:12px}.passport-preview{grid-template-columns:1fr;gap:0}.passport-preview>div{padding:24px}.passport-preview h4{font-size:23px}.enlarged-asset{padding:15px}.enlarged-asset figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){.bloom-head,.bloom-body,.cycle-paths>path{transition:none}.flower-red[data-state=excited] .bloom-head{animation:none}}
.spotlight-image[data-open=dispenser] img,.project-card[data-project=dispenser] .project-media img{position:absolute;max-width:none;width:135%;height:auto;left:-40%;top:-8%;object-fit:contain;transform:none}
.spotlight-image[data-open=dispenser],.project-card[data-project=dispenser] .project-media{background:#d8ba00}
.hero-dispenser .case-hero-image{height:580px;background:#d7b91a}
.step-picture{display:block;position:relative}.step-picture img{position:absolute;inset:0;min-height:0;width:100%;height:100%;object-fit:contain}
.compare{aspect-ratio:1200/827}.compare img{padding:16px 25px 48px}
.hard-path,.hard-return{marker-end:url(#hard-arrow)}.soft-path,.soft-return,.soft-recovery{marker-end:url(#soft-arrow)}
@media(max-width:540px){.hero-dispenser .case-hero-image{height:450px}.compare img{padding:8px 8px 38px}.system-map{height:auto}.step-picture{height:290px}}
.compare{aspect-ratio:2.28}.compare img{padding:25px 20px 58px;background:#f5f3ec}.compare-after{background:none!important}
@media(max-width:540px){.compare{aspect-ratio:1.75}.compare img{padding:15px 10px 45px}}
.compare{max-width:960px;margin-left:auto;margin-right:auto}
.project-card.featured .project-media{aspect-ratio:1.055}.project-card[data-project=meta] .project-media img{object-fit:contain}
@media(max-width:540px){.project-card.featured .project-media{aspect-ratio:1.055}}
#preview-game{transform:none}.project-card[data-project=bento] img,.spotlight-image[data-open=bento] img,#preview-game img{image-rendering:pixelated}
