/*
Theme Name: Asia 2026
Description: Nowy wygląd asiaiwaszkiewicz.pl (makieta v5, Claude Design, kolor K2) — Asia 07, 24.10.2026. Strony z treścią z makiety mają meta _asia_tresc; pozostałe strony (polityka, briefy) renderuje Elementor w ramie motywu.
Author: IWASZKA
Version: 1.0.0-4f4c70b5db
Text Domain: asia-2026
*/
/* v2: kroje starej strony + propozycje logo (SIL OFL), pliki lokalne */
@font-face {
  font-family: 'Arsenal';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/arsenal-italic-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Arsenal';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/arsenal-italic-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: 'Arsenal';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/arsenal-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Arsenal';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/arsenal-normal-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: 'Arsenal';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/arsenal-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Arsenal';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/arsenal-normal-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/cormorant-garamond-normal-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: 'Figtree';
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url(fonts/figtree-normal-500-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url(fonts/figtree-normal-500-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: 'Italiana';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/italiana-normal-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: 'Licorice';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/licorice-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Licorice';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/licorice-normal-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: 'Source Sans 3';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/source-sans-3-italic-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Source Sans 3';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/source-sans-3-italic-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: 'Source Sans 3';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(fonts/source-sans-3-normal-300-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(fonts/source-sans-3-normal-300-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;
}

/* asiaiwaszkiewicz.pl — arkusz v3 (Claude Design, 21.10.2026) na bazie makiety v2 (Asia 05, 20.10.2026).
   Styl poprzedniej strony: Arsenal (nagłówki wersalikami), Licorice (hasła odręczne), Source Sans 3 (tekst i etykiety),
   kolory: beże, brąz #594839, grafit. Kierunek: elegancko, premium, ciepło — dużo powietrza, cienkie linie,
   przesunięte ramki pod zdjęciami. Zaokrąglone tylko karty produktów.
   Ruch: CSS + animacje.js (IntersectionObserver). prefers-reduced-motion: reduce = bez animacji. Bez JS strona jest kompletna. */
@import url("fonts2.css");

:root {
  --tlo: #f3f3f3;          /* kolory z zestawu Elementora obecnej strony */
  --bez: #efe9e4;
  --piasek: #c6b8ab;
  --taupe: #a69c94;
  --taupe-ciemny: #857a71; /* ramki pól formularza (kontrast 4:1) */
  --braz: #594839;
  --grafit: #282625;
  --czern: #000;
  --roz: #f5a3ab;          /* róż ze starej strony — rezerwowo, patrz README */
  --mleko: #fff;
  --linia: #ddd3ca;
  --tekst-2: #5d544e;
  --r-karta: 14px;
  --szer: 1240px;
  --gutter: 16px;
  --ramka: 16px;
  --ease: cubic-bezier(.2, .7, .2, 1);
  --cien: 0 26px 50px -30px rgb(89 72 57 / .5);
  --f-nagl: "Arsenal", Georgia, serif;
  --f-reka: "Licorice", "Segoe Script", cursive;
  --f-tekst: "Source Sans 3", "Segoe UI", system-ui, sans-serif;
  --f-etyk: "Source Sans 3", "Segoe UI", system-ui, sans-serif;
}
@media (min-width: 768px) { :root { --gutter: 32px; --ramka: 22px; } }

/* ---------- podstawy ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--tlo); color: var(--grafit); font: 400 1.0625rem/1.75 var(--f-tekst); overflow-x: hidden; overflow-x: clip; -webkit-font-smoothing: antialiased; }
img, video { max-width: 100%; height: auto; display: block; }
a { color: var(--braz); text-underline-offset: 3px; text-decoration-thickness: 1px; }
a:hover { color: var(--grafit); }
:focus-visible { outline: 2px solid var(--braz); outline-offset: 3px; }
.sekcja--ciemna :focus-visible { outline-color: #fff; }
::selection { background: var(--piasek); color: var(--grafit); }
h1, h2, h3, h4 { font-family: var(--f-nagl); font-weight: 400; line-height: 1.16; margin: 0 0 .6em; text-transform: uppercase; letter-spacing: .05em; color: var(--grafit); text-wrap: balance; }
h1 { font-size: clamp(1.95rem, 3.7vw, 3.15rem); }
h2 { font-size: clamp(1.55rem, 2.6vw, 2.3rem); }
h3 { font-size: clamp(1.08rem, 1.4vw, 1.26rem); letter-spacing: .06em; }
h4 { font-size: .95rem; letter-spacing: .1em; }
p { margin: 0 0 1em; text-wrap: pretty; }
.reka { display: block; font-family: var(--f-reka); font-weight: 400; text-transform: none; letter-spacing: 0; line-height: .95; font-size: clamp(2.7rem, 5.2vw, 4.6rem); color: var(--braz); margin-bottom: .08em; }
.reka--roz { color: var(--roz); }
h2 .reka { font-size: clamp(2.3rem, 4.2vw, 3.7rem); }
h3 .reka { font-size: clamp(2rem, 3vw, 2.7rem); }
.lead { font-size: clamp(1.06rem, 1.35vw, 1.2rem); line-height: 1.7; color: var(--tekst-2); max-width: 40em; }
/* mała brązowa etykieta — zostaje (Asia, 20.10); krój jak tekst starej strony */
.etykieta { display: inline-flex; align-items: center; gap: .8em; font: 600 .76rem/1.25 var(--f-etyk); letter-spacing: .2em; text-transform: uppercase; color: var(--braz); margin-bottom: 1rem; }
.etykieta::before { content: ""; width: 28px; height: 1px; background: currentColor; flex: none; }
.karta .etykieta::before, .wpis .etykieta::before, .ig-pas .etykieta::before, .logo-propozycje .etykieta::before { display: none; }
.srodek .etykieta::after, .hero-c .etykieta::after { content: ""; width: 28px; height: 1px; background: currentColor; flex: none; }
.maly { font-size: .9rem; color: var(--tekst-2); }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sr:focus { position: fixed; top: 8px; left: 8px; width: auto; height: auto; clip: auto; z-index: 100; background: var(--grafit); color: #fff; padding: 12px 18px; }

/* ---------- układ ---------- */
.kontener { width: 100%; max-width: var(--szer); margin: 0 auto; padding: 0 var(--gutter); }
.sekcja { padding: clamp(64px, 9vw, 128px) 0; }
.sekcja--bez { background: var(--bez); }
.sekcja--biala { background: var(--mleko); }
.sekcja--ciemna { background: var(--grafit); color: #ece6e0; }
.sekcja--ciemna h2, .sekcja--ciemna h3 { color: #fff; }
.sekcja--ciemna .reka { color: #fff; }
.sekcja--ciemna .lead, .sekcja--ciemna .maly { color: #d8cfc7; }
.sekcja--ciemna .etykieta { color: var(--piasek); }
.sekcja--ciemna a { color: #fff; }
.sekcja--ciemna .reka + h2 { margin-top: .2em; }
.naglowek-sekcji { max-width: 46rem; margin-bottom: clamp(32px, 4.5vw, 60px); }
.srodek { text-align: center; margin-left: auto; margin-right: auto; }

.siatka { display: grid; gap: clamp(18px, 2.4vw, 32px); }
.siatka > * { min-width: 0; }
@media (min-width: 768px) { .s2, .s3, .s4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) {
  .s3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .s4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .s-6-6 { grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(48px, 6vw, 96px); }
  .s-5-7 { grid-template-columns: 5fr 7fr; align-items: center; gap: clamp(48px, 6vw, 96px); }
  .s-7-5 { grid-template-columns: 7fr 5fr; align-items: center; gap: clamp(48px, 6vw, 96px); }
}

/* ---------- przyciski: prostokątne, wersaliki jak na starej stronie ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .6em; min-height: 50px; padding: .85em 1.9em; border: 1px solid var(--grafit);
  background: var(--grafit); color: #fff; font: 400 .9rem/1.1 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; text-decoration: none; cursor: pointer; border-radius: 0; text-align: center; }
.btn:hover { background: var(--braz); border-color: var(--braz); color: #fff; }
.btn--jasny { background: transparent; color: var(--grafit); }
.btn--jasny:hover { background: var(--grafit); color: #fff; border-color: var(--grafit); }
.sekcja--ciemna .btn, .hero .btn--bialy { background: #fff; color: var(--grafit); border-color: #fff; }
.sekcja--ciemna .btn:hover { background: var(--piasek); border-color: var(--piasek); color: var(--grafit); }
.sekcja--ciemna .btn--jasny { background: transparent; color: #fff; border-color: #fff; }
.btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }
.przyciski { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 1.8rem; }

/* ---------- znaczniki makiety (zostają) ---------- */
.do-potw { background: #fff3c4; color: #5a4300; padding: 0 .3em; font-size: .92em; }
.znacznik { display: inline-block; font: 600 .7rem/1 var(--f-etyk); letter-spacing: .2em; text-transform: uppercase; padding: .7em 1em; background: var(--braz); color: #fff; border-radius: 999px; }
.notka-makiety { background: #fff3c4; color: #5a4300; font-size: .85rem; padding: 10px var(--gutter); text-align: center; }
.notka-makiety a { color: #5a4300; }

/* ---------- nagłówek strony ---------- */
.pasek { position: sticky; top: 0; z-index: 30; background: rgb(243 243 243 / .92); border-bottom: 1px solid transparent; -webkit-backdrop-filter: saturate(1.1) blur(10px); backdrop-filter: saturate(1.1) blur(10px); }
.pasek__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 84px; }
.pasek__in > .logo { min-width: 0; }
/* niższy nagłówek po przewinięciu (klasa z animacje.js); margines wyrównuje wysokość — treść nie skacze */
.pasek--maly { border-bottom-color: var(--linia); margin-bottom: 20px; box-shadow: 0 14px 30px -26px rgb(40 38 37 / .45); }
.pasek--maly .pasek__in { min-height: 64px; }
.logo { text-decoration: none; color: var(--grafit); line-height: 1; display: inline-flex; flex-direction: column; justify-content: center; gap: 7px; min-height: 44px; padding: 4px 0; }
.logo b { font: 400 1.32rem/1 var(--f-nagl); letter-spacing: .22em; text-transform: uppercase; }   /* L1 — inne kroje w warianty.html */
.logo span { font: 600 .6rem/1 var(--f-etyk); letter-spacing: .24em; text-transform: uppercase; color: var(--braz); }
.logo:hover { color: var(--grafit); }
.logo--l2 b { font: 500 1.62rem/1 "Cormorant Garamond", Georgia, serif; letter-spacing: .04em; text-transform: none; }
.logo--l3 b { font: 400 1.4rem/1 "Italiana", Georgia, serif; letter-spacing: .16em; }
@media (max-width: 479.98px) {
  .pasek__in { gap: 12px; }
  .menu-tel summary { padding: 0 12px; gap: 8px; }
  .logo b { font-size: 1.04rem; letter-spacing: .15em; }
  .logo span { font-size: .55rem; letter-spacing: .12em; }
  .logo--l2 b { font-size: 1.3rem; letter-spacing: .02em; }
  .logo--l3 b { font-size: 1.1rem; letter-spacing: .1em; }
}
.menu ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 0; align-items: center; }
.menu a { position: relative; display: flex; align-items: center; min-height: 44px; padding: 0 .85em; color: var(--grafit); text-decoration: none; font: 400 .84rem/1 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; }
.menu a:not(.btn)::after { content: ""; position: absolute; left: .85em; right: .85em; bottom: 8px; height: 1px; background: var(--braz); transform: scaleX(0); transform-origin: 50% 50%; }
.menu a:hover, .menu a[aria-current="page"] { color: var(--braz); }
.menu a:hover::after, .menu a[aria-current="page"]::after { transform: scaleX(1); }
.menu .btn { color: #fff; margin-left: 14px; min-height: 44px; padding: 0 1.4em; }
.menu-tel { display: none; }
@media (max-width: 1099.98px) {
  .menu { display: none; }
  .menu-tel { display: block; }
  .menu-tel summary { list-style: none; cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: 10px; padding: 0 16px; border: 1px solid var(--grafit); font: 400 .82rem/1 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; }
  .menu-tel summary::-webkit-details-marker { display: none; }
  .menu-tel summary::before { content: ""; width: 16px; height: 7px; border-block: 1px solid currentColor; }
  .menu-tel[open] summary { background: var(--grafit); color: #fff; }
  .menu-tel nav { position: absolute; left: 0; right: 0; top: 100%; background: var(--tlo); border-bottom: 1px solid var(--linia); padding: 8px var(--gutter) 24px; box-shadow: 0 24px 40px -30px rgb(40 38 37 / .5); max-height: calc(100vh - 80px); overflow-y: auto; }
  .menu-tel ul { list-style: none; margin: 0 auto; padding: 0; max-width: var(--szer); }
  .menu-tel a { display: flex; align-items: center; min-height: 52px; border-bottom: 1px solid var(--linia); color: var(--grafit); text-decoration: none; font: 400 1rem/1.2 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; }
  .menu-tel a[aria-current="page"] { color: var(--braz); }
}
.okruszki { font-size: .84rem; color: var(--tekst-2); padding-top: 14px; }
.okruszki ol { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 0 8px; margin: 0; padding: 0; }
.okruszki li + li::before { content: "/"; margin-right: 8px; color: var(--taupe); }
.okruszki a { display: inline-flex; align-items: center; min-height: 44px; color: var(--tekst-2); }
.okruszki a:hover { color: var(--braz); }

/* ---------- PIERWSZY EKRAN ---------- */
.hero { position: relative; }
.hero h1, .hero h2 { font-size: clamp(1.9rem, 3.5vw, 3rem); }
.hero .reka { font-size: clamp(3rem, 5.8vw, 5.2rem); }
.hero .lead { margin-bottom: 0; }
.hero__sciezki { display: grid; gap: 10px; margin-top: 28px; }
@media (min-width: 560px) { .hero__sciezki { grid-template-columns: 1fr 1fr; } }
.sciezka { display: block; text-decoration: none; color: var(--grafit); padding: 16px 18px 17px; border: 1px solid var(--grafit); background: transparent; }
.sciezka:hover { background: var(--grafit); color: #fff; }
.sciezka:hover small { color: var(--piasek); }
.sciezka--glowna { background: var(--grafit); color: #fff; }
.sciezka--glowna:hover { background: var(--braz); border-color: var(--braz); }
.sciezka--glowna small { color: var(--piasek) !important; }
.sciezka small { display: block; font: 600 .68rem/1.1 var(--f-etyk); letter-spacing: .18em; text-transform: uppercase; color: var(--braz); margin-bottom: 8px; }
.sciezka strong { font: 400 1rem/1.25 var(--f-nagl); letter-spacing: .1em; text-transform: uppercase; }
.sciezka strong::after { content: "→"; display: inline-block; margin-left: .5em; font-family: var(--f-tekst); letter-spacing: 0; }
.sciezka:hover strong::after { transform: translateX(4px); }

/* wariant A — zdjęcie na całą szerokość, tekst na jasnym polu z cienką ramką */
.hero-a { display: grid; overflow: hidden; background: var(--tlo); padding-bottom: var(--gutter); }
.hero-a > img { width: 100%; height: clamp(300px, 62vh, 560px); object-fit: cover; object-position: 70% 40%; }
.hero-a .hero__tekst { position: relative; z-index: 1; margin: -64px var(--gutter) 0; background: var(--tlo); padding: 34px 26px 28px; }
.hero-a .hero__tekst::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgb(89 72 57 / .22); pointer-events: none; }
@media (min-width: 768px) { .hero-a .hero__tekst { max-width: 620px; padding: 48px 48px 40px; margin-top: -120px; } }
@media (min-width: 1024px) {
  .hero-a { min-height: min(88vh, 860px); align-items: center; background: var(--bez); padding-bottom: 0; }
  .hero-a > img { position: absolute; inset: 0; height: 100%; }
  .hero-a .hero__tekst { max-width: 580px; margin: 72px 0 72px max(var(--gutter), calc((100vw - var(--szer)) / 2 + var(--gutter))); background: rgb(243 243 243 / .94); padding: 56px 54px 50px; }
  .hero-a .hero__tekst::before { inset: 12px; }
}

/* wariant B — pół na pół: tekst na beżu, zdjęcie do krawędzi */
.hero-b { display: grid; background: var(--bez); }
.hero-b > img { order: -1; width: 100%; aspect-ratio: 4/5; max-height: 72vh; object-fit: cover; object-position: 50% 30%; }
.hero-b .hero__tekst { padding: 44px var(--gutter) 60px; max-width: 680px; }
@media (min-width: 1024px) {
  .hero-b { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: min(90vh, 860px); }
  .hero-b > img { order: 0; aspect-ratio: auto; height: 100%; max-height: none; }
  .hero-b .hero__tekst { align-self: center; justify-self: end; max-width: 640px; padding: 80px clamp(40px, 5vw, 96px) 80px var(--gutter); }
}

/* wariant C — odręczne hasło na środku, szeroki kadr pod spodem */
.hero-c { text-align: center; padding-top: clamp(48px, 7vw, 100px); overflow: hidden; }
.hero-c .hero__tekst { max-width: 800px; margin: 0 auto; padding: 0 var(--gutter); }
.hero-c .lead { margin-inline: auto; }
.hero-c .hero__sciezki { max-width: 580px; margin-left: auto; margin-right: auto; text-align: left; }
.hero-c > img { width: 100%; height: clamp(300px, 62vh, 640px); object-fit: cover; object-position: 50% 55%; margin-top: clamp(40px, 5vw, 72px); }

/* ---------- pasek marek ---------- */
.marki { border-block: 1px solid var(--linia); padding: 22px 0; background: var(--tlo); }
.marki__in { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 12px 36px; }
.marki__in p { margin: 0; font: 600 .74rem/1 var(--f-etyk); letter-spacing: .2em; text-transform: uppercase; color: var(--braz); }
.marki__in span { font: 400 1rem/1 var(--f-nagl); letter-spacing: .18em; text-transform: uppercase; color: var(--grafit); }

/* ---------- karty produktów — zaokrąglone (Asi się podobają), cała karta prowadzi do podstrony ---------- */
.karta { position: relative; background: var(--mleko); border-radius: var(--r-karta); overflow: hidden; display: flex; flex-direction: column; border: 1px solid var(--linia); }
.karta__foto { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.karta__foto--pelne { aspect-ratio: auto; object-fit: contain; }
.karta__tresc { background: var(--mleko); padding: 24px 24px 22px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.karta__tresc .etykieta { margin-bottom: .5rem; }
.karta__tresc h3 { margin-bottom: .35em; }
.karta__tresc p { color: var(--tekst-2); font-size: .98rem; }
.karta__cena { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--linia); font: 400 1.38rem/1.1 var(--f-nagl); letter-spacing: .04em; }
.karta__tresc .karta__cena { color: var(--grafit); font-size: 1.38rem; }
.karta__cena small { display: block; margin-top: 4px; font: 400 .82rem/1.3 var(--f-tekst); color: var(--tekst-2); letter-spacing: 0; }
.karta__link { display: inline-flex; align-items: center; gap: .55em; align-self: flex-start; min-height: 44px; margin-top: 4px; font: 400 .84rem/1 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; text-decoration: none; color: var(--braz); }
.karta__link::after { content: "→"; font-family: var(--f-tekst); letter-spacing: 0; }
.karta__tresc > p + .karta__link { margin-top: auto; }
.karta__cena + .karta__link { margin-top: 4px; }
.karta__link::before { content: ""; position: absolute; inset: 0; z-index: 1; }   /* cała karta klikalna */
.karta:has(.karta__link:focus-visible) { outline: 2px solid var(--braz); outline-offset: 3px; }
.karta__link:focus-visible { outline: none; text-decoration: underline; }
/* NOWOŚĆ — Paczka Foto & Video: poziomy układ, brązowy znacznik, przesunięta ramka jak pod zdjęciami */
.karta--nowosc { border: 1px solid var(--braz); box-shadow: var(--ramka) var(--ramka) 0 var(--piasek); margin: 0 var(--ramka) var(--ramka) 0; }
.karta--nowosc .znacznik { position: absolute; top: 16px; left: 16px; z-index: 2; pointer-events: none; }
.karta--nowosc .karta__foto { aspect-ratio: 4/3; }
@media (min-width: 768px) { .s3 > .karta--nowosc, .s4 > .karta--nowosc { grid-column: 1 / -1; } }
@media (min-width: 640px) {
  .karta--nowosc { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); }
  .karta--nowosc .karta__foto { aspect-ratio: auto; height: 100%; min-height: 380px; }
  .karta--nowosc .karta__tresc { padding: 30px 28px 26px; }
}

/* ---------- zdjęcia — bez zaokrągleń, z przesuniętą ramką jak na starej stronie ---------- */
.foto { position: relative; }
.foto img { width: 100%; object-fit: cover; }
.foto--ramka { isolation: isolate; margin: 0 var(--ramka) var(--ramka) 0; }
.foto--ramka::before { content: ""; position: absolute; inset: 0; transform: translate(var(--ramka), var(--ramka)); background: var(--piasek); z-index: -1; }
.sekcja--bez .foto--ramka::before { background: var(--piasek); }
.ar-45 { aspect-ratio: 4/5; }
.ar-34 { aspect-ratio: 3/4; }
.ar-11 { aspect-ratio: 1/1; }

/* ---------- pakiety sesji — panel tekstu + zdjęcie, naprzemiennie ---------- */
.pakiet { display: grid; background: var(--mleko); border: 1px solid var(--linia); margin-bottom: clamp(28px, 4vw, 48px); }
.pakiet__foto { overflow: hidden; }
.pakiet__foto img { width: 100%; height: 100%; aspect-ratio: 4/5; max-height: 70vh; object-fit: cover; }
@media (min-width: 1024px) {
  .pakiet { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .pakiet:nth-of-type(even) > .pakiet__foto { order: -1; }
  .pakiet__foto { min-height: 520px; position: relative; }
  .pakiet__foto img { position: absolute; inset: 0; aspect-ratio: auto; max-height: none; }
}
.pakiet__tekst { padding: clamp(28px, 4.5vw, 60px); }
.pakiet__tekst h3 { margin-bottom: .3em; }
.pakiet__tekst h4 { margin-top: 1.6em; color: var(--braz); }
.ceny { display: grid; gap: 0; margin: 18px 0 8px; border-top: 1px solid var(--linia); }
.ceny div { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; border-bottom: 1px solid var(--linia); padding: 12px 0; font-size: .9rem; text-transform: uppercase; letter-spacing: .06em; }
.ceny b { font: 700 .98rem/1.3 var(--f-nagl); white-space: nowrap; letter-spacing: .04em; }
.pakiet ul, .lista { padding-left: 1.1em; margin: 0 0 1em; }
.pakiet li, .lista li { margin-bottom: .5em; }
.pakiet li::marker, .lista li::marker { color: var(--braz); }

/* ---------- listy, kroki, problemy ---------- */
.lista-ok { list-style: none; padding: 0; margin: 0 0 1em; display: grid; gap: 12px; }
.lista-ok li { padding-left: 30px; position: relative; }
.lista-ok li::before { content: ""; position: absolute; left: 0; top: .85em; width: 16px; height: 1px; background: var(--braz); }
.problem { background: var(--mleko); padding: 30px 28px; border-top: 1px solid var(--braz); position: relative; }
.problem::after { content: ""; position: absolute; top: -1px; left: 0; width: 48px; height: 3px; background: var(--braz); }
.kroki { list-style: none; counter-reset: k; margin: 0; padding: 0; display: grid; gap: 36px; }
@media (min-width: 1024px) { .kroki--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; } }
.kroki li { counter-increment: k; position: relative; padding-top: 80px; }
.kroki li::before { content: counter(k); position: absolute; top: 0; left: 0; font: 400 3.2rem/1 var(--f-reka); color: var(--braz); width: 60px; height: 60px; display: grid; place-items: center; background: var(--mleko); box-shadow: 6px 6px 0 var(--piasek); }
.kroki li::after { content: ""; position: absolute; top: 30px; left: 86px; right: 0; height: 1px; background: var(--linia); }
.sekcja--bez .kroki li::after { background: var(--piasek); }
.cena-duza { font: 400 clamp(2rem, 3.4vw, 2.8rem)/1 var(--f-nagl); letter-spacing: .04em; margin: .5em 0; }
.cena-duza small { font: 400 .95rem/1.3 var(--f-tekst); letter-spacing: 0; color: var(--tekst-2); margin-left: .45em; }
.box-ceny { background: var(--mleko); padding: clamp(26px, 4vw, 48px); border: 1px solid var(--linia); }
.info-zakup h3 { padding-bottom: .7em; border-bottom: 1px solid var(--linia); }
.info-zakup dl { display: grid; grid-template-columns: minmax(0, 10em) minmax(0, 1fr); gap: 10px 18px; margin: 0; font-size: .95rem; }
.info-zakup dt { color: var(--tekst-2); }
.info-zakup dd { margin: 0; }
.program { list-style: none; counter-reset: l; margin: 0; padding: 0; display: grid; gap: 6px; }
.program li { counter-increment: l; display: flex; gap: 18px; align-items: baseline; background: var(--mleko); padding: 15px 20px; }
.program li::before { content: counter(l, decimal-leading-zero); font: 700 .95rem/1 var(--f-nagl); color: var(--braz); letter-spacing: .06em; }

/* ---------- opinie ---------- */
.opinia { margin: 0; background: var(--mleko); padding: 34px 32px 30px; display: flex; flex-direction: column; gap: 16px; align-self: start; position: relative; }
.opinia::before { content: "\201C"; font: 400 4.4rem/.6 var(--f-nagl); color: var(--piasek); height: .34em; }
.opinia blockquote { margin: 0; font-style: italic; font-size: 1.05rem; line-height: 1.7; color: var(--grafit); }
.opinia figcaption { display: flex; align-items: center; gap: .8em; font: 600 .74rem/1.3 var(--f-etyk); letter-spacing: .18em; text-transform: uppercase; color: var(--braz); }
.opinia figcaption::before { content: ""; width: 24px; height: 1px; background: currentColor; }

/* ---------- prawdziwe zdjęcia kontra AI ---------- */
.prawdziwe { display: grid; gap: 40px; }
.prawdziwe > * { min-width: 0; }
@media (min-width: 1024px) { .prawdziwe { grid-template-columns: 5fr 7fr; align-items: center; gap: clamp(48px, 6vw, 96px); } }

/* ---------- portfolio — zakładki bez JavaScriptu (radio + CSS), kolejność galerii Asi, bez „Wszystkie” ---------- */
.zakladki > input { position: absolute; opacity: 0; pointer-events: none; }
.zakladki__menu { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; padding-bottom: 20px; border-bottom: 1px solid var(--linia); }
.zakladki__menu label { cursor: pointer; min-height: 44px; display: inline-flex; align-items: center; padding: 0 20px; border: 1px solid var(--grafit); font: 400 .84rem/1.2 var(--f-nagl); letter-spacing: .16em; text-transform: uppercase; }
.zakladki__menu label:hover { background: var(--bez); }
.zakladki__panel { display: none; }
.zakladki__panel > p { max-width: 46rem; color: var(--tekst-2); margin-bottom: 28px; }
#z1:checked ~ .zakladki__menu label[for="z1"], #z2:checked ~ .zakladki__menu label[for="z2"], #z3:checked ~ .zakladki__menu label[for="z3"], #z4:checked ~ .zakladki__menu label[for="z4"] { background: var(--grafit); color: #fff; }
#z1:checked ~ #p1, #z2:checked ~ #p2, #z3:checked ~ #p3, #z4:checked ~ #p4 { display: block; }
#z1:focus-visible ~ .zakladki__menu label[for="z1"], #z2:focus-visible ~ .zakladki__menu label[for="z2"], #z3:focus-visible ~ .zakladki__menu label[for="z3"], #z4:focus-visible ~ .zakladki__menu label[for="z4"] { outline: 2px solid var(--braz); outline-offset: 3px; }
.galeria { columns: 2 150px; column-gap: 12px; }
@media (min-width: 1024px) { .galeria { columns: 3; column-gap: 18px; } }
.galeria figure { margin: 0 0 12px; break-inside: avoid; overflow: hidden; }
@media (min-width: 1024px) { .galeria figure { margin-bottom: 18px; } }
.galeria img { width: 100%; }
.galeria--podglad img { cursor: zoom-in; }
.wideo-siatka { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 1024px) { .wideo-siatka { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; } }
.wideo-siatka figure { margin: 0; }
/* tło okładki — pliki wideo i okładki nie są w paczce; ramka trzyma proporcje 9:16 / 16:9 */
.wideo-siatka video { width: 100%; aspect-ratio: 9/16; object-fit: cover; background: var(--piasek) linear-gradient(160deg, var(--bez), var(--piasek)); }
.wideo-siatka .poziom { grid-column: span 2; }
.wideo-siatka .poziom video { aspect-ratio: 16/9; }
.wideo-siatka figcaption { font-size: .84rem; color: var(--tekst-2); padding-top: 8px; }

/* ---------- galeria 3×3 w sesjach ---------- */
.kadry { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
@media (min-width: 768px) { .kadry { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } }
.kadry img { width: 100%; aspect-ratio: 4/5; object-fit: cover; }

/* ---------- Instagram — jedno miejsce (prośba Asi) ---------- */
.ig-pas { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid var(--grafit); padding: 24px 28px; margin-top: 32px; }
.ig-pas > div { min-width: 0; }
.ig-pas b { font: 400 1.1rem/1.5 var(--f-nagl); letter-spacing: .06em; text-transform: uppercase; overflow-wrap: anywhere; }
.sekcja--ciemna .ig-pas { border-color: #fff; }

/* ---------- formularze (zaślepki) ---------- */
.formularz { display: grid; gap: 16px; align-content: start; }
.formularz label { display: grid; gap: 7px; font-weight: 600; font-size: .94rem; }
.formularz input, .formularz textarea, .formularz select { width: 100%; min-height: 50px; padding: .75em 1em; border: 1px solid var(--taupe-ciemny); background: var(--mleko); font: 400 1rem/1.4 var(--f-tekst); color: var(--grafit); border-radius: 0; }
.formularz input:focus, .formularz textarea:focus, .formularz select:focus { outline: none; border-color: var(--braz); box-shadow: 0 0 0 3px rgb(89 72 57 / .18); }
.formularz textarea { min-height: 130px; resize: vertical; }
.formularz fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 4px; }
.formularz legend { font-weight: 600; font-size: .94rem; margin-bottom: 6px; }
.formularz .opcja { display: flex; align-items: center; gap: 12px; font-weight: 400; min-height: 44px; }
.formularz .opcja input { width: 20px; min-height: 20px; height: 20px; flex: none; accent-color: var(--braz); box-shadow: none; }
.formularz .btn { justify-self: start; }

/* ---------- pytania i odpowiedzi ---------- */
.faq details { border-bottom: 1px solid var(--linia); }
.faq details:first-of-type { border-top: 1px solid var(--linia); }
.faq summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 44px; padding: 20px 0; font: 400 1.02rem/1.4 var(--f-nagl); letter-spacing: .07em; text-transform: uppercase; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary:hover { color: var(--braz); }
.faq summary::after { content: ""; flex: none; width: 16px; height: 16px; color: var(--braz);
  background: linear-gradient(currentColor, currentColor) center / 16px 1px no-repeat, linear-gradient(currentColor, currentColor) center / 1px 16px no-repeat; }
.faq details[open] summary::after { background-size: 16px 1px, 1px 0; }
.faq details > div { padding: 0 0 22px; color: var(--tekst-2); max-width: 48rem; }

/* ---------- poradnik ---------- */
.wpis { display: grid; gap: 12px; align-content: start; text-decoration: none; color: var(--grafit); overflow: hidden; }
.wpis img { width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.wpis .etykieta { margin: 6px 0 -4px; }
.wpis strong { font: 400 1.05rem/1.4 var(--f-nagl); letter-spacing: .06em; text-transform: uppercase; }
.wpis:hover strong { color: var(--braz); }

/* ---------- warianty (strona do wyboru) ---------- */
.warianty-nav { display: grid; gap: 10px; margin-top: 28px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) { .warianty-nav { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.warianty-nav a { display: flex; align-items: center; gap: 14px; min-height: 64px; padding: 10px 16px; border: 1px solid var(--grafit); color: var(--grafit); text-decoration: none; }
.warianty-nav a:hover { background: var(--grafit); color: #fff; }
.warianty-nav b { font: 400 2rem/1 var(--f-nagl); }
.warianty-nav span { font: 600 .74rem/1.3 var(--f-etyk); letter-spacing: .14em; text-transform: uppercase; }
.wariant-tytul { background: var(--grafit); color: #fff; padding: 16px var(--gutter); font: 600 .8rem/1.4 var(--f-etyk); letter-spacing: .14em; text-transform: uppercase; text-align: center; scroll-margin-top: 90px; }
.wariant-tytul b { display: inline-grid; place-items: center; width: 34px; height: 34px; margin-right: 10px; border: 1px solid var(--piasek); font: 400 1.1rem/1 var(--f-nagl); letter-spacing: 0; vertical-align: middle; }
.wariant-tytul span { display: block; margin-top: 6px; font: 400 .92rem/1.5 var(--f-tekst); letter-spacing: 0; text-transform: none; color: #d8cfc7; }
.logo-propozycje { display: grid; gap: 20px; }
@media (min-width: 900px) { .logo-propozycje { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.logo-propozycje > div { background: var(--mleko); padding: 36px 24px 24px; text-align: center; display: grid; gap: 12px; justify-items: center; align-content: start; }
.l1 { font: 400 1.6rem/1.1 var(--f-nagl); letter-spacing: .24em; text-transform: uppercase; }
.l2 { font: 500 2.1rem/1.1 "Cormorant Garamond", Georgia, serif; letter-spacing: .05em; }
.l3 { font: 400 1.9rem/1.1 "Italiana", Georgia, serif; letter-spacing: .14em; text-transform: uppercase; }
.l1, .l2, .l3 { margin-top: 18px; }
.l-pod { font: 600 .62rem/1 var(--f-etyk); letter-spacing: .24em; text-transform: uppercase; color: var(--braz); margin-bottom: 24px; }
.logo-proba { width: 100%; display: grid; gap: 8px; text-align: left; }
.logo-proba small { font: 600 .68rem/1 var(--f-etyk); letter-spacing: .16em; text-transform: uppercase; color: var(--tekst-2); margin-top: 6px; }
.logo-proba__pasek { display: flex; align-items: center; justify-content: space-between; gap: 12px; background: var(--tlo); border: 1px solid var(--linia); padding: 10px 14px; min-width: 0; }
.logo-proba__pasek--stopka { background: var(--piasek); border-color: var(--piasek); }
.logo-proba__pasek i { font: 400 .68rem/1 var(--f-nagl); font-style: normal; letter-spacing: .14em; text-transform: uppercase; border: 1px solid var(--grafit); padding: 9px 10px; flex: none; }
.logo-proba .logo b { font-size: 1rem; letter-spacing: .16em; }
.logo-proba .logo--l2 b { font-size: 1.28rem; letter-spacing: .02em; }
.logo-proba .logo--l3 b { font-size: 1.08rem; letter-spacing: .12em; }
.logo-proba .logo span { font-size: .52rem; letter-spacing: .14em; }

/* ---------- stopka ---------- */
.stopka { background: var(--piasek); color: var(--grafit); padding: clamp(56px, 7vw, 88px) 0 24px; font-size: .95rem; }
.stopka a { color: var(--grafit); }
.stopka a:hover { color: var(--braz); }
.stopka .maly { color: var(--grafit); }
.stopka h2 { font: 400 .85rem/1 var(--f-nagl); letter-spacing: .2em; color: var(--grafit); margin-bottom: 10px; padding-bottom: 12px; border-bottom: 1px solid rgb(40 38 37 / .2); }
.stopka ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.stopka ul a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.stopka ul a:hover { text-decoration: underline; }
.stopka__gora { display: grid; gap: 36px; }
@media (min-width: 768px) { .stopka__gora { grid-template-columns: 1.4fr 1fr 1fr; } }
@media (min-width: 1024px) { .stopka__gora { grid-template-columns: 1.5fr 1fr 1.1fr 1.4fr; gap: 48px; } }
.stopka__gora > * { min-width: 0; }
.stopka .logo b { font-size: 1.22rem; }
.stopka__gora ul a[href^="https://www.instagram"] { overflow-wrap: anywhere; }
.rodzina { margin-top: 48px; padding-top: 28px; border-top: 1px solid rgb(40 38 37 / .2); display: grid; gap: 12px; }
@media (min-width: 768px) { .rodzina { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.rodzina a { display: block; text-decoration: none; padding: 18px 20px; background: rgb(255 255 255 / .45); border: 1px solid transparent; }
.rodzina a:hover { background: rgb(255 255 255 / .82); border-color: rgb(89 72 57 / .25); color: var(--grafit); }
.rodzina b { display: block; font: 700 .92rem/1.3 var(--f-tekst); margin-bottom: 4px; }
.rodzina span { font-size: .88rem; color: var(--tekst-2); }
.stopka__dol { margin-top: 28px; padding-top: 14px; border-top: 1px solid rgb(40 38 37 / .2); display: flex; flex-wrap: wrap; gap: 4px 24px; justify-content: space-between; align-items: center; font-size: .85rem; }
.stopka__dol ul { display: flex; flex-wrap: wrap; gap: 0 20px; }
.design-by { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; text-decoration: none; }
.design-by img { height: 16px; width: auto; background: #fff; padding: 6px 9px; box-sizing: content-box; }

/* ---------- podgląd zdjęcia (portfolio; tworzy animacje.js) ---------- */
.podglad { padding: 0; border: 0; background: transparent; max-width: min(92vw, 1200px); max-height: 92vh; overflow: visible; }
.podglad::backdrop { background: rgb(40 38 37 / .9); }
.podglad img { max-width: 100%; max-height: 88vh; width: auto; height: auto; margin: 0 auto; }
.podglad__zamknij { position: absolute; top: 12px; right: 12px; z-index: 1; width: 44px; height: 44px; border: 1px solid #fff; background: rgb(40 38 37 / .72); color: #fff; font: 300 1.6rem/1 var(--f-tekst); cursor: pointer; }
.podglad__zamknij:focus-visible { outline-color: #fff; }

@media print {
  .notka-makiety, .menu, .menu-tel, .pasek { position: static; }
  .wejscie { opacity: 1 !important; transform: none !important; }
}

/* =====================================================================
   RUCH — tylko gdy użytkownik nie prosi o ograniczenie animacji.
   200–700 ms; zdjęcie pierwszego ekranu: powolne przybliżenie 8 s, bez pętli.
   ===================================================================== */
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
  .btn, .sciezka, .karta__link, .menu a, .zakladki__menu label, .rodzina a, .warianty-nav a, .faq summary, a { transition: background-color .3s ease, color .3s ease, border-color .3s ease; }
  .menu a:not(.btn)::after { transition: transform .35s var(--ease); }
  .sciezka strong::after, .karta__link::after { transition: transform .35s var(--ease); }
  .pasek { transition: border-color .4s ease, box-shadow .4s ease, margin .4s var(--ease); }
  .pasek__in { transition: min-height .4s var(--ease); }
  .faq summary::after { transition: background-size .3s var(--ease); }

  /* pierwszy ekran */
  @keyframes ab-przyblizenie { from { transform: scale(1); } to { transform: scale(1.06); } }
  @keyframes ab-wejscie { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
  @keyframes ab-zanik { from { opacity: 0; } to { opacity: 1; } }
  .hero-a > img { animation: ab-przyblizenie 8s cubic-bezier(.25, .6, .3, 1) both; transform-origin: 60% 45%; }
  .hero-b > img, .hero-c > img { animation: ab-zanik .9s ease both; }
  .hero-a .hero__tekst { animation: ab-zanik .6s ease .1s both; }
  .hero__tekst > * { animation: ab-wejscie .7s var(--ease) both; }
  .hero__tekst > :nth-child(1) { animation-delay: .15s; }
  .hero__tekst > :nth-child(2) { animation-delay: .25s; }
  .hero__tekst > :nth-child(3) { animation-delay: .35s; }
  .hero__tekst > :nth-child(4) { animation-delay: .45s; }

  /* karty, zdjęcia, kafle — najechanie */
  @media (hover: hover) {
    .karta { transition: transform .5s var(--ease), box-shadow .5s var(--ease); }
    .karta:hover { transform: translateY(-4px); box-shadow: var(--cien); }
    /* v5 (Asia 23.10): Paczka po najechaniu zachowuje się jak pozostałe karty — bez dodatkowego beżowego tła */
    .karta:hover .karta__link::after, .sciezka:hover strong::after { transform: translateX(5px); }
    .wpis img, .galeria img, .pakiet__foto img { transition: transform 1.2s var(--ease), opacity .4s ease; }
    .wpis:hover img, .galeria--podglad figure:hover img { transform: scale(1.03); }
    .rodzina a { transition: background-color .35s ease, border-color .35s ease, transform .35s var(--ease); }
    .rodzina a:hover { transform: translateY(-2px); }
  }

  /* wejścia przy przewijaniu — klasy dodaje animacje.js tylko elementom poniżej ekranu */
  .wejscie { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s var(--ease); transition-delay: var(--opoz, 0ms); }
  .wejscie.widoczne { opacity: 1; transform: none; }
  @media (min-width: 1024px) {
    .wejscie--lewo { transform: translateX(-24px); }
    .wejscie--prawo { transform: translateX(24px); }
  }
  .foto--ramka::before { transition: transform .7s var(--ease) .2s; }
  .foto--ramka.wejscie:not(.widoczne)::before { transform: none; }

  /* zakładki portfolio — łagodne przenikanie */
  @keyframes ab-panel { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
  #z1:checked ~ #p1, #z2:checked ~ #p2, #z3:checked ~ #p3, #z4:checked ~ #p4 { animation: ab-panel .5s var(--ease) both; }

  /* menu telefonu, podgląd zdjęcia */
  .menu-tel[open] nav { animation: ab-wejscie .35s var(--ease) both; }
  .podglad[open] { animation: ab-zanik .3s ease both; }
  .podglad[open]::backdrop { animation: ab-zanik .3s ease both; }

  /* pytania — płynne rozwijanie tam, gdzie przeglądarka to obsługuje */
  @supports (interpolate-size: allow-keywords) {
    .faq { interpolate-size: allow-keywords; }
    .faq details::details-content { block-size: 0; overflow: hidden; transition: block-size .4s var(--ease), content-visibility .4s allow-discrete; }
    .faq details[open]::details-content { block-size: auto; }
  }
}

/* =====================================================================
   v4 — uwagi Asi z 22.10.2026 (dokumenty/Asia-05-odpowiedzi-Asi-20261022.md).
   Kolor przycisków/haseł czeka na wybór z kolory.html (K1/K2/K3) — tu tylko to, o co Asia poprosiła wprost.
   ===================================================================== */
:root { --roz-jasny: #fdeef0; }

/* pkt 1 — pierwszy ekran B, wysokość ograniczona (nie do wysokości zdjęcia) */
.hero-b--niski > img { max-height: 56vh; aspect-ratio: 4/3; }
@media (min-width: 1024px) {
  .hero-b--niski { min-height: 0; height: auto; overflow: hidden; align-items: center; }
  .hero-b--niski > img { height: clamp(520px, 72vh, 660px); max-height: none; aspect-ratio: auto; object-position: 50% 25%; }
  .hero-b--niski .hero__tekst { padding-top: 40px; padding-bottom: 40px; }
}

/* pkt 4 — bez przesuniętej ramki pod zdjęciami (wszędzie) */
.foto--ramka { margin: 0; }
.foto--ramka::before { display: none; }

/* pkt 4/8 — „Nowość”: różowy znacznik, zwykła karta (bez ciemnej obwódki, bez tła pod spodem, nie na cały wiersz) */
.znacznik, .znacznik--roz { background: var(--roz); color: var(--grafit); }
.karta--nowosc { border: 1px solid var(--piasek); box-shadow: none; margin: 0; }
@media (min-width: 768px) { .s3 > .karta--nowosc, .s4 > .karta--nowosc { grid-column: auto; } }
@media (min-width: 640px) {
  .karta--nowosc { display: flex; }
  .karta--nowosc .karta__foto { aspect-ratio: 4/3; height: auto; min-height: 0; }
  .karta--nowosc .karta__tresc { padding: 24px 22px; }
}

/* pkt 7 — „Zróbmy coś razem”: mniejszy, spokojny pas w jasnym różu (bez brązu) */
.cta-roz { background: var(--roz-jasny); padding: clamp(32px, 4vw, 48px) 0; }
.cta-roz__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 40px; }
.cta-roz h2 { font-size: clamp(1.1rem, 1.7vw, 1.4rem); margin: .1em 0 .35em; }
.cta-roz p { margin: 0; color: var(--tekst-2); }
.reka--mala { font-size: clamp(1.8rem, 3vw, 2.4rem); color: var(--grafit); }

/* pkt 5 — „Informacje przed zakupem” zwinięte niżej; drugie zdjęcie przy cenie / pod ceną */
.sekcja--waska { padding: 8px 0 48px; }
.info-zakup { border-top: 1px solid var(--linia); border-bottom: 1px solid var(--linia); }
.info-zakup summary { cursor: pointer; list-style: none; min-height: 52px; display: flex; align-items: center; justify-content: space-between; font: 400 .88rem/1.3 var(--f-nagl); letter-spacing: .14em; text-transform: uppercase; }
.info-zakup summary::-webkit-details-marker { display: none; }
.info-zakup summary::after { content: "+"; font: 300 1.4rem/1 var(--f-tekst); color: var(--grafit); }
.info-zakup[open] summary::after { content: "–"; }
.info-zakup dl { padding: 4px 0 20px; }
.box-ceny__foto { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; margin-top: 24px; }

/* pkt 9 — Fotografia: pionowe karty pakietów z cenami przy usłudze i rozwijanymi szczegółami; Paczka w poziomie */
.pakiet-v4 { position: relative; background: var(--mleko); border: 1px solid var(--linia); border-radius: var(--r-karta); overflow: hidden; display: flex; flex-direction: column; }
.pakiet-v4__foto { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.pakiet-v4__tresc { padding: 24px 22px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.pakiet-v4 h3 { font-size: clamp(1.05rem, 1.4vw, 1.2rem); }
.pakiet-v4 .ceny { margin: 8px 0 6px; }
.szczegoly { border-top: 1px solid var(--linia); margin-top: 6px; }
.szczegoly summary { cursor: pointer; list-style: none; min-height: 46px; display: flex; align-items: center; justify-content: space-between; font: 400 .82rem/1 var(--f-nagl); letter-spacing: .14em; text-transform: uppercase; }
.szczegoly summary::-webkit-details-marker { display: none; }
.szczegoly summary::after { content: "+"; font: 300 1.3rem/1 var(--f-tekst); }
.szczegoly[open] summary::after { content: "–"; }
.szczegoly .lista { font-size: .95rem; color: var(--tekst-2); }
.pakiet-v4 .karta__link { margin-top: auto; }
.pakiet-v4--poziom { margin-top: 28px; }
.pakiet-v4--poziom .znacznik { position: absolute; top: 16px; left: 16px; z-index: 2; }
@media (min-width: 900px) {
  .pakiet-v4--poziom { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .pakiet-v4--poziom .pakiet-v4__foto { aspect-ratio: auto; height: 380px; object-position: 50% 30%; }
  .pakiet-v4--poziom .pakiet-v4__tresc { padding: 32px 30px; }
}

/* pkt 2 — wycinek kolorów (kolory.html): K0 = dziś, K1/K2/K3 = propozycje z różem */
.kolory { padding: 40px 0; border-top: 1px solid var(--linia); }
.kolory__opis { max-width: 46rem; margin-bottom: 18px; }
.kolory__opis h2 { font-size: clamp(1.15rem, 1.6vw, 1.35rem); }
.kolory__plansza { display: grid; gap: 28px; background: var(--bez); padding: clamp(18px, 3vw, 32px); }
@media (min-width: 900px) { .kolory__plansza { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); align-items: center; } }
.karta--probka .znacznik { position: absolute; top: 14px; left: 14px; z-index: 2; }
.kolory--k0 .znacznik { background: var(--braz); color: #fff; }
.kolory--k1 .btn { background: var(--roz); border-color: var(--roz); color: var(--grafit); border-radius: 999px; }
.kolory--k1 .btn:hover { background: #ee8e98; border-color: #ee8e98; color: var(--grafit); }
.kolory--k1 .btn--jasny { background: transparent; border-color: var(--roz); }
.kolory--k1 .reka { color: var(--roz); }
.kolory--k1 .etykieta, .kolory--k1 .karta__link { color: var(--grafit); }
.kolory--k1 .etykieta::before { background: var(--roz); height: 2px; }
.kolory--k2 .btn { background: var(--piasek); border-color: var(--piasek); color: var(--grafit); border-radius: 999px; }
.kolory--k2 .btn:hover { background: var(--roz); border-color: var(--roz); color: var(--grafit); }
.kolory--k2 .btn--jasny { background: transparent; border-color: var(--piasek); }
.kolory--k2 .reka, .kolory--k2 .etykieta, .kolory--k2 .karta__link { color: var(--grafit); }
.kolory--k2 .etykieta::before { background: var(--roz); height: 2px; }
.kolory--k3 .btn { background: #fff; border: 2px solid var(--roz); color: var(--grafit); border-radius: 999px; }
.kolory--k3 .btn:hover { background: var(--roz); border-color: var(--roz); color: var(--grafit); }
.kolory--k3 .btn--jasny { border-color: var(--linia); }
.kolory--k3 .reka { color: var(--roz); }
.kolory--k3 .etykieta, .kolory--k3 .karta__link { color: var(--grafit); }

/* =====================================================================
   v5 — kolor K2 wybrany przez Asię (22.10 wieczorem): przyciski w jasnym, ciepłym beżu (--piasek), zaokrąglone,
   róż (--roz) w akcentach i po najechaniu; brązu w kolorach nie ma. Drobny tekst ciemny (czytelność).
   ===================================================================== */
:root { --bez-cta: #ebe1d8; }
a { color: var(--grafit); text-decoration-color: var(--roz); text-decoration-thickness: 2px; }
a:hover { color: var(--grafit); text-decoration-color: var(--grafit); }
.btn, .btn--jasny { border-radius: 999px; color: var(--grafit); }
.btn { background: var(--piasek); border-color: var(--piasek); }
.btn--jasny { background: transparent; border-color: var(--piasek); }
.btn:hover, .btn--jasny:hover { background: var(--roz); border-color: var(--roz); color: var(--grafit); }
.menu .btn { color: var(--grafit); }
.reka, .etykieta, .karta__link, .sciezka small, .marki__in p, .logo span, .opinia figcaption, .l-pod, .program li::before, .pakiet__tekst h4 { color: var(--grafit); }
.etykieta::before, .srodek .etykieta::after, .hero-c .etykieta::after { background: var(--roz); height: 2px; }
.opinia figcaption::before { background: var(--roz); height: 2px; }
.menu a:not(.btn)::after { background: var(--roz); height: 2px; }
.menu a:hover, .menu a[aria-current="page"], .menu-tel a[aria-current="page"], .okruszki a:hover, .stopka a:hover, .wpis:hover strong, .faq summary:hover { color: var(--grafit); }
.sciezka { border-color: var(--piasek); border-radius: 18px; }
.sciezka:hover { background: var(--roz); border-color: var(--roz); color: var(--grafit); }
.sciezka:hover small { color: var(--grafit); }
.sciezka--glowna { background: var(--piasek); color: var(--grafit); }
.sciezka--glowna small { color: var(--grafit) !important; }
.problem { border-top-color: var(--piasek); }
.problem::after, .lista-ok li::before { background: var(--roz); }
.lista-ok li::before { height: 2px; }
.pakiet li::marker, .lista li::marker { color: var(--roz); }
.kroki li::before { color: var(--roz); }
.faq summary::after { color: var(--roz); }
.zakladki__menu label { border-color: var(--piasek); border-radius: 999px; }
.zakladki__menu label:hover { background: var(--bez-cta); }
#z1:checked ~ .zakladki__menu label[for="z1"], #z2:checked ~ .zakladki__menu label[for="z2"], #z3:checked ~ .zakladki__menu label[for="z3"], #z4:checked ~ .zakladki__menu label[for="z4"] { background: var(--piasek); border-color: var(--piasek); color: var(--grafit); }
.formularz .opcja input { accent-color: var(--grafit); }

/* pkt 7 — pas „Zróbmy coś razem”: cienki, spokojny, w ciepłym beżu (jasny róż Asi nie pasował) */
.cta-roz { background: var(--bez-cta); padding: clamp(26px, 3vw, 36px) 0; }
.cta-roz .btn { background: var(--mleko); border-color: var(--mleko); }
.cta-roz .btn:hover { background: var(--roz); border-color: var(--roz); }

/* pkt 4 — główna: 3 sesje obok siebie, większe zdjęcia; Paczka w poziomie pod nimi */
.karta--sesja .karta__foto { aspect-ratio: 4/5; }
.sekcja .pakiet-v4--poziom .karta__cena { margin-top: 6px; }

/* pkt 9 — „Szczegóły pakietu” rozwijają się w miejscu: link „Zapytaj o termin” nie przykrywa już całej karty */
.pakiet-v4 .karta__link::before { content: none; }
.szczegoly summary:hover { color: var(--grafit); text-decoration: underline; text-decoration-color: var(--roz); text-decoration-thickness: 2px; }
@media (prefers-reduced-motion: no-preference) {
  .szczegoly { interpolate-size: allow-keywords; }
  .szczegoly::details-content { block-size: 0; overflow: hidden; transition: block-size .45s var(--ease), content-visibility .45s allow-discrete; }
  .szczegoly[open]::details-content { block-size: auto; }
}

/* uwaga Asi 2 — mentoring, strategia, sesje: cena + zdjęcie obok (jak w pozostałych), formularz pod spodem na szerokość, w dwóch kolumnach */
/* górna część = ten sam układ co Konsultacja / Workbook / Szkolenie (cena | pionowe zdjęcie 4:5) */
.zamow-formularz { margin-top: clamp(24px, 3vw, 40px); background: var(--mleko); border: 1px solid var(--linia); padding: clamp(24px, 4vw, 48px); }
.zamow-formularz h3 { margin-bottom: 1rem; }
@media (min-width: 900px) {
  .zamow-formularz .formularz { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(28px, 4vw, 56px); row-gap: 18px; }
  .zamow-formularz .formularz > :nth-last-child(-n+4) { grid-column: 1 / -1; }
}

/* pkt 11 — kontakt z kolorem: dane w ciepłym beżu, formularz na białym */
.kontakt-v5 { align-items: stretch; }
.kontakt-v5__dane { background: var(--bez-cta); padding: clamp(24px, 4vw, 44px); }
.kontakt-v5__dane .ig-pas { border-color: var(--piasek); background: var(--mleko); border-radius: 14px; }
.kontakt-v5__formularz { background: var(--mleko); border: 1px solid var(--linia); padding: clamp(24px, 4vw, 44px); }

/* =====================================================================
   v5 / 23.10 — propozycje pierwszego ekranu W1–W3 (index-w1/w2/w3.html). Wysokość: zmieści się z paskiem marek
   na laptopie 1366×768 (bez przewijania samego zdjęcia), na dużym ekranie najwyżej 600 px.
   ===================================================================== */
:root { --hero-wys: clamp(480px, calc(100vh - 180px), 600px); }
.hero-w1, .hero-w2, .hero-w3 { display: grid; background: var(--bez); }
.hero-w1 > img, .hero-w2 > img, .hero-w3 > img { order: -1; width: 100%; aspect-ratio: 4/3; height: auto; object-fit: cover; object-position: 74% 30%; }   /* telefon: kadr na Asię */
.hero-w3 > img { object-position: 62% 30%; }
.hero-w2 > img { object-position: 80% 30%; }
.hero-w1 .hero__tekst, .hero-w2 .hero__tekst, .hero-w3 .hero__tekst { padding: 36px var(--gutter) 48px; max-width: 640px; }
.hero-w2__in, .hero-w3__in { padding: 0; }
@media (min-width: 1024px) {
  /* W1 — tekst 5/12, zdjęcie 7/12 */
  .hero-w1 { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); min-height: var(--hero-wys); }
  .hero-w1 > img { order: 0; height: 100%; min-height: var(--hero-wys); aspect-ratio: auto; object-position: 72% 30%; }
  .hero-w1 .hero__tekst { align-self: center; justify-self: end; padding: 32px clamp(32px, 4vw, 72px) 32px max(var(--gutter), calc((100vw - var(--szer)) / 2 + var(--gutter))); }
  /* W2 — zdjęcie na całą szerokość, tekst bezpośrednio na jasnej ścianie po lewej */
  .hero-w2, .hero-w3 { position: relative; min-height: var(--hero-wys); overflow: hidden; align-items: center; }
  .hero-w2 > img, .hero-w3 > img { position: absolute; inset: 0; height: 100%; aspect-ratio: auto; }
  .hero-w2 > img { object-position: 50% 25%; }
  .hero-w2::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(239 233 228 / .78) 0%, rgb(239 233 228 / .45) 38%, rgb(239 233 228 / 0) 55%); pointer-events: none; }
  .hero-w2__in, .hero-w3__in { position: relative; z-index: 1; width: 100%; padding: 0 var(--gutter); }
  .hero-w2 .hero__tekst { padding: 28px 0; max-width: 540px; }
  /* W3 — jak v2: tekst w jasnej ramce na zdjęciu, ale niżej */
  .hero-w3 > img { object-position: 50% 4%; }   /* 6.png: głowa przy górnej krawędzi — kadr od góry */
  .hero-w3 .hero__tekst { position: relative; max-width: 560px; margin: 28px 0; background: rgb(243 243 243 / .93); padding: 36px 40px 32px; }
  .hero-w3 .hero__tekst::before { content: ""; position: absolute; inset: 10px; border: 1px solid var(--piasek); pointer-events: none; }
  .hero-w1 .hero__sciezki, .hero-w2 .hero__sciezki, .hero-w3 .hero__sciezki { margin-top: 22px; }
}
@media (min-width: 1024px) and (max-height: 820px) {   /* laptop: tekst nieco mniejszy, żeby zmieścił się w niższym pierwszym ekranie */
  :is(.hero-w1, .hero-w2, .hero-w3) .lead { font-size: 1rem; line-height: 1.55; }
  :is(.hero-w1, .hero-w2, .hero-w3) .reka { font-size: clamp(2.4rem, 4vw, 3.4rem); }
  :is(.hero-w1, .hero-w2, .hero-w3) h1 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
  :is(.hero-w1, .hero-w2, .hero-w3) .etykieta { margin-bottom: .6rem; }
  :is(.hero-w1, .hero-w2, .hero-w3) .hero__sciezki { margin-top: 16px; }
  :is(.hero-w1, .hero-w2, .hero-w3) .sciezka { padding: 12px 16px 13px; }
}
@media (prefers-reduced-motion: no-preference) {
  .hero-w1 > img, .hero-w2 > img, .hero-w3 > img { animation: ab-zanik .9s ease both; }
}

/* ===== WordPress (Asia 07) ===== */
.formularz__pulapka { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.formularz__komunikat { padding: 16px 18px; border-radius: 12px; margin: 0 0 18px; font-weight: 600; }
.formularz__komunikat--ok { background: #eef6ee; border: 1px solid #b9d7b9; }
.formularz__komunikat--blad { background: #fdeef0; border: 1px solid var(--roz); }
.admin-bar .pasek { top: 32px; }
@media (max-width: 782px) { .admin-bar .pasek { top: 46px; } }
.wp-tresc { padding-top: 28px; }
.wp-tresc { padding-bottom: 48px; }
/* okienko cookies (wtyczka Cookie Notice) w kolorach K2 — wtyczka wpisuje kolory w style elementu, stąd !important */
#cookie-notice { background: var(--bez-cta) !important; color: var(--grafit) !important; font-family: var(--f-tekst) !important; box-shadow: 0 -10px 30px -20px rgb(40 38 37 / .35); }
#cookie-notice .cn-text-container { color: var(--grafit) !important; font-size: .92rem; line-height: 1.5; }
#cookie-notice .cn-button { background: var(--piasek) !important; color: var(--grafit) !important; border: 1px solid var(--piasek) !important; border-radius: 999px !important;
  font: 600 .74rem/1 var(--f-etyk) !important; letter-spacing: .14em !important; text-transform: uppercase; padding: .9em 1.4em !important; min-height: 40px; }
#cookie-notice .cn-button:hover, #cookie-notice .cn-button:focus-visible { background: var(--roz) !important; border-color: var(--roz) !important; }
#cookie-notice #cn-more-info { background: transparent !important; }
#cookie-notice .cn-close-icon::before, #cookie-notice .cn-close-icon::after { background-color: var(--grafit) !important; }
.wp-tresc .elementor { max-width: 100%; }
