/**
Theme Name: Pulsar Music Records
Author: Pulsar Music Records
Description: Motyw potomny Astry dla Pulsar Music Records: identyfikacja wizualna, lokalne fonty, style bloków Gutenberga, Schema i podstawowe SEO.
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pulsar-music-records
Template: astra
*/

/* ==========================================================================
   Fonty (hostowane lokalnie, latin + latin-ext dla polskich znaków)
   ========================================================================== */
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap; src: url('assets/fonts/poppins-500-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap; src: url('assets/fonts/poppins-500-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 600; font-display: swap; src: url('assets/fonts/poppins-600-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 600; font-display: swap; src: url('assets/fonts/poppins-600-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url('assets/fonts/poppins-700-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url('assets/fonts/poppins-700-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('assets/fonts/dm-sans-400-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('assets/fonts/dm-sans-400-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('assets/fonts/dm-sans-500-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('assets/fonts/dm-sans-500-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('assets/fonts/dm-sans-700-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('assets/fonts/dm-sans-700-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

/* ==========================================================================
   Tokeny
   ========================================================================== */
:root {
	--pmr-bg: #140F15;
	--pmr-surface: #1C1C1E;
	--pmr-surface-2: #252327;
	--pmr-line: #252525;
	--pmr-line-strong: #3A353C;
	--pmr-ink: #F4F1EC;
	--pmr-text: #D9D4DA;
	--pmr-muted: #A7A1A8;
	--pmr-accent: #FEB355;
	--pmr-accent-soft: rgba(254, 179, 85, 0.14);
	--pmr-accent-line: rgba(254, 179, 85, 0.38);
	--pmr-font-head: 'Poppins', sans-serif;
	--pmr-font-body: 'DM Sans', sans-serif;
	--pmr-container: 1280px;
	--pmr-gutter: clamp(20px, 4vw, 40px);
	--pmr-section: clamp(72px, 9vw, 128px);
	--pmr-gap: clamp(16px, 2vw, 24px);
	--pmr-r-sm: 8px;
	--pmr-r-md: 16px;
}

/* ==========================================================================
   Baza
   ========================================================================== */
body { background-color: var(--pmr-bg); color: var(--pmr-text); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
::selection { background: var(--pmr-accent); color: var(--pmr-bg); }
a { color: var(--pmr-accent); }
a:focus-visible, button:focus-visible, summary:focus-visible, .wp-block-button__link:focus-visible { outline: 2px solid var(--pmr-accent); outline-offset: 3px; border-radius: 4px; }
h1, h2, h3, h4, h5, h6, .entry-content :where(h1, h2, h3, h4, h5, h6) { color: var(--pmr-ink); text-wrap: balance; }
h1, h2, .entry-content :where(h1, h2) { color: var(--pmr-accent); }
.entry-content p, .entry-content li { text-wrap: pretty; }
strong { color: var(--pmr-ink); font-weight: 600; }
body h1, body .entry-content h1 { line-height: 1.1; }
body h2, body .entry-content h2 { line-height: 1.18; }
body h3, body .entry-content h3 { line-height: 1.3; }

/* Strony zbudowane z sekcji: brak domyślnych marginesów Astry */
.pmr-sections #primary,
.pmr-sections .site-main { margin: 0 !important; padding: 0 !important; }
.pmr-sections .entry-content > * { margin-top: 0; margin-bottom: 0; }
.pmr-sections .ast-article-single,
.pmr-sections .ast-article-post { padding: 0 !important; margin: 0 !important; background: transparent !important; }

/* ==========================================================================
   Sekcje i kontener
   ========================================================================== */
/* Astra (bez theme.json) owija grupy w __inner-container: przezroczysty dla układu */
[class*="pmr-"] > .wp-block-group__inner-container { display: contents; }

.pmr-section { padding: var(--pmr-section) var(--pmr-gutter); margin: 0 !important; }
.pmr-section > *,
.pmr-section > .wp-block-group__inner-container > * { max-width: var(--pmr-container); margin-left: auto !important; margin-right: auto !important; }
.pmr-section.is-tight-top { padding-top: 0; }

.pmr-head { margin-bottom: clamp(36px, 5vw, 56px) !important; }
.pmr-head > *,
.pmr-head > .wp-block-group__inner-container > * { max-width: 720px; }
.pmr-head h2 { margin-bottom: 16px; }
.pmr-head p { color: var(--pmr-text); font-size: 1.0625rem; margin: 0; }
.pmr-head.is-center { text-align: center; }
.pmr-head.is-center > *,
.pmr-head.is-center > .wp-block-group__inner-container > * { margin-left: auto; margin-right: auto; }

.pmr-eyebrow { font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.8125rem; line-height: 1.4; letter-spacing: 0.14em; text-transform: uppercase; color: var(--pmr-accent); margin: 0 0 20px !important; }
.pmr-lead { font-size: clamp(1.0625rem, 0.6vw + 0.9rem, 1.25rem); line-height: 1.6; color: var(--pmr-text); max-width: 34em; }

/* ==========================================================================
   Przyciski
   ========================================================================== */
.wp-block-buttons { gap: 12px; }
.entry-content .wp-block-button__link { border-radius: var(--pmr-r-sm); font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.9375rem; line-height: 1.2; padding: 15px 28px; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link { background-color: var(--pmr-accent); color: var(--pmr-bg); border: 1px solid var(--pmr-accent); }
.entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background-color: #FFC680; border-color: #FFC680; color: var(--pmr-bg); }
.entry-content .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--pmr-ink); border: 1px solid var(--pmr-line-strong); }
.entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover { border-color: var(--pmr-accent); color: var(--pmr-accent); }
.ast-header-button-1 .ast-custom-button { color: var(--pmr-bg); }

.pmr-link { margin: 0; padding-top: 20px; margin-top: auto !important; }
.pmr-link a { font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.9375rem; color: var(--pmr-accent); text-decoration: none; }
.pmr-link a::after { content: " \2192"; display: inline-block; transition: transform .15s ease; }
.pmr-link a:hover::after { transform: translateX(3px); }

/* ==========================================================================
   Hero
   ========================================================================== */
.pmr-hero { padding-top: clamp(40px, 6vw, 88px); padding-bottom: clamp(56px, 7vw, 104px); }
.pmr-hero .wp-block-columns { gap: clamp(32px, 5vw, 72px); align-items: center; margin-top: 0; margin-bottom: 0; }
.pmr-hero h1 { margin-bottom: 24px; letter-spacing: -0.02em; }
.pmr-hero .pmr-lead { margin-bottom: 36px; }
.pmr-visual { margin: 0 !important; }
.pmr-visual img { display: block; width: 100%; height: auto; border-radius: var(--pmr-r-md); border: 1px solid var(--pmr-line); }
.pmr-hero .pmr-visual img { aspect-ratio: 1 / 1; object-fit: cover; object-position: center 30%; }

/* ==========================================================================
   Karty i bento
   ========================================================================== */
.pmr-bento { display: flex; flex-direction: column; gap: var(--pmr-gap); }
.pmr-bento > .wp-block-columns,
.pmr-bento > .wp-block-group__inner-container > .wp-block-columns { gap: var(--pmr-gap); margin: 0 !important; }
.wp-block-column > .pmr-card { height: 100%; }
.pmr-card { background: var(--pmr-surface); border: 1px solid var(--pmr-line); border-radius: var(--pmr-r-md); padding: clamp(26px, 3vw, 40px); display: flex; flex-direction: column; margin: 0 !important; }
.pmr-card > * { margin-top: 0; }
.pmr-card h3 { margin-bottom: 12px; font-size: 1.375rem; }
.pmr-card p { color: var(--pmr-text); margin-bottom: 0; }
.pmr-card.is-feature { background: var(--pmr-surface); }
.pmr-card.is-feature h3 { font-size: clamp(1.5rem, 1.2vw + 1rem, 2rem); }
.pmr-card.is-feature p { font-size: 1.0625rem; max-width: 40em; }
.pmr-card.is-tint { background: var(--pmr-surface); }

/* ==========================================================================
   Cennik
   ========================================================================== */
.pmr-pricing { gap: var(--pmr-gap) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-price-card.is-featured { border-color: var(--pmr-accent); }
.pmr-card h3.pmr-label { font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.8125rem; line-height: 1.6; letter-spacing: 0.16em; text-transform: uppercase; color: var(--pmr-accent); margin: 0 0 18px; min-height: 3.2em; }
.pmr-card .pmr-price { font-family: var(--pmr-font-head); font-weight: 600; font-size: clamp(2rem, 2vw + 1rem, 2.5rem); line-height: 1.1; color: var(--pmr-ink); letter-spacing: -0.01em; margin: 0 0 18px; }
.pmr-price em { font-family: var(--pmr-font-body); font-style: normal; font-weight: 400; font-size: 0.9375rem; color: var(--pmr-muted); letter-spacing: 0; }
.pmr-card .pmr-desc { color: var(--pmr-muted); font-size: 0.96875rem; line-height: 1.7; }
.pmr-card .wp-block-separator,
.pmr-sep { border: 0 !important; border-top: 1px solid var(--pmr-line) !important; margin: 24px 0 !important; opacity: 1; width: 100%; max-width: none; background: none !important; height: 0; }
.pmr-small { font-size: 0.8125rem; color: var(--pmr-muted) !important; margin: 24px 0 10px !important; }

.entry-content ul.pmr-checks, .entry-content ul.pmr-files, .pmr-footer ul { list-style: none; padding: 0; margin-left: 0; margin-right: 0; }
.pmr-checks li, .pmr-files li { position: relative; padding-left: 28px; margin: 0 0 10px; font-size: 0.96875rem; line-height: 1.5; }
.pmr-checks li { color: var(--pmr-ink); }
.pmr-checks li::before { content: ""; position: absolute; left: 2px; top: 0.38em; width: 12px; height: 7px; border-left: 2px solid var(--pmr-accent); border-bottom: 2px solid var(--pmr-accent); transform: rotate(-45deg); }
.pmr-files li { color: var(--pmr-muted); }
.pmr-files li::before { content: ""; position: absolute; left: 3px; top: 0.28em; width: 10px; height: 13px; border: 1.5px solid var(--pmr-muted); border-radius: 2px; }
.pmr-price-card .wp-block-buttons { margin-top: auto !important; padding-top: 28px; }
.pmr-price-card .wp-block-button { width: 100%; }
.pmr-price-card .wp-block-button__link { width: 100%; text-align: center; }

.pmr-facts { background: var(--pmr-surface); border: 1px solid var(--pmr-line); border-radius: var(--pmr-r-md); padding: 20px 28px !important; margin-top: var(--pmr-gap) !important; gap: 0 !important; }
.pmr-facts > .wp-block-column { display: flex; align-items: center; justify-content: center; padding: 6px 20px; }
.pmr-facts > .wp-block-column + .wp-block-column { border-left: 1px solid var(--pmr-line); }
.pmr-facts p { margin: 0; text-align: center; font-size: 0.96875rem; color: var(--pmr-text); }
.pmr-facts strong { color: var(--pmr-accent); }

/* ==========================================================================
   Proces
   ========================================================================== */
.pmr-process { gap: clamp(32px, 6vw, 96px) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-sticky { position: sticky; top: 120px; }
.pmr-sticky h2 { margin-bottom: 16px; }
.pmr-sticky p { margin-bottom: 32px; }
.pmr-steps { counter-reset: pmr-step; margin: 0 !important; }
.pmr-step { counter-increment: pmr-step; position: relative; padding: 32px 0 32px 76px; border-top: 1px solid var(--pmr-line); margin: 0 !important; }
.pmr-step:last-child { border-bottom: 1px solid var(--pmr-line); }
.pmr-step::before { content: counter(pmr-step); position: absolute; left: 0; top: 30px; width: 44px; height: 44px; border: 1px solid var(--pmr-accent-line); border-radius: 50%; display: grid; place-items: center; font-family: var(--pmr-font-head); font-weight: 600; font-size: 1rem; color: var(--pmr-accent); }
.pmr-step h3 { font-size: 1.25rem; margin: 0 0 8px; }
.pmr-step p { margin: 0; color: var(--pmr-text); max-width: 36em; }

/* ==========================================================================
   Studio (split)
   ========================================================================== */
.pmr-split { gap: clamp(32px, 6vw, 88px) !important; align-items: center !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-split h2 { margin-bottom: 20px; }
.pmr-split .pmr-checks { margin: 28px 0 36px; }

/* ==========================================================================
   Liczby i media
   ========================================================================== */
.pmr-proof { padding-top: 0; }
.pmr-stats { border-top: 1px solid var(--pmr-line); border-bottom: 1px solid var(--pmr-line); gap: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-stats > .wp-block-column { padding: clamp(24px, 3vw, 36px) clamp(12px, 2vw, 28px); }
.pmr-stats > .wp-block-column + .wp-block-column { border-left: 1px solid var(--pmr-line); }
.pmr-stats .pmr-stat { font-family: var(--pmr-font-head); font-weight: 600; font-size: clamp(2.25rem, 2.5vw + 1rem, 3.25rem); line-height: 1; letter-spacing: -0.02em; color: var(--pmr-ink); margin: 0 0 10px; }
.pmr-stats .pmr-stat-label { margin: 0; color: var(--pmr-muted); font-size: 0.9375rem; line-height: 1.45; }
.pmr-media { margin-top: 28px !important; margin-bottom: 0 !important; color: var(--pmr-muted); font-size: 0.96875rem; }
.pmr-media strong { color: var(--pmr-text); font-weight: 500; }

/* ==========================================================================
   Studia
   ========================================================================== */
.pmr-studios { gap: var(--pmr-gap) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-studio-card { padding: 0 !important; overflow: hidden; }
.pmr-studio-card .pmr-visual img { border: 0; border-radius: 0; aspect-ratio: 3 / 2; object-fit: cover; }
.pmr-studio-card .pmr-card-body { padding: clamp(24px, 3vw, 36px); display: flex; flex-direction: column; flex: 1; margin: 0 !important; }
.pmr-tag { font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.75rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--pmr-accent) !important; margin: 0 0 10px !important; }
.pmr-specs { margin-top: var(--pmr-gap) !important; }
.pmr-section .pmr-after { margin-top: 32px !important; }

/* ==========================================================================
   Kim jestem
   ========================================================================== */
.pmr-about { gap: clamp(32px, 6vw, 88px) !important; align-items: center !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-about .pmr-visual img { aspect-ratio: 4 / 5; object-fit: cover; }
.pmr-about h2 { margin-bottom: 20px; }
.pmr-about p { max-width: 36em; }
.pmr-about .pmr-checks { margin: 28px 0 36px; }

/* ==========================================================================
   Opinie
   ========================================================================== */
.pmr-reviews { gap: var(--pmr-gap) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-reviews > .wp-block-column { display: flex; flex-direction: column; gap: var(--pmr-gap); }
.pmr-reviews > .wp-block-column > .wp-block-quote { flex: 1; }
.entry-content .pmr-reviews .wp-block-quote { background: var(--pmr-surface); border: 1px solid var(--pmr-line); border-radius: var(--pmr-r-md); padding: clamp(24px, 3vw, 36px); margin: 0; display: flex; flex-direction: column; font-style: normal; }
.entry-content .pmr-reviews .wp-block-quote::before { content: "\201D"; font-family: var(--pmr-font-head); font-size: 4rem; line-height: 0.6; color: var(--pmr-accent); height: 28px; display: block; }
.entry-content .pmr-reviews .wp-block-quote p { color: var(--pmr-ink); font-size: 1rem; line-height: 1.7; margin: 0 0 20px; font-style: normal; }
.entry-content .pmr-reviews .wp-block-quote.is-large p { font-size: clamp(1.125rem, 0.6vw + 0.95rem, 1.3125rem); line-height: 1.6; }
.entry-content .pmr-reviews .wp-block-quote cite { display: block; text-align: left; margin-top: auto; font-style: normal; font-size: 0.875rem; color: var(--pmr-muted); }
.entry-content .pmr-reviews .wp-block-quote cite strong { display: block; font-family: var(--pmr-font-head); color: var(--pmr-ink); font-size: 0.9375rem; margin-bottom: 2px; }

/* ==========================================================================
   FAQ
   ========================================================================== */
.pmr-faq .wp-block-details { border-bottom: 1px solid var(--pmr-line); padding: 0; margin-top: 0 !important; margin-bottom: 0 !important; }
.pmr-faq .wp-block-details:first-of-type { border-top: 1px solid var(--pmr-line); }
.pmr-faq .wp-block-details summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0; font-family: var(--pmr-font-head); font-weight: 600; font-size: clamp(1.0625rem, 0.4vw + 0.95rem, 1.1875rem); line-height: 1.4; color: var(--pmr-ink); transition: color .15s ease; }
.pmr-faq .wp-block-details summary::-webkit-details-marker { display: none; }
.pmr-faq .wp-block-details summary::after { content: "+"; flex: 0 0 auto; font-size: 1.75rem; font-weight: 400; line-height: 1; color: var(--pmr-accent); transition: transform .2s ease; }
.pmr-faq .wp-block-details[open] summary::after { transform: rotate(45deg); }
.pmr-faq .wp-block-details summary:hover { color: var(--pmr-accent); }
.pmr-faq .wp-block-details > p { margin: 0 0 24px; color: var(--pmr-text); max-width: 65ch; }

/* ==========================================================================
   CTA
   ========================================================================== */
.pmr-cta { background: var(--pmr-surface); border: 1px solid var(--pmr-line); border-radius: var(--pmr-r-md); padding: clamp(44px, 6vw, 88px) clamp(24px, 5vw, 64px) !important; text-align: center; }
.pmr-cta > *,
.pmr-cta > .wp-block-group__inner-container > * { max-width: 680px; margin-left: auto !important; margin-right: auto !important; }
.pmr-cta h2 { margin-bottom: 16px; }
.pmr-cta .wp-block-buttons { justify-content: center; margin: 32px auto 24px !important; }
.pmr-cta .pmr-contact-line { color: var(--pmr-muted); font-size: 0.96875rem; margin: 0; }
.pmr-cta .pmr-contact-line a { color: var(--pmr-ink); text-decoration: underline; text-decoration-color: var(--pmr-accent-line); text-underline-offset: 4px; }
.pmr-cta .pmr-contact-line a:hover { color: var(--pmr-accent); }

/* ==========================================================================
   Stopka
   ========================================================================== */
.pmr-footer { border-top: 1px solid var(--pmr-line); padding: clamp(56px, 7vw, 88px) var(--pmr-gutter) 32px; background: var(--pmr-bg); font-size: 0.9375rem; }
.pmr-footer > * { max-width: var(--pmr-container); margin-left: auto !important; margin-right: auto !important; }
.pmr-footer .wp-block-columns { gap: clamp(28px, 4vw, 56px); margin-bottom: 0; }
.pmr-footer p { color: var(--pmr-muted); margin: 0 0 12px; }
.pmr-footer .pmr-footer-logo img { width: 150px; height: auto; display: block; margin-bottom: 20px; }
.pmr-footer .pmr-footer-logo { margin: 0 !important; }
.pmr-footer .pmr-footer-title { font-family: var(--pmr-font-head); font-weight: 600; font-size: 0.8125rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--pmr-ink); margin-bottom: 18px; }
.pmr-footer ul { list-style: none; padding: 0; margin: 0; }
.pmr-footer li { margin: 0 0 10px; }
.pmr-footer a { color: var(--pmr-text); text-decoration: none; }
.pmr-footer a:hover { color: var(--pmr-accent); }
.pmr-footer-bottom { border-top: 1px solid var(--pmr-line); margin-top: clamp(40px, 5vw, 64px) !important; padding-top: 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 24px; }
.pmr-footer-bottom p { margin: 0; font-size: 0.875rem; }

/* ==========================================================================
   Nagłówek (Astra)
   ========================================================================== */
.main-header-menu .sub-menu .menu-link { padding-top: 10px; padding-bottom: 10px; }
.ast-builder-menu-1 .sub-menu { box-shadow: none; }

/* ==========================================================================
   Responsywność
   ========================================================================== */
@media (max-width: 1024px) {
	.pmr-pricing { flex-wrap: wrap !important; }
	.pmr-pricing > .wp-block-column { flex-basis: 100% !important; }
	.pmr-card h3.pmr-label { min-height: 0; }
}
@media (max-width: 781px) {
	.pmr-hero .wp-block-columns { flex-direction: column; }
	.pmr-hero .pmr-visual img { aspect-ratio: 4 / 3; }
	.pmr-facts { padding: 8px 20px !important; }
	.pmr-facts > .wp-block-column { padding: 14px 0; }
	.pmr-facts > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid var(--pmr-line); }
	.pmr-sticky { position: static; }
	.pmr-step { padding-left: 64px; }
	.pmr-card h3.pmr-label { min-height: 0; }
	.pmr-split > .wp-block-column:first-child { order: 2; }
	.wp-block-columns.pmr-stats.is-not-stacked-on-mobile { flex-wrap: wrap !important; }
	.wp-block-columns.pmr-stats.is-not-stacked-on-mobile > .wp-block-column { flex-basis: 50% !important; flex-grow: 0 !important; }
	.pmr-stats > .wp-block-column + .wp-block-column { border-left: 0; }
	.pmr-stats > .wp-block-column:nth-child(even) { border-left: 1px solid var(--pmr-line); }
	.pmr-stats > .wp-block-column:nth-child(n+3) { border-top: 1px solid var(--pmr-line); }
	.pmr-about .pmr-visual img { aspect-ratio: 4 / 3; }
	.pmr-footer-bottom { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; }
}

/* FAQ na pełną szerokość kontenera, nagłówek wyrównany do lewej jak w innych sekcjach */
.pmr-faq .pmr-head.is-center { text-align: left; }
.pmr-faq .pmr-head.is-center > *,
.pmr-faq .pmr-head.is-center > .wp-block-group__inner-container > * { margin-left: 0; margin-right: 0; }
