/* RETRO V2.0 — Unified design refinements. Fully scoped. */
.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp{--retro-navy:#10243b;--retro-deep:#0c1828;--retro-ink:#182536;--retro-paper:#f5f4f1;--retro-stroke:#e1e4e7;--retro-ease:cubic-bezier(.22,1,.36,1);font-kerning:normal;text-rendering:optimizeLegibility;min-width:0}
.pmg-retro-v17 *, .pmg-retro-shop *, .pmg-retro-categories *, .pmg-rar *, .pmg-ra *, .pmg-rct *, .pmg-rp *{min-width:0;box-sizing:border-box}
.pmg-retro-v17 :is(a,button,input,select):focus-visible,.pmg-retro-shop :is(a,button,input,select):focus-visible,.pmg-retro-categories :is(a,button,input,select):focus-visible,.pmg-rar :is(a,button,input,select):focus-visible,.pmg-ra :is(a,button,input,select):focus-visible,.pmg-rct :is(a,button,input,select):focus-visible,.pmg-rp :is(a,button,input,select):focus-visible{outline:3px solid #3e80d7;outline-offset:3px}
.pmg-retro-v17 img,.pmg-retro-shop img,.pmg-retro-categories img,.pmg-rar img,.pmg-ra img,.pmg-rct img,.pmg-rp img{max-width:100%;height:auto}
/* Campaign image wrappers: fill the entire visual region; no letterboxing or accidental half-height pictures. */
.pmg-ra :is(.pmg-ra-hero-art,.pmg-ra-end-art),.pmg-rct :is(.pmg-rct-hero-art,.pmg-rct-final-art){position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden}
.pmg-ra :is(.pmg-ra-hero-art,.pmg-ra-end-art) :is(img,picture),.pmg-rct :is(.pmg-rct-hero-art,.pmg-rct-final-art) :is(img,picture){display:block;width:100%;height:100%;object-fit:cover}
.pmg-ra :is(.pmg-ra-feature-img,.pmg-ra-detail-art,.pmg-ra-mood-art),.pmg-rct .pmg-rct-story-art{position:relative;overflow:hidden}
.pmg-ra .pmg-ra-feature-img img,.pmg-ra .pmg-ra-detail-art img,.pmg-ra .pmg-ra-mood-art img,.pmg-rct .pmg-rct-story-art img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.pmg-ra .pmg-ra-mood-art{aspect-ratio:3/4;min-height:0}
.pmg-ra .pmg-ra-feature-img{min-height:540px}
.pmg-ra .pmg-ra-detail-art{min-height:500px}
.pmg-ra .pmg-ra-dark{margin-top:0;padding-block:clamp(55px,7vw,85px)}
.pmg-ra .pmg-ra-opening{padding-block:clamp(58px,8vw,100px)}
/* Balanced campaign crops on all pages */
.pmg-retro-categories .pmg-rc-media,.pmg-retro-categories .pmg-rc-hero-art{position:relative;display:block;overflow:hidden}
.pmg-retro-categories .pmg-rc-media picture,.pmg-retro-categories .pmg-rc-hero-art picture{display:block;position:absolute;inset:0;width:100%;height:100%}
.pmg-retro-categories .pmg-rc-media img,.pmg-retro-categories .pmg-rc-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
/* Trust the WooCommerce product image, preserve item and prevent cropping. */
.pmg-retro-v17 .pmg-retro-product-visual,.pmg-retro-shop .pmg-rs-photo,.pmg-rar .pmg-rar-photo{background:#f3f2ee}
.pmg-retro-v17 .pmg-retro-product-visual img,.pmg-retro-shop .pmg-rs-photo img,.pmg-rar .pmg-rar-photo img{width:100%;height:100%;object-fit:contain;object-position:center;background:#f3f2ee}
.pmg-retro-v17 .pmg-retro-product-name,.pmg-retro-shop .pmg-rs-name,.pmg-rar .pmg-rar-name{line-height:1.5;overflow-wrap:anywhere}
.pmg-retro-v17 .pmg-retro-product-bottom{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.pmg-retro-v17 .pmg-retro-product-price{min-height:1.6em}
.pmg-retro-shop .pmg-rs-grid,.pmg-rar .pmg-rar-grid{align-items:stretch}
/* Present photographs without huge artificial vertical gaps */
.pmg-ra .pmg-ra-detail,.pmg-ra .pmg-ra-feature,.pmg-rct .pmg-rct-story{align-items:stretch}
/* Typography and accessible actions */
.pmg-rct :is(.pmg-rct-btn,.pmg-rct-card-link,.pmg-rct-social),.pmg-ra :is(.pmg-ra-button,.pmg-ra-text-link),.pmg-rp .pmg-rp-btn{min-height:44px}
.pmg-rct .pmg-rct-social-icon svg,.pmg-rct .pmg-rct-icon svg{display:block;flex:0 0 auto}
.pmg-rct .pmg-rct-social:hover{transform:translateY(-3px)}
@media (max-width:767px){
.pmg-ra .pmg-ra-feature-img{min-height:0;aspect-ratio:4/5}
.pmg-ra .pmg-ra-detail-art{min-height:0;aspect-ratio:4/5}
.pmg-ra .pmg-ra-moods{gap:12px}
.pmg-ra .pmg-ra-opening{padding-block:50px}
.pmg-rct .pmg-rct-story-art{min-height:0;aspect-ratio:4/5}
.pmg-rct .pmg-rct-hero-copy,.pmg-rct .pmg-rct-final-inner{max-width:calc(100vw - 32px)}
}
@media(prefers-reduced-motion:reduce){
.pmg-ra :is(.pmg-ra-mood-art img,.pmg-ra-feature-img img),.pmg-rct :is(.pmg-rct-social,.pmg-rct-btn){transition:none;transform:none}
}
