/* Prairie Heritage Meats — "Fresh Pasture" trial look.
   Loaded after site.css only for `python3 build.py --theme grass`.
   Same layout, swapped mood: meadow light, leaf green, a little sunshine.
   site.css names its colours after the butcher look (--char, --red…); here
   they're re-pointed, so --char is the meadow background and --red is the
   leaf green that every button uses. */

:root {
  --char: #F5F8EC;       /* page background: morning meadow */
  --char-2: #FFFFFF;     /* cards sitting on the page */
  --cream: #1E2B1A;      /* main text (14.8:1 on meadow) */
  --dim: #4E6046;        /* secondary text (6.4:1) */
  --line-dark: #D5E3C0;
  --kraft: #E3EECF;      /* soft green panels */
  --kraft-2: #EEF5E2;
  --ink: #1E2B1A;
  --soft: #46573F;       /* secondary text on green panels (6.6:1) */
  --line: #C5D8A8;
  --red: #2E6B34;        /* leaf green: buttons (white text 6.2:1) */
  --red-dark: #22542A;
  --red-ink: #2A5E2F;    /* green text on light (7:1) */
  --star: #C98A0B;
  --sun: #F4C543;        /* sunshine accents, always with dark text */
  --forest: #1F3A22;
  --display: 'Fraunces', Georgia, serif;
  --sans: 'Nunito Sans', system-ui, sans-serif;
}

/* Type: soft serif, sentence case — friendly, not shouty */
h1, h2, h3 { font-weight: 700; text-transform: none; letter-spacing: -0.015em; line-height: 1.06; font-variation-settings: "opsz" 120; }
h2 { font-size: clamp(30px, 6.5vw, 48px); }
.hero h1 { font-size: clamp(40px, 10.5vw, 68px); }
.product h1, .story-hero h1 { font-size: clamp(36px, 9vw, 58px); }
.brand b { font-size: 19px; text-transform: none; letter-spacing: 0; }
.tag h3 { font-size: 29px; }
.result-name { text-transform: none; font-size: 27px; }
.footer-brand b { text-transform: none; }
.story blockquote { text-transform: none; font-style: italic; border-left-color: var(--sun); }

/* Text that was cream-on-charcoal */
.hero-copy p, .review blockquote, .product-copy > p, .story, .page p, .page li { color: var(--soft); }
.stars .off { color: #D5E3C0; }
:focus-visible { outline-color: var(--red); }

/* Header: crisp white bar */
.site-header { background: rgba(255,255,255,.92); backdrop-filter: saturate(1.4) blur(10px); }
.nav-links a:hover { color: var(--red-ink); }

/* Sunshine bits */
.sticker, .tag-sticker { background: var(--sun); color: var(--ink); box-shadow: 0 6px 16px rgba(46,107,52,.18); }
.trust ul { box-shadow: 0 1px 0 var(--line-dark); }
.trust svg { color: var(--red); background: rgba(46,107,52,.1); }
.chips-list svg { color: var(--red); }

/* Buttons */
.btn-outline-light:hover { color: #fff; }
.chip[aria-pressed="true"] { background: var(--red); border-color: var(--red); color: #fff; }

/* Cards: clean white on soft green */
.tag, .inside-card, .sizes a, .faq details { background: #FFFFFF; }
.tag-art { background: #F6EEE4; }
.review { box-shadow: 0 1px 0 var(--line-dark); }
.cuts-grid li { border-color: #DCE8C8; }
.pills li { border-color: var(--line); background: #fff; }
.dot.s { background: #2E6B34; } .dot.r { background: #A86B1F; } .dot.l { background: #3F6E8C; } .dot.g { background: #7A866F; }

/* Form */
.field input, .field select, .field textarea, .pay label { border-color: #789467; }
.field input:focus, .field select:focus, .field textarea:focus { box-shadow: 0 0 0 3px rgba(46,107,52,.22); }
.red-band { background: var(--red); }
.red-band .label { color: #DDEBCB; }
.reserve-intro p { color: #E8F2DC; }

/* Footer: deep forest */
.footer { --cream: #F1F6E8; --dim: #BFD1AE; --line-dark: #355A39; background: var(--forest) !important; color: var(--cream); border-top-color: var(--sun); }
.footer .label { color: var(--sun); }

/* Floating bar and misc */
.float-bar { box-shadow: 0 10px 30px rgba(30,43,26,.18); }
.product-photo.badge-photo { background: var(--kraft-2); }
.thanks-icon { background: var(--red); }
