:root {
  color-scheme: dark;
  --paper:#080808;
  --ink:#ededed;
  --muted:#989898;
  --line:#252525;
  --accent:#ffffff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--paper);
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
}
* { box-sizing:border-box; }
body { margin:0;font-size:15px;line-height:1.7; }
a { color:inherit;text-underline-offset:5px; }
a:hover { color:var(--accent); }
:focus-visible { outline:2px solid var(--accent);outline-offset:5px; }
h1,h2,h3,p,dl,dd { margin:0; }
h1,h2,h3 { font-weight:500; }
button { font:inherit;cursor:pointer; }
::selection { color:var(--paper);background:var(--ink); }
[hidden] { display:none !important; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.page { width:100%; }
.site-header,.hero-copy,.section-row,.site-footer,.intro { width:min(100% - 96px,1120px);margin-inline:auto; }
.skip-link { position:absolute;top:12px;left:16px;z-index:2;padding:8px 16px;background:var(--accent);color:var(--paper);transform:translateY(-200%); }
.skip-link:focus { transform:translateY(0);color:var(--paper); }
.site-header { min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line); }
.wordmark { font-size:25px;font-weight:550;letter-spacing:-0.9px;text-decoration:none; }
nav { display:flex;align-items:center;gap:34px; }
nav a { display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:12px;text-decoration:none; }
nav a:hover { text-decoration:underline; }
.hero-copy { display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding:68px 0 16px; }
h1 { font-size:40px;letter-spacing:-1.4px;line-height:1.2; }
.hero-copy > p { max-width:36ch;justify-self:end;color:var(--muted);font-size:15px; }
.artwork { min-width:0;margin-bottom:40px; }
.scene-viewport { position:relative;height:520px;width:100%;overflow:hidden; }
.sculpture-still,.artwork-control { position:absolute;width:100%;height:100%;inset:0; }
.sculpture-still { object-fit:cover; }
.artwork-control { display:none;padding:0;border:0;border-radius:0;background:transparent;cursor:grab;touch-action:pan-y; }
.artwork-control:active { cursor:grabbing; }
.artwork-control:focus-visible { outline-offset:-3px; }
canvas { display:block;width:100%;height:100%;pointer-events:none; }
[data-renderer="webgpu"] .artwork-control { display:block; }
[data-renderer="webgpu"] .sculpture-still { display:none; }
.section-row { display:grid;grid-template-columns:1fr 2.1fr;gap:55px;padding-block:45px;border-top:1px solid var(--line);scroll-margin-top:28px; }
.section-label h2 { font-size:13px; }
.section-content { min-width:0; }
.section-content h3 { font-size:19px;line-height:1.4;letter-spacing:-0.35px; }
.product-details h3 { margin-bottom:16px;font-size:26px;letter-spacing:-0.7px; }
.product-details p { max-width:62ch;font-size:14px;color:var(--muted); }
.email-link { display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:var(--ink);text-decoration-thickness:1px; }
.registration { display:flex;flex-wrap:wrap;gap:8px 16px; }
.registration div { display:flex;align-items:baseline;gap:6px;white-space:nowrap; }
.registration dt { font-size:11px;color:var(--muted); }
.registration dd { font-size:11px;font-variant-numeric:tabular-nums; }
.site-footer { display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:16px 0 24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);scroll-margin-top:24px; }
.site-footer address { font-style:normal; }
.site-footer > p,.phone-number { white-space:nowrap; }
.intro { padding-block:90px; }
.intro-description { margin-top:24px;color:var(--muted); }
.contact-button { display:inline-block;margin-top:24px;padding:12px 18px;border:1px solid var(--line); }
@media (max-width:1050px) {
  .site-header,.hero-copy,.section-row,.site-footer,.intro { width:calc(100% - 64px); }
  .scene-viewport { height:480px; }
  .section-row { gap:32px;grid-template-columns:1fr 2fr; }
}
@media (max-width:760px) {
  .site-header,.hero-copy,.section-row,.site-footer,.intro { width:calc(100% - 40px); }
  .site-header { min-height:82px; }
  .wordmark { font-size:23px; }
  nav { gap:22px; }
  .hero-copy { grid-template-columns:1fr;gap:22px;padding-top:40px; }
  h1 { font-size:32px; }
  .hero-copy > p { max-width:40ch;justify-self:start;font-size:14px; }
  .scene-viewport { height:380px; }
  .artwork { margin-bottom:32px; }
  .section-row { grid-template-columns:1fr;gap:26px;padding-block:32px; }
}
@media (max-width:430px) {
  .scene-viewport { height:360px; }
}
@media print {
  .site-header,.hero-copy,.section-row,.site-footer,.intro { width:100%; }
  nav,.skip-link,.artwork { display:none !important; }
  .hero-copy { padding:24px 0; }
  .section-row { padding-block:24px;break-inside:avoid; }
  a { text-decoration:none; }
}
