:root{color:#111;font-synthesis:none;text-rendering:optimizelegibility;--page-width:1200px;--page-gutter:24px;--page-gutter-mobile:16px;--colour-text:#111;--colour-muted:#5f5f5f;--colour-rule:#ddd;--colour-rule-strong:#b8b8b8;--colour-background:#fff;--colour-background-subtle:#f5f5f3;background:#fff;font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}a{color:inherit}button,input{font:inherit}:focus-visible{outline-offset:4px;outline:2px solid}.skip-link{top:0;left:var(--page-gutter);z-index:100;color:#fff;background:#111;padding:12px 16px;font-weight:500;position:fixed;transform:translateY(calc(-100% - 4px))}.skip-link:focus-visible{transform:translateY(0)}.site-header{border-bottom:1px solid var(--colour-rule)}.site-header__inner,.site-footer__inner,.site-main{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter))));margin:0 auto}.site-header__inner{justify-content:space-between;align-items:center;gap:48px;padding:24px 0;display:flex}.sketch-wordmark{letter-spacing:-.04em;flex:none;font-size:2rem;font-weight:600;line-height:1;text-decoration:none}.site-nav{flex-wrap:wrap;gap:12px 28px;display:flex}.site-nav a{padding:3px 0;font-size:.95rem;font-weight:500;line-height:1.2;text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible,.site-nav [aria-current=page]{text-underline-offset:.3em;text-decoration:underline}.site-nav [aria-current=page]{font-weight:600;text-decoration-thickness:2px}.sketch-intro{max-width:720px;padding:72px 0 56px}.sketch-eyebrow,.control-eyebrow{letter-spacing:.05em;text-transform:uppercase;margin:0 0 16px;font-weight:500}.sketch-eyebrow{font-size:.95rem}.sketch-intro h1{letter-spacing:-.035em;margin:0;font-size:clamp(2.5rem,7vw,5rem);font-weight:500;line-height:.98}.sketch-intro>p:last-child{max-width:620px;margin:28px 0 0;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5}.workspace{border:1px solid var(--colour-rule-strong);grid-template-columns:minmax(270px,330px) minmax(0,1fr);min-height:680px;display:grid}.control-panel{background:var(--colour-background);border-right:1px solid var(--colour-rule-strong);flex-direction:column;gap:24px;min-height:0;padding:32px;display:flex}.control-eyebrow{letter-spacing:.08em;margin-bottom:10px;font-size:.8rem}.control-panel h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:500;line-height:1.05}.intro{color:var(--colour-muted);margin:14px 0 0;font-size:.95rem;line-height:1.55}.dimension-controls{grid-template-columns:1fr 82px;align-items:center;gap:12px 14px;display:grid}.dimension-controls label{justify-content:space-between;align-items:baseline;gap:12px;font-size:.95rem;font-weight:600;display:flex}.range{color:var(--colour-muted);font-size:.75rem;font-weight:400}input[type=number]{width:82px;min-height:46px;color:var(--colour-text);text-align:center;background:var(--colour-background);border:1px solid var(--colour-rule-strong);border-radius:0;padding:7px 9px;font-size:1.1rem;font-weight:600}.model-facts{border-top:1px solid var(--colour-rule);border-bottom:1px solid var(--colour-rule);gap:9px;margin:0;padding:16px 0;display:grid}.model-facts div{justify-content:space-between;gap:18px;font-size:.8rem;display:flex}.model-facts dt{color:var(--colour-muted)}.model-facts dd{text-align:right;margin:0;font-weight:600}.file-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}button{min-height:46px;color:var(--colour-text);cursor:pointer;background:var(--colour-background);border:1px solid var(--colour-rule-strong);border-radius:0;padding:9px 12px;font-size:.82rem;font-weight:600}button:hover{background:var(--colour-background-subtle);border-color:var(--colour-text)}button.primary{color:var(--colour-background);background:var(--colour-text);border-color:var(--colour-text)}button.primary:hover{color:var(--colour-text);background:var(--colour-background)}.hint,.status{color:var(--colour-muted);margin:0;font-size:.75rem;line-height:1.5}.hint{margin-top:auto}.status{color:#365f63;min-height:18px;font-weight:500}.status.error{color:#8b2e20}.viewport-wrap{background:var(--colour-background-subtle);min-width:0;min-height:0;position:relative}#viewport{touch-action:none;width:100%;height:100%;display:block}.viewport-key{color:#444;border:1px solid var(--colour-rule-strong);background:#ffffffe6;gap:14px;padding:9px 12px;font-size:.75rem;display:flex;position:absolute;bottom:16px;right:16px}.viewport-key span{align-items:center;gap:6px;display:flex}.swatch{width:9px;height:9px}.swatch.accommodation{background:#202323}.swatch.service{background:#7b8584}.webgl-error{text-align:center;border:1px solid var(--colour-rule-strong);background:#fff;width:min(400px,80%);padding:20px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.sketch-note{color:var(--colour-muted);margin:0;padding:20px 0 72px;font-size:.85rem}.sketch-note a{color:var(--colour-text);text-underline-offset:.2em}.site-footer{color:#fff;background:#111}.site-footer__inner{justify-content:space-between;align-items:flex-end;gap:48px;padding:48px 0;display:flex}.sketch-wordmark--footer{color:#fff}.site-footer__details{color:#ddd;text-align:right}.site-footer__details p{margin:0}.site-footer__details p+p{margin-top:8px}.site-footer__details a{color:#fff}@media (max-width:48rem){.site-header__inner,.site-footer__inner,.site-main{width:min(var(--page-width), calc(100% - (2 * var(--page-gutter-mobile))))}.site-header__inner{flex-direction:column;align-items:flex-start;gap:20px;padding:18px 0}.site-nav{gap:12px 20px;width:100%}.sketch-intro{padding:56px 0 44px}.workspace{grid-template-rows:auto minmax(540px,65dvh);grid-template-columns:1fr;min-height:0}.control-panel{border-right:0;border-bottom:1px solid var(--colour-rule-strong);gap:18px;padding:24px}.hint{margin-top:0}.viewport-key{justify-content:center;bottom:10px;left:10px;right:10px}.site-footer__inner{flex-direction:column;align-items:flex-start;gap:28px;padding:40px 0}.site-footer__details{text-align:left}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}@media print{.site-header,.control-panel,.viewport-key,.site-footer,.sketch-intro,.sketch-note{display:none}.site-main,.workspace,.viewport-wrap{border:0;width:100%;height:100%;display:block}}
/*$vite$:1*/