/*
Theme Name: Zdrowa i Piękna
Template: twentytwentyfive
Version: 0.2.7
Description: Motyw potomny serwisu zdrowaipiekna.com.pl, kierunek A "Redakcja": logo L1, Instrument Serif i Instrument Sans, grafit i malina.
Text Domain: zdrowaipiekna
*/

:root { --zip-ink: #17131A; --zip-akcent: #C2185B; --zip-tint: #FCE8F0; --zip-linia: #E9E4EC; --zip-szary: #625B68; --zip-mgla: #F6F3F8; }
body { -webkit-font-smoothing: antialiased; }

/* pasek nad nagłówkiem */
.zip-pasek { border-bottom: 1px solid var(--zip-linia); padding-top: 0.55rem; padding-bottom: 0.55rem; }
.zip-pasek p { margin: 0; font-size: 0.8125rem; }
.zip-pasek-haslo { color: var(--zip-szary); }
.zip-pasek-linki { display: flex; gap: 1.25rem; }
.zip-pasek-linki a { color: var(--zip-szary); text-decoration: none; }
.zip-pasek-linki a:hover { color: var(--zip-akcent); }

/* nagłówek */
.zip-naglowek { border-bottom: 1px solid var(--zip-ink); padding-top: 1.75rem; padding-bottom: 0.35rem; }
.zip-naglowek-srodek { gap: 1rem; align-items: center; }
.zip-logo { display: inline-block; line-height: 0; color: inherit; }
.zip-logo svg { height: 74px; width: auto; display: block; }
.zip-nawigacja { gap: 0.75rem; align-items: center; }
.zip-nawigacja .wp-block-navigation { gap: 1.6rem; }
.zip-nawigacja .wp-block-navigation-item__content { text-decoration: none; padding: 0.6rem 0.1rem; border-bottom: 2px solid transparent; }
.zip-nawigacja .wp-block-navigation-item__content:hover { border-bottom-color: var(--zip-akcent); color: var(--zip-ink); }
.zip-nawigacja .wp-block-search__button { border-radius: 999px; background: #fff; color: var(--zip-ink); border: 1px solid var(--zip-linia); width: 44px; height: 44px; padding: 0; }

/* etykiety kategorii */
.zip-etykieta, .zip-etykieta a { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--zip-akcent); text-decoration: none; }
.zip-etykieta-szara { display: block; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--zip-szary); margin: 0 0 0.35rem; }

/* karty */
.zip-karta { gap: 0.65rem; height: 100%; min-width: 0; }
.zip-karta .wp-block-post-featured-image, .zip-karta-obraz { margin: 0; display: block; }
.zip-karta .wp-block-post-featured-image img, .zip-karta-obraz img { border-radius: 4px; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; height: auto; }
.zip-karta .wp-block-post-title, .zip-karta-tytul { font-family: var(--wp--preset--font-family--instrument-serif); font-size: 1.5rem; line-height: 1.12; margin: 0; }
.zip-karta .wp-block-post-title a, .zip-karta-link { text-decoration: none; color: var(--zip-ink); }
.zip-karta .wp-block-post-title a:hover, .zip-karta-link:hover .zip-karta-tytul { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.zip-karta-link { display: flex; flex-direction: column; gap: 0.65rem; }

/* sekcje strony głównej */
.zip-hero { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: 3rem; padding-top: 2.5rem; padding-bottom: 3.5rem; }
.zip-hero-wpis .wp-block-post-featured-image img { aspect-ratio: 16 / 9; object-fit: cover; border-radius: 4px; width: 100%; height: auto; }
.zip-hero-wpis .wp-block-post-title { font-size: clamp(2.2rem, 4.2vw, 3.75rem); line-height: 1.02; margin: 0.4rem 0 0.6rem; }
.zip-hero-wpis .wp-block-post-title a { text-decoration: none; }
.zip-hero-wpis .wp-block-post-excerpt { color: var(--zip-szary); font-size: 1.125rem; max-width: 760px; }
.zip-hero-wpis .wp-block-post-excerpt__more-text { display: none; }
.zip-boczny h2 { font-size: 2rem; margin: 0; padding-bottom: 0.75rem; border-bottom: 2px solid var(--zip-ink); }
.zip-popularne { list-style: none; counter-reset: zp; margin: 0; padding: 0; }
.zip-popularne li { counter-increment: zp; border-bottom: 1px solid var(--zip-linia); }
.zip-popularne a { display: grid; grid-template-columns: 2.6rem 1fr; gap: 0.2rem 0.9rem; padding: 1rem 0; text-decoration: none; color: var(--zip-ink); }
.zip-popularne a::before { content: counter(zp); grid-row: span 2; font-family: var(--wp--preset--font-family--instrument-serif); font-style: italic; font-size: 2.6rem; line-height: 0.9; color: var(--zip-akcent); }
.zip-pop-tytul { font-family: var(--wp--preset--font-family--instrument-serif); font-size: 1.35rem; line-height: 1.15; }
.zip-popularne a:hover .zip-pop-tytul { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.zip-sekcja { padding-top: 3rem; padding-bottom: 1.5rem; }
.zip-sekcja-gora { border-bottom: 2px solid var(--zip-ink); padding-bottom: 0.75rem; margin-bottom: 1.75rem; align-items: flex-end; }
.zip-sekcja-gora h2 { margin: 0; font-size: 2.5rem; }
.zip-sekcja-gora a { font-weight: 600; text-decoration: none; }
.zip-sekcja-wyrozniona .wp-block-post-template { grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)) !important; }
.zip-sekcja-wyrozniona .wp-block-post-template > li:first-child .wp-block-post-title { font-size: 2rem; }
.zip-sekcja-wyrozniona .wp-block-post-template > li:first-child .wp-block-post-featured-image img { aspect-ratio: 4 / 3; }
.paged .zip-tylko-pierwsza { display: none !important; }

/* stronicowanie */
.wp-block-query-pagination { margin-top: 2.5rem; font-weight: 600; }
.wp-block-query-pagination a { text-decoration: none; }

/* artykuł */
.zip-artykul-glowa { padding-top: 2.25rem; }
.zip-artykul-glowa .yoast-breadcrumbs, .zip-artykul-glowa nav { font-size: 0.875rem; color: var(--zip-szary); }
.zip-artykul-glowa .yoast-breadcrumbs a { color: var(--zip-szary); }
.zip-artykul-glowa h1 { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.02; max-width: 900px; margin: 0.75rem 0 1rem; }
.zip-meta { display: flex; flex-wrap: wrap; gap: 0.4rem 1.2rem; font-size: 0.875rem; color: var(--zip-szary); }
.zip-meta p { margin: 0; }
.zip-artykul-obraz img { aspect-ratio: 21 / 9; object-fit: cover; border-radius: 4px; width: 100%; height: auto; }
.zip-artykul-uklad { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 4rem; align-items: start; margin-top: 2rem; }
.zip-artykul-tresc .wp-block-post-content > * { max-width: 760px; margin-left: 0 !important; margin-right: 0 !important; }
.zip-artykul-tresc .wp-block-post-content p, .zip-artykul-tresc .wp-block-post-content li { font-size: 1.125rem; line-height: 1.75; color: #2A242E; }
.zip-artykul-tresc .wp-block-post-content h2 { font-size: 2.25rem; margin-top: 2.25rem; scroll-margin-top: 1rem; }
.zip-artykul-tresc .wp-block-post-content h3 { font-family: var(--wp--preset--font-family--instrument-sans); font-weight: 600; font-size: 1.3rem; letter-spacing: 0; }
.zip-artykul-tresc .wp-block-post-content a { text-decoration-color: var(--zip-akcent); text-underline-offset: 3px; }
.zip-artykul-bok { display: flex; flex-direction: column; gap: 2rem; position: sticky; top: 1.5rem; }
.zip-spis ol { list-style: none; margin: 0; padding: 0; }
.zip-spis li { border-bottom: 1px solid var(--zip-linia); }
.zip-spis a { display: block; padding: 0.55rem 0; font-size: 0.95rem; line-height: 1.35; text-decoration: none; color: var(--zip-ink); }
.zip-spis a:hover { color: var(--zip-akcent); }
.zip-artykul-bok .zip-popularne a { padding: 0.7rem 0; grid-template-columns: 2rem 1fr; }
.zip-artykul-bok .zip-popularne a::before { font-size: 2rem; }
.zip-artykul-bok .zip-pop-tytul { font-size: 1.1rem; }
.zip-powiazane { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }

/* linkowanie wewnętrzne w treści wpisu: "Przeczytaj też" i lista "Więcej na ten temat" (scripts/zip_linkowanie.py) */
.wp-block-post-content p.zip-przeczytaj { box-sizing: border-box; margin: 1.75rem 0; padding: 0.85rem 1.1rem; border-left: 3px solid var(--zip-akcent); background: var(--zip-tint); border-radius: 0 12px 12px 0; font-size: 1.0625rem; line-height: 1.5; }
.zip-przeczytaj a { font-weight: 600; color: var(--zip-ink); }
.zip-przeczytaj a:hover { color: var(--zip-akcent); }
.zip-wiecej { list-style: none; margin: 0.75rem 0 2.25rem; padding: 0; border-top: 1px solid var(--zip-linia); }
.zip-wiecej li { margin: 0; padding: 0.75rem 0; border-bottom: 1px solid var(--zip-linia); }
.zip-wiecej a { font-weight: 600; text-decoration: none; color: var(--zip-ink); }
.zip-wiecej a:hover { color: var(--zip-akcent); text-decoration: underline; }

/* stopka */
.zip-stopka { background: var(--zip-ink); color: #fff; padding-top: 4rem; padding-bottom: 1.75rem; margin-top: 4rem; }
.zip-stopka a { color: #fff; text-decoration: none; }
.zip-stopka a:hover { text-decoration: underline; color: #fff; }
.zip-stopka-gora { gap: 3rem; }
.zip-stopka-marka { max-width: 360px; gap: 0.9rem; }
.zip-stopka-marka p { color: #C9C1CE; margin: 0; }
.zip-logo-biale svg { height: 44px; }
.zip-stopka-kolumny { gap: 3rem; }
.zip-stopka ul { list-style: none; margin: 0; padding: 0; }
.zip-stopka li { margin: 0 0 0.55rem; }
.zip-stopka .zip-etykieta-szara { color: #A89FAD; }
.zip-stopka-dol { border-top: 1px solid #2E2833; margin-top: 2.5rem; padding-top: 1.1rem; }
.zip-stopka-dol p { color: #A89FAD; font-size: 0.8125rem; margin: 0; }

/* telefon */
.zip-karta, .zip-karta > *, .zip-artykul-tresc, .zip-artykul-bok, .zip-hero > *, .zip-artykul-uklad > * { min-width: 0; max-width: 100%; }
.wp-block-post-content img { max-width: 100%; height: auto; }
@media (max-width: 900px) {
	.zip-hero, .zip-artykul-uklad { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
	.wp-block-post-template.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.zip-artykul-tresc .wp-block-post-content > * { max-width: 100%; }
	.zip-artykul-bok { position: static; }
	.zip-powiazane { grid-template-columns: 1fr; }
	.zip-sekcja-wyrozniona .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 600px) {
	.wp-block-post-template.is-layout-grid { grid-template-columns: minmax(0, 1fr) !important; }
	.zip-pasek-haslo { display: none; }
	.zip-logo svg { height: 40px; }
	.zip-naglowek { padding-top: 1.1rem; }
	.zip-sekcja-gora h2 { font-size: 2rem; }
}

/* podstrony: O nas, Kontakt, Współpraca */
.zip-lead { font-size: 1.25rem; line-height: 1.6; color: var(--zip-szary); }
.zip-karty { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.25rem 0 2rem; }
.zip-karta-oferta { border: 1px solid var(--zip-linia); border-radius: 16px; padding: 1.35rem 1.4rem; display: flex; flex-direction: column; gap: 0.45rem; background: #fff; }
.zip-karta-oferta.wyrozniona { background: var(--zip-tint); border-color: #F3C6D8; }
.zip-karta-oferta h3 { font-family: var(--wp--preset--font-family--instrument-serif); font-size: 1.65rem; line-height: 1.1; margin: 0; }
.zip-karta-oferta p, .zip-karta-oferta li { font-size: 1rem !important; line-height: 1.55 !important; margin: 0; }
.zip-karta-oferta ul { margin: 0.2rem 0 0; padding-left: 1.1rem; display: flex; flex-direction: column; gap: 0.25rem; }
.zip-kroki { list-style: none; counter-reset: zk; padding: 0; margin: 1rem 0 2rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.5rem; }
.zip-kroki li { counter-increment: zk; display: grid; grid-template-columns: 2.4rem 1fr; gap: 0.75rem; align-items: start; }
.zip-kroki li::before { content: counter(zk); font-family: var(--wp--preset--font-family--instrument-serif); font-style: italic; font-size: 2.6rem; line-height: 0.9; color: var(--zip-akcent); }
.zip-fakty { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0 2rem; }
.zip-fakt { border-top: 2px solid var(--zip-ink); padding-top: 0.75rem; }
.zip-fakt strong { display: block; font-family: var(--wp--preset--font-family--instrument-serif); font-weight: 400; font-size: 2.6rem; line-height: 1; }
.zip-fakt span { font-size: 0.95rem; color: var(--zip-szary); }
.zip-cta { background: var(--zip-ink); color: #fff; border-radius: 20px; padding: 1.75rem; margin: 2rem 0; }
.zip-cta h2, .zip-cta p { color: #fff !important; margin: 0 0 0.6rem; }
.zip-cta a.wp-block-button__link { background: #fff; color: var(--zip-ink); }
.zip-cta a.wp-block-button__link:hover { background: var(--zip-akcent); color: #fff; }
.zip-dane { font-size: 0.95rem !important; color: var(--zip-szary) !important; }
@media (max-width: 700px) {
	.zip-karty, .zip-kroki, .zip-fakty { grid-template-columns: minmax(0, 1fr); }
}
.zip-strona-tresc { max-width: 960px; margin-left: auto !important; margin-right: auto !important; padding-top: 2.5rem; }
.zip-strona-tresc h1 { font-size: clamp(2.4rem, 5vw, 3.75rem); margin: 0 0 1rem; }
.zip-strona-tresc .wp-block-post-content > * { max-width: 100%; }
.zip-strona-tresc .wp-block-post-content p, .zip-strona-tresc .wp-block-post-content li { font-size: 1.0625rem; line-height: 1.7; }
.zip-strona-tresc .wp-block-post-content h2 { font-size: 2.1rem; margin-top: 2.25rem; }
.zip-strona-tresc .zip-karta-oferta h3 { font-family: var(--wp--preset--font-family--instrument-serif); font-weight: 400; font-size: 1.65rem; letter-spacing: -0.01em; }
.zip-strona-tresc .zip-kroki strong { font-weight: 700; }
