/*
Theme Name: Fizjoterapia Balance
Theme URI: https://bezwww.pl/
Author: bezwww.pl
Author URI: https://bezwww.pl/
Description: Motyw dla gabinetu fizjoterapii i rehabilitacji: turkus i koral, cienkie wersaliki Jost, jasne sale na zdjęciach. Pierwszy ekran ze zdjęciem i koralowym panelem na krawędzi, okrągłe przyciski, kolumny ze zdjęciami, turkusowe pasy, korzyści w kolorowych kołach z licznikami, pas trzech zdjęć, lista dolegliwości, cennik w kartach, zespół, opinie w układzie aktualności, pytania, baner z telefonem na rozmytym zdjęciu, galeria z filtrem i powiększeniem, oś czasu. Bez page buildera, treść w blokach, dane firmy w jednym miejscu (Dostosuj), lokalne czcionki.
Version: 1.0.1
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fizjoterapia-balance
Copyright: Fizjoterapia Balance, (C) 2026. Motyw na licencji GNU GPL v2 lub nowszej. Czcionki: SIL OFL 1.1 (assets/fonts/LICENSE.txt).
Tags: one-column, custom-logo, custom-menu, editor-style, featured-images, block-styles, wide-blocks
*/

/* =========================================================
   Tokeny (wartości domyślne = zaakceptowany projekt).
   Dostosuj nadpisuje tylko te zmienne w :root.
   ========================================================= */
:root{
	--accent:#c43e58; --on-accent:#ffffff; --accent-2:#4bbbae; --on-accent-2:#103632; --accent-3:#e0566f; --on-accent-3:#ffffff;
	--bg:#ffffff; --text:#263238; --dark:#1f8378; --light:#ffffff; --surface:#ffffff;
	--accent-ink:#c43e58; --dark-ink:#1a7469;
	--font-display:'Jost','Jost Fallback',system-ui,sans-serif;
	--font-body:'Source Sans 3','Source Sans 3 Fallback',system-ui,sans-serif;
	--font-label:'Jost','Jost Fallback',system-ui,sans-serif;
	--fs:17px; --radius:999px; --upper:uppercase; --shell:1200px; --pad:32px;
	/* Kolory pochodne liczą się same (zawsze ze zmiennych – działają też przy odwróconym wyglądzie). */
	--accent-dark:color-mix(in srgb,var(--accent) 82%,#000);
	--dark-2:color-mix(in srgb,var(--dark) 82%,#000);
	--dark-3:color-mix(in srgb,var(--dark) 52%,#000);
	--bg-soft:color-mix(in srgb,var(--dark) 5%,var(--bg));
	--teal-soft:color-mix(in srgb,var(--accent-2) 16%,var(--bg));
	--grey:color-mix(in srgb,var(--text) 55%,var(--bg));
	--card:var(--surface);
	--muted:color-mix(in srgb,var(--text) 78%,var(--bg));
	--line:color-mix(in srgb,var(--text) 14%,var(--bg));
	--on-dark:var(--light);
	--muted-dark:color-mix(in srgb,var(--light) 82%,var(--dark));
	--line-dark:color-mix(in srgb,var(--light) 35%,transparent);
	/* Szara stopka: kolor tekstu rozjaśniony tłem (jak we wzorcu), napisy – jaśniejszy z kolorów tła i tekstu. */
	--foot:color-mix(in srgb,var(--text) 76%,var(--bg));
	--foot-2:color-mix(in srgb,var(--text) 88%,var(--bg));
	--on-foot:var(--bg);
	--shadow:0 20px 40px -18px color-mix(in srgb,var(--text) 30%,transparent);
	/* Ikony (maska SVG; kolor z palety). */
	--ico-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/%3E%3C/svg%3E");
	--ico-pin:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
	--ico-mail:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
	--ico-clock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	--ico-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.5l2.5 2.5L16 9.5'/%3E%3C/svg%3E");
	--ico-shield:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.4 8.3-8 9-4.6-.7-8-4.5-8-9V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
	--ico-people:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20a6.5 6.5 0 0 1 13 0'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16 14.2A5 5 0 0 1 21.5 19'/%3E%3C/svg%3E");
	--ico-tag:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12l-8 8-9-9V3h8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E");
	--ico-card:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E");
	--ico-calendar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4M9.5 14.5l5 5M14.5 14.5l-5 5'/%3E%3C/svg%3E");
	--ico-parking:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='3'/%3E%3Cpath d='M9 17V7h4a3 3 0 0 1 0 6H9'/%3E%3C/svg%3E");
	--ico-door:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V4a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v17'/%3E%3Cpath d='M2 21h20M12 12h.01M16 7h4v14'/%3E%3C/svg%3E");
	--ico-quote:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 32'%3E%3Cpath d='M0 32V19C0 8 6 1.5 15 0l1.5 4.5C11 6.5 8.5 10 8.5 15H16v17zm22 0V19C22 8 28 1.5 37 0l1.5 4.5C33 6.5 30.5 10 30.5 15H38v17z'/%3E%3C/svg%3E");
	--ico-walk:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='14' cy='4' r='2'/%3E%3Cpath d='M6 22l4-7 3 2v6M10 15l-1-5 5-2 3 4h3M9 10l-4 2'/%3E%3C/svg%3E");
	--ico-clip:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2'/%3E%3Crect x='9' y='3' width='6' height='4' rx='1'/%3E%3Cpath d='M9 12h6M9 16h4'/%3E%3C/svg%3E");
	--ico-hand:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 11V6a2 2 0 0 0-4 0v5M14 10V4a2 2 0 0 0-4 0v6M10 10.5V6a2 2 0 0 0-4 0v8'/%3E%3Cpath d='M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.9-6-2.4L2.4 16a2 2 0 0 1 2.8-2.8L7 15'/%3E%3C/svg%3E");
	--ico-pulse:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-4l-3 9L9 3l-3 9H2'/%3E%3C/svg%3E");
	--ico-target:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 1v3M12 20v3M1 12h3M20 12h3'/%3E%3C/svg%3E");
	--ico-screen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='13' rx='2'/%3E%3Cpath d='M8 21h8M12 17v4M6 12c2-4 4-4 6 0s4 4 6 0'/%3E%3C/svg%3E");
	--ico-dumbbell:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 6.5v11M17.5 6.5v11M3 9v6M21 9v6M6.5 12h11'/%3E%3C/svg%3E");
	--ico-child:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='5'/%3E%3Cpath d='M10 10a3 3 0 0 0 4 0M5 21a7 7 0 0 1 14 0'/%3E%3Cpath d='M9.5 7h.01M14.5 7h.01' stroke-width='2.4'/%3E%3C/svg%3E");
	--ico-bolt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 3 14h9l-1 8 10-12h-9z'/%3E%3C/svg%3E");
	--ico-search:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
	--ico-book:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20V3H6.5A2.5 2.5 0 0 0 4 5.5z'/%3E%3Cpath d='M6.5 17A2.5 2.5 0 0 0 4 19.5 2.5 2.5 0 0 0 6.5 22H20v-5'/%3E%3C/svg%3E");
	--ico-bus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='15' rx='3'/%3E%3Cpath d='M4 11h16M8 21l1-3M16 21l-1-3'/%3E%3Cpath d='M8 14.5h.01M16 14.5h.01' stroke-width='2.6'/%3E%3C/svg%3E");
	--ico-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	/* Kontrakt z wtyczką baneru cookies (scb): kolory i czcionka zawsze z motywu. */
	--scb-primary:var(--accent);
	--scb-on-primary:var(--on-accent);
	--scb-bg:var(--bg);
	--scb-fg:var(--text);
	--scb-font:var(--font-body);
	--scb-radius:var(--radius);
}

/* =========================================================
   Podstawy
   ========================================================= */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;text-transform:var(--upper);line-height:1.15;margin:0;letter-spacing:.02em}
h1{font-size:clamp(36px,4.4vw,54px);font-weight:300}
h2{font-size:clamp(28px,3vw,40px);font-weight:300}
h3{font-size:20px}
h1 strong,h2 strong{font-weight:600}
p{margin:0}
:focus-visible{outline:3px solid var(--accent-2);outline-offset:3px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.fzb-skip{position:absolute;left:16px;top:-80px;background:var(--accent);color:var(--on-accent);padding:12px 18px;z-index:300;text-decoration:none}
.fzb-skip:focus{top:12px}
.has-accent-color{color:var(--accent)!important}
.has-accent-ink-color{color:var(--accent-ink)!important}
.has-dark-ink-color{color:var(--dark-ink)!important}
h1 mark,h2 mark{font-weight:500}
.on-dark .has-accent-ink-color,.on-dark .has-accent-color,.on-dark .has-dark-ink-color,.fzb-band .has-dark-ink-color{color:inherit!important}
.has-text-color.has-text-color{color:var(--text)}
.has-dark-color{color:var(--dark)!important}
.has-bg-color{color:var(--bg)!important}
.has-accent-background-color{background-color:var(--accent)!important}
.has-dark-background-color{background-color:var(--dark)!important}
.has-bg-background-color{background-color:var(--bg)!important}
mark.has-inline-color{background:transparent}

/* Treść z bloków: zerowe marginesy, odstępy robi gap. */
:where(.fzb-content) :where(.wp-block-group,.wp-block-cover__inner-container,.wp-block-quote) > *{margin-block:0}
.wp-block-group{margin-block:0;box-sizing:border-box}
.fzb-content .wp-block-image{margin:0}
.fzb-content .wp-block-image img{display:block}
.fzb-content .wp-block-image > a,.fzb-content .wp-block-gallery figure.wp-block-image > a{display:block;line-height:0}
.fzb-content .wp-block-buttons{margin:0;gap:14px}
.shell{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:var(--pad);position:relative;z-index:1}
.section{padding-block:96px;position:relative;overflow-x:clip}
.section--alt{background:var(--bg-soft)}
.fzb-sec--first{padding-top:56px}
.fzb-sec--after-band{padding-top:120px}
.fzb-prose{max-width:820px}
.fzb-prose > * + *{margin-top:1.1em!important}
.fzb-prose h2{font-size:28px;font-weight:400;margin-top:1.6em!important}
.fzb-prose h3{font-size:22px;margin-top:1.4em!important}
.fzb-prose ul,.fzb-prose ol{padding-left:1.3em}
.fzb-prose a{color:var(--dark-ink)}

/* Nagłówki sekcji: nadtytuł, tytuł cienkimi wersalikami, linia z koralową kreską */
.fzb-head{margin-bottom:48px;padding-bottom:22px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px;position:relative}
.fzb-head::after{content:"";position:absolute;left:0;bottom:-2px;width:72px;height:3px;background:var(--accent-3)}
.fzb-head--c{text-align:center;align-items:center}
.fzb-head--c::after{left:50%;margin-left:-36px}
.fzb-head--row{flex-direction:row;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px 32px}
.fzb-head__txt{display:flex;flex-direction:column;gap:12px;max-width:760px}
.fzb-stack > .fzb-head{margin-bottom:12px;width:100%}
.fzb-eyebrow{display:block;font-family:var(--font-label);font-weight:500;font-size:14px;letter-spacing:.2em;text-transform:uppercase;line-height:1.4;color:var(--accent-ink)}
.on-dark .fzb-eyebrow{color:color-mix(in srgb,var(--accent-3) 30%,var(--light))}
.fzb-lead{font-size:17px;color:var(--muted);max-width:680px}
.fzb-head .fzb-lead{margin-top:2px!important}
.on-dark .fzb-lead{color:var(--muted-dark)}
.fzb-stack{display:flex;flex-direction:column;gap:16px;align-items:flex-start;position:relative;z-index:1}
.fzb-stack > p:not([class*="fzb-"]){color:var(--muted)}
.fzb-stack > .wp-block-buttons{margin-top:12px!important}
.fzb-center-btn{margin-top:48px!important;justify-content:center}
.fzb-more{font-family:var(--font-label);font-weight:500;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--dark-ink)}
.fzb-more::after{content:"";display:inline-block;vertical-align:middle;width:16px;height:16px;margin:-3px 0 0 8px;background:currentColor;-webkit-mask:var(--ico-arrow) center/contain no-repeat;mask:var(--ico-arrow) center/contain no-repeat;transition:transform .25s}
.fzb-more a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.fzb-more a:hover{text-decoration:underline;text-underline-offset:4px}
.fzb-more:has(a)::after{display:none}
.fzb-more a::after{content:"";width:16px;height:16px;margin-left:8px;background:currentColor;-webkit-mask:var(--ico-arrow) center/contain no-repeat;mask:var(--ico-arrow) center/contain no-repeat;transition:transform .25s}
.fzb-more a:hover::after,.fzb-col:hover .fzb-more::after{transform:translateX(4px)}

/* Przyciski (blok Przyciski): pigułka w kolorze akcentu, obrys, turkus, biały, koło */
.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 28px;background:var(--accent);color:var(--on-accent);font-family:var(--font-label);font-weight:500;font-size:15px;letter-spacing:.08em;text-transform:uppercase;line-height:1.2;text-decoration:none;border:2px solid var(--accent);border-radius:var(--radius);cursor:pointer;transition:background-color .25s,color .25s,border-color .25s,transform .25s,box-shadow .25s}
.wp-block-button__link:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:var(--on-accent);transform:translateY(-2px)}
.wp-block-button.is-teal .wp-block-button__link,.wp-block-button.is-dark .wp-block-button__link{background:var(--dark);border-color:var(--dark);color:var(--on-dark)}
.wp-block-button.is-teal .wp-block-button__link:hover,.wp-block-button.is-dark .wp-block-button__link:hover{background:var(--dark-2);border-color:var(--dark-2);box-shadow:0 10px 24px -8px color-mix(in srgb,var(--dark) 50%,transparent)}
.wp-block-button.is-light .wp-block-button__link{background:var(--light);border-color:var(--light);color:var(--dark-ink)}
.wp-block-button.is-light .wp-block-button__link:hover{background:var(--bg-soft);border-color:var(--bg-soft)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;border-color:var(--dark);color:var(--dark-ink)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--dark);border-color:var(--dark);color:var(--on-dark)}
.on-dark .wp-block-button.is-style-outline .wp-block-button__link{border-color:var(--on-dark);color:var(--on-dark)}
.on-dark .wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--light);border-color:var(--light);color:var(--dark-ink)}
/* Okrągły przycisk (turkus z białą obwódką albo biały na turkusowym pasie) */
.fzb-circle .wp-block-button__link{width:150px;height:150px;min-height:0;padding:12px;border-radius:50%;flex-direction:column;gap:6px;text-align:center;line-height:1.25;background:var(--dark);border:0;color:var(--on-dark);box-shadow:0 0 0 10px color-mix(in srgb,var(--bg) 90%,transparent),0 18px 40px -10px color-mix(in srgb,var(--dark) 45%,transparent)}
.fzb-circle .wp-block-button__link::before{content:"";width:26px;height:26px;background:currentColor;-webkit-mask:var(--ico-calendar) center/contain no-repeat;mask:var(--ico-calendar) center/contain no-repeat}
.fzb-circle .wp-block-button__link:hover{background:var(--dark-2);transform:scale(1.06) rotate(-4deg)}
.fzb-circle.is-light .wp-block-button__link{width:104px;height:104px;background:var(--light);color:var(--dark-ink);font-size:14px;box-shadow:0 14px 30px -6px color-mix(in srgb,var(--text) 25%,transparent)}
.fzb-circle.is-light .wp-block-button__link::before{display:none}
.fzb-circle.is-light .wp-block-button__link:hover{background:var(--light);transform:scale(1.08)}
.fzb-icon{width:18px;height:18px;flex:none}

/* =========================================================
   Nagłówek: turkusowy pasek informacji i biały pas z menu
   ========================================================= */
.fzb-topbar{background:var(--dark);color:var(--on-dark);font-size:14px}
.fzb-topbar__in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:42px;max-width:var(--shell);margin-inline:auto;padding:4px var(--pad)}
.fzb-topbar__l{display:flex;gap:28px;flex-wrap:wrap}
.fzb-topbar__i{display:inline-flex;align-items:center;gap:8px;line-height:1.3;text-decoration:none;color:inherit;min-height:34px}
.fzb-topbar__i .fzb-icon{width:16px;height:16px}
a.fzb-topbar__i:hover span{text-decoration:underline}
.fzb-header{position:sticky;top:0;z-index:60;background:var(--bg);color:var(--text);box-shadow:0 1px 0 var(--line)}
.admin-bar .fzb-header{top:32px}
.fzb-header__in{display:flex;align-items:center;gap:28px;min-height:88px;max-width:var(--shell);margin-inline:auto;padding-inline:var(--pad)}
.fzb-logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;white-space:nowrap;min-width:0;min-height:44px;color:inherit;margin-right:auto}
.fzb-logo__mark{width:46px;height:46px;flex:none}
.fzb-logo__mark .fzb-m1{stroke:var(--accent-2)}
.fzb-logo__mark .fzb-m2{stroke:var(--accent-3)}
.fzb-logo__mark .fzb-m3{stroke:var(--dark)}
.fzb-logo__mark .fzb-m3f{fill:var(--dark)}
.fzb-logo__img{max-height:56px;width:auto;display:block}
.fzb-logo__text{display:flex;flex-direction:column;min-width:0}
.fzb-logo__name{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.05;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis}
.fzb-logo__slogan{font-family:var(--font-display);font-weight:400;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--dark-ink);margin-top:3px}
.fzb-nav__list{display:flex;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:nowrap}
.fzb-nav__list a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;text-decoration:none;font-family:var(--font-label);font-size:15px;font-weight:400;white-space:nowrap;position:relative;color:var(--text)}
.fzb-nav__list a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--accent-2);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.fzb-nav__list a:hover::after,.fzb-nav__list .current-menu-item:not(.menu-item-type-custom) > a::after{transform:scaleX(1)}
.fzb-nav__list .current-menu-item:not(.menu-item-type-custom) > a{color:var(--dark-ink)}
.fzb-header__cta{display:flex;justify-content:flex-end;align-items:center;gap:10px}
.fzb-cta-desk,.fzb-cta-tel{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;background:var(--accent);color:var(--on-accent);border:2px solid var(--accent);border-radius:var(--radius);font-family:var(--font-label);font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color .25s,border-color .25s,transform .25s}
.fzb-cta-desk:hover,.fzb-cta-tel:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-2px)}
.fzb-cta-tel{display:none}
.fzb-burger{display:none;width:46px;height:46px;border:0;border-radius:8px;background:var(--bg-soft);color:var(--text);cursor:pointer;align-items:center;justify-content:center;padding:0}
.fzb-burger .fzb-icon{width:24px;height:24px}

/* Tacka menu mobilnego */
.fzb-scrim{position:fixed;inset:0;background:color-mix(in srgb,var(--text) 55%,transparent);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:90}
.fzb-tray{position:fixed;top:0;right:0;height:100dvh;width:86%;max-width:340px;background:var(--bg);color:var(--text);z-index:100;transform:translateX(100%);visibility:hidden;transition:transform .3s ease,visibility .3s;display:flex;flex-direction:column;padding:16px 22px 26px;overflow-y:auto;box-shadow:-20px 0 60px color-mix(in srgb,var(--text) 25%,transparent);border-top:5px solid var(--accent-2)}
.fzb-tray.is-open{transform:none;visibility:visible}
.fzb-scrim.is-open{opacity:1;visibility:visible}
.fzb-tray__top{display:flex;justify-content:space-between;align-items:center;min-height:48px;margin-bottom:8px;gap:12px}
.fzb-tray__name{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:400;font-size:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fzb-tray__name .fzb-logo__mark{width:34px;height:34px}
.fzb-tray__close{width:46px;height:46px;border:0;border-radius:8px;background:var(--bg-soft);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none}
.fzb-tray__close .fzb-icon{width:22px;height:22px}
.fzb-tray__list{list-style:none;margin:8px 0 0;padding:0}
.fzb-tray__list a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid var(--line);text-decoration:none;font-family:var(--font-label);font-size:19px;font-weight:400}
.fzb-tray__list .current-menu-item:not(.menu-item-type-custom) > a{color:var(--accent-ink);font-weight:500}
.fzb-tray__foot{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:10px}
.fzb-tray__hint{color:var(--muted);font-size:15px}
.fzb-tray__phone{font-family:var(--font-display);font-weight:400;font-size:24px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;color:var(--dark-ink)}
.fzb-tray__foot .wp-block-button,.fzb-tray__foot .wp-block-button__link{width:100%}
body.fzb-locked{overflow:hidden}

/* =========================================================
   Ikony w kartach (klasa fzb-ico-nazwa na grupie)
   ========================================================= */
[class*="fzb-ico-"]{position:relative}
[class*="fzb-ico-"]::before{content:"";flex:none;width:52px;height:52px;background:var(--dark-ink);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.fzb-ico-phone{--ico:var(--ico-phone)}.fzb-ico-pin{--ico:var(--ico-pin)}.fzb-ico-mail{--ico:var(--ico-mail)}.fzb-ico-clock{--ico:var(--ico-clock)}.fzb-ico-check{--ico:var(--ico-check)}.fzb-ico-shield{--ico:var(--ico-shield)}.fzb-ico-people{--ico:var(--ico-people)}.fzb-ico-card{--ico:var(--ico-card)}.fzb-ico-calendar{--ico:var(--ico-calendar)}.fzb-ico-tag{--ico:var(--ico-tag)}.fzb-ico-parking{--ico:var(--ico-parking)}.fzb-ico-door{--ico:var(--ico-door)}.fzb-ico-walk{--ico:var(--ico-walk)}.fzb-ico-clip{--ico:var(--ico-clip)}.fzb-ico-hand{--ico:var(--ico-hand)}.fzb-ico-pulse{--ico:var(--ico-pulse)}.fzb-ico-target{--ico:var(--ico-target)}.fzb-ico-screen{--ico:var(--ico-screen)}.fzb-ico-dumbbell{--ico:var(--ico-dumbbell)}.fzb-ico-child{--ico:var(--ico-child)}.fzb-ico-bolt{--ico:var(--ico-bolt)}.fzb-ico-search{--ico:var(--ico-search)}.fzb-ico-book{--ico:var(--ico-book)}.fzb-ico-bus{--ico:var(--ico-bus)}

/* Siatki */
.fzb-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;position:relative;z-index:1}
.fzb-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:relative;z-index:1}
.fzb-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;position:relative;z-index:1}

/* =========================================================
   Okładki (sekcje ze zdjęciem w tle)
   ========================================================= */
.wp-block-cover.fzb-hero,.wp-block-cover.fzb-section-bg,.wp-block-cover.page-hero{display:block;min-height:0;padding:0;position:relative;overflow:hidden}
.wp-block-cover .wp-block-cover__inner-container{width:100%;color:inherit;position:relative;z-index:2}
.wp-block-cover .wp-block-cover__background:not([style*="background-color"]):not([class*="-background-color"]){background-color:var(--bg)}
.on-dark.wp-block-cover .wp-block-cover__background:not([style*="background-color"]):not([class*="-background-color"]){background-color:var(--dark)}
.wp-block-cover:not(.on-dark){color:var(--text)}
.on-dark{color:var(--on-dark)}
.on-dark h1,.on-dark h2,.on-dark h3{color:var(--on-dark)}
.fzb-section-bg .wp-block-cover__inner-container > .shell{padding-block:110px}

/* Pierwszy ekran: zdjęcie, koralowy panel na dolnej krawędzi, okrągły przycisk, plakietki */
.wp-block-cover.fzb-hero{min-height:600px;overflow:visible;margin-bottom:72px;background:var(--bg-soft)}
.wp-block-cover.fzb-hero .wp-block-cover__image-background{object-position:30% 30%}
.wp-block-cover.fzb-hero > .wp-block-cover__inner-container{position:static}
/* Panel od lewej krawędzi ekranu: odstęp do linii kontenera + stała szerokość tekstu (na szerokich ekranach panel nie zwęża się). */
.wp-block-cover.fzb-hero{--hero-off:max(var(--pad),calc((100vw - var(--shell)) / 2 + var(--pad)))}
.fzb-hero__panel{position:absolute;left:0;bottom:-72px;z-index:3;width:calc(var(--hero-off) + min(560px,46vw));background:var(--accent);color:var(--on-accent);padding:44px 48px 48px var(--hero-off);display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.fzb-hero .fzb-hero__title{font-size:clamp(38px,4vw,52px);line-height:1.08;color:inherit;letter-spacing:.01em}
.fzb-hero .fzb-hero__title strong{display:inline-block;font-weight:500}
.fzb-hero .fzb-lead{font-size:18px;line-height:1.55;color:inherit;max-width:470px}
.fzb-hero__panel .wp-block-buttons{margin-top:10px!important}
.fzb-hero__panel .wp-block-button.is-style-outline .wp-block-button__link{border-color:var(--on-accent);color:var(--on-accent)}
.fzb-hero__panel .wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--on-accent);color:var(--accent)}
.fzb-hero__circle{position:absolute;z-index:4;right:max(var(--pad),calc((100vw - var(--shell)) / 2 + var(--pad)));bottom:-64px;margin:0!important}
/* Plakietki: w jednym rzędzie w lewym górnym rogu zdjęcia (puste tło, z dala od twarzy na zdjęciu). */
.fzb-chips{position:absolute;z-index:3;top:32px;left:var(--hero-off);right:auto;max-width:min(600px,52%);list-style:none;margin:0;padding:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center}
.fzb-chips li{display:block;position:relative;background:color-mix(in srgb,var(--bg) 94%,transparent);color:var(--text);border-radius:999px;padding:8px 18px 8px 50px;font-size:15px;line-height:1.4;box-shadow:0 8px 20px -6px color-mix(in srgb,var(--text) 20%,transparent)}
.fzb-chips li::before{content:"";position:absolute;left:10px;top:50%;margin-top:-15px;width:30px;height:30px;border-radius:50%;background:var(--accent-2)}
.fzb-chips li::after{content:"";position:absolute;left:17px;top:50%;margin-top:-8px;width:16px;height:16px;background:var(--light);-webkit-mask:var(--ico-check) center/contain no-repeat;mask:var(--ico-check) center/contain no-repeat}

/* Trzy kolumny ze zdjęciem (cała kolumna klikalna) */
.fzb-col{display:flex;flex-direction:column;gap:18px;position:relative;height:100%}
.fzb-content .fzb-col__img{position:relative;overflow:hidden;aspect-ratio:3/2;background:var(--bg-soft)}
.fzb-content .fzb-col__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.fzb-col:hover .fzb-col__img img{transform:scale(1.07)}
.fzb-col__img::after{content:"";position:absolute;inset:12px;border:1px solid color-mix(in srgb,var(--light) 85%,transparent);opacity:0;transform:scale(1.04);transition:opacity .4s,transform .4s;pointer-events:none}
.fzb-col:hover .fzb-col__img::after{opacity:1;transform:none}
.fzb-col h3{font-size:21px;color:var(--dark-ink);line-height:1.2;min-height:calc(2 * 1.2em)}
.fzb-col h3 a{text-decoration:none;color:inherit}
.fzb-col h3 a::after{content:"";position:absolute;inset:0;z-index:2}
.fzb-col h3 a:focus-visible{outline:0}
.fzb-col:has(a:focus-visible){outline:3px solid var(--accent-2);outline-offset:6px}
.fzb-col p:not(.fzb-more){color:var(--muted);font-size:16px}
.fzb-col .fzb-more{margin-top:auto!important}

/* Szeroki pas zdjęcia i turkusowy pas z okrągłym przyciskiem */
.fzb-photoband{height:420px;overflow:hidden;background:var(--bg-soft)}
.fzb-content .fzb-photoband__img,.fzb-content .fzb-photoband__img img{width:100%;height:100%}
.fzb-content .fzb-photoband__img img{object-fit:cover;object-position:50% 35%}
.fzb-band{background:var(--dark);color:var(--on-dark);position:relative}
.fzb-band__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;padding-block:72px}
.fzb-band h2{font-size:clamp(36px,4vw,52px);line-height:1.02;color:var(--on-dark)}
.fzb-band h2 a{color:inherit;text-decoration:none}
.fzb-band .fzb-band__txt{font-size:17px;line-height:1.7}
.fzb-band__circle{position:absolute;right:var(--pad);bottom:-52px;margin:0!important}
.fzb-content > .fzb-band:last-child{margin-bottom:72px}

/* Korzyści w dużych kolorowych kołach */
.fzb-advs{gap:40px}
.fzb-adv{display:flex;flex-direction:column;gap:16px;height:100%;align-items:flex-start}
.fzb-adv[class*="fzb-ico-"]::before{width:116px;height:116px;border-radius:50%;background:var(--accent-3);-webkit-mask:none;mask:none;margin-bottom:10px;transition:transform .35s,box-shadow .35s}
.fzb-adv[class*="fzb-ico-"]::after{content:"";position:absolute;left:35px;top:35px;width:46px;height:46px;background:var(--light);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat;transition:transform .35s}
.fzb-adv:nth-child(3n+2)::before{background:var(--accent-2)}
.fzb-adv:nth-child(3n)::before{background:var(--grey)}
.fzb-adv:hover::before{transform:translateY(-4px);box-shadow:0 0 0 8px var(--bg),0 0 0 9px currentColor}
.fzb-adv:hover::after{transform:translateY(-4px)}
.fzb-adv h3{font-size:19px;line-height:1.25;min-height:calc(2 * 1.25em)}
.fzb-adv p:not(.fzb-more){color:var(--muted);font-size:16px}
.fzb-adv .fzb-more{margin-top:auto!important}

/* Liczniki: pas z liniami */
.fzb-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:72px!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fzb-stat{text-align:center;padding:34px 20px;border-right:1px solid var(--line)}
.fzb-stat:last-child{border-right:0}
.fzb-stat .fzb-stat__num{font-family:var(--font-display);font-weight:300;font-size:54px;line-height:1;color:var(--dark-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.fzb-stat .fzb-stat__label{margin-top:10px!important;font-family:var(--font-label);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* Pas trzech zdjęć (zajawka galerii) */
.fzb-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fzb-content .fzb-gtile{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--dark)}
.fzb-content .fzb-gtile a{height:100%}
.fzb-content .fzb-gtile img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.fzb-gtile:hover img{transform:scale(1.08)}
.fzb-gtile::after{content:"";position:absolute;inset:0;border:4px solid var(--accent-2);opacity:0;transition:opacity .3s;pointer-events:none;z-index:2}
.fzb-gtile:hover::after{opacity:1}
.fzb-content .fzb-gtile figcaption.wp-element-caption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:56px 28px 22px;background:linear-gradient(transparent,color-mix(in srgb,var(--dark-3) 82%,transparent));color:var(--light);text-align:left;font-family:var(--font-display);font-weight:400;font-size:18px;letter-spacing:.06em;text-transform:uppercase;line-height:1.3;pointer-events:none;transform:translateY(8px);transition:transform .35s}
.fzb-gtile:hover figcaption.wp-element-caption{transform:none}

/* Lista dolegliwości i metod w dwóch kolumnach */
.fzb-tlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}
.fzb-tlist li{display:block;position:relative;padding:13px 0 13px 32px;border-bottom:1px dashed var(--line);font-family:var(--font-label);font-size:16px;letter-spacing:.04em;text-transform:uppercase;color:var(--dark-ink);line-height:1.4}
.fzb-tlist li::before{content:"";position:absolute;left:0;top:50%;margin-top:-9px;width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--accent-2),inset 0 0 0 5px var(--bg),inset 0 0 0 9px var(--accent-2)}

/* Cennik: karty z kolorową kreską u góry */
.fzb-pgrid{align-items:stretch;row-gap:40px}
.fzb-pcard{background:var(--card);border:1px solid var(--line);padding:34px 32px 30px;display:flex;flex-direction:column;height:100%;position:relative;transition:box-shadow .3s,transform .3s}
.fzb-pcard::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--accent-2)}
.fzb-pcard:nth-child(3n+2)::before{background:var(--accent-3)}
.fzb-pcard:nth-child(3n)::before{background:var(--grey)}
.fzb-pcard:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.fzb-pcard h3{font-size:20px;letter-spacing:.04em;margin-bottom:10px!important}
.fzb-prices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.fzb-prices li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:0;align-items:baseline;padding:12px 0;border-bottom:1px dashed var(--line);line-height:1.4}
.fzb-prices li:last-child{border-bottom:0}
.fzb-prices strong{font-family:var(--font-display);font-weight:500;font-size:19px;white-space:nowrap;color:var(--dark-ink)}
.fzb-prices em{grid-column:1/2;font-style:normal;color:var(--muted);font-size:14px;line-height:1.45}
.fzb-pcard .fzb-more{margin-top:auto!important;padding-top:14px}

/* Zespół */
.fzb-team{display:flex;flex-direction:column;height:100%}
.fzb-content .fzb-team__img{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--bg-soft)}
.fzb-content .fzb-team__img img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .6s}
.fzb-team:hover .fzb-team__img img{transform:scale(1.06)}
.fzb-team__img::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--accent-2);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.fzb-team:hover .fzb-team__img::after{transform:scaleX(1)}
.fzb-team h3{font-size:20px;margin-top:18px!important;text-transform:none;letter-spacing:.01em}
.fzb-team .fzb-team__role{color:var(--accent-ink);font-family:var(--font-label);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:6px!important;line-height:1.4;min-height:calc(2 * 1.4em)}
.fzb-team p:not(.fzb-team__role){color:var(--muted);font-size:15px;margin-top:8px!important}

/* Opinie w układzie aktualności: data, tytuł, cytat w dymku */
.fzb-op{display:flex;flex-direction:column;height:100%}
.fzb-op .fzb-op__date{font-family:var(--font-display);font-weight:300;font-size:34px;line-height:1;color:var(--accent-3)}
.fzb-op h3{font-size:18px;letter-spacing:.04em;line-height:1.3;margin:14px 0 18px!important;min-height:calc(2 * 1.3em)}
.fzb-quote{margin:0;padding:22px 24px;background:var(--bg);border:0;position:relative;display:flex;flex-direction:column;flex:1}
.section:not(.section--alt) .fzb-quote{background:var(--bg-soft)}
.fzb-quote::before{content:"";position:absolute;left:24px;top:-10px;border:10px solid transparent;border-top:0;border-bottom-color:inherit}
.fzb-quote{border-bottom-color:var(--bg)}
.section:not(.section--alt) .fzb-quote{border-bottom-color:var(--bg-soft)}
.fzb-quote::before{border-bottom-color:var(--bg)}
.section:not(.section--alt) .fzb-quote::before{border-bottom-color:var(--bg-soft)}
.fzb-quote p{font-size:16px;line-height:1.6}
.fzb-quote cite{margin-top:auto!important;padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-style:normal;font-weight:600;font-size:15px;color:var(--text)}
.fzb-quote cite::after{content:"\2605\2605\2605\2605\2605";color:var(--accent-3);letter-spacing:2px;font-size:15px;font-weight:400}

/* Pytania (blok Szczegóły) */
.fzb-acc{display:flex;flex-direction:column;width:100%;border-top:1px solid var(--line)}
.fzb-acc .wp-block-details{margin:0;padding:0;border-bottom:1px solid var(--line)}
.fzb-acc summary{list-style:none;cursor:pointer;min-height:64px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-family:var(--font-display);font-weight:400;font-size:19px;line-height:1.35}
.fzb-acc summary::-webkit-details-marker{display:none}
.fzb-acc summary::after{content:"+";flex:none;width:34px;height:34px;border-radius:50%;background:var(--teal-soft);color:var(--dark-ink);display:grid;place-items:center;font-size:22px;line-height:1;transition:background-color .3s,color .3s}
.fzb-acc details[open] summary::after{content:"\2013";background:var(--dark);color:var(--on-dark)}
.fzb-acc .wp-block-details p{padding:0 48px 22px 0;margin:0;color:var(--muted)}

/* Baner z wezwaniem na rozmytym zdjęciu */
.wp-block-cover.fzb-ctaband{text-align:center}
.fzb-ctaband .wp-block-cover__image-background{filter:blur(2px);transform:scale(1.04)}
.fzb-ctaband h2{font-size:clamp(28px,3.4vw,44px)}
.fzb-ctaband .fzb-ctaband__sub{margin-top:10px!important;font-family:var(--font-label);font-size:17px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.fzb-ctaband__row{margin-top:34px!important;display:flex;gap:18px 28px;justify-content:center;align-items:center;flex-wrap:wrap}
.fzb-ctaband .fzb-ctaband__tel{font-family:var(--font-display);font-size:30px;font-weight:400;line-height:1.2}
.fzb-ctaband__tel a{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:4px 22px;border-bottom:2px solid var(--accent-2);text-decoration:none;color:var(--text)}
.fzb-ctaband__tel a::before{content:"";width:26px;height:26px;background:var(--dark-ink);-webkit-mask:var(--ico-phone) center/contain no-repeat;mask:var(--ico-phone) center/contain no-repeat}
.fzb-ctaband__tel a:hover{color:var(--dark-ink)}

/* Dwie kolumny: zdjęcie z turkusowym blokiem i koralowym narożnikiem */
.fzb-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.fzb-split--top{align-items:start}
.fzb-photo{position:relative;width:100%;padding:0 0 22px 22px}
.fzb-photo::before{content:"";position:absolute;left:0;bottom:0;width:62%;height:70%;background:var(--teal-soft)}
.fzb-photo::after{content:"";position:absolute;right:-14px;top:-14px;width:90px;height:90px;border-top:3px solid var(--accent-3);border-right:3px solid var(--accent-3);z-index:2;pointer-events:none}
.fzb-photo--r{padding:0 22px 22px 0}
.fzb-photo--r::before{left:auto;right:0}
.fzb-photo--r::after{right:auto;left:-14px;border-right:0;border-left:3px solid var(--accent-3)}
.fzb-content .fzb-photo__img{position:relative;z-index:1;width:100%}
.fzb-content .fzb-photo__img img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
/* Plakietka: liczba i tekst obok (tekst z <br> w jednej anonimowej komórce tabeli). */
.fzb-badge{position:absolute;z-index:3;left:-8px;bottom:44px;background:var(--accent);color:var(--on-accent);padding:16px 22px;box-shadow:var(--shadow);font-family:var(--font-label);font-size:13px;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;display:table;border-spacing:0}
.fzb-badge strong{display:table-cell;vertical-align:middle;padding-right:14px;font-family:var(--font-display);font-weight:500;font-size:42px;line-height:1;letter-spacing:0}

/* Listy z ikoną „ptaszek w kole” */
.fzb-checks{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.fzb-checks li{display:block;position:relative;padding-left:34px;line-height:1.5}
.fzb-checks li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;background:var(--dark);-webkit-mask:var(--ico-check) center/contain no-repeat;mask:var(--ico-check) center/contain no-repeat}

/* =========================================================
   Podstrony
   ========================================================= */

/* Nagłówek podstrony: zdjęcie pod turkusowym gradientem, tytuł z koralową kreską, okruszki, koralowy pasek */
.wp-block-cover.page-hero{background:var(--dark-3)}
.wp-block-cover.page-hero .wp-block-cover__background:not([style*="background-color"]):not([class*="-background-color"]){background:linear-gradient(90deg,color-mix(in srgb,var(--dark-3) 88%,transparent) 0%,color-mix(in srgb,var(--dark-3) 58%,transparent) 55%,color-mix(in srgb,var(--dark-3) 18%,transparent) 100%);opacity:1!important}
.wp-block-cover.page-hero::after{content:"";position:absolute;right:0;bottom:0;width:30%;height:16px;background:var(--accent);z-index:3}
.page-hero .shell{min-height:340px;padding-top:72px;padding-bottom:56px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:0}
.page-hero h1{font-size:clamp(36px,4.2vw,54px);font-weight:300}
.page-hero h1::after{content:"";display:block;width:72px;height:3px;background:var(--accent-3);margin:20px 0 6px}
.page-hero.is-no-image{background:var(--dark-3)}
.fzb-crumbs{display:flex;gap:10px;font-size:15px;align-items:center;flex-wrap:wrap;color:var(--muted-dark)}
.fzb-crumbs a{min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:var(--on-dark)}
.fzb-crumbs a:hover{text-decoration:underline}
.fzb-crumbs i{font-style:normal}
.fzb-crumbs i::before{content:"/"}
.fzb-crumbs span{display:inline-flex;align-items:center;min-height:44px}

/* Karty informacyjne (dobrze wiedzieć, dojazd): ikona w jasnym kole */
.fzb-ki{background:var(--card);color:var(--text);border:1px solid var(--line);padding:30px 28px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;position:relative;height:100%;transition:transform .3s,box-shadow .3s}
.fzb-ki[class*="fzb-ico-"]::before{width:52px;height:52px;border-radius:50%;background:var(--teal-soft);-webkit-mask:none;mask:none}
.fzb-ki[class*="fzb-ico-"]::after{content:"";position:absolute;left:43px;top:45px;width:22px;height:22px;background:var(--dark-ink);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.fzb-ki:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.fzb-ki h3{font-size:18px;letter-spacing:.04em}
.fzb-ki p{font-size:16px;color:var(--muted)}

/* Misja: wartości w obrysowanych kartach na turkusowym zdjęciu */
.fzb-mission .wp-block-cover__image-background{object-position:50% 40%}
.fzb-mission h2{font-size:clamp(26px,3vw,40px);max-width:880px;line-height:1.2}
.fzb-mission .fzb-head{border-bottom-color:var(--line-dark);margin-inline:auto;max-width:960px}
.fzb-val{border:1px solid var(--line-dark);padding:34px 30px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;height:100%;position:relative;transition:background-color .3s,border-color .3s,transform .3s}
.fzb-val:hover{background:color-mix(in srgb,var(--light) 10%,transparent);border-color:var(--on-dark);transform:translateY(-4px)}
.fzb-val[class*="fzb-ico-"]::before{width:52px;height:52px;border-radius:50%;background:var(--light);-webkit-mask:none;mask:none}
.fzb-val[class*="fzb-ico-"]::after{content:"";position:absolute;left:44px;top:48px;width:24px;height:24px;background:var(--dark-ink);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.on-dark .fzb-val h3{font-family:var(--font-label);font-weight:500;font-size:19px;letter-spacing:.06em;color:var(--on-dark)}
.fzb-val p{font-size:16px;color:var(--on-dark)}

/* Oś czasu: kropki z koralową obwódką */
.fzb-tl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;position:relative}
.fzb-tl::before{content:"";position:absolute;left:0;right:0;top:20px;height:2px;background:var(--line)}
.fzb-tl__item{position:relative;padding-top:52px;display:flex;flex-direction:column;align-items:flex-start}
.fzb-tl__item::before{content:"";position:absolute;left:0;top:11px;width:20px;height:20px;border-radius:50%;background:var(--bg);border:4px solid var(--accent-3)}
.fzb-tl .fzb-tl__year{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.1;color:var(--dark-ink)}
.fzb-tl__item h3{font-size:18px;letter-spacing:.04em;margin-top:6px!important}
.fzb-tl__item p:not(.fzb-tl__year){font-size:16px;color:var(--muted);margin-top:8px!important}

/* Usługi: karty ze zdjęciem i ikoną w kole na krawędzi */
.fzb-svcs{row-gap:40px}
.fzb-svc{background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;height:100%;transition:box-shadow .3s,transform .3s}
.fzb-svc:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.fzb-content .fzb-svc__img{position:relative;overflow:hidden;aspect-ratio:16/10;background:var(--bg-soft)}
.fzb-content .fzb-svc__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.fzb-svc:hover .fzb-svc__img img{transform:scale(1.06)}
.fzb-svc__body{padding:26px;display:flex;flex-direction:column;gap:12px;flex:1;position:relative}
.fzb-svc__body[class*="fzb-ico-"]::before{position:absolute;right:22px;top:-30px;width:60px;height:60px;border-radius:50%;background:var(--accent-2);-webkit-mask:none;mask:none;box-shadow:0 0 0 6px var(--card)}
.fzb-svc__body[class*="fzb-ico-"]::after{content:"";position:absolute;right:38px;top:-14px;width:28px;height:28px;background:var(--light);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.fzb-svc:nth-child(3n+2) .fzb-svc__body::before{background:var(--accent-3)}
.fzb-svc:nth-child(3n) .fzb-svc__body::before{background:var(--grey)}
.fzb-svc h3{font-size:20px;color:var(--dark-ink);padding-right:62px;line-height:1.2;min-height:calc(2 * 1.2em)}
.fzb-svc__body > p:not([class*="fzb-"]){color:var(--muted);font-size:16px}
.fzb-svc .fzb-svc__price{margin-top:auto!important;padding-top:12px;border-top:1px dashed var(--line);display:flex;justify-content:space-between;align-items:center;font-size:15px;color:var(--muted)}
.fzb-svc__price strong{font-family:var(--font-display);font-weight:500;font-size:19px;color:var(--text)}

/* Kroki */
.fzb-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.fzb-step{position:relative;padding-top:12px}
.fzb-step .fzb-step__n{font-family:var(--font-display);font-weight:300;font-size:64px;line-height:1;color:var(--dark)}
.fzb-step::before{content:"";position:absolute;top:44px;left:96px;right:-14px;height:1px;background:var(--line)}
.fzb-step:last-child::before{display:none}
.fzb-step h3{font-size:19px;margin:16px 0 10px!important}
.fzb-step p:not(.fzb-step__n){color:var(--muted);font-size:16px}

/* =========================================================
   Galeria (podstrona) i powiększenie
   ========================================================= */
.fzb-gwrap{position:relative}
.wp-block-gallery.fzb-gal{--gal-ratio:16/10;display:grid;gap:18px;margin:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.wp-block-gallery.fzb-gal.is-style-square{--gal-ratio:1/1}
.wp-block-gallery.fzb-gal.is-style-wide{--gal-ratio:16/9}
.wp-block-gallery.has-nested-images.fzb-gal figure.wp-block-image:not(#gp){width:auto!important;margin:0!important;position:relative;overflow:hidden;background:var(--bg-soft);aspect-ratio:var(--gal-ratio)}
.wp-block-gallery.has-nested-images.is-cropped.fzb-gal figure.wp-block-image:not(#gp) img{width:100%!important;height:100%!important;object-fit:cover;transition:transform .6s;cursor:zoom-in}
.wp-block-gallery.fzb-gal.is-style-square figure.wp-block-image:not(#gp) img{object-position:50% 20%}
.wp-block-gallery.fzb-gal figure.wp-block-image:hover img{transform:scale(1.07)}
.wp-block-gallery.fzb-gal figure.wp-block-image::after{content:"";position:absolute;inset:0;border:4px solid var(--accent-2);opacity:0;transition:opacity .3s;z-index:2;pointer-events:none}
.wp-block-gallery.fzb-gal figure.wp-block-image:hover::after,.wp-block-gallery.fzb-gal figure.wp-block-image:focus-within::after{opacity:1}
.wp-block-gallery.has-nested-images.fzb-gal figure.wp-block-image figcaption.wp-element-caption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:40px 18px 14px;background:linear-gradient(transparent,color-mix(in srgb,var(--dark-3) 82%,transparent));color:var(--light);text-align:left;font-family:var(--font-body);font-weight:400;font-size:15px;line-height:1.35;max-height:none;overflow:visible;text-shadow:none;pointer-events:none;width:auto}
.fzb-gal figcaption em{display:block;font-style:normal;font-family:var(--font-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--accent-2) 45%,var(--light))}
.fzb-filter{display:flex;flex-wrap:wrap;gap:10px;position:absolute;top:0;left:0;right:0;margin:0}
.fzb-filter button{min-height:44px;padding:10px 22px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font-family:var(--font-label);font-size:14px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background-color .25s,border-color .25s,color .25s}
.fzb-filter button:hover{border-color:var(--dark);color:var(--dark-ink)}
.fzb-filter button[aria-pressed="true"]{background:var(--dark);border-color:var(--dark);color:var(--on-dark)}
.fzb-filter button span{margin-left:6px;opacity:.7}
.fzb-ggroup{display:flex;flex-direction:column;gap:20px}
.fzb-ggroup + .fzb-ggroup{margin-top:48px!important}
/* Miejsce na pasek filtra budowany skryptem (bez przesunięcia układu). */
.fzb-ggroup:first-child,.fzb-filter + .fzb-ggroup{padding-top:84px}
.fzb-ggroup > h3{font-size:22px;letter-spacing:.05em;display:flex;align-items:center;gap:14px}
.fzb-ggroup > h3::after{content:"";flex:1;height:1px;background:var(--line)}
.fzb-ggroup.is-filtered-out{display:none}
.fzb-lightbox{position:fixed;inset:0;z-index:200;background:color-mix(in srgb,var(--dark-3) 60%,#000 36%);display:flex;align-items:center;justify-content:center;padding:60px 80px;color:var(--light)}
.fzb-lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:1100px}
.fzb-lightbox img{max-height:78vh;width:auto;max-width:100%;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.fzb-lightbox figcaption{display:flex;gap:16px;align-items:baseline;justify-content:center;flex-wrap:wrap;text-align:center;font-family:var(--font-body);font-size:17px}
.fzb-lightbox figcaption em{font-style:normal;margin-right:10px;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;font-size:13px;color:color-mix(in srgb,var(--accent-2) 45%,var(--light))}
.fzb-lightbox__count{font-size:14px;color:var(--muted-dark)}
.fzb-lb-btn{position:absolute;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--light) 40%,transparent);border-radius:50%;background:color-mix(in srgb,var(--light) 6%,transparent);color:var(--light);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .25s,border-color .25s;padding:0}
.fzb-lb-btn:hover{background:var(--dark);border-color:var(--dark)}
.fzb-lb-btn svg{width:24px;height:24px}
.fzb-lb-close{top:20px;right:20px}
.fzb-lb-prev{left:20px;top:50%;transform:translateY(-50%)}
.fzb-lb-next{right:20px;top:50%;transform:translateY(-50%)}

/* =========================================================
   Kontakt
   ========================================================= */
.fzb-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:56px;align-items:stretch}
.fzb-kont{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.fzb-kont h2{font-size:clamp(28px,3vw,38px);padding-bottom:22px;border-bottom:1px solid var(--line);width:100%;position:relative}
.fzb-kont h2::after{content:"";position:absolute;left:0;bottom:-2px;width:72px;height:3px;background:var(--accent-3)}
.fzb-kont .fzb-lead{font-size:16px}
.fzb-bigtel{font-family:var(--font-display);font-weight:400;font-size:36px;line-height:1.2;margin-top:4px!important}
.fzb-bigtel a{display:inline-flex;align-items:center;gap:12px;min-height:48px;text-decoration:none;color:var(--dark-ink)}
.fzb-bigtel a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.fzb-krow{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;margin-top:4px!important}
.fzb-krow[class*="fzb-ico-"]::before{width:44px;height:44px;border-radius:50%;background:var(--teal-soft);-webkit-mask:none;mask:none}
.fzb-krow[class*="fzb-ico-"]::after{content:"";position:absolute;left:12px;top:50%;margin-top:-10px;width:20px;height:20px;background:var(--dark-ink);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.fzb-krow a{color:var(--text);text-decoration:none;overflow-wrap:anywhere;display:inline-flex;min-height:32px;align-items:center}
.fzb-krow a:hover{color:var(--dark-ink);text-decoration:underline}
.fzb-krow small{color:var(--muted);font-size:14px}
.fzb-hoursbox{width:100%;margin-top:10px!important;border-top:1px solid var(--line)}
.fzb-hours{width:100%;border-collapse:collapse}
.fzb-hours td{padding:9px 0;text-align:left;font-size:16px;border-bottom:1px solid var(--line)}
.fzb-hours td + td{text-align:right;font-weight:600}
.fzb-hours tr.is-closed td + td{color:var(--muted);font-weight:400}
.fzb-hours tr.is-today td{color:var(--accent-ink)}
.fzb-hours em{font-style:normal}
.fzb-contact__map{position:relative;background:var(--bg-soft);overflow:hidden;min-height:520px;height:100%;border:1px solid var(--line)}
.fzb-map{position:absolute;inset:0}
.fzb-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.fzb-map__route{position:absolute;left:24px;bottom:24px;z-index:2}
.fzb-map__route .wp-block-button__link{background:var(--dark);border-color:var(--dark);color:var(--on-dark)}
.fzb-map__route .fzb-icon{width:18px;height:18px}
.fzb-map--text{display:flex;align-items:center;justify-content:center;padding:32px;text-align:center}

/* =========================================================
   Stopka: szara, cztery kolumny, ciemniejszy pasek
   ========================================================= */
.fzb-footer{background:var(--foot);color:var(--on-foot);font-size:15px;position:relative;content-visibility:auto;contain-intrinsic-size:auto 560px}
.fzb-footer.has-bg{background-image:linear-gradient(color-mix(in srgb,var(--foot-2) calc(var(--footer-dim,.6) * 100%),transparent),color-mix(in srgb,var(--foot-2) calc(var(--footer-dim,.6) * 100%),transparent)),var(--img-footer);background-size:cover;background-position:center}
.fzb-footer a{color:var(--on-foot);text-decoration:none}
.fzb-footer a:hover{text-decoration:underline}
.fzb-footer__grid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1.1fr;gap:40px;padding-block:72px 56px}
.fzb-footer__brand .fzb-logo{color:var(--on-foot)}
.fzb-footer__brand .fzb-logo:hover{text-decoration:none}
.fzb-footer .fzb-logo__mark .fzb-m3{stroke:var(--on-foot)}
.fzb-footer .fzb-logo__mark .fzb-m3f{fill:var(--on-foot)}
.fzb-footer .fzb-logo__slogan{color:var(--on-foot);opacity:.85}
.fzb-footer__brand p{margin-top:16px;max-width:320px;opacity:.92}
.fzb-footer__h{font-family:var(--font-label);font-size:15px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--on-foot);margin-bottom:18px}
.fzb-footer__menu{list-style:none;margin:0;padding:0;display:grid;gap:0}
.fzb-footer__menu a{display:inline-flex;align-items:center;min-height:38px}
.fzb-footer__contact{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fzb-footer__contact li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start}
.fzb-footer__contact .fzb-icon{margin-top:4px;opacity:.85}
.fzb-footer__contact a{overflow-wrap:anywhere}
.fzb-footer__hours{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fzb-footer__hours li{display:flex;justify-content:space-between;gap:16px}
.fzb-footer__hours li b{font-weight:600;white-space:nowrap}
.fzb-footer__nip{margin-top:12px}
.fzb-footer .wp-block-buttons{margin-top:22px}
.fzb-social{display:flex;gap:10px;margin-top:18px}
.fzb-social a{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--on-foot) 10%,transparent);transition:background-color .25s}
.fzb-social a:hover{background:var(--dark);text-decoration:none}
.fzb-footer__bar{background:var(--foot-2);font-size:14px}
.fzb-footer__bar .shell{display:flex;justify-content:space-between;flex-wrap:wrap;gap:0 24px;min-height:64px;align-items:center}
.fzb-footer__links{display:inline-flex;gap:0 24px;flex-wrap:wrap;align-items:center}
.fzb-footer__bar a{display:inline-flex;align-items:center;min-height:44px}
.credit{gap:4px;opacity:.9}
.credit b{font-weight:600}
.fzb-totop{position:fixed;right:24px;bottom:24px;width:50px;height:50px;border-radius:50%;background:var(--dark);color:var(--on-dark);display:flex;align-items:center;justify-content:center;z-index:40;text-decoration:none;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;box-shadow:var(--shadow)}
.fzb-totop.is-visible{opacity:1;visibility:visible}

/* Wpisy i treści zwykłe */
.fzb-content--plain{padding-block:72px}
.fzb-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:stretch}
.fzb-post-card{display:flex;flex-direction:column;gap:10px}
.fzb-post-card__img img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.fzb-post-card__title{font-size:22px}
.fzb-post-card__title a{text-decoration:none}
.fzb-post-card__excerpt{color:var(--muted)}
.fzb-pagination{margin-top:48px}
.fzb-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.fzb-pagination a,.fzb-pagination .current{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px}
.search-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.search-form input[type="search"]{min-height:50px;padding:8px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit}
.search-form input[type="submit"]{min-height:50px;padding:8px 26px;border:0;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-family:var(--font-label);font-weight:500;font-size:15px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em}
.fzb-content > .fzb-prose,.section .fzb-prose{margin-inline:0}
.fzb-eyebrow-date{color:var(--muted-dark)}

/* Klasy WordPressa w treści wpisów */
.alignleft{float:left;margin:.3em 1.6em 1em 0}
.alignright{float:right;margin:.3em 0 1em 1.6em}
.aligncenter{display:block;margin-inline:auto}
.wp-caption{max-width:100%}
.wp-caption-text,.wp-element-caption{font-size:14px;color:var(--muted);margin-top:8px}
.sticky .fzb-post-card__title::before{content:"\2605  ";color:var(--accent-3)}
.bypostauthor{display:block}

/* Animacje wejścia (klasę .reveal dodaje skrypt tylko poniżej pierwszego ekranu) */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}
.reveal.is-in{opacity:1;transform:none}

/* =========================================================
   Szerokości ekranu
   ========================================================= */
@media (max-width:1100px){
	.fzb-nav__list a{padding:0 8px;font-size:14px}
	.fzb-nav__list a::after{left:8px;right:8px}
	.fzb-header__in{gap:16px}
	.fzb-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fzb-grid4,.fzb-tl,.fzb-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fzb-tl,.fzb-steps{row-gap:40px}
	.fzb-tl::before,.fzb-step::before{display:none}
	.fzb-posts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
	.fzb-nav{display:none}
	.fzb-burger{display:inline-flex}
	.fzb-header__in{min-height:72px;gap:10px}
	.fzb-grid3,.wp-block-gallery.fzb-gal{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fzb-split,.fzb-contact{grid-template-columns:minmax(0,1fr);gap:56px}
	.fzb-photo{max-width:620px}
	.fzb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fzb-stat{border-bottom:1px solid var(--line)}
	.fzb-stat:nth-child(2n){border-right:0}
	.fzb-stat:nth-last-child(-n+2){border-bottom:0}
	.fzb-contact__map{min-height:400px;height:auto}
	.fzb-band__in{grid-template-columns:minmax(0,1fr);gap:20px;padding-block:56px 84px}
	.fzb-band__circle{bottom:-52px}
	.fzb-sec--after-band{padding-top:110px}
}
@media (max-width:767px){
	:root{--pad:16px}
	body{font-size:calc(var(--fs) - .5px)}
	.section,.fzb-section-bg .wp-block-cover__inner-container > .shell{padding-block:64px}
	.fzb-sec--first{padding-top:40px}
	.fzb-topbar{display:none}
	.admin-bar .fzb-header{top:0}
	.fzb-head{margin-bottom:32px}
	h2{font-size:28px}
	.fzb-header__in{min-height:68px;gap:8px}
	.fzb-logo{gap:8px}
	.fzb-logo__mark{width:36px;height:36px}
	.fzb-logo__name{font-size:21px}
	.fzb-header .fzb-logo__slogan{font-size:9px;letter-spacing:.16em}
	.fzb-header__cta .fzb-cta-desk{display:none}
	.fzb-cta-tel{display:inline-flex;min-height:44px;padding:8px 14px;font-size:12px;letter-spacing:.06em}
	.fzb-header__cta{gap:6px}
	.fzb-burger{width:44px;height:44px}
	/* Pierwszy ekran: zdjęcie pasem u góry, koralowy panel pod nim, koło na krawędzi panelu. */
	.wp-block-cover.fzb-hero{min-height:0;margin-bottom:0;overflow:hidden}
	.wp-block-cover.fzb-hero .wp-block-cover__image-background{height:300px;bottom:auto}
	.wp-block-cover.fzb-hero > .wp-block-cover__inner-container{position:relative;padding-top:300px}
	.fzb-chips{display:none}
	.fzb-hero__panel{position:relative;left:auto;bottom:auto;width:100%;padding:76px var(--pad) 48px}
	.fzb-hero .fzb-hero__title{font-size:34px}
	.fzb-hero .fzb-lead{font-size:16px}
	.fzb-hero__circle{right:var(--pad);bottom:auto;top:240px}
	.fzb-circle .wp-block-button__link{width:116px;height:116px;font-size:13px}
	.fzb-circle .wp-block-button__link::before{width:22px;height:22px}
	.fzb-circle.is-light .wp-block-button__link{width:92px;height:92px;font-size:13px}
	.fzb-grid2,.fzb-grid3,.fzb-grid4,.fzb-tl,.fzb-steps,.fzb-footer__grid,.fzb-posts,.wp-block-gallery.fzb-gal,.fzb-tlist,.fzb-strip{grid-template-columns:minmax(0,1fr)}
	.fzb-teamgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
	.fzb-col h3,.fzb-adv h3,.fzb-op h3,.fzb-svc h3,.fzb-team .fzb-team__role{min-height:0}
	.fzb-photoband{height:220px}
	.fzb-band h2{font-size:36px}
	.fzb-band__circle{bottom:-46px}
	.fzb-sec--after-band{padding-top:96px}
	.fzb-stat{padding:24px 10px}
	.fzb-stat .fzb-stat__num{font-size:40px}
	.fzb-stats{margin-top:56px!important}
	.fzb-content .fzb-gtile{aspect-ratio:16/9}
	.fzb-head--row{align-items:flex-start;flex-direction:column}
	.fzb-ctaband h2{font-size:28px}
	.fzb-ctaband .fzb-ctaband__sub{font-size:15px}
	.fzb-ctaband .fzb-ctaband__tel{font-size:24px}
	.fzb-photo::after{right:-6px;top:-6px;width:60px;height:60px}
	.fzb-photo--r::after{left:-6px}
	.fzb-badge{bottom:30px;padding:12px 16px}
	.fzb-badge strong{font-size:32px}
	.fzb-pcard{padding:28px 22px}
	.page-hero .shell{min-height:240px;padding-top:56px;padding-bottom:40px}
	.page-hero h1{font-size:34px}
	.fzb-acc summary{font-size:17px}
	.fzb-acc .wp-block-details p{padding-right:0}
	.fzb-bigtel{font-size:28px}
	.fzb-contact__map{min-height:340px}
	.fzb-filter{gap:8px}
	.fzb-filter button{padding:8px 14px;font-size:13px;letter-spacing:.06em}
	.fzb-ggroup:first-child,.fzb-filter + .fzb-ggroup{padding-top:164px}
	.fzb-ggroup > h3{font-size:20px}
	.fzb-mission h2{font-size:26px}
	.fzb-footer__grid{padding-block:56px 40px;gap:32px}
	.fzb-footer__bar .shell{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-block:14px 40px}
	.fzb-footer__links{flex-direction:column;align-items:center}
	.fzb-totop{right:16px;bottom:16px;width:44px;height:44px}
	.fzb-lightbox{padding:70px 12px}
	.fzb-lb-prev,.fzb-lb-next{top:auto;bottom:16px;transform:none}
	.fzb-lb-prev{left:calc(50% - 62px)}
	.fzb-lb-next{right:calc(50% - 62px)}
	.wp-block-button__link{white-space:normal;text-align:center}
}
@media (max-width:380px){
	.fzb-logo__name{font-size:18px}
	.fzb-cta-tel{padding:8px 10px;font-size:11px}
	.fzb-teamgrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:340px){
	.fzb-header .fzb-logo__text{display:none}
}
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation:none!important;transition:none!important}
	html{scroll-behavior:auto}
	.reveal{opacity:1;transform:none}
}

/* =========================================================
   Mapa Google po zgodzie „Funkcjonalne” i tabele w polityce prywatności
   ========================================================= */
.fzb-map iframe:not([src]){display:none} /* przed zgodą funkcjonalną (data-src) */
.fzb-map-blocked{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 24px 96px;text-align:center;color:var(--muted)}
.fzb-map-blocked p{margin:0;max-width:380px}
.fzb-map-blocked a{color:var(--dark-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;display:inline-flex;min-height:44px;align-items:center}
.fzb-map.is-loaded .fzb-map-blocked{display:none}
.fzb-map--text p{margin:0 0 56px;max-width:380px}
/* Tabele w treści (polityka: tabela celów i tabela cookies z wtyczki SEO & Tracking Suite). Na telefonie tabela przewija się w swoim pudełku – strona nie. */
.fzb-prose .wp-block-table{margin-left:0;margin-right:0;overflow-x:auto}
.fzb-prose table{width:100%;border-collapse:collapse;font-size:.92em;line-height:1.5}
.fzb-prose table.scb-polityka-cookies{display:block;overflow-x:auto}
.fzb-prose th,.fzb-prose td{padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:break-word}
.fzb-prose th{font-family:var(--font-display);font-weight:500;background:var(--bg-soft)}
.fzb-prose .wp-block-table table,.fzb-prose table.scb-polityka-cookies{min-width:640px}
.fzb-prose .scb-consent-info dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}
.fzb-prose .scb-consent-info dd{margin:0;overflow-wrap:anywhere}
@media (max-width:600px){
	.fzb-prose table.is-stacked{display:block;min-width:0;border:0}
	.fzb-prose table.is-stacked thead{display:none}
	.fzb-prose table.is-stacked tbody,.fzb-prose table.is-stacked tr,.fzb-prose table.is-stacked td{display:block;width:auto}
	.fzb-prose table.is-stacked tr{margin-bottom:14px;border:1px solid var(--line);overflow:hidden}
	.fzb-prose table.is-stacked td{border:0;border-top:1px solid var(--line);padding:8px 12px}
	.fzb-prose table.is-stacked td:first-child{border-top:0;font-weight:700;background:var(--bg-soft)}
	.fzb-prose table.is-stacked td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;font-size:.78em;letter-spacing:.06em;text-transform:uppercase;color:var(--dark-ink)}
	.fzb-prose .scb-consent-info dl{grid-template-columns:minmax(0,1fr)}
}
