:root{--color-walnut:#3b2416;--color-ink:#1a120d;--color-sand:#e9dcc7;--color-brass:#c9a96b;--font-display:"Cormorant Garamond", Georgia, serif;--font-body:system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{background:var(--color-ink);color:var(--color-sand);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:none}.app{height:100dvh;position:fixed;inset:0}.loading{height:100%;font-family:var(--font-display);letter-spacing:.1em;place-items:center;font-size:1.5rem;display:grid}.hud{padding-block:max(1rem, env(safe-area-inset-top)) 1rem;pointer-events:none;justify-content:space-between;align-items:center;padding-inline:1.25rem;display:flex;position:absolute;inset-block-start:0;inset-inline:0}.hud>*{pointer-events:auto}.hud__brand{font-family:var(--font-display);letter-spacing:.35em;color:var(--color-brass);font-size:1.5rem}.hud__actions{align-items:center;gap:1rem;display:flex}.hud__meta{opacity:.7;text-transform:capitalize;font-size:.8rem}.hud__button{color:var(--color-sand);border:1px solid var(--color-brass);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.4rem 1rem}.hud__hint{text-align:center;opacity:.6;pointer-events:none;margin:0;font-size:.8rem;position:absolute;inset-block-end:max(1rem, env(safe-area-inset-bottom));inset-inline:0}.touch-controls{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;inset:0}.joystick-zone{pointer-events:auto;touch-action:none;width:45%;height:55%;position:absolute;bottom:0;left:0}.joystick{border:1.5px solid color-mix(in srgb, var(--color-brass) 70%, transparent);background:color-mix(in srgb, var(--color-ink) 35%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:50%;place-items:center;display:grid;position:fixed}.joystick__knob{aspect-ratio:1;background:color-mix(in srgb, var(--color-sand) 85%, transparent);border-radius:50%;width:46%;box-shadow:0 2px 10px #0006}.action-button{right:max(1.5rem, env(safe-area-inset-right));bottom:max(4rem, calc(env(safe-area-inset-bottom) + 3rem));border:1.5px solid var(--color-brass);background:color-mix(in srgb, var(--color-walnut) 80%, transparent);width:76px;height:76px;color:var(--color-sand);font:600 .85rem var(--font-body);letter-spacing:.05em;pointer-events:auto;touch-action:manipulation;border-radius:50%;position:absolute}.avatar-picker{background:color-mix(in srgb, var(--color-ink) 60%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:1.5rem;display:grid;position:absolute;inset:0}.avatar-picker__panel{text-align:center;width:100%;max-width:28rem}.avatar-picker__title{font:400 2rem var(--font-display);letter-spacing:.08em;color:var(--color-sand);margin:0 0 .5rem}.avatar-picker__subtitle{opacity:.7;margin:0 0 2rem;font-size:.9rem}.avatar-picker__options{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.avatar-picker__option{border:1px solid color-mix(in srgb, var(--color-brass) 60%, transparent);background:color-mix(in srgb, var(--color-walnut) 70%, transparent);color:var(--color-sand);font:400 1.25rem var(--font-display);letter-spacing:.1em;cursor:pointer;border-radius:4px;padding:2.5rem 1rem;transition:border-color .2s,background .2s}.avatar-picker__option:hover,.avatar-picker__option:focus-visible,.avatar-picker__option[aria-pressed=true]{border-color:var(--color-brass);background:var(--color-walnut)}.viewer{position:fixed;inset:0}.viewer__materials{justify-content:center;gap:.75rem;display:flex;position:absolute;inset-block-end:max(1.5rem, env(safe-area-inset-bottom));inset-inline:0}.viewer__materials .hud__button{color:var(--color-ink);border-color:var(--color-walnut)}.viewer__materials .hud__button[aria-pressed=true]{background:var(--color-walnut);color:var(--color-sand)}.loading-screen{z-index:5;background:var(--color-ink);place-content:center;justify-items:center;gap:1rem;transition:opacity .8s;display:grid;position:absolute;inset:0}.loading-screen--done{opacity:0;pointer-events:none}.loading-screen__brand{font:400 2.5rem var(--font-display);letter-spacing:.5em;color:var(--color-brass);padding-inline-start:.5em}.loading-screen__label{letter-spacing:.15em;opacity:.7;font-size:.85rem}.loading-screen__bar{background:color-mix(in srgb, var(--color-brass) 25%, transparent);width:12rem;height:1px;overflow:hidden}.loading-screen__fill{background:var(--color-brass);transform-origin:0;height:100%;transition:transform .3s}[dir=rtl] .loading-screen__fill{transform-origin:100%}.avatar-picker{z-index:6}.hud__brand,.hud__meta,.hud__button,.hud__hint{background:color-mix(in srgb, var(--color-ink) 55%, transparent);-webkit-backdrop-filter:blur(8px)}.hud__brand{border-radius:999px;padding:.35rem .9rem}.hud__meta{opacity:1;border-radius:999px;padding:.4rem .8rem}.hud__hint{inset-inline:auto;opacity:.85;white-space:nowrap;border-radius:999px;padding:.4rem 1rem;left:50%;transform:translate(-50%)}.interact-prompt{background:color-mix(in srgb, var(--color-ink) 70%, transparent);-webkit-backdrop-filter:blur(8px);color:var(--color-sand);white-space:nowrap;border-radius:999px;align-items:center;gap:.6rem;padding:.55rem 1.1rem .55rem .6rem;font-size:.9rem;animation:.25s ease-out rise-in;display:flex;position:absolute;bottom:4.5rem;left:50%;transform:translate(-50%)}.interact-prompt__key,.inspect-overlay__key{border:1px solid var(--color-brass);min-width:1.7rem;height:1.7rem;font:600 .75rem var(--font-body);color:var(--color-brass);border-radius:6px;place-items:center;padding:0 .35rem;display:inline-grid}.interact-prompt__name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-brass);font-size:1.05rem}.inspect-overlay{pointer-events:none;position:absolute;inset:0}.inspect-overlay>*{pointer-events:auto}.inspect-overlay__back{align-items:center;gap:.5rem;display:inline-flex;position:absolute;inset-block-start:5rem;inset-inline-start:1.25rem}[dir=rtl] .inspect-overlay__back>span:first-child{transform:scaleX(-1)}.inspect-overlay__key{border-color:color-mix(in srgb, var(--color-brass) 60%, transparent);min-width:auto;height:1.3rem;font-size:.65rem}@keyframes rise-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.product-panel{-webkit-backdrop-filter:blur(14px);width:min(26rem,40vw);color:var(--color-ink);background:#f6f1eaf0;flex-direction:column;display:flex;position:absolute;inset-block:0;inset-inline-end:0;box-shadow:-20px 0 60px #0000002e}.product-panel__scroll{flex:1;padding:5.5rem 2rem 1rem;overflow-y:auto}.product-panel__eyebrow{letter-spacing:.25em;text-transform:uppercase;color:#9a7b45;margin:0;font-size:.7rem}.product-panel__name{font:400 2rem/1.15 var(--font-display);letter-spacing:.02em;margin:.5rem 0 0}.product-panel__price{color:var(--color-walnut);margin:.6rem 0 0;font-size:1.25rem}.product-panel__vat{opacity:.6;font-size:.75rem}.product-panel__section{margin-top:1.75rem}.product-panel__label{font:600 .7rem var(--font-body);letter-spacing:.18em;text-transform:uppercase;opacity:.7;margin:0 0 .75rem}.product-panel__value{letter-spacing:.05em;text-transform:none;margin-inline-start:.5rem;font-size:.85rem;font-weight:400}.product-panel__swatches{gap:.75rem;display:flex}.product-panel__swatch{cursor:pointer;outline-offset:0;border:2px solid #f6f1ea;border-radius:50%;outline:1px solid #00000026;width:2.5rem;height:2.5rem;transition:outline-color .2s,outline-offset .2s}.product-panel__swatch[aria-checked=true]{outline:1.5px solid var(--color-brass);outline-offset:3px}.product-panel__description{opacity:.85;margin:1.75rem 0 0;font-size:.95rem;line-height:1.65}.product-panel__specs{border-top:1px solid #0000001a;margin:1.75rem 0 0}.product-panel__specs>div{border-bottom:1px solid #0000001a;justify-content:space-between;gap:1rem;padding:.8rem 0;font-size:.85rem;display:flex}.product-panel__specs dt{opacity:.6}.product-panel__specs dd{text-align:end;margin:0}.product-panel__buy{gap:.75rem;padding:1rem 2rem .5rem;display:flex}.product-panel__qty{border:1px solid #0003;border-radius:999px;align-items:center;display:flex}.product-panel__qty button{cursor:pointer;width:2.6rem;height:3rem;color:inherit;background:0 0;border:0;font-size:1.1rem}.product-panel__qty button:disabled{opacity:.3;cursor:default}.product-panel__qty output{text-align:center;min-width:1.5rem}.product-panel__add{cursor:pointer;background:var(--color-walnut);height:3rem;color:var(--color-sand);font:600 .9rem var(--font-body);letter-spacing:.04em;border:0;border-radius:999px;flex:1;transition:background .2s}.product-panel__add:hover{background:#2a1910}.product-panel__hint{padding:.25rem 2rem max(1rem, env(safe-area-inset-bottom));opacity:.5;text-align:center;margin:0;font-size:.72rem}@media (width<=767px){.product-panel{border-radius:18px 18px 0 0;width:auto;max-height:58dvh;inset-block-start:auto;inset-inline:0;box-shadow:0 -12px 40px #0003}.product-panel__scroll{padding:1.5rem 1.25rem .5rem}.product-panel__name{font-size:1.6rem}.product-panel__buy{padding:.75rem 1.25rem .25rem}}.hud{z-index:2}.inspect-overlay{z-index:1}@media (width<=767px){.hud__meta{display:none}.hud__actions{gap:.5rem}}@media (width>=768px){.product-panel{padding-top:4.75rem}.product-panel__scroll{padding-top:.75rem}}.cart-button{place-items:center;width:2.9rem;padding:.55rem 0;display:inline-grid;position:relative}.cart-button__badge{min-width:1.25rem;height:1.25rem;font:700 .7rem var(--font-body);background:var(--color-brass);color:var(--color-ink);border-radius:999px;place-items:center;padding:0 .3rem;display:grid;position:absolute;inset-block-start:-.3rem;inset-inline-end:-.3rem}.product-panel__view-cart{cursor:pointer;color:var(--color-walnut);font:600 .85rem var(--font-body);text-underline-offset:3px;background:0 0;border:0;margin:0 auto;padding:.25rem .5rem;text-decoration:underline}.cart-drawer{z-index:7;position:absolute;inset:0}.cart-drawer__scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#140e0a73;position:absolute;inset:0}.cart-drawer__panel{width:min(27rem,100vw);color:var(--color-ink);background:#f6f1ea;flex-direction:column;display:flex;position:absolute;inset-block:0;inset-inline-end:0;box-shadow:-20px 0 60px #00000040}.cart-drawer__header{padding:max(1.25rem, env(safe-area-inset-top)) 1.75rem 1rem;border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;display:flex}.cart-drawer__header h2{font:400 1.6rem var(--font-display);letter-spacing:.03em;margin:0}.cart-drawer__close{cursor:pointer;width:2.5rem;height:2.5rem;color:inherit;background:#0000000d;border:0;border-radius:50%;font-size:1.5rem}.cart-drawer__empty{opacity:.8;flex:1;place-content:center;justify-items:center;gap:1rem;display:grid}.cart-drawer__secondary{border:1px solid var(--color-walnut);color:var(--color-walnut);cursor:pointer;font:600 .85rem var(--font-body);background:0 0;border-radius:999px;padding:.7rem 1.4rem}.cart-drawer__lines{flex:1;margin:0;padding:.5rem 1.75rem;list-style:none;overflow-y:auto}.cart-line{border-bottom:1px solid #00000014;grid-template-columns:auto 1fr auto;gap:1rem;padding:1.1rem 0;display:grid}.cart-line__swatch{border-radius:10px;width:3.25rem;height:3.25rem;box-shadow:inset 0 0 0 1px #0000001a}.cart-line__name{font:400 1.1rem var(--font-display);margin:0}.cart-line__meta{opacity:.65;margin:.2rem 0 0;font-size:.8rem}.cart-line__actions{align-items:center;gap:1rem;margin-top:.6rem;display:flex}.cart-line__qty button{width:2.1rem;height:2.2rem}.cart-line__remove{cursor:pointer;color:inherit;opacity:.6;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.8rem;text-decoration:underline}.cart-line__total{white-space:nowrap;margin:0;font-weight:600}.cart-drawer__footer{padding:1rem 1.75rem max(1.25rem, env(safe-area-inset-bottom));border-top:1px solid #00000014}.cart-drawer__summary{margin:0 0 1rem}.cart-drawer__summary>div{justify-content:space-between;padding:.3rem 0;font-size:.9rem;display:flex}.cart-drawer__summary dd{margin:0}.cart-drawer__summary>div:first-child{font-size:1.05rem;font-weight:600}.cart-drawer__vat{opacity:.6;font-size:.8rem!important}.cart-drawer__checkout{width:100%}.cart-drawer__cod{text-align:center;opacity:.6;margin:.75rem 0 0;font-size:.75rem}[dir=rtl] .cart-drawer__panel{box-shadow:20px 0 60px #00000040}
