/* ==========================================================================
   TaxAngels — style motywu blokowego
   Kolory, typografia i odstępy pochodzą z theme.json (--wp--preset--*).
   Tu: układ sekcji, komponenty wzorców, bloki motywu (ta/*), nawigacja,
   formularze i stany. Bez zewnętrznych bibliotek.
   ========================================================================== */

:root {
	--ta-navy: var(--wp--preset--color--navy);
	--ta-navy-900: var(--wp--preset--color--navy-900);
	--ta-navy-700: var(--wp--preset--color--navy-700);
	--ta-navy-100: var(--wp--preset--color--navy-100);
	--ta-navy-50: var(--wp--preset--color--navy-50);
	--ta-bordo: var(--wp--preset--color--bordo);
	--ta-bordo-600: var(--wp--preset--color--bordo-600);
	--ta-bordo-50: var(--wp--preset--color--bordo-50);
	--ta-soft: var(--wp--preset--color--bg-soft);
	--ta-text: var(--wp--preset--color--text);
	--ta-strong: var(--wp--preset--color--text-strong);
	--ta-muted: var(--wp--preset--color--text-muted);
	--ta-border: var(--wp--preset--color--border);
	--ta-border-strong: var(--wp--preset--color--border-strong);
	--ta-on-dark: var(--wp--preset--color--on-dark-muted);
	--ta-accent-dark: var(--wp--preset--color--accent-on-dark);
	--ta-success: var(--wp--preset--color--success);
	--ta-error: var(--wp--preset--color--error);
	--ta-focus: var(--wp--custom--focus, #1E4FD6);
	--ta-r-sm: var(--wp--custom--radius--sm, 6px);
	--ta-r: var(--wp--custom--radius--md, 10px);
	--ta-r-lg: var(--wp--custom--radius--lg, 16px);
	--ta-shadow-sm: 0 1px 2px rgba(6, 27, 59, .06), 0 1px 1px rgba(6, 27, 59, .04);
	--ta-shadow: 0 10px 30px -12px rgba(6, 27, 59, .18), 0 2px 6px rgba(6, 27, 59, .05);
	--ta-section: var(--wp--preset--spacing--90, clamp(4rem, 2.5rem + 5vw, 6rem));
	--ta-topbar-h: 40px;
	--ta-header-h: 84px;
	--ta-fs-xs: var(--wp--preset--font-size--x-small);
	--ta-fs-sm: var(--wp--preset--font-size--small);
	--ta-display: var(--wp--preset--font-family--display);
	--ta-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002967' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8.5'/%3E%3C/svg%3E");
	--ta-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--ta-alert-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5 21.5 20h-19L12 3.5zM12 10v4.5M12 17.2v.2'/%3E%3C/svg%3E");
}
@media (max-width: 63.99rem) {
	:root { --ta-header-h: 64px; }
}
@media (max-width: 47.99rem) {
	:root { --ta-topbar-h: 36px; }
}

/* ---------- Podstawy ---------- */
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--ta-header-h) + 1rem); -webkit-text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4 { text-wrap: balance; }
strong, b { color: var(--ta-strong); font-weight: 600; }
a { text-underline-offset: .18em; text-decoration-thickness: 1px; }
:focus-visible { outline: 3px solid var(--ta-focus); outline-offset: 2px; border-radius: 2px; }
.is-style-ta-section-dark :focus-visible,
.ta-site-footer :focus-visible,
.ta-topbar :focus-visible,
.ta-contact-split__aside :focus-visible,
.is-style-ta-cta-band :focus-visible,
.ta-side-cta :focus-visible { outline-color: #fff; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link.screen-reader-text:focus { clip: auto; clip-path: none; width: auto; height: auto; margin: 0; left: 1rem; top: 1rem; z-index: 100000; padding: .75rem 1rem; background: #fff; color: var(--ta-navy-900); font-weight: 600; border-radius: var(--ta-r-sm); box-shadow: var(--ta-shadow); }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* Sekcje nie dostają odstępu blockGap między sobą (kolorowe tła stykają się). */
.wp-site-blocks > *,
.ta-main > *,
.ta-page-content > *,
.ta-article > *,
.ta-main > .ta-article > * { margin-block: 0; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }

/* ---------- Sekcje ---------- */
.is-style-ta-section,
.is-style-ta-section-soft,
.is-style-ta-section-dark { padding-block: var(--ta-section); }
.is-style-ta-section-soft { background: var(--ta-soft); }
.is-style-ta-section-dark { background: var(--ta-navy-900); color: var(--ta-on-dark); }
.is-style-ta-section-dark :where(h1, h2, h3, h4, strong, b) { color: #fff; }
.is-style-ta-section-dark a:where(:not(.wp-element-button)) { color: #fff; }
.is-style-ta-section-dark .is-style-ta-eyebrow { color: var(--ta-accent-dark); }
.ta-section--tight { padding-block: clamp(2.5rem, 2rem + 2vw, 3.5rem); }
.ta-section--flush-top { padding-top: clamp(2rem, 1.5rem + 2vw, 3rem); }
.ta-section-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; max-width: 46rem; margin-bottom: clamp(2rem, 1.5rem + 2vw, 3rem); }
.ta-section-head > * { margin: 0 !important; }
.ta-section-head--split { max-width: none; align-items: end; }
@media (min-width: 64rem) {
	.ta-section-head--split { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 3rem; }
}
.ta-section-head__title { display: grid; gap: 1rem; }
.ta-section-head__title > * { margin: 0 !important; }
.ta-section-head--hero { margin-bottom: 0; }
.is-style-ta-eyebrow { display: inline-flex; align-items: center; gap: .75rem; margin: 0; font-size: var(--ta-fs-xs); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ta-bordo); }
.is-style-ta-eyebrow::after { content: ""; width: 2.5rem; height: 1px; background: currentColor; opacity: .55; }
@media (max-width: 47.99rem) { .is-style-ta-eyebrow::after { display: none; } }
.is-style-ta-lead { font-size: var(--wp--preset--font-size--large); line-height: 1.6; max-width: 40rem; }

/* Kolumny w sekcjach: większy odstęp, wyrównanie do góry tam, gdzie trzeba. */
.wp-block-columns.ta-split,
.wp-block-columns.ta-benefits,
.wp-block-columns.ta-faq-layout,
.wp-block-columns.ta-with-toc,
.wp-block-columns.ta-hero__grid { gap: clamp(2rem, 1rem + 3vw, 4rem); align-items: center; }
.wp-block-columns.ta-split--top,
.wp-block-columns.ta-faq-layout,
.wp-block-columns.ta-with-toc,
.wp-block-columns.ta-benefits { align-items: flex-start; }
.wp-block-columns { margin-bottom: 0; }
@media (max-width: 63.99rem) {
	.wp-block-columns.ta-split,
	.wp-block-columns.ta-benefits,
	.wp-block-columns.ta-faq-layout,
	.wp-block-columns.ta-with-toc,
	.wp-block-columns.ta-hero__grid,
	.wp-block-columns.ta-contact-split,
	.wp-block-columns.ta-footer-top { flex-wrap: wrap !important; }
	.wp-block-columns.ta-split > .wp-block-column,
	.wp-block-columns.ta-benefits > .wp-block-column,
	.wp-block-columns.ta-faq-layout > .wp-block-column,
	.wp-block-columns.ta-with-toc > .wp-block-column,
	.wp-block-columns.ta-hero__grid > .wp-block-column,
	.wp-block-columns.ta-contact-split > .wp-block-column { flex-basis: 100% !important; }
}

/* ---------- Przyciski ---------- */
.wp-element-button,
.wp-block-button__link,
.ta-btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 48px; text-decoration: none; cursor: pointer; transition: background-color .15s ease, border-color .15s ease, color .15s ease; white-space: nowrap; }
.wp-block-buttons { gap: .75rem; }
.wp-block-button.is-style-ta-secondary .wp-block-button__link { background: transparent; border-color: var(--ta-navy); color: var(--ta-navy); }
.wp-block-button.is-style-ta-secondary .wp-block-button__link:hover { background: var(--ta-navy-50); color: var(--ta-navy); }
.wp-block-button.is-style-ta-navy .wp-block-button__link { background: var(--ta-navy); color: #fff; }
.wp-block-button.is-style-ta-navy .wp-block-button__link:hover { background: var(--ta-navy-700); }
.wp-block-button.is-style-ta-light .wp-block-button__link { background: #fff; color: var(--ta-navy-900); }
.wp-block-button.is-style-ta-light .wp-block-button__link:hover { background: var(--ta-navy-50); color: var(--ta-navy-900); }
.wp-block-button.is-style-ta-outline-light .wp-block-button__link { background: transparent; border-color: rgba(255, 255, 255, .6); color: #fff; }
.wp-block-button.is-style-ta-outline-light .wp-block-button__link:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.wp-block-button.has-custom-width .wp-block-button__link { width: 100%; }
@media (max-width: 47.99rem) {
	.ta-hero__content .wp-block-buttons > .wp-block-button { flex: 1 1 100%; }
	.ta-hero__content .wp-block-button__link { width: 100%; }
}
.ta-btn { padding: .7rem 1.35rem; border-radius: var(--ta-r-sm); border: 1.5px solid transparent; font: 600 var(--ta-fs-sm)/1.2 var(--wp--preset--font-family--body); background: var(--ta-bordo); color: #fff; }
.ta-btn:hover { background: var(--ta-bordo-600); color: #fff; }
.ta-btn--primary { background: var(--ta-bordo); color: #fff; }
.ta-btn--navy { background: var(--ta-navy); color: #fff; }
.ta-btn--navy:hover { background: var(--ta-navy-700); }
.ta-btn--secondary { background: transparent; border-color: var(--ta-navy); color: var(--ta-navy); }
.ta-btn--secondary:hover { background: var(--ta-navy-50); color: var(--ta-navy); }
.ta-btn--lg { min-height: 54px; padding-inline: 1.6rem; font-size: 1rem; }
.ta-btn svg, .wp-element-button svg { width: 18px; height: 18px; flex: none; }
.ta-btn.is-busy { opacity: .85; cursor: progress; }
.ta-btn.is-busy::before { content: ""; width: 18px; height: 18px; border-radius: 50%; border: 2.5px solid rgba(255, 255, 255, .35); border-top-color: #fff; animation: ta-spin .8s linear infinite; }
.ta-btn.is-busy svg { display: none; }
@keyframes ta-spin { to { transform: rotate(360deg); } }
.ta-link-arrow a { display: inline-flex; align-items: center; gap: .4rem; font-weight: 600; font-size: var(--ta-fs-sm); text-decoration: none; }
.ta-link-arrow a::after { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: var(--ta-arrow) center/contain no-repeat; mask: var(--ta-arrow) center/contain no-repeat; transition: transform .15s ease; }
.ta-link-arrow a:hover { text-decoration: underline; }
.ta-link-arrow a:hover::after { transform: translateX(3px); }

/* ---------- Ikony (blok ta/icon i ikony w blokach) ---------- */
.ta-svg { width: 24px; height: 24px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.ta-icon { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: var(--ta-r); background: var(--ta-navy-50); color: var(--ta-navy); flex: none; }
.ta-icon--bordo { background: var(--ta-bordo-50); color: var(--ta-bordo); }
.ta-icon--dark { background: rgba(255, 255, 255, .08); color: #fff; }
.ta-icon--plain { background: none; width: auto; height: auto; }
.ta-icon--success { width: 64px; height: 64px; border-radius: 50%; background: #ECF7EF; color: var(--ta-success); }
.ta-icon--success .ta-svg { width: 32px; height: 32px; stroke-width: 2.25; }
.is-style-ta-section-dark .ta-icon:not(.ta-icon--plain) { background: rgba(255, 255, 255, .08); color: #fff; }

/* ---------- Pasek kontaktowy i nagłówek ---------- */
.ta-header-part { position: sticky; top: calc(-1 * var(--ta-topbar-h)); z-index: 50; }
.admin-bar .ta-header-part { top: calc(32px - var(--ta-topbar-h)); }
@media (max-width: 782px) { .admin-bar .ta-header-part { top: calc(46px - var(--ta-topbar-h)); } }
@media (max-width: 600px) { .admin-bar .ta-header-part { top: calc(-1 * var(--ta-topbar-h)); } }
.ta-topbar { background: var(--ta-navy-900); color: var(--ta-on-dark); font-size: var(--ta-fs-xs); }
.ta-topbar > * { margin-block: 0; }
.ta-company--topbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: var(--ta-topbar-h); }
.ta-topbar__contacts { display: flex; gap: 1.5rem; align-items: center; flex-wrap: wrap; }
.ta-topbar a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: .4rem; }
.ta-topbar a:hover { text-decoration: underline; color: #fff; }
.ta-topbar .ta-svg { width: 15px; height: 15px; opacity: .8; }
.ta-topbar .ta-company__label { font-weight: 600; letter-spacing: .06em; color: var(--ta-accent-dark); }
.ta-topbar__mail, .ta-topbar__hours { display: inline-flex; align-items: center; gap: .4rem; color: #fff; }
@media (max-width: 47.99rem) {
	.ta-company--topbar { justify-content: center; }
	.ta-topbar__mail, .ta-topbar__hours { display: none; }
	.ta-topbar__contacts { gap: 1.1rem; }
}
.ta-site-header { background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--ta-border); }
/* backdrop-filter tylko na komputerze: na telefonie utworzyłby blok zawierający dla nakładki menu (position: fixed). */
@media (min-width: 64rem) { @supports (backdrop-filter: blur(6px)) { .ta-site-header { backdrop-filter: saturate(1.2) blur(6px); } } }
@media (max-width: 63.99rem) { .ta-site-header { background: #fff; } }
.ta-site-header__row { min-height: var(--ta-header-h); gap: 1.5rem; }
.ta-site-header__row > * { margin: 0; }
.ta-brand img { height: 46px; width: auto; }
@media (max-width: 63.99rem) { .ta-brand img { height: 34px; } .ta-site-header__row { gap: .5rem; } }
.ta-header-cta .wp-block-button__link { min-height: 44px; }
.ta-header-call { display: none; }
.ta-call { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; min-height: 44px; min-width: 44px; padding-inline: .8rem; border-radius: var(--ta-r-sm); border: 1.5px solid var(--ta-navy); color: var(--ta-navy); font-weight: 600; font-size: var(--ta-fs-sm); text-decoration: none; background: #fff; }
.ta-call .ta-svg { width: 20px; height: 20px; }
@media (max-width: 63.99rem) {
	.ta-header-cta { display: none !important; }
	.ta-header-call { display: block; margin-left: auto !important; order: 2; }
	.ta-header-call .ta-call { border-color: var(--ta-border); padding-inline: .6rem; }
	.ta-nav { order: 3; }
}

/* Nawigacja (blok core/navigation) */
.ta-nav { font-size: var(--ta-fs-sm); }
.ta-nav .wp-block-navigation__container { gap: .25rem; }
.ta-nav .wp-block-navigation-item__content { padding: .6rem .8rem; border-radius: var(--ta-r-sm); color: var(--ta-navy-900); font-weight: 500; text-decoration: none; }
.ta-nav .wp-block-navigation-item__content:hover { color: var(--ta-navy); background: var(--ta-navy-50); }
.ta-nav .current-menu-item > .wp-block-navigation-item__content,
.ta-nav .wp-block-navigation-item__content[aria-current="page"] { color: var(--ta-navy); box-shadow: inset 0 -2px 0 var(--ta-bordo); border-radius: 0; }
.ta-nav .wp-block-navigation__submenu-icon { margin-left: -.5rem; margin-right: .5rem; }
.ta-nav-icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: var(--ta-r); background: var(--ta-navy-50); color: var(--ta-navy); grid-row: span 2; }
.ta-nav-accent .ta-nav-icon { background: var(--ta-bordo-50); color: var(--ta-bordo); }
.ta-nav-icon .ta-svg { width: 22px; height: 22px; }
.wp-block-navigation-item__description { display: block; font-size: var(--ta-fs-sm); line-height: 1.45; color: var(--ta-text); font-weight: 400; }
@media (min-width: 64rem) {
	.ta-nav .ta-nav-mobile-only { display: none !important; }
	.ta-nav .wp-block-navigation__submenu-container { left: 50% !important; transform: translateX(-38%); top: calc(100% + 14px) !important; width: min(46rem, 90vw) !important; min-width: 0 !important; padding: 1rem !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem; background: #fff; border: 1px solid var(--ta-border) !important; border-radius: var(--ta-r-lg); box-shadow: var(--ta-shadow); }
	.ta-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { display: grid !important; grid-template-columns: auto 1fr; column-gap: .9rem; row-gap: .15rem; align-items: start; padding: .85rem !important; border-radius: var(--ta-r); box-shadow: none; }
	.ta-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__label { font-weight: 600; color: var(--ta-navy-900); font-size: 1rem; }
	.ta-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--ta-soft); }
	.ta-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__description { display: block; grid-column: 2; }
}
/* Menu mobilne: nakładka WordPressa włączana poniżej 64rem (domyślnie jest to 600 px). */
@media (max-width: 63.99rem) {
	.ta-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 1px solid var(--ta-border); border-radius: var(--ta-r-sm); background: #fff; color: var(--ta-navy-900); }
	.ta-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.ta-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 1rem var(--wp--custom--gutter) calc(1.5rem + env(safe-area-inset-bottom, 0px)); background: #fff; text-align: left; --navigation-layout-justification-setting: stretch; --navigation-layout-justify: flex-start; --navigation-layout-align: stretch; }
	.ta-nav .is-menu-open .wp-block-navigation-item { align-items: stretch !important; }
	.ta-nav .is-menu-open .wp-block-navigation-item__content { justify-content: flex-start; text-align: left; }
	.ta-nav .is-menu-open .wp-block-navigation__submenu-container { width: 100%; align-items: stretch !important; }
	.ta-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; align-items: stretch !important; gap: 0; }
	.ta-nav .is-menu-open .wp-block-navigation__container { width: 100%; gap: 0 !important; align-items: stretch !important; }
	.ta-nav .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--ta-border); }
	.ta-nav .is-menu-open .wp-block-navigation-item__content { display: flex; min-height: 56px; align-items: center; font-size: 1.125rem; font-weight: 600; padding: .5rem 0 !important; }
	.ta-nav .is-menu-open .wp-block-navigation__submenu-container { padding: 0 0 .75rem !important; gap: 0; }
	.ta-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border: 0; }
	.ta-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { min-height: 48px; font-size: 1rem; font-weight: 500; padding-left: .9rem !important; border-left: 2px solid var(--ta-border); border-radius: 0; gap: .75rem; }
	.ta-nav .is-menu-open .wp-block-navigation-item__description,
	.ta-nav .is-menu-open .ta-nav-icon { display: none; }
	.ta-nav .is-menu-open .ta-nav-cta { border: 0; margin-top: 1.25rem; }
	.ta-nav .is-menu-open .ta-nav-cta .wp-block-navigation-item__content { justify-content: center; background: var(--ta-bordo); color: #fff; border-radius: var(--ta-r-sm); padding: .75rem 1rem !important; }
	.ta-nav .wp-block-navigation__responsive-container-close { width: 44px; height: 44px; display: grid; place-items: center; }
}

/* ---------- Okruszki ---------- */
.ta-breadcrumbs { font-size: var(--ta-fs-xs); color: var(--ta-muted); margin-bottom: clamp(1.5rem, 1rem + 2vw, 2.75rem) !important; }
.ta-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; margin: 0; padding: 0; }
.ta-breadcrumbs li + li::before { content: "›"; margin-right: .35rem; color: var(--ta-border-strong); }
.ta-breadcrumbs a { color: var(--ta-muted); text-decoration: none; }
.ta-breadcrumbs a:hover { text-decoration: underline; color: var(--ta-navy); }

/* ---------- Hero ---------- */
.ta-hero, .ta-page-hero { border-bottom: 1px solid var(--ta-border); }
.ta-hero { padding-block: clamp(2.5rem, 1.5rem + 4vw, 5rem) clamp(3rem, 2rem + 4vw, 5.5rem); }
.ta-page-hero { padding-block: 1.25rem clamp(2.5rem, 1.5rem + 3vw, 4.5rem); }
.ta-page-hero--simple { padding-bottom: clamp(2rem, 1.5rem + 2vw, 3.25rem); }
.ta-hero__content { display: grid; gap: 1.4rem; justify-items: start; }
.ta-hero__content > * { margin: 0 !important; }
.ta-hero-note { list-style: none; padding: 0 !important; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; font-size: var(--ta-fs-sm); color: var(--ta-muted); }
.ta-hero-note li { display: inline-flex; align-items: center; gap: .4rem; }
.ta-hero-note li::before { content: ""; width: 18px; height: 18px; background: var(--ta-success); -webkit-mask: var(--ta-check) center/contain no-repeat; mask: var(--ta-check) center/contain no-repeat; }
.ta-hero__media { position: relative; align-self: center; }
.is-style-ta-photo { margin: 0; }
.is-style-ta-photo img { display: block; width: 100%; border-radius: var(--ta-r-lg); background: var(--ta-navy-100); box-shadow: var(--ta-shadow); }
.ta-fact-card { position: absolute; left: clamp(-2.5rem, -3vw, -1rem); bottom: -1.75rem; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r); box-shadow: var(--ta-shadow); padding: 1.1rem 1.25rem; display: grid; gap: .35rem; min-width: 260px; }
.ta-fact-card > * { margin: 0 !important; }
.ta-fact-card__label { font-size: var(--ta-fs-xs); text-transform: uppercase; letter-spacing: .08em; color: var(--ta-muted); font-weight: 600; }
.ta-fact-card__value { font-family: var(--ta-display); font-size: 2rem; line-height: 1; color: var(--ta-navy-900); font-weight: 600; font-variant-numeric: tabular-nums; }
.ta-fact-card__meta { font-size: var(--ta-fs-sm); }
@media (max-width: 63.99rem) { .ta-fact-card { position: relative; left: auto; bottom: auto; margin: -2.5rem 1rem 0 !important; } }
.ta-facts { width: 100%; gap: 1px !important; background: var(--ta-border); border: 1px solid var(--ta-border); border-radius: var(--ta-r); overflow: hidden; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
@media (min-width: 48rem) { .ta-page-hero .ta-facts { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; } }
.ta-hero__grid .ta-facts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.ta-fact { background: #fff; padding: .9rem 1rem; display: grid; gap: .1rem; align-content: start; }
.ta-fact > * { margin: 0 !important; }
.ta-fact__label { font-size: var(--ta-fs-xs); color: var(--ta-muted); text-transform: uppercase; letter-spacing: .06em; font-weight: 600; }
.ta-fact__value { font-family: var(--ta-display); font-size: 1.2rem; font-weight: 600; color: var(--ta-navy-900); line-height: 1.25; }

/* ---------- Pasek uprawnień ---------- */
.ta-trustbar { background: #fff; border-bottom: 1px solid var(--ta-border); }
.ta-trustbar__list { gap: 0 !important; }
.ta-trust { display: flex; align-items: center; gap: .8rem; padding: 1.15rem 1rem; font-size: var(--ta-fs-sm); line-height: 1.4; color: var(--ta-strong); border-right: 1px solid var(--ta-border); }
.ta-trust:last-child { border-right: 0; }
.ta-trust p { margin: 0; }
.ta-trust .ta-svg { color: var(--ta-navy); width: 26px; height: 26px; }
.ta-trust__sub { color: var(--ta-muted); font-size: var(--ta-fs-xs); }
@media (max-width: 63.99rem) {
	.ta-trust:nth-child(2n) { border-right: 0; }
	.ta-trust:nth-child(-n+2) { border-bottom: 1px solid var(--ta-border); }
}
@media (max-width: 39.99rem) {
	.ta-trust { border-right: 0; border-bottom: 1px solid var(--ta-border); padding: .85rem 0; }
	.ta-trust:last-child { border-bottom: 0; }
}

/* ---------- Karty ---------- */
.is-style-ta-card { background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r); padding: clamp(1.25rem, 1rem + 1vw, 2rem); display: grid; gap: 1rem; align-content: start; }
.is-style-ta-card > * { margin: 0 !important; }
.ta-card--raised { box-shadow: var(--ta-shadow-sm); }
.ta-card--form { box-shadow: var(--ta-shadow-sm); }
.ta-card__title { font-family: var(--wp--preset--font-family--body) !important; font-size: 1.125rem !important; font-weight: 600; }
.ta-service-card { position: relative; height: 100%; grid-template-rows: auto auto auto 1fr auto; transition: border-color .15s ease, box-shadow .15s ease; }
.ta-service-card:hover { border-color: var(--ta-navy-100); box-shadow: var(--ta-shadow); }
.ta-service-card h3 a { color: inherit; text-decoration: none; }
.ta-service-card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ta-service-card h3 a:focus-visible { outline: 0; }
.ta-service-card:has(h3 a:focus-visible) { outline: 3px solid var(--ta-focus); outline-offset: 2px; }
.ta-price { display: flex; align-items: baseline; gap: .5rem; padding-top: 1rem; border-top: 1px solid var(--ta-border); font-size: var(--ta-fs-sm); }
.ta-price strong { font-family: var(--ta-display); font-size: 1.5rem; color: var(--ta-navy-900); font-weight: 600; font-variant-numeric: tabular-nums; }
.ta-advisory { display: grid; gap: 1.5rem; align-items: center; margin-top: 2rem !important; padding: 1.5rem clamp(1.25rem, 1rem + 1vw, 2rem); border-radius: var(--ta-r); background: var(--ta-navy-50); }
.ta-advisory > * { margin: 0 !important; }
.ta-advisory h3 { font-size: 1.125rem; margin: 0 0 .25rem; }
.ta-advisory p { font-size: var(--ta-fs-sm); margin: 0; }
@media (min-width: 64rem) { .ta-advisory { grid-template-columns: auto 1fr auto; } }
.ta-features { gap: 1.25rem !important; }
.ta-feature h3 { font-size: 1.0625rem; }
.ta-feature p { font-size: var(--ta-fs-sm); }
.ta-feature strong { white-space: nowrap; font-variant-numeric: tabular-nums; }
@media (max-width: 47.99rem) {
	.ta-features { gap: .75rem !important; }
	.ta-feature { grid-template-columns: 48px minmax(0, 1fr); column-gap: 1rem; row-gap: .25rem; padding: 1rem 1.1rem; }
	.ta-feature > .ta-icon { grid-row: span 2; }
	.ta-feature > :not(.ta-icon) { grid-column: 2; }
}

/* Listy z ptaszkami */
.is-style-ta-checklist { list-style: none; padding: 0 !important; display: grid; gap: .55rem; align-content: start; }
.is-style-ta-checklist li { position: relative; padding-left: 30px; font-size: var(--ta-fs-sm); line-height: 1.5; }
.is-style-ta-checklist li::before { content: ""; position: absolute; left: 0; top: .1rem; width: 20px; height: 20px; border-radius: 50%; background: var(--ta-navy-50) var(--ta-check) center/14px no-repeat; }
.ta-checklist--lg li { font-size: var(--wp--preset--font-size--medium); }
@media (min-width: 48rem) { .ta-checklist--cols { grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); column-gap: 2rem; } }
.is-style-ta-section-dark .is-style-ta-checklist li::before { background-color: rgba(255, 255, 255, .1); filter: invert(1) brightness(2); }
.ta-next-steps { list-style: none; counter-reset: n; display: grid; gap: .75rem; padding: 0 !important; font-size: var(--ta-fs-sm); }
.ta-next-steps li { counter-increment: n; position: relative; padding-left: 2.6rem; min-height: 28px; }
.ta-next-steps li::before { content: counter(n); position: absolute; left: 0; top: -.1rem; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--ta-navy-50); color: var(--ta-navy); font-weight: 600; font-size: var(--ta-fs-xs); }
.ta-vat-path .ta-next-steps { font-size: var(--wp--preset--font-size--medium); gap: 1rem; }
.ta-link-list { list-style: none; padding: 0 !important; display: grid; gap: .75rem; font-size: var(--ta-fs-sm); }

/* Korzyści */
@media (min-width: 64rem) { .ta-benefits__intro { position: sticky; top: calc(var(--ta-header-h) + 2rem); } }
.ta-benefits__intro > * { margin-block: 0 1.25rem !important; }
.ta-benefit-list { row-gap: 0 !important; }
.ta-benefit { display: grid; grid-template-columns: auto 1fr; gap: 1rem; padding-block: 1.5rem; border-top: 1px solid var(--ta-border); }
.ta-benefit h3 { font-size: 1.125rem; margin: 0 0 .35rem; }
.ta-benefit p { font-size: var(--ta-fs-sm); margin: 0; }

/* Kroki procesu */
.ta-steps { counter-reset: step; gap: 1px !important; background: rgba(255, 255, 255, .12); border-radius: var(--ta-r); overflow: hidden; }
.ta-step { counter-increment: step; background: var(--ta-navy-900); padding: 1.75rem 1.5rem; display: grid; gap: .75rem; align-content: start; }
.ta-step > * { margin: 0 !important; }
.ta-step::before { content: counter(step, decimal-leading-zero); font-family: var(--ta-display); font-size: 2.25rem; line-height: 1; color: var(--ta-accent-dark); font-weight: 500; }
.ta-step h3 { font-size: 1.125rem; color: #fff; }
.ta-step p { font-size: var(--ta-fs-sm); color: var(--ta-on-dark); }
.ta-steps--light { background: var(--ta-border); }
.ta-steps--light .ta-step { background: #fff; }
.ta-steps--light .ta-step::before { color: var(--ta-bordo); }
.ta-steps--light .ta-step h3 { color: var(--ta-navy-900); }
.ta-steps--light .ta-step p { color: var(--ta-text); }

/* Pakiety */
.ta-packages { gap: 1.25rem !important; align-items: stretch; }
.ta-package { position: relative; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); padding: 2rem 1.75rem; display: grid; gap: 1.25rem; align-content: start; grid-template-rows: auto auto auto auto 1fr; }
.ta-package > * { margin: 0 !important; }
.ta-package--featured { border: 2px solid var(--ta-navy); box-shadow: var(--ta-shadow); }
.ta-package__tag { position: absolute; top: -.85rem; left: 1.75rem; background: var(--ta-navy); color: #fff; font-size: var(--ta-fs-xs); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; padding: .3rem .7rem !important; border-radius: 999px; }
.ta-package__name { font-size: 1.25rem !important; }
.ta-package__sub { font-size: var(--ta-fs-sm); color: var(--ta-muted); margin-top: -1rem !important; }
.ta-package__price { display: flex; align-items: baseline; gap: .4rem; flex-wrap: wrap; font-size: var(--ta-fs-sm); color: var(--ta-muted); font-variant-numeric: tabular-nums; }
.ta-package__price strong { font-family: var(--ta-display); font-size: 3rem; line-height: 1; color: var(--ta-navy-900); font-weight: 600; letter-spacing: -.02em; }
.ta-package .is-style-ta-checklist { align-content: start; padding-top: 1.25rem !important; border-top: 1px solid var(--ta-border); }
.ta-offer-strip { gap: 1px !important; background: var(--ta-border); border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); overflow: hidden; margin-top: 1.25rem !important; }
.ta-offer { background: #fff; padding: 1.5rem 1.75rem; display: grid; grid-template-columns: auto 1fr auto; gap: 1.1rem; align-items: center; }
.ta-offer > * { margin: 0 !important; }
.ta-offer h3 { font-size: 1.0625rem; margin: 0 0 .2rem; }
.ta-offer p { font-size: var(--ta-fs-sm); margin: 0; }
.ta-offer__price { font-family: var(--ta-display); font-weight: 600; font-size: 1.5rem !important; color: var(--ta-navy-900); white-space: nowrap; }
@media (max-width: 47.99rem) { .ta-offer { grid-template-columns: auto 1fr; } .ta-offer > :last-child { grid-column: 2; } }

/* Opinie */
.ta-quotes { gap: 1.25rem !important; }
.wp-block-quote.is-style-ta-testimonial { margin: 0; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r); padding: 2rem; display: grid; gap: 1.25rem; grid-template-rows: auto 1fr auto; font-family: inherit; font-size: inherit; }
.wp-block-quote.is-style-ta-testimonial::before { content: "\201D"; font-family: var(--ta-display); font-size: 4.5rem; line-height: .7; height: 2rem; color: var(--ta-bordo); }
.wp-block-quote.is-style-ta-testimonial p { margin: 0; font-family: var(--ta-display); font-size: 1.1875rem; line-height: 1.55; color: var(--ta-navy-900); }
.wp-block-quote.is-style-ta-testimonial cite { display: block; font-style: normal; font-size: var(--ta-fs-sm); padding-top: 1rem; border-top: 1px solid var(--ta-border); }

/* Uprawnienia */
.ta-certs { gap: 0 !important; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); overflow: hidden; }
.ta-cert { background: #fff; box-shadow: 1px 1px 0 var(--ta-border); padding: 1.5rem 1.6rem; display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: start; }
.ta-cert > * { margin: 0 !important; }
.ta-cert__body > * { margin: 0 0 .35rem !important; }
.ta-cert h3 { font-size: 1.0625rem; }
.ta-cert p { font-size: var(--ta-fs-sm); }
.ta-cert__no { display: inline-block; margin-top: .4rem !important; font-size: var(--ta-fs-xs); letter-spacing: .04em; color: var(--ta-navy-900); background: var(--ta-soft); border: 1px solid var(--ta-border); padding: .2rem .5rem; border-radius: 4px; font-variant-numeric: tabular-nums; }

/* Wpisy (karty, listy) */
.ta-posts { list-style: none; padding: 0 !important; }
.ta-post-card { position: relative; display: grid; gap: .9rem; align-content: start; }
.ta-post-card > * { margin: 0 !important; }
.ta-post-card__img, .ta-post-card .wp-block-post-featured-image { aspect-ratio: 16 / 10; border-radius: var(--ta-r); overflow: hidden; background: var(--ta-navy-100); margin: 0; }
.ta-post-card__img img, .ta-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.ta-post-card:hover .wp-block-post-featured-image img, .ta-post-card:hover .ta-post-card__img img { transform: scale(1.02); }
.ta-post-card__title, .ta-post-card .wp-block-post-title { font-family: var(--wp--preset--font-family--body); font-size: 1.1875rem !important; line-height: 1.4; font-weight: 600; }
.ta-post-card__title a { color: var(--ta-navy-900); text-decoration: none; }
.ta-post-card__title a::after { content: ""; position: absolute; inset: 0; }
.ta-post-card__title a:hover { text-decoration: underline; }
.ta-post-card .wp-block-post-featured-image a { position: relative; z-index: 1; }
.ta-post-card__excerpt { font-size: var(--ta-fs-sm); }
/* Powiązane artykuły: karty z miniaturą ok. 300 px (jak obraz w treści wpisu),
   na telefonie miniatura obok tytułu. Na razie tylko szablon wpisu o Szkocji. */
.ta-related { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 19rem)); gap: 2rem 1.5rem; }
.ta-related .ta-post-card__img { aspect-ratio: 16 / 9; }
.ta-related .ta-meta { flex-direction: column; align-items: flex-start; gap: .1rem !important; }
.ta-related .ta-meta > * + *::before { display: none; }
@media (max-width: 39.99rem) {
	.ta-related { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
	.ta-related .ta-post-card:has(> .ta-post-card__img) { grid-template-columns: 7.5rem minmax(0, 1fr); gap: .35rem 1rem; align-items: start; }
	.ta-related .ta-post-card__img { grid-row: 1 / span 2; aspect-ratio: 4 / 3; }
	.ta-related .ta-post-card__title { font-size: 1.0625rem !important; }
}
.ta-post-card__excerpt .wp-block-post-excerpt__excerpt { margin: 0; }
.ta-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .9rem !important; font-size: var(--ta-fs-xs); color: var(--ta-muted); }
.ta-meta > * { margin: 0 !important; }
.ta-meta__cat, .ta-meta__cat a { color: var(--ta-bordo); font-weight: 600; text-transform: uppercase; letter-spacing: .07em; text-decoration: none; font-size: var(--ta-fs-xs); position: relative; z-index: 1; }
.ta-meta__cat .wp-block-post-terms__separator { color: var(--ta-muted); }
.ta-meta__cat a { display: inline-block; padding-block: .35rem; }
.ta-meta__date { font-size: var(--ta-fs-xs); }
.ta-meta > * + *::before { content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: currentColor; margin-right: .9rem; vertical-align: middle; opacity: .6; }
/* Wyróżniony pierwszy wpis na pierwszej stronie bloga */
@media (min-width: 64rem) {
	.ta-first-page .ta-post-list .ta-posts > li:first-child { grid-column: 1 / -1; }
	.ta-first-page .ta-post-list .ta-posts > li:first-child .ta-post-card { grid-template-columns: 1.1fr 1fr; gap: 0 2.5rem; align-items: center; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); overflow: hidden; }
	.ta-first-page .ta-post-list .ta-posts > li:first-child .wp-block-post-featured-image { grid-row: 1 / span 4; border-radius: 0; height: 100%; }
	.ta-first-page .ta-post-list .ta-posts > li:first-child .ta-post-card > :not(.wp-block-post-featured-image) { padding-right: 2.5rem; }
	.ta-first-page .ta-post-list .ta-posts > li:first-child .wp-block-post-title { font-family: var(--ta-display); font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.25rem) !important; }
}
.ta-chips-nav { margin-bottom: 2.5rem !important; }
.ta-chips { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.ta-chip { display: inline-flex; align-items: center; gap: .45rem; min-height: 40px; padding: .4rem .9rem; border: 1px solid var(--ta-border); border-radius: 999px; background: #fff; font-size: var(--ta-fs-sm); color: var(--ta-strong); text-decoration: none; }
.ta-chip:hover { border-color: var(--ta-navy); color: var(--ta-navy); }
.ta-chip[aria-current="page"] { background: var(--ta-navy); border-color: var(--ta-navy); color: #fff; }
.ta-chip small { color: inherit; opacity: .7; font-variant-numeric: tabular-nums; }
.ta-pagination { margin-top: 3rem !important; gap: .4rem; font-size: var(--ta-fs-sm); }
.ta-pagination a, .ta-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding-inline: .75rem; border-radius: var(--ta-r-sm); border: 1px solid var(--ta-border); text-decoration: none; color: var(--ta-strong); font-variant-numeric: tabular-nums; }
.ta-pagination .page-numbers.current { background: var(--ta-navy); color: #fff; border-color: var(--ta-navy); }
.ta-pagination .page-numbers.dots { border: 0; }
.ta-pagination .wp-block-query-pagination-next, .ta-pagination .wp-block-query-pagination-previous { white-space: nowrap; }

/* Wyszukiwarka */
.ta-search-form { max-width: 36rem; margin-top: 1.75rem !important; }
.ta-search-form--center { margin-inline: auto !important; }
.ta-search-form .wp-block-search__inside-wrapper { gap: .5rem; border: 0; padding: 0; }
.ta-search-form .wp-block-search__input { min-height: 52px; padding: .7rem 1rem .7rem 2.75rem; border: 1px solid var(--ta-border-strong); border-radius: var(--ta-r-sm); font-size: 1rem; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6779' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") .9rem center/20px no-repeat; }
.ta-search-form .wp-block-search__button { min-height: 52px; margin: 0; background: var(--ta-navy); color: #fff; border-radius: var(--ta-r-sm); padding-inline: 1.35rem; }
.ta-search-form .wp-block-search__button:hover { background: var(--ta-navy-700); }
.ta-search-filters { margin-bottom: 1.5rem !important; }
.ta-search-filters__status { font-size: var(--wp--preset--font-size--large); margin: 0 0 1rem; }
.ta-result-list { list-style: none; padding: 0 !important; border-top: 1px solid var(--ta-border); }
.ta-result { display: grid; gap: .45rem; padding: 1.5rem 0; border-bottom: 1px solid var(--ta-border); }
.ta-result > * { margin: 0 !important; }
.ta-result__title { font-family: var(--wp--preset--font-family--body); font-size: 1.1875rem !important; font-weight: 600; line-height: 1.4; }
.ta-result__title a { text-decoration: none; color: var(--ta-navy-900); }
.ta-result__title a:hover { text-decoration: underline; }
.ta-result__excerpt, .ta-result__date { font-size: var(--ta-fs-sm); }
.ta-type-pill { display: inline-flex; justify-self: start; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: .15rem .5rem; border-radius: 4px; background: var(--ta-navy-50); color: var(--ta-navy); }
.ta-type-pill--page { background: var(--ta-bordo-50); color: var(--ta-bordo); }
.ta-search { position: relative; display: flex; align-items: center; max-width: 36rem; }
.ta-search .ta-svg { position: absolute; left: .9rem; width: 20px; height: 20px; color: var(--ta-muted); pointer-events: none; }
.ta-search input { flex: 1; min-width: 0; min-height: 52px; padding: .7rem 1rem .7rem 2.75rem; border: 1px solid var(--ta-border-strong); border-radius: var(--ta-r-sm); font: 400 1rem var(--wp--preset--font-family--body); background: #fff; color: var(--ta-strong); }
.ta-faq-filter { margin-top: 1.75rem !important; }
/* Miejsce na filtr jest zarezerwowane przed uruchomieniem skryptu (brak przesunięcia układu). */
.ta-faq-filter[hidden] { display: block !important; visibility: hidden; }
.ta-faq-filter__status { margin: .75rem 0 0; font-size: var(--ta-fs-sm); }
.ta-faq-filter__status:empty { display: none; }

/* FAQ (blok core/details) */
@media (min-width: 64rem) { .ta-faq-layout__intro { position: sticky; top: calc(var(--ta-header-h) + 2rem); } }
.ta-faq-layout__intro > * { margin-block: 0 1.1rem !important; }
.ta-faq { border-top: 1px solid var(--ta-border); }
.ta-faq > * { margin: 0 !important; }
.wp-block-details.is-style-ta-faq { border-bottom: 1px solid var(--ta-border); margin: 0; }
.wp-block-details.is-style-ta-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; padding: 1.3rem 0; font-weight: 600; color: var(--ta-navy-900); font-size: 1.0625rem; line-height: 1.45; }
.wp-block-details.is-style-ta-faq summary::-webkit-details-marker { display: none; }
.wp-block-details.is-style-ta-faq summary::after { content: ""; flex: none; width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--ta-border); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002967' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat; }
.wp-block-details.is-style-ta-faq[open] summary::after { background-color: var(--ta-navy-50); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002967' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E"); }
.wp-block-details.is-style-ta-faq summary:hover { color: var(--ta-navy); }
.wp-block-details.is-style-ta-faq > :not(summary) { margin: 0 3.5rem 1rem 0; }
.wp-block-details.is-style-ta-faq > :last-child { margin-bottom: 1.4rem; }
.ta-converted-content > h2 { margin: 2.5rem 0 1.25rem; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.ta-converted-content > h2:first-child { margin-top: 0; }

/* Kontakt: panel ciemny + formularz */
.ta-contact-split { gap: 0 !important; border-radius: var(--ta-r-lg); overflow: hidden; box-shadow: var(--ta-shadow); border: 1px solid var(--ta-border); background: #fff; }
.ta-contact-split__aside { position: relative; overflow: hidden; background: var(--ta-navy-900); color: var(--ta-on-dark); padding: clamp(1.75rem, 1rem + 3vw, 3rem); display: grid; gap: 1.5rem; align-content: start; }
.ta-contact-split__aside > * { margin: 0 !important; }
.ta-contact-split__aside h2 { color: #fff; }
.ta-contact-split__aside .is-style-ta-eyebrow { color: var(--ta-accent-dark); }
.ta-contact-split__aside::after { content: ""; position: absolute; right: -60px; bottom: -40px; width: 300px; height: 250px; background: url("../img/mark-wing-white.webp") center/contain no-repeat; opacity: .05; pointer-events: none; }
.ta-contact-split__form { padding: clamp(1.75rem, 1rem + 3vw, 3rem); }
.ta-contact-lines { list-style: none; display: grid; gap: 1rem; margin: 0; padding: 0; }
.ta-contact-lines li { display: grid; grid-template-columns: 40px 1fr; gap: .9rem; align-items: center; }
.ta-contact-lines .ta-icon { width: 40px; height: 40px; }
.ta-contact-lines a { color: #fff; font-weight: 600; text-decoration: none; font-variant-numeric: tabular-nums; }
.ta-contact-lines a:hover { text-decoration: underline; }
.ta-contact-lines small { display: block; font-size: var(--ta-fs-xs); letter-spacing: .04em; color: var(--ta-on-dark); }
.ta-contact-lines span { color: #fff; }
.ta-contact-lines--light .ta-icon { background: var(--ta-navy-50); color: var(--ta-navy); }
.ta-contact-lines--light a, .ta-contact-lines--light span { color: var(--ta-navy-900); }
.ta-contact-lines--light small { color: var(--ta-muted); }

/* Pas CTA */
.is-style-ta-cta-band { background: var(--ta-navy); color: var(--ta-on-dark); border-radius: var(--ta-r-lg); padding: clamp(1.75rem, 1rem + 3vw, 3rem); display: grid; gap: 1.5rem; align-items: center; position: relative; overflow: hidden; }
.is-style-ta-cta-band > * { margin: 0 !important; position: relative; z-index: 1; }
.is-style-ta-cta-band h2 { color: #fff; font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem); margin: 0 0 .75rem; }
.is-style-ta-cta-band p { margin: 0; }
.is-style-ta-cta-band::after { content: ""; position: absolute; right: -40px; top: -30px; width: 260px; height: 220px; background: url("../img/mark-wing-white.webp") center/contain no-repeat; opacity: .06; pointer-events: none; }
@media (min-width: 64rem) { .is-style-ta-cta-band { grid-template-columns: 1fr auto; } .ta-split .is-style-ta-cta-band { grid-template-columns: 1fr; } }
.ta-side-cta { background: var(--ta-navy-900); color: var(--ta-on-dark); border-radius: var(--ta-r); padding: 1.5rem; display: grid; gap: 1rem; }
.ta-side-cta > * { margin: 0 !important; }
.ta-side-cta h2 { color: #fff; font-size: 1.375rem; }
.ta-side-cta .ta-call { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .55); }
.ta-sidebar > * + * { margin-top: 1.5rem !important; }
@media (min-width: 64rem) { .ta-sidebar { position: sticky; top: calc(var(--ta-header-h) + 2rem); } }

/* Treść, spis treści */
.ta-prose { font-size: var(--wp--preset--font-size--medium); line-height: 1.75; max-width: 46rem; }
.ta-prose > * + * { margin-top: 1.15rem; }
.ta-prose h2 { font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem); margin-top: 2.75rem; }
.ta-prose h3 { font-size: 1.25rem; margin-top: 2rem; }
.ta-prose :where(ul, ol):not(.is-style-ta-checklist):not(.ta-next-steps) { padding-left: 1.3rem; display: grid; gap: .45rem; }
.ta-prose li::marker { color: var(--ta-bordo); }
.ta-prose a { font-weight: 500; }
.ta-prose .wp-block-image { margin-block: 2rem; }
.ta-prose .wp-block-image img { border-radius: var(--ta-r); }
/* Wpis bez dużego zdjęcia nad treścią: obraz opływany tekstem w treści,
   a w wąskiej kolumnie (telefon) nad tekstem na całą szerokość.
   Na razie tylko szablon wpisu o Szkocji — do akceptacji przed zmianą wszystkich wpisów. */
.ta-article--inline-media .ta-prose { container-type: inline-size; }
.ta-article--inline-media .ta-prose > .wp-block-image:is(.alignleft, .alignright) { width: min(300px, 45%); margin-block: .45rem 1.25rem; }
.ta-article--inline-media .ta-prose > .wp-block-image.alignleft { margin-inline: 0 2rem; }
.ta-article--inline-media .ta-prose > .wp-block-image.alignright { margin-inline: 2rem 0; }
.ta-article--inline-media .ta-prose > .wp-block-image:is(.alignleft, .alignright) img { width: 100%; height: auto; }
.ta-article--inline-media .ta-prose > .wp-block-image:is(.alignleft, .alignright):first-child + * { margin-top: 0; }
.ta-article--inline-media .ta-prose > h2 { clear: both; }
@container (max-width: 36rem) {
	.ta-article--inline-media .ta-prose > .wp-block-image:is(.alignleft, .alignright) { float: none; width: 100%; margin: 0 0 1.5rem; }
}
.ta-video { margin-block: 2rem; }
.ta-video__start, .ta-video__frame { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: var(--ta-r); }
.ta-video__start { display: grid; place-content: center; justify-items: center; gap: .5rem; padding: 1.5rem; background: var(--ta-navy-900); color: #fff; text-align: center; text-decoration: none; }
.ta-video__icon { width: 4rem; height: 4rem; border-radius: 50%; background: var(--wp--preset--color--bordo); position: relative; }
.ta-video__icon::after { content: ""; position: absolute; inset: 0; margin: auto; width: 0; height: 0; border-block: .75rem solid transparent; border-inline-start: 1.25rem solid #fff; transform: translateX(.15rem); }
.ta-video__label { font-weight: 600; font-size: 1.125rem; }
.ta-video__note { max-width: 32rem; font-size: .875rem; color: var(--wp--preset--color--on-dark-muted); }
.ta-video__start:hover .ta-video__icon { background: var(--wp--preset--color--bordo-600); }
.ta-prose .wp-block-table { margin-block: 1.75rem; }
.ta-prose h2[id], .ta-prose h3[id] { scroll-margin-top: calc(var(--ta-header-h) + 1.5rem); }
@media (min-width: 64rem) { .ta-with-toc__nav { position: sticky; top: calc(var(--ta-header-h) + 2rem); } }
.ta-with-toc__nav > * + * { margin-top: 2rem !important; }
.ta-toc { font-size: var(--ta-fs-sm); }
.ta-toc__title, .ta-toc summary { font-size: var(--ta-fs-xs); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ta-muted); margin: 0 0 .75rem; }
.ta-toc summary { cursor: pointer; list-style: none; }
.ta-toc summary::-webkit-details-marker { display: none; }
.ta-toc ol { list-style: none; display: grid; gap: .1rem; border-left: 1px solid var(--ta-border); margin: 0; padding: 0 !important; }
.ta-toc a { display: block; padding: .4rem 0 .4rem 1rem; margin-left: -1px; border-left: 2px solid transparent; color: var(--ta-text); text-decoration: none; line-height: 1.4; }
.ta-toc a:hover { color: var(--ta-navy); }
.ta-toc a[aria-current="true"] { border-left-color: var(--ta-bordo); color: var(--ta-navy-900); font-weight: 600; }
.ta-toc .ta-toc__h3 a { padding-left: 1.75rem; font-size: var(--ta-fs-xs); }
@media (max-width: 63.99rem) {
	.ta-toc .ta-toc__details { border: 1px solid var(--ta-border); border-radius: var(--ta-r); background: var(--ta-soft); }
	.ta-toc .ta-toc__details summary { padding: .9rem 1rem; margin: 0; color: var(--ta-navy-900); }
	.ta-toc .ta-toc__details ol { margin: 0 1rem 1rem; }
	.ta-toc--static { display: none; }
}

/* Terminy, dokumenty, scenariusze */
.ta-deadlines { border-top: 1px solid var(--ta-border); }
.ta-deadline { display: grid; grid-template-columns: minmax(8rem, 13rem) 1fr; gap: 1.5rem; padding: 1.15rem 0; border-bottom: 1px solid var(--ta-border); margin: 0 !important; }
.ta-deadline > * { margin: 0 !important; }
.ta-deadline p { margin: 0; font-size: var(--ta-fs-sm); }
.ta-deadline__when { font-family: var(--ta-display); font-size: 1.25rem !important; color: var(--ta-navy-900); font-weight: 600; line-height: 1.3; }
@media (max-width: 47.99rem) { .ta-deadline { grid-template-columns: 1fr; gap: .35rem; } }
.ta-docs-list { display: grid; gap: .9rem; }
.ta-doc-item { display: grid; grid-template-columns: 40px 1fr; gap: .9rem; align-items: start; margin: 0 !important; }
.ta-doc-item .ta-icon { width: 40px; height: 40px; }
.ta-doc-item p { margin: 0; font-size: var(--ta-fs-sm); }
.ta-scenarios { gap: 1px !important; background: var(--ta-border); border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); overflow: hidden; }
.ta-scenario { background: #fff; padding: 1.5rem 1.6rem; display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: start; }
.ta-scenario h3 { font-size: 1.0625rem; margin: 0; }
.ta-scenario p { font-size: var(--ta-fs-sm); margin: .3rem 0 0; }
.ta-keyfact { display: grid; gap: 1rem; grid-template-columns: auto 1fr; align-items: center; padding: 1.25rem 1.5rem; border-radius: var(--ta-r); background: var(--ta-navy-900); color: var(--ta-on-dark); margin-top: 1.25rem !important; }
.ta-keyfact > * { margin: 0 !important; }
.ta-keyfact strong { color: #fff; }
.ta-other-services-wrap { margin-top: 0 !important; }
.ta-other-services__title { font-family: var(--wp--preset--font-family--body) !important; font-size: 1.0625rem !important; margin-bottom: .9rem !important; }
.ta-other-services { gap: 1px !important; background: var(--ta-border); border: 1px solid var(--ta-border); border-radius: var(--ta-r); overflow: hidden; }
.ta-other-service { position: relative; display: grid; gap: .25rem; padding: 1.1rem 1.25rem; background: #fff; font-size: var(--ta-fs-sm); align-content: start; }
.ta-other-service > * { margin: 0 !important; }
.ta-other-service:hover { background: var(--ta-soft); }
.ta-other-service h3 { font-family: var(--wp--preset--font-family--body); font-size: var(--wp--preset--font-size--medium); font-weight: 600; }
.ta-other-service h3 a { color: var(--ta-navy-900); text-decoration: none; }
.ta-other-service h3 a::after { content: ""; position: absolute; inset: 0; }
.ta-from { color: var(--ta-muted); font-size: var(--ta-fs-xs); }

/* Nawigacja kotwic (cennik) */
.ta-anchor-nav { position: sticky; top: calc(var(--ta-header-h) - 1px); z-index: 20; background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--ta-border); }
.admin-bar .ta-anchor-nav { top: calc(var(--ta-header-h) + 31px); }
.ta-anchor-nav > .ta-anchor-nav__list { list-style: none; display: flex; gap: .25rem; overflow-x: auto; scrollbar-width: none; max-width: var(--wp--style--global--wide-size); margin-block: 0 !important; padding: 0 !important; }
.ta-anchor-nav__list a { display: block; padding: 1rem .9rem; white-space: nowrap; font-size: var(--ta-fs-sm); font-weight: 500; color: var(--ta-strong); text-decoration: none; border-bottom: 2px solid transparent; }
.ta-anchor-nav__list a:hover { border-bottom-color: var(--ta-bordo); color: var(--ta-navy); }

/* Tabele */
.wp-block-table table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; background: #fff; }
.wp-block-table { border: 1px solid var(--ta-border); border-radius: var(--ta-r); overflow-x: auto; }
.wp-block-table th, .wp-block-table td { padding: .95rem 1.25rem; text-align: left; border: 0; border-top: 1px solid var(--ta-border); vertical-align: top; }
.wp-block-table thead { border-bottom: 0; }
.wp-block-table thead th { border-top: 0; background: var(--ta-soft); font-size: var(--ta-fs-xs); text-transform: uppercase; letter-spacing: .06em; color: var(--ta-muted); font-weight: 600; }
.wp-block-table figcaption { padding: .75rem 1.25rem; margin: 0; text-align: left; border-top: 1px solid var(--ta-border); }
.wp-block-table.is-style-ta-compare td, .wp-block-table.is-style-ta-compare thead th:not(:first-child) { text-align: center; }
.wp-block-table.is-style-ta-compare thead th:not(:first-child) { font-size: var(--ta-fs-sm); text-transform: none; letter-spacing: 0; color: var(--ta-navy-900); }
.wp-block-table.is-style-ta-compare td:first-child { text-align: left; color: var(--ta-strong); font-weight: 500; }
.wp-block-table.is-style-ta-compare td:nth-child(3), .wp-block-table.is-style-ta-compare thead th:nth-child(3) { background: var(--ta-navy-50); }
.wp-block-table.is-style-ta-compare td:not(:first-child) { color: var(--ta-success); font-weight: 600; font-size: 1.125rem; }
.wp-block-table.is-style-ta-stack td:first-child { color: var(--ta-strong); font-weight: 500; }
.wp-block-table.is-style-ta-stack td:nth-child(2) { white-space: nowrap; font-weight: 600; color: var(--ta-navy-900); }
@media (max-width: 47.99rem) {
	.wp-block-table.is-style-ta-stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.wp-block-table.is-style-ta-stack tr { display: grid; grid-template-columns: 1fr auto; gap: .2rem 1rem; padding: 1rem 1.1rem; border-top: 1px solid var(--ta-border); }
	.wp-block-table.is-style-ta-stack td { border: 0; padding: 0; }
	.wp-block-table.is-style-ta-stack td:nth-child(n+3) { grid-column: 1 / -1; color: var(--ta-muted); font-size: var(--ta-fs-xs); }
	.wp-block-table.is-style-ta-stack td:empty { display: none; }
	.wp-block-table.is-style-ta-compare { overflow: visible; font-size: var(--ta-fs-xs); }
	.wp-block-table.is-style-ta-compare table { table-layout: fixed; }
	.wp-block-table.is-style-ta-compare th, .wp-block-table.is-style-ta-compare td { padding: .6rem .35rem; overflow-wrap: anywhere; }
	.wp-block-table.is-style-ta-compare th:first-child, .wp-block-table.is-style-ta-compare td:first-child { width: 40%; padding-left: .6rem; }
}
.ta-table-title { margin: 3rem 0 1rem !important; }
.ta-table-stack { width: 100%; border-collapse: collapse; font-size: var(--ta-fs-sm); }
.ta-table-stack th, .ta-table-stack td { padding: .75rem 1rem; text-align: left; border-top: 1px solid var(--ta-border); vertical-align: top; }
@media (max-width: 47.99rem) {
	.ta-table-stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.ta-table-stack tr { display: grid; gap: .25rem; padding: .9rem 0; border-top: 1px solid var(--ta-border); }
	.ta-table-stack td { border: 0; padding: 0; }
	.ta-table-stack td::before { content: attr(data-label) ": "; font-weight: 600; color: var(--ta-strong); }
}

/* Alerty (style grupy i komunikaty bloków) */
.is-style-ta-alert-info, .is-style-ta-alert-warn,
.ta-alert { display: grid; grid-template-columns: auto 1fr; gap: .8rem; align-items: start; padding: 1rem 1.15rem; border-radius: var(--ta-r-sm); font-size: var(--ta-fs-sm); line-height: 1.5; border: 1px solid; }
.is-style-ta-alert-info > *, .is-style-ta-alert-warn > * { margin: 0 !important; }
.is-style-ta-alert-info, .ta-alert--info { background: var(--ta-navy-50); border-color: var(--ta-navy-100); color: var(--ta-navy-900); }
.is-style-ta-alert-warn, .ta-alert--warn { background: #FFF7E8; border-color: #F3D9A4; color: #5C3B00; }
.ta-alert--error { background: #FDF0EE; border-color: #F1C4BE; color: #7A1A12; }
.ta-alert--success { background: #ECF7EF; border-color: #BFE3C9; color: #0F4524; }
.ta-alert strong, .is-style-ta-alert-info strong, .is-style-ta-alert-warn strong { color: inherit; }
.ta-alert .ta-svg, .is-style-ta-alert-info .ta-svg, .is-style-ta-alert-warn .ta-svg { width: 22px; height: 22px; }
.ta-alert ul { margin: .35rem 0 0; padding-left: 1.1rem; }
.ta-alert a { color: inherit; }
.ta-alert:not(:has(> .ta-svg, > .ta-icon)) { grid-template-columns: 1fr; }
.ta-article-cta { margin-top: 2.5rem !important; padding: 1.5rem; display: grid; grid-template-columns: 1fr; gap: .75rem; }
.ta-article-cta h3 { margin: 0; font-size: 1.25rem; }

/* Notatki redakcyjne — widoczne tylko w edytorze (na stronie usuwane w PHP). */
.ta-editor-note { display: none; }

/* ---------- Bloki motywu ---------- */
.ta-post-meta { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; align-items: center; font-size: var(--ta-fs-sm); color: var(--ta-muted); }
.ta-post-meta__item { display: grid; line-height: 1.35; }
.ta-post-meta__item b { color: var(--ta-strong); font-weight: 600; }
.ta-avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--ta-navy-50) url("../img/mark-wing.webp") center/26px no-repeat; border: 1px solid var(--ta-border); flex: none; }
.ta-article-head__inner { display: grid; gap: 1.25rem; max-width: 52rem; }
.ta-article-head__inner > * { margin: 0 !important; }
.ta-article-cats { display: flex; gap: .9rem; }
.ta-article-figure-wrap { margin-top: 2.5rem !important; }
.ta-article-figure { border-radius: var(--ta-r-lg); overflow: hidden; margin: 0; }
.ta-article-figure img { width: 100%; height: 100%; object-fit: cover; }
.ta-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2.5rem !important; font-size: var(--ta-fs-xs); }
.ta-tags a { padding: .3rem .7rem; border-radius: 4px; background: var(--ta-soft); border: 1px solid var(--ta-border); text-decoration: none; color: var(--ta-strong); }
.ta-tags .wp-block-post-terms__separator { display: none; }
.ta-share { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; font-size: var(--ta-fs-sm); }
.ta-share a, .ta-share button { display: inline-flex; align-items: center; gap: .4rem; min-height: 40px; padding: .4rem .8rem; border: 1px solid var(--ta-border); border-radius: var(--ta-r-sm); background: #fff; color: var(--ta-strong); text-decoration: none; font: 500 var(--ta-fs-sm) var(--wp--preset--font-family--body); cursor: pointer; }
.ta-share .ta-svg { width: 18px; height: 18px; }
.ta-company .ta-svg { width: 18px; height: 18px; }
.ta-office { font-style: normal; display: grid; gap: .3rem; line-height: 1.55; }
.ta-office strong { color: inherit; }
.ta-registry { display: grid; grid-template-columns: auto 1fr; gap: .45rem 1.25rem; margin: 0; font-size: var(--ta-fs-sm); }
.ta-registry dt { color: var(--ta-muted); }
.ta-registry dd { margin: 0; color: var(--ta-strong); font-weight: 500; font-variant-numeric: tabular-nums; }
.ta-cookie-list { overflow-x: auto; }
.ta-not-found__code { font-family: var(--ta-display); font-size: clamp(5rem, 3rem + 8vw, 9rem) !important; line-height: .9; color: var(--ta-navy); font-weight: 600; letter-spacing: -.03em; margin-bottom: 0 !important; }
.ta-quick-links { margin-top: 2rem !important; gap: .75rem !important; }
.ta-quick-link { position: relative; gap: .9rem !important; align-items: center !important; padding: 1rem 1.15rem; border: 1px solid var(--ta-border); border-radius: var(--ta-r); background: #fff; }
.ta-quick-link:hover { border-color: var(--ta-navy); }
.ta-quick-link p { margin: 0; font-weight: 600; }
.ta-quick-link a { color: var(--ta-strong); text-decoration: none; }
.ta-quick-link a::after { content: ""; position: absolute; inset: 0; }
.ta-quick-link .ta-icon { width: 40px; height: 40px; }

/* ---------- Formularz ---------- */
.ta-form-block { position: relative; }
.ta-form { display: grid; gap: 1.15rem; }
.ta-form__title { margin: 0; }
.ta-form fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.ta-form__row { display: grid; gap: 1.15rem; }
@media (min-width: 48rem) { .ta-form__row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ta-field { display: grid; gap: .4rem; align-content: start; }
.ta-field > label, .ta-form legend { font-size: var(--ta-fs-sm); font-weight: 600; color: var(--ta-strong); padding: 0; }
.ta-req { color: var(--ta-bordo); }
.ta-field input:not([type="checkbox"]):not([type="radio"]),
.ta-field select,
.ta-field textarea { width: 100%; min-height: 48px; padding: .7rem .9rem; border: 1px solid var(--ta-border-strong); border-radius: var(--ta-r-sm); background: #fff; color: var(--ta-strong); font: 400 1rem/1.4 var(--wp--preset--font-family--body); }
.ta-field textarea { min-height: 128px; resize: vertical; }
.ta-field select { appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002967' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .8rem center/18px no-repeat; padding-right: 2.5rem; }
.ta-field input:focus, .ta-field select:focus, .ta-field textarea:focus { outline: 3px solid rgba(30, 79, 214, .35); outline-offset: 0; border-color: var(--ta-focus); }
.ta-field__hint { font-size: var(--ta-fs-xs); color: var(--ta-muted); font-weight: 400; }
.ta-field--error input:not([type="checkbox"]), .ta-field--error textarea, .ta-field--error select { border-color: var(--ta-error); box-shadow: 0 0 0 1px var(--ta-error); }
.ta-field__error { display: flex; gap: .4rem; align-items: center; margin: 0; font-size: var(--ta-fs-xs); font-weight: 600; color: var(--ta-error); }
.ta-field__error::before { content: ""; flex: none; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--ta-alert-icon) center/contain no-repeat; mask: var(--ta-alert-icon) center/contain no-repeat; }
.ta-choice { display: grid; grid-template-columns: 22px 1fr; gap: .7rem; align-items: start; font-size: var(--ta-fs-sm); line-height: 1.5; font-weight: 400; color: var(--ta-text); cursor: pointer; }
.ta-choice input { width: 20px; height: 20px; margin: .1rem 0 0; accent-color: var(--ta-navy); }
.ta-field--error .ta-choice input { outline: 2px solid var(--ta-error); outline-offset: 1px; }
.ta-chips-radio { display: flex; flex-wrap: wrap; gap: .5rem; }
.ta-chips-radio legend { margin-bottom: .5rem; }
.ta-chips-radio label { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .55rem .95rem; border: 1px solid var(--ta-border-strong); border-radius: 999px; font-size: var(--ta-fs-sm); font-weight: 500; color: var(--ta-strong); cursor: pointer; }
.ta-chips-radio input { accent-color: var(--ta-navy); margin: 0; }
.ta-chips-radio label:has(input:checked) { border-color: var(--ta-navy); background: var(--ta-navy-50); color: var(--ta-navy); box-shadow: 0 0 0 1px var(--ta-navy); }
.ta-chips-radio label:has(input:focus-visible) { outline: 3px solid var(--ta-focus); outline-offset: 2px; }
.ta-form__foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; padding-top: .25rem; }
.ta-form__foot p { font-size: var(--ta-fs-xs); color: var(--ta-muted); max-width: 26rem; margin: 0; }
.ta-form__summary { margin: 0; }
.ta-form__summary:focus { outline: 3px solid var(--ta-focus); outline-offset: 2px; }
.ta-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ta-success { text-align: center; display: grid; justify-items: center; gap: 1rem; padding: 2rem 1rem; }
.ta-success > * { margin: 0; }
.ta-success:focus { outline: none; }
.ta-success__title { font-size: 1.75rem; }
.ta-success .ta-next-steps { text-align: left; width: 100%; max-width: 26rem; }
.ta-success__urgent { font-size: var(--ta-fs-sm); }

/* ---------- Stopka ---------- */
.ta-site-footer { background: var(--ta-navy-900); color: var(--ta-on-dark); font-size: var(--ta-fs-sm); }
.ta-site-footer a { color: #fff; text-decoration: none; }
.ta-site-footer a:hover { text-decoration: underline; }
.ta-footer-top { gap: 2rem !important; padding-block: clamp(3rem, 2rem + 3vw, 4.5rem); margin-block: 0 !important; }
@media (max-width: 63.99rem) {
	.ta-footer-top > .wp-block-column { flex-basis: calc(50% - 1rem) !important; }
	.ta-footer-top > .ta-footer-brand { flex-basis: 100% !important; }
}
@media (max-width: 47.99rem) { .ta-footer-top > .wp-block-column { flex-basis: 100% !important; } }
.ta-footer-brand > * + * { margin-top: 1.1rem !important; }
.ta-footer-logo { margin: 0; }
.ta-footer-logo img { height: 44px; width: auto !important; }
.ta-footer-title { font-family: var(--wp--preset--font-family--body) !important; font-size: var(--ta-fs-xs) !important; text-transform: uppercase; letter-spacing: .1em; color: var(--ta-accent-dark) !important; margin: 0 0 1rem !important; font-weight: 600; }
.ta-footer-links { list-style: none; display: grid; gap: .6rem; padding: 0 !important; margin: 0; }
.ta-footer-col .ta-office strong { color: #fff; }
.ta-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .12); padding-block: 1.5rem; gap: .75rem 2rem !important; font-size: var(--ta-fs-xs); margin-block: 0 !important; }
.ta-footer-registry { display: flex; flex-wrap: wrap; gap: .4rem 1.25rem; font-variant-numeric: tabular-nums; }
.ta-footer-legal { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding: 0 !important; margin: 0; }
.ta-mobile-cta { display: none !important; }
@media (max-width: 63.99rem) {
	.ta-mobile-cta { display: flex !important; gap: .5rem !important; position: sticky; bottom: 0; z-index: 30; padding: .6rem var(--wp--custom--gutter) calc(.6rem + env(safe-area-inset-bottom, 0px)); background: rgba(255, 255, 255, .97); border-top: 1px solid var(--ta-border); box-shadow: 0 -6px 18px -10px rgba(6, 27, 59, .25); margin: 0 !important; }
	.ta-mobile-cta > * { margin: 0 !important; }
	.ta-mobile-cta .wp-block-buttons { flex: 1; min-width: 0; }
	.ta-mobile-cta .wp-block-button, .ta-mobile-cta .wp-block-button__link { width: 100%; min-height: 46px; }
	.ta-mobile-cta .wp-block-button__link { white-space: normal; line-height: 1.2; padding-inline: .75rem; }
	.ta-mobile-cta .ta-call { min-height: 46px; }
}

/* ---------- Baner zgód ---------- */
.ta-consent { position: fixed; left: 50%; bottom: 1rem; transform: translateX(-50%); z-index: 1000; width: min(46rem, calc(100% - 2rem)); max-height: calc(100vh - 2rem); overflow-y: auto; background: #fff; border: 1px solid var(--ta-border); border-radius: var(--ta-r-lg); box-shadow: 0 24px 60px -20px rgba(6, 27, 59, .35); padding: 1.5rem; display: grid; gap: 1rem; font-size: var(--ta-fs-sm); }
.ta-consent[hidden] { display: none; }
.ta-consent__title { font-family: var(--wp--preset--font-family--body); font-size: 1.0625rem; font-weight: 600; margin: 0; }
.ta-consent p { margin: 0; }
.ta-consent fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: .6rem; }
.ta-consent__actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.ta-consent__actions .ta-btn { flex: 1 1 10rem; }

/* ---------- Edytor: podgląd bloków motywu ---------- */
.ta-editor-placeholder { display: grid; gap: .25rem; padding: 1rem; border: 1px dashed var(--ta-border-strong); border-radius: var(--ta-r-sm); background: var(--ta-soft); font-size: 13px; color: var(--ta-muted); }

/* ---------- Druk ---------- */
@media print {
	.ta-header-part, .ta-site-footer, .ta-mobile-cta, .ta-consent, .ta-share, .ta-with-toc__nav, .ta-contact-split, .is-style-ta-cta-band { display: none !important; }
	.is-style-ta-section, .is-style-ta-section-soft, .is-style-ta-section-dark { padding-block: 1rem; background: none; color: #000; }
	a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .8em; }
}
