
/* POST HUMAN first-party merchandise storefront */
.shop-page { background: #070707; color:#f0eee8; }
.shop-hero {
  position:relative;overflow:hidden;min-height:385px;
  padding:clamp(48px,7vw,95px) 0 68px;
  background:linear-gradient(115deg,rgba(8,8,8,.98),rgba(18,14,9,.92) 60%,rgba(40,25,8,.42));
  border-bottom:1px solid #30281e;
}
.shop-hero:after {
 content:"";width:360px;height:360px;border:1px solid rgba(230,147,34,.17);
 border-radius:50%;position:absolute;right:-80px;top:-70px;
 box-shadow:0 0 0 52px rgba(230,147,34,.035),0 0 0 120px rgba(230,147,34,.025);pointer-events:none;
}
.shop-hero .wrap{position:relative;z-index:1;}
.shop-eyebrow{color:#e6a34b;font-weight:800;letter-spacing:.24em;font-size:.71rem;text-transform:uppercase}
.shop-hero h1{font-size:clamp(3.25rem,8vw,7rem);letter-spacing:-.066em;line-height:.91;margin:.26em 0 .23em;}
.shop-hero h1 span{color:#e8a242;}
.shop-hero p{font-size:clamp(1rem,1.5vw,1.25rem);max-width:690px;color:#b8b1a5;line-height:1.72;margin:14px 0 0;}
.shop-hero .shop-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px;color:#ddd1c0;font-size:.73rem;letter-spacing:.08em;text-transform:uppercase}
.shop-hero .shop-meta span{border-left:2px solid #e69322;padding-left:12px}
.shop-catalog{padding:72px 0 95px}
.shop-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.shop-section-heading h2{font-size:clamp(2rem,4.2vw,3.5rem);margin:.15em 0 0;line-height:1.07;letter-spacing:-.045em;}
.shop-section-heading p{max-width:450px;color:#aaa398;font-size:.97rem;margin:0}
.shop-status{
 border:1px solid #51402a;background:#17130e;color:#e7c18b;
 font-size:.83rem;line-height:1.6;padding:12px 16px;margin-bottom:28px;
}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shop-card{min-width:0;border:1px solid #302a23;background:#10100f;overflow:hidden;transition:border-color .2s}
.shop-card:hover{border-color:#6b4a25}
.shop-image{position:relative;aspect-ratio:4/4.8;background:#171717;overflow:hidden;display:block}
.shop-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.shop-card:hover .shop-image img{transform:scale(1.025)}
.shop-tag{position:absolute;top:13px;left:13px;padding:7px 10px;background:rgba(11,11,11,.92);border:1px solid #614521;font-size:.61rem;letter-spacing:.13em;text-transform:uppercase;color:#eeb563;font-weight:800}
.shop-card-details{padding:18px 18px 22px}
.shop-card-details .shop-category{display:block;color:#a99e8f;letter-spacing:.12em;text-transform:uppercase;font-size:.65rem;font-weight:700;margin-bottom:7px}
.shop-card-details h3{font-size:1.05rem;letter-spacing:.012em;line-height:1.35;margin:0 0 9px}
.shop-card-details p{font-size:.83rem;color:#aaa49a;line-height:1.55;margin:0}
.shop-card-details .shop-price{color:#eeb35c;font-size:1.1rem;font-weight:800;margin-top:12px}
.shop-select-label{display:block;color:#d6cbbd;font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;margin:16px 0 7px}
.shop-select{display:block;width:100%;min-height:42px;background:#080808;border:1px solid #5c4935;color:#e8e5dd;padding:10px;font-size:.9rem}
.shop-add{display:block;width:100%;margin-top:14px;min-height:44px;background:#e69322;border:1px solid #e69322;color:#12100d;font-weight:900;font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}
.shop-add:hover{background:#ffb44f}
.shop-add:disabled{cursor:not-allowed;background:#39312a;border-color:#514437;color:#b8b0a4}
.shop-explainer{margin-top:32px;padding:22px 24px;border:1px solid #3a3229;display:flex;gap:24px;align-items:start;justify-content:space-between;flex-wrap:wrap;}
.shop-explainer strong{font-size:.9rem;letter-spacing:.07em}
.shop-explainer p{font-size:.88rem;line-height:1.65;color:#afa69b;max-width:810px;margin:8px 0 0}
.shop-explainer a{color:#f1b96b;text-decoration:underline;text-underline-offset:3px}
.shop-cart{position:fixed;bottom:18px;right:18px;width:min(410px,calc(100vw - 36px));z-index:80;background:#15120e;color:#fff;border:1px solid #b17a32;box-shadow:0 12px 50px #000c;padding:20px;display:none}
.shop-cart[data-open="true"]{display:block}
.shop-cart-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.shop-cart-header strong{font-size:1.2rem}
.shop-cart-close{background:transparent;border:1px solid #6e5736;color:#f5eadb;min-height:35px;min-width:35px;cursor:pointer}
.shop-cart-list{margin:17px 0;padding:0;list-style:none;max-height:200px;overflow:auto}
.shop-cart-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #3c3329;font-size:.83rem}
.shop-cart-list button{background:none;border:0;color:#ffbc6a;cursor:pointer;font-size:.83rem;text-decoration:underline}
.shop-cart-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:14px}
.shop-checkout{background:#e69322;color:#16110a;border:0;padding:13px 16px;cursor:pointer;font-weight:800;letter-spacing:.06em}
.shop-checkout:disabled{opacity:.55;cursor:not-allowed}
.shop-cart-toggle{position:fixed;bottom:20px;right:20px;z-index:70;background:#e69322;color:#16110a;border:1px solid #f4ad41;padding:13px 18px;font-size:.8rem;letter-spacing:.09em;font-weight:800;cursor:pointer;display:none}
.shop-cart-toggle[data-visible="true"]{display:block}
.shop-cart-feedback{min-height:20px;color:#f1bd75;font-size:.83rem;margin:14px 0 0}
.shop-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:1000px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
 .shop-hero{padding:53px 0 58px;min-height:300px}
 .shop-hero:after{width:210px;height:210px;right:-120px;top:0}
 .shop-catalog{padding:46px 0 65px}
 .shop-grid{gap:12px}
 .shop-card-details{padding:13px}
 .shop-card-details h3{font-size:.88rem}
 .shop-card-details p{font-size:.76rem}
 .shop-section-heading{gap:11px;margin-bottom:20px}
 .shop-hero .shop-meta{gap:12px}
}
@media(max-width:430px){.shop-grid{grid-template-columns:1fr}.shop-image{aspect-ratio:4/4.3}}

/* Actual checkout subtotal and responsive cart layout */
.shop-subtotal-label{display:block;font-size:.68rem;color:#ada294;line-height:1.4;margin-bottom:4px}
.shop-cart-list li .shop-item-total{white-space:nowrap;color:#f2c583;font-weight:700}
.shop-cart-list li span:first-child{flex:1;min-width:0;overflow-wrap:anywhere}
.shop-cart-list li button{white-space:nowrap;flex-shrink:0}
@media(max-width:480px){.shop-cart-list li{flex-wrap:wrap;gap:7px}.shop-cart-list li span:first-child{flex-basis:100%}}

/* Color-specific, touch-scrollable product views */
.ph-product-gallery{min-width:0;background:#111}
.ph-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain;width:100%}
.ph-gallery-slide{flex:0 0 100%;width:100%;min-width:0;margin:0;scroll-snap-align:start}
.ph-gallery-slide img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;background:#f6f6f6}
.ph-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px}
.ph-gallery-controls button,.ph-color-choices button{cursor:pointer;background:#17130e;color:#f4eee5;border:1px solid #75644b;padding:10px;min-height:44px}
.ph-gallery-caption{font-size:.75rem;text-align:center}
.ph-gallery-thumbs{display:flex;gap:8px;overflow-x:auto;padding:0 10px 12px}
.ph-gallery-thumbs button{flex:0 0 64px;width:64px;padding:2px;background:#fff;border:2px solid transparent;cursor:pointer}
.ph-gallery-thumbs button[aria-pressed="true"]{border-color:#e69322}
.ph-gallery-thumbs img{width:100%;aspect-ratio:1;object-fit:contain;display:block}
.ph-color-choices{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.ph-color-choices button[aria-pressed="true"]{border-color:#ffb44f;background:#35200d}
.ph-swatch{display:inline-block;width:14px;height:14px;border:1px solid #888;border-radius:50%;margin-right:6px;vertical-align:-2px}
