/* PrimaCora – pop-upy (Popups.php / popups.js). Ładowane tylko na stronach z aktywnym pop-upem. */
.pcp { --pcp-bg: #fff; --pcp-fg: #0d1b1a; --pcp-muted: #4a5a58; --pcp-accent: #0e3b37; --pcp-accent-fg: #fff; --pcp-gold: #b8913f; --pcp-line: rgba(14, 59, 55, .12); --pcp-chip: #eef6f3; --pcp-w: 640px; --pcp-r: 30px; --pcp-ease: cubic-bezier(.2, .8, .2, 1);
	position: fixed; inset: 0; z-index: 9990; display: grid; place-items: center; padding: 24px; pointer-events: none; font-family: inherit; }
.pcp[hidden] { display: none; }
.pcp--s-green { --pcp-bg: #0e3b37; --pcp-fg: #fff; --pcp-muted: rgba(255, 255, 255, .78); --pcp-accent: #c4a15c; --pcp-accent-fg: #14110a; --pcp-gold: #e2c27e; --pcp-line: rgba(255, 255, 255, .14); --pcp-chip: rgba(255, 255, 255, .1); }
.pcp--s-mint { --pcp-bg: #e6f3ef; --pcp-muted: #3d5552; --pcp-chip: #fff; --pcp-line: rgba(14, 59, 55, .14); }
.pcp--s-gold { --pcp-bg: #fbf5e8; --pcp-muted: #5a4f3b; --pcp-accent: #0e3b37; --pcp-gold: #a07b2c; --pcp-chip: #fff; --pcp-line: rgba(160, 123, 44, .22); }
.pcp--s-dark { --pcp-bg: #0b1f1d; --pcp-fg: #f3f7f6; --pcp-muted: rgba(243, 247, 246, .72); --pcp-accent: #c4a15c; --pcp-accent-fg: #14110a; --pcp-gold: #e2c27e; --pcp-line: rgba(255, 255, 255, .12); --pcp-chip: rgba(255, 255, 255, .08); }
.pcp--s-custom { --pcp-muted: currentColor; --pcp-accent: var(--pcp-fg); --pcp-accent-fg: var(--pcp-bg); --pcp-line: rgba(127, 127, 127, .25); --pcp-chip: rgba(127, 127, 127, .14); }
.pcp--size-s { --pcp-w: 500px; }
.pcp--size-l { --pcp-w: 860px; }
.pcp--t-split, .pcp--t-hero { --pcp-w: 940px; }
.pcp--t-split.pcp--size-s, .pcp--t-hero.pcp--size-s { --pcp-w: 800px; }
.pcp--t-split.pcp--size-l, .pcp--t-hero.pcp--size-l { --pcp-w: 1120px; }
html.pcp-lock { overflow: hidden; scrollbar-gutter: stable; }

/* Tło */
.pcp__overlay { position: absolute; inset: 0; pointer-events: auto; background: radial-gradient(120% 90% at 50% 40%, rgba(8, 36, 33, .42), rgba(4, 18, 17, .72)); opacity: 0; transition: opacity .4s var(--pcp-ease); }
.pcp--o-blur .pcp__overlay { -webkit-backdrop-filter: blur(7px) saturate(1.1); backdrop-filter: blur(7px) saturate(1.1); }
.pcp--o-none .pcp__overlay { display: none; }
.pcp.is-open .pcp__overlay { opacity: 1; }

/* Okno */
.pcp__box { position: relative; isolation: isolate; display: grid; width: min(var(--pcp-w), 100%); max-height: calc(100dvh - 48px); grid-template-rows: minmax(0, 1fr); overflow: hidden; color: var(--pcp-fg); background: var(--pcp-bg); border-radius: var(--pcp-r); box-shadow: 0 1px 0 rgba(255, 255, 255, .5) inset, 0 40px 90px -30px rgba(4, 22, 20, .55), 0 12px 30px -18px rgba(4, 22, 20, .35); pointer-events: auto; outline: 0; scrollbar-width: thin;
	opacity: 0; transform: translateY(14px) scale(.955); transition: opacity .38s var(--pcp-ease), transform .5s var(--pcp-ease); }
.pcp__box::before { content: ""; position: absolute; inset: 0 0 auto; z-index: 3; height: 3px; background: linear-gradient(90deg, transparent, var(--pcp-gold) 30%, #f1dca8 50%, var(--pcp-gold) 70%, transparent); opacity: .9; pointer-events: none; }
.pcp--s-light .pcp__box::after, .pcp--s-mint .pcp__box::after, .pcp--s-gold .pcp__box::after { content: ""; position: absolute; right: -120px; top: -140px; z-index: -1; width: 320px; height: 320px; background: radial-gradient(closest-side, rgba(196, 161, 92, .16), transparent); pointer-events: none; }
.pcp--s-green .pcp__box::after, .pcp--s-dark .pcp__box::after { content: ""; position: absolute; left: -140px; bottom: -160px; z-index: -1; width: 380px; height: 380px; background: radial-gradient(closest-side, rgba(196, 161, 92, .2), transparent); pointer-events: none; }
.pcp.is-open .pcp__box { opacity: 1; transform: none; }
.pcp--a-fade .pcp__box { transform: none; }
.pcp--a-up .pcp__box { transform: translateY(48px); }
.pcp--a-side .pcp__box { transform: translateX(56px); }
.pcp--a-side.pcp--pos-left .pcp__box { transform: translateX(-56px); }
.pcp--a-none .pcp__box, .pcp--a-none .pcp__overlay { transition: none; }

.pcp__close { position: absolute; top: 14px; right: 14px; z-index: 4; display: grid; place-items: center; width: 38px; height: 38px; padding: 0; color: var(--pcp-fg); background: var(--pcp-chip); border: 1px solid var(--pcp-line); border-radius: 50%; cursor: pointer; transition: transform .25s var(--pcp-ease), background .2s; }
.pcp__close:hover { transform: rotate(90deg); }
.pcp__close:focus-visible, .pcp__btn:focus-visible, .pcp__copy:focus-visible { outline: 2px solid var(--pcp-gold); outline-offset: 3px; }
.pcp__close .pc-icon { width: 18px; height: 18px; }
.pcp.has-img:not(.pcp--t-split) .pcp__close { color: #fff; background: rgba(8, 28, 26, .45); border-color: rgba(255, 255, 255, .25); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }

/* Treść */
.pcp__media { position: relative; overflow: hidden; }
.pcp__img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.pcp--t-card .pcp__media { aspect-ratio: 16 / 9; }
.pcp--t-card.has-img .pcp__box, .pcp--slidein.has-img .pcp__box, .pcp--side.has-img .pcp__box { grid-template-rows: auto minmax(0, 1fr); }
.pcp--t-card .pcp__media { max-height: 42dvh; }
.pcp__body { position: relative; display: grid; justify-items: start; align-content: center; gap: 14px; min-height: 0; padding: clamp(30px, 4.4vw, 52px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--pcp-line) transparent; }
.pcp__body::-webkit-scrollbar { width: 6px; }
.pcp__body::-webkit-scrollbar-thumb { background: var(--pcp-line); border-radius: 6px; }
.pcp__icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 4px; color: var(--pcp-accent); background: var(--pcp-chip); border: 1px solid var(--pcp-line); border-radius: 18px; }
.pcp--s-green .pcp__icon, .pcp--s-dark .pcp__icon { color: var(--pcp-gold); }
.pcp__icon .pc-icon { width: 26px; height: 26px; }
.pcp__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: .74rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--pcp-gold); }
.pcp__eyebrow::before { content: ""; width: 18px; height: 1.5px; background: currentColor; }
.pcp__title { margin: 0; font-size: clamp(1.55rem, 2.8vw, 2.3rem); font-weight: 800; line-height: 1.12; letter-spacing: -.025em; color: inherit; text-wrap: balance; }
.pcp__text { margin: 0; font-size: 1.08rem; line-height: 1.6; color: var(--pcp-muted); }
.pcp__points { display: grid; gap: 8px; margin: 2px 0 0; padding: 0; list-style: none; }
.pcp__points li { display: flex; align-items: center; gap: 10px; font-size: .96rem; font-weight: 600; }
.pcp__points .pc-icon { flex: none; width: 20px; height: 20px; padding: 3px; color: var(--pcp-accent-fg); background: var(--pcp-accent); border-radius: 50%; }
.pcp__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin-top: 8px; }
.pcp__btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 26px; font: inherit; font-size: .98rem; font-weight: 800; text-decoration: none; border-radius: 999px; cursor: pointer; transition: transform .25s var(--pcp-ease), box-shadow .25s, filter .2s; }
.pcp__btn--main { color: var(--pcp-accent-fg); background: var(--pcp-accent); border: 0; box-shadow: 0 14px 30px -14px rgba(14, 59, 55, .55); }
.pcp__btn--main:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 20px 36px -16px rgba(14, 59, 55, .6); }
.pcp__btn--main .pc-icon { width: 18px; height: 18px; transition: transform .25s var(--pcp-ease); }
.pcp__btn--main:hover .pc-icon { transform: translateX(4px); }
.pcp__btn--ghost { min-height: 44px; padding: 0 4px; color: var(--pcp-muted); background: none; border: 0; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--pcp-line); }
.pcp__btn--ghost:hover { color: var(--pcp-fg); }
.pcp__actions > .pcp__btn--ghost:only-child { min-height: 50px; padding: 0 30px; color: var(--pcp-accent-fg); background: var(--pcp-accent); text-decoration: none; box-shadow: 0 14px 30px -14px rgba(4, 22, 20, .5); }
.pcp__actions > .pcp__btn--ghost:only-child:hover { transform: translateY(-2px); filter: brightness(1.06); }
.pcp__note { margin: 4px 0 0; font-size: .8rem; line-height: 1.5; color: var(--pcp-muted); opacity: .85; }
.pcp__extra { width: 100%; }
.pcp__extra > :first-child { margin-top: 0; }

/* Kupon */
.pcp__coupon { position: relative; display: flex; align-items: stretch; width: 100%; margin: 6px 0 2px; background: var(--pcp-chip); border: 1.5px dashed var(--pcp-gold); border-radius: 16px; }
.pcp__coupon::before, .pcp__coupon::after { content: ""; position: absolute; top: 50%; width: 18px; height: 18px; margin-top: -9px; background: var(--pcp-bg); border: 1.5px dashed var(--pcp-gold); border-radius: 50%; clip-path: inset(0 0 0 50%); }
.pcp__coupon::before { left: -10px; }
.pcp__coupon::after { right: -10px; transform: scaleX(-1); }
.pcp__code { flex: 1; padding: 16px 20px; font-size: 1.5rem; font-weight: 800; letter-spacing: .14em; font-variant-numeric: tabular-nums; user-select: all; }
.pcp__copy { display: inline-flex; align-items: center; gap: 8px; margin: 6px; padding: 0 18px; font: inherit; font-size: .88rem; font-weight: 800; color: var(--pcp-accent-fg); background: var(--pcp-accent); border: 0; border-radius: 12px; cursor: pointer; }
.pcp__copy .pc-icon { width: 16px; height: 16px; }
.pcp__copy.is-done { background: #1a7f52; color: #fff; }

/* Odliczanie */
.pcp__cd { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0; }
.pcp__cd[hidden] { display: none; }
.pcp__cd span { display: grid; justify-items: center; min-width: 64px; padding: 10px 8px 8px; background: var(--pcp-chip); border: 1px solid var(--pcp-line); border-radius: 14px; }
.pcp__cd b { font-size: 1.6rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.pcp__cd i { margin-top: 4px; font-size: .68rem; font-style: normal; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--pcp-muted); }
.pcp--t-countdown .pcp__body, .pcp--t-minimal .pcp__body, .pcp--t-announce .pcp__body, .pcp--t-coupon .pcp__body { justify-items: center; text-align: center; }
.pcp--t-countdown .pcp__eyebrow::before, .pcp--t-minimal .pcp__eyebrow::before, .pcp--t-announce .pcp__eyebrow::before, .pcp--t-coupon .pcp__eyebrow::before { display: none; }
.pcp--t-countdown .pcp__actions, .pcp--t-minimal .pcp__actions, .pcp--t-announce .pcp__actions, .pcp--t-coupon .pcp__actions { justify-content: center; }
.pcp--t-countdown .pcp__cd { justify-content: center; }
.pcp--t-countdown .pcp__cd span { min-width: 74px; padding: 14px 10px 10px; }
.pcp--t-countdown .pcp__cd b { font-size: 2.1rem; }

/* Zdjęcie obok */
.pcp--t-split.has-img .pcp__box { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
.pcp--t-split .pcp__media { min-height: 440px; }
.pcp--t-split .pcp__img { position: absolute; inset: 0; }
.pcp--t-split .pcp__body { padding-right: clamp(30px, 4vw, 48px); }

/* Tekst na zdjęciu */
.pcp--t-hero .pcp__box { color: #fff; --pcp-muted: rgba(255, 255, 255, .84); --pcp-gold: #e2c27e; --pcp-chip: rgba(255, 255, 255, .12); --pcp-line: rgba(255, 255, 255, .2); --pcp-accent: #c4a15c; --pcp-accent-fg: #14110a; --pcp-bg: #0b1f1d; }
.pcp--t-hero.has-img .pcp__box { min-height: 520px; }
.pcp--t-hero .pcp__media { position: absolute; inset: 0; z-index: -2; }
.pcp--t-hero .pcp__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(6, 26, 24, .94) 0%, rgba(6, 26, 24, .78) 42%, rgba(6, 26, 24, .2) 100%); }
.pcp--t-hero .pcp__body { max-width: 620px; padding: clamp(32px, 5vw, 56px); }
.pcp--t-hero .pcp__img { transform: scale(1.06); transition: transform 6s ease-out; }
.pcp--t-hero.is-open .pcp__img { transform: none; }

/* Sposoby wyświetlania */
.pcp--slidein { inset: auto 24px 24px auto; display: block; padding: 0; }
.pcp--slidein.pcp--pos-left { inset: auto auto 24px 24px; }
.pcp--slidein .pcp__box { width: min(var(--pcp-w), calc(100vw - 32px)); --pcp-r: 22px; }
.pcp--slidein.pcp--size-m { --pcp-w: 440px; }
.pcp--slidein.pcp--size-s { --pcp-w: 400px; }
.pcp--slidein .pcp__body { padding: 24px 26px 26px; gap: 10px; }
.pcp--slidein .pcp__title { font-size: 1.3rem; }
.pcp--slidein .pcp__btn--main { min-height: 46px; padding: 0 22px; }
.pcp--slidein.pcp--t-split.has-img .pcp__box { grid-template-columns: 1fr; }
.pcp--slidein .pcp__media { aspect-ratio: 16 / 9; min-height: 0; }
.pcp--sheet { place-items: end center; padding: 0; }
.pcp--sheet .pcp__box { width: min(var(--pcp-w), 100%); --pcp-r: 28px 28px 0 0; padding-bottom: env(safe-area-inset-bottom, 0px); }
.pcp--sheet.pcp--size-m { --pcp-w: 820px; }
.pcp--sheet .pcp__box { transform: translateY(100%); }
.pcp--side { place-items: stretch end; padding: 0; }
.pcp--side.pcp--pos-left { place-items: stretch start; }
.pcp--side .pcp__box { width: min(500px, 100vw); max-height: none; height: 100dvh; align-content: stretch; --pcp-r: 28px 0 0 28px; transform: translateX(100%); }
.pcp--side.pcp--pos-left .pcp__box { --pcp-r: 0 28px 28px 0; transform: translateX(-100%); }
.pcp--side.pcp--t-split.has-img .pcp__box { grid-template-columns: 1fr; }
.pcp--side .pcp__media { aspect-ratio: 4 / 3; min-height: 0; }
.pcp--fullscreen { padding: 0; }
.pcp--fullscreen .pcp__box { width: 100vw; height: 100dvh; max-height: none; --pcp-r: 0; place-items: center; }
.pcp--fullscreen .pcp__body { max-width: 680px; justify-items: center; text-align: center; }
.pcp--fullscreen .pcp__actions { justify-content: center; }
.pcp--fullscreen.pcp--t-split.has-img .pcp__box { grid-template-columns: 1fr 1fr; place-items: stretch; }
.pcp--fullscreen.pcp--t-split .pcp__body { justify-items: start; text-align: left; place-self: center; }
.pcp.is-open .pcp__box { transform: none; }

/* Telefon: okno na środku = panel od dołu */
@media (max-width: 760px) {
	.pcp { padding: 0; }
	.pcp--modal { place-items: end center; }
	.pcp--modal .pcp__box { width: 100%; max-height: 90dvh; --pcp-r: 26px 26px 0 0; padding-bottom: env(safe-area-inset-bottom, 0px); transform: translateY(100%); }
	.pcp--modal .pcp__box > .pcp__body::before, .pcp--sheet .pcp__box > .pcp__body::before { content: ""; position: absolute; top: 10px; left: 50%; width: 42px; height: 4px; margin-left: -21px; background: var(--pcp-line); border-radius: 4px; }
	.pcp--t-split.has-img .pcp__box { grid-template-columns: 1fr; }
	.pcp--t-split .pcp__media { min-height: 0; aspect-ratio: 16 / 9; }
	.pcp--t-hero.has-img .pcp__box { min-height: 0; }
	.pcp--t-hero .pcp__media::after { background: linear-gradient(0deg, rgba(6, 26, 24, .96) 0%, rgba(6, 26, 24, .78) 55%, rgba(6, 26, 24, .4) 100%); }
	.pcp--slidein { inset: auto 12px calc(84px + env(safe-area-inset-bottom, 0px)) 12px; }
	.pcp--slidein .pcp__box { width: 100%; }
	.pcp--slidein .pcp__media { aspect-ratio: 21 / 9; }
	.pcp--fullscreen.pcp--t-split.has-img .pcp__box { grid-template-columns: 1fr; }
	.pcp__body { padding: 30px 22px 24px; }
	.pcp__title { font-size: 1.45rem; }
	.pcp__actions { width: 100%; }
	.pcp__btn--main { flex: 1 1 100%; }
	.pcp--t-countdown .pcp__cd span { min-width: 62px; }
	.pcp--t-countdown .pcp__cd b { font-size: 1.7rem; }
}

/* Tryb ciemny strony */
html[data-theme="dark"] .pcp--s-light { --pcp-bg: #11221f; --pcp-fg: #eef5f3; --pcp-muted: rgba(238, 245, 243, .74); --pcp-accent: #c4a15c; --pcp-accent-fg: #14110a; --pcp-gold: #e2c27e; --pcp-line: rgba(255, 255, 255, .12); --pcp-chip: rgba(255, 255, 255, .07); }
html[data-theme="dark"] .pcp--s-mint { --pcp-bg: #12302b; --pcp-fg: #eef5f3; --pcp-muted: rgba(238, 245, 243, .76); --pcp-accent: #c4a15c; --pcp-accent-fg: #14110a; --pcp-gold: #e2c27e; --pcp-line: rgba(255, 255, 255, .14); --pcp-chip: rgba(255, 255, 255, .08); }
html[data-theme="dark"] .pcp--s-gold { --pcp-bg: #2a2414; --pcp-fg: #f7efdc; --pcp-muted: rgba(247, 239, 220, .78); --pcp-accent: #e2c27e; --pcp-accent-fg: #14110a; --pcp-gold: #e9cd8c; --pcp-line: rgba(226, 194, 126, .25); --pcp-chip: rgba(255, 255, 255, .07); }

@media (prefers-reduced-motion: reduce) {
	.pcp__box, .pcp__overlay, .pcp--t-hero .pcp__img { transition: none !important; transform: none !important; }
}

/* Strona pokazowa [pc_popup_demo] */
.pcp-demo { margin: 8px 0 40px; }
.pcp-demo__h { margin: 40px 0 6px; font-size: clamp(1.3rem, 2.2vw, 1.7rem); }
.pcp-demo__p { margin: 0 0 14px; color: var(--muted, #4a5a58); }
.pcp-demo__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; margin-top: 14px; }
.pcp-demo__card { display: grid; align-content: start; gap: 6px; min-height: 132px; padding: 20px 20px 18px; font: inherit; text-align: left; color: var(--ink, #0d1b1a); text-decoration: none; background: var(--white, #fff); border: 1.5px solid var(--line, #e3ebe8); border-radius: 20px; cursor: pointer; transition: transform .25s cubic-bezier(.2, .8, .2, 1), border-color .2s, box-shadow .25s; }
.pcp-demo__card:hover, .pcp-demo__card:focus-visible { transform: translateY(-3px); border-color: #c4a15c; box-shadow: 0 18px 40px -24px rgba(14, 59, 55, .45); }
.pcp-demo__name { font-size: 1.05rem; font-weight: 800; }
.pcp-demo__desc { font-size: .9rem; color: var(--muted, #4a5a58); }
.pcp-demo__go { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 8px; font-size: .88rem; font-weight: 800; color: var(--green, #0e3b37); }
.pcp-demo__go .pc-icon { width: 16px; height: 16px; }
