@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/35f3de0ebb1cfc70-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e6099e249fd938cc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"Instrument Serif Fallback";src:local("Times New Roman");ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.00%;size-adjust:83.94%}.__className_eb6a5a{font-family:"Instrument Serif","Instrument Serif Fallback";font-weight:400;font-style:normal}.__variable_eb6a5a{--font-serif:"Instrument Serif","Instrument Serif Fallback"}:root{--bg:#ffffff;--surface:#f7f6f3;--surface-2:#efede8;--line:#e8e6e1;--line-2:#d8d5ce;--ink:#1d1d1f;--ink-2:#48484d;--ink-3:#6b6b70;--accent:#1f3a5f;--accent-ink:#ffffff;--accent-text:#1f3a5f;--accent-soft:#edf0f4;--brand-wash:#f2f4f8;--ok:#13703f;--ok-bg:#edf7f1;--warn:#8a5300;--warn-bg:#fdf6e7;--warn-line:#f0dcb0;--err:#b42318;--err-bg:#fef3f2;--info-bg:#f2f5f9;--radius-sm:8px;--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(16,24,40,0.05);--shadow-md:0 10px 28px -14px rgba(16,24,40,0.22);--shadow-lg:0 24px 56px -16px rgba(16,24,40,0.28);--ease:cubic-bezier(0.2,0.7,0.2,1);--header-h:116px;--sans:var(--font-sans),"Segoe UI",system-ui,-apple-system,sans-serif;--serif:var(--font-serif),Georgia,"Times New Roman",serif;color-scheme:light}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;color:inherit}input,select,textarea{font:inherit;color:var(--ink)}hr{border:0;border-top:1px solid var(--line);margin:10px 0}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-soft)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 32px}.page{padding-top:24px;padding-bottom:72px}.page-narrow{max-width:980px}.section{padding-top:56px}.section-tint{margin-top:72px;padding:56px 0;background:var(--surface)}.display{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,3vw + 1.2rem,3.6rem);line-height:1.04;letter-spacing:-.01em}.display-sm{font-size:2rem}.display-sm,.page-title{font-family:var(--serif);font-weight:400;line-height:1.1}.page-title{font-size:clamp(1.9rem,1.6vw + 1.3rem,2.5rem)}.section-title{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,1vw + 1.2rem,2rem);line-height:1.15}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin-bottom:10px}.lead-sm{font-size:16px;margin-bottom:8px}.muted{color:var(--ink-3)}.small{font-size:13px}.strong{font-weight:500}.ink,.strong{color:var(--ink)}.center{text-align:center}.nowrap{white-space:nowrap}.pre{white-space:pre-wrap}.text-error{color:var(--err);display:inline-flex;gap:6px;align-items:flex-start}.text-error .icon{flex:none;margin-top:2px}.text-ok{color:var(--ok)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:10px 16px;background:var(--ink);color:#fff;border-radius:var(--radius-sm);transform:translateY(-150%)}.skip-link:focus{transform:none}.icon{flex:none;display:block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:10px;font-size:15px;font-weight:500;line-height:1.2;text-align:center;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s}.btn:active:not(:disabled){transform:translateY(1px)}.btn-lg{min-height:52px;padding:0 24px;font-size:16px}.btn-sm{min-height:36px;padding:0 12px;font-size:14px}.btn-block{width:100%}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:color-mix(in oklab,var(--accent) 88%,#000);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg);border-color:var(--line-2);color:var(--ink)}.btn-secondary:hover:not(:disabled){border-color:var(--ink-3);background:var(--surface)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover:not(:disabled){background:var(--surface)}.btn-danger{color:var(--err)}.btn-danger-solid{background:var(--err);color:#fff}.btn-primary.is-done,.btn-primary.is-done:disabled{opacity:1;background:var(--ok-bg);color:var(--ok);border-color:#cde8d8;cursor:default}.btn.is-disabled,.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-row{display:flex;flex-wrap:wrap;gap:10px}.btn-row.center{justify-content:center}.link,.link-arrow{color:var(--accent-text);font-weight:500}.link-arrow:hover,.link:hover{text-decoration:underline;text-underline-offset:3px}.link-arrow{display:inline-flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap}.link-arrow .icon{transition:transform .15s var(--ease)}.link-arrow:hover .icon{transform:translateX(2px)}.link-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 0;background:none;border:0;font-size:14px;color:var(--ink-2);cursor:pointer}.link-btn:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-3);margin-bottom:12px}.back-link:hover,.icon-btn{color:var(--ink)}.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border:0;border-radius:10px;background:transparent;cursor:pointer;transition:background .15s}.icon-btn.is-active,.icon-btn:hover{background:var(--surface)}.icon-btn-label{display:none}.count{position:absolute;top:3px;right:1px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ink);color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--bg)}.count-accent{background:var(--accent);color:var(--accent-ink)}.badge{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid var(--line);font-size:12px;font-weight:500;color:var(--ink-2);white-space:nowrap}.badge-accent{background:var(--accent-soft);border-color:transparent;color:var(--accent-text)}.status{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap}.status-info{background:var(--info-bg);color:#2f4b73}.status-ok{background:var(--ok-bg);color:var(--ok)}.status-warn{background:var(--warn-bg);color:var(--warn)}.status-muted{background:var(--surface);color:var(--ink-3)}.chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--bg);font-size:14px;color:var(--ink);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.chip:hover{border-color:var(--ink-3)}.chip.is-on{background:var(--ink);border-color:var(--ink);color:#fff}.chip-size{min-width:56px}.chip-count{font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chip.is-on .chip-count{color:rgba(255,255,255,.7)}.tab .chip-count{margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--warn-bg);color:var(--warn)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.swatches{display:inline-flex;flex-wrap:wrap;gap:6px}.swatch{width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--swatch,#888);box-shadow:inset 0 0 0 1px rgba(0,0,0,.16);cursor:pointer;transition:box-shadow .15s}.swatch.is-on{box-shadow:inset 0 0 0 1px rgba(0,0,0,.16),0 0 0 2px var(--bg),0 0 0 3.5px var(--ink)}.swatch-sm{width:14px;height:14px;cursor:inherit}.swatches-lg{gap:12px}.swatches-lg .swatch{width:36px;height:36px;display:inline-block}.notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;margin-bottom:16px;border:1px solid #dfe6f0;border-radius:10px;background:var(--info-bg);font-size:14px;color:var(--ink)}.notice>.icon{margin-top:1px;color:#2f4b73}.notice-body{flex:1 1;min-width:0}.notice-body ul{margin:4px 0 0;padding-left:18px}.notice-ok{background:var(--ok-bg);border-color:#cde8d8}.notice-ok>.icon{color:var(--ok)}.notice-warn{background:var(--warn-bg);border-color:var(--warn-line)}.notice-warn>.icon{color:var(--warn)}.notice-error{background:var(--err-bg);border-color:#f6d0cb}.notice-error,.notice-error>.icon{color:var(--err)}.notice.small{font-size:13px}.state{max-width:460px;margin:0 auto;padding:56px 16px;text-align:center}.state-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:16px;border-radius:50%;background:var(--surface);color:var(--ink-2)}.state-icon.is-error{background:var(--err-bg);color:var(--err)}.state-title{font-size:20px;font-weight:600;margin-bottom:6px}.state p{margin-bottom:22px}.callout{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;margin-bottom:16px;border:1px solid var(--warn-line);border-radius:var(--radius);background:var(--warn-bg);color:var(--warn);text-align:left;font-size:14px;cursor:pointer}.callout>span:nth-child(2){color:var(--ink);flex:1 1}.skel{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.skel-media{aspect-ratio:4/5;border-radius:var(--radius)}.skel-line{height:12px;margin-top:10px}.skel-title{height:38px;width:60%;margin:12px 0 20px}.skel-block{height:120px;margin-top:16px;border-radius:var(--radius)}.skel-gallery{aspect-ratio:1;border-radius:var(--radius-lg)}.card-skel{min-width:0}.price.is-loading{display:inline-block;width:96px;height:14px;margin-top:6px;border-radius:6px;background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.is-stale{opacity:.5;transition:opacity .2s}.boot{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg)}.boot-line{position:relative;display:block;width:120px;height:2px;overflow:hidden;border-radius:2px;background:var(--line)}.boot-line:after{content:"";position:absolute;inset:0 70% 0 0;background:var(--accent);animation:boot 1.1s var(--ease) infinite}@keyframes boot{0%{transform:translateX(-100%)}to{transform:translateX(340%)}}.site-header{position:sticky;top:0;z-index:40;background:var(--bg)}.announce,.site-header{border-bottom:1px solid var(--line)}.announce{background:var(--surface);font-size:12.5px;color:var(--ink-2)}.announce-inner{display:flex;justify-content:space-between;gap:16px;min-height:32px;align-items:center}.header-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;min-height:68px}.brand{gap:12px;min-width:0}.brand,.brand-mono{display:inline-flex;align-items:center}.brand-mono{justify-content:center;flex:none;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:600;letter-spacing:.02em}.brand-logo{width:auto;max-width:200px;object-fit:contain}.brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.brand-name{font-weight:600;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-sub{font-size:12px;color:var(--ink-3)}.header-search{justify-self:center;width:100%;max-width:460px}.header-actions{gap:2px;justify-self:end}.header-actions,.search{display:flex;align-items:center}.search{gap:10px;height:44px;padding:0 14px;border:1px solid transparent;border-radius:10px;background:var(--surface);color:var(--ink-3);transition:border-color .15s,background .15s,box-shadow .15s}.search:focus-within{background:var(--bg);border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft)}.search input{flex:1 1;min-width:0;height:100%;border:0;background:transparent;font-size:15px;outline:none}.search input::-webkit-search-cancel-button{cursor:pointer}.mobile-search{padding-bottom:12px}.mobile-search input{font-size:16px}.header-nav{border-top:1px solid var(--line)}.header-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.header-nav ul{display:flex;gap:4px;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}.header-nav a{position:relative;display:inline-flex;align-items:center;height:46px;padding:0 12px;font-size:14px;color:var(--ink-2);white-space:nowrap;transition:color .15s}.header-nav ul li:first-child a{padding-left:0}.header-nav a:hover,.header-nav a[aria-current=page]{color:var(--ink)}.header-nav a[aria-current=page]:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--accent)}.header-nav ul li:first-child a[aria-current=page]:after{left:0}.header-nav .nav-orders{font-weight:500;color:var(--ink);padding-right:0}.header-nav .nav-orders[aria-current=page]:after{right:0}.account{position:relative;margin-left:6px}.account-btn{display:inline-flex;align-items:center;gap:4px;height:44px;padding:0 6px;border:0;border-radius:10px;background:transparent;cursor:pointer;color:var(--ink-3)}.account-btn:hover{background:var(--surface)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font-size:12px;font-weight:600}.avatar-lg{width:48px;height:48px;font-size:16px}.account-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:260px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow-lg);animation:pop .16s var(--ease)}.account-name{font-weight:600}.account-pop a,.account-pop button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 8px;margin:0 -8px;width:calc(100% + 16px);border:0;border-radius:var(--radius-sm);background:none;font-size:14px;text-align:left;cursor:pointer}.account-pop a:hover,.account-pop button:hover{background:var(--surface)}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}}.mobile-nav{display:flex;flex-direction:column}.mobile-nav a,.mobile-nav-logout{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;border-bottom:1px solid var(--line);font-size:16px}.mobile-nav-label{margin:22px 0 2px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.mobile-nav-logout{justify-content:flex-start;width:100%;border-left:0;border-right:0;border-top:0;background:none;color:var(--ink-2);cursor:pointer;margin-top:16px}.mobile-nav-who{margin-top:16px;font-size:13px}.site-main{min-height:60vh;outline:none}.site-footer{margin-top:80px;background:var(--surface);border-top:1px solid var(--line)}.section-tint+.site-footer,.site-main:has(.section-tint:last-child)+.site-footer{margin-top:0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:32px;padding-top:48px;padding-bottom:32px}.footer-brand{display:grid;align-content:start;gap:10px;justify-items:start;max-width:320px}.footer-name,.footer-title{font-weight:600}.footer-title{font-size:13px;margin-bottom:12px}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:8px 0;font-size:14px;color:var(--ink-2)}.site-footer li a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.footer-steps{counter-reset:step}.footer-steps li{counter-increment:step;display:flex;gap:10px}.footer-steps li:before{content:counter(step);flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;background:var(--bg);border:1px solid var(--line-2);font-size:11px;font-weight:600;line-height:18px;text-align:center}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:20px;padding-bottom:28px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3)}.hero{background:var(--brand-wash);border-bottom:1px solid var(--line);overflow:hidden}.hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:40px;min-height:460px;padding-top:48px;padding-bottom:48px}.hero-copy{max-width:560px}.hero-lede{margin-top:18px;font-size:17px;line-height:1.6;color:var(--ink-2);max-width:480px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-actions .btn-ghost{background:rgba(255,255,255,.6);border-color:var(--line-2)}.hero-actions .btn-ghost:hover{background:var(--bg)}.hero-visual{position:relative;height:400px}.hero-visual:before{content:"";position:absolute;left:50%;top:50%;height:100%;max-width:92%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,255,255,.7)}.hero-piece{position:absolute;animation:rise .6s var(--ease) both}.hero-piece-0{left:22%;top:2%;width:56%;z-index:3}.hero-piece-0.skel{height:90%;border-radius:50%}.hero-piece-1{left:0;top:30%;width:40%;z-index:2;animation-delay:.08s}.hero-piece-2{right:0;top:30%;width:40%;z-index:2;animation-delay:.14s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.section-head p{margin-top:6px}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.cat-card{display:flex;align-items:center;gap:14px;padding:10px 14px 10px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);transition:border-color .15s,box-shadow .15s,transform .15s var(--ease)}.cat-card:hover{border-color:var(--line-2);box-shadow:var(--shadow-md);transform:translateY(-1px)}.cat-art{width:68px;height:68px;flex:none;display:grid;place-items:center;padding:6px;border-radius:10px;background:var(--surface)}.cat-text{display:flex;flex-direction:column;flex:1 1;min-width:0}.cat-name{font-weight:500}.cat-chevron{color:var(--ink-3)}.cat-skel{height:90px;border-radius:var(--radius)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:28px 0 0;padding:0;list-style:none}.steps li{display:flex;flex-direction:column;gap:6px;font-size:14px}.steps .icon{color:var(--accent-text);margin-bottom:6px}.steps strong{font-size:16px;font-weight:600}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}.pcard{position:relative;min-width:0;animation:fade .3s var(--ease) both}@keyframes fade{0%{opacity:0}}.pcard-media{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius);background:var(--surface)}.pcard-media-link{display:grid;place-items:center;width:100%;height:100%;padding:10%}.pcard-media .mockup svg{transition:transform .35s var(--ease)}.pcard:hover .pcard-media .mockup svg{transform:scale(1.035)}.pcard-badges{position:absolute;top:10px;left:10px;display:flex;flex-wrap:wrap;gap:6px;pointer-events:none}.save-fab{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.95);color:var(--ink-2);box-shadow:var(--shadow-sm);cursor:pointer;transition:color .15s,transform .15s var(--ease),box-shadow .15s}.save-fab:hover{color:var(--ink);box-shadow:var(--shadow-md)}.save-fab:active{transform:scale(.92)}.save-fab.is-saved{color:var(--accent-text)}.save-fab.is-saved .icon{animation:beat .3s var(--ease)}@keyframes beat{50%{transform:scale(1.18)}}.pcard-quick{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;justify-content:center;gap:6px;height:42px;border-radius:10px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-md);font-size:14px;font-weight:500;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s var(--ease)}.pcard:hover .pcard-quick{opacity:1;transform:none}@media (hover:none){.pcard-quick{display:none}}.pcard-body{padding-top:12px}.pcard-cat{font-size:12.5px;color:var(--ink-3)}.pcard-name{margin-top:2px;font-size:15px;font-weight:500;line-height:1.35}.pcard-name a:hover{text-decoration:underline;text-underline-offset:3px}.pcard-colors{display:flex;align-items:center;gap:8px;margin-top:8px}.pcard-colors .swatch{width:18px;height:18px}.pcard-color-name{font-size:13px;color:var(--ink-3)}.pcard .price{margin-top:6px}.price{display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.price strong{font-weight:600;font-size:15px}.price-unit{font-size:13px;color:var(--ink-3)}.price-quote{font-size:14px;color:var(--ink-2)}.price-note{display:block;margin-top:4px}.crumbs,.price-note{font-size:13px;color:var(--ink-3)}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px}.crumbs a:hover{color:var(--ink)}.crumbs [aria-current]{color:var(--ink-2)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head .muted{margin-top:6px}.cat-chips{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.cat-chips::-webkit-scrollbar{display:none}.toolbar{justify-content:space-between;gap:12px;padding:12px 0;margin-bottom:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.toolbar,.toolbar-filters{display:flex;align-items:center}.toolbar-filters{gap:16px}.toolbar-sort{margin-left:auto}.select-inline{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-3)}.select-inline select{height:38px;padding:0 32px 0 12px;border:1px solid var(--line-2);border-radius:var(--radius-sm);background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%236b6b70' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 11px center;appearance:none;font-size:14px;cursor:pointer}.filter-group{margin:0 0 22px;padding:0;border:0}.filter-group legend{padding:0;margin-bottom:10px;font-size:14px;font-weight:600}.pdp{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:start}.gallery{position:sticky;top:calc(var(--header-h) + 20px)}.gallery-main{position:relative;display:grid;place-items:center;aspect-ratio:1;padding:8% 10% 12%;border-radius:var(--radius-lg);background:var(--surface);animation:fade .25s var(--ease)}.gallery-note{margin-top:10px;font-size:12.5px;color:var(--ink-3)}.gallery-thumbs{display:flex;gap:10px;margin-top:12px}.gallery-thumb{display:flex;flex-direction:column;align-items:center;gap:4px;width:84px;padding:8px 8px 6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:12px;color:var(--ink-3);cursor:pointer;transition:border-color .15s}.gallery-thumb-art{display:grid;place-items:center;width:100%;height:72px}.gallery-thumb:hover{border-color:var(--line-2)}.gallery-thumb.is-on{border-color:var(--ink);color:var(--ink)}.pdp-info{min-width:0}.pdp-title{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,1.4vw + 1.4rem,2.6rem);line-height:1.08}.pdp-ref{margin-top:8px;font-size:14px}.pdp-price{margin-top:18px;padding-bottom:22px;border-bottom:1px solid var(--line)}.pdp-price .price strong{font-size:24px}.pdp-price .price-unit{font-size:15px}.pdp-block{margin:22px 0 0;padding:0;border:0}.pdp-block legend,.pdp-label{padding:0;margin-bottom:12px;font-size:14px;font-weight:500;color:var(--ink-2)}.pdp-label strong{color:var(--ink)}.pdp-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.size-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}.size-cell{padding:8px 6px 6px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg);transition:border-color .15s,background .15s}.size-cell.is-filled{border-color:var(--accent);background:var(--accent-soft)}.size-label{display:block;font-size:13px;font-weight:600;text-align:center;margin-bottom:2px}.stepper{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center}.stepper button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-2);cursor:pointer}.stepper button:hover:not(:disabled){background:rgba(0,0,0,.05);color:var(--ink)}.stepper button:disabled{opacity:.3;cursor:default}.stepper input{width:100%;height:34px;border:0;background:transparent;text-align:center;font-size:16px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper input::placeholder{color:var(--ink-3)}.check-row{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 14px;margin-bottom:8px;border:1px solid var(--line-2);border-radius:10px;font-size:14px;cursor:pointer;transition:border-color .15s,background .15s}.check-row input{width:18px;height:18px;accent-color:var(--accent)}.check-row em{margin-left:auto;font-style:normal;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.check-row.is-on{border-color:var(--accent);background:var(--accent-soft)}.line-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;margin-top:22px;padding:12px 16px;border-radius:10px;background:var(--surface);font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.line-summary strong{font-size:20px;font-weight:600}.line-summary.has-error{background:var(--err-bg)}.pdp-actions{display:grid;gap:10px;margin-top:14px;margin-bottom:16px}.save-btn.is-saved{border-color:var(--accent);color:var(--accent-text)}.save-btn-hint{margin-left:6px;font-size:13px;font-weight:400;color:var(--ink-3);text-decoration:underline;text-underline-offset:3px}.pdp-incart{display:flex;flex-wrap:wrap;align-items:center;gap:4px;color:var(--ink-2)}.pdp-incart .icon{color:var(--ok)}.pdp-incart a{color:var(--accent-text);text-decoration:underline;text-underline-offset:3px}.pdp-incart .link-btn{font-size:13px;padding:0;text-decoration:underline}.pdp-assurance{display:grid;gap:10px;margin:8px 0 0;padding:18px 0 0;list-style:none;border-top:1px solid var(--line);font-size:14px;color:var(--ink-2)}.pdp-assurance li{display:flex;gap:10px}.pdp-assurance .icon{color:var(--accent-text);margin-top:1px}.pdp-details{margin-top:22px;border-bottom:1px solid var(--line)}.pdp-details details{border-top:1px solid var(--line)}.pdp-details summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;font-weight:500;cursor:pointer;list-style:none}.pdp-details summary::-webkit-details-marker{display:none}.pdp-details summary:after{content:"+";font-size:20px;font-weight:300;color:var(--ink-3)}.pdp-details details[open] summary:after{content:"−"}.pdp-details details>p{margin-bottom:12px;font-size:14px;color:var(--ink-2)}.facts{margin:0 0 14px;padding:0;list-style:none;font-size:14px}.facts li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px dashed var(--line)}.facts li:last-child{border-bottom:0}.facts li span:first-child{color:var(--ink-3)}.facts li span:last-child{text-align:right}.cart-thumb,.cat-art,.mini-thumb,.saved-thumb{position:relative;overflow:hidden}.cart-thumb .mockup,.cat-art .mockup,.mini-thumb .mockup,.pcard-media .mockup,.saved-thumb .mockup{position:absolute;inset:6%;display:block;width:auto;height:auto}.pcard-media .mockup{inset:7% 8%}.cart-thumb .mockup svg,.cat-art .mockup svg,.mini-thumb .mockup svg,.pcard-media .mockup svg,.saved-thumb .mockup svg{width:100%;height:100%;max-height:none}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}.cart-lines{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.cart-line{display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);animation:fade .25s var(--ease)}.cart-thumb{display:grid;place-items:center;aspect-ratio:4/5;padding:8px;border-radius:10px;background:var(--surface)}.cart-name{font-size:16px;font-weight:500}.cart-name:hover{text-decoration:underline;text-underline-offset:3px}.cart-info>*+*{margin-top:4px}.size-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.size-chip{display:inline-flex;gap:4px;padding:3px 8px;border-radius:6px;background:var(--surface);font-size:12.5px;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.size-chip b{font-weight:600;color:var(--ink)}.cart-actions{display:flex;gap:18px;margin-top:10px!important}.cart-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cart-price strong{font-size:16px;font-weight:600}.cart-aside{position:sticky;top:calc(var(--header-h) + 20px)}.cart-reassure{display:flex;gap:8px;margin-top:14px;padding:0 4px}.cart-reassure .icon{margin-top:1px}.card{padding:22px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg)}.card+.card{margin-top:16px}.card-title{margin-bottom:14px;font-size:17px;font-weight:600}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card-head .card-title{margin-bottom:0}.card-attention{border-color:var(--warn-line);background:var(--warn-bg)}.sticky{position:sticky;top:calc(var(--header-h) + 20px)}.summary{display:grid;gap:12px}.summary-rows{margin:0;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:opacity .2s}.summary-rows>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.summary-rows dt{color:var(--ink-2)}.summary-rows dd{margin:0;text-align:right}.summary-total{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:14px;margin-bottom:4px;border-top:1px solid var(--line)}.summary-total>span{display:flex;flex-direction:column;font-weight:600}.summary-total small{font-size:12.5px;font-weight:400}.summary-total strong{font-size:24px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.checkout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:40px;align-items:start;margin-top:24px}.form-section+.form-section{margin-top:16px}.form-section-title{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:17px;font-weight:600}.step-num{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font-size:13px;font-weight:600}.contact-card{display:flex;align-items:center;gap:14px;padding:14px;margin-bottom:10px;border-radius:var(--radius);background:var(--surface)}.field{margin-top:16px}.auth-form .field,.form-section-title+.field,.solo-card .field{margin-top:0}.field label,.field-label-row{display:block;margin-bottom:6px;font-size:14px;font-weight:500}.field-label-row{display:flex;justify-content:space-between;align-items:baseline}.field-label-row label{margin-bottom:0}.field input,.field select,.field textarea{width:100%;min-height:46px;padding:0 14px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg);font-size:16px;transition:border-color .15s,box-shadow .15s}.field textarea{padding:12px 14px;resize:vertical}.field select{appearance:none;padding-right:36px;background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%236b6b70' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft)}.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{border-color:var(--err)}.field-error{margin-top:6px;font-size:13px;color:var(--err)}.branch-fixed{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--line-2);border-radius:10px;background:var(--surface)}.branch-fixed .icon{margin-top:2px;color:var(--accent-text)}.branch-fixed span{display:flex;flex-direction:column}.branch-fixed small{font-size:13px}.radio-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.radio-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line-2);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.radio-card input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--accent)}.radio-card>.icon{color:var(--ink-3);margin-top:1px}.radio-card span{display:flex;flex-direction:column;gap:2px}.radio-card small{font-size:13px}.radio-card.is-on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.radio-card.is-on>.icon{color:var(--accent-text)}.mini-lines{margin:0 0 16px;padding:0 0 8px;list-style:none;border-bottom:1px solid var(--line)}.mini-lines li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:6px 0 10px}.mini-thumb{display:grid;place-items:center;width:56px;height:56px;padding:4px;border-radius:10px;background:var(--surface);overflow:visible}.mini-qty{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--ink-2);color:#fff;font-size:11px;font-weight:600;line-height:20px;text-align:center}.mini-name{display:flex;flex-direction:column;font-size:14px;font-weight:500;min-width:0}.mini-name small{font-size:12.5px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-price{font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.submit-block{display:grid;gap:10px;margin-top:6px}.summary-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;margin:18px 0 0;padding:0 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px;cursor:pointer}.summary-toggle>span{display:inline-flex;align-items:center;gap:8px;color:var(--accent-text)}.summary-mobile{margin-top:10px}.checkout-submit{margin-top:16px}.saved-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.saved-list.is-compact{border-top:0}.saved-item{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);animation:fade .25s var(--ease)}.is-compact .saved-item{grid-template-columns:64px minmax(0,1fr) auto;gap:12px;padding:12px 0}.saved-thumb{display:grid;place-items:center;aspect-ratio:4/5;padding:6px;border-radius:10px;background:var(--surface)}.saved-info{display:grid;gap:2px;justify-items:start}.saved-info .badge{margin-top:4px}.saved-name{font-weight:500}.saved-name:hover{text-decoration:underline;text-underline-offset:3px}.saved-actions{display:flex;align-items:center;gap:6px}.saved-actions .icon-btn{color:var(--ink-3)}.saved-note{margin-top:24px;text-align:center}.tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.tab{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;font-size:14px;color:var(--ink-3);cursor:pointer;white-space:nowrap}.tab.is-on,.tab:hover{color:var(--ink)}.tab.is-on{font-weight:500;border-bottom-color:var(--accent)}.order-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.order-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto 20px;align-items:center;gap:20px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);transition:border-color .15s,box-shadow .15s;animation:fade .25s var(--ease)}.order-row:hover{border-color:var(--line-2);box-shadow:var(--shadow-md)}.order-main,.order-status{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.order-main{gap:2px}.order-number{font-weight:600}.order-number,.order-sum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.order-sum{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.order-sum strong{font-size:16px;font-weight:600}.order-chevron{color:var(--ink-3)}.track-mini{display:inline-flex;gap:4px}.track-mini span{width:18px;height:4px;border-radius:2px;background:var(--line-2)}.track-mini .is-done{background:var(--accent)}.track-mini .is-now{background:color-mix(in oklab,var(--accent) 55%,var(--bg))}.confirm{max-width:640px;margin:8px auto 40px;padding:40px 28px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-md);text-align:center;animation:rise .4s var(--ease) both}.confirm-icon{display:inline-grid;place-items:center;width:60px;height:60px;margin-bottom:16px;border-radius:50%;background:var(--ok-bg);color:var(--ok)}.confirm h1{margin-bottom:12px}.confirm p+p{margin-top:8px}.confirm .btn-row{margin-top:24px}.order-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.order-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px}.track-card{margin-bottom:16px}.track-card>p{margin-top:14px}.track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none}.track li{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.track li+li:before{content:"";position:absolute;top:7px;right:50%;left:-50%;height:2px;background:var(--line-2)}.track li.is-done:before,.track li.is-now:before{background:var(--accent)}.track-node{position:relative;z-index:1;width:16px;height:16px;border:2px solid var(--line-2);border-radius:50%;background:var(--bg)}.track .is-done .track-node{border-color:var(--accent);background:var(--accent)}.track .is-now .track-node{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.track-label{font-size:13px;color:var(--ink-3)}.track .is-done .track-label{color:var(--ink-2)}.track .is-now .track-label{color:var(--ink);font-weight:600}.approve-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.approve-row .card-title{margin-bottom:4px}.decision,.decision .btn-row{margin-top:14px}.order-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;margin-top:16px}.order-grid,.order-side{display:grid;gap:16px}.order-side .card+.card{margin-top:0}.order-lines{margin:0 0 14px;padding:0;list-style:none}.order-lines li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.order-line-price{display:flex;flex-direction:column;align-items:flex-end;text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timeline{margin:8px 0 0;padding:0;list-style:none}.timeline li{position:relative;padding:0 0 16px 20px;font-size:14px}.timeline li:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:var(--line-2)}.timeline li:last-child:before{background:var(--accent)}.timeline li:after{content:"";position:absolute;left:3.5px;top:19px;bottom:2px;width:1px;background:var(--line)}.timeline li:last-child{padding-bottom:0}.timeline li:last-child:after{display:none}.timeline small{display:block;font-size:12.5px}.facts-list{margin:0}.facts-list>div{padding:9px 0;border-bottom:1px solid var(--line)}.facts-list>div:last-child{border-bottom:0}.facts-list dt{font-size:12.5px;color:var(--ink-3)}.facts-list dd{margin:2px 0 0;font-size:14px}.facts-list small{display:block;font-size:13px}.pay-figure strong{font-size:26px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter{height:6px;margin:10px 0;border-radius:3px;background:var(--surface-2);overflow:hidden}.meter span{display:block;height:100%;background:var(--ok);transition:width .4s var(--ease)}.pay .muted+.muted{margin-top:6px}.pay-actions{display:grid;gap:8px;margin-top:16px}.pay-history{margin:16px 0 0;padding:0;list-style:none}.pay-history li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:14px}.pay-history small{display:block;font-size:12.5px}.drawer{position:fixed;inset:0;z-index:70;visibility:hidden;transition:visibility 0s linear .25s}.drawer.is-open{visibility:visible;transition:none}.drawer-backdrop{position:absolute;inset:0;background:rgba(17,17,19,.32);opacity:0;transition:opacity .25s}.drawer.is-open .drawer-backdrop{opacity:1}.drawer-panel{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;width:min(420px,calc(100vw - 40px));background:var(--bg);box-shadow:var(--shadow-lg);outline:none;transition:transform .25s var(--ease)}.drawer-right .drawer-panel{right:0;transform:translateX(100%)}.drawer-left .drawer-panel{left:0;transform:translateX(-100%)}.drawer-bottom .drawer-panel{right:0;transform:translateX(100%)}.drawer.is-open .drawer-panel{transform:none}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 20px;border-bottom:1px solid var(--line)}.drawer-title{font-size:17px;font-weight:600}.drawer-body{flex:1 1;overflow-y:auto;padding:12px 20px 20px;overscroll-behavior:contain}.drawer-body .state{padding:40px 8px}.drawer-foot{padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.drawer-foot-row{display:grid;grid-template-columns:1fr 2fr;gap:10px}.toaster{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;width:min(400px,calc(100vw - 32px));padding:10px 8px 10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-in .22s var(--ease)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast-icon{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent-text)}.toast-text{display:flex;flex-direction:column;flex:1 1;min-width:0;font-size:14px}.toast-text strong{font-weight:500}.toast-text small{font-size:12.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-action{flex:none;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:none;font-size:14px;font-weight:600;color:var(--accent-text);cursor:pointer}.toast-action:hover{background:var(--surface)}.toast-close{display:grid;place-items:center;width:32px;height:32px;flex:none;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink-3);cursor:pointer}.toast-close:hover{background:var(--surface);color:var(--ink)}.solo{display:grid;place-items:center;min-height:100vh;padding:24px 16px;background:var(--surface)}.solo-card{display:grid;gap:16px;justify-items:stretch;width:100%;max-width:420px;padding:32px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-md)}.solo-card>.brand-logo,.solo-card>.brand-mono{justify-self:start}.solo-card .eyebrow{margin-bottom:-6px}.solo-card .back-link{justify-self:center;margin:0}.input-affix{display:flex;align-items:stretch;border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.input-affix:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft)}.field .input-affix input{border:0;border-radius:0;box-shadow:none}.input-affix em{display:flex;align-items:center;padding:0 12px;background:var(--surface);color:var(--ink-3);font-style:normal;font-size:14px}.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}.auth-brand{display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:40px 48px;background:var(--brand-wash);border-right:1px solid var(--line)}.auth-brand-top,.auth-mobile-brand{display:flex;align-items:center;gap:12px}.auth-art{width:min(360px,80%);margin:0 auto;animation:rise .6s var(--ease) both}.auth-points{display:grid;gap:10px;margin:0;padding:0;list-style:none;color:var(--ink-2)}.auth-points li{display:flex;gap:10px;align-items:center}.auth-points li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.auth-side{display:grid;place-items:center;padding:40px 24px}.auth-form{display:grid;gap:16px;width:100%;max-width:400px}.auth-form .eyebrow{margin-bottom:-8px}.auth-mobile-brand{display:none;margin-bottom:8px}@media (min-width:1024px){.only-mobile{display:none!important}}@media (max-width:1199px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pdp{gap:40px}}@media (max-width:1023px){:root{--header-h:102px}.only-desktop{display:none!important}.container{padding:0 24px}.header-main{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.brand{overflow:hidden}.announce-extra{display:none}.hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);min-height:0}.hero-visual{height:320px}.pdp{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.cart-layout{grid-template-columns:minmax(0,1fr) 320px;gap:32px}.checkout{max-width:680px}.checkout,.order-grid{grid-template-columns:minmax(0,1fr)}.footer-grid,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{margin-bottom:20px}}@media (max-width:860px){.pdp{grid-template-columns:minmax(0,1fr)}.gallery{position:static}.gallery-main{aspect-ratio:5/4}.cart-layout{grid-template-columns:minmax(0,1fr)}.cart-aside{position:static}.auth{grid-template-columns:minmax(0,1fr)}.auth-brand{display:none}.auth-mobile-brand{display:flex}}@media (max-width:767px){body{font-size:15px}.container{padding:0 16px}.page{padding-top:16px;padding-bottom:56px}.section{padding-top:40px}.section-tint{margin-top:48px;padding:40px 0}.header-main{min-height:60px}.brand-sub,.brand-text.has-logo{display:none}.brand-logo{max-width:150px}.brand-name{font-size:15px}.header-actions .icon-btn{width:40px}.hero-inner{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:32px;padding-bottom:8px}.hero-visual{order:-1;height:230px}.hero-piece-0{left:29%;width:42%}.hero-piece-1,.hero-piece-2{top:32%;width:30%}.hero-piece-1{left:6%}.hero-piece-2{right:6%}.hero-lede{font-size:16px}.hero-actions{margin-top:22px}.hero-actions .btn{flex:1 1 auto}.hero-copy{padding-bottom:32px}.section-head{align-items:flex-start;flex-direction:column;gap:8px}.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cat-card{flex-direction:column;align-items:flex-start;gap:10px;padding:10px}.cat-art{width:100%;height:auto;aspect-ratio:4/3}.cat-chevron{display:none}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.pcard-name{font-size:14px}.save-fab{width:36px;height:36px;top:6px;right:6px}.pcard-badges{top:8px;left:8px;right:48px}.page-head{flex-direction:column;align-items:flex-start;gap:12px}.page-head .btn{align-self:stretch}.cat-chips{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.toolbar{padding:10px 0}.toolbar-sort span{display:none}.gallery-main{aspect-ratio:1;border-radius:var(--radius)}.gallery-thumb{width:72px}.size-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.cart-line{grid-template-columns:84px minmax(0,1fr);gap:14px}.cart-price{grid-column:2;flex-direction:row;align-items:baseline;justify-content:space-between;text-align:left}.card{padding:18px}.order-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:14px 16px}.order-status{grid-row:2;flex-direction:row;align-items:center;gap:10px}.order-chevron{display:none}.order-head .btn-row{width:100%}.order-head .btn-row .btn{flex:1 1}.track-label{font-size:11px}.saved-item{grid-template-columns:72px minmax(0,1fr) auto;gap:12px}.saved-actions .btn{display:none}.confirm{padding:32px 18px}.confirm .btn-row .btn{flex:1 1 100%}.footer-grid{gap:24px;padding-top:36px}.footer-grid,.steps{grid-template-columns:minmax(0,1fr)}.steps{gap:20px}.footer-bottom{flex-direction:column}.toaster{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));align-items:stretch}.toast{width:100%}.drawer-sheet .drawer-panel{top:auto;left:0;right:0;width:100%;max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform:translateY(100%)}.drawer-sheet.is-open .drawer-panel{transform:none}.drawer-right .drawer-panel{width:min(420px,100vw)}.solo-card{padding:24px 20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.mockup{display:grid;place-items:center;width:100%;height:100%}.mockup svg{display:block;width:100%;height:auto;max-height:100%;overflow:visible}.mockup-print{animation:fade .3s var(--ease)}.gallery-main .mockup-pdp{animation:fade .25s var(--ease)}.gallery-thumb .mockup{height:56px}.line-logos{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:8px}.line-logo{display:inline-flex;gap:6px;font-size:12.5px;color:var(--ink-3)}.line-logo-art{display:grid;place-items:center;width:36px;height:24px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.line-logo-art img{max-width:30px;max-height:18px;object-fit:contain}.logo-current{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.logo-current.is-custom{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.logo-current-art{display:grid;flex:none;place-items:center;width:88px;height:64px;border-radius:var(--radius-sm);background:repeating-conic-gradient(#bcc0c5 0 25%,#a6abb2 0 50%) 50% /10px 10px;overflow:hidden}.logo-current-art img{max-width:80%;max-height:48px;object-fit:contain}.logo-current-art .skel{width:60%;height:16px}.logo-current-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.logo-current-text strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.logo-remove{display:inline-flex;flex:none;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--bg);font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer;transition:border-color .15s,color .15s}.logo-remove:hover{border-color:var(--ink-3);color:var(--ink)}.logo-upload{gap:8px}.logo-hint,.logo-upload{margin-top:10px}.logo-picker .text-error{display:flex;align-items:center;gap:6px;margin-top:8px}.mockup-credit{display:block;margin-top:2px;font-size:11px;color:var(--ink-3)}@media (max-width:480px){.logo-remove span{display:none}}.gallery-main .mockup.mockup-pdp{display:block;position:absolute;inset:5% 8%;width:auto;height:auto}.gallery-main .mockup.mockup-pdp svg,.mockup.mockup-thumb svg{display:block;width:100%;height:100%;max-height:none}.mockup.mockup-thumb{display:block}.gallery-zoom-area{display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}.gallery-main:has(.mockup-pdp) .gallery-zoom-area{position:absolute;inset:0}.gallery-zoom{position:absolute;right:14px;bottom:14px;z-index:1;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-md);font:inherit;font-size:14px;font-weight:500;color:var(--ink);cursor:pointer;transition:transform .15s var(--ease)}.gallery-zoom:hover{transform:translateY(-1px)}.zoom{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--surface);animation:fade .2s var(--ease)}.zoom-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--bg)}.zoom-sides{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}.zoom-side{min-height:36px;padding:0 16px;border:0;border-radius:999px;background:transparent;font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.zoom-side:hover{color:var(--ink)}.zoom-side.is-on{background:var(--bg);color:var(--ink);font-weight:500;box-shadow:var(--shadow-sm),0 0 0 1px var(--line)}.zoom-tools{display:flex;align-items:center;gap:6px}.zoom-btn,.zoom-level{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);font:inherit;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);cursor:pointer}.zoom-btn:disabled{opacity:.4;cursor:default}.zoom-close{margin-left:6px;background:var(--ink);border-color:var(--ink);color:var(--bg)}.zoom-stage{position:relative;flex:1 1;overflow:hidden;touch-action:none;cursor:zoom-in;-webkit-user-select:none;user-select:none}.zoom-stage.is-zoomed{cursor:grab}.zoom-stage.is-zoomed:active{cursor:grabbing}.zoom-canvas{position:absolute;display:block;padding:2%}.zoom-canvas .mockup{display:block;width:100%;height:100%}.zoom-canvas .mockup svg{width:100%;height:100%;max-height:none}.zoom-canvas svg{pointer-events:none}.zoom-hint{margin:0;padding:8px 16px 12px;font-size:12.5px;text-align:center;color:var(--ink-3)}@media (max-width:767px){.gallery-zoom{right:10px;bottom:10px}.zoom-level{display:none}}.order-lines li{align-items:flex-start}.order-line-art{display:grid;flex:none;place-items:center;width:72px;height:80px;border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.order-line-art .mockup{width:100%;height:100%}.order-line-info{flex:1 1;min-width:0}.line-logos{list-style:none;padding:0}.line-logo{align-items:center}.order-lines .line-logo{display:flex;gap:8px;padding:0;border:0}.line-logo-text{display:flex;flex-direction:column;font-size:12.5px;color:var(--ink-2)}.line-logo-art{width:48px;height:32px;background:repeating-conic-gradient(#bcc0c5 0 25%,#a6abb2 0 50%) 50% /8px 8px}.line-logo-art img{max-width:42px;max-height:26px}.line-logo-download{align-self:flex-start;margin-top:2px;font-size:12.5px}