/*
Theme Name: Petal Page Digital Market
Theme URI: https://example.com/petal-page-digital-market
Author: Soulneek
Description: Soft boutique WordPress/WooCommerce theme for HTML digital planners, templates, printables, and downloads. Inspired by marketplace-style shopping layouts without copying any protected marketplace design.
Version: 1.2.4
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: petal-page-digital-market
*/
:root{--pink:#F7D6E0;--pink-deep:#E8A9BE;--pink-soft:#FBEAF0;--offwhite:#FBF9F7;--cream:#FDFCFB;--gray:#EDEAE8;--gray-mid:#D8D2CE;--ink:#524A52;--ink-soft:#8A8088;--gold:#E6C9A8;--green:#6f9a66;--sale:#c0566f;--blue:#2457d6;--radius:18px;--radius-sm:12px;--shadow:0 8px 30px rgba(180,140,160,.12);--shadow-soft:0 4px 16px rgba(180,140,160,.10);--shadow-hover:0 16px 44px rgba(180,140,160,.22);--display:Georgia,'Times New Roman',serif;--body:'Nunito Sans',Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--maxw:1240px;--t:.32s cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}body{margin:0;font-family:var(--body);font-size:17px;line-height:1.7;color:var(--ink);background:var(--offwhite);background-image:radial-gradient(ellipse 80% 50% at 50% -10%,var(--pink-soft),transparent 70%),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(247,214,224,.25),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--display);font-weight:500;color:var(--ink);line-height:1.18;letter-spacing:-.01em}a{color:var(--pink-deep);text-decoration:none;transition:color var(--t)}a:hover{color:var(--ink)}img{max-width:100%;height:auto;display:block}.ppdm-container,.ppdm-wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.ppdm-btn,.button,.add_to_cart_button,.single_add_to_cart_button,.checkout-button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;font-family:var(--body)!important;font-weight:800!important;font-size:.95rem!important;padding:14px 30px!important;border:none!important;border-radius:999px!important;background:var(--pink-deep)!important;color:#fff!important;cursor:pointer;transition:transform var(--t),box-shadow var(--t),background var(--t)!important;box-shadow:0 6px 18px rgba(232,169,190,.4)!important;line-height:1!important}.ppdm-btn:hover,.button:hover,.add_to_cart_button:hover,.single_add_to_cart_button:hover,.checkout-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(232,169,190,.55)!important;background:#d995ad!important;color:#fff!important}.ppdm-btn--ghost{background:transparent!important;color:var(--pink-deep)!important;border:1.5px solid var(--pink)!important;box-shadow:none!important}.ppdm-btn--dark{background:var(--ink)!important;box-shadow:none!important}.ppdm-btn--dark:hover{background:#3f3840!important}
/* Header */
.ppdm-demo-banner{background:var(--ink);color:#fff;text-align:center;padding:8px 16px;font-size:.85rem;letter-spacing:.02em}.ppdm-demo-banner strong{color:var(--pink)}.ppdm-header{position:sticky;top:0;z-index:100;background:rgba(251,249,247,.88);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--gray)}.ppdm-header__inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 24px;max-width:var(--maxw);margin:0 auto}.ppdm-logo{font-family:var(--display);font-size:1.9rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;white-space:nowrap}.ppdm-logo span{color:var(--pink-deep);font-style:italic}.ppdm-cats-link{font-weight:800;color:var(--ink);white-space:nowrap}.ppdm-search{flex:1;display:flex;border:1.8px solid var(--ink);border-radius:999px;overflow:hidden;background:white;max-width:620px}.ppdm-search input{width:100%;border:0;padding:13px 18px;font-size:16px;outline:0;background:transparent;color:var(--ink)}.ppdm-search button{width:54px;border:0;background:var(--pink-deep);color:#fff;font-size:22px;cursor:pointer}.ppdm-nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0}.ppdm-nav a{color:var(--ink);font-weight:700;font-size:.98rem;position:relative;padding:4px 0}.ppdm-nav a:after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--pink-deep);border-radius:2px;transition:width var(--t)}.ppdm-nav a:hover:after{width:100%}.ppdm-icons{display:flex;align-items:center;gap:16px}.ppdm-icon-btn{position:relative;color:var(--ink);display:inline-flex;align-items:center;font-size:24px}.ppdm-icon-btn:hover{color:var(--pink-deep)}.ppdm-badge-count{position:absolute;top:-8px;right:-10px;background:var(--pink-deep);color:#fff;font-size:.68rem;font-weight:800;min-width:18px;height:18px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 5px}
/* Hero */
.ppdm-hero{position:relative;padding:clamp(50px,8vw,100px) 0 clamp(40px,6vw,70px);overflow:hidden}.ppdm-hero__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.ppdm-eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:800;color:var(--pink-deep);background:var(--pink-soft);padding:7px 16px;border-radius:999px;margin-bottom:22px}.ppdm-hero h1{font-size:clamp(2.2rem,5vw,3.8rem);margin:0 0 .4em}.ppdm-hero h1 em{color:var(--pink-deep);font-style:italic}.ppdm-hero__lead{font-size:1.18rem;color:var(--ink-soft);max-width:42ch;margin-bottom:32px}.ppdm-hero__cta{display:flex;gap:14px;flex-wrap:wrap}.ppdm-hero__visual{position:relative;aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:linear-gradient(135deg,var(--pink-soft),#fff)}.ppdm-hero__mock{position:absolute;inset:10%;border-radius:28px;background:#fff;box-shadow:var(--shadow);padding:28px;border:2px solid var(--pink)}.ppdm-mock-title{font-family:var(--display);font-size:clamp(2rem,4vw,3.2rem);text-align:center;margin:18px 0 8px;color:var(--ink)}.ppdm-mock-sub{text-align:center;letter-spacing:.24em;font-size:.78rem;font-weight:800;color:var(--ink-soft);margin-bottom:22px}.ppdm-mock-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ppdm-mock-card{background:var(--pink-soft);border-radius:16px;padding:14px;min-height:120px}.ppdm-mock-line{height:8px;background:var(--gray);border-radius:999px;margin:10px 0}.ppdm-blob{position:absolute;border-radius:50%;filter:blur(40px);opacity:.5;z-index:-1}.ppdm-blob--1{width:280px;height:280px;background:var(--pink);top:-60px;right:-40px}.ppdm-blob--2{width:220px;height:220px;background:var(--gold);bottom:-50px;left:-30px;opacity:.35}
/* Sections */
.ppdm-section{padding:clamp(40px,6vw,70px) 0}.ppdm-section--tight{padding-top:0}.ppdm-section__head{text-align:center;max-width:680px;margin:0 auto 40px}.ppdm-section__head h2{font-size:clamp(1.7rem,3.5vw,2.6rem);margin:6px 0 0}.ppdm-section__head p{color:var(--ink-soft);margin-top:8px}.ppdm-cats{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:36px}.ppdm-cat-pill{background:var(--cream);border:1.5px solid var(--gray);color:var(--ink);padding:9px 22px;border-radius:999px;font-weight:700;font-size:.9rem;transition:all var(--t)}.ppdm-cat-pill:hover,.ppdm-cat-pill.is-active{background:var(--pink);border-color:var(--pink);color:var(--ink)}.ppdm-trust{background:var(--pink-soft);border-radius:var(--radius);padding:36px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}.ppdm-trust__item .ico{font-size:1.8rem;margin-bottom:8px;display:block}.ppdm-trust__item h4{font-size:1.05rem;margin:0 0 4px}.ppdm-trust__item p{font-size:.9rem;color:var(--ink-soft);margin:0}.ppdm-newsletter{background:linear-gradient(135deg,var(--pink) 0%,var(--pink-soft) 100%);border-radius:var(--radius);padding:clamp(40px,6vw,64px);text-align:center}.ppdm-newsletter p{color:var(--ink-soft);max-width:44ch;margin:6px auto 28px}.ppdm-newsletter form{display:flex;gap:12px;max-width:520px;margin:0 auto;flex-wrap:wrap;justify-content:center}.ppdm-newsletter input{flex:1;min-width:220px;padding:14px 20px;border-radius:999px;border:1.5px solid rgba(255,255,255,.7);background:rgba(255,255,255,.85);font-family:var(--body);font-size:.98rem;color:var(--ink)}
/* WooCommerce cards */
.woocommerce ul.products,.products,.ppdm-products{list-style:none!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important;gap:28px!important;margin:0!important;padding:0!important}.woocommerce ul.products li.product,.ppdm-card{position:relative!important;width:auto!important;margin:0!important;background:var(--cream)!important;border-radius:var(--radius)!important;overflow:hidden!important;box-shadow:var(--shadow-soft)!important;transition:transform var(--t),box-shadow var(--t)!important;border:1px solid rgba(237,234,232,.8)!important;display:flex!important;flex-direction:column!important}.woocommerce ul.products li.product:hover,.ppdm-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover)!important}.woocommerce ul.products li.product a img{width:100%!important;aspect-ratio:1/1!important;object-fit:cover!important;margin:0!important;background:var(--pink-soft)!important;transition:transform .6s cubic-bezier(.22,.61,.36,1)!important}.woocommerce ul.products li.product:hover a img{transform:scale(1.06)}.woocommerce-loop-product__title{font-family:var(--display)!important;font-size:1.12rem!important;font-weight:600!important;line-height:1.3!important;color:var(--ink)!important;padding:16px 20px 0!important;margin:0 0 4px!important}.woocommerce ul.products li.product .price{display:block!important;font-family:var(--display)!important;font-size:1.3rem!important;font-weight:700!important;color:var(--pink-deep)!important;padding:0 20px!important;margin:8px 0 14px!important}.woocommerce ul.products li.product .price del{color:var(--ink-soft)!important;font-size:.85rem!important;font-family:var(--body)!important;margin-left:6px!important;font-weight:400!important}.woocommerce ul.products li.product .button{margin:0 20px 20px!important;width:calc(100% - 40px)!important}.ppdm-product-dl{color:var(--ink-soft);font-size:.86rem;padding:0 20px 8px}.ppdm-product-dl:before{content:'⬇ ';}.onsale,.ppdm-bestseller{position:absolute!important;top:12px!important;left:12px!important;z-index:3!important;font-size:.7rem!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important;padding:7px 12px!important;border-radius:999px!important;color:#fff!important;background:var(--pink-deep)!important;line-height:1!important;min-height:0!important;min-width:0!important}.ppdm-heart{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;background:rgba(251,249,247,.94);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;box-shadow:var(--shadow-soft);transition:transform var(--t),color var(--t);color:var(--ink-soft);font-size:19px}.ppdm-heart:hover{transform:scale(1.12);color:var(--pink-deep)}.ppdm-heart.is-active{color:var(--pink-deep)}
/* Shop and related */
.ppdm-breadcrumbs,.woocommerce-breadcrumb{padding:18px 0 4px!important;font-size:.9rem!important;color:var(--ink-soft)!important}.ppdm-breadcrumbs a,.woocommerce-breadcrumb a{color:var(--ink)!important;text-decoration:underline!important;text-underline-offset:2px}.ppdm-related-searches{margin:55px auto 0}.ppdm-rs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.ppdm-rs-tile{display:flex;align-items:center;gap:14px;border:1px solid var(--gray);border-radius:var(--radius);padding:12px 14px;background:var(--cream);transition:box-shadow .2s,transform .2s;color:var(--ink)}.ppdm-rs-tile:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.ppdm-rs-thumb{flex:0 0 56px;width:56px;height:56px;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,var(--pink-soft),var(--pink))}.ppdm-rs-label{font-weight:800;color:var(--ink);font-size:.98rem;line-height:1.25}
/* Product page */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr);gap:48px;padding:28px 0 10px}.woocommerce div.product div.images{width:100%!important;margin:0!important}.woocommerce div.product div.summary{width:100%!important;float:none!important;margin:0!important;position:sticky;top:115px;align-self:start}.woocommerce div.product div.images img{border-radius:var(--radius);box-shadow:var(--shadow);background:var(--pink-soft)}.product_title{font-size:clamp(1.6rem,3vw,2.3rem)!important;margin:0 0 12px!important}.woocommerce div.product p.price,.woocommerce div.product span.price{font-family:var(--display)!important;font-size:2rem!important;color:var(--pink-deep)!important;margin-bottom:6px!important}.woocommerce div.product p.price del{color:var(--ink-soft)!important;font-size:1.1rem!important;font-family:var(--body)!important;margin-left:10px}.ppdm-pdp-views{color:var(--sale);font-weight:800;font-size:.92rem;margin-bottom:8px}.ppdm-pdp-seller{display:flex;align-items:center;gap:8px;margin-bottom:18px;font-size:.95rem;font-weight:800}.ppdm-stars{color:#E6B400;letter-spacing:1px}.ppdm-highlight-list{display:grid;gap:9px;margin:22px 0;color:#3e3650}.ppdm-highlight-list span:before{content:'✓';color:var(--blue);font-weight:900;margin-right:9px}.woocommerce div.product form.cart{display:grid;gap:12px;margin-bottom:8px!important}.quantity .qty{border:1.5px solid var(--gray);border-radius:999px;padding:12px;min-height:45px}.woocommerce-tabs{grid-column:1/-1;margin-top:30px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 20px!important}.woocommerce div.product .woocommerce-tabs ul.tabs:before{display:none!important}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:999px!important;background:var(--cream)!important;border:1px solid var(--gray)!important;margin:0 8px 8px 0!important}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--pink)!important;border-color:var(--pink)!important}.woocommerce div.product .woocommerce-tabs .panel{background:#fff;border:1px solid var(--gray);border-radius:var(--radius);padding:24px!important}.related.products,.upsells.products{grid-column:1/-1}.related.products h2,.upsells.products h2{font-size:1.6rem}.ppdm-floating-cart{position:fixed;bottom:18px;right:18px;z-index:9000;display:flex;align-items:center;gap:14px;background:var(--cream);border-radius:16px;padding:12px 14px;box-shadow:0 12px 40px rgba(82,74,82,.25);max-width:440px;animation:ppdm-slideup .5s cubic-bezier(.22,.61,.36,1)}@keyframes ppdm-slideup{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.ppdm-floating-heart{background:var(--sale);color:#fff;width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center}.ppdm-floating-text strong{font-size:.95rem;display:block}.ppdm-floating-views{font-size:.82rem;color:var(--sale);font-weight:800}.ppdm-floating-btn{background:var(--ink);color:#fff!important;padding:12px 18px;border-radius:999px;font-weight:800;font-size:.9rem;white-space:nowrap}.ppdm-floating-close{background:none;border:none;font-size:1.4rem;color:var(--ink-soft);cursor:pointer}
/* Reviews */
.ppdm-review-summary{grid-column:1/-1;margin:40px 0 30px;border-top:1px solid var(--gray);padding-top:36px}.ppdm-review-summary h2{font-size:1.6rem;margin-bottom:14px}.ppdm-highlights{font-size:.95rem;margin-bottom:22px}.ppdm-scores{display:flex;align-items:center;gap:36px;flex-wrap:wrap;margin-bottom:24px}.ppdm-avg{display:flex;align-items:center;gap:8px}.ppdm-avg-num{font-size:2.6rem;font-weight:300;line-height:1}.ppdm-avg-star{color:#E6B400;font-size:1.6rem}.ppdm-dims{display:flex;gap:28px;flex-wrap:wrap}.ppdm-dim{display:flex;align-items:center;gap:10px}.ppdm-dim-circle{width:52px;height:52px;border-radius:50%;border:2.5px solid #E6B400;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem}.ppdm-dim-label{font-size:.85rem;max-width:90px;line-height:1.25}.ppdm-review-pills{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 4px}.ppdm-rpill{background:var(--cream);border:1.5px solid var(--gray);border-radius:999px;padding:8px 18px;font-size:.88rem;font-weight:700;color:var(--ink)}
/* Footer */
.ppdm-footer{background:var(--ink);color:#e9e4e7;margin-top:70px;padding:56px 0 28px}.ppdm-footer a{color:#d7c4cc}.ppdm-footer a:hover{color:#fff}.ppdm-footer__grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:40px;margin-bottom:40px}.ppdm-footer h4{color:#fff;font-size:1.05rem;margin-bottom:16px}.ppdm-footer ul{list-style:none;padding:0;margin:0}.ppdm-footer li{margin-bottom:10px;font-size:.92rem}.ppdm-footer .ppdm-logo{color:#fff}.ppdm-footer p{color:#b9aeb4;font-size:.92rem;max-width:34ch;margin-top:10px}.ppdm-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:24px;text-align:center;font-size:.84rem;color:#b9aeb4}.ppdm-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--ink);color:#fff;padding:14px 26px;border-radius:999px;font-weight:700;z-index:10000;opacity:0;transition:all .35s;box-shadow:0 10px 30px rgba(0,0,0,.25)}.ppdm-toast.is-show{transform:translateX(-50%) translateY(0);opacity:1}
@media(max-width:980px){.ppdm-hero__inner,.woocommerce div.product{grid-template-columns:1fr}.ppdm-hero__visual{max-width:460px;margin:0 auto;width:100%}.ppdm-trust{grid-template-columns:repeat(2,1fr)}.ppdm-footer__grid{grid-template-columns:1fr 1fr}.woocommerce div.product div.summary{position:static}.ppdm-nav{display:none}.ppdm-header__inner{flex-wrap:wrap}.ppdm-search{order:3;flex-basis:100%;max-width:none}.ppdm-floating-cart{left:12px;right:12px;max-width:none}}
@media(max-width:680px){.woocommerce ul.products,.products,.ppdm-products{grid-template-columns:repeat(2,1fr)!important;gap:16px!important}.ppdm-trust{grid-template-columns:1fr}.ppdm-footer__grid{grid-template-columns:1fr}.ppdm-logo{font-size:1.55rem}.ppdm-cats-link{display:none}.ppdm-floating-cart{display:none}.ppdm-rs-grid{grid-template-columns:1fr}}
@media(max-width:480px){body{font-size:16px}.woocommerce ul.products,.products,.ppdm-products{grid-template-columns:1fr!important}.ppdm-hero__mock{inset:5%;padding:16px}.ppdm-icons{gap:10px}.ppdm-icon-btn{font-size:21px}}


/* === v1.1.1 FIX: stop product summary from overlapping reviews/tabs while scrolling === */
@media (min-width:981px){
  .woocommerce div.product{
    display:grid !important;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
    align-items:start !important;
  }

  .woocommerce div.product div.summary{
    position:static !important;
    top:auto !important;
    align-self:start !important;
    z-index:1 !important;
  }

  .woocommerce-tabs,
  .ppdm-review-summary,
  .related.products,
  .upsells.products{
    grid-column:1 / -1 !important;
    clear:both !important;
    position:relative !important;
    z-index:2 !important;
  }
}

/* Keeps long product titles/prices from visually spilling into nearby sections */
.woocommerce div.product div.summary,
.woocommerce div.product div.summary *{
  max-width:100%;
  overflow-wrap:break-word;
}


/* === v1.1.2 CLEANUP: remove social proof and floating popup on product pages === */
.single-product .ppdm-pdp-views,
.single-product .ppmw-social-proof,
.single-product .ppdm-floating-cart,
.single-product .ppmw-popup{
  display:none !important;
}


/* === v1.2.0 ETSY-STYLE UPDATE: skinny banner, homepage cards, product gallery layout === */

/* Skinny promo banner area */
.ppdm-skinny-banner{
  background:#2f213d;
  color:#fff;
  border-radius:16px;
  overflow:hidden;
  max-width:var(--maxw);
  margin:28px auto 38px;
  min-height:124px;
  display:grid;
  grid-template-columns:minmax(280px,.95fr) 1.6fr;
  box-shadow:var(--shadow-soft);
}
.ppdm-skinny-banner__copy{
  padding:28px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ppdm-skinny-banner__copy h2{
  color:#fff;
  font-size:clamp(1.55rem,3vw,2.4rem);
  margin:0 0 18px;
  letter-spacing:-.02em;
}
.ppdm-skinny-banner__copy .ppdm-btn{
  width:max-content;
  background:#fff !important;
  color:#2f213d !important;
  box-shadow:none !important;
  min-width:170px;
}
.ppdm-skinny-banner__art{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  min-height:124px;
}
.ppdm-skinny-banner__tile{
  min-height:124px;
  background:
    radial-gradient(circle at 25% 25%, rgba(255,255,255,.35), transparent 24%),
    linear-gradient(135deg, var(--pink-soft), var(--gold));
  border-left:1px solid rgba(255,255,255,.15);
}
.ppdm-skinny-banner__tile:nth-child(2){
  background:
    radial-gradient(circle at 70% 35%, rgba(255,255,255,.42), transparent 22%),
    linear-gradient(135deg, #ead7c6, #cfc8b8);
}
.ppdm-skinny-banner__tile:nth-child(3){
  background:
    radial-gradient(circle at 40% 70%, rgba(255,255,255,.32), transparent 22%),
    linear-gradient(135deg, #cfded9, #f2b66f);
}

/* Homepage product rows closer to Etsy proportions */
.home .woocommerce ul.products,
.home .products,
.ppdm-home-row .woocommerce ul.products,
.ppdm-home-row .products{
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr)) !important;
  gap:18px !important;
}
.home .woocommerce ul.products li.product,
.ppdm-home-row .woocommerce ul.products li.product{
  border-radius:12px !important;
  box-shadow:none !important;
  border:1px solid var(--gray) !important;
}
.home .woocommerce ul.products li.product a img,
.ppdm-home-row .woocommerce ul.products li.product a img{
  aspect-ratio:1 / 1 !important;
  border-radius:12px 12px 0 0 !important;
}
.home .woocommerce-loop-product__title,
.ppdm-home-row .woocommerce-loop-product__title{
  font-family:var(--body) !important;
  font-size:.96rem !important;
  font-weight:600 !important;
  padding:10px 12px 0 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.home .woocommerce ul.products li.product .price,
.ppdm-home-row .woocommerce ul.products li.product .price{
  font-family:var(--body) !important;
  font-size:1.05rem !important;
  font-weight:800 !important;
  padding:0 12px !important;
  margin:6px 0 10px !important;
}
.home .ppdm-product-dl,
.ppdm-home-row .ppdm-product-dl{
  font-size:.82rem;
  padding:0 12px;
}
.home .woocommerce ul.products li.product .button,
.ppdm-home-row .woocommerce ul.products li.product .button{
  display:none !important;
}

/* Product page gallery: thumbnails on left, large image center, arrow buttons like marketplace pages */
.single-product .woocommerce div.product{
  grid-template-columns:minmax(0,1.62fr) minmax(360px,.78fr) !important;
  gap:42px !important;
}
.single-product .woocommerce div.product div.images{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs{
  grid-column:1 !important;
  grid-row:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
  max-height:760px !important;
  overflow-y:auto !important;
  scrollbar-width:thin;
  order:0 !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs li{
  width:66px !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs img{
  width:66px !important;
  height:66px !important;
  object-fit:cover !important;
  border-radius:10px !important;
  border:2px solid transparent !important;
  box-shadow:none !important;
  opacity:1 !important;
  background:var(--pink-soft) !important;
  cursor:pointer !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.single-product .woocommerce div.product div.images .flex-control-thumbs img:hover{
  border-color:var(--ink) !important;
}
.single-product .woocommerce-product-gallery__wrapper{
  grid-column:2 !important;
  grid-row:1 !important;
  margin:0 !important;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image{
  border-radius:12px !important;
  overflow:hidden !important;
  background:var(--pink-soft) !important;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

/* Gallery arrows */
.ppdm-gallery-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:52px;
  height:52px;
  border-radius:50%;
  border:0;
  background:#fff;
  color:var(--ink);
  box-shadow:0 8px 26px rgba(0,0,0,.16);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  z-index:22;
}
.ppdm-gallery-arrow:hover{
  background:var(--pink-soft);
}
.ppdm-gallery-arrow--prev{left:94px;}
.ppdm-gallery-arrow--next{right:18px;}

/* Heart button near top-right of product image */
.single-product .woocommerce div.product div.images .ppdm-heart{
  position:absolute !important;
  top:26px !important;
  right:26px !important;
  z-index:25 !important;
  width:52px !important;
  height:52px !important;
  font-size:28px !important;
  color:#c7193b !important;
  background:#fff !important;
  box-shadow:0 8px 26px rgba(0,0,0,.13) !important;
}

/* Product page item details/highlights area */
.ppdm-etsy-details{
  margin-top:34px;
  border-top:1px solid var(--gray);
  padding-top:24px;
}
.ppdm-etsy-details summary{
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:800;
  font-size:1.12rem;
  cursor:pointer;
  margin-bottom:22px;
}
.ppdm-etsy-details summary::-webkit-details-marker{display:none;}
.ppdm-etsy-details summary:after{
  content:'⌃';
  font-size:24px;
  color:var(--ink);
}
.ppdm-etsy-details[open] summary:after{content:'⌄';}
.ppdm-etsy-details h3{
  font-family:var(--body);
  font-size:1.02rem;
  font-weight:800;
  margin:0 0 10px;
}
.ppdm-etsy-detail-list{
  display:grid;
  gap:14px;
  margin:0;
  padding:0;
  list-style:none;
}
.ppdm-etsy-detail-list li{
  display:grid;
  grid-template-columns:26px 1fr;
  gap:12px;
  align-items:start;
  line-height:1.35;
  color:#20192b;
}
.ppdm-etsy-detail-list .ico{
  font-size:21px;
  line-height:1;
  color:var(--ink);
}
.ppdm-etsy-detail-list strong{
  font-weight:800;
}

/* Reduce theme's old highlight list so details area feels like the Etsy-style source */
.single-product .ppdm-highlight-list{
  display:none !important;
}

/* Mobile product page */
@media(max-width:980px){
  .ppdm-skinny-banner{
    grid-template-columns:1fr;
    margin:20px 18px 30px;
  }
  .ppdm-skinny-banner__art{
    min-height:110px;
  }
  .single-product .woocommerce div.product{
    grid-template-columns:1fr !important;
  }
  .single-product .woocommerce div.product div.images{
    grid-template-columns:1fr !important;
  }
  .single-product .woocommerce div.product div.images .flex-control-thumbs{
    grid-column:1 !important;
    grid-row:2 !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    max-height:none !important;
    padding-bottom:6px !important;
  }
  .single-product .woocommerce-product-gallery__wrapper{
    grid-column:1 !important;
  }
  .ppdm-gallery-arrow--prev{left:18px;}
  .ppdm-gallery-arrow--next{right:18px;}
}
@media(max-width:680px){
  .ppdm-skinny-banner__copy{
    padding:24px;
  }
  .ppdm-skinny-banner__art{
    grid-template-columns:repeat(3,1fr);
    min-height:86px;
  }
  .ppdm-gallery-arrow{
    width:44px;
    height:44px;
    font-size:28px;
  }
}


/* === v1.2.1 HOMEPAGE CLEANUP: remove top hero mockup and support custom banner image === */
.home .ppdm-hero{
  display:none !important;
}

/* Full image banner option */
.ppdm-skinny-banner.has-image{
  min-height:180px;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  position:relative;
}
.ppdm-skinny-banner.has-image:before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(47,33,61,.78), rgba(47,33,61,.22), rgba(47,33,61,.04));
  z-index:0;
}
.ppdm-skinny-banner.has-image .ppdm-skinny-banner__copy{
  position:relative;
  z-index:1;
}
.ppdm-skinny-banner.has-image .ppdm-skinny-banner__art{
  display:none;
}
.ppdm-skinny-banner.has-image .ppdm-skinny-banner__copy h2{
  text-shadow:0 2px 14px rgba(0,0,0,.22);
}
@media(max-width:680px){
  .ppdm-skinny-banner.has-image{
    min-height:150px;
  }
  .ppdm-skinny-banner.has-image:before{
    background:linear-gradient(90deg, rgba(47,33,61,.82), rgba(47,33,61,.38));
  }
}


/* === v1.2.2 FIX: force WooCommerce gallery thumbnails to the left === */
.single-product .woocommerce-product-gallery{
  position:relative !important;
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  column-gap:16px !important;
  align-items:start !important;
}

.single-product .woocommerce-product-gallery .flex-viewport{
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
  margin:0 !important;
  min-width:0 !important;
}

.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{
  width:100% !important;
  margin:0 !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs{
  grid-column:1 !important;
  grid-row:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  width:76px !important;
  max-height:760px !important;
  margin:0 !important;
  padding:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  list-style:none !important;
  float:none !important;
  clear:none !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs::before,
.single-product .woocommerce-product-gallery .flex-control-thumbs::after{
  display:none !important;
  content:none !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  flex:0 0 66px !important;
  width:66px !important;
  max-width:66px !important;
  height:66px !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  clear:none !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li img{
  width:66px !important;
  height:66px !important;
  object-fit:cover !important;
  border-radius:10px !important;
  display:block !important;
  margin:0 !important;
}

@media(max-width:980px){
  .single-product .woocommerce-product-gallery{
    grid-template-columns:1fr !important;
    row-gap:12px !important;
  }

  .single-product .woocommerce-product-gallery .flex-viewport{
    grid-column:1 !important;
    grid-row:1 !important;
  }

  .single-product .woocommerce-product-gallery .flex-control-thumbs{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100% !important;
    max-height:none !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
  }
}


/* === v1.2.3 ETSY CARD SIZE FIX: smaller shop/home product cards like Etsy === */

/* Force a tighter, Etsy-like product grid on homepage/shop/archive pages */
.home .woocommerce ul.products,
.home ul.products.products,
.post-type-archive-product .woocommerce ul.products,
.post-type-archive-product ul.products.products,
.tax-product_cat .woocommerce ul.products,
.tax-product_cat ul.products.products,
.tax-product_tag .woocommerce ul.products,
.tax-product_tag ul.products.products{
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  gap:22px !important;
  align-items:start !important;
}

/* Card proportions */
.home .woocommerce ul.products li.product,
.post-type-archive-product .woocommerce ul.products li.product,
.tax-product_cat .woocommerce ul.products li.product,
.tax-product_tag .woocommerce ul.products li.product{
  border-radius:14px !important;
  box-shadow:none !important;
  border:1px solid var(--gray) !important;
  overflow:hidden !important;
  background:#fff !important;
}

.home .woocommerce ul.products li.product a img,
.post-type-archive-product .woocommerce ul.products li.product a img,
.tax-product_cat .woocommerce ul.products li.product a img,
.tax-product_tag .woocommerce ul.products li.product a img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  margin:0 !important;
  border-radius:14px 14px 0 0 !important;
  background:var(--pink-soft) !important;
}

.home .woocommerce-loop-product__title,
.post-type-archive-product .woocommerce-loop-product__title,
.tax-product_cat .woocommerce-loop-product__title,
.tax-product_tag .woocommerce-loop-product__title{
  font-family:var(--body) !important;
  font-size:1rem !important;
  line-height:1.3 !important;
  font-weight:700 !important;
  margin:0 !important;
  padding:12px 14px 4px !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  min-height:2.6em !important;
}

.home .woocommerce ul.products li.product .star-rating,
.post-type-archive-product .woocommerce ul.products li.product .star-rating,
.tax-product_cat .woocommerce ul.products li.product .star-rating,
.tax-product_tag .woocommerce ul.products li.product .star-rating{
  margin:0 14px 6px !important;
  font-size:.85rem !important;
}

.home .ppdm-product-dl,
.post-type-archive-product .ppdm-product-dl,
.tax-product_cat .ppdm-product-dl,
.tax-product_tag .ppdm-product-dl{
  padding:0 14px !important;
  font-size:.9rem !important;
  margin-bottom:6px !important;
}

.home .woocommerce ul.products li.product .price,
.post-type-archive-product .woocommerce ul.products li.product .price,
.tax-product_cat .woocommerce ul.products li.product .price,
.tax-product_tag .woocommerce ul.products li.product .price{
  font-family:var(--body) !important;
  font-size:1rem !important;
  font-weight:800 !important;
  color:var(--pink-deep) !important;
  margin:0 14px 12px !important;
  padding:0 !important;
}

.home .woocommerce ul.products li.product .price del,
.post-type-archive-product .woocommerce ul.products li.product .price del,
.tax-product_cat .woocommerce ul.products li.product .price del,
.tax-product_tag .woocommerce ul.products li.product .price del{
  font-size:.9rem !important;
}

.home .woocommerce ul.products li.product .button,
.post-type-archive-product .woocommerce ul.products li.product .button,
.tax-product_cat .woocommerce ul.products li.product .button,
.tax-product_tag .woocommerce ul.products li.product .button{
  margin:0 14px 14px !important;
  width:calc(100% - 28px) !important;
  padding:12px 16px !important;
  min-height:auto !important;
  font-size:.9rem !important;
  border-radius:999px !important;
  box-shadow:none !important;
}

/* Keep wishlist/badge tucked inside the smaller card */
.home .ppdm-heart,
.post-type-archive-product .ppdm-heart,
.tax-product_cat .ppdm-heart,
.tax-product_tag .ppdm-heart{
  top:12px !important;
  right:12px !important;
  width:40px !important;
  height:40px !important;
}

.home .onsale,
.post-type-archive-product .onsale,
.tax-product_cat .onsale,
.tax-product_tag .onsale{
  top:10px !important;
  left:10px !important;
  padding:8px 12px !important;
  font-size:.72rem !important;
  line-height:1 !important;
}

/* Responsive step-down like Etsy */
@media (max-width: 1320px){
  .home .woocommerce ul.products,
  .home ul.products.products,
  .post-type-archive-product .woocommerce ul.products,
  .post-type-archive-product ul.products.products,
  .tax-product_cat .woocommerce ul.products,
  .tax-product_cat ul.products.products,
  .tax-product_tag .woocommerce ul.products,
  .tax-product_tag ul.products.products{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 1080px){
  .home .woocommerce ul.products,
  .home ul.products.products,
  .post-type-archive-product .woocommerce ul.products,
  .post-type-archive-product ul.products.products,
  .tax-product_cat .woocommerce ul.products,
  .tax-product_cat ul.products.products,
  .tax-product_tag .woocommerce ul.products,
  .tax-product_tag ul.products.products{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:18px !important;
  }
}
@media (max-width: 780px){
  .home .woocommerce ul.products,
  .home ul.products.products,
  .post-type-archive-product .woocommerce ul.products,
  .post-type-archive-product ul.products.products,
  .tax-product_cat .woocommerce ul.products,
  .tax-product_cat ul.products.products,
  .tax-product_tag .woocommerce ul.products,
  .tax-product_tag ul.products.products{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:16px !important;
  }
}
@media (max-width: 520px){
  .home .woocommerce ul.products,
  .home ul.products.products,
  .post-type-archive-product .woocommerce ul.products,
  .post-type-archive-product ul.products.products,
  .tax-product_cat .woocommerce ul.products,
  .tax-product_cat ul.products.products,
  .tax-product_tag .woocommerce ul.products,
  .tax-product_tag ul.products.products{
    grid-template-columns:1fr !important;
  }
}


/* === v1.2.4 SQUARE CARD FIX: Etsy-style square thumbnails + no add-to-cart buttons on product grids === */

/* Apply to homepage, shop, category, and tag product grids */
.home .woocommerce ul.products li.product,
.post-type-archive-product .woocommerce ul.products li.product,
.tax-product_cat .woocommerce ul.products li.product,
.tax-product_tag .woocommerce ul.products li.product{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
}

/* Make the image area clean and square like Etsy */
.home .woocommerce ul.products li.product a:first-of-type,
.post-type-archive-product .woocommerce ul.products li.product a:first-of-type,
.tax-product_cat .woocommerce ul.products li.product a:first-of-type,
.tax-product_tag .woocommerce ul.products li.product a:first-of-type{
  display:block !important;
}

.home .woocommerce ul.products li.product a img,
.post-type-archive-product .woocommerce ul.products li.product a img,
.tax-product_cat .woocommerce ul.products li.product a img,
.tax-product_tag .woocommerce ul.products li.product a img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  border-radius:12px !important;
  background:#f7f3f5 !important;
  margin:0 0 10px 0 !important;
  box-shadow:none !important;
}

/* Square image wrapper feeling with tighter Etsy-like metadata below */
.home .woocommerce-loop-product__title,
.post-type-archive-product .woocommerce-loop-product__title,
.tax-product_cat .woocommerce-loop-product__title,
.tax-product_tag .woocommerce-loop-product__title{
  font-family:var(--body) !important;
  font-size:1rem !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  padding:0 !important;
  margin:0 0 4px 0 !important;
  min-height:0 !important;
  display:block !important;
}

.home .woocommerce ul.products li.product .star-rating,
.post-type-archive-product .woocommerce ul.products li.product .star-rating,
.tax-product_cat .woocommerce ul.products li.product .star-rating,
.tax-product_tag .woocommerce ul.products li.product .star-rating{
  margin:0 0 6px 0 !important;
}

.home .ppdm-product-dl,
.post-type-archive-product .ppdm-product-dl,
.tax-product_cat .ppdm-product-dl,
.tax-product_tag .ppdm-product-dl{
  padding:0 !important;
  margin:0 0 6px 0 !important;
  font-size:.9rem !important;
}

.home .woocommerce ul.products li.product .price,
.post-type-archive-product .woocommerce ul.products li.product .price,
.tax-product_cat .woocommerce ul.products li.product .price,
.tax-product_tag .woocommerce ul.products li.product .price{
  padding:0 !important;
  margin:0 0 2px 0 !important;
  font-family:var(--body) !important;
  font-size:1rem !important;
  font-weight:800 !important;
}

/* Remove grid buttons to match Etsy-style listing cards */
.home .woocommerce ul.products li.product .button,
.post-type-archive-product .woocommerce ul.products li.product .button,
.tax-product_cat .woocommerce ul.products li.product .button,
.tax-product_tag .woocommerce ul.products li.product .button,
.home .woocommerce ul.products li.product .add_to_cart_button,
.post-type-archive-product .woocommerce ul.products li.product .add_to_cart_button,
.tax-product_cat .woocommerce ul.products li.product .add_to_cart_button,
.tax-product_tag .woocommerce ul.products li.product .add_to_cart_button{
  display:none !important;
}

/* Keep heart icon floating over the square image */
.home .ppdm-heart,
.post-type-archive-product .ppdm-heart,
.tax-product_cat .ppdm-heart,
.tax-product_tag .ppdm-heart{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.95) !important;
  z-index:4 !important;
}

/* Badge position */
.home .onsale,
.post-type-archive-product .onsale,
.tax-product_cat .onsale,
.tax-product_tag .onsale{
  left:12px !important;
  top:12px !important;
  border-radius:999px !important;
}

/* Tighter overall product spacing */
.home .woocommerce ul.products li.product,
.post-type-archive-product .woocommerce ul.products li.product,
.tax-product_cat .woocommerce ul.products li.product,
.tax-product_tag .woocommerce ul.products li.product{
  margin:0 !important;
  padding:0 !important;
}
