/* Catalog and header, shared by the wholesale and gift editions. */
.product-card.compact-product-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;transition:border-color .15s ease}
.product-card.compact-product-card:hover{border-color:#aeb1b3}
.compact-product-card .product-image{aspect-ratio:1.08;background:#f6f6f4;overflow:hidden;border:0;border-radius:0}
.compact-product-card .product-image img{width:100%;height:100%;object-fit:contain;padding:8px;mix-blend-mode:multiply;transition:transform .18s}
.compact-product-card:hover .product-image img{transform:scale(1.025)}
.product-card.compact-product-card .product-card-body{display:flex;flex:1;flex-direction:column;gap:0;padding:12px}
.product-card.compact-product-card h3{margin:0 0 7px;font-size:1rem;line-height:1.4;font-weight:500;min-height:2.8em;max-height:2.8em;letter-spacing:0}
.product-card.compact-product-card .price{font-size:1rem;line-height:1.45;font-weight:550;letter-spacing:0;margin:0 0 10px;overflow-wrap:anywhere}
.product-card.compact-product-card .gift-price-hint{display:inline;font-size:.875rem;font-weight:400;color:var(--muted);margin-right:5px}
.product-card.compact-product-card .product-card-inquiry{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:40px;margin-top:auto;padding:9px 0 0;border:0;border-top:1px solid var(--line);color:var(--ink);font-size:.875rem;line-height:1.4;font-weight:500;text-decoration:none}
.product-card.compact-product-card .product-card-inquiry:hover{color:var(--link,var(--brand));text-decoration:underline;text-underline-offset:4px}
.product-card.compact-product-card .product-card-inquiry .ui-icon{margin:0;width:16px;height:16px;flex:0 0 16px}
.product-grid,.market-content .product-grid,.supplier-products{gap:20px 16px;align-items:stretch}
.site-header .header-main{gap:32px}
.site-header .header-search-block{min-width:0;flex:1;max-width:680px}
body .header-search-block .search-shell{display:flex;align-items:center;gap:0;width:100%;max-width:none;min-width:0;border:1px solid #b8bbbd;border-radius:9px;background:#f8f8f7;padding:4px;overflow:visible;transition:border-color .15s,box-shadow .15s}
body .header-search-block .search-shell:focus-within{border-color:var(--brand);box-shadow:0 0 0 2px #dededb}
body .header-search-block .search-shell #site-search{display:block;flex:1;width:100%;min-width:0;min-height:44px;padding:10px 14px;border:0;border-radius:5px;background:transparent;color:var(--ink);font-size:1rem;box-shadow:none;outline:0}
body .header-search-block .search-shell #site-search::placeholder{color:#606567;opacity:1}
body .header-search-block .search-shell .search-submit{flex:0 0 44px;width:44px;min-width:44px;min-height:44px;border:0;border-radius:6px;padding:10px;background:var(--brand);color:var(--brand-contrast,#fff)}
body .header-search-block .search-shell .search-submit:hover{background:var(--brand-hover)}
body .header-search-block .search-shell .search-submit .ui-icon{width:22px;height:22px}
.header-search-block .search-shortcuts{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 0;padding:0 4px;font-size:.875rem;line-height:1.4}
.site-header .header-actions{flex:none;gap:24px;align-items:center}
.site-header .header-actions>a{min-width:44px;min-height:44px;display:flex;align-items:center;gap:7px}
.product-information .product-primary-actions{align-items:stretch;gap:10px}
.product-primary-actions>.button,.product-primary-actions>form>button{display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:normal;line-height:1.4}
.product-lower-layout>*,.product-detail>*{min-width:0}
.product-content-nav{flex-wrap:wrap;gap:12px 26px}
.product-content-nav>a{display:inline-flex;align-items:center;min-height:44px;line-height:1.4}
.product-supplier-panel>.button{display:inline-flex;align-items:center;justify-content:center;white-space:normal;gap:8px;line-height:1.4}
.deeho-studio .product-grid,.deeho-studio .studio-featured-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 16px}
.deeho-studio .studio-small-products{gap:20px 16px}
.deeho-studio .header-main{min-height:112px;padding-block:18px;gap:38px}
.deeho-studio .header-search-block{max-width:640px}
.deeho-studio .search-shortcuts a{border:0;padding:0;text-decoration:none}
.deeho-studio .search-shortcuts a:hover{text-decoration:underline}
.deeho-studio .studio-opening{padding-block:24px 30px;gap:32px}
.deeho-studio .studio-opening h1{font-size:clamp(2.3rem,3.7vw,3.65rem);line-height:1.08;letter-spacing:-1.5px}
.deeho-studio .studio-opening-intro{margin-block:20px;font-size:1.0625rem;line-height:1.65}
.deeho-studio .studio-opening-actions{align-items:center;flex-wrap:wrap;gap:16px}
.deeho-studio .studio-opening-actions .text-link{font-size:1rem;min-height:44px}
.deeho-studio .studio-opening-image{min-height:0}
.deeho-studio .studio-opening-image>img{min-height:330px;max-height:430px}
.deeho-studio .studio-section{padding-block:30px}
.deeho-studio .studio-section-head{margin-bottom:20px}
.deeho-studio .studio-section-head h2,.deeho-studio .studio-small-copy h2{font-size:1.75rem;line-height:1.25;letter-spacing:-.5px}
@media(min-width:1600px){.product-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.deeho-studio .product-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:1200px){.deeho-studio .product-grid,.deeho-studio .studio-featured-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.site-header .header-main,.deeho-studio .header-main{gap:24px}.site-header .header-actions{gap:16px}}
@media(max-width:900px){.site-header .header-search-block{max-width:none}.deeho-studio .header-main{min-height:100px}.deeho-studio .product-grid,.deeho-studio .studio-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.deeho-studio .studio-opening h1{font-size:2.75rem}.deeho-studio .studio-opening-image>img{min-height:250px}.header-search-block .search-shortcuts{gap:8px 12px}}
@media(max-width:650px){.site-header .header-main,.deeho-studio .header-main{display:flex;flex-wrap:wrap;gap:14px;padding-block:16px}.site-header .header-search-block{order:3;flex:1 0 100%;width:100%;margin:0}.site-header .header-actions{margin-left:auto;gap:14px}.site-header .header-actions>a{padding:0;min-width:44px;min-height:44px;justify-content:center}body .header-search-block .search-shell{padding:3px;border-radius:8px}body .header-search-block .search-shell #site-search{padding:9px 11px;min-height:44px}.header-search-block .search-shortcuts{margin-top:9px;font-size:.875rem}.product-grid,.market-content .product-grid,.supplier-products,.supplier-layout--compact .supplier-products,.supplier-layout--editorial .supplier-products,.deeho-studio .product-grid,.deeho-studio .studio-featured-grid,.deeho-studio .studio-small-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.product-card.compact-product-card .product-card-body{padding:10px}.product-card.compact-product-card .product-image{aspect-ratio:1}.product-card.compact-product-card .price{font-size:1rem;margin-bottom:7px}.product-card.compact-product-card .gift-price-hint{display:block;line-height:1.2;margin:0 0 3px}.product-card.compact-product-card .product-card-inquiry{min-height:44px}.deeho-studio .studio-opening{padding-block:8px 24px;gap:22px}.deeho-studio .studio-opening h1{font-size:2.6rem}.deeho-studio .studio-opening-intro{margin:16px 0}.deeho-studio .studio-opening-image>img{min-height:240px}.deeho-studio .studio-section{padding-block:22px}.product-primary-actions>form{min-width:0}.product-information h1{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.compact-product-card .product-image img,.product-card.compact-product-card{transition:none}}

/* A concise filter row keeps the catalog within reach on narrow screens. */
@media(max-width:650px){
 .header-search-block .search-shortcuts{display:none}
 .main-nav .nav-inner{scrollbar-width:none}
 .main-nav .nav-inner::-webkit-scrollbar{display:none}
 .main-content>.page-heading,.deeho-studio .main-content>.page-heading{margin-bottom:18px;padding-bottom:16px;gap:10px}
 .main-content>.page-heading h1,.deeho-studio .main-content>.page-heading h1{font-size:1.875rem;margin:0 0 10px}
 .main-content>.page-heading p{margin:0;font-size:1rem;line-height:1.5}
 .catalog-filters,.deeho-studio .catalog-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:14px;margin-bottom:20px;align-items:end}
 .catalog-filters .field,.catalog-filters .field:not(:first-of-type){min-width:0;width:100%;margin:0;max-width:none;grid-column:auto}
 .catalog-filters .field:has(input[type=search]){grid-column:1/-1}
 .catalog-filters .field>span{font-size:.875rem}
 .catalog-filters button{width:100%;min-width:0;min-height:44px;padding:10px;font-size:.875rem}
 .catalog-filters>a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:.875rem;padding:0}
 .catalog-filters input,.catalog-filters select{min-width:0;width:100%;font-size:1rem}
}
