:root {
  --color-red: #D5222A;
  --color-red-hover: #B91820;
  --color-dark: #191D22;
  --color-dark-soft: #252A30;
  --color-bg: #F7F1E8;
  --color-soft-red: #FBECEA;
  --color-white: #FFFFFF;
  --color-text: #252A30;
  --color-text-muted: #72757B;
  --color-border: #E5DED6;

  --yellow: var(--color-red);
  --yellow-strong: var(--color-red);
  --blue-900: var(--color-dark);
  --blue-950: var(--color-dark);
  --blue-850: var(--color-dark-soft);
  --ink: var(--color-dark);
  --muted: var(--color-text-muted);
  --line: var(--color-border);
  --surface: var(--color-white);
  --page: var(--color-bg);
  --aw-access-navy: var(--color-dark);
  --aw-access-yellow: var(--color-red);
  --aw-access-border: var(--color-border);
  --cart-blue: var(--color-dark);
  --cart-blue-dark: var(--color-dark);
  --cart-yellow: var(--color-red);
}
.brand-mark {
  width: 168px;
  height: 88px;
}
.brand-mark img,
.footer-brand img,
.site-closing-zone .footer-brand img,
.site-footer .footer-brand img {
  object-fit: contain;
  transform: none !important;
  filter: none !important;
}
.brand-lockup .brand-mark img {
  width: 100%;
  height: 100%;
}
.hero-cta,
.service-primary-button,
.conversion-primary,
.store-contact-actions a,
.catalog-load-more,
.sticky-contact-bar .sticky-key {
  color: #ffffff !important;
}
.hero-cta .fa-key {
  color: #ffffff !important;
}
.primary-nav-inner .is-current,
.header-phone,
.hero-eyebrow,
.hero-title-line.accent,
.hero-content h1 strong {
  color: #D5222A !important;
}
@media (max-width: 767px) {
  .brand-mark,
  .site-header.is-scrolled .brand-mark {
    width: 122px;
    height: 72px;
  }
}
@media (max-width: 420px) {
  .brand-mark,
  .site-header.is-scrolled .brand-mark {
    width: 106px;
    height: 64px;
  }
}

/* Palette override from supplied plaque */
body,
.site-shell,
.blue-panel,
.top-frame,
.hero-banner {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
}

.site-header,
.primary-nav,
.search-trigger,
.product-card,
.department-card,
.service-card,
.catalog-search-surface,
.search-category-showcase a,
.footer-card,
input,
select,
textarea {
  border-color: var(--color-border) !important;
}

.site-header,
.primary-nav,
.product-card,
.department-card,
.service-card,
.catalog-search-surface,
.search-category-showcase a {
  background-color: var(--color-white) !important;
}

h1, h2, h3, h4, h5, h6,
.primary-nav-inner a,
.header-contact-link,
.header-icon-link,
.hero-title-line,
.department-card,
.store-detail strong {
  color: var(--color-dark) !important;
}

body,
.catalog-search-form input,
.catalog-global-field input {
  color: var(--color-text) !important;
}

p, small, .hero-subtitle, .department-copy em, .store-detail small,
.search-groups span, .search-groups a,
.product-card-meta,
.product-meta,
.card-meta {
  color: var(--color-text-muted) !important;
}

.hero-cta,
.service-primary-button,
.conversion-primary,
.store-contact-actions a,
.catalog-load-more,
.sticky-contact-bar .sticky-key,
.internal-primary,
.cart-checkout {
  background: var(--color-red) !important;
  border-color: var(--color-red) !important;
  color: var(--color-white) !important;
  box-shadow: 0 14px 34px rgba(213, 34, 42, .18) !important;
}

.hero-cta:hover,
.service-primary-button:hover,
.conversion-primary:hover,
.store-contact-actions a:hover,
.catalog-load-more:hover,
.sticky-contact-bar .sticky-key:hover,
.internal-primary:hover,
.cart-checkout:hover {
  background: var(--color-red-hover) !important;
  border-color: var(--color-red-hover) !important;
  box-shadow: 0 18px 42px rgba(213, 34, 42, .24) !important;
}

.hero-ghost-cta,
.conversion-secondary,
.secondary-button,
.nav-drawer-call {
  background: var(--color-white) !important;
  border: 1px solid var(--color-border) !important;
  color: var(--color-dark) !important;
}

.hero-ghost-cta:hover,
.conversion-secondary:hover,
.secondary-button:hover {
  background: var(--color-soft-red) !important;
  border-color: rgba(213, 34, 42, .28) !important;
}

.photo-help-section,
.site-footer,
.footer,
.reviews-section,
.review-panel,
.key-service-card,
.key-service-copy,
.products-page-header {
  background: linear-gradient(180deg, var(--color-dark) 0%, #22272D 100%) !important;
  color: var(--color-white) !important;
}

.site-footer h1, .site-footer h2, .site-footer h3,
.footer h1, .footer h2, .footer h3,
.photo-help-section h1, .photo-help-section h2, .photo-help-section h3,
.reviews-section h1, .reviews-section h2, .reviews-section h3 {
  color: var(--color-white) !important;
}

.site-footer a, .footer a,
.photo-help-section p,
.reviews-section p {
  color: rgba(255, 255, 255, .78) !important;
}

.primary-nav-inner .is-current,
.header-phone,
.hero-eyebrow,
.hero-title-line.accent,
.hero-content h1 strong,
.catalog-kicker,
.service-kicker,
.problem-page-kicker,
.category-v6-department-badge,
.hero-trust-items .fa-solid,
.trust-strip .fa-solid,
.fa-key,
.fa-star,
.review-stars {
  color: var(--color-red) !important;
}

.active-dot,
.cart-badge,
.primary-nav-inner .is-current::after,
.primary-nav-inner a:not(.is-current)::after,
.service-chip.active,
.pagination .active,
[aria-current="page"] {
  background: var(--color-red) !important;
  border-color: var(--color-red) !important;
}

.search-trigger:focus-visible,
input:focus,
select:focus,
textarea:focus,
.catalog-local-search:focus-within,
.catalog-global-field:focus-within {
  border-color: var(--color-red) !important;
  outline-color: rgba(213, 34, 42, .28) !important;
}

.service-chip.active,
.search-chip:hover,
.catalog-filter-chip:hover,
.selected,
.is-selected {
  background: var(--color-soft-red) !important;
  border-color: rgba(213, 34, 42, .30) !important;
}

.product-card,
.department-card,
.service-card,
.problem-hub-card,
.catalog-card {
  box-shadow: 0 14px 40px rgba(25, 29, 34, .06) !important;
}

.product-card:hover,
.department-card:hover,
.service-card:hover,
.problem-hub-card:hover,
.catalog-card:hover {
  border-color: rgba(213, 34, 42, .25) !important;
}

.product-card img,
.department-card img,
.problem-hub-card img,
.brand-mark img,
.footer-brand img {
  filter: none !important;
}
