@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Space+Mono&display=swap');
:root{--ink:#242721;--muted:#7c8074;--line:#dcded3;--paper:#f5f5ef;--accent:#ec512f;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.masthead{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid var(--line);background:var(--paper)}.brand{font-size:25px;font-weight:700;letter-spacing:-1.5px}.brand span{font-size:10px;letter-spacing:1.3px;font-family:'Space Mono',monospace;margin-left:14px;font-weight:400}.edition,.back{font-size:10px;letter-spacing:1px;font-family:'Space Mono',monospace}.back{border-bottom:1px solid #888d7c;padding-bottom:5px}main{display:grid;grid-template-columns:minmax(0,1fr) 380px}.workspace{height:calc(100vh - 76px);min-height:730px;position:sticky;top:0;overflow:hidden;background:#e9e8e2}.intro{position:absolute;top:41px;left:44px;z-index:2;pointer-events:none}.eyebrow,.micro{font:9px 'Space Mono',monospace;letter-spacing:1.7px}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow i,.live-dot{height:6px;width:6px;background:var(--accent);border-radius:50%;display:inline-block}.intro h1{font-size:clamp(40px,4.1vw,66px);font-weight:450;letter-spacing:-3.5px;line-height:1.02;margin:21px 0 16px}.intro em{font-family:Georgia,serif;font-weight:400}.intro p{font-size:12px;color:#75796d}#stage{position:absolute;inset:0}#scene{width:100%;height:100%;display:block;touch-action:none}.object-caption{position:absolute;bottom:89px;left:44px;pointer-events:none}.object-caption .micro{color:#75796d}.object-caption h2{font-size:24px;font-weight:500;letter-spacing:-.8px;margin:12px 0 7px}.object-caption p{font:9px 'Space Mono',monospace;letter-spacing:1px;color:#7c8074;margin:0}.view-tools{position:absolute;right:28px;bottom:89px;display:flex;gap:3px;border:1px solid #d0d1c7;border-radius:7px;padding:4px;background:#f5f5efc9;backdrop-filter:blur(12px)}.view-tools button{border:0;background:transparent;padding:9px;font-size:18px;border-radius:4px}.view-tools span{font-size:10px;vertical-align:middle;margin-left:3px}.view-tools button[aria-pressed=true]{background:#dedfd3}.stage-bottom{position:absolute;bottom:0;left:0;right:0;height:48px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d3d4c9;font:8px 'Space Mono',monospace;letter-spacing:1px;color:#777c6e}.live-dot{background:#8a946e;margin-right:7px;width:5px;height:5px}.controls{border-left:1px solid var(--line);padding:31px 27px 22px;background:var(--paper)}.panel-heading .micro{color:#858b79;font-size:8px}.panel-heading h2{font-size:23px;letter-spacing:-.8px;font-weight:500;margin:11px 0 29px}.control-section{padding:22px 0;border-top:1px solid var(--line)}.section-label{display:flex;align-items:center;gap:10px;margin-bottom:17px}.section-label>span:first-child{font:9px 'Space Mono',monospace;color:#a1a593}.section-label h3{font-size:12px;font-weight:600;margin:0}.tag{font:7px 'Space Mono',monospace;border:1px solid var(--line);padding:4px 6px;margin-left:auto;color:#808875}select,input[type=text]{width:100%;border:1px solid #d5d8cb;background:#fafaf6;padding:12px 11px;font-size:12px;border-radius:3px;color:var(--ink)}.upload{position:relative;display:flex;align-items:center;gap:10px;border:1px dashed #cbd0bf;padding:11px;margin-top:8px;font-size:11px;cursor:pointer}.upload>span{font-size:17px;color:#7c8767}.upload small{margin-left:auto;font:9px 'Space Mono',monospace;color:#919782}.upload input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}.upload:focus-within{outline:2px solid var(--accent)}.stats{display:flex;justify-content:space-between;margin-top:20px}.stats div{display:flex;flex-direction:column;gap:6px}.stats strong{font-size:22px;font-weight:450;letter-spacing:-1px}.stats span{font:7px 'Space Mono',monospace;letter-spacing:.6px;color:#8e947f}.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.formats button{padding:8px 4px 12px;border:1px solid var(--line);border-radius:3px;background:transparent;text-align:center}.formats button.selected{border-color:#788363;background:#e9eddf;box-shadow:inset 0 0 0 .5px #788363}.formats svg{height:47px;width:70px;stroke:#818b73;stroke-width:1.2;fill:none;display:block;margin:0 auto 5px}.formats strong{display:block;font-size:11px;font-weight:600}.formats small{display:block;font:6px 'Space Mono',monospace;letter-spacing:.4px;margin-top:5px;color:#838a76}.format-description{font-size:11px;color:#858a7c;line-height:1.65;margin:13px 0 0;min-height:36px}.label-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin:12px 0}.label-row output,.label-row>span{font:9px 'Space Mono',monospace;color:#7e8572}.palettes{display:flex;gap:8px;margin-bottom:22px}.palettes button{background:transparent;flex:1;border:1px solid transparent;border-radius:3px;padding:7px 3px 6px}.palettes button.selected{border-color:#a6af95;background:#eceee4}.palettes i{display:block;width:32px;height:32px;border-radius:50%;margin:0 auto 7px;background:linear-gradient(120deg,var(--body) 0 66%,var(--accent) 66%);box-shadow:inset 0 0 0 1px #00000012}.palettes span{font-size:9px;color:#7e8572}input[type=range]{appearance:none;width:100%;height:3px;background:#d7dcca;accent-color:#788364;margin:3px 0 14px;cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:#778361;border:2px solid var(--paper);box-shadow:0 0 0 1px #778361}input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#778361;border:2px solid var(--paper)}.inscription p{font-size:10px;color:#929783;margin-bottom:0}.export-panel{border-top:1px solid var(--line);padding-top:20px}.export-meta{display:flex;justify-content:space-between;font:8px 'Space Mono',monospace;color:#858c77;margin-bottom:12px}.export{border:0;width:100%;display:flex;align-items:center;justify-content:space-between;background:#252c22;color:#fff;padding:16px 18px;font-size:12px;border-radius:3px}.export>span{font-size:20px}.export:hover{background:#44523a}.export:disabled{opacity:.5;cursor:wait}#status{font-size:10px;line-height:1.5;color:#7c866b;min-height:15px}.export-note{font-size:9px;color:#939987;line-height:1.6}.export-note button{display:block;border:0;background:none;text-decoration:underline;padding:6px 0;font-size:9px;color:#687556}.export-note button:disabled{opacity:.4;cursor:default}footer{padding:23px 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font:8px 'Space Mono',monospace;letter-spacing:1px}footer>span:first-child{font:600 19px 'DM Sans',sans-serif;letter-spacing:-.7px}footer i{font:italic 13px Georgia,serif;color:#8b927d;margin-left:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}@media(min-width:1550px){main{grid-template-columns:minmax(0,1fr) 420px}.controls{padding:35px}.intro{left:60px;top:50px}}@media(max-width:1050px){.edition{display:none}.intro{left:27px}.intro h1{font-size:44px}.intro p{max-width:220px;line-height:1.5}.stage-bottom>span:last-child{display:none}.object-caption{left:27px}.view-tools span{display:none}.view-tools{right:17px}.object-caption h2{font-size:19px}main{grid-template-columns:minmax(0,1fr) 345px}.controls{padding:27px 20px}}@media(max-width:700px){.masthead{height:62px;padding:0 19px}.brand{font-size:22px}.brand span{font-size:8px;margin-left:8px}.back{font-size:8px}main{display:block}.workspace{position:relative;top:auto;height:660px;min-height:0}.intro{top:29px;left:24px}.intro h1{font-size:43px;letter-spacing:-2px}.intro p{max-width:none;font-size:11px}.eyebrow{font-size:7px}.object-caption{left:24px;bottom:76px}.object-caption h2{font-size:21px}.view-tools{bottom:77px}.stage-bottom{padding:0 20px;font-size:7px}.controls{border-left:0;border-top:1px solid var(--line);padding:28px 25px}.panel-heading h2{font-size:28px}.formats button{padding:14px 5px}.formats small{font-size:7px}.formats strong{font-size:12px}.stats strong{font-size:27px}.stats span{font-size:8px}.palettes{justify-content:flex-start}.palettes i{width:38px;height:38px}.control-section{padding:24px 0}.label-row{font-size:12px}input[type=range]{margin-bottom:20px}footer{padding:22px;gap:15px}footer>span:last-child{display:none}footer>span:nth-child(2){max-width:130px;font-size:7px;line-height:1.7}}
@media(max-width:700px){.object-caption p{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-caption .micro{font-size:8px;letter-spacing:1.2px}}
/* Storefront: the object remains the centre of the experience. */
.store-nav{display:flex;align-items:center;gap:23px;font:9px 'Space Mono',monospace}.intro-promise{display:inline-block;margin-top:11px;color:#535e46;font-size:10px}.source-tabs,.intent-toggle{display:flex;gap:4px;background:#e9ecdf;padding:4px;border-radius:4px;margin-bottom:12px}.source-tabs button,.intent-toggle button{flex:1;background:none;border:0;padding:9px 5px;font-size:10px;border-radius:2px}.source-tabs button[aria-pressed=true],.intent-toggle button[aria-pressed=true]{background:#fafbf5;box-shadow:0 1px 4px #333c2510}.source-tabs button[data-source=strava]{color:#c54408}.field-help{font-size:10px!important;color:#838b76;line-height:1.65;margin:9px 0}.field-label{display:block;font-size:10px;margin:15px 0 8px}.field-label>span{color:#929982;font-size:9px;margin-left:5px}.filament-swatches{display:flex;gap:7px;margin:10px 0 20px;flex-wrap:wrap}.filament-swatches button{height:25px;width:25px;border:2px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px #d9ddce;position:relative}.filament-swatches button[aria-pressed=true]{box-shadow:0 0 0 2px #6c775c}.filament-swatches button[aria-pressed=true]:after{content:'';width:5px;height:5px;border:1px solid #fff;box-shadow:0 0 0 1px #34402a;border-radius:50%;position:absolute;inset:0;margin:auto;background:white}.palettes{margin-bottom:16px}.paired-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.paired-fields>div{min-width:0}input[type=date]{width:100%;min-width:0;border:1px solid #d5d8cb;background:#fafaf6;padding:12px 8px;font-size:11px;border-radius:3px;color:var(--ink)}.inscription .check-row{margin-top:15px}.check-row{display:flex;align-items:flex-start;gap:9px;font-size:10px;line-height:1.6;color:#67745b;cursor:pointer}.check-row input{flex-shrink:0;margin:3px 0 0;width:14px;height:14px;accent-color:#61734c}.purchase-panel{scroll-margin-top:24px;border-top:1px solid var(--line);padding:23px 0}.review-name{font-size:16px;letter-spacing:-.3px;margin:10px 0 2px;overflow-wrap:anywhere}.order-totals{margin:22px 0 15px}.order-totals>div{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding:6px 0}.order-totals dd{margin:0;font-family:'Space Mono',monospace;font-size:11px}.order-totals .order-total{padding-top:14px;margin-top:10px;border-top:1px solid var(--line);font-size:12px}.order-total dd{font-size:22px;letter-spacing:-1px}.delivery-note{font-size:10px;line-height:1.7;color:#7a836d;margin:15px 0 18px}.delivery-note a{border-bottom:1px solid #c8cfba}.promo-details{margin:15px 0;font-size:10px;color:#7f8b70}.promo-details summary,.print-yourself summary{cursor:pointer;padding:5px 0}.promo-details input{margin-top:10px}.buy-button{margin-top:16px;background:#293521}.buy-button>span:first-child{font-size:13px}.payment-note{text-align:center;font:7px 'Space Mono',monospace;color:#8b957d;margin-top:16px}.design-actions{display:flex;gap:7px;flex-wrap:wrap}.design-actions button{flex:1;border:1px solid #d2d8c7;background:transparent;padding:10px 8px;font-size:10px;white-space:nowrap;border-radius:3px}.design-actions button:hover{background:#e9eddc}.design-actions button:disabled{opacity:.4;cursor:default}.print-yourself{margin:14px 0;font-size:10px;color:#78876a}.print-yourself .design-actions button{font-size:9px}.collection-story{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;padding:100px 7vw;background:#f0f1e7;border-top:1px solid var(--line)}.collection-story h2{font-size:clamp(36px,4vw,62px);font-weight:450;line-height:1.08;letter-spacing:-2.5px;margin:25px 0}.collection-story h2 em{font-family:Georgia,serif;font-weight:400}.collection-story>div>p{font-size:14px;line-height:1.8;color:#7c836f;max-width:420px}.collection-story>div>a{display:inline-block;font-size:11px;margin-top:20px;border-bottom:1px solid #98a389;padding-bottom:7px}.story-details>div{border-top:1px solid #d8ddcb;padding:22px 0}.story-details span{font:8px 'Space Mono',monospace;letter-spacing:1px;color:#889377}.story-details h3{font-size:21px;font-weight:500;letter-spacing:-.6px;margin:12px 0}.story-details p{font-size:12px;line-height:1.8;color:#849075;max-width:390px}.journey-stories{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:70px 7vw;border-bottom:1px solid var(--line)}.journey-stories>a{display:grid;grid-template-columns:42% 1fr;gap:24px;align-items:center}.journey-stories img{width:100%;height:240px;object-fit:cover;border-radius:2px;filter:saturate(.7)}.journey-stories span{font:8px 'Space Mono',monospace;color:#82906e;letter-spacing:1px}.journey-stories h3{font-size:25px;letter-spacing:-.8px;font-weight:500;margin:15px 0}.journey-stories p{font-size:12px;color:#8a927d;line-height:1.8}.journey-stories b{display:inline-block;font-size:10px;font-weight:500;margin-top:14px}.store-faq{padding:80px 7vw;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.store-faq h2{font-size:43px;letter-spacing:-1.8px;font-weight:450}.store-faq>div>p{font-size:12px;color:#858f77;line-height:1.8}.store-faq details{border-bottom:1px solid var(--line);padding:18px 0}.store-faq summary{font-size:13px;cursor:pointer}.store-faq details p{font-size:12px;line-height:1.9;color:#7c876d;padding-right:20px}footer nav{display:flex;gap:20px}footer>a{font:600 19px 'DM Sans',sans-serif;letter-spacing:-.7px}.mobile-order{display:none}.route-checkout-status{position:fixed;z-index:20;left:50%;top:25px;transform:translateX(-50%);width:min(500px,calc(100% - 32px));background:var(--paper);padding:26px;border:1px solid #aab598;box-shadow:0 15px 65px #28331d33}.route-checkout-status h2{font-size:22px;letter-spacing:-.6px}.route-checkout-status p{font-size:12px;line-height:1.8;color:#79876a}.route-checkout-status button{background:#2b3a23;border:0;color:white;padding:10px 18px;font-size:11px}.skip-link:focus{position:fixed;top:4px;left:4px;z-index:30;width:auto;height:auto;clip-path:none;background:white;padding:15px}
.strava-connect{width:100%;border:0;background:#fc4c02;color:white;padding:12px;font-weight:600;font-size:11px;border-radius:3px}.strava-connect:disabled{opacity:.5;cursor:default}.strava-note,.strava-privacy,.strava-empty{font-size:10px;line-height:1.6;color:#839076}.strava-note.is-error{color:#ae5035}.strava-retry,.strava-disconnect{font-size:9px;border:0;background:none;text-decoration:underline;padding:5px;color:#69795c}.strava-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.strava-connected-label{font-size:10px;color:#73835f}.strava-list-label,.strava-link-label{font-size:10px;display:block;margin:15px 0 8px}.strava-activities{list-style:none;max-height:240px;overflow:auto;padding:0;margin:10px 0}.strava-activity{width:100%;text-align:left;border:1px solid #d6ddca;background:#fafbf6;padding:10px;margin-bottom:5px;border-radius:3px}.strava-activity-name{display:block;font-size:11px}.strava-activity-meta{display:block;font-size:9px;color:#8e997e;margin-top:5px}.strava-link-row{display:flex;gap:5px}.strava-link-input{min-width:0;flex:1}.strava-import-button{background:#dfe6d2;border:1px solid #c8d3b8;font-size:10px;border-radius:3px;padding:8px}.strava-privacy{font-size:9px}
@media(max-width:1050px){.store-nav{gap:15px}.store-nav>a:not(.back){display:none}.filament-swatches{gap:6px}.filament-swatches button{width:23px;height:23px}.journey-stories{gap:25px}.journey-stories>a{grid-template-columns:1fr}.journey-stories img{height:220px}.collection-story{gap:6vw}.store-faq{gap:45px}}
@media(max-width:700px){.intro-promise{font-size:9px}.intro p{line-height:1.6}.store-nav{font-size:8px}.controls{padding-bottom:35px}.source-tabs button,.intent-toggle button{padding:12px 5px;font-size:11px}.filament-swatches{gap:9px}.filament-swatches button{width:27px;height:27px}.field-label{font-size:11px}.paired-fields{gap:8px}.collection-story{grid-template-columns:1fr;padding:58px 25px;gap:38px}.collection-story h2{font-size:44px;letter-spacing:-2px}.collection-story>div>p{font-size:13px}.collection-story .micro{font-size:7px}.journey-stories{grid-template-columns:1fr;padding:38px 25px;gap:35px}.journey-stories>a{grid-template-columns:38% 1fr;gap:20px}.journey-stories img{height:200px}.journey-stories h3{font-size:23px}.journey-stories span{font-size:7px}.journey-stories p{font-size:11px}.store-faq{grid-template-columns:1fr;gap:20px;padding:48px 25px}.store-faq h2{font-size:35px;margin:20px 0}.store-faq summary{font-size:12px}.order-total dd{font-size:25px}.buy-button{padding:18px}.check-row{font-size:11px}.review-name{font-size:19px}footer{flex-wrap:wrap;padding-bottom:105px}footer nav{gap:15px;font-size:7px}.mobile-order{position:fixed;z-index:8;bottom:12px;left:12px;right:12px;background:#283820;color:#f4f6ee;border:1px solid #f5f5ef33;box-shadow:0 5px 30px #25321822;border-radius:4px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;font-size:10px}.mobile-order b{display:block;font:14px 'Space Mono',monospace;margin-top:3px}.purchase-panel{scroll-margin-top:18px}.export-panel{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Touch browsing and the contextual order shortcut. */
#explore-3d{min-height:44px;min-width:132px;padding:10px 14px;border:1px solid #c7cbbb;border-radius:5px;background:#f5f5ef;font:11px 'DM Sans',sans-serif;letter-spacing:0;white-space:nowrap}
#explore-3d[aria-pressed=true]{background:#283820;border-color:#283820;color:#f4f6ee}
@media(max-width:700px),(any-pointer:coarse){#scene{touch-action:pan-y pinch-zoom}.stage-bottom{height:64px;gap:10px}.stage-bottom>span:first-child,.stage-bottom>span:last-child{display:none}#viewer-hint{max-width:145px;line-height:1.6}.view-tools button{min-width:44px;min-height:44px}.view-tools{bottom:92px}.object-caption{bottom:90px;max-width:calc(100% - 185px)}.object-caption p{max-width:100%}.object-caption h2{font-size:18px;line-height:1.2}}
@media(max-width:700px){.stage-bottom{padding:0 20px}.object-caption{left:20px}.view-tools{right:16px;padding:3px;gap:0}.mobile-order{bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:60px}input[type=text],input[type=date],select{font-size:16px;min-height:44px}input[type=range]{min-height:44px;background:linear-gradient(#d7dcca,#d7dcca) center/100% 3px no-repeat}.source-tabs button,.intent-toggle button{min-height:44px}.purchase-panel{scroll-margin-bottom:20px}}

/* A persistent visual connection between mobile controls and the object. */
.mobile-preview-slot{display:none}#preview-return{min-height:44px;padding:10px 12px;border:1px solid #c7cbbb;border-radius:5px;background:#f5f5ef;font:11px 'DM Sans',sans-serif;letter-spacing:0;white-space:nowrap}
@media(max-width:700px){.mobile-preview-slot{display:block;position:sticky;top:var(--preview-top,0px);z-index:7;height:120px;margin:-28px -25px 24px;padding:10px 12px;background:var(--paper);border-bottom:1px solid var(--line)}.mobile-preview{width:100%;height:99px;display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;align-items:center;padding:8px 12px 8px 6px;border:1px solid #d1d7c5;border-radius:6px;background:#fafbf7;text-align:left;box-shadow:0 3px 14px #28382009}.mobile-preview:disabled{cursor:default;color:inherit}.mobile-preview canvas{display:block;width:116px;height:73px;border-radius:3px;background:#e9e8e2}.preview-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.preview-copy .micro{font-size:7px;letter-spacing:1px;color:#7c876c}.preview-copy strong{font-size:13px;font-weight:500;letter-spacing:-.1px}.preview-copy>span:not(.micro){font-size:9px;line-height:1.4}.preview-copy #mobile-preview-details{color:#78846a;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.preview-link{color:#354829}.mobile-preview:disabled .preview-link{visibility:hidden}.mobile-preview canvas[hidden]{display:block!important;visibility:hidden}.is-updating canvas{opacity:.45}.is-updating .preview-copy strong{color:#7a826f}.mobile-preview-slot.compact{background:transparent;border-color:transparent;pointer-events:none}.compact .mobile-preview{height:76px;grid-template-columns:88px minmax(0,1fr);pointer-events:auto}.compact canvas{width:88px;height:55px}.compact .preview-copy .micro{display:none}.controls input,.controls select,.controls button,.controls summary{scroll-margin-top:130px}}

/* Real sculpture examples, clearly separate from a visitor's own route. */
.examples-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 12px}.examples-heading .micro{font-size:7px;letter-spacing:1px;color:#78836c}.examples-heading h4{font-size:16px;letter-spacing:-.35px;font-weight:500;margin:7px 0 0}.carousel-navigation{display:flex;gap:4px}.carousel-navigation button{width:36px;height:36px;border:1px solid #cfd6c3;border-radius:50%;background:transparent;font-size:15px}.carousel-navigation button:disabled{opacity:.28;cursor:default}.example-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:3px 2px 7px}.example-carousel::-webkit-scrollbar{display:none}.example-card{flex:0 0 86%;min-width:0;position:relative;scroll-snap-align:start;display:flex;flex-direction:column;padding:0 0 14px;overflow:hidden;border:1px solid #d4dacb;border-radius:5px;background:#fafbf6;text-align:left;color:var(--ink)}.example-card[aria-pressed=true]{border-color:#788363;box-shadow:0 0 0 1px #788363}.example-card img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;background:#e9e8e2}.example-card-badge{position:absolute;top:9px;left:9px;padding:5px 7px;background:#f5f5efdb;border-radius:2px;font:7px 'Space Mono',monospace;letter-spacing:1px;color:#59674b}.example-card strong{font-size:16px;font-weight:500;letter-spacing:-.3px;margin:13px 13px 6px}.example-card-detail{font-size:10px;color:#78846b;margin:0 13px;line-height:1.5}.example-caption{display:flex;gap:15px;align-items:flex-start;justify-content:space-between;font-size:10px;line-height:1.6;color:#7a866c;margin:8px 0 12px}.example-caption>span:last-child{white-space:nowrap;font:9px 'Space Mono',monospace;padding-top:3px}.more-examples summary{font-size:11px;cursor:pointer;padding:10px 0}.more-examples select{margin:7px 0}.formats{grid-template-columns:repeat(2,minmax(0,1fr))}.city-note{border-left:2px solid #acb89c;padding-left:12px;margin:12px 0}.city-note p{font-size:10px;line-height:1.65;color:#77856a}.city-note a{text-decoration:underline}.city-note button{font:11px 'DM Sans',sans-serif;background:transparent;border:0;border-bottom:1px solid #a8b498;padding:10px 0;min-height:44px;color:#435b32}.example-badge{display:block;width:max-content;font:7px 'Space Mono',monospace;letter-spacing:1px;color:#637450;margin-top:9px;padding:4px 6px;border:1px solid #c7cdbf;border-radius:2px}.object-caption .micro{display:none}.object-caption h2{margin-top:9px}
@media(max-width:700px){.carousel-navigation button{width:44px;height:44px}.examples-heading h4{font-size:18px}.example-card strong{font-size:17px}.example-card-detail{font-size:11px}.example-carousel{margin-right:-14px;padding-right:14px}.example-caption{font-size:11px}.more-examples summary{min-height:44px;padding:12px 0}.city-note p{font-size:11px}}

.example-map-credit{font-size:9px;line-height:1.5;color:#7a866c;margin:7px 0}.example-map-credit a{text-decoration:underline}

/* Visible waiting and recovery for remote city maps. */
.city-progress{position:absolute;z-index:4;top:50%;left:50%;transform:translate(-50%,-35%);width:calc(100% - 48px);max-width:340px;padding:24px;border:1px solid #d1d8c7;border-radius:10px;background:#f5f5eff5;box-shadow:0 14px 44px #26382012;text-align:center;backdrop-filter:blur(14px)}
.city-progress strong{display:block;font-size:17px;font-weight:500;letter-spacing:-.3px;line-height:1.4}.city-progress p{font-size:12px;line-height:1.7;color:#6b765f;margin:10px 0 0}.city-progress-symbol{display:block;width:24px;height:24px;border:1.5px solid #d9dfcf;border-top-color:#728660;border-radius:50%;margin:0 auto 16px;animation:city-wait 1.5s linear infinite}.city-progress[data-state=error] .city-progress-symbol{animation:none;border-color:#ab765d;background:#ab765d15}.city-progress button{min-height:44px;margin-top:18px;padding:10px 17px;background:#31432b;color:#f5f5ef;border:0;border-radius:5px;font-size:12px}.workspace[data-city-state] #scene{opacity:.2}.city-note button+button{margin-left:12px}#city-retry{font-weight:600;color:#31432b}
@keyframes city-wait{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.city-progress-symbol{animation:none}}
@media(max-width:700px){.city-progress{max-width:310px;padding:20px;transform:translate(-50%,-26%)}.city-progress strong{font-size:16px}.is-updating #mobile-preview-details{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.is-updating .preview-copy strong{font-size:12px}}

#route-context{line-height:1.7}#route-context a{text-decoration:underline}
.review-personal{display:flex;align-items:center;gap:6px;min-height:18px}.review-activity-icon{display:inline-flex;align-items:center;color:#7b896d;opacity:.8}.review-activity-icon svg{display:block;width:15px;height:15px}

/* A short native-scroll camera journey, followed by the existing designer. */
.sculpture-scroll{min-width:0;position:relative}.sculpture-scroll .workspace{--scroll-progress:0}.scroll-customise{display:inline-block;pointer-events:auto;font-size:10px;margin-top:5px;border-bottom:1px solid #acb39f;padding:6px 0}.sculpture-scroll .intro{transform:translateY(calc(var(--scroll-progress)*-20px));opacity:clamp(.12,calc(1 - var(--scroll-progress)*2.2),1)}.sculpture-scroll .stage-bottom:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:calc(var(--scroll-progress)*100%);background:#7e8c6e}#options{scroll-margin-top:12px}
@media(max-width:700px){.sculpture-scroll{height:calc(clamp(540px,100svh,900px) + 70svh)}.sculpture-scroll .workspace{position:sticky;top:0;height:clamp(540px,100svh,900px)}.scroll-customise{min-height:32px}}
@media(prefers-reduced-motion:reduce){.sculpture-scroll{height:auto}.sculpture-scroll .intro{transform:none;opacity:1}.sculpture-scroll .stage-bottom:after{display:none}}

@media(max-width:700px) and (prefers-reduced-motion:reduce){.sculpture-scroll .workspace{position:relative;height:660px}}

/* The collection headline uses the hero's sans / italic pairing. */
.wall-caption{position:absolute;z-index:3;top:45px;left:34px;visibility:hidden;pointer-events:none;color:#283024}
.wall-caption>span{font:9px 'Space Mono',monospace;letter-spacing:1.5px}
.wall-caption h2{font-size:clamp(40px,4.1vw,66px);font-weight:450;letter-spacing:-3.5px;line-height:1.02;margin:21px 0 16px}
.wall-caption em,.panel-heading em{font-family:Georgia,serif;font-weight:400}
.wall-line{display:block;overflow:hidden;padding:0 8px 7px 0;margin-bottom:-7px}
.wall-line>*{display:block;opacity:0;transform:translateY(30px);filter:blur(6px)}
.wall-caption a{display:inline-block;pointer-events:auto;font-size:12px;padding:9px 0;border-bottom:1px solid #9caa92;opacity:0}
.wall-caption small{display:block;font-size:8px;margin-top:12px;opacity:.65}
.workspace[data-wall="true"] .wall-caption{visibility:visible}
.workspace[data-wall="true"] .wall-line>*{animation:wall-line-enter 760ms cubic-bezier(.22,1,.36,1) both}
.workspace[data-wall="true"] .wall-line:nth-child(2)>*{animation-delay:90ms}
.workspace[data-wall="true"] .wall-caption a{animation:wall-line-enter 760ms 180ms cubic-bezier(.22,1,.36,1) both}
@keyframes wall-line-enter{from{opacity:0;transform:translateY(30px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.sculpture-scroll .workspace[data-wall="true"] .intro{opacity:0;visibility:hidden;pointer-events:none}
.workspace[data-wall="true"] .object-caption{opacity:0}
.workspace[data-wall="true"] .stage-bottom{background:rgba(233,225,213,.75)}
.creation-start{padding:0 0 23px;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.creation-start:focus{outline:none}.creation-start:focus-visible{outline:2px solid #788363;outline-offset:6px}
.creation-steps{font-size:10px;display:flex;gap:8px;align-items:center;margin:0 0 16px;color:#69775d}.creation-steps span{color:#9aa68f}
.create-own-button{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:48px;border:0;border-radius:4px;padding:14px 17px;background:#2e4027;color:#f6f6f0;font:500 13px 'DM Sans',sans-serif}
.creation-start>p:not(.creation-steps),#route-chooser>p{font-size:10px;line-height:1.7;color:#79856d;margin:10px 0 0}
.route-choices{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.route-choices button{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:48px;padding:12px 10px;border:1px solid #b4bfaa;border-radius:4px;background:#e7eddf;font:500 11px 'DM Sans',sans-serif;text-align:left}
.personalise-example{border:0;background:none;padding:13px 0 3px;text-decoration:underline;text-underline-offset:4px;font-size:11px;color:#586a49}
@media(max-width:700px){.wall-caption{top:35px;left:25px}.wall-caption h2{font-size:42px;letter-spacing:-2px}.wall-caption>span{font-size:8px}.sculpture-scroll{height:calc(clamp(540px,100svh,900px) + 120svh)}.creation-start{scroll-margin-top:135px}.creation-steps,.creation-start>p:not(.creation-steps),#route-chooser>p{font-size:11px}.route-choices button{font-size:12px}.personalise-example{min-height:44px}}
@media(prefers-reduced-motion:reduce){.wall-caption{display:none}.wall-line>*,.wall-caption a{animation:none!important;transform:none;filter:none;opacity:1}.sculpture-scroll{height:auto}}

/* Keep the next step in reach throughout the page and leave room below the header. */
:root{--header-height:76px}
.masthead{position:sticky;top:0;z-index:10;height:var(--header-height)}
.masthead .back{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border:0;border-radius:4px;background:#2e4027;color:#f6f6f0;font:500 12px 'DM Sans',sans-serif;letter-spacing:0;white-space:nowrap}
.sculpture-scroll .workspace{top:var(--header-height);height:calc(100svh - var(--header-height));min-height:0}
.scroll-prompt{display:inline-flex;align-items:center;gap:11px;pointer-events:auto;border:0;background:transparent;padding:8px 0;margin-top:3px;text-align:left;font:500 12px 'DM Sans',sans-serif;color:#3d4c32;min-height:48px}
.scroll-prompt-arrow{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #a9b09f;border-radius:50%;font-size:21px;animation:scroll-invitation 1.8s ease-in-out 3}
@keyframes scroll-invitation{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
#options,#route-start,#review,#story,#faq{scroll-margin-top:calc(var(--header-height) + 20px)}
@media(max-width:700px){:root{--header-height:62px}.masthead .back{font-size:11px;padding:11px 12px}.scroll-prompt{font-size:12px;max-width:280px}.sculpture-scroll{height:calc(100svh - var(--header-height) + 120svh)}.controls input,.controls select,.controls button,.controls summary,#route-start{scroll-margin-top:calc(var(--header-height) + 135px)}}
@media(max-width:380px){.masthead .brand span{display:none}}
@media(prefers-reduced-motion:reduce){.scroll-prompt-arrow{animation:none}.sculpture-scroll{height:auto}}

.intro-imports{display:flex;gap:8px;pointer-events:auto;margin:17px 0 5px}
.intro-imports button{min-height:44px;padding:10px 13px;border:1px solid #bac1b1;border-radius:4px;background:#f5f5efb3;font:500 11px 'DM Sans',sans-serif}
.intro-imports button:first-child{background:#2e4027;border-color:#2e4027;color:#f6f6f0}
#route-chooser{margin-top:14px}
.empty-canvas{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(410px,calc(100% - 48px));text-align:center;z-index:3}
.empty-canvas h2{font:450 clamp(34px,3.5vw,52px)/1.07 'DM Sans',sans-serif;letter-spacing:-2px;margin:20px 0}
.empty-canvas em{font-family:Georgia,serif;font-weight:400}
.empty-canvas>p{font-size:13px;color:#738068;line-height:1.8;margin:0 0 25px}
.empty-canvas .route-choices button{justify-content:center;min-height:48px}
.empty-canvas:focus{outline:none}
#design[data-empty=true] .intro,#design[data-empty=true] .wall-caption,#design[data-empty=true] .object-caption,#design[data-empty=true] .view-tools,#design[data-empty=true] .stage-bottom,#design[data-empty=true] .stats,#design[data-empty=true] .control-section:not(.route-section),#design[data-empty=true] .export-panel,#design[data-empty=true] .mobile-preview-slot{display:none}
.workspace{scroll-margin-top:var(--header-height)}
@media(max-width:700px){.intro-imports{gap:6px}.intro-imports button{font-size:10px;padding:9px 10px}.intro p{max-width:300px}#design[data-empty=true] .sculpture-scroll{height:auto}#design[data-empty=true] .workspace{height:440px;position:relative;top:0}.empty-canvas h2{font-size:36px}.empty-canvas>p{font-size:12px}.empty-canvas .route-choices{grid-template-columns:1fr}.empty-canvas .route-choices button{font-size:12px}#design[data-empty=true] #route-start{scroll-margin-top:calc(var(--header-height) + 20px)}}

.route-metrics{margin:18px 0;padding:13px 0;border-block:1px solid var(--line)}.route-metrics>p{font:10px/1.7 'Space Mono',monospace!important;color:#46583a!important}.route-metrics small{display:block;font-size:10px;line-height:1.6;color:#79856d}
