/* BEGIN ORIGINAL storefront.css */
:root{--rni-colour-olive-700:#435837;--rni-colour-olive-900:#26351f;--rni-colour-charcoal-900:#202420;--rni-colour-white:#fff;--rni-colour-border:#dfe3de;--rni-colour-muted:#f5f6f4;--rni-focus:#1f67c1;--rni-container:1280px;--rni-gutter:clamp(1rem,3vw,2rem);--rni-radius:6px;--rni-shadow:0 10px 35px rgba(20,25,20,.16)}
.recce-ni-storefront{--rni-font:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}.rni-storefront-container{width:min(100% - (2 * var(--rni-gutter)),var(--rni-container));margin-inline:auto}.rni-storefront-skip-link{position:fixed;top:0;left:1rem;z-index:9999;transform:translateY(-150%);padding:.75rem 1rem;background:#fff;color:#000;border:2px solid var(--rni-focus)}.rni-storefront-skip-link:focus{transform:none}.rni-storefront-header{position:relative;z-index:100;background:#fff;color:var(--rni-colour-charcoal-900);font-family:var(--rni-font);border-bottom:1px solid var(--rni-colour-border)}.rni-storefront-header a{color:inherit;text-decoration:none}.rni-storefront-header a:hover{text-decoration:underline}.rni-storefront-header a:focus-visible,.rni-storefront-header button:focus-visible,.rni-storefront-header input:focus-visible,.rni-storefront-mobile-drawer a:focus-visible,.rni-storefront-mobile-drawer button:focus-visible{outline:3px solid var(--rni-focus);outline-offset:2px}.rni-storefront-utility{background:var(--rni-colour-charcoal-900);color:#fff;font-size:.875rem}.rni-storefront-utility-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.rni-storefront-utility-links{display:flex;gap:1.25rem;align-items:center}.rni-storefront-main-inner{min-height:92px;display:grid;grid-template-columns:minmax(145px,220px) minmax(300px,1fr) auto;align-items:center;gap:2rem}.rni-storefront-logo{display:flex;align-items:center;font-size:1.45rem;font-weight:800}.rni-storefront-logo img{display:block;max-width:210px;max-height:68px;width:auto;height:auto}.rni-storefront-search{position:relative;display:flex;min-width:0}.rni-storefront-search input[type=search]{width:100%;min-height:48px;border:2px solid var(--rni-colour-olive-700);border-right:0;border-radius:var(--rni-radius) 0 0 var(--rni-radius);padding:.75rem 1rem;font:inherit;color:var(--rni-colour-charcoal-900);background:#fff}.rni-storefront-search button{min-height:48px;padding:.65rem 1.2rem;border:2px solid var(--rni-colour-olive-700);border-radius:0 var(--rni-radius) var(--rni-radius) 0;background:var(--rni-colour-olive-700);color:#fff;font-weight:700;cursor:pointer}.rni-storefront-search button:hover{background:var(--rni-colour-olive-900);border-color:var(--rni-colour-olive-900)}.rni-storefront-search-results{position:absolute;inset:calc(100% + 4px) 0 auto 0;z-index:400;background:#fff;border:1px solid var(--rni-colour-border);border-radius:var(--rni-radius);box-shadow:var(--rni-shadow);overflow:hidden}.rni-storefront-search-result{display:grid;grid-template-columns:54px 1fr;gap:.75rem;padding:.7rem;border-bottom:1px solid var(--rni-colour-border)}.rni-storefront-search-result:last-child{border-bottom:0}.rni-storefront-search-result img{width:54px;height:54px;object-fit:contain;background:var(--rni-colour-muted)}.rni-storefront-search-result strong,.rni-storefront-search-result small{display:block}.rni-storefront-actions{display:flex;gap:1rem;align-items:center;font-weight:700}.rni-storefront-cart-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 .35rem;border-radius:999px;background:var(--rni-colour-olive-700);color:#fff;font-size:.75rem}.rni-storefront-primary-nav{position:relative;background:var(--rni-colour-olive-700);color:#fff}.rni-storefront-sticky-nav-enabled .rni-storefront-primary-nav{position:sticky;top:0;z-index:200}.admin-bar.rni-storefront-sticky-nav-enabled .rni-storefront-primary-nav{top:32px}.rni-storefront-menu{display:flex;align-items:stretch;gap:0;margin:0;padding:0;list-style:none}.rni-storefront-menu>li{position:relative}.rni-storefront-menu a{display:flex;align-items:center;min-height:48px;padding:.7rem 1rem;font-weight:700}.rni-storefront-menu a:hover,.rni-storefront-menu .current-menu-item>a{background:rgba(0,0,0,.16);text-decoration:none}.rni-storefront-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:240px;margin:0;padding:.5rem;list-style:none;background:#fff;color:var(--rni-colour-charcoal-900);box-shadow:var(--rni-shadow)}.rni-storefront-menu li:hover>.sub-menu,.rni-storefront-menu li:focus-within>.sub-menu{display:block}.rni-storefront-menu .sub-menu a{min-height:40px;padding:.5rem .75rem;font-weight:600}.rni-storefront-mega-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(calc(100vw - 2rem),var(--rni-container));padding:1.5rem;background:#fff;color:var(--rni-colour-charcoal-900);box-shadow:var(--rni-shadow);border:1px solid var(--rni-colour-border)}.rni-storefront-mega-panel h2{margin:0 0 1rem;font-size:1.25rem}.rni-storefront-mega-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.rni-storefront-mega-link{display:block;padding:.8rem;border:1px solid var(--rni-colour-border);border-radius:var(--rni-radius)}.rni-storefront-mega-link:hover{border-color:var(--rni-colour-olive-700);text-decoration:none}.rni-storefront-mega-link span,.rni-storefront-mega-link small{display:block}.rni-storefront-mega-link span{font-weight:700}.rni-storefront-mega-link small{margin-top:.2rem;color:#626a62}.rni-storefront-menu-toggle,.rni-storefront-mobile-search{display:none}.rni-storefront-drawer-backdrop{position:fixed;inset:0;z-index:490;background:rgba(0,0,0,.52)}.rni-storefront-mobile-drawer{position:fixed;inset:0 auto 0 0;z-index:500;width:min(90vw,390px);transform:translateX(-105%);transition:transform .2s ease;background:#fff;color:var(--rni-colour-charcoal-900);box-shadow:var(--rni-shadow);overflow:auto;font-family:var(--rni-font)}.rni-storefront-mobile-drawer.is-open{transform:none}.rni-storefront-drawer-head{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:1rem;border-bottom:1px solid var(--rni-colour-border)}.rni-storefront-menu-close{width:44px;height:44px;border:0;background:transparent;font-size:2rem;cursor:pointer}.rni-storefront-mobile-menu,.rni-storefront-mobile-menu .sub-menu{list-style:none;margin:0;padding:0}.rni-storefront-mobile-menu a{display:block;padding:.9rem 1rem;border-bottom:1px solid var(--rni-colour-border);font-weight:700}.rni-storefront-mobile-menu .sub-menu a{padding-left:2rem;font-weight:600;background:var(--rni-colour-muted)}.rni-storefront-drawer-footer{display:grid;padding:1rem;gap:.5rem}.rni-storefront-drawer-footer a{padding:.6rem}.rni-storefront-no-scroll{overflow:hidden}
@media(max-width:900px){.rni-storefront-utility{display:none}.rni-storefront-main-inner{min-height:68px;grid-template-columns:44px 1fr auto;gap:.75rem}.rni-storefront-menu-toggle{display:inline-grid;place-items:center;width:44px;height:44px;border:0;background:transparent;font-size:1.35rem;cursor:pointer}.rni-storefront-logo{justify-content:center}.rni-storefront-logo img{max-height:48px;max-width:165px}.rni-storefront-main .rni-storefront-search,.rni-storefront-actions a:first-child,.rni-storefront-primary-nav{display:none}.rni-storefront-actions{font-size:.9rem}.rni-storefront-mobile-search{display:block;padding:.65rem var(--rni-gutter);border-top:1px solid var(--rni-colour-border)}.rni-storefront-mobile-search .rni-storefront-search{display:flex}.rni-storefront-search button{padding-inline:.85rem}.rni-storefront-sticky-nav-enabled .rni-storefront-header{position:sticky;top:0}.admin-bar.rni-storefront-sticky-nav-enabled .rni-storefront-header{top:46px}}
@media(max-width:480px){.rni-storefront-logo span{font-size:1.1rem}.rni-storefront-actions{gap:.4rem}.rni-storefront-main-inner{width:calc(100% - 1rem)}.rni-storefront-search input[type=search]{font-size:16px}.rni-storefront-search button{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.rni-storefront-mobile-drawer{transition:none}}
.rni-storefront-homepage{font-family:var(--rni-font);color:var(--rni-colour-charcoal-900);background:#fff}.rni-storefront-homepage *{box-sizing:border-box}.rni-home-section{padding:clamp(2.5rem,6vw,5rem) 0}.rni-home-section:nth-of-type(even){background:var(--rni-colour-muted)}.rni-home-hero{min-height:clamp(430px,55vw,650px);display:flex;align-items:center;background:linear-gradient(90deg,rgba(23,26,23,.88),rgba(23,26,23,.5) 55%,rgba(23,26,23,.1)),var(--rni-home-hero-image,linear-gradient(135deg,var(--rni-colour-charcoal-900),var(--rni-colour-olive-700)));background-size:cover;background-position:center;color:#fff}.rni-home-hero-inner{display:flex;align-items:center;min-height:inherit}.rni-home-hero-copy{max-width:680px;padding-block:3rem}.rni-home-hero h1{margin:0 0 1rem;font-size:clamp(2.25rem,5vw,4.5rem);line-height:1.05;color:#fff}.rni-home-hero p{max-width:58ch;margin:0 0 1.75rem;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6}.rni-home-actions{display:flex;flex-wrap:wrap;gap:.75rem}.rni-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:.75rem 1.1rem;border:1px solid transparent;border-radius:var(--rni-radius);font-weight:700;text-decoration:none;transition:background .15s ease,border-color .15s ease}.rni-button-primary{background:var(--rni-colour-olive-700);color:#fff}.rni-button-primary:hover{background:var(--rni-colour-olive-900);color:#fff}.rni-button-secondary{background:#fff;color:var(--rni-colour-charcoal-900);border-color:var(--rni-colour-border)}.rni-button-secondary:hover{border-color:var(--rni-colour-olive-700);color:var(--rni-colour-olive-900)}.rni-button:focus-visible,.rni-storefront-homepage a:focus-visible{outline:3px solid var(--rni-focus);outline-offset:3px}.rni-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.rni-section-heading h2{margin:0;font-size:clamp(1.65rem,3vw,2.4rem)}.rni-section-heading>a{font-weight:700;color:var(--rni-colour-olive-700)}.rni-department-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}.rni-department-card{position:relative;min-height:250px;overflow:hidden;border-radius:var(--rni-radius);background:var(--rni-colour-charcoal-900);color:#fff;text-decoration:none}.rni-department-image{position:absolute;inset:0;background:linear-gradient(145deg,var(--rni-colour-olive-700),var(--rni-colour-charcoal-900));background-size:cover;background-position:center;transition:transform .25s ease}.rni-department-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.82))}.rni-department-name{position:absolute;z-index:2;inset:auto 1rem 1rem;font-size:1.1rem;font-weight:800}.rni-department-card:hover .rni-department-image{transform:scale(1.035)}.rni-home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.rni-home-product-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--rni-colour-border);border-radius:var(--rni-radius);overflow:hidden}.rni-home-product-image{display:grid;place-items:center;aspect-ratio:4/3;padding:1rem;background:#fff}.rni-home-product-image img{width:100%;height:100%;object-fit:contain}.rni-home-product-body{display:flex;flex:1;flex-direction:column;padding:1rem}.rni-home-product-body h3{margin:0 0 .75rem;font-size:1rem;line-height:1.35}.rni-home-product-body h3 a{color:inherit;text-decoration:none}.rni-home-stock{margin:0 0 .45rem;color:#28733d;font-size:.875rem;font-weight:700}.rni-home-price{margin:auto 0 1rem;font-size:1.1rem;font-weight:800}.rni-home-product-body .rni-button{width:100%}.rni-promo-panel,.rni-trade-panel,.rni-contact-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(2rem,5vw,4rem);border-radius:var(--rni-radius)}.rni-promo-panel{min-height:360px;background:linear-gradient(90deg,rgba(23,26,23,.92),rgba(23,26,23,.45)),var(--rni-promo-image,linear-gradient(135deg,var(--rni-colour-charcoal-900),var(--rni-colour-olive-700)));background-size:cover;background-position:center;color:#fff}.rni-promo-panel h2,.rni-trade-panel h2,.rni-contact-panel h2{margin:.2rem 0 .75rem;font-size:clamp(1.75rem,4vw,3rem)}.rni-promo-panel p,.rni-trade-panel p,.rni-contact-panel p{max-width:58ch;line-height:1.6}.rni-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:800}.rni-chip-list{display:flex;flex-wrap:wrap;gap:.75rem}.rni-chip{display:inline-flex;min-height:44px;align-items:center;padding:.65rem 1rem;border:1px solid var(--rni-colour-border);border-radius:999px;background:#fff;color:inherit;font-weight:700;text-decoration:none}.rni-chip:hover{border-color:var(--rni-colour-olive-700)}.rni-brand-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}.rni-brand-grid a{display:grid;min-height:100px;place-items:center;padding:1rem;background:#fff;border:1px solid var(--rni-colour-border);border-radius:var(--rni-radius);color:inherit;font-weight:800;text-decoration:none}.rni-trade-panel{background:var(--rni-colour-charcoal-900);color:#fff}.rni-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.rni-trust-item{display:flex;gap:.75rem;align-items:flex-start;padding:1.25rem;background:#fff;border:1px solid var(--rni-colour-border);border-radius:var(--rni-radius)}.rni-trust-item span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--rni-colour-olive-700);color:#fff;font-weight:800}.rni-trust-item p{margin:.25rem 0 0;font-weight:700}.rni-contact-panel{background:var(--rni-colour-olive-700);color:#fff}.rni-contact-panel .rni-button-secondary{color:var(--rni-colour-charcoal-900)}
@media(max-width:1100px){.rni-department-grid,.rni-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rni-home-product-grid,.rni-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rni-home-section{padding:2.5rem 0}.rni-home-hero{min-height:460px;background-position:65% center}.rni-home-hero h1{font-size:2.3rem}.rni-department-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.rni-department-card{min-height:180px}.rni-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rni-home-product-grid{gap:.75rem}.rni-home-product-body{padding:.8rem}.rni-promo-panel,.rni-trade-panel,.rni-contact-panel{align-items:flex-start;flex-direction:column;padding:1.5rem}.rni-promo-panel{min-height:320px}.rni-trust-grid{grid-template-columns:1fr}.rni-section-heading{align-items:flex-start}.rni-home-actions .rni-button{flex:1 1 auto}}
@media(max-width:380px){.rni-home-product-grid{grid-template-columns:1fr}.rni-department-grid{grid-template-columns:1fr}}

/* Phase 3.1 full-width homepage compatibility */
body.rni-storefront-home-active .site-content,body.rni-storefront-home-active #primary,body.rni-storefront-home-active main.site-main{max-width:none;width:100%;padding-left:0;padding-right:0;margin-left:0;margin-right:0}body.rni-storefront-home-active article.page{margin:0;padding:0}body.rni-storefront-home-active article.page>.entry-content{margin:0;padding:0;max-width:none}body.rni-storefront-home-active article.page>.entry-header,body.rni-storefront-home-active article.page>.entry-footer,body.rni-storefront-home-active .sharedaddy,body.rni-storefront-home-active .sd-sharing-enabled,body.rni-storefront-home-active .sd-like,body.rni-storefront-home-active .post-share-wrap{display:none!important}
/* 0.3.2 product-first homepage */
.rni-storefront-homepage{background:#f4f5f2;color:#202420}.rni-home-section{padding:26px 0}.rni-home-hero{min-height:500px;background-image:linear-gradient(90deg,rgba(15,18,15,var(--rni-hero-overlay)),rgba(15,18,15,.08)),var(--rni-home-hero-image);background-size:cover;background-position:var(--rni-hero-position);display:flex;align-items:center;color:#fff}.rni-home-hero-copy{max-width:680px;padding:48px 0}.rni-home-hero h1{font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.02;margin:.2em 0}.rni-home-hero p{font-size:1.1rem;max-width:620px}.rni-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.75rem}.rni-promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rni-retail-promo,.rni-wide-banner{min-height:220px;background:linear-gradient(90deg,rgba(18,22,18,.88),rgba(18,22,18,.2)),var(--rni-promo-image) center/cover;color:#fff;text-decoration:none;padding:30px;display:flex;align-items:end;justify-content:space-between}.rni-retail-promo strong{display:block;font-size:1.7rem}.rni-retail-promo small{display:block;margin-top:6px}.rni-department-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.rni-department-card{background:#fff;border:1px solid #dfe3de;text-decoration:none;color:#202420;box-shadow:0 1px 3px rgba(0,0,0,.07)}.rni-department-image{display:block;aspect-ratio:4/3;background:#fff center/contain no-repeat}.rni-department-name{display:block;padding:13px 14px;font-size:1rem;font-weight:800;border-top:1px solid #e5e8e4}.rni-home-product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.rni-home-product-card{background:#fff;border:1px solid #dfe3de;display:flex;flex-direction:column}.rni-home-product-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#fff;padding:12px}.rni-home-product-image img{max-height:100%;object-fit:contain}.rni-home-product-body{padding:13px;display:flex;flex-direction:column;gap:7px;flex:1}.rni-home-product-body h3{font-size:.98rem;line-height:1.3;margin:0}.rni-product-brand{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#667}.rni-home-stock{font-size:.8rem;color:#28733d}.rni-home-price{font-size:1.2rem;font-weight:800;margin-top:auto}.rni-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.rni-section-heading h2{margin:0;font-size:1.7rem}.rni-wide-banner{min-height:300px;align-items:center}.rni-wide-banner>div{max-width:560px}.rni-wide-banner h2{font-size:2.4rem;margin:.2em 0}.rni-brand-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.rni-brand-grid a{background:#fff;border:1px solid #dfe3de;padding:22px 10px;text-align:center;font-weight:800;text-decoration:none;color:#202420}.rni-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rni-trust-item{background:#fff;padding:18px;border-top:4px solid var(--rni-colour-olive-700)}
@media(max-width:900px){.rni-home-product-grid{grid-template-columns:repeat(3,1fr)}.rni-department-grid{grid-template-columns:repeat(2,1fr)}.rni-brand-grid{grid-template-columns:repeat(3,1fr)}.rni-trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.rni-home-hero{min-height:580px;background-image:linear-gradient(0deg,rgba(15,18,15,.82),rgba(15,18,15,.1)),var(--rni-home-hero-mobile);align-items:end}.rni-home-hero-copy{padding:34px 0}.rni-promo-grid{grid-template-columns:1fr}.rni-home-product-grid{grid-template-columns:repeat(2,1fr);gap:8px}.rni-home-section{padding:18px 0}.rni-home-product-body{padding:10px}.rni-brand-grid{grid-template-columns:repeat(2,1fr)}.rni-wide-banner{min-height:360px}.rni-retail-promo{min-height:190px}}

/* 0.4.0 specialist retail refinement */
.rni-storefront-homepage{--rni-retail-border:#d9ddd7;--rni-retail-shadow:0 8px 24px rgba(25,32,25,.08)}
.rni-home-hero{min-height:clamp(540px,62vw,760px);position:relative}.rni-home-hero:after{content:"";position:absolute;inset:auto 0 0;height:5px;background:var(--rni-colour-olive-700)}.rni-home-hero-inner{position:relative;z-index:1}.rni-home-hero-copy{max-width:760px}.rni-home-hero h1{max-width:13ch;text-wrap:balance;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.rni-home-promos{margin-top:-34px;position:relative;z-index:3;background:transparent!important}.rni-retail-promo{min-height:260px;border:1px solid rgba(255,255,255,.2);box-shadow:var(--rni-retail-shadow);transition:transform .2s ease,box-shadow .2s ease}.rni-retail-promo:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(25,32,25,.16)}
.rni-department-card{min-height:270px;position:relative;overflow:hidden;border:0;box-shadow:var(--rni-retail-shadow)}.rni-department-image{position:absolute;inset:0;aspect-ratio:auto;background-size:cover;transition:transform .35s ease}.rni-department-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.86))}.rni-department-name{position:absolute;z-index:2;inset:auto 18px 16px;padding:0;border:0;color:#fff;font-size:1.2rem;text-transform:uppercase;letter-spacing:.03em}.rni-department-card:hover .rni-department-image{transform:scale(1.055)}
.rni-home-products{background:#f6f7f4!important}.rni-home-product-card{position:relative;border:1px solid var(--rni-retail-border);border-radius:4px;box-shadow:0 2px 7px rgba(25,32,25,.04);transition:transform .18s ease,box-shadow .18s ease}.rni-home-product-card:hover{transform:translateY(-4px);box-shadow:var(--rni-retail-shadow)}.rni-card-badges{position:absolute;z-index:2;top:10px;left:10px;display:flex;gap:6px}.rni-card-badge{padding:5px 8px;border-radius:2px;color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.rni-badge-used{background:#72572a}.rni-badge-sale{background:#a52c2c}.rni-home-product-image{aspect-ratio:1.18/1;padding:18px}.rni-home-product-body{padding:15px}.rni-product-brand{margin:0;color:#5d675d}.rni-home-product-body h3{min-height:2.7em;font-size:1rem}.rni-home-stock.is-out-of-stock{color:#a52c2c}.rni-home-price{font-size:1.3rem}.rni-card-actions{margin-top:4px}.rni-card-actions .rni-button{width:100%;text-transform:uppercase;font-size:.78rem;letter-spacing:.04em}
.rni-wide-banner{min-height:360px;border-radius:4px;box-shadow:var(--rni-retail-shadow)}.rni-wide-banner h2{color:#fff;text-transform:uppercase}.rni-contact-panel{border-radius:4px}.rni-section-heading h2{text-transform:uppercase;letter-spacing:.01em}.rni-section-heading>a{text-transform:uppercase;font-size:.78rem;letter-spacing:.06em}
@media(max-width:900px){.rni-home-promos{margin-top:0}.rni-department-card{min-height:230px}.rni-home-hero{min-height:620px}}
@media(max-width:640px){.rni-home-hero{min-height:650px}.rni-home-hero h1{font-size:2.55rem}.rni-department-card{min-height:200px}.rni-home-product-body h3{min-height:auto}.rni-retail-promo{min-height:230px}}

/* 0.4.1 reliable storefront media rendering */
.rni-home-hero{overflow:hidden;background:#929892;isolation:isolate}
.rni-home-hero-media{position:absolute;inset:0;z-index:-2}
.rni-home-hero-media img{width:100%;height:100%;object-fit:cover;object-position:var(--rni-hero-position,center center)}
.rni-home-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,18,15,var(--rni-hero-overlay,.45)),rgba(15,18,15,.08))}
.rni-retail-promo,.rni-wide-banner{position:relative;overflow:hidden;isolation:isolate;background:#596159}
.rni-retail-promo>img,.rni-wide-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .35s ease}
.rni-retail-promo:hover>img{transform:scale(1.035)}
.rni-promo-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(18,22,18,.9),rgba(18,22,18,.18))}
.rni-promo-copy{position:relative;z-index:1}
.rni-retail-promo>b{position:relative;z-index:1}
.rni-wide-banner>div{position:relative;z-index:1}
.rni-department-image{position:absolute!important;inset:0!important;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;background:none!important}
.rni-department-shade{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.88));z-index:1}
.rni-department-card:after{display:none!important}
.rni-department-card:hover .rni-department-image{transform:scale(1.055)}
@media(max-width:640px){.rni-home-hero-shade{background:linear-gradient(0deg,rgba(15,18,15,.84),rgba(15,18,15,.1))}}

/* 0.5.0 premium retail art direction */
.rni-home-hero{min-height:clamp(620px,70vw,820px);background:#111a14;overflow:hidden;isolation:isolate;border-bottom:4px solid var(--rni-colour-olive-600)}
.rni-home-hero-inner{min-height:inherit;display:grid;grid-template-columns:minmax(0,720px) 1fr;align-items:center;gap:4rem;position:relative;z-index:4}
.rni-home-hero-copy{padding:5rem 0;max-width:720px}
.rni-home-hero h1{font-size:clamp(3.2rem,6vw,6.6rem);line-height:.9;letter-spacing:-.055em;max-width:12ch;text-wrap:balance;text-transform:uppercase;text-shadow:0 4px 22px rgba(0,0,0,.45)}
.rni-home-hero-copy>p:not(.rni-eyebrow){font-size:clamp(1rem,1.35vw,1.25rem);max-width:620px;color:rgba(255,255,255,.88)}
.rni-home-hero-shade{background:linear-gradient(90deg,rgba(7,12,8,.94) 0%,rgba(10,18,12,.78) 40%,rgba(10,18,12,.15) 72%,rgba(10,18,12,.1) 100%)}
.rni-dynamic-hero{position:absolute;inset:0;background:radial-gradient(circle at 78% 35%,rgba(117,143,86,.38),transparent 32%),linear-gradient(120deg,#132017 0%,#263b2a 52%,#747a6b 100%);overflow:hidden}
.rni-hero-gridlines{position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:80px 80px;transform:perspective(600px) rotateX(58deg) scale(1.4);transform-origin:bottom}
.rni-hero-contour{position:absolute;inset:-20%;opacity:.3;background:repeating-radial-gradient(ellipse at 85% 65%,transparent 0 22px,rgba(188,205,158,.22) 24px 26px,transparent 28px 48px)}
.rni-hero-product{position:absolute;object-fit:contain;filter:drop-shadow(0 24px 35px rgba(0,0,0,.55));mix-blend-mode:multiply}
.rni-hero-product-1{width:min(63vw,930px);height:47%;right:-2%;top:12%;transform:rotate(-3deg)}
.rni-hero-product-2{width:min(30vw,430px);height:34%;right:8%;bottom:5%;transform:rotate(7deg)}
.rni-hero-product-3{width:min(24vw,350px);height:27%;right:35%;bottom:3%;transform:rotate(-4deg)}
.rni-hero-reticle{position:absolute;width:170px;height:170px;right:8%;top:12%;border:1px solid rgba(210,220,184,.3);border-radius:50%}.rni-hero-reticle:before,.rni-hero-reticle:after{content:"";position:absolute;background:rgba(210,220,184,.3)}.rni-hero-reticle:before{width:230px;height:1px;left:-30px;top:50%}.rni-hero-reticle:after{width:1px;height:230px;top:-30px;left:50%}
.rni-hero-proof{align-self:end;justify-self:end;display:flex;gap:.5rem;flex-wrap:wrap;padding:0 0 3rem;position:relative;z-index:5}.rni-hero-proof span{padding:.6rem .9rem;border:1px solid rgba(255,255,255,.24);background:rgba(9,14,10,.5);backdrop-filter:blur(8px);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.rni-departments-section{padding-top:clamp(4rem,7vw,7rem)}
.rni-section-heading-rich{display:grid;grid-template-columns:1fr minmax(260px,480px);align-items:end;gap:2rem;margin-bottom:2rem}.rni-section-heading-rich .rni-eyebrow{margin-bottom:.5rem}.rni-section-heading-rich h2{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.04em}.rni-section-heading-rich>p{color:var(--rni-text-secondary);font-size:1.05rem;line-height:1.6}
.rni-department-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.rni-department-card{min-height:340px;border:0;border-radius:2px;box-shadow:0 14px 35px rgba(18,25,19,.13);overflow:hidden;background:#1d291f;position:relative;transform:translateZ(0)}
.rni-department-card:nth-child(1),.rni-department-card:nth-child(6){grid-column:span 2}
.rni-department-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease;filter:saturate(.82) contrast(1.05)}
.rni-department-card:hover .rni-department-image{transform:scale(1.055);filter:saturate(1) contrast(1.08)}
.rni-department-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,9,6,.02) 20%,rgba(6,10,7,.9) 100%)}
.rni-department-meta{position:absolute;inset:auto 0 0;padding:1.5rem;color:#fff;display:grid;gap:.25rem}.rni-department-meta small{font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d9e2c6}.rni-department-meta strong{font-size:clamp(1.45rem,2vw,2rem);line-height:1.05;text-transform:uppercase}.rni-department-meta b{margin-top:.55rem;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.rni-category-art{position:absolute;inset:0;background:radial-gradient(circle at 76% 25%,rgba(172,191,132,.42),transparent 26%),linear-gradient(145deg,#17231a,#43563d)}
.rni-category-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(120deg,transparent 0 48%,rgba(255,255,255,.06) 48% 49%,transparent 49% 100%),repeating-radial-gradient(ellipse at 90% 90%,transparent 0 18px,rgba(255,255,255,.08) 19px 20px,transparent 21px 38px)}
.rni-home-product-card{border:0;box-shadow:0 10px 28px rgba(25,31,26,.09);transition:transform .25s ease,box-shadow .25s ease}.rni-home-product-card:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(25,31,26,.16)}
.rni-home-product-image{background:linear-gradient(145deg,#fff,#f0f2ee);padding:1rem}.rni-home-product-image img{mix-blend-mode:multiply}
@media(max-width:1024px){.rni-home-hero-inner{grid-template-columns:1fr}.rni-hero-proof{justify-self:start}.rni-department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rni-department-card:nth-child(1),.rni-department-card:nth-child(6){grid-column:span 1}.rni-section-heading-rich{grid-template-columns:1fr}.rni-hero-product-1{width:95vw;right:-25%;opacity:.75}.rni-hero-product-2,.rni-hero-product-3{opacity:.35}}
@media(max-width:640px){.rni-home-hero{min-height:680px}.rni-home-hero-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:1rem}.rni-home-hero-copy{padding:8rem 0 1rem}.rni-home-hero h1{font-size:clamp(2.8rem,13vw,4.4rem)}.rni-hero-proof{padding-bottom:2rem}.rni-department-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.rni-department-card{min-height:235px}.rni-department-meta{padding:1rem}.rni-department-meta strong{font-size:1.2rem}.rni-department-meta small{font-size:.58rem}.rni-department-meta b{display:none}}

/* Digital Flagship 0.6.0 */
.rni-storefront-homepage{background:#f3f5f1;color:#171b18;overflow:hidden}.rni-storefront-container{width:min(1440px,calc(100% - 40px));margin-inline:auto}.rni-home-section{padding:clamp(4.5rem,7vw,8rem) 0}.rni-eyebrow{margin:0 0 .7rem;color:#9eb074;font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.rni-section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.rni-section-heading h2{margin:0;font-size:clamp(2.15rem,4vw,4rem);letter-spacing:-.055em;line-height:.95}.rni-section-heading a{font-weight:800;color:#34452a;text-decoration:none}.rni-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.85rem 1.35rem;border:1px solid transparent;border-radius:2px;font-size:.78rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;transition:transform .2s ease,background .2s ease,color .2s ease}.rni-button:hover{transform:translateY(-2px)}.rni-button-primary{background:#667f43;color:#fff}.rni-button-primary:hover{background:#4e6533;color:#fff}.rni-button-ghost{border-color:rgba(255,255,255,.55);background:rgba(14,20,15,.25);color:#fff;backdrop-filter:blur(8px)}
.rni-flagship-hero{position:relative;min-height:min(760px,78vh);background:#111}.rni-hero-track,.rni-hero-slide{position:absolute;inset:0}.rni-hero-slide{opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s ease}.rni-hero-slide.is-active{opacity:1;visibility:visible}.rni-hero-slide picture,.rni-hero-slide img{position:absolute;inset:0;width:100%;height:100%}.rni-hero-slide img{object-fit:cover;object-position:center}.rni-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,8,5,.9),rgba(4,8,5,var(--overlay)) 58%,rgba(4,8,5,.08))}.rni-hero-content{position:relative;z-index:2;min-height:min(760px,78vh);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:#fff}.rni-hero-content h1{max-width:820px;margin:0;font-size:clamp(3.5rem,7.5vw,8rem);line-height:.84;letter-spacing:-.07em;text-transform:uppercase;text-wrap:balance}.rni-hero-content>p:not(.rni-eyebrow){max-width:680px;margin:1.4rem 0 0;color:#eef2e8;font-size:clamp(1rem,1.5vw,1.3rem);line-height:1.65}.rni-home-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.rni-hero-controls{position:absolute;z-index:5;right:max(20px,calc((100vw - 1440px)/2));bottom:28px;display:flex;align-items:center;gap:.75rem}.rni-hero-controls>button{width:46px;height:46px;border:1px solid rgba(255,255,255,.35);background:rgba(7,11,8,.42);color:#fff;cursor:pointer}.rni-hero-dots{display:flex;gap:.45rem}.rni-hero-dots button{width:34px;height:3px;padding:0;border:0;background:rgba(255,255,255,.35);cursor:pointer}.rni-hero-dots button.is-active{background:#d4dfbd}
.rni-trust-bar{background:#1c241e;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.rni-trust-bar .rni-storefront-container{display:grid;grid-template-columns:repeat(4,1fr)}.rni-trust-bar div>div{min-height:92px;padding:1rem 1.25rem;display:flex;align-items:center;gap:.8rem;border-right:1px solid rgba(255,255,255,.08)}.rni-trust-bar div>div:last-child{border-right:0}.rni-trust-bar span{font-size:1.2rem;color:#a9bc7c}.rni-trust-bar strong{font-size:.78rem;line-height:1.35;letter-spacing:.05em;text-transform:uppercase}
.rni-department-grid-flagship{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:155px;gap:12px}.rni-department-grid-flagship .rni-department-card{grid-column:span 3;grid-row:span 2;min-height:0}.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-4,.rni-department-grid-flagship .rni-department-card-8{grid-column:span 6}.rni-department-grid-flagship .rni-department-card-0{grid-row:span 3}.rni-department-grid-flagship .rni-department-card-4{grid-row:span 2}.rni-department-grid-flagship .rni-department-card-8{grid-row:span 2}.rni-department-card{border-radius:0}.rni-department-meta strong{max-width:460px}.rni-department-meta b{opacity:.85}.rni-department-card:hover .rni-department-meta b{opacity:1}
.rni-brand-strip{padding:2rem 0;background:#fff;border-block:1px solid #dfe3dd}.rni-brand-strip .rni-storefront-container>div{display:grid;grid-template-columns:repeat(10,1fr);align-items:center;gap:10px}.rni-brand-strip a,.rni-brand-strip span{min-height:70px;display:flex;align-items:center;justify-content:center;padding:.7rem;background:#f5f6f2;color:#30362f;font-weight:900;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;transition:background .2s,color .2s}.rni-brand-strip a:hover{background:#34452a;color:#fff}
.rni-product-tabs{display:flex;gap:.5rem;overflow:auto;margin-bottom:1.4rem;padding-bottom:.25rem}.rni-product-tabs button{white-space:nowrap;padding:.8rem 1.15rem;border:1px solid #cfd5cc;background:#fff;color:#3c443d;font-weight:800;cursor:pointer}.rni-product-tabs button.is-active{background:#29372c;color:#fff;border-color:#29372c}.rni-product-panel{display:none}.rni-product-panel.is-active{display:block}.rni-empty-merchandising{padding:3rem;border:1px dashed #aab3a6;background:#fff;color:#697168;text-align:center}.rni-home-product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.rni-home-product-card{position:relative;display:flex;flex-direction:column;background:#fff}.rni-home-product-image{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}.rni-home-product-image img{width:100%;height:100%;object-fit:contain}.rni-home-product-body{padding:1rem 1rem 1.2rem;display:flex;flex:1;flex-direction:column}.rni-product-brand{margin:0 0 .35rem;color:#75806f;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.rni-home-product-body h3{margin:0;font-size:1rem;line-height:1.35}.rni-home-product-body h3 a{color:#171b18;text-decoration:none}.rni-home-stock{margin:.9rem 0 .35rem;font-size:.72rem;font-weight:800}.rni-home-stock.is-in-stock{color:#247642}.rni-home-stock.is-out-of-stock{color:#9b3030}.rni-home-price{margin:auto 0 1rem;font-size:1.25rem;font-weight:900}.rni-card-badges{position:absolute;z-index:3;top:.65rem;left:.65rem;display:flex;gap:.35rem}.rni-card-badge{padding:.35rem .5rem;background:#25352a;color:#fff;font-size:.62rem;font-weight:900;text-transform:uppercase}.rni-badge-sale{background:#972f2f}.rni-badge-used{background:#7b5b23}
.rni-purpose-section{background:#1e2821;color:#fff}.rni-purpose-section .rni-section-heading-rich>p{color:#cbd3c7}.rni-purpose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.13)}.rni-purpose-grid a{min-height:160px;padding:1.5rem;background:#253128;color:#fff;text-decoration:none;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:1rem;transition:background .2s}.rni-purpose-grid a:hover{background:#34452f}.rni-purpose-grid span{color:#9caf76;font-size:.72rem;font-weight:900}.rni-purpose-grid strong{font-size:1.25rem}.rni-purpose-grid b{font-size:.72rem;text-transform:uppercase}
.rni-editorial-banner{min-height:490px;display:grid;grid-template-columns:1.15fr .85fr;background:#1b241e;color:#fff;overflow:hidden}.rni-editorial-banner.is-reversed{grid-template-columns:.85fr 1.15fr}.rni-editorial-banner.is-reversed img{order:2}.rni-editorial-banner img{width:100%;height:100%;object-fit:cover}.rni-editorial-banner>div{padding:clamp(2.5rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.rni-editorial-banner h2{margin:0;font-size:clamp(2.7rem,5vw,5.8rem);line-height:.88;letter-spacing:-.06em;text-transform:uppercase}.rni-editorial-banner p:not(.rni-eyebrow){max-width:600px;color:#d9dfd5;line-height:1.7}
.rni-knowledge{background:#fff}.rni-knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.rni-knowledge-grid a{min-height:250px;padding:2rem;display:flex;flex-direction:column;background:linear-gradient(145deg,#edf0e8,#dfe5d9);color:#1d241f;text-decoration:none}.rni-knowledge-grid span{font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#65735f}.rni-knowledge-grid h3{margin:auto 0 1rem;font-size:clamp(1.6rem,2.4vw,2.5rem);line-height:1}.rni-knowledge-grid b{font-size:.75rem;text-transform:uppercase}.rni-contact-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3rem;padding:clamp(2rem,5vw,5rem);background:#29372c;color:#fff}.rni-contact-panel h2{margin:.2rem 0 1rem;font-size:clamp(2.7rem,5vw,5.5rem);line-height:.9;letter-spacing:-.06em}.rni-contact-actions{display:flex;flex-direction:column;align-items:flex-end;gap:1rem}.rni-contact-actions>a:not(.rni-button){color:#fff;font-size:1.3rem;font-weight:900;text-decoration:none}
@media(max-width:1100px){.rni-home-product-grid{grid-template-columns:repeat(3,1fr)}.rni-brand-strip .rni-storefront-container>div{grid-template-columns:repeat(5,1fr)}.rni-department-grid-flagship{grid-template-columns:repeat(6,1fr)}.rni-department-grid-flagship .rni-department-card,.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-4,.rni-department-grid-flagship .rni-department-card-8{grid-column:span 3;grid-row:span 2}.rni-purpose-grid{grid-template-columns:repeat(2,1fr)}.rni-editorial-banner,.rni-editorial-banner.is-reversed{grid-template-columns:1fr}.rni-editorial-banner.is-reversed img{order:0}.rni-editorial-banner img{max-height:430px}.rni-trust-bar .rni-storefront-container{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.rni-storefront-container{width:min(100% - 24px,1440px)}.rni-flagship-hero,.rni-hero-content{min-height:690px}.rni-hero-slide img{object-position:66% center}.rni-hero-overlay{background:linear-gradient(0deg,rgba(4,8,5,.92),rgba(4,8,5,.1) 75%)}.rni-hero-content{justify-content:flex-end;padding-bottom:6.5rem}.rni-hero-content h1{font-size:clamp(2.8rem,13vw,5rem)}.rni-hero-content>p:not(.rni-eyebrow){font-size:.95rem}.rni-hero-controls{left:12px;right:12px;bottom:14px;justify-content:space-between}.rni-trust-bar .rni-storefront-container{grid-template-columns:1fr}.rni-trust-bar div>div{min-height:66px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.rni-section-heading,.rni-section-heading-rich{display:block}.rni-section-heading>a{display:inline-block;margin-top:1rem}.rni-department-grid-flagship{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.rni-department-grid-flagship .rni-department-card,.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-4,.rni-department-grid-flagship .rni-department-card-8{grid-column:span 1;grid-row:span 1}.rni-department-meta small,.rni-department-meta b{display:none}.rni-department-meta strong{font-size:1.05rem}.rni-brand-strip .rni-storefront-container>div{grid-template-columns:repeat(2,1fr)}.rni-home-product-grid{grid-template-columns:repeat(2,1fr);gap:8px}.rni-home-product-body{padding:.8rem}.rni-home-product-body h3{font-size:.85rem}.rni-home-price{font-size:1rem}.rni-home-product-body .rni-button{min-height:42px;padding:.65rem .7rem;font-size:.65rem}.rni-purpose-grid{grid-template-columns:1fr}.rni-purpose-grid a{min-height:120px}.rni-editorial-banner{min-height:0}.rni-editorial-banner>div{padding:2rem}.rni-editorial-banner h2{font-size:2.8rem}.rni-knowledge-grid{grid-template-columns:1fr}.rni-contact-panel{grid-template-columns:1fr}.rni-contact-actions{align-items:flex-start}}

/* 0.7.0 — campaign-safe framing and premium continuity */
body.rni-storefront-home-active .site-footer,
body.rni-storefront-home-active #colophon,
body.rni-storefront-home-active footer.site-footer{display:none!important}
.rni-storefront-homepage{background:#f2f3ee;color:#18201b}
.rni-home-section{padding:clamp(4.5rem,8vw,8rem) 0;margin:0}
.rni-home-section+.rni-home-section{border-top:1px solid rgba(24,32,27,.07)}
.rni-section-heading h2,.rni-section-heading-rich h2{color:#152019}

/* Hero: crop embedded artwork typography away and provide a clean HTML content stage. */
.rni-flagship-hero{min-height:min(820px,84vh);background:#101813}
.rni-hero-slide picture{overflow:hidden}
.rni-hero-slide img{width:72%;left:auto;right:0;object-position:72% center;transform:scale(1.035)}
.rni-hero-slide:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#101813 0%,#101813 31%,rgba(16,24,19,.98) 42%,rgba(16,24,19,.72) 58%,rgba(16,24,19,.12) 78%,rgba(16,24,19,.02) 100%)}
.rni-hero-overlay{display:none}
.rni-hero-content{min-height:min(820px,84vh);padding-block:7rem;isolation:isolate}
.rni-hero-content:before{content:"";position:absolute;z-index:-1;left:calc(var(--rni-gutter) * -1);top:14%;bottom:14%;width:min(760px,58vw);background:linear-gradient(90deg,rgba(16,24,19,.98),rgba(16,24,19,.82),transparent);filter:blur(.1px)}
.rni-hero-content h1{max-width:760px;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.32);font-size:clamp(3.2rem,6.7vw,7.4rem);line-height:.88;letter-spacing:-.065em}
.rni-hero-content>p:not(.rni-eyebrow){max-width:610px;color:#e4e9e1}
.rni-hero-content .rni-eyebrow{color:#b8cb87}
.rni-button{border-radius:2px;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}
.rni-button-primary{box-shadow:0 10px 28px rgba(84,111,61,.22)}
.rni-button-ghost{background:rgba(255,255,255,.04);backdrop-filter:blur(8px)}

/* Trust bar: quieter and more refined. */
.rni-trust-bar{background:#172019}
.rni-trust-bar .rni-storefront-container{grid-template-columns:repeat(4,minmax(0,1fr))}
.rni-trust-bar div>div{min-height:84px;padding:1.1rem 1.4rem}
.rni-trust-bar strong{font-size:.72rem;letter-spacing:.075em}

/* Department cards: crop artwork copy and replace it with accessible HTML labels. */
.rni-departments-section{background:#f7f8f4}
.rni-department-grid-flagship{grid-auto-rows:180px;gap:16px}
.rni-department-card{overflow:hidden;background:#18221b;box-shadow:0 12px 34px rgba(21,31,24,.10);transition:transform .35s ease,box-shadow .35s ease}
.rni-department-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(21,31,24,.18)}
.rni-department-image{object-position:72% center;transform:scale(1.23);filter:saturate(.9) contrast(1.03);transition:transform .6s ease,filter .4s ease}
.rni-department-card:hover .rni-department-image{transform:scale(1.29);filter:saturate(1) contrast(1.05)}
.rni-department-shade{background:linear-gradient(0deg,rgba(10,16,12,.96) 0%,rgba(10,16,12,.66) 38%,rgba(10,16,12,.08) 72%)}
.rni-department-meta{inset:auto 0 0;padding:1.4rem 1.5rem;background:linear-gradient(0deg,rgba(12,18,14,.94),rgba(12,18,14,.68),transparent)}
.rni-department-meta small{color:#b8cb87}
.rni-department-meta strong{color:#fff;font-size:clamp(1.35rem,2vw,2.2rem);line-height:.95;text-shadow:0 2px 16px rgba(0,0,0,.55)}
.rni-department-meta b{color:#e5eadf}

/* Brand system: visually consistent wordmarks until true logo assets are supplied. */
.rni-brand-strip{padding:3.2rem 0;background:#fff}
.rni-brand-strip .rni-storefront-container>div{gap:1px;background:#e2e6de;border:1px solid #e2e6de}
.rni-brand-strip a,.rni-brand-strip span{min-height:82px;background:#fbfcf9;color:#5d665d;font-size:.76rem;letter-spacing:.12em;filter:grayscale(1);transition:background .25s,color .25s,filter .25s,transform .25s}
.rni-brand-strip a:hover{background:#1f2b22;color:#fff;filter:none;transform:translateY(-2px)}

/* Product cards: cleaner hierarchy and more expensive spacing. */
.rni-featured-tabs{background:#edf0e9}
.rni-home-product-grid{gap:18px}
.rni-home-product-card{border:1px solid #dfe4dc;box-shadow:0 8px 24px rgba(20,29,22,.06);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.rni-home-product-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(20,29,22,.14);border-color:#bac5b4}
.rni-home-product-image{background:#f9faf7;padding:1rem}
.rni-home-product-body{padding:1.2rem 1.2rem 1.35rem}
.rni-home-product-body h3{font-size:1.04rem}
.rni-home-price{padding-top:1rem;border-top:1px solid #edf0eb}

/* Purpose links integrate into the page rather than looking like a disconnected block. */
.rni-purpose-section{background:#18221b}
.rni-purpose-grid{gap:12px;background:transparent}
.rni-purpose-grid a{min-height:175px;background:linear-gradient(145deg,#243128,#1d2921);border:1px solid rgba(255,255,255,.07)}
.rni-purpose-grid a:hover{background:linear-gradient(145deg,#344731,#27392a)}

/* Editorial campaigns: artwork is isolated to a crop-safe visual panel. */
.rni-editorial-banner{min-height:540px;grid-template-columns:minmax(0,1.12fr) minmax(400px,.88fr);background:#17211a;box-shadow:0 20px 55px rgba(21,31,24,.13)}
.rni-editorial-banner.is-reversed{grid-template-columns:minmax(400px,.88fr) minmax(0,1.12fr)}
.rni-editorial-banner img{object-position:76% center;transform:scale(1.12);filter:saturate(.9) contrast(1.04)}
.rni-editorial-banner>div{position:relative;z-index:2;background:#17211a;padding:clamp(3rem,5vw,5.5rem)}
.rni-editorial-banner h2{color:#fff;font-size:clamp(2.9rem,4.8vw,5.6rem);line-height:.9;letter-spacing:-.055em;text-shadow:none}
.rni-editorial-banner p:not(.rni-eyebrow){color:#dce3d9}
.rni-editorial-banner .rni-eyebrow{color:#aec37a}

/* Knowledge centre */
.rni-knowledge{background:#f8f9f5}
.rni-knowledge-grid{gap:16px}
.rni-knowledge-grid a{min-height:290px;background:linear-gradient(145deg,#eef2e9,#dce5d7);border:1px solid #d5ddd0;transition:transform .3s ease,box-shadow .3s ease}
.rni-knowledge-grid a:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(24,32,27,.10)}

/* Contact: clear, legible information architecture. */
.rni-home-contact{background:#e9eee5}
.rni-contact-panel{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);padding:clamp(2.5rem,5vw,5.5rem);background:#223126;box-shadow:0 20px 52px rgba(24,34,27,.15)}
.rni-contact-intro h2{max-width:760px;color:#fff;font-size:clamp(2.8rem,5vw,5.4rem);line-height:.92;letter-spacing:-.055em}
.rni-contact-intro>p:not(.rni-eyebrow){max-width:650px;color:#d9e1d7;font-size:1.05rem;line-height:1.7}
.rni-contact-details{display:grid;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12)}
.rni-contact-details>div{padding:1.25rem 1.4rem;background:#1b281f}
.rni-contact-details span{display:block;margin-bottom:.45rem;color:#aabd7b;font-size:.67rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.rni-contact-details strong{color:#fff;font-size:.92rem;line-height:1.55}
.rni-contact-details a{color:#fff;text-decoration:none}
.rni-contact-actions{grid-column:1/-1;align-items:flex-start;margin-top:.75rem}

/* Premium homepage footer */
.rni-premium-footer{background:#111813;color:#dce3d9}
.rni-footer-newsletter{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3rem;padding-block:clamp(3rem,6vw,5.5rem);border-bottom:1px solid rgba(255,255,255,.1)}
.rni-footer-newsletter h2{margin:.2rem 0 .75rem;color:#fff;font-size:clamp(2.4rem,4vw,4.5rem);line-height:.95;letter-spacing:-.05em}
.rni-footer-newsletter p:not(.rni-eyebrow){max-width:650px;color:#aeb8ae}
.rni-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:clamp(2rem,5vw,5rem);padding-block:clamp(3.5rem,6vw,6rem)}
.rni-footer-brand img{display:block;max-width:170px;max-height:80px;margin-bottom:1.5rem}
.rni-footer-brand p{max-width:360px;color:#9da89f;line-height:1.65}
.rni-footer-grid h3{margin:0 0 1.25rem;color:#fff;font-size:.76rem;letter-spacing:.13em;text-transform:uppercase}
.rni-footer-grid nav,.rni-footer-contact{display:flex;flex-direction:column;align-items:flex-start}
.rni-footer-grid nav a,.rni-footer-contact a{margin:.36rem 0;color:#c8d1c8;text-decoration:none}
.rni-footer-grid nav a:hover,.rni-footer-contact a:hover{color:#b8cb87}
.rni-footer-contact p{margin:0 0 1rem;color:#9da89f;line-height:1.65}
.rni-footer-bottom{border-top:1px solid rgba(255,255,255,.08);background:#0d120f}
.rni-footer-bottom .rni-storefront-container{min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:1rem;color:#7f8a81;font-size:.78rem}

@media(max-width:1100px){
  .rni-hero-slide img{width:82%;object-position:75% center}
  .rni-editorial-banner,.rni-editorial-banner.is-reversed{grid-template-columns:1fr 1fr}
  .rni-footer-grid{grid-template-columns:1.25fr repeat(2,1fr)}
  .rni-footer-contact{grid-column:2/-1}
}
@media(max-width:780px){
  .rni-flagship-hero,.rni-hero-content{min-height:720px}
  .rni-hero-slide img{width:100%;height:62%;top:0;bottom:auto;object-position:72% center;transform:scale(1.12)}
  .rni-hero-slide:before{background:linear-gradient(0deg,#101813 0%,#101813 39%,rgba(16,24,19,.95) 51%,rgba(16,24,19,.15) 82%,rgba(16,24,19,.03) 100%)}
  .rni-hero-content{justify-content:flex-end;padding-top:18rem;padding-bottom:7rem}
  .rni-hero-content:before{display:none}
  .rni-hero-content h1{font-size:clamp(2.8rem,12vw,4.8rem)}
  .rni-trust-bar .rni-storefront-container{grid-template-columns:1fr 1fr}
  .rni-department-grid-flagship{grid-template-columns:1fr;grid-auto-rows:270px}
  .rni-department-grid-flagship .rni-department-card,.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-4,.rni-department-grid-flagship .rni-department-card-8{grid-column:1;grid-row:auto}
  .rni-department-meta small,.rni-department-meta b{display:block}
  .rni-editorial-banner,.rni-editorial-banner.is-reversed{grid-template-columns:1fr;min-height:0}
  .rni-editorial-banner img,.rni-editorial-banner.is-reversed img{order:0;height:370px;transform:scale(1.16);object-position:74% center}
  .rni-editorial-banner>div{padding:2.5rem 1.5rem 3rem}
  .rni-contact-panel{grid-template-columns:1fr}
  .rni-contact-actions{grid-column:auto}
  .rni-footer-newsletter{grid-template-columns:1fr}
  .rni-footer-grid{grid-template-columns:1fr 1fr}
  .rni-footer-brand{grid-column:1/-1}
  .rni-footer-contact{grid-column:1/-1}
}
@media(max-width:520px){
  .rni-home-section{padding:4rem 0}
  .rni-trust-bar .rni-storefront-container{grid-template-columns:1fr}
  .rni-brand-strip .rni-storefront-container>div{grid-template-columns:1fr 1fr}
  .rni-home-product-grid{grid-template-columns:1fr}
  .rni-footer-grid{grid-template-columns:1fr}
  .rni-footer-brand,.rni-footer-contact{grid-column:auto}
  .rni-footer-bottom .rni-storefront-container{flex-direction:column;align-items:flex-start;justify-content:center;padding-block:1rem}
}

/* 0.7.1 responsive and content repair */
html{overflow-x:hidden}.rni-storefront-homepage{overflow:hidden}
.rni-section-heading-rich{align-items:end}.rni-section-heading-rich>p{max-width:46ch;line-height:1.6;color:#5d655e}

/* Prevent embedded artwork typography competing with accessible HTML labels. */
.rni-department-card:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,17,13,.98) 0%,rgba(11,17,13,.84) 27%,rgba(11,17,13,.18) 64%,rgba(11,17,13,.04) 100%);pointer-events:none}
.rni-department-shade{z-index:2}.rni-department-meta{z-index:3;max-width:78%}
.rni-department-image{object-position:78% center;transform:scale(1.08)}
.rni-department-card:hover .rni-department-image{transform:scale(1.13)}
.rni-department-ammunition .rni-department-image,.rni-department-optics .rni-department-image,.rni-department-accessories .rni-department-image{object-position:84% center}
.rni-department-used .rni-department-image,.rni-department-pistols .rni-department-image{object-position:82% center}

/* Campaign imagery is treated as photography; live copy owns the message. */
.rni-editorial-banner{overflow:hidden}
.rni-editorial-banner>img{position:relative}
.rni-editorial-banner:before{content:"";position:absolute;inset:0 auto 0 0;width:58%;z-index:1;background:linear-gradient(90deg,rgba(13,20,15,.78),rgba(13,20,15,.18),transparent);pointer-events:none}
.rni-editorial-banner.is-reversed:before{left:auto;right:0;background:linear-gradient(270deg,rgba(13,20,15,.78),rgba(13,20,15,.18),transparent)}
.rni-editorial-banner>div{z-index:3}

/* Improve desktop rhythm and stop the mosaic creating dead space. */
.rni-department-grid-flagship{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px}
.rni-department-grid-flagship .rni-department-card{grid-column:span 1;grid-row:span 1}
.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-8{grid-column:span 2;grid-row:span 2}
.rni-department-grid-flagship .rni-department-card-5,.rni-department-grid-flagship .rni-department-card-9{grid-column:span 2}

/* Brand rail remains usable when ten brands do not fit. */
.rni-brand-strip .rni-storefront-container>div{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}
.rni-brand-strip a,.rni-brand-strip span{flex:0 0 150px;scroll-snap-align:start;padding:1rem;text-align:center;display:grid;place-items:center}

/* Header sizing and touch targets. */
.rni-storefront-menu a{font-size:.88rem}.rni-storefront-actions a{min-height:44px;display:inline-flex;align-items:center}

@media(max-width:900px){
  body.rni-storefront-home-active{min-width:0}
  .rni-storefront-header{position:sticky!important;top:0!important;z-index:999}
  .admin-bar .rni-storefront-header{top:46px!important}
  .rni-storefront-utility,.rni-storefront-primary-nav{display:none!important}
  .rni-storefront-main-inner{display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;min-height:64px!important;gap:.5rem!important;padding-inline:.25rem}
  .rni-storefront-menu-toggle{display:inline-grid!important;width:48px;height:48px}
  .rni-storefront-logo{min-width:0;justify-content:center}.rni-storefront-logo img{max-width:126px;max-height:42px}
  .rni-storefront-main .rni-storefront-search{display:none!important}
  .rni-storefront-actions{white-space:nowrap}.rni-storefront-actions a:first-child{display:none!important}
  .rni-storefront-mobile-search{display:block!important;padding:.65rem .75rem .8rem;background:#fff}
  .rni-storefront-mobile-search .rni-storefront-search{display:flex!important}
  .rni-storefront-search input[type=search],.rni-storefront-search button{min-height:48px}

  .rni-home-section{padding:4.5rem 0}
  .rni-section-heading,.rni-section-heading-rich{display:block}.rni-section-heading>div,.rni-section-heading-rich>div{margin-bottom:.75rem}
  .rni-section-heading-rich>p{max-width:none;margin:0}
  .rni-flagship-hero,.rni-hero-track,.rni-hero-slide,.rni-hero-content{min-height:680px}
  .rni-hero-slide img{position:absolute;width:100%;height:58%;inset:0 0 auto;object-fit:cover;object-position:74% center;transform:none}
  .rni-hero-slide:before{background:linear-gradient(0deg,#101813 0%,#101813 43%,rgba(16,24,19,.96) 52%,rgba(16,24,19,.26) 80%,rgba(16,24,19,.08) 100%)}
  .rni-hero-content{justify-content:flex-end;padding:20rem 0 6.5rem}
  .rni-hero-content h1{font-size:clamp(2.65rem,11vw,4.8rem);max-width:12ch;line-height:.9}
  .rni-hero-content>p:not(.rni-eyebrow){font-size:1rem;line-height:1.55;max-width:38ch}
  .rni-home-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.rni-button{min-height:48px;text-align:center}
  .rni-hero-controls{bottom:1rem}

  .rni-trust-bar .rni-storefront-container{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-block:.1rem}
  .rni-trust-bar div>div{flex:0 0 78%;min-height:74px;scroll-snap-align:start;border-right:1px solid rgba(255,255,255,.09)}

  .rni-department-grid-flagship{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px;gap:10px}
  .rni-department-grid-flagship .rni-department-card{grid-column:span 1!important;grid-row:span 1!important}
  .rni-department-grid-flagship .rni-department-card-0{grid-column:1/-1!important;grid-row:span 2!important}
  .rni-department-grid-flagship .rni-department-card-8{grid-column:1/-1!important}
  .rni-department-meta{padding:1rem;max-width:96%}.rni-department-meta strong{font-size:1.35rem}.rni-department-meta b{display:none}
  .rni-department-card:after{background:linear-gradient(0deg,rgba(11,17,13,.98),rgba(11,17,13,.55) 48%,rgba(11,17,13,.08) 78%)}
  .rni-department-image{object-position:70% center;transform:scale(1.06)}

  .rni-editorial-banner,.rni-editorial-banner.is-reversed{display:flex;flex-direction:column;min-height:0}
  .rni-editorial-banner:before,.rni-editorial-banner.is-reversed:before{display:none}
  .rni-editorial-banner img,.rni-editorial-banner.is-reversed img{order:0;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:72% center;transform:none}
  .rni-editorial-banner>div,.rni-editorial-banner.is-reversed>div{order:1;padding:2.3rem 1.25rem 2.6rem}
  .rni-editorial-banner h2{font-size:clamp(2.45rem,10vw,4rem);max-width:12ch}

  .rni-contact-panel{display:block;padding:2.2rem 1.25rem}.rni-contact-intro{margin-bottom:2rem}
  .rni-contact-intro h2{font-size:clamp(2.45rem,10vw,4rem)}
  .rni-contact-details{grid-template-columns:1fr 1fr}.rni-contact-details>div{min-height:120px}
  .rni-contact-actions{margin-top:1rem}.rni-contact-actions .rni-button{width:100%}

  .rni-footer-newsletter{display:block;padding-block:3.5rem}.rni-footer-newsletter .rni-button{width:100%;margin-top:1.5rem}
  .rni-footer-grid{grid-template-columns:1fr 1fr;gap:2rem;padding-block:3rem}.rni-footer-brand{grid-column:1/-1}.rni-footer-contact{grid-column:1/-1}
}

@media(max-width:560px){
  :root{--rni-gutter:14px}
  .rni-storefront-actions{font-size:0}.rni-storefront-actions a:last-child{font-size:.82rem}.rni-storefront-cart-count{margin-left:.25rem}
  .rni-home-section{padding:3.75rem 0}
  .rni-flagship-hero,.rni-hero-track,.rni-hero-slide,.rni-hero-content{min-height:650px}
  .rni-hero-slide img{height:52%;object-position:72% center}
  .rni-hero-content{padding-top:18rem;padding-bottom:5.8rem}
  .rni-home-actions{grid-template-columns:1fr}
  .rni-trust-bar div>div{flex-basis:88%}
  .rni-department-grid-flagship{grid-auto-rows:190px}
  .rni-department-grid-flagship .rni-department-card-0{grid-row:span 1!important;min-height:260px}
  .rni-department-meta small{font-size:.62rem}.rni-department-meta strong{font-size:1.18rem}
  .rni-brand-strip{padding:2.5rem 0}.rni-brand-strip a,.rni-brand-strip span{flex-basis:128px;min-height:68px;font-size:.66rem}
  .rni-product-tabs{display:flex;overflow-x:auto;white-space:nowrap;padding-bottom:.5rem}.rni-product-tabs button{flex:0 0 auto;min-height:44px}
  .rni-home-product-grid{grid-template-columns:1fr 1fr;gap:10px}.rni-home-product-body{padding:.85rem}.rni-home-product-body h3{font-size:.9rem}
  .rni-contact-details{grid-template-columns:1fr}.rni-contact-details>div{min-height:0}
  .rni-footer-grid{grid-template-columns:1fr}.rni-footer-brand,.rni-footer-contact{grid-column:auto}.rni-footer-bottom .rni-storefront-container{align-items:flex-start}
}

@media(max-width:380px){.rni-home-product-grid{grid-template-columns:1fr}.rni-department-grid-flagship{grid-template-columns:1fr}.rni-department-grid-flagship .rni-department-card,.rni-department-grid-flagship .rni-department-card-0,.rni-department-grid-flagship .rni-department-card-8{grid-column:1!important}}

/* 0.7.2: clean hero artwork and exact department matrix */
.rni-flagship-hero,
.rni-hero-track,
.rni-hero-slide,
.rni-hero-content{min-height:clamp(520px,52vw,760px)}
.rni-hero-slide img{object-fit:cover;object-position:center center}
.rni-hero-overlay{background:linear-gradient(90deg,rgba(6,12,8,.92) 0%,rgba(6,12,8,.78) 34%,rgba(6,12,8,.28) 58%,rgba(6,12,8,.04) 100%)}
.rni-hero-content h1{max-width:680px;font-size:clamp(3rem,6vw,6.4rem);line-height:.9;letter-spacing:-.055em}
.rni-hero-content>p:not(.rni-eyebrow){max-width:560px}

.rni-department-grid-flagship{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:auto;
  gap:18px;
  align-items:stretch;
}
.rni-department-grid-flagship .rni-department-card,
.rni-department-grid-flagship .rni-department-card-0,
.rni-department-grid-flagship .rni-department-card-4,
.rni-department-grid-flagship .rni-department-card-5,
.rni-department-grid-flagship .rni-department-card-8,
.rni-department-grid-flagship .rni-department-card-9{
  grid-column:auto!important;
  grid-row:auto!important;
  min-height:0!important;
  aspect-ratio:3 / 2;
}
.rni-department-grid-flagship .rni-department-card-8{grid-column:2!important}
.rni-department-grid-flagship .rni-department-card-9{grid-column:3!important}
.rni-department-card{background:#111a14;border:1px solid #dfe5de;border-radius:4px;box-shadow:0 10px 24px rgba(19,29,22,.10)}
.rni-department-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center!important;
  background:#111a14;
  transform:none!important;
  filter:none!important;
}
.rni-department-card:hover .rni-department-image{transform:none!important;filter:none!important}
.rni-department-card:after{background:linear-gradient(0deg,rgba(7,12,8,.9) 0%,rgba(7,12,8,.28) 42%,rgba(7,12,8,0) 68%)!important}
.rni-department-meta{inset:auto 0 0!important;padding:1rem 1.1rem!important;text-align:center;align-items:center!important}
.rni-department-meta small{display:none!important}
.rni-department-meta strong{font-size:clamp(1rem,1.25vw,1.28rem)!important;line-height:1.1;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.rni-department-meta b{display:none!important}

@media(max-width:900px){
  .rni-flagship-hero,.rni-hero-track,.rni-hero-slide,.rni-hero-content{min-height:620px}
  .rni-hero-slide img{object-position:64% center}
  .rni-hero-overlay{background:linear-gradient(0deg,rgba(6,12,8,.94) 0%,rgba(6,12,8,.68) 42%,rgba(6,12,8,.08) 76%)}
  .rni-hero-content{justify-content:flex-end;padding-bottom:5.75rem}
  .rni-department-grid-flagship{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .rni-department-grid-flagship .rni-department-card,
  .rni-department-grid-flagship .rni-department-card-0,
  .rni-department-grid-flagship .rni-department-card-4,
  .rni-department-grid-flagship .rni-department-card-5,
  .rni-department-grid-flagship .rni-department-card-8,
  .rni-department-grid-flagship .rni-department-card-9{grid-column:auto!important;grid-row:auto!important;aspect-ratio:3 / 2;min-height:0!important}
  .rni-department-meta{padding:.75rem .55rem!important}
  .rni-department-meta strong{font-size:clamp(.78rem,3.3vw,1rem)!important}
}
@media(max-width:520px){
  .rni-flagship-hero,.rni-hero-track,.rni-hero-slide,.rni-hero-content{min-height:600px}
  .rni-hero-content h1{font-size:clamp(2.55rem,12.5vw,4rem)}
  .rni-home-actions{width:100%}
  .rni-home-actions .rni-button{flex:1 1 calc(50% - .4rem);padding:.72rem .55rem;font-size:.72rem}
  .rni-department-grid-flagship{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .rni-department-grid-flagship .rni-department-card{aspect-ratio:3 / 2!important}
}
@media(max-width:340px){
  .rni-department-grid-flagship{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* 0.7.3: definitive hero composition repair.
 * Campaign photography is cropped to its clean right-hand photographic field.
 * Copy is rendered in a separate content stage; it never sits over damaged or embedded artwork text.
 */
.rni-flagship-hero{
  background:#101813;
  overflow:hidden;
}
.rni-hero-slide picture{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:62%;
  overflow:hidden;
  background:#101813;
}
.rni-hero-slide picture img{
  position:absolute;
  top:0;
  right:0;
  left:auto;
  width:145%;
  max-width:none;
  height:100%;
  object-fit:cover;
  object-position:right center;
  transform:none!important;
}
.rni-hero-slide:before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,#101813 0%,#101813 38%,rgba(16,24,19,.98) 45%,rgba(16,24,19,.55) 58%,rgba(16,24,19,0) 76%);
}
.rni-hero-overlay{display:none!important}
.rni-hero-content{
  position:relative;
  z-index:2;
  width:min(100% - 48px,1440px);
  min-height:clamp(560px,52vw,760px);
  padding-block:5rem 6rem;
}
.rni-hero-content:before{display:none!important}
.rni-hero-content h1{max-width:9.5ch}
.rni-hero-controls{z-index:8}

/* Exact department matrix: 4 + 4 + centred 2. */
.rni-department-grid-flagship{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:18px!important;
}
.rni-department-grid-flagship .rni-department-card{
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:16 / 10!important;
  overflow:hidden!important;
}
.rni-department-grid-flagship .rni-department-card-8{grid-column:2!important}
.rni-department-grid-flagship .rni-department-card-9{grid-column:3!important}
.rni-department-grid-flagship .rni-department-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  background:#101813!important;
}

@media(max-width:700px){
  .rni-flagship-hero,
  .rni-hero-track,
  .rni-hero-slide{
    min-height:760px!important;
  }
  .rni-hero-slide{
    display:grid;
    grid-template-rows:310px 1fr;
    background:#101813;
  }
  .rni-hero-slide picture{
    position:relative;
    inset:auto;
    grid-row:1;
    width:100%;
    height:310px;
    overflow:hidden;
  }
  .rni-hero-slide picture img{
    width:172%!important;
    height:100%!important;
    right:0!important;
    left:auto!important;
    object-fit:cover!important;
    object-position:right center!important;
    transform:none!important;
  }
  .rni-hero-slide:before{
    z-index:1;
    background:linear-gradient(0deg,#101813 0%,rgba(16,24,19,.82) 11%,rgba(16,24,19,0) 34%);
  }
  .rni-hero-content{
    position:relative;
    grid-row:2;
    align-self:stretch;
    justify-content:flex-start!important;
    width:calc(100% - 36px)!important;
    min-height:450px!important;
    margin:0 auto;
    padding:2.4rem 0 5.2rem!important;
  }
  .rni-hero-content .rni-eyebrow{margin-bottom:1.15rem}
  .rni-hero-content h1{
    max-width:10ch!important;
    margin:0;
    font-size:clamp(2.65rem,12vw,4rem)!important;
    line-height:.91!important;
  }
  .rni-hero-content>p:not(.rni-eyebrow){
    max-width:34ch!important;
    margin-top:1.25rem!important;
    font-size:1rem!important;
    line-height:1.55!important;
  }
  .rni-home-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%;
    gap:.7rem!important;
    margin-top:1.6rem!important;
  }
  .rni-home-actions .rni-button{
    width:100%;
    min-height:52px;
    justify-content:center;
  }
  .rni-hero-controls{
    left:18px!important;
    right:18px!important;
    bottom:18px!important;
    justify-content:center!important;
    pointer-events:none;
  }
  .rni-hero-controls>button{display:none!important}
  .rni-hero-dots{gap:.55rem}
  .rni-hero-dots button{
    pointer-events:auto;
    width:28px;
    height:4px;
  }
  .rni-department-grid-flagship{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .rni-department-grid-flagship .rni-department-card,
  .rni-department-grid-flagship .rni-department-card-8,
  .rni-department-grid-flagship .rni-department-card-9{
    grid-column:auto!important;
    aspect-ratio:16 / 11!important;
  }
}

@media(max-width:390px){
  .rni-hero-slide{grid-template-rows:280px 1fr}
  .rni-hero-slide picture{height:280px}
  .rni-flagship-hero,.rni-hero-track,.rni-hero-slide{min-height:730px!important}
  .rni-hero-content{min-height:450px!important;padding-top:2rem!important}
  .rni-hero-content h1{font-size:clamp(2.4rem,12vw,3.25rem)!important}
}
/* END ORIGINAL storefront.css */
/* BEGIN ORIGINAL storefront-public-shell.css */
/* Recce NI Storefront 2.2.0-beta.4 — canonical public shell */
body.rni-canonical-public-shell #masthead,
body.rni-canonical-public-shell .site-main-header-wrap,
body.rni-canonical-public-shell header.site-header,
body.rni-canonical-public-shell #colophon,
body.rni-canonical-public-shell footer.site-footer,
body.rni-canonical-public-shell .site-footer-wrap,
body.rni-canonical-public-shell .site-footer,
body.rni-canonical-public-shell .rni-premium-footer,
body.rni-canonical-public-shell .rni-guidance-footer,
body.rni-canonical-public-shell .rni-persistent-service-links {
    display: none !important;
}

body.rni-canonical-public-shell .rni-storefront-header,
body.rni-canonical-public-shell .rni-canonical-footer {
    display: block !important;
}

.rni-canonical-footer {
    width: 100%;
    margin: 0;
    background: #171b18;
    color: #f5f6f3;
    border-top: 1px solid rgba(255,255,255,.08);
    position: relative;
    z-index: 4;
}
.rni-canonical-footer a { color: #f5f6f3; text-decoration: none; }
.rni-canonical-footer a:hover,
.rni-canonical-footer a:focus-visible { color: #b7c98a; text-decoration: underline; text-underline-offset: .2em; }
.rni-canonical-footer__grid {
    display: grid;
    grid-template-columns: minmax(220px,1.4fr) repeat(3,minmax(150px,1fr));
    gap: clamp(28px,4vw,64px);
    padding-top: clamp(44px,6vw,78px);
    padding-bottom: clamp(38px,5vw,66px);
}
.rni-canonical-footer__brand { max-width: 300px; }
.rni-canonical-footer__logo { display: inline-flex; align-items: center; min-height: 48px; margin-bottom: 18px; }
.rni-canonical-footer__logo img { width: auto; height: 58px; max-width: 180px; object-fit: contain; }
.rni-canonical-footer__brand p,
.rni-canonical-footer__visit p { margin: 0; color: #b9c0b9; line-height: 1.7; }
.rni-canonical-footer__group { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.rni-canonical-footer__group h2 { margin: 0 0 10px; color: #b7c98a; font-size: .78rem; line-height: 1.2; letter-spacing: .14em; text-transform: uppercase; font-weight: 800; }
.rni-canonical-footer__group a { font-size: .95rem; line-height: 1.45; }
.rni-canonical-footer__bottom { border-top: 1px solid rgba(255,255,255,.09); color: #aeb4ae; }
.rni-canonical-footer__bottom .rni-storefront-container { display: flex; justify-content: space-between; gap: 18px; padding-top: 18px; padding-bottom: 18px; font-size: .78rem; }

/* Canonical shell markers must never alter application/admin output. */
body.wp-admin .rni-storefront-header,
body.wp-admin .rni-canonical-footer { display: none !important; }

@media (max-width: 980px) {
    .rni-canonical-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
    .rni-canonical-footer__grid { grid-template-columns: minmax(0,1fr); gap: 30px; padding: 38px 22px 34px; }
    .rni-canonical-footer__brand { max-width: none; }
    .rni-canonical-footer__logo img { height: 50px; }
    .rni-canonical-footer__group { gap: 12px; }
    .rni-canonical-footer__group h2 { margin-bottom: 4px; }
    .rni-canonical-footer__group a { min-height: 44px; display: inline-flex; align-items: center; }
    .rni-canonical-footer__bottom .rni-storefront-container { flex-direction: column; padding: 18px 22px 24px; }
}

/* Canonical provider-content shell for managed Trade-In Manager journeys. */
.rni-managed-journey-shell-main{width:100%;min-height:48vh;background:#fff;color:var(--rni-colour-charcoal-900,#20221f);}
.rni-managed-journey-shell-content{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:32px 0 56px;}
.rni-managed-journey-shell .site-header,.rni-managed-journey-shell #masthead,.rni-managed-journey-shell .site-footer,.rni-managed-journey-shell #colophon{display:none!important;}
@media (max-width:767px){.rni-managed-journey-shell-content{width:min(100% - 24px,720px);padding:20px 0 40px;}}

.rni-desktop-primary-nav{display:flex;align-items:center}
.rni-desktop-primary-nav__list{display:flex;align-items:center;gap:18px;list-style:none;margin:0;padding:0}
.rni-desktop-primary-nav__list>li>a,.rni-services-menu__toggle{display:inline-flex;align-items:center;min-height:44px;padding:8px 4px;font-weight:700;text-decoration:none}
.rni-services-menu{position:relative}
.rni-services-menu__toggle{border:0;background:transparent;cursor:pointer}
.rni-services-menu__panel{position:absolute;top:100%;right:0;z-index:1000;min-width:250px;margin:6px 0 0;padding:10px;list-style:none;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:10px;box-shadow:0 14px 30px rgba(0,0,0,.14)}
.rni-services-menu__panel a{display:block;padding:11px 12px;border-radius:7px;text-decoration:none;color:#222}
.rni-services-menu__panel a:hover,.rni-services-menu__panel a:focus-visible{background:#f0f2eb;outline:2px solid #435837;outline-offset:1px}
.rni-services-menu__toggle:focus-visible{outline:3px solid #fff;outline-offset:3px}
.rni-footer-policy-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}
.rni-footer-policy-links a{color:inherit}
@media(max-width:1100px){.rni-desktop-primary-nav{display:none}}

/* Existing desktop department menu: four firearm families, distinct from Shop All. */
.rni-firearm-department-menu{position:relative}
.rni-firearm-department-menu>.sub-menu{display:none;position:absolute;top:100%;left:0;z-index:1001;min-width:220px;list-style:none;margin:0;padding:10px;background:#fff;color:#222;border:1px solid rgba(0,0,0,.12);border-radius:10px;box-shadow:0 14px 30px rgba(0,0,0,.14)}
.rni-firearm-department-menu:hover>.sub-menu,.rni-firearm-department-menu:focus-within>.sub-menu{display:block}
.rni-firearm-department-menu>.sub-menu a{display:block;padding:10px 12px;color:#222;text-decoration:none;border-radius:6px}
.rni-firearm-department-menu>.sub-menu a:hover,.rni-firearm-department-menu>.sub-menu a:focus-visible{background:#f0f2eb;outline:2px solid #435837;outline-offset:1}
/* END ORIGINAL storefront-public-shell.css */
/* BEGIN ORIGINAL storefront-quality-beta16.css */

/* Recce NI Storefront 2.2.0-beta.16 — public quality/accessibility layer */
.rni-storefront-skip-link{
  position:fixed!important;left:12px!important;top:8px!important;z-index:100000!important;
  transform:translateY(-180%);padding:12px 16px;background:#fff;color:#202420;
  border:2px solid #435837;border-radius:6px;font-weight:800;text-decoration:none;
}
.rni-storefront-skip-link:focus{transform:none!important;outline:3px solid #000;outline-offset:3px}
.rni-hero-controls button:focus-visible,
.rni-department-card:focus-visible,
.rni-purpose-grid a:focus-visible,
.rni-home-guidance-card:focus-visible,
.rni-stock-filter-link:focus-visible{
  outline:3px solid #1f5f43!important;outline-offset:4px!important;
}
.rni-hero-controls button{min-width:44px;min-height:44px}
.rni-department-card,.rni-purpose-grid a,.rni-home-guidance-card{min-height:48px}
.rni-home-guidance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rni-home-guidance-card{display:flex;flex-direction:column;justify-content:flex-end;padding:26px;border:1px solid rgba(67,88,55,.22);border-radius:16px;background:#f7f7f3;color:#202420;text-decoration:none}
.rni-home-guidance-card h2{margin:.25rem 0 .5rem;font-size:clamp(1.5rem,2.4vw,2.2rem)}
.rni-home-guidance-card p{max-width:55ch}
.rni-home-guidance-card strong{margin-top:auto;padding-top:12px;color:#315326}
.rni-stock-filter-route{display:inline-flex;margin:0 12px 12px 0}
.rni-stock-filter-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid #435837;border-radius:999px;text-decoration:none;font-weight:800;color:#263022;background:#fff}
.rni-stock-filter-link.is-active{background:#435837;color:#fff}
#rni-main-content:focus{outline:none}
@media(max-width:768px){
  .rni-home-guidance-grid{grid-template-columns:1fr}
  .rni-home-guidance-card{padding:20px}
  .rni-storefront-main-inner{gap:10px}
  .rni-storefront-search{min-width:0}
  .rni-storefront-menu-toggle,.rni-storefront-cart-link,.rni-storefront-account-link{min-width:44px;min-height:44px}
}
@media(max-width:480px){
  .rni-brand-strip{display:none}
  .rni-home-v2-heading>div>p:not(.rni-eyebrow){display:none}
  .rni-trust-bar .rni-storefront-container>div:nth-child(n+4){display:none}
}
/* END ORIGINAL storefront-quality-beta16.css */
/* BEGIN ORIGINAL storefront-root-hardening.css */

/* Recce NI Storefront 2.2.0-beta.17 — root-site route/archive hardening */
.rni-managed-root-route__main{padding:32px 0 64px;background:#f6f7f4;min-height:55vh}
.rni-root-service-page{max-width:1240px;margin:0 auto}
.rni-root-service-hero{max-width:760px;margin:0 0 28px}
.rni-root-service-hero h1{margin:.25rem 0 .6rem;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}
.rni-second-hand-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0!important;padding:0!important;list-style:none!important}
.rni-second-hand-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dfe3de;border-radius:12px;overflow:hidden}
.rni-second-hand-card__image{display:grid;place-items:center;aspect-ratio:1/1;background:#fff;padding:14px}
.rni-second-hand-card__image img{width:100%;height:100%;object-fit:contain}
.rni-second-hand-card__body{display:flex;flex:1;flex-direction:column;padding:16px}
.rni-second-hand-card__body h2{margin:0 0 8px;font-size:1rem;line-height:1.3}
.rni-second-hand-card__body h2 a{color:inherit;text-decoration:none}
.rni-second-hand-card__body .price{margin:auto 0 8px;font-size:1.15rem;font-weight:900}
.rni-second-hand-card__body .stock{font-size:.8rem}
.rni-second-hand-card__body .button,.rni-second-hand-more .button{min-height:44px}
.rni-integration-fallback{padding:24px}
.rni-category-promo--neutral{background:#f3f5ef}
.rni-canonical-footer__hours{font-size:.85rem;opacity:.9}
@media(max-width:900px){.rni-second-hand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.rni-managed-root-route__main{padding:22px 0 44px}.rni-second-hand-grid{gap:10px}.rni-second-hand-card__body{padding:12px}}
/* END ORIGINAL storefront-root-hardening.css */
/* BEGIN ORIGINAL flagship-fixes.css */
/* Recce NI Storefront 0.7.5 — clean campaign artwork and deterministic grids. */
body .rni-storefront-homepage { overflow-x: clip; }

/* Hero: clean crop, no blur panels, no oversized controls. */
body .rni-storefront-homepage .rni-flagship-hero,
body .rni-storefront-homepage .rni-hero-track,
body .rni-storefront-homepage .rni-hero-slide { min-height: clamp(500px,42vw,680px) !important; }
body .rni-storefront-homepage .rni-hero-slide picture { position:absolute!important; inset:0!important; overflow:hidden!important; }
body .rni-storefront-homepage .rni-hero-slide picture img { width:100%!important; height:100%!important; max-width:none!important; object-fit:cover!important; object-position:center!important; filter:none!important; transform:none!important; }
body .rni-storefront-homepage .rni-hero-slide::before { content:""!important; position:absolute!important; inset:0!important; z-index:1!important; background:linear-gradient(90deg,rgba(6,14,9,.94) 0%,rgba(6,14,9,.78) 31%,rgba(6,14,9,.30) 58%,rgba(6,14,9,.04) 82%)!important; pointer-events:none!important; }
body .rni-storefront-homepage .rni-hero-overlay { display:none!important; }
body .rni-storefront-homepage .rni-hero-content { position:relative!important; z-index:2!important; width:min(100% - 48px,1440px)!important; min-height:inherit!important; padding:4.5rem 0 6rem!important; justify-content:center!important; }
body .rni-storefront-homepage .rni-hero-content h1 { max-width:11ch!important; }
body .rni-storefront-homepage .rni-hero-controls { z-index:5!important; left:50%!important; right:auto!important; bottom:20px!important; transform:translateX(-50%)!important; width:auto!important; display:flex!important; align-items:center!important; gap:12px!important; }
body .rni-storefront-homepage .rni-hero-controls>button { width:42px!important; height:42px!important; min-width:42px!important; padding:0!important; }
body .rni-storefront-homepage .rni-hero-dots { display:flex!important; gap:9px!important; }
body .rni-storefront-homepage .rni-hero-dots button { width:9px!important; height:9px!important; min-width:9px!important; padding:0!important; border-radius:50%!important; }

/* Departments: exact 5x2 desktop and 2x5 mobile for the ten-department set. */
body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr))!important; gap:18px!important; }
body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card { grid-column:auto!important; grid-row:auto!important; width:100%!important; min-width:0!important; min-height:0!important; aspect-ratio:16/10!important; }
body .rni-storefront-homepage .rni-department-card .rni-department-image { position:absolute!important; inset:0!important; width:100%!important; height:100%!important; max-width:none!important; object-fit:contain!important; object-position:center!important; background:#101813!important; transform:none!important; }
body .rni-storefront-homepage .rni-department-card:hover .rni-department-image { transform:none!important; }

@media (max-width:700px) {
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide { min-height:720px!important; height:720px!important; }
  body .rni-storefront-homepage .rni-hero-slide { background:#07120c!important; }
  body .rni-storefront-homepage .rni-hero-slide picture { top:0!important; bottom:auto!important; height:42%!important; }
  body .rni-storefront-homepage .rni-hero-slide picture img { object-position:center center!important; }
  body .rni-storefront-homepage .rni-hero-slide::before { background:linear-gradient(180deg,rgba(7,18,12,0) 0%,rgba(7,18,12,.25) 62%,#07120c 100%)!important; height:47%!important; bottom:auto!important; }
  body .rni-storefront-homepage .rni-hero-content { width:calc(100% - 36px)!important; min-height:720px!important; padding:20.5rem 0 6.5rem!important; justify-content:flex-start!important; }
  body .rni-storefront-homepage .rni-hero-content .rni-eyebrow { margin-bottom:1.25rem!important; }
  body .rni-storefront-homepage .rni-hero-content h1 { font-size:clamp(2.55rem,12vw,4rem)!important; line-height:.92!important; max-width:100%!important; margin-bottom:1.25rem!important; }
  body .rni-storefront-homepage .rni-hero-content>p:not(.rni-eyebrow) { font-size:1.05rem!important; line-height:1.55!important; margin-bottom:1.5rem!important; }
  body .rni-storefront-homepage .rni-home-actions { display:grid!important; grid-template-columns:1fr!important; gap:10px!important; width:100%!important; }
  body .rni-storefront-homepage .rni-home-actions .rni-button { width:100%!important; min-height:52px!important; justify-content:center!important; }
  body .rni-storefront-homepage .rni-hero-controls { bottom:18px!important; }
  body .rni-storefront-homepage .rni-hero-controls>button { display:none!important; }
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; }
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card,
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-8,
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-9 { grid-column:auto!important; aspect-ratio:16/11!important; }
}
/* END ORIGINAL flagship-fixes.css */
/* BEGIN ORIGINAL storefront-v1.css */
/* Recce NI Storefront 1.0 component foundation.
 * Loaded last by design: this file is the canonical homepage layout layer.
 */
:root {
  --rni-v1-ink: #0b1711;
  --rni-v1-forest: #10251a;
  --rni-v1-olive: #668544;
  --rni-v1-olive-light: #a9bd78;
  --rni-v1-paper: #f7f8f4;
  --rni-v1-line: rgba(15, 35, 25, .14);
  --rni-v1-radius: 4px;
  --rni-v1-shadow: 0 12px 30px rgba(8, 20, 13, .10);
}

body .rni-storefront-homepage {
  overflow-x: hidden;
  background: var(--rni-v1-paper);
  color: var(--rni-v1-ink);
}
body .rni-storefront-homepage .rni-storefront-container {
  width: min(calc(100% - 48px), 1440px) !important;
  margin-inline: auto !important;
}
body .rni-storefront-homepage .rni-home-section {
  padding-block: clamp(52px, 6vw, 92px) !important;
}

/* HERO COMPONENT ------------------------------------------------------- */
body .rni-storefront-homepage .rni-flagship-hero,
body .rni-storefront-homepage .rni-hero-track,
body .rni-storefront-homepage .rni-hero-slide {
  height: clamp(560px, 50vw, 760px) !important;
  min-height: 0 !important;
}
body .rni-storefront-homepage .rni-flagship-hero {
  position: relative !important;
  background: #07110c !important;
  overflow: hidden !important;
}
body .rni-storefront-homepage .rni-hero-slide picture {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
}
body .rni-storefront-homepage .rni-hero-slide picture img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: none !important;
  transform: none !important;
}
body .rni-storefront-homepage .rni-hero-slide::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(5,14,9,.72) 0%, rgba(5,14,9,.48) 28%, rgba(5,14,9,.13) 55%, rgba(5,14,9,0) 76%) !important;
  pointer-events: none !important;
}
body .rni-storefront-homepage .rni-hero-overlay { display: none !important; }
body .rni-storefront-homepage .rni-hero-content {
  position: relative !important;
  z-index: 2 !important;
  height: 100% !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding: 72px 0 90px !important;
}
body .rni-storefront-homepage .rni-hero-content .rni-eyebrow {
  color: var(--rni-v1-olive-light) !important;
  letter-spacing: .18em !important;
  margin: 0 0 22px !important;
}
body .rni-storefront-homepage .rni-hero-content h1 {
  color: #fff !important;
  font-size: clamp(3.25rem, 5.5vw, 6rem) !important;
  line-height: .88 !important;
  letter-spacing: -.055em !important;
  max-width: 9.5ch !important;
  margin: 0 0 26px !important;
  text-wrap: balance !important;
}
body .rni-storefront-homepage .rni-hero-content > p:not(.rni-eyebrow) {
  max-width: 590px !important;
  color: rgba(255,255,255,.90) !important;
  font-size: clamp(1rem, 1.25vw, 1.22rem) !important;
  line-height: 1.55 !important;
  margin: 0 0 30px !important;
}
body .rni-storefront-homepage .rni-home-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}
body .rni-storefront-homepage .rni-home-actions .rni-button {
  min-height: 50px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body .rni-storefront-homepage .rni-hero-controls {
  position: absolute !important;
  z-index: 4 !important;
  left: 50% !important;
  right: auto !important;
  bottom: 24px !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}
body .rni-storefront-homepage .rni-hero-controls > button {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.48) !important;
  background: rgba(4,12,8,.42) !important;
  color: #fff !important;
}
body .rni-storefront-homepage .rni-hero-dots {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
}
body .rni-storefront-homepage .rni-hero-dots button {
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  border: 0 !important;
  background: rgba(255,255,255,.45) !important;
}
body .rni-storefront-homepage .rni-hero-dots button.is-active {
  width: 26px !important;
  border-radius: 99px !important;
  background: #fff !important;
}

/* CATEGORY CARD COMPONENT --------------------------------------------- */
body .rni-storefront-homepage .rni-departments-section {
  background: #fff !important;
}
body .rni-storefront-homepage .rni-section-heading-rich {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 30px !important;
  margin-bottom: 28px !important;
}
body .rni-storefront-homepage .rni-section-heading-rich h2 {
  margin: 0 !important;
  font-size: clamp(2rem, 3vw, 3.3rem) !important;
  letter-spacing: -.045em !important;
}
body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--rni-v1-line) !important;
  border-radius: var(--rni-v1-radius) !important;
  background: #0d1711 !important;
  box-shadow: none !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-8 { grid-column: 2 !important; }
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-9 { grid-column: 3 !important; }
body .rni-storefront-homepage .rni-department-card .rni-department-image {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  aspect-ratio: 3 / 2 !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #0d1711 !important;
  transform: none !important;
}
body .rni-storefront-homepage .rni-department-card .rni-department-shade { display: none !important; }
body .rni-storefront-homepage .rni-department-card .rni-department-meta {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 62px !important;
  padding: 14px 16px !important;
  background: #0d1711 !important;
  color: #fff !important;
}
body .rni-storefront-homepage .rni-department-meta small,
body .rni-storefront-homepage .rni-department-meta b { display: none !important; }
body .rni-storefront-homepage .rni-department-meta strong {
  font-size: .96rem !important;
  letter-spacing: -.01em !important;
  line-height: 1.15 !important;
}
body .rni-storefront-homepage .rni-department-meta::after {
  content: "→";
  flex: 0 0 auto;
  color: var(--rni-v1-olive-light);
  font-size: 1.15rem;
}
body .rni-storefront-homepage .rni-department-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--rni-v1-shadow) !important;
  border-color: rgba(102,133,68,.55) !important;
}
body .rni-storefront-homepage .rni-department-card:hover .rni-department-image { transform: none !important; }

/* Reusable premium panels. */
body .rni-storefront-homepage .rni-brand-strip,
body .rni-storefront-homepage .rni-trust-bar { border-color: var(--rni-v1-line) !important; }
body .rni-storefront-homepage .rni-brand-strip > .rni-storefront-container > div {
  overflow-x: auto !important;
  scrollbar-width: thin;
}

@media (max-width: 900px) {
  body .rni-storefront-homepage .rni-storefront-container { width: min(calc(100% - 32px), 1440px) !important; }
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-8,
  body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-9 { grid-column: auto !important; }
}

@media (max-width: 700px) {
  body .rni-storefront-homepage .rni-storefront-container { width: calc(100% - 28px) !important; }
  body .rni-storefront-homepage .rni-home-section { padding-block: 48px !important; }
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: 760px !important;
    min-height: 0 !important;
  }
  body .rni-storefront-homepage .rni-hero-slide {
    background: #07110c !important;
  }
  body .rni-storefront-homepage .rni-hero-slide picture {
    inset: 0 0 auto 0 !important;
    height: 43% !important;
  }
  body .rni-storefront-homepage .rni-hero-slide picture img {
    object-position: center center !important;
  }
  body .rni-storefront-homepage .rni-hero-slide::before {
    inset: 0 0 auto 0 !important;
    height: 47% !important;
    background: linear-gradient(180deg, rgba(7,17,12,0) 55%, #07110c 100%) !important;
  }
  body .rni-storefront-homepage .rni-hero-content {
    height: 100% !important;
    padding: 350px 0 76px !important;
    justify-content: flex-start !important;
  }
  body .rni-storefront-homepage .rni-hero-content .rni-eyebrow {
    margin-bottom: 15px !important;
    font-size: .74rem !important;
  }
  body .rni-storefront-homepage .rni-hero-content h1 {
    max-width: 100% !important;
    font-size: clamp(2.65rem, 12.5vw, 4rem) !important;
    line-height: .92 !important;
    margin-bottom: 18px !important;
  }
  body .rni-storefront-homepage .rni-hero-content > p:not(.rni-eyebrow) {
    font-size: 1.03rem !important;
    line-height: 1.5 !important;
    margin-bottom: 20px !important;
  }
  body .rni-storefront-homepage .rni-home-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    gap: 10px !important;
  }
  body .rni-storefront-homepage .rni-home-actions .rni-button {
    width: 100% !important;
    min-height: 52px !important;
  }
  body .rni-storefront-homepage .rni-hero-controls { bottom: 22px !important; }
  body .rni-storefront-homepage .rni-hero-controls > button { display: none !important; }
  body .rni-storefront-homepage .rni-section-heading-rich {
    display: block !important;
    margin-bottom: 22px !important;
  }
  body .rni-storefront-homepage .rni-section-heading-rich > p {
    margin-top: 10px !important;
  }
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  body .rni-storefront-homepage .rni-department-card .rni-department-image {
    aspect-ratio: 3 / 2 !important;
  }
  body .rni-storefront-homepage .rni-department-card .rni-department-meta {
    min-height: 52px !important;
    padding: 10px 11px !important;
  }
  body .rni-storefront-homepage .rni-department-meta strong {
    font-size: clamp(.72rem, 3.2vw, .88rem) !important;
  }
}

@media (max-width: 390px) {
  body .rni-storefront-homepage .rni-hero-content { padding-top: 338px !important; }
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship { gap: 8px !important; }
  body .rni-storefront-homepage .rni-department-card .rni-department-meta { padding-inline: 9px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body .rni-storefront-homepage * { scroll-behavior: auto !important; }
  body .rni-storefront-homepage .rni-department-card { transition: none !important; }
}

/* 1.0.0-beta.2 — approved nine-image department gallery ---------------- */
body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
}
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card,
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-8,
body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-9 {
  grid-column: auto !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 3 / 2 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(14, 32, 23, .14) !important;
  border-radius: 8px !important;
  background: #0a120d !important;
  box-shadow: 0 12px 30px rgba(7, 17, 12, .10) !important;
  line-height: 0 !important;
  text-decoration: none !important;
}
body .rni-storefront-homepage .rni-department-card .rni-department-image {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  aspect-ratio: 3 / 2 !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #0a120d !important;
  transform: none !important;
  transition: transform .28s ease, filter .28s ease !important;
}
body .rni-storefront-homepage .rni-department-card .rni-department-shade,
body .rni-storefront-homepage .rni-department-card .rni-department-meta {
  display: none !important;
}
body .rni-storefront-homepage .rni-department-card:hover,
body .rni-storefront-homepage .rni-department-card:focus-visible {
  transform: translateY(-4px) !important;
  border-color: rgba(104, 132, 69, .7) !important;
  box-shadow: 0 18px 40px rgba(7, 17, 12, .18) !important;
  outline: none !important;
}
body .rni-storefront-homepage .rni-department-card:hover .rni-department-image,
body .rni-storefront-homepage .rni-department-card:focus-visible .rni-department-image {
  transform: scale(1.012) !important;
  filter: brightness(1.035) !important;
}
@media (max-width: 900px) {
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-8 {
    grid-column: 1 / -1 !important;
    width: calc(50% - 6px) !important;
    justify-self: center !important;
  }
}
@media (max-width: 560px) {
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship {
    gap: 8px !important;
  }
  body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card {
    border-radius: 5px !important;
  }
  body .rni-storefront-homepage .rni-department-grid-flagship > .rni-department-card-8 {
    width: calc(50% - 4px) !important;
  }
}

/* beta.24: ten departments are an even set; no ninth-card centering. */
@media (min-width:701px){body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship{grid-template-columns:repeat(5,minmax(0,1fr))!important}body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-8,body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-9{grid-column:auto!important;grid-row:auto!important}}
@media (max-width:700px){body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship{grid-template-columns:repeat(2,minmax(0,1fr))!important}body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card{grid-column:auto!important;grid-row:auto!important}}


/* beta.26 — ten-department mobile parity.
   The former nine-tile layout centred card 8 at 50% width. Card 8 is now
   Second-Hand, so every one of the ten cards must use the full grid track. */
@media (max-width:900px){
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card,
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-8,
  body .rni-storefront-homepage .rni-department-grid-flagship>.rni-department-card-9{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
    aspect-ratio:3/2!important;
  }
  body .rni-storefront-homepage .rni-department-card .rni-department-image{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center!important;
  }
}
@media (max-width:380px){
  body .rni-storefront-homepage .rni-department-grid.rni-department-grid-flagship{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
/* END ORIGINAL storefront-v1.css */
/* BEGIN ORIGINAL storefront-beta3.css */
/* Recce NI Storefront 1.0.0-beta.3 — full-width campaigns.
 * Loaded after every legacy stylesheet so split-panel rules cannot return.
 */

/* HERO: one full-bleed image, no empty right-hand panel. */
body .rni-storefront-homepage .rni-flagship-hero,
body .rni-storefront-homepage .rni-hero-track,
body .rni-storefront-homepage .rni-hero-slide {
  width: 100% !important;
  height: clamp(500px, 48vw, 720px) !important;
  min-height: 500px !important;
}
body .rni-storefront-homepage .rni-hero-slide {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  background: #07110c !important;
}
body .rni-storefront-homepage .rni-hero-slide picture {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
body .rni-storefront-homepage .rni-hero-slide picture img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}
body .rni-storefront-homepage .rni-hero-slide::before {
  background: linear-gradient(90deg, rgba(4,12,8,.82) 0%, rgba(4,12,8,.60) 25%, rgba(4,12,8,.20) 52%, rgba(4,12,8,0) 78%) !important;
}
body .rni-storefront-homepage .rni-hero-content {
  width: min(calc(100% - 64px), 1440px) !important;
  padding: 64px 0 86px !important;
}
body .rni-storefront-homepage .rni-hero-content h1 { max-width: 10ch !important; }

/* UNIFIED PROMOTIONAL CAMPAIGNS: image + light HTML overlay, never split blocks. */
body .rni-storefront-homepage .rni-campaign-section {
  padding-block: clamp(42px, 5vw, 76px) !important;
}
body .rni-storefront-homepage .rni-unified-campaign {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-height: clamp(360px, 39vw, 560px) !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  background: #0b1711 !important;
  box-shadow: 0 18px 48px rgba(8,20,13,.14) !important;
  text-decoration: none !important;
}
body .rni-storefront-homepage .rni-unified-campaign > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .45s ease !important;
}
body .rni-storefront-homepage .rni-unified-campaign-shade {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(5,15,9,.84) 0%, rgba(5,15,9,.62) 31%, rgba(5,15,9,.20) 58%, rgba(5,15,9,0) 82%) !important;
  pointer-events: none !important;
}
body .rni-storefront-homepage .rni-trade-campaign .rni-unified-campaign-shade {
  background: linear-gradient(270deg, rgba(5,15,9,.84) 0%, rgba(5,15,9,.62) 31%, rgba(5,15,9,.20) 58%, rgba(5,15,9,0) 82%) !important;
}
body .rni-storefront-homepage .rni-unified-campaign-copy {
  position: absolute !important;
  z-index: 2 !important;
  left: clamp(28px, 5vw, 76px) !important;
  top: 50% !important;
  width: min(470px, 42%) !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  color: #fff !important;
}
body .rni-storefront-homepage .rni-trade-campaign .rni-unified-campaign-copy {
  left: auto !important;
  right: clamp(28px, 5vw, 76px) !important;
}
body .rni-storefront-homepage .rni-unified-campaign-copy small {
  margin-bottom: 14px !important;
  color: #b5ca7f !important;
  font-size: .72rem !important;
  font-style: normal !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
body .rni-storefront-homepage .rni-unified-campaign-copy strong {
  color: #fff !important;
  font-size: clamp(2.2rem, 4.5vw, 5.2rem) !important;
  line-height: .9 !important;
  letter-spacing: -.055em !important;
  text-transform: uppercase !important;
}
body .rni-storefront-homepage .rni-unified-campaign-copy em {
  margin-top: 20px !important;
  color: rgba(255,255,255,.90) !important;
  font-size: clamp(.95rem, 1.2vw, 1.15rem) !important;
  line-height: 1.55 !important;
  font-style: normal !important;
}
body .rni-storefront-homepage .rni-unified-campaign-copy b {
  margin-top: 24px !important;
  padding: 14px 20px !important;
  border-radius: 3px !important;
  background: #6d8d48 !important;
  color: #fff !important;
  font-size: .82rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body .rni-storefront-homepage .rni-unified-campaign:hover > img { transform: scale(1.025) !important; }
body .rni-storefront-homepage .rni-unified-campaign:focus-visible { outline: 3px solid #a9bd78 !important; outline-offset: 4px !important; }

@media (max-width: 760px) {
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: 700px !important;
    min-height: 700px !important;
  }
  body .rni-storefront-homepage .rni-hero-slide picture {
    inset: 0 !important;
    height: 100% !important;
  }
  body .rni-storefront-homepage .rni-hero-slide picture img {
    object-position: 68% center !important;
  }
  body .rni-storefront-homepage .rni-hero-slide::before {
    inset: 0 !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(5,14,9,.08) 0%, rgba(5,14,9,.18) 25%, rgba(5,14,9,.86) 63%, #07110c 100%) !important;
  }
  body .rni-storefront-homepage .rni-hero-content {
    width: calc(100% - 36px) !important;
    padding: 300px 0 74px !important;
    justify-content: flex-end !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign {
    min-height: 500px !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign > img {
    object-position: center !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign-shade,
  body .rni-storefront-homepage .rni-trade-campaign .rni-unified-campaign-shade {
    background: linear-gradient(180deg, rgba(5,15,9,.05) 0%, rgba(5,15,9,.18) 38%, rgba(5,15,9,.94) 76%, rgba(5,15,9,.98) 100%) !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign-copy,
  body .rni-storefront-homepage .rni-trade-campaign .rni-unified-campaign-copy {
    left: 22px !important;
    right: 22px !important;
    top: auto !important;
    bottom: 24px !important;
    width: auto !important;
    transform: none !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign-copy strong {
    font-size: clamp(2rem, 11vw, 3.4rem) !important;
  }
  body .rni-storefront-homepage .rni-unified-campaign-copy em { margin-top: 14px !important; }
  body .rni-storefront-homepage .rni-unified-campaign-copy b { margin-top: 16px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body .rni-storefront-homepage .rni-unified-campaign > img { transition: none !important; }
}
/* END ORIGINAL storefront-beta3.css */
/* BEGIN ORIGINAL storefront-beta4.css */
/* Recce NI Storefront 1.0.0-beta.4 — mobile image integrity.
 * Mobile layouts show the complete supplied artwork instead of cropping it.
 */

@media (max-width: 760px) {
  /* HERO: full campaign image first, content beneath. No cover crop. */
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: calc(66.666vw + 410px) !important;
    min-height: 640px !important;
    max-height: 760px !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-hero-slide picture {
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    overflow: hidden !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-hero-slide picture img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    aspect-ratio: 3 / 2 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-hero-slide::before {
    inset: 0 !important;
    background: linear-gradient(
      180deg,
      rgba(7,17,12,0) 0,
      rgba(7,17,12,0) calc(66.666vw - 50px),
      rgba(7,17,12,.72) calc(66.666vw - 12px),
      #07110c calc(66.666vw + 28px),
      #07110c 100%
    ) !important;
  }

  body .rni-storefront-homepage .rni-hero-content {
    position: relative !important;
    width: calc(100% - 36px) !important;
    min-height: 100% !important;
    margin-inline: auto !important;
    padding: calc(66.666vw + 34px) 0 68px !important;
    justify-content: flex-start !important;
  }

  body .rni-storefront-homepage .rni-hero-content h1 {
    max-width: 12ch !important;
  }

  /* Keep carousel controls inside the content zone. */
  body .rni-storefront-homepage .rni-hero-dots {
    bottom: 20px !important;
  }

  /* PROMOTIONAL BANNERS: complete artwork, then copy. */
  body .rni-storefront-homepage .rni-unified-campaign {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-unified-campaign > img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-unified-campaign-shade {
    display: none !important;
  }

  body .rni-storefront-homepage .rni-unified-campaign-copy,
  body .rni-storefront-homepage .rni-trade-campaign .rni-unified-campaign-copy {
    position: static !important;
    width: 100% !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    padding: 24px 22px 26px !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-unified-campaign-copy strong {
    font-size: clamp(2rem, 10vw, 3rem) !important;
  }

  body .rni-storefront-homepage .rni-unified-campaign:hover > img,
  body .rni-storefront-homepage .rni-unified-campaign:focus-visible > img {
    transform: none !important;
  }

  /* Department artwork must also remain fully visible. */
  body .rni-storefront-homepage .rni-department-card,
  body .rni-storefront-homepage .rni-department-card .rni-department-image {
    aspect-ratio: 3 / 2 !important;
  }

  body .rni-storefront-homepage .rni-department-card .rni-department-image {
    object-fit: contain !important;
    object-position: center center !important;
    background: #07110c !important;
  }
}

@media (max-width: 390px) {
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: calc(66.666vw + 440px) !important;
  }
}
/* END ORIGINAL storefront-beta4.css */
/* BEGIN ORIGINAL storefront-beta5.css */
/* Recce NI Storefront 1.0.0-beta.5
 * Definitive mobile hero geometry.
 * The mobile hero is split into a photographic stage and a content stage.
 * Only the unused dark side of the desktop-composed artwork is cropped;
 * the firearm/product subject remains fully visible.
 */

@media (max-width: 760px) {
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: 720px !important;
    min-height: 720px !important;
    max-height: 720px !important;
    overflow: hidden !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-hero-slide {
    display: block !important;
  }

  /* Dedicated image stage: no giant blank region and no image/text collision. */
  body .rni-storefront-homepage .rni-hero-slide picture {
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    display: block !important;
    width: 100% !important;
    height: 290px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #07110c !important;
  }

  body .rni-storefront-homepage .rni-hero-slide picture img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: 72% 50% !important;
    transform: none !important;
    background: #07110c !important;
  }

  /* A short transition only; never a full-height masking panel. */
  body .rni-storefront-homepage .rni-hero-slide::before {
    content: "" !important;
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: linear-gradient(
      180deg,
      rgba(7,17,12,0) 0,
      rgba(7,17,12,0) 220px,
      rgba(7,17,12,.76) 270px,
      #07110c 315px,
      #07110c 100%
    ) !important;
  }

  body .rni-storefront-homepage .rni-hero-overlay {
    display: none !important;
  }

  /* Content begins directly below the image stage. */
  body .rni-storefront-homepage .rni-hero-content {
    position: absolute !important;
    z-index: 3 !important;
    inset: 290px 0 0 0 !important;
    width: calc(100% - 36px) !important;
    height: 430px !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 36px 0 74px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    overflow: visible !important;
  }

  body .rni-storefront-homepage .rni-hero-content .rni-eyebrow {
    margin: 0 0 18px !important;
    font-size: .72rem !important;
    line-height: 1.25 !important;
    letter-spacing: .18em !important;
  }

  body .rni-storefront-homepage .rni-hero-content h1 {
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(2.45rem, 11.5vw, 3.7rem) !important;
    line-height: .91 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body .rni-storefront-homepage .rni-hero-content > p:not(.rni-eyebrow) {
    max-width: 38ch !important;
    margin: 22px 0 0 !important;
    font-size: .98rem !important;
    line-height: 1.55 !important;
  }

  body .rni-storefront-homepage .rni-home-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: auto !important;
  }

  body .rni-storefront-homepage .rni-home-actions .rni-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 50px !important;
    padding: 12px 10px !important;
    white-space: normal !important;
    text-align: center !important;
    font-size: .72rem !important;
    line-height: 1.2 !important;
  }

  body .rni-storefront-homepage .rni-hero-controls {
    position: absolute !important;
    z-index: 8 !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 20px !important;
    width: auto !important;
    display: flex !important;
    justify-content: center !important;
    pointer-events: none !important;
  }

  body .rni-storefront-homepage .rni-hero-controls > button {
    display: none !important;
  }

  body .rni-storefront-homepage .rni-hero-dots {
    display: flex !important;
    gap: 7px !important;
    pointer-events: auto !important;
  }

  body .rni-storefront-homepage .rni-hero-dots button {
    width: 28px !important;
    height: 3px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 390px) {
  body .rni-storefront-homepage .rni-flagship-hero,
  body .rni-storefront-homepage .rni-hero-track,
  body .rni-storefront-homepage .rni-hero-slide {
    height: 700px !important;
    min-height: 700px !important;
    max-height: 700px !important;
  }

  body .rni-storefront-homepage .rni-hero-slide picture {
    height: 260px !important;
  }

  body .rni-storefront-homepage .rni-hero-slide::before {
    background: linear-gradient(180deg,rgba(7,17,12,0) 0,rgba(7,17,12,0) 190px,rgba(7,17,12,.78) 238px,#07110c 282px,#07110c 100%) !important;
  }

  body .rni-storefront-homepage .rni-hero-content {
    inset: 260px 0 0 0 !important;
    height: 440px !important;
    padding-top: 30px !important;
  }

  body .rni-storefront-homepage .rni-hero-content h1 {
    font-size: clamp(2.25rem, 11.8vw, 3rem) !important;
  }
}
/* END ORIGINAL storefront-beta5.css */
/* BEGIN ORIGINAL storefront-beta6.css */
/**
 * Recce NI Storefront 1.0.0-beta.6
 * Canonical mobile header and navigation drawer.
 */

@media (max-width: 1180px) {
  /* Keep the custom header predictable regardless of theme button styles. */
  .rni-storefront-header {
    position: relative !important;
    top: auto !important;
    z-index: 1000 !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .rni-storefront-main,
  .rni-storefront-main-inner {
    width: 100% !important;
  }

  .rni-storefront-main-inner {
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) minmax(92px, auto) !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 76px !important;
    padding: 8px 14px !important;
    box-sizing: border-box !important;
  }

  .rni-storefront-menu-toggle {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-grid !important;
    place-items: center !important;
    justify-self: start !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d8ddd8 !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: #182219 !important;
    box-shadow: none !important;
    font: inherit !important;
    line-height: 1 !important;
    text-indent: 0 !important;
    cursor: pointer !important;
  }

  .rni-storefront-menu-toggle:hover,
  .rni-storefront-menu-toggle:focus,
  .rni-storefront-menu-toggle:active {
    background: #f4f6f2 !important;
    color: #182219 !important;
    border-color: #526748 !important;
    transform: none !important;
  }

  .rni-storefront-menu-toggle > span[aria-hidden="true"] {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    color: inherit !important;
    font-size: 26px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  .rni-storefront-logo {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  .rni-storefront-logo img {
    display: block !important;
    width: auto !important;
    max-width: 126px !important;
    height: auto !important;
    max-height: 48px !important;
    margin: 0 auto !important;
  }

  .rni-storefront-actions {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    min-width: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    white-space: nowrap !important;
  }

  .rni-storefront-actions a:first-child {
    display: none !important;
  }

  .rni-storefront-actions a:last-child {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #171d18 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
  }

  .rni-storefront-cart-count {
    flex: 0 0 auto !important;
    margin-left: 6px !important;
  }

  .rni-storefront-mobile-search {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: 100% !important;
    padding: 10px 14px 14px !important;
    border-top: 1px solid #e1e5df !important;
    background: #fff !important;
    box-sizing: border-box !important;
  }

  /* Drawer backdrop must never occupy layout space. */
  .rni-storefront-drawer-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1998 !important;
    width: 100vw !important;
    height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(5, 10, 7, .68) !important;
  }

  .rni-storefront-drawer-backdrop[hidden] {
    display: none !important;
  }

  /* A true off-canvas menu, independent of the page/header geometry. */
  #rni-storefront-mobile-drawer.rni-storefront-mobile-drawer {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 1999 !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(88vw, 360px) !important;
    max-width: calc(100vw - 44px) !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    background: #fff !important;
    color: #172019 !important;
    box-shadow: 12px 0 36px rgba(0, 0, 0, .28) !important;
    transform: translate3d(-105%, 0, 0) !important;
    transition: transform .22s ease !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  #rni-storefront-mobile-drawer.rni-storefront-mobile-drawer.is-open {
    transform: translate3d(0, 0, 0) !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .rni-storefront-drawer-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex: 0 0 auto !important;
    min-height: 68px !important;
    padding: 10px 12px 10px 18px !important;
    border-bottom: 1px solid #dfe4dd !important;
    background: #132018 !important;
    color: #fff !important;
  }

  .rni-storefront-drawer-head strong {
    margin: 0 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }

  .rni-storefront-menu-close {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 34px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    cursor: pointer !important;
  }

  .rni-storefront-mobile-menu,
  .rni-storefront-mobile-menu ul,
  .rni-storefront-mobile-menu li {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    float: none !important;
    position: static !important;
  }

  .rni-storefront-mobile-menu {
    flex: 0 0 auto !important;
    background: #fff !important;
  }

  .rni-storefront-mobile-menu a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 13px 18px !important;
    border: 0 !important;
    border-bottom: 1px solid #e4e8e2 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #172019 !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }

  .rni-storefront-mobile-menu a:hover,
  .rni-storefront-mobile-menu a:focus {
    background: #f2f5ef !important;
    color: #354a2f !important;
  }

  .rni-storefront-mobile-menu .sub-menu {
    display: block !important;
    position: static !important;
    inset: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    background: #f5f7f3 !important;
    box-shadow: none !important;
  }

  .rni-storefront-mobile-menu .sub-menu a {
    min-height: 48px !important;
    padding-left: 34px !important;
    background: #f5f7f3 !important;
    font-size: 14px !important;
    font-weight: 650 !important;
  }

  .rni-storefront-drawer-footer {
    display: grid !important;
    gap: 0 !important;
    flex: 0 0 auto !important;
    margin-top: auto !important;
    padding: 12px !important;
    border-top: 1px solid #dfe4dd !important;
    background: #f5f7f3 !important;
  }

  .rni-storefront-drawer-footer a {
    display: flex !important;
    align-items: center !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 10px 8px !important;
    border: 0 !important;
    background: transparent !important;
    color: #172019 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }

  body.rni-storefront-no-scroll {
    overflow: hidden !important;
    touch-action: none !important;
  }
}

@media (max-width: 420px) {
  .rni-storefront-main-inner {
    grid-template-columns: 50px minmax(0, 1fr) minmax(82px, auto) !important;
    padding-inline: 10px !important;
  }

  .rni-storefront-menu-toggle {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  .rni-storefront-logo img {
    max-width: 108px !important;
    max-height: 42px !important;
  }

  .rni-storefront-actions a:last-child {
    font-size: 14px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #rni-storefront-mobile-drawer.rni-storefront-mobile-drawer {
    transition: none !important;
  }
}
/* END ORIGINAL storefront-beta6.css */
/* BEGIN ORIGINAL storefront-beta7.css */
/**
 * Recce NI Storefront 1.0.0-beta.7
 * Complete, vertically structured mobile navigation.
 */
@media (max-width: 1180px) {
  #rni-storefront-mobile-drawer.rni-storefront-mobile-drawer {
    width: min(92vw, 420px) !important;
    max-width: calc(100vw - 28px) !important;
  }

  .rni-mobile-nav {
    display: block !important;
    flex: 1 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 14px !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .rni-mobile-nav a,
  .rni-mobile-nav summary {
    box-sizing: border-box !important;
    font-family: inherit !important;
  }

  .rni-mobile-nav-home,
  .rni-mobile-nav-list > a,
  .rni-mobile-category > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 13px 18px !important;
    border: 0 !important;
    border-bottom: 1px solid #e1e6df !important;
    background: #fff !important;
    color: #172019 !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .rni-mobile-nav-home {
    background: #f7f9f5 !important;
  }

  .rni-mobile-nav a > span[aria-hidden="true"] {
    flex: 0 0 auto !important;
    margin-left: 14px !important;
    color: #72806c !important;
    font-size: 24px !important;
    line-height: 1 !important;
  }

  .rni-mobile-nav-group {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: #fff !important;
  }

  .rni-mobile-nav-group > summary {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 15px 50px 15px 18px !important;
    border-bottom: 1px solid #d9dfd6 !important;
    background: #17261d !important;
    color: #fff !important;
    cursor: pointer !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    letter-spacing: .055em !important;
    line-height: 1.2 !important;
    list-style: none !important;
    text-transform: uppercase !important;
  }

  .rni-mobile-nav-group > summary::-webkit-details-marker { display: none !important; }
  .rni-mobile-nav-group > summary::after {
    content: '+' !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }
  .rni-mobile-nav-group[open] > summary::after { content: '−' !important; }

  .rni-mobile-nav-list,
  .rni-mobile-category,
  .rni-mobile-category-children {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .rni-mobile-category-parent {
    font-size: 16px !important;
    font-weight: 800 !important;
  }

  .rni-mobile-category-children a.rni-mobile-category-child {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 11px 18px 11px 34px !important;
    border: 0 !important;
    border-bottom: 1px solid #e4e8e2 !important;
    background: #f4f7f2 !important;
    color: #30402f !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .rni-mobile-nav a:hover,
  .rni-mobile-nav a:focus {
    background: #edf2e9 !important;
    color: #2f492b !important;
  }

  .rni-storefront-drawer-footer {
    margin-top: 0 !important;
  }
}
/* END ORIGINAL storefront-beta7.css */
/* BEGIN ORIGINAL storefront-beta8.css */
/**
 * Recce NI Storefront 1.0.0-beta.9
 * Curated, nested mobile category navigation.
 */
@media (max-width: 1180px) {
  .rni-mobile-category-accordion {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.13) !important;
    background: #172019 !important;
  }
  .rni-mobile-category-accordion > summary {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    min-height: 58px !important;
    padding: 12px 50px 12px 18px !important;
    list-style: none !important;
    cursor: pointer !important;
    color: #fff !important;
    background: #172019 !important;
  }
  .rni-mobile-category-accordion > summary::-webkit-details-marker { display: none !important; }
  .rni-mobile-category-accordion > summary::after {
    content: '+' !important;
    position: absolute !important;
    top: 50% !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    color: #c7d89f !important;
    font-size: 24px !important;
    line-height: 1 !important;
  }
  .rni-mobile-category-accordion[open] > summary::after { content: '−' !important; }
  .rni-mobile-category-accordion > summary span {
    display: block !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    letter-spacing: .035em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
  }
  .rni-mobile-category-accordion > summary small {
    display: block !important;
    margin-top: 3px !important;
    color: #aeb9ad !important;
    font-size: 11px !important;
    font-weight: 550 !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
  }
  .rni-mobile-category-accordion .rni-mobile-category-children {
    display: block !important;
    background: #f4f7f2 !important;
  }
  .rni-mobile-category-accordion a.rni-mobile-category-all,
  .rni-mobile-category-accordion a.rni-mobile-category-child {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 11px 18px 11px 30px !important;
    border-bottom: 1px solid #dfe5dc !important;
    background: #f4f7f2 !important;
    color: #273428 !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    text-decoration: none !important;
  }
  .rni-mobile-category-accordion a.rni-mobile-category-all {
    padding-left: 18px !important;
    background: #e8eee4 !important;
    color: #2f4a2c !important;
    font-weight: 800 !important;
  }
  .rni-mobile-category-accordion.rni-mobile-category-used > summary {
    background: #253b2b !important;
  }
  .rni-mobile-category-more > summary {
    background: #202820 !important;
  }
  .rni-mobile-nav-group[open] > .rni-mobile-nav-list {
    display: block !important;
  }
}
/* END ORIGINAL storefront-beta8.css */
/* BEGIN ORIGINAL storefront-premium.css */
/* Recce NI Storefront 1.1 premium experience foundation */

/* Desktop mega navigation */
@media (min-width: 1025px) {
  .rni-storefront-primary-nav .rni-storefront-container { position: relative; }
  .rni-storefront-mega-panel {
    position: absolute;
    z-index: 1000;
    top: 100%;
    left: 0;
    right: 0;
    padding: 0;
    background: #fff;
    border: 1px solid #d9ded7;
    border-top: 0;
    box-shadow: 0 22px 52px rgba(12, 22, 15, .22);
  }
  .rni-storefront-mega-panel[hidden] { display: none !important; }
  .rni-mega-premium {
    display: grid;
    grid-template-columns: minmax(235px, .8fr) minmax(0, 2.2fr);
    min-height: 310px;
  }
  .rni-mega-premium-intro {
    padding: 34px;
    background: linear-gradient(145deg, #0c1710, #1c3021);
    color: #fff;
  }
  .rni-mega-premium-icon {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    margin-bottom: 24px;
    border: 1px solid rgba(187, 199, 96, .55);
    color: #becb71;
    font-size: 1.8rem;
  }
  .rni-mega-kicker {
    margin: 0 0 6px;
    color: #b9c76c;
    font-size: .69rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
  }
  .rni-mega-premium-intro h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 2rem;
    line-height: 1.05;
  }
  .rni-mega-premium-intro > p:not(.rni-mega-kicker) {
    margin: 0 0 26px;
    color: rgba(255,255,255,.72);
  }
  .rni-mega-shop-all {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
  }
  .rni-mega-shop-all:hover { color: #c9d77a; }
  .rni-storefront-mega-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-content: start;
    gap: 0;
    padding: 24px;
    background: #fff;
  }
  .rni-storefront-mega-link {
    position: relative;
    display: flex;
    min-height: 76px;
    flex-direction: column;
    justify-content: center;
    padding: 14px 44px 14px 16px;
    border-bottom: 1px solid #e7ebe5;
    color: #172019;
    text-decoration: none;
    transition: background .18s ease, color .18s ease, padding-left .18s ease;
  }
  .rni-storefront-mega-link:nth-last-child(-n+3) { border-bottom: 0; }
  .rni-storefront-mega-link:hover,
  .rni-storefront-mega-link:focus-visible {
    padding-left: 21px;
    background: #f1f4ed;
    color: #354c2f;
  }
  .rni-storefront-mega-link span { font-weight: 850; }
  .rni-storefront-mega-link small { margin-top: 4px; color: #747d74; }
  .rni-storefront-mega-link b {
    position: absolute;
    top: 50%;
    right: 16px;
    translate: 0 -50%;
    color: #7e8c54;
    font-size: 1.1rem;
  }
}

/* Premium mobile navigation */
.rni-mobile-category-accordion > summary {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 12px;
}
.rni-mobile-category-accordion > summary::after {
  content: "+";
  grid-column: 3;
  grid-row: 1;
  color: #c0ce75;
  font-size: 1.45rem;
  font-weight: 500;
  text-align: center;
}
.rni-mobile-category-accordion[open] > summary::after { content: "−"; }
.rni-mobile-category-accordion > summary i {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(190, 205, 113, .45);
  color: #c2cf79;
  font-style: normal;
  font-size: 1.05rem;
}
.rni-mobile-category-accordion > summary > span {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}
.rni-mobile-category-accordion > summary b {
  color: #fff;
  font-size: .9rem;
  letter-spacing: .02em;
}
.rni-mobile-category-accordion > summary small {
  color: #9fa99f;
  font-size: .68rem;
  font-weight: 600;
  line-height: 1.25;
}
.rni-mobile-category-children {
  animation: rni-nav-reveal .2s ease both;
}
@keyframes rni-nav-reveal {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .rni-mobile-category-children { animation: none; }
}

/* Rich live search */
.rni-storefront-search-results {
  max-height: min(70vh, 590px);
  overflow-y: auto;
  border: 1px solid #d7ddd4;
  box-shadow: 0 16px 36px rgba(15, 25, 17, .2);
}
.rni-storefront-search-result {
  grid-template-columns: 64px minmax(0, 1fr) !important;
  min-height: 84px;
  padding: 10px 12px !important;
}
.rni-storefront-search-result img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain;
  background: #fff;
}
.rni-storefront-search-result span { min-width: 0; }
.rni-storefront-search-result strong {
  display: block;
  overflow: hidden;
  color: #182119;
  font-size: .92rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rni-storefront-search-result small { display: block; }
.rni-search-meta {
  margin-top: 3px;
  overflow: hidden;
  color: #707a70;
  font-size: .7rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rni-search-price {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 6px;
  color: #253a29;
  font-size: .82rem;
  font-weight: 850;
}
.rni-search-price em {
  color: #317343;
  font-size: .68rem;
  font-style: normal;
  font-weight: 800;
  text-transform: uppercase;
}

/* Product-card premium status system */
.rni-card-badges {
  max-width: calc(100% - 1.3rem);
  flex-wrap: wrap;
}
.rni-card-badge { box-shadow: 0 2px 7px rgba(0,0,0,.15); }
.rni-badge-new { background: #315f3c; }
.rni-badge-limited { background: #b15a18; }
.rni-badge-deposit { background: #53642d; }
.rni-home-product-card {
  isolation: isolate;
  overflow: hidden;
}
.rni-home-product-image {
  position: relative;
  transition: background .2s ease;
}
.rni-home-product-image img {
  transition: transform .28s ease;
}
.rni-home-product-card:hover .rni-home-product-image { background: #f7f8f5; }
.rni-home-product-card:hover .rni-home-product-image img { transform: scale(1.035); }
.rni-home-product-body .rni-button {
  transition: background .18s ease, transform .18s ease;
}
.rni-home-product-card:hover .rni-home-product-body .rni-button { transform: translateY(-1px); }

@media (max-width: 1024px) {
  .rni-storefront-mega-panel { display: none !important; }
}


/* Live search polish — beta.2.2 */
.rni-search-results-head {
  padding: 10px 12px;
  border-bottom: 1px solid #d7ddd4;
  background: #f4f6f2;
  color: #344338;
  font-size: .74rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.rni-storefront-search-empty {
  padding: 18px 14px;
  color: #677068;
  text-align: center;
}
.rni-search-condition {
  display: inline-block;
  margin-right: 7px;
  padding: 2px 6px;
  border-radius: 999px;
  background: #6a3f27;
  color: #fff;
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.rni-search-price > span {
  color: #53642d;
  font-size: .9rem;
  font-weight: 900;
}
.rni-search-results-footer {
  display: block;
  padding: 12px 14px;
  background: #1f321f;
  color: #fff !important;
  font-size: .78rem;
  font-weight: 850;
  text-align: center;
  text-decoration: none !important;
}
.rni-search-results-footer:hover,
.rni-search-results-footer:focus-visible { background: #304b31; }
@media (max-width: 600px) {
  .rni-storefront-search-results { max-height: min(62vh, 540px); overflow-y: auto; }
  .rni-storefront-search-result { grid-template-columns: 68px minmax(0, 1fr) !important; }
  .rni-storefront-search-result img { width: 68px !important; height: 68px !important; }
  .rni-storefront-search-result strong { white-space: normal; line-height: 1.2; }
}

/* Stage 3 variable-product discovery shared by homepage and search */
.rni-home-product-card .rni-variable-insight,
.rni-storefront-search-result .rni-search-options {
    color: var(--rni-colour-olive-700, #556b2f);
    font-weight: 750;
}
.rni-home-product-card .rni-variable-insight {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin: .35rem 0 .55rem;
    font-size: .8rem;
    line-height: 1.35;
}
.rni-home-product-card .rni-variable-insight span { font-size: .55rem; }
.rni-search-options { display:block; margin-top:.18rem; font-size:.74rem; line-height:1.3; }
@media (max-width:720px) {
    .rni-home-product-card .rni-variable-insight { font-size:.7rem; }
}
/* END ORIGINAL storefront-premium.css */
/* BEGIN ORIGINAL storefront-product-images.css */
/* Recce NI product image presentation */
.rni-home-product-image,
.rni-product-mini-card__image,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images .flex-control-thumbs li,
.rni-search-result__image,
.rni-live-search__image {
    background: #fff !important;
}

.rni-home-product-image,
.rni-product-mini-card__image,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce div.product div.images .woocommerce-product-gallery__image {
    overflow: hidden;
}

.rni-home-product-image img,
.rni-product-mini-card__image img,
.woocommerce ul.products li.product img,
.woocommerce div.product div.images img,
.rni-search-result__image img,
.rni-live-search__image img {
    background: #fff !important;
    object-fit: contain !important;
    object-position: center !important;
}

.woocommerce div.product div.images .flex-control-thumbs img {
    background: #fff !important;
    object-fit: contain !important;
}

img.rni-product-coming-soon,
img.woocommerce-placeholder {
    background: #fff !important;
    object-fit: contain !important;
    padding: 0 !important;
}
/* END ORIGINAL storefront-product-images.css */
