@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/space-grotesk-latin.woff2)format("woff2")}.builder-page{width:min(1240px,100% - 32px);margin:0 auto;padding:clamp(48px,8vw,96px) 0}.project-drop{border:2px dashed var(--line);border-radius:var(--radius-lg);background:var(--panel);text-align:center;cursor:pointer;gap:8px;margin:32px 0 16px;padding:clamp(24px,5vw,48px);display:grid}.project-drop:hover,.project-drop:focus-within{border-color:var(--ink)}.project-drop input{width:min(420px,100%);margin:12px auto 0}.builder-status{color:var(--soft)}.builder-workspace{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:clamp(20px,4vw,48px);margin-top:32px;display:grid}.builder-canvas-panel,.builder-controls{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);padding:clamp(16px,3vw,28px)}.builder-canvas-panel canvas{border-radius:var(--radius-md);background:var(--panel);width:100%;height:auto;display:block}.builder-controls h2{overflow-wrap:normal;font-size:1.45rem}.builder-workspace button{transition:border-color .16s}.hero-scene{aspect-ratio:1}.hero-scene picture,.hero-scene img,.hero-scene canvas{width:100%;height:100%;display:block}.hero-scene picture,.hero-scene canvas{position:absolute;inset:0}.builder-controls .sun-direction-control{align-items:center;gap:8px;display:flex}.builder-controls .sun-direction-control input{width:auto;min-height:0;margin:0}.hero-timeline{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 14px;margin-top:16px;display:grid}.hero-timeline button{grid-row:1/4;min-width:76px}.hero-timeline label{font:500 11px/1.5 var(--font-mono);justify-content:space-between;margin:0;display:flex}.hero-timeline output{font-variant-numeric:tabular-nums}.hero-timeline input[type=range]{grid-column:2;width:100%;min-height:28px;margin:0;padding:0}.hero-time-bounds{color:var(--soft);font:400 10px/1.4 var(--font-mono);grid-column:2;justify-content:space-between;display:flex}.hero-example button{transition:border-color .16s}.builder-controls{gap:16px;display:grid;position:sticky;top:24px}.builder-controls label{gap:6px;font-weight:650;display:grid}.builder-controls input,.builder-controls select{width:100%}.builder-actions{gap:10px;display:grid}@media (width<=860px){.builder-workspace{grid-template-columns:1fr}.builder-controls{position:static}}@font-face{font-family:Inter;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/fonts/inter-latin.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/fonts/jetbrains-mono-latin.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--radius:.625rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--radius-2xl:calc(var(--radius) + 8px);--radius-3xl:calc(var(--radius) + 12px);--radius-4xl:calc(var(--radius) + 16px);--background:oklch(100% 0 0);--foreground:oklch(12.9% .042 264.695);--card:oklch(100% 0 0);--card-foreground:oklch(12.9% .042 264.695);--popover:oklch(100% 0 0);--popover-foreground:oklch(12.9% .042 264.695);--primary:oklch(20.8% .042 265.755);--primary-foreground:oklch(98.4% .003 247.858);--secondary:oklch(96.8% .007 247.896);--secondary-foreground:oklch(20.8% .042 265.755);--muted:oklch(96.8% .007 247.896);--muted-foreground:oklch(55.4% .046 257.417);--accent:oklch(96.8% .007 247.896);--accent-foreground:oklch(20.8% .042 265.755);--destructive:oklch(57.7% .245 27.325);--destructive-foreground:oklch(98.4% .003 247.858);--border:oklch(92.9% .013 255.508);--input:oklch(92.9% .013 255.508);--ring:oklch(70.4% .04 256.788);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.4% .003 247.858);--sidebar-foreground:oklch(12.9% .042 264.695);--sidebar-primary:oklch(20.8% .042 265.755);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(96.8% .007 247.896);--sidebar-accent-foreground:oklch(20.8% .042 265.755);--sidebar-border:oklch(92.9% .013 255.508);--sidebar-ring:oklch(70.4% .04 256.788);--paper:oklch(96.2% .004 95);--panel:oklch(91.9% .005 108);--ink:oklch(21% .005 260);--soft:oklch(51% .006 108);--line:oklch(87.4% .006 108);--sun:oklch(73% .13 80);--gn:oklch(47% .07 155);--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-ring-offset-background:var(--background);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring);--color-paper:var(--paper);--color-panel:var(--panel);--color-ink:var(--ink);--color-soft:var(--soft);--color-line:var(--line);--color-sun:var(--sun);--color-gn:var(--gn)}.dark{--background:oklch(12.9% .042 264.695);--foreground:oklch(98.4% .003 247.858);--card:oklch(20.8% .042 265.755);--card-foreground:oklch(98.4% .003 247.858);--popover:oklch(20.8% .042 265.755);--popover-foreground:oklch(98.4% .003 247.858);--primary:oklch(92.9% .013 255.508);--primary-foreground:oklch(20.8% .042 265.755);--secondary:oklch(27.9% .041 260.031);--secondary-foreground:oklch(98.4% .003 247.858);--muted:oklch(27.9% .041 260.031);--muted-foreground:oklch(70.4% .04 256.788);--accent:oklch(27.9% .041 260.031);--accent-foreground:oklch(98.4% .003 247.858);--destructive:oklch(70.4% .191 22.216);--destructive-foreground:oklch(98.4% .003 247.858);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.1% .027 264.364);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.8% .042 265.755);--sidebar-foreground:oklch(98.4% .003 247.858);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(27.9% .041 260.031);--sidebar-accent-foreground:oklch(98.4% .003 247.858);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.1% .027 264.364)}*{box-sizing:border-box;border-color:var(--line);min-width:0}html{scroll-behavior:smooth;font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{overflow-wrap:anywhere;background:var(--paper);min-height:100vh;color:var(--ink);font:400 16px/1.65 var(--font-body);margin:0}[hidden]{display:none!important}img,video,svg{max-width:100%;display:block}h1,h2,h3,h4{color:var(--ink);font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin-top:0;font-weight:600}h1{letter-spacing:-.055em;font-size:clamp(2.5rem,5vw,4.25rem);line-height:1.02}h2{font-size:clamp(1.75rem,3.2vw,2.5rem);line-height:1.08}h3{letter-spacing:-.015em;font-size:1rem;line-height:1.3}p{text-wrap:pretty}a{color:var(--ink);text-underline-offset:3px}a:hover{color:var(--gn)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{z-index:1001;border:1px solid var(--ink);border-radius:var(--radius-lg);background:var(--paper);font:500 11px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;padding:9px 13px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.masthead{border-bottom:1px solid var(--line)}.masthead-inner{justify-content:space-between;align-items:center;gap:28px;width:min(1280px,100%);min-height:64px;margin:0 auto;padding:0 40px;display:flex}.brand,.brand-lockup{color:var(--ink);font-family:var(--font-display);letter-spacing:-.025em;white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{flex:none;width:22px;height:22px}.brand small{color:var(--soft);font:400 10px/1 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin-left:2px}.masthead nav,footer nav{flex-wrap:wrap;align-items:center;gap:10px 28px;display:flex}.masthead nav a,footer nav a{color:var(--soft);font:400 10px/1.3 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;text-decoration:none}.masthead nav a:hover,footer nav a:hover{color:var(--ink)}.header-cta,.pilot{border:1px solid color-mix(in oklch, var(--ink) 30%, transparent);min-height:34px;color:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;text-decoration:none;display:inline-flex}.header-cta:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.pilot{border-color:color-mix(in oklch, var(--sun) 45%, var(--line));color:var(--ink)}.mobile-nav{border:0;padding:0;display:none;position:relative}.mobile-nav summary{border:1px solid var(--line);min-width:68px;color:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.12em;text-align:center;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;padding:9px 12px;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:after{content:" +";color:var(--sun)}.mobile-nav[open] summary:after{content:" −"}.mobile-nav nav{z-index:50;border:1px solid var(--line);border-radius:var(--radius-xl);background:color-mix(in oklch, var(--paper) 96%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);gap:0;width:min(280px,100vw - 24px);padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 44px oklch(21% .005 260/.12)}.mobile-nav nav a{border-radius:var(--radius-lg);color:var(--ink);padding:11px 12px}.mobile-nav nav a:hover,.mobile-nav nav a:focus-visible{background:var(--panel)}main{width:min(1280px,100%);margin:0 auto;padding:0 40px}.hero{grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:40px;padding:clamp(48px,6vw,72px) 0;display:grid}.hero-copy{flex-direction:column;grid-column:span 4;justify-content:center;align-items:flex-start;display:flex}.hero-copy h1{margin:24px 0 22px;font-size:clamp(2.3rem,4.2vw,3.75rem)}.hero-copy .button{margin-top:8px}.lede{max-width:700px;color:var(--soft);font-size:clamp(17px,1.8vw,20px);line-height:1.65}.eyebrow{color:var(--soft);font:500 10px/1.4 var(--font-mono);letter-spacing:.2em;text-transform:uppercase;margin:0 0 10px}.price-pair{font-family:var(--font-mono);flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:19px 0 0;display:flex}.price-pair strong{color:var(--ink);font-size:13px;font-weight:500}.price-pair span{color:var(--soft);font-size:11px}.facts{flex-wrap:wrap;gap:7px;margin:20px 0 14px;padding:0;list-style:none;display:flex}.facts li,.facts span,.building-list li{border:1px solid var(--line);color:var(--soft);font:400 10px/1.35 var(--font-mono);letter-spacing:.04em;border-radius:999px;padding:5px 9px}.button,button{appearance:none;border:1px solid var(--sun);background:var(--sun);min-height:44px;color:var(--ink);font:500 11px/1.35 var(--font-mono);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:10px 16px;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.button:hover,button:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}button:disabled{opacity:.5;cursor:wait}.secondary,#logout{border-color:var(--line);color:var(--ink);background:0 0}.secondary:hover,#logout:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.sample{grid-column:span 8}.sample,.panel,.viewer-shell{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--panel)}.sample,.panel{padding:clamp(18px,2.3vw,28px)}.sample-heading,.actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.sample-heading h2{margin:0;font-size:1.4rem}.media-frame{border-radius:var(--radius-lg);background:var(--ink);outline-offset:-1px;outline:1px solid oklch(0% 0 0/.08);margin-top:20px;position:relative;overflow:hidden}.sample video{aspect-ratio:16/10;object-fit:cover;width:100%}.media-readout{z-index:2;border-radius:var(--radius-md);color:var(--paper);font:400 9px/1.2 var(--font-mono);letter-spacing:.12em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:oklch(21% .005 260/.82);border:1px solid oklch(100% 0 0/.18);padding:6px 8px;position:absolute}.media-readout-top{top:14px;left:14px}.media-readout-bottom{color:var(--sun);bottom:48px;right:14px}.map-caption{color:var(--soft);font:400 9px/1.3 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.map-caption span{align-items:center;gap:5px;display:flex}.map-caption i{background:color-mix(in oklch, var(--ink) 45%, transparent);width:58px;height:2px;display:inline-block}.sample>p{color:var(--soft);margin-bottom:0;font-size:13px}.segmented{border:1px solid var(--line);border-radius:999px;flex-wrap:wrap;gap:3px;padding:3px;display:inline-flex}.segmented button{min-height:32px;color:var(--soft);background:0 0;border:0;padding:6px 10px;font-size:9px}.segmented button:hover{background:var(--paper);color:var(--ink)}.segmented button[aria-pressed=true],.segmented button.active{background:var(--ink);color:var(--paper)}.fineprint,.help{color:var(--soft);font:400 11px/1.55 var(--font-mono);letter-spacing:.015em}.section{border-top:1px solid var(--line);margin-inline:-40px;padding:clamp(56px,7vw,80px) 40px}.section>h2,.section-heading h2{max-width:28ch;margin:10px 0 20px}.checker,.split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(36px,6vw,72px);display:grid}.studio-section{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr)}.studio-section .panel{background:var(--panel)}.instrument-form label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:10px}.cards,.steps,.explain{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;list-style:none;display:grid}.cards article,.explain article{border-top:1px solid var(--line);padding:18px 0 0}.cards article h3,.explain article h2{margin:0 0 6px;font-size:16px}.explain{margin-top:64px}.explain article>span{color:var(--soft);font:500 10px/1 var(--font-mono);letter-spacing:.14em}.seasonal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:34px;display:grid}.seasonal-grid figure{margin:0}.seasonal-grid picture{display:block}.seasonal-grid img{aspect-ratio:4/3;border-radius:var(--radius-lg);object-fit:cover;outline-offset:-1px;outline:1px solid oklch(0% 0 0/.07);width:100%}.seasonal-grid figcaption{justify-content:space-between;align-items:center;gap:20px;margin-top:14px;display:flex}.seasonal-grid h3{margin:0;font-size:15px}.seasonal-grid p{color:var(--soft);margin:4px 0 0;font-size:13px}.seasonal-grid figcaption>span,.delivery-note>span{color:var(--gn);font:500 9px/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.seasonal-grid figure:last-child figcaption>span{color:var(--ink)}.delivery-note{border-top:1px solid var(--line);grid-template-columns:180px 1fr;gap:24px;margin-top:34px;padding-top:18px;display:grid}.delivery-note p{max-width:760px;color:var(--soft);margin:0}.steps{counter-reset:steps;margin:32px 0}.steps li{border-top:1px solid var(--ink);color:var(--soft);padding:18px 8px 0 0}.steps li:before{counter-increment:steps;content:"0" counter(steps);color:var(--ink);font:500 10px/1 var(--font-mono);letter-spacing:.1em;margin-bottom:10px;display:block}.limitations>.split{padding-top:8px}details{border-top:1px solid var(--line);padding:18px 0}details:last-child{border-bottom:1px solid var(--line)}summary{color:var(--ink);font-family:var(--font-display);cursor:pointer;font-weight:500}details p{max-width:760px;color:var(--soft)}.final-cta{background:var(--ink);color:var(--paper);grid-template-columns:1fr auto;align-items:center;gap:40px;margin-top:0;display:grid}.final-cta h2{color:var(--paper);margin-bottom:8px;font-size:clamp(2rem,4vw,3.5rem)}.final-cta .eyebrow{color:color-mix(in oklch, var(--paper) 55%, transparent)}.final-cta p{color:color-mix(in oklch, var(--paper) 65%, transparent);margin-bottom:0}.final-cta .button:hover{border-color:var(--paper);background:var(--paper);color:var(--ink)}label{color:var(--ink);margin:12px 0 6px;font-weight:500;display:block}input,select{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);width:100%;min-height:44px;color:var(--ink);font:inherit;padding:10px 12px}input:hover,select:hover{border-color:var(--soft)}input:focus,select:focus{border-color:var(--ink);box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--ink);outline:0}input[type=radio],input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--ink)}input[type=range]{min-height:auto;accent-color:var(--ink);padding:0}.combobox-wrap{position:relative}.suggestions{z-index:20;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);max-height:280px;position:absolute;left:0;right:0;overflow:auto;box-shadow:0 18px 42px oklch(21% .005 260/.13)}.suggestions:empty{display:none}.suggestions button{border:0;border-bottom:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);text-align:left;text-transform:none;border-radius:0;display:block}.suggestions button:hover,.suggestions button[aria-selected=true]{background:var(--panel);color:var(--ink)}.result-message{border-radius:var(--radius-lg);color:var(--ink);margin-top:20px}.result-message:not(:empty){border-top:1px solid var(--line);padding-top:16px}.result-message h3{margin:0}footer{border-top:1px solid var(--line);color:var(--soft)}.footer-inner{width:min(1280px,100%);margin:0 auto;padding:38px 40px 44px;font-size:12px}.footer-identity{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.footer-identity>span,.footer-meta{font:400 9px/1.4 var(--font-mono);letter-spacing:.13em;text-transform:uppercase}.footer-brand .brand-mark{width:20px;height:20px}.footer-inner>p{max-width:900px}.footer-inner nav{margin-top:20px}.link-button{appearance:none;min-height:0;color:var(--soft);font:400 10px/1.3 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;background:0 0;border:0;border-radius:0;padding:0;text-decoration:none}.link-button:hover{color:var(--ink);background:0 0}.purchase-shell,.order-view,.legal,.status-view{width:min(900px,100%);margin:0 auto;padding:clamp(48px,7vw,84px) 0}.purchase-heading{margin-bottom:34px}.purchase-heading h1,.order-view h1,.legal h1,.status-view h1{margin:16px 0 22px}.purchase-step{gap:22px;display:grid}.purchase-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.purchase-option{flex-direction:column;align-items:flex-start;min-height:290px;display:flex}.purchase-option h2{margin:4px 0 8px;font-size:1.45rem}.purchase-option>p:not(.eyebrow,.help){color:var(--soft);margin:0}.purchase-option .help{margin:16px 0 0}.purchase-option button{margin-top:auto}.summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.summary dl div{border-bottom:1px solid var(--line);padding-bottom:10px}.summary dt{color:var(--soft);font:500 9px/1.4 var(--font-mono);letter-spacing:.11em;text-transform:uppercase}.summary dd{color:var(--ink);font-family:var(--font-display);margin:4px 0;font-weight:500}.preview{margin:0}.parcel-preview{border-radius:var(--radius-lg);background:var(--panel);position:relative;overflow:hidden}.parcel-preview svg,.parcel-preview img{aspect-ratio:32/21;width:100%}.parcel-preview img{object-fit:cover}.preview figcaption{color:var(--soft);margin-top:14px}.parcel-shape{fill:color-mix(in oklch, var(--sun) 28%, transparent);stroke:var(--sun);stroke-width:3px;vector-effect:non-scaling-stroke}.building-shape{fill:var(--ink);stroke:var(--paper);stroke-width:2px;vector-effect:non-scaling-stroke}.map-mode-control{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.map-mode-control legend{float:left;margin-right:16px}.map-mode-options{border:1px solid var(--line);border-radius:999px;display:inline-flex;overflow:hidden}.map-mode-options label{cursor:pointer;margin:0;position:relative}.map-mode-options input{opacity:0;width:1px;min-height:1px;position:absolute}.map-mode-options span{color:var(--soft);font:500 9px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;padding:8px 13px;display:block}.map-mode-options input:checked+span{background:var(--ink);color:var(--paper)}.map-mode-options input:focus-visible+span{outline:2px solid var(--sun);outline-offset:-3px}.map-loading{color:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:500 10px/1.3 var(--font-mono);white-space:nowrap;background:oklch(21% .005 260/.82);border:1px solid oklch(100% 0 0/.18);border-radius:999px;padding:8px 12px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.map-error,.error{color:var(--destructive);font-weight:500}.map-attribution{color:var(--soft);margin:10px 0 0;font-size:11px}.building-list{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.actions{margin-top:20px}.actions button{min-width:180px}.choice{border-radius:var(--radius-lg);align-items:flex-start;gap:10px;font-weight:400;display:flex}.choice input{flex:none;margin-top:4px}.consent{border:1px solid var(--line);background:var(--paper);padding:16px}fieldset{border:0;margin:0 0 16px;padding:0}legend{font-family:var(--font-display);font-weight:600}.order-review{margin-bottom:12px}.progress{background:var(--line);height:4px;margin:30px 0;overflow:hidden}.progress span{background:var(--sun);width:8%;height:100%;transition:width .5s;display:block}.downloads{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0;display:grid}.downloads a:not(.button){border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);font:500 11px/1.45 var(--font-mono);letter-spacing:.04em;padding:16px;text-decoration:none}.downloads a:not(.button):hover{border-color:var(--ink)}.legal{max-width:760px;font-size:16px}.legal h2{margin-top:42px;font-size:25px}.legal address{font-style:normal}.legal ul{padding-left:24px}.legal code{font-family:var(--font-mono);font-size:.85em}#loginForm,#inviteForm{margin-top:28px}#logout{margin:24px 0 0 8px}.status-view>.panel,.status-view>div>.panel,.status-view>div>article{margin-top:20px}.status-view dl{grid-template-columns:minmax(120px,.35fr) 1fr;gap:8px 16px;display:grid}.status-view dt{color:var(--soft);font:500 9px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.status-view dd{margin:0}.admin-jobs-heading{justify-content:space-between;align-items:start;gap:24px;display:flex}.admin-jobs-heading h2,.admin-jobs-heading p{margin-top:0}.admin-jobs-heading button{flex:none}.admin-jobs-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--soft);font:500 10px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin:22px 0;padding:14px 0;display:flex}.admin-jobs-summary strong{color:var(--ink);font:600 30px/1 var(--font-display);letter-spacing:0}.admin-jobs-summary span:last-child{margin-left:auto}.admin-jobs h3{margin:26px 0 10px}.admin-table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);max-width:100%;overflow-x:auto}.admin-table-wrap:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.admin-jobs-table{border-collapse:collapse;text-align:left;width:100%;min-width:1680px;font-size:12px}.admin-jobs-table th{background:var(--panel);color:var(--soft);font:500 9px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.admin-jobs-table th,.admin-jobs-table td{border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap;padding:11px 12px}.admin-jobs-table tbody tr:last-child td{border-bottom:0}.admin-jobs-table td:first-child{white-space:normal;max-width:250px}.admin-jobs-table td:first-child strong,.admin-jobs-table td:first-child span{overflow-wrap:anywhere;display:block}.admin-jobs-table td:first-child span{color:var(--soft);margin-top:3px}.status-badge{border:1px solid var(--line);background:var(--panel);font:600 9px/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 8px;display:inline-block}.status-running{border-color:var(--chart-2);color:var(--chart-2)}.status-queued{border-color:var(--sun);color:color-mix(in oklch, var(--sun) 75%, var(--ink))}.status-failed,.status-disputed{border-color:var(--destructive);color:var(--destructive)}.status-succeeded,.status-complete{border-color:var(--gn);color:var(--gn)}.viewer-page main{width:min(1180px,100% - 32px);padding:44px 0 72px}.viewer-header{margin-bottom:28px}.viewer-shell{background:var(--panel);overflow:hidden}.map{aspect-ratio:1;background:var(--panel);width:min(100%,900px);margin-inline:auto;position:relative;overflow:hidden}.map>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.north{color:var(--paper);text-align:center;text-shadow:0 2px 8px oklch(0% 0 0/.75);font:500 10px/1 var(--font-mono);display:grid;position:absolute;top:20px;right:22px}.north span{font-size:28px;line-height:1}.vintage-badge,.readout{border-radius:var(--radius-md);color:color-mix(in oklch, var(--paper) 72%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:var(--font-mono);background:oklch(21% .005 260/.82);border:1px solid oklch(100% 0 0/.18)}.vintage-badge{letter-spacing:.08em;text-transform:uppercase;max-width:48%;padding:7px 9px;font-size:9px;position:absolute;top:20px;right:72px}.scale-bar{border:2px solid var(--paper);width:22.222%;height:12px;color:var(--paper);filter:drop-shadow(0 2px 3px oklch(0% 0 0/.75));border-top:0;position:absolute;bottom:22px;right:24px}.scale-bar span{font:500 9px/1 var(--font-mono);text-shadow:0 2px 6px oklch(0% 0 0/.75);position:absolute;bottom:7px;left:50%;transform:translate(-50%)}.readout{gap:3px;padding:12px 14px;font-size:10px;display:grid;position:absolute;top:20px;left:20px}.readout strong{color:var(--paper);font-size:13px;font-weight:500}.readout .warning{color:var(--sun)}.controls{border-top:1px solid var(--line);background:var(--panel);gap:18px;padding:20px;display:grid}.timeline{font-family:var(--font-mono);grid-template-columns:50px 1fr 55px;align-items:center;gap:14px;font-size:10px;display:grid}.timeline output{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}.control-row{flex-wrap:wrap;align-items:end;gap:14px;display:flex}.control-row label{color:var(--soft);font:400 10px/1.4 var(--font-mono);align-items:center;gap:8px;margin:0;display:flex}.control-row select{width:auto}.notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px;display:grid}.notes>div{border-top:1px solid var(--line);padding-top:14px}.notes h2{margin:0 0 4px;font-size:14px}.notes p{color:var(--soft);margin:0;font-size:12px}.proof-page{width:min(1240px,100%);margin:0 auto;padding:clamp(52px,8vw,112px) 0 100px}.proof-hero{max-width:970px;margin-bottom:clamp(52px,8vw,96px)}.proof-hero h1{max-width:930px;margin:16px 0 24px;font-size:clamp(3rem,7vw,6.6rem);line-height:.94}.proof-hero .lede{max-width:820px}.proof-method{border-top:1px solid var(--ink);grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:clamp(32px,7vw,100px);margin-bottom:42px;padding-top:26px;display:grid}.proof-method h2{max-width:430px;margin-top:12px}.proof-method p:first-child{margin-top:0}.proof-method code{font-size:.86em}.proof-legend{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);color:var(--soft);font:500 10px/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;gap:12px 26px;margin:0 0 64px;padding:16px 18px;display:flex}.proof-legend span{align-items:center;gap:8px;display:inline-flex}.proof-legend i{border-radius:3px;width:14px;height:14px}.proof-legend .legend-outline{background:0 0;border:2px solid #41e4ff}.proof-legend .legend-shade{background:#d33660}.proof-legend .legend-sun{background:#f5c649}.proof-cases{gap:clamp(72px,10vw,140px);display:grid}.proof-case{margin:0}.proof-case-heading{grid-template-columns:minmax(260px,.46fr) minmax(0,1.54fr);gap:30px;margin-bottom:24px;display:grid}.proof-case-heading h2{overflow-wrap:normal;word-break:normal;margin:8px 0 0;font-size:clamp(2rem,3.3vw,2.9rem)}.proof-facts{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;display:grid}.proof-facts div{border-top:1px solid var(--line);padding-top:10px}.proof-facts dt{color:var(--soft);font:500 9px/1.4 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.proof-facts dd{color:var(--ink);margin:5px 0 0;font-size:12px;line-height:1.5}.proof-comparison{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.proof-panel{min-width:0}.proof-panel+.proof-panel{border-left:1px solid var(--line)}.proof-panel>p{min-height:62px;color:var(--soft);margin:0;padding:13px 16px;font-size:11px}.proof-image{aspect-ratio:1;background:#25282d;position:relative;overflow:hidden}.proof-image>img{object-fit:cover;width:100%;height:100%;display:block}.proof-image>.proof-outline{pointer-events:none;position:absolute;inset:0}.proof-image-label,.proof-north{border-radius:var(--radius-md);color:#fff;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);font:500 9px/1.2 var(--font-mono);letter-spacing:.07em;text-transform:uppercase;background:#15181cc7;border:1px solid #ffffff3d;padding:7px 9px;position:absolute;top:14px}.proof-image-label{left:14px}.proof-north{right:14px}.proof-scale{color:#fff;filter:drop-shadow(0 2px 3px #000000b3);min-width:52px;font:500 9px/1 var(--font-mono);text-align:center;white-space:nowrap;border-bottom:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #fff;padding:0 4px 5px;position:absolute;bottom:18px;right:16px}.proof-scale-15{width:15.38%}.proof-scale-18{width:18%}.proof-scale-20{width:20.3%}.proof-case>figcaption{color:var(--soft);margin-top:12px;font-size:11px}.proof-limitations{border-top:1px solid var(--ink);margin-top:clamp(88px,12vw,160px);padding-top:28px}.proof-limitations h2{margin:10px 0 32px}.proof-limit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 34px;display:grid}.proof-limit-grid p{border-top:1px solid var(--line);margin:0;padding-top:14px;font-size:13px}.proof-source-note{max-width:860px;color:var(--soft);margin-top:48px;font-size:12px}@media (width<=960px){.masthead-inner,main,.footer-inner{padding-left:24px;padding-right:24px}.section{margin-inline:-24px;padding-left:24px;padding-right:24px}.desktop-nav,.header-cta{display:none!important}.mobile-nav{display:block}.hero{grid-template-columns:1fr;gap:40px}.hero-copy,.sample{grid-column:auto}.hero-copy{max-width:720px}.sample video{aspect-ratio:4/3}.studio-section{grid-template-columns:1fr}.proof-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){html{scroll-behavior:auto}.masthead-inner{min-height:58px;padding-left:12px;padding-right:12px}.brand small{display:none}main{padding-left:16px;padding-right:16px}.section{margin-inline:-16px;padding-left:16px;padding-right:16px}.hero{padding:40px 0 48px}.hero-copy h1{font-size:clamp(2.25rem,11vw,3.3rem)}.sample-heading,.actions,.footer-identity{flex-direction:column;align-items:stretch}.sample-heading .segmented{align-self:flex-start}.media-readout{display:none}.checker,.split,.seasonal-grid{grid-template-columns:1fr;gap:34px}.cards,.steps,.explain,.notes{grid-template-columns:1fr}.delivery-note{grid-template-columns:1fr;gap:8px}.final-cta,.purchase-options{grid-template-columns:1fr}.purchase-option{min-height:0}.purchase-option button{width:100%;margin-top:12px}.summary dl{grid-template-columns:1fr}.actions button,.actions a{width:100%}.downloads{grid-template-columns:1fr}.map-mode-control{flex-direction:column;align-items:stretch}.map-mode-control legend{float:none}.map-mode-options{display:flex}.map-mode-options label{text-align:center;flex:1}.control-row{align-items:stretch}.control-row>*{flex:180px}.readout{max-width:68%;top:10px;left:10px}.vintage-badge{max-width:70%;top:auto;bottom:56px;right:10px}.status-view dl{grid-template-columns:1fr}.status-view dd{margin-bottom:8px}.admin-jobs-heading{flex-direction:column;align-items:stretch}.admin-jobs-heading button{width:100%}.admin-jobs-summary span:last-child{flex-basis:100%;margin-left:0}.proof-page{padding-top:48px}.proof-method,.proof-case-heading,.proof-comparison,.proof-limit-grid{grid-template-columns:1fr}.proof-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-panel+.proof-panel{border-top:1px solid var(--line);border-left:0}.proof-panel>p{min-height:0}.proof-legend{margin-bottom:50px}.footer-inner{padding-left:16px;padding-right:16px}}@media (width<=360px){.brand{font-size:14px}.mobile-nav summary{min-width:62px;padding-inline:8px}h1{font-size:2.25rem}.panel,.sample{padding:16px}.segmented button{padding-inline:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.masthead,footer,.button,button,video,.segmented,.controls{display:none!important}body{color:#000;background:#fff;font-size:11pt}main{width:100%;max-width:none;padding:0}.section{margin:0;padding:24px 0}.legal{max-width:none}.legal h1{font-size:28pt}.legal h2{break-after:avoid}}.photo-canvas{aspect-ratio:1;background:#172b24;position:relative;overflow:hidden}.photo-canvas canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.photo-canvas:fullscreen{width:min(100vw,100vh);height:min(100vw,100vh);margin:auto}.photo-wipe{pointer-events:none;background:#fff;width:2px;position:absolute;top:0;bottom:0}.photo-navigation{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.photo-navigation button{padding:7px 12px;font-size:10px}.photo-navigation label{align-items:center;gap:8px;font-size:11px;display:flex}.photo-navigation input{width:100px}.photo-advanced{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.photo-advanced summary{letter-spacing:.13em;color:var(--soft);cursor:pointer;padding:8px 0;font-size:10px}.photo-advanced>label{align-items:center;gap:8px;margin:12px 0;font-size:12px;display:flex}.photo-advanced input[type=checkbox]{width:auto;min-height:0}.photo-control{margin:14px 0}.photo-control label{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.photo-control input[type=number]{width:90px;min-height:36px}.photo-control input[type=range]{width:100%;margin-top:6px}.photo-advanced .builder-actions button{font-size:10px}.photo-advanced input[type=file]{max-width:100%}
