/*
 * minthcm-core.css — zestaw patternow B „minthcm-core” (kadence-child, minthcm.org)
 *
 * [M3c, wp-fleet-ops#12] Sekcje stron konwertowanych z WPBakery/Bridge na bloki core.
 * Wartosci ZMIERZONE na PROD (Bridge) 2026-10-28, viewport 1440 (getComputedStyle):
 * strona glowna — hero, odznaki, kroki (#how-to), siatka funkcji (#features),
 * news, FAQ (akordeon), pas HCM/HRM. Patterny: block-patterns/b-07..b-12.
 *
 * Zasady:
 *  - zero inline style= w tresci: kazdy odstep i rozmiar tutaj, po klasach mc-*;
 *  - rytm pionowy Bridge: odstepy robia marginesy elementow, nie blockGap WP —
 *    dlatego w .mc-section zerujemy margin-block-start dzieci (core: :where(...) 24px);
 *  - punkt przelamania „mobile” = < 992 px (vc_hidden-sm + vc_hidden-xs Bridge).
 */

/* Siatka sekcji jak Bridge (responsive.min.css: .container_inner, progi max-width WLACZNIE):
   1100 (>1200), 950 (<=1200), 768 (<=1000), 600 (<=768), 420 (<=600), 300 (<=480), 95% (<=350).
   [M4 Z1] wczesniej 768 do 768 px wlacznie i brak stopnia 600 (601-768 px dawalo 420/768
   zamiast 600). Zmienna lokalna, zeby nie ruszac --mint-grid naglowka i stopki (M3a). */
.entry-content {
	--mc-grid: var(--mint-grid);
}

@media (max-width: 1200px) {
	.entry-content { --mc-grid: 950px; }
}

@media (max-width: 1000px) {
	.entry-content { --mc-grid: 768px; }
}

@media (max-width: 768px) {
	.entry-content { --mc-grid: 600px; }
}

@media (max-width: 600px) {
	.entry-content { --mc-grid: 420px; }
}

@media (max-width: 480px) {
	.entry-content { --mc-grid: 300px; }
}

@media (max-width: 350px) {
	.entry-content { --mc-grid: 95vw; }
}

/* Zakres: KAZDA regula tego pliku dotyczy sekcji z klasa .mc-rhythm (patterny b-07+ i tresc
   content/*.html). Szkielety b-01..b-06 z M3a (tylko .mc-section) zostaja przy regulach style.css —
   poprawka po recenzji Z1 (P1): 0 trafien na stronie testowej patternow 3482.
   display: flow-root — marginesy pierwszego/ostatniego dziecka zostaja w sekcji, wiec kotwica
   sekcji (np. #features) zaczyna sie tam, gdzie wiersz Bridge, a nie 60 px nizej (P6). */
.mc-rhythm {
	display: flow-root;
}

/* ---- 0. Rytm: bez blockGap WP wewnatrz sekcji zestawu B -------------------- */
body .entry-content .mc-rhythm > *,
body .entry-content .mc-rhythm :where(.wp-block-column, .wp-block-group, .wp-block-details) > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Sekcje zestawu B stoja jedna pod druga bez odstepu (Kadence .single-content > * daje 32 px). */
body .entry-content > .mc-rhythm {
	margin-top: 0;
	margin-bottom: 0;
}

/* Strona glowna: bez paska tytulu (full_width.php), wiec bez odstepow M3a pod paskiem
   (style.css: .content-title-style-above .content-area 30 px / 160 px) — PROD: hero na y=100,
   stopka zaraz pod pasem HCM/HRM. */
.home.content-title-style-above .content-area {
	margin-top: 0;
	margin-bottom: 0;
}

.mc-rhythm .wp-block-columns {
	gap: 0;
	margin-bottom: 0;
}

/* ---- 1. Pas na pelna szerokosc (vc_row z kolorem tla) ---------------------- */
.mc-rhythm.mc-band {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.mc-band--green {
	background: var(--mint-green-light);
}

.mc-band > .wp-block-columns {
	max-width: calc(var(--mc-grid) + 30px);
	margin-left: auto;
	margin-right: auto;
}

.mc-band > .wp-block-columns > .wp-block-column {
	padding: 0 15px;
}

.entry-content .mc-band--white-text :is(h1, h2, h3, h4, h5, h6, p, li) {
	color: #fff;
}

.entry-content .mc-band--white-text a {
	color: var(--mint-gray);
}

/* Widocznosc jak vc_hidden-* Bridge: „desktop” >= 992, „mobile” < 992. */
@media (max-width: 991px) {
	.entry-content .mc-hide-mobile {
		display: none !important;
	}
}

@media (min-width: 992px) {
	.entry-content .mc-show-mobile {
		display: none !important;
	}
}

/* ---- 2. Ikony (assets/icons/fa-*.svg, Font Awesome 4.7 z Bridge) ----------- */
body .entry-content figure.mc-ico {
	display: flex;
	justify-content: center;
	margin: 0;
}

.entry-content .mc-ico a,
.entry-content .mc-ico img {
	display: block;
}

.entry-content .mc-ico img {
	width: auto;
	max-width: none;
}

.mc-ico--32 img { height: 32px; }
.mc-ico--48 img { height: 48px; }
.mc-ico--80 img { height: 80px; }
.mc-ico--97 img { height: 97px; }

/* icon_hover_color #606164 Bridge — przyblizenie filtrem (kolor siedzi w pliku SVG) */
.entry-content .mc-ico a img {
	transition: filter 0.3s ease-in-out;
}

.entry-content .mc-ico a:hover img {
	filter: grayscale(1) brightness(0.62);
}

/* ---- 3. Przyciski (qbutton Bridge) — warianty na zielonym tle -------------- */
.entry-content .mc-rhythm .wp-block-buttons {
	gap: 0;
}

.entry-content .mc-rhythm .mc-btn .wp-block-button__link {
	display: inline-block;
	box-sizing: content-box;
	width: auto;
	height: 39px;
	min-height: 0;
	padding: 0 23px;
	font-family: Barlow, sans-serif;
	font-size: 13px;
	font-weight: 700;
	line-height: 39px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-width: 2px;
	border-style: solid;
	border-radius: 4px;
	box-shadow: none;
	transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
}

.entry-content .mc-rhythm .mc-btn--white-solid .wp-block-button__link {
	background: #fff;
	border-color: #fff;
	color: var(--mint-green-dark);
}

.entry-content .mc-rhythm .mc-btn--white-solid .wp-block-button__link:hover {
	background: #fff;
	border-color: #fff;
	color: var(--mint-green-light);
}

.entry-content .mc-rhythm .mc-btn--on-green .wp-block-button__link,
.entry-content .mc-rhythm .mc-btn--on-green .wp-block-button__link:hover {
	background: var(--mint-green-light);
	border-color: #fff;
	color: #fff;
}

/* ---- 4. b-07 pas dzielony: hero strony glownej ---------------------------- */
.mc-rhythm.mc-home-hero {
	padding-top: 80px;
	padding-bottom: 40px;
}

.mc-home-hero .mc-split > .wp-block-column.mc-split__media {
	padding: 0 40px;
}

.mc-home-hero .mc-split > .wp-block-column.mc-split__text {
	padding: 40px;
}

body .entry-content .mc-rhythm figure.mc-image {
	margin: 0;
}

.entry-content .mc-rhythm .mc-image img {
	display: block;
	width: 100%;
	height: auto;
}

.entry-content .mc-rhythm h1.mc-hero-title {
	font-size: 54px;
	line-height: 50.5px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	color: #fff;
}

.entry-content .mc-rhythm p.mc-hero-lead {
	color: #333;
	font-size: 20.8px;
	line-height: 28px;
}

.entry-content .mc-rhythm .mc-hero-buttons {
	margin-top: 20px;
	align-items: flex-start; /* core: center — przycisk bez dolnego marginesu zjezdzal o ~10 px (P4) */
}

.entry-content .mc-rhythm .mc-hero-buttons .wp-block-button {
	margin: 0 20px 20px 0;
}

.entry-content .mc-rhythm .mc-hero-buttons .wp-block-button:last-child {
	margin: 0;
}

.entry-content .mc-rhythm p.mc-subheading,
.entry-content .mc-rhythm p.mc-subheading a,
.entry-content .mc-rhythm p.mc-subheading a:hover {
	color: #333;
}

/* odznaki (jednorazowe, tylko strona glowna) */
.mc-rhythm.mc-home-badges {
	padding-top: 0;
	padding-bottom: 80px;
}

.mc-home-badges > .wp-block-columns.mc-home-badges__row {
	display: grid;
	grid-template-columns: 1fr 1fr 2fr 1fr;
	max-width: none;
	margin: 0 -15px;
}

.mc-home-badges__sf {
	min-height: 132px; /* miejsce odznaki SourceForge (skrypt — poza trescia, decyzja M3c) */
}

.entry-content .mc-badges.wp-block-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	margin: 0;
}

.entry-content .mc-badges.wp-block-gallery > figure.wp-block-image {
	width: auto !important;
	margin: 0 !important;
	padding-bottom: 7px; /* li Bridge: obraz inline + 7 px linii (127 px przy 120) */
	display: flex;
	flex-direction: row !important;
	justify-content: center;
	align-items: flex-start;
}

.entry-content .mc-badges.wp-block-gallery > figure.wp-block-image img {
	width: 120px !important;
	max-width: 100%;
	height: auto !important;
	aspect-ratio: 1;
	object-fit: contain;
	flex: none !important; /* core is-cropped: flex 1 0 0% z :not(#individual-image) */
}

/* ---- 5. b-08 kroki z ikonami (#how-to) ------------------------------------ */
.mc-rhythm.mc-steps {
	max-width: none;
	margin: 0 40px;
	padding: 50px 0;
}

/* rzad = siatka + 30 px w pasie z marginesami 40 px (Bridge .five-columns): wysrodkowany,
   gdy pas jest szerszy od siatki, inaczej od lewej krawedzi pasa minus 15 px (zmierzone:
   1440 -> x 148, 810 -> x 25, 390 -> x 30) */
.mc-steps > .wp-block-columns.mc-steps__row {
	width: calc(var(--mc-grid) + 30px);
	max-width: none;
	margin: 0 0 0 max(-15px, calc(50% - (var(--mc-grid) + 30px) / 2));
	flex-wrap: nowrap;
}

.mc-steps__row > .wp-block-column {
	flex: 0 0 13%;
	margin-right: 1.5%;
}

@media (min-width: 768px) and (max-width: 999px) {
	.mc-steps__row > .wp-block-column {
		flex: 0 0 25%;
		margin-right: 0;
	}
}

.mc-steps__row > .wp-block-column:last-child {
	margin-right: 0;
}

.mc-steps__step h2 {
	margin-top: 20px !important;
}

.mc-steps__dots {
	margin-top: 20px !important;
}

/* ---- 6. b-09 tytul na linii (vc_text_separator .home-separator) ---------- */
.entry-content .mc-rhythm .mc-title-line {
	position: relative;
	box-sizing: border-box;
	height: 25px;
	margin: 60px 0;
	border-top: 4px solid var(--mint-gray);
}

.entry-content .mc-rhythm .mc-title-line h2 {
	position: absolute;
	top: -18px;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
	padding: 0 35px;
	background: #fff;
	white-space: nowrap;
}

.mc-rhythm.mc-title-section {
	max-width: var(--mc-grid);
	padding: 0;
}

/* ---- 7. b-10 siatka funkcji (#features) ----------------------------------- */
.mc-rhythm.mc-features-grid {
	max-width: var(--mc-grid);
	padding: 0;
}

.mc-features-grid > .wp-block-columns.mc-feature-grid {
	margin: 0 -15px;
	flex-wrap: nowrap;
}

.mc-features-grid > .mc-title-line + .mc-feature-grid,
.mc-features-grid > .mc-title-line + .mc-feature-grid + .mc-feature-grid {
	margin-top: 20px;
}

.mc-feature-grid > .wp-block-column.mc-feature {
	flex: 1 1 0;
	padding: 0 15px;
	text-align: center;
}

body .entry-content .mc-feature figure.mc-ico {
	margin: 20px 0;
}

.entry-content .mc-rhythm hr.mc-sep-small {
	width: 24px;
	height: 2px;
	margin: 10px auto 20px;
	border: 0;
	background: var(--mint-gray);
	opacity: 1;
}

@media (min-width: 768px) {
	.entry-content .mc-feature p {
		min-height: 52px;
	}
}

.entry-content .mc-feature .wp-block-buttons {
	justify-content: center;
	margin-top: 30px;
	margin-bottom: 80px;
}

.entry-content .mc-rhythm hr.mc-sep-thick {
	width: 100%;
	max-width: none;
	height: 4px;
	margin: 20px 0;
	border: 0;
	background: var(--mint-gray);
	opacity: 1;
}

/* ---- 8. b-11 news ([minthcm_latest_posts], inc/latest-posts.php) ---------- */
.mc-rhythm.mc-news {
	max-width: var(--mc-grid);
	padding: 0;
}

.mc-news > .wp-block-columns.mc-news__row {
	margin: 0 -15px;
}

.mc-news__row > .wp-block-column.mc-news__title {
	flex: 0 0 25%;
	padding: 51px 15px 0;
}

.mc-news__row > .wp-block-column.mc-news__list {
	flex: 0 0 75%;
	padding: 0 15px;
}

.mc-latest-posts ul {
	display: flex;
	align-items: flex-start;
	margin: 0 -16px;
	padding: 0;
	list-style: none;
}

.mc-latest-posts li {
	box-sizing: border-box;
	padding: 0 16px;
	margin: 0 0 32px;
}

.mc-latest-posts--three_columns li { width: 33.3333%; }
.mc-latest-posts--two_columns li { width: 50%; }
.mc-latest-posts--four_columns li { width: 25%; }
.mc-latest-posts--one_column li { width: 100%; }

.mc-latest-posts__inner {
	background: #fff;
}

.mc-latest-posts__text {
	padding: 51px 33px 0;
}

.entry-content .mc-latest-posts h3.mc-latest-posts__title {
	margin: 0;
	font-size: 17px;
	line-height: 22.17px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.entry-content .mc-latest-posts__title a {
	color: var(--mint-gray);
	text-decoration: none;
}

.entry-content .mc-latest-posts__title a:hover {
	color: #fff;
	background-color: var(--mint-green-light);
}

.entry-content .mc-latest-posts .mc-latest-posts__sep {
	width: 24px;
	height: 2px;
	margin: 12px 0 26px;
	background: var(--mint-gray);
}

.entry-content .mc-latest-posts p.mc-latest-posts__excerpt {
	min-height: 78px;
	margin: 0;
}

.mc-latest-posts__info {
	border-top: 1px solid #eaeaea;
	padding: 28px 33px 38px;
	font-size: 12px;
	line-height: 30px;
}

.mc-latest-posts__author {
	display: none;
}

/* ---- 9. b-12 FAQ akordeon (qode_accordion) -------------------------------- */
.mc-rhythm.mc-faq-acc {
	max-width: var(--mc-grid);
	padding: 0;
}

body .entry-content > .mc-rhythm.mc-faq-acc {
	margin-bottom: 80px;
}

.entry-content .mc-acc .wp-block-details {
	margin: 0;
}

.entry-content .mc-acc .wp-block-details > summary {
	position: relative;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	min-height: 67px;
	padding: 5px 50px 5px 20px;
	border-bottom: 1px solid #f4f4f4;
	background: #fff;
	color: var(--mint-gray);
	font-size: 17px;
	font-weight: 600;
	line-height: 22.17px;
	letter-spacing: 1px;
	list-style: none;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

.entry-content .mc-acc .wp-block-details > summary::-webkit-details-marker {
	display: none;
}

.entry-content .mc-acc .wp-block-details > summary::after {
	content: "+";
	position: absolute;
	right: 6px;
	top: 50%;
	width: 30px;
	margin-top: -13px;
	font-size: 26px;
	font-weight: 300;
	line-height: 26px;
	text-align: center;
}

.entry-content .mc-acc .wp-block-details[open] > summary::after {
	content: "\2212";
}

.entry-content .mc-acc .wp-block-details[open] > summary,
.entry-content .mc-acc .wp-block-details > summary:hover {
	background: var(--mint-green-light);
	color: #fff;
}

.entry-content .mc-acc .wp-block-details > p {
	padding: 20px;
}

/* ---- 10. pas HCM/HRM (b-07 z ikona zamiast obrazu) ------------------------ */
.mc-rhythm.mc-home-hcm {
	padding-top: 80px;
	padding-bottom: 80px;
}

body .entry-content .mc-home-hcm figure.mc-home-hcm__icon {
	margin: 40px 0 50px;
}

/* ---- 13. b-13 wiersz funkcji (/features/, 17 x vc_row .offset) --------------
   PROD 1440: wiersz = 100 px (.offset) + wyzsza z kolumn 1/2; lewa: ikona fa-3x (48 px,
   margines 20/20), H2, lead <strong>, &nbsp;, tekst, qbutton 20/20, kolumna z margin-bottom 20;
   prawa: slider flexslider (kadr 1024x640 w 535 px) + kropki: obraz + 136 px (50 + 26 kropki + 60).
   Slider zastapiony statycznym pierwszym kadrem (decyzja M3c Z2, roznica M4: brak kropek). */
/* Szerokosc = siatka Bridge niezaleznie od kontenera Kadence (810: Kadence 762, Bridge 768;
   390: Kadence 342, Bridge 300) — inaczej tekst lamie sie inaczej i wiersze rosna o linie. */
.mc-rhythm.mc-feature-split,
.mc-rhythm.mc-feature-end {
	width: var(--mc-grid);
	max-width: none;
	margin-left: calc((100% - var(--mc-grid)) / 2);
	margin-right: calc((100% - var(--mc-grid)) / 2);
	padding: 100px 0 0;
}

/* line-height H2 Bridge = 24 px x 1.3846 = 33.23 px (style.css: 33 px) — bez tego 17 wierszy
   rozjezdza sie o ~4 px do konca strony */
body .entry-content .mc-feature-split h2 {
	line-height: 1.384615;
}

.mc-rhythm.mc-feature-end {
	padding: 0;
}

.mc-feature-split > .wp-block-columns.mc-feature-split__cols {
	margin: 0 -15px;
	flex-wrap: nowrap !important; /* core: .wp-block-columns { flex-wrap: wrap !important } < 782 px */
	align-items: flex-start;
}

/* 768-781 px: core ustawia kolumnom flex-basis 100% !important (stos), Bridge ma juz 2 kolumny od 768 px
   (vc_col-sm-6) — R4, zmierzone 768/775/781 px */
@media (min-width: 768px) and (max-width: 781px) {
	.mc-rhythm.mc-feature-split .mc-feature-split__cols > .wp-block-column {
		flex-basis: 0 !important;
	}
}

.mc-feature-split__cols > .wp-block-column {
	flex: 1 1 0;
	padding: 0 15px;
}

.mc-feature-split__cols > .wp-block-column.mc-feature-split__text {
	padding-bottom: 20px;
}

body .entry-content .mc-feature-split figure.mc-ico {
	justify-content: flex-start;
	margin: 20px 0;
}

.entry-content .mc-rhythm.mc-feature-split .mc-justify {
	text-align: justify;
}

.entry-content .mc-feature-split .wp-block-buttons {
	margin: 20px 0;
}

body .entry-content .mc-feature-split .mc-feature-split__media figure.mc-image {
	margin-bottom: 136px;
}

/* vc_separator type=transparent thickness=100 (10 px marginesu nad i pod) */
.entry-content .mc-rhythm.mc-feature-end hr.mc-sep-space {
	height: 100px;
	margin: 10px 0;
	border: 0;
	background: none;
	opacity: 0;
}

/* ---- 14. Odstepy jak vc_custom_* / vc_empty_space Bridge (M3c Z2b) -----------
   Klasy pomocnicze zamiast style= (marginesy i paddingi wierszy/kolumn/elementow z PROD).
   !important: musza wygrac z zerowaniem rytmu (§0) i marginesami elementow (§2, §4). */
.entry-content .mc-rhythm .mc-mt-10, .entry-content .mc-rhythm.mc-mt-10 { margin-top: 10px !important; }
.entry-content .mc-rhythm .mc-mt-20, .entry-content .mc-rhythm.mc-mt-20 { margin-top: 20px !important; }
.entry-content .mc-rhythm .mc-mt-40, .entry-content .mc-rhythm.mc-mt-40 { margin-top: 40px !important; }
.entry-content .mc-rhythm .mc-mt-80, .entry-content .mc-rhythm.mc-mt-80 { margin-top: 80px !important; }
.entry-content .mc-rhythm .mc-mb-20, .entry-content .mc-rhythm.mc-mb-20 { margin-bottom: 20px !important; }
.entry-content .mc-rhythm .mc-mb-40, .entry-content .mc-rhythm.mc-mb-40 { margin-bottom: 40px !important; }
.entry-content .mc-rhythm .mc-mb-50, .entry-content .mc-rhythm.mc-mb-50 { margin-bottom: 50px !important; }
.entry-content .mc-rhythm .mc-mb-80, .entry-content .mc-rhythm.mc-mb-80 { margin-bottom: 80px !important; }
.entry-content .mc-rhythm .mc-pt-40, .entry-content .mc-rhythm.mc-pt-40 { padding-top: 40px !important; }
.entry-content .mc-rhythm .mc-pt-80, .entry-content .mc-rhythm.mc-pt-80 { padding-top: 80px !important; }
.entry-content .mc-rhythm .mc-pb-80, .entry-content .mc-rhythm.mc-pb-80 { padding-bottom: 80px !important; }

/* Wiersz o szerokosci siatki Bridge (jak §13), bez wlasnych paddingow. */
.mc-rhythm.mc-grid-row {
	width: var(--mc-grid);
	max-width: none;
	margin-left: calc((100% - var(--mc-grid)) / 2);
	margin-right: calc((100% - var(--mc-grid)) / 2);
	padding: 0;
}

/* ---- 15. b-14 karty z duza ikona (/support/, /download/) ----------------------
   PROD: kolumny 1/4 albo 1/3, ikona fa-5x (80 px, link, margines 0 0 30), H2 wersalikami,
   tekst, qbutton (opcjonalnie z ikona fa-external-link / fa-github 13 px, 10 px od tekstu). */
.mc-icon-cards > .wp-block-columns.mc-icon-cards__row {
	margin: 0 -15px;
	flex-wrap: nowrap;
	align-items: flex-start;
}

.mc-icon-cards__row > .wp-block-column.mc-icon-card {
	flex: 1 1 0;
	padding: 0 15px;
}

body .entry-content .mc-icon-card figure.mc-ico {
	margin: 0 0 30px;
}

body .entry-content .mc-icon-cards h2 {
	line-height: 1.384615;
}

/* qbutton Bridge sie nie lamie (tekst z &nbsp;) i wystaje z waskiej kolumny w prawo (810 px) */
.entry-content .mc-icon-card .wp-block-buttons {
	justify-content: safe center;
}

.entry-content .mc-icon-card .wp-block-button__link {
	max-width: none;
	white-space: nowrap;
}

.entry-content .mc-rhythm .mc-btn--ext .wp-block-button__link::after,
.entry-content .mc-rhythm .mc-btn--github .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-left: 10px;
	background-color: currentColor;
	-webkit-mask: url(../icons/fa-external-link.svg) no-repeat center / contain;
	mask: url(../icons/fa-external-link.svg) no-repeat center / contain;
}

.entry-content .mc-rhythm .mc-btn--github .wp-block-button__link::after {
	width: 11px;
	-webkit-mask-image: url(../icons/fa-github.svg);
	mask-image: url(../icons/fa-github.svg);
}

/* ---- 16. Srodkowa kolumna 1/3 wiersza full_width (/download/: Discord, GitHub) ---------
   Bridge: vc_row type=full_width (szerokosc okna + 2 x 15 px), kolumny 1/3 | 1/3 | 1/3, tresc
   w srodkowej, wysrodkowana. Ponizej 768 px kolumna = cala szerokosc (bez paddingu). */
.mc-rhythm.mc-third {
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 0;
}

.mc-third > .mc-third__col {
	width: calc((100% + 30px) / 3 - 30px);
	margin-left: auto;
	margin-right: auto;
}

body .entry-content .mc-third h2 {
	line-height: 1.384615;
}

.entry-content .mc-third .wp-block-buttons {
	justify-content: safe center;
}

.entry-content .mc-third .wp-block-button__link {
	max-width: none;
	white-space: nowrap;
}

/* obraz w swoim rozmiarze, wysrodkowany (vc_single_image alignment=center) */
.entry-content .mc-rhythm figure.mc-image--natural,
.entry-content .mc-rhythm figure.mc-image--pad160 {
	text-align: center;
	line-height: 26px;
}

.entry-content .mc-rhythm .mc-image--natural img,
.entry-content .mc-rhythm .mc-image--pad160 img {
	display: inline-block;
	width: auto;
	max-width: 100%;
	vertical-align: top;
}

/* M3c R5: obraz z linkiem w kolumnie 1/3 (zrzut repo GitHub) bez pustej linii pod obrazem (+7 px) */
.entry-content .mc-rhythm.mc-third figure.mc-image:not(.mc-image--natural):not(.mc-image--pad160) a {
	display: block;
}

/* vc_custom padding 0 160 px: obraz kurczy sie do (kolumna - 320 px), przy 810 px znika (zostaje linia) */
body .entry-content .mc-rhythm figure.mc-image--pad160 {
	padding: 0 160px;
}

.entry-content .mc-rhythm .mc-mt-160, .entry-content .mc-rhythm.mc-mt-160 { margin-top: 160px !important; }
.entry-content .mc-rhythm .mc-pb-160, .entry-content .mc-rhythm.mc-pb-160 { padding-bottom: 160px !important; }

@media (max-width: 767px) {
	.mc-third > .mc-third__col {
		width: 100%;
	}
}

/* ---- 17. b-15 obraz | tekst 50/50 (/mobile-app/, /newsletter-minthcm/) --------------
   Bridge: vc_row (grid) z kolumnami 1/2; el_class flex-vertical = wyrownanie do srodka w pionie
   (>= 768), vc_col-sm-push/pull = zamiana stron (>= 768), hide-mobile = 40 px pod obrazem tylko < 768.
   Odstepy tekstu (vc_custom padding 20) klasami mc-p*-20 na blokach. */
.entry-content .mc-rhythm .mc-pt-20 { padding-top: 20px !important; }
.entry-content .mc-rhythm .mc-pb-20 { padding-bottom: 20px !important; }
.entry-content .mc-rhythm .mc-pl-20 { padding-left: 20px !important; }
.entry-content .mc-rhythm .mc-pr-20 { padding-right: 20px !important; }
.entry-content .mc-rhythm .mc-ml-20 { margin-left: 20px !important; }

body .entry-content .mc-media-text h2 {
	line-height: 1.384615;
}

.entry-content .mc-rhythm .mc-c-green-dark {
	color: var(--mint-green-dark);
}

@media (min-width: 768px) {
	/* core: .wp-block-columns { align-items: normal !important } */
	.mc-media-text--center > .wp-block-columns {
		align-items: center !important;
	}

	.mc-media-text--reverse > .wp-block-columns {
		flex-direction: row-reverse;
	}
}

@media (max-width: 767px) {
	.entry-content .mc-media-text .wp-block-column.mc-media-text__media {
		margin-bottom: 40px;
	}
}

/* obraz z linkiem: <a> jako blok, bez pustej linii pod obrazem (inaczej +6 px) */
.entry-content .mc-media-text .mc-image a {
	display: block;
}

/* obraz w rozmiarze naturalnym Bridge (atrybut width w <img>), kurczy sie do kolumny */
.entry-content .mc-rhythm .mc-w-500 img {
	width: 500px;
	max-width: 100%;
}

.entry-content .mc-rhythm .mc-w-750 img {
	width: 750px;
	max-width: 100%;
}

/* wiersz w kontenerze strony (szablon domyslny, /newsletter-minthcm/): siatka Bridge bez tla */
.mc-media-text.mc-grid-row > .wp-block-columns {
	max-width: none;
	margin-left: -15px;
	margin-right: -15px;
}

.mc-media-text.mc-grid-row > .wp-block-columns > .wp-block-column {
	padding: 0 15px;
}

/* vc_empty_space: domyslne 32 px; height="80x" (bledna jednostka) renderuje sie jako 1 px */
.entry-content .mc-rhythm .mc-mt-1 { margin-top: 1px !important; }
.entry-content .mc-rhythm .mc-mt-32 { margin-top: 32px !important; }
.entry-content .mc-rhythm .mc-mb-32 { margin-bottom: 32px !important; }

/* rzad wewnetrzny (vc_row_inner full_width, 2 x 1/2): odznaki App Store / Google Play */
.entry-content .mc-media-text .wp-block-columns.mc-media-text__inner {
	max-width: none;
	margin-left: -15px;
	margin-right: -15px;
}

.mc-media-text__inner > .wp-block-column {
	padding: 0 15px;
}

/* qbutton style=white (custom_class white-on-green-btn): obrys bialy, hover bialy z zielonym tekstem */
.entry-content .mc-rhythm .mc-btn--white-outline .wp-block-button__link {
	background: transparent;
	border-color: #fff;
	color: #fff;
}

.entry-content .mc-rhythm .mc-btn--white-outline .wp-block-button__link:hover {
	background: #fff;
	border-color: #fff;
	color: var(--mint-green-light);
}

/* ---- 18. b-15 dodatki (/open-source/, M3c Z2c) ---------------------------------------
   H3 Bridge: 17 px x 1.3043 = 22.17 px (Kadence 22 px — wiersz z H3 nizszy o 1 px).
   Kolumna 1/1 pod wierszem (vc_column el_class=white): link bialy, podkreslony jak Bridge .white a. */
body .entry-content .mc-rhythm.mc-media-text h3 {
	line-height: 1.304348;
}

.entry-content .mc-rhythm .mc-link-white a {
	color: #fff;
	text-decoration: underline;
}

/* ---- 19. Tekst ciagly z kartami i tabelami (/ai-act/, M3c Z2c) — klasy jednorazowe ---------
   PROD: vc_column_text z inline style= (karty flex, tabele) + _wpb_post_custom_css strony
   (.wpb_text_column h2 { margin-top: 20px }). Wartosci przepisane z tych style= 1:1;
   td Bridge = text-align center (motyw), th = left (style=). */
body .entry-content .mc-rhythm.mc-prose h2 {
	margin-top: 20px;
	line-height: 1.384615;
}

.entry-content .mc-rhythm .mc-c-green-mid {
	color: #339966;
}

.entry-content .mc-prose .mc-info-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.entry-content .mc-prose .mc-info-card {
	flex: 1;
	min-width: 250px;
	border: 1px solid #e3e1da;
	border-radius: 12px;
	padding: 24px;
}

.entry-content .mc-prose .mc-info-card.mc-info-card--sm {
	padding: 20px;
}

.entry-content .mc-prose .mc-info-card .mc-info-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0 0 12px;
	border-radius: 8px;
	background: #e1f5ee;
	color: #0f6e56;
	font-size: 18px;
	font-weight: 600;
}

.entry-content .mc-prose .mc-info-card .mc-info-card__title {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 600;
}

.entry-content .mc-prose .mc-info-card .mc-info-card__text {
	margin: 0;
	font-size: 14px;
	color: #5f5e5a;
}

.entry-content .mc-prose .mc-info-card .mc-info-card__kicker {
	margin: 0 0 10px;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	color: #0f6e56;
}

body .entry-content .mc-prose figure.mc-table {
	margin: 0;
	overflow: visible;
}

.entry-content .mc-prose .mc-table table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
}

.entry-content .mc-prose .mc-table thead {
	border-bottom: 0;
}

.entry-content .mc-prose .mc-table thead tr {
	background: #f5f4f0;
}

.entry-content .mc-prose .mc-table :is(th, td) {
	padding: 12px;
	border: 1px solid #e3e1da;
	text-align: center;
	vertical-align: baseline;
}

.entry-content .mc-prose .mc-table th {
	text-align: left;
	font-weight: 700;
}

/* ---- 20. Tekst prawny (/privacy-policy/, M3c Z2c) — klasy jednorazowe -----------------------
   PROD: H1 Bridge 30/37.5 700 bez wersalikow; listy TinyMCE ol > li(list-style none) > ol z wcieciem
   15 px (numeracja na zewnatrz); ul sekcji Mautic: znacznik wewnatrz, tekst w <p> pod znacznikiem
   (li 52 px) -> span.mc-li-block. Bloki kadence/advancedheading zostaja w tresci 1:1, ale odstepy z ich
   atrybutow (H1 padding-bottom 80, H2 I-IV padding-top 40 z kadence_blocks_css-inline-css) sa tu zerowane:
   na PROD Kadence Blocks nie dziala, rytm strony ma byc 1:1 z PROD (decyzja koordynatora, recenzja Z2c P3). */
body .entry-content .mc-rhythm.mc-legal .wp-block-kadence-advancedheading {
	padding: 0;
}

/* Dlugie URL-e (sekcja IX) lamia sie jak w Bridge (word-break normal); Kadence ma break-word, ktory przy
   390 px dawal akapitowi +1 linie (26 px) i przesuwal sekcje X. */
body .entry-content .mc-rhythm.mc-legal :is(p, li) {
	word-break: normal;
}

body .entry-content .mc-rhythm.mc-legal h1 {
	margin: 0;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: normal;
	text-transform: none;
}

body .entry-content .mc-rhythm.mc-legal h2 {
	line-height: 1.384615;
}

body .entry-content .mc-legal :is(ol, ul) {
	margin: 0;
	padding: 0;
}

body .entry-content .mc-legal ol {
	list-style: decimal outside;
}

body .entry-content .mc-legal li > ol {
	padding-left: 15px;
}

body .entry-content .mc-legal li {
	margin: 0;
}

body .entry-content .mc-legal li.mc-li-none {
	list-style-type: none;
}

body .entry-content .mc-legal ul.mc-legal-ul {
	list-style: disc inside;
}

.entry-content .mc-legal .mc-li-block {
	display: block;
}

/* core/button bez stylu bloku pod Bridge: obrys i tekst #303030, tlo przezroczyste (hover niezmierzony) */
.entry-content .mc-rhythm .mc-btn--dark .wp-block-button__link {
	background: transparent;
	border-color: #303030;
	color: #303030;
}

/* ---- 21. /documentation/ (M3c Z2c): obraz | przycisk + tekst ---------------------------------
   Bridge: vc_row full_width w kontenerze, kolumny 1/2 z vc_custom padding 0 25 px, obraz z
   margin-top -20 px, wiersz z margin-top 100 px; qbutton green z ikona fa-arrow-circle-right
   (13 px, 10 px od tekstu), wysrodkowany; tekst wysrodkowany, 40 px nad, 50 px pod.
   100 px nad wierszem jako padding (mc-pt-100): margines sekcji skladal sie z margin-top 30 px
   .content-area (100 zamiast 130 jak Bridge: padding kontenera 30 + margines wiersza 100). */
.mc-media-text.mc-grid-row > .wp-block-columns > .wp-block-column.mc-px-25 {
	padding: 0 25px;
}

.entry-content .mc-rhythm .mc-pt-100, .entry-content .mc-rhythm.mc-pt-100 { padding-top: 100px !important; }
.entry-content .mc-rhythm .mc-mt-n20 { margin-top: -20px !important; }

.entry-content .mc-rhythm .wp-block-buttons.mc-center {
	justify-content: center;
}

.entry-content .mc-rhythm .mc-btn--green .wp-block-button__link {
	background: var(--mint-green-light);
	border-color: var(--mint-green-light);
	color: #fff;
}

.entry-content .mc-rhythm .mc-btn--arrow .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 12px;
	height: 13px;
	margin-left: 10px;
	background-color: currentColor;
	-webkit-mask: url(../icons/fa-arrow-circle-right.svg) no-repeat center / contain;
	mask: url(../icons/fa-arrow-circle-right.svg) no-repeat center / contain;
}

/* ---- 11. Tablet (768-991): obraz hero ukryty, tekst zostaje w polowie (vc_col-sm-6) */
@media (min-width: 768px) and (max-width: 991px) {
	.mc-home-hero .mc-split > .wp-block-column.mc-split__text {
		flex: 0 0 50%;
	}
}

/* ---- 12. Mobile (< 768): kolumny jedna pod druga (vc_col-sm-* Bridge), marginesy sie
   skladaja jak w Bridge, wiec kolumny jako bloki, nie flex. */
@media (max-width: 767px) {
	.entry-content .mc-rhythm .wp-block-columns {
		display: block;
	}

	.entry-content .mc-rhythm .wp-block-columns > .wp-block-column {
		display: flow-root; /* marginesy dzieci zostaja w kolumnie, jak w .vc_column-inner */
		width: auto;
		margin-right: 0;
	}

	.mc-steps__row > .wp-block-column {
		margin: 40px 0 !important;
	}

	.mc-home-badges__pad {
		min-height: 1px;
	}

	.mc-home-badges__sf {
		padding-left: 15px;
	}

	.entry-content .mc-badges.wp-block-gallery {
		grid-template-columns: 1fr;
	}

	.entry-content .mc-rhythm .mc-btn .wp-block-button__link {
		padding: 0 14px;
	}

	.mc-hero-buttons {
		flex-wrap: wrap;
	}

	.mc-latest-posts ul {
		display: block;
	}

	.mc-latest-posts li {
		width: auto !important;
	}

	.mc-latest-posts__text {
		padding: 36px 28px 0;
	}

	.mc-latest-posts__info {
		padding: 23px 28px 28px;
	}

	/* PROD 390: data 34 px pod gorna krawedzia stopki karty (23 padding + 10 px odstepu Bridge) */
	.mc-latest-posts__date {
		padding-top: 10px;
	}
}

/* [M4 Z1 r2] 768-781 px: WP core uklada kolumny jedna pod druga ponizej 782 px
   (flex-basis 100% !important, flex-wrap wrap !important), Bridge trzyma kolumny od 768 px
   (vc_col-sm-*). Przy 782 px sekcje B == PROD (zmierzone na /: 0 px roznicy w 6/7 sekcjach),
   przy 768 px siatka funkcji 7152 vs 2238 px. Ten zakres dostaje zachowanie core >= 782 px;
   ponizej 768 i od 782 bez zmian. Tylko sekcje B (.mc-rhythm). */
@media (min-width: 768px) and (max-width: 781px) {
	.mc-rhythm .wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: nowrap !important;
	}

	.mc-rhythm .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: 0 !important;
		flex-grow: 1;
	}
}
