.ek-shop-card{color:var(--ink);flex-direction:column;display:flex}.ek-shop-card-media{aspect-ratio:1;background:var(--stone);display:block;position:relative;overflow:hidden}.ek-shop-card-img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 18px 22px #08090b29);width:84%;height:84%;transition:opacity .25s;position:absolute;inset:8%}.ek-shop-card-img.is-back{opacity:0}@media (hover:hover){.ek-shop-card.has-back:hover .ek-shop-card-img.is-back,.ek-shop-card.has-back:focus-visible .ek-shop-card-img.is-back{opacity:1}.ek-shop-card.has-back:hover .ek-shop-card-img.is-front,.ek-shop-card.has-back:focus-visible .ek-shop-card-img.is-front{opacity:0}}.ek-shop-card-empty{color:var(--text-muted);font-size:var(--fs-meta);place-items:center;display:grid;position:absolute;inset:0}.ek-shop-card-caption{font-size:var(--fs-body);justify-content:space-between;align-items:baseline;gap:16px;padding-top:14px;line-height:1.3;display:flex}.ek-shop-card-name{text-underline-offset:4px;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:text-decoration-color .15s}.ek-shop-card:hover .ek-shop-card-name,.ek-shop-card:focus-visible .ek-shop-card-name{text-decoration-color:currentColor}.ek-shop-card-price{color:var(--text-muted);flex-shrink:0}.ek-shop-card-skeleton{aspect-ratio:1;background:var(--stone)}.shop-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(28px,3vw,44px) clamp(12px,1.6vw,24px);display:grid}.shop-feature-grid>.is-feature{grid-area:span 2/span 2}.shop-feature-grid>.ek-shop-card.is-feature .ek-shop-card-media{aspect-ratio:auto;flex:1;min-height:320px}.shop-feature-grid>.ek-shop-card.is-feature .ek-shop-card-img{width:82%;height:82%;inset:9%}.shop-feature-grid>.ek-shop-card.is-feature .ek-shop-card-caption{font-size:var(--fs-lead)}.ek-shop-catalog{padding-block:clamp(56px, 7vw, 104px) var(--section-y)}.section-head h1{font-size:var(--fs-title);letter-spacing:-.03em;grid-column:1;margin:0;font-weight:650;line-height:.92}.ek-shop-head .ek-shop-count{font-size:var(--fs-body);grid-area:1/2/span 2;align-self:end}.ek-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(14px,1.8vw,28px);display:grid}.ek-shop-grid.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.ek-shop-notice{background:var(--stone);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 32px;padding:28px 32px;display:flex}.ek-shop-notice h1,.ek-shop-notice h2,.ek-shop-notice h3{font-size:var(--fs-h3);letter-spacing:-.01em;margin:0;font-weight:650;line-height:1.2}.ek-shop-notice p{font-size:var(--fs-body);color:var(--text-muted);margin:8px 0 0}.ek-shop-notice button,.ek-shop-notice a{background:var(--ink);min-height:48px;color:var(--paper);font-size:var(--fs-ui);justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:600;transition:background-color .15s;display:inline-flex}.ek-shop-notice button:hover,.ek-shop-notice a:hover{background:#24272c}.ek-shop-product{padding-block:24px clamp(64px,8vw,112px)}.ek-shop-back{min-height:44px;font-size:var(--fs-ui);color:var(--text-muted);align-items:center;gap:8px;transition:color .15s;display:inline-flex}.ek-shop-back:hover{color:var(--ink)}.ek-shop-product-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(32px,5vw,80px);margin-top:16px;display:grid}.ek-shop-stage{gap:12px;display:grid;position:relative}.ek-shop-stage-plate{aspect-ratio:1;background:var(--stone);position:relative;overflow:hidden}.ek-shop-stage-plate.is-empty{color:var(--text-muted);place-items:center;display:grid}.ek-shop-stage-img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 24px 30px #08090b2e);width:88%;height:88%;transition:opacity .3s,transform .3s;position:absolute;inset:6%}.ek-shop-stage-img.is-back{opacity:0;transform:translate(3%)}.ek-shop-stage.is-zoomed .ek-shop-stage-img{opacity:0}.ek-shop-stage.is-back .ek-shop-stage-img.is-back{opacity:1;transform:none}.ek-shop-stage.is-back .ek-shop-stage-img.is-front{opacity:0;transform:translate(-3%)}.ek-shop-stage-tools{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ek-shop-tool{min-height:44px;color:var(--ink);font:600 var(--fs-ui) var(--font);background:0 0;border:1px solid #08090b73;align-items:center;gap:8px;padding:0 16px;transition:border-color .15s,background-color .15s;display:inline-flex}.ek-shop-tool:hover{border-color:var(--ink)}.ek-shop-tool.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.ek-shop-stage-plate:not(.is-empty){cursor:zoom-in}.ek-shop-stage.is-zoomed .ek-shop-stage-plate{cursor:zoom-out;touch-action:none}.ek-shop-zoom{opacity:0;pointer-events:none;background-color:var(--stone);background-repeat:no-repeat;background-size:220% 220%;background-position:var(--ek-zoom-x,50%) var(--ek-zoom-y,50%);transition:opacity .2s;position:absolute;inset:0}.ek-shop-stage.is-zoomed .ek-shop-zoom{opacity:1}.ek-shop-stage-skeleton{aspect-ratio:1;background:var(--stone)}.ek-shop-panel{color:var(--ink)}.ek-shop-panel h1,.ek-shop-panel h2{font-size:var(--fs-statement);letter-spacing:-.025em;margin:0;font-weight:650;line-height:1}.ek-shop-price{font-size:var(--fs-lead);align-items:baseline;gap:10px;margin:14px 0 0;font-weight:600;display:flex}.ek-shop-price span{font-size:var(--fs-meta);color:var(--text-muted);font-weight:400}.ek-shop-sizes{margin-top:32px}.ek-shop-sizes>#shop-size-label{font-size:var(--fs-ui);margin:0 0 10px;font-weight:600}.ek-shop-sizes .ek-shop-size-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.ek-shop-sizes .ek-shop-size-grid>*{width:100%;min-width:0;height:48px;font-size:var(--fs-ui);padding-inline:0}.ek-shop-hint{font-size:var(--fs-meta);color:var(--text-muted);margin:12px 0 0}.ek-shop-hint.is-nudge{color:var(--ink);font-weight:600}.ek-shop-buy{margin-top:20px}.ek-shop-buy .ek-shop-add{width:100%;height:56px;font-size:var(--fs-ui)}.ek-shop-details{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.ek-shop-description{font-size:var(--fs-ui);color:#2b2e33;margin-bottom:20px;line-height:1.65}.ek-shop-description p+p{margin-top:10px}.ek-shop-facts{gap:14px;margin:0;display:grid}.ek-shop-facts>div{grid-template-columns:64px minmax(0,1fr);align-items:baseline;gap:16px;display:grid}.ek-shop-facts dt{font-size:var(--fs-ui);font-weight:600}.ek-shop-facts dd{font-size:var(--fs-ui);color:var(--text-muted);margin:0;line-height:1.6}.ek-shop-more{border-top:1px solid var(--line);padding-block:clamp(56px,7vw,96px)}.ek-shop-sheet{padding:24px}.ek-shop-sheet .ek-shop-sheet-title{font-size:var(--fs-h3);letter-spacing:-.015em;font-weight:650}.ek-shop-sheet .ek-shop-sheet-title:focus{outline:none}.ek-shop-sheet-empty{color:var(--text-muted);font-size:var(--fs-body);justify-items:start;gap:16px;padding:24px 0;display:grid}.ek-shop-sheet-empty svg{color:var(--ink)}.ek-shop-sheet-lines{gap:4px;margin-inline:-4px;padding-inline:4px;display:grid;overflow-y:auto}.ek-shop-sheet-line{border-bottom:1px solid var(--line);grid-template-columns:84px minmax(0,1fr) auto;align-items:start;gap:16px;padding:14px 0;display:grid}.ek-shop-sheet-thumb{aspect-ratio:1;background:var(--stone)}.ek-shop-sheet-thumb img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;padding:8px}.ek-shop-sheet-name{font-size:var(--fs-body);font-weight:600;line-height:1.2}.ek-shop-sheet-meta{font-size:var(--fs-meta);color:var(--text-muted);margin-top:4px}.ek-shop-sheet-qty{align-items:center;gap:6px;margin-top:10px;display:flex}.ek-shop-sheet-qty>span{text-align:center;min-width:28px;font-weight:600}.ek-shop-sheet-total{font-size:var(--fs-ui);white-space:nowrap;font-weight:600}.ek-shop-sheet-sum{font-size:var(--fs-ui);justify-content:space-between;align-items:baseline;display:flex}.ek-shop-sheet-sum strong{font-size:var(--fs-h3);font-weight:650}.ek-shop-sheet-note{font-size:var(--fs-meta);color:var(--text-muted);line-height:1.55}.ek-shop-sheet-error{color:#7a2614;font-size:var(--fs-meta);background:#a6341e12;border:1px solid #a6341e73;padding:10px 12px}.ek-shop-sheet .ek-shop-checkout{height:56px;font-size:var(--fs-ui)}.ek-shop-sheet-clear{min-height:44px;color:var(--text-muted);font-size:var(--fs-meta);text-underline-offset:3px;align-self:center;text-decoration:underline}.ek-shop-sheet-clear:hover{color:var(--ink)}.ek-shop-terms{padding-block:clamp(40px, 5vw, 72px) var(--section-y)}.ek-shop-terms-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:clamp(32px,5vw,96px);display:grid}.ek-shop-terms-side{top:calc(var(--header-h) + 32px);position:sticky}.ek-shop-terms-side h1{font-size:var(--fs-title);letter-spacing:-.03em;margin:20px 0 0;font-weight:650;line-height:.92}.ek-shop-terms-side nav{margin-top:28px}.ek-shop-terms-side ol{counter-reset:terms;display:grid}.ek-shop-terms-side li a{min-height:38px;font-size:var(--fs-ui);color:var(--text-muted);align-items:center;transition:color .15s;display:inline-flex}.ek-shop-terms-side li a:before{counter-increment:terms;content:counter(terms) ". ";font-variant-numeric:tabular-nums;margin-right:6px}.ek-shop-terms-side li a:hover{color:var(--ink)}.ek-shop-terms-body{max-width:68ch;font-size:var(--fs-body);color:#2b2e33;line-height:1.7}.ek-shop-terms-body h2{font-size:var(--fs-h3);letter-spacing:-.01em;color:var(--ink);scroll-margin-top:calc(var(--header-h) + 24px);margin:44px 0 12px;font-weight:650;line-height:1.15}.ek-shop-terms-body h2:first-child{margin-top:0}.ek-shop-terms-body p+p{margin-top:12px}.ek-shop-terms-body a{text-underline-offset:3px;text-decoration:underline}.ek-shop-terms-updated{font-size:var(--fs-meta);color:var(--text-muted);margin-top:36px}.ek-not-found{padding-block:clamp(96px,14vw,180px)}.ek-not-found-mark{width:52px;height:auto}.ek-not-found h1{font-size:var(--fs-title);letter-spacing:-.03em;margin:36px 0 16px;font-weight:650;line-height:.92}.ek-not-found p{font-size:var(--fs-lead);color:var(--text-muted-ink);margin:0 0 32px}.route-fallback{min-height:100svh;padding:140px var(--gutter);color:var(--text-muted)}.ek-shop-quick-overlay{z-index:50;background:#08090bb8;position:fixed;inset:0}.ek-shop-quick-overlay[data-state=open]{animation:.2s ease-out ek-quick-fade-in}.ek-shop-quick-overlay[data-state=closed]{animation:.18s ease-in forwards ek-quick-fade-out}.ek-shop-quick{z-index:50;background:var(--paper);color:var(--ink);outline:none;flex-direction:column;display:flex;position:fixed;box-shadow:0 30px 80px #00000059}.ek-shop-quick-close{z-index:4;background:var(--paper);width:44px;height:44px;color:var(--ink);justify-content:center;align-items:center;transition:background-color .15s;display:inline-flex;position:absolute;top:8px;right:8px}.ek-shop-quick-close:hover{background:var(--stone)}.ek-shop-quick-body{--qv-pad:24px;overscroll-behavior:contain;min-height:0;padding:24px var(--qv-pad) 28px;overflow-y:auto}.ek-shop-quick-grid{gap:20px;display:grid}.ek-shop-quick .ek-shop-panel h2{font-size:var(--fs-h3)}.ek-shop-quick .ek-shop-price{margin-top:10px}.ek-shop-quick .ek-shop-sizes{margin-top:22px}.ek-shop-quick .ek-shop-sizes .ek-shop-size-grid>*{height:44px}.ek-shop-quick .ek-shop-buy{margin-top:16px}.ek-shop-quick .ek-shop-buy .ek-shop-add{height:52px}.ek-shop-quick .ek-shop-details{margin-top:22px;padding-top:18px}.ek-shop-quick .ek-shop-facts{gap:12px}.ek-shop-quick .ek-shop-notice{margin-top:4px}@media (width<=899px){.ek-shop-quick .ek-shop-stage-plate,.ek-shop-quick .ek-shop-stage-skeleton{aspect-ratio:auto;height:min(38svh,360px)}.ek-shop-quick .ek-shop-buy{z-index:2;background:var(--paper);box-shadow:calc(var(--qv-pad) * -1) 0 0 var(--paper), var(--qv-pad) 0 0 var(--paper);margin-top:4px;padding-block:12px;position:sticky;bottom:0}}@media (width<=639px){.ek-shop-quick{max-height:92dvh;inset:auto 0 0}.ek-shop-quick[data-state=open]{animation:.3s cubic-bezier(.2,.8,.2,1) ek-quick-up}.ek-shop-quick[data-state=closed]{animation:.22s ease-in forwards ek-quick-down}.ek-shop-quick-body{--qv-pad:16px;padding:16px var(--qv-pad) 24px}}@media (width>=640px){.ek-shop-quick{width:min(580px,100vw - 48px);max-height:min(92dvh,900px);top:50%;left:50%;transform:translate(-50%,-50%)}.ek-shop-quick[data-state=open]{animation:.24s cubic-bezier(.2,.8,.2,1) ek-quick-in}.ek-shop-quick[data-state=closed]{animation:.18s ease-in forwards ek-quick-out}}@media (width>=900px){.ek-shop-quick{width:min(1080px,100vw - 64px,170.2dvh - 123.5px)}.ek-shop-quick-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:stretch;gap:32px}.ek-shop-quick .ek-shop-stage{flex-direction:column;display:flex}.ek-shop-quick .ek-shop-stage-plate{flex:auto}.ek-shop-quick-side>.ek-shop-panel{flex-direction:column;height:100%;display:flex}.ek-shop-quick-side .ek-shop-details{margin-top:auto}.ek-shop-quick .ek-shop-panel h2{padding-right:48px}}@keyframes ek-quick-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ek-quick-fade-out{0%{opacity:1}to{opacity:0}}@keyframes ek-quick-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes ek-quick-out{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-49%)scale(.99)}}@keyframes ek-quick-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes ek-quick-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media (width<=1100px){.ek-shop-grid,.ek-shop-grid.is-four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.shop-feature-grid>.ek-shop-card:not(.is-feature) .ek-shop-card-caption{flex-direction:column;gap:2px}.ek-shop-head .ek-shop-count{grid-area:auto/1}.ek-shop-product-grid,.ek-shop-terms-grid{grid-template-columns:1fr}.ek-shop-terms-side{position:static}}@media (width<=700px){.shop-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.shop-feature-grid>.is-feature{grid-row:auto}.shop-feature-grid>.ek-shop-card.is-feature .ek-shop-card-media{aspect-ratio:1;flex:none;min-height:0}.shop-feature-grid>.ek-shop-card.is-feature .ek-shop-card-caption{font-size:var(--fs-body)}}@media (width<=600px){.ek-shop-grid,.ek-shop-grid.is-four{gap:28px 12px}.ek-shop-card-caption{font-size:var(--fs-ui);flex-direction:column;gap:2px;padding-top:10px}.ek-shop-notice{padding:22px 20px}}@media (width<=540px){.ek-shop-sheet{padding:20px}.ek-shop-sheet-line{grid-template-columns:68px minmax(0,1fr)}.ek-shop-sheet-total{grid-column:2}.ek-shop-sizes .ek-shop-size-grid{gap:6px}}@media (prefers-reduced-motion:reduce){.ek-shop-card-img,.ek-shop-stage-img,.ek-shop-zoom{transition:none}.ek-shop-quick,.ek-shop-quick-overlay{animation:none!important}}
