/* OHM Blog — native homepage design system */
body.blog {
  margin: 0;
  color: #303030;
  background: #ebebeb;
  font-family: "PT Sans", Arial, sans-serif;
}

body.blog .ohm-native-blog {
  overflow: hidden;
  background: #ebebeb url("/wp-content/uploads/2021/05/OHM-bg-tech.webp") bottom left / cover fixed no-repeat;
}

.ohm-blog-wrap {
  width: min(1200px, calc(100% - 48px));
  margin-inline: auto;
}

.ohm-blog-hero {
  position: relative;
  padding: 112px 0 84px;
  background: rgba(235, 235, 235, .93);
}
.ohm-blog-hero .ohm-blog-wrap {
  display: grid;
  justify-items: center;
  text-align: center;
}

.ohm-blog-kicker {
  margin: 0 0 14px;
  color: #193f10;
  font: 700 13px/1.2 Montserrat, Arial, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ohm-blog-hero h1,
.ohm-blog-section-heading h2 {
  margin: 0;
  max-width: 960px;
  color: #193f10;
  font-family: Montserrat, Arial, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
}

.ohm-blog-hero h1 { font-size: clamp(46px, 5.4vw, 76px); line-height: 1.08; text-shadow: 1px 1px 2px rgba(0, 0, 0, .28); }
.ohm-blog-intro { max-width: 760px; margin: 24px auto 0; font-size: clamp(19px, 1.7vw, 24px); line-height: 1.5; }

.ohm-blog-categories { padding: 48px 0 54px; background: rgba(237, 243, 230, .95); }
.ohm-blog-categories.ohm-surface-dark .ohm-blog-kicker { color: #f5dfad; }
.ohm-blog-category-list { display: flex; flex-wrap: wrap; gap: 12px; }
.ohm-blog-category-list a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 10px 17px;
  color: #193f10;
  background: #fff;
  border: 1px solid rgba(25, 63, 16, .3);
  font: 700 15px/1.2 Montserrat, Arial, sans-serif;
  text-decoration: none;
}
.ohm-blog-category-list a span { display: grid; place-items: center; min-width: 24px; height: 24px; color: #fff; background: #6b8e3f; border-radius: 50%; font: 700 12px/1 "PT Sans", Arial, sans-serif; }
.ohm-blog-category-list a:hover,
.ohm-blog-category-list a.is-current { color: #fff; background: #193f10; border-color: #193f10; }

.ohm-blog-posts { padding: clamp(68px, 8vw, 108px) 0; background: rgba(235, 235, 235, .94); }
.ohm-blog-section-heading { margin-bottom: 42px; }
.ohm-blog-section-heading h2 { font-size: clamp(34px, 4vw, 54px); }

.ohm-post-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 22px;
}

#main.ohm-native-blog .ohm-post-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(25, 63, 16, .22);
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#main.ohm-native-blog .ohm-post-card:hover { border-color: #6b8e3f; box-shadow: 0 10px 26px rgba(25, 63, 16, .14); transform: translateY(-4px); }
.ohm-post-media { display: block; height: 230px; overflow: hidden; background: #193f10; text-decoration: none; }
.ohm-post-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.ohm-post-card:hover .ohm-post-media img { transform: scale(1.035); }
.ohm-post-placeholder { display: grid; place-items: center; width: 100%; height: 100%; color: rgba(235, 235, 235, .8); background: #193f10 url("/wp-content/uploads/2024/07/map-image-ezgif.com-png-to-webp-converter.webp") center / cover; font: 700 54px/1 Montserrat, Arial, sans-serif; }

.ohm-post-content { display: flex; flex: 1; flex-direction: column; padding: 25px; }
.ohm-post-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: #60705d; font-size: 13px; }
.ohm-post-meta a { color: #193f10; font-weight: 700; text-decoration: none; }
#main.ohm-native-blog .ohm-post-card h2 { margin: 15px 0 13px; font: 700 23px/1.25 Montserrat, Arial, sans-serif; letter-spacing: 0; }
#main.ohm-native-blog .ohm-post-card h2 a { color: #193f10; text-decoration: none; }
.ohm-post-content > p { margin: 0 0 22px; color: #4c5a4b; font-size: 16px; line-height: 1.55; }
.ohm-read-more { display: inline-flex; align-items: center; justify-content: space-between; gap: 14px; width: 100%; min-height: 48px; margin-top: auto; padding: 10px 14px; color: #fff !important; background: #193f10; border: 3px double #fff; border-radius: 8px; font: 600 18px/1 Mohave, Arial, sans-serif; text-decoration: none !important; }
.ohm-read-more:hover { color: #193f10 !important; background: #ebebeb; border-color: #193f10; }

#main.ohm-native-blog .navigation.pagination { margin-top: 48px; }
#main.ohm-native-blog .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
#main.ohm-native-blog .page-numbers { display: grid; place-items: center; min-width: 46px; min-height: 46px; padding: 10px; color: #193f10; background: #fff; border: 1px solid rgba(25, 63, 16, .3); text-decoration: none; }
#main.ohm-native-blog .page-numbers.current,
#main.ohm-native-blog a.page-numbers:hover { color: #fff; background: #193f10; }

@media (max-width: 980px) {
  .ohm-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  body.blog .ohm-native-blog { background-attachment: scroll; }
  .ohm-blog-wrap { width: min(100% - 32px, 1200px); }
  .ohm-blog-hero { padding: 88px 0 60px; }
  .ohm-blog-hero h1 { font-size: 42px; }
  .ohm-post-grid { grid-template-columns: 1fr; }
  .ohm-post-media { height: 220px; }
}
