:root {
  --cfo-bg: #f7f3ea;
  --cfo-ink: #17201c;
  --cfo-green: #102a24;
  --cfo-gold: #c9a24a;
  --cfo-border: #ded4c3;
}

body {
  background:
    linear-gradient(180deg, rgba(247, 243, 234, 0.95), rgba(247, 243, 234, 1));
  color: var(--cfo-ink);
  text-rendering: optimizeLegibility;
}

header {
  background: rgba(16, 42, 36, 0.96) !important;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

header a {
  color: #fff;
}

header .rounded-lg {
  background-color: var(--cfo-gold) !important;
  color: var(--cfo-green) !important;
  border-color: rgba(201, 162, 74, 0.45) !important;
}

main > section:first-child,
main.mx-auto {
  position: relative;
}

main > section:first-child::before,
main.mx-auto::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 82% 4%, rgba(201, 162, 74, 0.16), transparent 32%),
    linear-gradient(180deg, rgba(16, 42, 36, 0.07), transparent 380px);
}

main > section:first-child {
  overflow: hidden;
}

main > section:first-child h1,
main.mx-auto h1 {
  max-width: 980px;
}

main > section:first-child .rounded-2xl,
main.mx-auto .rounded-2xl {
  border-color: rgba(201, 162, 74, 0.22) !important;
}

main > section:first-child .rounded-2xl:hover,
main.mx-auto a.rounded-2xl:hover {
  border-color: rgba(201, 162, 74, 0.58) !important;
}

h1,
h2,
h3 {
  letter-spacing: 0;
}

h1 {
  color: var(--cfo-green) !important;
}

.text-\[\#b45309\] {
  color: var(--cfo-gold) !important;
}

.text-\[\#064e3b\] {
  color: var(--cfo-green) !important;
}

.bg-\[\#064e3b\] {
  background-color: var(--cfo-green) !important;
}

.border-\[\#e2e0d9\] {
  border-color: var(--cfo-border) !important;
}

.rounded-xl,
.rounded-2xl {
  border-radius: 12px !important;
}

.shadow-sm {
  box-shadow: 0 20px 50px -34px rgba(16, 42, 36, 0.45) !important;
}

.seo-panel {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(222, 212, 195, 0.85);
  border-radius: 16px;
  box-shadow: 0 24px 60px -36px rgba(16, 42, 36, 0.42);
}

.seo-cta-band {
  background:
    linear-gradient(135deg, rgba(16, 42, 36, 0.98), rgba(22, 35, 31, 0.96)),
    radial-gradient(circle at 88% 18%, rgba(201, 162, 74, 0.2), transparent 32%);
  color: #fff;
}

.seo-cta-band h2,
.seo-cta-band p {
  color: #fff !important;
}

.seo-cta-band a {
  background-color: var(--cfo-gold) !important;
  color: var(--cfo-green) !important;
}

@media (max-width: 640px) {
  header > div {
    gap: 12px;
  }

  header a:first-child {
    font-size: 15px;
    line-height: 1.2;
  }

  h1 {
    font-size: 32px !important;
    line-height: 1.12 !important;
  }
}

a.rounded-lg,
a.rounded-2xl,
button.rounded-lg {
  transition: transform 160ms ease, filter 160ms ease, border-color 160ms ease;
}

a.rounded-lg:hover,
a.rounded-2xl:hover,
button.rounded-lg:hover {
  transform: translateY(-1px);
}
