/* Cookie consent banner (inc/analytics.php, assets/js/pl-analytics.js) — the site's card language: card tint,
   hairline, 14px radius, forest ink, the green primary button and an outlined secondary (2026-10-09). */
.pl-consent {
  position: fixed;
  left: 24px;
  bottom: 24px;
  z-index: 1000;
  width: min(440px, calc(100vw - 48px));
  padding: 20px 22px;
  background: var(--pl-card, #FFF7F2);
  border: 1px solid rgba(23, 52, 52, 0.14);
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(23, 52, 52, 0.14);
  color: var(--pl-forest, #173434);
  font-family: inherit;
}
.pl-consent[hidden] { display: none; }
.pl-consent__text {
  margin: 0 0 14px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: rgba(23, 52, 52, 0.85);
}
.pl-consent__link {
  color: var(--pl-forest, #173434);
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}
.pl-consent__actions { display: flex; gap: 10px; flex-wrap: wrap; }
/* #pl-consent in every button rule: the Elementor kit and Hello theme style bare `button` (and its :hover/:focus)
   with more weight than a single class — dark pill, pink theme border — so the banner's own look must outrank them. */
#pl-consent .pl-consent__btn,
#pl-consent .pl-consent__btn:hover,
#pl-consent .pl-consent__btn:focus {
  min-height: 36px;
  padding: 8px 18px;
  border-radius: 8px;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: 0;
  text-transform: none;
  box-shadow: none;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
#pl-consent .pl-consent__btn--accept,
#pl-consent .pl-consent__btn--accept:focus { background: #1D8167; border: 1px solid #1D8167; color: #FFFFFF; }
#pl-consent .pl-consent__btn--accept:hover { background: var(--pl-forest, #173434); border-color: var(--pl-forest, #173434); color: #FFFFFF; }
#pl-consent .pl-consent__btn--decline,
#pl-consent .pl-consent__btn--decline:focus { background: transparent; border: 1px solid rgba(23, 52, 52, 0.35); color: var(--pl-forest, #173434); }
#pl-consent .pl-consent__btn--decline:hover { background: #FFFFFF; border-color: rgba(23, 52, 52, 0.5); color: var(--pl-forest, #173434); }
#pl-consent .pl-consent__btn:focus-visible,
#pl-consent .pl-consent__link:focus-visible { outline: 2px solid var(--pl-green-hover, #2E8B62); outline-offset: 2px; }

/* phones: full width at the bottom, finger-sized buttons */
@media (max-width: 767px) {
  .pl-consent { left: 12px; right: 12px; bottom: 12px; width: auto; padding: 16px; }
  #pl-consent .pl-consent__btn { min-height: 44px; flex: 1 1 0; }
}

/* "Cookie settings" next to the footer copyright (shown/hidden in pl-global.css, which every page loads) */
.pl-cookie-settings a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
