.shop{margin:44px auto 110px;min-height:55vh}.shop h1{font-size:clamp(38px,5vw,70px);letter-spacing:-.05em;line-height:1.08;margin:12px 0}.shop-eyebrow{font-size:13px;letter-spacing:.13em;text-transform:uppercase}.shop-intro{font-size:19px;line-height:1.6;max-width:800px;color:#615b55}.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:40px}.shop-card{border:1px solid #ddd4c9;background:#fff;overflow:hidden}.shop-visual{position:relative;aspect-ratio:1.15;background:#ebe9e5}.shop-visual img{width:100%;height:100%;object-fit:cover}.shop-visual .concept-photo{width:100%;height:100%;background-size:200% 200%;background-repeat:no-repeat}.shop-arrows{position:absolute;bottom:12px;right:12px;display:flex;gap:6px}.shop-arrows button{border:1px solid #c6bdb0;background:#fffef8;color:#292621;width:38px;height:38px;font-size:21px;cursor:pointer}.shop-card-content{padding:22px}.shop-card h2{font-size:23px;margin:8px 0}.shop-card p{line-height:1.55;color:#615b55}.shop-card a,.shop-add,.shop-submit{display:inline-block;background:#2d2b29;color:white;padding:12px 16px;border:0;text-decoration:none;font:700 15px Arial;cursor:pointer}.shop-add{background:#d6c2a7;color:#25211e;margin-left:7px}.shop-note,.shop-disclaimer{font-size:14px;color:#6d655e;line-height:1.5}.shop-detail{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:48px;margin:28px 0}.shop-detail .shop-visual{aspect-ratio:1.1}.shop-detail h1{font-size:clamp(36px,4.5vw,62px)}.shop-detail p{line-height:1.7;font-size:17px}.shop-spec{padding:12px 0;border-bottom:1px solid #dcd4c9;line-height:1.5}.shop-basket-trigger{position:fixed;left:20px;bottom:20px;z-index:78;border:1px solid #c8b49a;background:#2d2b29;color:white;padding:14px 18px;border-radius:999px;font:700 14px Arial;cursor:pointer}.shop-basket{position:fixed;z-index:100;inset:0 0 0 auto;width:min(470px,100%);background:#f7f5f1;box-shadow:-10px 0 45px #0003;padding:26px;overflow:auto;display:none}.shop-basket.open{display:block}.shop-basket header{display:flex;align-items:center;justify-content:space-between}.shop-basket header button{background:none;border:0;font-size:28px;cursor:pointer}.shop-basket input:not([type=checkbox]),.shop-basket textarea{width:100%;padding:12px;margin:6px 0 15px;border:1px solid #beb4a6;background:white;font:16px Arial;box-sizing:border-box}.shop-basket label{display:block;font-size:14px;line-height:1.5}.shop-basket .line{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9d0c5;padding:10px 0;gap:8px}.shop-basket .line button{cursor:pointer;border:0;background:#e6dfd5;padding:8px}.shop-basket .line input{max-width:65px!important;margin:0!important}.shop-basket-status{line-height:1.5}.shop-source{font-size:13px;color:#6d655e}.shop-source a{color:inherit;text-decoration:underline}@media(max-width:750px){.shop-detail{grid-template-columns:1fr}.shop{margin-top:25px}.shop-add{margin:8px 0 0}}
.shop-trap{position:absolute;left:-9999px}
/* The request drawer must fit the screen including its padding. */
.shop-basket{max-width:100vw}
.shop-basket header{height:auto}
.shop-basket .line{min-width:0}
.shop-basket .line span{min-width:0;overflow-wrap:anywhere}
@media(max-width:540px){.shop-basket{padding:20px}.shop-basket-trigger{left:12px;bottom:12px}}
.shop .shop-eyebrow a,.shop .shop-spec a,.shop > a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

@media(max-width:750px){.shop-basket.open{inset:0;width:100vw;max-width:none;padding:18px max(16px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box;overflow-y:auto}.shop-basket header{position:sticky;top:-18px;background:#f7f5f1;padding:16px 0;z-index:2}.shop-basket .line{align-items:flex-start;flex-wrap:wrap}.shop-basket .line input{width:64px;flex:none}.shop-basket input:not([type=checkbox]),.shop-basket textarea{font-size:16px}.shop-submit{width:100%;text-align:center}}
