/* Scoped product layout; global Michel containers and catalog cards are unchanged. */
body.single-product #main.content-page{padding-block:24px 40px}
.single-product .woocommerce-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;line-height:1.6;margin:0 0 22px;color:var(--michel-ui-muted);overflow-wrap:anywhere}
.single-product .woocommerce-breadcrumb a{color:var(--michel-ui-active-text)}
.woocommerce div.ms-product .ms-main{display:grid;grid-template-columns:minmax(0,40fr) minmax(0,60fr);gap:18px 24px;align-items:start}
.ms-main>*{min-width:0}.ms-main .ms-gallery{grid-column:1;grid-row:1/3}.ms-summary,.ms-main .ms-purchase{grid-column:2;min-width:0}.ms-summary{grid-row:1}.ms-main .ms-purchase{grid-row:2}.ms-heading{min-width:0}.ms-info:empty{display:none}.ms-gallery{position:relative;border:1px solid var(--michel-ui-border);border-radius:16px;padding:12px;background:#fff;overflow:hidden}
.woocommerce div.ms-product .ms-gallery .images{width:100%;float:none;margin:0;min-width:0}
.ms-gallery .woocommerce-product-gallery__wrapper{margin:0}.ms-gallery .woocommerce-product-gallery__image>a,.ms-gallery .woocommerce-product-gallery__image--placeholder{display:flex;align-items:center;justify-content:center;height:var(--ms-photo-height,340px)}.ms-gallery .woocommerce-product-gallery__image,.ms-gallery .woocommerce-product-gallery__image--placeholder{background:var(--michel-ui-bg);border-radius:12px;overflow:hidden}
.woocommerce div.ms-product .ms-gallery .woocommerce-product-gallery__image img:not(.zoomImg),.woocommerce div.ms-product .ms-gallery .woocommerce-product-gallery__image--placeholder img{display:block;width:auto;height:auto;max-width:100%;max-height:var(--ms-photo-height,340px);margin-inline:auto;object-fit:contain;object-position:center;border-radius:12px}
.woocommerce div.ms-product .ms-gallery .flex-control-thumbs{display:flex;gap:8px;overflow:auto;padding:10px 0 0;scrollbar-width:thin}
.woocommerce div.ms-product .ms-gallery .flex-control-thumbs li{width:64px;flex:0 0 64px;float:none;margin:0}
.woocommerce div.ms-product .ms-gallery .flex-control-thumbs img{width:64px;height:64px;object-fit:contain;border:1px solid var(--michel-ui-border);border-radius:9px;opacity:.7;background:var(--michel-ui-bg);box-sizing:border-box}
.woocommerce div.ms-product .ms-gallery .flex-control-thumbs .flex-active{border-color:var(--michel-ui-active-border);opacity:1}
.ms-gallery .flex-direction-nav{list-style:none;margin:0;padding:0}.ms-gallery .flex-direction-nav a{position:absolute;top:42%;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--michel-ui-border);border-radius:50%;background:#fff;color:var(--michel-ui-active-text);font-size:0;text-decoration:none;z-index:5}
.ms-gallery .flex-prev{left:8px}.ms-gallery .flex-next{right:8px}.ms-gallery .flex-direction-nav a::before{content:"";width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}.ms-gallery .flex-direction-nav .flex-prev::before{transform:rotate(-135deg)}
.ms-gallery .flex-disabled{visibility:hidden}.ms-favorite{position:absolute;top:20px;left:20px;z-index:6}.ms-favorite .michel-favorite-button{position:static;width:44px;height:44px;background:#fff;border:1px solid var(--michel-ui-border);box-shadow:0 2px 8px #1e1e1e08}
.woocommerce .ms-gallery span.onsale{position:absolute;inset:76px auto auto 20px;z-index:6;min-width:0;min-height:0;line-height:1.4;padding:6px 10px;background:var(--michel-control-green);color:#fff;font-size:12px;border-radius:8px}
.woocommerce div.ms-product .ms-info.summary{float:none;width:auto;margin:0;min-width:0}
.woocommerce div.ms-product .ms-heading h1.product_title{font-size:clamp(23px,1.8vw,29px);line-height:1.25;letter-spacing:-.025em;margin:0 0 14px;overflow-wrap:anywhere}
.ms-meta{font-size:12px;line-height:1.6;margin:0}.ms-meta>div{display:grid;grid-template-columns:minmax(74px,30%) minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px solid #edf1e9}.ms-meta dt{color:var(--michel-ui-muted);overflow-wrap:anywhere}.ms-meta dd{margin:0;overflow-wrap:anywhere}.ms-meta a{color:var(--michel-ui-active-text);text-decoration:none}
.ms-info .woocommerce-product-details__short-description{margin-top:14px;font-size:14px;line-height:1.7;color:var(--michel-ui-muted)}.ms-info .woocommerce-product-details__short-description p{margin:0 0 12px}
.ms-purchase{display:grid;gap:14px}.ms-buy{padding:20px;border:1px solid var(--michel-ui-border);border-radius:16px;background:#fff}.ms-price-label{font-size:12px;color:var(--michel-ui-muted)}
.woocommerce div.ms-product .ms-buy>p.price{font-size:28px;line-height:1.3;font-weight:700;color:var(--michel-ui-text);margin:8px 0 12px;overflow-wrap:anywhere}.woocommerce div.ms-product .ms-buy .price ins{background:none;text-decoration:none;font-weight:700}.woocommerce div.ms-product .ms-buy .price del{display:block;font-size:16px;color:var(--michel-ui-muted);font-weight:400;opacity:1}.ms-buy .michel-portion-unit{font-size:13px;font-weight:400;white-space:nowrap;color:var(--michel-ui-muted)}
.ms-portion-hint{font-size:12px;line-height:1.5;color:var(--michel-ui-muted);margin:0 0 12px}.woocommerce .ms-buy .stock{font-size:12px;line-height:1.4;margin:0 0 14px;color:var(--michel-ui-active-text)}.woocommerce .ms-buy .out-of-stock,.ms-unavailable{color:var(--michel-ui-muted);font-size:13px}
.woocommerce div.ms-product .ms-buy form.cart{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0}.woocommerce div.ms-product .ms-buy form.variations_form{display:block}.ms-buy .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ms-buy .variations select{width:100%;height:44px;border:1px solid var(--michel-ui-border);border-radius:10px;background:var(--michel-ui-bg);color:var(--michel-ui-text);padding:8px;font:inherit;font-size:13px}.ms-buy .variations td,.ms-buy .variations th{font-size:13px}.ms-buy .woocommerce-variation-price{margin-bottom:12px}.ms-buy .woocommerce-variation-description{font-size:12px;line-height:1.5}
.woocommerce .ms-buy .quantity{display:flex;flex:none;align-items:center;float:none;margin:0;border:1px solid var(--michel-ui-border);border-radius:11px;background:var(--michel-ui-bg);height:46px;box-sizing:border-box;overflow:visible}.woocommerce .ms-buy .quantity .qty{width:42px;min-width:0;height:44px;padding:0;border:0;background:transparent;text-align:center;font:inherit;font-size:14px;font-variant-numeric:tabular-nums;box-shadow:none;appearance:textfield}.ms-buy .qty::-webkit-inner-spin-button,.ms-buy .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ms-qty-step{width:30px;height:44px;border:0;background:transparent;color:var(--michel-ui-field-text);font-size:20px;border-radius:9px;padding:0;cursor:pointer}.ms-qty-step:not(:disabled):hover{background:var(--michel-ui-active-bg)}.ms-qty-step:disabled{color:#9aa491;cursor:not-allowed}
.woocommerce div.ms-product .ms-buy button.single_add_to_cart_button.button{background:var(--michel-control-bg);color:var(--michel-on-action);border-color:var(--michel-control-bg);display:inline-flex;align-items:center;justify-content:center;float:none;flex:1 1 125px;min-height:46px;padding:10px 12px;margin:0;border-radius:11px;font-size:14px;line-height:1.4;font-weight:600;box-sizing:border-box;--michel-control-bg:#689f38;--michel-control-hover:#568f24;--michel-control-active:#507b29;transform:none}
/* Own every purchase-button state; WooCommerce alt:disabled[disabled]:hover otherwise wins. */
.woocommerce div.ms-product .ms-buy button.single_add_to_cart_button.button:not(:where(:disabled,[disabled],[aria-disabled=true],.disabled,.loading,.is-loading,[aria-busy=true])):hover{background:var(--michel-control-hover);color:var(--michel-on-action);border-color:var(--michel-control-hover)}
.woocommerce div.ms-product .ms-buy button.single_add_to_cart_button.button:not(:where(:disabled,[disabled],[aria-disabled=true],.disabled,.loading,.is-loading,[aria-busy=true])):active{background:var(--michel-control-active);color:var(--michel-on-action);border-color:var(--michel-control-active)}
.woocommerce div.ms-product .ms-buy button.single_add_to_cart_button.button:is(:disabled,[disabled],[aria-disabled=true],.disabled,.loading,.is-loading,[aria-busy=true]){background:var(--michel-disabled-bg);color:var(--michel-disabled-ink);border-color:var(--michel-disabled-bg);box-shadow:none;opacity:1;transform:none;cursor:not-allowed}

.ms-buy[aria-busy=true] .single_add_to_cart_button{cursor:progress}.ms-portion-total{display:block;font-size:12px;line-height:1.6;padding:10px 12px;background:var(--michel-ui-soft-bg);border-radius:10px;margin-top:12px}
.ms-receiving{padding:16px;border-radius:14px;background:var(--michel-ui-soft-bg)}.ms-receiving h2{font-size:14px;line-height:1.4;letter-spacing:0;margin:0 0 12px}.ms-receiving>div{display:flex;align-items:flex-start;gap:9px;margin:0 0 12px}.ms-receiving .icon{width:18px;height:18px;flex:none;color:var(--michel-ui-active-text)}.ms-receiving p{margin:0;font-size:12px;line-height:1.55}.ms-receiving strong{font-weight:600;display:block}.ms-receiving span{display:block;color:var(--michel-ui-muted);margin-top:2px}.ms-receiving>a{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--michel-ui-border);padding-top:10px;color:var(--michel-ui-active-text);font-size:12px;text-decoration:none}
.ms-details{margin-top:24px;clear:both}.woocommerce div.ms-product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 12px;margin:0;border-bottom:1px solid var(--michel-ui-border)}.woocommerce div.ms-product .woocommerce-tabs ul.tabs::before,.woocommerce div.ms-product .woocommerce-tabs ul.tabs li::before,.woocommerce div.ms-product .woocommerce-tabs ul.tabs li::after{display:none}.woocommerce div.ms-product .woocommerce-tabs ul.tabs li{border:0;background:var(--michel-ui-bg);border-radius:10px;padding:0;margin:0}.woocommerce div.ms-product .woocommerce-tabs ul.tabs li a{display:block;padding:12px 16px;font-size:13px;font-weight:600;color:var(--michel-ui-muted)}.woocommerce div.ms-product .woocommerce-tabs ul.tabs li.active{background:var(--michel-ui-active-bg)}.woocommerce div.ms-product .woocommerce-tabs ul.tabs li.active a{color:var(--michel-ui-active-text)}.woocommerce div.ms-product .woocommerce-tabs .panel{padding:20px 0;margin-bottom:24px;font-size:14px;line-height:1.8;overflow-wrap:anywhere}.ms-details .panel h2{font-size:21px;margin:0 0 14px}.ms-details .panel img{max-width:100%;height:auto}.ms-details table{width:100%;border-collapse:collapse;table-layout:fixed}.ms-details td,.ms-details th{padding:10px;font-size:13px;overflow-wrap:anywhere}
.ms-details .related>h2{font-size:24px;line-height:1.3;margin:24px 0 20px}.ms-product :is(button,a,input,select,[tabindex]):focus-visible{outline:2px solid var(--michel-ui-active-text);outline-offset:3px}.ms-buy .qty:focus{outline:1px solid var(--michel-ui-active-border);outline-offset:-1px}.ms-sticky{display:none}
@media(min-width:1280px){
 .woocommerce div.ms-product .ms-main--rich{grid-template-columns:minmax(0,40fr) minmax(0,34fr) minmax(0,26fr)}
 .ms-main--rich .ms-gallery,.ms-main--rich .ms-summary,.ms-main--rich .ms-purchase{grid-row:1}
 .ms-main--rich .ms-purchase{grid-column:3}
 .ms-main--compact .ms-purchase{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
}
@media(min-width:768px) and (max-width:1279px){.woocommerce div.ms-product .ms-main{grid-template-columns:minmax(0,44fr) minmax(0,56fr);gap:16px 22px}.ms-gallery{--ms-photo-height:320px}}
@media(max-width:767px){body.single-product #main.content-page{padding-block:16px 28px}.single-product .woocommerce-breadcrumb{font-size:11px;gap:4px;margin-bottom:14px}.woocommerce div.ms-product .ms-main{grid-template-columns:minmax(0,1fr);gap:18px}.ms-main .ms-gallery{padding:8px;border-radius:14px;grid-column:1;grid-row:auto;order:2;--ms-photo-height:clamp(240px,70vw,340px)}.ms-summary,.ms-main .ms-purchase{display:contents}.ms-heading{order:1}.ms-buy{order:3}.ms-info{order:4}.ms-receiving{order:5}.woocommerce div.ms-product .ms-heading h1.product_title{font-size:23px;margin-bottom:12px}.ms-meta{margin-bottom:10px}.ms-buy{padding:16px}.woocommerce div.ms-product .ms-buy>p.price{font-size:28px}.ms-details{margin-top:24px}.ms-details .related>h2{font-size:22px}.ms-sticky:not([hidden]){display:flex;position:fixed;z-index:44;inset:auto 0 calc(70px + env(safe-area-inset-bottom,0px));gap:12px;align-items:center;justify-content:space-between;padding:10px 16px;background:#fff;border-top:1px solid var(--michel-ui-border);box-shadow:0 -4px 18px #2338190a}.ms-sticky .button{font-size:13px;min-height:44px;padding:10px 16px;border-radius:11px;transform:none;--michel-control-bg:#689f38;--michel-control-hover:#568f24}.ms-sticky-price{font-size:18px;font-weight:700;line-height:1.3}.ms-sticky-price small{font-size:11px;font-weight:400;display:block}.single-product.ms-sticky-visible{padding-bottom:calc(144px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.ms-product *{scroll-behavior:auto}}

/* Related products are a bounded, non-paginated one-row showcase. */
@media(max-width:1599px){.ms-details .related ul.products>li.product:nth-child(n+5){display:none}}
@media(max-width:1023px){.ms-details .related ul.products>li.product:nth-child(n+4){display:none}}
@media(max-width:767px){.ms-details .related ul.products>li.product:nth-child(n+3){display:none}}
.ms-buy.ms-variation-priced .woocommerce-variation-price{display:none}

/* Native PhotoSwipe: centered Michel panel, with its own viewport for image fitting. */
.ms-gallery .woocommerce-product-gallery__image a{cursor:zoom-in}
body.single-product .pswp.ms-lightbox{position:fixed;inset:0;width:100%;height:100%;z-index:100001}
.pswp.ms-lightbox .pswp__bg{background:#162010}
.pswp.ms-lightbox .pswp__scroll-wrap{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(1100px,calc(100% - 40px));height:90vh;height:min(90dvh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px));border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 16px 64px #0003}
.ms-lightbox .pswp__img{object-fit:contain}.ms-lightbox .pswp__img--placeholder--blank{background:var(--michel-ui-bg)}
.ms-lightbox .pswp__top-bar{height:60px;background:transparent}.ms-lightbox .pswp__preloader{left:calc(50% - 22px);right:auto;top:8px;pointer-events:none}.ms-lightbox .pswp__counter{height:60px;line-height:60px;left:20px;color:var(--michel-ui-muted);font-size:13px;opacity:1;font-variant-numeric:tabular-nums}
/* WooCommerce's bundled sprite uses !important. Neutralize only this gallery's icon sprite. */
.pswp.ms-lightbox button.pswp__button{background-image:none!important;width:44px;height:44px;border:1px solid var(--michel-ui-border);border-radius:50%;color:var(--michel-ui-active-text);padding:10px;opacity:1;box-sizing:border-box;transition:border-color .15s,color .15s}
.ms-lightbox .pswp__button::before{display:none}.ms-lightbox .pswp__button svg{display:block;width:22px;height:22px;pointer-events:none}
.pswp.ms-lightbox .pswp__button--close{position:absolute;right:10px;top:8px;margin:0}
.pswp.ms-lightbox .pswp__button--arrow--left,.pswp.ms-lightbox .pswp__button--arrow--right{top:auto;bottom:8px;margin:0}
.pswp.ms-lightbox .pswp__button--arrow--left{left:calc(50% - 52px)}.pswp.ms-lightbox .pswp__button--arrow--right{right:calc(50% - 52px)}
.pswp.ms-lightbox .pswp__button:hover{border-color:var(--michel-ui-active-border);color:#343d30}.ms-lightbox .pswp__button:focus-visible{outline:2px solid var(--michel-ui-active-text);outline-offset:2px}
.ms-lightbox .pswp__ui--one-slide :is(.pswp__counter,.pswp__button--arrow--left,.pswp__button--arrow--right){display:none}
@media(max-width:767px){.pswp.ms-lightbox .pswp__scroll-wrap{width:calc(100% - 24px);height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px);max-height:calc(100% - 32px);border-radius:16px}}
@media(prefers-reduced-motion:reduce){.ms-lightbox,.ms-lightbox *{transition:none}}

.woocommerce div.ms-product .ms-buy .price .michel-sale-unit{display:block;margin-top:4px;font-size:14px;line-height:1.45;font-weight:400;color:var(--michel-ui-active-text)}
