/* PMC: mobile side padding for shop & product pages */
@media (max-width: 921px) { body.post-type-archive-product #content > .ast-container, body.tax-product_cat #content > .ast-container, body.single-product #content > .ast-container { padding-left: 16px !important; padding-right: 16px !important; box-sizing: border-box; } }/* PMC: carousel heading is H2 (was H1); keep same look */
html body.home .pm-carousel-heading h2 { margin: 0 0 12px !important; color: #fff !important; font-size: clamp(2rem, 4vw, 3.8rem) !important; line-height: 1.06 !important; }/* Restore original contact width */
html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button:has(a[href="/contact/"]) { width:100% !important; flex:0 0 100% !important; max-width:100%; align-self:stretch; }
html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button a[href="/contact/"] { width:100% !important; padding:14px 18px !important; display:block !important; box-sizing:border-box; }/* Restore landing contact button full width */
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button:has(a[href="/contact/"]) { width:100% !important; flex:0 0 100% !important; max-width:100%; align-self:stretch; }
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button a[href="/contact/"] { width:100% !important; padding:14px 18px !important; display:block !important; box-sizing:border-box; }/* Compact shop button in landing intro */
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button:has(a[href*="/product-category/firearms"]) {
  width: auto !important;
  flex: 0 0 auto !important;
  max-width: 100%;
  align-self: center;
}

html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button a[href*="/product-category/firearms"] {
  width: auto !important;
  padding: 14px 28px !important;
  display: inline-block;
}/* Compact contact button in landing intro */
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button:has(a[href="/contact/"]) { width:auto !important; flex:0 0 auto !important; max-width:100%; align-self:center; }
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button a[href="/contact/"] { width:auto !important; padding:14px 28px !important; display:inline-block; }/* Landing page main heading: white */
html body.home #post-6 .entry-content > .wp-block-group.alignfull:first-child h1 { color:#ffffff !important; }/* Accessory category header spacing */
html body.term-lights-lasers #content, html body.term-optics-magnifiers-sights #content, html body.term-firearms #content, html body.term-suppressors #content, html body.term-suppressor #content, html body.term-silencers #content, html body.term-silencer #content, html body.archive.woocommerce-page #content { padding-top:24px !important; }
html body.term-lights-lasers #primary, html body.term-optics-magnifiers-sights #primary, html body.term-lights-lasers #secondary, html body.term-optics-magnifiers-sights #secondary, html body.term-firearms #primary, html body.term-suppressors #primary, html body.term-suppressor #primary, html body.term-silencers #primary, html body.term-silencer #primary, html body.archive.woocommerce-page #primary, html body.term-firearms #secondary, html body.term-suppressors #secondary, html body.term-suppressor #secondary, html body.term-silencers #secondary, html body.term-silencer #secondary, html body.archive.woocommerce-page #secondary { margin-top:0 !important; }/* FAQ layout */
html body.page-id-13 #content { padding-top:24px !important; }
html body.page-id-13 #primary { margin-top:0 !important; }
html body.page-id-13 #post-13 { padding-bottom:40px !important; }


:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Match Contact and Services spacing to About */
body.page-id-20 #content, body.page-id-16 #content { padding-top: 24px !important; }
body.page-id-20 #primary, body.page-id-16 #primary { margin-top: 0 !important; }

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Tighten spacing above the About page logo */
body.page-id-10 #content { padding-top: 24px !important; }
body.page-id-10 #primary { margin-top: 0 !important; }

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Global canvas */
body {
  background:
    radial-gradient(circle at 15% 0%, rgba(184,154,104,.12), transparent 34rem),
    var(--pm-cream);
  color: var(--pm-ink);
}/* Mobile landing-page hero refinement */
@media (max-width: 768px) {
  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin: 16px 14px 12px !important;
    padding: 42px 20px !important;
    border-radius: 18px;
    background: linear-gradient(145deg, #171714, #2d302f) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    overflow: hidden;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child h1 {
    font-size: 2rem !important;
    line-height: 1.15;
    margin-bottom: 16px;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child > p {
    font-size: 1rem !important;
    line-height: 1.6;
    margin-bottom: 24px;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons {
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button,
  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button__link {
    width: 100%;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button__link {
    padding: 14px 18px;
    border-radius: 999px !important;
  }
}/* Mobile navigation contrast */
@media (max-width: 921px) {
  .ast-header-break-point .ast-mobile-header-content,
  .ast-header-break-point #ast-mobile-site-navigation .main-header-menu {
    background: #171714 !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link {
    background: #252522 !important;
    color: #ffffff !important;
    border-bottom: 1px solid #4a4a46 !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .current-menu-item > .menu-link,
  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link:hover,
  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link:focus {
    background: #3a3a36 !important;
    color: #ffffff !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .ast-menu-toggle {
    background: #333330 !important;
    color: #ffffff !important;
  }
}

.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}/* Mobile */
@media (max-width: 768px) {
  .home .ast-single-post-featured-section.post-thumb {
    min-height: 320px;
  }
  body:not(.home) .site-content {
    padding: 22px 12px;
  }
  body:not(.home) .entry-content,
  body:not(.home) .entry-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Dynamic best-sellers carousel */
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0;
  aspect-ratio: auto;
  background: none;
  border: 0;
}
.home .pm-product-carousel {
  position: relative;
  overflow: hidden;
  padding: clamp(46px, 7vw, 84px) clamp(20px, 5vw, 64px) 52px;
  background:
    radial-gradient(circle at 90% 10%, rgba(184,154,104,.25), transparent 27rem),
    linear-gradient(125deg, #0d0e0d, #27251f);
  color: #f6f1e7;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .pm-carousel-heading {
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}
.home .pm-eyebrow {
  margin: 0 0 8px;
  color: var(--pm-bronze-light);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .2em;
}
.home .pm-carousel-heading h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: 1.06;
}
.home .pm-carousel-heading > p:last-child {
  color: #d7d0c3;
  font-size: 1.08rem;
}
.home .pm-carousel-track .woocommerce {
  width: 100%;
}
.home .pm-carousel-track ul.products {
  display: flex !important;
  gap: 20px;
  overflow-x: auto;
  padding: 12px 8px 24px !important;
  margin: 0 !important;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--pm-bronze) rgba(255,255,255,.12);
  scrollbar-width: thin;
}
.home .pm-carousel-track ul.products::before,
.home .pm-carousel-track ul.products::after {
  display: none !important;
}
.home .pm-carousel-track ul.products li.product {
  flex: 0 0 clamp(220px, 24vw, 285px);
  width: auto !important;
  margin: 0 !important;
  scroll-snap-align: start;
  background: #f9f6ef;
  color: var(--pm-ink);
  border: 1px solid rgba(216,195,157,.34);
}
.home .pm-carousel-track .woocommerce-loop-product__title {
  color: #222 !important;
}
.home .pm-carousel-track .price {
  color: #765d36 !important;
  font-weight: 800;
}
.home .pm-carousel-hint {
  margin: 16px 0 0;
  color: #bcb3a4;
  text-align: center;
  font-size: .82rem;
  letter-spacing: .05em;
}
.home .pm-product-carousel .woocommerce-info {
  max-width: 760px;
  margin: 20px auto 0;
  color: #29251e;
}
@media (max-width: 768px) {
  .home .pm-carousel-track ul.products li.product {
    flex-basis: 78vw;
  }
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Final Astra and legacy CSS overrides */
.site-header,
.site-header .ast-primary-header-bar,
.site-header .main-header-bar,
.site-header .ast-builder-grid-row-container,
.site-header .ast-main-header-wrap {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
}
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background-color: transparent !important;
  background-image: none !important;
  background-size: auto !important;
  border: 0 !important;
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}/* Global canvas */
body {
  background:
    radial-gradient(circle at 15% 0%, rgba(184,154,104,.12), transparent 34rem),
    var(--pm-cream);
  color: var(--pm-ink);
}
.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}/* Header */
.site-header {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
  border-bottom: 1px solid rgba(216,195,157,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
.site-header .site-title a,
.site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-builder-menu-1 .menu-item > .menu-link {
  color: #f6f1e7 !important;
}
.site-header .main-header-menu > .menu-item > .menu-link:hover,
.site-header .main-header-menu > .current-menu-item > .menu-link {
  color: var(--pm-bronze-light) !important;
}
.site-header .sub-menu {
  background: #1a1a17 !important;
  border: 1px solid rgba(184,154,104,.35);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.site-header .sub-menu .menu-link {
  color: #f3ede2 !important;
}
.site-header .sub-menu .menu-link:hover {
  color: var(--pm-bronze-light) !important;
  background: rgba(184,154,104,.12);
}
.ast-header-break-point .main-header-menu {
  background: #171714;
}
.ast-header-break-point .main-header-menu .menu-link {
  color: #f4f0e7 !important;
}/* Buttons and links */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: linear-gradient(135deg, #c0a474, #927548) !important;
  color: #111 !important;
  border: 1px solid #d4bf98 !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
  filter: brightness(1.08);
}/* Homepage masthead image */
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  min-height: clamp(360px, 54vw, 670px);
  aspect-ratio: auto;
  margin: 0 !important;
  background-color: #0e100f;
  background-image:
    radial-gradient(circle at center, rgba(184,154,104,.12), rgba(0,0,0,.5)),
    url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .entry-header .entry-title {
  display: none;
}
.home #primary,
.home .site-main,
.home .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home .entry-content > .wp-block-group:first-child {
  background:
    linear-gradient(120deg, rgba(17,17,15,.98), rgba(42,40,33,.94)) !important;
  border-top: 1px solid rgba(216,195,157,.28);
  border-bottom: 1px solid rgba(216,195,157,.28);
}
.home .entry-content > .wp-block-group:nth-child(2),
.home .entry-content > .wp-block-group:nth-child(4) {
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(232,224,210,.72));
  border: 1px solid rgba(63,58,48,.12);
  box-shadow: 0 18px 45px rgba(40,35,26,.09);
  border-radius: 8px;
  margin-top: 54px;
  margin-bottom: 54px;
}
.home .entry-content > .wp-block-group:nth-child(3) {
  background:
    linear-gradient(rgba(235,225,205,.96), rgba(235,225,205,.96)),
    repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.03) 8px 9px) !important;
}
.home .wp-block-column {
  transition: transform .2s ease, box-shadow .2s ease;
}
.home .wp-block-column:hover {
  transform: translateY(-3px);
}/* Interior pages */
body:not(.home) .site-content {
  padding: clamp(28px, 5vw, 64px) 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(184,154,104,.14), transparent 30rem),
    linear-gradient(180deg, #ebe5d9 0, #f7f4ed 340px);
}
body:not(.home) article,
body.woocommerce-page #primary {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(61,56,47,.12);
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(32,28,21,.11);
  overflow: hidden;
}
body:not(.home) .entry-content,
body:not(.home) .entry-header {
  padding-left: clamp(24px, 5vw, 64px);
  padding-right: clamp(24px, 5vw, 64px);
}
body:not(.home) .entry-header {
  padding-top: 34px;
}
.page-id-102 details,
.page-id-102 .wp-block-details,
.page-id-102 summary {
  border-color: rgba(184,154,104,.4);
}
.page-id-102 details {
  background: linear-gradient(135deg, #1a1a17, #2b2a24);
  color: #f3ede2;
  border: 1px solid rgba(184,154,104,.45);
  border-radius: 7px;
  padding: 18px 22px;
  margin-bottom: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}
.page-id-102 details summary {
  color: var(--pm-bronze-light);
  font-weight: 700;
}/* WooCommerce */
.woocommerce ul.products li.product {
  background: #fff;
  border: 1px solid rgba(45,48,47,.12);
  border-radius: 8px;
  padding: 14px 14px 20px;
  box-shadow: 0 10px 30px rgba(31,28,23,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(31,28,23,.16);
}
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  border-top-color: var(--pm-bronze);
  background: #eee7da;
}/* Footer */
.site-footer {
  background:
    linear-gradient(120deg, #0c0d0c, #24231e) !important;
  color: #ddd3c0;
  border-top: 1px solid rgba(184,154,104,.5);
}
.site-footer a {
  color: var(--pm-bronze-light) !important;
}
.site-footer a:hover {
  color: #fff !important;
}/* Mobile */
@media (max-width: 768px) {
  .home .ast-single-post-featured-section.post-thumb {
    min-height: 320px;
  }
  body:not(.home) .site-content {
    padding: 22px 12px;
  }
  body:not(.home) .entry-content,
  body:not(.home) .entry-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}/* Dynamic best-sellers carousel */
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0;
  aspect-ratio: auto;
  background: none;
  border: 0;
}
.home .pm-product-carousel {
  position: relative;
  overflow: hidden;
  padding: clamp(46px, 7vw, 84px) clamp(20px, 5vw, 64px) 52px;
  background:
    radial-gradient(circle at 90% 10%, rgba(184,154,104,.25), transparent 27rem),
    linear-gradient(125deg, #0d0e0d, #27251f);
  color: #f6f1e7;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .pm-carousel-heading {
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}
.home .pm-eyebrow {
  margin: 0 0 8px;
  color: var(--pm-bronze-light);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .2em;
}
.home .pm-carousel-heading h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: 1.06;
}
.home .pm-carousel-heading > p:last-child {
  color: #d7d0c3;
  font-size: 1.08rem;
}
.home .pm-carousel-track .woocommerce {
  width: 100%;
}
.home .pm-carousel-track ul.products {
  display: flex !important;
  gap: 20px;
  overflow-x: auto;
  padding: 12px 8px 24px !important;
  margin: 0 !important;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--pm-bronze) rgba(255,255,255,.12);
  scrollbar-width: thin;
}
.home .pm-carousel-track ul.products::before,
.home .pm-carousel-track ul.products::after {
  display: none !important;
}
.home .pm-carousel-track ul.products li.product {
  flex: 0 0 clamp(220px, 24vw, 285px);
  width: auto !important;
  margin: 0 !important;
  scroll-snap-align: start;
  background: #f9f6ef;
  color: var(--pm-ink);
  border: 1px solid rgba(216,195,157,.34);
}
.home .pm-carousel-track .woocommerce-loop-product__title {
  color: #222 !important;
}
.home .pm-carousel-track .price {
  color: #765d36 !important;
  font-weight: 800;
}
.home .pm-carousel-hint {
  margin: 16px 0 0;
  color: #bcb3a4;
  text-align: center;
  font-size: .82rem;
  letter-spacing: .05em;
}
.home .pm-product-carousel .woocommerce-info {
  max-width: 760px;
  margin: 20px auto 0;
  color: #29251e;
}
@media (max-width: 768px) {
  .home .pm-carousel-track ul.products li.product {
    flex-basis: 78vw;
  }
}/* Final Astra and legacy CSS overrides */
.site-header,
.site-header .ast-primary-header-bar,
.site-header .main-header-bar,
.site-header .ast-builder-grid-row-container,
.site-header .ast-main-header-wrap {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
}
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background-color: transparent !important;
  background-image: none !important;
  background-size: auto !important;
  border: 0 !important;
}


.home .entry-content > .wp-block-group:first-child h1,
.home .entry-content > .wp-block-group:first-child h2,
.home .entry-content > .wp-block-group:first-child h3 {
  color: #fff !important;
}
.home .pm-carousel-empty {
  max-width: 760px;
  margin: 10px auto 22px;
  padding: 22px 26px;
  color: #e7dcc8;
  text-align: center;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(184,154,104,.36);
  border-radius: 7px;
}
.home .pm-carousel-track:has(.pm-carousel-empty) + .pm-carousel-hint {
  display: none;
}
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  content: url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background-image: url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
}
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background-color: #111315;
  background-image: url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background-color: #111315;
  background-image: url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}

.page-id-10 .ast-single-post-featured-section.post-thumb {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow: hidden;
  background-color: transparent;
}

.page-id-10 .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 760px;
  object-fit: contain;
  object-position: center top;
}/* Make all product images uniform size without distortion */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
.ast-woocommerce-container ul.products li.product a img {
    width: 100% !important;
    height: 300px !important; /* Adjust this value as needed */
    object-fit: contain !important; /* This prevents distortion */
    object-position: center center !important;
}/* Or use object-fit: cover if you want to fill the space (may crop edges) *//*
.woocommerce ul.products li.product a img {
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
    object-position: center center !important;
}
*//* Compact catalog cards; keep images uncropped */@media (min-width: 1025px) {  body.woocommerce.archive .ast-woocommerce-container ul.products {    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;  }}body.woocommerce.archive .ast-woocommerce-container ul.products li.product a img {  height: 210px !important;  object-fit: contain !important;  object-position: center !important;}/* Mobile catalog: three compact cards per row */
@media (max-width: 767px) {
  body.woocommerce.archive ul.products { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; column-gap: 8px !important; row-gap: 16px !important; }
  body.woocommerce.archive ul.products li.product { width: auto !important; min-width: 0 !important; margin: 0 !important; }
  body.woocommerce.archive ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link { height: 112px !important; display: flex !important; align-items: center; justify-content: center; overflow: hidden; }
  body.woocommerce.archive ul.products li.product .astra-shop-thumbnail-wrap img { width: 100% !important; height: 112px !important; max-height: 112px !important; object-fit: contain !important; }
  body.woocommerce.archive ul.products li.product .ast-woo-product-category { display: none !important; }
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title { font-size: 13px !important; line-height: 1.3 !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  body.woocommerce.archive ul.products li.product .price { font-size: 12px !important; }
}

@media (max-width: 767px) { body.woocommerce.archive ul.products li.product { padding: 4px !important; } }/* Shorter Contact message box on mobile */
@media (max-width: 767px) {
  body.page-id-20 #contact-form-comment-g20-message { height: 250px !important; min-height: 0 !important; }
}

    font-size: 1rem !important;
    line-height: 1.6;
    margin-bottom: 24px;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons {
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button,
  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button__link {
    width: 100%;
  }

  .home #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-button__link {
    padding: 14px 18px;
    border-radius: 999px !important;
  }
}

/* Mobile navigation contrast */
@media (max-width: 921px) {
  .ast-header-break-point .ast-mobile-header-content,
  .ast-header-break-point #ast-mobile-site-navigation .main-header-menu {
    background: #171714 !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link {
    background: #252522 !important;
    color: #ffffff !important;
    border-bottom: 1px solid #4a4a46 !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .current-menu-item > .menu-link,
  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link:hover,
  .ast-header-break-point #ast-mobile-site-navigation .menu-item > .menu-link:focus {
    background: #3a3a36 !important;
    color: #ffffff !important;
  }

  .ast-header-break-point #ast-mobile-site-navigation .ast-menu-toggle {
    background: #333330 !important;
    color: #ffffff !important;
  }
}

.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}

/* Header */
.site-header {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
  border-bottom: 1px solid rgba(216,195,157,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
.site-header .site-title a,
.site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-builder-menu-1 .menu-item > .menu-link {
  color: #f6f1e7 !important;
}
.site-header .main-header-menu > .menu-item > .menu-link:hover,
.site-header .main-header-menu > .current-menu-item > .menu-link {
  color: var(--pm-bronze-light) !important;
}
.site-header .sub-menu {
  background: #1a1a17 !important;
  border: 1px solid rgba(184,154,104,.35);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.site-header .sub-menu .menu-link {
  color: #f3ede2 !important;
}
.site-header .sub-menu .menu-link:hover {
  color: var(--pm-bronze-light) !important;
  background: rgba(184,154,104,.12);
}
.ast-header-break-point .main-header-menu {
  background: #171714;
}
.ast-header-break-point .main-header-menu .menu-link {
  color: #f4f0e7 !important;
}

/* Buttons and links */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: linear-gradient(135deg, #c0a474, #927548) !important;
  color: #111 !important;
  border: 1px solid #d4bf98 !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
  filter: brightness(1.08);
}

/* Homepage masthead image */
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  min-height: clamp(360px, 54vw, 670px);
  aspect-ratio: auto;
  margin: 0 !important;
  background-color: #0e100f;
  background-image:
    radial-gradient(circle at center, rgba(184,154,104,.12), rgba(0,0,0,.5)),
    url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .entry-header .entry-title {
  display: none;
}
.home #primary,
.home .site-main,
.home .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home .entry-content > .wp-block-group:first-child {
  background:
    linear-gradient(120deg, rgba(17,17,15,.98), rgba(42,40,33,.94)) !important;
  border-top: 1px solid rgba(216,195,157,.28);
  border-bottom: 1px solid rgba(216,195,157,.28);
}
.home .entry-content > .wp-block-group:nth-child(2),
.home .entry-content > .wp-block-group:nth-child(4) {
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(232,224,210,.72));
  border: 1px solid rgba(63,58,48,.12);
  box-shadow: 0 18px 45px rgba(40,35,26,.09);
  border-radius: 8px;
  margin-top: 54px;
  margin-bottom: 54px;
}
.home .entry-content > .wp-block-group:nth-child(3) {
  background:
    linear-gradient(rgba(235,225,205,.96), rgba(235,225,205,.96)),
    repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.03) 8px 9px) !important;
}
.home .wp-block-column {
  transition: transform .2s ease, box-shadow .2s ease;
}
.home .wp-block-column:hover {
  transform: translateY(-3px);
}

/* Interior pages */
body:not(.home) .site-content {
  padding: clamp(28px, 5vw, 64px) 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(184,154,104,.14), transparent 30rem),
    linear-gradient(180deg, #ebe5d9 0, #f7f4ed 340px);
}
body:not(.home) article,
body.woocommerce-page #primary {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(61,56,47,.12);
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(32,28,21,.11);
  overflow: hidden;
}
body:not(.home) .entry-content,
body:not(.home) .entry-header {
  padding-left: clamp(24px, 5vw, 64px);
  padding-right: clamp(24px, 5vw, 64px);
}
body:not(.home) .entry-header {
  padding-top: 34px;
}
.page-id-102 details,
.page-id-102 .wp-block-details,
.page-id-102 summary {
  border-color: rgba(184,154,104,.4);
}
.page-id-102 details {
  background: linear-gradient(135deg, #1a1a17, #2b2a24);
  color: #f3ede2;
  border: 1px solid rgba(184,154,104,.45);
  border-radius: 7px;
  padding: 18px 22px;
  margin-bottom: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}
.page-id-102 details summary {
  color: var(--pm-bronze-light);
  font-weight: 700;
}

/* WooCommerce */
.woocommerce ul.products li.product {
  background: #fff;
  border: 1px solid rgba(45,48,47,.12);
  border-radius: 8px;
  padding: 14px 14px 20px;
  box-shadow: 0 10px 30px rgba(31,28,23,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(31,28,23,.16);
}
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  border-top-color: var(--pm-bronze);
  background: #eee7da;
}

/* Footer */
.site-footer {
  background:
    linear-gradient(120deg, #0c0d0c, #24231e) !important;
  color: #ddd3c0;
  border-top: 1px solid rgba(184,154,104,.5);
}
.site-footer a {
  color: var(--pm-bronze-light) !important;
}
.site-footer a:hover {
  color: #fff !important;
}

/* Mobile */
@media (max-width: 768px) {
  .home .ast-single-post-featured-section.post-thumb {
    min-height: 320px;
  }
  body:not(.home) .site-content {
    padding: 22px 12px;
  }
  body:not(.home) .entry-content,
  body:not(.home) .entry-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}

/* Global canvas */
body {
  background:
    radial-gradient(circle at 15% 0%, rgba(184,154,104,.12), transparent 34rem),
    var(--pm-cream);
  color: var(--pm-ink);
}
.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}

/* Header */
.site-header {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
  border-bottom: 1px solid rgba(216,195,157,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
.site-header .site-title a,
.site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-builder-menu-1 .menu-item > .menu-link {
  color: #f6f1e7 !important;
}
.site-header .main-header-menu > .menu-item > .menu-link:hover,
.site-header .main-header-menu > .current-menu-item > .menu-link {
  color: var(--pm-bronze-light) !important;
}
.site-header .sub-menu {
  background: #1a1a17 !important;
  border: 1px solid rgba(184,154,104,.35);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.site-header .sub-menu .menu-link {
  color: #f3ede2 !important;
}
.site-header .sub-menu .menu-link:hover {
  color: var(--pm-bronze-light) !important;
  background: rgba(184,154,104,.12);
}
.ast-header-break-point .main-header-menu {
  background: #171714;
}
.ast-header-break-point .main-header-menu .menu-link {
  color: #f4f0e7 !important;
}

/* Buttons and links */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: linear-gradient(135deg, #c0a474, #927548) !important;
  color: #111 !important;
  border: 1px solid #d4bf98 !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
  filter: brightness(1.08);
}

/* Homepage masthead image */
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  min-height: clamp(360px, 54vw, 670px);
  aspect-ratio: auto;
  margin: 0 !important;
  background-color: #0e100f;
  background-image:
    radial-gradient(circle at center, rgba(184,154,104,.12), rgba(0,0,0,.5)),
    url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .entry-header .entry-title {
  display: none;
}
.home #primary,
.home .site-main,
.home .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home .entry-content > .wp-block-group:first-child {
  background:
    linear-gradient(120deg, rgba(17,17,15,.98), rgba(42,40,33,.94)) !important;
  border-top: 1px solid rgba(216,195,157,.28);
  border-bottom: 1px solid rgba(216,195,157,.28);
}
.home .entry-content > .wp-block-group:nth-child(2),
.home .entry-content > .wp-block-group:nth-child(4) {
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(232,224,210,.72));
  border: 1px solid rgba(63,58,48,.12);
  box-shadow: 0 18px 45px rgba(40,35,26,.09);
  border-radius: 8px;
  margin-top: 54px;
  margin-bottom: 54px;
}
.home .entry-content > .wp-block-group:nth-child(3) {
  background:
    linear-gradient(rgba(235,225,205,.96), rgba(235,225,205,.96)),
    repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.03) 8px 9px) !important;
}
.home .wp-block-column {
  transition: transform .2s ease, box-shadow .2s ease;
}
.home .wp-block-column:hover {
  transform: translateY(-3px);
}

/* Interior pages */
body:not(.home) .site-content {
  padding: clamp(28px, 5vw, 64px) 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(184,154,104,.14), transparent 30rem),
    linear-gradient(180deg, #ebe5d9 0, #f7f4ed 340px);
}
body:not(.home) article,
body.woocommerce-page #primary {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(61,56,47,.12);
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(32,28,21,.11);
  overflow: hidden;
}
body:not(.home) .entry-content,
body:not(.home) .entry-header {
  padding-left: clamp(24px, 5vw, 64px);
  padding-right: clamp(24px, 5vw, 64px);
}
body:not(.home) .entry-header {
  padding-top: 34px;
}
.page-id-102 details,
.page-id-102 .wp-block-details,
.page-id-102 summary {
  border-color: rgba(184,154,104,.4);
}
.page-id-102 details {
  background: linear-gradient(135deg, #1a1a17, #2b2a24);
  color: #f3ede2;
  border: 1px solid rgba(184,154,104,.45);
  border-radius: 7px;
  padding: 18px 22px;
  margin-bottom: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}
.page-id-102 details summary {
  color: var(--pm-bronze-light);
  font-weight: 700;
}

/* WooCommerce */
.woocommerce ul.products li.product {
  background: #fff;
  border: 1px solid rgba(45,48,47,.12);
  border-radius: 8px;
  padding: 14px 14px 20px;
  box-shadow: 0 10px 30px rgba(31,28,23,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(31,28,23,.16);
}
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  border-top-color: var(--pm-bronze);
  background: #eee7da;
}

/* Footer */
.site-footer {
  background:
    linear-gradient(120deg, #0c0d0c, #24231e) !important;
  color: #ddd3c0;
  border-top: 1px solid rgba(184,154,104,.5);
}
.site-footer a {
  color: var(--pm-bronze-light) !important;
}
.site-footer a:hover {
  color: #fff !important;
}

/* Mobile */
@media (max-width: 768px) {
  .home .ast-single-post-featured-section.post-thumb {
    min-height: 320px;
  }
  body:not(.home) .site-content {
    padding: 22px 12px;
  }
  body:not(.home) .entry-content,
  body:not(.home) .entry-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}


/* Dynamic best-sellers carousel */
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0;
  aspect-ratio: auto;
  background: none;
  border: 0;
}
.home .pm-product-carousel {
  position: relative;
  overflow: hidden;
  padding: clamp(46px, 7vw, 84px) clamp(20px, 5vw, 64px) 52px;
  background:
    radial-gradient(circle at 90% 10%, rgba(184,154,104,.25), transparent 27rem),
    linear-gradient(125deg, #0d0e0d, #27251f);
  color: #f6f1e7;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .pm-carousel-heading {
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}
.home .pm-eyebrow {
  margin: 0 0 8px;
  color: var(--pm-bronze-light);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .2em;
}
.home .pm-carousel-heading h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: 1.06;
}
.home .pm-carousel-heading > p:last-child {
  color: #d7d0c3;
  font-size: 1.08rem;
}
.home .pm-carousel-track .woocommerce {
  width: 100%;
}
.home .pm-carousel-track ul.products {
  display: flex !important;
  gap: 20px;
  overflow-x: auto;
  padding: 12px 8px 24px !important;
  margin: 0 !important;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--pm-bronze) rgba(255,255,255,.12);
  scrollbar-width: thin;
}
.home .pm-carousel-track ul.products::before,
.home .pm-carousel-track ul.products::after {
  display: none !important;
}
.home .pm-carousel-track ul.products li.product {
  flex: 0 0 clamp(220px, 24vw, 285px);
  width: auto !important;
  margin: 0 !important;
  scroll-snap-align: start;
  background: #f9f6ef;
  color: var(--pm-ink);
  border: 1px solid rgba(216,195,157,.34);
}
.home .pm-carousel-track .woocommerce-loop-product__title {
  color: #222 !important;
}
.home .pm-carousel-track .price {
  color: #765d36 !important;
  font-weight: 800;
}
.home .pm-carousel-hint {
  margin: 16px 0 0;
  color: #bcb3a4;
  text-align: center;
  font-size: .82rem;
  letter-spacing: .05em;
}
.home .pm-product-carousel .woocommerce-info {
  max-width: 760px;
  margin: 20px auto 0;
  color: #29251e;
}
@media (max-width: 768px) {
  .home .pm-carousel-track ul.products li.product {
    flex-basis: 78vw;
  }
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}

/* Global canvas */
body {
  background:
    radial-gradient(circle at 15% 0%, rgba(184,154,104,.12), transparent 34rem),
    var(--pm-cream);
  color: var(--pm-ink);
}
.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}

/* Header */
.site-header {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
  border-bottom: 1px solid rgba(216,195,157,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
.site-header .site-title a,
.site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-builder-menu-1 .menu-item > .menu-link {
  color: #f6f1e7 !important;
}
.site-header .main-header-menu > .menu-item > .menu-link:hover,
.site-header .main-header-menu > .current-menu-item > .menu-link {
  color: var(--pm-bronze-light) !important;
}
.site-header .sub-menu {
  background: #1a1a17 !important;
  border: 1px solid rgba(184,154,104,.35);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.site-header .sub-menu .menu-link {
  color: #f3ede2 !important;
}
.site-header .sub-menu .menu-link:hover {
  color: var(--pm-bronze-light) !important;
  background: rgba(184,154,104,.12);
}
.ast-header-break-point .main-header-menu {
  background: #171714;
}
.ast-header-break-point .main-header-menu .menu-link {
  color: #f4f0e7 !important;
}

/* Buttons and links */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: linear-gradient(135deg, #c0a474, #927548) !important;
  color: #111 !important;
  border: 1px solid #d4bf98 !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
  filter: brightness(1.08);
}

/* Homepage masthead image */
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  min-height: clamp(360px, 54vw, 670px);
  aspect-ratio: auto;
  margin: 0 !important;
  background-color: #0e100f;
  background-image:
    radial-gradient(circle at center, rgba(184,154,104,.12), rgba(0,0,0,.5)),
    url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .entry-header .entry-title {
  display: none;
}
.home #primary,
.home .site-main,
.home .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home .entry-content > .wp-block-group:first-child {
  background:
    linear-gradient(120deg, rgba(17,17,15,.98), rgba(42,40,33,.94)) !important;
  border-top: 1px solid rgba(216,195,157,.28);
  border-bottom: 1px solid rgba(216,195,157,.28);
}
.home .entry-content > .wp-block-group:nth-child(2),
.home .entry-content > .wp-block-group:nth-child(4) {
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(232,224,210,.72));
  border: 1px solid rgba(63,58,48,.12);
  box-shadow: 0 18px 45px rgba(40,35,26,.09);
  border-radius: 8px;
  margin-top: 54px;
  margin-bottom: 54px;
}
.home .entry-content > .wp-block-group:nth-child(3) {
  background:
    linear-gradient(rgba(235,225,205,.96), rgba(235,225,205,.96)),
    repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.03) 8px 9px) !important;
}
.home .wp-block-column {
  transition: transform .2s ease, box-shadow .2s ease;
}
.home .wp-block-column:hover {
  transform: translateY(-3px);
}

/* Interior pages */
body:not(.home) .site-content {
  padding: clamp(28px, 5vw, 64px) 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(184,154,104,.14), transparent 30rem),
    linear-gradient(180deg, #ebe5d9 0, #f7f4ed 340px);
}
body:not(.home) article,
body.woocommerce-page #primary {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(61,56,47,.12);
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(32,28,21,.11);
  overflow: hidden;
}
body:not(.home) .entry-content,
body:not(.home) .entry-header {
  padding-left: clamp(24px, 5vw, 64px);
  padding-right: clamp(24px, 5vw, 64px);
}
body:not(.home) .entry-header {
  padding-top: 34px;
}
.page-id-102 details,
.page-id-102 .wp-block-details,
.page-id-102 summary {
  border-color: rgba(184,154,104,.4);
}
.page-id-102 details {
  background: linear-gradient(135deg, #1a1a17, #2b2a24);
  color: #f3ede2;
  border: 1px solid rgba(184,154,104,.45);
  border-radius: 7px;
  padding: 18px 22px;
  margin-bottom: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}
.page-id-102 details summary {
  color: var(--pm-bronze-light);
  font-weight: 700;
}

/* WooCommerce */
.woocommerce ul.products li.product {
  background: #fff;
  border: 1px solid rgba(45,48,47,.12);
  border-radius: 8px;
  padding: 14px 14px 20px;
  box-shadow: 0 10px 30px rgba(31,28,23,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(31,28,23,.16);
}
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  border-top-color: var(--pm-bronze);
  background: #eee7da;
}

/* Footer */
.site-footer {
  background:
    linear-gradient(120deg, #0c0d0c, #24231e) !important;
  color: #ddd3c0;
  border-top: 1px solid rgba(184,154,104,.5);
}
.site-footer a {
  color: var(--pm-bronze-light) !important;
}
.site-footer a:hover {
  color: #fff !important;
}

/* Mobile */
@media (max-width: 768px) {
  .home .ast-single-post-featured-section.post-thumb {
    min-height: 320px;
  }
  body:not(.home) .site-content {
    padding: 22px 12px;
  }
  body:not(.home) .entry-content,
  body:not(.home) .entry-header {
    padding-left: 20px;
    padding-right: 20px;
  }
}


/* Dynamic best-sellers carousel */
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0;
  aspect-ratio: auto;
  background: none;
  border: 0;
}
.home .pm-product-carousel {
  position: relative;
  overflow: hidden;
  padding: clamp(46px, 7vw, 84px) clamp(20px, 5vw, 64px) 52px;
  background:
    radial-gradient(circle at 90% 10%, rgba(184,154,104,.25), transparent 27rem),
    linear-gradient(125deg, #0d0e0d, #27251f);
  color: #f6f1e7;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .pm-carousel-heading {
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}
.home .pm-eyebrow {
  margin: 0 0 8px;
  color: var(--pm-bronze-light);
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .2em;
}
.home .pm-carousel-heading h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.8rem);
  line-height: 1.06;
}
.home .pm-carousel-heading > p:last-child {
  color: #d7d0c3;
  font-size: 1.08rem;
}
.home .pm-carousel-track .woocommerce {
  width: 100%;
}
.home .pm-carousel-track ul.products {
  display: flex !important;
  gap: 20px;
  overflow-x: auto;
  padding: 12px 8px 24px !important;
  margin: 0 !important;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--pm-bronze) rgba(255,255,255,.12);
  scrollbar-width: thin;
}
.home .pm-carousel-track ul.products::before,
.home .pm-carousel-track ul.products::after {
  display: none !important;
}
.home .pm-carousel-track ul.products li.product {
  flex: 0 0 clamp(220px, 24vw, 285px);
  width: auto !important;
  margin: 0 !important;
  scroll-snap-align: start;
  background: #f9f6ef;
  color: var(--pm-ink);
  border: 1px solid rgba(216,195,157,.34);
}
.home .pm-carousel-track .woocommerce-loop-product__title {
  color: #222 !important;
}
.home .pm-carousel-track .price {
  color: #765d36 !important;
  font-weight: 800;
}
.home .pm-carousel-hint {
  margin: 16px 0 0;
  color: #bcb3a4;
  text-align: center;
  font-size: .82rem;
  letter-spacing: .05em;
}
.home .pm-product-carousel .woocommerce-info {
  max-width: 760px;
  margin: 20px auto 0;
  color: #29251e;
}
@media (max-width: 768px) {
  .home .pm-carousel-track ul.products li.product {
    flex-basis: 78vw;
  }
}


/* Final Astra and legacy CSS overrides */
.site-header,
.site-header .ast-primary-header-bar,
.site-header .main-header-bar,
.site-header .ast-builder-grid-row-container,
.site-header .ast-main-header-wrap {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
}
.home .ast-single-post-featured-section.post-thumb {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background-color: transparent !important;
  background-image: none !important;
  background-size: auto !important;
  border: 0 !important;
}

:root {
  --pm-black: #11110f;
  --pm-charcoal: #1c1c19;
  --pm-gunmetal: #2d302f;
  --pm-bronze: #b89a68;
  --pm-bronze-light: #d8c39d;
  --pm-cream: #f4f0e7;
  --pm-warm: #e8e0d2;
  --pm-ink: #232522;
}

/* Global canvas */
body {
  background:
    radial-gradient(circle at 15% 0%, rgba(184,154,104,.12), transparent 34rem),
    var(--pm-cream);
  color: var(--pm-ink);
}
.site-content {
  background: transparent;
}
.ast-container {
  max-width: 1280px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2 {
  letter-spacing: .015em;
}
.entry-content h2,
.woocommerce-products-header__title {
  position: relative;
  padding-bottom: .55rem;
}
.entry-content h2::after,
.woocommerce-products-header__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: .55rem;
  background: linear-gradient(90deg, var(--pm-bronze), transparent);
}

/* Header */
.site-header {
  background: linear-gradient(110deg, #0d0e0d, #25241f) !important;
  border-bottom: 1px solid rgba(216,195,157,.35);
  box-shadow: 0 10px 30px rgba(0,0,0,.2);
}
.site-header .site-title a,
.site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-builder-menu-1 .menu-item > .menu-link {
  color: #f6f1e7 !important;
}
.site-header .main-header-menu > .menu-item > .menu-link:hover,
.site-header .main-header-menu > .current-menu-item > .menu-link {
  color: var(--pm-bronze-light) !important;
}
.site-header .sub-menu {
  background: #1a1a17 !important;
  border: 1px solid rgba(184,154,104,.35);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.site-header .sub-menu .menu-link {
  color: #f3ede2 !important;
}
.site-header .sub-menu .menu-link:hover {
  color: var(--pm-bronze-light) !important;
  background: rgba(184,154,104,.12);
}
.ast-header-break-point .main-header-menu {
  background: #171714;
}
.ast-header-break-point .main-header-menu .menu-link {
  color: #f4f0e7 !important;
}

/* Buttons and links */
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: linear-gradient(135deg, #c0a474, #927548) !important;
  color: #111 !important;
  border: 1px solid #d4bf98 !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
  filter: brightness(1.08);
}

/* Homepage masthead image */
.home .ast-single-post-featured-section.post-thumb {
  overflow: hidden;
  min-height: clamp(360px, 54vw, 670px);
  aspect-ratio: auto;
  margin: 0 !important;
  background-color: #0e100f;
  background-image:
    radial-gradient(circle at center, rgba(184,154,104,.12), rgba(0,0,0,.5)),
    url("https://pmcustoms.net/wp-content/uploads/2026/09/store-image-gun.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(184,154,104,.5);
}
.home .ast-single-post-featured-section.post-thumb img.wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
}
.home .entry-header .entry-title {
  display: none;
}
.home #primary,
.home .site-main,
.home .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.home .entry-content > .wp-block-group:first-child {
  background:
    linear-gradient(120deg, rgba(17,17,15,.98), rgba(42,40,33,.94)) !important;
  border-top: 1px solid rgba(216,195,157,.28);
  border-bottom: 1px solid rgba(216,195,157,.28);
}
.home .entry-content > .wp-block-group:nth-child(2),
.home .entry-content > .wp-block-group:nth-child(4) {
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(232,224,210,.72));
  border: 1px solid rgba(63,58,48,.12);
  box-shadow: 0 18px 45px rgba(40,35,26,.09);
  border-radius: 8px;
  margin-top: 54px;
  margin-bottom: 54px;
}
.home .entry-content > .wp-block-group:nth-child(3) {
  background:
    linear-gradient(rgba(235,225,205,.96), rgba(235,225,205,.96)),
    repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.03) 8px 9px) !important;
}
.home .wp-block-column {
  transition: transform .2s ease, box-shadow .2s ease;
}
.home .wp-block-column:hover {
  transform: translateY(-3px);
}

/* Interior pages */
body:not(.home) .site-content {
  padding: clamp(28px, 5vw, 64px) 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(184,154,104,.14), transparent 30rem),
    linear-gradient(180deg, #ebe5d9 0, #f7f4ed 340px);
}
body:not(.home) article,
body.woocommerce-page #primary {
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(61,56,47,.12);
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(32,28,21,.11);
  overflow: hidden;
}
body:not(.home) .entry-content,
body:not(.home) .entry-header {
  padding-left: clamp(24px, 5vw, 64px);
  padding-right: clamp(24px, 5vw, 64px);
}
/* removed: truncated, unclosed "body:not(.home) .entry-header {" fragment that swallowed every rule below it */

/* FAQ box and header spacing */
body.page-id-13 #content { padding-top: 24px !important; }
body.page-id-13 #primary { margin-top: 0 !important; }
body.page-id-13 #post-13 { padding-bottom: 40px !important; }
/* Apply padding on mobile screens up to 768px wide */

	/* PMC: carousel heading is now H2, same look as the old H1 */
	.home .pm-carousel-heading h2 { margin: 0 0 12px; color: #fff; font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.06; font-weight: 600; }/* PMC Ã¢â‚¬â€œ category page CLS fix (2026-10-21 CT). Paste at the END of Appearance Ã¢â€ â€™ Customize Ã¢â€ â€™ Additional CSS.
   Measured on /product-category/firearms/handguns/ (mobile 412px, Lighthouse CLS 0.107):
   Shift A (~0.074): the "Filter products" button (.pm-mobile-filter-toggle) is inserted by JS on
     DOMContentLoaded above #primary (50px + 16px margin), pushing the whole listing down 66px.
     Fix: reserve that space with a placeholder until the button exists.
   Shift B (~0.032): WooCommerce's stylesheet loads async (Jetpack Boost), then changes the breadcrumb
     (font .92em + 1em bottom margin) and removes the list indent on ul.products (grid moves 81pxÃ¢â€ â€™37px left).
     Fix: apply those final values up front. */

@media (max-width: 767px) {
  /* A. Reserve the filter-toggle slot (only when the sidebar has Filter Everything and the button isn't in yet). */
  body.woocommerce.archive .site-content .ast-container:has(#secondary .wpc-filters-main-wrap):not(:has(> .pm-mobile-filter-toggle))::before {
    content: "";
    display: block;
    order: 0;
    width: 100%;
    height: 50px;
    margin: 0 0 16px;
  }
}

/* B. Final WooCommerce values, set before woocommerce-general/layout CSS arrives. */
.woocommerce .woocommerce-breadcrumb { margin: 0 0 1em; font-size: .92em; }
.woocommerce ul.products { margin: 0 0 1em; padding: 0; }
/* PMC: avoid iOS zoom on filter dropdowns */ @media (max-width: 767px){ .wpc-filters-main-wrap select{font-size:16px !important;} }

/* Homepage 2nd section (intro): size "Shop Firearms" + "Contact PM Customs" like the other page buttons. Scoped to that group only. */
html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons > .wp-block-button.wp-block-button {
  width: auto !important; flex: 0 0 auto !important; max-width: 100% !important; align-self: center !important;
}
html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons > .wp-block-button > .wp-block-button__link {
  width: auto !important; display: inline-block !important; box-sizing: border-box; line-height: 1 !important; padding: 15px 30px !important; border-radius: 4px !important;
}
@media (max-width: 921px) {
  html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons > .wp-block-button > .wp-block-button__link { padding: 14px 28px !important; }
}
@media (max-width: 544px) {
  html body.home #content #post-6 .entry-content > .wp-block-group.alignfull:first-child .wp-block-buttons > .wp-block-button > .wp-block-button__link { padding: 12px 24px !important; }
}

/* PMC: breathing room between main product photo and top/left border of the product card (single product pages only) */
.single-product div.product .woocommerce-product-gallery{padding-top:14px;}
@media (min-width: 922px){ .single-product div.product .woocommerce-product-gallery{padding-left:14px;box-sizing:border-box;} }


/* Footer signup: space between email field and button (Oct 24) */
.ast-footer-copyright .jetpack_subscription_widget #subscribe-submit { margin-top: 12px; }

/* PMC product gallery CLS fix (Oct 25) */
body.woocommerce-js.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img{width:100%;height:auto;}
body.woocommerce-js.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n+2){display:none;}
body.woocommerce-js.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child:nth-last-child(n+2){padding-bottom:calc(25% + 1.25em);}
body.woocommerce-js.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child:nth-last-child(n+5){padding-bottom:calc(50% + 1.5em);}
body.woocommerce-js.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child:nth-last-child(n+9){padding-bottom:calc(75% + 1.75em);}
.single-product div.product .woocommerce-product-gallery .flex-viewport{container-type:inline-size;}
.single-product div.product .woocommerce-product-gallery .flex-viewport > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:nth-child(n){float:left;width:100cqw;}
.single-product div.product .summary a, .single-product div.product .summary{transition-property:color,background-color,border-color,opacity!important;}
/* PMC product-page CLS fix v2 (Oct 28). Append to the END of Appearance > Customize > Additional CSS.
   Measured on mobile (412px): the summary box moved down 44px, up 74px, then down 74px while the gallery settled.
   Cause 1 is the WooCommerce "woocommerce-js" body class arriving late; see the companion PHP snippet,
   which sets it as soon as the page body opens.
   Cause 2 (this rule): flexslider adds the thumbnail strip before the 100x100 thumbnail files load, so for a moment
   the strip is about 15px tall instead of about 88px. Reserve each thumbnail's square. Updated with the gallery fix (gallery-oct28):
   thumbnails become uncropped photos, so object-fit:contain shows the whole photo inside the square on white instead of
   stretching it (aspect-ratio alone would distort an uncropped wide photo). This applies ONLY to the small thumbnails under the main photo. The main gallery image is untouched: no
   fixed box, no object-fit, no crop. */
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img{aspect-ratio:1/1;width:100%;height:auto;object-fit:contain;object-position:center;background:#fff;}
/* Cause 3: the gallery's 2em bottom margin lives in a WooCommerce stylesheet that Jetpack Boost loads late. Apply the same final value up front. */
.single-product div.product .woocommerce-product-gallery{margin-bottom:2em;}

/* PMC product gallery fix (Oct 28). Product pages only. Append to the END of Appearance > Customize > Additional CSS.
   Pairs with the "PMC gallery full-photo thumbnails + no hover zoom" snippet, which makes the thumbnail files uncropped.
   1) Thumbnails under the main photo: show the WHOLE photo inside each square tile (letterboxed on white), never stretched.
      Thumbnails only. The main gallery image gets no box, no object-fit and no crop. */
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img{
  aspect-ratio:1/1;width:100%;height:auto;object-fit:contain;object-position:center;background:#fff;
}
/* 2) Additional photos (2nd photo onward) in the main slider: never taller than about one screen, never blown up wider
      than the column. Wide gun profiles are not affected (they are far below the cap). Tall photos (top views, boxes)
      shrink and centre instead of showing at ~900px tall. The first/featured photo is left exactly as it is today. */
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2) img{
  width:auto;max-width:100%;height:auto;max-height:min(600px,80vh);margin-left:auto;margin-right:auto;
}