/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Description: Child theme of Twenty Twenty-Five with local Rethink Sans, project color tokens, button styles, and responsive heading scale via theme.json v3.
Author: Child Theme
Template: twentytwentyfive
Text Domain: twentytwentyfive-child
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.2
Version: 1.1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: full-site-editing, block-themes, two-columns, custom-colors, custom-menu, custom-logo, editor-style, featured-images, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready
*/

/*
 * Desktop root padding comes from theme.json:
 *   max(64px, calc((100vw - 1440px) / 2 + 64px))
 * That formula never goes below 64px — mobile gutters (20px) are forced in
 * functions.php → wp_head (after global-styles).
 *
 * IMPORTANT: Do NOT put nested-accordion hide rules (display:none on
 * .wp-block-accordion-panel) in this file — it is loaded in the block editor
 * via add_editor_style() and would make FAQ content uneditable.
 *
 * Headings mobile fallback (theme.json @mobile may be unsupported).
 */
@media (max-width: 781px) {
	h1,
	.wp-block-post-title,
	.wp-block-heading.is-style-default:where(h1),
	:where(.wp-elements-h1) {
		font-size: 2.5rem;
		line-height: 1.2;
	}

	h2 {
		font-size: 2.25rem;
		line-height: 1.2;
	}

	h3 {
		font-size: 2rem;
		line-height: 1.2;
	}

	h4 {
		font-size: 1.5rem;
		line-height: 1.4;
	}

	h5 {
		font-size: 1.25rem;
		line-height: 1.4;
	}

	h6 {
		font-size: 1.125rem;
		line-height: 1.4;
	}
}

.nbt-fixed-reserve-spacer {
	background: #FFFCF7!important;
	height: 15px!important;
    	min-height: 15px!important;
    	max-height: 15px!important;
}

/**
 * Fixed header po scrollu ≥ 100vh: tło + blur na ::before.
 * Nie dawać backdrop-filter na samym .is-position-fixed — tworzy containing block
 * i nakładka menu mobile (position:fixed) kończy się na wysokości headera zamiast 100vh.
 */
header.wp-block-template-part .wp-block-group.is-position-fixed,
.wp-block-template-part > .wp-block-group.is-position-fixed {
	transition: background-color 0.25s ease;
}

header.wp-block-template-part .wp-block-group.is-position-fixed.is-scrolled-past-vh,
.wp-block-template-part > .wp-block-group.is-position-fixed.is-scrolled-past-vh {
	background-color: #151515;
}

header.wp-block-template-part .wp-block-group.is-position-fixed.is-scrolled-past-vh::before,
.wp-block-template-part > .wp-block-group.is-position-fixed.is-scrolled-past-vh::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

header.wp-block-template-part .wp-block-group.is-position-fixed > *,
.wp-block-template-part > .wp-block-group.is-position-fixed > * {
	position: relative;
	z-index: 1;
}

/**
 * Mobile nav overlay: pełny viewport (100dvh; fallback 100vh).
 */
.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important;
	inset: 0 !important;
	width: 100% !important;
	width: 100vw !important;
	height: 100% !important;
	height: 100vh !important;
	height: 100dvh !important;
	min-height: 100vh !important;
	min-height: 100dvh !important;
	max-height: none !important;
	z-index: 100000 !important;
}

.wp-block-navigation__responsive-container.disable-default-overlay.is-menu-open .wp-block-navigation__responsive-close,
.wp-block-navigation__responsive-container.disable-default-overlay.is-menu-open .wp-block-navigation__responsive-dialog,
.wp-block-navigation__responsive-container.disable-default-overlay.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.disable-default-overlay.is-menu-open .wp-block-navigation__overlay-container {
	min-height: 100% !important;
	height: 100% !important;
}

.wp-block-navigation__responsive-container.disable-default-overlay.is-menu-open .wp-block-navigation__overlay-container > .wp-block-group {
	min-height: 100% !important;
	min-height: 100vh !important;
	min-height: 100dvh !important;
	height: 100% !important;
	height: 100vh !important;
	height: 100dvh !important;
	box-sizing: border-box !important;
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0rem!important;
    margin-block-end: 0;
}

.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content .wp-block-navigation-item__label {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}