/* Armed Gun Barn inner pages in the approved homepage palette (barn red #b50b20 / #8d0817, navy #1b2a4a, ink #141110,
   warm paper #f1efe9). Values: bridge decision 2026-10-20, table D
   (2adata-secure/design-decisions/2026-10-20-armedgunbarn-rows-reviews-inner-pages.md). CSS only, flat fills, no gradients.
   Loaded on every page after brand-20 by the header's brand-*.css glob; professional-fixes.min.css loads later, hence !important. */

/* ---------- buttons (theme blue #0066cc) ---------- */
html body .btn.btn-primary, html body button.add-to-cart-btn, html body .filter-sidebar .filter-submit, html body button.filter-submit,
html body a.skip-link, html body .skip-link {
    background: #b50b20 !important; background-color: #b50b20 !important; border: 1px solid #b50b20 !important; color: #ffffff !important;
    border-radius: 4px !important; font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: .02em !important; box-shadow: none !important;
}
html body .btn.btn-primary:hover, html body .btn.btn-primary:focus-visible, html body button.add-to-cart-btn:hover,
html body .filter-sidebar .filter-submit:hover, html body button.filter-submit:hover {
    background: #8d0817 !important; background-color: #8d0817 !important; border-color: #8d0817 !important; color: #ffffff !important;
}
html body .btn.btn-secondary, html body .btn.btn-outline, html body .btn.btn-outline-primary {
    background: #ffffff !important; border: 1px solid #b50b20 !important; color: #8d0817 !important; border-radius: 4px !important; box-shadow: none !important;
}
html body .btn.btn-secondary:hover, html body .btn.btn-outline:hover, html body .btn.btn-outline-primary:hover {
    background: #f1efe9 !important; border-color: #8d0817 !important; color: #8d0817 !important;
}
html body .btn:disabled, html body .btn.disabled, html body button[disabled].btn { background: #e2ded7 !important; border-color: #d2ccc3 !important; color: #3a3632 !important; cursor: not-allowed; }

/* ---------- content links ---------- */
html body a.shop-brand-link, html body a.review-count, html body .product-actions a, html body .details-content a, html body .product-description a,
html body .login-container a, html body .auth-container a, html body .account-page a:not(.btn), html body .cart-page a:not(.btn):not([class*="btn"]),
html body .main-content .reviews-page a:not(.btn), html body .reviews-container a[style*="3b82f6"] {
    color: #8d0817 !important;
}
html body a.shop-brand-link:hover, html body a.review-count:hover, html body .product-actions a:hover, html body .details-content a:hover,
html body .product-description a:hover, html body .login-container a:hover, html body .auth-container a:hover, html body .account-page a:not(.btn):hover,
html body .cart-page a:not(.btn):not([class*="btn"]):hover { color: #b50b20 !important; text-decoration: underline !important; }

/* ---------- breadcrumbs ---------- */
html body .product-breadcrumb a, html body .breadcrumb a, html body nav.breadcrumbs a { color: #6d6a66 !important; }
html body .product-breadcrumb a:hover, html body .breadcrumb a:hover, html body nav.breadcrumbs a:hover { color: #8d0817 !important; }
html body .product-breadcrumb span:last-child, html body .breadcrumb .active, html body .breadcrumb li:last-child { color: #141110 !important; }

/* ---------- prices, pills, badges ---------- */
html body .product-info-section .price-section .current-price, html body .price-section .current-price:not(.map-restricted):not([style*="#666"]) { color: #8d0817 !important; font-weight: 700 !important; }   /* brand-20 had it green */
html body .product-card .product-price, html body .product-grid .product-price, html body .related-products .product-price { color: #8d0817 !important; font-weight: 700 !important; }
html body .original-price, html body .product-card .original-price, html body .msrp-price { color: #6d6a66 !important; text-decoration: line-through !important; }
html body .savings-badge, html body .product-info-section span[style*="d1fae5"] {
    background: #f1efe9 !important; color: #8d0817 !important; border: 1px solid #b50b20 !important; border-radius: 4px !important; font-weight: 700 !important;
}
html body .product-price div[style*="28a745"], html body .map-price-label { color: #8d0817 !important; }   /* "See price in cart": green #28a745 was 3.13:1 */
html body .map-badge, html body span.map-badge {
    background: #b50b20 !important; color: #ffffff !important; border: 1px solid #b50b20 !important; border-radius: 2px !important;
    font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important;
}
html body .badge-ffl, html body .badge-ffl-inline, html body .badge-inline.badge-ffl-inline {
    background: #b50b20 !important; color: #ffffff !important; border: 1px solid #8d0817 !important; border-radius: 4px !important; font-weight: 700 !important;
}   /* was white on #e74c3c, 3.8:1 */
html body .product-info-section span[style*="dc2626"], html body .product-info-section .out-of-stock { color: #8d0817 !important; font-weight: 700 !important; }
html body .product-info-section .stock-status[style*="c41e3a"] { border-left-color: #b50b20 !important; }

/* ---------- product page ---------- */
html body .details-tabs { border-bottom-color: #e2ded7 !important; }
html body .details-tabs .details-tab { color: #3a3632 !important; border-bottom: 3px solid transparent !important; background: transparent !important; }
html body .details-tabs .details-tab:hover { color: #8d0817 !important; }
html body .details-tabs .details-tab.active { color: #8d0817 !important; border-bottom: 3px solid #b50b20 !important; }
html body .thumbnail-gallery .thumbnail.active, html body .thumbnail.active { border: 2px solid #b50b20 !important; border-radius: 4px !important; }
html body .notify-stock-section { border-color: #b50b20 !important; }
html body #pdpStickyBar .psb-btn { background: #b50b20 !important; border-color: #b50b20 !important; color: #ffffff !important; font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .02em !important; }   /* phone sticky bar: was #dc2626 */
html body #pdpStickyBar .psb-btn:hover { background: #8d0817 !important; border-color: #8d0817 !important; }
html body .ffl-notice a, html body [class*="ffl-notice"] a { color: #8d0817 !important; }   /* the yellow "Ships to your local FFL" notice stays */
html body .ffl-notice a:hover, html body [class*="ffl-notice"] a:hover { text-decoration: underline !important; }

/* ---------- category, search, brands ---------- */
html body a.cat-chip, html body .cat-chip { background: #ffffff !important; color: #8d0817 !important; border: 1px solid #e2ded7 !important; }
html body a.cat-chip:hover, html body .cat-chip:hover { border-color: #b50b20 !important; }
html body .cat-chip.active, html body a.cat-chip.active, html body .main-content a.cat-chip.active, html body main a.cat-chip.active, html body #main-content a.cat-chip.active {
    background: #f1efe9 !important; color: #141110 !important; border-color: #b50b20 !important;
}   /* was red text on the stock navy chip, 1.75:1 (Deals) */
html body .cat-chip .chip-count { color: #6d6a66 !important; }
html body .preset-chips .preset-chip { background: #ffffff !important; border: 1px solid #b50b20 !important; color: #8d0817 !important; }
html body .preset-chips .preset-chip strong { color: #141110 !important; }
html body .preset-chips .preset-chip a[aria-label^="Remove"], html body .active-filters a[aria-label^="Remove"] { background: #b50b20 !important; color: #ffffff !important; }   /* the remove x: was red on red */
html body .search-form-large form:has(> input[name="cat"]) { background: #ffffff !important; border: 1px solid #e2ded7 !important; border-radius: 4px !important; box-shadow: none !important; overflow: hidden; }
html body .search-form-large form:has(> input[name="cat"]):focus-within { border-color: #b50b20 !important; box-shadow: 0 0 0 3px rgba(181, 11, 32, .18) !important; }
html body .search-form-large form:has(> input[name="cat"]) > input[type="text"] { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; outline: none !important; }
html body .search-form-large form:has(> input[name="cat"]) > .btn.btn-primary { border-radius: 0 !important; }
html body .pagination-btn, html body a.pagination-btn, html body .brands-page-btn { background: #ffffff !important; color: #8d0817 !important; border: 1px solid #e2ded7 !important; }
html body a.pagination-btn:hover, html body a.brands-page-btn:hover { background: #f1efe9 !important; border-color: #b50b20 !important; }
html body .pagination-btn.pagination-current, html body .brands-page-btn.active, html body .brands-page-btn.current { background: #b50b20 !important; color: #ffffff !important; border-color: #b50b20 !important; }
html body span.pagination-btn.pagination-prev:not(a), html body span.pagination-btn.pagination-next:not(a), html body .brands-page-btn.disabled { color: #6d6a66 !important; background: #f4f6f8 !important; }

/* ---------- forms ---------- */
html body .main-content input:focus, html body .main-content select:focus, html body .main-content textarea:focus { border-color: #b50b20 !important; box-shadow: 0 0 0 3px rgba(181, 11, 32, .18) !important; }
html body .captcha-question { border: 1px solid #b50b20 !important; color: #141110 !important; background: #ffffff !important; }
html body .quick-links-list li { border-left-color: #b50b20 !important; }
html body .required, html body .main-content .required, html body span.required { color: #8d0817 !important; }

/* ---------- info pages: shipping, how to buy (AA from the 10/20 sweep) ---------- */
html body .main-content .alert strong, html body .main-content strong[style*="e74c3c"], html body .content-article strong[style*="e74c3c"] { color: #8d0817 !important; }   /* #e74c3c was 2.9 to 3.5:1 */
html body .content-article .trust-badge, html body .content-article .trust-badge span { color: #141110 !important; background: transparent !important; }   /* reuses the footer class: was white on white */
html body .content-article .trust-badge svg { color: #8d0817 !important; stroke: #8d0817 !important; }
html body blockquote.cp-quote { border-left-color: #b50b20 !important; }

/* ---------- blog ---------- */
html body .blog-card-meta, html body .blog-card-meta span, html body .featured-list .date, html body .blog-sidebar .date { color: #6d6a66 !important; }   /* #999 was 2.85:1 */
html body .category-list a.active, html body .category-list a:hover { color: #8d0817 !important; }
html body .sidebar-widget[style*="dc2626"] { background: #b50b20 !important; }   /* the newsletter widget's gradient, flat */
html body .sidebar-widget[style*="dc2626"] h3, html body .sidebar-widget[style*="dc2626"] p, html body .sidebar-widget[style*="dc2626"] label { color: #ffffff !important; }

/* ---------- About ---------- */
html body .about-hero { background: #1b2a4a !important; border-bottom: 4px solid #b50b20 !important; }
html body .about-hero h1 { color: #ffffff !important; }
html body .about-hero .tagline, html body .about-hero p { color: #f1efe9 !important; }
html body .about-content h2, html body main.main-content > .container > h2, html body .about-body h2, html body .about-container h2 { color: #141110 !important; border-bottom-color: #b50b20 !important; }
html body .about-content h2::after, html body .about-body h2::after { background: #b50b20 !important; }

/* ---------- FAQ ---------- */
html body .faq-hero, html body .faq-contact { background: #1b2a4a !important; }
html body .faq-hero .subtitle, html body .faq-hero p, html body .faq-contact p { color: #d9dde3 !important; }   /* on navy; #94a3b8 retired */
html body .faq-item { background: #ffffff !important; border: 1px solid #e2ded7 !important; }
html body .faq-item.open .faq-question { background: #f1efe9 !important; }
html body .faq-question, html body .faq-question span:first-child { color: #141110 !important; }
html body .faq-toggle { color: #8d0817 !important; }
html body .faq-question:hover .faq-toggle { color: #b50b20 !important; }
html body .faq-answer-inner, html body .faq-answer-inner p { color: #3a3632 !important; }
html body .faq-trust, html body .faq-category, html body .faq-group { border-color: #e2ded7 !important; }

/* ---------- reviews page (AA from the 10/20 sweep; gradients flattened) ---------- */
html body .reviews-hero { background: #1b2a4a !important; background-image: none !important; border-bottom: 4px solid #b50b20 !important; }
html body .reviews-hero h1 { color: #ffffff !important; }
html body .reviews-hero .subtitle, html body .reviews-hero p { color: #f1efe9 !important; }
html body .google-reviews-section { background: #f1efe9 !important; }
html body .google-reviews-section h2.section-title { border-bottom-color: #b50b20 !important; }
html body .google-reviews-section .google-badge { color: #3a3632 !important; }   /* label text was Google blue, 3.41:1; the G mark keeps its own colours */
html body .google-reviews-section .review-card { background: #ffffff !important; border-color: #e2ded7 !important; }
html body .google-reviews-section .reviewer-avatar { background: #1b2a4a !important; color: #ffffff !important; }
html body .google-reviews-section .reviewer-name { color: #141110 !important; }
html body .google-reviews-section .review-date { color: #6d6a66 !important; }   /* #94a3b8 was 2.56:1 */
html body .google-reviews-section .review-stars { color: #b50b20 !important; }   /* amber #f59e0b was 2.15:1 */
html body .google-reviews-section .review-text { color: #3a3632 !important; }
html body .reviews-container .cta-section { background: #1b2a4a !important; background-image: none !important; border-top: 4px solid #b50b20 !important; }   /* was a green gradient under dark theme h2 text, 2.07:1 */
html body .reviews-container .cta-section h2, html body .reviews-container .cta-section p { color: #ffffff !important; }
html body .reviews-container .cta-section .cta-btn { background: #b50b20 !important; color: #ffffff !important; border: 1px solid #b50b20 !important; border-radius: 4px !important; font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .02em !important; }
html body .reviews-container .cta-section .cta-btn:hover { background: #8d0817 !important; border-color: #8d0817 !important; }

/* ---------- footer (every page) ---------- */
html body footer.site-footer { background: #1b2a4a !important; background-color: #1b2a4a !important; color: #f4f6f8 !important; }
html body footer.site-footer .footer-heading, html body footer.site-footer .footer-subheading {
    color: #ffffff !important; font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important;
}
html body footer.site-footer a { color: #ffffff !important; }
html body footer.site-footer a:hover { color: #f1efe9 !important; text-decoration: underline !important; }
html body footer.site-footer .footer-bottom { border-top-color: rgba(244, 246, 248, .18) !important; }
html body footer.site-footer .legal-notice, html body footer.site-footer .payment-label, html body footer.site-footer .footer-powered-by { color: #d9dde3 !important; }
html body footer.site-footer .footer-trust-row .trust-badge, html body footer.site-footer .footer-trust-row .trust-badge span { color: #ffffff !important; }
html body footer.site-footer .footer-trust-row .trust-badge svg { color: #f1efe9 !important; stroke: #f1efe9 !important; }   /* was orange #ff6b35 */
html body footer.site-footer .social-link, html body footer.site-footer a.social-link {
    background: rgba(255, 255, 255, .06) !important; border: 1px solid rgba(255, 255, 255, .18) !important; color: #ffffff !important;
}
html body footer.site-footer .social-link:hover { background: rgba(255, 255, 255, .12) !important; text-decoration: none !important; }
html body #security-badge .badge-icon, html body #security-badge .badge-icon svg { color: #f1efe9 !important; stroke: #f1efe9 !important; }   /* green #22c55e on the dark badge */

/* ---------- cookie banner (every page) ---------- */
html body #cookieConsent.cookie-consent { background: #141110 !important; color: #f4f6f8 !important; border: 1px solid #3a3632 !important; box-shadow: 0 8px 24px rgba(0, 0, 0, .3) !important; }
html body #cookieConsent .cookie-icon, html body #cookieConsent .cookie-icon svg { color: #f1efe9 !important; }
html body #cookieConsent .cookie-heading, html body #cookieConsent h3 { color: #ffffff !important; }
html body #cookieConsent p, html body #cookieConsent .cookie-description { color: #f4f6f8 !important; }
html body #cookieConsent a:not(.btn) { color: #ffffff !important; text-decoration: underline !important; }
html body #cookieConsent .btn.btn-primary { background: #b50b20 !important; border-color: #b50b20 !important; color: #ffffff !important; }
html body #cookieConsent .btn.btn-primary:hover { background: #8d0817 !important; border-color: #8d0817 !important; }
html body #cookieConsent .btn.btn-secondary { background: transparent !important; color: #ffffff !important; border: 1px solid #6d6a66 !important; }
html body #cookieConsent .btn.btn-secondary:hover { background: #3a3632 !important; color: #ffffff !important; }

/* ---------- phones (bridge: controls at least 44px tall) ---------- */
@media (max-width: 767px) {
    html body .main-content .btn.btn-primary, html body button.add-to-cart-btn, html body .filter-submit, html body #cookieConsent .btn { min-height: 44px; }
    html body .details-tabs { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; gap: 4px !important; }
    html body .details-tabs .details-tab { flex: 0 0 auto !important; white-space: nowrap !important; border: 0 !important; border-bottom: 3px solid transparent !important; border-radius: 0 !important; box-shadow: none !important; padding-left: 12px !important; padding-right: 12px !important; }
    html body .details-tabs::-webkit-scrollbar { display: none; }
}
