.apotek-bpjs-madiun__eyebrow {
  margin: 0 0 var(--abm-space-3);
  color: var(--abm-color-teal);
  font-size: .8125rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.abm-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.25rem;
  padding: .75rem 1.25rem;
  border: 1px solid transparent;
  border-radius: var(--abm-radius-pill);
  font-weight: 800;
  line-height: 1.25;
  text-decoration: none;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}

.abm-button:hover { transform: translateY(-1px); }
.abm-button--primary { background: var(--abm-color-saffron); color: var(--abm-color-deep-teal); }
.abm-button--primary:hover { background: #E3B649; color: var(--abm-color-deep-teal); }
.abm-button--secondary { border-color: currentColor; color: inherit; }

.abm-card {
  min-width: 0;
  padding: var(--abm-space-5);
  border: 1px solid var(--abm-color-border);
  border-radius: var(--abm-radius-card);
  background: var(--abm-color-white);
  box-shadow: var(--abm-shadow-card);
}

.abm-card:hover { box-shadow: var(--abm-shadow-hover); }

.apotek-bpjs-madiun__topic-grid,
.apotek-bpjs-madiun__category-grid,
.apotek-bpjs-madiun__situation-grid,
.apotek-bpjs-madiun__article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--abm-space-4);
}

.apotek-bpjs-madiun__topic-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.apotek-bpjs-madiun__situation-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.abm-section-heading { margin-bottom: var(--abm-space-5); }
.abm-section-heading h2 { margin: 0 0 var(--abm-space-2); }
.abm-section-heading p { margin: 0; }

.abm-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 3.375rem); align-items: center; }
.abm-split__media { overflow: hidden; border-radius: var(--abm-radius-large); background: var(--abm-color-mist); }
.abm-split__media img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

.abm-list { display: grid; gap: var(--abm-space-3); margin: var(--abm-space-5) 0 0; padding: 0; list-style: none; }
.abm-list li { display: grid; grid-template-columns: auto 1fr; gap: var(--abm-space-3); align-items: start; }
.abm-list__marker { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border-radius: 50%; background: var(--abm-color-teal); color: var(--abm-color-white); font-size: .875rem; font-weight: 800; }

.abm-faq { display: grid; gap: var(--abm-space-3); }
.abm-faq__item { overflow: hidden; border: 1px solid var(--abm-color-border); border-radius: var(--abm-radius-card); background: var(--abm-color-white); }
.abm-faq__button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: var(--abm-space-4); padding: var(--abm-space-4) var(--abm-space-5); border: 0; background: transparent; color: var(--abm-color-text); font: inherit; font-weight: 800; text-align: left; }
.abm-faq__panel { padding: 0 var(--abm-space-5) var(--abm-space-5); color: var(--abm-color-muted); }

.abm-quick-path { width: 100%; border-collapse: collapse; }
.abm-quick-path th,
.abm-quick-path td { padding: var(--abm-space-3); border-bottom: 1px solid var(--abm-color-border); text-align: left; vertical-align: top; }
.abm-quick-path th { color: var(--abm-color-deep-teal); font-size: .875rem; }

.abm-back-to-top { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: var(--abm-space-2) var(--abm-space-4); border: 1px solid var(--abm-color-border); border-radius: var(--abm-radius-pill); background: var(--abm-color-white); color: var(--abm-color-deep-teal); font: inherit; font-weight: 700; }

/* Template component contract: each selector below is emitted by the child theme. */
.apotek-bpjs-madiun__container {
  width: min(100% - (var(--abm-gutter) * 2), var(--abm-container));
  margin-inline: auto;
}

.apotek-bpjs-madiun__reading-width { width: min(100% - (var(--abm-gutter) * 2), var(--abm-reading)); }

.apotek-bpjs-madiun__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.25rem;
  padding: .75rem 1.25rem;
  border: 1px solid transparent;
  border-radius: var(--abm-radius-pill);
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}

.apotek-bpjs-madiun__button:hover { transform: translateY(-1px); }
.apotek-bpjs-madiun__button--saffron { background: var(--abm-color-saffron); color: var(--abm-color-deep-teal); }
.apotek-bpjs-madiun__button--saffron:hover { background: #E3B649; color: var(--abm-color-deep-teal); }
.apotek-bpjs-madiun__button--outline { border-color: rgb(255 255 255 / 70%); color: var(--abm-color-white); }
.apotek-bpjs-madiun__button--outline:hover { background: rgb(255 255 255 / 10%); color: var(--abm-color-white); }

.apotek-bpjs-madiun__card {
  min-width: 0;
  padding: var(--abm-space-5);
  border: 1px solid var(--abm-color-border);
  border-radius: var(--abm-radius-card);
  background: var(--abm-color-white);
  box-shadow: var(--abm-shadow-card);
}

.apotek-bpjs-madiun__card:hover { box-shadow: var(--abm-shadow-hover); }
.apotek-bpjs-madiun__card h3 { margin: 0 0 var(--abm-space-2); }
.apotek-bpjs-madiun__card p { margin: 0; color: var(--abm-color-muted); }
.apotek-bpjs-madiun__card-number { display: block; margin-bottom: var(--abm-space-5); color: var(--abm-color-teal); font-size: .8125rem; font-weight: 900; letter-spacing: .12em; }
.apotek-bpjs-madiun__topic-card .apotek-bpjs-madiun__text-link { display: inline-flex; margin-top: var(--abm-space-5); }

.apotek-bpjs-madiun__card-grid,
.apotek-bpjs-madiun__article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--abm-space-4);
}

.apotek-bpjs-madiun__card-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.apotek-bpjs-madiun__text-link { color: var(--abm-color-teal); font-weight: 800; text-decoration: none; }
.apotek-bpjs-madiun__text-link:hover { color: var(--abm-color-focus); text-decoration: underline; text-underline-offset: .25rem; }

.apotek-bpjs-madiun__section-heading { max-width: 46rem; margin-bottom: var(--abm-space-5); }
.apotek-bpjs-madiun__section-heading h2 { margin: 0 0 var(--abm-space-2); }
.apotek-bpjs-madiun__section-heading p { margin: 0; color: var(--abm-color-muted); }

.apotek-bpjs-madiun__content-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 3.375rem); align-items: center; }
.apotek-bpjs-madiun__content-split--reverse .apotek-bpjs-madiun__content-media { order: 2; }
.apotek-bpjs-madiun__content-media { overflow: hidden; border-radius: var(--abm-radius-large); background: var(--abm-color-mist); }
.apotek-bpjs-madiun__content-media img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.apotek-bpjs-madiun__media-placeholder { display: grid; width: 100%; min-height: 16rem; place-items: center; padding: var(--abm-space-5); background: var(--abm-color-mist); color: var(--abm-color-muted); font-weight: 800; text-align: center; }
.apotek-bpjs-madiun__content-copy > p:not(.apotek-bpjs-madiun__eyebrow) { color: var(--abm-color-muted); }

.apotek-bpjs-madiun__check-list { display: grid; gap: var(--abm-space-3); margin: var(--abm-space-5) 0 0; padding: 0; list-style: none; }
.apotek-bpjs-madiun__check-list li { display: grid; grid-template-columns: 1.5rem 1fr; gap: var(--abm-space-2); color: var(--abm-color-text); }
.apotek-bpjs-madiun__check-list li::before { content: "✓"; display: grid; width: 1.5rem; height: 1.5rem; place-items: center; border-radius: 50%; background: var(--abm-color-teal); color: var(--abm-color-white); font-size: .8rem; font-weight: 900; }

.apotek-bpjs-madiun__faq-list { display: grid; gap: var(--abm-space-3); }
.apotek-bpjs-madiun__faq-item { overflow: hidden; border: 1px solid var(--abm-color-border); border-radius: var(--abm-radius-card); background: var(--abm-color-white); }
.apotek-bpjs-madiun__faq-item h3 { margin: 0; }
.apotek-bpjs-madiun__faq-item button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: var(--abm-space-4); padding: var(--abm-space-4) var(--abm-space-5); border: 0; background: transparent; color: var(--abm-color-text); font: inherit; font-weight: 800; text-align: left; }
.apotek-bpjs-madiun__faq-item button::after { content: "+"; color: var(--abm-color-teal); font-size: 1.35rem; }
.apotek-bpjs-madiun__faq-item button[aria-expanded="true"]::after { content: "−"; }
.apotek-bpjs-madiun__faq-item [data-abm-faq-panel] { padding: 0 var(--abm-space-5) var(--abm-space-5); color: var(--abm-color-muted); }
.apotek-bpjs-madiun__faq-item [data-abm-faq-panel] p { margin: 0; }

.apotek-bpjs-madiun__table-wrap { overflow-x: auto; border: 1px solid var(--abm-color-border); border-radius: var(--abm-radius-card); background: var(--abm-color-white); }
.apotek-bpjs-madiun__quick-table { width: 100%; border-collapse: collapse; }
.apotek-bpjs-madiun__quick-table th,
.apotek-bpjs-madiun__quick-table td { padding: var(--abm-space-3) var(--abm-space-4); border-bottom: 1px solid var(--abm-color-border); text-align: left; vertical-align: top; }
.apotek-bpjs-madiun__quick-table th { color: var(--abm-color-deep-teal); font-size: .875rem; }
.apotek-bpjs-madiun__quick-table tr:last-child td { border-bottom: 0; }

.apotek-bpjs-madiun__article-card { overflow: hidden; border: 1px solid var(--abm-color-border); border-radius: var(--abm-radius-card); background: var(--abm-color-white); box-shadow: var(--abm-shadow-card); }
.apotek-bpjs-madiun__article-media { display: block; overflow: hidden; background: var(--abm-color-mist); }
.apotek-bpjs-madiun__article-media img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .2s ease; }
.apotek-bpjs-madiun__article-media .apotek-bpjs-madiun__media-placeholder { min-height: 0; aspect-ratio: 16 / 9; }
.apotek-bpjs-madiun__article-card:hover .apotek-bpjs-madiun__article-media img { transform: scale(1.025); }
.apotek-bpjs-madiun__article-body { padding: var(--abm-space-5); }
.apotek-bpjs-madiun__article-body h3 { margin: .25rem 0 var(--abm-space-2); }
.apotek-bpjs-madiun__article-body h3 a { color: var(--abm-color-text); text-decoration: none; }
.apotek-bpjs-madiun__article-body p:not(.apotek-bpjs-madiun__article-meta) { color: var(--abm-color-muted); }
.apotek-bpjs-madiun__article-meta { margin: 0; color: var(--abm-color-teal); font-size: .8125rem; font-weight: 800; }
.apotek-bpjs-madiun__empty-state { padding: var(--abm-space-5); border: 1px dashed var(--abm-color-border); border-radius: var(--abm-radius-card); color: var(--abm-color-muted); }

.apotek-bpjs-madiun__back-top { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: var(--abm-space-2) var(--abm-space-4); border: 1px solid rgb(255 255 255 / 36%); border-radius: var(--abm-radius-pill); color: var(--abm-color-white); font-weight: 800; text-decoration: none; }
.apotek-bpjs-madiun__back-top:hover { color: var(--abm-color-white); background: rgb(255 255 255 / 10%); }


/* Article hub: broad editorial cards; shared homepage cards keep their shell. */
body.page-id-22 .apotek-bpjs-madiun__section--mist { padding-block: clamp(2.5rem, 5vw, 4rem); background: transparent; }
body.page-id-22 .apotek-bpjs-madiun__article-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 2.5vw, 2.25rem); align-items: start; }
body.page-id-22 .apotek-bpjs-madiun__article-card {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.page-id-22 .apotek-bpjs-madiun__article-media { border-radius: var(--abm-radius-card); }
body.page-id-22 .apotek-bpjs-madiun__article-body { padding: var(--abm-space-3) 0 0; }
body.page-id-22 .apotek-bpjs-madiun__article-meta { text-transform: uppercase; letter-spacing: .08em; }
body.page-id-22 .apotek-bpjs-madiun__article-body h3 { margin: .45rem 0 .5rem; font-size: clamp(1.125rem, 1.6vw, 1.375rem); line-height: 1.28; }
body.page-id-22 .apotek-bpjs-madiun__article-body h3 a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .17em; }
body.page-id-22 .apotek-bpjs-madiun__article-body p:not(.apotek-bpjs-madiun__article-meta) {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: .95rem;
  line-height: 1.6;
}
body.page-id-22 .apotek-bpjs-madiun__article-body .apotek-bpjs-madiun__text-link { display: inline-flex; margin-top: var(--abm-space-3); }


@media (max-width: 1023px) {
  body.page-id-22 .apotek-bpjs-madiun__article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  body.page-id-22 .apotek-bpjs-madiun__article-grid { grid-template-columns: 1fr; }
}
