/* Mobile product page for hay (pdp-m.js). Only active when body has .pdpm (phones, cat Hay). */
.pdpm .pdp,.pdpm .crumb,.pdpm .whyrow,.pdpm .benefit-tiles,.pdpm .stickybuy,.pdpm #waFab{display:none!important}
.pdpm .backshop{display:none!important}
.pdpm section:has(#pdpm){padding-top:0}
#pdpm{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
#pdpm{--pm-line:#E6E1D5;--pm-muted:#77736A;--pm-wa:#1FA855;--pm-tint:rgba(0,0,0,0);background:var(--cream);color:var(--charcoal);font-family:var(--body);line-height:1.5}
#pdpm *{box-sizing:border-box}
#pdpm [hidden]{display:none!important}

/* gallery */
.pm-hero{position:relative;padding:0;aspect-ratio:4/3;background:var(--beige);overflow:hidden}
.pm-slides{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.pm-slides::-webkit-scrollbar{display:none}
.pm-slide{flex:0 0 100%;height:100%;scroll-snap-align:start}
.pm-slide img{width:100%;height:100%;object-fit:cover;display:block}
.pm-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,28,1,0) 70%,rgba(8,28,1,.35) 100%)}
.pm-bars{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:2;display:flex;gap:4px}
.pm-bars i{width:24px;height:2px;border-radius:1px;background:rgba(251,250,246,.4)}
.pm-bars i.on{background:var(--cream)}

/* top info */
.pm-sheet{padding:20px 20px 0}
.pm-best{font:700 10.5px var(--head);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.pm-title{font:800 24px/1.12 var(--head);letter-spacing:-.015em;color:var(--forest);margin:6px 0 10px;text-wrap:balance}
.pm-stars{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--pm-muted);text-decoration:none;margin:0 0 12px}
.pm-stars b{color:var(--charcoal);font-weight:600}
.pm-stars .s{color:var(--gold);letter-spacing:1px}
.pm-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.pm-tag{font:600 12px var(--body);color:var(--forest);padding:6px 11px;border-radius:40px;border:1px solid #D5DCCB;background:#fff}
.pm-tag:first-child{background:#E3EADC;border-color:#E3EADC}
.pm-lead{margin:0 0 18px;font-size:14.5px;line-height:1.55;color:#4A473F}
.pm-pr{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.pm-big{font:700 34px/1 var(--head);letter-spacing:-.03em;color:var(--charcoal);font-variant-numeric:tabular-nums}
.pm-big sup{font-size:.48em;font-weight:600;vertical-align:.95em;margin-left:1px;letter-spacing:0}
.pm-unit{font-size:12.5px;color:var(--pm-muted);margin-top:6px}
.pm-vat{display:inline-flex;flex:none;border:1px solid var(--pm-line);border-radius:40px;padding:3px;background:var(--beige)}
.pm-vat button{border:0;background:none;font:600 11.5px var(--body);color:var(--pm-muted);padding:6px 10px;border-radius:40px;cursor:pointer}
.pm-vat button[aria-pressed="true"]{background:var(--cream);color:var(--charcoal);box-shadow:0 1px 3px rgba(0,0,0,.1)}
.pm-hr{height:1px;background:var(--pm-line);margin:24px 0}
.pm-lbl{font:700 10.5px var(--head);letter-spacing:.18em;text-transform:uppercase;color:var(--pm-muted)}
.pm-help{margin:6px 0 14px;font-size:12.5px;color:var(--pm-muted)}

/* 3D pallet */
.pm-yard{position:relative;height:270px;border-radius:22px;background:radial-gradient(120% 90% at 50% 20%,#fff 0%,var(--beige) 55%,#E7E0CF 100%);overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;margin-bottom:14px}
.pm-yard:active{cursor:grabbing}
.p3-stage{position:absolute;inset:0;perspective:1600px;perspective-origin:50% 20%}
.p3-anchor{position:absolute;left:50%;width:0;height:0;transform-style:preserve-3d}
.p3-rot{position:absolute;width:0;height:0;transform-style:preserve-3d}
.p3-box{position:absolute;width:0;height:0;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.9,.25,1.08),opacity .35s}
.p3-f{position:absolute;left:0;top:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.p3-shadow{position:absolute;left:0;top:0;background:radial-gradient(closest-side,rgba(40,30,10,.42),rgba(0,0,0,0))}
.p3-f.hay{background:linear-gradient(var(--pm-tint),var(--pm-tint)),url(/assets/pdpm/bale-hay.jpg) center/cover}
.p3-f.hay.side{background:linear-gradient(rgba(10,20,0,.3),rgba(10,20,0,.3)),linear-gradient(var(--pm-tint),var(--pm-tint)),url(/assets/pdpm/bale-hay.jpg) 30% center/cover}
.p3-f.hay.top{background:linear-gradient(rgba(255,250,220,.1),rgba(255,250,220,.1)),linear-gradient(var(--pm-tint),var(--pm-tint)),url(/assets/pdpm/bale-hay.jpg) 70% center/cover}
.p3-f.edge{box-shadow:inset 0 0 0 1.5px rgba(25,30,8,.55),inset 0 0 16px rgba(0,0,0,.22)}
.p3-f.wood{background:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08)),url(/assets/pdpm/wood.jpg) center/100% 100%}
.p3-f.wood.side{background:linear-gradient(rgba(0,0,0,.32),rgba(0,0,0,.32)),url(/assets/pdpm/wood.jpg) center/100% 100%}
.p3-f.wood.top{background:repeating-linear-gradient(90deg,rgba(60,35,10,.4) 0 3px,transparent 3px 36px),url(/assets/pdpm/wood.jpg) center/100% 100%}
.pm-yhint,.pm-ytag{position:absolute;left:14px;z-index:2;font:600 11.5px var(--body);color:var(--pm-muted)}
.pm-yhint{top:12px;display:flex;gap:6px;align-items:center}
.pm-yhint svg{width:14px;height:14px}
.pm-ytag{top:32px}
.pm-yx{position:absolute;right:16px;top:12px;z-index:2;text-align:right;line-height:1;opacity:0;transition:opacity .3s}
.pm-yx.on{opacity:1}
.pm-yx b{display:block;font:800 30px var(--head);letter-spacing:-.03em;color:var(--charcoal)}
.pm-yx span{font:600 11px var(--body);color:var(--pm-muted)}

/* pallet chips */
.pm-sizes{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:2px 20px}
.pm-sizes::-webkit-scrollbar{display:none}
.pm-sz{flex:none;display:grid;gap:2px;text-align:left;padding:10px 14px;border-radius:14px;border:1px solid var(--pm-line);background:#fff;color:var(--charcoal);cursor:pointer}
.pm-sz[aria-checked="true"]{background:var(--charcoal);border-color:var(--charcoal);color:var(--cream)}
.pm-sz b{font:700 13.5px var(--head);white-space:nowrap}
.pm-sz span{font:500 11.5px var(--body);opacity:.65;white-space:nowrap}
.pm-read{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:end;margin-top:16px}
.pm-read .a{font:800 26px/1.05 var(--head);letter-spacing:-.02em;color:var(--charcoal)}
.pm-read .t{font:700 22px/1.05 var(--head);color:var(--charcoal);text-align:right;font-variant-numeric:tabular-nums}
.pm-read .b{font-size:13px;color:var(--pm-muted)}
.pm-read .pb{font-size:12.5px;color:var(--pm-muted);text-align:right}
.pm-read .n{grid-column:1/-1;font-size:12px;color:var(--forest);font-weight:600;min-height:18px}

/* order card (big and round bales) */
.pm-card{background:#fff;border:1px solid var(--pm-line);border-radius:20px;overflow:hidden}
.pm-chead{display:flex;gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--pm-line)}
.pm-chead img{width:52px;height:52px;border-radius:12px;object-fit:cover;flex:none}
.pm-chead b{display:block;font:700 14px var(--head);color:var(--charcoal)}
.pm-chead span{font-size:12.5px;color:var(--pm-muted)}
.pm-step{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;padding:18px 16px 10px}
.pm-stp{width:48px;height:48px;border-radius:50%;background:var(--cream);border:1.5px solid var(--forest);color:var(--forest);display:grid;place-items:center;cursor:pointer;padding:0}
.pm-stp svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.pm-stp:disabled{border-color:var(--pm-line);color:#C4BEB1;cursor:default}
.pm-stv{text-align:center;line-height:1.1}
.pm-stv b{display:block;font:800 40px/1 var(--head);letter-spacing:-.03em;color:var(--charcoal);font-variant-numeric:tabular-nums}
.pm-stv span{display:block;margin-top:2px;font-size:13px;color:var(--pm-muted)}
.pm-quick{display:flex;justify-content:center;gap:6px;padding:0 16px 16px}
.pm-qk{min-width:46px;height:32px;border-radius:40px;border:1px solid var(--pm-line);background:var(--cream);font:600 13px var(--body);color:var(--pm-muted);cursor:pointer}
.pm-qk[aria-pressed="true"]{border-color:var(--forest);color:var(--forest);background:#EEF2E8}
.pm-sum{display:grid;grid-template-columns:repeat(3,1fr);background:var(--beige);border-top:1px solid var(--pm-line)}
.pm-sum div{padding:12px 8px;text-align:center;min-width:0}
.pm-sum div+div{border-left:1px solid var(--pm-line)}
.pm-sum b{display:block;font:800 15px var(--head);color:var(--forest);font-variant-numeric:tabular-nums;white-space:nowrap}
.pm-sum span{font-size:11.5px;color:var(--pm-muted)}

/* buy */
.pm-cta{width:100%;height:58px;border:0;border-radius:40px;background:var(--forest);color:var(--cream);font:700 15.5px var(--head);display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;margin-top:20px}
.pm-cta:active{transform:scale(.985);background:var(--forest-2)}
.pm-cta .sep{width:1px;height:18px;background:rgba(251,250,246,.3)}
.pm-cta .amt{font-family:var(--body);font-weight:600;font-variant-numeric:tabular-nums}
.pm-under{display:grid;gap:10px;text-align:center;margin-top:14px;font-size:13px;color:var(--pm-muted)}
.pm-under [data-dlest]{text-align:left}
.pm-wa{display:flex;align-items:center;justify-content:center;gap:10px;height:50px;border-radius:40px;background:#E8F7EE;border:1.5px solid var(--pm-wa);color:#0F6B34;font:700 14.5px var(--body);text-decoration:none}
.pm-wa svg{width:22px;height:22px;fill:var(--pm-wa)}
.pm-glance{display:grid;grid-template-columns:1fr 1fr;margin:26px 0 0;background:var(--beige);border-radius:18px;overflow:hidden}
.pm-glance div{padding:16px 18px;display:flex;flex-direction:column-reverse;gap:4px;min-width:0}
.pm-glance div:nth-child(even){border-left:1px solid var(--pm-line)}
.pm-glance div:nth-child(n+3){border-top:1px solid var(--pm-line)}
.pm-glance dd{margin:0;font:800 19px/1.1 var(--head);letter-spacing:-.015em;color:var(--forest)}
.pm-glance dt{font:500 12px var(--body);color:var(--pm-muted)}
.pm-end{height:28px}

/* dock */
.pm-dock{--pm-wa:#1FA855;position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:900;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 8px 8px 10px;border-radius:40px;background:rgba(17,17,14,.82);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);color:var(--cream);box-shadow:0 18px 40px -16px rgba(0,0,0,.5);transform:translateY(160%);transition:transform .35s cubic-bezier(.2,.9,.3,1)}
.pm-dock.show{transform:none}
.pm-dock .w{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--pm-wa);box-shadow:0 0 0 3px rgba(31,168,85,.25)}
.pm-dock .w svg{width:23px;height:23px;fill:#fff}
.pm-dock .s{min-width:0;line-height:1.15}
.pm-dock .s small{display:block;font-size:11px;color:rgba(251,250,246,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-dock .s b{font:700 16px var(--head);font-variant-numeric:tabular-nums}
.pm-dock button{height:44px;border:0;border-radius:40px;background:var(--cream);color:var(--forest);font:700 14px var(--head);padding:0 18px;cursor:pointer;white-space:nowrap}
#pdpm button:focus-visible,#pdpm a:focus-visible,.pm-dock button:focus-visible,.pm-dock a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.p3-box,.pm-dock{transition:none}}
