/* ============================================================
   PM-ARTICLE.CSS — ported from the demo (allpages-2/assets/css/pages/news-article.css).
   Every class has the pm- prefix and every rule is scoped to
   Parkmatic widgets:  .elementor-widget[class*="elementor-widget-pm-"]
   Generated by tools/port_css.py from the demo file — keep changes small;
   WordPress-only fixes go in pm-wp.css.
   ============================================================ */
.elementor-widget[class*="elementor-widget-pm-"] .pm-article-page .pm-container {
  max-inline-size: var(--pm-container-max);
  margin-inline: auto;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-reading-progress {
  position: fixed;
  inset-block-start: var(--pm-navbar-height);
  inset-inline: 0;
  z-index: 90;
  block-size: 3px;
  background-color: transparent;
  pointer-events: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-reading-progress__bar {
  display: block;
  block-size: 100%;
  inline-size: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  background-image: linear-gradient(
    to right,
    var(--pm-color-green) 0%,
    var(--pm-color-green) 60%,
    var(--pm-color-yellow) 100%
  );
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top {
  padding-block: var(--pm-space-40) var(--pm-space-32);
  background-color: var(--pm-color-white);
}
@media (min-width: 1024px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top {
    padding-block: var(--pm-space-48) var(--pm-space-40);
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top .pm-breadcrumb li {
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top .pm-breadcrumb a {
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top .pm-breadcrumb a:hover {
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__top .pm-breadcrumb li + li::before {
  color: var(--pm-color-grey);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--pm-space-12);
  margin-block-end: var(--pm-space-16);
  font-family: var(--pm-font-heading);
  font-size: var(--pm-fs-caption);
  font-weight: var(--pm-fw-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__category {
  padding: var(--pm-space-4) var(--pm-space-12);
  background-color: var(--pm-color-green-deep);
  color: var(--pm-color-white);
  border-radius: var(--pm-radius-sm);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__date {
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__meta-group {
  display: inline-flex;
  align-items: center;
  gap: var(--pm-space-12);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__read-time {
  display: inline-flex;
  align-items: center;
  gap: var(--pm-space-12);
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__read-time::before {
  content: '';
  inline-size: 3px;
  block-size: 3px;
  background-color: var(--pm-color-grey);
  border-radius: 50%;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__title {
  max-width: 100%;
  font-size: var(--pm-fs-h1);
  font-weight: var(--pm-fw-bold);
  line-height: var(--pm-lh-tight);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__standfirst {
  max-width: 100%;
  margin-block-start: var(--pm-space-16);
}
@media (min-width: 1024px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__title,
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__standfirst {
    max-width: 66.6667%;
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__hero {
  --pm-article-cut: 32px;
  margin: 0;
  overflow: hidden;
  background-color: var(--pm-color-bg-tint);
  clip-path: polygon(
    0 0,
    100% 0,
    100% calc(100% - var(--pm-article-cut)),
    calc(100% - var(--pm-article-cut)) 100%,
    0 100%
  );
}
@media (min-width: 1024px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__hero {
    --pm-article-cut: 56px;
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__hero img {
  inline-size: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
@media (min-width: 1024px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__hero img {
    aspect-ratio: 21 / 9;
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--pm-space-32);
  padding-block-start: var(--pm-space-32);
}
@media (min-width: 1024px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__layout {
    grid-template-columns: minmax(0, 256px) minmax(0, 1fr);
    gap: var(--pm-space-64);
    align-items: start;
    padding-block-start: var(--pm-space-48);
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__aside {
  display: flex;
  flex-direction: column;
  gap: var(--pm-space-32);
}
@media (min-width: 1024px) and (min-height: 700px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__aside {
    position: sticky;
    inset-block-start: calc(var(--pm-navbar-height) + var(--pm-space-32));
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__aside-title {
  margin-block-end: var(--pm-space-12);
  font-family: var(--pm-font-heading);
  font-size: var(--pm-fs-caption);
  font-weight: var(--pm-fw-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__facts {
  margin: 0;
  border-block-start: 1px solid var(--pm-color-border);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__facts div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--pm-space-4) var(--pm-space-16);
  justify-content: space-between;
  padding-block: var(--pm-space-12);
  border-block-end: 1px solid var(--pm-color-border);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__facts dt {
  font-size: var(--pm-fs-small);
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__facts dd {
  margin: 0;
  font-size: var(--pm-fs-small);
  font-weight: var(--pm-fw-medium);
  color: var(--pm-color-graphite);
  text-align: right;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--pm-space-8);
  margin: 0;
  padding: 0;
  list-style: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-item {
  display: flex;
  flex: 1 1 0;
  min-inline-size: 0;
  max-inline-size: 44px;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  block-size: 44px;
  padding: 0;
  color: var(--pm-color-green-deep);
  background-color: var(--pm-color-white);
  border: 1px solid var(--pm-color-green-deep);
  border-radius: var(--pm-radius-sm);
  cursor: pointer;
  transition: background-color var(--pm-transition-base), color var(--pm-transition-base);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn:hover {
  background-color: var(--pm-color-green-deep);
  color: var(--pm-color-white);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn[hidden],
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-item[hidden] {
  display: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn svg {
  inline-size: 18px;
  block-size: 18px;
  flex: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-icon--done {
  display: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn.is-done {
  background-color: var(--pm-color-green-deep);
  color: var(--pm-color-white);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn.is-done .pm-article__share-icon {
  display: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__share-btn.is-done .pm-article__share-icon--done {
  display: block;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body {
  display: flex;
  flex-direction: column;
  gap: var(--pm-space-24);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body p {
  font-size: var(--pm-fs-lead);
  line-height: var(--pm-lh-body);
  color: var(--pm-color-text);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body > p:first-of-type {
  font-weight: var(--pm-fw-medium);
  color: var(--pm-color-graphite);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body h2 {
  margin-block-start: var(--pm-space-16);
  font-size: var(--pm-fs-h3);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body h3 {
  margin-block-start: var(--pm-space-8);
  font-size: var(--pm-fs-h4);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body a:not(.pm-btn) {
  color: var(--pm-color-green-deep);
  text-underline-offset: 3px;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body a:not(.pm-btn):hover {
  color: var(--pm-color-green-darker);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body ul {
  display: flex;
  flex-direction: column;
  gap: var(--pm-space-12);
  margin: 0;
  padding: 0;
  list-style: none;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body ul li {
  position: relative;
  padding-inline-start: var(--pm-space-24);
  font-size: var(--pm-fs-lead);
  line-height: var(--pm-lh-body);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body ul li::before {
  content: '';
  position: absolute;
  inset-block-start: 0.7em;
  inset-inline-start: 0;
  inline-size: 12px;
  block-size: 2px;
  background-color: var(--pm-color-green);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body blockquote {
  margin: var(--pm-space-8) 0;
  padding: var(--pm-space-8) 0 var(--pm-space-8) var(--pm-space-24);
  border-inline-start: 3px solid var(--pm-color-green);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body blockquote p {
  font-family: var(--pm-font-heading);
  font-size: var(--pm-fs-h5);
  font-weight: var(--pm-fw-medium);
  line-height: var(--pm-lh-heading);
  color: var(--pm-color-graphite);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body blockquote footer,
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body blockquote cite {
  margin-block-start: var(--pm-space-12);
  font-size: var(--pm-fs-small);
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body figure {
  margin: var(--pm-space-8) 0;
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body figure img {
  inline-size: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background-color: var(--pm-color-bg-tint);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__body figure figcaption {
  margin-block-start: var(--pm-space-12);
  font-size: var(--pm-fs-small);
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__stats {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--pm-space-4);
  margin: var(--pm-space-8) 0;
  padding: var(--pm-space-24);
  background-color: var(--pm-color-bg-tint);
}
@media (min-width: 640px) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--pm-grid-gutter);
  }
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__stat-value {
  font-family: var(--pm-font-heading);
  font-size: var(--pm-fs-h3);
  font-weight: var(--pm-fw-bold);
  line-height: var(--pm-lh-tight);
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__stat-label {
  margin-block-start: var(--pm-space-4);
  font-size: var(--pm-fs-small);
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__end {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--pm-space-16);
  margin-block-start: var(--pm-space-16);
  padding-block-start: var(--pm-space-24);
  border-block-start: 1px solid var(--pm-color-border);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__contact {
  font-size: var(--pm-fs-small);
  color: var(--pm-color-text-muted);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__back {
  display: inline-flex;
  align-items: center;
  gap: var(--pm-space-8);
  font-family: var(--pm-font-heading);
  font-size: var(--pm-fs-small);
  font-weight: var(--pm-fw-medium);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--pm-color-green-deep);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__back svg {
  inline-size: 18px;
  block-size: 18px;
  transition: transform var(--pm-transition-base);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__back:hover {
  color: var(--pm-color-green-darker);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__back:hover svg {
  transform: translateX(-4px);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article-related__grid {
  row-gap: var(--pm-space-48);
}
.elementor-widget[class*="elementor-widget-pm-"] .pm-article-related .pm-news-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
@media (prefers-reduced-motion: reduce) {
.elementor-widget[class*="elementor-widget-pm-"] .pm-article__back:hover svg {
    transform: none;
  }
}
