/* CasaAqui — katalog szablonów. Każdy szablon = tokeny (kolory, czcionki, promienie) + wariant hero (body[data-hero]).
   Kolor biura: --kolor-biura (z panelu). Szablon może narzucić własny akcent (np. złoto), wtedy ustawia --akcent. */
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2"); font-weight: 500; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-latin-ext-500-normal.woff2) format("woff2"); font-weight: 500; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-cyrillic-500-normal.woff2) format("woff2"); font-weight: 500; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2"); font-weight: 600; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-latin-ext-600-normal.woff2) format("woff2"); font-weight: 600; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Cormorant"; src: url(/static/fonts/cormorant-garamond-cyrillic-600-normal.woff2) format("woff2"); font-weight: 600; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Playfair"; src: url(/static/fonts/playfair-display-latin-wght-normal.woff2) format("woff2"); font-weight: 400 900; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Playfair"; src: url(/static/fonts/playfair-display-latin-ext-wght-normal.woff2) format("woff2"); font-weight: 400 900; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Playfair"; src: url(/static/fonts/playfair-display-cyrillic-wght-normal.woff2) format("woff2"); font-weight: 400 900; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "DMSerif"; src: url(/static/fonts/dm-serif-display-latin-400-normal.woff2) format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "DMSerif"; src: url(/static/fonts/dm-serif-display-latin-ext-400-normal.woff2) format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Manrope"; src: url(/static/fonts/manrope-latin-wght-normal.woff2) format("woff2"); font-weight: 200 800; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Manrope"; src: url(/static/fonts/manrope-latin-ext-wght-normal.woff2) format("woff2"); font-weight: 200 800; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Manrope"; src: url(/static/fonts/manrope-cyrillic-wght-normal.woff2) format("woff2"); font-weight: 200 800; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }

@font-face { font-family: "Unbounded"; src: url(/static/fonts/unbounded-latin-wght-normal.woff2) format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Unbounded"; src: url(/static/fonts/unbounded-latin-ext-wght-normal.woff2) format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Unbounded"; src: url(/static/fonts/unbounded-cyrillic-wght-normal.woff2) format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-latin-wght-normal.woff2) format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-latin-ext-wght-normal.woff2) format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-cyrillic-wght-normal.woff2) format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-latin-wght-italic.woff2) format("woff2"); font-weight: 400 700; font-style: italic; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-latin-ext-wght-italic.woff2) format("woff2"); font-weight: 400 700; font-style: italic; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Lora"; src: url(/static/fonts/lora-cyrillic-wght-italic.woff2) format("woff2"); font-weight: 400 700; font-style: italic; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Forum"; src: url(/static/fonts/forum-latin-400-normal.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212, U+FEFF; }
@font-face { font-family: "Forum"; src: url(/static/fonts/forum-latin-ext-400-normal.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0100-02AF, U+1E00-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Forum"; src: url(/static/fonts/forum-cyrillic-400-normal.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }

/* ───────── LUJO ───────── */
body[data-szablon="noir"] {
  --tlo: #0c0b09; --tlo2: #15130f; --karta: #17150f; --tekst: #f3ede1; --szary: #a99f8c; --linia: rgba(201,164,92,.18); --akcent: #c9a45c;
  --naglowek-font: "Cormorant", "Playfair", Georgia, serif; --font: "Manrope", "Jakarta", sans-serif; --r: 4px;
  --cien: 0 0 0 1px rgba(201,164,92,.10), 0 24px 60px -24px rgba(0,0,0,.7);
}
body[data-szablon="noir"] h1, body[data-szablon="noir"] h2 { font-weight: 500; letter-spacing: .01em; }
body[data-szablon="noir"] .hero h1 { font-size: clamp(44px, 7vw, 92px); text-transform: uppercase; letter-spacing: .06em; }
body[data-szablon="noir"] .cena { color: var(--akcent); }
body[data-szablon="noir"] .guzik:not(.drugi):not(.wa) { background: var(--akcent); color: #0c0b09; }
body[data-szablon="noir"]::after { mix-blend-mode: screen; opacity: .03; }

body[data-szablon="riviera"] {
  --tlo: #ffffff; --tlo2: #f3f5f8; --karta: #ffffff; --tekst: #0d1b2a; --szary: #5b6675; --linia: rgba(13,27,42,.10);
  --naglowek-font: "Playfair", Georgia, serif; --font: "Manrope", "Jakarta", sans-serif; --r: 2px;
}
body[data-szablon="riviera"] h1, body[data-szablon="riviera"] h2 { font-weight: 500; font-style: italic; }
body[data-szablon="riviera"] .karta { padding: 0; background: transparent; border: 0; }
body[data-szablon="riviera"] .karta a.obraz { border-radius: 0; }
body[data-szablon="riviera"] .chip, body[data-szablon="riviera"] .guzik { border-radius: 0; letter-spacing: .08em; text-transform: uppercase; font-size: 13px; }

body[data-szablon="marmur"] {
  --tlo: #f7f5f2; --tlo2: #ece8e1; --karta: #ffffff; --tekst: #262321; --szary: #77706a; --linia: rgba(38,35,33,.10); --akcent: #8a7650;
  --naglowek-font: "Cormorant", Georgia, serif; --font: "Manrope", sans-serif; --r: 0px;
}
body[data-szablon="marmur"] h1, body[data-szablon="marmur"] h2 { font-weight: 600; letter-spacing: .02em; }
body[data-szablon="marmur"] .hero h1 { font-size: clamp(46px, 7vw, 96px); }

/* ───────── MEDITERRÁNEO ───────── */
body[data-szablon="egeo"] {
  --tlo: #f8fbfd; --tlo2: #e7f0f7; --karta: #ffffff; --tekst: #0f2a43; --szary: #567089; --linia: rgba(15,42,67,.10); --akcent: #1d6fb8;
  --naglowek-font: "DMSerif", Georgia, serif; --font: "Manrope", sans-serif; --r: 26px;
}
body[data-szablon="egeo"] h1, body[data-szablon="egeo"] h2 { font-weight: 400; }

body[data-szablon="oliwka"] {
  --tlo: #f7f6ef; --tlo2: #e9e8da; --karta: #fffef8; --tekst: #2b3020; --szary: #6b705a; --linia: rgba(60,70,40,.14); --akcent: #6b7a3c;
  --naglowek-font: "Fraunces", Georgia, serif; --font: "Jakarta", sans-serif; --r: 18px;
}

/* ───────── MODERNO ───────── */
body[data-szablon="minimal"] {
  --tlo: #ffffff; --tlo2: #f4f4f4; --karta: #ffffff; --tekst: #111111; --szary: #6b6b6b; --linia: rgba(0,0,0,.09); --akcent: #111111;
  --naglowek-font: "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 0px; --cien: none;
}
body[data-szablon="minimal"] h1, body[data-szablon="minimal"] h2 { font-weight: 800; letter-spacing: -.04em; }
body[data-szablon="minimal"] .hero h1 { font-size: clamp(44px, 8vw, 110px); }
body[data-szablon="minimal"] .karta { background: transparent; border: 0; padding: 0; }
body[data-szablon="minimal"]::after { display: none; }

body[data-szablon="grafit"] {
  --tlo: #eef0f3; --tlo2: #e2e5ea; --karta: #ffffff; --tekst: #1c2129; --szary: #5e6673; --linia: rgba(28,33,41,.10); --akcent: #2f6bff;
  --naglowek-font: "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 14px;
}
body[data-szablon="grafit"] h1, body[data-szablon="grafit"] h2 { font-weight: 700; letter-spacing: -.03em; }

/* ───────── COSTA ───────── */
body[data-szablon="piasek"] {
  --tlo: #fbf6ee; --tlo2: #f1e6d4; --karta: #fffcf7; --tekst: #2f2a24; --szary: #7a6e60; --linia: rgba(120,95,60,.14); --akcent: #0f9b9b;
  --naglowek-font: "DMSerif", Georgia, serif; --font: "Jakarta", sans-serif; --r: 30px;
}
body[data-szablon="koral"] {
  --tlo: #fffaf7; --tlo2: #fdeee8; --karta: #ffffff; --tekst: #2c1f1b; --szary: #7d655d; --linia: rgba(210,100,80,.16); --akcent: #e0644a;
  --naglowek-font: "Playfair", Georgia, serif; --font: "Jakarta", sans-serif; --r: 24px;
}

/* ───────── CLÁSICO ───────── */
body[data-szablon="hacjenda"] {
  --tlo: #f6efe4; --tlo2: #ebdfcb; --karta: #fffaf1; --tekst: #34221a; --szary: #7b6555; --linia: rgba(110,60,40,.16); --akcent: #7d2e2e;
  --naglowek-font: "Playfair", Georgia, serif; --font: "Jakarta", sans-serif; --r: 8px;
}
body[data-szablon="nordycki"] {
  --tlo: #f5f3ef; --tlo2: #e9e5de; --karta: #ffffff; --tekst: #2a2f36; --szary: #6f7680; --linia: rgba(42,47,54,.10); --akcent: #5b7289;
  --naglowek-font: "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 12px;
}
body[data-szablon="nordycki"] h1, body[data-szablon="nordycki"] h2 { font-weight: 600; letter-spacing: -.02em; }

/* ───────── WARIANTY HERO (body[data-hero]) ───────── */
/* split: tekst po lewej na jasnym tle, zdjęcie po prawej */
body[data-hero="split"] .hero { background: var(--tlo2) !important; color: var(--tekst); }
body[data-hero="split"] .hero::after { display: none; }
body[data-hero="split"] .hero .w { min-height: 460px; display: flex; flex-direction: column; justify-content: center; }
body[data-hero="split"] .hero h1, body[data-hero="split"] .hero p { max-width: 46%; }
body[data-hero="split"] .hero .oczko { border-color: var(--linia); color: var(--akcent); }
body[data-hero="split"] .hero-foto { left: 52%; width: 48%; opacity: 1 !important; animation: none; transform: none; border-radius: 0 0 0 var(--r); }
@media (max-width: 760px) {
  body[data-hero="split"] .hero h1, body[data-hero="split"] .hero p { max-width: none; }
  body[data-hero="split"] .hero-foto { position: relative; left: 0; width: 100%; height: 220px; border-radius: 0; }
  body[data-hero="split"] .hero { display: flex; flex-direction: column-reverse; }
  body[data-hero="split"] .hero .w { min-height: 0; }
}
/* tekst: bez zdjęcia, duża typografia na tle szablonu */
body[data-hero="tekst"] .hero { background: var(--tlo) !important; color: var(--tekst); text-align: center; }
body[data-hero="tekst"] .hero::after { display: none; }
body[data-hero="tekst"] .hero-foto { display: none; }
body[data-hero="tekst"] .hero h1, body[data-hero="tekst"] .hero p { margin-left: auto; margin-right: auto; }
body[data-hero="tekst"] .hero .oczko { border-color: var(--linia); color: var(--akcent); }
body[data-hero="tekst"] .hero .w { padding-bottom: clamp(80px, 10vw, 130px); }
/* kino: pełnoekranowe zdjęcie, tekst na dole */
body[data-hero="kino"] .hero .w { min-height: min(86vh, 820px); display: flex; flex-direction: column; justify-content: flex-end; }
body[data-hero="kino"] .hero-foto { opacity: .78; }

/* ═════════ ROZBUDOWA KATALOGU 20.10 (17 szablonów) ═════════
   Szablony z jasnym akcentem (złoto, mosiądz, szmaragd, neon) mają ciemny tekst na akcencie: --na-akcent. */
body:is([data-szablon="noir"], [data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"], [data-szablon="barcelona"])
  :is(.chip.on, .guzik:not(.drugi):not(.wa), .gora-zazn, .czat-guzik, .czat-gora, .czat-gora button, .dymek.ja, .czat-dol button, .pasek-zazn button, .instaluj button, .znaczek.ak, .zazn-guzik.on) { color: var(--na-akcent, #0c0b09); }
body:is([data-hero="split"], [data-hero="kino"]) .hero .oczko { align-self: flex-start; }
body:is([data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"]) { color-scheme: dark; }
body:is([data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"])::after { mix-blend-mode: screen; opacity: .03; }
body:is([data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"]) .baner { background: #3a2f0b; color: #ffe08a; }
body:is([data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"]) .baner-przyklad { background: #2c2508; color: #ffe08a; }
body:is([data-szablon="deco"], [data-szablon="esmeralda"], [data-szablon="inversion"]) .pik { background: color-mix(in srgb, var(--akcent) 12%, var(--karta)); }

/* ───────── LUJO ───────── */
/* Marbella Glam: kość słoniowa, szampańskie złoto, wersaliki z szerokim światłem */
body[data-szablon="marbella"] {
  --tlo: #fbf8f4; --tlo2: #f1ebe2; --karta: #ffffff; --tekst: #1a1714; --szary: #6b6258; --linia: rgba(122,95,53,.16); --akcent: #7a5f35;
  --naglowek-font: "Playfair", Georgia, serif; --font: "Manrope", sans-serif; --r: 0px;
  --cien: 0 30px 60px -34px rgba(60,40,10,.35);
}
body[data-szablon="marbella"] .hero h1 { text-transform: uppercase; letter-spacing: .14em; font-weight: 400; font-size: clamp(34px, 5.6vw, 78px); line-height: 1.08; max-width: 18ch; }
body[data-szablon="marbella"] h2 { font-weight: 400; letter-spacing: .04em; }
body[data-szablon="marbella"] .karta h3 { font-style: italic; }
body[data-szablon="marbella"] :is(.guzik, .chip, .gora-zazn) { border-radius: 0; text-transform: uppercase; letter-spacing: .14em; font-size: 12.5px; }
body[data-szablon="marbella"] .cena { color: var(--akcent); font-weight: 600; }
body[data-szablon="marbella"] .karta { border-color: transparent; }

/* Art Déco: czerń, mosiądz, geometria i podwójne linie */
body[data-szablon="deco"] {
  --tlo: #0d0d0f; --tlo2: #141417; --karta: #18181c; --tekst: #efe9dc; --szary: #a9a191; --linia: rgba(197,164,106,.22); --akcent: #c5a46a; --na-akcent: #0d0d0f;
  --naglowek-font: "Forum", "Cormorant", Georgia, serif; --font: "Manrope", sans-serif; --r: 0px;
  --cien: 0 0 0 1px rgba(197,164,106,.14), 0 26px 60px -26px rgba(0,0,0,.8);
}
body[data-szablon="deco"] h1, body[data-szablon="deco"] h2 { font-weight: 400; text-transform: uppercase; letter-spacing: .12em; }
body[data-szablon="deco"] .hero h1 { font-size: clamp(36px, 6vw, 84px); line-height: 1.1; max-width: 16ch; padding: .35em 0; border-top: 3px double var(--akcent); border-bottom: 3px double var(--akcent); }
body[data-szablon="deco"] .hero .oczko { border-radius: 0; }
body[data-szablon="deco"] .sekcja h2::after { content: ""; display: block; width: 56px; height: 0; border-top: 3px double var(--akcent); margin-top: 14px; }
body[data-szablon="deco"] .karta { border: 1px solid var(--linia); }
body[data-szablon="deco"] .karta h3 { font-family: var(--naglowek-font); text-transform: uppercase; letter-spacing: .08em; font-size: 18px; }
body[data-szablon="deco"] :is(.guzik, .chip, .gora-zazn, .gora-w, .filtry, .filtry::before, .pole select, .pole input, .fakt, .cechy-pik li, .agent) { border-radius: 0; }
body[data-szablon="deco"] :is(.guzik, .chip) { text-transform: uppercase; letter-spacing: .12em; font-size: 12.5px; }
body[data-szablon="deco"] .cena { color: var(--akcent); }
body[data-szablon="deco"] .stopka { border-top: 3px double var(--linia); }

/* Rose Gold: pudrowy róż, miedziany akcent, kursywa Cormorant */
body[data-szablon="rosegold"] {
  --tlo: #fbf4f1; --tlo2: #f3e3dd; --karta: #fffaf8; --tekst: #2d1f1e; --szary: #735a56; --linia: rgba(156,79,69,.16); --akcent: #9c4f45;
  --naglowek-font: "Cormorant", "Playfair", Georgia, serif; --font: "Manrope", sans-serif; --r: 20px;
  --cien: 0 24px 50px -28px rgba(156,79,69,.35);
}
body[data-szablon="rosegold"] h1, body[data-szablon="rosegold"] h2 { font-weight: 500; font-style: italic; letter-spacing: 0; }
body[data-szablon="rosegold"] .hero h1 { font-size: clamp(42px, 6.6vw, 88px); }
body[data-szablon="rosegold"] .cena { color: var(--akcent); }

/* ───────── MEDITERRÁNEO ───────── */
/* Andaluz: biel wapienna, kobalt i wzór azulejo */
body[data-szablon="andaluz"] {
  --tlo: #ffffff; --tlo2: #eef3fa; --karta: #ffffff; --tekst: #14213d; --szary: #56627a; --linia: rgba(31,63,153,.14); --akcent: #1f3f99;
  --naglowek-font: "DMSerif", Georgia, serif; --font: "Manrope", sans-serif; --r: 6px;
  --azulejo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%231f3f99' stroke-opacity='.16' stroke-width='1.2'%3E%3Cpath d='M28 6 50 28 28 50 6 28Z'/%3E%3Ccircle cx='28' cy='28' r='8'/%3E%3Cpath d='M0 0q14 14 0 28M56 0q-14 14 0 28M0 56q14-14 0-28M56 56q-14-14 0-28'/%3E%3C/g%3E%3C/svg%3E");
}
body[data-szablon="andaluz"] h1, body[data-szablon="andaluz"] h2 { font-weight: 400; }
body[data-szablon="andaluz"][data-hero="tekst"] .hero { background: var(--azulejo), var(--tlo2) !important; border-bottom: 6px solid var(--akcent); }
body[data-szablon="andaluz"] .hero h1 { color: var(--akcent); }
body[data-szablon="andaluz"] .hero .w { padding-bottom: clamp(96px, 11vw, 140px); }
body[data-szablon="andaluz"] .stopka { background: var(--azulejo), var(--tlo2); border-top: 6px solid var(--akcent); }
body[data-szablon="andaluz"] .karta { border: 1px solid var(--linia); }
body[data-szablon="andaluz"] .cena { color: var(--akcent); }

/* Terracotta Modern: glina, ciepła szarość, mocna bezszeryfowa typografia */
body[data-szablon="terakota"] {
  --tlo: #f3ebe4; --tlo2: #e8d9cc; --karta: #fffaf6; --tekst: #2a1b14; --szary: #6b5545; --linia: rgba(163,67,42,.16); --akcent: #a3432a;
  --naglowek-font: "Jakarta", sans-serif; --font: "Jakarta", sans-serif; --r: 6px;
}
body[data-szablon="terakota"] h1, body[data-szablon="terakota"] h2 { font-weight: 800; letter-spacing: -.04em; }
body[data-szablon="terakota"] .hero h1 { font-size: clamp(38px, 6.4vw, 86px); line-height: .98; }
body[data-szablon="terakota"] .karta h3 { font-family: var(--font); font-weight: 700; font-size: 17px; }
body[data-szablon="terakota"][data-hero="split"] .hero { background: var(--tlo2) !important; }
body[data-szablon="terakota"] .hero .oczko { background: var(--akcent); color: #fff !important; border-color: var(--akcent) !important; opacity: 1; }

/* ───────── MODERNO ───────── */
/* Barcelona Urban: beton, grafit, neonowa limonka (tylko na tła — tekst w kolorze grafitu) */
body[data-szablon="barcelona"] {
  --tlo: #e4e4e1; --tlo2: #d4d4d0; --karta: #f2f2ef; --tekst: #151515; --szary: #4d4d49; --linia: rgba(21,21,21,.14); --akcent: #d7ff3c; --na-akcent: #111111;
  --naglowek-font: "Unbounded", "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 0px; --cien: 0 0 0 1px rgba(21,21,21,.10);
}
body[data-szablon="barcelona"] h1, body[data-szablon="barcelona"] h2 { font-weight: 700; letter-spacing: -.03em; text-transform: uppercase; }
body[data-szablon="barcelona"] .hero h1 { font-size: clamp(32px, 5.6vw, 76px); line-height: 1.02; max-width: 16ch; }
body[data-szablon="barcelona"] .sekcja h2 { font-size: 22px; }
body[data-szablon="barcelona"] .karta h3 { font-family: var(--font); font-weight: 700; font-size: 17px; }
body[data-szablon="barcelona"] :is(.guzik, .chip, .gora-zazn, .gora-w, .filtry, .filtry::before, .pole select, .pole input, .gdzie-pole input, .fakt, .cechy-pik li, .agent, .karta a.obraz) { border-radius: 0; }
body[data-szablon="barcelona"] .chip { border: 1.5px solid var(--tekst); }
body[data-szablon="barcelona"] :is(.link-guzik, .km, .pik, .oczko-ciemne, .agent-rola, .cechy-lista li::before) { color: var(--tekst); }
body[data-szablon="barcelona"] .km { background: var(--akcent); }
body[data-szablon="barcelona"] .pik { background: var(--akcent); box-shadow: none; }
html.apka body[data-szablon="barcelona"] .apka-pasek button.on { color: var(--tekst); box-shadow: inset 0 -3px 0 var(--akcent); }
body[data-szablon="barcelona"] .hero .oczko { background: var(--akcent); color: var(--na-akcent); border-color: var(--akcent); opacity: 1; border-radius: 0; }
body[data-szablon="barcelona"] .karta.wyr { box-shadow: 0 0 0 3px var(--tekst); }

/* Minimal Warm: kremowa biel, dużo powietrza, cienka typografia */
body[data-szablon="cieply"] {
  --tlo: #f6f2ec; --tlo2: #ece6dd; --karta: #fffdf9; --tekst: #2b2622; --szary: #675e55; --linia: rgba(43,38,34,.10); --akcent: #6b5544;
  --naglowek-font: "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 4px; --cien: none;
}
body[data-szablon="cieply"] h1, body[data-szablon="cieply"] h2 { font-weight: 300; letter-spacing: -.035em; }
body[data-szablon="cieply"] .hero h1 { font-size: clamp(40px, 7vw, 100px); max-width: 14ch; }
body[data-szablon="cieply"] .karta { background: transparent; border: 0; padding: 0; }
body[data-szablon="cieply"] .karta h3 { font-family: var(--font); font-weight: 500; font-size: 17px; }

/* ───────── COSTA ───────── */
/* Ibiza Boho: len, piasek, terakota i łuki */
body[data-szablon="ibiza"] {
  --tlo: #f4ece0; --tlo2: #ebdfcd; --karta: #fbf6ee; --tekst: #3a2a1f; --szary: #6e5a49; --linia: rgba(154,74,44,.15); --akcent: #9a4a2c;
  --naglowek-font: "Lora", Georgia, serif; --font: "Jakarta", sans-serif; --r: 22px;
}
body[data-szablon="ibiza"] h1, body[data-szablon="ibiza"] h2 { font-weight: 500; font-style: italic; letter-spacing: -.01em; }
body[data-szablon="ibiza"] .karta a.obraz { background: transparent; border-radius: 0 0 14px 14px; }
body[data-szablon="ibiza"] .karta a.obraz img { border-radius: 999px 999px 0 0; }
body[data-szablon="ibiza"]::after { opacity: .07; }
@media (min-width: 761px) {
  body[data-szablon="ibiza"][data-hero="split"] .hero-foto { top: 96px; height: calc(100% - 96px); left: 56%; width: 38%; border-radius: 999px 999px 0 0; }
}

/* Pastel Coast: mięta, błękit morski, miękkie promienie */
body[data-szablon="pastel"] {
  --tlo: #f7fafb; --tlo2: #e6f1f2; --karta: #ffffff; --tekst: #1f3440; --szary: #556770; --linia: rgba(44,116,128,.14); --akcent: #2c7480;
  --naglowek-font: "Fraunces", Georgia, serif; --font: "Jakarta", sans-serif; --r: 30px;
  --cien: 0 20px 40px -24px rgba(44,116,128,.30);
}
body[data-szablon="pastel"] .stopka { background: #e3eff6; }
body[data-szablon="pastel"] .fakt { background: #f1f7f3; }

/* ───────── CLÁSICO ───────── */
/* Classic Navy: granat, biel, ostre krawędzie, szeryf */
body[data-szablon="navy"] {
  --tlo: #ffffff; --tlo2: #f1f3f7; --karta: #ffffff; --tekst: #12203a; --szary: #5a6478; --linia: rgba(18,32,58,.12); --akcent: #1b2f5c;
  --naglowek-font: "Playfair", Georgia, serif; --font: "Manrope", sans-serif; --r: 2px;
}
body[data-szablon="navy"] h1, body[data-szablon="navy"] h2 { font-weight: 600; letter-spacing: -.01em; }
body[data-szablon="navy"] :is(.guzik, .chip, .gora-zazn) { border-radius: 2px; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; }
body[data-szablon="navy"] .karta { border: 1px solid var(--linia); background: var(--karta); }
body[data-szablon="navy"] .stopka { --tekst: #ffffff; --szary: #c9d1df; --linia: rgba(255,255,255,.16); background: #12203a; color: var(--szary); }

/* ───────── GOLF ───────── */
/* Golf & Resort: zieleń greenów, biel klubowa */
body[data-szablon="golf"] {
  --tlo: #f5f7f2; --tlo2: #e3eadb; --karta: #ffffff; --tekst: #17261b; --szary: #56645a; --linia: rgba(46,93,58,.14); --akcent: #2e5d3a;
  --naglowek-font: "Playfair", Georgia, serif; --font: "Manrope", sans-serif; --r: 12px;
}
body[data-szablon="golf"] h1, body[data-szablon="golf"] h2 { font-weight: 500; }
body[data-szablon="golf"] .cena { color: var(--akcent); }

/* Clubhouse: krem, butelkowa zieleń, klasyka klubu */
body[data-szablon="clubhouse"] {
  --tlo: #f3efe4; --tlo2: #e7e0cf; --karta: #fffcf4; --tekst: #1d2a22; --szary: #5f5d4e; --linia: rgba(31,74,51,.16); --akcent: #1f4a33;
  --naglowek-font: "Cormorant", Georgia, serif; --font: "Manrope", sans-serif; --r: 4px;
}
body[data-szablon="clubhouse"] h1, body[data-szablon="clubhouse"] h2 { font-weight: 600; letter-spacing: .01em; }
body[data-szablon="clubhouse"] .hero h1 { font-size: clamp(44px, 7vw, 92px); }
body[data-szablon="clubhouse"][data-hero="split"] .hero { background: #1f4a33 !important; color: #f3efe4; }
body[data-szablon="clubhouse"][data-hero="split"] .hero .oczko { color: #f3efe4; border-color: rgba(243,239,228,.4); }
body[data-szablon="clubhouse"] .stopka { border-top: 1px solid var(--linia); }

/* Dark Emerald: głęboki szmaragd nocą, jasny akcent */
body[data-szablon="esmeralda"] {
  --tlo: #0b1a15; --tlo2: #0f221b; --karta: #122a21; --tekst: #eef3ef; --szary: #a3b5ac; --linia: rgba(92,196,154,.16); --akcent: #5cc49a; --na-akcent: #06140f;
  --naglowek-font: "Fraunces", Georgia, serif; --font: "Manrope", sans-serif; --r: 16px;
  --cien: 0 0 0 1px rgba(92,196,154,.08), 0 24px 60px -24px rgba(0,0,0,.7);
}
body[data-szablon="esmeralda"] .hero:not(.z-foto) { background: radial-gradient(800px 420px at 80% 0%, rgba(92,196,154,.22), transparent 65%), #08140f; }
body[data-szablon="esmeralda"] .cena { color: var(--akcent); }

/* ───────── INVERSIÓN ───────── */
/* Inversión: granat nocny + złoto, poważnie */
body[data-szablon="inversion"] {
  --tlo: #0e1a2e; --tlo2: #122038; --karta: #15233b; --tekst: #eef1f6; --szary: #a7b2c4; --linia: rgba(200,163,90,.18); --akcent: #c8a35a; --na-akcent: #0e1a2e;
  --naglowek-font: "Forum", "Cormorant", Georgia, serif; --font: "Manrope", sans-serif; --r: 6px;
  --cien: 0 0 0 1px rgba(200,163,90,.10), 0 24px 60px -24px rgba(0,0,0,.7);
}
body[data-szablon="inversion"] h1, body[data-szablon="inversion"] h2 { font-weight: 400; text-transform: uppercase; letter-spacing: .08em; }
body[data-szablon="inversion"] .hero h1 { font-size: clamp(36px, 6vw, 82px); line-height: 1.06; }
body[data-szablon="inversion"] .cena { color: var(--akcent); }
body[data-szablon="inversion"] :is(.guzik, .chip) { border-radius: 6px; }

/* Patrimonio: jasny, rzeczowy, liczby na pierwszym planie */
body[data-szablon="patrimonio"] {
  --tlo: #ffffff; --tlo2: #f2f4f7; --karta: #ffffff; --tekst: #101828; --szary: #5b6475; --linia: rgba(16,24,40,.10); --akcent: #0b4f8a;
  --naglowek-font: "Manrope", sans-serif; --font: "Manrope", sans-serif; --r: 10px;
}
body[data-szablon="patrimonio"] h1, body[data-szablon="patrimonio"] h2 { font-weight: 700; letter-spacing: -.035em; }
body[data-szablon="patrimonio"][data-hero="tekst"] .hero { text-align: left; background: linear-gradient(180deg, var(--tlo2), var(--tlo)) !important; }
body[data-szablon="patrimonio"][data-hero="tekst"] .hero :is(h1, p) { margin-left: 0; }
body[data-szablon="patrimonio"] .hero h1 { border-left: 4px solid var(--akcent); padding-left: .4em; }
body[data-szablon="patrimonio"] .karta { border: 1px solid var(--linia); background: var(--karta); }
body[data-szablon="patrimonio"] .karta h3 { font-family: var(--font); font-weight: 600; font-size: 17px; }
body[data-szablon="patrimonio"] .cena { color: var(--akcent); font-size: 1.12em; }

/* ───────── FAMILIA ───────── */
/* Familia: ciepła brzoskwinia, zaokrąglone kształty, przyjazny szeryf */
body[data-szablon="familia"] {
  --tlo: #fff8f0; --tlo2: #fdebd8; --karta: #ffffff; --tekst: #2e2219; --szary: #6e5b4c; --linia: rgba(176,60,13,.13); --akcent: #b03c0d;
  --naglowek-font: "Lora", Georgia, serif; --font: "Jakarta", sans-serif; --r: 28px;
  --cien: 0 18px 40px -22px rgba(176,60,13,.28);
}
body[data-szablon="familia"] h1, body[data-szablon="familia"] h2 { font-weight: 600; letter-spacing: -.015em; }
body[data-szablon="familia"] .fakt, body[data-szablon="familia"] .agent-dyplom { border-radius: 22px; }

/* Eco Natura: len, oliwka, spokój natury */
body[data-szablon="eco"] {
  --tlo: #f1efe6; --tlo2: #e4e1d2; --karta: #faf9f3; --tekst: #2a2e22; --szary: #5a604e; --linia: rgba(77,94,47,.16); --akcent: #4d5e2f;
  --naglowek-font: "Lora", Georgia, serif; --font: "Manrope", sans-serif; --r: 14px;
}
body[data-szablon="eco"] h1, body[data-szablon="eco"] h2 { font-weight: 500; }
body[data-szablon="eco"] .hero h1 { font-style: italic; }
body[data-szablon="eco"]::after { opacity: .06; }
/* hero z własnym charakterem dla wariantu foto */
body[data-szablon="navy"] .hero.z-foto::after { background: linear-gradient(90deg, rgba(18,32,58,.88) 0%, rgba(18,32,58,.45) 55%, rgba(18,32,58,.15) 100%); }
body[data-szablon="pastel"] .hero.z-foto::after { background: linear-gradient(180deg, rgba(31,52,64,.30) 0%, rgba(31,52,64,.10) 40%, rgba(28,84,94,.62) 100%); }
body[data-szablon="familia"] .hero { border-radius: 0 0 48px 48px; }
body[data-szablon="esmeralda"] .hero.z-foto::after { background: linear-gradient(180deg, rgba(8,20,15,.45) 0%, rgba(8,20,15,.15) 40%, rgba(8,20,15,.85) 100%); }
