/* Good Eats theme — supplementary CSS for effects theme.json can't express.
   Color/typography tokens come from theme.json; this file handles layout
   quirks, the charred-edge dividers, hero smoke, and hover states. */

:root {
  --ge-line: rgba(240, 230, 214, 0.14);
}

html { scroll-behavior: smooth; }
::selection { background: var(--wp--preset--color--ember); color: var(--wp--preset--color--cream); }

/* ---------- NAV ---------- */
.ge-nav {
  background: linear-gradient(180deg, rgba(24,18,16,0.96), rgba(24,18,16,0.85));
  border-bottom: 1px solid var(--ge-line);
  backdrop-filter: blur(6px);
  z-index: 100;
  padding: 14px 24px;
}
.ge-brand { line-height: 1; gap: 0 !important; }
.ge-brand-eyebrow {
  letter-spacing: .22em;
  color: var(--wp--preset--color--smoke);
  text-transform: uppercase;
  margin: 0;
}
.ge-brand-name {
  font-family: var(--wp--preset--font-family--display);
  font-size: 26px;
}
.ge-cart-btn .wp-block-button__link { display: flex; align-items: center; gap: 8px; }
.ge-cart-count {
  background: var(--wp--preset--color--char-black);
  color: var(--wp--preset--color--ember-hot);
  font-family: var(--wp--preset--font-family--heading);
  font-size: 12px;
  min-width: 20px;
  height: 20px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* ---------- HERO ---------- */
.ge-hero {
  position: relative;
  text-align: center;
  background:
    radial-gradient(ellipse 60% 50% at 50% 15%, rgba(217,72,31,0.18), transparent 60%),
    radial-gradient(circle at 20% 80%, rgba(74,49,32,0.5), transparent 45%),
    radial-gradient(circle at 85% 70%, rgba(74,49,32,0.35), transparent 40%),
    linear-gradient(180deg, var(--wp--preset--color--char-black-2), var(--wp--preset--color--char-black) 55%);
  overflow: hidden;
}
.ge-hero-eyebrow {
  letter-spacing: .35em;
  text-transform: uppercase;
  color: var(--wp--preset--color--gold-light);
}
.ge-hero-eyebrow::before { content: '— '; color: var(--wp--preset--color--ember-dim); }
.ge-hero-eyebrow::after { content: ' —'; color: var(--wp--preset--color--ember-dim); }
.ge-hero-title {
  line-height: 0.98;
  text-shadow: 0 0 30px rgba(255,122,53,0.35), 0 0 80px rgba(217,72,31,0.2);
}
.ge-hero-title .ge-hot {
  background: none;
  color: var(--wp--preset--color--ember-hot);
}
.ge-hero-sub {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
  color: var(--wp--preset--color--cream-dim);
  font-weight: 500;
}
.ge-hero-sub strong { color: var(--wp--preset--color--gold-light); }

/* Charred edge divider between sections */
.ge-char-edge {
  height: 34px;
  width: 100%;
  background: var(--wp--preset--color--char-black);
  clip-path: polygon(0% 100%,0% 30%,4% 60%,8% 15%,13% 55%,18% 20%,23% 65%,28% 25%,33% 58%,38% 10%,43% 50%,48% 22%,53% 62%,58% 18%,63% 55%,68% 28%,73% 60%,78% 15%,83% 55%,88% 25%,93% 60%,96% 20%,100% 50%,100% 100%);
}
.ge-char-edge-flip { transform: rotate(180deg); }

/* ---------- SECTION HEADERS ---------- */
.ge-sec-eyebrow {
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--wp--preset--color--ember-hot);
  font-family: var(--wp--preset--font-family--heading);
}
.ge-sec-desc {
  color: var(--wp--preset--color--cream-dim);
  max-width: 620px;
}

/* ---------- MISSION ---------- */
.ge-mission { background: var(--wp--preset--color--char-black-2); }
.ge-mission-grid { gap: 2px !important; background: var(--ge-line); margin-top: 40px; }
.ge-pillar {
  background: var(--wp--preset--color--char-black-2);
  padding: 36px 28px;
  min-height: 220px;
}
.ge-pillar-label {
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--wp--preset--color--gold-light);
  font-family: var(--wp--preset--font-family--heading);
}
.ge-mission-quote {
  margin-top: 48px;
  border: 1px solid var(--ge-line);
  border-left: 4px solid var(--wp--preset--color--ember);
  padding: 36px 40px;
  background: rgba(217,72,31,0.05);
}
.ge-mission-quote cite {
  display: block;
  margin-top: 18px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--wp--preset--color--smoke);
  font-style: normal;
  font-family: var(--wp--preset--font-family--heading);
  font-size: 12px;
}

/* ---------- INSTAGRAM ---------- */
.ge-instagram { text-align: center; }
.ge-insta-grid.wp-block-gallery { gap: 4px !important; margin-top: 32px; }
.ge-insta-grid figure img { aspect-ratio: 1/1; object-fit: cover; }
.ge-insta-handle {
  font-family: var(--wp--preset--font-family--heading);
  color: var(--wp--preset--color--gold-light);
  margin: 0;
}

/* ---------- FOOTER ---------- */
.ge-footer { padding: 60px 0 30px; border-top: 1px solid var(--ge-line); }
.ge-footer h5 {
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--wp--preset--color--gold-light);
  font-family: var(--wp--preset--font-family--heading);
  font-size: 12px;
}
.ge-footer a { color: var(--wp--preset--color--cream-dim); text-decoration: none; }
.ge-footer a:hover { color: var(--wp--preset--color--ember-hot); }
.ge-footer-rule { border-color: var(--ge-line); margin: 24px 0; }

@media (max-width: 782px) {
  .ge-mission-grid, .wp-block-columns.ge-mission-grid { flex-wrap: wrap; }
  .ge-insta-grid.wp-block-gallery.columns-4 { --wp--style--gallery-image-count: 2; }
}
