/* Overkado ABL Internal Article/Category Overrides */
.abl-native-page {
  background: #fff;
  color: #1f2724;
}
.abl-native-container {
  max-width: 1180px;
  margin: 0 auto;
  padding-left: 32px;
  padding-right: 32px;
}
.abl-native-hero {
  background: linear-gradient(135deg, #2f6b2f 0%, #0f2a23 100%);
  color: #fff;
  padding: 96px 0 82px;
  position: relative;
  overflow: hidden;
}
.abl-native-hero:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 80% 25%, rgba(246,198,0,.18), transparent 28%), radial-gradient(circle at 15% 80%, rgba(127,175,75,.20), transparent 34%);
  pointer-events: none;
}
.abl-native-hero .abl-native-container { position: relative; z-index: 1; }
.abl-native-kicker {
  color: #7faf4b;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin: 0 0 14px;
}
.abl-native-hero .abl-native-kicker { color: #f6c600; }
.abl-native-hero h1 {
  font-size: clamp(3rem, 5.4vw, 5.4rem);
  line-height: .95;
  margin: 0 0 14px;
  font-weight: 900;
  color: #fff;
  letter-spacing: -.05em;
}
.abl-native-breadcrumb-note,
.abl-native-lead {
  color: rgba(255,255,255,.82);
  max-width: 760px;
  font-size: 1.08rem;
  line-height: 1.65;
  margin: 0;
}
.abl-native-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 72px;
  padding-top: 76px;
  padding-bottom: 88px;
}
.abl-native-content { max-width: 100%; }
.abl-native-content > .abl-article,
.abl-native-content > .abl-company-article { max-width: 100%; }
.abl-native-content h1,
.abl-native-content h2,
.abl-native-content h3 {
  color: #17201d;
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: 1.05;
}
.abl-native-content h2 { font-size: clamp(2.05rem, 3.5vw, 3.7rem); margin: 0 0 24px; }
.abl-native-content h3 { color: #2f6b2f; }
.abl-native-content p {
  color: #43504b;
  font-size: 1rem;
  line-height: 1.85;
  margin: 0 0 20px;
}
.abl-intro-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 62px;
  align-items: start;
  margin-bottom: 78px;
}
.abl-intro-copy h2 { font-size: clamp(2.2rem, 3.8vw, 4rem); }
.abl-lead { font-size: 1.12rem !important; line-height: 1.75 !important; }
.abl-highlight-card,
.abl-vision-band {
  background: #fff7d6;
  border-left: 5px solid #f6c600;
  padding: 38px;
  border-radius: 10px;
  box-shadow: 0 24px 70px rgba(47,107,47,.08);
}
.abl-highlight-card h3,
.abl-vision-band h2 {
  color: #2f6b2f;
  font-size: clamp(2rem, 3.2vw, 3.5rem);
  line-height: 1.02;
  margin: 0 0 20px;
}
.abl-content-block { margin-bottom: 78px; }
.abl-image-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin: 70px 0;
}
.abl-image-grid figure { margin: 0; }
.abl-image-grid img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  display: block;
  border-radius: 10px;
  background: #f4f4f4;
  box-shadow: 0 18px 50px rgba(0,0,0,.06);
}
.abl-image-grid figcaption { font-size: .82rem; color: #60706a; margin-top: 8px; font-style: italic; }
.abl-vision-band { margin-top: 70px; border-left: 0; background: linear-gradient(135deg, #fff7d6 0%, #fff 100%); }
.abl-native-sidebar { display: flex; flex-direction: column; gap: 24px; }
.abl-side-card {
  background: #fff;
  border-radius: 10px;
  padding: 30px;
  box-shadow: 0 18px 55px rgba(15,42,35,.08);
}
.abl-side-card-dark,
.abl-side-card-green {
  background: #0f2a23;
  color: #fff;
}
.abl-side-card h2,
.abl-side-card h3 { color: #17201d; margin: 0 0 14px; font-weight: 900; line-height: 1.05; }
.abl-side-card-dark h2,
.abl-side-card-dark h3,
.abl-side-card-green h2,
.abl-side-card-green h3 { color: #fff; }
.abl-side-card p { color: #60706a; font-size: .92rem; line-height: 1.65; margin: 0 0 12px; }
.abl-side-card-dark p,
.abl-side-card-green p { color: rgba(255,255,255,.78); }
.abl-small-btn,
.abl-btn {
  display: inline-block;
  background: #f6c600;
  color: #17201d !important;
  border-radius: 8px;
  padding: 11px 16px;
  font-weight: 900;
  text-decoration: none !important;
  margin-top: 10px;
}
.abl-native-bottom-cta {
  background: #fff7d6;
  text-align: center;
  padding: 80px 0;
}
.abl-native-bottom-cta h2 {
  color: #2f6b2f;
  font-size: clamp(2.4rem, 4vw, 4rem);
  line-height: 1;
  margin: 0 0 16px;
  font-weight: 900;
  letter-spacing: -.04em;
}
.abl-native-bottom-cta p { color: #43504b; margin-bottom: 24px; }
.abl-edit-link { text-align: right; }
/* Category blog */
.abl-category-intro { padding-top: 56px; }
.abl-category-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  padding-top: 40px;
  padding-bottom: 70px;
}
.abl-category-card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 18px 55px rgba(15,42,35,.08);
}
.abl-category-image img { width: 100%; height: 230px; object-fit: cover; display: block; }
.abl-category-card-body { padding: 26px; }
.abl-category-card h2 { font-size: 1.35rem; line-height: 1.12; margin: 0 0 12px; }
.abl-category-card h2 a { color: #17201d; text-decoration: none; }
.abl-category-card p { color: #53615b; line-height: 1.65; }
.abl-pagination {
  clear: both;
  width: 100%;
  padding: 48px 0 70px;
  text-align: center;
}
.abl-pagination > ul {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.abl-pagination > ul > li {
  display: block !important;
  float: none !important;
  width: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}
.abl-pagination > ul > li::before,
.abl-pagination > ul > li::marker {
  content: "" !important;
  display: none !important;
  font-size: 0 !important;
}
.abl-pagination > ul > li > a,
.abl-pagination > ul > li > span {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 13px;
  border: 1px solid #dfe6df;
  border-radius: 7px;
  background: #fff;
  color: #174f2a;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}
.abl-pagination > ul > li > a:hover,
.abl-pagination > ul > li.active > a,
.abl-pagination > ul > li.active > span {
  border-color: #ffcc00;
  background: #ffcc00;
  color: #112b1d;
}
.abl-pagination > ul > li.disabled > a,
.abl-pagination > ul > li.disabled > span {
  border-color: #edf0ed;
  background: #f5f7f5;
  color: #9aa49d;
  cursor: default;
}
@media (max-width: 980px) {
  .abl-native-shell { grid-template-columns: 1fr; gap: 44px; }
  .abl-intro-grid,
  .abl-image-grid,
  .abl-category-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .abl-native-container { padding-left: 22px; padding-right: 22px; }
  .abl-native-hero { padding: 72px 0 60px; }
  .abl-native-shell { padding-top: 50px; padding-bottom: 60px; }
  .abl-highlight-card,
  .abl-vision-band,
  .abl-side-card { padding: 26px; }
  .abl-pagination > ul { gap: 5px; }
  .abl-pagination > ul > li > a,
  .abl-pagination > ul > li > span {
    min-width: 36px;
    min-height: 36px;
    padding: 7px 10px;
    font-size: 13px;
  }
}