*{box-sizing:border-box}
body{margin:0;background:#fff;color:#000;font:14px/1.6 Arial,Helvetica,sans-serif}
button,input,select{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #000;outline-offset:4px}
.wrap{width:min(100% - 64px,960px);margin-inline:auto}
.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e5e5}
.wordmark{display:block;width:184px;height:auto}
.back-link{font-size:12px;color:#666}
.back-link:hover{text-decoration:underline}
.intro{padding:42px 0 24px}
h1{font-size:42px;font-weight:500;line-height:1.1;letter-spacing:-.06em;margin:0 0 12px}
.intro p{margin:0;color:#777;font-size:13px}
.store-notice{font-size:11px;color:#777;margin:0 0 20px}
.product{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center;padding:0 0 44px}
.product+.product{padding-top:44px;border-top:1px solid #e5e5e5}
.product-photo{aspect-ratio:1;background:#f6f6f6;display:flex;align-items:center;justify-content:center;overflow:hidden}
.product-photo img{width:100%;height:100%;object-fit:contain}
.product-photo.placeholder{position:relative}
.product-photo.placeholder img{width:42%;height:auto;mix-blend-mode:multiply}
.product-photo.placeholder span{position:absolute;bottom:20px;color:#999;font-size:10px}
.product-info h2{font-size:24px;line-height:1.25;letter-spacing:-.035em;font-weight:500;margin:0 0 10px}
.price{font-size:17px;margin:0 0 24px}
.product-info .note{font-size:12px;color:#777;margin:0 0 28px;max-width:280px}
.options{display:grid;grid-template-columns:1fr 80px;gap:14px;margin-top:26px}
label{font-size:11px;display:block;margin-bottom:7px}
select,input{width:100%;height:44px;border:1px solid #ccc;border-radius:0;background:#fff;padding:9px 11px;min-width:0}
.buy-button{display:block;width:100%;border:1px solid #000;background:#000;color:#fff;padding:13px 18px;margin-top:20px;font-size:12px;font-weight:600}
.buy-button:not(:disabled):hover{background:#333}
.checkout-note{font-size:10px;color:#888;margin:12px 0 0;text-align:center}
.product-error{font-size:12px;margin:12px 0 0}
.footer{border-top:1px solid #e5e5e5;display:flex;justify-content:space-between;gap:20px;padding-top:22px;padding-bottom:30px;font-size:10px;color:#777}
.footer button{border:0;background:none;padding:0;font-size:10px;color:#777}
.footer button:hover{text-decoration:underline}
.skip{position:absolute;top:-100px;left:16px;padding:10px;background:#fff;z-index:3}
.skip:focus{top:10px}
dialog{border:1px solid #ddd;padding:30px;background:#fff;color:#000;width:min(94vw,490px);max-height:85dvh;box-shadow:0 15px 60px #0002}
dialog::backdrop{background:#0006}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.dialog-heading h2{font-size:20px;font-weight:500;letter-spacing:-.03em;margin:0}
.dialog-heading button{background:none;border:0;padding:0 3px;font-size:27px}
dialog p{font-size:12px;color:#666;margin:20px 0 0}
.order-result{margin-top:26px;border:1px solid #ddd;padding:22px}
.order-result h2{font-weight:500;margin:0 0 8px;font-size:23px;letter-spacing:-.03em}
.order-result p{font-size:13px;color:#666;margin:0 0 12px}
.order-result a{font-size:12px;text-decoration:underline}
.empty{padding:20px 0 60px;color:#777;font-size:13px}
.shipping-form{margin-top:22px}
.shipping-form>input{margin-bottom:14px}
.shipping-form .options{grid-template-columns:1fr 1fr;margin-top:0}
.shipping-form .optional{color:#888}
.quote-button{width:100%;padding:12px;border:1px solid #000;background:#fff;color:#000;margin-top:18px;font-size:12px}
.shipping-rates{border-top:1px solid #ddd;margin-top:22px;padding-top:22px}
.shipping-rates .shipping-total{color:#000;line-height:1.7}
.shipping-form .product-error{color:#000}
[hidden]{display:none!important}
@media(max-width:760px){.wrap{width:min(100% - 40px,600px)}.header{height:88px}.wordmark{width:165px}.intro{padding-top:30px}h1{font-size:35px}.product{gap:30px;grid-template-columns:1fr 1fr}.product-info h2{font-size:21px}.product-photo{aspect-ratio:1/1.1}.options{grid-template-columns:1fr 64px;gap:10px}}
@media(max-width:540px){.wrap{width:calc(100% - 36px)}.product{grid-template-columns:1fr;gap:24px;padding-bottom:34px}.product-photo{aspect-ratio:1.15}.product-photo.placeholder img{width:35%}.product-info h2{font-size:24px}.product-info .note{margin-bottom:18px;max-width:none}.intro{padding-bottom:20px}.intro p{font-size:12px}.footer{gap:12px;font-size:9px}.footer button{font-size:9px}.options{grid-template-columns:1fr 80px}.product-photo.placeholder span{bottom:12px}}
