:root{--ink:#1e211c;--paper:#eee9df;--cream:#f7f3eb;--clay:#a54e2f;--gold:#d89a48;--sage:#65705b;--line:#cfc7b8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#f7f3ebd6;justify-content:space-between;align-items:center;height:72px;padding:0 5vw;display:flex;position:sticky;top:0}.brand{color:inherit;letter-spacing:-.03em;align-items:center;gap:12px;font-size:18px;text-decoration:none;display:flex}.mark{background:var(--clay);width:34px;height:34px;color:var(--cream);border-radius:50%;place-items:center;display:grid}.status{letter-spacing:.08em;color:#62665d;align-items:center;gap:9px;font:11px/1 monospace;display:flex}.status i{background:#67865b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #67865b22}.beta{border:1px solid var(--line);border-radius:99px;padding:5px 7px}.hero{background:radial-gradient(circle at 72% 40%,#d8c8ae 0,transparent 35%),var(--paper);border-bottom:1px solid var(--line);grid-template-columns:1.05fr 1fr;align-items:center;gap:5vw;min-height:560px;padding:76px 7vw 58px;display:grid}.eyebrow{letter-spacing:.18em;color:var(--clay);font:700 11px/1.2 monospace}h1{letter-spacing:-.055em;margin:24px 0;font-family:Georgia,serif;font-size:clamp(54px,6vw,92px);line-height:.92}h1 em{color:var(--clay);font-weight:400}.intro{color:#55574f;max-width:620px;font-family:Georgia,serif;font-size:18px;line-height:1.65}.dome-visual{position:relative}.dome-visual svg{width:100%;overflow:visible}.dome-fill{fill:url(#clay);opacity:.13}.dome-line{fill:none;stroke:var(--clay);stroke-width:3px}.course{fill:none;stroke:#866c55;stroke-width:1px;opacity:.55}.dome-visual line{stroke:#777469}.dome-visual text{fill:#55574f;font:12px monospace}.visual-note{background:var(--cream);border:1px solid var(--line);padding:12px 15px;position:absolute;top:12%;right:2%;box-shadow:8px 8px #88644b20}.visual-note span{color:#777;font:9px monospace;display:block}.visual-note b{color:var(--clay);font:11px monospace}.workspace{border-left:1px solid var(--line);border-right:1px solid var(--line);grid-template-columns:340px 1fr;max-width:1500px;margin:auto;display:grid}.controls{border-right:1px solid var(--line);background:#e7e0d4;padding:36px 30px}.panel-head,.section-title{align-items:center;gap:15px;display:flex}.panel-head>span,.section-title>div>span{color:var(--cream);background:var(--clay);border-radius:50%;place-items:center;width:29px;height:29px;font:700 10px monospace;display:grid}.panel-head h2,.section-title h2{margin:0;font:24px Georgia,serif}.panel-head p{color:#777;margin:5px 0 0;font-size:12px}.unit{background:0 0;border:1px solid #aaa092;border-radius:4px;margin-left:auto;padding:7px;font:10px monospace}.controls label{grid-template-columns:1fr auto;gap:12px;margin:36px 0;display:grid}.controls label span{font-size:13px}.controls label strong{color:var(--clay);font:700 13px monospace}input[type=range]{width:100%;accent-color:var(--clay);grid-column:1/-1}.fixed{border:1px solid var(--line);background:#f4efe7;gap:5px;padding:16px;display:grid}.fixed span{color:#777;font-size:12px}.fixed b{font:14px monospace}.fixed small{color:#777}.results{min-width:0;padding:34px}.summary{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:40px;display:grid}.summary>div{border-right:1px solid var(--line);padding:18px 20px}.summary>div:last-child{border:0}.summary span{color:#787a72;margin-bottom:8px;font:10px monospace;display:block}.summary b{font:30px Georgia,serif}.summary small{font-size:13px}.section-title{justify-content:space-between;margin:10px 0 18px}.section-title>div{align-items:center;gap:12px;display:flex}.section-title button,.file-buttons button{border:1px solid var(--line);cursor:pointer;background:0 0;padding:9px 12px;font:11px monospace}.family-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.family{border:1px solid var(--line);background:var(--cream);min-width:0}.family-top{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:17px;display:flex}.letter{background:var(--clay);color:#fff;place-items:center;width:32px;height:32px;font:700 14px monospace;display:grid}.f1 .letter{background:#98702e}.f2 .letter{background:var(--sage)}.family h3{margin:0;font:18px Georgia,serif}.family p{color:#777;margin:4px 0 0;font-size:10px}.qty{color:#777;margin-left:auto;font:9px monospace}.brick-diagram{background:#e9e1d4;height:145px;padding:8px}.brick-diagram svg{width:100%;height:100%}.brick-diagram polygon{fill:#be7652aa;stroke:#7e472f;stroke-width:2px}.brick-diagram line{stroke:#777}.brick-diagram text{fill:#595a55;font:10px monospace}.family dl{grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:13px 17px;display:grid}.family dl div{border-bottom:1px dotted #ccc;justify-content:space-between;padding-bottom:6px;display:flex}.family dt{color:#777;font-size:10px}.family dd{margin:0;font:11px monospace}.file-buttons{gap:8px;padding:0 17px 17px;display:flex}.file-buttons button{background:#fff;flex:1}.printer-title{margin-top:48px}.printer-title>p{color:#777;font:10px monospace}.printer-row{border:1px solid var(--line);background:var(--cream);grid-template-columns:1fr 1.25fr;display:grid}.recommend{background:var(--ink);color:var(--cream);padding:28px}.recommend>span{color:#cf966e;font:9px monospace}.recommend h3{margin:18px 0 10px;font:28px Georgia,serif}.recommend p{color:#c7c4b9;font-size:13px;line-height:1.6}.printer-list>div{border-bottom:1px solid var(--line);opacity:.58;gap:12px;padding:12px 18px;display:flex}.printer-list>div:last-child{border:0}.printer-list>div.fits{opacity:1}.printer-list>div>span{color:var(--clay);font-family:monospace}.printer-list p{margin:0}.printer-list b,.printer-list small{display:block}.printer-list b{font-size:12px}.printer-list small{color:#777;margin-top:3px;font-size:10px}.export{background:var(--clay);color:var(--cream);justify-content:space-between;align-items:center;gap:50px;padding:70px 8vw;display:flex}.export h2{margin:14px 0;font:48px Georgia,serif}.export p:not(.eyebrow){color:#ecd9cd;max-width:670px;line-height:1.6}.export .eyebrow{color:#f2b88d}.export button{background:var(--cream);color:var(--ink);text-align:left;cursor:pointer;border:0;align-items:center;gap:18px;min-width:285px;padding:20px 26px;display:flex;box-shadow:8px 8px #5f281d}.export button>span{font-size:26px}.export button b,.export button small{display:block}.export button b{font:17px Georgia,serif}.export button small{color:#777;margin-top:5px}footer{background:var(--ink);color:#aaa99f;justify-content:space-between;gap:40px;padding:25px 5vw;font:10px/1.5 monospace;display:flex}footer p{text-align:right;max-width:750px;margin:0}@media (width<=1050px){.workspace{grid-template-columns:1fr}.controls{border-right:0;border-bottom:1px solid var(--line)}.family-grid{grid-template-columns:1fr 1fr}.printer-row{grid-template-columns:1fr}.hero{grid-template-columns:1fr;min-height:0}.dome-visual{max-width:650px;margin:auto}}@media (width<=680px){.topbar{padding:0 18px}.status{display:none}.hero{padding:55px 22px}h1{font-size:54px}.workspace{display:block}.results{padding:24px 16px}.summary{grid-template-columns:1fr 1fr}.summary>div:nth-child(2){border-right:0}.summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.family-grid{grid-template-columns:1fr}.section-title h2{font-size:20px}.export{padding:55px 22px;display:block}.export h2{font-size:40px}.export button{width:100%;margin-top:35px}footer{display:block}footer p{text-align:left;margin-top:12px}.panel-head{flex-wrap:wrap}}.three-lab{background:var(--ink);color:var(--cream);grid-template-columns:minmax(330px,.72fr) 1.28fr;min-height:650px;display:grid}.three-copy{flex-direction:column;justify-content:center;padding:70px 5vw;display:flex}.three-copy h2{letter-spacing:-.04em;margin:18px 0;font:clamp(40px,5vw,66px)/.98 Georgia,serif}.three-copy>p:not(.eyebrow){color:#bbb9ae;max-width:540px;line-height:1.65}.three-copy .eyebrow{color:#e3a876}.view-tabs{gap:8px;margin:26px 0;display:flex}.view-tabs button,.model-downloads button{color:#c8c6bb;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #686a61;padding:10px 13px;font:10px monospace}.view-tabs button.active{background:var(--clay);border-color:var(--clay);color:#fff}.model-downloads{border-top:1px solid #4c4f48;margin-top:8px}.model-downloads>div{border-bottom:1px solid #4c4f48;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:13px 0;display:grid}.model-downloads b{font:13px Georgia,serif}.model-downloads button:hover{color:#e3a876;border-color:#e3a876}.three-copy>small{color:#7f8179;margin-top:15px;font:9px/1.5 monospace}.three-stage{border-left:1px solid #45483f;min-height:650px;position:relative}.three-canvas{position:absolute;inset:0}.three-canvas canvas{touch-action:none;width:100%;height:100%;display:block}.orbit-hint{color:#adafa5;pointer-events:none;background:#11130fbb;border:1px solid #50534a;padding:8px 10px;font:9px monospace;position:absolute;bottom:18px;right:18px}@media (width<=900px){.three-lab{grid-template-columns:1fr}.three-stage{border-top:1px solid #45483f;border-left:0;min-height:520px}.three-copy{padding:55px 28px}}@media (width<=520px){.three-stage{min-height:420px}.model-downloads>div{grid-template-columns:1fr 1fr}.model-downloads b{grid-column:1/-1}.model-downloads button{padding:9px 6px}.view-tabs{flex-wrap:wrap}}.solver-note{border-left:4px solid var(--sage);background:#e9dfcf;align-items:flex-start;gap:14px;margin:-4px 0 18px;padding:14px 16px;display:flex}.solver-note b{white-space:nowrap;font:13px Georgia,serif}.solver-note span{color:#62655d;font-size:11px;line-height:1.5}.brick-diagram text.radius-label{letter-spacing:.12em;fill:#8a8175;font-size:7px}.joint-key{color:#aaa99f;align-items:center;gap:8px;margin-top:14px;font:9px monospace;display:flex}.joint-key i{background:var(--clay);width:11px;height:11px;display:inline-block}.joint-key i:nth-of-type(2){background:#c6b18e;margin-left:10px}.three-loading{background:var(--ink);color:#c8c6bb;letter-spacing:.08em;place-items:center;min-height:420px;font:11px monospace;display:grid}.build-sequence{background:#181a16;border:1px solid #4c4f48;margin:4px 0 22px;padding:15px}.build-sequence__heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.build-sequence__heading b{font:13px Georgia,serif}.build-sequence__heading output{color:#e3a876;text-align:right;font:9px monospace}.build-sequence input[type=range]{accent-color:#d89a48;width:100%;margin:15px 0 12px}.build-sequence__buttons{grid-template-columns:1fr 1fr 1.35fr;gap:7px;display:grid}.build-sequence__buttons button{color:#c8c6bb;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #5c5f56;padding:9px 7px;font:9px monospace}.build-sequence__buttons button:hover:not(:disabled),.build-sequence__buttons .build-play{color:#efb87d;border-color:#d89a48}.build-sequence__buttons button:disabled{opacity:.3;cursor:not-allowed}:root{--heh-nav-height:96px}body{font-family:Montserrat,Arial,Helvetica,sans-serif}.dome-tool{padding-top:var(--heh-nav-height)}.dome-tool h1,.dome-tool h2,.dome-tool h3,.dome-tool .intro,.dome-tool .summary b,.dome-tool .export button b{font-family:Cormorant Garamond,Georgia,serif}.fixed-spec{border:1px solid var(--line);background:#f4efe7;gap:5px;padding:16px;display:grid}.fixed-spec span{color:#777;font-size:12px}.fixed-spec b{font:14px monospace}.fixed-spec small{color:#777}.heh-skip-link{z-index:120;background:var(--cream);color:var(--ink);border:2px solid var(--clay);padding:10px 14px;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.heh-skip-link:focus{transform:none}.heh-site-header{z-index:100;height:var(--heh-nav-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#292a26;background:#f3f0e6f5;border-bottom:1px solid #ddd8ce;position:fixed;inset:0 0 auto}.heh-site-nav{justify-content:space-between;align-items:center;gap:30px;width:min(100% - 48px,1280px);height:100%;margin:auto;display:flex}.heh-site-logo{flex:none;align-items:center;display:flex}.heh-site-logo img{object-fit:contain;width:auto;height:48px;display:block}.heh-site-tabs{justify-content:flex-end;align-items:center;gap:clamp(14px,1.7vw,34px);display:flex}.heh-site-tabs>a,.heh-site-tabs .site-more>summary,.heh-mobile-menu a{color:inherit;text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;font-size:11px;font-weight:400;line-height:1.2;text-decoration:none;transition:color .2s,border-color .2s,background .2s}.heh-site-tabs>a:not(.heh-inquire):hover,.heh-site-tabs>a[aria-current=page]{color:#6b705c}.heh-site-tabs>a[aria-current=page]{border-bottom:2px solid #c86b4e;padding-bottom:7px}.heh-site-tabs .site-more{position:relative}.heh-site-tabs .site-more>summary{cursor:pointer;align-items:center;gap:.35rem;min-height:44px;list-style:none;display:flex}.heh-site-tabs .site-more>summary::-webkit-details-marker{display:none}.heh-site-tabs .site-more>summary span{transition:transform .16s;display:inline-block}.heh-site-tabs .site-more[open]>summary span{transform:rotate(180deg)}.heh-site-tabs .site-more.contains-current>summary{color:#6b705c;font-weight:500}.heh-site-tabs .site-more__panel{z-index:110;color:#292524;background:#f3f0e6fa;border:1px solid #d6d3d1;border-radius:.65rem;min-width:13rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .75rem);right:0;box-shadow:0 18px 40px #292a2633}.heh-site-tabs .site-more__panel a{min-height:44px;color:inherit;text-transform:uppercase;letter-spacing:.14em;border-radius:.4rem;align-items:center;padding:.65rem .8rem;font-size:11px;text-decoration:none;display:flex}.heh-site-tabs .site-more__panel a:hover,.heh-site-tabs .site-more__panel a[aria-current=page]{color:#a54e2f;background:#6b705c1c}.heh-site-tabs .heh-inquire{border:1px solid;padding:10px 18px}.heh-site-tabs .heh-inquire:hover{color:#f3f0e6;background:#292a26}.heh-theme-toggle{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font:22px/1 serif;display:grid}.heh-theme-toggle:hover{background:#e2ded5}.heh-theme-glyph--sun{display:none}.heh-mobile-actions{align-items:center;gap:8px;display:none}.heh-mobile-menu{position:relative}.heh-mobile-menu summary{cursor:pointer;place-content:center;gap:5px;width:44px;height:44px;list-style:none;display:grid}.heh-mobile-menu summary::-webkit-details-marker{display:none}.heh-mobile-menu summary span{background:currentColor;width:23px;height:1px;display:block}.heh-mobile-menu>div{left:0;right:0;top:var(--heh-nav-height);background:#f3f0e6fa;border-top:1px solid #ddd8ce;border-bottom:1px solid #ddd8ce;padding:8px 18px 18px;display:grid;position:fixed;box-shadow:0 18px 35px #292a261a}.heh-mobile-menu a{text-align:center;padding:14px;display:block}.heh-mobile-menu a[aria-current=page]{color:#c86b4e;font-weight:600}.heh-site-footer{color:#aaa99f;background:#1e211c;grid-template-columns:auto minmax(0,750px) auto;align-items:center;gap:32px;padding:32px max(24px,5vw);font:10px/1.6 monospace;display:grid}.heh-site-footer>a img{opacity:.62;width:auto;height:34px;display:block}.heh-site-footer strong{color:#d9d6cb;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;display:block}.heh-site-footer p{text-align:left;max-width:none;margin:0}.heh-site-footer nav{gap:22px;display:flex}.heh-site-footer nav a{color:#d9d6cb;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.heh-site-footer nav a:hover{color:#fff}.heh-tool-status{text-align:center;place-items:center;min-height:60vh;margin:0;padding:40px;display:grid}.three-error{text-align:center;padding:40px}.three-error div{gap:10px;max-width:520px;display:grid}.three-error b{color:var(--cream);letter-spacing:0;font:24px Cormorant Garamond,Georgia,serif}.three-error span{letter-spacing:0;color:#aaa99f;font:11px/1.6 Montserrat,sans-serif}.heh-site-header :focus-visible,.heh-site-footer :focus-visible,.dome-tool :focus-visible{outline-offset:3px;outline:3px solid #c86b4e}html.dark{--line:#4a4740}html.dark .heh-site-header{color:#e7e2d7;background:#1a1a1af5;border-color:#333}html.dark .heh-site-tabs>a:not(.heh-inquire):hover,html.dark .heh-site-tabs>a[aria-current=page],html.dark .heh-site-tabs .site-more.contains-current>summary{color:#c86b4e}html.dark .heh-site-tabs .site-more__panel{color:#f3f0e6;background:#1a1a1afa;border-color:#44403c}html.dark .heh-site-tabs .heh-inquire:hover{color:#292a26;background:#f3f0e6}html.dark .heh-theme-toggle:hover{background:#30302d}html.dark .heh-theme-glyph--moon{display:none}html.dark .heh-theme-glyph--sun{display:block}html.dark .heh-mobile-menu>div{background:#1a1a1afa;border-color:#333}html.dark body{color:#ebe7dd;background:#1a1a1a}html.dark .hero{background:radial-gradient(circle at 72% 40%,#4d3d31 0,#0000 35%),#1a1a1a}html.dark .workspace,html.dark .results{background:#1a1a1a}html.dark .controls{background:#22241f}html.dark .family,html.dark .printer-row,html.dark .visual-note,html.dark .fixed-spec{background:#262626}html.dark .brick-diagram,html.dark .solver-note{background:#302d28}html.dark .file-buttons button{color:#ebe7dd;background:#30302d}html.dark .intro,html.dark .panel-head p,html.dark .family p,html.dark .family dt,html.dark .qty,html.dark .printer-title>p,html.dark .printer-list small,html.dark .summary span,html.dark .solver-note span,html.dark .fixed-spec span,html.dark .fixed-spec small{color:#b8b3a9}html.dark .dome-visual text,html.dark .brick-diagram text{fill:#cbc5ba}@media (width<=1023px){:root{--heh-nav-height:76px}.heh-site-nav{width:min(100% - 32px,1280px)}.heh-site-logo img{height:42px}.heh-site-tabs{display:none}.heh-mobile-actions{display:flex}}@media (width<=760px){.heh-site-footer{text-align:center;grid-template-columns:1fr}.heh-site-footer>a{justify-self:center}.heh-site-footer p{text-align:center}.heh-site-footer nav{justify-content:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
