/*
Theme Name: Astra Child - MrudulArt
Theme URI: https://mrudulart.com
Description: Custom child theme for MrudulArt — Royal Violet design system, premium collection & product cards.
Author: MrudulArt
Template: astra
Version: 1.0.5
Text Domain: astra-child
*/

/* =========================================================
   1. DESIGN TOKENS
   Source of truth pulled from the MrudulArt design system.
   ========================================================= */
:root{
  /* Fonts */
  --font-serif-display:'Cormorant Garamond','Times New Roman',serif;
  --font-sans-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-script-accent:'Allura',cursive;

  /* Canvas */
  --color-bg:#FAF9F7;
  --color-bg-warm-deep:#F4F1F7;
  --color-card:#FFFFFF;
  --color-text:#171717;
  --color-text-secondary:#666666;
  --color-text-tertiary:#8C8C8C;
  --color-border:#ECE8F3;
  --color-border-strong:#D9D2E6;

  /* Brand — Royal Violet */
  --color-brand:#6C2BD9;
  --color-brand-secondary:#A855F7;
  --color-brand-soft:#E879F9;
  --color-brand-tint:#F3EDFD;
  --color-brand-deep:#4E1CA6;

  /* Actions */
  --color-cta:#6C2BD9;
  --color-cta-hover:#7C3AED;
  --color-cta-active:#4E1CA6;

  /* Semantic */
  --color-success:#3F7B55;
  --color-success-bg:#EDF4EF;
  --color-error:#C44536;
  --color-error-bg:#FBEDEB;
  --color-warning:#E6A700;
  --color-warning-bg:#FDF6E5;
  --color-rating:#E6A700;
  --color-whatsapp:#3F7B55;

  /* Ink ramp */
  --color-ink-900:#171717;
  --color-ink-700:#3A3A3A;
  --color-ink-500:#666666;
  --color-ink-300:#A6A6A6;
  --color-ink-100:#ECE8F3;

  /* Overlays */
  --color-overlay-scrim:rgba(30,25,50,0.55);
  --color-overlay-glass:rgba(252,252,253,0.72);
  --color-focus-ring:rgba(108,43,217,0.32);
  --shadow-color:rgba(40,30,70,0.10);

  /* Type scale */
  --text-display-1:5.5rem;
  --text-display-2:4rem;
  --text-h1:3rem;
  --text-h2:2.25rem;
  --text-h3:1.75rem;
  --text-h4:1.375rem;
  --text-body-lg:1.125rem;
  --text-body:1rem;
  --text-body-sm:0.875rem;
  --text-caption:0.75rem;
  --text-overline:0.75rem;
  --text-signature:3rem;
  --lh-display:1.08;
  --lh-heading:1.18;
  --lh-body:1.65;
  --lh-tight:1.3;
  --ls-tight:-0.01em;
  --ls-normal:0;
  --ls-wide:0.04em;
  --ls-overline:0.16em;
  --weight-regular:400;
  --weight-medium:500;
  --weight-semibold:600;

  /* Spacing */
  --space-1:4px;
  --space-2:8px;
  --space-3:16px;
  --space-4:24px;
  --space-5:32px;
  --space-6:40px;
  --space-7:48px;
  --space-8:64px;
  --space-9:80px;
  --space-10:96px;
  --space-11:120px;
  --space-12:160px;
  --container-max:1360px;
  --container-narrow:760px;
  --gutter:32px;
  --section-pad-y:96px;

  /* Radius */
  --radius-card:24px;
  --radius-image:20px;
  --radius-button:14px;
  --radius-input:16px;
  --radius-pill:999px;
  --radius-sm:8px;

  /* Shadow */
  --shadow-xs:0 1px 2px var(--shadow-color);
  --shadow-sm:0 2px 8px var(--shadow-color);
  --shadow-md:0 8px 24px var(--shadow-color);
  --shadow-lg:0 24px 64px -12px var(--shadow-color);
  --shadow-focus-ring:0 0 0 3px var(--color-focus-ring);

  --ease-luxury:cubic-bezier(.22,.61,.36,1);
  --duration-fast:180ms;
  --duration-base:320ms;
  --duration-slow:560ms;
}

/* =========================================================
   2. TYPE UTILITIES
   ========================================================= */
.font-display-1{font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-display-1);line-height:var(--lh-display);letter-spacing:var(--ls-tight)}
.font-display-2{font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-display-2);line-height:var(--lh-display);letter-spacing:var(--ls-tight)}
.font-h1{font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-h1);line-height:var(--lh-heading);letter-spacing:var(--ls-tight)}
.font-h2{font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-tight)}
.font-h3{font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-h3);line-height:var(--lh-heading)}
.font-h4{font-family:var(--font-serif-display);font-weight:var(--weight-semibold);font-size:var(--text-h4);line-height:var(--lh-heading)}
.font-body-lg{font-family:var(--font-sans-body);font-weight:var(--weight-regular);font-size:var(--text-body-lg);line-height:var(--lh-body)}
.font-body{font-family:var(--font-sans-body);font-weight:var(--weight-regular);font-size:var(--text-body);line-height:var(--lh-body)}
.font-body-sm{font-family:var(--font-sans-body);font-weight:var(--weight-regular);font-size:var(--text-body-sm);line-height:var(--lh-body)}
.font-caption{font-family:var(--font-sans-body);font-weight:var(--weight-medium);font-size:var(--text-caption);line-height:var(--lh-tight)}
.font-overline{font-family:var(--font-sans-body);font-weight:var(--weight-semibold);font-size:var(--text-overline);line-height:var(--lh-tight);letter-spacing:var(--ls-overline);text-transform:uppercase}
.font-signature{font-family:var(--font-script-accent);font-weight:var(--weight-regular);font-size:var(--text-signature);line-height:1}

/* =========================================================
   3. GLOBAL RESET / BASE
   ========================================================= */
body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans-body);-webkit-font-smoothing:antialiased}
a{transition:color var(--duration-fast) var(--ease-luxury)}
::selection{background:var(--color-brand-tint);color:var(--color-ink-900)}

/* Subtle artist-studio background texture behind main content:
   soft radial washes of brand tint + a faint paper-curl motif, pure CSS. */
body.woocommerce, body.home, .site-content{
  position:relative;
}
.mrudulart-bg-texture{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  background:
    radial-gradient(560px 420px at 8% 0%, rgba(108,43,217,0.06), transparent 60%),
    radial-gradient(640px 480px at 100% 20%, rgba(230,167,0,0.05), transparent 60%),
    radial-gradient(500px 500px at 50% 100%, rgba(168,85,247,0.05), transparent 60%);
}
.mrudulart-bg-texture::before,
.mrudulart-bg-texture::after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(108,43,217,0.08);
}
.mrudulart-bg-texture::before{ width:420px; height:420px; top:-140px; right:-120px; }
.mrudulart-bg-texture::after{ width:280px; height:280px; bottom:-100px; left:-80px; border-color:rgba(230,167,0,0.10); }

/* =========================================================
   4. BUTTONS (matches design system Button component)
   ========================================================= */
.mrudulart-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-sans-body);font-weight:var(--weight-semibold);font-size:var(--text-body);
  padding:0 32px;height:56px;border-radius:var(--radius-button);
  border:1px solid transparent;cursor:pointer;text-decoration:none;
  transition:transform var(--duration-fast) var(--ease-luxury),box-shadow var(--duration-fast) var(--ease-luxury),background var(--duration-fast) var(--ease-luxury);
  white-space:nowrap;
}
.mrudulart-btn-primary{background:var(--color-cta);color:#fff;box-shadow:var(--shadow-sm);}
.mrudulart-btn-primary:hover{background:var(--color-cta-hover);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md);}
.mrudulart-btn-primary:active{background:var(--color-cta-active);transform:translateY(0);}
.mrudulart-btn-secondary{background:#fff;color:var(--color-text);border-color:var(--color-border-strong);}
.mrudulart-btn-secondary:hover{border-color:var(--color-brand);color:var(--color-brand);transform:translateY(-2px);}

/* =========================================================
   5. COLLECTION CARD (homepage "Seven ways to bring art home")
   Reusable, future-proof — works for any number of categories.
   Markup contract:
   <a class="mrudulart-collection-card" href="...">
     <span class="mrudulart-collection-card__frame">
       <img class="mrudulart-collection-card__img" src="..." alt="...">
     </span>
     <h3 class="mrudulart-collection-card__title">Name</h3>
     <p class="mrudulart-collection-card__desc">Description</p>
     <span class="mrudulart-collection-card__cta">Explore collection <svg>...</svg></span>
   </a>
   ========================================================= */
.mrudulart-collections-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5);
}
.mrudulart-collection-card{
  display:block;text-decoration:none;color:inherit;
}
.mrudulart-collection-card__frame{
  position:relative;display:block;border-radius:var(--radius-image);overflow:hidden;
  aspect-ratio:4/5;margin-bottom:var(--space-4);background:var(--color-brand-tint);
  box-shadow:var(--shadow-xs);
}
.mrudulart-collection-card__frame::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(23,23,23,0) 55%,rgba(23,23,23,0.42) 100%);
  opacity:0;transition:opacity var(--duration-base) var(--ease-luxury);
}
.mrudulart-collection-card:hover .mrudulart-collection-card__frame::after{opacity:1;}
.mrudulart-collection-card__img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform var(--duration-slow) var(--ease-luxury);
}
.mrudulart-collection-card:hover .mrudulart-collection-card__img{transform:scale(1.06);}
.mrudulart-collection-card__count{
  position:absolute;top:14px;left:14px;background:rgba(255,255,255,0.92);backdrop-filter:blur(6px);
  color:var(--color-brand-deep);padding:4px 12px;border-radius:var(--radius-pill);
  font-family:var(--font-sans-body);font-weight:var(--weight-semibold);font-size:var(--text-caption);
}
.mrudulart-collection-card__title{
  font-family:var(--font-serif-display);font-weight:var(--weight-medium);font-size:var(--text-h3);
  line-height:var(--lh-heading);color:var(--color-text);margin:0 0 8px;
}
.mrudulart-collection-card__desc{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);line-height:var(--lh-body);
  color:var(--color-text-secondary);margin:0 0 12px;max-width:320px;
}
.mrudulart-collection-card__cta{
  font-family:var(--font-sans-body);font-weight:var(--weight-medium);font-size:var(--text-body-sm);
  color:var(--color-cta);display:inline-flex;align-items:center;gap:6px;
  transition:transform var(--duration-fast) var(--ease-luxury),color var(--duration-fast) var(--ease-luxury);
}
.mrudulart-collection-card__cta svg{transition:transform var(--duration-fast) var(--ease-luxury);}
.mrudulart-collection-card:hover .mrudulart-collection-card__cta{color:var(--color-cta-hover);}
.mrudulart-collection-card:hover .mrudulart-collection-card__cta svg{transform:translateX(4px);}

/* =========================================================
   6. PRODUCT CARD — applied SITE-WIDE via
   woocommerce/content-product.php override (shop, categories,
   related/upsell products, homepage best-sellers, search results).
   ========================================================= */
ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr)) !important;
  gap:var(--space-5) !important;
  margin:0 !important;
  list-style:none !important;
}
ul.products li.product{
  width:100% !important;margin:0 !important;padding:0 !important;float:none !important;
}
.mrudulart-product-card{
  position:relative;display:flex;flex-direction:column;font-family:var(--font-sans-body);
}
.mrudulart-product-card__media{
  position:relative;border-radius:var(--radius-image);overflow:hidden;
  aspect-ratio:4/5;margin-bottom:var(--space-3);background:var(--color-card);
  box-shadow:var(--shadow-xs);
}
.mrudulart-product-card__media img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform var(--duration-slow) var(--ease-luxury);
}
.mrudulart-product-card:hover .mrudulart-product-card__media img{transform:scale(1.06);}

.mrudulart-product-card__badge{
  position:absolute;top:14px;left:14px;z-index:2;background:#fff;color:var(--color-brand);
  padding:6px 12px;border-radius:var(--radius-pill);font-weight:var(--weight-medium);
  font-size:var(--text-caption);box-shadow:var(--shadow-xs);
}
.mrudulart-product-card__badge--sale{background:var(--color-brand);color:#fff;}
.mrudulart-product-card__badge--soldout{background:var(--color-ink-700);color:#fff;}

/* Out-of-stock originals: WooCommerce adds .outofstock to the <li> via
   wc_product_class() automatically — dim the image so "Sold Out" reads
   as unavailable at a glance, matching how one-of-a-kind pieces are
   conventionally shown once they're gone. */
li.outofstock .mrudulart-product-card__media img{filter:grayscale(60%);opacity:.75;}

.mrudulart-product-card__wish{
  position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,0.92);display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:background var(--duration-fast) var(--ease-luxury);
}
.mrudulart-product-card__wish:hover{background:#fff;}

.mrudulart-product-card__quick{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  background:rgba(255,255,255,0.94);backdrop-filter:blur(6px);
  padding:10px 14px;display:flex;justify-content:space-between;align-items:center;
  font-size:var(--text-caption);font-weight:var(--weight-medium);color:var(--color-text);
  text-decoration:none;
}
.mrudulart-product-card__quick .stars{color:var(--color-rating);letter-spacing:1px;}
/* Hover-reveal only on devices that actually support hover (mouse/trackpad).
   On touch devices a hover-only bar is unreachable and looks like a broken
   empty gap, so keep it permanently visible there instead — just compact. */
@media (hover:hover) and (pointer:fine){
  .mrudulart-product-card__quick{
    transform:translateY(100%);opacity:0;
    transition:transform var(--duration-base) var(--ease-luxury),opacity var(--duration-base) var(--ease-luxury);
  }
  .mrudulart-product-card:hover .mrudulart-product-card__quick{transform:translateY(0);opacity:1;}
}

.mrudulart-product-card__meta{
  color:var(--color-text-tertiary);font-size:var(--text-body-sm);margin-bottom:2px;
}
.mrudulart-product-card__title{
  font-family:var(--font-serif-display);font-weight:var(--weight-semibold);font-size:var(--text-h4);
  color:var(--color-text);margin:0 0 6px;line-height:var(--lh-heading);
}
.mrudulart-product-card__title a{color:inherit;text-decoration:none;}
.mrudulart-product-card__title a:hover{color:var(--color-brand);}
.mrudulart-product-card__row{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;
}
.mrudulart-product-card__price{
  font-family:var(--font-sans-body);font-weight:var(--weight-semibold);font-size:var(--text-body);
  color:var(--color-cta);
}
.mrudulart-product-card__price del{color:var(--color-text-tertiary);font-weight:var(--weight-regular);margin-right:6px;opacity:.7;}
.mrudulart-product-card__price ins{text-decoration:none;}
.mrudulart-product-card__cert{
  font-size:var(--text-caption);color:var(--color-text-tertiary);white-space:nowrap;
}
.mrudulart-product-card__cart{margin-top:var(--space-3);}
.mrudulart-product-card__cart a.button,
.mrudulart-product-card__cart a.add_to_cart_button{
  display:flex;align-items:center;justify-content:center;width:100%;
  height:44px;border-radius:var(--radius-button);background:var(--color-cta);
  color:#fff !important;font-family:var(--font-sans-body);font-weight:var(--weight-semibold);
  font-size:var(--text-body-sm);text-decoration:none;border:none;
  transition:background var(--duration-fast) var(--ease-luxury),transform var(--duration-fast) var(--ease-luxury);
}
.mrudulart-product-card__cart a.button:hover,
.mrudulart-product-card__cart a.add_to_cart_button:hover{
  background:var(--color-cta-hover);transform:translateY(-2px);
}
.mrudulart-product-card__cart a.added_to_cart{
  display:block;text-align:center;margin-top:8px;font-size:var(--text-caption);color:var(--color-success);
}

/* =========================================================
   7. SHOP ARCHIVE (shop page + category/tag pages)
   ========================================================= */
/* WooCommerce's own "Shop"/category title is replaced by mrudulart_shop_banner() */
.woocommerce-products-header{display:none;}

.mrudulart-shop-banner{
  padding:var(--space-9) 0 var(--space-6);
  border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);
}

.mrudulart-shop-chips{
  display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-5);
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
}
.mrudulart-shop-chips::-webkit-scrollbar{display:none;}
.mrudulart-shop-chip{
  flex:0 0 auto;white-space:nowrap;padding:10px 20px;border-radius:var(--radius-pill);
  border:1px solid var(--color-border-strong);background:#fff;color:var(--color-text);
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);font-weight:var(--weight-medium);
  text-decoration:none;transition:all var(--duration-fast) var(--ease-luxury);
}
.mrudulart-shop-chip:hover{border-color:var(--color-brand);color:var(--color-brand);}
.mrudulart-shop-chip.is-active{background:var(--color-brand);border-color:var(--color-brand);color:#fff;}

/* Breadcrumb */
nav.woocommerce-breadcrumb{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);color:var(--color-text-tertiary);
  padding-top:var(--space-5);
}
nav.woocommerce-breadcrumb a{color:var(--color-text-tertiary);}
nav.woocommerce-breadcrumb a:hover{color:var(--color-brand);}

/* Result count + sort dropdown row */
.woocommerce-result-count{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);color:var(--color-text-secondary);
}
.woocommerce-ordering select{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);border-radius:var(--radius-sm);
  border:1px solid var(--color-border-strong);padding:8px 12px;background:#fff;color:var(--color-text);
}

/* Pagination */
nav.woocommerce-pagination ul.page-numbers{gap:6px;}
nav.woocommerce-pagination .page-numbers li{margin:0 3px;}
nav.woocommerce-pagination .page-numbers li a,
nav.woocommerce-pagination .page-numbers li span{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);border-radius:50%;
  width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--color-border-strong);color:var(--color-text);
}
nav.woocommerce-pagination .page-numbers li a:hover{border-color:var(--color-brand);color:var(--color-brand);}
nav.woocommerce-pagination .page-numbers li span.current{background:var(--color-brand);border-color:var(--color-brand);color:#fff;}

/* =========================================================
   8. SINGLE PRODUCT PAGE
   ========================================================= */
.single-product .product_title{font-family:var(--font-serif-display);color:var(--color-text);}
.single-product p.price{color:var(--color-cta);font-family:var(--font-sans-body);font-weight:var(--weight-semibold);}
.single-product .price del{color:var(--color-text-tertiary);opacity:.7;}
.single-product nav.woocommerce-breadcrumb{padding-top:var(--space-5);margin-bottom:var(--space-5);}

.single-product div.product form.cart .button,
.single-product div.product .single_add_to_cart_button{
  background:var(--color-cta);border-radius:var(--radius-button);font-family:var(--font-sans-body);
  font-weight:var(--weight-semibold);border:none;padding:0 32px;height:52px;
  transition:background var(--duration-fast) var(--ease-luxury),transform var(--duration-fast) var(--ease-luxury);
}
.single-product div.product form.cart .button:hover,
.single-product div.product .single_add_to_cart_button:hover{
  background:var(--color-cta-hover);transform:translateY(-2px);
}

/* form.cart lays quantity+button out as flex items; without a full-width
   break the trust-badges block gets squeezed into the same row as a
   flex item, so its top border renders as a stray line next to the
   button instead of a full-width divider below it. */
.single-product form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:16px;}
.mrudulart-trust-badges{
  flex-basis:100%;width:100%;
  margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border);
  display:flex;flex-direction:column;gap:12px;
}
.mrudulart-trust-badge{
  display:flex;align-items:center;gap:10px;font-family:var(--font-sans-body);
  font-size:var(--text-body-sm);color:var(--color-text-secondary);
}
.mrudulart-trust-badge svg{color:var(--color-brand);flex-shrink:0;}

/* Quantity input + Add to cart, matched heights, same button system */
.single-product form.cart .quantity{margin:0;}
.single-product form.cart .quantity .qty{
  height:52px;width:70px;border-radius:var(--radius-button);
  border:1px solid var(--color-border-strong);text-align:center;
  font-family:var(--font-sans-body);font-size:var(--text-body);color:var(--color-text);
}
.single-product form.cart .quantity .qty:focus{border-color:var(--color-brand);outline:none;}

/* Handmade / lead-time disclaimer, single product page */
.mrudulart-handmade-note{
  font-family:var(--font-sans-body);font-size:var(--text-body-sm);line-height:var(--lh-body);
  color:var(--color-text-secondary);background:var(--color-brand-tint);
  border-radius:var(--radius-sm);padding:12px 16px;margin:var(--space-4) 0;max-width:520px;
}

/* Quantity stepper (−/+), progressively added by product-card.js.
   Turns the input into the middle segment of a single pill-shaped control. */
.quantity.mrudulart-qty-enhanced{
  display:inline-flex;align-items:stretch;border-radius:var(--radius-button);
  border:1px solid var(--color-border-strong);overflow:hidden;width:auto;
}
.quantity.mrudulart-qty-enhanced .qty{
  height:52px;width:52px;border:none;border-radius:0;text-align:center;
  font-family:var(--font-sans-body);font-size:var(--text-body);color:var(--color-text);
  -moz-appearance:textfield;
}
.quantity.mrudulart-qty-enhanced .qty::-webkit-inner-spin-button,
.quantity.mrudulart-qty-enhanced .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
.mrudulart-qty-btn{
  width:40px;height:52px;border:none;background:var(--color-brand-tint);color:var(--color-brand);
  font-size:18px;line-height:1;cursor:pointer;transition:background var(--duration-fast) var(--ease-luxury);
}
.mrudulart-qty-btn:hover{background:var(--color-border);}

/* Product gallery — give the flat placeholder box the same rounded/shadow
   treatment as every card elsewhere on the site, so it doesn't look like
   an unstyled default WooCommerce block. */
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image--placeholder{
  border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-sm);
}
.single-product .woocommerce-product-gallery__image--placeholder{background:var(--color-card);}

/* Category tag as a small pill instead of plain inline text */
.single-product .product_meta{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border);}
.single-product .product_meta .posted_in{
  font-family:var(--font-sans-body);font-size:var(--text-caption);color:var(--color-text-tertiary);
}
.single-product .product_meta .posted_in a{
  display:inline-block;background:var(--color-brand-tint);color:var(--color-brand);
  padding:4px 12px;border-radius:var(--radius-pill);font-weight:var(--weight-medium);
  text-decoration:none;margin-left:4px;
}
.single-product .product_meta .posted_in a:hover{background:var(--color-brand);color:#fff;}

.single-product .woocommerce-tabs ul.tabs li a{
  font-family:var(--font-sans-body);font-weight:var(--weight-medium);color:var(--color-text-secondary);
}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--color-brand);}
.single-product .woocommerce-tabs ul.tabs li.active{border-color:var(--color-brand);}
.single-product .related.products > h2{
  font-family:var(--font-serif-display);font-weight:var(--weight-medium);color:var(--color-text);
}
.single-product .woocommerce-product-details__short-description{
  font-family:var(--font-sans-body);color:var(--color-text-secondary);line-height:var(--lh-body);
  margin:var(--space-4) 0;
}

/* Quick View modal (lightweight, no extra plugin) */
.mrudulart-quickview-overlay{
  position:fixed;inset:0;background:rgba(23,23,23,0.55);z-index:99998;
  display:flex;align-items:center;justify-content:center;padding:24px;
  opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-luxury);
}
.mrudulart-quickview-overlay.is-open{opacity:1;pointer-events:auto;}
.mrudulart-quickview-modal{
  background:#fff;border-radius:var(--radius-card);max-width:920px;width:100%;max-height:86vh;overflow:auto;
  box-shadow:var(--shadow-lg);padding:var(--space-6);position:relative;
  transform:translateY(16px);transition:transform var(--duration-base) var(--ease-luxury);
}
.mrudulart-quickview-overlay.is-open .mrudulart-quickview-modal{transform:translateY(0);}
.mrudulart-quickview-close{
  position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;
  border:1px solid var(--color-border);background:#fff;cursor:pointer;font-size:18px;line-height:1;color:var(--color-text-secondary);
}

/* Responsive */
@media (max-width:768px){
  :root{ --section-pad-y:56px; }
  .mrudulart-btn{padding:0 24px;height:48px;}
  /* "Why choose handmade" tiles: 6-in-a-row only fits a wide desktop viewport;
     drop to 3 per row on tablet before it gets cramped. */
  .mrudulart-features-grid{grid-template-columns:repeat(3,1fr) !important;}
}

/* Compact mobile card layout — 2 per row (not 1 full-width, not overflowing).
   Tighter gaps, smaller type, shorter media, so a phone shows more of the
   grid at a glance instead of one oversized card at a time. */
@media (max-width:600px){
  .mrudulart-collections-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3);}
  .mrudulart-collection-card__frame{margin-bottom:10px;}
  .mrudulart-collection-card__title{font-size:var(--text-body);margin:0 0 4px;}
  .mrudulart-collection-card__desc{display:none;} /* saves the most vertical space; card still links via title/CTA */
  .mrudulart-collection-card__cta{font-size:var(--text-caption);}

  ul.products{grid-template-columns:repeat(2,1fr) !important;gap:var(--space-3) !important;}
  .mrudulart-product-card__media{aspect-ratio:1/1;margin-bottom:8px;}
  .mrudulart-product-card__badge{top:8px;left:8px;padding:4px 9px;font-size:10px;}
  .mrudulart-product-card__wish{top:8px;right:8px;width:28px;height:28px;}
  .mrudulart-product-card__wish svg{width:13px;height:13px;}
  .mrudulart-product-card__quick{padding:6px 10px;font-size:10px;}
  .mrudulart-product-card__meta{font-size:11px;margin-bottom:1px;}
  .mrudulart-product-card__title{font-size:15px;margin:0 0 4px;}
  .mrudulart-product-card__price{font-size:14px;}
  .mrudulart-product-card__cert{display:none;} /* redundant on a 2-up compact card; still shown on single product page */
  .mrudulart-product-card__cart{margin-top:8px;}
  .mrudulart-product-card__cart a.button,
  .mrudulart-product-card__cart a.add_to_cart_button{height:38px;font-size:12.5px;}

  .mrudulart-features-grid{grid-template-columns:repeat(2,1fr) !important;gap:12px !important;}
  .mrudulart-features-grid__item{padding:18px 16px !important;border-radius:16px !important;}
  .mrudulart-features-grid__item h4{font-size:15px !important;margin:0 0 4px !important;}
  .mrudulart-features-grid__item p{font-size:12.5px !important;line-height:1.45 !important;}
  .mrudulart-features-grid__item > div:first-child{width:36px !important;height:36px !important;margin-bottom:10px !important;}
  .mrudulart-features-grid__item svg{width:16px !important;height:16px !important;}
}
@media (max-width:480px){
  .mrudulart-collection-card__desc{max-width:none;}
}
