[data-product-card] [data-card-media]{display:block;position:relative;overflow:hidden;aspect-ratio:1}[data-card-media] img{width:100%;height:100%;object-fit:cover;transition:transform .25s,opacity .25s}[data-card-media] img+img{position:absolute;inset:0;opacity:0}
body[data-product-hover] .product-hover-target{transition:transform .25s!important}body[data-product-hover=none] .product-hover-target,body[data-product-hover=swap] .product-hover-target{transform:none!important}body[data-product-hover=none] .product-hover-primary,body[data-product-hover=zoom] .product-hover-primary,body[data-product-hover=shrink] .product-hover-primary{opacity:1!important}body[data-product-hover=none] .product-hover-secondary,body[data-product-hover=zoom] .product-hover-secondary,body[data-product-hover=shrink] .product-hover-secondary{opacity:0!important}
@media(hover:hover){body[data-product-hover=zoom] .product-tile .image:hover .product-hover-target,body[data-product-hover=zoom] [data-card-media]:hover img:first-child{transform:scale(1.08)!important}body[data-product-hover=shrink] .product-tile .image:hover .product-hover-target,body[data-product-hover=shrink] [data-card-media]:hover img:first-child{transform:scale(.9)!important}body[data-product-hover=swap] [data-card-media]:has(img+img):hover img:first-child{opacity:0}body[data-product-hover=swap] [data-card-media]:hover img+img{opacity:1}}
.m31-quick-view-trigger{font:inherit;border:1px solid #ccd2d8;background:#fff;color:#29313a;padding:8px 12px;border-radius:5px;cursor:pointer;margin:10px 0}.m31-product-quick-view{box-sizing:border-box;width:min(92vw,520px);max-height:88dvh;overflow:auto;border:1px solid #d3d8df;border-radius:12px;padding:20px;color:#252a32;background:#fff}.m31-product-quick-view::backdrop{background:#1118}.m31-product-quick-view>img{display:block;width:100%;max-height:45dvh;object-fit:contain;margin:16px 0}.m31-product-quick-view>button{font:inherit;float:right;border:1px solid #cbd2db;border-radius:5px;padding:7px 12px;background:#fff;cursor:pointer}.m31-product-quick-view>a{display:block;text-align:center;padding:12px;background:#293c53;color:#fff;border-radius:6px}.m31-product-quick-view h2{font-size:22px}.m31-product-quick-view :focus-visible,.m31-quick-view-trigger:focus-visible{outline:3px solid #456e9a;outline-offset:3px}
/* The copied storefront keeps its existing React gallery and purchase handlers. */
body[data-product-template] .sf-pdp{gap:clamp(20px,4vw,64px)}body[data-product-template] .sf-pdp-gallery-main-stage{aspect-ratio:1;min-width:0}body[data-product-template] .sf-pdp-gallery-main-stage img{object-fit:contain}
body[data-product-template=beauty-focus] .sf-pdp-buybox{padding:28px;background:#f7f6f3;border-radius:10px}body[data-product-template=soft-beauty] .sf-pdp-gallery-rail,body[data-product-template=luxury-split] .sf-pdp-gallery-rail,body[data-product-template=gallery-panorama] .sf-pdp-gallery-rail{display:flex;flex-direction:column-reverse}body[data-product-template=soft-beauty] .sf-pdp-gallery-thumbs,body[data-product-template=luxury-split] .sf-pdp-gallery-thumbs,body[data-product-template=gallery-panorama] .sf-pdp-gallery-thumbs{display:flex;flex-direction:row;max-width:100%;overflow-x:auto}
body[data-product-template=soft-beauty] .sf-pdp-buybox{background:#faf6f5;padding:24px;border-radius:16px}body[data-product-template=ingredient-lab] .sf-pdp-buybox{border-left:1px solid #d9dfdf;padding-left:26px}body[data-product-template=ingredient-lab] .sf-pdp-acc-panel,body[data-product-template=lifestyle-story] .sf-pdp-acc-panel{display:block!important;max-height:none!important;height:auto!important;visibility:visible!important}body[data-product-template=ingredient-lab] .sf-pdp-acc-icon,body[data-product-template=lifestyle-story] .sf-pdp-acc-icon{display:none}
@media(min-width:900px){body[data-product-template=fashion-editorial] .sf-pdp{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr)}body[data-product-template=fashion-editorial] .sf-pdp-gallery-rail{display:block}body[data-product-template=fashion-editorial] .sf-pdp-gallery-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}body[data-product-template=fashion-editorial] .sf-pdp-gallery-thumb{width:100%;height:auto;aspect-ratio:1;opacity:1}body[data-product-template=fashion-editorial] .sf-pdp-gallery-thumb img{width:100%;height:100%;object-fit:contain}body[data-product-template=fashion-editorial] .sf-pdp-gallery-main-stage{display:none}body[data-product-template=fashion-lookbook] .sf-pdp-gallery-rail,body[data-product-template=lifestyle-story] .sf-pdp-gallery-rail{display:block}body[data-product-template=fashion-lookbook] .sf-pdp-gallery-thumbs,body[data-product-template=lifestyle-story] .sf-pdp-gallery-thumbs{display:grid;grid-template-columns:1fr;max-height:none}body[data-product-template=fashion-lookbook] .sf-pdp-gallery-thumb,body[data-product-template=lifestyle-story] .sf-pdp-gallery-thumb{width:100%;height:auto;aspect-ratio:1;opacity:1}body[data-product-template=fashion-lookbook] .sf-pdp-gallery-main-stage,body[data-product-template=lifestyle-story] .sf-pdp-gallery-main-stage{display:none}body[data-product-template=lifestyle-story] .sf-pdp-gallery-thumb:nth-child(even){width:85%;justify-self:end}body[data-product-template=fashion-editorial] .sf-pdp-buybox,body[data-product-template=fashion-lookbook] .sf-pdp-buybox{align-self:start;position:sticky;top:24px}}
body[data-product-template=luxury-split] .sf-pdp-buybox{background:#25292b;color:#fff;padding:28px}body[data-product-template=luxury-split] .sf-pdp-buybox :is(h1,p,span,button,a){color:inherit}body[data-product-template=retail-compact] .sf-pdp{gap:24px}body[data-product-template=retail-compact] .sf-pdp-buybox{font-size:14px}body[data-product-template=retail-compact] .sf-pdp-title{font-size:28px}body[data-product-template=gallery-panorama] .sf-pdp-buybox{background:#f4f1e7;padding:24px}body[data-product-template=mobile-swipe] .sf-pdp-buybox{border-top:3px solid #758477;padding-top:24px}
@media(max-width:650px){.m31-product-quick-view{padding:14px}body[data-product-template] .sf-pdp-buybox{padding:16px;border-left:0}body[data-product-template] .sf-pdp-gallery-main-stage{width:100%;height:auto}}
@media(prefers-reduced-motion:reduce){body[data-product-hover] *,[data-card-media] img{transition:none!important}}

/* Single-image gallery is independent of the information-panel design. */
[data-product-template=single-image] .sf-pdp-gallery-thumbs,[data-product-template=single-image] .web-product-photo-grid,[data-product-template=single-image] .sf-pdp-gallery-grid{display:none!important}
[data-product-template=single-image] .sf-pdp-gallery-rail{display:block;max-width:none;width:100%}
[data-product-template=single-image] .sf-pdp-gallery-main-stage{display:block;width:100%;aspect-ratio:1;background:#f5f5f0;border:0}
[data-product-template=single-image] .sf-pdp-gallery-main-stage img{width:100%;height:100%;object-fit:contain}
.web-product-detail .sf-pdp-gallery-thumbs:has(>button:only-child){display:none}

.web-product-detail[data-product-has-single-image=true] .sf-pdp-gallery-thumbs,.web-product-detail[data-product-has-single-image=true] .web-product-photo-grid,.web-product-detail[data-product-has-single-image=true] [data-gallery-prev],.web-product-detail[data-product-has-single-image=true] [data-gallery-next]{display:none!important}.web-product-detail[data-product-has-single-image=true] .sf-pdp-gallery-rail{display:block;width:100%}.web-product-detail[data-product-has-single-image=true] .sf-pdp-gallery-main-stage{display:block!important;width:100%}

/* Every public product route shares the same mobile gallery contract. */
@media(max-width:1100px){body[data-product-template] .sf-pdp-gallery-rail,.web-product-detail[data-product-template] .sf-pdp-gallery-rail{display:flex!important;flex-direction:column!important;width:100%;min-width:0;gap:12px}body[data-product-template] .sf-pdp-gallery-main-stage,.web-product-detail[data-product-template] .sf-pdp-gallery-main-stage{display:block!important;order:0;width:100%;grid-column:auto;grid-row:auto}body[data-product-template] .sf-pdp-gallery-thumbs,.web-product-detail[data-product-template] .sf-pdp-gallery-thumbs{display:flex!important;order:1;flex-direction:row!important;flex-wrap:nowrap;overflow-x:auto;width:100%;max-width:100%;max-height:none;gap:8px}body[data-product-template] .sf-pdp-gallery-thumb,.web-product-detail[data-product-template] .sf-pdp-gallery-thumb{flex:0 0 64px;width:64px;height:64px}body[data-product-template] .sf-pdp-gallery-thumbs img{width:100%;height:100%;object-fit:contain}body[data-product-template] .web-product-photo-grid{display:none!important}body[data-product-template=single-image] .sf-pdp-gallery-thumbs,.web-product-detail[data-product-has-single-image=true] .sf-pdp-gallery-thumbs{display:none!important}}
@media(hover:hover){body[data-product-hover=swap] [data-card-media]:not(:has(img+img)):hover img,body[data-product-hover=swap] .product-hover-target:not(:has(.product-hover-secondary)):hover img,.m31-theme-sections .product-hover-target:not(:has(.product-hover-secondary)):hover img{transform:scale(1.05)}}
@media(prefers-reduced-motion:reduce){body[data-product-hover] [data-card-media]:hover img,.m31-theme-sections .product-hover-target:hover img{transform:none!important}}

@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:400;font-display:swap;src:url("https://web.m31.app/assets/fonts/noto-sans-thai-400.woff2") format("woff2")}
@font-face{font-family:"Noto Sans Thai";font-style:normal;font-weight:600 900;font-display:swap;src:url("https://web.m31.app/assets/fonts/noto-sans-thai-600.woff2") format("woff2")}
:lang(th) :is(.desktop-nav,.m31-nav,.m31-desktop-panel,.sf-header-nav,.sf-nav-menu){font-family:var(--theme-font-body,"Noto Sans Thai"),"Noto Sans Thai",sans-serif;letter-spacing:0}
.m31-theme-sections .desktop-nav{gap:clamp(18px,2vw,32px);align-items:center}
.m31-theme-sections .desktop-nav>.nav-sub>a,.m31-theme-sections .desktop-nav>.nav-sub>.nav-preview-link,.m31-theme-sections .desktop-nav>a,.m31-theme-sections .desktop-nav>.nav-preview-link{font-size:15px;line-height:1.5;letter-spacing:0;padding:12px 0}
.m31-theme-sections .desktop-nav .nav-sub-panel :is(a,.nav-preview-link){font-size:14px;line-height:1.65;padding:8px 16px;letter-spacing:0;white-space:normal}

/* Mobile thumbnails stay below the main photo and scroll at a usable size. */
@media(max-width:1100px){body[data-product-template] .sf-pdp-gallery-thumbs,.web-product-detail[data-product-template] .sf-pdp-gallery-thumbs{display:flex!important;flex-flow:row nowrap!important;width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;padding:4px 2px 8px;gap:8px}body[data-product-template] .sf-pdp-gallery-thumb,.web-product-detail[data-product-template] .sf-pdp-gallery-thumb{flex:0 0 64px;width:64px;min-width:64px;height:64px;max-width:none;aspect-ratio:1;scroll-snap-align:start}body[data-product-template] .sf-pdp-gallery-thumb img{display:block;width:100%;height:100%;object-fit:contain}body[data-product-template=single-image] .sf-pdp-gallery-thumbs,.web-product-detail[data-product-has-single-image=true] .sf-pdp-gallery-thumbs{display:none!important}}
/* Bottom-rail designs must reset the inherited vertical thumbnail width. */
body:is([data-product-template=soft-beauty],[data-product-template=luxury-split],[data-product-template=gallery-panorama]) .sf-pdp-gallery-thumbs{width:100%;min-width:0;max-height:none}

/* Category filters remain available; product list photos have no category badge. */
.m31-related-rail__badge{display:none!important}

/* Zoom is an image-sized overlay: controls float over the photo, never reserve side gutters. */
.sf-pdp-gallery-modal-backdrop{padding:12px!important}
.sf-pdp-gallery-modal{width:min(96vw,90dvh,1000px)!important;max-height:90dvh!important;padding:0!important;overflow:hidden;background:transparent!important}
.sf-pdp-gallery-modal-stage{position:relative!important;display:block!important;width:100%!important;min-height:0!important;padding:0!important;aspect-ratio:1}
.sf-pdp-gallery-modal-media{display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:1;border:0!important;background:transparent!important}
.sf-pdp-gallery-modal-media img{display:block;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important}
.sf-pdp-gallery-modal-nav{position:absolute!important;top:50%!important;transform:translateY(-50%);z-index:3!important;margin:0!important;background:rgba(255,255,255,.9)!important;box-shadow:0 2px 10px #0002}
.sf-pdp-gallery-modal-nav--prev{left:12px!important}.sf-pdp-gallery-modal-nav--next{right:12px!important}
.sf-pdp-gallery-modal-close{z-index:4!important;border-radius:50%;background:rgba(255,255,255,.9)!important;color:#111!important}

/* M31_CARD_MEDIA_SWAP */

body[data-product-hover=swap] :where(.product-hover-primary,[data-card-media]>img:first-child){opacity:1!important;visibility:visible!important;transition:none!important}
body[data-product-hover=swap] :where(.product-hover-secondary,[data-card-media]>img+img){opacity:0!important;visibility:hidden!important;transition:none!important}
[data-m31-swap-media]{position:relative}
[data-m31-swap-media] [data-m31-swap-primary]{opacity:1!important;visibility:visible!important;transition:none!important}
[data-m31-swap-media] [data-m31-swap-secondary]{opacity:0!important;visibility:hidden!important;transition:none!important;pointer-events:none}
[data-m31-swap-media][data-m31-swap-active=true] [data-m31-swap-primary]{opacity:0!important;visibility:hidden!important}
[data-m31-swap-media][data-m31-swap-active=true] [data-m31-swap-secondary]{opacity:1!important;visibility:visible!important}
@media(hover:none),(pointer:coarse){[data-m31-swap-media] [data-m31-swap-primary]{opacity:1!important;visibility:visible!important}[data-m31-swap-media] [data-m31-swap-secondary]{opacity:0!important;visibility:hidden!important}}


.m31-live-cart{position:fixed;top:auto;right:max(16px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:10000;max-width:calc(100vw - 32px);min-height:44px;box-sizing:border-box;padding:12px 16px;border-radius:24px;background:#171717;color:#fff!important;text-decoration:none;font:600 14px/1.3 sans-serif;box-shadow:0 4px 20px #0002}
.m31-cart-feedback{position:fixed;top:auto;right:max(16px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));z-index:10000;box-sizing:border-box;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:12px;background:#f7d8e5;color:#171717;font:500 14px/1.4 sans-serif;box-shadow:0 4px 16px #0002}
.m31-live-cart[hidden],.m31-cart-feedback[hidden]{display:none!important}
@media(max-width:640px){.m31-live-cart{bottom:calc(76px + env(safe-area-inset-bottom))}.m31-cart-feedback{bottom:calc(134px + env(safe-area-inset-bottom))}}


.cart-btn{flex-shrink:0}
.cart-btn [data-saboo-cart-count]{left:auto;right:-2px;top:0;min-width:18px;width:auto;max-width:none;height:18px;padding:0 4px;line-height:18px;white-space:nowrap;font-size:10px;font-variant-numeric:tabular-nums;pointer-events:none}
@media(max-width:640px){.m-icons{flex-shrink:0;gap:4px}.m-icons>.ib{flex-shrink:0}.hrow>.logo{min-width:0}}

.sf-pdp-title,.sf-card-name,.m31-related-rail h3,.m31-name-base,.m31-name-detail{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.m31-name-base,.m31-name-detail{display:block}.m31-name-detail{margin-top:.35em}h3.sf-card-name:has(.m31-name-base),.m31-related-rail h3:has(.m31-name-base){display:block;-webkit-line-clamp:unset;max-height:none}