/* Functional simplification: product, presentation, price and action stay visible. */
html { scroll-behavior:auto; }
[hidden] { display:none!important; }
.header.boutique-header { border-radius:12px; box-shadow:0 2px 12px #241f2406; gap:24px; }
.boutique-header .menu-toggle { display:flex; width:auto; padding:10px 12px; font-size:14px; min-height:44px; }
.boutique-header nav { gap:24px; }
.workspace { grid-template-columns:minmax(0,1fr); }
.product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.product-card { border-radius:14px; padding:0; box-shadow:none; }
.product-info { border-radius:0; padding:16px; }
.product-image { height:220px; padding:18px; }
.product-name { font-size:18px; margin:8px 0; }
.product-profile:empty { display:none; }
.product-profile { font-size:13px; line-height:1.5; margin-bottom:8px; }
.reference { margin:0; min-height:0; font-size:13px; }
.product-bottom { margin-top:12px; padding-top:12px; }
.add-button,.stepper,.stepper button,.stepper input { min-height:44px; }
.stepper button,.stepper input { min-width:36px; }
.product-commerce strong { font-size:19px; }
.product-tools { margin-top:20px; }
summary { cursor:pointer; min-height:44px; padding:12px 0; }
.seller-offer summary { font-size:14px; font-weight:600; }
.collections-section { padding:24px 0; }
.collections-section .section-heading,.aroma-note:empty { display:none; }
.collection-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.collection-shortcut { border:1px solid var(--border); padding:16px; text-align:left; border-radius:12px; display:grid; gap:8px; }
.collection-shortcut span { color:var(--pink); font-size:13px; }
.hero.boutique-hero { min-height:360px; padding-top:35px; padding-bottom:30px; }
.boutique-stage { min-height:330px; height:360px; }
.hero.boutique-hero h1 { font-size:64px; }
.aroma-section { padding:28px 0; }
.aroma-choice { padding:14px; border-radius:12px; }
.aroma-choice>span:not(.aroma-swatch) { display:none; }
.catalog-section { padding-top:24px; }
.category-toolbar { margin:16px 0; }
.category-toolbar label { flex:1; max-width:340px; }
.category-toolbar select { width:100%; min-height:44px; }
.results-bar { padding:14px 0; }
.close-dialog:not(.inline) { position:sticky; top:0; margin-left:auto; width:auto; height:auto; padding:10px 14px; font-size:14px; min-height:44px; z-index:5; background:#fff; border:1px solid var(--border); border-radius:8px; }
.site-menu nav button { justify-content:flex-start; font-size:17px; }
.site-menu nav { height:auto; }
dialog { overscroll-behavior:contain; }
@media(max-width:1050px) { .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:700px) {
 .header.boutique-header { flex-wrap:wrap; gap:4px 14px; padding:8px 16px; margin:8px 12px; min-height:0; }
 .boutique-header nav { display:flex; order:3; width:100%; height:40px; gap:24px; font-size:13px; }
 .boutique-header nav a { min-height:40px; }
 .header-actions { margin-left:auto; gap:8px; }
 .hero.boutique-hero { min-height:0; padding:20px 0; gap:12px; }
 .hero.boutique-hero h1 { font-size:40px; }
 .boutique-stage { height:260px; min-height:260px; }
 .hero-product-scene { height:215px; }
 .hero-product-meta { font-size:13px; }
 .hero-notes { gap:5px; }
 .hero-notes span { font-size:12px; padding:5px 8px; }
 .collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .collection-shortcut { font-size:13px; padding:13px; }
 .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .product-image { height:165px; padding:12px; }
 .product-info { padding:12px; }
 .product-name { font-size:16px; }
 .product-meta,.sku { font-size:12px; }
 .product-profile { display:none; }
 .product-commerce .stock { font-size:12px; }
 .product-bottom { gap:6px; }
 .add-button { width:100%; justify-content:space-between; font-size:14px; }
 .stepper { width:100%; justify-content:space-between; }
 .aroma-section .section-heading p { display:none; }
 .aroma-explorer { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
 .aroma-choice { display:flex; flex-direction:column; padding:10px 3px; gap:8px; min-height:75px; }
 .aroma-choice strong { font-size:12px; }
 .aroma-choice .aroma-swatch { width:20px; height:20px; }
 .category-toolbar label { max-width:none; }
 .checkout-item { padding:14px 8px; }
}
