*,:before,:after{box-sizing:border-box}body{color:var(--color-text);background:var(--color-background);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:var(--color-primary-ink)}.container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}.site-header{border-bottom:1px solid color-mix(in srgb, var(--color-text) 15%, transparent);padding:1rem 0}.site-header img{width:auto;height:2.5rem;display:block}.section{padding-block:clamp(3rem,8vw,6rem)}.section--dark{background:var(--color-accent);color:#fff}h1,h2{margin:0 0 1rem;line-height:1.15}.btn{background:var(--color-primary);color:#fff;border-radius:4px;padding:.75rem 1.25rem;font-weight:700;text-decoration:none;display:inline-block}.skip-link{z-index:10;background:var(--color-accent);color:#fff;padding:.5rem 1rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-header__logo{display:block}.site-header img{height:2.25rem}@media (width<=30rem){.site-header .shop-badge__text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.site-footer{border-top:1px solid color-mix(in srgb, var(--color-text) 15%, transparent);padding:2rem 0 3rem;font-size:.9375rem}.site-footer__inner{flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.site-footer p{margin:0}.site-footer ul{flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.page{padding-block:clamp(2rem,6vw,4rem)}.page h1{letter-spacing:-.01em;font-size:clamp(1.75rem,5vw,2.75rem);font-weight:800}.prose{max-width:42rem}.prose h2{margin-top:2rem;font-size:1.25rem}.placeholder-note{border-left:4px solid var(--color-primary);background:#fff;padding:1rem 1.25rem}.breadcrumb{margin:0 0 1.5rem;font-size:.9375rem}:root{--shop-color-text:var(--color-text);--shop-color-muted:color-mix(in srgb, var(--color-text) 72%, var(--color-background));--shop-color-bg:var(--color-background);--shop-color-surface:#fff;--shop-color-line:color-mix(in srgb, var(--color-text) 16%, transparent);--shop-color-accent:var(--color-primary);--shop-color-accent-ink:var(--color-primary-ink);--shop-color-on-accent:#fff;--shop-color-image-bg:#ebe7de;--shop-color-danger:#a3261b;--shop-color-success:var(--color-primary-ink);--shop-color-notice-bg:var(--color-accent);--shop-color-notice-text:#f1ede4;--shop-color-highlight:#f3e7b8;--shop-color-focus:var(--color-primary);--shop-font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--shop-font-display:var(--shop-font-body);--shop-weight-display:800;--shop-radius:6px;--shop-radius-lg:14px;--shop-gap:clamp(1rem, 3vw, 2rem);--shop-duration:.42s;--shop-ease:cubic-bezier(.2, .7, .2, 1)}.shop-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shop :focus-visible,.shop-notice :focus-visible,.shop-badge:focus-visible{outline:3px solid var(--shop-color-focus);outline-offset:3px}.shop-notice{background:var(--shop-color-notice-bg);color:var(--shop-color-notice-text);text-align:center;padding:.5rem 1rem;font-size:.875rem;line-height:1.4}.shop-notice strong{font-weight:700}.shop-btn{border:2px solid var(--shop-color-accent);border-radius:var(--shop-radius);background:var(--shop-color-accent);min-height:3rem;color:var(--shop-color-on-accent);font:inherit;cursor:pointer;transition:transform .16s var(--shop-ease), background-color var(--shop-duration) var(--shop-ease);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:700;text-decoration:none;display:inline-flex}.shop-btn:hover{background:color-mix(in srgb, var(--shop-color-accent) 85%, var(--shop-color-text))}.shop-btn--ghost:hover{background:color-mix(in srgb, var(--shop-color-accent) 8%, transparent)}.shop-btn:active{transform:translateY(1px)}.shop-btn[disabled]{cursor:not-allowed;opacity:.6;transform:none}.shop-btn--ghost{color:var(--shop-color-accent-ink);background:0 0}.shop-btn--block{width:100%}.shop-link{color:var(--shop-color-accent-ink);font-weight:600}.shop-price{font-variant-numeric:tabular-nums;font-weight:700}.shop-tax{color:var(--shop-color-muted);margin:0;font-size:.875rem}.shop-image{aspect-ratio:1;border-radius:var(--shop-radius-lg);background:var(--shop-color-image-bg);position:relative;overflow:hidden}.shop-image img{object-fit:contain;width:100%;height:100%;transition:opacity var(--shop-duration) var(--shop-ease), transform var(--shop-duration) var(--shop-ease);display:block}.shop-image img.is-swapping{opacity:0;transform:scale(.97)}.shop-image__empty{height:100%;color:var(--shop-color-muted);font-family:var(--shop-font-display);font-weight:var(--shop-weight-display);text-align:center;place-items:center;padding:1.5rem;font-size:clamp(1.25rem,4vw,2rem);line-height:1.15;display:grid}.shop-list{gap:var(--shop-gap);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));margin:0;padding:0;list-style:none;display:grid}.shop-list-note{margin:1.5rem 0 0}.shop-card{flex-direction:column;gap:.5rem;display:flex;position:relative}.shop-card__title{margin:.5rem 0 0;font-size:1.0625rem;line-height:1.3}.shop-card__title a{color:inherit;text-decoration:none}.shop-card__title a:after{content:"";position:absolute;inset:0}.shop-card__title a:focus-visible{outline:none}.shop-card:has(a:focus-visible) .shop-image{outline:3px solid var(--shop-color-focus);outline-offset:3px}.shop-card .shop-image img{transition:transform .6s var(--shop-ease)}.shop-card:hover .shop-image img{transform:translateY(-4px)rotate(-1.5deg)}.shop-card__meta{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.shop-swatches{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.shop-swatches li{background:var(--swatch);width:.875rem;height:.875rem;box-shadow:inset 0 0 0 1px var(--shop-color-line);border-radius:50%}.shop-reveal-ready [data-shop-reveal]{opacity:0;transition:opacity .5s var(--shop-ease), transform .5s var(--shop-ease);transition-delay:var(--reveal-delay,0s);transform:translateY(12px)}.shop-reveal-ready [data-shop-reveal].is-visible{opacity:1;transform:none}.shop-product{gap:var(--shop-gap);display:grid}@media (width>=48rem){.shop-product{grid-template-columns:1.1fr 1fr;align-items:start}.shop-product__media{position:sticky;top:1.5rem}}.shop-product__title{font-family:var(--shop-font-display);font-weight:var(--shop-weight-display);margin:0 0 .5rem;font-size:clamp(1.75rem,5vw,2.75rem);line-height:1.1}.shop-product__price{margin:0;font-size:1.5rem}.shop-product__description{max-width:34rem;margin:1rem 0 1.5rem}.shop-product__actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.5rem;display:flex}.shop-stock{margin:1rem 0 0;font-weight:600}.shop-stock--out{color:var(--shop-color-danger)}.shop-status{min-height:1.5rem;color:var(--shop-color-success);margin:.75rem 0 0;font-weight:600}.shop-add__check{width:1.1rem;height:1.1rem;display:none}.shop-add__check path{stroke-dasharray:24;stroke-dashoffset:24px}.shop-add.is-added .shop-add__check{display:block}.shop-add.is-added .shop-add__check path{animation:shop-draw .42s var(--shop-ease) forwards}@keyframes shop-draw{to{stroke-dashoffset:0}}.shop-axis{border:0;margin:0 0 1.25rem;padding:0}.shop-axis legend{margin-bottom:.5rem;padding:0;font-weight:700}.shop-axis__current{color:var(--shop-color-muted);font-weight:400}.shop-axis__options{flex-wrap:wrap;gap:.5rem;display:flex}.shop-option{position:relative}.shop-option input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute;inset:0}.shop-option__face{border:2px solid var(--shop-color-line);border-radius:var(--shop-radius);background:var(--shop-color-surface);min-width:3rem;min-height:3rem;transition:border-color .2s var(--shop-ease);justify-content:center;align-items:center;padding:0 .875rem;font-weight:600;display:inline-flex}.shop-option--swatch .shop-option__face{border-radius:50%;padding:0}.shop-option__swatch{background:var(--swatch);width:2rem;height:2rem;box-shadow:inset 0 0 0 1px var(--shop-color-line);border-radius:50%}.shop-option input:checked+.shop-option__face{border-color:var(--shop-color-text);box-shadow:inset 0 0 0 1px var(--shop-color-text)}.shop-option input:focus-visible+.shop-option__face{outline:3px solid var(--shop-color-focus);outline-offset:3px}.shop-option:hover .shop-option__face{border-color:var(--shop-color-muted)}.shop-badge{border-radius:var(--shop-radius);min-height:2.75rem;color:var(--shop-color-text);align-items:center;gap:.5rem;padding:.25rem .75rem;font-weight:600;text-decoration:none;display:inline-flex}.shop-badge:hover{background:var(--shop-color-line)}.shop-badge svg{width:1.5rem;height:1.5rem}.shop-badge__count{background:var(--shop-color-accent);min-width:1.5rem;height:1.5rem;color:var(--shop-color-on-accent);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding:0 .375rem;font-size:.8125rem;display:inline-grid}.shop-badge__count[data-count="0"]{background:var(--shop-color-line);color:var(--shop-color-text)}.shop-badge.is-bumping .shop-badge__count{animation:shop-bump .52s var(--shop-ease)}@keyframes shop-bump{30%{transform:scale(1.35)}60%{transform:scale(.92)}}.shop-cart{gap:var(--shop-gap);display:grid}@media (width>=56rem){.shop-cart--filled{grid-template-columns:1fr 20rem;align-items:start}}.shop-lines{border-top:1px solid var(--shop-color-line);margin:0;padding:0;list-style:none}.shop-line{border-bottom:1px solid var(--shop-color-line);transition:opacity var(--shop-duration) var(--shop-ease), transform var(--shop-duration) var(--shop-ease);grid-template-columns:5rem 1fr;gap:.75rem 1rem;padding:1rem 0;display:grid}.shop-line.is-leaving{opacity:0;transform:translate(-12px)}.shop-line .shop-image{border-radius:var(--shop-radius)}.shop-line__title{margin:0;font-size:1rem}.shop-line__title a{color:inherit}.shop-line__meta{color:var(--shop-color-muted);margin:.125rem 0 0;font-size:.875rem}.shop-line__controls{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:.75rem;display:flex}@media (width>=36rem){.shop-line{grid-template-columns:6rem 1fr auto;align-items:center}.shop-line__controls{grid-column:auto;justify-content:flex-end}}.shop-line__total{text-align:right;min-width:5.5rem}.shop-qty{border:1px solid var(--shop-color-line);border-radius:var(--shop-radius);background:var(--shop-color-surface);align-items:center;display:inline-flex}.shop-qty button{width:2.75rem;height:2.75rem;color:var(--shop-color-text);font:inherit;cursor:pointer;background:0 0;border:0;font-size:1.25rem;line-height:1}.shop-qty button:disabled{opacity:.35;cursor:not-allowed}.shop-qty input{width:3rem;height:2.75rem;color:inherit;font:inherit;text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0}.shop-qty input::-webkit-inner-spin-button,.shop-qty input::-webkit-outer-spin-button{appearance:none;margin:0}.shop-remove{min-height:2.75rem;color:var(--shop-color-accent-ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 .5rem;text-decoration:underline}.shop-summary{border:1px solid var(--shop-color-line);border-radius:var(--shop-radius-lg);background:var(--shop-color-surface);padding:1.25rem}.shop-summary h2{margin:0 0 1rem;font-size:1.125rem}.shop-summary dl{grid-template-columns:1fr auto;gap:.5rem 0;margin:0 0 1rem;display:grid}.shop-summary dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;padding-left:1rem}.shop-summary .shop-summary__total{border-top:1px solid var(--shop-color-line);padding-top:.5rem;font-size:1.125rem;font-weight:700}.shop-summary__items{margin:0 0 1rem;padding:0;font-size:.9375rem;list-style:none}.shop-summary__items li{justify-content:space-between;gap:1rem;padding:.375rem 0;display:flex}.shop-summary__items small{color:var(--shop-color-muted);display:block}.shop-summary .shop-btn{margin-top:.5rem}.shop-empty{padding:2rem 0}.shop-empty p{margin:0 0 1rem;font-size:1.125rem}.shop-checkout{gap:var(--shop-gap);display:grid}@media (width>=56rem){.shop-checkout{grid-template-columns:1fr 22rem;align-items:start}}.shop-form fieldset{border:0;margin:0 0 1.5rem;padding:0}.shop-form legend{margin-bottom:.75rem;font-size:1.125rem;font-weight:700}.shop-field{align-content:start;gap:.25rem;margin-bottom:1rem;display:grid}.shop-field label{font-weight:600}.shop-field input,.shop-field select{border:1px solid var(--shop-color-muted);border-radius:var(--shop-radius);background:var(--shop-color-surface);width:100%;min-height:3rem;color:var(--shop-color-text);font:inherit;padding:.625rem .75rem}.shop-field input[aria-invalid=true]{border-color:var(--shop-color-danger);box-shadow:inset 0 0 0 1px var(--shop-color-danger)}.shop-field__error{color:var(--shop-color-danger);margin:0;font-size:.875rem;font-weight:600}.shop-field__error:empty{display:none}.shop-field--check{grid-template-columns:auto 1fr;align-items:start;gap:.75rem}.shop-field--check input{width:1.25rem;height:1.25rem;min-height:0;margin-top:.2rem}.shop-field--check label{font-weight:400}.shop-field--check .shop-field__error{grid-column:2}.shop-row{gap:0 1rem;display:grid}@media (width>=36rem){.shop-row{grid-template-columns:8rem 1fr}}.shop-alert{border-left:4px solid var(--shop-color-danger);background:var(--shop-color-surface);color:var(--shop-color-danger);margin:0 0 1.5rem;padding:.875rem 1rem;font-weight:600}.shop-alert:empty{display:none}.shop-thanks{max-width:40rem}.shop-thanks__test{border-radius:var(--shop-radius-lg);background:var(--shop-color-highlight);color:var(--shop-color-text);margin:0 0 2rem;padding:1.25rem 1.5rem}.shop-thanks__test strong{font-family:var(--shop-font-display);font-weight:var(--shop-weight-display);font-size:clamp(1.25rem,4vw,1.625rem);line-height:1.2;display:block}.shop-thanks__test p{margin:.5rem 0 0}.shop-thanks__number{font-variant-numeric:tabular-nums;font-weight:700}.shop-thanks__mark{width:3.5rem;height:3.5rem;color:var(--shop-color-success);margin-bottom:1rem}.shop-thanks__mark path{stroke-dasharray:48;stroke-dashoffset:48px;animation:shop-draw .6s .15s var(--shop-ease) forwards}.shop-noscript{border:1px solid var(--shop-color-line);border-radius:var(--shop-radius);padding:1rem}@media (prefers-reduced-motion:reduce){.shop *,.shop :before,.shop :after,.shop-badge *{transition:none!important;animation:none!important}.shop-add__check path,.shop-thanks__mark path{stroke-dashoffset:0}.shop-reveal-ready [data-shop-reveal]{opacity:1;transform:none}}
