/** Photoprompt platform surfaces v3.1.0 */
.pp-platform-main { width: 100%; max-width: none; overflow: clip; background: var(--pp-bg); color: var(--pp-text); }
.pp-platform-button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 15px; border: 1px solid var(--pp-border); font: 800 10px/1 var(--pp-mono); text-transform: uppercase; text-decoration: none; }
.pp-platform-button--dark { background: var(--pp-text); color: var(--pp-bg) !important; border-color: var(--pp-text); }
.pp-platform-button--red { background: var(--pp-red); color: #fff !important; border-color: var(--pp-red); }
.pp-platform-link { font: 800 10px/1 var(--pp-mono); text-transform: uppercase; }

/* ============================================================
   EXPLORE / MARKETPLACE
   ============================================================ */
.pp-marketplace { --pp-market-max: 1840px; }
.pp-market-hero { min-height: min(760px, 78svh); display: grid; grid-template-columns: minmax(0, .92fr) minmax(520px, 1.08fr); background: var(--pp-bg); border-bottom: 1px solid var(--pp-border); }
.pp-market-hero__copy { padding: clamp(90px, 9vw, 160px) clamp(24px, 5vw, 90px) clamp(70px, 8vw, 130px); display: flex; flex-direction: column; justify-content: flex-end; }
.pp-market-hero__copy h1 { margin: 12px 0 26px; max-width: 980px; font-size: clamp(68px, 7.4vw, 140px); line-height: .84; letter-spacing: -.068em; }
.pp-market-hero__copy > p { max-width: 620px; margin: 0 0 28px; font: 600 clamp(16px,1.2vw,21px)/1.45 var(--pp-sans); color: var(--pp-text-muted); }
.pp-market-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; }
.pp-market-hero__visual { position: relative; overflow: hidden; min-height: 640px; background: #111; border-left: 1px solid var(--pp-border); }
.pp-market-hero__ghost { position: absolute; left: -3%; bottom: -1%; z-index: 1; font: 800 clamp(100px, 11vw, 210px)/.7 var(--pp-display); letter-spacing: -.07em; color: rgba(255,255,255,.08); }
.pp-market-hero__visual figure { position: absolute; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.48); box-shadow: 0 28px 70px rgba(0,0,0,.34); transform: rotate(calc((var(--pp-hero-card) - 1.5) * 2.5deg)); transition: transform .7s var(--pp-ease); }
.pp-market-hero__visual figure:nth-of-type(1) { width: 42%; height: 54%; left: 7%; top: 11%; z-index: 4; }
.pp-market-hero__visual figure:nth-of-type(2) { width: 41%; height: 48%; right: 7%; top: 5%; z-index: 3; }
.pp-market-hero__visual figure:nth-of-type(3) { width: 38%; height: 42%; right: 10%; bottom: 7%; z-index: 5; }
.pp-market-hero__visual figure:nth-of-type(4) { width: 45%; height: 42%; left: 10%; bottom: 4%; z-index: 2; }
.pp-market-hero__visual img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(.93); }
.pp-market-hero__visual:hover figure:nth-of-type(1) { transform: translate(-8px,-8px) rotate(-3deg); }
.pp-market-hero__visual:hover figure:nth-of-type(2) { transform: translate(8px,-5px) rotate(2.5deg); }
.pp-market-hero__visual:hover figure:nth-of-type(3) { transform: translate(8px,8px) rotate(2deg); }
.pp-market-hero__visual:hover figure:nth-of-type(4) { transform: translate(-8px,8px) rotate(-2deg); }

.pp-discovery { padding: clamp(55px,6vw,96px) var(--pp-gutter) clamp(90px,10vw,160px); }
.pp-discovery__bar { position: sticky; z-index: 40; top: 12px; max-width: var(--pp-market-max); margin: 0 auto; display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 1px; background: var(--pp-border); border: 1px solid var(--pp-border); box-shadow: 0 14px 40px var(--pp-shadow); }
.pp-discovery-search { min-height: 76px; display: grid; grid-template-columns: 90px 1fr; align-items: center; padding: 0 22px; background: var(--pp-surface); }
.pp-discovery-search > label { font: 800 9px/1 var(--pp-mono); text-transform: uppercase; color: var(--pp-text-muted); }
.pp-discovery-search > div { display: grid; grid-template-columns: 1fr 46px; align-items: center; }
.pp-discovery-search input { width: 100%; border: 0 !important; background: transparent !important; padding: 12px 0 !important; font: 700 clamp(18px,1.5vw,26px)/1 var(--pp-sans); outline: 0; }
.pp-discovery-search button { width: 42px; height: 42px; border: 0; border-radius: 50%; background: var(--pp-text); color: var(--pp-bg); font-size: 19px; cursor: pointer; }
.pp-discovery__count { min-width: 155px; padding: 0 20px; display: grid; align-content: center; background: var(--pp-surface); }
.pp-discovery__count b { font: 800 25px/1 var(--pp-display); }
.pp-discovery__count span { margin-top: 4px; font: 700 8px/1 var(--pp-mono); text-transform: uppercase; color: var(--pp-text-muted); }
.pp-filter-toggle { min-width: 112px; border: 0; padding: 0 17px; display: none; align-items: center; justify-content: space-between; background: var(--pp-red); color: #fff; font: 800 10px/1 var(--pp-mono); text-transform: uppercase; cursor: pointer; }

.pp-filter-shell { max-width: var(--pp-market-max); margin: 22px auto 42px; border-top: 1px solid var(--pp-border); }
.pp-filter-row { min-height: 55px; display: grid; grid-template-columns: 120px 1fr; align-items: start; border-bottom: 1px solid var(--pp-border-soft); }
.pp-filter-row > span { padding: 18px 10px 14px 0; font: 800 9px/1 var(--pp-mono); text-transform: uppercase; color: var(--pp-text-muted); }
.pp-filter-row > div { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 0; }
.pp-filter-row a { min-height: 34px; padding: 0 11px; display: inline-flex; align-items: center; border: 1px solid var(--pp-border-soft); background: var(--pp-surface); font: 700 10px/1 var(--pp-sans); transition: background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.pp-filter-row a:hover { transform: translateY(-1px); border-color: var(--pp-border); }
.pp-filter-row a.is-active { background: var(--pp-text); color: var(--pp-bg); border-color: var(--pp-text); }
.pp-filter-row--primary a.is-active { background: var(--pp-red); color: #fff; border-color: var(--pp-red); }
.pp-active-filters { max-width: var(--pp-market-max); margin: -18px auto 28px; display: flex; gap: 12px; align-items: center; font: 700 9px/1 var(--pp-mono); text-transform: uppercase; }
.pp-active-filters span { color: var(--pp-text-muted); }
.pp-active-filters a { color: var(--pp-red); }

.pp-market-grid { max-width: var(--pp-market-max); margin: 0 auto; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--pp-border); border-left: 1px solid var(--pp-border); }
.pp-market-card { min-width: 0; background: var(--pp-surface); border-right: 1px solid var(--pp-border); border-bottom: 1px solid var(--pp-border); overflow: hidden; }
.pp-market-card__media { position: relative; display: block; aspect-ratio: 4 / 4.65; overflow: hidden; background: var(--pp-surface-2); }
.pp-market-card__media::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.4)); opacity:0; transition:opacity .35s ease; }
.pp-market-card__media img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .8s var(--pp-ease),filter .35s ease; }
.pp-market-card:hover .pp-market-card__media img { transform:scale(1.025); filter:saturate(1.05); }
.pp-market-card:hover .pp-market-card__media::after { opacity:1; }
.pp-market-card__index { position:absolute; z-index:2; left:12px; top:12px; min-width:31px; height:31px; display:grid; place-items:center; background:rgba(255,255,255,.92); color:#111; font:800 8px/1 var(--pp-mono); border:1px solid rgba(17,17,17,.18); }
.pp-market-card__open { position:absolute; z-index:3; left:14px; bottom:14px; padding:8px 9px; background:#fff; color:#111; font:800 8px/1 var(--pp-mono); text-transform:uppercase; opacity:0; transform:translateY(8px); transition:opacity .3s ease,transform .3s var(--pp-ease); }
.pp-market-card:hover .pp-market-card__open { opacity:1; transform:none; }
.pp-market-card__body { min-height: 245px; padding: 18px; display:flex; flex-direction:column; }
.pp-market-card__meta { display:flex; justify-content:space-between; gap:12px; font:700 8px/1 var(--pp-mono); text-transform:uppercase; color:var(--pp-text-muted); }
.pp-market-card h2 { margin:20px 0 12px; font-size:clamp(25px,2vw,37px); line-height:.94; letter-spacing:-.05em; }
.pp-market-card p { margin:0 0 20px; font:500 13px/1.47 var(--pp-sans); color:var(--pp-text-muted); }
.pp-market-card__foot { margin-top:auto; padding-top:13px; border-top:1px solid var(--pp-border-soft); display:flex; align-items:center; justify-content:space-between; gap:10px; font:700 8px/1 var(--pp-mono); text-transform:uppercase; }
.pp-market-card__foot button { width:34px; height:34px; border:1px solid var(--pp-border); background:transparent; color:var(--pp-text); cursor:pointer; font-size:17px; }
.pp-market-card__foot button.is-active { background:var(--pp-red); border-color:var(--pp-red); color:#fff; }
.pp-market-empty { grid-column:1/-1; padding:clamp(80px,10vw,180px) clamp(24px,7vw,120px); background:var(--pp-surface); }
.pp-market-empty h2 { max-width:950px; margin:12px 0 18px; font-size:clamp(48px,6vw,104px); }
.pp-market-empty p { max-width:600px; color:var(--pp-text-muted); }
.pp-market-empty > div { display:flex; gap:8px; flex-wrap:wrap; margin-top:26px; }
.pp-pagination { max-width:var(--pp-market-max); margin:38px auto 0; }
.pp-pagination ul { display:flex; justify-content:center; gap:5px; list-style:none; padding:0; margin:0; }
.pp-pagination a,.pp-pagination span { min-width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--pp-border); font:800 9px/1 var(--pp-mono); }
.pp-pagination .current { background:var(--pp-text); color:var(--pp-bg); }
.pp-market-cta { min-height:430px; padding:clamp(60px,7vw,110px) var(--pp-gutter); display:grid; grid-template-columns:1fr auto; align-items:end; gap:50px; background:var(--pp-red); color:#111; }
.pp-market-cta h2 { max-width:1050px; margin:12px 0 0; font-size:clamp(58px,7vw,126px); line-height:.84; }
.pp-market-cta > a { width:clamp(190px,17vw,280px); aspect-ratio:1; display:flex; flex-direction:column; justify-content:space-between; padding:22px; border-radius:50%; background:#111; color:#fff; font:800 15px/1 var(--pp-sans); }
.pp-market-cta > a b { align-self:flex-end; font-size:44px; font-weight:400; }

/* ============================================================
   SINGLE PRODUCT
   ============================================================ */
.pp-product-page { padding-top: 0 !important; }
.pp-product-hero { min-height: min(900px, 92svh); display:grid; grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr); border-bottom:1px solid var(--pp-border); }
.pp-product-gallery { position:relative; min-height:700px; background:#111; overflow:hidden; }
.pp-product-gallery__stage { position:absolute; inset:0; }
.pp-product-gallery__stage img { width:100%; height:100%; object-fit:cover; display:block; transition:opacity .25s ease,transform .8s var(--pp-ease); }
.pp-product-gallery:hover .pp-product-gallery__stage img { transform:scale(1.012); }
.pp-product-gallery__thumbs { position:absolute; z-index:4; left:18px; bottom:18px; display:flex; gap:8px; }
.pp-product-gallery__thumbs button { width:64px; height:76px; padding:0; border:1px solid rgba(255,255,255,.45); background:#111; opacity:.65; cursor:pointer; }
.pp-product-gallery__thumbs button.is-active { opacity:1; border:2px solid #fff; }
.pp-product-gallery__thumbs img { width:100%; height:100%; object-fit:cover; }
.pp-product-gallery__label { position:absolute; z-index:3; left:18px; right:18px; top:18px; display:flex; justify-content:space-between; color:#fff; font:700 8px/1 var(--pp-mono); text-transform:uppercase; mix-blend-mode:difference; }
.pp-product-summary { padding:clamp(90px,8vw,145px) clamp(28px,4.5vw,76px) 60px; display:flex; flex-direction:column; background:var(--pp-surface); }
.pp-product-summary__top { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.pp-product-favorite { border:1px solid var(--pp-border); background:transparent; color:var(--pp-text); min-height:38px; padding:0 11px; font:700 9px/1 var(--pp-mono); text-transform:uppercase; cursor:pointer; }
.pp-product-favorite.is-active { background:var(--pp-red); color:#fff; border-color:var(--pp-red); }
.pp-product-summary h1 { margin:20px 0 22px; font-size:clamp(56px,5.6vw,105px); line-height:.84; letter-spacing:-.065em; }
.pp-product-intro { max-width:690px; font:600 clamp(16px,1.15vw,20px)/1.5 var(--pp-sans); color:var(--pp-text-muted); }
.pp-product-intro p { color:inherit; }
.pp-product-price { margin:24px 0 30px; font:800 clamp(28px,2.2vw,42px)/1 var(--pp-display); }
.pp-product-facts { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--pp-border); border-left:1px solid var(--pp-border); }
.pp-product-facts > div { min-height:78px; padding:14px; border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); }
.pp-product-facts span,.pp-product-specs span { display:block; margin-bottom:8px; font:700 8px/1 var(--pp-mono); text-transform:uppercase; color:var(--pp-text-muted); }
.pp-product-facts b,.pp-product-specs b { font:700 12px/1.35 var(--pp-sans); }
.pp-product-buybox { margin-top:28px; }
.pp-product-buybox .cart { display:flex; gap:8px; margin:0 0 9px !important; }
.pp-product-buybox .quantity input { min-height:50px; width:72px; background:var(--pp-surface) !important; color:var(--pp-text) !important; border:1px solid var(--pp-border) !important; }
.pp-product-buybox .single_add_to_cart_button { flex:1; min-height:50px; border-radius:0 !important; border:1px solid var(--pp-text) !important; background:var(--pp-text) !important; color:var(--pp-bg) !important; font:800 10px/1 var(--pp-mono) !important; text-transform:uppercase; }
.pp-studio-handoff { min-height:72px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; gap:20px; background:var(--pp-red); color:#fff !important; }
.pp-studio-handoff small { display:block; margin-bottom:6px; font:700 7px/1 var(--pp-mono); letter-spacing:.06em; }
.pp-studio-handoff b { font:800 15px/1 var(--pp-sans); }
.pp-studio-handoff i { font:400 32px/1 var(--pp-sans); font-style:normal; }
.pp-product-trust { margin-top:16px; display:flex; flex-wrap:wrap; gap:12px 20px; font:700 8px/1.2 var(--pp-mono); text-transform:uppercase; color:var(--pp-text-muted); }

.pp-product-story { padding:clamp(80px,9vw,150px) var(--pp-gutter); }
.pp-product-story > header { max-width:var(--pp-max); margin:0 auto clamp(45px,6vw,90px); }
.pp-product-story h2,.pp-product-contactsheet h2,.pp-product-description h2,.pp-product-related > h2 { max-width:1100px; margin:12px 0 0; font-size:clamp(52px,6.2vw,112px); line-height:.85; }
.pp-product-story__grid { max-width:var(--pp-max); margin:auto; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--pp-border); border-left:1px solid var(--pp-border); }
.pp-product-story__grid article { min-height:280px; padding:22px; border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); }
.pp-product-story__grid article > span { font:800 9px/1 var(--pp-mono); }
.pp-product-story__grid h3 { margin:70px 0 12px; font-size:clamp(28px,2.5vw,44px); }
.pp-product-story__grid p { max-width:30ch; color:var(--pp-text-muted); font:500 14px/1.5 var(--pp-sans); }
.pp-product-contactsheet { padding:clamp(80px,9vw,150px) var(--pp-gutter); background:#111; color:#fff; }
.pp-product-contactsheet__head { max-width:var(--pp-max); margin:0 auto 50px; }
.pp-product-contactsheet__grid { max-width:var(--pp-max); margin:auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.pp-product-contactsheet figure { margin:0; background:#1c1c1c; }
.pp-product-contactsheet img { width:100%; aspect-ratio:4/5; object-fit:cover; display:block; }
.pp-product-contactsheet figcaption { padding:11px 2px; font:700 8px/1 var(--pp-mono); }
.pp-product-detail-grid { max-width:var(--pp-max); margin:auto; padding:clamp(80px,9vw,150px) var(--pp-gutter); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:clamp(45px,8vw,150px); }
.pp-product-description__content { margin-top:40px; max-width:850px; font:500 17px/1.65 var(--pp-sans); color:var(--pp-text-muted); }
.pp-product-description__content :where(h2,h3,h4) { color:var(--pp-text); margin:2em 0 .6em; }
.pp-product-specs { border-top:1px solid var(--pp-border); }
.pp-product-specs > div { padding:20px 0; border-bottom:1px solid var(--pp-border); }
/* Product Studio CTA moved to assets/css/product.css (v3.15.12). */
.pp-product-related { padding:clamp(80px,8vw,140px) var(--pp-gutter) 150px; }
.pp-product-related > .products { margin-top:50px !important; display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:0 !important; }
.pp-product-related .product { border:1px solid var(--pp-border); padding:0 0 18px !important; background:var(--pp-surface); }
.pp-product-related .product img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.pp-product-related .product :where(h2,.price,.button) { margin-inline:16px !important; }

/* ============================================================
   ACCOUNT / CREATOR DASHBOARD
   ============================================================ */
.pp-dashboard-page { padding: clamp(110px,10vw,160px) var(--pp-gutter) clamp(100px,10vw,160px) !important; }
.pp-dashboard,.pp-dashboard-login { max-width:var(--pp-max); margin:auto; }
.pp-dashboard-login { min-height:62svh; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.pp-dashboard-login h1 { max-width:1050px; margin:12px 0 20px; font-size:clamp(64px,8vw,140px); }
.pp-dashboard-login p { max-width:620px; margin:0 0 28px; color:var(--pp-text-muted); font:600 17px/1.5 var(--pp-sans); }
.pp-dashboard-hero { min-height:450px; display:grid; grid-template-columns:1fr auto; gap:50px; align-items:end; padding:clamp(40px,5vw,78px); background:#111; color:#fff; overflow:hidden; position:relative; }
.pp-dashboard-hero::before { content:'WORKSPACE'; position:absolute; right:-2%; top:-5%; font:800 clamp(100px,14vw,260px)/.72 var(--pp-display); color:rgba(255,255,255,.045); letter-spacing:-.07em; }
.pp-dashboard-hero > div,.pp-dashboard-studio { position:relative; z-index:2; }
.pp-dashboard-hero h1 { max-width:1100px; margin:12px 0 18px; font-size:clamp(64px,7vw,128px); line-height:.84; }
.pp-dashboard-hero p { max-width:630px; color:rgba(255,255,255,.68); font:600 16px/1.5 var(--pp-sans); }
.pp-dashboard-studio { width:clamp(180px,16vw,260px); aspect-ratio:1; border-radius:50%; padding:22px; display:flex; flex-direction:column; justify-content:space-between; background:var(--pp-red); color:#fff !important; }
.pp-dashboard-studio span { font:700 8px/1 var(--pp-mono); }
.pp-dashboard-studio b { font:800 clamp(28px,3vw,48px)/.85 var(--pp-display); }
.pp-dashboard-studio i { align-self:flex-end; font:400 40px/1 var(--pp-sans); font-style:normal; }
.pp-dashboard-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-left:1px solid var(--pp-border); }
.pp-dashboard-stats article { min-height:190px; padding:20px; border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); background:var(--pp-surface); display:flex; flex-direction:column; }
.pp-dashboard-stats span { font:800 8px/1 var(--pp-mono); text-transform:uppercase; color:var(--pp-text-muted); }
.pp-dashboard-stats b { margin:auto 0 12px; font:800 clamp(50px,5vw,90px)/.8 var(--pp-display); }
.pp-dashboard-stats small { font:700 10px/1.2 var(--pp-sans); color:var(--pp-text-muted); }
.pp-dashboard-actions { margin-top:clamp(50px,6vw,90px); display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.pp-dashboard-actions > a { min-height:300px; padding:20px; border:1px solid var(--pp-border); background:var(--pp-surface); display:flex; flex-direction:column; position:relative; overflow:hidden; transition:transform .3s var(--pp-ease),background .2s,color .2s; }
.pp-dashboard-actions > a::after { content:''; position:absolute; width:150px; height:150px; border-radius:50%; right:-75px; bottom:-75px; background:var(--pp-red); transform:scale(.2); opacity:0; transition:transform .45s var(--pp-ease),opacity .3s; }
.pp-dashboard-actions > a:hover { transform:translateY(-5px); background:#111; color:#fff; }
.pp-dashboard-actions > a:hover::after { transform:scale(1); opacity:1; }
.pp-dashboard-actions span { font:800 9px/1 var(--pp-mono); }
.pp-dashboard-actions h2 { margin:auto 0 12px; font-size:clamp(30px,3vw,48px); }
.pp-dashboard-actions p { max-width:28ch; margin:0; color:var(--pp-text-muted); font:500 13px/1.45 var(--pp-sans); }
.pp-dashboard-actions > a:hover p { color:rgba(255,255,255,.68); }
.pp-dashboard-actions i { position:absolute; z-index:2; right:18px; top:18px; font-style:normal; font-size:24px; }
.pp-dashboard-library { margin-top:clamp(70px,8vw,130px); }
.pp-dashboard-library > header { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:35px; }
.pp-dashboard-library h2 { margin:10px 0 0; font-size:clamp(50px,5.5vw,100px); }
.pp-dashboard-library > header > a { font:800 9px/1 var(--pp-mono); text-transform:uppercase; }
.pp-dashboard-library__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--pp-border); border-left:1px solid var(--pp-border); }
.pp-dashboard-library__grid article { border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); background:var(--pp-surface); }
.pp-dashboard-library__image { display:block; aspect-ratio:4/5; overflow:hidden; background:var(--pp-surface-2); }
.pp-dashboard-library__image img { width:100%; height:100%; object-fit:cover; transition:transform .7s var(--pp-ease); }
.pp-dashboard-library__grid article:hover img { transform:scale(1.025); }
.pp-dashboard-library__grid article > div { padding:16px; }
.pp-dashboard-library__grid article span { font:700 8px/1 var(--pp-mono); color:var(--pp-red); text-transform:uppercase; }
.pp-dashboard-library__grid h3 { margin:14px 0 24px; font-size:clamp(24px,2vw,34px); }
.pp-dashboard-library__grid article > div > a { font:800 9px/1 var(--pp-mono); text-transform:uppercase; }
.pp-dashboard-empty { grid-column:1/-1; min-height:320px; padding:clamp(40px,6vw,90px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; background:var(--pp-surface); border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); }
.pp-dashboard-empty b { font:800 clamp(30px,3vw,54px)/1 var(--pp-display); }
.pp-dashboard-empty p { color:var(--pp-text-muted); }
.pp-dashboard-empty a { margin-top:12px; font:800 9px/1 var(--pp-mono); text-transform:uppercase; color:var(--pp-red); }

/* WCFM: keep plugin functionality, remove visual collision with the platform. */
body.photoprompt-site :where(#wcfm-main-contentainer,.wcfm-collapse,.wcfm-container,.wcfm-content-wrap) { font-family:var(--pp-sans) !important; color:var(--pp-text) !important; }
body.photoprompt-site :where(.wcfm-container,.wcfm-content-wrap,.wcfm-collapse-content) { background:var(--pp-surface) !important; border-color:var(--pp-border-soft) !important; box-shadow:none !important; }
body.photoprompt-site :where(.wcfm-page-headig,.wcfm-page-heading) { background:#111 !important; color:#fff !important; border-radius:0 !important; }
body.photoprompt-site :where(.wcfm_button,.wcfm_submit_button) { border-radius:0 !important; background:var(--pp-red) !important; color:#fff !important; border:0 !important; font-family:var(--pp-mono) !important; text-transform:uppercase; }

@media (max-width: 1280px) {
	.pp-market-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.pp-product-story__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.pp-dashboard-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.pp-dashboard-library__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
	.pp-market-hero { grid-template-columns:1fr; }
	.pp-market-hero__copy { min-height:620px; }
	.pp-market-hero__visual { min-height:650px; border-left:0; border-top:1px solid var(--pp-border); }
	.pp-discovery__bar { top:8px; grid-template-columns:1fr auto auto; }
	.pp-filter-toggle { display:flex; }
	.pp-filter-shell { position:fixed; z-index:10060; inset:0 0 0 auto; width:min(520px,92vw); margin:0; padding:80px 22px 30px; overflow:auto; background:var(--pp-bg); border-left:1px solid var(--pp-border); transform:translateX(105%); transition:transform .45s var(--pp-ease); box-shadow:-30px 0 80px rgba(0,0,0,.18); }
	.pp-filter-shell.is-open { transform:none; }
	.pp-filter-shell::before { content:'FILTER'; position:absolute; top:26px; left:22px; font:800 10px/1 var(--pp-mono); }
	.pp-filter-row { grid-template-columns:1fr; padding:12px 0; }
	.pp-filter-row > span { padding:0 0 9px; }
	.pp-market-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.pp-product-hero { grid-template-columns:1fr; }
	.pp-product-gallery { min-height:72svh; }
	.pp-product-summary { padding-top:70px; }
	.pp-product-detail-grid { grid-template-columns:1fr; }
	.pp-product-contactsheet__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.pp-product-related > .products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
	.pp-dashboard-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.pp-dashboard-library__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
	.pp-market-hero__copy { min-height:560px; padding:90px 18px 55px; }
	.pp-market-hero__copy h1 { font-size:clamp(55px,15vw,82px); }
	.pp-market-hero__visual { min-height:540px; }
	.pp-market-hero__visual figure:nth-of-type(1) { width:55%; }
	.pp-market-hero__visual figure:nth-of-type(2) { width:52%; }
	.pp-market-hero__visual figure:nth-of-type(3) { width:48%; }
	.pp-market-hero__visual figure:nth-of-type(4) { width:54%; }
	.pp-discovery { padding-inline:12px; }
	.pp-discovery__bar { grid-template-columns:1fr auto; }
	.pp-discovery__count { display:none; }
	.pp-discovery-search { min-height:66px; grid-template-columns:1fr; padding:8px 14px; }
	.pp-discovery-search > label { display:none; }
	.pp-market-grid { grid-template-columns:1fr; }
	.pp-market-card__body { min-height:220px; }
	.pp-market-cta { grid-template-columns:1fr; align-items:start; }
	.pp-market-cta > a { width:180px; }
	.pp-product-gallery { min-height:64svh; }
	.pp-product-gallery__thumbs button { width:48px; height:58px; }
	.pp-product-summary { padding:60px 18px 45px; }
	.pp-product-summary h1 { font-size:clamp(48px,14vw,74px); }
	.pp-product-facts { grid-template-columns:1fr; }
	.pp-product-story,.pp-product-contactsheet,.pp-product-related { padding-inline:18px; }
	.pp-product-story__grid { grid-template-columns:1fr; }
	.pp-product-contactsheet__grid { grid-template-columns:1fr; }
	.pp-product-detail-grid { padding-inline:18px; }
	.pp-product-related > .products { grid-template-columns:1fr !important; }
	.pp-dashboard-page { padding-inline:12px !important; }
	.pp-dashboard-hero { min-height:570px; grid-template-columns:1fr; padding:34px 20px; align-items:start; }
	.pp-dashboard-hero h1 { font-size:clamp(52px,14vw,78px); }
	.pp-dashboard-studio { width:160px; }
	.pp-dashboard-stats { grid-template-columns:1fr 1fr; }
	.pp-dashboard-stats article { min-height:150px; }
	.pp-dashboard-actions { grid-template-columns:1fr; }
	.pp-dashboard-actions > a { min-height:230px; }
	.pp-dashboard-library__grid { grid-template-columns:1fr; }
	.pp-dashboard-library > header { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 430px) {
	.pp-dashboard-stats { grid-template-columns:1fr; }
	.pp-market-hero__visual { min-height:480px; }
}

/* ============================================================
   FAVORITES
   ============================================================ */
.pp-favorites-page { padding:clamp(110px,10vw,160px) var(--pp-gutter) clamp(100px,10vw,160px) !important; }
.pp-favorites-library { max-width:var(--pp-max); margin:auto; }
.pp-favorites-library > header { margin-bottom:clamp(44px,6vw,88px); }
.pp-favorites-library h1 { max-width:1100px; margin:12px 0 18px; font-size:clamp(62px,7.5vw,132px); line-height:.84; }
.pp-favorites-library > header p { max-width:650px; color:var(--pp-text-muted); font:600 16px/1.5 var(--pp-sans); }
.pp-favorites-library__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--pp-border); border-left:1px solid var(--pp-border); }
.pp-favorite-card { border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); background:var(--pp-surface); }
.pp-favorite-card__image { display:block; aspect-ratio:4/5; overflow:hidden; background:var(--pp-surface-2); }
.pp-favorite-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .7s var(--pp-ease); }
.pp-favorite-card:hover img { transform:scale(1.025); }
.pp-favorite-card > div { padding:16px; }
.pp-favorite-card h2 { margin:10px 0 12px; font-size:clamp(25px,2vw,36px); }
.pp-favorite-card p { color:var(--pp-text-muted); font-size:13px; line-height:1.45; }
.pp-favorite-card__foot { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:12px; border-top:1px solid var(--pp-border-soft); }
.pp-favorite-card__foot span { font:700 9px/1 var(--pp-mono); }
.pp-favorite-card__foot button { width:34px; height:34px; border:1px solid var(--pp-border); background:var(--pp-red); color:#fff; cursor:pointer; }
.pp-favorites-library__loading,.pp-favorites-empty { grid-column:1/-1; min-height:320px; padding:clamp(40px,6vw,90px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; background:var(--pp-surface); border-right:1px solid var(--pp-border); border-bottom:1px solid var(--pp-border); }
.pp-favorites-empty h2 { max-width:780px; margin:0 0 14px; font-size:clamp(36px,4vw,68px); }
.pp-favorites-empty p { color:var(--pp-text-muted); }
.pp-favorites-empty a { margin-top:12px; font:800 9px/1 var(--pp-mono); text-transform:uppercase; color:var(--pp-red); }
@media(max-width:1280px){.pp-favorites-library__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.pp-favorites-library__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pp-favorites-page{padding-inline:12px!important}.pp-favorites-library__grid{grid-template-columns:1fr}.pp-favorites-library h1{font-size:clamp(52px,14vw,78px)}}

/* ============================================================
   v3.2.0 — PHOTOPROMPT PRODUCT BLUEPRINT
   ============================================================ */
.pp-product-claim{max-width:24ch;margin:0 0 10px;font:800 clamp(20px,1.65vw,30px)/1.05 var(--pp-display);letter-spacing:-.035em}.pp-product-rating-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:-6px 0 24px}.pp-product-rating{display:inline-flex;align-items:center;gap:8px;font:700 10px/1 var(--pp-mono);text-transform:uppercase}.pp-product-rating .star-rating{font-size:12px;margin:0}.pp-product-rating b{font:800 12px/1 var(--pp-sans)}.pp-product-rating span{color:var(--pp-text-muted)}.pp-product-rating--new{color:var(--pp-text-muted)}.pp-product-creator-mini{display:inline-grid;grid-template-columns:34px auto 16px;align-items:center;gap:9px;min-height:42px;padding:4px 8px 4px 4px;border:1px solid var(--pp-border);background:var(--pp-bg);color:var(--pp-text)!important}.pp-product-creator-mini img{width:34px;height:34px;object-fit:cover}.pp-product-creator-mini small{display:block;margin-bottom:3px;font:700 6px/1 var(--pp-mono);color:var(--pp-text-muted)}.pp-product-creator-mini b{display:block;font:800 10px/1 var(--pp-sans)}.pp-product-creator-mini i{font-style:normal;font-size:12px}.pp-market-card__creator{display:flex;justify-content:space-between;gap:10px;margin:-7px 0 13px;font:700 8px/1 var(--pp-mono);text-transform:uppercase;color:var(--pp-text-muted)}.pp-market-card__rating{color:var(--pp-text)}

.pp-product-feature-strip{display:grid;grid-template-columns:170px minmax(0,1fr);border-bottom:1px solid var(--pp-border);background:var(--pp-surface)}.pp-product-feature-strip__label{padding:20px var(--pp-gutter);padding-right:24px;border-right:1px solid var(--pp-border);display:flex;flex-direction:column;justify-content:space-between;gap:24px}.pp-product-feature-strip__label span{font:800 8px/1 var(--pp-mono)}.pp-product-feature-strip__label b{font:800 40px/.8 var(--pp-display)}.pp-product-feature-strip__track{display:flex;overflow-x:auto;scrollbar-width:none}.pp-product-feature-strip__track::-webkit-scrollbar{display:none}.pp-product-feature-strip__track>div{min-width:190px;min-height:112px;padding:18px;border-right:1px solid var(--pp-border);display:flex;flex-direction:column;justify-content:space-between}.pp-product-feature-strip__track span{font:700 7px/1 var(--pp-mono);color:var(--pp-text-muted)}.pp-product-feature-strip__track b{font:800 14px/1.05 var(--pp-sans)}

.pp-product-story__lead{max-width:760px;margin:24px 0 0;color:var(--pp-text-muted);font:600 clamp(16px,1.3vw,22px)/1.45 var(--pp-sans)}

.pp-product-dna,.pp-product-engine,.pp-product-preview,.pp-product-example,.pp-product-reviews{padding:clamp(80px,9vw,150px) var(--pp-gutter)}.pp-product-dna>header,.pp-product-engine>header,.pp-product-example>header,.pp-product-reviews>header{max-width:var(--pp-max);margin:0 auto clamp(44px,5vw,76px)}.pp-product-dna h2,.pp-product-engine h2,.pp-product-preview h2,.pp-product-example h2,.pp-product-reviews h2{max-width:1050px;margin:12px 0 0;font-size:clamp(52px,6vw,108px);line-height:.85;letter-spacing:-.058em}.pp-product-dna{background:var(--pp-surface-2)}.pp-product-dna__grid{max-width:var(--pp-max);margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--pp-border);border-left:1px solid var(--pp-border)}.pp-product-dna__grid article{min-height:230px;padding:20px;border-right:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface)}.pp-product-dna__grid article>span{font:800 8px/1 var(--pp-mono);color:var(--pp-red)}.pp-product-dna__grid h3{margin:58px 0 12px;font-size:clamp(24px,2vw,34px);letter-spacing:-.04em}.pp-product-dna__grid p{max-width:34ch;margin:0;color:var(--pp-text-muted);font:500 13px/1.5 var(--pp-sans)}

.pp-product-engine{background:#111;color:#f7f6f1}.pp-product-engine__layout{max-width:var(--pp-max);margin:auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.pp-product-engine__specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pp-product-engine__specs>div{min-height:190px;padding:22px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.pp-product-engine__specs span,.pp-product-engine aside>span{font:700 8px/1 var(--pp-mono);text-transform:uppercase;color:rgba(255,255,255,.52)}.pp-product-engine__specs p{margin:50px 0 0;max-width:34ch;color:rgba(255,255,255,.72);font:500 13px/1.5 var(--pp-sans)}.pp-product-engine aside{padding:30px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column}.pp-product-engine aside h3{margin:14px 0 18px;font-size:clamp(34px,3vw,52px)}.pp-product-engine aside p{margin:0;color:rgba(255,255,255,.72);font:500 14px/1.58 var(--pp-sans)}.pp-product-engine__badge{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;gap:18px}.pp-product-engine__badge span{font:700 8px/1 var(--pp-mono);text-transform:uppercase;color:rgba(255,255,255,.48)}.pp-product-engine__badge b{font:800 11px/1 var(--pp-sans)}

.pp-product-preview{display:grid;grid-template-columns:minmax(420px,.72fr) minmax(0,1.28fr);gap:clamp(34px,5vw,88px);align-items:start;background:var(--pp-bg)}.pp-product-preview__head{max-width:640px;min-width:0}.pp-product-preview__head h2{max-width:8.5ch!important;margin:12px 0 22px!important;font-size:clamp(48px,5.1vw,94px)!important;line-height:.9!important;letter-spacing:-.055em!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;-webkit-hyphens:none!important}.pp-product-preview__head p{max-width:46ch;margin:0;color:var(--pp-text-muted);font:500 14px/1.6 var(--pp-sans)}.pp-product-preview__code{border:1px solid color-mix(in srgb,var(--pp-moss,#566052) 82%,#1b1d1a 18%);background:var(--pp-moss,#566052);color:#f5f1ec;box-shadow:10px 12px 0 rgba(16,16,16,.12)}.pp-product-preview__code>div{display:flex;justify-content:space-between;gap:18px;padding:13px 16px;border-bottom:1px solid rgba(245,241,236,.28);font:800 8px/1 var(--pp-mono);color:#f5f1ec}.pp-product-preview__code pre{max-height:520px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0;padding:22px;font:500 13px/1.62 var(--pp-mono);background:transparent;color:#f5f1ec}

.pp-product-example{background:var(--pp-surface-2)}.pp-product-example__grid{max-width:var(--pp-max);margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--pp-border);border-left:1px solid var(--pp-border)}.pp-product-example__grid article{min-height:320px;padding:24px;border-right:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface)}.pp-product-example__grid article>span{font:800 8px/1 var(--pp-mono);color:var(--pp-red)}.pp-product-example pre,.pp-product-example p{margin:64px 0 0;white-space:pre-wrap;font:500 14px/1.6 var(--pp-mono);color:var(--pp-text-muted)}

.pp-product-creator{padding:clamp(70px,8vw,130px) var(--pp-gutter);display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr) minmax(280px,.7fr);gap:clamp(30px,5vw,80px);align-items:end;border-top:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface)}.pp-product-creator__portrait{aspect-ratio:1;background:#111;overflow:hidden;display:grid;place-items:center}.pp-product-creator__portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.pp-product-creator__portrait>span{font:800 70px/.8 var(--pp-display);color:#fff}.pp-product-creator__content h2{margin:12px 0 18px;font-size:clamp(48px,5vw,88px);line-height:.86}.pp-product-creator__content p{max-width:620px;color:var(--pp-text-muted);font:500 15px/1.55 var(--pp-sans)}.pp-product-creator__content>a{display:inline-block;margin-top:18px;font:800 9px/1 var(--pp-mono);text-transform:uppercase}.pp-product-creator__meta{border-top:1px solid var(--pp-border)}.pp-product-creator__meta>div{padding:17px 0;border-bottom:1px solid var(--pp-border)}.pp-product-creator__meta span{display:block;margin-bottom:7px;font:700 7px/1 var(--pp-mono);text-transform:uppercase;color:var(--pp-text-muted)}.pp-product-creator__meta b{display:block;font:800 12px/1.35 var(--pp-sans)}

.pp-product-reviews>header{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.pp-product-reviews__score{display:grid;grid-template-columns:auto auto;align-items:center;gap:8px 14px}.pp-product-reviews__score>b{font:800 clamp(48px,5vw,82px)/.8 var(--pp-display)}.pp-product-reviews__score>.star-rating{font-size:15px}.pp-product-reviews__score>span{grid-column:2;color:var(--pp-text-muted);font:700 9px/1 var(--pp-mono)}.pp-product-reviews__body{max-width:var(--pp-max);margin:auto;border-top:1px solid var(--pp-border)}.pp-product-reviews .woocommerce-Reviews{padding-top:30px}.pp-product-reviews .commentlist{padding:0!important}.pp-product-reviews .comment_container{padding:22px 0;border-bottom:1px solid var(--pp-border)}.pp-product-reviews #review_form_wrapper{margin-top:50px;padding:30px;background:var(--pp-surface-2)}.pp-product-reviews :where(input,textarea,select){border-radius:0!important;background:var(--pp-surface)!important;color:var(--pp-text)!important;border:1px solid var(--pp-border)!important}.pp-product-reviews .submit{border-radius:0!important;background:var(--pp-text)!important;color:var(--pp-bg)!important;font:800 9px/1 var(--pp-mono)!important;text-transform:uppercase!important}

@media(max-width:1280px){.pp-product-dna__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-product-creator{grid-template-columns:220px 1fr}.pp-product-creator__meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--pp-border)}.pp-product-creator__meta>div{padding:16px;border-right:1px solid var(--pp-border)}}
@media(max-width:980px){.pp-product-feature-strip{grid-template-columns:120px 1fr}.pp-product-preview{grid-template-columns:1fr}.pp-product-engine__layout{grid-template-columns:1fr}.pp-product-engine aside{min-height:320px}.pp-product-reviews>header{grid-template-columns:1fr}.pp-product-creator{grid-template-columns:170px 1fr}}
@media(max-width:680px){.pp-product-rating-row{align-items:flex-start;flex-direction:column}.pp-product-creator-mini{width:100%}.pp-product-feature-strip{grid-template-columns:1fr}.pp-product-feature-strip__label{border-right:0;border-bottom:1px solid var(--pp-border);flex-direction:row;align-items:end}.pp-product-feature-strip__track>div{min-width:160px}.pp-product-dna,.pp-product-engine,.pp-product-preview,.pp-product-example,.pp-product-reviews{padding-inline:18px}.pp-product-dna__grid,.pp-product-engine__specs,.pp-product-example__grid{grid-template-columns:1fr}.pp-product-engine__layout{border-left:0}.pp-product-preview__code{box-shadow:6px 7px 0 rgba(16,16,16,.09)}.pp-product-creator{padding-inline:18px;grid-template-columns:90px 1fr;align-items:start}.pp-product-creator__content h2{font-size:clamp(42px,12vw,64px)}.pp-product-creator__meta{grid-column:1/-1;grid-template-columns:1fr;border-left:0}.pp-product-creator__meta>div{padding-inline:0;border-right:0}.pp-product-reviews__score{justify-content:start}}

/* ============================================================
   v3.3.0 — PHOTOPROMPT SHOP / FINDER / COMPARE
   Editorial shop inspired by physical photography retail systems,
   rebuilt as a distinct Photoprompt red/black/off-white interface.
   ============================================================ */
.pp-shop{--pp-shop-gutter:clamp(18px,2.3vw,42px);background:var(--pp-bg);color:var(--pp-text)}
.pp-shop button{font-family:inherit}
.pp-shop-hero{position:relative;min-height:clamp(700px,78svh,930px);overflow:hidden;border-bottom:1px solid var(--pp-border);background:var(--pp-bg)}
.pp-shop-hero__copy{position:absolute;z-index:8;left:var(--pp-shop-gutter);top:clamp(92px,12vh,150px);width:min(620px,44vw);padding:22px 24px 24px;background:color-mix(in srgb,var(--pp-bg) 92%,transparent);border:1px solid var(--pp-border);backdrop-filter:blur(16px)}
.pp-shop-hero__copy h1{margin:10px 0 15px;font:800 clamp(54px,5.4vw,100px)/.86 var(--pp-display);letter-spacing:-.065em;max-width:8ch}
.pp-shop-hero__copy>p{max-width:40ch;margin:0 0 22px;color:var(--pp-text-muted);font:600 clamp(15px,1.05vw,19px)/1.42 var(--pp-sans)}
.pp-shop-hero__copy>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.pp-shop-find-link{border:0;background:transparent;color:var(--pp-text);cursor:pointer;padding:10px 0}
.pp-shop-marquee{position:absolute;inset:0;display:flex;align-items:flex-end;padding:0 0 clamp(24px,4vw,54px);overflow:hidden;background:linear-gradient(180deg,var(--pp-surface-2),var(--pp-bg))}
.pp-shop-marquee::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--pp-bg) 0,transparent 10%,transparent 90%,var(--pp-bg) 100%);opacity:.14}
.pp-shop-marquee__track{display:flex;gap:14px;width:max-content;padding-left:10vw;animation:pp-shop-marquee 52s linear infinite;will-change:transform}.pp-shop-marquee:hover .pp-shop-marquee__track{animation-play-state:paused}
@keyframes pp-shop-marquee{to{transform:translate3d(-50%,0,0)}}
.pp-shop-hero-card{position:relative;display:block;width:clamp(290px,26vw,480px);aspect-ratio:4/5;overflow:hidden;border:1px solid var(--pp-border);background:var(--pp-gray);color:#fff;text-decoration:none}
.pp-shop-hero-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s var(--pp-ease),filter .45s ease}.pp-shop-hero-card::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.68))}.pp-shop-hero-card>span{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;display:grid;grid-template-columns:1fr auto;gap:6px 18px;align-items:end}.pp-shop-hero-card b{grid-column:1;font:800 clamp(22px,2vw,34px)/.9 var(--pp-display);letter-spacing:-.045em}.pp-shop-hero-card em{grid-column:1;font:500 11px/1.35 var(--pp-sans);font-style:normal;opacity:.84}.pp-shop-hero-card i{grid-column:2;grid-row:1/3;align-self:end;font:800 9px/1 var(--pp-mono);font-style:normal;text-transform:uppercase}.pp-shop-hero-card:hover img{transform:scale(1.025);filter:saturate(1.04)}

.pp-shop-quick{border-bottom:1px solid var(--pp-border);padding:clamp(54px,6vw,92px) var(--pp-shop-gutter) clamp(36px,4vw,58px)}
.pp-shop-quick__head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.pp-shop-quick__head>span:last-child{font:600 14px/1.4 var(--pp-sans);color:var(--pp-text-muted)}
.pp-shop-quick__track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(12px,1.4vw,24px)}
.pp-shop-quick__track a{display:grid;gap:12px;color:var(--pp-text);text-decoration:none;text-align:center;font:700 9px/1 var(--pp-mono);text-transform:uppercase;letter-spacing:.025em}.pp-shop-quick__track a>span{display:grid;place-items:center;aspect-ratio:1;background:var(--pp-surface-2);border:1px solid transparent;overflow:hidden;transition:border-color .2s ease,transform .25s var(--pp-ease)}.pp-shop-quick__track img{width:74%;height:74%;object-fit:cover;clip-path:inset(10% round 2px);filter:saturate(.9);transition:transform .45s var(--pp-ease)}.pp-shop-quick__track a:hover>span{border-color:var(--pp-text);transform:translateY(-3px)}.pp-shop-quick__track a:hover img{transform:scale(1.045)}

.pp-shop-products{padding:0 var(--pp-shop-gutter) clamp(90px,10vw,160px)}
.pp-shop-toolbar{position:sticky;z-index:40;top:8px;display:flex;justify-content:space-between;align-items:end;gap:40px;padding:clamp(36px,4vw,64px) 0 22px;background:linear-gradient(180deg,var(--pp-bg) 78%,transparent);border-bottom:1px solid var(--pp-border)}
.pp-shop-toolbar h2{margin:8px 0 0;font:800 clamp(38px,4vw,68px)/.9 var(--pp-display);letter-spacing:-.055em}.pp-shop-toolbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.pp-shop-toolbar__actions button{min-height:42px;padding:0 15px;border:1px solid var(--pp-border);background:var(--pp-bg);color:var(--pp-text);font:700 8px/1 var(--pp-mono);text-transform:uppercase;cursor:pointer;transition:background .18s ease,color .18s ease}.pp-shop-toolbar__actions button:hover{background:var(--pp-text);color:var(--pp-bg)}.pp-shop-result-count{margin-right:9px;font:700 8px/1 var(--pp-mono);text-transform:uppercase}.pp-shop-result-count b{font-size:17px;margin-right:4px}
.pp-shop-active{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--pp-border);font:700 8px/1 var(--pp-mono);text-transform:uppercase}.pp-shop-active a{color:var(--pp-text)}
.pp-shop-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-left:1px solid var(--pp-border);align-items:stretch}.pp-shop-card{grid-column:span 2}.pp-shop-card--featured{grid-column:span 4}.pp-shop-card--editorial{grid-column:span 3}
.pp-shop-card{min-width:0;border-right:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface);transition:transform .25s var(--pp-ease)}
.pp-shop-card__media-wrap{position:relative;min-height:0;aspect-ratio:4/3;overflow:hidden;background:var(--pp-surface-2)}.pp-shop-card--featured .pp-shop-card__media-wrap{aspect-ratio:16/9}.pp-shop-card--editorial .pp-shop-card__media-wrap{aspect-ratio:3/2}
.pp-shop-card__media{position:absolute;inset:0;display:block;color:#fff;text-decoration:none;overflow:hidden}.pp-shop-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--pp-ease),filter .35s ease}.pp-shop-card__media::after{content:'';position:absolute;inset:62% 0 0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35));opacity:0;transition:opacity .25s ease}.pp-shop-card__media>span{position:absolute;z-index:3;right:16px;bottom:15px;transform:translateY(12px);opacity:0;padding:9px 11px;background:var(--pp-charcoal);color:var(--pp-paper);font:800 8px/1 var(--pp-mono);text-transform:uppercase;transition:all .24s ease}.pp-shop-card:hover .pp-shop-card__media img{transform:scale(1.018)}.pp-shop-card:hover .pp-shop-card__media::after,.pp-shop-card:hover .pp-shop-card__media>span{opacity:1}.pp-shop-card:hover .pp-shop-card__media>span{transform:translateY(0)}
.pp-shop-card__badge{position:absolute;z-index:5;left:14px;top:14px;padding:7px 9px;background:var(--pp-red);color:#fff;font:800 7px/1 var(--pp-mono);text-transform:uppercase}.pp-shop-card__actions{position:absolute;z-index:6;top:12px;right:12px;display:flex;gap:6px}.pp-shop-card__actions button{min-height:34px;border:1px solid rgba(255,255,255,.55);background:rgba(16,16,16,.78);color:#fff;backdrop-filter:blur(8px);cursor:pointer}.pp-shop-card__actions button:first-child{display:flex;align-items:center;gap:7px;padding:0 10px}.pp-shop-card__actions em{font:700 7px/1 var(--pp-mono);font-style:normal;text-transform:uppercase}.pp-shop-card__actions button:last-child{width:36px;font-size:18px}.pp-shop-card__actions button.is-active{background:var(--pp-red);border-color:var(--pp-red)}
.pp-shop-card__info{padding:14px 14px 12px;background:var(--pp-surface)}.pp-shop-card__eyebrow,.pp-shop-card__foot{display:flex;justify-content:space-between;gap:18px;font:700 7px/1 var(--pp-mono);text-transform:uppercase;color:var(--pp-text-muted)}.pp-shop-card__headline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;padding:14px 0 15px}.pp-shop-card__headline h2{margin:4px 0 5px;font:800 clamp(20px,1.55vw,30px)/.94 var(--pp-display);letter-spacing:-.045em}.pp-shop-card__headline h2 a{color:var(--pp-text);text-decoration:none}.pp-shop-card__headline p{margin:0;max-width:48ch;color:var(--pp-text-muted);font:500 11px/1.42 var(--pp-sans)}.pp-shop-card__price{white-space:nowrap;font:800 11px/1 var(--pp-mono)}.pp-shop-card__rating{display:inline-flex;gap:5px;align-items:center;font:800 8px/1 var(--pp-mono)}.pp-shop-card__rating i{font-style:normal;color:var(--pp-text-muted)}.pp-shop-card__foot{padding-top:12px;border-top:1px solid var(--pp-border)}

.pp-filter-backdrop{position:fixed;z-index:10000;inset:0;background:rgba(16,16,16,.34);opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease;backdrop-filter:grayscale(.35)}.pp-filter-backdrop.is-open{opacity:1;visibility:visible}
.pp-filter-drawer{position:fixed;z-index:10010;top:0;right:0;width:min(620px,42vw);height:100dvh;background:var(--pp-bg);border-left:1px solid var(--pp-border);transform:translateX(102%);transition:transform .38s var(--pp-ease);box-shadow:-22px 0 50px rgba(0,0,0,.08);visibility:hidden}.pp-filter-drawer.is-open{transform:translateX(0);visibility:visible}.pp-filter-drawer form{height:100%;display:grid;grid-template-rows:auto auto 1fr auto}.pp-filter-drawer header{display:flex;align-items:start;justify-content:space-between;padding:28px 30px 22px;border-bottom:1px solid var(--pp-border)}.pp-filter-drawer header h2{margin:7px 0 0;font:800 clamp(42px,4vw,68px)/.85 var(--pp-display);letter-spacing:-.055em}.pp-filter-drawer header button{width:40px;height:40px;border:1px solid var(--pp-border);background:transparent;color:var(--pp-text);font-size:23px;cursor:pointer}.pp-filter-drawer__search{padding:18px 30px;border-bottom:1px solid var(--pp-border);display:grid;grid-template-columns:70px 1fr;align-items:center}.pp-filter-drawer__search label{font:700 7px/1 var(--pp-mono);text-transform:uppercase}.pp-filter-drawer__search input{height:42px;border:0;border-bottom:1px solid var(--pp-border);background:transparent;color:var(--pp-text);font:700 16px/1 var(--pp-sans);outline:none}.pp-filter-drawer form>details:first-of-type{margin-top:0}.pp-filter-drawer form{overflow:hidden}.pp-filter-group{margin:0 30px;border-bottom:1px solid var(--pp-border)}.pp-filter-group summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:21px 0;cursor:pointer;font:700 9px/1 var(--pp-mono);text-transform:uppercase}.pp-filter-group summary::-webkit-details-marker{display:none}.pp-filter-group[open] summary span{font-size:0}.pp-filter-group[open] summary span::after{content:'−';font-size:14px}.pp-filter-group>div{display:grid;grid-template-columns:1fr;padding:0 0 17px}.pp-filter-group label{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:9px 0;cursor:pointer;font:600 13px/1.25 var(--pp-sans)}.pp-filter-group input{appearance:none;width:18px;height:18px;margin:0;border:1px solid var(--pp-border-strong,var(--pp-text));background:transparent}.pp-filter-group input:checked{background:var(--pp-text);box-shadow:inset 0 0 0 4px var(--pp-bg)}.pp-filter-group small{font:700 8px/1 var(--pp-mono);color:var(--pp-text-muted)}.pp-filter-drawer form>details{overflow:auto}.pp-filter-drawer form>footer{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1.35fr;gap:10px;padding:14px 16px;background:var(--pp-bg);border-top:1px solid var(--pp-border)}.pp-filter-drawer form>footer a,.pp-filter-drawer form>footer button{min-height:48px;display:grid;place-items:center;border:1px solid var(--pp-text);background:var(--pp-bg);color:var(--pp-text);text-decoration:none;font:800 8px/1 var(--pp-mono);text-transform:uppercase}.pp-filter-drawer form>footer button{background:var(--pp-text);color:var(--pp-bg);cursor:pointer}
.pp-filter-drawer form{padding-bottom:77px;overflow-y:auto}.pp-filter-drawer form>header,.pp-filter-drawer form>.pp-filter-drawer__search{position:sticky;z-index:2;background:var(--pp-bg)}.pp-filter-drawer form>header{top:0}.pp-filter-drawer form>.pp-filter-drawer__search{top:91px}

.pp-finder{position:fixed;z-index:10100;inset:0;background:var(--pp-bg);color:var(--pp-text);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,visibility .28s ease}.pp-finder.is-open{opacity:1;visibility:visible;transform:none}.pp-finder__shell{height:100dvh;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.pp-finder header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:15px var(--pp-shop-gutter);border-bottom:1px solid var(--pp-border)}.pp-finder header>a{justify-self:center;font:800 27px/.9 var(--pp-display);color:var(--pp-text);text-decoration:none;letter-spacing:-.04em}.pp-finder header>span{justify-self:end;font:700 9px/1 var(--pp-mono)}.pp-finder header>button{justify-self:start;width:36px;height:36px;border:1px solid var(--pp-border);background:transparent;color:var(--pp-text);font-size:22px;cursor:pointer}.pp-finder__step{display:none;overflow-y:auto;padding:clamp(28px,5vh,64px) var(--pp-shop-gutter) 30px}.pp-finder__step.is-active{display:block}.pp-finder__intro{max-width:620px;margin-bottom:clamp(34px,5vh,70px)}.pp-finder__intro>span{font:800 8px/1 var(--pp-mono);color:var(--pp-red)}.pp-finder__intro h2{margin:10px 0 8px;font:800 clamp(44px,4.6vw,82px)/.86 var(--pp-display);letter-spacing:-.06em}.pp-finder__intro p{margin:0;color:var(--pp-text-muted);font:500 14px/1.4 var(--pp-sans)}
.pp-finder__choices{display:grid;gap:14px}.pp-finder__choices--visual{grid-template-columns:repeat(4,minmax(220px,1fr));min-width:0}.pp-finder__choices button{position:relative;padding:0;border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);text-align:left;cursor:pointer;transition:border-color .2s ease,transform .22s ease,background .2s ease}.pp-finder__choices button.is-selected{border-color:var(--pp-moss);box-shadow:inset 0 0 0 2px var(--pp-moss);background:color-mix(in srgb,var(--pp-surface) 92%,var(--pp-moss) 8%)}.pp-finder__choices--visual button>span{display:block;padding:13px 13px 10px;font:700 8px/1 var(--pp-mono);text-transform:uppercase}.pp-finder__choices--visual button img{display:block;width:calc(100% - 24px);margin:0 12px 12px;aspect-ratio:4/3;object-fit:cover}.pp-finder__choices--visual button:hover{transform:translateY(-3px)}.pp-finder__choices--model{grid-template-columns:repeat(4,minmax(180px,1fr))}.pp-finder__choices--model button{min-height:155px;padding:18px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:12px}.pp-finder__choices--model button>span{font:700 18px/1 var(--pp-mono)}.pp-finder__choices--model button>b{align-self:center;font:800 clamp(18px,1.8vw,27px)/.95 var(--pp-display);letter-spacing:-.035em}.pp-finder__choices--model button>small{grid-column:2;font:700 7px/1 var(--pp-mono);color:var(--pp-text-muted)}
.pp-finder footer{display:grid;grid-template-columns:120px 1fr 160px;align-items:center;gap:16px;padding:13px var(--pp-shop-gutter);border-top:1px solid var(--pp-border);background:var(--pp-bg)}.pp-finder footer>button{min-height:44px;border:1px solid var(--pp-border);background:var(--pp-bg);color:var(--pp-text);font:800 8px/1 var(--pp-mono);text-transform:uppercase;cursor:pointer}.pp-finder footer>button:last-child{background:var(--pp-text);color:var(--pp-bg)}.pp-finder footer>div{display:flex;justify-content:center;gap:5px}.pp-finder footer>div i{width:28px;height:4px;background:var(--pp-border)}.pp-finder footer>div i.is-active{background:var(--pp-red)}
.pp-finder__results{padding-top:32px}.pp-finder__result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--pp-border);border-top:1px solid var(--pp-border)}.pp-finder-result{border-right:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface)}.pp-finder-result__media{position:relative;display:block;aspect-ratio:4/3;background:var(--pp-surface-2);overflow:hidden}.pp-finder-result__media img{width:100%;height:100%;object-fit:cover}.pp-finder-result__score{position:absolute;left:12px;top:12px;padding:7px 9px;background:var(--pp-charcoal);color:var(--pp-paper);font:800 8px/1 var(--pp-mono)}.pp-finder-result__body{padding:18px}.pp-finder-result__body h3{margin:0 0 7px;font:800 clamp(24px,2.2vw,35px)/.9 var(--pp-display);letter-spacing:-.045em}.pp-finder-result__body p{min-height:34px;margin:0 0 16px;color:var(--pp-text-muted);font:500 12px/1.4 var(--pp-sans)}.pp-finder-result__meta{display:flex;justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid var(--pp-border);font:700 8px/1 var(--pp-mono)}.pp-finder-result__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.pp-finder-result__actions a,.pp-finder-result__actions button{min-height:42px;display:grid;place-items:center;border:1px solid var(--pp-text);background:var(--pp-bg);color:var(--pp-text);text-decoration:none;font:800 7px/1 var(--pp-mono);text-transform:uppercase}.pp-finder-result__actions button{background:var(--pp-text);color:var(--pp-bg);cursor:pointer}

.pp-compare-bar{position:fixed;z-index:10040;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:14px;min-width:min(560px,calc(100vw - 30px));padding:9px 10px 9px 16px;background:var(--pp-charcoal);color:var(--pp-paper);border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 46px rgba(0,0,0,.24)}.pp-compare-bar[hidden]{display:none}.pp-compare-bar>span{margin-right:auto;font:700 8px/1 var(--pp-mono);text-transform:uppercase}.pp-compare-bar button{min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font:800 7px/1 var(--pp-mono);text-transform:uppercase;cursor:pointer}.pp-compare-bar button:last-child{background:#fff;color:#101010}
.pp-compare{position:fixed;z-index:10120;inset:0;background:var(--pp-bg);color:var(--pp-text);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,visibility .28s ease;overflow:auto}.pp-compare.is-open{opacity:1;visibility:visible;transform:none}.pp-compare>header{position:sticky;z-index:5;top:0;display:flex;justify-content:space-between;align-items:start;padding:28px var(--pp-shop-gutter);border-bottom:1px solid var(--pp-border);background:var(--pp-bg)}.pp-compare>header h2{margin:8px 0 7px;font:800 clamp(46px,5vw,82px)/.84 var(--pp-display);letter-spacing:-.06em}.pp-compare>header p{margin:0;color:var(--pp-text-muted)}.pp-compare>header button{width:44px;height:44px;border:1px solid var(--pp-border);background:transparent;color:var(--pp-text);font-size:24px;cursor:pointer}.pp-compare__body{padding:0 var(--pp-shop-gutter) 80px}.pp-compare-grid{display:grid;grid-template-columns:180px repeat(var(--pp-compare-cols,2),minmax(260px,1fr));border-left:1px solid var(--pp-border)}.pp-compare-cell{min-height:54px;padding:15px;border-right:1px solid var(--pp-border);border-bottom:1px solid var(--pp-border);background:var(--pp-surface);font:600 12px/1.4 var(--pp-sans)}.pp-compare-cell--label{background:var(--pp-bg);font:800 8px/1 var(--pp-mono);text-transform:uppercase;color:var(--pp-text-muted)}.pp-compare-product{padding:0!important}.pp-compare-product__image{position:relative;aspect-ratio:4/3;background:var(--pp-surface-2);overflow:hidden}.pp-compare-product__image img{width:100%;height:100%;object-fit:cover}.pp-compare-product__image button{position:absolute;right:9px;top:9px;width:34px;height:34px;border:0;background:var(--pp-charcoal);color:var(--pp-paper);cursor:pointer}.pp-compare-product__text{padding:17px}.pp-compare-product__text h3{margin:0 0 7px;font:800 clamp(22px,2vw,32px)/.9 var(--pp-display);letter-spacing:-.045em}.pp-compare-product__text p{margin:0 0 12px;color:var(--pp-text-muted);font-size:11px}.pp-compare-product__text a{display:inline-flex;margin-top:12px;font:800 8px/1 var(--pp-mono);text-transform:uppercase;color:var(--pp-text)}

html[data-pp-theme="dark"] .pp-shop-card__media-wrap,html[data-pp-theme="dark"] .pp-shop-quick__track a>span,html[data-pp-theme="dark"] .pp-shop-marquee{background:var(--pp-surface)}.pp-shop-hero,.pp-shop-quick,.pp-shop-products,.pp-finder,.pp-compare,.pp-filter-drawer{color-scheme:inherit}

@media(max-width:1280px){.pp-shop-hero__copy{width:min(560px,52vw)}.pp-shop-quick__track{grid-template-columns:repeat(7,minmax(120px,1fr));overflow-x:auto;scrollbar-width:none}.pp-shop-quick__track::-webkit-scrollbar{display:none}.pp-shop-card__media-wrap{min-height:0}.pp-filter-drawer{width:min(590px,54vw)}.pp-finder__choices--visual{grid-template-columns:repeat(3,minmax(200px,1fr))}.pp-finder__choices--model{grid-template-columns:repeat(3,minmax(180px,1fr))}}
@media(max-width:980px){.pp-shop-hero{min-height:760px}.pp-shop-hero__copy{left:18px;right:18px;top:92px;width:auto}.pp-shop-hero__copy h1{font-size:clamp(50px,9vw,82px)}.pp-shop-marquee{padding-bottom:35px}.pp-shop-hero-card{width:clamp(270px,52vw,420px)}.pp-shop-toolbar{top:0;align-items:flex-start;flex-direction:column;gap:20px}.pp-shop-toolbar__actions{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.pp-shop-toolbar__actions::-webkit-scrollbar{display:none}.pp-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-shop-card,.pp-shop-card--featured,.pp-shop-card--editorial{grid-column:span 1}.pp-shop-card__media-wrap{min-height:0;aspect-ratio:4/3}.pp-shop-card--featured .pp-shop-card__media-wrap,.pp-shop-card--editorial .pp-shop-card__media-wrap{aspect-ratio:4/3}.pp-filter-drawer{width:min(620px,78vw)}.pp-finder__choices--visual{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-finder__choices--model{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-finder__result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-compare-grid{min-width:920px}.pp-compare__body{overflow-x:auto}}
@media(max-width:680px){.pp-shop{--pp-shop-gutter:14px}.pp-shop-hero{min-height:700px}.pp-shop-hero__copy{top:82px;padding:18px}.pp-shop-hero__copy h1{max-width:9ch;font-size:clamp(46px,14vw,66px)}.pp-shop-hero__copy>p{font-size:13px}.pp-shop-marquee{padding-bottom:22px}.pp-shop-hero-card{width:76vw}.pp-shop-quick{padding-top:44px}.pp-shop-quick__head{align-items:flex-start;flex-direction:column;gap:8px}.pp-shop-quick__track{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:112px}.pp-shop-quick__track img{width:82%;height:82%}.pp-shop-toolbar h2{font-size:clamp(38px,12vw,58px)}.pp-shop-toolbar__actions{margin-inline:-14px;padding-inline:14px;width:calc(100% + 28px)}.pp-shop-result-count{display:none}.pp-shop-grid{grid-template-columns:1fr}.pp-shop-card,.pp-shop-card--featured,.pp-shop-card--editorial{grid-column:1}.pp-shop-card__media-wrap{min-height:0;aspect-ratio:4/3}.pp-shop-card__headline{grid-template-columns:1fr;gap:12px}.pp-shop-card__headline h2{font-size:30px}.pp-shop-card__headline p{font-size:11px}.pp-shop-card__price{justify-self:start}.pp-shop-card__actions em{display:none}.pp-shop-card__actions button:first-child{width:36px;padding:0;justify-content:center}.pp-filter-drawer{width:100vw}.pp-filter-drawer header{padding-inline:18px}.pp-filter-drawer__search,.pp-filter-group{margin-inline:18px}.pp-filter-drawer__search{padding-inline:0}.pp-filter-drawer form>.pp-filter-drawer__search{top:86px}.pp-finder header{padding-inline:14px}.pp-finder header>a{font-size:22px}.pp-finder__step{padding-inline:14px}.pp-finder__intro{margin-bottom:30px}.pp-finder__intro h2{font-size:clamp(42px,13vw,62px)}.pp-finder__choices--visual{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:82vw;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}.pp-finder__choices--visual::-webkit-scrollbar{display:none}.pp-finder__choices--visual button{scroll-snap-align:center}.pp-finder__choices--model{grid-template-columns:1fr 1fr;gap:8px}.pp-finder__choices--model button{min-height:125px;padding:14px}.pp-finder footer{grid-template-columns:78px 1fr 104px;padding-inline:14px}.pp-finder__result-grid{grid-template-columns:1fr}.pp-compare-bar{bottom:8px;min-width:calc(100vw - 16px);gap:7px;padding-left:12px}.pp-compare-bar button{padding-inline:9px}.pp-compare>header{padding:20px 14px}.pp-compare>header h2{font-size:48px}.pp-compare__body{padding-inline:14px}.pp-compare-grid{grid-template-columns:120px repeat(var(--pp-compare-cols,2),minmax(235px,1fr));min-width:780px}}

/* v3.3.1 — premium editorial shop grid: 3 / 2 / 1 with deliberate feature rhythm */
@media(min-width:981px){
  .pp-shop-card--featured .pp-shop-card__headline h2{font-size:clamp(26px,2vw,38px)}
  .pp-shop-card--featured .pp-shop-card__headline p{max-width:62ch;font-size:12px}
  .pp-shop-card--editorial .pp-shop-card__headline h2{font-size:clamp(22px,1.8vw,34px)}
}
@media(min-width:1281px){
  .pp-shop-grid{grid-auto-flow:row dense}
}
@media(max-width:980px) and (min-width:681px){
  .pp-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pp-shop-card,.pp-shop-card--featured,.pp-shop-card--editorial{grid-column:span 1}
}
@media(max-width:680px){
  .pp-shop-grid{grid-template-columns:1fr}
  .pp-shop-card,.pp-shop-card--featured,.pp-shop-card--editorial{grid-column:1}
  .pp-shop-card__info{padding:13px 12px 12px}
}
@media(prefers-reduced-motion:reduce){.pp-shop-marquee__track{animation:none}.pp-shop-card,.pp-shop-card *, .pp-finder,.pp-compare,.pp-filter-drawer{transition:none!important}}
.pp-filter-drawer form{display:block!important}


/* v3.4.0 — immersive Studio route */
body.pp-studio-route { background:#111111; }
body.pp-studio-route main,
body.pp-studio-route .site-main,
body.pp-studio-route .entry-content,
body.pp-studio-route .ct-container,
body.pp-studio-route .ct-container-full { max-width:none !important; width:100% !important; margin:0 !important; padding-left:0 !important; padding-right:0 !important; }
body.pp-studio-route .entry-content > .ppc-studio { margin-top:0; margin-bottom:0; }
body.pp-studio-route .pp-global-footer { margin-top:0; }


/* v3.4.1 — Studio owns the complete route canvas; no Blocksy/content gap above it. */
body.pp-studio-route,
body.pp-studio-route #main-container,
body.pp-studio-route .site-main,
body.pp-studio-route main.site-main,
body.pp-studio-route .content-area,
body.pp-studio-route .entry-content {
	padding-top:0!important;
	padding-bottom:0!important;
	margin-top:0!important;
	background:#111111!important;
}
html[data-pp-theme='light'] body.pp-studio-route,
html[data-pp-theme='light'] body.pp-studio-route #main-container,
html[data-pp-theme='light'] body.pp-studio-route .site-main,
html[data-pp-theme='light'] body.pp-studio-route main.site-main,
html[data-pp-theme='light'] body.pp-studio-route .content-area,
html[data-pp-theme='light'] body.pp-studio-route .entry-content { background:#F5F1EC!important; }
/* v3.15.15 — Studio uses the same global footer as every public route.
   platform.css loads after shell.css, so this file must never hide it again. */
body.pp-studio-route .pp-global-footer{
	display:block!important;
	visibility:visible!important;
	opacity:1!important;
	position:relative!important;
	clear:both!important;
	margin-top:0!important;
}


/* ============================================================
   v3.4.2 — STUDIO AS FIRST-CLASS GLOBAL NAV DESTINATION
   ============================================================ */
body.pp-studio-route .pp-context-cta {
	font-weight:800;
}
html[data-pp-theme='dark'] body.pp-studio-route,
html[data-pp-theme='dark'] body.pp-studio-route #main-container,
html[data-pp-theme='dark'] body.pp-studio-route .site-main,
html[data-pp-theme='dark'] body.pp-studio-route main.site-main,
html[data-pp-theme='dark'] body.pp-studio-route .content-area,
html[data-pp-theme='dark'] body.pp-studio-route .entry-content { background:#111111!important; }
html[data-pp-theme='light'] body.pp-studio-route,
html[data-pp-theme='light'] body.pp-studio-route #main-container,
html[data-pp-theme='light'] body.pp-studio-route .site-main,
html[data-pp-theme='light'] body.pp-studio-route main.site-main,
html[data-pp-theme='light'] body.pp-studio-route .content-area,
html[data-pp-theme='light'] body.pp-studio-route .entry-content { background:#F5F1EC!important; }
body.pp-studio-route .site-main,
body.pp-studio-route main.site-main,
body.pp-studio-route .content-area,
body.pp-studio-route .entry-content { padding-top:0!important;margin-top:0!important; }


/* =====================================================================
   v3.4.8 — Shop hero / Polaroid contact sheet + premium related cards
   ===================================================================== */
.pp-shop-hero{
	min-height:clamp(720px,82svh,980px);
	background:linear-gradient(102deg,#E3E0DB 0 52%,#171717 52% 100%);
	isolation:isolate;
}
.pp-shop-hero::after{
	content:'';position:absolute;z-index:1;inset:0;pointer-events:none;opacity:.18;
	background-image:repeating-linear-gradient(0deg,rgba(17,17,17,.08) 0 1px,transparent 1px 5px);
	mix-blend-mode:multiply;
}
.pp-shop-hero__folio{
	position:absolute;z-index:9;left:var(--pp-shop-gutter);right:var(--pp-shop-gutter);top:42px;
	display:flex;justify-content:space-between;gap:20px;color:#111;
	font:800 8px/1 var(--pp-mono);letter-spacing:.12em;text-transform:uppercase;
}
.pp-shop-hero__folio span:last-child{color:rgba(245,241,236,.72)}
.pp-shop-hero__lightleak{
	position:absolute;z-index:4;top:-26%;bottom:-26%;left:44%;width:13%;pointer-events:none;
	background:linear-gradient(90deg,transparent,rgba(205,84,47,.06),rgba(235,123,82,.28),rgba(255,218,175,.11),transparent);
	filter:blur(12px);transform:skewX(-8deg) translateX(-180%);animation:ppShopDevelop 10s cubic-bezier(.45,0,.55,1) infinite;
	mix-blend-mode:screen;
}
@keyframes ppShopDevelop{0%,18%{transform:skewX(-8deg) translateX(-180%);opacity:0}28%{opacity:1}62%{opacity:.82}78%,100%{transform:skewX(-8deg) translateX(530%);opacity:0}}
.pp-shop-hero__copy{
	left:var(--pp-shop-gutter);top:clamp(104px,13vh,156px);width:min(560px,42vw);
	padding:28px 30px 27px;background:rgba(245,241,236,.965);border:1px solid #111;
	backdrop-filter:blur(14px);box-shadow:18px 20px 0 rgba(17,17,17,.08),0 28px 70px rgba(17,17,17,.12);
	transform:translateZ(0);
}
.pp-shop-hero__copy::before{content:'';position:absolute;left:-1px;top:-1px;width:76px;height:6px;background:var(--pp-red)}
.pp-shop-hero__copy::after{content:'01 / SHOP';position:absolute;right:18px;top:17px;font:800 7px/1 var(--pp-mono);letter-spacing:.12em;color:rgba(17,17,17,.42)}
.pp-shop-hero__copy h1{margin:13px 0 17px;max-width:7.8ch;font-size:clamp(58px,5.25vw,96px);line-height:.86;letter-spacing:-.07em}
.pp-shop-hero__copy>p{max-width:37ch;margin-bottom:17px;color:rgba(17,17,17,.62);font-size:clamp(14px,1vw,18px);line-height:1.47}
.pp-shop-hero__meta{display:flex!important;justify-content:space-between;gap:16px!important;margin:0 0 22px;padding:11px 0 0;border-top:1px solid rgba(17,17,17,.14);font:800 7px/1 var(--pp-mono);letter-spacing:.09em;color:rgba(17,17,17,.48)}
.pp-shop-hero__actions{display:flex!important;gap:18px!important;align-items:center!important;flex-wrap:wrap!important}
.pp-shop-hero__actions .pp-platform-button{transition:transform .25s var(--pp-ease),background .2s ease,color .2s ease}
.pp-shop-hero__actions .pp-platform-button:hover{transform:translateY(-2px);background:var(--pp-red);color:#fff}
.pp-shop-find-link{position:relative;font-weight:800!important;text-transform:uppercase;font-size:9px!important;letter-spacing:.04em}
.pp-shop-find-link::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(.35);transform-origin:left;transition:transform .25s var(--pp-ease)}
.pp-shop-find-link:hover::after{transform:scaleX(1)}

.pp-shop-marquee{z-index:2;align-items:flex-end;padding-bottom:clamp(30px,4vw,58px);background:transparent}
.pp-shop-marquee::after{z-index:3;background:linear-gradient(90deg,rgba(227,224,219,.98) 0,rgba(227,224,219,.1) 14%,transparent 32%,transparent 86%,rgba(17,17,17,.7) 100%);opacity:1}
.pp-shop-marquee__track{position:relative;z-index:2;gap:24px;padding-left:22vw;animation-duration:68s}
.pp-shop-hero-card{
	width:clamp(290px,24vw,430px);aspect-ratio:4/5;padding:10px 10px 88px;overflow:visible;
	background:#F5F1EC;color:#111;border:1px solid #111;text-decoration:none;
	box-shadow:0 24px 54px rgba(0,0,0,.18);transform:rotate(-1.15deg);transform-origin:50% 80%;
	transition:transform .42s var(--pp-ease),box-shadow .42s ease;
}
.pp-shop-hero-card:nth-child(3n+2){transform:rotate(1.1deg) translateY(8px)}
.pp-shop-hero-card:nth-child(3n){transform:rotate(-.35deg) translateY(-5px)}
.pp-shop-hero-card__frame{position:absolute;left:10px;right:10px;top:10px;bottom:88px;overflow:hidden;background:#D7D4CE;border:1px solid rgba(17,17,17,.12)}
.pp-shop-hero-card__frame::after{content:'';position:absolute;inset:0;background:linear-gradient(112deg,transparent 24%,rgba(255,255,255,.22) 46%,transparent 62%);transform:translateX(-130%);transition:transform .8s var(--pp-ease)}
.pp-shop-hero-card img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.9) contrast(1.02);transition:transform .7s var(--pp-ease),filter .5s ease}
.pp-shop-hero-card::after{display:none!important}
.pp-shop-hero-card__caption{position:absolute!important;left:16px!important;right:16px!important;bottom:14px!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto!important;gap:4px 14px!important;color:#111!important}
.pp-shop-hero-card__caption small{grid-column:1/-1;font:800 6.5px/1 var(--pp-mono);letter-spacing:.1em;color:rgba(17,17,17,.42)}
.pp-shop-hero-card__caption b{grid-column:1;font:800 clamp(18px,1.45vw,25px)/.92 var(--pp-display);letter-spacing:-.045em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp-shop-hero-card__caption em{display:none}
.pp-shop-hero-card__caption i{grid-column:2;grid-row:2;align-self:end;font:800 8px/1 var(--pp-mono);font-style:normal;text-transform:uppercase;white-space:nowrap}
.pp-shop-hero-card:hover{z-index:6;transform:translateY(-14px) rotate(0deg) scale(1.018);box-shadow:0 34px 78px rgba(0,0,0,.28)}
.pp-shop-hero-card:hover img{transform:scale(1.035);filter:saturate(1.03) contrast(1.02)}
.pp-shop-hero-card:hover .pp-shop-hero-card__frame::after{transform:translateX(130%)}

/* Related prompts use the same visual language as the shop, not Woo's default cards. */
.pp-product-related{padding-top:clamp(90px,9vw,150px);border-top:1px solid var(--pp-border)}
.pp-product-related__head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:clamp(35px,7vw,120px);align-items:end;margin-bottom:42px}
.pp-product-related__head h2{max-width:none!important}
.pp-product-related__head>p{max-width:430px;margin:0 0 7px;color:var(--pp-text-muted);font:600 14px/1.5 var(--pp-sans)}
.pp-product-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-left:1px solid var(--pp-border);border-top:1px solid var(--pp-border)}
.pp-product-related-grid .pp-shop-card{grid-column:span 1!important;border-top:0;border-left:0;transition:transform .32s var(--pp-ease),box-shadow .32s ease,background .2s ease}
.pp-product-related-grid .pp-shop-card:hover{z-index:2;transform:translateY(-7px);box-shadow:0 22px 60px rgba(17,17,17,.14)}
.pp-product-related-grid .pp-shop-card__media-wrap{aspect-ratio:4/5!important}
.pp-product-related-grid .pp-shop-card__headline{grid-template-columns:1fr;gap:12px}
.pp-product-related-grid .pp-shop-card__headline h2{font-size:clamp(22px,1.6vw,30px)!important}
.pp-product-related-grid .pp-shop-card__price{justify-self:start}
.pp-product-related-grid .pp-shop-card__media>span{background:var(--pp-red);color:#fff}
.pp-product-related-grid .pp-shop-card__actions button{background:rgba(17,17,17,.78)!important;color:#fff!important;border-color:rgba(255,255,255,.4)!important}
.pp-product-related-grid .pp-shop-card__actions button:hover,.pp-product-related-grid .pp-shop-card__actions button.is-active{background:var(--pp-red)!important;border-color:var(--pp-red)!important}

@media(max-width:980px){
	.pp-shop-hero{background:linear-gradient(180deg,#E3E0DB 0 58%,#171717 58% 100%)}
	.pp-shop-hero__folio{top:26px;left:18px;right:18px}.pp-shop-hero__folio span:last-child{color:#111}
	.pp-shop-hero__copy{left:18px;right:18px;top:76px;width:auto;max-width:590px;padding:25px 24px 24px}
	.pp-shop-marquee__track{padding-left:38vw;gap:18px}.pp-shop-hero-card{width:clamp(270px,47vw,390px)}
	.pp-product-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-product-related__head{grid-template-columns:1fr;gap:18px}
}
@media(max-width:680px){
	.pp-shop-hero{min-height:740px}.pp-shop-hero__folio{font-size:6.5px}.pp-shop-hero__copy{top:70px;padding:23px 20px 21px}.pp-shop-hero__copy h1{font-size:clamp(48px,14vw,66px)}
	.pp-shop-hero__meta{font-size:6px}.pp-shop-marquee{padding-bottom:20px}.pp-shop-marquee__track{padding-left:48vw;gap:14px}.pp-shop-hero-card{width:72vw;padding-bottom:76px}.pp-shop-hero-card__frame{bottom:76px}.pp-shop-hero-card__caption b{font-size:18px}
	.pp-product-related-grid{grid-template-columns:1fr}.pp-product-related__head>p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.pp-shop-hero__lightleak{animation:none}.pp-shop-hero-card{transition:none}}

/* =====================================================================
   v3.5.1 — Shop Polaroid rail, corrected
   Real print construction: image first, white caption margin below.
   The shop canvas starts at the viewport top; the rail itself clears the
   fixed Photoprompt header exactly once, so there is no double gap.
   ===================================================================== */
body.woocommerce-shop.pp-platform-route{
	--pp-shop-header-edge:106px;
}
body.woocommerce-shop.pp-platform-route .site-main,
body.woocommerce-shop.pp-platform-route main.site-main,
body.woocommerce-shop.pp-platform-route .content-area,
body.woocommerce-shop.pp-platform-route .entry-content{
	padding-top:0!important;
	margin-top:0!important;
}
body.woocommerce-shop.pp-platform-route .pp-shop,
body.woocommerce-shop.pp-platform-route .pp-shop-hero{
	margin-top:0!important;
}
.pp-shop-hero{
	min-height:clamp(760px,84svh,980px);
}
.pp-shop-marquee{
	inset:0;
	align-items:flex-start;
	padding:var(--pp-shop-header-edge) 0 32px;
}
.pp-shop-marquee__track{
	align-items:flex-start;
	gap:clamp(18px,1.45vw,30px);
	padding-left:clamp(43vw,48vw,53vw);
}

/* The card is the paper. The image and caption are separate flow blocks,
   avoiding the legacy direct-child span rule completely. */
.pp-shop-hero-card{
	position:relative;
	display:block;
	flex:0 0 auto;
	width:clamp(278px,20.5vw,386px);
	aspect-ratio:auto!important;
	padding:11px 11px 0!important;
	overflow:hidden!important;
	background:#F8F7F3!important;
	color:#111!important;
	border:1px solid rgba(17,17,17,.20)!important;
	box-shadow:0 18px 42px rgba(0,0,0,.18),0 1px 0 rgba(255,255,255,.95) inset;
	text-decoration:none;
	transform:rotate(-.7deg);
	transform-origin:50% 88%;
	transition:transform .42s var(--pp-ease),box-shadow .42s ease,border-color .25s ease;
}
.pp-shop-hero-card:nth-child(3n+2){transform:rotate(.65deg) translateY(7px)}
.pp-shop-hero-card:nth-child(3n){transform:rotate(-.18deg) translateY(-3px)}
.pp-shop-hero-card::before{
	content:'';
	position:absolute;
	z-index:5;
	inset:0;
	pointer-events:none;
	opacity:.18;
	background-image:repeating-linear-gradient(0deg,rgba(17,17,17,.024) 0 1px,transparent 1px 3px);
	mix-blend-mode:multiply;
}
.pp-shop-hero-card::after{display:none!important}

/* Keep the existing slider crop. We only add the print/paper treatment. */
.pp-shop-hero-card__frame{
	position:relative!important;
	display:block!important;
	width:100%!important;
	aspect-ratio:4/5;
	overflow:hidden!important;
	background:#D9D7D2;
	border:0!important;
}
.pp-shop-hero-card__frame::after{
	content:'';
	position:absolute;
	inset:0;
	z-index:2;
	pointer-events:none;
	background:linear-gradient(112deg,transparent 26%,rgba(255,255,255,.18) 48%,transparent 66%);
	transform:translateX(-145%);
	transition:transform .85s var(--pp-ease);
}
.pp-shop-hero-card img{
	position:absolute!important;
	inset:0!important;
	display:block!important;
	width:100%!important;
	height:100%!important;
	max-height:none!important;
	object-fit:cover!important;
	object-position:center center;
	filter:none!important;
	transform:none!important;
	transition:transform .65s var(--pp-ease)!important;
}

/* Classic Polaroid lower margin: only the rubric and a restrained action. */
.pp-shop-hero-card__caption{
	position:relative!important;

	display:grid!important;
	grid-template-columns:minmax(0,1fr) 30px!important;
	align-items:center!important;
	gap:14px!important;
	min-height:82px;
	padding:13px 5px 15px!important;
	background:#F8F7F3!important;
	color:#111!important;
}
.pp-shop-hero-card__caption small{display:none!important}
.pp-shop-hero-card__caption b{
	min-width:0;
	font:800 clamp(20px,1.35vw,26px)/.94 var(--pp-display)!important;
	letter-spacing:-.045em!important;
	white-space:nowrap!important;
	overflow:hidden!important;
	text-overflow:ellipsis!important;
}
.pp-shop-hero-card__caption i{
	display:grid!important;
	place-items:center;
	width:30px;
	height:30px;
	border:1px solid rgba(17,17,17,.25);
	border-radius:50%;
	font:800 12px/1 var(--pp-mono)!important;
	font-style:normal!important;
	transition:background .22s ease,color .22s ease,border-color .22s ease,transform .32s var(--pp-ease);
}
.pp-shop-hero-card:hover{
	z-index:8;
	transform:translateY(-12px) rotate(0deg) scale(1.012);
	border-color:rgba(17,17,17,.38)!important;
	box-shadow:0 34px 76px rgba(0,0,0,.27),0 1px 0 rgba(255,255,255,.95) inset;
}
.pp-shop-hero-card:hover img{transform:scale(1.018)!important}
.pp-shop-hero-card:hover .pp-shop-hero-card__frame::after{transform:translateX(145%)}
.pp-shop-hero-card:hover .pp-shop-hero-card__caption i{background:#111;color:#F8F7F3;border-color:#111;transform:translate(2px,-2px)}

/* Copy panel sits under the fixed nav, while the first print touches that nav edge. */
.pp-shop-hero__copy{top:clamp(132px,15vh,178px)}

@media(max-width:980px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:96px}
	.pp-shop-marquee__track{padding-left:56vw;gap:18px}
	.pp-shop-hero-card{width:clamp(255px,44vw,350px)}
	.pp-shop-hero-card__caption{min-height:76px;padding:11px 4px 13px!important}
	.pp-shop-hero__copy{top:122px}
}
@media(max-width:680px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:88px}
	.pp-shop-hero{min-height:700px}
	.pp-shop-marquee{padding-bottom:18px}
	.pp-shop-marquee__track{padding-left:68vw;gap:13px}
	.pp-shop-hero-card{width:72vw;padding:8px 8px 0!important}
	.pp-shop-hero-card__caption{min-height:68px;padding:9px 3px 11px!important;grid-template-columns:minmax(0,1fr) 27px!important;gap:10px!important}
	.pp-shop-hero-card__caption b{font-size:19px!important}
	.pp-shop-hero-card__caption i{width:27px;height:27px}
	.pp-shop-hero__copy{top:108px}
}
@media(prefers-reduced-motion:reduce){
	.pp-shop-hero-card,.pp-shop-hero-card img,.pp-shop-hero-card__caption i,.pp-shop-hero-card__frame::after{transition:none!important}
}


/* =====================================================================
   v3.5.2 — Polaroid rail premium finish
   More breathing room under the menu, dark-mode readable hero card,
   cleaner image clipping and a subtler Polaroid-style caption.
   ===================================================================== */
body.woocommerce-shop.pp-platform-route{
	--pp-shop-header-edge:136px;
}
.pp-shop-hero{
	min-height:clamp(790px,86svh,1020px);
}
.pp-shop-marquee{
	padding:calc(var(--pp-shop-header-edge) + 18px) 0 40px;
}
.pp-shop-marquee__track{
	gap:clamp(22px,1.7vw,34px);
	padding-left:clamp(42vw,47vw,51vw);
	padding-right:clamp(72px,7vw,144px);
}
.pp-shop-marquee::after{
	background:linear-gradient(90deg,rgba(227,224,219,.98) 0,rgba(227,224,219,.14) 15%,transparent 34%,transparent 82%,rgba(17,17,17,.55) 94%,rgba(17,17,17,.88) 100%);
}
.pp-shop-hero-card{
	width:clamp(292px,20.7vw,392px);
	padding:12px 12px 0!important;
	border-color:rgba(17,17,17,.18)!important;
	box-shadow:0 22px 54px rgba(0,0,0,.18),0 1px 0 rgba(255,255,255,.92) inset;
}
.pp-shop-hero-card::before{
	opacity:.11;
	background-image:repeating-linear-gradient(0deg,rgba(17,17,17,.022) 0 1px,transparent 1px 4px);
}
.pp-shop-hero-card__frame{
	line-height:0;
	isolation:isolate;
	contain:paint;
	clip-path:inset(0 round 0);
	background:#d8d5cf;
	box-shadow:0 0 0 1px rgba(17,17,17,.06) inset;
}
.pp-shop-hero-card__frame::before{
	content:'';
	position:absolute;
	left:0;right:0;bottom:0;
	height:1px;
	background:rgba(17,17,17,.10);
	z-index:3;
}
.pp-shop-hero-card img{
	left:-.5px!important;
	top:-.5px!important;
	width:calc(100% + 1px)!important;
	height:calc(100% + 1px)!important;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
	transform:translateZ(0)!important;
	will-change:transform;
}
.pp-shop-hero-card__caption{
	grid-template-columns:minmax(0,1fr) 36px!important;
	grid-template-rows:auto auto!important;
	align-items:end!important;
	gap:6px 16px!important;
	min-height:98px;
	padding:14px 14px 17px 7px!important;
}
.pp-shop-hero-card__caption b{
	grid-column:1;
	grid-row:1;
	font-size:clamp(19px,1.38vw,26px)!important;
}
.pp-shop-hero-card__caption small{
	display:block!important;
	grid-column:1;
	grid-row:2;
	margin-top:1px;
	font:600 clamp(13px,1vw,16px)/1.05 "Bradley Hand", "Segoe Script", "Snell Roundhand", cursive;
	letter-spacing:.01em;
	color:rgba(17,17,17,.58);
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.pp-shop-hero-card__caption i{
	grid-column:2;
	grid-row:1 / span 2;
	justify-self:end;
	align-self:end;
	width:32px;
	height:32px;
	margin-right:4px;
	margin-bottom:2px;
	border-color:rgba(17,17,17,.18);
	background:rgba(255,255,255,.7);
	box-shadow:0 1px 0 rgba(255,255,255,.85) inset;
}
.pp-shop-hero-card:hover{
	transform:translateY(-12px) rotate(0deg) scale(1.014);
	box-shadow:0 38px 82px rgba(0,0,0,.28),0 1px 0 rgba(255,255,255,.95) inset;
}
.pp-shop-hero-card:hover .pp-shop-hero-card__caption i{
	margin-right:3px;
}
.pp-shop-hero__copy{
	top:clamp(146px,17vh,196px);
	box-shadow:22px 24px 0 rgba(17,17,17,.08),0 30px 76px rgba(17,17,17,.14);
}
html[data-pp-theme='dark'] .pp-shop-hero{
	background:linear-gradient(102deg,#1a1a1a 0 50%,#0c0c0c 50% 100%);
}
html[data-pp-theme='dark'] .pp-shop-hero::after{
	opacity:.13;
	background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 1px,transparent 1px 5px);
	mix-blend-mode:screen;
}
html[data-pp-theme='dark'] .pp-shop-hero__folio{color:rgba(245,241,236,.92)}
html[data-pp-theme='dark'] .pp-shop-hero__folio span:last-child{color:rgba(245,241,236,.62)}
html[data-pp-theme='dark'] .pp-shop-hero__copy{
	background:rgba(247,244,239,.985)!important;
	color:#111!important;
	border-color:#111!important;
	box-shadow:22px 24px 0 rgba(0,0,0,.28),0 34px 84px rgba(0,0,0,.42);
}
html[data-pp-theme='dark'] .pp-shop-hero__copy h1,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-kicker,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-platform-link,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-platform-button--dark{color:#111!important}
html[data-pp-theme='dark'] .pp-shop-hero__copy > p{color:rgba(17,17,17,.68)!important}
html[data-pp-theme='dark'] .pp-shop-hero__meta{color:rgba(17,17,17,.52)!important;border-top-color:rgba(17,17,17,.14)!important}
html[data-pp-theme='dark'] .pp-shop-find-link::after{background:#111}
html[data-pp-theme='dark'] .pp-shop-hero-card{
	background:#F8F7F3!important;
	color:#111!important;
}
html[data-pp-theme='dark'] .pp-shop-hero-card__caption,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption b,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption small,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption i{color:#111!important}
@media(max-width:980px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:122px}
	.pp-shop-marquee{padding-bottom:34px}
	.pp-shop-marquee__track{padding-left:54vw;padding-right:72px;gap:18px}
	.pp-shop-hero-card{width:clamp(258px,44vw,352px)}
	.pp-shop-hero-card__caption{min-height:92px;padding:13px 12px 15px 6px!important}
	.pp-shop-hero__copy{top:138px}
}
@media(max-width:680px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:98px}
	.pp-shop-hero{min-height:720px}
	.pp-shop-marquee{padding-bottom:20px}
	.pp-shop-marquee__track{padding-left:68vw;padding-right:24px;gap:14px}
	.pp-shop-hero-card{width:72vw;padding:8px 8px 0!important}
	.pp-shop-hero-card__caption{grid-template-columns:minmax(0,1fr) 30px!important;min-height:78px;padding:10px 10px 12px 4px!important;gap:5px 10px!important}
	.pp-shop-hero-card__caption small{font-size:12px}
	.pp-shop-hero-card__caption i{width:28px;height:28px;margin-right:2px}
	.pp-shop-hero__copy{top:118px}
}


/* =====================================================================
   v3.5.3 — Shop hero dark rail fix
   Full black backdrop, lower rail start, cleaned caption separator and
   unclipped rubric titles.
   ===================================================================== */
body.woocommerce-shop.pp-platform-route{
	--pp-shop-header-edge:168px;
}
.pp-shop-hero{
	background:#111111!important;
	min-height:clamp(820px,88svh,1040px);
}
.pp-shop-hero::after{
	opacity:.16;
	background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 6px)!important;
	mix-blend-mode:screen;
}
.pp-shop-marquee{
	padding:calc(var(--pp-shop-header-edge) + 28px) 0 44px;
}
.pp-shop-marquee::after{
	background:linear-gradient(90deg,rgba(17,17,17,.96) 0,rgba(17,17,17,.78) 10%,rgba(17,17,17,.18) 22%,transparent 36%,transparent 80%,rgba(17,17,17,.38) 90%,rgba(17,17,17,.88) 100%)!important;
}
.pp-shop-marquee__track{
	padding-left:clamp(44vw,49vw,53vw);
	padding-right:clamp(84px,8vw,156px);
	gap:clamp(24px,1.8vw,36px);
}
.pp-shop-hero__folio,
.pp-shop-hero__folio span:last-child{
	color:rgba(245,241,236,.84)!important;
}
.pp-shop-hero__copy{
	top:clamp(172px,19vh,220px)!important;
	background:rgba(245,241,236,.985)!important;
	color:#111!important;
	box-shadow:22px 28px 0 rgba(0,0,0,.22),0 34px 84px rgba(0,0,0,.26);
}
.pp-shop-hero__copy > p{color:rgba(17,17,17,.66)!important}
.pp-shop-hero__meta{color:rgba(17,17,17,.48)!important;border-top-color:rgba(17,17,17,.14)!important}
.pp-shop-find-link::after{background:#111!important}
.pp-shop-hero-card{
	overflow:visible!important;
}
.pp-shop-hero-card__frame{
	clip-path:inset(0 0 0 0 round 0);
	border-bottom:0!important;
}
.pp-shop-hero-card__frame::before{
	height:2px;
	background:#F8F7F3;
	bottom:-1px;
	left:-1px;
	right:-1px;
	z-index:4;
}
.pp-shop-hero-card img{
	left:0!important;
	top:0!important;
	width:100%!important;
	height:100%!important;
	transform:translateZ(0)!important;
}
.pp-shop-hero-card__caption{
	position:relative!important;
	z-index:6;
	margin-top:0;
	padding:16px 16px 18px 10px!important;
	grid-template-columns:minmax(0,1fr) 38px!important;
	min-height:104px;
	background:#F8F7F3!important;
}
.pp-shop-hero-card__caption::before{
	content:'';
	position:absolute;
	left:0;right:0;top:0;
	height:3px;
	background:#F8F7F3;
}
.pp-shop-hero-card__caption b{
	padding-right:6px;
	padding-bottom:3px;
	line-height:1.08!important;
	overflow:visible!important;
	text-overflow:clip!important;
}
.pp-shop-hero-card__caption small{
	padding-right:10px;
	line-height:1.12;
}
.pp-shop-hero-card__caption i{
	width:34px;
	height:34px;
	margin-right:6px;
	margin-bottom:4px;
}
html[data-pp-theme='dark'] .pp-shop-hero,
html[data-pp-theme='dark'] .pp-shop-hero__copy,
html[data-pp-theme='dark'] .pp-shop-hero__copy h1,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-kicker,
html[data-pp-theme='dark'] .pp-shop-hero__copy > p,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-shop-hero__meta,
html[data-pp-theme='dark'] .pp-shop-hero__copy .pp-platform-link{ }
@media(max-width:980px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:148px}
	.pp-shop-marquee{padding-bottom:36px}
	.pp-shop-marquee__track{padding-left:57vw;padding-right:74px;gap:18px}
	.pp-shop-hero__copy{top:154px!important}
	.pp-shop-hero-card__caption{min-height:96px;padding:14px 14px 16px 9px!important}
}
@media(max-width:680px){
	body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:116px}
	.pp-shop-hero{min-height:740px}
	.pp-shop-marquee{padding-bottom:22px}
	.pp-shop-marquee__track{padding-left:72vw;padding-right:26px;gap:14px}
	.pp-shop-hero__copy{top:128px!important}
	.pp-shop-hero-card__caption{grid-template-columns:minmax(0,1fr) 30px!important;min-height:82px;padding:11px 11px 13px 6px!important}
	.pp-shop-hero-card__caption b{font-size:19px!important;line-height:1.06!important}
	.pp-shop-hero-card__caption i{width:28px;height:28px;margin-right:3px;margin-bottom:2px}
}


/* =====================================================================
   v3.5.4 — final spacing + pixel fix
   Lower the rail, keep the copy panel slightly higher, and hard-close the
   image bottom edge so no dark pixels leak into the white Polaroid field.
   ===================================================================== */
body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:192px}
.pp-shop-marquee{padding:calc(var(--pp-shop-header-edge) + 42px) 0 48px}
.pp-shop-marquee__track{padding-left:clamp(44vw,49vw,53vw);padding-right:clamp(88px,9vw,164px)}
.pp-shop-hero__copy{top:clamp(156px,17vh,206px)!important}
.pp-shop-hero-card__frame{position:relative;overflow:hidden!important}
.pp-shop-hero-card__frame::before{height:0!important;background:transparent!important}
.pp-shop-hero-card__frame::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:8px;background:#F8F7F3;z-index:5;pointer-events:none}
.pp-shop-hero-card__caption{padding:18px 17px 19px 11px!important;min-height:108px}
.pp-shop-hero-card__caption::before{height:8px!important;top:-5px;background:#F8F7F3!important}
.pp-shop-hero-card__caption b{display:block;font-size:clamp(18px,1.3vw,24px)!important;line-height:1.16!important;padding-right:10px;padding-bottom:5px;margin-bottom:1px}
.pp-shop-hero-card__caption small{display:block;line-height:1.14!important;padding-right:12px}
.pp-shop-hero-card__caption i{margin-right:7px;margin-bottom:5px}
@media(max-width:980px){body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:164px}.pp-shop-marquee{padding-bottom:40px}.pp-shop-hero__copy{top:148px!important}.pp-shop-hero-card__caption{min-height:100px;padding:16px 15px 17px 10px!important}.pp-shop-hero-card__caption::before{height:7px!important;top:-4px}}
@media(max-width:680px){body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:126px}.pp-shop-marquee{padding-bottom:24px}.pp-shop-hero__copy{top:126px!important}.pp-shop-hero-card__caption{min-height:86px;padding:12px 12px 14px 7px!important}.pp-shop-hero-card__caption::before{height:6px!important;top:-3px}.pp-shop-hero-card__caption b{font-size:18px!important;line-height:1.1!important}.pp-shop-hero-card__frame::after{height:6px}}


/* =====================================================================
   v3.5.5 — Polaroid rail rebuild
   Replace layered hacks with a simpler, more stable paper-card structure.
   ===================================================================== */
body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:206px}
.pp-shop-hero{background:#111111!important;min-height:clamp(860px,90svh,1060px)}
.pp-shop-marquee{padding:calc(var(--pp-shop-header-edge) + 50px) 0 54px!important}
.pp-shop-marquee__track{padding-left:clamp(44vw,49vw,53vw)!important;padding-right:clamp(92px,9vw,170px)!important;gap:28px!important}
.pp-shop-marquee::after{background:linear-gradient(90deg,rgba(17,17,17,.96) 0,rgba(17,17,17,.88) 11%,rgba(17,17,17,.22) 25%,transparent 38%,transparent 80%,rgba(17,17,17,.42) 91%,rgba(17,17,17,.9) 100%)!important}
.pp-shop-hero__copy{top:clamp(162px,18vh,214px)!important}

.pp-shop-hero-card{
  position:relative!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  width:clamp(296px,20.8vw,390px)!important;
  aspect-ratio:4/5!important;
  padding:14px 14px 16px!important;
  overflow:hidden!important;
  border:1px solid rgba(17,17,17,.18)!important;
  background:#F7F5F0!important;
  color:#111!important;
  box-shadow:0 24px 60px rgba(0,0,0,.20),0 1px 0 rgba(255,255,255,.92) inset!important;
}
.pp-shop-hero-card::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.10;
  background-image:repeating-linear-gradient(0deg,rgba(17,17,17,.024) 0 1px,transparent 1px 5px);
}
.pp-shop-hero-card::after{display:none!important}
.pp-shop-hero-card:nth-child(3n+2){transform:rotate(.75deg) translateY(8px)!important}
.pp-shop-hero-card:nth-child(3n){transform:rotate(-.28deg) translateY(-4px)!important}
.pp-shop-hero-card__frame{
  position:relative!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  width:100%!important;
  height:100%!important;
  min-height:0;
  overflow:hidden!important;
  background:#D7D4CE!important;
  border:1px solid rgba(17,17,17,.12)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.78) inset!important;
}
.pp-shop-hero-card__frame::before,
.pp-shop-hero-card__frame::after{content:none!important;display:none!important}
.pp-shop-hero-card img{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#D7D4CE!important;
  filter:none!important;
  transform:none!important;
}
.pp-shop-hero-card__caption{
  position:relative!important;
  left:auto!important;right:auto!important;bottom:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  grid-template-rows:auto auto!important;
  align-items:end!important;
  gap:5px 16px!important;
  min-height:92px!important;
  padding:14px 2px 0 2px!important;
  margin-top:0!important;
  color:#111!important;
  background:transparent!important;
}
.pp-shop-hero-card__caption::before{
  content:'';
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:rgba(17,17,17,.08);
}
.pp-shop-hero-card__caption b{
  grid-column:1;grid-row:1;
  display:block!important;
  margin:0!important;
  font:800 clamp(16px,1.28vw,23px)/1.14 var(--pp-display)!important;
  letter-spacing:-.035em!important;
  color:#111!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.pp-shop-hero-card__caption small{
  grid-column:1;grid-row:2;
  display:block!important;
  margin:0!important;
  font:600 clamp(13px,.96vw,16px)/1.08 "Bradley Hand","Segoe Script","Snell Roundhand",cursive!important;
  letter-spacing:.01em!important;
  color:rgba(17,17,17,.72)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.pp-shop-hero-card__caption i{
  grid-column:2;grid-row:1 / span 2;
  align-self:end!important;justify-self:end!important;
  width:32px!important;height:32px!important;
  display:grid!important;place-items:center!important;
  margin:0 2px 1px 0!important;
  border:1px solid rgba(17,17,17,.16)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.72)!important;
  color:#111!important;
  font:800 10px/1 var(--pp-mono)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset!important;
}
.pp-shop-hero-card:hover{z-index:6!important;transform:translateY(-12px) rotate(0deg) scale(1.015)!important;box-shadow:0 40px 82px rgba(0,0,0,.28),0 1px 0 rgba(255,255,255,.94) inset!important}
.pp-shop-hero-card:hover img{transform:scale(1.018)!important}
.pp-shop-hero-card:hover .pp-shop-hero-card__caption i{background:#111!important;color:#F7F5F0!important;border-color:#111!important;transform:translate(2px,-2px)!important}
html[data-pp-theme='dark'] .pp-shop-hero-card,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption b,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption small,
html[data-pp-theme='dark'] .pp-shop-hero-card__caption i{color:#111!important}
@media(max-width:980px){
  body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:178px}
  .pp-shop-marquee{padding-bottom:42px!important}
  .pp-shop-marquee__track{padding-left:57vw!important;padding-right:76px!important;gap:18px!important}
  .pp-shop-hero-card{width:clamp(260px,44vw,352px)!important;padding:12px 12px 14px!important}
  .pp-shop-hero-card__caption{min-height:86px!important;grid-template-columns:minmax(0,1fr) 34px!important;padding-top:12px!important}
  .pp-shop-hero__copy{top:152px!important}
}
@media(max-width:680px){
  body.woocommerce-shop.pp-platform-route{--pp-shop-header-edge:136px}
  .pp-shop-hero{min-height:760px!important}
  .pp-shop-marquee{padding-bottom:26px!important}
  .pp-shop-marquee__track{padding-left:72vw!important;padding-right:24px!important;gap:14px!important}
  .pp-shop-hero-card{width:72vw!important;padding:8px 8px 12px!important}
  .pp-shop-hero-card__caption{min-height:78px!important;grid-template-columns:minmax(0,1fr) 30px!important;gap:4px 10px!important;padding-top:10px!important}
  .pp-shop-hero-card__caption b{font-size:18px!important}
  .pp-shop-hero-card__caption small{font-size:12px!important}
  .pp-shop-hero-card__caption i{width:28px!important;height:28px!important}
  .pp-shop-hero__copy{top:132px!important}
}


/* =====================================================================
   v3.5.6 — Polaroid rhythm
   More editorial spacing and a calmer staggered print sequence.
   ===================================================================== */
.pp-shop-marquee__track{
  gap:clamp(30px,2.25vw,44px)!important;
  padding-left:clamp(42vw,47.5vw,51vw)!important;
  padding-right:clamp(110px,10vw,190px)!important;
  align-items:flex-start!important;
}
.pp-shop-hero-card{
  transform-origin:50% 86%!important;
  transition:transform .48s var(--pp-ease),box-shadow .48s ease!important;
}
.pp-shop-hero-card:nth-child(6n+1){transform:translateY(0) rotate(-.55deg)!important}
.pp-shop-hero-card:nth-child(6n+2){transform:translateY(22px) rotate(.42deg)!important}
.pp-shop-hero-card:nth-child(6n+3){transform:translateY(8px) rotate(-.18deg)!important}
.pp-shop-hero-card:nth-child(6n+4){transform:translateY(30px) rotate(.58deg)!important}
.pp-shop-hero-card:nth-child(6n+5){transform:translateY(13px) rotate(-.38deg)!important}
.pp-shop-hero-card:nth-child(6n){transform:translateY(24px) rotate(.22deg)!important}
.pp-shop-hero-card:hover{
  transform:translateY(-10px) rotate(0deg) scale(1.012)!important;
}
@media(max-width:980px){
  .pp-shop-marquee__track{gap:24px!important;padding-right:88px!important}
  .pp-shop-hero-card:nth-child(4n+1){transform:translateY(0) rotate(-.45deg)!important}
  .pp-shop-hero-card:nth-child(4n+2){transform:translateY(16px) rotate(.35deg)!important}
  .pp-shop-hero-card:nth-child(4n+3){transform:translateY(7px) rotate(-.15deg)!important}
  .pp-shop-hero-card:nth-child(4n){transform:translateY(20px) rotate(.35deg)!important}
  .pp-shop-hero-card:hover{transform:translateY(-8px) rotate(0deg) scale(1.01)!important}
}
@media(max-width:680px){
  .pp-shop-marquee__track{gap:16px!important;padding-right:28px!important}
  .pp-shop-hero-card:nth-child(n){transform:translateY(0) rotate(0deg)!important}
  .pp-shop-hero-card:nth-child(even){transform:translateY(10px) rotate(.22deg)!important}
}

/* ============================================================
   PRODUCT ACCESS & PURCHASE UX — v3.8.4
   Paid prompt engines stay locked until entitlement exists.
   Freemium engines can be handed to Studio immediately.
   ============================================================ */
.pp-product-page .quantity{display:none!important}
.pp-product-buybox{scroll-margin-top:120px}
.pp-product-buybox .cart{display:block!important;margin:0!important}
.pp-product-buybox .single_add_to_cart_button{
  width:100%!important;min-height:64px!important;padding:0 22px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  border:1px solid var(--pp-red)!important;border-radius:0!important;
  background:var(--pp-red)!important;color:#fff!important;
  font:800 11px/1 var(--pp-mono)!important;letter-spacing:.055em!important;text-transform:uppercase!important;
  box-shadow:none!important;opacity:1!important;visibility:visible!important;
  transition:background .22s ease,border-color .22s ease,transform .28s var(--pp-ease)!important
}
.pp-product-buybox .single_add_to_cart_button::after{content:'→';font:400 25px/1 var(--pp-sans);margin-left:auto}
.pp-product-buybox .single_add_to_cart_button:hover,.pp-product-buybox .single_add_to_cart_button:focus-visible{
  background:#111!important;border-color:#111!important;color:#fff!important;transform:translateY(-2px)
}
html[data-pp-theme="dark"] .pp-product-buybox .single_add_to_cart_button:hover,
html[data-pp-theme="dark"] .pp-product-buybox .single_add_to_cart_button:focus-visible{background:#F5F1EC!important;border-color:#F5F1EC!important;color:#111!important}

.pp-product-purchase-lock{min-height:62px;padding:14px 16px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--pp-border);background:var(--pp-surface-2)}
.pp-product-purchase-lock>div{display:grid;gap:5px}.pp-product-purchase-lock span{font:800 7px/1 var(--pp-mono);letter-spacing:.08em;color:var(--pp-red)}
.pp-product-purchase-lock b{font:800 14px/1.1 var(--pp-sans);color:var(--pp-text)}
.pp-product-purchase-lock>i{font:800 7px/1 var(--pp-mono);font-style:normal;letter-spacing:.09em;padding:7px 9px;border:1px solid var(--pp-border);color:var(--pp-text-muted)}

.pp-product-access-cta{min-height:72px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;text-decoration:none!important;background:var(--pp-red);color:#fff!important;border:1px solid var(--pp-red);transition:transform .28s var(--pp-ease),background .2s ease,border-color .2s ease}
.pp-product-access-cta small{display:block;margin-bottom:6px;font:800 7px/1 var(--pp-mono);letter-spacing:.075em;color:rgba(255,255,255,.76)}
.pp-product-access-cta b{font:800 16px/1.05 var(--pp-sans);color:#fff}
.pp-product-access-cta i{font:400 32px/1 var(--pp-sans);font-style:normal;color:#fff}
.pp-product-access-cta:hover,.pp-product-access-cta:focus-visible{transform:translateY(-2px);background:#111;border-color:#111;color:#fff!important}
.pp-product-access-cta.is-freemium{background:#566052;border-color:#566052}
.pp-product-access-cta.is-freemium:hover,.pp-product-access-cta.is-freemium:focus-visible{background:#111;border-color:#111}

.pp-product-preview-link{min-height:48px;padding:0 14px;margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--pp-border);color:var(--pp-text)!important;text-decoration:none!important;font:800 8px/1 var(--pp-mono);letter-spacing:.055em;text-transform:uppercase}
.pp-product-preview-link i{font-style:normal;font-size:18px}.pp-product-preview-link:hover{background:var(--pp-text);color:var(--pp-bg)!important}
.pp-product-license-note{margin:12px 0 0!important;max-width:64ch;color:var(--pp-text-muted)!important;font:700 8px/1.45 var(--pp-mono)!important;letter-spacing:.015em}
.pp-product-access-notice{margin-bottom:10px;padding:13px 15px;border-left:3px solid var(--pp-red);background:color-mix(in srgb,var(--pp-red) 10%,var(--pp-surface));display:grid;gap:5px}
.pp-product-access-notice span{font:800 7px/1 var(--pp-mono);letter-spacing:.09em;color:var(--pp-red)}
.pp-product-access-notice b{font:800 12px/1.35 var(--pp-sans);color:var(--pp-text)}

/* The public paid preview is architecture-only: no copyable private prompt text. */
.pp-product-preview.is-locked{scroll-margin-top:100px}
.pp-product-preview__locked{position:relative;min-height:480px;border:1px solid var(--pp-border);background:#16191c;color:#F5F1EC;overflow:hidden}
.pp-product-preview__architecture{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));opacity:.48;filter:blur(.4px)}
.pp-product-preview__architecture>div{min-height:145px;padding:18px;border-right:1px solid rgba(245,241,236,.18);border-bottom:1px solid rgba(245,241,236,.18);display:flex;flex-direction:column;justify-content:space-between;gap:30px}
.pp-product-preview__architecture span{font:800 7px/1 var(--pp-mono);letter-spacing:.08em;text-transform:uppercase;color:#D7D4D3}
.pp-product-preview__architecture b{max-width:30ch;font:700 13px/1.45 var(--pp-sans);color:#F5F1EC}
.pp-product-preview__lock{position:absolute;inset:auto 22px 22px 22px;padding:24px;background:rgba(17,17,17,.92);backdrop-filter:blur(14px);border:1px solid rgba(245,241,236,.24);box-shadow:0 24px 60px rgba(0,0,0,.32)}
.pp-product-preview__lock>span{font:800 7px/1 var(--pp-mono);letter-spacing:.1em;color:#E06A48}
.pp-product-preview__lock>b{display:block;margin:10px 0 9px;font:800 clamp(28px,2.6vw,46px)/.9 var(--pp-display);letter-spacing:-.045em;color:#F5F1EC}
.pp-product-preview__lock>p{max-width:58ch;margin:0 0 20px;color:#D7D4D3;font:500 13px/1.55 var(--pp-sans)}
.pp-product-preview__lock>a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;background:#CD542F;color:#fff!important;text-decoration:none!important;font:800 8px/1 var(--pp-mono);letter-spacing:.06em;text-transform:uppercase}

/* Input/output examples must remain readable in both appearance modes. */
.pp-product-example__grid article{background:#171a1d!important;color:#F5F1EC!important;border-color:rgba(245,241,236,.2)!important}
.pp-product-example__grid article>span{color:#E06A48!important}
.pp-product-example pre,.pp-product-example p{
  margin-top:52px!important;padding:18px!important;border:1px solid rgba(245,241,236,.16)!important;
  background:#0f1113!important;color:#F5F1EC!important;-webkit-text-fill-color:#F5F1EC!important;
  font:500 14px/1.65 var(--pp-mono)!important;opacity:1!important
}
.pp-product-example p{font-family:var(--pp-sans)!important}

/* Woo review form: never inherit Blocksy's dark-blue link color onto dark surfaces. */
.pp-product-reviews,.pp-product-reviews .woocommerce-Reviews,.pp-product-reviews #review_form_wrapper{color:var(--pp-text)!important}
.pp-product-reviews :where(a,.comment-reply-title,.woocommerce-Reviews-title,.woocommerce-noreviews,.woocommerce-verification-required,label,p,small){color:var(--pp-text)!important}
.pp-product-reviews :where(a:hover,a:focus-visible){color:var(--pp-red)!important}
.pp-product-reviews .comment-reply-title{display:block;margin:0 0 18px;font:800 clamp(26px,2.4vw,42px)/1 var(--pp-display);letter-spacing:-.04em}
.pp-product-reviews .comment-form-rating label,.pp-product-reviews .comment-notes{color:var(--pp-text-muted)!important}
.pp-product-reviews .stars a{color:var(--pp-red)!important}
.pp-product-reviews #review_form_wrapper{border:1px solid var(--pp-border);background:var(--pp-surface)!important}
.pp-product-reviews :where(input,textarea,select){background:var(--pp-control)!important;color:var(--pp-control-text)!important;-webkit-text-fill-color:var(--pp-control-text)!important}
.pp-product-reviews .submit{min-height:50px!important;padding:0 18px!important;background:var(--pp-red)!important;border:1px solid var(--pp-red)!important;color:#fff!important;opacity:1!important;visibility:visible!important}


@media(max-width:680px){
  .pp-product-buybox .single_add_to_cart_button,.pp-product-access-cta{min-height:60px!important}
  .pp-product-buybox .single_add_to_cart_button{font-size:9px!important;padding-inline:15px!important}
  .pp-product-access-cta{padding-inline:15px}.pp-product-access-cta b{font-size:14px}.pp-product-access-cta i{font-size:26px}
  .pp-product-purchase-lock{align-items:flex-start}.pp-product-purchase-lock>i{margin-top:1px}
  .pp-product-preview__architecture{grid-template-columns:1fr}.pp-product-preview__locked{min-height:560px}
  .pp-product-preview__lock{inset:auto 12px 12px 12px;padding:18px}
  .pp-product-example pre,.pp-product-example p{margin-top:30px!important;padding:15px!important;font-size:13px!important}
  .pp-product-license-note{font-size:7.5px!important}
}

.pp-product-mobile-access{display:none}
@media(max-width:680px){
  .pp-product-page{padding-bottom:82px!important}
  .pp-product-mobile-access{position:fixed;z-index:10020;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));min-height:64px;padding:7px 7px 7px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid rgba(245,241,236,.22);background:rgba(17,19,21,.94);backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(0,0,0,.34);color:#F5F1EC}
  .pp-product-mobile-access>div{min-width:0;display:grid;gap:4px}.pp-product-mobile-access>div>span{font:800 7px/1 var(--pp-mono);letter-spacing:.08em;text-transform:uppercase;color:#D7D4D3}.pp-product-mobile-access>div>b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 14px/1 var(--pp-sans);color:#F5F1EC}.pp-product-mobile-access>div>b :where(.amount,bdi){color:inherit!important}
  .pp-product-mobile-access>a{min-height:48px;padding:0 14px;display:flex;align-items:center;gap:12px;background:#CD542F;color:#fff!important;text-decoration:none!important;font:800 8px/1 var(--pp-mono);letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}.pp-product-mobile-access>a i{font:400 18px/1 var(--pp-sans);font-style:normal}
}


/* Studio/FilmLab outer spacing is owned exclusively by spacing.css (v3.13.4). */


/* ============================================================
   3.15.18 — MARKETPLACE TRANSPARENCY
   Seller disclosure + ranking/comparison information.
   ============================================================ */
.pp-marketplace-seller-card{
  position:relative;
  display:block;
  margin:22px 0 0;
  padding:20px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--pp-text) 16%,transparent);
  border-radius:14px;
  background:color-mix(in srgb,var(--pp-surface) 86%,var(--pp-bg));
  color:var(--pp-text);
}
.pp-marketplace-seller-card::before{
  content:'';
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:var(--pp-red);
}
.pp-marketplace-seller-card__head{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:5px;
  padding-bottom:15px;
  border-bottom:1px solid var(--pp-border);
}
.pp-marketplace-seller-card__head span{
  color:var(--pp-text-muted);
  font:800 8px/1 var(--pp-mono);
  letter-spacing:.12em;
}
.pp-marketplace-seller-card__head strong{
  color:var(--pp-text);
  font:800 16px/1.2 var(--pp-sans);
  letter-spacing:-.025em;
  overflow-wrap:break-word;
}
.pp-marketplace-seller-card__rows{display:grid;gap:0;margin-top:4px}
.pp-marketplace-seller-card__rows p{
  display:grid;
  grid-template-columns:minmax(100px,.42fr) minmax(0,1fr);
  gap:16px;
  align-items:start;
  margin:0;
  padding:12px 0;
  border-bottom:1px solid var(--pp-border);
}
.pp-marketplace-seller-card__rows p:last-child{border-bottom:0}
.pp-marketplace-seller-card__rows span{
  color:var(--pp-text-muted);
  font:700 9px/1.35 var(--pp-mono);
  text-transform:uppercase;
}
.pp-marketplace-seller-card__rows b{
  color:var(--pp-text);
  font:650 12px/1.48 var(--pp-sans);
  overflow-wrap:break-word;
  word-break:normal;
}
.pp-marketplace-seller-card__legal,
.pp-marketplace-seller-card__warning{
  display:block;
  margin:13px 0 0;
  padding:12px 13px;
  border-radius:9px;
  color:var(--pp-text-muted);
  background:color-mix(in srgb,var(--pp-text) 4%,transparent);
  font:550 10px/1.5 var(--pp-sans);
  overflow-wrap:break-word;
}
.pp-marketplace-seller-card__warning{
  border-left:3px solid var(--pp-red);
  color:var(--pp-text);
  font-weight:650;
}

.pp-marketplace-ranking{
  width:100%;
  margin:0 0 22px;
  border-top:1px solid var(--pp-border);
  border-bottom:1px solid var(--pp-border);
  background:color-mix(in srgb,var(--pp-surface) 42%,transparent);
}
.pp-marketplace-ranking summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 22px;
  align-items:center;
  gap:16px;
  min-height:56px;
  padding:0 clamp(14px,2vw,22px);
  color:var(--pp-text);
  cursor:pointer;
  list-style:none;
}
.pp-marketplace-ranking summary::-webkit-details-marker{display:none}
.pp-marketplace-ranking summary span{font:750 13px/1.3 var(--pp-sans);letter-spacing:-.01em}
.pp-marketplace-ranking summary small{color:var(--pp-text-muted);font:800 8px/1 var(--pp-mono);letter-spacing:.1em;text-transform:uppercase}
.pp-marketplace-ranking summary i{font:500 19px/1 var(--pp-sans);font-style:normal;transition:transform .2s ease}
.pp-marketplace-ranking[open] summary i{transform:rotate(45deg)}
.pp-marketplace-ranking__body{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  padding:1px 0 0;
  border-top:1px solid var(--pp-border);
  background:var(--pp-border);
}
.pp-marketplace-ranking__body > div{
  min-width:0;
  padding:18px clamp(14px,1.7vw,22px);
  background:var(--pp-bg);
}
.pp-marketplace-ranking__body strong{display:block;margin-bottom:8px;color:var(--pp-text);font:800 11px/1.2 var(--pp-mono);text-transform:uppercase}
.pp-marketplace-ranking__body p{margin:0;color:var(--pp-text-muted);font:550 12px/1.58 var(--pp-sans);overflow-wrap:break-word}
.pp-marketplace-ranking__foot{
  grid-column:1/-1;
  margin:0!important;
  padding:14px clamp(14px,1.7vw,22px)!important;
  background:var(--pp-bg);
  color:var(--pp-text-muted)!important;
  font:600 10px/1.55 var(--pp-sans)!important;
}
.pp-compare__transparency{
  display:block;
  max-width:760px;
  margin-top:10px;
  color:var(--pp-text-muted);
  font:550 11px/1.55 var(--pp-sans);
}

@media(max-width:980px){
  .pp-marketplace-ranking__body{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .pp-marketplace-seller-card{padding:17px 15px}
  .pp-marketplace-seller-card__rows p{grid-template-columns:1fr;gap:5px}
  .pp-marketplace-ranking summary{grid-template-columns:minmax(0,1fr) 20px;gap:10px;padding:0 12px}
  .pp-marketplace-ranking summary small{display:none}
  .pp-marketplace-ranking__body{grid-template-columns:minmax(0,1fr)}
}

/* =========================================================
   v3.15.19 — DSA NOTICE & ACTION / CONTACT POINTS
   ========================================================= */
.pp-dsa-shell{width:min(1180px,calc(100% - 32px));margin:clamp(56px,8vw,110px) auto 90px;color:var(--pp-text);font-family:var(--pp-sans)}
.pp-dsa-hero{max-width:860px;margin-bottom:34px}.pp-dsa-hero>span,.pp-dsa-side>span,.pp-dsa-contact-cards article>span{display:block;color:var(--pp-red);font:800 11px/1.2 var(--pp-sans);letter-spacing:.14em;text-transform:uppercase}.pp-dsa-hero h1{margin:10px 0 14px;font:800 clamp(42px,6vw,78px)/.95 var(--pp-sans);letter-spacing:-.055em;word-break:normal;overflow-wrap:normal;hyphens:none}.pp-dsa-hero p{max-width:760px;margin:0;color:var(--pp-text-muted);font:500 18px/1.65 var(--pp-sans)}
.pp-dsa-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:22px;align-items:start}.pp-dsa-form,.pp-dsa-side,.pp-dsa-contact-cards article{background:var(--pp-surface);border:1px solid var(--pp-border);border-radius:22px;box-shadow:0 22px 70px rgba(27,20,15,.06)}.pp-dsa-form{padding:clamp(22px,4vw,42px)}.pp-dsa-form__section{display:flex;gap:14px;align-items:center;padding:0 0 18px;margin:8px 0 20px;border-bottom:1px solid var(--pp-border)}.pp-dsa-form__section>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--pp-red);color:#fff;font:800 11px/1 var(--pp-sans)}.pp-dsa-form__section strong{display:block;font:800 18px/1.2 var(--pp-sans)}.pp-dsa-form__section small{display:block;margin-top:4px;color:var(--pp-text-muted);font:500 12px/1.45 var(--pp-sans)}
.pp-dsa-fields-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pp-dsa-field{display:grid;gap:8px;margin-bottom:16px;min-width:0}.pp-dsa-field>span{font:750 12px/1.2 var(--pp-sans)}.pp-dsa-field input,.pp-dsa-field select,.pp-dsa-field textarea{box-sizing:border-box;width:100%;max-width:100%;min-width:0;border:1px solid var(--pp-border)!important;border-radius:12px!important;background:var(--pp-bg)!important;color:var(--pp-text)!important;padding:13px 14px!important;font:550 14px/1.45 var(--pp-sans)!important;box-shadow:none!important}.pp-dsa-field textarea{resize:vertical;min-height:150px}.pp-dsa-field small,.pp-dsa-exception{color:var(--pp-text-muted);font:500 11px/1.5 var(--pp-sans)}.pp-dsa-exception{margin:-4px 0 18px;padding:12px 14px;border-left:3px solid var(--pp-moss,#6e7658);background:color-mix(in srgb,var(--pp-moss,#6e7658) 8%,transparent)}
.pp-dsa-confirm{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start;padding:16px;border:1px solid var(--pp-border);border-radius:14px;background:var(--pp-bg);cursor:pointer}.pp-dsa-confirm input{position:absolute;opacity:0;pointer-events:none}.pp-dsa-confirm>span{width:20px;height:20px;border:1px solid var(--pp-border);border-radius:6px;background:var(--pp-surface);position:relative}.pp-dsa-confirm input:checked+span{background:var(--pp-red);border-color:var(--pp-red)}.pp-dsa-confirm input:checked+span:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:800 13px/1 sans-serif}.pp-dsa-confirm em{font:600 12px/1.55 var(--pp-sans);font-style:normal}.pp-dsa-submit{display:flex;align-items:center;gap:16px;margin-top:20px}.pp-dsa-submit button{border:0;border-radius:999px;background:var(--pp-red);color:#fff;padding:15px 20px;font:800 12px/1 var(--pp-sans);letter-spacing:.04em;cursor:pointer}.pp-dsa-submit small{max-width:430px;color:var(--pp-text-muted);font:500 11px/1.45 var(--pp-sans)}
.pp-dsa-side{position:sticky;top:110px;padding:26px}.pp-dsa-side h2{margin:8px 0 16px;font:800 28px/1.05 var(--pp-sans);letter-spacing:-.035em}.pp-dsa-side>p{color:var(--pp-text-muted);font:500 13px/1.6 var(--pp-sans)}.pp-dsa-side ol{list-style:none;margin:18px 0;padding:0;display:grid}.pp-dsa-side li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:14px 0;border-top:1px solid var(--pp-border)}.pp-dsa-side li>b{color:var(--pp-red);font:800 11px/1.2 var(--pp-sans)}.pp-dsa-side li p{margin:0;color:var(--pp-text-muted);font:500 12px/1.5 var(--pp-sans)}.pp-dsa-side li strong{display:block;color:var(--pp-text);margin-bottom:3px}.pp-dsa-side>a{display:inline-block;margin-top:18px;color:var(--pp-text);font:750 12px/1.3 var(--pp-sans);text-decoration:none}.pp-dsa-alert{display:grid;gap:4px;margin:0 0 20px;padding:15px 18px;border-radius:14px;border:1px solid var(--pp-border);background:var(--pp-surface)}.pp-dsa-alert strong{font:800 13px/1.2 var(--pp-sans)}.pp-dsa-alert span{color:var(--pp-text-muted);font:500 12px/1.45 var(--pp-sans)}.pp-dsa-alert--success{border-left:4px solid var(--pp-moss,#6e7658)}.pp-dsa-alert--error{border-left:4px solid var(--pp-red)}.pp-dsa-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.pp-dsa-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.pp-dsa-contact-cards article{padding:26px}.pp-dsa-contact-cards h2{margin:8px 0 10px;font:800 24px/1.1 var(--pp-sans);letter-spacing:-.03em}.pp-dsa-contact-cards p{color:var(--pp-text-muted);font:500 13px/1.6 var(--pp-sans)}.pp-dsa-contact-cards a{display:block;margin:18px 0 7px;color:var(--pp-text);font:800 14px/1.2 var(--pp-sans)}.pp-dsa-contact-cards small{color:var(--pp-text-muted);font:500 11px/1.4 var(--pp-sans)}
.pp-content-report-link,.pp-creator-report a{display:inline-flex;align-items:center;gap:8px;color:var(--pp-text-muted)!important;font:700 11px/1.3 var(--pp-sans)!important;text-decoration:none!important}.pp-content-report-link{margin-top:14px;padding-top:13px;border-top:1px solid var(--pp-border);width:100%}.pp-content-report-link span,.pp-creator-report a span{display:grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font:800 10px/1 sans-serif}.pp-content-report-link:hover,.pp-creator-report a:hover{color:var(--pp-red)!important}.pp-creator-report{width:min(1180px,calc(100% - 32px));margin:26px auto;text-align:right}.pp-creator-report a{justify-content:flex-end}
@media(max-width:820px){.pp-dsa-shell{width:min(100% - 20px,720px);margin-top:40px}.pp-dsa-grid,.pp-dsa-contact-cards{grid-template-columns:1fr}.pp-dsa-side{position:static}.pp-dsa-fields-2{grid-template-columns:1fr}.pp-dsa-submit{align-items:stretch;flex-direction:column}.pp-dsa-submit button{width:100%}.pp-dsa-hero h1{font-size:clamp(38px,12vw,58px)}.pp-creator-report{width:calc(100% - 24px)}}

/* ============================================================
   3.15.22 — CONSUMER COMPLIANCE / PRODUCT LEGAL UI
   Premium, compact legal information for digital marketplace items.
   ============================================================ */
.pp-product-price-disclosure{
  margin:-22px 0 26px!important;
  max-width:62ch;
  color:var(--pp-text-muted)!important;
  font:650 9px/1.5 var(--pp-mono)!important;
  letter-spacing:.025em;
  overflow-wrap:break-word;
}
.pp-marketplace-provider{
  margin:14px 0 0;
  padding:15px 15px 14px;
  border:1px solid var(--pp-border);
  border-radius:10px;
  background:color-mix(in srgb,var(--pp-text) 3%,transparent);
  display:grid;
  gap:6px;
  min-width:0;
}
.pp-marketplace-provider>span{
  color:var(--pp-text-muted);
  font:800 7px/1 var(--pp-mono);
  letter-spacing:.11em;
}
.pp-marketplace-provider>strong{
  color:var(--pp-text);
  font:800 13px/1.35 var(--pp-sans);
  overflow-wrap:break-word;
}
.pp-marketplace-provider>p,.pp-marketplace-provider>small{
  margin:0!important;
  color:var(--pp-text-muted)!important;
  font:550 10px/1.55 var(--pp-sans)!important;
  overflow-wrap:break-word;
}
.pp-marketplace-provider__contact{
  display:flex;
  flex-wrap:wrap;
  gap:5px 14px;
  min-width:0;
}
.pp-marketplace-provider__contact a{
  color:var(--pp-text)!important;
  font:700 10px/1.45 var(--pp-sans);
  text-decoration-thickness:1px!important;
  text-underline-offset:3px;
  overflow-wrap:anywhere;
}
.pp-marketplace-provider__contact a:hover{color:var(--pp-red)!important}

.pp-product-legal-card{
  position:relative;
  margin:16px 0 0;
  padding:20px;
  overflow:hidden;
  border:1px solid var(--pp-border);
  border-radius:14px;
  background:color-mix(in srgb,var(--pp-surface) 92%,var(--pp-bg));
  color:var(--pp-text);
}
.pp-product-legal-card::before{
  content:'';
  position:absolute;
  top:0;right:0;
  width:74px;height:74px;
  border-radius:0 0 0 74px;
  background:color-mix(in srgb,var(--pp-red) 9%,transparent);
  pointer-events:none;
}
.pp-product-legal-card__head{
  position:relative;
  z-index:1;
  display:grid;
  gap:7px;
  padding:0 78px 15px 0;
  border-bottom:1px solid var(--pp-border);
}
.pp-product-legal-card__head span{
  color:var(--pp-red);
  font:800 7px/1 var(--pp-mono);
  letter-spacing:.12em;
}
.pp-product-legal-card__head strong{
  color:var(--pp-text);
  font:800 18px/1.1 var(--pp-display);
  letter-spacing:-.035em;
}
.pp-product-legal-card dl{margin:0;display:grid}
.pp-product-legal-card dl>div{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(112px,.4fr) minmax(0,1fr);
  gap:16px;
  padding:11px 0;
  border-bottom:1px solid var(--pp-border);
}
.pp-product-legal-card dt{
  margin:0;
  color:var(--pp-text-muted);
  font:800 8px/1.35 var(--pp-mono);
  text-transform:uppercase;
}
.pp-product-legal-card dd{
  min-width:0;
  margin:0;
  color:var(--pp-text);
  font:600 11px/1.52 var(--pp-sans);
  overflow-wrap:break-word;
  word-break:normal;
}
.pp-product-legal-card dd a{color:var(--pp-red)!important;font-weight:800;text-decoration:none!important}
.pp-product-withdrawal-note{
  margin:14px 0 0!important;
  padding:14px 15px;
  border-radius:10px;
  background:color-mix(in srgb,var(--pp-red) 7%,var(--pp-bg));
  color:var(--pp-text-muted)!important;
  font:560 10.5px/1.58 var(--pp-sans)!important;
  overflow-wrap:break-word;
}
.pp-product-withdrawal-note strong{color:var(--pp-text)}
.pp-product-withdrawal-note a{color:var(--pp-red)!important;font-weight:800;text-decoration:none!important}

.pp-review-transparency{
  width:min(100%,780px);
  margin:0 0 26px;
  padding:17px 18px;
  border:1px solid var(--pp-border);
  border-left:3px solid var(--pp-red);
  border-radius:0 12px 12px 0;
  background:var(--pp-surface);
  display:grid;
  gap:6px;
}
.pp-review-transparency>span{color:var(--pp-red);font:800 7px/1 var(--pp-mono);letter-spacing:.11em}
.pp-review-transparency>strong{color:var(--pp-text);font:800 14px/1.25 var(--pp-sans)}
.pp-review-transparency>p{margin:0!important;color:var(--pp-text-muted)!important;font:550 11px/1.58 var(--pp-sans)!important}

/* Electronic withdrawal function. */
.pp-withdrawal-shell{
  --pp-withdrawal-max:1040px;
  width:min(var(--pp-withdrawal-max),calc(100% - 36px));
  margin:clamp(54px,8vw,108px) auto clamp(82px,11vw,150px);
  color:var(--pp-text);
}
.pp-withdrawal-hero{
  max-width:820px;
  margin:0 0 clamp(30px,5vw,54px);
}
.pp-withdrawal-hero>span{display:block;margin-bottom:13px;color:var(--pp-red);font:800 8px/1 var(--pp-mono);letter-spacing:.13em}
.pp-withdrawal-hero h1{margin:0!important;color:var(--pp-text)!important;font:800 clamp(48px,8vw,92px)/.9 var(--pp-display)!important;letter-spacing:-.065em!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.pp-withdrawal-hero p{max-width:64ch;margin:22px 0 0!important;color:var(--pp-text-muted)!important;font:560 clamp(14px,1.3vw,17px)/1.65 var(--pp-sans)!important}
.pp-withdrawal-card{
  width:min(100%,900px);
  padding:clamp(20px,4vw,38px);
  border:1px solid var(--pp-border);
  border-radius:18px;
  background:var(--pp-surface);
  box-shadow:0 30px 80px color-mix(in srgb,#000 8%,transparent);
}
.pp-withdrawal-step{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;padding-bottom:24px;margin-bottom:26px;border-bottom:1px solid var(--pp-border)}
.pp-withdrawal-step>span{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--pp-text);color:var(--pp-bg);font:800 9px/1 var(--pp-mono)}
.pp-withdrawal-step>div{display:grid;gap:6px}.pp-withdrawal-step strong{color:var(--pp-text);font:800 clamp(20px,2.1vw,28px)/1.1 var(--pp-display);letter-spacing:-.035em}.pp-withdrawal-step small{max-width:62ch;color:var(--pp-text-muted);font:550 11px/1.55 var(--pp-sans)}
.pp-withdrawal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pp-withdrawal-form label{min-width:0;display:grid;gap:7px;margin:0!important}.pp-withdrawal-form label:nth-of-type(3){grid-column:1/-1}.pp-withdrawal-form label>span{color:var(--pp-text);font:750 10px/1.3 var(--pp-sans)}.pp-withdrawal-form label>small{color:var(--pp-text-muted);font:550 9px/1.45 var(--pp-sans)}
.pp-withdrawal-form :where(input,textarea){box-sizing:border-box;width:100%;max-width:100%;border:1px solid var(--pp-border)!important;border-radius:9px!important;background:var(--pp-control)!important;color:var(--pp-control-text)!important;-webkit-text-fill-color:var(--pp-control-text)!important;box-shadow:none!important;font:600 13px/1.45 var(--pp-sans)!important;outline:none!important}.pp-withdrawal-form input{min-height:50px;padding:0 14px!important}.pp-withdrawal-form textarea{min-height:118px;padding:13px 14px!important;resize:vertical}.pp-withdrawal-form :where(input,textarea):focus{border-color:var(--pp-red)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-red) 12%,transparent)!important}
.pp-withdrawal-start,.pp-withdrawal-confirm{grid-column:1/-1;justify-self:start;min-height:54px;padding:0 22px;border:1px solid var(--pp-red)!important;border-radius:9px!important;background:var(--pp-red)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font:800 9px/1 var(--pp-mono)!important;letter-spacing:.07em!important;text-transform:uppercase!important;cursor:pointer}.pp-withdrawal-start:hover,.pp-withdrawal-confirm:hover{filter:brightness(.92)}
.pp-withdrawal-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.pp-withdrawal-review{margin:0 0 24px;display:grid}.pp-withdrawal-review>div{display:grid;grid-template-columns:minmax(140px,.38fr) minmax(0,1fr);gap:18px;padding:13px 0;border-bottom:1px solid var(--pp-border)}.pp-withdrawal-review dt{color:var(--pp-text-muted);font:800 8px/1.4 var(--pp-mono);text-transform:uppercase}.pp-withdrawal-review dd{margin:0;color:var(--pp-text);font:650 12px/1.5 var(--pp-sans);overflow-wrap:anywhere}
.pp-withdrawal-success>span{color:var(--pp-red);font:800 8px/1 var(--pp-mono);letter-spacing:.12em}.pp-withdrawal-success h2{margin:10px 0 10px!important;color:var(--pp-text)!important;font:800 clamp(28px,4vw,48px)/1 var(--pp-display)!important;letter-spacing:-.045em!important}.pp-withdrawal-success p{max-width:67ch;margin:8px 0 0!important;color:var(--pp-text-muted)!important;font:560 12px/1.6 var(--pp-sans)!important}.pp-withdrawal-mail-warning{padding:13px 14px;border-left:3px solid var(--pp-red);background:color-mix(in srgb,var(--pp-red) 8%,transparent);color:var(--pp-text)!important}

@media(max-width:680px){
  .pp-product-price-disclosure{margin-top:-18px!important}
  .pp-marketplace-seller-card,.pp-product-legal-card{padding:16px;border-radius:12px}
  .pp-marketplace-seller-card__rows p,.pp-product-legal-card dl>div{grid-template-columns:1fr;gap:5px}
  .pp-marketplace-provider__contact{display:grid;gap:5px}
  .pp-product-legal-card__head{padding-right:58px}
  .pp-withdrawal-shell{width:calc(100% - 20px);margin-top:38px}
  .pp-withdrawal-card{padding:18px 14px;border-radius:14px}
  .pp-withdrawal-step{grid-template-columns:42px minmax(0,1fr);gap:12px}.pp-withdrawal-step>span{width:42px;height:42px}
  .pp-withdrawal-form{grid-template-columns:1fr}.pp-withdrawal-form label:nth-of-type(3){grid-column:auto}
  .pp-withdrawal-start,.pp-withdrawal-confirm{width:100%;justify-self:stretch}
  .pp-withdrawal-review>div{grid-template-columns:1fr;gap:5px}
}


/* ============================================================
   3.15.23 — PRODUCT LEGAL ACCORDIONS
   Legal information remains on the product interface but is
   presented as accessible native disclosure panels.
   ============================================================ */
.pp-marketplace-seller-card--accordion .pp-marketplace-seller-card__head{
  padding-bottom:16px;
  border-bottom:0;
}
.pp-marketplace-seller-card__headline-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:0;
}
.pp-marketplace-seller-card__headline-row strong{min-width:0}
.pp-marketplace-seller-card__headline-row em{
  flex:0 0 auto;
  margin:0;
  padding:7px 9px;
  border:1px solid var(--pp-border);
  border-radius:999px;
  background:color-mix(in srgb,var(--pp-text) 4%,transparent);
  color:var(--pp-text-muted);
  font:800 7px/1 var(--pp-mono);
  font-style:normal;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.pp-legal-accordions{
  display:grid;
  border-top:1px solid var(--pp-border);
}
.pp-legal-accordion{
  margin:0;
  border-bottom:1px solid var(--pp-border);
  background:transparent;
}
.pp-legal-accordion summary{
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  gap:16px;
  align-items:center;
  width:100%;
  min-height:64px;
  padding:14px 0;
  color:var(--pp-text);
  cursor:pointer;
  list-style:none;
}
.pp-legal-accordion summary::-webkit-details-marker{display:none}
.pp-legal-accordion summary>span{display:grid;gap:4px;min-width:0}
.pp-legal-accordion summary b{
  color:var(--pp-text);
  font:800 11.5px/1.28 var(--pp-sans);
  letter-spacing:-.01em;
}
.pp-legal-accordion summary small{
  color:var(--pp-text-muted);
  font:550 9.5px/1.45 var(--pp-sans);
  overflow-wrap:break-word;
}
.pp-legal-accordion summary i{
  display:grid;
  place-items:center;
  width:28px;height:28px;
  border:1px solid var(--pp-border);
  border-radius:50%;
  color:var(--pp-text);
  font:500 17px/1 var(--pp-sans);
  font-style:normal;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.pp-legal-accordion[open] summary i{
  transform:rotate(45deg);
  border-color:color-mix(in srgb,var(--pp-red) 45%,var(--pp-border));
  background:color-mix(in srgb,var(--pp-red) 7%,transparent);
}
.pp-legal-accordion summary:hover b{color:var(--pp-red)}
.pp-legal-accordion summary:focus-visible{outline:2px solid var(--pp-red);outline-offset:4px;border-radius:4px}
.pp-legal-accordion__body{
  padding:0 0 16px;
  animation:ppLegalReveal .18s ease both;
}
@keyframes ppLegalReveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
.pp-legal-mini-list{display:grid;margin:0!important}
.pp-legal-mini-list>div{
  display:grid;
  grid-template-columns:minmax(105px,.38fr) minmax(0,1fr);
  gap:14px;
  padding:10px 0;
  border-top:1px solid color-mix(in srgb,var(--pp-border) 70%,transparent);
}
.pp-legal-mini-list>div:first-child{border-top:0}
.pp-legal-mini-list dt{
  margin:0;
  color:var(--pp-text-muted);
  font:800 7.5px/1.35 var(--pp-mono);
  text-transform:uppercase;
  letter-spacing:.02em;
}
.pp-legal-mini-list dd{
  min-width:0;
  margin:0;
  color:var(--pp-text);
  font:620 10.5px/1.52 var(--pp-sans);
  overflow-wrap:break-word;
  word-break:normal;
}
.pp-legal-mini-list dd a{color:var(--pp-red)!important;font-weight:800;text-decoration:none!important}
.pp-marketplace-provider--flat{
  margin:0;
  padding:13px 14px;
  border-radius:10px;
  background:color-mix(in srgb,var(--pp-text) 3%,transparent);
}
.pp-marketplace-seller-card--accordion .pp-marketplace-seller-card__legal{margin-top:10px}
.pp-marketplace-seller-card--accordion .pp-content-report-link{margin-top:14px}

.pp-product-legal-card--accordion{padding:20px}
.pp-product-legal-card--accordion .pp-product-legal-card__head{padding-bottom:16px}
.pp-product-legal-card--accordion .pp-legal-accordions--product{margin-top:0;border-top:0}
.pp-product-legal-card--accordion .pp-product-withdrawal-note{margin-top:10px!important}

@media(max-width:680px){
  .pp-marketplace-seller-card__headline-row{align-items:flex-start;flex-direction:column;gap:9px}
  .pp-legal-accordion summary{min-height:60px;grid-template-columns:minmax(0,1fr) 26px;gap:12px}
  .pp-legal-accordion summary i{width:26px;height:26px}
  .pp-legal-mini-list>div{grid-template-columns:1fr;gap:5px;padding:10px 0}
  .pp-product-legal-card--accordion,.pp-marketplace-seller-card--accordion{padding:16px}
}

/* 3.19.2 — promptography/product preview readability */
@media(max-width:980px){.pp-product-preview{grid-template-columns:1fr;gap:30px}.pp-product-preview__head{max-width:760px}.pp-product-preview__head h2{max-width:12ch!important;font-size:clamp(46px,9vw,78px)!important;line-height:.92!important;margin-bottom:18px!important}}
@media(max-width:680px){.pp-product-preview__head h2{max-width:none!important;font-size:clamp(42px,13vw,62px)!important;line-height:.94!important;letter-spacing:-.05em!important}.pp-product-preview__code{box-shadow:5px 6px 0 rgba(16,16,16,.1)}.pp-product-preview__code pre{font-size:12px;line-height:1.58;padding:18px}}
