/* REV3: one shared header, responsive navigation and native product controls. */
body .site-header .site-commercebar { width:100%; max-width:none; min-height:106px; margin:0; padding:22px var(--mhs-home-padding,4.2vw); display:grid; grid-template-columns:240px minmax(0,1fr) 210px; gap:36px; align-items:center; background:#080909; }
body .site-header .site-commercebar .site-branding { width:240px; min-width:0; }
body .site-header .site-branding__logo img { width:240px; max-width:100%; height:auto; max-height:70px; object-fit:contain; }
body .site-header .site-commercebar__search { width:100%; min-width:0; max-width:none; margin:0; }
body .site-header .mhs-search-form { display:block; position:relative; width:100%; min-height:56px; height:56px; padding:0; background:transparent; border:0; }
body .site-header .site-branding__logo { display:block; }
body .site-header .site-commercebar__search input { width:100%; height:56px; min-height:56px; padding:12px 54px 12px 26px; border:2px solid #00b767; border-radius:40px; background:#fff; font-size:16px; }
body .site-header .site-commercebar__search button { position:absolute; width:48px; height:48px; right:6px; top:50%; transform:translateY(-50%); background:transparent; border:0; padding:10px; }
body .site-header .site-header__actions { display:flex; width:auto; gap:24px; justify-content:flex-end; margin:0; }
body .site-header .site-action { font-size:12px; min-width:46px; gap:4px; }
body .site-header .site-action > svg { width:28px; height:28px; }
body .site-header .category-navigation { width:100%; padding:0 var(--mhs-home-padding,4.2vw); background:white; }
body .site-header .category-navigation__list { display:flex; width:100%; margin:0; gap:14px; justify-content:space-between; flex-wrap:nowrap; overflow:visible; }
body .site-header .category-navigation__list > li > a { min-height:46px; padding:12px 0; font-size:12px; }
.mhs-category-menu-toggle,.category-navigation__branch-toggle { display:none; }
.mhs-catalog-category-links { display:flex; flex-wrap:wrap; gap:10px; padding:22px 4.2% 0; }
.mhs-catalog-category-links a { border:1px solid #dce4e0; border-radius:4px; padding:10px 16px; color:#26362f; text-decoration:none; font-size:14px; }
.mhs-catalog-category-links a:hover,.mhs-catalog-category-links a[aria-current] { border-color:#00ae62; color:#008348; }
.mhs-shop-catalog [hidden] { display:none!important; }
.mhs-shop-catalog.is-enhanced .woocommerce-pagination { display:none; }
.mhs-catalog-status { margin:12px 0; font-size:14px; }
.mhs-catalog-more { display:block; margin:24px auto; padding:12px 22px; border:1px solid #00ae62; border-radius:4px; color:#006f3e; background:white; cursor:pointer; }
.mhs-shop-catalog[aria-busy="true"] .products { opacity:.55; }
body.single-product .mhs-standard-product .mhs-door-product-options__grid { display:flex; flex-direction:column; gap:15px; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish { order:-2; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--opening { order:-1; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish > div { display:flex; flex-wrap:wrap; gap:12px; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish .mhs-door-choice { flex:0 1 auto; display:flex; align-items:center; padding:2px; gap:8px; border:0; background:transparent; min-height:36px; max-width:47%; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish .mhs-door-choice i { width:34px; height:34px; min-width:34px; border-radius:50%; border:1px solid #999; margin:0; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish .mhs-door-choice:has(:checked) i { outline:2px solid #00ae62; outline-offset:3px; }
body.single-product .mhs-standard-product .mhs-door-product-options__group--finish .mhs-door-choice span { font-size:12px; color:#667078; font-weight:400; }
.mhs-option-select { width:100%; min-height:42px; border:1px solid #d4dce0; background:white; border-radius:4px; padding:10px; font:inherit; font-size:14px; }
.mhs-door-product-options__group.is-select-enhanced > div { display:none!important; }
body.single-product .mhs-standard-product .mhs-door-product-options__group[hidden] { display:none!important; }
body.single-product div.product.mhs-standard-product .mhs-product-buy-box__cart form.cart { grid-template-columns:112px minmax(0,1fr); min-width:0; width:100%; }
body.single-product div.product.mhs-standard-product .woocommerce-variation-add-to-cart { grid-template-columns:112px minmax(0,1fr); min-width:0; width:100%; }
.mhs-standard-product fieldset { min-width:0; }
.mhs-standard-product .mhs-option-select { min-width:0; max-width:100%; }
body.single-product div.product.mhs-standard-product .mhs-product-buy-box__cart form.cart .quantity { display:flex; flex-direction:row; width:112px; max-width:100%; border:1px solid #d7dfe2; border-radius:4px; background:#fff; overflow:hidden; }
body.single-product div.product.mhs-standard-product .mhs-product-buy-box__cart form.cart .quantity .qty { min-width:0; width:38px; height:44px; padding:6px 0; border:0; border-radius:0; appearance:textfield; -moz-appearance:textfield; color:#111; font-weight:500; }
.mhs-standard-product .qty::-webkit-inner-spin-button,.mhs-standard-product .qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.mhs-quantity-button { width:36px; min-width:30px; padding:0; border:0; background:white; color:#67717a; cursor:pointer; font-size:20px; }
body.single-product .mhs-standard-product .single_add_to_cart_button { grid-column:2; border-radius:4px; min-height:44px; margin:0; }
body.single-product .mhs-standard-product .single_add_to_cart_button:disabled { opacity:1; background:#b0cbc1!important; color:white; cursor:not-allowed; }
.mhs-product-selection small { display:block; margin-top:5px; color:#59636a; font-size:12px; }
.mhs-product-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; font-size:13px; }
body.single-product .mhs-standard-product .mhs-product-actions .mhs-wishlist-toggle { position:static; width:auto; height:auto; padding:0; display:flex; align-items:center; gap:7px; border:0; background:none; border-radius:0; font-size:13px; color:#121716; }
.mhs-product-actions .mhs-wishlist-toggle svg { width:23px; height:23px; }
.mhs-product-actions .mhs-wishlist-toggle > span:not(.mhs-wishlist-tooltip) { position:static; width:auto; height:auto; clip:auto; clip-path:none; overflow:visible; text-transform:none; font-weight:400; }
.mhs-gallery-wishlist { position:absolute; top:18px; right:72px; z-index:3; }
body.single-product .mhs-gallery-wishlist .mhs-wishlist-toggle { width:42px; height:42px; padding:10px; border:0; border-radius:50%; background:white; color:#111; }
.mhs-gallery-wishlist .mhs-wishlist-toggle > span:not(.mhs-wishlist-tooltip) { display:none; }
body.single-product .mhs-standard-product div.images .woocommerce-product-gallery__wrapper { min-height:0; }
body.single-product .mhs-standard-product div.images .woocommerce-product-gallery__image { min-height:0; }
body.single-product .mhs-standard-product div.images .woocommerce-product-gallery__image > a { display:block; width:100%; }
body.single-product .mhs-standard-product div.images .woocommerce-product-gallery__image > a > img { width:100%; height:auto; max-height:none; aspect-ratio:1.12; object-fit:cover; }
body.single-product .mhs-standard-product .mhs-product-buy-box__cart form.cart .single_add_to_cart_button { font-size:15px; padding:10px; white-space:normal; }
body.single-product .mhs-standard-product .mhs-product-buy-box__cart form.cart .mhs-purchase-details { grid-column:1/-1; }
body.single-product .mhs-standard-product .mhs-door-choice:not([data-choice-group="finish"]) input { position:absolute; width:1px; height:1px; clip-path:inset(50%); }
body.single-product .mhs-standard-product .mhs-door-choice:focus-within { outline:2px solid #00874a; outline-offset:2px; }
.mhs-product-actions a { color:#00994f; font-weight:600; text-decoration:none; }
.mhs-purchase-information { grid-column:1/-1; margin-top:8px; font-size:13px; }
.mhs-purchase-information summary { cursor:pointer; padding-block:10px; color:#5c6963; }
.mhs-product-price-note { margin:0 0 12px; color:#6b737b; font-size:13px; }
body.single-product .mhs-standard-product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; }
.mhs-product-complements > div > a { display:grid; grid-template-columns:48% 1fr; align-items:stretch; }
.mhs-product-complements > div > a > img { width:100%; height:100%; min-height:145px; object-fit:cover; }
.mhs-product-complements > div > a > span { display:flex; flex-direction:column; gap:10px; padding:14px; }
.mhs-product-complements b { margin-top:auto; }
/* Serramenti landing: all text remains HTML over independent photographs. */
.mhs-serramenti-landing { --rev3-green:#00b75e; background:white; color:#101313; }
.mhs-serramenti-hero,.mhs-serramenti-support { position:relative; isolation:isolate; overflow:hidden; }
.mhs-serramenti-hero > img,.mhs-serramenti-support > img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:center; }
.mhs-serramenti-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#fffffff0 0%,#ffffffb3 30%,#ffffff00 60%); }
.mhs-serramenti-hero__content { padding:26px 4.6% 45px; min-height:clamp(400px,44.8vw,650px); display:flex; flex-direction:column; align-items:flex-start; }
.mhs-serramenti-hero nav { font-size:13px; margin-bottom:40px; }
.mhs-serramenti-hero nav a { color:inherit; text-decoration:none; }
.mhs-serramenti-hero h1 { font-size:clamp(34px,4.4vw,62px); line-height:1.08; letter-spacing:-.045em; margin:0 0 18px; max-width:650px; }
.mhs-serramenti-hero h1 span,.mhs-serramenti-landing h2 span { color:var(--rev3-green); }
.mhs-serramenti-hero p { font-size:clamp(17px,1.9vw,24px); line-height:1.35; max-width:480px; margin:0 0 24px; }
.mhs-serramenti-landing .mhs-rev3-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:14px 26px; background:var(--rev3-green); color:white; font-weight:650; font-size:15px; text-decoration:none; border:1px solid var(--rev3-green); border-radius:5px; }
.mhs-serramenti-landing .mhs-rev3-button svg { width:20px; height:20px; flex-shrink:0; }
.mhs-serramenti-choices { padding:28px 4.2% 24px; max-width:1500px; margin:auto; scroll-margin-top:20px; }
.mhs-serramenti-landing h2 { font-size:clamp(27px,3.2vw,42px); line-height:1.15; letter-spacing:-.04em; margin:0 0 10px; }
.mhs-serramenti-choices > header { text-align:center; margin-bottom:28px; }
.mhs-serramenti-choices > header p { margin:0; font-size:17px; }
.mhs-serramenti-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.mhs-serramenti-card { border:1px solid #e5e9e7; border-radius:5px; overflow:hidden; box-shadow:0 1px 3px #00000008; }
.mhs-serramenti-card > img { width:100%; aspect-ratio:1.2; object-fit:cover; object-position:78% center; }
.mhs-serramenti-card > div { padding:14px 20px 18px; display:flex; flex-direction:column; }
.mhs-serramenti-card h3 { font-size:24px; line-height:1.2; margin:0 0 7px; letter-spacing:-.025em; }
.mhs-serramenti-card p { margin:0 0 18px; font-size:15px; line-height:1.4; min-height:42px; }
.mhs-serramenti-card .mhs-rev3-button { padding:10px 14px; font-size:14px; }
.mhs-serramenti-steps { padding:28px 4.2%; background:#f0f2f3; }
.mhs-serramenti-steps > h2 { text-align:center; margin-bottom:30px; }
.mhs-serramenti-steps ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; list-style:none; margin:0 auto; max-width:1400px; }
.mhs-serramenti-steps li { display:grid; grid-template-columns:64px 1fr; gap:8px 12px; padding:0 22px; }
.mhs-serramenti-steps li + li { border-left:1px solid #c9cfcd; }
.mhs-serramenti-steps li > b { font-size:44px; color:#a5dcca; line-height:1; grid-row:1/4; }
.mhs-serramenti-steps svg { width:48px; height:48px; color:var(--rev3-green); margin-bottom:8px; }
.mhs-serramenti-steps h3 { font-size:20px; line-height:1.2; margin:0; }
.mhs-serramenti-steps p { margin:0; font-size:15px; line-height:1.4; }
.mhs-serramenti-support::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#000c,#0008 35%,#0000 75%); }
.mhs-serramenti-support > div { padding:38px 4.6%; min-height:clamp(275px,28vw,420px); color:white; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.mhs-serramenti-support h2 { font-size:clamp(36px,4.5vw,62px); max-width:560px; margin-bottom:14px; }
.mhs-serramenti-support p { max-width:480px; font-size:18px; line-height:1.4; margin:0 0 24px; }
.mhs-serramenti-support .mhs-serramenti-support__links { display:flex; flex-wrap:wrap; gap:14px; }
.mhs-serramenti-support .mhs-rev3-button--outline { background:transparent; border-color:white; }
@media(max-width:1024px) {
 body .site-header .site-commercebar { grid-template-columns:minmax(0,1fr) auto; padding:16px 5%; gap:16px; min-height:0; }
 body .site-header .site-commercebar .site-branding,body .site-header .site-branding__logo img { width:200px; }
 body .site-header .site-commercebar__search { grid-row:2; grid-column:1/-1; }
 body .site-header .site-commercebar__search input { min-height:44px; height:44px; font-size:14px; }
 body .site-header .mhs-search-form { min-height:44px; height:44px; }
 body .site-header .site-action { min-height:44px; }
 body .site-header .site-commercebar__search button { height:38px; width:38px; }
 body .site-header .site-header__actions { grid-column:2; grid-row:1; gap:16px; }
 body .site-header .category-navigation { padding:0 5%; }
 .mhs-category-menu-toggle { display:flex; align-items:center; justify-content:space-between; width:100%; padding:14px 0; border:0; background:white; color:#111; font-size:14px; font-weight:600; }
 body .site-header .category-navigation.is-enhanced .category-navigation__list { display:none; }
 body .site-header .category-navigation.is-expanded .category-navigation__list,
 body .site-header .category-navigation__list { display:block; padding-bottom:12px; }
 body .site-header .category-navigation__list > li { display:grid; grid-template-columns:minmax(0,1fr) 44px; border-top:1px solid #edf0ef; width:100%; }
 body .site-header .category-navigation__list > li > a { padding:12px 0; min-height:44px; font-size:13px; }
 body .site-header .category-navigation__toggle { width:44px; height:44px; position:static; margin:0; }
 body .site-header .category-navigation__submenu { position:static!important; grid-column:1/-1; width:100%; min-width:0; max-width:none; max-height:none; padding:0 0 10px 16px; box-shadow:none; border:0; transform:none!important; transition:none; display:none!important; visibility:visible; opacity:1; }
 body .site-header .category-navigation__list > li.is-open > .category-navigation__submenu { display:block!important; }
 body .site-header .category-navigation__group { display:grid; grid-template-columns:minmax(0,1fr) auto; position:relative; }
 body .site-header .category-navigation__group > a { padding:12px 0; font-size:14px; min-width:0; }
 body .site-header .category-navigation__branch-toggle { display:block; width:44px; height:44px; background:white; color:#111; border:0; }
 .category-navigation__branch-toggle svg { width:16px; height:16px; transition:transform .15s; }
 .category-navigation__branch-toggle[aria-expanded="true"] svg { transform:rotate(90deg); }
 body .site-header .category-navigation__children { display:none; grid-column:1/-1; margin:0; padding-left:16px; }
 body .site-header .category-navigation__group.is-open > .category-navigation__children { display:block; }
 .mhs-serramenti-steps li { grid-template-columns:40px 1fr; padding:0 16px; }
 .mhs-serramenti-steps li > b { font-size:34px; }
 .mhs-serramenti-steps h3 { font-size:17px; }
 .mhs-serramenti-card > div { padding:12px; }
 .mhs-serramenti-card .mhs-rev3-button { font-size:12px; gap:8px; }
}
@media(max-width:760px) {
 body .site-header .site-commercebar .site-branding,body .site-header .site-branding__logo img { width:165px; }
 body .site-header .site-header__actions { gap:8px; }
 body .site-header .site-action { min-width:34px; font-size:10px; }
 body .site-header .site-action > svg { width:23px; height:23px; }
 body.single-product .mhs-standard-product__purchase { display:grid; grid-template-columns:1fr; gap:24px; }
 .mhs-product-complements > div { grid-template-columns:1fr; }
 .mhs-serramenti-hero__content { padding:22px 5% 34px; min-height:470px; }
 .mhs-serramenti-hero nav { margin-bottom:32px; }
 .mhs-serramenti-hero::before { background:linear-gradient(90deg,#fffffff0 0%,#ffffffca 50%,#ffffff44); }
 .mhs-serramenti-hero > img { object-position:65% center; }
 .mhs-serramenti-hero h1 { max-width:440px; }
 .mhs-serramenti-hero p { max-width:350px; }
 .mhs-serramenti-choices { padding:28px 5%; }
 .mhs-serramenti-cards { grid-template-columns:1fr; gap:22px; }
 .mhs-serramenti-card > img { aspect-ratio:1.5; }
 .mhs-serramenti-card > div { padding:18px; }
 .mhs-serramenti-card p { min-height:0; }
 .mhs-serramenti-card .mhs-rev3-button { font-size:15px; }
 .mhs-serramenti-steps { padding:30px 5%; }
 .mhs-serramenti-steps ol { grid-template-columns:1fr; gap:24px; }
 .mhs-serramenti-steps li { padding:0 0 24px; grid-template-columns:56px 1fr; }
 .mhs-serramenti-steps li + li { border-left:0; }
 .mhs-serramenti-steps li:not(:last-child) { border-bottom:1px solid #c9cfcd; }
 .mhs-serramenti-support > div { padding:34px 5%; min-height:390px; }
 .mhs-serramenti-support p { font-size:17px; }
}
@media(prefers-reduced-motion:reduce) { .mhs-serramenti-landing * { scroll-behavior:auto; } }
