/* Commerce presentation uses the original WooCommerce markup and integration hooks. */
.pinkmoon-boutique.woocommerce #content-wrap,.pinkmoon-boutique.woocommerce-page #content-wrap { max-width:min(1240px,calc(100vw - 96px))!important; width:calc(100% - 96px)!important; margin-inline:auto!important; padding-block:45px 70px; }
.pinkmoon-boutique .content-area { min-width:0; }
.pinkmoon-boutique.woocommerce .page-header,.pinkmoon-boutique .woocommerce-products-header__title { display:none; }
.pm-catalog-hero,.pm-commerce-intro { padding:12px 0 32px; max-width:760px; }
.pm-catalog-hero h1,.pm-commerce-intro h1,.pm-empty-bag h1,.pm-account-intro h1 { font:400 clamp(32px,4vw,52px)/1.16 'Josefin Sans',sans-serif; letter-spacing:-.04em; color:#342b2c; margin:0 0 17px; }
.pm-catalog-hero p:not(.pm-eyebrow),.pm-commerce-intro>p:not(.pm-eyebrow),.pm-account-intro>p:not(.pm-eyebrow) { color:var(--pm-muted); font-size:16px; line-height:1.65; }
.pm-catalog-hero .pm-eyebrow,.pm-commerce-intro .pm-eyebrow { margin-bottom:14px; }
.pm-shop-filters { padding:24px; background:var(--pm-ivory); border:1px solid var(--pm-pale); margin:0 0 26px; clear:both; }
.pm-shop-filters summary { display:none; }
.pm-filter-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) auto; align-items:end; gap:18px; }
.pm-filter-fields label { color:var(--pm-muted); font-size:12px; display:block; margin:0; }
.pm-filter-fields select { width:100%; min-height:46px; margin-top:6px; padding:8px 12px; border:1px solid #d9cac4; background:white; font-size:14px; color:var(--pm-ink); border-radius:3px; }
.pinkmoon-boutique .button,.pinkmoon-boutique button.button,.pinkmoon-boutique input[type=submit],.pinkmoon-boutique .woocommerce a.button { background:var(--pm-mauve); color:white; border-radius:4px; text-transform:none; letter-spacing:0; min-height:46px; padding:13px 21px; font:400 14px/1.5 'Didact Gothic',sans-serif; border:1px solid var(--pm-mauve); box-shadow:none; }
.pinkmoon-boutique .button:hover,.pinkmoon-boutique .woocommerce a.button:hover { background:var(--pm-footer); color:#fff; }
.pm-active-filters { display:flex; gap:10px; flex-wrap:wrap; margin:-8px 0 24px; }
.pm-active-filters a { padding:7px 12px; border:1px solid var(--pm-pale); font-size:12px; border-radius:20px; color:var(--pm-mauve); }
.pm-active-filters .pm-clear-filters { border:0; text-decoration:underline; }
.pinkmoon-boutique .woocommerce-result-count,.pinkmoon-boutique .woocommerce-ordering { font-size:13px; color:var(--pm-muted); }
.pinkmoon-boutique ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:34px 24px; clear:both; width:100%; margin-inline:0!important; padding-inline:0; }
.pinkmoon-boutique ul.products::before,.pinkmoon-boutique ul.products::after { display:none!important; }
/* Override OceanWP's !important mobile/tablet percentage widths inside our grid. */
.pinkmoon-boutique ul.products.oceanwp-row>li.product,
.pinkmoon-boutique ul.products>li.product { width:100%!important; max-width:none; margin:0!important; padding:0!important; float:none!important; clear:none!important; min-width:0; justify-self:stretch; }
.pinkmoon-boutique ul.products li.product .woo-entry-inner { border:0; padding:0; }
.pinkmoon-boutique ul.products li.product .woo-entry-image { background:var(--pm-ivory); overflow:hidden; }
.pinkmoon-boutique ul.products li.product .woo-entry-image img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.pinkmoon-boutique ul.products li.product .title h2,.pinkmoon-boutique ul.products li.product .woocommerce-loop-product__title { font:400 23px/1.3 'Josefin Sans',sans-serif; color:#342b2c; text-transform:none; letter-spacing:-.025em; }
.pinkmoon-boutique ul.products li.product .price { color:var(--pm-mauve); font-size:15px; }
.pinkmoon-boutique ul.products li.product .category { color:var(--pm-muted); font-size:11px; }
.pinkmoon-boutique .pm-view-gift { display:inline-flex; align-items:center; gap:18px; margin-top:12px; }
.pinkmoon-boutique ul.products .woo-entry-inner>li { margin-bottom:8px; }
.pinkmoon-boutique .woocommerce-pagination { margin-top:35px; }
.pinkmoon-boutique .woocommerce-pagination a,.pinkmoon-boutique .woocommerce-pagination span { border-radius:3px; }
.pm-product-breadcrumb { margin-bottom:28px; font-size:13px; color:var(--pm-mauve); }
.pinkmoon-boutique.single-product div.product { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:24px 50px; align-items:start; }
.pinkmoon-boutique.single-product div.product::before,.pinkmoon-boutique.single-product div.product::after { display:none; }
.pinkmoon-boutique.single-product div.product div.images,.pinkmoon-boutique.single-product div.product div.summary { float:none!important; width:100%!important; margin:0!important; min-width:0; }
.pinkmoon-boutique.single-product .woocommerce-product-gallery { grid-column:1; }
.pinkmoon-boutique.single-product .woocommerce-product-gallery__image { background:var(--pm-ivory); }
.pinkmoon-boutique.single-product .woocommerce-product-gallery__image img { max-height:650px; object-fit:contain; width:100%; }
.pinkmoon-boutique.single-product .entry-summary { grid-column:2; }
.pinkmoon-boutique.single-product .owp-product-nav-wrap { grid-column:1/-1; width:100%; margin:0; position:static; }
.pinkmoon-boutique.single-product .clear-after-summary { display:none; }
.pinkmoon-boutique.single-product .summary .product_title { font:400 clamp(32px,3.4vw,46px)/1.2 'Josefin Sans',sans-serif; letter-spacing:-.04em; color:#342b2c; margin-bottom:8px; text-transform:none!important; }
.pm-product-promise { font:italic 17px/1.6 Georgia,serif; color:var(--pm-mauve); margin:0 0 20px; }
.pinkmoon-boutique.single-product .summary .price { font-size:24px; color:var(--pm-mauve); }
.pinkmoon-boutique.single-product .woocommerce-product-details__short-description { font-size:16px; line-height:1.7; color:var(--pm-muted); }
.pm-product-request-note { padding:18px 20px; border-left:2px solid var(--pm-blush); background:var(--pm-ivory); margin:22px 0; font-size:14px; clear:both; }
.pm-product-request-note p { margin:8px 0 0; color:var(--pm-muted); line-height:1.65; }
.pinkmoon-boutique .quantity .qty { min-height:48px; border-color:#d9cac4; font-size:16px; }
.pinkmoon-boutique.single-product .woocommerce-tabs,.pinkmoon-boutique.single-product .related,.pinkmoon-boutique.single-product .up-sells { grid-column:1/-1; width:100%; }
.pinkmoon-boutique.single-product .woocommerce-tabs { border-top:1px solid var(--pm-pale); padding-top:26px; }
.pinkmoon-boutique.single-product .woocommerce-tabs .panel { font-size:16px; line-height:1.75; }
.pinkmoon-boutique.single-product .woocommerce-tabs h2,.pinkmoon-boutique .related>h2 { font:400 32px/1.3 'Josefin Sans',sans-serif; letter-spacing:-.03em; color:#342b2c; }
.pinkmoon-boutique .wcpa_form_outer label { font-size:14px; color:#342b2c; }
.pinkmoon-boutique .wcpa_form_outer input,.pinkmoon-boutique .wcpa_form_outer textarea,.pinkmoon-boutique .wcpa_form_outer select { border:1px solid #d9cac4; border-radius:4px; min-height:46px; }
.pinkmoon-boutique .woocommerce table.shop_table { border:1px solid var(--pm-pale); border-radius:6px; overflow:hidden; font-size:15px; }
.pinkmoon-boutique .woocommerce table.shop_table th { background:var(--pm-ivory); color:var(--pm-muted); font-size:12px; letter-spacing:.04em; text-transform:none; padding:18px; }
.pinkmoon-boutique .woocommerce table.shop_table td { padding:20px 18px; border-color:var(--pm-pale); }
.pinkmoon-boutique .woocommerce-cart-form .product-thumbnail img { width:78px; border-radius:4px; }
.pinkmoon-boutique .woocommerce .cart-collaterals .cart_totals { background:var(--pm-ivory); padding:28px; border:1px solid var(--pm-pale); border-radius:6px; }
.pinkmoon-boutique .woocommerce .cart_totals h2 { font:400 30px/1.3 'Josefin Sans',sans-serif; }
.pm-estimate-note { font-size:13px; line-height:1.6; color:var(--pm-muted); }
.pinkmoon-boutique .woocommerce form input.input-text,.pinkmoon-boutique .woocommerce form select,.pinkmoon-boutique .woocommerce form textarea { min-height:46px; border:1px solid #d9cac4; border-radius:4px; background:white; padding:10px 12px; font-size:16px; }
.pinkmoon-boutique .woocommerce form label { color:#453a3a; font-size:14px; }
.pinkmoon-boutique .woocommerce-MyAccount-navigation { background:var(--pm-ivory); padding:20px; border:1px solid var(--pm-pale); border-radius:6px; }
.pinkmoon-boutique .woocommerce-MyAccount-navigation ul li a { color:var(--pm-muted); font-size:14px; padding:14px; }
.pinkmoon-boutique .woocommerce-MyAccount-navigation li.is-active a { background:var(--pm-mauve); color:white; border-radius:4px; }
.pm-account-intro h1 { font-size:36px; }
.pm-account-intro .pm-eyebrow { margin-bottom:12px; }
.pinkmoon-boutique .woocommerce-MyAccount-content { padding-left:28px; }
.pinkmoon-boutique .woocommerce-info,.pinkmoon-boutique .woocommerce-message,.pinkmoon-boutique .woocommerce-error { border-radius:4px; line-height:1.65; font-size:14px; }
.pinkmoon-boutique .woocommerce-info { background:#f8f1ec; color:#453a3a; border-color:var(--pm-blush); }
.pm-empty-bag { text-align:center; padding:25px 0; }
@media(max-width:1023px) {
 .pinkmoon-boutique.woocommerce #content-wrap,.pinkmoon-boutique.woocommerce-page #content-wrap { width:calc(100% - 48px)!important; max-width:calc(100vw - 48px)!important; }
 .pinkmoon-boutique ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 18px; }
 .pm-filter-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pm-filter-fields .button { grid-column:1/-1; }
 .pinkmoon-boutique.single-product div.product { gap:30px; }
}
@media(max-width:767px) {
 .pinkmoon-boutique.woocommerce #content-wrap,.pinkmoon-boutique.woocommerce-page #content-wrap { width:calc(100% - 32px)!important; max-width:calc(100vw - 32px)!important; padding-block:28px 45px; }
 .pm-catalog-hero h1,.pm-commerce-intro h1 { font-size:36px; }
 .pm-catalog-hero p:not(.pm-eyebrow),.pm-commerce-intro>p:not(.pm-eyebrow) { font-size:15px; }
 .pm-shop-filters { padding:18px; }
 .pm-shop-filters summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; color:var(--pm-mauve); font-size:15px; min-height:28px; }
 .pm-shop-filters[open] summary { margin-bottom:18px; }
 .pm-filter-fields { gap:14px; }
 .pinkmoon-boutique ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 14px; }
 .pinkmoon-boutique ul.products li.product .title h2,.pinkmoon-boutique ul.products li.product .woocommerce-loop-product__title { font-size:20px; }
 .pinkmoon-boutique ul.products li.product .category { font-size:10px; }
 .pinkmoon-boutique .pm-view-gift { font-size:12px!important; padding:10px 12px!important; gap:8px; }
 .pinkmoon-boutique.single-product div.product { display:block; }
 .pinkmoon-boutique.single-product .summary { padding-top:28px; }
 .pinkmoon-boutique.single-product .woocommerce-tabs,.pinkmoon-boutique.single-product .related { margin-top:35px; }
 .pinkmoon-boutique .woocommerce table.shop_table th,.pinkmoon-boutique .woocommerce table.shop_table td { padding:14px 10px; }
 .pinkmoon-boutique .woocommerce .cart-collaterals .cart_totals { padding:18px; }
 .pinkmoon-boutique .woocommerce-MyAccount-navigation { margin-bottom:25px; }
 .pinkmoon-boutique .woocommerce-MyAccount-content { padding:0; width:100%; }
 .pinkmoon-boutique .woocommerce-MyAccount-navigation { width:100%; float:none; }
 .pinkmoon-boutique .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:6px; }
 .pinkmoon-boutique .woocommerce-MyAccount-navigation ul li { border:0; }
 .pinkmoon-boutique .woocommerce-MyAccount-navigation ul li a { padding:10px; font-size:12px; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table { display:block; border:0; width:100%; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table thead { display:none; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table tbody { display:block; width:100%; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table tr { display:block; border:1px solid var(--pm-pale); border-radius:5px; margin-bottom:16px; padding:5px 12px; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table td { display:block!important; width:100%; padding:12px 0!important; text-align:right!important; white-space:normal; overflow-wrap:anywhere; font-size:14px; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table td::before { content:attr(data-title); display:block; float:left; max-width:40%; margin-right:12px; text-align:left; color:var(--pm-muted); font-size:12px; }
 .pinkmoon-boutique .woocommerce-MyAccount-content .woocommerce-orders-table td::after { content:""; display:block; clear:both; }
 .pinkmoon-boutique .woocommerce-ordering { float:none; margin:12px 0 22px; }
 .pinkmoon-boutique .woocommerce-result-count { float:none; }
}
