:root {
  --background: 36 33% 96%;
  --foreground: 198 24% 16%;
  --card: 0 0% 100%;
  --card-foreground: 198 24% 16%;
  --popover: 0 0% 100%;
  --popover-foreground: 198 24% 16%;
  --primary: 193 50% 24%;
  --primary-foreground: 40 40% 98%;
  --secondary: 28 42% 32%;
  --secondary-foreground: 198 30% 14%;
  --muted: 36 22% 93%;
  --muted-foreground: 198 10% 36%;
  --accent: 168 24% 92%;
  --accent-foreground: 193 50% 20%;
  --border: 34 16% 84%;
  --input: 34 16% 84%;
  --ring: 193 50% 24%;
  --radius: 0.75rem;
}

html {
  background: #f4f1eb;
}

/* overflow-x: hidden turns this wrapper into a second vertical scroller; clip does not. */
.isolate.min-h-screen.overflow-x-hidden {
  overflow: hidden;
  overflow: clip;
}

body,
.site-paper,
.menu-square-grid,
.page-hero,
.page-hero-grid,
.home-highlights-grid {
  background-color: #f4f1eb;
  background-image: none !important;
  color: #1c2c31;
}

.home-highlights-grid,
.home-news-showcase {
  background: #f7f4ef !important;
  background-image: none !important;
}

.home-highlights-grid {
  background: #1a4652 !important;
  color: #f7f4ee !important;
}

h1,
h2,
h3,
.font-extrabold,
.font-bold {
  font-family: "Source Serif 4", "Noto Sans Ethiopic", Georgia, serif;
  letter-spacing: -0.02em;
}

.site-paper section[class*="bg-white"] {
  background-color: #fffcf8 !important;
}

.site-paper section[class*="bg-background"] {
  background-color: transparent !important;
}

.home-hero,
.bg-\[size\:32px_32px\] {
  background: #f6f3ee !important;
  background-image: none !important;
}

header {
  background: rgba(244, 241, 235, 0.92) !important;
  border-bottom: 1px solid #e5ded3 !important;
  box-shadow: none !important;
}

.text-\[\#2b3492\] {
  color: #1a4652 !important;
}

.text-\[\#817600\] {
  color: #7a6240 !important;
}

.effr-card,
.soft-card,
.water-card {
  color: #1c2c31 !important;
  background-color: #fffcf8 !important;
  background-image: none !important;
  border: 1px solid #e6dfd4 !important;
  border-radius: 1rem !important;
  box-shadow: 0 10px 28px rgba(22, 42, 48, 0.05) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.effr-card::before,
.effr-card::after,
.soft-card::before,
.soft-card::after,
.water-card::before,
.water-card::after,
.home-hero::after,
.page-hero::after,
.page-hero-panel::before,
.page-hero-grid,
.page-hero-shape {
  display: none !important;
  content: none !important;
  animation: none !important;
  background: none !important;
  box-shadow: none !important;
}

.effr-card:hover,
.effr-card:focus-within,
.soft-card:hover,
.water-card:hover {
  transform: none !important;
  border-color: #c9ddd8 !important;
  box-shadow: 0 14px 32px rgba(22, 42, 48, 0.08) !important;
  background-color: #fff !important;
}

.site-paper :is(.effr-card, .soft-card, .water-card) :is(h1, h2, h3, h4, h5, h6),
.site-paper :is(.effr-card, .soft-card, .water-card) .text-primary,
.site-paper :is(.effr-card, .soft-card, .water-card) .hover\:text-primary:hover,
.site-paper :is(.effr-card, .soft-card, .water-card) .focus-visible\:text-primary:focus-visible,
.site-paper :is(.effr-card, .soft-card, .water-card) .group:hover .group-hover\:text-primary,
.site-paper :is(.effr-card, .soft-card, .water-card) [data-state="active"],
.site-paper :is(.effr-card, .soft-card, .water-card) .\[\&\>svg\]\:text-primary > svg {
  color: #16343c !important;
}

.site-paper :is(.effr-card, .soft-card, .water-card) :is(p, li, label, .text-muted-foreground),
.site-paper :is(.effr-card, .soft-card, .water-card) .placeholder\:text-muted-foreground::placeholder {
  color: #4e5e64 !important;
}

.site-paper :is(.effr-card, .soft-card, .water-card) .btn-secondary {
  color: #1a4652 !important;
}

.btn-primary,
.btn-secondary {
  border-radius: 0.55rem !important;
  letter-spacing: 0;
}

.btn-primary {
  background-color: #1a4652 !important;
  color: #f7f4ee !important;
}

.btn-primary:hover {
  background-color: #12353e !important;
}

.btn-secondary {
  background-color: transparent !important;
  border-color: #1a4652 !important;
  color: #1a4652 !important;
}

.btn-secondary:hover {
  background-color: #e7f0ee !important;
}

.footer-grid {
  background-color: #122c33 !important;
  background-image: none !important;
}

.back-to-top-anchor {
  border-radius: 0.55rem !important;
  border-color: #e6dfd4 !important;
  background: #fffcf8 !important;
  color: #1a4652 !important;
}

input,
textarea,
select {
  border-radius: 0.55rem;
}
