:root{--forest: #1c3e2f;--forest-2: #173427;--forest-hover: #24503d;--sage: #76a36b;--sage-2: #91b589;--sage-pale: #e3ece4;--sage-wash: #f2f6f1;--ink: #1f2b25;--muted: #5b675f;--line: #d9e1d8;--line-strong: #b9c7b6;--paper: #ffffff;--canvas: #e8eee6;--error: #a3322a;--error-bg: #fdf0ee;--ok: #2f7a43;--radius: 8px;--radius-sm: 5px;--header-h: 64px;--usp-h: 34px;--bar-h: 78px;--panel-w: 460px;--font: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Caudex", Georgia, serif;--ease: cubic-bezier(.16, 1, .3, 1);--shadow: 0 10px 30px rgba(20, 45, 32, .14)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-underline-offset:3px}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}img{max-width:100%}:focus-visible{outline:3px solid var(--sage);outline-offset:2px}::selection{background:#cfe2c6}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:#fff;padding:10px 14px;border-radius:var(--radius-sm)}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:40;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 28px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;min-width:0}.brand-logo{width:230px;height:33px;object-fit:contain;object-position:left center}.header-ctas{display:flex;align-items:center;gap:4px}.header-link{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border-radius:999px;font-size:13px;font-weight:700;color:var(--forest);text-decoration:none;white-space:nowrap}.header-link:hover{background:var(--sage-wash)}.phone-link{margin-left:4px}.header-cta{display:inline-flex;align-items:center;gap:8px;margin-left:8px;padding:11px 18px;border-radius:999px;background:var(--forest);color:#fff;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 4px 14px #1c3e2f38}.header-cta:hover{background:var(--forest-hover)}.header-mobile{display:none;align-items:center;gap:8px}.icon-button{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--forest);text-decoration:none}.icon-button:hover{background:var(--sage-wash)}.mobile-menu{display:none}.usp-strip{height:var(--usp-h);background:var(--forest);color:#e9f1e7;overflow:hidden;display:flex;align-items:center}.usp-track{display:flex;gap:34px;padding:0 28px;margin:0 auto;white-space:nowrap;font-size:12px;font-weight:600;letter-spacing:.01em}.usp-track span{display:inline-flex;align-items:center;gap:7px}.usp-track svg{color:var(--sage-2)}@media(min-width:1101px){.usp-track .dup{display:none}}.designer{display:grid;grid-template-columns:minmax(0,1fr) var(--panel-w);height:calc(100vh - var(--header-h) - var(--usp-h) - var(--bar-h));height:calc(100dvh - var(--header-h) - var(--usp-h) - var(--bar-h));min-height:520px}.preview-section{position:relative;background:var(--canvas);overflow:hidden;min-width:0}#room-canvas{position:absolute;top:0;right:0;bottom:0;left:0}#room-canvas canvas{display:block;width:100%;height:100%}.scene-header{position:absolute;top:18px;left:22px;right:18px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;pointer-events:none}.scene-header>*{pointer-events:auto}.scene-header>div:first-child{padding:8px 12px;border-radius:10px;background:#ffffffd6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.design-name{display:block;font-family:var(--display);font-size:22px;line-height:1.15;color:var(--forest);text-shadow:0 1px 0 rgba(255,255,255,.6)}.design-name b{font-weight:700}.scene-subtitle{display:block;margin-top:3px;font-size:12px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.scene-tools{display:flex;gap:8px}.tool-button{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 14px;border-radius:999px;background:#ffffffeb;border:1px solid var(--line);font-size:12px;font-weight:800;color:var(--forest);box-shadow:0 2px 10px #0000000f}.tool-button:hover,.scene-tools .icon-button:hover{background:#fff}.tool-button[aria-pressed=true]{background:var(--forest);color:#fff;border-color:var(--forest)}.scene-tools .icon-button{background:#ffffffeb;box-shadow:0 2px 10px #0000000f}.feature-callout{position:absolute;top:72px;left:50%;z-index:4;transform:translate(-50%,-8px);display:flex;align-items:center;gap:10px;padding:9px 16px 9px 12px;border-radius:999px;background:#1c3e2ff0;color:#fff;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .25s,transform .35s var(--ease);max-width:calc(100% - 32px)}.feature-callout.visible{opacity:1;transform:translate(-50%)}.feature-callout small{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#bfe0b5}.feature-callout strong{display:block;font-size:13px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.callout-dot{width:10px;height:10px;border-radius:50%;background:#8fd16a;box-shadow:0 0 #8fd16ab3;animation:ping 1.4s ease-out infinite;flex-shrink:0}@keyframes ping{70%{box-shadow:0 0 0 10px #8fd16a00}to{box-shadow:0 0 #8fd16a00}}.viewer-toolbar{position:absolute;left:50%;bottom:18px;transform:translate(-50%);z-index:3;display:flex;gap:8px;align-items:center}.view-tabs,.zoom-controls{display:flex;align-items:center;padding:4px;border-radius:999px;background:#fffffff2;border:1px solid var(--line);box-shadow:0 4px 16px #00000014}.view-tabs button{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;font-size:12px;font-weight:800;color:var(--forest);white-space:nowrap}.view-tabs button:hover{background:var(--sage-wash)}.view-tabs button.selected{background:var(--forest);color:#fff}.zoom-controls button{display:grid;place-items:center;width:38px;height:38px;border-radius:999px;color:var(--forest)}.zoom-controls button:hover{background:var(--sage-wash)}.chip-button{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 12px;border-radius:999px;background:#ffffffeb;border:1px solid var(--line);font-size:12px;font-weight:800;color:var(--forest)}.chip-button:hover{background:#fff}.scene-fallback{height:100%;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center;padding:30px;color:var(--muted);max-width:520px;margin:auto}.panel-wrap{display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--line);background:#fff}.step-nav{display:flex;gap:2px;padding:10px 14px 0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;flex-shrink:0}.step-nav::-webkit-scrollbar{display:none}.step-link{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 8px 10px;min-width:58px;font-size:11px;font-weight:700;color:var(--muted)}.step-link:hover{color:var(--forest)}.step-dot{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--sage-wash);border:1px solid var(--line);font-size:11px;font-weight:800}.step-link.complete .step-dot{background:var(--sage);border-color:var(--sage);color:#fff}.step-link.active{color:var(--forest)}.step-link.active .step-dot{background:var(--forest);border-color:var(--forest);color:#fff}.step-link.active:after{content:"";position:absolute;left:10%;right:10%;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--forest)}.step-name{white-space:nowrap}.step-link{flex:1 0 auto}.configuration{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:22px 26px 28px;scroll-padding-top:16px}.panel-heading{margin-bottom:20px}.progress-note{display:flex;justify-content:space-between;gap:10px;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.06em}.progress-note span:last-child{text-transform:none;letter-spacing:0;font-weight:600}.panel-heading h1{font-family:var(--display);font-weight:700;font-size:30px;line-height:1.12;color:var(--forest);outline:none}.panel-heading>p{margin-top:8px;font-size:14px;color:var(--muted)}.option-group{margin-bottom:24px}.group-head{margin-bottom:10px}.option-group h2,.process h2,.why-card h2,.included h2,.form-intro h2{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}.group-hint{font-size:12px;color:var(--muted);margin-top:2px}.small-note{font-size:12px;color:var(--muted);margin-top:10px;display:flex;gap:6px;align-items:flex-start}.small-note svg{margin-top:2px;color:var(--sage)}.usp-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--sage-wash);font-size:12px;font-weight:600;color:var(--forest)}.usp-note svg{color:var(--sage);margin-top:1px}.field-label{display:block;font-size:12px;font-weight:800;margin:14px 0 7px}.field-label span{font-weight:600;color:var(--muted)}.choice{position:relative;display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:border-color .15s,background .15s,box-shadow .15s}.choice:hover{border-color:var(--line-strong);background:var(--sage-wash)}.choice.selected{border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest);background:#f4f8f3}.choice-visual{display:grid;place-items:center;color:var(--forest);flex-shrink:0}.choice-copy{flex:1;min-width:0}.choice-copy strong{display:block;font-size:14px;font-weight:800;line-height:1.3}.choice-copy>span{display:block;margin-top:2px;font-size:12px;color:var(--muted);line-height:1.4}.choice-check{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-strong);flex-shrink:0;color:#fff}.choice.selected .choice-check{background:var(--forest);border-color:var(--forest)}.just-selected{animation:picked .9s var(--ease)}@keyframes picked{0%{box-shadow:0 0 #76a36ba6,inset 0 0 0 1px var(--forest)}to{box-shadow:0 0 0 10px #76a36b00,inset 0 0 0 1px var(--forest)}}.purpose-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.purpose-options .choice{flex-direction:column;align-items:flex-start;padding:14px;min-height:128px}.purpose-options .choice-visual{width:44px;height:44px;border-radius:10px;background:var(--sage-pale)}.purpose-options .choice-check{position:absolute;top:12px;right:12px}.why-card{display:flex;gap:14px;align-items:flex-start;margin:18px 0;padding:14px;border-radius:var(--radius);background:var(--sage-wash)}.why-card img{width:112px;height:92px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.why-card ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px;font-size:12.5px}.why-card li{display:flex;gap:7px;align-items:flex-start}.why-card li svg{color:var(--sage);margin-top:2px}.restored{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--sage-pale);font-size:13px;color:var(--forest)}.restored button{font-weight:800;text-decoration:underline}.style-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.style-options .choice{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px 12px}.style-options .choice-visual{width:100%;height:74px;background:linear-gradient(#f4f7f2,#e8eee6);border-radius:var(--radius-sm)}.style-options .choice-visual svg{height:70px;width:auto}.style-options .choice-check{position:absolute;top:10px;right:10px;background:#fff}.style-options .choice.selected .choice-check{background:var(--forest)}.dimension-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.size-chip{height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:800}.size-chip:hover{border-color:var(--line-strong)}.size-chip.selected{background:var(--forest);border-color:var(--forest);color:#fff}.dimension{margin-bottom:14px}.dimension-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.dimension label{font-size:13px;font-weight:800}.dimension-toggle{display:grid;grid-template-columns:40px 74px 40px;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden}.dimension-toggle button{display:grid;place-items:center;height:38px;color:var(--forest)}.dimension-toggle button:hover:not(:disabled){background:var(--sage-wash)}.dimension-toggle output{text-align:center;font-weight:800;font-variant-numeric:tabular-nums}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;margin:14px 0 4px;border-radius:6px;background:linear-gradient(to right,var(--forest) var(--fill, 50%),#dfe6dc var(--fill, 50%));cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--forest);box-shadow:0 2px 6px #0000002e}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--forest)}.range-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.area-note{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--sage-wash);font-size:13px}.area-note svg{color:var(--sage)}.area-note span{flex-basis:100%;font-size:11.5px;color:var(--muted);padding-left:23px}.segmented{display:flex;border:1px solid var(--line-strong);border-radius:999px;padding:3px;gap:2px}.segmented>button{flex:1;min-height:38px;border-radius:999px;font-size:13px;font-weight:800;padding:0 8px;white-space:nowrap}.segmented>button:hover:not(.selected){background:var(--sage-wash)}.segmented>button.selected{background:var(--forest);color:#fff}.range-tabs{display:flex;gap:6px;margin-bottom:12px}.range-tabs button{flex:1;height:36px;border-radius:999px;border:1px solid var(--line);font-size:12.5px;font-weight:800}.range-tabs button.selected{background:var(--sage-pale);border-color:var(--forest);color:var(--forest)}.swatch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.swatch-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.swatch{position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:5px 5px 8px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:border-color .15s,box-shadow .15s}.swatch:hover{border-color:var(--line-strong)}.swatch.selected{border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}.swatch-image{display:block;height:58px;border-radius:5px;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px #0000000f}.swatch-name{display:block;margin:7px 3px 0;font-size:12.5px;font-weight:800;line-height:1.25}.swatch-detail{display:block;margin:2px 3px 0;font-size:11px;color:var(--muted);line-height:1.35}.swatch-check{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ffffffeb;color:#fff}.swatch.selected .swatch-check{background:var(--forest)}.swatch:not(.selected) .swatch-check{opacity:0}.selected-line{margin-top:10px;font-size:12.5px;color:var(--muted)}.selected-line strong{color:var(--ink)}.door-options,.window-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.window-options{grid-template-columns:repeat(3,minmax(0,1fr))}.door-choice,.window-choice{flex-direction:column;align-items:flex-start;gap:6px;padding:10px}.door-choice .choice-visual,.window-choice .choice-visual{width:100%;height:56px}.door-choice .choice-visual svg,.window-choice .choice-visual svg{height:56px;width:auto}.door-choice .choice-check,.window-choice .choice-check{position:absolute;top:8px;right:8px;background:#fff}.door-choice.selected .choice-check,.window-choice.selected .choice-check{background:var(--forest)}.window-choice .choice-copy strong{font-size:13px}.window-choice .choice-copy>span{font-size:11px}.use-note{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:12px;border-radius:var(--radius-sm);background:var(--sage-wash);font-size:13px}.use-note.warn{background:#fff6e5;color:#6a4a09}.heating-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.heating-options.three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice.compact{flex-direction:column;align-items:flex-start;gap:6px;padding:12px}.choice.compact .choice-check{position:absolute;top:10px;right:10px}.toggle-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 4px;border-bottom:1px solid var(--line)}.toggle-row>span:nth-child(2){flex:1}.toggle-row strong{display:block;font-size:14px;font-weight:800}.toggle-row small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.toggle-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--sage-pale);color:var(--forest)}.switch{width:44px;height:26px;padding:3px;border-radius:999px;background:#cbd5c8;flex-shrink:0;transition:background .2s}.switch>span{display:block;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s var(--ease)}.toggle-row.selected .switch{background:var(--forest)}.toggle-row.selected .switch>span{transform:translate(18px)}.toggle-row.just-selected{animation:none;background:linear-gradient(90deg,rgba(118,163,107,.18),transparent)}.deck-options{padding:4px 0 6px}.standard-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:var(--radius);background:var(--sage-wash);border:1px solid var(--line);color:var(--forest)}.standard-card strong{display:block;font-size:14px;color:var(--ink)}.standard-card small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}.mood-preview{margin-top:10px;width:100%}.text-button{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--forest);text-decoration:underline;min-height:40px}.included{margin:6px 0 4px;padding:16px;border-radius:var(--radius);background:var(--forest);color:#e9f1e7}.included h2{color:#fff}.included ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px;font-size:13px}.included li{display:flex;gap:8px;align-items:flex-start}.included svg{color:var(--sage-2);margin-top:2px}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;background:var(--forest);color:#fff;font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 4px 14px #1c3e2f33}.primary:hover:not(:disabled){background:var(--forest-hover)}.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--forest);color:var(--forest);font-size:14px;font-weight:800;text-decoration:none;background:#fff}.secondary:hover{background:var(--sage-wash)}.back-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:13px;font-weight:800;color:var(--forest)}.back-button:hover{text-decoration:underline}.quiet-note{font-size:12px;color:var(--muted)}.quote-investment{margin:0 0 16px;padding:16px 18px;border-radius:var(--radius);background:var(--forest);color:#e9f1e7}.quote-investment>span{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#bfe0b5}.quote-investment>strong{display:block;margin:4px 0;font-family:var(--display);font-size:34px;line-height:1.1;color:#fff}.quote-investment.quote-locked>strong{font-size:24px}.quote-investment>p{font-size:12.5px;color:#d6e4d2}.quote-investment .secondary{margin-top:10px}.finance-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:12.5px;font-weight:800;color:#fff}.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}.cta-card{display:flex;align-items:center;gap:10px;text-align:left;padding:12px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;transition:border-color .15s,background .15s}.cta-card:hover{border-color:var(--forest);background:var(--sage-wash)}.cta-card>span:nth-child(2){flex:1;min-width:0}.cta-card strong{display:block;font-size:13.5px;font-weight:800;line-height:1.25}.cta-card small{display:block;font-size:11.5px;color:var(--muted);margin-top:2px;line-height:1.35}.cta-card>svg:last-child{color:var(--muted)}.cta-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--sage-pale);color:var(--forest);flex-shrink:0}.cta-card.primary-card{grid-column:1 / -1;background:var(--sage-wash);border-color:var(--sage)}.cta-card.primary-card .cta-icon{background:var(--forest);color:#fff}.design-summary{margin-bottom:16px;border:1px solid var(--line);border-radius:var(--radius);padding:0 14px}.design-summary summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;cursor:pointer;list-style:none;font-size:13px}.design-summary summary::-webkit-details-marker{display:none}.design-summary summary>span{display:flex;align-items:center;gap:8px}.design-summary summary>span:last-child{color:var(--muted);font-weight:700;font-size:12px}.design-summary[open] summary svg:last-child{transform:rotate(180deg)}.design-summary dl{margin:0 0 8px;font-size:12.5px}.design-summary dl>div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-top:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;font-weight:700;text-align:right}.process{margin:18px 0;padding:16px;border-radius:var(--radius);background:var(--sage-wash)}.process ol{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:12px}.process li{display:flex;gap:10px;align-items:flex-start}.process li>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--forest);color:#fff;font-size:12px;font-weight:800;flex-shrink:0}.process strong{display:block;font-size:13.5px}.process small{display:block;font-size:12px;color:var(--muted)}.reference{margin:12px 0;font-size:12.5px;color:var(--muted)}.quote-back{margin-top:8px}#quote-form{padding:16px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 2px 12px #142d200d}.form-intro p{font-size:12.5px;color:var(--muted);margin:3px 0 2px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}input:not([type=range]):not([type=checkbox]),select,textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #c3cebf;border-radius:var(--radius-sm);background:#fff;font-size:16px}input::placeholder,textarea::placeholder{color:#8a948c}input:focus,select:focus,textarea:focus{border-color:var(--forest);outline:3px solid rgba(118,163,107,.35);outline-offset:0}input.invalid:not([type=range]),select.invalid{border-color:var(--error);background-color:var(--error-bg)}input.valid:not([type=range]){border-color:#7fae75;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%232f7a43' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9.5l3.2 3.2L14 6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:34px}.field-error{margin-top:5px;font-size:12px;font-weight:700;color:var(--error)}.field-hint{margin-top:5px;font-size:11.5px;color:var(--muted)}.extra-details{margin:14px 0 4px}.extra-details summary{display:flex;align-items:center;justify-content:space-between;min-height:40px;font-size:13px;font-weight:700;color:var(--forest);cursor:pointer;list-style:none}.extra-details summary::-webkit-details-marker{display:none}.privacy-copy{margin:12px 0;font-size:12px;color:var(--muted)}.form-error{padding:10px 12px;border-radius:var(--radius-sm);background:var(--error-bg);color:var(--error);font-size:13px;margin-bottom:10px}.quote-submit{width:100%;justify-content:space-between}.form-reassurance{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:10px;font-size:12px;color:var(--muted)}.or-divider{display:flex;align-items:center;gap:12px;margin:16px 0 12px;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.or-divider:before,.or-divider:after{content:"";flex:1;height:1px;background:var(--line)}.investment-bar{position:sticky;bottom:0;z-index:30;height:var(--bar-h);display:flex;align-items:center;gap:18px;padding:0 22px 0 28px;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px #142d2012}.investment-copy{flex:1;min-width:0}.investment-copy>span{display:block;font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.investment-copy>div{display:flex;align-items:center;gap:6px}.investment-copy strong{font-family:var(--display);font-size:26px;line-height:1.15;color:var(--forest);font-variant-numeric:tabular-nums}.investment-bar.price-locked .investment-copy strong{font-size:22px}.investment-copy small{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.price-pending{animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.45}}.price-disclosure{position:relative}.price-disclosure[hidden]{display:none}.price-disclosure summary{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;cursor:pointer;list-style:none;color:var(--forest)}.price-disclosure summary::-webkit-details-marker{display:none}.price-popover{position:absolute;bottom:42px;left:-40px;width:340px;max-height:60vh;overflow-y:auto;padding:18px;border-radius:var(--radius);background:var(--forest);color:#e9f1e7;box-shadow:var(--shadow);font-size:12.5px}.price-popover p+p,.price-popover p+div,.price-popover div+p{margin-top:10px}.price-popover strong{color:#fff;font-size:14px}.price-items{border-top:1px solid rgba(255,255,255,.18);padding-top:8px}.price-item{display:flex;justify-content:space-between;gap:12px;padding:3px 0;font-size:12px}.price-item span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.bar-actions{display:flex;gap:6px}.bar-link{display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:800;color:var(--forest);border:1px solid var(--line);white-space:nowrap}.bar-link:hover{background:var(--sage-wash);border-color:var(--line-strong)}.bar-nav{display:flex;gap:8px;align-items:center}.bottom-back{width:48px;padding:0}.bottom-back[hidden]{display:none}.bottom-next{min-width:210px}.help-strip{display:none}#notice{position:fixed;left:50%;bottom:calc(var(--bar-h) + 16px);z-index:60;transform:translate(-50%,16px);max-width:min(560px,calc(100vw - 32px));padding:12px 18px;border-radius:var(--radius);background:var(--forest);color:#fff;font-size:13px;font-weight:600;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s,transform .3s var(--ease)}#notice.visible{opacity:1;transform:translate(-50%);pointer-events:auto}#notice input{width:min(480px,70vw);color:var(--ink)}.lead-dialog{width:min(520px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:14px;box-shadow:0 30px 80px #0a191259;overflow:auto}.lead-dialog::backdrop{background:#0e1e168c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lead-dialog form{position:relative;padding:26px 26px 22px}.dialog-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--muted)}.dialog-close:hover{background:var(--sage-wash);color:var(--ink)}.dialog-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--sage-pale);color:var(--forest);margin-bottom:12px}.dialog-icon.success{background:#e2f1df;color:var(--ok);border-radius:50%}.lead-dialog h2{font-family:var(--display);font-size:26px;color:var(--forest);padding-right:40px}.dialog-intro{margin:6px 0 4px;font-size:14px;color:var(--muted)}.dialog-intro .primary{margin-top:14px}.dialog-submit{width:100%;justify-content:space-between;margin-top:4px}.dialog-alt{margin-top:12px;text-align:center;font-size:13px;color:var(--muted)}.dialog-alt a{font-weight:800;color:var(--forest)}.lead-dialog .secondary{width:100%;margin-top:16px}.showroom-card{display:flex;gap:10px;align-items:flex-start;margin:12px 0 4px;padding:12px;border-radius:var(--radius-sm);background:var(--sage-wash);font-size:13px;color:var(--forest)}.showroom-card div{display:grid;gap:2px}.showroom-card strong{color:var(--ink)}.showroom-card span{color:var(--muted)}.showroom-card a{font-weight:800;display:inline-flex;align-items:center;gap:4px}.tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;animation:fade .2s}.tour-leaving{opacity:0;transition:opacity .18s}.tour.tour-center{background:#0c1c149e}@keyframes fade{0%{opacity:0}}.tour-spotlight{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px #0c1c149e;transition:all .35s var(--ease);pointer-events:none;outline:2px solid rgba(143,209,106,.9)}.tour-card{position:fixed;width:min(360px,calc(100vw - 24px));padding:18px 18px 14px;border-radius:14px;background:#fff;box-shadow:0 24px 60px #0000004d;transition:left .35s var(--ease),top .35s var(--ease)}.tour-card.tour-docked{left:12px!important;right:12px;bottom:12px;top:auto!important;width:auto;transform:none!important}.tour-progress{display:flex;gap:4px;margin-bottom:12px}.tour-progress span{flex:1;height:4px;border-radius:4px;background:#e2e8e0}.tour-progress span.done{background:var(--sage)}.tour-count{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.tour-card h2{margin-top:4px;font-family:var(--display);font-size:22px;line-height:1.2;color:var(--forest)}.tour-card p{margin-top:6px;font-size:14px;color:var(--muted)}.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.tour-actions>span{display:flex;gap:6px}.tour-skip,.tour-back{min-height:42px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:800;color:var(--muted)}.tour-back{color:var(--forest);border:1px solid var(--line)}.tour-skip:hover{color:var(--ink)}.tour-next{min-height:42px;padding:0 18px;font-size:13px}.no-script,.static-page{max-width:760px;margin:48px auto;padding:0 24px}.static-page h1{font-family:var(--display);color:var(--forest)}.static-page p{margin:16px 0;line-height:1.75}@media(min-width:1440px){:root{--panel-w: 520px}.configuration{padding:26px 34px 32px}.panel-heading h1{font-size:34px}}@media(max-width:1240px){.header-link span{display:none}.header-link{padding:10px}.header-link.phone-link span{display:inline}.bar-link span{display:none}.bar-link{width:44px;padding:0;justify-content:center}}@media(max-width:1100px){:root{--panel-w: 400px}.usp-track{gap:24px;padding:0 18px;font-size:11.5px;margin:0;animation:marquee 32s linear infinite}.bottom-next{min-width:170px}.view-tabs button{padding:0 11px}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:899px){:root{--header-h: 58px;--bar-h: 72px}.site-header{padding:0 14px}.brand-logo{width:190px;height:28px}.header-ctas{display:none}.header-mobile{display:flex}.header-cta.compact{margin:0;padding:10px 14px}.site-header.menu-open .mobile-menu{display:grid}.mobile-menu{position:absolute;top:calc(100% + 1px);left:0;right:0;gap:2px;padding:10px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.mobile-menu>*{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 12px;border-radius:var(--radius-sm);font-size:15px;font-weight:700;color:var(--forest);text-decoration:none;text-align:left}.mobile-menu>*:hover{background:var(--sage-wash)}.designer{display:block;height:auto;min-height:0}.preview-section{position:sticky;top:var(--header-h);z-index:20;height:44vh;min-height:250px;max-height:460px;height:clamp(250px,44svh,460px);border-bottom:1px solid var(--line)}.panel-wrap{border-left:0}.step-nav{padding:8px 10px 0}.configuration{overflow:visible;padding:18px 18px 28px}.scene-header{top:12px;left:14px;right:12px}.design-name{font-size:18px}.scene-subtitle{font-size:11px}.tool-button{height:38px;padding:0 12px}.scene-tools .icon-button{width:38px;height:38px}.viewer-toolbar{bottom:10px}.feature-callout{top:58px}.chip-button{height:38px}.investment-bar{position:fixed;left:0;right:0;bottom:0;padding:0 12px 0 16px;padding-bottom:env(safe-area-inset-bottom);height:calc(var(--bar-h) + env(safe-area-inset-bottom));gap:10px}body{padding-bottom:calc(var(--bar-h) + env(safe-area-inset-bottom))}.bar-actions{display:none}.bottom-next{min-width:0;padding:12px 18px}.investment-copy strong{font-size:21px}.investment-bar.price-locked .investment-copy strong{font-size:18px}.price-popover{position:fixed;left:12px;right:12px;bottom:calc(var(--bar-h) + 10px);width:auto}.help-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;padding:18px;font-size:13px;color:var(--muted);background:var(--sage-wash)}.help-strip a{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--forest)}.help-strip>span{flex-basis:100%;text-align:center}}@media(min-width:600px)and (max-width:899px){.header-ctas{display:flex}.header-ctas .header-link span,.header-ctas [data-action=tour]{display:none}.header-ctas .header-link{width:42px;height:42px;padding:0;justify-content:center;border:1px solid var(--line)}.header-ctas .header-cta{margin-left:4px;padding:10px 14px}.header-mobile .icon-button[href],.header-mobile .header-cta{display:none}}@media(max-width:560px){.brand-logo{width:150px;height:24px}.header-cta.compact span{display:none}.header-cta.compact{width:42px;height:42px;padding:0;justify-content:center}.header-mobile .icon-button{width:42px;height:42px}.usp-track{font-size:11px;gap:20px}.tool-button span{display:none}.tool-button{width:38px;padding:0;justify-content:center}.view-tabs{padding:3px}.view-tabs button{height:36px;padding:0 10px;font-size:11.5px;gap:5px}.view-tabs button svg{width:15px;height:15px}.zoom-controls{padding:3px}.zoom-controls button{width:36px;height:36px}.viewer-toolbar{gap:6px;width:calc(100% - 20px);justify-content:center}.chip-button span{display:none}.chip-button{width:38px;padding:0;justify-content:center}.configuration{padding:16px 16px 24px}.panel-heading h1{font-size:25px}.panel-heading>p{font-size:13.5px}.purpose-options .choice{min-height:118px;padding:12px}.why-card img{width:84px;height:84px}.swatch-grid,.swatch-grid.four{grid-template-columns:repeat(3,minmax(0,1fr))}.window-options{grid-template-columns:repeat(2,minmax(0,1fr))}.heating-options.three{grid-template-columns:repeat(3,minmax(0,1fr))}.heating-options.three .choice-copy>span{display:none}.cta-grid{grid-template-columns:1fr}.two-fields{grid-template-columns:1fr;gap:0}.segmented>button{font-size:12.5px;padding:0 4px}.investment-copy>span{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-copy small{display:none}.scene-header>div:first-child{padding:6px 10px}.design-name{font-size:16px}.scene-subtitle{font-size:10.5px;max-width:170px}.bottom-next{padding:12px 14px;font-size:13px}.bottom-next>span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-dialog form{padding:22px 18px 18px}.lead-dialog h2{font-size:23px}}@media(max-width:380px){.view-tabs button span{display:none}.view-tabs button{width:38px;padding:0;justify-content:center}.swatch-grid,.swatch-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(pointer:coarse){.size-chip,.range-tabs button{min-height:42px}input[type=range]{height:8px}input[type=range]::-webkit-slider-thumb{width:28px;height:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.usp-track{animation:none!important}}.scene-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.scene-overlay>*{pointer-events:auto}.scene-status{position:absolute;left:50%;top:72px;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:6px 8px 6px 12px;border-radius:999px;background:#fffffff0;border:1px solid var(--line);font-size:12px;font-weight:700;color:var(--muted);box-shadow:0 2px 10px #0000000f}.scene-status[hidden],.scene-info[hidden],.scene-details[hidden],.scene-overlay .scene-fallback[hidden]{display:none}.scene-status button{min-height:30px;padding:0 10px;border-radius:999px;background:var(--sage-wash);color:var(--forest);font-size:12px;font-weight:800}.scene-status.busy .scene-status-text:before{content:"";display:inline-block;width:12px;height:12px;margin-right:7px;vertical-align:-2px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--forest);animation:spin .8s linear infinite}.scene-status.busy button{display:none}@keyframes spin{to{transform:rotate(360deg)}}.scene-info{position:absolute;left:14px;bottom:70px;width:30px;height:30px;border-radius:50%;background:#ffffffeb;border:1px solid var(--line);color:var(--forest);font:italic 700 15px/1 Georgia,serif}.scene-overlay .scene-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center;background:var(--canvas);color:var(--muted)}.scene-overlay .scene-fallback p{max-width:420px}.scene-details{position:absolute;top:12px;right:12px;bottom:12px;left:12px;z-index:5;display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:12px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.scene-details header{display:flex;align-items:center;justify-content:space-between}.scene-details h3{font-family:var(--display);font-size:20px;color:var(--forest)}.scene-details header button{width:36px;height:36px;border-radius:50%;font-size:22px;color:var(--muted)}.scene-details-summary{font-size:13px;color:var(--ink)}.scene-details-actions{display:flex;flex-wrap:wrap;gap:8px}.scene-details-actions button{min-height:40px;padding:8px 14px;font-size:13px}.scene-details-log{flex:1;overflow:auto;margin:0;padding:10px;border-radius:8px;background:var(--sage-wash);font:11px/1.45 ui-monospace,Menlo,monospace;white-space:pre-wrap;word-break:break-word;color:var(--ink)}.dialog-polyfill{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:81;display:block}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0e1e168c}@media(max-width:899px){.scene-status{top:auto;bottom:60px;font-size:11px}.scene-info{bottom:62px}}
