/*
Theme Name: Astra Bass Pro Child
Template: astra
Version: 2.0
Description: Texas Gun Shop — Bass Pro Shops style
*/
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Open+Sans:wght@400;500;600&display=swap');

/* ═══ FONTS ═══ */
body { font-family: "Open Sans", sans-serif !important; }
h1,h2,h3,h4,h5,h6,.ast-title,.site-title { font-family: "Oswald", sans-serif !important; }

/* ═══ ASTRA HEADER ═══ */
.ast-primary-header-bar, .ast-header-break-point .ast-primary-header-bar,
#masthead, .site-header, .main-header-bar {
  background: #ffffff !important;
  border-bottom: 3px solid #00693e !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}
.ast-site-title-wrap .site-title a,
.ast-header-logo-area .ast-site-title a {
  color: #00693e !important;
  font-family: "Oswald", sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

/* ═══ ASTRA NAVIGATION ═══ */
.ast-primary-header-bar #site-navigation,
.main-navigation, #site-navigation,
.ast-nav-menu-area { background: #1a1a1a !important; }

.main-navigation .ast-primary-nav ul li a,
.main-navigation ul li a,
#site-navigation ul li a,
.ast-nav-menu-area ul li a,
.main-navigation > ul > li > a {
  color: #ffffff !important;
  font-family: "Oswald", sans-serif !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  letter-spacing: 0.8px !important;
}
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a,
.main-navigation ul li.current_page_ancestor > a {
  color: #c8521a !important;
}
.main-navigation .sub-menu,
.main-navigation ul ul { background: #111 !important; }

/* Astra Mobile Hamburger */
.ast-header-break-point .main-navigation { background: #1a1a1a !important; }
.menu-toggle, button.menu-toggle {
  background: #00693e !important;
  color: #fff !important;
  border-color: #00693e !important;
}
.ast-mobile-menu-buttons .menu-toggle { background: #00693e !important; color: #fff !important; }

/* ═══ ASTRA FOOTER ═══ */
#colophon, .site-footer, .ast-site-footer,
footer.site-footer { background: #1a1a1a !important; border-top: 4px solid #00693e !important; }
.site-footer .ast-footer-copyright, .ast-small-footer { background: #111 !important; color: #666 !important; }
.site-footer, .site-footer a, .widget-area a,
#colophon, #colophon a { color: #ccc !important; }
.site-footer a:hover, #colophon a:hover { color: #c8521a !important; }
.widget-title, .footer-widget-title {
  font-family: "Oswald", sans-serif !important;
  color: #fff !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid #00693e !important;
  padding-bottom: 8px !important;
}

/* ═══ BUTTONS ═══ */
.ast-btn, .ast-button, .button,
input[type="submit"], button[type="submit"],
.woocommerce a.button, .woocommerce button.button,
.add_to_cart_button, .single_add_to_cart_button,
.checkout-button {
  background: #c8521a !important;
  color: #fff !important;
  border-color: #c8521a !important;
  font-family: "Oswald", sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-radius: 2px !important;
}
.ast-btn:hover, .button:hover, .add_to_cart_button:hover,
.single_add_to_cart_button:hover {
  background: #a8421a !important;
  border-color: #a8421a !important;
  color: #fff !important;
}

/* ═══ WOOCOMMERCE PRICES ═══ */
.woocommerce .price .amount, .woocommerce .price bdi, ins .amount { color: #c8521a !important; font-weight: 700 !important; }
del .amount { color: #999 !important; }
.onsale { background: #c8521a !important; color: #fff !important; }

/* ═══ LINKS ═══ */
a { color: #00693e !important; }
a:hover { color: #c8521a !important; }

/* ═══ PAGE CONTENT AREA ═══ */
.ast-container { max-width: 100% !important; padding: 0 !important; }
.entry-content { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.ast-separate-container .ast-article-single { padding: 0 !important; }
.site-content .ast-container { padding: 0 !important; }
.post-type-page.page-id-78 .entry-content,
.page-id-78 .site-content { padding: 0 !important; }

/* ═══ MOBILE RESPONSIVE ═══ */
@media (max-width: 921px) {
  .ast-header-break-point .site-header { background: #ffffff !important; border-bottom: 3px solid #00693e !important; }
  .ast-header-break-point .main-navigation,
  .ast-header-break-point #site-navigation { background: #1a1a1a !important; }
  .ast-header-break-point .main-navigation ul li a { color: #fff !important; border-bottom: 1px solid #333 !important; }
  .ast-header-break-point .main-navigation ul li a:hover { color: #c8521a !important; }
}

/* ═══ HOMEPAGE FULL WIDTH OVERRIDES ═══ */
.page-id-78 #primary,
.page-id-78 .site-content,
.page-id-78 #content,
.page-id-78 .ast-container {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-78 .entry-content,
.page-id-78 article.page,
.page-id-78 .ast-separate-container .ast-article-single,
.page-id-78 .ast-single-post-order {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-78 .site-content > .ast-container { padding: 0 !important; }
/* Remove Astra page header spacing */
.page-id-78 .ast-hero-section, .page-id-78 .ast-page-header { display: none !important; }
/* Ensure entry content flows edge to edge */
.page-id-78.ast-separate-container .ast-article-post-format-image,
.page-id-78 .ast-page-builder-template #main { padding: 0 !important; }

/* ═══ TGS HOMEPAGE CLASSES ═══ */
/* Fix homepage content rendering */
.page-id-78 .entry-content > p:empty { display: none; }

/* HERO */
.tgs-hero { background: linear-gradient(135deg, #0d2010 0%, #1a3a1f 60%, #00693e 100%); padding: 80px 20px; text-align: center; }
.tgs-badge { display: inline-block; background: #c8521a; color: #fff; font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; padding: 6px 20px; border-radius: 2px; margin-bottom: 20px; font-family: "Oswald",sans-serif; }
.tgs-hero h1 { font-family: "Oswald",sans-serif !important; font-size: clamp(28px,5vw,56px) !important; font-weight: 700 !important; color: #fff !important; text-transform: uppercase !important; line-height: 1.1 !important; margin: 0 0 16px !important; }
.tgs-hero h1 span { color: #c8521a !important; }
.tgs-hero > p { font-size: 16px; color: rgba(255,255,255,0.8); max-width: 560px; margin: 0 auto 28px; line-height: 1.7; font-family: "Open Sans",sans-serif; }
.tgs-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.tgs-btn-primary { background: #c8521a; color: #fff !important; padding: 14px 30px; font-family: "Oswald",sans-serif; font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 1px; border-radius: 2px; display: inline-block; text-decoration: none !important; }
.tgs-btn-primary:hover { background: #a8421a; color: #fff !important; }
.tgs-btn-outline { background: transparent; color: #fff !important; padding: 14px 30px; font-family: "Oswald",sans-serif; font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 1px; border-radius: 2px; border: 2px solid rgba(255,255,255,0.5); display: inline-block; text-decoration: none !important; }
.tgs-btn-outline:hover { border-color: #fff; }

/* TRUST BAR */
.tgs-trust { background: #00693e; padding: 14px 20px; }
.tgs-trust-wrap { display: flex; justify-content: space-around; flex-wrap: wrap; gap: 12px; max-width: 1200px; margin: 0 auto; }
.tgs-trust-item { display: flex; align-items: center; gap: 8px; color: #fff; font-family: "Open Sans",sans-serif; font-size: 13px; }
.tgs-trust-item strong { font-family: "Oswald",sans-serif; text-transform: uppercase; letter-spacing: 0.5px; color: #fff !important; }

/* SECTIONS */
.tgs-section { max-width: 1200px; margin: 0 auto; padding: 50px 20px; }
.tgs-section-grey { background: #f4f4f4; }
.tgs-section-dark { background: #1a1a1a; }
.tgs-section-green { background: #00693e; }
.tgs-heading { text-align: center; margin-bottom: 36px; }
.tgs-heading h2 { font-family: "Oswald",sans-serif !important; font-size: clamp(20px,3vw,30px) !important; font-weight: 700 !important; color: #1a1a1a !important; text-transform: uppercase !important; letter-spacing: 1px !important; margin: 0 0 8px !important; }
.tgs-heading p { color: #666; font-size: 14px; font-family: "Open Sans",sans-serif; margin: 0; }

/* CATEGORY GRID */
.tgs-cats { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
@media(max-width:900px){ .tgs-cats { grid-template-columns: repeat(3,1fr); } }
@media(max-width:600px){ .tgs-cats { grid-template-columns: repeat(2,1fr); } }
.tgs-cat { background: #fff; border: 1px solid #e5e5e5; border-radius: 4px; padding: 22px 14px; text-align: center; display: block; color: #1a1a1a !important; text-decoration: none !important; transition: all 0.2s; }
.tgs-cat:hover { border-color: #00693e; box-shadow: 0 4px 14px rgba(0,105,62,0.12); transform: translateY(-2px); }
.tgs-cat-icon { font-size: 32px; margin-bottom: 10px; }
.tgs-cat-name { font-family: "Oswald",sans-serif; font-size: 13px; font-weight: 600; text-transform: uppercase; color: #1a1a1a; margin-bottom: 4px; letter-spacing: 0.5px; }
.tgs-cat-count { font-size: 11px; color: #00693e; font-weight: 600; font-family: "Open Sans",sans-serif; }

/* WHY US */
.tgs-why { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid #e5e5e5; border-radius: 4px; overflow: hidden; }
@media(max-width:700px){ .tgs-why { grid-template-columns: repeat(2,1fr); } }
.tgs-why-item { padding: 28px 18px; text-align: center; border-right: 1px solid #e5e5e5; background: #fff; }
.tgs-why-item:last-child { border-right: none; }
.tgs-why-icon { font-size: 30px; margin-bottom: 10px; }
.tgs-why-title { font-family: "Oswald",sans-serif; font-size: 13px; font-weight: 700; text-transform: uppercase; color: #1a1a1a; margin-bottom: 6px; letter-spacing: 0.5px; }
.tgs-why-desc { font-size: 12px; color: #666; line-height: 1.5; font-family: "Open Sans",sans-serif; }

/* CTA BANNER */
.tgs-cta { background: #00693e; padding: 44px 20px; text-align: center; }
.tgs-cta h2 { font-family: "Oswald",sans-serif !important; font-size: clamp(18px,3vw,28px) !important; color: #fff !important; text-transform: uppercase !important; letter-spacing: 1px !important; margin: 0 0 10px !important; }
.tgs-cta p { color: rgba(255,255,255,0.88); font-size: 15px; margin: 0 0 20px; font-family: "Open Sans",sans-serif; }
.tgs-view-all { display: inline-block; margin-top: 28px; background: #1a1a1a; color: #fff !important; padding: 12px 26px; font-family: "Oswald",sans-serif; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 1px; border-radius: 2px; text-decoration: none !important; }
.tgs-view-all:hover { background: #000; }

/* WC product grid override for homepage */
.page-id-78 .woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4,1fr) !important; gap: 20px !important; list-style: none !important; padding: 0 !important; }
@media(max-width:900px){ .page-id-78 .woocommerce ul.products { grid-template-columns: repeat(3,1fr) !important; } }
@media(max-width:600px){ .page-id-78 .woocommerce ul.products { grid-template-columns: repeat(2,1fr) !important; } }
.page-id-78 .woocommerce-loop-product__title { font-family: "Oswald",sans-serif !important; font-size: 15px !important; color: #1a1a1a !important; }

/* PRODUCT GRID (PHP-rendered) */
.tgs-product-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
@media(max-width:900px){ .tgs-product-grid { grid-template-columns: repeat(3,1fr); } }
@media(max-width:600px){ .tgs-product-grid { grid-template-columns: repeat(2,1fr); } }
.tgs-product-card { background: #fff; border: 1px solid #e5e5e5; border-radius: 4px; overflow: hidden; transition: box-shadow 0.2s; }
.tgs-product-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
.tgs-product-img { display: block; position: relative; }
.tgs-product-img img { width: 100%; height: 200px; object-fit: cover; display: block; }
.tgs-product-img .onsale { position: absolute; top: 10px; left: 10px; padding: 3px 8px; font-size: 11px; font-weight: 700; border-radius: 2px; }
.tgs-product-info { padding: 14px; }
.tgs-product-title { font-family: "Oswald",sans-serif; font-size: 14px; font-weight: 600; color: #1a1a1a !important; display: block; margin-bottom: 8px; text-decoration: none !important; line-height: 1.3; }
.tgs-product-title:hover { color: #00693e !important; }
.tgs-product-price { margin-bottom: 12px; font-weight: 700; color: #c8521a; }
.tgs-add-to-cart { display: block; width: 100%; text-align: center; padding: 10px; font-size: 12px; }
