:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--surface);font-synthesis:none;--green: #285b48;--surface: #1e1e20;--surface-raised: #262629;--text: #f0f2eb;--accent: #c3e3cc;--muted: #b1b7b3;--line: #414145}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid #3d8065;outline-offset:5px}button{cursor:pointer;border:1px solid transparent;background:var(--green);color:#fff;padding:13px 17px;border-radius:6px;font-size:13px;font-weight:550}button:disabled{opacity:.43;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.07)}button.secondary{background:transparent;border-color:#b9cbbb;color:var(--green)}.button{display:inline-block;background:var(--green);color:#fff;border-radius:6px;padding:12px 18px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;font-weight:650;color:var(--muted)}.site-header{height:90px;border-bottom:1px solid var(--line);padding:0 6vw;display:flex;justify-content:space-between;align-items:center}.wordmark{font-weight:800;letter-spacing:-1.6px;font-size:28px}.wordmark-dot{color:#73997f}.site-header nav{display:flex;gap:30px;font-size:13px}.site-header nav a{color:var(--muted)}.site-header nav a[data-status=active]{color:var(--green)}.content{max-width:1400px;padding:0 6vw;margin:auto}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,4.8vw,70px);letter-spacing:-3.2px;line-height:1.07;font-weight:650}h2{font-size:24px;letter-spacing:-.7px;font-weight:600}h3{font-size:20px;letter-spacing:-.5px}p{line-height:1.75}.muted-heading{color:#849886}.home-intro{padding:70px 0 58px}.home-intro .eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:25px}.small-dot{width:6px;height:6px;background:#638d72;border-radius:50%}.home-intro h1{margin-bottom:24px}.lede{font-size:17px;max-width:625px;color:var(--muted);line-height:1.8}.home-intro .lede{margin-bottom:0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}.section-heading h2{margin:0;font-size:18px}.model-card-list{display:grid;gap:24px}.model-card-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 14px}.model-card-heading h3{margin-bottom:0}.model-card-heading{margin-bottom:16px}.model-status-pill{flex:0 0 auto}.pill.model-status-pill[data-status=work-in-progress]{background:#f4ddb0;color:#653e12;border:1px solid #b99152}.model-card-copy .model-status-note,.model-title .model-status-note{font-size:14px;line-height:1.5;border-left:3px solid #b99152;padding-left:12px;margin:12px 0 0;max-width:65ch}.model-title .model-status-note{color:#f4ddb0}.featured-model{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:box-shadow .2s}.featured-model:hover{box-shadow:0 10px 34px #25452c0a}.model-card-art{background:#e6ede6;position:relative;min-height:355px;display:flex;align-items:center;justify-content:center}.art-caption{position:absolute;top:24px;left:28px;font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:#68806e}.art-caption.bottom{top:auto;bottom:24px}.model-artwork{width:100%;max-height:380px}.model-card-copy{padding:44px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:#fcfcf7}.pill{font-size:10px;white-space:nowrap;padding:6px 10px;background:#e7eee3;color:#526b50;border-radius:20px}.model-card-copy h3{font-size:32px;line-height:1.18;letter-spacing:-1.1px;margin:24px 0 16px}.model-card-copy p{color:var(--muted);font-size:14px;max-width:340px}.text-action{font-size:13px;font-weight:650;display:flex;gap:22px;align-items:center;margin-top:10px}.software-section{padding:56px 0 72px}.subtle-link{font-size:12px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-card{border-top:1px solid var(--line);padding-top:25px}.project-card h3{font-size:19px;display:flex;justify-content:space-between;margin:16px 0 10px}.project-card h3 span{color:#78917e;font-weight:400}.project-card p{font-size:13px;color:var(--muted)}.project-card:hover h3{color:#558468}.site-footer{margin:0 6vw;padding:27px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:11px}.site-footer>div{display:flex;gap:24px;color:var(--muted)}.site-footer .muted{margin-left:8px}.narrow{max-width:920px;padding-top:75px;padding-bottom:100px;min-height:70vh}.narrow p{color:var(--muted)}.narrow a:not(.button){text-decoration:underline;text-underline-offset:4px}.about-page{padding-top:75px;padding-bottom:95px;display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.about-page>.eyebrow{grid-column:1/-1;margin-bottom:32px}.about-page h1{font-size:clamp(40px,5vw,66px)}.about-copy{padding-top:3px;max-width:500px}.about-copy p{color:var(--muted);font-size:15px}.about-copy .lede{font-size:20px;color:#334d3d}.about-links{display:flex;flex-direction:column;gap:18px;font-size:13px;padding-top:20px}.model-title{padding:30px 4vw 27px}.breadcrumb{font-size:11px;color:var(--muted);display:inline-block;margin-bottom:22px}.model-title>div{display:flex;align-items:center;gap:22px}.model-title h1{font-size:34px;letter-spacing:-1.3px;margin:0}.title-dot{color:#79927b}.model-title p{font-size:14px;color:var(--muted);margin:9px 0 0}.configurator{display:grid;grid-template-columns:340px minmax(0,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.controls-panel{padding:32px;background:#fcfcf7;border-right:1px solid var(--line)}.controls-heading .eyebrow{margin-bottom:10px}.controls-heading h2{font-size:27px;margin-bottom:13px}.controls-heading p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:24px}.controls-panel fieldset{border:0;margin:0;padding:0;min-width:0}.parameter{display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:15px;margin:0 0 15px}.parameter input{width:75px;padding:10px;border:1px solid #c6d3c7;border-radius:5px;background:#fff;color:#253e32}.field-note{font-size:11px;line-height:1.65;color:var(--muted);margin:10px 0 0}.control-divider{border-top:1px solid var(--line);margin:25px 0}.select-label{font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.select-label select{font-size:11px;max-width:155px;background:#fff;border:1px solid #c6d3c7;border-radius:5px;padding:9px 7px;color:#35513d}.checkbox-label{font-size:12px;display:flex;gap:9px;align-items:center;margin:18px 0}.checkbox-label input{accent-color:var(--green)}.build-status{font-size:11px;color:var(--muted);margin:28px 0 16px;min-height:18px}.build-status.is-ready:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#678e66;margin-right:7px}.export-buttons{display:grid;gap:9px}.export-buttons button{display:flex;align-items:center;justify-content:space-between;font-size:12px}.share-row{margin-top:20px;display:flex;justify-content:space-between;gap:10px}.quiet-button{padding:3px 0;background:none;color:var(--green);font-size:11px;border:0}.error-box{padding:12px;background:#f2e7dc;border:1px solid #d9b99f;border-radius:5px;margin:12px 0}.error-box p{font-size:12px;margin:0 0 10px;color:#734d31}.viewer{position:relative;min-height:620px;background:#e6ede6;overflow:hidden}.viewer-canvas{height:100%;min-height:620px;position:absolute;inset:0}.viewer-canvas canvas{display:block;width:100%;height:100%;touch-action:none}.viewer-top{position:absolute;top:25px;left:27px;right:27px;display:flex;justify-content:space-between;gap:20px;pointer-events:none;z-index:1}.viewer-top>span:last-child{font-size:10px;color:var(--muted)}.viewer-bottom{position:absolute;bottom:22px;left:27px;right:27px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px;color:#637668;pointer-events:none}.viewer-bottom button{pointer-events:auto}.viewer-error{position:absolute;top:35%;left:10%;right:10%;padding:20px;background:#fcfcf7;border:1px solid var(--line);font-size:14px}.fallback-link{font-size:11px;display:block;margin-top:12px}.fallback-link input{width:100%;margin-top:8px;padding:8px;border:1px solid var(--line);font-size:11px}.model-notes{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:55px 6vw 65px;max-width:1300px;margin:auto}.model-notes p{font-size:13px;color:var(--muted)}.model-notes .eyebrow{font-size:10px}.model-notes h2{font-size:26px}.model-notes h3{font-size:16px;margin-top:26px}.model-notes a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:620px;background:#e6ede6;color:var(--muted)}.preview-placeholder .model-artwork{max-width:550px}.preview-placeholder p{font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:12px;z-index:10;padding:10px;background:#fff}.skip-link:focus{top:12px}@media(min-width:1500px){.configurator{grid-template-columns:390px 1fr}.controls-panel{padding:38px}.viewer{min-height:680px}.model-title{padding-left:38px}}@media(max-width:850px){.home-intro{padding-top:50px}.featured-model{grid-template-columns:1fr 1fr}.model-card-copy{padding:28px}.model-card-copy h3{font-size:27px}.configurator{grid-template-columns:300px 1fr}.controls-panel{padding:25px}.viewer-top>span:last-child{display:none}.about-page{column-gap:35px}.model-title h1{font-size:28px}}@media(max-width:650px){.site-header{height:72px;padding:0 6vw}.site-header nav{gap:20px;font-size:12px}.wordmark{font-size:26px}.home-intro{padding:45px 0 38px}h1{font-size:40px;letter-spacing:-1.8px}.lede{font-size:15px}.section-heading>.eyebrow{display:none}.featured-model{grid-template-columns:1fr}.model-card-art{min-height:270px}.model-artwork{max-height:300px}.model-card-copy{padding:28px}.model-card-copy h3{font-size:31px}.project-grid{grid-template-columns:1fr;gap:12px}.software-section{padding-top:40px}.site-footer{flex-direction:column;font-size:10px}.about-page{display:block;padding-top:45px}.about-page h1{margin-bottom:35px}.model-title{padding:24px 6vw}.model-title>div{display:block}.model-title h1{font-size:29px;margin-bottom:15px}.configurator{display:flex;flex-direction:column}.viewer{order:-1;min-height:340px;height:46vh;max-height:460px}.viewer-canvas{min-height:0}.viewer-top{top:18px;left:20px;right:20px}.viewer-bottom{left:20px;right:20px;bottom:15px}.viewer-bottom>span{max-width:180px;line-height:1.5}.controls-panel{padding:28px 6vw;border-right:0;border-top:1px solid var(--line)}.controls-panel fieldset{display:grid;grid-template-columns:1fr 1fr;gap:20px}.parameter{align-items:flex-start;flex-direction:column;gap:9px}.parameter input{width:100%}.controls-heading p:not(.eyebrow){margin-bottom:20px}.export-buttons{grid-template-columns:1fr 1fr}.select-label select{max-width:200px}.model-notes{grid-template-columns:1fr;gap:18px;padding:38px 6vw 50px}.model-notes h3{margin-top:0}.preview-placeholder{min-height:440px}.controls-heading h2{font-size:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.site-header,.model-title,.site-footer{background:#173d35;color:#f3f4e9;border-color:#31564a}.site-header{height:76px}.site-header nav a,.site-header nav a[data-status=active],.model-title p,.model-title .breadcrumb,.site-footer>div,.site-footer .muted{color:#c8d8cb}.model-title{padding:22px 3vw 26px}.model-title .breadcrumb{margin-bottom:14px}.model-title .pill{color:#d8e4d5;background:#2b5043;border-color:#476653}.site-footer{margin:0;padding:24px 3vw}.configurator{grid-template-columns:370px minmax(0,1fr);height:calc(100dvh - 245px);min-height:720px}.controls-panel{padding:26px;overflow-y:auto;scrollbar-width:thin;background:#f6f6ed}.setup-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.controls-heading .setup-row h2{font-size:25px;margin:0;white-space:nowrap}.setup-actions{display:flex;align-items:center;gap:4px}.setup-actions .quiet-button{font-size:11px;padding:7px 4px;white-space:nowrap}.icon-button{padding:4px 7px;background:transparent;color:#285b48;font-size:23px}.parameter-group{margin:22px 0}.parameter-group h3,.parts-header h3{font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px;color:#456451}.parameter-control{margin-bottom:18px}.parameter-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:8px}.parameter-label>span{font-size:11px;color:var(--muted)}.parameter-inputs{display:flex;align-items:center;gap:15px}.parameter-slider{width:100%;min-width:0;accent-color:#285b48;cursor:pointer;height:24px}.number-stepper{display:flex;flex:0 0 132px;border:1px solid #bdcdbd;border-radius:6px;overflow:hidden;background:#fffef5;align-items:stretch}.number-stepper button{border:0;border-radius:0;padding:4px 8px;background:#e6ebdf;color:#285b48;font-size:17px}.number-stepper input{width:65px;min-width:0;padding:8px 2px;text-align:center;border:0;background:transparent;color:#233c32;font-size:13px;appearance:textfield;-moz-appearance:textfield}.number-stepper input::-webkit-inner-spin-button,.number-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.parameter-help,.parameter-error{font-size:10px;line-height:1.5;margin:6px 0 0;color:#647568}.parameter-error{color:#9b3d2f}.advanced-parameters{border-block:1px solid #d3dccd;padding:15px 0;margin:24px 0}.advanced-parameters summary{cursor:pointer;font-size:13px;font-weight:600}.advanced-parameters summary span{float:right;font-size:10px;background:#e1e9d9;color:#285b48;border-radius:12px;padding:3px 8px}.parts-panel{margin:24px 0 18px}.parts-row{display:grid;grid-template-columns:minmax(0,1fr) 44px 48px;align-items:center;min-height:38px;gap:5px;font-size:12px}.parts-header{font-size:10px;color:var(--muted)}.parts-header h3{margin:0}.parts-row>input{justify-self:center;accent-color:#285b48;width:15px;height:15px}.parts-header>span{text-align:center}.all-parts{border-bottom:1px solid #d3dccd;padding-bottom:6px;margin-bottom:6px}.eye-button{display:flex;justify-content:center;background:transparent;color:#285b48;padding:7px;border-radius:4px}.eye-button[aria-pressed=false]{color:#91a08e}.eye-button[aria-pressed=mixed]{background:#e0e8dc}.part-name{display:flex;gap:9px;align-items:center}.part-name i{width:9px;height:9px;border-radius:3px}.viewer{min-height:0;height:100%;display:flex;flex-direction:column;background:#e6ede6;position:relative;overflow:hidden}.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;flex-wrap:wrap;z-index:1}.viewer-toolbar button,.blueprint-angles button{background:transparent;color:#365a45;padding:8px 12px;font-size:12px}.view-modes{display:flex;background:#d6e1d5;border-radius:7px;padding:3px}.view-modes button[aria-pressed=true]{background:#f9faf0;color:#204b38;box-shadow:0 1px 4px #23442d1a}.viewer-tools{display:flex;gap:4px}.viewer-tools button[aria-pressed=true]{background:#cadbc8}.viewer-stage{position:relative;flex:1;min-height:0}.viewer .viewer-canvas{position:absolute;inset:0;min-height:0;height:100%;width:100%}.viewer .viewer-bottom{position:static;padding:13px 22px;display:flex;justify-content:space-between;font-size:11px;gap:20px}.viewer-empty{position:absolute;top:42%;left:10%;right:10%;text-align:center;font-size:14px;color:#56705c;pointer-events:none}.measurement-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.measurement-overlay path{stroke:#3c6951;stroke-width:1;fill:none}.measurement-overlay text{font-size:11px;font-family:inherit;fill:#28513d;paint-order:stroke;stroke:#e6ede6;stroke-width:4px;stroke-linejoin:round}.viewer{background:#173d35;color:#c3e3cc}.viewer .view-modes{background:#2c5146}.viewer .viewer-toolbar button,.viewer .blueprint-angles button{color:#c3e3cc}.viewer .view-modes button[aria-pressed=true],.viewer .viewer-tools button[aria-pressed=true],.blueprint-angles button[aria-pressed=true]{background:#d2e3cd;color:#173d35}.viewer .measurement-overlay path{stroke:#c3e3cc}.viewer .measurement-overlay text{fill:#e1efd6;stroke:#173d35}.viewer .viewer-bottom,.viewer .viewer-empty{color:#a7cbb5}.blueprint-angles{display:flex;align-items:center;gap:5px;padding:0 22px 10px}.blueprint-angles span{font-size:10px;margin-left:12px;opacity:.7}@media(min-width:2000px){.configurator{grid-template-columns:420px minmax(0,1fr)}.controls-panel{padding:30px 36px}.parameter-control{margin-bottom:24px}}@media(max-width:1000px){.configurator{grid-template-columns:335px minmax(0,1fr)}.controls-panel{padding:22px}.viewer-toolbar{padding:12px;gap:8px}.viewer-toolbar button{font-size:11px;padding:8px}}@media(max-width:760px){.configurator{height:auto;min-height:0;grid-template-columns:1fr}.controls-panel{overflow:visible;grid-row:2;padding:24px}.viewer{grid-row:1;height:60dvh;min-height:420px;max-height:none}.viewer-toolbar{padding:12px}.model-title h1{font-size:26px}.model-title>div{align-items:flex-start;flex-direction:column;gap:10px}.model-title{padding:20px 24px}.site-footer{padding:22px 24px}.number-stepper{flex-basis:145px}.number-stepper input{flex:1}.viewer .viewer-bottom{padding:10px 12px;font-size:10px}.blueprint-angles{padding-left:12px}.site-header{height:70px}}.controls-panel fieldset{display:block}:root{--workspace-gutter: 26px}.site-header,.model-title,.site-footer,.controls-panel{padding-left:var(--workspace-gutter);padding-right:var(--workspace-gutter)}.configurator{border-top:0}.number-stepper{display:grid;grid-template-columns:28px minmax(0,1fr) 28px}.number-stepper input{width:100%;min-width:0}.number-stepper button{width:100%;min-width:0;padding:4px 0}.viewer-tools{flex-wrap:wrap;align-items:center}.transparency-control{display:flex;align-items:center;gap:10px;color:#c3e3cc;font-size:11px;padding:0 8px}.transparency-control span{display:flex;gap:6px}.transparency-control output{width:32px;font-variant-numeric:tabular-nums}.transparency-control input{width:90px;accent-color:#c3e3cc}@media(min-width:2000px){:root{--workspace-gutter: 36px}}@media(max-width:760px){:root{--workspace-gutter: 24px}.transparency-control{padding:0}.viewer-tools{gap:4px}.transparency-control input{width:75px}}@media(max-width:760px){.viewer-toolbar{position:relative}.viewer-tools>button:last-child{position:absolute;top:15px;right:12px}}.model-page{background:#173d35}.model-title{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.model-title>.model-identity{display:block}.model-heading-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.configurator{background:#173d35;border:0;gap:8px;padding:0 12px 12px}.controls-panel{border:1px solid #dce3d4;border-radius:16px;padding-left:calc(var(--workspace-gutter) - 13px);padding-right:calc(var(--workspace-gutter) - 13px);min-height:0;overscroll-behavior:contain}@media(min-width:761px){html:has(.model-page){height:100%;overflow:hidden}body:has(.model-page){height:100dvh;overflow:hidden;display:flex;flex-direction:column}body:has(.model-page) .site-header{flex:0 0 76px}.model-page{flex:1;min-height:0;display:flex;flex-direction:column}.model-title{flex:0 0 auto}.configurator{flex:1;height:auto;min-height:0;overflow:hidden}.controls-panel{overflow-y:auto}.viewer{height:100%;min-height:0;max-height:none}body:has(.model-page) .site-footer{flex:0 0 auto;padding-top:8px;padding-bottom:8px;font-size:10px;border:0}.preview-placeholder{flex:1;min-height:0}}@media(max-width:1100px){.model-title{grid-template-columns:1fr 1fr;gap:12px 24px;padding-top:16px;padding-bottom:16px}.model-identity{grid-column:1 / -1}.model-title .breadcrumb{margin-bottom:8px}}@media(max-width:760px){.model-title{display:flex;flex-direction:column;align-items:stretch}.configurator{padding:0 12px 12px;gap:12px}.controls-panel{padding:24px 12px}.viewer{margin:0 -12px}}.controls-panel{scrollbar-color:#a3b5a4 #f6f6ed}.model-title{display:block}.controls-stack{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}.controls-stack [hidden]{display:none!important}.info-card,.controls-panel{background:#f6f6ed;border:1px solid #dce3d4;border-radius:16px}.info-card{flex:0 1 auto;min-height:0;overflow:auto}.info-card h2{margin:0;font-size:14px}.card-toggle,.setup-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:transparent;color:#233c32;text-align:left}.card-toggle{padding:16px calc(var(--workspace-gutter) - 13px);font-size:14px}.card-toggle span,.setup-toggle span{color:#68786d}.info-card-content{padding:0 calc(var(--workspace-gutter) - 13px) 18px;font-size:13px;line-height:1.65}.info-card-content p{margin:0 0 12px}.info-card-content a{font-size:12px;color:#285b48}.controls-stack .controls-panel{flex:0 0 auto;padding:0;overflow:hidden;display:flex;flex-direction:column}.controls-stack .controls-panel.is-open{flex:1;min-height:0}.controls-heading{flex:0 0 auto;padding:12px calc(var(--workspace-gutter) - 13px);background:#f6f6ed;border-radius:16px 16px 0 0;z-index:3}.controls-heading .setup-row{margin:0;gap:6px}.controls-heading .setup-row h2{flex:1;min-width:0;font-size:20px}.setup-toggle{padding:6px 0;font:inherit;letter-spacing:inherit}.controls-panel:not(.is-open) .controls-heading{border-radius:16px}.controls-panel:not(.is-open) .setup-toggle{font-size:14px}.controls-panel.is-open .controls-heading{border-bottom:1px solid #dce3d4}.controls-heading .export-buttons{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin:12px 0 0}.controls-heading .export-buttons button{display:flex;justify-content:center;align-items:center;gap:8px;font-size:12px;padding:9px 8px}.controls-heading p.build-status{margin:10px 0 0;font-size:11px}.setup-scroll{overflow-y:auto;min-height:0;padding:18px calc(var(--workspace-gutter) - 13px);scrollbar-width:thin;scrollbar-color:#a3b5a4 #f6f6ed;overscroll-behavior:contain}.setup-hint{font-size:13px;line-height:1.6;color:#68786d;margin:0 0 24px}.export-help{width:min(330px,calc(100vw - 32px));padding:22px;border:1px solid #c6d4c3;border-radius:16px;background:#f6f6ed;color:#233c32;box-shadow:0 12px 48px #102d3240;font-size:13px;line-height:1.6}.export-help::backdrop{background:#173d3520}.viewer{border-radius:16px;overflow:hidden}@media(max-width:760px){.controls-stack{grid-row:2}.controls-stack .controls-panel.is-open{flex:none;overflow:visible}.controls-heading{position:sticky;top:0}.setup-scroll{overflow:visible}.viewer{margin:0}}.controls-heading .export-buttons .icon-button{font-size:18px;min-width:30px}.configurator{padding-left:var(--workspace-gutter);padding-right:var(--workspace-gutter);gap:16px}.card-toggle,.info-card-content,.controls-heading,.setup-scroll{padding-left:18px;padding-right:18px}.controls-heading .setup-row h2,.controls-panel:not(.is-open) .setup-toggle{font-size:14px;font-weight:550;letter-spacing:normal}.controls-heading{padding-top:10px;padding-bottom:10px}.viewer-toolbar{padding-top:0}body:has(.model-page) .site-footer{font-size:12px;padding-top:10px;padding-bottom:10px}.cards-content-hidden :is(.info-card-content,.setup-scroll,.setup-actions,.setup-header-content){opacity:0}.cards-transitioning>section{overflow:clip}@media(max-width:760px){.viewer-toolbar{padding-top:0}.viewer-tools>button:last-child{top:3px}}.viewer-tools button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.tool-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.viewer-parts-popover{position:fixed;inset:auto;margin:0;width:320px;max-height:min(440px,75dvh);overflow-y:auto;padding:16px;border:1px solid #c6d4c3;border-radius:16px;background:#f6f6ed;color:#233c32;box-shadow:0 12px 40px #102d3240}.parts-popover-heading{display:flex;justify-content:space-between;align-items:center;font-size:14px}.parts-popover-heading button{font-size:22px}.viewer-parts-popover .parts-panel{margin:12px 0 0}.viewer-parts-popover .parts-row{min-height:40px}.viewer-parts-popover::backdrop{background:transparent}@media(max-width:760px){.viewer-parts-popover{top:auto!important;left:0!important;right:0;bottom:0;width:100%;max-height:70dvh;border-radius:20px 20px 0 0;padding:18px 24px max(24px,env(safe-area-inset-bottom))}.viewer-parts-popover::backdrop{background:#102d3250}.viewer-parts-popover .parts-row{min-height:48px}.viewer-tools{justify-content:flex-start}}@media(min-width:761px){.configurator>.download-actions{display:none}.configurator>.controls-stack{grid-column:1;grid-row:1}.configurator>.viewer{grid-column:2;grid-row:1}}.model-title{display:flex;justify-content:space-between;align-items:center;gap:24px}#model-downloads{flex:0 0 330px}.download-actions{min-width:0;color:#c8d8cb}.download-actions .export-buttons{display:grid;grid-template-columns:1fr 1fr 40px;gap:8px;margin:0}.download-actions .export-buttons button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px}.download-actions .export-buttons>button:first-child{background:#d3e5ca;color:#173d35}.download-actions .export-buttons .secondary{color:#d3e5ca;border-color:#648b77}.download-actions .download-info{width:40px;height:40px;min-width:40px;color:#d3e5ca}.download-actions .build-status{margin:10px 0 0;font-size:12px}.export-help{position:fixed;inset:auto;margin:0;max-height:65dvh;overflow-y:auto}.export-help::backdrop{background:transparent}.parameter-expander{border-top:1px solid #dce3d4;margin:0;padding:0}.parameter-expander summary{cursor:pointer;padding:16px 0;font-size:12px;font-weight:600;color:#375b49}.parameter-expander[open] summary{margin-bottom:8px}@media(max-width:760px){#model-downloads{display:none}.model-title{display:block}.configurator>.download-actions{grid-row:2;margin:8px 0}.controls-stack{grid-row:3}.viewer-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:10px;padding:0}.viewer-tools{display:contents}.view-modes{grid-column:1;grid-row:1;width:max-content}.viewer-tools>.fit-view-button:last-child{position:static;grid-column:2;grid-row:1;width:36px;padding:8px}.fit-view-button span{display:none}.viewer-tools>.measurements-button{grid-column:1;grid-row:2}.viewer-toolbar{grid-template-columns:1.4fr 1fr 1fr}.view-modes{grid-column:1 / 3}.viewer-tools>.fit-view-button:last-child{grid-column:3;justify-self:end}.explode-control{grid-column:2;grid-row:2}.explode-control button{width:100%;height:100%}.parts-tool-button{grid-column:3;grid-row:2}.transparency-control{grid-column:1 / -1;grid-row:3;display:flex;padding:0}.transparency-control input{flex:1;width:0;min-width:0}.viewer-toolbar button{font-size:11px;padding:8px 5px}}#model-downloads>.download-actions{width:100%}.download-actions .export-help p{color:#233c32;font-size:13px;line-height:1.6;margin:12px 0}.viewer-toolbar{display:flex;align-items:flex-start;flex-wrap:wrap}.orientation-controls{display:flex;align-items:center;gap:3px}.orientation-controls button{background:transparent;color:#527562;font-size:12px;padding:10px}.viewer .orientation-controls button{color:#c3e3cc}.orientation-controls button[aria-pressed=true]{background:#d3e5ca;color:#173d35}.viewer-tools{margin-left:auto}.transparency-popover{position:fixed;inset:auto;margin:0;width:280px;max-width:calc(100vw - 32px);padding:20px;border:1px solid #c6d4c3;border-radius:16px;background:#f6f6ed;color:#233c32;box-shadow:0 12px 40px #102d3240}.transparency-popover .transparency-control{display:flex;flex-direction:column;align-items:stretch;color:#233c32;padding:0;gap:14px}.transparency-popover .transparency-control span{justify-content:space-between}.transparency-popover .transparency-control input{width:100%;accent-color:#285b48}.transparency-popover::backdrop{background:transparent}@media(max-width:760px){.viewer-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px 4px}.view-modes{grid-column:1;grid-row:1}.orientation-controls{grid-column:2;grid-row:1;justify-self:end;gap:0}.orientation-controls button{font-size:11px;padding:10px 6px}.viewer-tools{display:flex;grid-column:1 / -1;grid-row:2;margin:0;justify-content:space-between;gap:4px;flex-wrap:nowrap}.viewer-tools button,.viewer-tools>.fit-view-button:last-child{position:static;width:42px;height:42px;padding:10px}.viewer-tools .tool-label,.fit-view-button span{display:none}.viewer-tools .tool-icon{width:19px;height:19px}.transparency-popover .transparency-control input{flex:auto}}.download-version{display:none}.download-actions .export-buttons>button:first-of-type{background:#d3e5ca;color:#173d35}@media(max-width:760px){.title-version{display:none}.download-version{display:flex;align-items:center;justify-content:center;width:40px;font-size:12px;color:#c8d8cb}.download-actions .export-buttons{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr) 40px;gap:6px}.download-actions .export-buttons button{padding:10px 6px;font-size:12px}.viewer{position:relative;padding-bottom:52px}.viewer-tools{position:absolute;bottom:0;left:0;right:0;padding:0}}@media(max-width:760px){.viewer-toolbar{position:static}}.orientation-controls{padding:3px 0}.view-modes button,.orientation-controls button{padding-block:8px;line-height:1.25}@media(max-width:760px){.model-title h1{margin-bottom:0}}.model-card-art{background:#173d35}.model-card-art .art-caption{color:#c3e3cc}.model-card-art .model-artwork{display:block;object-fit:contain;height:auto}body{min-height:100dvh;display:flex;flex-direction:column}body>main{flex:1 0 auto;width:100%}.site-header,.site-footer{flex-shrink:0}.site-header,.site-footer,.model-title{background:var(--surface);color:var(--text);border-color:var(--line)}body:has(.model-page) .site-header,body:has(.model-page) .site-footer,.model-page .model-title{background:#173d35;color:#f3f4e9;border-color:#31564a}.home{max-width:1560px;margin:0 auto;padding-bottom:72px}.home-intro{padding-top:clamp(48px,6vh,90px)}.home .lede,.home .project-card p,.home .subtle-link{color:var(--muted)}.model-card-copy{background:var(--surface-raised);color:var(--text)}.featured-model{border-color:var(--line);border-radius:16px}.featured-model:hover{border-color:#718a7b;box-shadow:0 12px 36px #0002}.home .pill{background:#39473e;color:var(--accent)}.home .text-action{color:var(--accent)}.model-page,.export-help,.viewer-parts-popover,.transparency-popover{--muted: #68786d;--line: #d9e0d5}.controls-stack{color:#233c32;color-scheme:light}@media(max-width:760px){.home{padding-bottom:48px}.home-intro h1{font-size:clamp(36px,8vw,52px);letter-spacing:-1.8px}}.about-copy .lede{color:var(--text)}.project-card:hover h3{color:var(--accent)}.home-greeting{display:flex;align-items:center;gap:24px;margin-bottom:24px}.home-greeting h1{margin:0}.home-socials{display:flex;flex-shrink:0;gap:6px}.home-socials a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--muted)}.home-socials a:hover{color:var(--accent);background:var(--surface-raised)}.home-socials svg{width:22px;height:22px}.home-about-link{display:inline-flex;align-items:center;gap:10px;margin-top:16px;color:var(--accent);font-size:14px}.home-about-link:hover{text-decoration:underline;text-underline-offset:4px}.site-footer.minimal-footer{border-top:0;justify-content:flex-end}@media(max-width:600px){.home-greeting{gap:12px;flex-wrap:wrap}.home-socials{gap:2px}.home .home-greeting h1{font-size:clamp(24px,6.8vw,32px);letter-spacing:-1.2px}}.about-page{align-content:start}.about-back{grid-column:1 / -1;justify-self:start;display:inline-flex;gap:8px;align-items:center;margin-bottom:32px;padding:8px 0;color:var(--accent);font-size:14px}.about-back:hover{text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){.viewer{margin-inline:calc(-1 * var(--workspace-gutter));border-radius:0}.viewer-toolbar{padding-inline:var(--workspace-gutter)}.viewer-tools{left:var(--workspace-gutter);right:var(--workspace-gutter);border-radius:0 0 16px 16px;overflow:hidden}}@media(max-width:760px){.viewer{overflow:visible}.viewer-stage{z-index:0}.viewer .viewer-canvas,.viewer .measurement-overlay{top:calc(-1 * var(--canvas-extension, 0px));height:calc(100% + var(--canvas-extension, 0px))}.model-page .model-title{position:relative;z-index:2;transition:background-color .22s ease}.model-page .model-title[data-model-under]{background-color:#173d3599}.viewer .view-modes,.viewer .orientation-controls,.viewer .viewer-tools{z-index:2}.viewer .view-modes,.viewer .orientation-controls{position:relative;transition:background-color .22s ease}.viewer .orientation-controls{background:#173d35;border-radius:7px}.viewer .view-modes[data-model-under],.viewer .orientation-controls[data-model-under]{background-color:#173d3599}}@media(prefers-reduced-motion:reduce){.model-page .model-title,.viewer .view-modes,.viewer .orientation-controls{transition:none}}@media(min-width:761px){.viewer-stage{z-index:0}.viewer .viewer-canvas,.viewer .measurement-overlay{top:calc(-1 * var(--canvas-extension, 0px));height:calc(100% + var(--canvas-extension, 0px))}.viewer-toolbar{pointer-events:none}.viewer-toolbar>*{pointer-events:auto}.viewer .view-modes,.viewer .orientation-controls,.viewer .viewer-tools{position:relative;border-radius:7px;transition:background-color .22s ease}.viewer .orientation-controls,.viewer .viewer-tools{background:#173d35}.viewer [data-model-under]{background-color:#173d3599}}@media(prefers-reduced-motion:reduce){.viewer .view-modes,.viewer .orientation-controls,.viewer .viewer-tools{transition:none}}@media(max-width:760px){.viewer{height:var(--mobile-viewer-height, 60dvh);min-height:220px}}html,body{background-color:#1e1e20}html:has(.model-page),body:has(.model-page){background-color:#173d35}.shade-profile{padding:12px 0}.shade-profile svg{display:block;width:100%;height:180px;color:var(--ink, #285b48)}.shade-presets{display:flex;gap:8px;flex-wrap:wrap}.shade-presets button{border:1px solid #a4b6a9;border-radius:6px;padding:6px 12px;color:inherit;background:transparent;cursor:pointer}.parameter-control select{width:100%;padding:8px;border:1px solid #a4b6a9;border-radius:6px;color:inherit;background:transparent;font:inherit}.viewer-stage[data-generating] .viewer-canvas,.viewer-stage[data-generating] .measurement-overlay,.viewer-stage[data-generating] .viewer-loading-art{visibility:hidden;pointer-events:none}.viewer-generating{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#d4e2ca;font-size:14px;z-index:2}.viewer-spinner{width:36px;height:36px;border:3px solid #d4e2ca40;border-top-color:currentColor;border-radius:50%;animation:viewer-spin .8s linear infinite}@keyframes viewer-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.viewer-spinner{animation:none}}.viewer-toolbar-backdrop{position:absolute;inset:0 0 auto;height:var(--toolbar-backdrop-height, 0px);z-index:1;pointer-events:none;background-color:transparent;transition:background-color .22s ease}.viewer:has(.viewer-toolbar[data-model-under]) .viewer-toolbar-backdrop{background-color:#173d3599}.viewer .viewer-toolbar[data-model-under],.viewer .viewer-toolbar[data-model-under] .view-modes,.viewer .viewer-toolbar[data-model-under] .orientation-controls{background-color:transparent}@media(min-width:761px){.viewer .viewer-toolbar[data-model-under] .viewer-tools{background-color:transparent}}@media(prefers-reduced-motion:reduce){.viewer-toolbar-backdrop{transition:none}}.cell-canvas{display:block;width:100%;max-height:280px;color:#285b48;touch-action:none}.cell-canvas circle{cursor:grab}.cell-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.cell-fields label{display:flex;flex-direction:column;gap:4px;font-size:12px}.cell-fields input,.cell-fields select{min-width:0;width:100%;padding:8px;font:inherit;border:1px solid #a4b6a9;border-radius:6px;background:transparent;color:inherit}.cell-editor .shade-presets{margin:10px 0}.cell-editor button[aria-pressed=true]{background:#d3e5ca}.cell-cutaways{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.cell-cutaways label{display:flex;align-items:center;gap:6px;font-size:13px}.editor-preset{display:flex;flex-direction:column;gap:6px;font-size:12px;margin:8px 0 16px}.editor-preset select,.cell-fields select{width:100%;padding:8px;border:1px solid #a4b6a9;border-radius:6px;background:transparent;color:inherit;font:inherit}.node-tab-bar{display:flex;align-items:stretch;border-bottom:1px solid #a4b6a9;margin-top:18px}.node-tabs{display:flex;overflow-x:auto;flex:1;min-width:0}.node-tabs button{flex-shrink:0;border:0;border-bottom:3px solid transparent;background:transparent;border-radius:5px 5px 0 0;padding:10px 9px;color:inherit;font:inherit;font-size:12px}.node-tabs button[aria-selected=true]{border-bottom-color:#285b48;background:#e1e8dc;font-weight:600}.node-add{flex-shrink:0;align-self:center;font-size:22px}.cell-fields{border:1px solid #c7d1c8;border-top:0;margin-top:0;padding:14px}.cell-fields .number-stepper input{padding:6px 1px;border:0;border-radius:0}.cell-fields .number-stepper{width:100%}.node-remove{justify-self:end;align-self:end}.profile-graph-scroll{overflow-x:auto}.shade-profile svg{height:auto;min-width:380px;width:100%}.shade-profile circle{cursor:ew-resize;touch-action:none}.profile-dimension{background:#f6f6ed;padding:3px;font-size:12px}.profile-dimension label{display:flex;flex-direction:column;gap:5px}.profile-dimension .number-stepper{width:100%}.profile-dimension .number-stepper input{padding:6px 0}.cell-canvas circle{touch-action:none}.cell-fields .number-stepper,.profile-dimension .number-stepper{flex:none}.shade-profile svg{min-width:0}.profile-dimension{font-size:15px}.profile-dimension .number-stepper{grid-template-columns:25px minmax(0,1fr) 25px}.profile-dimension .number-stepper input{font-size:17px}.profile-dimension .number-stepper button{font-size:21px}.shade-readouts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 1.4rem;background:color-mix(in srgb,currentColor 14%,transparent);border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:12px;overflow:hidden}.shade-readout{background:#edf0e3;padding:1rem;display:flex;flex-direction:column;gap:.45rem}.shade-readout>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.shade-readout strong{font-size:1.75rem;line-height:1.2;font-weight:500;font-variant-numeric:tabular-nums}.shade-readout em{font-size:.8rem;font-style:normal}.settings-tab-list{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:22px;padding-bottom:10px;border-bottom:1px solid #d6ddcf}.settings-tab-list button{flex:1 0 auto;border:0;border-bottom:3px solid transparent;border-radius:5px 5px 0 0;padding:9px 10px;background:transparent;color:#456451;font:inherit;font-size:12px;cursor:pointer}.settings-tab-list button:hover{background:#e8eddf}.settings-tab-list button[aria-selected=true]{border-bottom-color:#285b48;background:#e1e8dc;color:#173d30;font-weight:600}.settings-tab-list button:focus-visible{outline:2px solid #285b48;outline-offset:2px}.settings-tab-content{padding:0 0 8px}
