/*
Theme Name: Kancelaria Figat-Pabjaniak (Astra child)
Template: astra
Description: Motyw podrzędny Astry dla kancelariafigat.pl – kierunek A „klasyczny” (granat, biel, mosiądz), zatwierdzony 19.10.2026. Wzór: podglady/podglady-strony.html (.vA).
Version: 0.2.4
Text Domain: kancelaria-astra-child
*/

/* Tokeny kierunku A. Kolory globalne Astry ustawiamy też w Customizerze na te same wartości. */
:root {
  --kf-granat: #16233b;
  --kf-papier: #ffffff;
  --kf-mgla: #eef1f5;
  --kf-mosiadz: #a8834a;
  --kf-tekst: #1f2633;
  --kf-linia: #dde2ea;
  --kf-szeryf: "Spectral", Georgia, "Times New Roman", serif;
  --kf-bezszeryf: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body { font-family: var(--kf-bezszeryf); color: var(--kf-tekst); background: var(--kf-papier); font-size: 17px; line-height: 1.65; }
h1, h2, h3, h4, .site-title, .entry-title { font-family: var(--kf-szeryf); font-weight: 600; color: var(--kf-granat); text-wrap: balance; }
h1 { font-size: clamp(2rem, 4.4vw, 3.1rem); line-height: 1.15; }
h2 { font-size: clamp(1.5rem, 2.6vw, 1.8rem); }
a { color: var(--kf-granat); text-underline-offset: 3px; }
a:hover, a:focus { color: var(--kf-mosiadz); }
:focus-visible { outline: 2px solid var(--kf-mosiadz); outline-offset: 2px; }

/* Nagłówek strony */
.site-header { border-bottom: 1px solid var(--kf-linia); }
.main-header-menu .menu-link:hover { color: var(--kf-mosiadz); }

/* Sekcje (klasy nadawane blokom Spectry/grupom) */
.kf-hero { background: var(--kf-granat); color: #e9edf4; }
.kf-hero h1, .kf-hero h2 { color: #fff; }
.kf-eyebrow { color: #d4b98a; font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; }
.kf-alt { background: var(--kf-mgla); }
.kf-obszar { border-top: 2px solid var(--kf-mosiadz); padding-top: 16px; }
.kf-karta { background: #fff; border: 1px solid var(--kf-linia); padding: 18px; }
.kf-krok-nr { background: var(--kf-granat); color: #fff; border-radius: 50%; width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; }

/* Przyciski */
.wp-block-button__link, .ast-button, button[type="submit"], .srfm-button {
  background: var(--kf-mosiadz); color: #fff; border-radius: 2px; font-weight: 600; padding: 13px 22px; border: 0;
}
.wp-block-button__link:hover, .ast-button:hover, button[type="submit"]:hover { background: #8f6e3c; color: #fff; }

/* Pytania i odpowiedzi (blok Szczegóły) */
.wp-block-details { border-bottom: 1px solid var(--kf-linia); padding-block: 14px; }
.wp-block-details summary { font-weight: 600; cursor: pointer; }

/* Stopka */
.site-footer { background: var(--kf-granat); color: #c7cfdb; }
.site-footer a { color: #fff; }

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

/* ===== Etap 3 (20.10.2026): sekcje stron według podglądu A (podglady/podglady-strony.html) ===== */
/* Strony mają układ Astry „pełna szerokość”; każda sekcja to grupa .kf-sekcja z wewnętrzną grupą .kf-in. */
.entry-content > .kf-sekcja { margin: 0; padding-block: 56px; }
.kf-in { max-width: 1080px; margin-inline: auto !important; padding-inline: 24px; box-sizing: border-box; }
.kf-in > * { max-width: none; }
.kf-sekcja h2 { margin: 0 0 24px; }
.ast-single-post .entry-content, .ast-page-builder-template .entry-content { margin-top: 0; }
.ast-page-builder-template .site-content > .ast-container { padding: 0; }

/* Hero */
.kf-hero { padding-block: 72px 64px !important; }
.kf-hero h1 { color: #fff; margin: 0 0 18px; max-width: 22ch; }
.kf-hero p, .kf-hero li { color: #e9edf4; }
.kf-lead { max-width: 60ch; font-size: 1.08rem; margin: 0 0 28px; }
.kf-hero .kf-eyebrow { display: block; margin: 0 0 14px; }
.kf-hero .kf-okruszki { font-size: .82rem; margin: 0 0 10px; opacity: .8; }
.kf-hero .kf-okruszki a { color: #e9edf4; }
.kf-cta { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; }
.kf-cta .wp-block-buttons { margin: 0; }
.kf-tel a, a.kf-tel { font-weight: 600; text-decoration: none; }
.kf-hero .kf-tel a { color: #fff; }

/* Obszary (4 kolumny), artykuły (3), kroki (4) */
.kf-siatka { display: grid; gap: 20px; grid-template-columns: repeat(4, 1fr); }
.kf-siatka.kf-3 { grid-template-columns: repeat(3, 1fr); }
.kf-siatka.kf-2 { grid-template-columns: 1fr 1fr; gap: 28px; }
.kf-siatka > * { margin: 0 !important; }
.kf-obszar h3 { margin: 0 0 8px; font-size: 1.05rem; }
.kf-obszar p { margin: 0; font-size: .95rem; }
.kf-obszar a { text-decoration: none; }

/* O mnie na stronie głównej: zdjęcie + tekst */
.kf-omnie { display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: start; }
.kf-zdjecie { aspect-ratio: 4 / 5; background: linear-gradient(160deg, #c9d1dc, #8e9bb0); color: #fff; display: flex; align-items: flex-end; padding: 14px; font-size: .78rem; margin: 0 !important; }

/* Kroki współpracy */
ol.kf-kroki { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: k; }
ol.kf-kroki li { counter-increment: k; }
ol.kf-kroki li::before { content: counter(k); display: flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 50%; margin-bottom: 10px; font-weight: 600; background: var(--kf-granat); color: #fff; }
ol.kf-kroki strong { display: block; margin-bottom: 4px; color: var(--kf-granat); }

/* Lista najnowszych artykułów (blok Najnowsze wpisy) jako karty */
.kf-sekcja .wp-block-latest-posts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0; padding: 0; }
.kf-sekcja .wp-block-latest-posts li { background: #fff; border: 1px solid var(--kf-linia); padding: 18px; margin: 0; }
.kf-sekcja .wp-block-latest-posts a { font-family: var(--kf-szeryf); font-weight: 600; color: var(--kf-granat); text-decoration: none; line-height: 1.35; }

/* Kontakt: dane + formularz */
.kf-kontakt { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
.kf-mapa { background: #dfe5ec; color: #4a5568; padding: 24px; text-align: center; margin: 16px 0 0 !important; }
.kf-mapa a { font-weight: 600; }

/* Pas zachęty na końcu podstron */
.kf-pas .kf-in { display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; align-items: center; }
.kf-pas p { margin: 0; font-family: var(--kf-szeryf); color: var(--kf-granat); font-size: 1.15rem; }
.entry-content > .kf-pas { padding-block: 40px; }

/* Oznaczenia robocze (do usunięcia przed publikacją): widoczne tylko na wersji testowej */
.kf-rob { font-size: .78rem; font-style: italic; opacity: .7; }
mark.kf-uzup { background: #fff3cd; color: #5c4400; padding: 0 4px; font-size: .9em; }

/* Polityka i teksty ciągłe */
.kf-tekst { max-width: 760px; }
.kf-tekst table { border-collapse: collapse; width: 100%; font-size: .92rem; }
.kf-tekst th, .kf-tekst td { border: 1px solid var(--kf-linia); padding: 8px 10px; text-align: left; vertical-align: top; }

/* Nagłówek: nazwa i podpis */
.site-title { font-size: 1.15rem; margin: 0; }
.site-title a { color: var(--kf-granat); }
.site-description { font-size: .78rem; opacity: .75; margin: 0; }

/* Stopka */
.site-footer .ast-footer-copyright { font-size: .85rem; color: #c7cfdb; }
.site-below-footer-wrap { background: var(--kf-granat) !important; }

@media (max-width: 760px) {
  .entry-content > .kf-sekcja { padding-block: 40px; }
  .kf-hero { padding-block: 44px 40px !important; }
  .kf-in { padding-inline: 18px; }
  .kf-siatka, .kf-siatka.kf-3, .kf-siatka.kf-2, ol.kf-kroki, .kf-sekcja .wp-block-latest-posts { grid-template-columns: 1fr; }
  .kf-omnie, .kf-kontakt { grid-template-columns: 1fr; }
  .kf-zdjecie { max-width: 220px; }
}

/* Przyciski w mosiądzu (Astra barwi je kolorem 0 palety, czyli granatem linków) */
.wp-block-button .wp-block-button__link.wp-element-button { background-color: var(--kf-mosiadz); color: #fff; border-radius: 2px; }
.wp-block-button .wp-block-button__link.wp-element-button:hover { background-color: #8f6e3c; color: #fff; }
.kf-obszar h3 a { text-decoration: none; }
.kf-obszar h3 a:hover { color: var(--kf-mosiadz); }

/* Formularz SureForms: akcent mosiądz, bez białego tła na szarej sekcji */
body .srfm-form-container { --srfm-color-scheme-primary: #a8834a; --srfm-color-scheme-text: #1f2633; background: transparent !important; padding: 0 !important; }
body .srfm-form-container .srfm-form { background: transparent !important; padding: 0 !important; }

/* Poprawki po zrzutach 20.10: margines stopki na telefonie, tekst pasa wyśrodkowany w pionie */
.site-footer .ast-footer-copyright { padding-inline: 16px; box-sizing: border-box; overflow-wrap: anywhere; }
.kf-pas .kf-in > p { margin: 0 !important; }
.kf-pas .kf-in > .wp-block-buttons { margin: 0 !important; }

/* Zdjęcia portretowe (20.10.2026, ze starej strony Sites) */
.kf-foto { margin: 0 !important; }
.kf-foto img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; }
.kf-zdjecie-male { max-width: 240px; margin-bottom: 24px !important; }
@media (max-width: 760px) { .kf-omnie > .kf-foto { max-width: 260px; } }

/* Notki: lista wpisów i pojedynczy wpis */
.kf-sekcja .wp-block-latest-posts__post-date { display: block; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--kf-mosiadz); margin-top: 8px; }
.single-post .entry-content { max-width: 760px; }
