/* ============================================================
   PM126 — Przedszkole Miejskie nr 126 w Łodzi
   Motyw dziecięcy „słoneczny" — WCAG 2.1 AA
   Wszystkie pary tekst/tło >= 4.5:1 (AA), duże >= 3:1
   ============================================================ */

:root {
  --pm-primary: #123E75;
  --pm-primary-dark: #0E315D;
  --pm-primary-deep: #092540;
  --pm-secondary: #2C7F3E;
  --pm-secondary-dark: #1F6330;
  --pm-yellow: #F2C14E;
  --pm-yellow-deep: #6B5200;
  --pm-blue: #4B65AA;
  --pm-blue-dark: #123E75;
  --pm-pink: #D24050;
  --pm-pink-dark: #A72E3A;
  --pm-text: #1F2937;
  --pm-text-light: #566273;
  --pm-bg: #FFFDF8;
  --pm-bg-off: #F4F8F2;
  --pm-border: #D4DED0;
  --pm-white: #FFFFFF;
  --pm-radius: 18px;
  --pm-radius-lg: 28px;
  --pm-shadow: 0 6px 24px rgba(34, 48, 63, .10);
  --pm-shadow-lift: 0 10px 32px rgba(34, 48, 63, .16);
  --pm-max: 1200px;
  --pm-font-body: "Outfit", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pm-font-head: "Outfit", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pm-font-scale: 1;
  --pm-focus: 3px solid #D24050;
}

/* --- Tryb wysokiego kontrastu (WCAG 1.4.6 AAA-friendly) --- */
html[data-contrast="high"] {
  --pm-text: #0B1B2A;
  --pm-text-light: #23303B;
  --pm-primary: #123E75;
  --pm-primary-dark: #002D52;
  --pm-secondary: #065C2D;
  --pm-bg: #FFFFFF;
  --pm-bg-off: #EEF6FC;
  --pm-border: #5B7890;
}

/* --- Skalowanie czcionki (widget dostępności) --- */
html[data-fontsize="large"] { --pm-font-scale: 1.15; }
html[data-fontsize="xlarge"] { --pm-font-scale: 1.3; }

/* ============ Baza ============ */
*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: 110px;
  -webkit-text-size-adjust: 100%;
}

body.theme-pm126 {
  margin: 0;
  font-family: var(--pm-font-body);
  font-size: calc(1.0625rem * var(--pm-font-scale));
  line-height: 1.65;
  color: var(--pm-text);
  background: var(--pm-bg);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--pm-font-head);
  line-height: 1.2;
  color: var(--pm-text);
  margin: 0 0 .6em;
  letter-spacing: .01em;
}

h1 { font-size: calc(2.3rem * var(--pm-font-scale)); }
h2 { font-size: calc(1.75rem * var(--pm-font-scale)); }
h3 { font-size: calc(1.3rem * var(--pm-font-scale)); }

p { margin: 0 0 1em; }

a { color: var(--pm-blue-dark); text-decoration-thickness: 2px; text-underline-offset: 3px; }
a:hover { color: var(--pm-primary-dark); }

/* Widoczny fokus dla nawigacji klawiaturą (WCAG 2.4.7) */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible,
summary:focus-visible {
  outline: var(--pm-focus);
  outline-offset: 2px;
  border-radius: 4px;
}

img { max-width: 100%; height: auto; }

.pm-container {
  max-width: var(--pm-max);
  margin: 0 auto;
  padding: 0 24px;
}

.pm-main { min-height: 50vh; }

/* ============ Skip link (WCAG 2.4.1) ============ */
.pm-skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 2000;
  background: var(--pm-primary);
  color: #FFFFFF;
  font-weight: 800;
  padding: 12px 22px;
  border-radius: 0 0 12px 12px;
  text-decoration: none;
}
.pm-skip-link:focus { left: 8px; color: #FFFFFF; }

/* ============ Pasek dostępności ============ */
.pm-a11y-bar {
  background: var(--pm-secondary-dark);
  color: #FFFFFF;
  font-size: .85rem;
}
.pm-a11y-bar .pm-container {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px 18px;
  min-height: 40px;
  flex-wrap: wrap;
}
.pm-a11y-bar a { color: #FFE38A; font-weight: 700; }
.pm-a11y-bar a:hover { color: #FFFFFF; }
.pm-a11y-controls { display: flex; align-items: center; gap: 8px; }
.pm-a11y-btn {
  background: #FFFFFF;
  color: var(--pm-secondary-dark);
  border: 2px solid #FFFFFF;
  border-radius: 8px;
  font: 700 .85rem/1 var(--pm-font-body);
  padding: 5px 12px;
  cursor: pointer;
  min-width: 34px;
}
.pm-a11y-btn[aria-pressed="true"] {
  background: var(--pm-yellow);
  color: #4A3000;
  border-color: #4A3000;
}
.pm-a11y-label { font-weight: 700; color: #FFFFFF; }

/* ============ Header ============ */
.pm-header {
  background: var(--pm-bg);
  border-bottom: 4px solid var(--pm-yellow);
  position: sticky;
  top: 0;
  z-index: 900;
  box-shadow: var(--pm-shadow);
}
.pm-header-inner {
  display: grid;
  grid-template-columns: minmax(190px, 220px) minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 84px;
}
.pm-logo { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.pm-logo img { width: 74px; height: auto; border-radius: 14px; }
.pm-logo-text { display: flex; flex-direction: column; line-height: 1.1; }
.pm-logo-text .pm-logo-name { font-family: var(--pm-font-head); font-weight: 800; font-size: 1.15rem; color: var(--pm-text); }
.pm-logo-text .pm-logo-sub { font-size: .8rem; font-weight: 700; color: var(--pm-secondary-dark); }

.pm-nav-toggle {
  order: 3;
  margin-left: auto;
  display: none;
  background: var(--pm-primary);
  color: #FFFFFF;
  border: 3px solid var(--pm-primary-deep);
  border-radius: 12px;
  font: 800 1rem var(--pm-font-body);
  padding: 10px 18px;
  cursor: pointer;
}
.pm-nav-toggle[aria-expanded="true"] { background: var(--pm-primary-dark); }

.pm-nav { margin-left: 0; min-width: 0; justify-self: center; }
.pm-nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 2px; flex-wrap: nowrap; justify-content: center; }
.pm-nav li { position: relative; }
.pm-nav a {
  display: block;
  padding: 9px 8px;
  color: var(--pm-text);
  font-weight: 800;
  text-decoration: none;
  border-radius: 12px;
  font-size: calc(.84rem * var(--pm-font-scale));
  white-space: nowrap;
}
.pm-nav a:hover, .pm-nav a:focus { background: var(--pm-bg-off); color: var(--pm-primary-deep); }
.pm-nav li.has-children > a::after { content: " ▾"; font-size: .7em; }
.pm-nav ul ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 230px;
  background: var(--pm-white);
  border: 2px solid var(--pm-border);
  border-radius: 14px;
  box-shadow: var(--pm-shadow-lift);
  padding: 8px;
  flex-direction: column;
  z-index: 950;
}
.pm-nav li.has-children:hover > ul,
.pm-nav li.has-children:focus-within > ul { display: flex; }
.pm-nav ul ul a { padding: 10px 14px; border-radius: 9px; }

.pm-nav-cta {
  background: var(--pm-secondary);
  color: #FFFFFF !important;
  border: 3px solid var(--pm-secondary-dark);
}
.pm-nav-cta:hover { background: var(--pm-secondary-dark); }
.pm-header-phone { white-space: nowrap; }
.pm-nav .pm-nav-social { margin-left: 8px; }
.pm-nav .pm-nav-social a {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 7px;
  background: #1877F2;
  color: #FFFFFF;
  border: 2px solid #145DBF;
  border-radius: 50%;
}
.pm-nav .pm-nav-social a:hover, .pm-nav .pm-nav-social a:focus { background: #145DBF; color: #FFFFFF; }
.pm-nav .pm-nav-social svg { width: 22px; height: 22px; fill: currentColor; }
.pm-nav .pm-nav-social span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* ============ Kadra ============ */
.pm-staff-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 24px 0 38px; }
.pm-staff-group { padding: 22px; background: var(--pm-white); border: 2px solid var(--pm-border); border-top: 7px solid var(--pm-secondary); border-radius: var(--pm-radius); box-shadow: var(--pm-shadow); }
.pm-staff-group--red { border-top-color: #D6336C; }
.pm-staff-group--yellow { border-top-color: var(--pm-yellow); }
.pm-staff-group--blue { border-top-color: var(--pm-blue); }
.pm-staff-group h3 { margin-top: 12px; }
.pm-staff-group p { margin-bottom: 0; }

/* ============ Facebook ============ */
.pm-facebook-section { background: var(--pm-bg-off); }
.pm-facebook-card {
  max-width: 760px;
  margin: 0 auto;
  background: var(--pm-white);
  border: 2px solid var(--pm-border);
  border-radius: var(--pm-radius-lg);
  padding: 24px;
  box-shadow: var(--pm-shadow);
}
.pm-facebook-placeholder { display: flex; align-items: center; gap: 22px; }
.pm-facebook-placeholder h3 { margin-bottom: 8px; }
.pm-facebook-placeholder p { color: var(--pm-text-light); }
.pm-facebook-mark {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: end center;
  border-radius: 16px;
  background: #1877F2;
  color: #FFFFFF;
  font: 800 3rem/1 Arial, sans-serif;
}
.pm-facebook-embed { min-height: 220px; overflow: hidden; border-radius: 14px; }
.pm-facebook-embed iframe { display: block; width: 100%; min-height: 700px; border: 0; }
.pm-facebook-consent-note { margin: 16px 0 0; color: var(--pm-text-light); font-size: .92rem; }

/* ============ Hero (strona główna) ============ */
.pm-hero {
  background: linear-gradient(180deg, var(--pm-bg-off) 0%, var(--pm-bg) 100%);
  overflow: hidden;
  position: relative;
}
.pm-hero-inner {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 40px;
  align-items: center;
  padding: 64px 0;
}
.pm-hero h1 {
  font-size: calc(2.6rem * var(--pm-font-scale));
  color: var(--pm-primary-dark);
  margin-bottom: .4em;
}
.pm-hero h1 .pm-hero-accent { color: var(--pm-secondary-dark); display: block; }
.pm-hero-lead { font-size: calc(1.15rem * var(--pm-font-scale)); color: var(--pm-text); max-width: 34em; }
.pm-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 26px; }
.pm-hero-art { text-align: center; }
.pm-hero-art svg { width: 100%; max-width: 460px; height: auto; }

/* ============ Przyciski ============ */
.pm-btn {
  display: inline-block;
  font: 800 calc(1.02rem * var(--pm-font-scale)) var(--pm-font-body);
  padding: 14px 28px;
  border-radius: 999px;
  text-decoration: none;
  border: 3px solid transparent;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease;
}
.pm-btn:hover { transform: translateY(-2px); box-shadow: var(--pm-shadow-lift); }
.pm-btn-primary { background: var(--pm-primary); color: #FFFFFF; border-color: var(--pm-primary-deep); }
.pm-btn-primary:hover { background: var(--pm-primary-dark); color: #FFFFFF; }
.pm-btn-secondary { background: var(--pm-secondary); color: #FFFFFF; border-color: var(--pm-secondary-dark); }
.pm-btn-secondary:hover { background: var(--pm-secondary-dark); color: #FFFFFF; }
.pm-btn-yellow { background: var(--pm-yellow); color: #4A3000; border-color: #8A5A00; }
.pm-btn-outline {
  background: var(--pm-white);
  color: var(--pm-primary-deep);
  border-color: var(--pm-primary);
}
.pm-btn-outline:hover { background: var(--pm-bg-off); color: var(--pm-primary-deep); }

/* ============ Sekcje ============ */
.pm-section { padding: calc(4.5rem * var(--pm-font-scale)) 0; }
.pm-section-alt { background: var(--pm-bg-off); }
.pm-section-head { text-align: center; max-width: 46em; margin: 0 auto calc(2.5rem * var(--pm-font-scale)); }
.pm-section-head h2 { color: var(--pm-primary-dark); margin-bottom: .3em; }
.pm-eyebrow {
  display: inline-block;
  background: var(--pm-secondary);
  color: #FFFFFF;
  font: 800 .8rem var(--pm-font-body);
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 14px;
}

/* ============ Kafelki (sekcje treści) ============ */
.pm-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 26px; }
.pm-card {
  background: var(--pm-white);
  border: 3px solid var(--pm-border);
  border-radius: var(--pm-radius-lg);
  padding: 28px 26px;
  box-shadow: var(--pm-shadow);
  transition: transform .18s ease;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pm-card:hover { transform: translateY(-4px); }
.pm-card-icon {
  width: 62px; height: 62px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 1.7rem;
  background: var(--pm-bg-off);
  border: 3px solid var(--pm-yellow);
}
.pm-card h3 { margin: 0; }
.pm-card p { margin: 0; color: var(--pm-text-light); flex-grow: 1; }
.pm-card-more { font-weight: 800; color: var(--pm-blue-dark); }
.pm-card--teal .pm-card-icon { background: #D2EFEA; border-color: var(--pm-secondary); }
.pm-card--orange .pm-card-icon { background: #FFE3CB; border-color: var(--pm-primary); }
.pm-card--pink .pm-card-icon { background: #FBD9E5; border-color: var(--pm-pink); }
.pm-card--blue .pm-card-icon { background: #D8E9F9; border-color: var(--pm-blue); }

/* ============ Aktualności ============ */
.pm-news-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 26px; }
.pm-news-card {
  background: var(--pm-white);
  border: 3px solid var(--pm-border);
  border-radius: var(--pm-radius-lg);
  overflow: hidden;
  box-shadow: var(--pm-shadow);
  display: flex;
  flex-direction: column;
}
.pm-news-body { padding: 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.pm-news-date { font-weight: 800; color: var(--pm-secondary-dark); font-size: .85rem; text-transform: uppercase; letter-spacing: .05em; }
.pm-news-card h3 { margin: 0; }
.pm-news-card p { color: var(--pm-text-light); margin: 0; flex: 1; }

/* ============ Grupy (kolorowe Sale) ============ */
.pm-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 22px; }
.pm-group-card {
  border-radius: var(--pm-radius-lg);
  padding: 26px 22px;
  border: 3px solid;
  box-shadow: var(--pm-shadow);
  background: var(--pm-white);
}
.pm-group-card h3 { margin: 0 0 6px; font-size: calc(1.25rem * var(--pm-font-scale)); }
.pm-group-card p { margin: 0; font-weight: 600; }
.pm-group-tag {
  display: inline-block;
  font: 800 .78rem var(--pm-font-body);
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 10px;
  /*! color: #FFFFFF; */
}
.pm-group--red    { border-color: #C4342A; } .pm-group--red .pm-group-tag { background: #C4342A; }
.pm-group--orange { border-color: #B54E07; } .pm-group--orange .pm-group-tag { background: #B54E07; }
.pm-group--yellow { border-color: #8A5A00; } .pm-group--yellow .pm-group-tag { background: #8A5A00; color: #FFFFFF; }
.pm-group--green  { border-color: #1B7F79; } .pm-group--green .pm-group-tag { background: #1B7F79; }
.pm-group--blue   { border-color: #1D6FB8; } .pm-group--blue .pm-group-tag { background: #1D6FB8; }

/* ============ Galeria ============ */
.pm-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 18px; }
.pm-gallery figure { margin: 0; }
.pm-gallery a {
  display: block;
  border-radius: var(--pm-radius);
  overflow: hidden;
  border: 3px solid var(--pm-border);
}
.pm-gallery img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .2s ease; }
.pm-gallery a:hover img { transform: scale(1.05); }
.pm-gallery figcaption { font-size: .88rem; color: var(--pm-text-light); margin-top: 6px; font-weight: 600; }

/* ============ Baner CTA ============ */
.pm-cta-band { background: var(--pm-secondary); border-top: 4px solid var(--pm-yellow); }
.pm-cta-band .pm-container { padding: calc(3rem * var(--pm-font-scale)) 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.pm-cta-band h2 { color: #FFFFFF; margin: 0 0 8px; }
.pm-cta-band p { color: #E0FFFB; margin: 0; font-size: calc(1.08rem * var(--pm-font-scale)); }

/* ============ Stopka ============ */
.pm-footer { background: var(--pm-secondary-dark); color: #E8F4FC; }
.pm-footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
  gap: 24px 72px;
  max-width: 900px;
  padding: calc(2.5rem * var(--pm-font-scale)) 0 1.4rem;
}
.pm-footer h2, .pm-footer h3 { color: #FFFFFF; font-size: 1.05rem; margin-bottom: 10px; }
.pm-footer ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 22px; }
.pm-footer a { color: #C5E7FA; text-decoration: none; font-weight: 600; }
.pm-footer a:hover { color: #FFFFFF; text-decoration: underline; }
.pm-footer address { font-style: normal; line-height: 1.6; }
.pm-footer address a { color: #C5E7FA; }
.pm-footer-bottom {
  max-width: 900px;
  border-top: 2px solid rgba(255, 255, 255, .25);
  padding: 14px 0 20px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  font-size: .9rem;
}
.pm-footer-bottom p { margin: 0; }
.pm-footer-credit a { color: #C5E7FA; }

/* ============ Treść stron (page body) ============ */
.pm-page { padding: calc(3rem * var(--pm-font-scale)) 0; }
.pm-page .pm-page-inner { max-width: 800px; margin: 0 auto; }
.pm-page .pm-page-inner--wide { max-width: var(--pm-max); }
.pm-page h1 { color: var(--pm-primary-dark); }
.pm-page table { border-collapse: collapse; width: 100%; margin: 1.4em 0; }
.pm-page th, .pm-page td { border: 2px solid var(--pm-border); padding: 10px 14px; text-align: left; }
.pm-page th { background: var(--pm-bg-off); font-weight: 800; }
.pm-page ul li, .pm-page ol li { margin-bottom: .4em; }
.pm-breadcrumb { font-size: .9rem; font-weight: 700; color: var(--pm-text-light); margin-bottom: 1.2em; }
.pm-breadcrumb a { color: var(--pm-secondary-dark); }

/* Dokumenty do pobrania */
.pm-docs { list-style: none; padding: 0; margin: 1.6em 0; display: flex; flex-direction: column; gap: 12px; }
.pm-docs li a, a.pm-doc {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--pm-white);
  border: 3px solid var(--pm-border);
  border-radius: var(--pm-radius);
  padding: 14px 18px;
  font-weight: 800;
  color: var(--pm-blue-dark);
  text-decoration: none;
  box-shadow: var(--pm-shadow);
}
.pm-docs li a:hover, a.pm-doc:hover { border-color: var(--pm-primary); color: var(--pm-primary-deep); }
.pm-doc-icon { font-size: 1.5rem; }

.pm-link-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
  margin: 1.6em 0 2em;
}
.pm-link-grid a {
  display: flex;
  align-items: center;
  min-height: 72px;
  padding: 16px 18px;
  border: 3px solid var(--pm-border);
  border-left: 8px solid var(--pm-secondary);
  border-radius: var(--pm-radius);
  background: var(--pm-white);
  color: var(--pm-primary-dark);
  font-weight: 900;
  text-decoration: none;
  box-shadow: var(--pm-shadow);
}
.pm-link-grid a:hover {
  border-color: var(--pm-yellow);
  border-left-color: var(--pm-pink);
  color: var(--pm-primary-deep);
  transform: translateY(-2px);
  box-shadow: var(--pm-shadow-lift);
}

/* ============ Formularz kontaktowy ============ */
.pm-form { display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.pm-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; max-width: 760px; padding: 24px; background: var(--pm-white); border: 1px solid var(--pm-border); border-radius: var(--pm-radius-lg); box-shadow: var(--pm-shadow); }
.pm-form-grid > div:last-of-type { grid-column: 1 / -1; }
.pm-form-grid > button { grid-column: 1 / -1; justify-self: start; }
.pm-form label { font-weight: 800; display: block; margin-bottom: 6px; }
.pm-form input, .pm-form textarea, .pm-form select {
  width: 100%;
  font: 600 calc(1rem * var(--pm-font-scale)) var(--pm-font-body);
  padding: 12px 14px;
  border: 3px solid var(--pm-border);
  border-radius: 12px;
  background: var(--pm-white);
  color: var(--pm-text);
}
.pm-form input:hover, .pm-form textarea:hover, .pm-form select:hover { border-color: var(--pm-yellow); }
.pm-form .pm-hint { font-size: .85rem; color: var(--pm-text-light); margin: 4px 0 0; }
.pm-form .pm-optional { color: var(--pm-text-light); font-size: .78em; font-weight: 600; }
.content-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 20px;
  max-width: 760px;
  padding: 24px;
  background: var(--pm-white);
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-radius-lg);
  box-shadow: var(--pm-shadow);
}
.content-form-field { display: block; }
.content-form-field:nth-last-of-type(1),
.content-form > button { grid-column: 1 / -1; }
.content-form-field > span { display: block; font-weight: 800; margin-bottom: 6px; }
.content-form-field input,
.content-form-field textarea,
.content-form-field select {
  width: 100%;
  font: 600 calc(1rem * var(--pm-font-scale)) var(--pm-font-body);
  padding: 12px 14px;
  border: 3px solid var(--pm-border);
  border-radius: 12px;
  background: var(--pm-white);
  color: var(--pm-text);
}
.content-form-field input:hover,
.content-form-field textarea:hover,
.content-form-field select:hover { border-color: var(--pm-yellow); }
.content-form > button { justify-self: start; }
@media (max-width: 680px) {
  .pm-form-grid,
  .content-form { grid-template-columns: 1fr; padding: 18px; }
  .pm-form-grid > div:last-of-type, .pm-form-grid > button { grid-column: auto; }
  .content-form-field:nth-last-of-type(1),
  .content-form > button { grid-column: auto; }
}

/* ============ Widget dostępności po treści ============ */
.pm-a11y-note {
  background: var(--pm-white);
  border: 3px dashed var(--pm-secondary);
  border-radius: var(--pm-radius-lg);
  padding: 22px 26px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  box-shadow: var(--pm-shadow);
}
.pm-a11y-note-icon { font-size: 1.8rem; }
.pm-a11y-note p { margin: 0; }

/* ============ Odpowiedź na małe ekrany ============ */
@media (max-width: 960px) {
  .pm-hero-inner { grid-template-columns: 1fr; padding: 44px 0; }
  .pm-hero-art { order: 2; }
  .pm-hero-art svg { max-width: 320px; }
  .pm-footer-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
}

@media (max-width: 1040px) {
  .pm-header-inner { grid-template-columns: 200px minmax(0, 1fr) auto; gap: 10px; }
  .pm-logo img { width: 66px; }
  .pm-nav a { padding-left: 5px; padding-right: 5px; font-size: calc(.76rem * var(--pm-font-scale)); }
  .pm-header-phone { padding-left: 10px; padding-right: 10px; font-size: .82rem; }
}

@media (max-width: 940px) {
  .pm-header-inner { display: flex; flex-wrap: wrap; }
  .pm-logo { order: 1; min-width: 0; }
  .pm-logo img { width: 64px; max-width: 100%; }
  .pm-nav-toggle { display: inline-block; }
  .pm-nav {
    display: none;
    width: 100%;
    order: 5;
    margin-left: 0;
    background: var(--pm-white);
    border-top: 3px solid var(--pm-border);
  }
  .pm-nav.pm-nav-open { display: block; }
  .pm-nav ul { flex-direction: column; gap: 2px; padding: 12px; }
  .pm-nav .pm-nav-social { margin-left: 0; }
  .pm-nav .pm-nav-social a {
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    height: auto;
    min-height: 48px;
    padding: 12px 14px;
    border-radius: 12px;
  }
  .pm-nav .pm-nav-social span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
  .pm-nav ul ul {
    position: static;
    display: flex;
    box-shadow: none;
    border: none;
    border-left: 4px solid var(--pm-yellow);
    border-radius: 0;
    margin: 2px 0 6px 14px;
    padding: 0 0 0 6px;
    min-width: 0;
  }
  .pm-nav a { padding: 12px 14px; font-size: calc(1.05rem * var(--pm-font-scale)); }
  .pm-nav-cta { text-align: center; }
  .pm-header-phone { order: 4; display: block; width: 100%; max-width: 260px; margin: 4px auto 0; text-align: center; }
}

@media (max-width: 640px) {
  .pm-container { padding-left: 28px; padding-right: 28px; }
  .pm-header-inner { gap: 10px; padding-top: 10px; padding-bottom: 10px; }
  .pm-logo img { width: 58px; }
  .pm-nav-toggle { padding: 9px 12px; }
  .pm-nav { margin-top: 4px; }
  .pm-nav ul { padding-left: 0; padding-right: 0; }
  .pm-section { padding-top: calc(3.25rem * var(--pm-font-scale)); padding-bottom: calc(3.25rem * var(--pm-font-scale)); }
  .pm-page { padding-top: calc(2.25rem * var(--pm-font-scale)); padding-bottom: calc(2.25rem * var(--pm-font-scale)); }
  .pm-staff-groups { grid-template-columns: 1fr; }
  .pm-footer-grid { grid-template-columns: 1fr; gap: 20px; }
  .pm-footer ul { grid-template-columns: 1fr 1fr; }
  .pm-footer-bottom { flex-direction: column; align-items: flex-start; padding-bottom: 86px; }
  .pm-footer-credit { width: 100%; }
  .pm-cta-band .pm-container { flex-direction: column; align-items: flex-start; }
  .pm-gallery { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
  .pm-facebook-card { padding: 18px; }
  .pm-facebook-placeholder { align-items: flex-start; gap: 14px; }
  .pm-facebook-placeholder h3 { font-size: 1.1rem; }
}

/* ============ Druk ============ */
@media print {
  .pm-header, .pm-footer, .pm-a11y-bar, .pm-nav-toggle, .pm-hero-actions { display: none !important; }
  body.theme-pm126 { background: #FFFFFF; color: #000; }
  a { color: #000; text-decoration: underline; }
}

/* ============ Ruch / prefers-reduced-motion (WCAG 2.3.3) ============ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .pm-btn:hover, .pm-card:hover, .pm-gallery a:hover img { transform: none; }
}


/* ============ PM126 v1.1 — skróty, kalendarz i mobile ============ */
.pm-section-head--compact { margin-bottom: 1.75rem; }

.pm-quick-section {
  background: var(--pm-white);
  border-top: 1px solid var(--pm-border);
  border-bottom: 1px solid var(--pm-border);
}
.pm-quick-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.pm-quick-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 132px;
  padding: 22px;
  background: var(--pm-white);
  border: 2px solid var(--pm-border);
  border-top: 6px solid var(--pm-primary);
  border-radius: var(--pm-radius);
  box-shadow: var(--pm-shadow);
  color: var(--pm-text);
  text-decoration: none;
}
.pm-quick-card:nth-child(2) { border-top-color: var(--pm-secondary); }
.pm-quick-card:nth-child(3) { border-top-color: var(--pm-yellow); }
.pm-quick-card:nth-child(4) { border-top-color: var(--pm-pink); }
.pm-quick-card strong {
  color: var(--pm-primary-dark);
  font-size: calc(1.18rem * var(--pm-font-scale));
}
.pm-quick-card span { color: var(--pm-text-light); line-height: 1.45; }
.pm-quick-card:hover,
.pm-quick-card:focus-visible {
  border-color: var(--pm-primary);
  box-shadow: var(--pm-shadow-lift);
  transform: translateY(-2px);
}

.pm-calendar { display: grid; gap: 16px; }
.pm-calendar-intro { margin-bottom: 8px; }
.pm-month-card {
  background: var(--pm-white);
  border: 2px solid var(--pm-border);
  border-radius: var(--pm-radius);
  box-shadow: var(--pm-shadow);
  overflow: clip;
}
.pm-month-card > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 62px;
  padding: 16px 20px;
  cursor: pointer;
  list-style: none;
  background: var(--pm-bg-off);
  color: var(--pm-primary-dark);
  font-weight: 900;
}
.pm-month-card > summary::-webkit-details-marker { display: none; }
.pm-month-card > summary::after {
  content: "+";
  flex: 0 0 auto;
  font-size: 1.45rem;
  line-height: 1;
}
.pm-month-card[open] > summary::after { content: "−"; }
.pm-month-card > summary small {
  margin-left: auto;
  color: var(--pm-text-light);
  font-weight: 700;
}
.pm-month-events { display: grid; gap: 12px; padding: 16px; }
.pm-event-card {
  display: grid;
  grid-template-columns: minmax(92px, 130px) minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--pm-border);
  border-left: 6px solid var(--pm-primary);
  border-radius: 14px;
  background: #fff;
}
.pm-event-date {
  color: var(--pm-secondary-dark);
  font-size: .95rem;
  line-height: 1.35;
}
.pm-event-content h3 { margin: 0 0 8px; font-size: calc(1.08rem * var(--pm-font-scale)); }
.pm-event-content p { margin: .3em 0; }
.pm-calendar-extra { margin-top: 14px; }

.pm-table-scroll {
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
  margin: 1.4em 0;
  border-radius: 12px;
}
.pm-table-scroll > table { margin: 0; }
.jadlospis-container {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.jadlospis-container table { min-width: 820px; }

.pm-finance-list { margin: 1.2rem 0 2rem; }
.pm-empty-state {
  padding: 18px 20px;
  border: 2px dashed var(--pm-border);
  border-radius: var(--pm-radius);
  background: var(--pm-bg-off);
}

.pm-footer-grid {
  max-width: none;
  grid-template-columns: 1.15fr .85fr .85fr;
}
.pm-footer-contact p { margin: .25rem 0; }
.pm-footer-links ul { grid-template-columns: 1fr; }

.pm-submenu-toggle {
  display: none;
  border: 0;
  background: transparent;
  color: var(--pm-primary-dark);
  font: 900 1rem var(--pm-font-body);
  min-width: 44px;
  min-height: 44px;
  cursor: pointer;
}

@media (max-width: 940px) {
  .pm-nav li.has-children {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
    align-items: center;
  }
  .pm-nav li.has-children > a { grid-column: 1; }
  .pm-submenu-toggle {
    display: grid;
    grid-column: 2;
    place-items: center;
  }
  .pm-nav li.has-children > ul {
    grid-column: 1 / -1;
    display: none;
  }
  .pm-nav li.has-children.submenu-open > ul { display: flex; }
}

@media (max-width: 900px) {
  .pm-quick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pm-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .pm-container { padding-left: 18px; padding-right: 18px; }
  .pm-logo-text .pm-logo-name { font-size: .98rem; }
  .pm-logo-text .pm-logo-sub { font-size: .76rem; }
  .pm-logo img { width: 52px; }
  .pm-hero-inner { padding: 34px 0 42px; gap: 24px; }
  .pm-hero h1 { font-size: clamp(2rem, 10vw, 2.7rem); }
  .pm-hero-lead { font-size: calc(1.05rem * var(--pm-font-scale)); }
  .pm-hero-actions { display: grid; grid-template-columns: 1fr; }
  .pm-hero-actions .pm-btn { width: 100%; text-align: center; }
  .pm-hero-art img,
  .pm-hero-art svg { max-width: 280px; }
  .pm-quick-grid { grid-template-columns: 1fr; }
  .pm-quick-card { min-height: 0; }
  .pm-event-card { grid-template-columns: 1fr; gap: 6px; }
  .pm-month-card > summary { padding: 15px 16px; }
  .pm-month-card > summary small { display: none; }
  .pm-page .pm-page-inner { max-width: 100%; }
  .pm-stack-table,
  .pm-stack-table tbody,
  .pm-stack-table tr,
  .pm-stack-table th,
  .pm-stack-table td { display: block; width: 100%; }
  .pm-stack-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .pm-stack-table tr {
    margin-bottom: 14px;
    border: 2px solid var(--pm-border);
    border-radius: 12px;
    overflow: hidden;
    background: var(--pm-white);
  }
  .pm-stack-table th,
  .pm-stack-table td { border: 0; padding: 12px 14px; }
  .pm-stack-table th { background: var(--pm-bg-off); color: var(--pm-primary-dark); }
  .pm-footer-grid { grid-template-columns: 1fr; }
  .pm-footer ul { grid-template-columns: 1fr; }
}

@media (pointer: coarse) {
  .pm-nav a,
  .pm-btn,
  .pm-a11y-btn,
  .pm-link-grid a,
  .pm-docs li a { min-height: 44px; }
}

/* ============ PM126 v1.1.1 — poprawka po wdrożeniu ============ */
/* Cel: jednoznaczne style nowych kafli i kalendarza + mniej zatłoczony header. */

/* Kafelki szybkiego dostępu na stronie głównej */
.pm-quick-section {
  background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
}
.pm-quick-grid {
  align-items: stretch;
}
.pm-quick-card {
  position: relative;
  overflow: hidden;
  border: 1px solid #dbe5ee;
  border-top: 0;
  border-left: 6px solid var(--pm-primary);
  background: linear-gradient(135deg, #ffffff 0%, #f4f8ff 100%);
  box-shadow: 0 8px 24px rgba(9, 37, 64, .08);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.pm-quick-card::after {
  content: "→";
  position: absolute;
  right: 18px;
  bottom: 14px;
  font-size: 1.35rem;
  font-weight: 900;
  color: var(--pm-primary);
}
.pm-quick-card:nth-child(2) {
  border-left-color: var(--pm-secondary);
  background: linear-gradient(135deg, #ffffff 0%, #f3faf4 100%);
}
.pm-quick-card:nth-child(3) {
  border-left-color: var(--pm-yellow);
  background: linear-gradient(135deg, #ffffff 0%, #fffaf0 100%);
}
.pm-quick-card:nth-child(4) {
  border-left-color: var(--pm-pink);
  background: linear-gradient(135deg, #ffffff 0%, #fff5f7 100%);
}
.pm-quick-card strong {
  padding-right: 36px;
  font-size: calc(1.2rem * var(--pm-font-scale));
}
.pm-quick-card:hover,
.pm-quick-card:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(9, 37, 64, .14);
}

/* Kalendarz: style celowo bardziej specyficzne, aby nie przegrały z ogólnym CSS treści */
.pm-page .pm-calendar,
.pm-calendar {
  display: grid;
  gap: 18px;
  width: 100%;
}
.pm-page details.pm-month-card,
details.pm-month-card {
  display: block;
  margin: 0;
  padding: 0;
  background: #fff;
  border: 1px solid #d7e1ea;
  border-radius: 16px;
  box-shadow: 0 7px 22px rgba(9, 37, 64, .08);
  overflow: hidden;
}
.pm-page details.pm-month-card > summary,
details.pm-month-card > summary {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 16px 20px;
  margin: 0;
  cursor: pointer;
  list-style: none;
  color: #0e315d;
  background: linear-gradient(90deg, #eef5fb 0%, #f8fbfd 100%);
  border-left: 7px solid var(--pm-primary);
  font-weight: 900;
}
.pm-page details.pm-month-card:nth-of-type(2n) > summary,
details.pm-month-card:nth-of-type(2n) > summary {
  border-left-color: var(--pm-secondary);
}
.pm-page details.pm-month-card > summary::-webkit-details-marker,
details.pm-month-card > summary::-webkit-details-marker { display: none; }
.pm-page details.pm-month-card > summary::after,
details.pm-month-card > summary::after {
  content: "+";
  margin-left: auto;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  border-radius: 50%;
  background: var(--pm-primary);
  color: #fff;
  font-size: 1.35rem;
  line-height: 1;
}
.pm-page details.pm-month-card[open] > summary::after,
details.pm-month-card[open] > summary::after { content: "−"; }
.pm-page details.pm-month-card > summary small,
details.pm-month-card > summary small {
  margin-left: auto;
  color: #566273;
  font-size: .88rem;
  font-weight: 700;
}
.pm-page details.pm-month-card > summary::after,
details.pm-month-card > summary::after { margin-left: 0; }
.pm-page .pm-month-events,
.pm-month-events {
  display: grid;
  gap: 12px;
  padding: 16px;
  background: #fff;
}
.pm-page .pm-event-card,
.pm-event-card {
  display: grid;
  grid-template-columns: minmax(105px, 145px) minmax(0, 1fr);
  gap: 18px;
  margin: 0;
  padding: 17px 18px;
  background: #fff;
  border: 1px solid #dfe7ee;
  border-left: 5px solid var(--pm-secondary);
  border-radius: 12px;
}
.pm-page .pm-event-date,
.pm-event-date {
  color: #1f6330;
  font-weight: 800;
  line-height: 1.35;
}
.pm-page .pm-event-content h3,
.pm-event-content h3 {
  margin: 0 0 7px;
  color: #123e75;
  font-size: calc(1.05rem * var(--pm-font-scale));
}
.pm-page .pm-event-content p,
.pm-event-content p { margin: .25rem 0; }

/* Desktop: mniej zatłoczony nagłówek. Telefon chowamy wcześniej, menu dostaje oddech. */
@media (max-width: 1180px) and (min-width: 941px) {
  .pm-header-phone { display: none; }
  .pm-header-inner { grid-template-columns: minmax(190px, 240px) minmax(0, 1fr); }
  .pm-nav a { font-size: calc(.82rem * var(--pm-font-scale)); padding-inline: 8px; }
}

@media (max-width: 640px) {
  .pm-quick-card { padding: 18px 18px 20px; }
  .pm-page details.pm-month-card > summary,
  details.pm-month-card > summary { padding: 14px 14px; }
  .pm-page details.pm-month-card > summary small,
  details.pm-month-card > summary small { display: none; }
  .pm-page .pm-event-card,
  .pm-event-card { grid-template-columns: 1fr; gap: 7px; padding: 14px; }
}

/* ============================================================
   Rada Rodziców — v1.1.3, mobile first
   ============================================================ */
.pm-rr-intro {
  display: grid;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.pm-rr-card,
.pm-finance-card {
  background: var(--pm-white);
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-radius);
  box-shadow: var(--pm-shadow);
  padding: 1.15rem;
}

.pm-rr-card h2,
.pm-rr-card h3,
.pm-finance-card h3 {
  margin-top: 0;
}

.pm-rr-board {
  display: grid;
  gap: .65rem;
  margin: 0;
}

.pm-rr-board > div {
  display: grid;
  gap: .1rem;
  padding-bottom: .65rem;
  border-bottom: 1px solid var(--pm-border);
}
.pm-rr-board > div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.pm-rr-board dt {
  font-weight: 800;
  color: var(--pm-primary-dark);
}
.pm-rr-board dd { margin: 0; }

.pm-rr-contact {
  display: grid;
  gap: .65rem;
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 14px;
  background: var(--pm-bg-off);
  border-left: 5px solid var(--pm-secondary);
}
.pm-rr-contact a {
  font-weight: 800;
  overflow-wrap: anywhere;
}

.pm-finance-section {
  margin-top: 2rem;
}
.pm-finance-section > h2 {
  margin-bottom: .35rem;
}
.pm-finance-lead {
  color: var(--pm-text-light);
  max-width: 72ch;
}
.pm-finance-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 1.15rem;
}
.pm-finance-card--wide {
  grid-column: 1 / -1;
}
.pm-finance-card-head {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .75rem;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: .85rem;
}
.pm-finance-card-head h3 { margin: 0; }
.pm-finance-period {
  color: var(--pm-text-light);
  font-size: .95rem;
  font-weight: 700;
}
.pm-money-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.pm-money-list li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .8rem;
  align-items: baseline;
  padding: .55rem 0;
  border-bottom: 1px solid var(--pm-border);
}
.pm-money-list li:last-child { border-bottom: 0; }
.pm-money-list .pm-money-label { min-width: 0; }
.pm-money-list .pm-money-value {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-weight: 800;
  text-align: right;
}
.pm-money-list .pm-money-total {
  font-weight: 900;
  color: var(--pm-primary-dark);
}
.pm-money-list li.pm-money-total-row {
  margin-top: .35rem;
  padding-top: .8rem;
  border-top: 2px solid var(--pm-primary);
  border-bottom: 0;
}
.pm-finance-subtitle {
  margin: 1.1rem 0 .25rem;
  font-size: calc(1.08rem * var(--pm-font-scale));
}
.pm-finance-note {
  margin: .9rem 0 0;
  padding: .85rem 1rem;
  border-radius: 12px;
  background: var(--pm-bg-off);
  color: var(--pm-text-light);
}
.pm-finance-result {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 2px solid var(--pm-primary);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: baseline;
  font-weight: 900;
}
.pm-finance-result strong {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

@media (min-width: 700px) {
  .pm-rr-board > div {
    grid-template-columns: minmax(150px, .65fr) minmax(0, 1.35fr);
    gap: 1rem;
  }
  .pm-finance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 430px) {
  .pm-rr-card,
  .pm-finance-card { padding: 1rem; }
  .pm-money-list li,
  .pm-finance-result {
    grid-template-columns: 1fr;
    gap: .15rem;
  }
  .pm-money-list .pm-money-value,
  .pm-finance-result strong { text-align: left; }
}

/* ============================================================
   Rada Rodziców — finanse v1.1.4
   Czytelność mobile-first + graceful fallback przy starszym CSS
   ============================================================ */
.pm-page .pm-finance-overview,
.pm-finance-overview {
  display: grid;
  gap: 1.25rem;
  margin: 1.25rem 0 2rem;
}

.pm-page .pm-finance-overview .pm-card,
.pm-finance-overview .pm-card {
  gap: .45rem;
  border-width: 2px;
  padding: clamp(1rem, 3vw, 1.5rem);
}

.pm-page .pm-finance-overview .pm-card h3,
.pm-finance-overview .pm-card h3 {
  color: var(--pm-primary-dark);
  margin-bottom: .15rem;
}

.pm-page .pm-finance-kicker,
.pm-finance-kicker {
  margin: 0 0 .75rem;
  color: var(--pm-text-light);
  font-size: .95rem;
  font-weight: 700;
}

.pm-page .pm-finance-rows,
.pm-finance-rows {
  display: grid;
  gap: 0;
  margin-top: .35rem;
}

.pm-page .pm-finance-row,
.pm-finance-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .85rem;
  align-items: baseline;
  padding: .62rem 0;
  border-bottom: 1px solid var(--pm-border);
}

.pm-page .pm-finance-row:last-child,
.pm-finance-row:last-child { border-bottom: 0; }

.pm-page .pm-finance-row strong,
.pm-finance-row strong {
  color: var(--pm-text);
  font-weight: 700;
}

.pm-page .pm-finance-amount,
.pm-finance-amount {
  white-space: nowrap;
  text-align: right;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}

.pm-page .pm-finance-row--total,
.pm-finance-row--total {
  margin-top: .25rem;
  padding-top: .85rem;
  border-top: 2px solid var(--pm-primary);
  border-bottom: 0;
}

.pm-page .pm-finance-row--total strong,
.pm-page .pm-finance-row--total .pm-finance-amount,
.pm-finance-row--total strong,
.pm-finance-row--total .pm-finance-amount {
  color: var(--pm-primary-dark);
  font-weight: 900;
}

.pm-page .pm-finance-explain,
.pm-finance-explain {
  display: block;
  margin-top: -.35rem;
  padding-bottom: .6rem;
  color: var(--pm-text-light);
  font-size: .92rem;
}

.pm-page .pm-finance-result-box,
.pm-finance-result-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  padding: 1.1rem 1.2rem;
  border: 2px solid var(--pm-primary);
  border-radius: var(--pm-radius);
  background: var(--pm-bg-off);
}

.pm-page .pm-finance-result-box strong,
.pm-finance-result-box strong {
  color: var(--pm-primary-dark);
  font-size: calc(1.25rem * var(--pm-font-scale));
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.pm-page .pm-finance-update,
.pm-finance-update {
  margin-top: 1rem;
  color: var(--pm-text-light);
  font-size: .95rem;
}

@media (min-width: 760px) {
  .pm-page .pm-finance-overview,
  .pm-finance-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .pm-page .pm-finance-overview .pm-finance-plan,
  .pm-finance-overview .pm-finance-plan,
  .pm-page .pm-finance-overview .pm-finance-summary,
  .pm-finance-overview .pm-finance-summary {
    grid-column: 1 / -1;
  }
}

@media (max-width: 520px) {
  .pm-page .pm-finance-row,
  .pm-finance-row,
  .pm-page .pm-finance-result-box,
  .pm-finance-result-box {
    grid-template-columns: 1fr;
    gap: .2rem;
  }
  .pm-page .pm-finance-amount,
  .pm-finance-amount { text-align: left; }
  .pm-page .pm-finance-result-box strong,
  .pm-finance-result-box strong { white-space: normal; }
}

/* ============================================================
   Jadłospis v1.1.5 — Word -> czytelne karty RWD
   Oryginalna tabela pozostaje fallbackiem do czasu inicjalizacji JS.
   ============================================================ */
.jadlospis-container {
  max-width: 100%;
  margin: 0;
}

.jadlospis-container > p:first-child,
.jadlospis-container > p:nth-child(2),
.jadlospis-container > p:nth-child(3) {
  margin-block: .25rem;
}

.pm-menu-week {
  margin: 1rem 0 1.5rem;
}

.pm-menu-week-head {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: .6rem 1rem;
  margin-bottom: 1rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--pm-border);
  border-left: 5px solid var(--pm-secondary);
  border-radius: var(--pm-radius);
  background: var(--pm-bg-off);
}

.pm-menu-week-head h2 {
  margin: 0;
  color: var(--pm-primary-dark);
  font-size: clamp(1.25rem, 2vw, 1.55rem);
}

.pm-menu-week-range {
  margin: .2rem 0 0;
  color: var(--pm-text-light);
  font-weight: 700;
}

.pm-menu-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

.pm-menu-day {
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: calc(var(--pm-radius) + 2px);
  background: #fff;
  box-shadow: 0 7px 24px rgba(9, 37, 64, .07);
}

.pm-menu-day[open] {
  border-color: color-mix(in srgb, var(--pm-secondary) 55%, var(--pm-border));
}

.pm-menu-day summary {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .75rem;
  align-items: center;
  min-height: 62px;
  padding: .9rem 1rem;
  cursor: pointer;
  list-style: none;
  background: linear-gradient(135deg, #fff 0%, var(--pm-bg-off) 100%);
}

.pm-menu-day summary::-webkit-details-marker { display: none; }
.pm-menu-day summary::after {
  content: '+';
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: var(--pm-secondary);
  color: #fff;
  font-size: 1.25rem;
  font-weight: 800;
}
.pm-menu-day[open] summary::after { content: '−'; }

.pm-menu-day-name {
  display: block;
  color: var(--pm-primary-dark);
  font-size: 1.08rem;
  font-weight: 900;
  text-transform: capitalize;
}

.pm-menu-day-date {
  display: block;
  margin-top: .1rem;
  color: var(--pm-text-light);
  font-size: .92rem;
  font-weight: 650;
}

.pm-menu-meals {
  display: grid;
  gap: 0;
  padding: 0 .95rem .65rem;
}

.pm-menu-meal {
  padding: .9rem .1rem;
  border-top: 1px solid var(--pm-border);
}

.pm-menu-meal:first-child { border-top: 0; }

.pm-menu-meal-title {
  display: flex;
  align-items: center;
  gap: .45rem;
  margin: 0 0 .35rem;
  color: var(--pm-primary-dark);
  font-size: .95rem;
  font-weight: 900;
}

.pm-menu-meal-title::before {
  content: '';
  width: .55rem;
  height: .55rem;
  flex: 0 0 .55rem;
  border-radius: 999px;
  background: var(--pm-accent-yellow, #F2C14E);
}

.pm-menu-meal p {
  margin: 0;
  line-height: 1.55;
}

.pm-menu-allergens {
  margin-top: .45rem !important;
  padding: .5rem .65rem;
  border-radius: 8px;
  background: #fff8e8;
  color: #5f4a00;
  font-size: .88rem;
  line-height: 1.4 !important;
}

.pm-menu-allergens strong { font-weight: 900; }

.pm-menu-notes {
  display: grid;
  gap: .5rem;
  margin-top: 1.2rem;
  padding: 1rem 1.1rem;
  border-radius: var(--pm-radius);
  background: #fff8e8;
  border: 1px solid #efdba1;
}

.pm-menu-notes p { margin: 0; }

/* Po udanym przekształceniu Wordowej tabeli nie pokazujemy jej drugi raz. */
.jadlospis-container.pm-menu-enhanced > table,
.jadlospis-container.pm-menu-enhanced > .pm-table-scroll {
  display: none !important;
}

/* Fallback bez JS — tabela Worda ma pozostać dostępna i przewijalna. */
.jadlospis-container:not(.pm-menu-enhanced) {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.jadlospis-container:not(.pm-menu-enhanced) table {
  width: 100%;
  min-width: 780px;
  border-collapse: collapse;
}
.jadlospis-container:not(.pm-menu-enhanced) td,
.jadlospis-container:not(.pm-menu-enhanced) th {
  padding: .65rem;
  border: 1px solid var(--pm-border);
  vertical-align: top;
}
.jadlospis-container .MsoNormal { margin: 0; }

@media (min-width: 700px) {
  .pm-menu-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pm-menu-day summary { padding: 1rem 1.1rem; }
}

@media (min-width: 1100px) {
  .pm-menu-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; }
}

@media (max-width: 520px) {
  .pm-menu-week-head { padding: .9rem; }
  .pm-menu-day summary { min-height: 58px; padding: .8rem .85rem; }
  .pm-menu-meals { padding-inline: .8rem; }
  .pm-menu-meal { padding-block: .8rem; }
}

/* ============================================================
   PM126 v1.2.0 — wariant strony głównej COLORFUL
   ============================================================ */
.theme-pm126-colorful {
  --pmc-navy: #123E75;
  --pmc-green: #1F7A3E;
  --pmc-green-dark: #155D2F;
  --pmc-pink: #C8175B;
  --pmc-pink-dark: #9F1047;
  --pmc-yellow: #F5BF22;
  --pmc-sky: #DDF4FF;
  --pmc-cream: #FFF9EA;
  --pmc-mint: #F0FAEE;
  --pmc-blush: #FFF0F5;
  --pmc-text: #203043;
  --pmc-muted: #5D6B7D;
  background: #FFFDF8;
}
.theme-pm126-colorful .pm-header { border-bottom: 0; box-shadow: 0 4px 18px rgba(18,62,117,.08); }
.theme-pm126-colorful .pmc-a11y-bar { background: var(--pmc-green-dark); }
.theme-pm126-colorful .pmc-header-inner { grid-template-columns: minmax(210px, 280px) 1fr auto; min-height: 92px; }
.theme-pm126-colorful .pmc-logo img { width: 62px; border-radius: 12px; }
.theme-pm126-colorful .pmc-logo .pm-logo-name { color: var(--pmc-navy); font-size: 1.14rem; }
.theme-pm126-colorful .pmc-logo .pm-logo-sub { color: var(--pmc-navy); font-size: .92rem; }
.theme-pm126-colorful .pmc-nav > ul { gap: 4px; }
.theme-pm126-colorful .pmc-nav > ul > li > a { font-size: .89rem; padding: 12px 10px; color: var(--pmc-navy); }
.theme-pm126-colorful .pmc-nav > ul > li > a:hover,
.theme-pm126-colorful .pmc-nav > ul > li > a:focus { background: #F1F8EF; color: var(--pmc-green-dark); }
.pmc-header-actions { display: flex; align-items: center; gap: 10px; }
.pmc-recruit { background: var(--pmc-pink); color: #fff !important; border: 0; padding: 12px 20px; box-shadow: 0 6px 18px rgba(200,23,91,.20); }
.pmc-recruit:hover { background: var(--pmc-pink-dark); transform: translateY(-1px); }
.pmc-facebook { width: 38px; height: 38px; display:grid; place-items:center; border-radius:50%; background:#1877F2; color:#fff !important; font-weight:800; text-decoration:none; }

.pmc-main { overflow: hidden; }
.pmc-hero {
  position: relative;
  background:
    radial-gradient(circle at 8% 12%, rgba(245,191,34,.18) 0 90px, transparent 91px),
    radial-gradient(circle at 92% 18%, rgba(121,207,242,.23) 0 170px, transparent 171px),
    linear-gradient(135deg, #FFF9EA 0%, #FFFDF8 50%, #F2FBFF 100%);
  padding: clamp(38px, 6vw, 78px) 0 clamp(48px, 7vw, 92px);
}
.pmc-hero::after { content:""; position:absolute; left:-5%; right:-5%; bottom:-36px; height:78px; background:#F2FAEF; border-radius:50% 50% 0 0 / 80% 80% 0 0; }
.pmc-hero-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); align-items:center; gap: clamp(24px,4vw,60px); position:relative; z-index:1; }
.pmc-kicker { display:inline-block; font-size:.78rem; letter-spacing:.22em; text-transform:uppercase; font-weight:800; color:var(--pmc-navy); margin-bottom:14px; }
.pmc-hero h1 { font-size: clamp(2.6rem, 5.5vw, 5rem); line-height:.98; color:var(--pmc-navy); letter-spacing:-.035em; max-width: 8.8em; margin-bottom:20px; }
.pmc-hero-lead { color:var(--pmc-muted); font-size:clamp(1.06rem,1.8vw,1.28rem); line-height:1.55; max-width:34em; }
.pmc-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:26px; }
.pmc-btn-pink { background:var(--pmc-pink); color:#fff !important; border-color:var(--pmc-pink); }
.pmc-btn-pink:hover { background:var(--pmc-pink-dark); }
.pmc-btn-outline { background:#fff; color:var(--pmc-green-dark) !important; border-color:var(--pmc-green); }
.pmc-btn-outline:hover { background:#F1F8EF; }
.pmc-hero-visual { position:relative; text-align:center; }
.pmc-hero-picture { display:block; padding:18px; border-radius:36px; background:rgba(255,255,255,.74); box-shadow:0 22px 60px rgba(18,62,117,.10); transform:rotate(.4deg); }
.pmc-hero-picture img { display:block; width:100%; height:auto; border-radius:22px; }
.pmc-doodle { position:absolute; font-size:clamp(2rem,4vw,4.2rem); line-height:1; font-weight:800; user-select:none; pointer-events:none; }
.pmc-doodle--sun { left:-24px; top:-22px; color:#F5BF22; transform:rotate(-10deg); }
.pmc-doodle--heart { right:-14px; bottom:10px; color:#D82968; transform:rotate(12deg); }

.pmc-quick { background:#F2FAEF; padding:50px 0 72px; position:relative; }
.pmc-section-head { text-align:center; max-width:760px; margin:0 auto 30px; }
.pmc-section-head h2 { color:var(--pmc-navy); font-size:clamp(2rem,4vw,3rem); margin-bottom:8px; }
.pmc-section-head p { color:var(--pmc-muted); }
.pmc-quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.pmc-quick-card { position:relative; display:block; min-height:150px; padding:22px; border-radius:24px; text-decoration:none; color:var(--pmc-text) !important; border:2px solid rgba(18,62,117,.07); transition:transform .18s ease, box-shadow .18s ease; }
.pmc-quick-card:hover { transform:translateY(-4px); box-shadow:0 14px 28px rgba(18,62,117,.12); }
.pmc-quick-card h3 { margin:12px 0 6px; font-size:1.18rem; }
.pmc-quick-card p { color:var(--pmc-muted); margin:0; line-height:1.45; font-size:.96rem; }
.pmc-quick-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:18px; font-size:1.7rem; font-weight:800; }
.pmc-quick-card--pink { background:#FFF2F7; }.pmc-quick-card--pink .pmc-quick-icon{background:#FFDDEB;color:#A9114D}
.pmc-quick-card--blue { background:#EFF8FF; }.pmc-quick-card--blue .pmc-quick-icon{background:#D7F0FF;color:#08699E}
.pmc-quick-card--yellow { background:#FFF8E5; }.pmc-quick-card--yellow .pmc-quick-icon{background:#FFECA9;color:#805B00}
.pmc-quick-card--green { background:#F1FAEE; }.pmc-quick-card--green .pmc-quick-icon{background:#DDF3D7;color:#1F6A35}

.pmc-about { padding:clamp(58px,8vw,100px) 0; background:#fff; }
.pmc-about-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(28px,5vw,72px); align-items:center; }
.pmc-about-art { min-height:360px; border-radius:32px; background:linear-gradient(145deg,#DFF5FF,#FFF3C8 55%,#F0FAEE); padding:34px; display:flex; align-items:center; justify-content:center; box-shadow:0 16px 44px rgba(18,62,117,.09); }
.pmc-about-art img { max-height:330px; width:auto; object-fit:contain; }
.pmc-about-copy .pmc-kicker { color:var(--pmc-green); }
.pmc-about-copy h2 { color:var(--pmc-navy); font-size:clamp(2rem,4vw,3.25rem); margin-bottom:18px; }
.pmc-about-copy p { color:var(--pmc-muted); font-size:1.06rem; }
.pmc-points { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:24px 0 0; padding:0; list-style:none; }
.pmc-points li { background:#F8FBF7; border:1px solid #E0EBDD; padding:14px 16px; border-radius:16px; font-weight:700; color:var(--pmc-text); }
.pmc-points li::before { content:"✓"; color:var(--pmc-green); margin-right:8px; }

.pmc-why { padding:70px 0; background:linear-gradient(180deg,#FFFDF8,#FFF8E8); }
.pmc-why-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.pmc-feature { background:#fff; border:1px solid rgba(18,62,117,.08); border-radius:22px; padding:24px; box-shadow:0 8px 24px rgba(18,62,117,.06); }
.pmc-feature strong { display:block; color:var(--pmc-navy); margin-bottom:8px; font-size:1.1rem; }
.pmc-feature p { margin:0; color:var(--pmc-muted); }

.pmc-recruit-band { padding:56px 0; background:linear-gradient(120deg,var(--pmc-green-dark),#2E8A48); color:#fff; }
.pmc-recruit-inner { display:flex; align-items:center; justify-content:space-between; gap:26px; }
.pmc-recruit-band h2 { color:#fff; margin-bottom:8px; font-size:clamp(1.8rem,3vw,2.6rem); }
.pmc-recruit-band p { margin:0; color:#F4FFF3; max-width:58em; }
.pmc-recruit-band .pm-btn { flex:0 0 auto; background:#fff; color:var(--pmc-green-dark)!important; border-color:#fff; }

html[data-contrast="high"] .theme-pm126-colorful .pmc-hero,
html[data-contrast="high"] .theme-pm126-colorful .pmc-quick,
html[data-contrast="high"] .theme-pm126-colorful .pmc-about,
html[data-contrast="high"] .theme-pm126-colorful .pmc-why { background:#fff; }
html[data-contrast="high"] .theme-pm126-colorful .pmc-quick-card,
html[data-contrast="high"] .theme-pm126-colorful .pmc-feature { border:2px solid #111; background:#fff; }

@media (max-width: 1050px) {
  .theme-pm126-colorful .pmc-header-inner { grid-template-columns:minmax(190px,240px) auto; }
  .theme-pm126-colorful .pm-nav-toggle { display:block; }
  .theme-pm126-colorful .pmc-nav { grid-column:1/-1; width:100%; display:none; }
  .theme-pm126-colorful .pmc-nav.pm-nav-open { display:block; padding-bottom:16px; }
  .theme-pm126-colorful .pmc-nav > ul { flex-direction:column; align-items:stretch; }
  .theme-pm126-colorful .pmc-nav ul ul { position:static; box-shadow:none; border:0; padding:0 0 0 14px; }
  .pmc-header-actions { grid-column:2; grid-row:1; margin-right:90px; }
  .pmc-hero-grid { grid-template-columns:1fr 1fr; }
  .pmc-quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pmc-why-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .theme-pm126-colorful .pmc-header-inner { grid-template-columns:1fr auto; min-height:78px; }
  .theme-pm126-colorful .pmc-logo img { width:52px; }
  .theme-pm126-colorful .pmc-logo .pm-logo-name { font-size:1rem; }
  .theme-pm126-colorful .pmc-logo .pm-logo-sub { font-size:.8rem; }
  .pmc-header-actions { display:none; }
  .pmc-hero { padding-top:28px; }
  .pmc-hero-grid { grid-template-columns:1fr; gap:28px; }
  .pmc-hero-copy { text-align:center; }
  .pmc-hero h1 { max-width:none; }
  .pmc-hero-lead { margin-inline:auto; }
  .pmc-hero-actions { justify-content:center; }
  .pmc-hero-picture { padding:10px; border-radius:24px; }
  .pmc-quick-grid { grid-template-columns:1fr; }
  .pmc-quick-card { min-height:unset; }
  .pmc-about-grid { grid-template-columns:1fr; }
  .pmc-about-art { min-height:260px; padding:20px; }
  .pmc-about-copy { text-align:left; }
  .pmc-points { grid-template-columns:1fr; }
  .pmc-why-grid { grid-template-columns:1fr; }
  .pmc-recruit-inner { flex-direction:column; align-items:flex-start; }
  .pmc-recruit-band .pm-btn { width:100%; text-align:center; }
}
@media (max-width: 480px) {
  .pmc-hero-actions .pm-btn { width:100%; text-align:center; }
  .pmc-section-head { text-align:left; }
  .pmc-quick { padding-top:42px; }
}

/* ============================================================
   PM126 v1.2.1 — COLORFUL HOME / korekta zgodności z mockupem
   ============================================================ */
.theme-pm126-colorful .pm-landing-content {
  width: 100%;
  margin: 0;
  padding: 0;
}
.theme-pm126-colorful .pmc-main { overflow: clip; }

/* delikatniejszy pasek dostępności, żeby nie dominował nad stroną */
.theme-pm126-colorful .pmc-a11y-bar .pm-container { min-height: 34px; }
.theme-pm126-colorful .pmc-a11y-bar { font-size: .76rem; }
.theme-pm126-colorful .pmc-a11y-bar .pm-a11y-btn { padding: 4px 9px; font-size: .76rem; }

/* header bliższy mockupowi */
.theme-pm126-colorful .pmc-header-inner {
  min-height: 82px;
  grid-template-columns: minmax(230px, 300px) minmax(0, 1fr) auto;
}
.theme-pm126-colorful .pmc-logo img { width: 58px; border-radius: 50%; }
.theme-pm126-colorful .pmc-nav > ul > li > a { font-size: .91rem; padding: 10px 11px; }
.theme-pm126-colorful .pmc-recruit { border-radius: 999px; padding: 11px 20px; }

/* hero pełnej szerokości */
.theme-pm126-colorful .pmc-hero {
  min-height: min(690px, calc(100vh - 116px));
  display: flex;
  align-items: center;
  padding: clamp(50px, 7vw, 96px) 0 clamp(72px, 8vw, 110px);
  background:
    radial-gradient(circle at 6% 14%, rgba(245,191,34,.20) 0 105px, transparent 106px),
    radial-gradient(circle at 95% 19%, rgba(121,207,242,.25) 0 220px, transparent 221px),
    radial-gradient(circle at 3% 94%, rgba(109,196,80,.22) 0 180px, transparent 181px),
    linear-gradient(112deg,#FFF8E8 0%,#FFFDF8 45%,#EAF8FF 100%);
}
.theme-pm126-colorful .pmc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .8;
  background:
    radial-gradient(ellipse at 25% 100%, rgba(242,193,78,.17) 0 21%, transparent 21.5%),
    radial-gradient(ellipse at 82% 100%, rgba(86,170,74,.16) 0 19%, transparent 19.5%);
}
.theme-pm126-colorful .pmc-hero::after {
  bottom: -38px;
  height: 92px;
  background:#F1FAEE;
  border-radius: 50% 50% 0 0 / 75% 75% 0 0;
}
.theme-pm126-colorful .pmc-hero-grid {
  grid-template-columns: minmax(360px,.82fr) minmax(520px,1.3fr);
  gap: clamp(26px,4vw,70px);
  width: 100%;
}
.theme-pm126-colorful .pmc-hero-copy { position:relative; z-index:2; }
.theme-pm126-colorful .pmc-kicker { margin-bottom:18px; }
.theme-pm126-colorful .pmc-hero h1 {
  font-size: clamp(3.25rem,6vw,5.8rem);
  line-height:.96;
  max-width: 8.6em;
  margin-bottom:24px;
}
.theme-pm126-colorful .pmc-hero-title-line { display:block; }
.theme-pm126-colorful .pmc-hero-lead { max-width: 31em; font-size:clamp(1.08rem,1.55vw,1.28rem); }
.theme-pm126-colorful .pmc-hero-actions { margin-top:30px; }
.theme-pm126-colorful .pmc-hero-actions .pm-btn { min-height:50px; padding:12px 24px; border-radius:999px; }
.theme-pm126-colorful .pmc-hero-visual { min-width:0; }
.theme-pm126-colorful .pmc-hero-picture {
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transform:none;
  overflow:visible;
}
.theme-pm126-colorful .pmc-hero-picture img {
  width:min(100%,760px);
  margin-inline:auto;
  border-radius:0;
  mix-blend-mode:multiply;
  filter:saturate(1.04) contrast(1.015);
}
.theme-pm126-colorful .pmc-doodle--sun { left:-22px; top:-30px; font-size:4.4rem; }
.theme-pm126-colorful .pmc-doodle--heart { right:2%; bottom:4%; font-size:3.8rem; }
.theme-pm126-colorful .pmc-hero-visual::before,
.theme-pm126-colorful .pmc-hero-visual::after {
  position:absolute;
  z-index:-1;
  font-size:3.2rem;
  opacity:.85;
  pointer-events:none;
}
.theme-pm126-colorful .pmc-hero-visual::before { content:"☁"; color:#9ADDF5; right:5%; top:2%; }
.theme-pm126-colorful .pmc-hero-visual::after { content:"✿"; color:#F2B400; left:3%; bottom:10%; }

/* szybkie skróty jak w mockupie */
.theme-pm126-colorful .pmc-quick { padding:64px 0 82px; }
.theme-pm126-colorful .pmc-quick .pm-container { max-width:1240px; }
.theme-pm126-colorful .pmc-quick-card { min-height:170px; padding:24px 24px 22px; border-radius:26px; }
.theme-pm126-colorful .pmc-quick-card::after {
  content:"›";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.78);
  font-size:1.65rem;
  font-weight:800;
  color:var(--pmc-navy);
}
.theme-pm126-colorful .pmc-quick-card h3,
.theme-pm126-colorful .pmc-quick-card p { padding-right:36px; }

/* sekcja O nas bardziej miękka i przestrzenna */
.theme-pm126-colorful .pmc-about { position:relative; }
.theme-pm126-colorful .pmc-about-grid { grid-template-columns:1.05fr .95fr; }
.theme-pm126-colorful .pmc-about-art {
  min-height:430px;
  border-radius:34px;
  background:linear-gradient(135deg,#DFF6FF 0%,#FFF0B9 58%,#EAF8E4 100%);
  overflow:hidden;
  position:relative;
}
.theme-pm126-colorful .pmc-about-art::before { content:"☀"; position:absolute; right:28px; top:20px; color:#F5B500; font-size:3rem; }
.theme-pm126-colorful .pmc-about-art::after { content:"✦"; position:absolute; left:28px; top:30px; color:#E69A00; font-size:2.2rem; }
.theme-pm126-colorful .pmc-about-art img { max-height:390px; transform:scale(1.08); }
.theme-pm126-colorful .pmc-about-copy h2 { max-width: 12em; }

/* CTA oraz karty */
.theme-pm126-colorful .pmc-feature { border-radius:24px; padding:26px; }
.theme-pm126-colorful .pmc-recruit-band { padding:66px 0; }
.theme-pm126-colorful .pmc-recruit-band .pm-btn { border-radius:999px; padding:13px 24px; }

@media (max-width: 1050px) {
  .theme-pm126-colorful .pmc-hero { min-height:auto; }
  .theme-pm126-colorful .pmc-hero-grid { grid-template-columns:1fr 1.05fr; }
  .theme-pm126-colorful .pmc-hero h1 { font-size:clamp(2.8rem,6vw,4.7rem); }
}
@media (max-width: 760px) {
  .theme-pm126-colorful .pmc-hero { padding:36px 0 76px; }
  .theme-pm126-colorful .pmc-hero-grid { grid-template-columns:1fr; }
  .theme-pm126-colorful .pmc-hero-copy { text-align:left; }
  .theme-pm126-colorful .pmc-hero h1 { font-size:clamp(2.65rem,13vw,4.1rem); max-width:8.5em; }
  .theme-pm126-colorful .pmc-hero-lead { margin-inline:0; }
  .theme-pm126-colorful .pmc-hero-actions { justify-content:flex-start; }
  .theme-pm126-colorful .pmc-hero-picture img { width:100%; }
  .theme-pm126-colorful .pmc-doodle--sun { left:0; }
  .theme-pm126-colorful .pmc-quick-grid { grid-template-columns:1fr; }
  .theme-pm126-colorful .pmc-quick-card { min-height:130px; }
  .theme-pm126-colorful .pmc-about-grid { grid-template-columns:1fr; }
  .theme-pm126-colorful .pmc-about-art { min-height:300px; }
}
@media (max-width: 480px) {
  .theme-pm126-colorful .pmc-hero h1 { font-size:clamp(2.5rem,14vw,3.7rem); }
  .theme-pm126-colorful .pmc-hero-actions { display:grid; grid-template-columns:1fr; width:100%; }
  .theme-pm126-colorful .pmc-hero-actions .pm-btn { width:100%; }
  .theme-pm126-colorful .pmc-quick { padding:52px 0 64px; }
}

/* ============================================================
   PM126 v1.3.0 — COLORFUL HOME / faithful mockup pass
   Cel: możliwie wierne odwzorowanie zaakceptowanego mockupu.
   Nie ładuje zewnętrznych fontów. Używa systemowego ui-rounded/
   Arial Rounded / Trebuchet z bezpiecznymi fallbackami.
   ============================================================ */
body.theme-pm126-colorful {
  --pmc-navy:#082B65;
  --pmc-navy-2:#0B326F;
  --pmc-green:#2E963D;
  --pmc-green-dark:#217532;
  --pmc-pink:#D91563;
  --pmc-pink-dark:#B80E50;
  --pmc-yellow:#FFC51B;
  --pmc-blue:#109DDA;
  --pmc-cream:#FFF9E8;
  --pmc-mint:#F2FAEF;
  --pmc-sky:#DDF5FF;
  --pmc-text:#34455B;
  --pmc-muted:#718095;
  --pm-font-body:"Trebuchet MS","Segoe UI",system-ui,sans-serif;
  --pm-font-head:ui-rounded,"Arial Rounded MT Bold","Trebuchet MS","Segoe UI",system-ui,sans-serif;
  color:var(--pmc-text);
  background:#fff;
  font-family:var(--pm-font-body);
}
body.theme-pm126-colorful h1,
body.theme-pm126-colorful h2,
body.theme-pm126-colorful h3,
body.theme-pm126-colorful h4,
body.theme-pm126-colorful .pm-logo-name,
body.theme-pm126-colorful .pm-btn {
  font-family:var(--pm-font-head);
  letter-spacing:-.025em;
}
body.theme-pm126-colorful .pm-container { max-width:1280px; padding-inline:28px; }
body.theme-pm126-colorful .pm-landing-content { width:100%; max-width:none; margin:0; padding:0; }
body.theme-pm126-colorful .pmc-main { overflow:hidden; }

/* nagłówek — biały, lekki, jak mockup; bez sticky artefaktów na full-page screenshotach */
body.theme-pm126-colorful .pmc-header {
  position:relative;
  top:auto;
  background:#fff;
  border:0;
  box-shadow:0 1px 0 rgba(8,43,101,.08);
  z-index:50;
}
body.theme-pm126-colorful .pmc-a11y-bar {
  background:#fff;
  color:var(--pmc-navy);
  border-bottom:1px solid #EDF1F5;
  font-size:.72rem;
}
body.theme-pm126-colorful .pmc-a11y-bar .pm-container,
body.theme-pm126-colorful .pmc-utility-inner {
  min-height:30px;
  justify-content:flex-end;
  gap:10px;
}
body.theme-pm126-colorful .pmc-a11y-bar .pm-a11y-label { color:#567; font-size:.72rem; }
body.theme-pm126-colorful .pmc-a11y-bar .pm-a11y-controls { gap:5px; }
body.theme-pm126-colorful .pmc-a11y-bar .pm-a11y-btn {
  min-width:28px;
  padding:3px 7px;
  border:1px solid #D9E5D7;
  border-radius:7px;
  background:#F8FBF7;
  color:#236F36;
  font-size:.70rem;
}
body.theme-pm126-colorful .pmc-a11y-bar .pm-a11y-btn[aria-pressed="true"] { background:#FFE9A3; color:#493500; border-color:#D9B21C; }
body.theme-pm126-colorful .pmc-header-inner {
  min-height:84px;
  grid-template-columns:minmax(260px,330px) minmax(0,1fr) auto;
  gap:24px;
}
body.theme-pm126-colorful .pmc-logo { gap:12px; }
body.theme-pm126-colorful .pmc-logo img {
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:50%;
  box-shadow:none;
}
body.theme-pm126-colorful .pmc-logo .pm-logo-name { color:var(--pmc-navy); font-size:1.22rem; font-weight:900; line-height:1.05; }
body.theme-pm126-colorful .pmc-logo .pm-logo-sub { color:var(--pmc-navy); font-size:.92rem; font-weight:800; margin-top:3px; }
body.theme-pm126-colorful .pmc-nav > ul { gap:8px; }
body.theme-pm126-colorful .pmc-nav > ul > li > a {
  color:#17365F;
  font-size:.92rem;
  font-weight:800;
  padding:12px 10px;
  border-radius:0;
  position:relative;
}
body.theme-pm126-colorful .pmc-nav > ul > li > a::before {
  content:""; position:absolute; left:10px; right:10px; bottom:5px; height:3px; border-radius:3px; background:transparent;
}
body.theme-pm126-colorful .pmc-nav > ul > li > a:hover,
body.theme-pm126-colorful .pmc-nav > ul > li > a:focus { background:transparent; color:#24762F; }
body.theme-pm126-colorful .pmc-nav > ul > li > a:hover::before,
body.theme-pm126-colorful .pmc-nav > ul > li > a:focus::before { background:#2C973E; }
body.theme-pm126-colorful .pmc-header-actions { display:flex; align-items:center; gap:10px; }
body.theme-pm126-colorful .pmc-search {
  display:grid; place-items:center; width:40px; height:40px; border-radius:50%; color:var(--pmc-navy); text-decoration:none;
}
body.theme-pm126-colorful .pmc-search:hover { background:#F2F7FC; }
body.theme-pm126-colorful .pmc-search svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:2.25; stroke-linecap:round; }
body.theme-pm126-colorful .pmc-facebook { width:40px; height:40px; font-size:1.15rem; box-shadow:none; }
body.theme-pm126-colorful .pmc-recruit {
  min-height:48px;
  padding:0 24px;
  border-radius:999px;
  background:var(--pmc-pink);
  color:#fff!important;
  border:0;
  box-shadow:0 9px 20px rgba(217,21,99,.19);
  font-size:.92rem;
}
body.theme-pm126-colorful .pmc-recruit:hover { background:var(--pmc-pink-dark); }

/* HERO — proporcje i jasne, żywe tło jak mockup */
body.theme-pm126-colorful .pmc-hero {
  position:relative;
  min-height:600px;
  display:flex;
  align-items:center;
  padding:62px 0 74px;
  background:
    radial-gradient(circle at 2.5% 26%, rgba(255,197,27,.14) 0 105px, transparent 106px),
    radial-gradient(circle at 98% 12%, rgba(87,199,241,.22) 0 150px, transparent 151px),
    linear-gradient(102deg,#FFF9E8 0%,#FFFDF8 49%,#EAF9FF 100%);
  overflow:hidden;
}
body.theme-pm126-colorful .pmc-hero::before {
  content:""; position:absolute; left:-3%; right:51%; bottom:-58px; height:155px;
  background:#FFF0BD; border-radius:50% 55% 0 0 / 75% 80% 0 0; transform:rotate(-1deg); opacity:.88;
}
body.theme-pm126-colorful .pmc-hero::after {
  content:""; position:absolute; right:-8%; left:72%; bottom:-22px; height:170px;
  background:#BEEB9E; border-radius:70% 40% 0 0 / 95% 60% 0 0; opacity:.92;
}
body.theme-pm126-colorful .pmc-hero-grid {
  display:grid;
  grid-template-columns:minmax(390px,.82fr) minmax(560px,1.18fr);
  align-items:center;
  gap:28px;
  position:relative;
  z-index:2;
}
body.theme-pm126-colorful .pmc-hero-copy { padding-left:54px; }
body.theme-pm126-colorful .pmc-kicker {
  display:inline-block;
  margin-bottom:18px;
  color:#163D73;
  font-family:var(--pm-font-body);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase;
}
body.theme-pm126-colorful .pmc-hero h1 {
  color:var(--pmc-navy);
  font-size:clamp(4rem,5.5vw,5.55rem);
  line-height:.94;
  font-weight:900;
  letter-spacing:-.055em;
  max-width:7.8em;
  margin:0 0 24px;
}
body.theme-pm126-colorful .pmc-hero-title-line { display:block; }
body.theme-pm126-colorful .pmc-hero-lead {
  max-width:31em;
  color:#64748A;
  font-size:1.17rem;
  line-height:1.55;
  margin:0;
}
body.theme-pm126-colorful .pmc-hero-actions { display:flex; gap:14px; margin-top:30px; flex-wrap:wrap; }
body.theme-pm126-colorful .pmc-hero-actions .pm-btn {
  min-height:52px; padding:0 26px; border-radius:999px; font-size:.96rem; border-width:2px;
}
body.theme-pm126-colorful .pmc-btn-pink { background:var(--pmc-pink); border-color:var(--pmc-pink); color:#fff!important; box-shadow:0 10px 22px rgba(217,21,99,.16); }
body.theme-pm126-colorful .pmc-btn-outline { background:#fff; border:2px solid #2B913B; color:#247735!important; }
body.theme-pm126-colorful .pmc-hero-visual { position:relative; min-width:0; padding:0 16px 0 6px; }
body.theme-pm126-colorful .pmc-hero-picture { display:block; background:transparent; padding:0; border-radius:0; box-shadow:none; transform:none; overflow:visible; }
body.theme-pm126-colorful .pmc-hero-picture img {
  display:block;
  width:min(100%,760px);
  max-height:480px;
  object-fit:contain;
  margin:0 auto;
  border-radius:0;
  filter:saturate(1.14) contrast(1.025);
}
body.theme-pm126-colorful .pmc-doodle { position:absolute; z-index:3; pointer-events:none; user-select:none; font-family:"Trebuchet MS",sans-serif; }
body.theme-pm126-colorful .pmc-doodle--sun { left:-18px; top:35px; color:#FDBE00; font-size:4.7rem; transform:rotate(-9deg); }
body.theme-pm126-colorful .pmc-doodle--heart { right:1%; bottom:6%; color:#DB1765; font-size:3.6rem; transform:rotate(12deg); }
body.theme-pm126-colorful .pmc-hero-visual::before { content:"☁"; position:absolute; left:-8%; top:12%; color:#9EE0F7; font-size:5.1rem; opacity:.8; transform:rotate(-7deg); }
body.theme-pm126-colorful .pmc-hero-visual::after { content:"✦"; position:absolute; right:7%; top:-3%; color:#F4BB00; font-size:4.8rem; transform:rotate(11deg); }

/* szybkie skróty */
body.theme-pm126-colorful .pmc-quick {
  position:relative;
  padding:48px 0 58px;
  background:linear-gradient(180deg,#F5FCEF 0%,#F0F9EC 100%);
  overflow:hidden;
}
body.theme-pm126-colorful .pmc-quick::before { content:"✿"; position:absolute; left:3%; top:55px; color:#F6BD13; font-size:3.2rem; transform:rotate(-15deg); }
body.theme-pm126-colorful .pmc-quick::after { content:"♡"; position:absolute; right:3%; bottom:36px; color:#D91563; font-size:3.4rem; transform:rotate(10deg); }
body.theme-pm126-colorful .pmc-section-head { max-width:790px; margin:0 auto 30px; text-align:center; }
body.theme-pm126-colorful .pmc-section-head h2 {
  color:var(--pmc-navy); font-size:clamp(2.45rem,3.4vw,3.25rem); line-height:1.02; margin-bottom:10px; font-weight:900;
}
body.theme-pm126-colorful .pmc-section-head p { color:#748197; font-size:1rem; }
body.theme-pm126-colorful .pmc-quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
body.theme-pm126-colorful .pmc-quick-card {
  min-height:134px;
  display:grid;
  grid-template-columns:54px 1fr 36px;
  grid-template-rows:auto auto;
  column-gap:14px;
  align-content:center;
  padding:22px 18px;
  border:1px solid rgba(8,43,101,.055);
  border-radius:22px;
  box-shadow:none;
  text-decoration:none;
  color:#233652!important;
  transition:transform .18s ease, box-shadow .18s ease;
}
body.theme-pm126-colorful .pmc-quick-card::after {
  content:"›";
  grid-column:3; grid-row:1/3; align-self:center; justify-self:end;
  position:static; transform:none;
  width:34px; height:34px; display:grid; place-items:center;
  border-radius:50%; background:rgba(255,255,255,.82); color:var(--pmc-pink); font-size:1.55rem; font-weight:900;
}
body.theme-pm126-colorful .pmc-quick-card:hover { transform:translateY(-3px); box-shadow:0 10px 24px rgba(16,55,88,.08); }
body.theme-pm126-colorful .pmc-quick-icon {
  grid-column:1; grid-row:1/3; align-self:center;
  width:50px; height:50px; border-radius:18px; font-size:1.4rem;
}
body.theme-pm126-colorful .pmc-quick-card h3 { grid-column:2; grid-row:1; margin:0 0 4px; font-size:1.05rem; font-weight:900; padding:0; }
body.theme-pm126-colorful .pmc-quick-card p { grid-column:2; grid-row:2; margin:0; color:#718095; line-height:1.35; font-size:.84rem; padding:0; }
body.theme-pm126-colorful .pmc-quick-card--pink { background:#FFF1F6; }
body.theme-pm126-colorful .pmc-quick-card--pink .pmc-quick-icon { background:#FFD7E7; color:#D91563; }
body.theme-pm126-colorful .pmc-quick-card--blue { background:#EEF8FF; }
body.theme-pm126-colorful .pmc-quick-card--blue .pmc-quick-icon { background:#D8F0FF; color:#108FCC; }
body.theme-pm126-colorful .pmc-quick-card--blue::after { color:#109DDA; }
body.theme-pm126-colorful .pmc-quick-card--yellow { background:#FFF9E9; }
body.theme-pm126-colorful .pmc-quick-card--yellow .pmc-quick-icon { background:#FFECA8; color:#C88900; }
body.theme-pm126-colorful .pmc-quick-card--yellow::after { color:#D79A00; }
body.theme-pm126-colorful .pmc-quick-card--green { background:#F2FAEF; }
body.theme-pm126-colorful .pmc-quick-card--green .pmc-quick-icon { background:#DDF3D6; color:#2D963D; }
body.theme-pm126-colorful .pmc-quick-card--green::after { color:#2D963D; }

/* O NAS — zdjęcie/ilustracja z zaakceptowanego mockupu */
body.theme-pm126-colorful .pmc-about { position:relative; padding:72px 0 78px; background:#fff; overflow:hidden; }
body.theme-pm126-colorful .pmc-about::before { content:"♡"; position:absolute; right:8%; top:35px; font-size:4rem; color:#F0B510; transform:rotate(-16deg); opacity:.85; }
body.theme-pm126-colorful .pmc-about::after { content:"✿"; position:absolute; right:3%; bottom:22px; font-size:4rem; color:#E92B79; transform:rotate(8deg); opacity:.82; }
body.theme-pm126-colorful .pmc-about-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:38px; align-items:center; }
body.theme-pm126-colorful .pmc-about-art {
  position:relative;
  min-height:0;
  aspect-ratio:2.05/1;
  padding:0;
  border-radius:28px;
  overflow:hidden;
  background:#F5F8FA;
  box-shadow:0 15px 38px rgba(8,43,101,.11);
}
body.theme-pm126-colorful .pmc-about-art::before,
body.theme-pm126-colorful .pmc-about-art::after { display:none; }
body.theme-pm126-colorful .pmc-about-art picture,
body.theme-pm126-colorful .pmc-about-art img { width:100%; height:100%; display:block; }
body.theme-pm126-colorful .pmc-about-art img { object-fit:cover; transform:none; max-height:none; }
body.theme-pm126-colorful .pmc-about-copy { padding:12px 28px 12px 0; }
body.theme-pm126-colorful .pmc-about-copy .pmc-kicker { color:#2C963C; letter-spacing:.22em; margin-bottom:12px; }
body.theme-pm126-colorful .pmc-about-copy h2 {
  color:var(--pmc-navy); font-size:clamp(2.25rem,3.3vw,3.25rem); line-height:1.04; max-width:14em; margin-bottom:18px;
}
body.theme-pm126-colorful .pmc-about-copy p { color:#68778B; font-size:1.02rem; line-height:1.55; max-width:46em; }
body.theme-pm126-colorful .pmc-points { display:none; }
body.theme-pm126-colorful .pmc-about-copy .pm-btn { min-height:48px; border-radius:999px; padding:0 23px; }

/* dalsza część strony — nadal spójna, ale mniej dominująca niż hero */
body.theme-pm126-colorful .pmc-why { padding:62px 0 70px; background:#FFFDF8; }
body.theme-pm126-colorful .pmc-why-grid { gap:14px; }
body.theme-pm126-colorful .pmc-feature { border-radius:20px; padding:22px; box-shadow:0 7px 18px rgba(8,43,101,.055); }
body.theme-pm126-colorful .pmc-feature strong { color:var(--pmc-navy); }
body.theme-pm126-colorful .pmc-recruit-band { background:#2F8E45; padding:48px 0; }
body.theme-pm126-colorful .pmc-recruit-band h2 { font-size:2.2rem; }
body.theme-pm126-colorful .pmc-recruit-band .pm-btn { min-height:48px; border-radius:999px; padding:0 24px; }

/* tablet */
@media (max-width:1120px) {
  body.theme-pm126-colorful .pmc-header-inner { grid-template-columns:minmax(230px,280px) auto; }
  body.theme-pm126-colorful .pm-nav-toggle { display:inline-flex; align-items:center; gap:8px; justify-self:end; background:#fff; color:var(--pmc-navy); border:2px solid #DBE6F0; }
  body.theme-pm126-colorful .pmc-nav { grid-column:1/-1; display:none; width:100%; }
  body.theme-pm126-colorful .pmc-nav.pm-nav-open { display:block; padding-bottom:14px; }
  body.theme-pm126-colorful .pmc-nav > ul { flex-direction:column; align-items:stretch; }
  body.theme-pm126-colorful .pmc-header-actions { position:absolute; right:105px; top:50px; }
  body.theme-pm126-colorful .pmc-hero-grid { grid-template-columns:.85fr 1.15fr; }
  body.theme-pm126-colorful .pmc-hero-copy { padding-left:10px; }
  body.theme-pm126-colorful .pmc-hero h1 { font-size:clamp(3.25rem,6vw,4.4rem); }
}

/* mobile-first zachowanie */
@media (max-width:780px) {
  body.theme-pm126-colorful .pm-container { padding-inline:18px; }
  body.theme-pm126-colorful .pmc-a11y-bar .pm-container { justify-content:center; }
  body.theme-pm126-colorful .pmc-header-inner { min-height:76px; grid-template-columns:1fr auto; gap:10px; }
  body.theme-pm126-colorful .pmc-logo img { width:48px; height:48px; }
  body.theme-pm126-colorful .pmc-logo .pm-logo-name { font-size:1.02rem; }
  body.theme-pm126-colorful .pmc-logo .pm-logo-sub { font-size:.78rem; }
  body.theme-pm126-colorful .pmc-header-actions { display:none; }
  body.theme-pm126-colorful .pmc-hero { min-height:0; padding:42px 0 56px; }
  body.theme-pm126-colorful .pmc-hero-grid { grid-template-columns:1fr; gap:24px; }
  body.theme-pm126-colorful .pmc-hero-copy { padding:0; text-align:left; }
  body.theme-pm126-colorful .pmc-kicker { font-size:.68rem; }
  body.theme-pm126-colorful .pmc-hero h1 { max-width:8em; font-size:clamp(3.15rem,15vw,4.3rem); line-height:.93; }
  body.theme-pm126-colorful .pmc-hero-lead { font-size:1rem; max-width:34em; }
  body.theme-pm126-colorful .pmc-hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; width:100%; }
  body.theme-pm126-colorful .pmc-hero-actions .pm-btn { padding-inline:14px; text-align:center; }
  body.theme-pm126-colorful .pmc-hero-visual { padding:4px 0 0; }
  body.theme-pm126-colorful .pmc-hero-picture img { max-height:none; width:100%; }
  body.theme-pm126-colorful .pmc-doodle--sun { left:auto; right:2%; top:-10px; font-size:3rem; }
  body.theme-pm126-colorful .pmc-hero-visual::before { font-size:3.1rem; left:0; }
  body.theme-pm126-colorful .pmc-quick { padding:42px 0 50px; }
  body.theme-pm126-colorful .pmc-section-head h2 { font-size:2.25rem; }
  body.theme-pm126-colorful .pmc-quick-grid { grid-template-columns:1fr; gap:12px; }
  body.theme-pm126-colorful .pmc-quick-card { min-height:112px; }
  body.theme-pm126-colorful .pmc-about { padding:50px 0 60px; }
  body.theme-pm126-colorful .pmc-about-grid { grid-template-columns:1fr; gap:28px; }
  body.theme-pm126-colorful .pmc-about-art { aspect-ratio:1.55/1; border-radius:22px; }
  body.theme-pm126-colorful .pmc-about-copy { padding:0; }
  body.theme-pm126-colorful .pmc-about-copy h2 { font-size:2.35rem; }
  body.theme-pm126-colorful .pmc-why-grid { grid-template-columns:1fr; }
  body.theme-pm126-colorful .pmc-recruit-inner { flex-direction:column; align-items:flex-start; }
}
@media (max-width:460px) {
  body.theme-pm126-colorful .pmc-hero-actions { grid-template-columns:1fr; }
  body.theme-pm126-colorful .pmc-hero h1 { font-size:clamp(2.8rem,15vw,3.7rem); }
  body.theme-pm126-colorful .pmc-quick-card { grid-template-columns:48px 1fr 32px; padding:17px 14px; }
  body.theme-pm126-colorful .pmc-quick-icon { width:44px; height:44px; border-radius:15px; }
}

/* wysoki kontrast — zachowujemy funkcjonalność dostępności */
html[data-contrast="high"] body.theme-pm126-colorful .pmc-hero,
html[data-contrast="high"] body.theme-pm126-colorful .pmc-quick,
html[data-contrast="high"] body.theme-pm126-colorful .pmc-about,
html[data-contrast="high"] body.theme-pm126-colorful .pmc-why { background:#fff!important; }
html[data-contrast="high"] body.theme-pm126-colorful .pmc-quick-card,
html[data-contrast="high"] body.theme-pm126-colorful .pmc-feature { background:#fff!important; border:2px solid #111!important; }

/* v1.3.0 — detale ikon/CTA */
body.theme-pm126-colorful .pmc-quick-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
body.theme-pm126-colorful .pmc-btn-green { background:#2D963D; color:#fff!important; border:2px solid #2D963D; border-radius:999px; min-height:48px; padding:0 24px; box-shadow:0 7px 16px rgba(45,150,61,.16); }
body.theme-pm126-colorful .pmc-btn-green:hover { background:#247C32; border-color:#247C32; }

/* ============================================================
   PM126 v1.3.1 — typography + button geometry fidelity pass
   ============================================================ */
body.theme-pm126-colorful {
  --pm-font-body:"Outfit","Segoe UI",Arial,sans-serif;
  --pm-font-head:"Outfit","Segoe UI",Arial,sans-serif;
  --pmc-navy:#102E67;
  --pmc-text:#52627A;
  --pmc-muted:#77869A;
}
body.theme-pm126-colorful,
body.theme-pm126-colorful p,
body.theme-pm126-colorful li,
body.theme-pm126-colorful a,
body.theme-pm126-colorful button,
body.theme-pm126-colorful input,
body.theme-pm126-colorful textarea,
body.theme-pm126-colorful select {
  font-family:var(--pm-font-body);
}
body.theme-pm126-colorful h1,
body.theme-pm126-colorful h2,
body.theme-pm126-colorful h3,
body.theme-pm126-colorful h4,
body.theme-pm126-colorful .pm-logo-name,
body.theme-pm126-colorful .pm-logo-sub {
  font-family:var(--pm-font-head);
  font-weight:700;
  letter-spacing:-.035em;
}
body.theme-pm126-colorful .pmc-hero h1 {
  font-weight:700;
  letter-spacing:-.05em;
  line-height:.96;
  max-width:9.2em;
}
body.theme-pm126-colorful .pmc-section-head h2,
body.theme-pm126-colorful .pmc-about-copy h2,
body.theme-pm126-colorful .pmc-recruit-band h2 {
  font-weight:700;
  letter-spacing:-.035em;
}
body.theme-pm126-colorful .pmc-nav > ul > li > a,
body.theme-pm126-colorful .pmc-logo .pm-logo-name,
body.theme-pm126-colorful .pmc-logo .pm-logo-sub {
  font-weight:700;
}

/* Buttons: force a single centered line and identical geometry on anchors/buttons. */
body.theme-pm126-colorful .pm-btn,
body.theme-pm126-colorful .pmc-recruit,
body.theme-pm126-colorful .pmc-btn-green,
body.theme-pm126-colorful .pmc-recruit-band .pm-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  box-sizing:border-box;
  font-family:var(--pm-font-body);
  font-weight:700;
  line-height:1.15;
  letter-spacing:0;
  white-space:nowrap;
  vertical-align:middle;
  text-align:center;
}
body.theme-pm126-colorful .pmc-hero-actions .pm-btn {
  min-height:50px;
  padding:0 25px;
}
body.theme-pm126-colorful .pmc-recruit {
  min-height:46px;
  padding:0 22px;
}
body.theme-pm126-colorful .pmc-about-copy .pm-btn,
body.theme-pm126-colorful .pmc-btn-green,
body.theme-pm126-colorful .pmc-recruit-band .pm-btn {
  min-height:48px;
  padding:0 24px;
}
body.theme-pm126-colorful .pm-btn > span,
body.theme-pm126-colorful .pmc-recruit > span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  flex:0 0 auto;
}

/* Match accepted mockup spacing more closely. */
body.theme-pm126-colorful .pmc-hero-grid {
  grid-template-columns:minmax(410px,.86fr) minmax(600px,1.14fr);
  gap:38px;
}
body.theme-pm126-colorful .pmc-hero-copy { padding-left:24px; }
body.theme-pm126-colorful .pmc-hero-lead { max-width:29em; color:#5E6E84; }
body.theme-pm126-colorful .pmc-quick-card h3 { font-weight:700; }
body.theme-pm126-colorful .pmc-feature strong { font-weight:700; }

@media (max-width:1050px) {
  body.theme-pm126-colorful .pmc-hero-grid { grid-template-columns:.9fr 1.1fr; gap:24px; }
  body.theme-pm126-colorful .pmc-hero-copy { padding-left:0; }
}
@media (max-width:760px) {
  body.theme-pm126-colorful .pmc-hero h1 { max-width:8.2em; }
  body.theme-pm126-colorful .pmc-hero-actions .pm-btn,
  body.theme-pm126-colorful .pmc-recruit-band .pm-btn { width:100%; white-space:normal; min-height:48px; }
}

/* ============================================================
   PM126 v1.4.0 — pixel-fit homepage closer to approved mockup
   ============================================================ */
body.theme-pm126-colorful {
  --pmc-navy:#173F85;
  --pmc-green:#2FA043;
  --pmc-green-dark:#1D8A34;
  --pmc-pink:#F22D7A;
  --pmc-pink-dark:#DB1F69;
  --pmc-sand:#FFF8E8;
  --pmc-sky:#DDF4FF;
  --pmc-mint:#E6F5E0;
  --pmc-cream:#FEF7EA;
  --pmc-text:#4E6584;
  --pm-font-head:"Fredoka","Trebuchet MS","Segoe UI",system-ui,sans-serif;
  --pm-font-body:"Nunito","Outfit","Trebuchet MS","Segoe UI",system-ui,sans-serif;
  background:#F8FBF5;
}
body.theme-pm126-colorful h1,
body.theme-pm126-colorful h2,
body.theme-pm126-colorful h3,
body.theme-pm126-colorful .pm-logo-name,
body.theme-pm126-colorful .pm-logo-sub,
body.theme-pm126-colorful .pm-nav a,
body.theme-pm126-colorful .pm-btn,
body.theme-pm126-colorful .pmc-feature strong {
  font-family:var(--pm-font-head);
}
body.theme-pm126-colorful .pm-main { overflow:hidden; }
body.theme-pm126-colorful .pm-container { max-width:1360px; padding-inline:32px; }

/* top line + header */
body.theme-pm126-colorful .pm-a11y-bar { display:none; }
body.theme-pm126-colorful .pm-header { position:sticky; top:0; background:#fff; border-bottom:none; box-shadow:0 2px 16px rgba(22,63,133,.06); }
body.theme-pm126-colorful .pmc-topline { background:#fff; border-bottom:1px solid rgba(23,63,133,.08); }
body.theme-pm126-colorful .pmc-topline-inner { min-height:32px; display:flex; justify-content:flex-end; align-items:center; gap:14px; }
body.theme-pm126-colorful .pmc-a11y-compact { gap:8px; }
body.theme-pm126-colorful .pmc-a11y-link { color:#3F5877; text-decoration:none; font-size:.82rem; font-weight:700; }
body.theme-pm126-colorful .pm-a11y-btn { min-width:auto; padding:3px 8px; border-radius:10px; background:#F6F4D9; border:1px solid #D6C996; color:#5A4A00; font-weight:800; font-size:.76rem; }
body.theme-pm126-colorful .pm-header-inner { grid-template-columns: 300px 1fr auto; min-height:84px; gap:20px; }
body.theme-pm126-colorful .pmc-logo img { width:72px; border-radius:0; }
body.theme-pm126-colorful .pm-logo-name { font-size:1.55rem; line-height:1; color:#173F85; }
body.theme-pm126-colorful .pm-logo-sub { font-size:1.55rem; line-height:1; color:#173F85; }
body.theme-pm126-colorful .pm-nav ul { gap:8px; justify-content:center; }
body.theme-pm126-colorful .pm-nav a { font-size:1rem; color:#173F85; padding:10px 12px; font-weight:800; border-radius:12px; }
body.theme-pm126-colorful .pm-nav a:hover,
body.theme-pm126-colorful .pm-nav a:focus { background:#EFF7FE; color:#173F85; }
body.theme-pm126-colorful .pmc-header-actions { display:flex; align-items:center; gap:14px; }
body.theme-pm126-colorful .pmc-search { display:grid; place-items:center; width:40px; height:40px; color:#173F85; text-decoration:none; }
body.theme-pm126-colorful .pmc-search svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:2.25; stroke-linecap:round; stroke-linejoin:round; }
body.theme-pm126-colorful .pmc-facebook { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#1977F3; color:#fff; text-decoration:none; font-weight:900; font-size:1.35rem; }
body.theme-pm126-colorful .pmc-recruit,
body.theme-pm126-colorful .pm-btn { display:inline-flex; align-items:center; justify-content:center; gap:.6rem; white-space:nowrap; line-height:1; text-decoration:none; }
body.theme-pm126-colorful .pmc-recruit { min-height:54px; padding:0 26px; border-radius:18px; background:linear-gradient(135deg,#F0307F,#F24A85); color:#fff; border:none; box-shadow:0 14px 24px rgba(242,45,122,.18); font-size:1.02rem; }
body.theme-pm126-colorful .pmc-recruit:hover { transform:translateY(-1px); }

/* hero */
body.theme-pm126-colorful .pmc-hero { position:relative; background:linear-gradient(180deg,#FFF8EA 0%,#FFF8EA 56%,#F6FFF2 56%,#F6FFF2 100%); padding:40px 0 56px; }
body.theme-pm126-colorful .pmc-hero::before { content:""; position:absolute; inset:0; background:
  radial-gradient(circle at 4% 12%, #F4E8B4 0 52px, transparent 53px),
  radial-gradient(circle at 97% 9%, #CFEFFF 0 100px, transparent 101px),
  radial-gradient(circle at 4% 88%, rgba(177,220,143,.45) 0 90px, transparent 91px),
  radial-gradient(circle at 26% 100%, rgba(244,232,180,.55) 0 160px, transparent 161px),
  radial-gradient(circle at 92% 82%, rgba(185,231,174,.65) 0 160px, transparent 161px);
  pointer-events:none;
}
body.theme-pm126-colorful .pmc-hero::after { content:""; position:absolute; left:-4%; right:-4%; bottom:-34px; height:70px; background:#F3FAEF; border-radius:50% 50% 0 0 / 90% 90% 0 0; }
body.theme-pm126-colorful .pmc-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns: .95fr 1.15fr; gap:48px; align-items:center; }
body.theme-pm126-colorful .pmc-hero-copy { padding-left:8px; }
body.theme-pm126-colorful .pmc-kicker { display:block; text-transform:uppercase; letter-spacing:.22em; font-size:.92rem; font-weight:800; color:#173F85; margin-bottom:18px; }
body.theme-pm126-colorful .pmc-hero h1 { color:#173F85; font-size:clamp(4.3rem,6.2vw,6.7rem); line-height:.92; letter-spacing:-.045em; margin:0 0 22px; max-width:7.2em; }
body.theme-pm126-colorful .pmc-hero-title-line { display:block; }
body.theme-pm126-colorful .pmc-hero-lead { max-width:26rem; font-size:1.62rem; line-height:1.45; color:#536A87; }
body.theme-pm126-colorful .pmc-hero-actions { display:flex; gap:16px; margin-top:28px; }
body.theme-pm126-colorful .pmc-btn-pink,
body.theme-pm126-colorful .pmc-btn-outline,
body.theme-pm126-colorful .pmc-btn-green { min-height:64px; padding:0 26px; border-radius:24px; font-size:1.06rem; font-weight:800; }
body.theme-pm126-colorful .pmc-btn-pink { background:#F22D7A; color:#fff; box-shadow:0 14px 28px rgba(242,45,122,.2); }
body.theme-pm126-colorful .pmc-btn-pink:hover { background:#DB1F69; color:#fff; }
body.theme-pm126-colorful .pmc-btn-outline { border:3px solid #2FA043; color:#1C8A37; background:#fff; }
body.theme-pm126-colorful .pmc-btn-outline:hover { background:#F2FFF4; }
body.theme-pm126-colorful .pmc-btn-green { background:#2FA043; color:#fff; padding:0 24px; }
body.theme-pm126-colorful .pmc-btn-green:hover { background:#228737; color:#fff; }
body.theme-pm126-colorful .pmc-hero-visual { position:relative; padding-top:18px; }
body.theme-pm126-colorful .pmc-hero-picture { background:none; box-shadow:none; padding:0; transform:none; display:block; }
body.theme-pm126-colorful .pmc-hero-picture img { width:min(100%, 820px); margin-inline:auto; display:block; }
body.theme-pm126-colorful .pmc-doodle { position:absolute; font-weight:900; line-height:1; }
body.theme-pm126-colorful .pmc-doodle--sun { left:-10px; top:30px; color:#F5C200; font-size:3.2rem; }
body.theme-pm126-colorful .pmc-doodle--heart { right:10px; bottom:12%; color:#EC3E8C; font-size:3rem; }

/* quick */
body.theme-pm126-colorful .pmc-quick { position:relative; padding:74px 0 72px; background:#F1F8EE; }
body.theme-pm126-colorful .pmc-quick::before { content:"✿"; position:absolute; left:46px; top:82px; color:#F4BB00; font-size:2.8rem; }
body.theme-pm126-colorful .pmc-quick::after { content:"♡"; position:absolute; right:44px; bottom:58px; color:#F1478D; font-size:2.6rem; }
body.theme-pm126-colorful .pmc-section-head { text-align:center; max-width:820px; margin:0 auto 34px; }
body.theme-pm126-colorful .pmc-section-head h2 { color:#173F85; font-size:clamp(2.6rem,4vw,4rem); margin-bottom:8px; letter-spacing:-.03em; }
body.theme-pm126-colorful .pmc-section-head p { color:#5B6F86; font-size:1.15rem; }
body.theme-pm126-colorful .pmc-quick-grid { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:22px; }
body.theme-pm126-colorful .pmc-quick-card { position:relative; display:block; min-height:170px; padding:28px 28px 28px; border-radius:24px; text-decoration:none; border:1px solid rgba(23,63,133,.08); box-shadow:0 10px 26px rgba(23,63,133,.06); }
body.theme-pm126-colorful .pmc-quick-card h3 { font-size:1.4rem; color:#173F85; margin:0 0 8px; }
body.theme-pm126-colorful .pmc-quick-card p { font-size:1rem; line-height:1.55; color:#5E7287; max-width:14em; margin:0; }
body.theme-pm126-colorful .pmc-quick-card::after { content:"›"; position:absolute; right:22px; top:50%; transform:translateY(-50%); width:36px; height:36px; border-radius:50%; display:grid; place-items:center; font-size:1.6rem; color:#8396AD; background:rgba(255,255,255,.75); }
body.theme-pm126-colorful .pmc-quick-icon { display:grid; place-items:center; width:64px; height:64px; border-radius:18px; margin-bottom:18px; }
body.theme-pm126-colorful .pmc-quick-icon svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-width:1.85; stroke-linecap:round; stroke-linejoin:round; }
body.theme-pm126-colorful .pmc-quick-card--pink { background:#FFF0F6; }
body.theme-pm126-colorful .pmc-quick-card--pink .pmc-quick-icon { background:#FFE0EE; color:#E73E84; }
body.theme-pm126-colorful .pmc-quick-card--blue { background:#EFF7FF; }
body.theme-pm126-colorful .pmc-quick-card--blue .pmc-quick-icon { background:#DDF1FF; color:#2A9ADF; }
body.theme-pm126-colorful .pmc-quick-card--yellow { background:#FFF8E8; }
body.theme-pm126-colorful .pmc-quick-card--yellow .pmc-quick-icon { background:#FFEFB4; color:#D9A000; }
body.theme-pm126-colorful .pmc-quick-card--green { background:#F3FBEF; }
body.theme-pm126-colorful .pmc-quick-card--green .pmc-quick-icon { background:#E4F6DB; color:#49A643; }

/* about */
body.theme-pm126-colorful .pmc-about { background:#FFFFFF; padding:88px 0 92px; position:relative; }
body.theme-pm126-colorful .pmc-about::before { content:"♡"; position:absolute; right:58px; top:80px; color:#F1C332; font-size:2.7rem; }
body.theme-pm126-colorful .pmc-about::after { content:"✿"; position:absolute; right:34px; bottom:48px; color:#F1478D; font-size:3rem; }
body.theme-pm126-colorful .pmc-about-grid { display:grid; grid-template-columns: minmax(420px, .95fr) minmax(0,1fr); gap:58px; align-items:center; }
body.theme-pm126-colorful .pmc-about-art img { width:100%; border-radius:30px; box-shadow:0 20px 40px rgba(23,63,133,.08); }
body.theme-pm126-colorful .pmc-about-copy .pmc-kicker { color:#4DA14C; margin-bottom:16px; }
body.theme-pm126-colorful .pmc-about-copy h2 { color:#173F85; font-size:clamp(3rem,4.5vw,4.8rem); line-height:1.03; max-width:10ch; margin-bottom:16px; letter-spacing:-.04em; }
body.theme-pm126-colorful .pmc-about-copy p { font-size:1.14rem; color:#5A6D84; max-width:34rem; }
body.theme-pm126-colorful .pmc-about-copy .pm-btn { margin-top:18px; }

/* why */
body.theme-pm126-colorful .pmc-why { background:#FEFAF0; padding:88px 0 92px; }
body.theme-pm126-colorful .pmc-why-grid { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:22px; }
body.theme-pm126-colorful .pmc-feature { background:#fff; border:1px solid rgba(23,63,133,.08); border-radius:22px; padding:30px 24px; box-shadow:0 10px 26px rgba(23,63,133,.05); }
body.theme-pm126-colorful .pmc-feature strong { display:block; color:#173F85; font-size:1.32rem; margin-bottom:10px; }
body.theme-pm126-colorful .pmc-feature p { font-size:1rem; line-height:1.55; color:#61758B; margin:0; }

/* recruit */
body.theme-pm126-colorful .pmc-recruit-band { background:#2B9C43; color:#fff; padding:40px 0; }
body.theme-pm126-colorful .pmc-recruit-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; }
body.theme-pm126-colorful .pmc-recruit-inner h2 { color:#fff; font-size:3rem; line-height:1.05; max-width:13ch; margin-bottom:8px; }
body.theme-pm126-colorful .pmc-recruit-inner p { color:rgba(255,255,255,.92); margin:0; font-size:1.08rem; }
body.theme-pm126-colorful .pmc-recruit-band .pm-btn { background:#fff; color:#1E8E37; min-height:58px; border-radius:999px; padding:0 28px; font-weight:800; }

/* footer area more like mockup */
body.theme-pm126-colorful .pm-facebook-section { background:#EEF5EF; padding:84px 0 96px; }
body.theme-pm126-colorful .pm-facebook-badge { background:#4D9C46; }
body.theme-pm126-colorful .pm-facebook-heading { color:#173F85; font-family:var(--pm-font-head); font-size:2rem; }
body.theme-pm126-colorful .pm-facebook-card { border-radius:24px; box-shadow:0 16px 34px rgba(23,63,133,.06); }
body.theme-pm126-colorful .pm-footer { background:#23833A; color:#fff; }
body.theme-pm126-colorful .pm-footer a { color:#fff; }

/* buttons and CTA alignment fix */
body.theme-pm126-colorful .pm-btn span[aria-hidden="true"] { display:inline-flex; align-items:center; justify-content:center; line-height:1; }

@media (max-width: 1180px) {
  body.theme-pm126-colorful .pm-container { padding-inline:24px; }
  body.theme-pm126-colorful .pm-header-inner { grid-template-columns: 260px 1fr auto; }
  body.theme-pm126-colorful .pm-nav a { font-size:.92rem; padding-inline:8px; }
  body.theme-pm126-colorful .pmc-hero h1 { font-size:clamp(3.9rem,6vw,5.4rem); }
  body.theme-pm126-colorful .pmc-hero-lead { font-size:1.34rem; }
  body.theme-pm126-colorful .pmc-about-copy h2 { font-size:clamp(2.6rem,4vw,3.9rem); }
}
@media (max-width: 980px) {
  body.theme-pm126-colorful .pm-header-inner { grid-template-columns: 1fr auto; }
  body.theme-pm126-colorful .pm-nav-toggle { display:inline-flex; align-items:center; gap:8px; order:2; justify-self:end; background:#173F85; border:none; border-radius:16px; }
  body.theme-pm126-colorful .pm-nav { display:none; grid-column:1 / -1; order:4; width:100%; }
  body.theme-pm126-colorful .pm-nav.is-open { display:block; }
  body.theme-pm126-colorful .pm-nav ul { flex-direction:column; gap:8px; padding:8px 0 14px; }
  body.theme-pm126-colorful .pm-nav a { padding:12px 14px; background:#F6FAFF; }
  body.theme-pm126-colorful .pmc-header-actions { justify-self:end; }
  body.theme-pm126-colorful .pmc-hero-grid,
  body.theme-pm126-colorful .pmc-about-grid,
  body.theme-pm126-colorful .pmc-recruit-inner { grid-template-columns:1fr; display:grid; }
  body.theme-pm126-colorful .pmc-hero { padding:28px 0 40px; }
  body.theme-pm126-colorful .pmc-hero-grid { gap:28px; }
  body.theme-pm126-colorful .pmc-hero-copy { order:1; padding-left:0; }
  body.theme-pm126-colorful .pmc-hero-visual { order:2; }
  body.theme-pm126-colorful .pmc-hero h1 { font-size:clamp(3.1rem,10.5vw,4.9rem); max-width:7ch; }
  body.theme-pm126-colorful .pmc-hero-lead { font-size:1.1rem; max-width:30rem; }
  body.theme-pm126-colorful .pmc-quick-grid,
  body.theme-pm126-colorful .pmc-why-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.theme-pm126-colorful .pmc-about-grid { gap:36px; }
  body.theme-pm126-colorful .pmc-about-copy h2 { max-width:none; }
  body.theme-pm126-colorful .pmc-recruit-inner h2 { max-width:none; font-size:2.5rem; }
}
@media (max-width: 640px) {
  body.theme-pm126-colorful .pm-container { padding-inline:16px; }
  body.theme-pm126-colorful .pmc-topline-inner { justify-content:flex-start; flex-wrap:wrap; padding-block:8px; }
  body.theme-pm126-colorful .pm-header-inner { min-height:74px; grid-template-columns:1fr auto; gap:12px; }
  body.theme-pm126-colorful .pmc-header-actions { gap:8px; }
  body.theme-pm126-colorful .pmc-search { display:none; }
  body.theme-pm126-colorful .pmc-facebook { width:36px; height:36px; font-size:1.1rem; }
  body.theme-pm126-colorful .pmc-recruit { min-height:44px; padding-inline:14px; font-size:.92rem; }
  body.theme-pm126-colorful .pm-logo-name { font-size:1.12rem; }
  body.theme-pm126-colorful .pm-logo-sub { font-size:1.12rem; }
  body.theme-pm126-colorful .pmc-hero { padding:18px 0 28px; }
  body.theme-pm126-colorful .pmc-hero h1 { font-size:clamp(2.8rem,13vw,4rem); }
  body.theme-pm126-colorful .pmc-hero-lead { font-size:1rem; }
  body.theme-pm126-colorful .pmc-hero-actions { display:grid; grid-template-columns:1fr; gap:12px; }
  body.theme-pm126-colorful .pmc-btn-pink,
  body.theme-pm126-colorful .pmc-btn-outline,
  body.theme-pm126-colorful .pmc-btn-green,
  body.theme-pm126-colorful .pmc-recruit-band .pm-btn { width:100%; }
  body.theme-pm126-colorful .pmc-quick,
  body.theme-pm126-colorful .pmc-about,
  body.theme-pm126-colorful .pmc-why,
  body.theme-pm126-colorful .pm-facebook-section { padding-block:56px; }
  body.theme-pm126-colorful .pmc-quick-grid,
  body.theme-pm126-colorful .pmc-why-grid { grid-template-columns:1fr; }
  body.theme-pm126-colorful .pmc-quick-card { min-height:0; }
  body.theme-pm126-colorful .pmc-section-head h2 { font-size:2.2rem; }
  body.theme-pm126-colorful .pmc-about-copy h2 { font-size:2.4rem; }
  body.theme-pm126-colorful .pmc-about-art img { border-radius:22px; }
  body.theme-pm126-colorful .pmc-recruit-inner h2 { font-size:2.1rem; }
}


/* ============================================================
   PM126 v1.5.0 — spójny wygląd wszystkich podstron
   ============================================================ */
body.theme-pm126-inner {
  background: #F8FBF5;
  --pm-font-head: "Fredoka", "Trebuchet MS", "Segoe UI", system-ui, sans-serif;
  --pm-font-body: "Nunito", "Outfit", "Segoe UI", system-ui, sans-serif;
}

body.theme-pm126-inner .pm-main {
  overflow: hidden;
}

body.theme-pm126-inner .pm-page {
  padding: 0;
  background:
    linear-gradient(180deg, #FFFDF8 0, #FFFDF8 260px, #F8FBF5 260px, #F8FBF5 100%);
}

body.theme-pm126-inner .pm-inner-hero {
  position: relative;
  min-height: 245px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 5% 26%, #FBE9B7 0 58px, transparent 59px),
    radial-gradient(circle at 95% 15%, #DDF4FF 0 105px, transparent 106px),
    radial-gradient(circle at 86% 100%, #E4F5D9 0 145px, transparent 146px),
    #FFF8E8;
  border-bottom: 1px solid rgba(23,63,133,.06);
}

body.theme-pm126-inner .pm-inner-hero::after {
  content: "";
  position: absolute;
  left: -4%;
  right: -4%;
  bottom: -42px;
  height: 84px;
  background: #F8FBF5;
  border-radius: 50% 50% 0 0 / 90% 90% 0 0;
}

body.theme-pm126-inner .pm-inner-hero > .pm-container {
  position: relative;
  z-index: 1;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0,1fr) 210px;
  gap: 32px;
  align-items: center;
}

body.theme-pm126-inner .pm-inner-hero-copy {
  max-width: 920px;
}

body.theme-pm126-inner .pm-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
  color: #71849A;
  font: 700 .92rem/1.4 var(--pm-font-body);
}

body.theme-pm126-inner .pm-breadcrumb a {
  color: #2B9141;
  text-decoration: none;
}

body.theme-pm126-inner .pm-inner-hero h1 {
  margin: 0;
  max-width: 18ch;
  color: #173F85;
  font: 700 clamp(2.6rem, 5vw, 4.8rem)/1.02 var(--pm-font-head);
  letter-spacing: -.035em;
}

body.theme-pm126-inner .pm-inner-hero-decor {
  min-height: 150px;
  position: relative;
}

body.theme-pm126-inner .pm-inner-hero-decor span {
  position: absolute;
  line-height: 1;
  font-family: var(--pm-font-head);
}

body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(1) {
  left: 15px; top: 12px; font-size: 4.2rem; color: #F3BD00;
}
body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(2) {
  right: 10px; top: 50px; font-size: 3.7rem; color: #F04086; transform: rotate(9deg);
}
body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(3) {
  left: 78px; bottom: 0; font-size: 3.8rem; color: #54AA47;
}

body.theme-pm126-inner .pm-inner-content-wrap {
  position: relative;
  z-index: 2;
  padding-top: 36px;
  padding-bottom: 76px;
}

body.theme-pm126-inner .pm-page .pm-page-inner {
  max-width: 1060px;
  margin: 0 auto;
}

body.theme-pm126-inner .pm-page-body {
  background: #fff;
  border: 1px solid rgba(23,63,133,.09);
  border-radius: 28px;
  padding: clamp(24px,4vw,48px);
  box-shadow: 0 18px 44px rgba(23,63,133,.07);
  color: #405875;
}

body.theme-pm126-inner .pm-page-body > :first-child {
  margin-top: 0;
}

body.theme-pm126-inner .pm-page-body h2 {
  color: #173F85;
  font: 700 clamp(1.65rem,2.5vw,2.35rem)/1.15 var(--pm-font-head);
  letter-spacing: -.02em;
  margin-top: 1.65em;
  margin-bottom: .65em;
}

body.theme-pm126-inner .pm-page-body h3 {
  color: #24558E;
  font: 600 clamp(1.25rem,2vw,1.65rem)/1.2 var(--pm-font-head);
  margin-top: 1.45em;
}

body.theme-pm126-inner .pm-page-body p,
body.theme-pm126-inner .pm-page-body li,
body.theme-pm126-inner .pm-page-body dd,
body.theme-pm126-inner .pm-page-body dt {
  font-family: var(--pm-font-body);
  font-size: 1.05rem;
  line-height: 1.72;
}

body.theme-pm126-inner .pm-page-body strong {
  color: #263B56;
}

body.theme-pm126-inner .pm-page-body a:not(.pm-btn):not(.pm-doc) {
  color: #1C7F37;
  font-weight: 800;
  text-decoration-color: #9BCD9D;
  text-underline-offset: 3px;
}

body.theme-pm126-inner .pm-page-body blockquote {
  margin: 1.5rem 0;
  padding: 20px 24px;
  border: 0;
  border-left: 6px solid #F2C14E;
  border-radius: 0 18px 18px 0;
  background: #FFF9E9;
  color: #4D6078;
}

body.theme-pm126-inner .pm-page-body address {
  margin: 1.25rem 0;
  padding: 20px 24px;
  border-radius: 18px;
  background: #F1F8EE;
  border: 1px solid #D7EACF;
  font-style: normal;
}

/* Karty odsyłaczy */
body.theme-pm126-inner .pm-link-grid {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 16px;
}

body.theme-pm126-inner .pm-link-grid a {
  min-height: 98px;
  border: 1px solid rgba(23,63,133,.08);
  border-left: 0;
  border-radius: 22px;
  padding: 20px 22px;
  background: #F3FBEF;
  color: #173F85;
  box-shadow: 0 8px 22px rgba(23,63,133,.05);
  font-family: var(--pm-font-head);
  font-size: 1.08rem;
  position: relative;
}

body.theme-pm126-inner .pm-link-grid a:nth-child(4n+1) { background:#FFF0F6; }
body.theme-pm126-inner .pm-link-grid a:nth-child(4n+2) { background:#EEF8FF; }
body.theme-pm126-inner .pm-link-grid a:nth-child(4n+3) { background:#FFF8E7; }
body.theme-pm126-inner .pm-link-grid a:nth-child(4n+4) { background:#F3FBEF; }

body.theme-pm126-inner .pm-link-grid a::after {
  content: "›";
  margin-left: auto;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  background: rgba(255,255,255,.8);
  color: #59728F;
  font-size: 1.4rem;
}

/* Dokumenty */
body.theme-pm126-inner .pm-docs {
  gap: 14px;
}

body.theme-pm126-inner .pm-docs li a,
body.theme-pm126-inner a.pm-doc {
  border: 1px solid #DCE8D9;
  border-radius: 18px;
  padding: 16px 20px;
  background: #F8FCF6;
  color: #173F85;
  box-shadow: 0 6px 18px rgba(23,63,133,.04);
  font-family: var(--pm-font-body);
}

body.theme-pm126-inner .pm-docs li a::before,
body.theme-pm126-inner a.pm-doc::before {
  content: "↓";
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #E3F4DD;
  color: #25863B;
  font-weight: 900;
}

/* Tabele */
body.theme-pm126-inner .pm-page table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #DDE7DB;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 7px 20px rgba(23,63,133,.035);
}

body.theme-pm126-inner .pm-page th,
body.theme-pm126-inner .pm-page td {
  border: 0;
  border-bottom: 1px solid #E5ECE3;
  padding: 14px 16px;
  vertical-align: top;
}

body.theme-pm126-inner .pm-page th {
  background: #EDF7EA;
  color: #173F85;
  font-family: var(--pm-font-head);
}

body.theme-pm126-inner .pm-page tr:last-child > td {
  border-bottom: 0;
}

/* Forms */
body.theme-pm126-inner .pm-form-grid,
body.theme-pm126-inner .content-form {
  max-width: none;
  border: 1px solid #DDE8DA;
  border-radius: 22px;
  background: #FBFEFA;
  box-shadow: none;
}

body.theme-pm126-inner .pm-form input,
body.theme-pm126-inner .pm-form textarea,
body.theme-pm126-inner .pm-form select,
body.theme-pm126-inner .content-form input,
body.theme-pm126-inner .content-form textarea,
body.theme-pm126-inner .content-form select {
  border: 2px solid #D7E4D3;
  border-radius: 14px;
  background: #fff;
  min-height: 48px;
}

body.theme-pm126-inner .pm-form input:focus,
body.theme-pm126-inner .pm-form textarea:focus,
body.theme-pm126-inner .pm-form select:focus,
body.theme-pm126-inner .content-form input:focus,
body.theme-pm126-inner .content-form textarea:focus,
body.theme-pm126-inner .content-form select:focus {
  border-color: #4BA85B;
  outline: 3px solid rgba(75,168,91,.18);
}

/* Existing calendar / RR / finance components inherit new palette */
body.theme-pm126-inner details.pm-month-card,
body.theme-pm126-inner .pm-event-card,
body.theme-pm126-inner .pm-rr-card,
body.theme-pm126-inner .pm-finance-card,
body.theme-pm126-inner .pm-finance-overview .pm-card {
  border-color: #DCE8D9;
  border-radius: 20px;
  box-shadow: 0 8px 22px rgba(23,63,133,.05);
}

body.theme-pm126-inner details.pm-month-card > summary {
  background: #EFF8EB;
  color: #173F85;
  font-family: var(--pm-font-head);
}

body.theme-pm126-inner .pm-event-date,
body.theme-pm126-inner .pm-finance-period,
body.theme-pm126-inner .pm-finance-kicker {
  color: #2D9141;
}

/* High contrast: remove decorative pastel dependency */
html[data-contrast="high"] body.theme-pm126-inner .pm-inner-hero,
html[data-contrast="high"] body.theme-pm126-inner .pm-page-body,
html[data-contrast="high"] body.theme-pm126-inner .pm-link-grid a,
html[data-contrast="high"] body.theme-pm126-inner .pm-docs li a {
  background: #fff;
  color: #0B1B2A;
}

@media (max-width: 980px) {
  body.theme-pm126-inner .pm-inner-hero {
    min-height: 205px;
  }
  body.theme-pm126-inner .pm-inner-hero > .pm-container {
    grid-template-columns: 1fr 120px;
  }
  body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(1) { font-size: 3rem; }
  body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(2) { font-size: 2.7rem; }
  body.theme-pm126-inner .pm-inner-hero-decor span:nth-child(3) { font-size: 2.6rem; }
}

@media (max-width: 640px) {
  body.theme-pm126-inner .pm-inner-hero {
    min-height: 180px;
    padding: 26px 0 42px;
  }
  body.theme-pm126-inner .pm-inner-hero > .pm-container {
    grid-template-columns: 1fr;
  }
  body.theme-pm126-inner .pm-inner-hero-decor {
    display: none;
  }
  body.theme-pm126-inner .pm-inner-hero h1 {
    font-size: clamp(2.2rem, 11vw, 3.3rem);
    max-width: 100%;
  }
  body.theme-pm126-inner .pm-inner-content-wrap {
    padding-top: 20px;
    padding-bottom: 48px;
  }
  body.theme-pm126-inner .pm-page-body {
    border-radius: 20px;
    padding: 22px 18px;
  }
  body.theme-pm126-inner .pm-page-body p,
  body.theme-pm126-inner .pm-page-body li,
  body.theme-pm126-inner .pm-page-body dd,
  body.theme-pm126-inner .pm-page-body dt {
    font-size: 1rem;
  }
  body.theme-pm126-inner .pm-link-grid {
    grid-template-columns: 1fr;
  }
  body.theme-pm126-inner .pm-link-grid a {
    min-height: 76px;
  }
  body.theme-pm126-inner .pm-page table {
    font-size: .94rem;
  }
}


/* ============================================================
   PM126 v1.5.1 — pełny zestaw polskich znaków (Latin Extended)
   Fredoka: nagłówki / menu / przyciski
   Nunito: treść
   ============================================================ */
body.theme-pm126-colorful,
body.theme-pm126-inner {
  --pm-font-head: "Fredoka", "Nunito", "Segoe UI", Arial, sans-serif;
  --pm-font-body: "Nunito", "Segoe UI", Arial, sans-serif;
}

body.theme-pm126-colorful h1,
body.theme-pm126-colorful h2,
body.theme-pm126-colorful h3,
body.theme-pm126-colorful h4,
body.theme-pm126-colorful .pm-logo-name,
body.theme-pm126-colorful .pm-logo-sub,
body.theme-pm126-colorful .pm-nav a,
body.theme-pm126-colorful .pm-btn,
body.theme-pm126-colorful .pmc-kicker,
body.theme-pm126-colorful .pmc-feature strong,
body.theme-pm126-inner h1,
body.theme-pm126-inner h2,
body.theme-pm126-inner h3,
body.theme-pm126-inner h4,
body.theme-pm126-inner .pm-breadcrumb,
body.theme-pm126-inner .pm-link-grid a,
body.theme-pm126-inner .pm-btn {
  font-family: "Fredoka", "Nunito", "Segoe UI", Arial, sans-serif !important;
  font-synthesis: none;
}

body.theme-pm126-colorful p,
body.theme-pm126-colorful li,
body.theme-pm126-colorful dd,
body.theme-pm126-colorful dt,
body.theme-pm126-inner p,
body.theme-pm126-inner li,
body.theme-pm126-inner dd,
body.theme-pm126-inner dt,
body.theme-pm126-inner table,
body.theme-pm126-inner input,
body.theme-pm126-inner textarea,
body.theme-pm126-inner select {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif !important;
}

/* Zestaw testowy polskich glifów:
   ąćęłńóśźż ĄĆĘŁŃÓŚŹŻ
*/

/* ============================================================
   PM126 v1.5.2 — pixel polish sekcji home wg zaakceptowanego mockupu
   ============================================================ */
body.theme-pm126-colorful,
body.theme-pm126-inner {
  --pm-font-head: "Baloo 2", "Nunito", "Segoe UI", Arial, sans-serif;
  --pm-font-body: "Nunito", "Segoe UI", Arial, sans-serif;
}

body.theme-pm126-colorful h1,
body.theme-pm126-colorful h2,
body.theme-pm126-colorful h3,
body.theme-pm126-colorful h4,
body.theme-pm126-colorful .pm-logo-name,
body.theme-pm126-colorful .pm-logo-sub,
body.theme-pm126-colorful .pm-nav a,
body.theme-pm126-colorful .pm-btn,
body.theme-pm126-colorful .pmc-kicker,
body.theme-pm126-colorful .pmc-feature strong,
body.theme-pm126-inner h1,
body.theme-pm126-inner h2,
body.theme-pm126-inner h3,
body.theme-pm126-inner h4,
body.theme-pm126-inner .pm-breadcrumb,
body.theme-pm126-inner .pm-link-grid a,
body.theme-pm126-inner .pm-btn {
  font-family: "Baloo 2", "Nunito", "Segoe UI", Arial, sans-serif !important;
}

/* Sekcja "Najważniejsze dla rodzica" — układ jak na mockupie */
body.theme-pm126-colorful .pmc-quick {
  padding: 56px 0 58px !important;
  background: #F4FAF1 !important;
}
body.theme-pm126-colorful .pmc-section-head {
  margin-bottom: 24px !important;
}
body.theme-pm126-colorful .pmc-section-head h2 {
  font-size: clamp(2.45rem, 3.35vw, 3.65rem) !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: -.035em !important;
  color: #173F85 !important;
  margin-bottom: 8px !important;
}
body.theme-pm126-colorful .pmc-section-head p {
  font-family: "Nunito", "Segoe UI", Arial, sans-serif !important;
  font-size: 1.05rem !important;
  line-height: 1.45 !important;
  color: #61758F !important;
  margin: 0 !important;
}
body.theme-pm126-colorful .pmc-quick-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  max-width: 1260px !important;
  margin-inline: auto !important;
}
body.theme-pm126-colorful .pmc-quick-card {
  display: grid !important;
  grid-template-columns: 62px minmax(0,1fr) 32px !important;
  grid-template-rows: auto auto !important;
  grid-template-areas:
    "icon title arrow"
    "icon text arrow" !important;
  column-gap: 16px !important;
  row-gap: 4px !important;
  align-items: center !important;
  min-height: 118px !important;
  padding: 18px 16px 18px 18px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(23,63,133,.08) !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
body.theme-pm126-colorful .pmc-quick-card--pink { background: #FFF1F6 !important; }
body.theme-pm126-colorful .pmc-quick-card--blue { background: #EFF8FF !important; }
body.theme-pm126-colorful .pmc-quick-card--yellow { background: #FFF8E9 !important; }
body.theme-pm126-colorful .pmc-quick-card--green { background: #F3FBEF !important; }

body.theme-pm126-colorful .pmc-quick-icon {
  grid-area: icon !important;
  width: 54px !important;
  height: 54px !important;
  margin: 0 !important;
  border-radius: 16px !important;
  align-self: center !important;
}
body.theme-pm126-colorful .pmc-quick-icon svg {
  width: 26px !important;
  height: 26px !important;
}
body.theme-pm126-colorful .pmc-quick-card h3 {
  grid-area: title !important;
  align-self: end !important;
  margin: 0 !important;
  color: #173F85 !important;
  font-size: 1.18rem !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}
body.theme-pm126-colorful .pmc-quick-card p {
  grid-area: text !important;
  align-self: start !important;
  margin: 0 !important;
  max-width: none !important;
  color: #5E7189 !important;
  font-size: .9rem !important;
  line-height: 1.35 !important;
}
body.theme-pm126-colorful .pmc-quick-card::after {
  grid-area: arrow !important;
  position: static !important;
  transform: none !important;
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.8) !important;
  color: #7D91A8 !important;
  font-size: 1.35rem !important;
  align-self: center !important;
}

body.theme-pm126-colorful .pmc-quick-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(23,63,133,.06) !important;
}

/* Delikatniejsze dekoracje — mockup nie był tak ciężki */
body.theme-pm126-colorful .pmc-quick::before {
  left: 28px !important;
  top: 44px !important;
  font-size: 2.1rem !important;
  opacity: .9 !important;
}
body.theme-pm126-colorful .pmc-quick::after {
  right: 32px !important;
  bottom: 34px !important;
  font-size: 2rem !important;
  opacity: .9 !important;
}

/* Header też korzysta z nowego kroju, ale pozostaje mniej "puchaty" */
body.theme-pm126-colorful .pm-nav a,
body.theme-pm126-colorful .pmc-recruit,
body.theme-pm126-colorful .pm-btn {
  font-weight: 700 !important;
}

@media (max-width: 980px) {
  body.theme-pm126-colorful .pmc-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.theme-pm126-colorful .pmc-quick {
    padding: 42px 0 46px !important;
  }
  body.theme-pm126-colorful .pmc-section-head h2 {
    font-size: 2.35rem !important;
  }
  body.theme-pm126-colorful .pmc-quick-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  body.theme-pm126-colorful .pmc-quick-card {
    min-height: 104px !important;
    grid-template-columns: 54px minmax(0,1fr) 28px !important;
    padding: 15px !important;
    column-gap: 13px !important;
  }
  body.theme-pm126-colorful .pmc-quick-icon {
    width: 48px !important;
    height: 48px !important;
  }
}


/* ============================================================
   PM126 v1.5.4 — footer: copy na pełną szerokość kontenera
   ============================================================ */
.pm-footer-bottom {
  max-width: none !important;
  width: 100%;
  align-items: center;
}

body.theme-pm126-colorful .pm-footer-bottom,
body.theme-pm126-inner .pm-footer-bottom {
  max-width: none !important;
  width: 100%;
  justify-content: space-between;
}

@media (min-width: 941px) {
  .pm-footer-bottom > p:first-child {
    flex: 1 1 auto;
    max-width: none;
  }
  .pm-footer-credit {
    flex: 0 0 auto;
    text-align: right;
  }
}

@media (max-width: 940px) {
  .pm-footer-bottom {
    width: 100%;
  }
  .pm-footer-bottom > p,
  .pm-footer-credit {
    width: 100%;
  }
}


/* ============================================================
   PM126 v1.6.0 — final audit corrections
   SEO/WCAG/layout consistency without redesign
   ============================================================ */

/* WCAG AA: darken CTA backgrounds while keeping approved visual language. */
body.theme-pm126-colorful .pmc-btn-pink,
body.theme-pm126-colorful .pmc-recruit {
  background: #DB1F69 !important;
  border-color: #DB1F69 !important;
  color: #fff !important;
}
body.theme-pm126-colorful .pmc-btn-pink:hover,
body.theme-pm126-colorful .pmc-recruit:hover {
  background: #B91755 !important;
  border-color: #B91755 !important;
}
body.theme-pm126-colorful .pmc-btn-green,
body.theme-pm126-colorful .pmc-recruit-band {
  background: #23833A !important;
  border-color: #23833A !important;
  color: #fff !important;
}
body.theme-pm126-colorful .pmc-btn-green:hover {
  background: #1A6B2E !important;
  border-color: #1A6B2E !important;
}

/* Full official H1 without sacrificing the mockup proportions. */
body.theme-pm126-colorful .pmc-hero-title-city {
  display: block;
  margin-top: .16em;
  font-size: .44em;
  line-height: 1.05;
  letter-spacing: -.01em;
  color: #345D94;
}

/* Small historical marker; responsive and intentionally secondary. */
body.theme-pm126-colorful .pmc-history-note {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin: 0 0 16px;
  padding: 7px 13px;
  border-radius: 999px;
  background: #EEF7E9;
  color: #1D6E31;
  font-family: "Nunito", "Segoe UI", Arial, sans-serif;
  font-size: .92rem;
  font-weight: 800;
}
body.theme-pm126-colorful .pmc-history-note::before {
  content: "✦";
  color: #C58A00;
}

/* Search result pages should not look like destination pages when rendered by default layout. */
body.theme-pm126-inner .pm-page--szukaj .pm-inner-hero,
body.theme-pm126-inner .pm-page--search .pm-inner-hero {
  min-height: 180px;
}

@media (max-width: 640px) {
  body.theme-pm126-colorful .pmc-hero-title-city {
    font-size: .5em;
  }
  body.theme-pm126-colorful .pmc-history-note {
    font-size: .84rem;
  }
}

/* Historia placówki — używana na /o-przedszkolu */
body.theme-pm126-inner .pm-history-block {
  margin: 0 0 28px;
  padding: 22px 24px;
  border: 1px solid #D7EACF;
  border-radius: 20px;
  background: #F3FBEF;
  color: #405875;
}
body.theme-pm126-inner .pm-history-block strong {
  color: #173F85;
  font-family: "Baloo 2", "Nunito", "Segoe UI", Arial, sans-serif;
  font-size: 1.2rem;
}
body.theme-pm126-inner .pm-history-block p:last-child { margin-bottom: 0; }
