/*
Theme Name: CWT Armory
Description: Custom WordPress/WooCommerce theme for Chicks With Triggers Armory. Replicates the approved static HTML design (pink/black/white branding, Fraunces + Inter fonts, hero/card/footer patterns) as a real, editable WordPress site. Built from the CWT Armory Version 1 static site approved by the client.
Author: (built for CWT Armory)
Version: 1.0.0
Text Domain: cwt-armory
Requires Plugins: woocommerce
*/

/* ---------------------------------------------------------
   NOTE ON FONTS/CDN: the static mockup used the Tailwind Play
   CDN script for convenience. That script is explicitly NOT
   recommended for production sites (it recompiles CSS in the
   browser on every page load, which is slow). This theme uses
   plain, hand-written CSS instead, matching the exact same
   colors and layout patterns. Google Fonts are still loaded
   the same way (enqueued properly in functions.php).
--------------------------------------------------------- */

:root {
  --cwt-pink: #FF2D8E;
  --cwt-pink-hover: #D4126C;
  --cwt-ink: #0A0A0A;
  --cwt-charcoal: #1C1C1E;
  --cwt-white: #FFFFFF;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: 'Inter', sans-serif;
  color: #000;
  background: #fff;
}

.serif { font-family: 'Fraunces', serif; }

.ink { background: var(--cwt-ink); }
.charcoal { background: var(--cwt-charcoal); }
.cwt-text { color: var(--cwt-pink); }
.cwt-bg { background: var(--cwt-pink); }
.cwt-border { border-color: var(--cwt-pink); }

a { text-decoration: none; color: inherit; }
a.hover-cwt:hover { color: var(--cwt-pink); }

.wrap-max { max-width: 1200px; margin: 0 auto; }

/* Header */
.site-header {
  background: var(--cwt-ink);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 2rem;
  border-bottom: 1px solid rgba(255,45,142,0.2);
}
.site-header .logo { font-family: 'Fraunces', serif; font-size: 1.125rem; letter-spacing: 0.02em; }
.site-header nav { display: none; gap: 2rem; font-size: 0.875rem; color: #d4d4d4; }
.site-header .btn-outline {
  border: 1px solid var(--cwt-pink); color: var(--cwt-pink);
  font-size: 0.875rem; padding: 0.5rem 1rem; background: transparent;
}
@media (min-width: 768px) {
  .site-header nav { display: flex; }
}

/* Hero */
.hero {
  background: var(--cwt-ink); color: #fff;
  display: grid; grid-template-columns: 1fr; align-items: stretch;
}
@media (min-width: 768px) { .hero { grid-template-columns: 1fr 1fr; } }
.hero .hero-text {
  padding: 5rem 2.5rem; display: flex; flex-direction: column; justify-content: center; gap: 1.5rem;
  border-right: 1px solid rgba(255,45,142,0.2);
}
.hero .hero-photo {
  background: var(--cwt-charcoal); position: relative; min-height: 320px;
  display: flex; align-items: center; justify-content: center;
  color: #737373; font-size: 0.875rem; text-align: center; padding: 0 1.5rem;
}
.hero .hero-photo img { width: 100%; height: 100%; object-fit: cover; }

/* Buttons */
.btn { display: inline-block; padding: 0.75rem 1.5rem; font-weight: 500; font-size: 0.95rem; border: none; cursor: pointer; }
.btn-pink { background: var(--cwt-pink); color: #000; }
.btn-pink:hover { background: var(--cwt-pink-hover); }
.btn-dark { background: #000; color: #fff; width: 100%; padding: 0.5rem 1rem; font-size: 0.875rem; }
.btn-dark:hover { background: var(--cwt-pink-hover); }
.btn-disabled { background: #d4d4d4; color: #737373; cursor: not-allowed; }

/* Cards / product grid */
.card-grid {
  display: grid; grid-template-columns: 1fr; gap: 1.5rem;
  padding: 4rem 2.5rem;
}
@media (min-width: 768px) { .card-grid { grid-template-columns: repeat(3, 1fr); } }
.product-card { background: #fff; border: 1px solid #e5e5e5; }
.product-card .photo {
  height: 10rem; background: #171717; position: relative;
  display: flex; align-items: center; justify-content: center;
  color: #737373; font-size: 0.75rem; text-align: center; padding: 0 0.5rem;
}
.product-card .photo img { width: 100%; height: 100%; object-fit: cover; }
.product-card .badge {
  position: absolute; left: 0.5rem; top: 0.5rem;
  background: var(--cwt-pink); color: #000; font-size: 0.7rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em; padding: 0.25rem 0.5rem;
}
.product-card .body { padding: 1rem; }
.product-card .name { font-weight: 500; margin: 0 0 0.25rem; }
.product-card .caliber { font-size: 0.875rem; color: #737373; margin: 0 0 0.5rem; }
.product-card .price-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5rem; }
.product-card .price { font-weight: 500; }
.product-card .stock-badge { font-size: 0.7rem; padding: 0.2rem 0.5rem; }
.product-card .stock-in { background: #f0fdf4; color: #15803d; }
.product-card .stock-out { background: #fef2f2; color: #b91c1c; }

/* Section headings */
.section-heading { font-family: 'Fraunces', serif; font-size: 1.875rem; margin: 0 0 1rem; }

/* Footer */
.site-footer { background: var(--cwt-ink); color: #a3a3a3; font-size: 0.875rem; padding: 2.5rem; border-top: 1px solid rgba(255,45,142,0.2); }
.site-footer .footer-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; max-width: 1000px; margin: 0 auto; }
@media (min-width: 768px) { .site-footer .footer-grid { grid-template-columns: 2fr 1fr 1fr; } }
.site-footer .brand { font-family: 'Fraunces', serif; font-size: 1rem; color: #fff; }
.site-footer .footer-links { max-width: 1000px; margin: 2rem auto 0; padding-top: 1.5rem; border-top: 1px solid #262626; display: flex; flex-wrap: wrap; gap: 1.5rem; font-size: 0.75rem; }
.site-footer .copyright { max-width: 1000px; margin: 1rem auto 0; font-size: 0.75rem; color: #737373; }

/* Testimonials (placeholder-safe) */
.testimonial-block { border: 1px dashed #525252; padding: 1.25rem; color: #737373; font-style: italic; font-size: 0.875rem; }

/* Awaiting-inventory empty card */
.empty-card .name { color: #a3a3a3; }
