/* RETRO Commerce V4 — scoped finishing layer, no WooCommerce behavior overrides */
:root{--retro-v4-black:#111111;--retro-v4-navy:#0a1627;--retro-v4-navy-2:#182e4b;--retro-v4-accent:#23466d;--retro-v4-mist:#f5f7fa;--retro-v4-line:#dce4ee;--retro-v4-white:#fff}
:is(.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp,.pmg-rf){color:var(--retro-v4-black);-webkit-font-smoothing:antialiased}
:is(.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp,.pmg-rf) :is(a,button,input,select,textarea):focus-visible{outline:3px solid #4779af!important;outline-offset:3px}
:is(.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp,.pmg-rf) :is(img,video,svg){max-width:100%}
:is(.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp,.pmg-rf) :is(h1,h2,h3,p){overflow-wrap:break-word}
/* All editorial images fill a known media frame, not an arbitrary aspect-ratio on the image itself */
.pmg-retro-v17 :is(.pmg-v17-hero-picture,.pmg-v17-final>picture),.pmg-retro-shop .pmg-rs-hero-art,.pmg-rar .pmg-rar-art,.pmg-retro-categories .pmg-rc-hero-art,.pmg-rct .pmg-rct-hero-art,.pmg-rct .pmg-rct-final-art,.pmg-ra :is(.pmg-ra-hero-art,.pmg-ra-end-art){position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden}
.pmg-retro-v17 :is(.pmg-v17-hero-picture,.pmg-v17-final>picture) :is(img,source),.pmg-retro-shop .pmg-rs-hero-art img,.pmg-rar .pmg-rar-art img,.pmg-retro-categories .pmg-rc-hero-art img,.pmg-rct .pmg-rct-hero-art img,.pmg-rct .pmg-rct-final-art img,.pmg-ra :is(.pmg-ra-hero-art,.pmg-ra-end-art) img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.pmg-retro-v17 .pmg-v17-category-image,.pmg-retro-categories .pmg-rc-media{overflow:hidden}
.pmg-retro-v17 .pmg-v17-category-image :is(picture,img),.pmg-retro-categories .pmg-rc-media :is(picture,img){display:block;width:100%;height:100%;object-fit:cover}
/* Preserve full product silhouettes and real catalogue image proportions */
.pmg-retro-v17 .pmg-retro-product-visual,.pmg-retro-shop .pmg-rs-photo,.pmg-rar .pmg-rar-photo{display:block;overflow:hidden;background:var(--retro-v4-mist)}
.pmg-retro-v17 .pmg-retro-product-visual img,.pmg-retro-shop .pmg-rs-photo img,.pmg-rar .pmg-rar-photo img{display:block;width:100%;height:100%;object-fit:contain!important;object-position:center;background:transparent!important}
.pmg-retro-shop .pmg-rs-card,.pmg-rar .pmg-rar-card,.pmg-retro-v17 .pmg-retro-product{min-width:0;overflow:hidden}
.pmg-retro-shop :is(.pmg-rs-name,.pmg-rs-price),.pmg-rar :is(.pmg-rar-name,.pmg-rar-price),.pmg-retro-v17 :is(.pmg-retro-product-name,.pmg-retro-product-price){min-width:0;overflow-wrap:anywhere}
.pmg-retro-shop :is(.pmg-rs-filterbar,.pmg-rs-grid),.pmg-rar :is(.pmg-rar-form,.pmg-rar-grid),.pmg-retro-v17 .pmg-v17-product-grid{min-width:0}
.pmg-retro-shop :is(.pmg-rs-submit,.pmg-rs-card-action),.pmg-rar :is(.pmg-rar-form-actions button,.pmg-rar-action){min-height:44px}
/* About / Contact: media wrappers must actually own the full height */
.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 :is(.pmg-ra-feature-img,.pmg-ra-detail-art,.pmg-ra-mood-art) img,.pmg-rct .pmg-rct-story-art img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.pmg-rf{--rf-gold:#91b5df!important;--rf-night:#0a1627!important;--rf-panel:#182e4b!important}
.pmg-rf .pmg-rf-ticker{color:#0a1627}
.pmg-rf .pmg-rf-dev{border-color:rgba(145,181,223,.22)}
@media(max-width:767px){.pmg-retro-v17 .pmg-v17-product-grid,.pmg-retro-shop .pmg-rs-grid,.pmg-rar .pmg-rar-grid{gap:10px}.pmg-retro-v17 :is(.pmg-retro-product-body,.pmg-retro-product-bottom){min-width:0}.pmg-rct .pmg-rct-story-art,.pmg-ra :is(.pmg-ra-feature-img,.pmg-ra-detail-art){aspect-ratio:4/5;min-height:0}.pmg-rf .pmg-rf-dev-inner{width:calc(100% - 28px)}}
@media(prefers-reduced-motion:reduce){:is(.pmg-retro-v17,.pmg-retro-shop,.pmg-retro-categories,.pmg-rar,.pmg-ra,.pmg-rct,.pmg-rp,.pmg-rf) :is(*,*::before,*::after){scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
