:root{--primary:var(--primary-light,#3F51B5);--on-primary:var(--on-primary-light,#FFFFFF);--font-heading:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--ground:#F7F7FA;--surface:#FFFFFF;--ink:#16181D;--ink-soft:#5A6472;--ink-faint:#8A94A3;--rule:#E4E8EF;--danger:#C0392B;--radius:10px;--shell-max:1080px}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-body);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.55}input,select{font:inherit;width:100%;padding:.6rem .75rem;border:1px solid var(--rule);border-radius:8px;background:var(--surface);color:var(--ink)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--rule)}.topbar-inner{max-width:var(--shell-max);margin:0 auto;padding:.85rem 1rem;display:flex;align-items:center;gap:1rem}.brand{font-weight:700;font-size:1.05rem;color:var(--ink)}.brand:hover{text-decoration:none}.topbar-spacer{flex:1 1}.nav-link{color:var(--ink-soft);font-size:.92rem}.nav-link.active{color:var(--primary);font-weight:600}.cart-pill{display:inline-flex;align-items:center;gap:.4rem;background:var(--primary);color:var(--on-primary);padding:.4rem .8rem;border-radius:999px;font-size:.88rem;font-weight:600}.cart-pill:hover{text-decoration:none;opacity:.92}main{flex:1 1;width:100%;max-width:var(--shell-max);margin:0 auto;padding:1.5rem 1rem 4rem}h1{font-size:1.5rem;margin:0 0 1rem}h2{font-size:1.15rem;margin:0 0 .75rem}.grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(var(--card-min,190px),1fr))}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.card:hover{text-decoration:none}.card-media{aspect-ratio:1;background:var(--ground);display:grid;place-items:center;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover}.card-media .placeholder{color:var(--ink-faint);font-size:.8rem}.card-body{padding:.75rem .85rem .9rem;display:grid;grid-gap:.3rem;gap:.3rem}.card-title{font-size:.92rem;font-weight:600;color:var(--ink)}.card-price{font-size:.95rem;font-weight:700;color:var(--primary)}.card-note{font-size:.75rem;color:var(--ink-faint)}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:1.1rem}.panel+.panel{margin-top:1rem}.row{display:flex;align-items:center;gap:.75rem}.row+.row{margin-top:.75rem}.row-spacer{flex:1 1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;background:var(--primary);color:var(--on-primary);padding:.65rem 1.1rem;border-radius:8px;font-weight:600;font-size:.95rem}.btn:hover{text-decoration:none;opacity:.93}.btn.block{width:100%}.btn.ghost{background:transparent;color:var(--primary);border:1px solid var(--rule)}.btn.small{padding:.4rem .7rem;font-size:.85rem}.stepper{display:inline-flex;align-items:center;gap:.5rem}.stepper button{width:30px;height:30px;border-radius:7px;border:1px solid var(--rule);background:var(--surface);display:grid;place-items:center;font-weight:600}.stepper span{min-width:1.4rem;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.totals{display:grid;grid-gap:.4rem;gap:.4rem;font-size:.92rem}.totals .line{display:flex;justify-content:space-between;color:var(--ink-soft)}.totals .line.total{color:var(--ink);font-weight:700;font-size:1.05rem;padding-top:.5rem;border-top:1px solid var(--rule)}.fields{display:grid;grid-gap:.75rem;gap:.75rem}.field{display:grid;grid-gap:.3rem;gap:.3rem}.field label{font-size:.8rem}.badge,.field label{color:var(--ink-soft)}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600;background:var(--ground);text-transform:capitalize}.notice{padding:.7rem .9rem;border-radius:8px;font-size:.9rem}.notice.error{background:#FDECEA;color:var(--danger)}.muted{color:var(--ink-soft)}.empty{text-align:center;padding:4rem 1rem;color:var(--ink-faint)}.stack{display:grid;grid-gap:1rem;gap:1rem}.center-narrow{max-width:380px;margin:3rem auto}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.segmented{display:flex;border:1px solid var(--rule);border-radius:8px;overflow:hidden}.segmented button{flex:1 1;padding:.5rem .6rem;font-size:.88rem;color:var(--ink-soft);background:var(--surface);border:0;cursor:pointer}.segmented button+button{border-left:1px solid var(--rule)}.segmented button.active{background:var(--primary);color:var(--on-primary);font-weight:600}.nav-link:disabled{color:var(--ink-faint);cursor:default}.brand,h1,h2,h3{font-family:var(--font-heading)}.brand-logo{display:block;height:28px;width:auto;max-width:180px;object-fit:contain}.site-footer{margin-top:auto;border-top:1px solid var(--rule);background:var(--surface)}.site-footer-inner{max-width:var(--shell-max);margin:0 auto;padding:1.5rem 1rem 2rem;display:grid;grid-gap:.6rem;gap:.6rem;font-size:.85rem;color:var(--ink-soft)}.site-footer-links{display:flex;flex-wrap:wrap;gap:.25rem 1rem}.site-footer-note{color:var(--ink-faint);font-size:.8rem}:root[data-mode=auto],:root[data-mode=dark]{color-scheme:light dark}@media (prefers-color-scheme:dark){:root[data-mode=auto]{--primary:var(--primary-dark,#6F7DC8);--on-primary:var(--on-primary-dark,#FFFFFF);--ground:#0F1115;--surface:#15181E;--ink:#E9ECF1;--ink-soft:#A8B0BD;--ink-faint:#79828F;--rule:#262B34;--danger:#F1786B}}:root[data-mode=dark]{color-scheme:dark;--primary:var(--primary-dark,#6F7DC8);--on-primary:var(--on-primary-dark,#FFFFFF);--ground:#0F1115;--surface:#15181E;--ink:#E9ECF1;--ink-soft:#A8B0BD;--ink-faint:#79828F;--rule:#262B34;--danger:#F1786B}:root[data-mode=dark] .notice.error{background:#3A1D1B}@media (prefers-color-scheme:dark){:root[data-mode=auto] .notice.error{background:#3A1D1B}}.topbar-inner.center{flex-direction:column;gap:.6rem}.topbar-inner.center .topbar-nav{justify-content:center}.topbar-nav{display:flex;align-items:center;gap:1rem}.cart-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;color:var(--ink)}.cart-button:hover{background:var(--ground)}.cart-button svg{width:22px;height:22px}.cart-badge{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-size:.7rem;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--surface)}.drawer-overlay{position:fixed;inset:0;z-index:40;background:rgba(9,11,15,.45);opacity:0;pointer-events:none;transition:opacity .2s ease}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;z-index:50;height:100dvh;width:min(420px,100vw);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--rule);transform:translateX(100%);transition:transform .24s ease}.drawer.open{transform:translateX(0)}.drawer:focus{outline:none}@media (prefers-reduced-motion:reduce){.drawer,.drawer-overlay{transition:none}}.drawer-head{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.1rem .9rem;border-bottom:1px solid var(--rule)}.drawer-head h2{flex:1 1;font-size:1.15rem}.drawer-close{font-size:1.6rem;line-height:1;color:var(--ink-soft);width:36px;height:36px;border-radius:999px}.drawer-close:hover{background:var(--ground)}.drawer-body{flex:1 1;overflow-y:auto;padding:1rem 1.1rem;display:grid;grid-gap:.9rem;gap:.9rem;align-content:start}.drawer-item{display:flex;gap:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--rule)}.drawer-item:last-child{border-bottom:none;padding-bottom:0}.drawer-item-main{flex:1 1;min-width:0}.drawer-item-name{margin:0;font-size:.92rem;font-weight:600}.drawer-item-note{margin:.15rem 0 0;font-size:.78rem;color:var(--ink-faint)}.drawer-item-side{display:grid;grid-gap:.4rem;gap:.4rem;justify-items:end}.drawer-item-price{font-size:.92rem;font-weight:700}.drawer-item-remove{font-size:.78rem;color:var(--danger)}.drawer-item-remove:hover{text-decoration:underline}.drawer-foot{padding:1rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom));border-top:1px solid var(--rule);background:var(--surface)}.drawer-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.drawer-actions .btn{text-align:center}.checkout-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;align-items:start}.checkout-main{display:grid;grid-gap:1rem;gap:1rem;align-content:start}@media (min-width:880px){.checkout-grid{grid-template-columns:minmax(0,1fr) 340px}.checkout-aside{position:-webkit-sticky;position:sticky;top:5rem}}.checkout-main .panel+.panel{margin-top:0}.summary-items{display:grid;grid-gap:.85rem;gap:.85rem}.summary-item{display:flex;align-items:flex-start;gap:.7rem}.summary-name{margin:0;font-size:.9rem;font-weight:600}.summary-note{margin:.15rem 0 0;font-size:.78rem;color:var(--ink-faint)}.summary-price{font-size:.9rem;font-weight:700;white-space:nowrap}.summary-qty{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-size:.72rem;font-weight:700;line-height:22px;text-align:center}.summary-coupon{margin:1rem 0;padding:.9rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.summary-coupon .btn.small{flex:none}.checkout-terms{margin:0;font-size:.82rem;color:var(--ink-faint);text-align:center}.wallet-buttons{display:grid;grid-gap:.6rem;gap:.6rem}.apple-pay-button{-webkit-appearance:-apple-pay-button;-moz-appearance:-apple-pay-button;appearance:-apple-pay-button;-apple-pay-button-type:pay;-apple-pay-button-style:black;width:100%;height:44px;border-radius:var(--radius)}.apple-pay-button:disabled{opacity:.5}.receipt{max-width:620px;margin:0 auto;display:grid;grid-gap:1rem;gap:1rem}.receipt-head{text-align:center;padding:.5rem 0 .25rem}.receipt-tick{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:.85rem;border-radius:999px;background:var(--primary);color:var(--on-primary)}.receipt-tick svg{width:26px;height:26px}.receipt-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.9rem;gap:.9rem}.receipt-meta-label{display:block;font-size:.75rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.receipt-meta-value{display:block;margin-top:.15rem;font-size:.92rem;font-weight:600;overflow-wrap:anywhere}.receipt-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.receipt-actions .btn{text-align:center}.card-brands{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.25rem}.card-brands-label{font-size:.78rem;color:var(--ink-faint)}.card-brands-list{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.card-brand{height:24px;width:auto;border-radius:3px}.account-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;align-items:start}.account-nav{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.25rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.account-nav::-webkit-scrollbar{display:none}.account-nav-link{flex:none;padding:.5rem .85rem;border-radius:999px;border:1px solid var(--rule);background:var(--surface);color:var(--ink-soft);font:inherit;font-size:.9rem;text-decoration:none;cursor:pointer;white-space:nowrap}.account-nav-link:hover{color:var(--ink)}.account-nav-link.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.account-main{display:grid;grid-gap:1rem;gap:1rem;align-content:start;min-width:0}.account-greeting,.account-main h1{margin:0}.link-button{background:none;border:0;padding:0;font:inherit;color:var(--primary);text-decoration:underline;cursor:pointer}.account-tiles{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-top:.5rem}.account-tile{display:grid;grid-gap:.25rem;gap:.25rem;align-content:start;padding:.9rem 1rem;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);text-decoration:none}.account-tile:hover{border-color:var(--primary)}.account-tile-title{font-weight:600;color:var(--ink)}.account-tile-note{font-size:.85rem;color:var(--ink-soft)}.account-address-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.account-address{display:grid;grid-gap:.15rem;gap:.15rem;margin:.7rem 0 0;font-style:normal;font-size:.92rem;color:var(--ink-soft)}.account-field-grid{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:1fr}@media (min-width:560px){.account-field-grid{grid-template-columns:1fr 1fr}.account-field-grid>.field{grid-column:1/-1}.account-field-grid>.field.half{grid-column:auto}}.account-subhead{margin:1.4rem 0 0;font-size:1rem;padding-top:1.1rem}.account-dl,.account-subhead{border-top:1px solid var(--rule)}.account-dl{display:grid;grid-gap:.6rem 1.2rem;gap:.6rem 1.2rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:.9rem;padding-top:.9rem}.account-dl-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}.account-dl-value{display:block;font-size:.92rem;color:var(--ink)}.account-details-block{margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--rule);font-size:.9rem}.account-details-block summary{cursor:pointer;color:var(--ink-soft)}.notice.success{background:#E7F6EC;color:#1B7F3B}@media (min-width:820px){.account-grid{grid-template-columns:200px minmax(0,1fr);gap:2rem}.account-nav{flex-direction:column;overflow:visible;position:-webkit-sticky;position:sticky;top:5rem}.account-nav-link{border:0;background:none;border-radius:6px;text-align:left}.account-nav-link.active{background:var(--primary);color:var(--on-primary)}}:root[data-mode=dark] .notice.success{background:#17351F;color:#6FD08C}@media (prefers-color-scheme:dark){:root[data-mode=auto] .notice.success{background:#17351F;color:#6FD08C}}.card-link{text-decoration:none}.card-link:after{content:"";position:absolute;inset:0}.card,.card-cta{position:relative}.card-cta{z-index:1}.card-action{margin-top:.45rem;display:flex}.card-action .btn{width:100%;justify-content:center;text-align:center}.card-note-error{color:var(--danger)}