/* SPiBR look — mimics the original template-help design system.
 * Cream background, ALL-CAPS navy headings, orange accent links,
 * humanist sans-serif body. Overrides twentytwentyfour defaults.
 */
body {
  background-color: #faf6ef !important;
  color: #333 !important;
  font-family: "Lato", "PT Sans", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Headings: navy + ALL CAPS + regular weight + letter-spacing */
h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.wp-block-post-title {
  color: #1f1f1f !important;
  font-family: "Lato", "PT Sans", "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}
h1, .wp-block-post-title { font-size: 26px !important; margin: 22px 0 14px !important; }
h2 { font-size: 20px !important; margin: 22px 0 12px !important; }
h3 { font-size: 17px !important; margin: 22px 0 10px !important; color: #1f1f1f !important; }
h4 { font-size: 15px !important; margin: 18px 0 8px !important; }

/* Body paragraphs - justified-ish, comfortable spacing */
.entry-content p,
.wp-block-post-content p {
  margin: 0 0 14px 0 !important;
}

/* Links: warm orange + underline */
a, .wp-block-post-content a {
  color: #d97f2c !important;
  text-decoration: underline !important;
}
a:hover { color: #b8661f !important; }

/* Bullets: filled black disc, hanging-indented wrap (text-align under text) */
.entry-content ul,
.wp-block-post-content ul,
.entry-content ol,
.wp-block-post-content ol {
  margin: 0 0 18px 30px !important;
  list-style-position: outside !important;
}
.entry-content ul li,
.wp-block-post-content ul li { list-style: disc outside none !important; }
.entry-content ol li,
.wp-block-post-content ol li { list-style: decimal outside none !important; }
.entry-content li,
.wp-block-post-content li {
  margin: 0 0 8px 0 !important;
  padding-left: 4px !important;
  line-height: 1.6 !important;
}

/* Header cleanup: lighter bg, navy nav text */
.wp-site-blocks > header .wp-block-group,
header .wp-block-group {
  background-color: transparent !important;
  border-bottom: 1px solid #e5dfd0 !important;
  padding: 18px 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
/* Bigger logo */
header .wp-block-site-logo img,
header img.custom-logo {
  width: 90px !important;
  height: auto !important;
}
/* Match original logo circle/text block - keep site-title muted */
header .wp-block-site-title,
header h1.wp-block-site-title {
  font-size: 11px !important;
  color: #888 !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-weight: 400 !important;
}
header .wp-block-navigation a,
header .wp-block-site-title a {
  color: #1f1f1f !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}
header .wp-block-navigation {
  flex-grow: 0 !important;
}
header .wp-block-navigation .wp-block-navigation__container,
header .wp-block-navigation > .wp-block-page-list,
header .wp-block-navigation ul,
header nav ul {
  display: flex !important;
  gap: 22px !important;
  align-items: center !important;
}

/* Footer - single row, copyright left, social right */
footer, .wp-block-template-part[area*="footer"] {
  background-color: #f5efe2 !important;
  border-top: 3px solid #d4d4d4 !important;
  color: #555 !important;
  font-size: 11px !important;
  padding: 14px 0 !important;
  margin-top: 32px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}
footer .wp-block-group,
.wp-block-template-part[area*="footer"] .wp-block-group {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: 0 16px !important;
}
footer .wp-block-site-title,
footer h1.wp-block-site-title { display: none !important; }
footer p, footer .wp-block-paragraph { margin: 0 !important; }
footer .wp-block-social-links,
footer nav, footer .wp-block-navigation,
footer .wp-block-page-list {
  margin: 0 !important;
}
footer a {
  color: #555 !important;
  text-decoration: none !important;
  font-size: 10px !important;
  letter-spacing: 0.06em !important;
}
footer a:hover { color: #d97f2c !important; }
footer img { width: 18px !important; height: 18px !important; }

/* Image floats - left floated, indented wrap */
.wp-block-image.is-style-default figure,
figure.wp-block-image {
  float: left;
  margin: 4px 24px 10px 0 !important;
}
.wp-block-image.is-style-default img {
  border: 1px solid #e0d8c5;
  padding: 2px;
  background: #fff;
}

/* Blockquote: indented, italic */
blockquote, .wp-block-quote {
  border-left: 3px solid #d97f2c !important;
  padding-left: 16px !important;
  margin: 14px 24px !important;
  font-style: italic !important;
  color: #444 !important;
  background: transparent !important;
}

/* Buttons: match the original theme's `.button` class (black bg, white text, pill). */
.wp-block-button__link {
  background-color: #1b1b1b !important;
  color: #fff !important;
  border-radius: 20px !important;
  padding: 5px 20px 8px !important;
  font-family: "Trebuchet MS", Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 20px !important;
  text-transform: lowercase !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: background-color 200ms linear;
}
.wp-block-button__link:hover { background-color: #ffde33 !important; color: #1b1b1b !important; text-decoration: none !important; }

/* CoBlocks carousel */
.wp-block-coblocks-gallery-carousel {
  margin-bottom: 28px !important;
}
.wp-block-coblocks-gallery-carousel .swiper-container {
  background: #1f1f1f !important;
}

/* Accent cards (homepage sidebar widgets) */
.accent-card {
  border-left: 4px solid #d97f2c !important;
  background: #f5efe2 !important;
}

/* Site main content max width + comfortable padding */
.entry-content,
.wp-block-post-content {
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 8px !important;
}

/* "~~~~" dashed dividers between sections (Videos page uses these) */
.entry-content em:contains("~~~~"),
.wp-block-post-content em:contains("~~~~") {
  display: block;
  text-align: center;
  font-style: normal;
  color: #ccc;
  margin: 18px 0;
}