/*
 * V126 — czytelność podstron po pełnym audycie kontrastu.
 * Zakres jest celowo ograniczony do body.fp-page-sub i treści w main.
 * Hero, stopka i mechanizm animacji pozostają poza tym modułem.
 * Jedyny wyjątek to odseparowana naprawa nagłówka pięciu starszych stron opinii,
 * których historyczne arkusze CSS nie istnieją w aktualnym wydaniu witryny.
 */

/* Etykiety na jasnych tłach: minimum WCAG AA zamiast zlewającego się beżu. */
body.fp-page-sub main section:not(.hero):not(.sub-hero) .eyebrow,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .fp-morph__eyebrow{
  color:#6b4329;
}

/* Breadcrumbs były czytelne dopiero przy powiększeniu. */
body.fp-page-sub main > .seo-v20-breadcrumbs,
body.fp-page-sub main > .seo-v20-breadcrumbs li,
body.fp-page-sub main > .seo-v20-breadcrumbs a,
body.fp-page-sub main > .seo-v20-breadcrumbs span{
  color:#67503b;
}

/* Pięć starszych stron opinii ma breadcrumb bez kontenera main. */
body.fp-subpage-window-v1 > .seo-v20-breadcrumbs.fp-reveal{
  opacity:1;
  visibility:visible;
  filter:none;
  transform:none;
}

body.fp-subpage-window-v1 > .seo-v20-breadcrumbs,
body.fp-subpage-window-v1 > .seo-v20-breadcrumbs li,
body.fp-subpage-window-v1 > .seo-v20-breadcrumbs a,
body.fp-subpage-window-v1 > .seo-v20-breadcrumbs span{
  color:#67503b;
}

/* Złoty przycisk zachowuje kolor premium, ale dostaje ciemny, wyraźny napis. */
body.fp-page-sub main section:not(.hero):not(.sub-hero) .btn.primary{
  background:linear-gradient(135deg,#d3aa64 0%,#b7873f 100%);
  color:#2f2016;
  border-color:rgba(91,53,29,.18);
  text-shadow:none;
}

/* Numery kart nie mogą znikać na piaskowym tle. */
body.fp-page-sub main section:not(.hero):not(.sub-hero) :is(.tile,.service-card) > span,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .seo-v6-scope-card > span{
  color:#7a4b21;
}

/* Drobne opisy i metadane — nadal dyskretne, ale bez szarej mgły. */
body.fp-page-sub main .seo-v7-link-grid a small,
body.fp-page-sub main .review-proof__place,
body.fp-page-sub main .review-meta,
body.fp-page-sub main .review-meta span,
body.fp-page-sub main .fp-google-review-box__note{
  color:#675344;
}

/*
 * Sekcje procesu V6/V7 miały jasne tło po globalnej nadpisce,
 * mimo że ich karty i tekst zostały zaprojektowane dla ciemnego panelu.
 */
body.fp-page-sub main > section.section.seo-v6-process-section,
body.fp-page-sub main > section.section.seo-v7-process-section{
  background:
    radial-gradient(circle at 14% 8%,rgba(213,166,101,.16),transparent 32%),
    radial-gradient(circle at 88% 84%,rgba(143,103,68,.22),transparent 38%),
    linear-gradient(145deg,#3f2a1d 0%,#21150f 100%);
  color:#fff8ef;
}

body.fp-page-sub main > section:is(.seo-v6-process-section,.seo-v7-process-section) .section-head .eyebrow{
  color:#f1cf8b;
}

body.fp-page-sub main > section:is(.seo-v6-process-section,.seo-v7-process-section) .section-head h2{
  color:#fff8ef;
  text-shadow:none;
}

body.fp-page-sub main > section:is(.seo-v6-process-section,.seo-v7-process-section) .section-head p{
  color:#eadbc5;
}

body.fp-page-sub main > section.seo-v6-process-section .seo-v6-process-step,
body.fp-page-sub main > section.seo-v7-process-section .seo-v7-process-step{
  border-color:rgba(241,207,139,.22);
  background:rgba(255,248,239,.075);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 42px rgba(15,9,6,.24);
}

body.fp-page-sub main > section.seo-v6-process-section .seo-v6-process-step h3,
body.fp-page-sub main > section.seo-v7-process-section .seo-v7-process-step h3{
  color:#fff8ef;
}

body.fp-page-sub main > section.seo-v6-process-section .seo-v6-process-step p,
body.fp-page-sub main > section.seo-v7-process-section .seo-v7-process-step p{
  color:#eadbc5;
}

body.fp-page-sub main > section.seo-v6-process-section .seo-v6-process-step span,
body.fp-page-sub main > section.seo-v7-process-section .seo-v7-process-step span{
  background:#f1cf8b;
  color:#332116;
}

/* Sekcja ze screena: przywrócone ciemne, ciepłe tło przewidziane dla jasnej typografii. */
body.fp-page-sub main > section.seo-v12-route-section.section{
  background:
    radial-gradient(circle at 12% 10%,rgba(213,166,101,.14),transparent 31%),
    linear-gradient(145deg,#352219 0%,#17120d 100%);
  color:#f8efe2;
}

body.fp-page-sub main > section.seo-v12-route-section .seo-v12-local-head .eyebrow{
  color:#f1cf8b;
}

body.fp-page-sub main > section.seo-v12-route-section .seo-v12-local-head h2,
body.fp-page-sub main > section.seo-v12-route-section .seo-v12-route-card h3{
  color:#fff3df;
}

body.fp-page-sub main > section.seo-v12-route-section .seo-v12-local-head p{
  color:#e8d9c4;
}

body.fp-page-sub main > section.seo-v12-route-section .seo-v12-route-card p{
  color:#dfcdb2;
}

body.fp-page-sub main > section.seo-v12-route-section .seo-v12-route-card li{
  color:#f1dfc2;
}

/* Brązowe notatki boczne: głębsze tło oraz pełna, nieprzezroczysta typografia. */
body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note{
  background:linear-gradient(145deg,#795136 0%,#52331f 100%);
  color:#fff8ef;
  border-color:rgba(241,207,139,.26);
}

body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note > h2,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note > h3,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note > p,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note > p a{
  color:#fff8ef;
}

body.fp-page-sub main section:not(.hero):not(.sub-hero) .side-note > .eyebrow{
  color:#f1cf8b;
}

/* Etykiety osadzone w pozostałych ciemnych kartach. */
body.fp-page-sub main section:not(.hero):not(.sub-hero) .seo-v6-intro-card .eyebrow,
body.fp-page-sub main section:not(.hero):not(.sub-hero) .seo-v15-panel--dark > .eyebrow{
  color:#f1cf8b;
}

/* Kalkulator: jasne i ciemne panele miały tę samą złotobrązową etykietę. */
body.fp-page-sub.fp-page-wycena main .quote-modern-form-card .quote-modern-step-label,
body.fp-page-sub.fp-page-wycena main .quote-modern-standard__head span,
body.fp-page-sub.fp-page-wycena main .quote-modern-result small{
  color:#6b4329;
}

body.fp-page-sub.fp-page-wycena main .quote-modern-summary .quote-modern-step-label{
  color:#f1cf8b;
}

body.fp-page-sub.fp-page-wycena main .quote-modern-summary .quote-labor-phone{
  border-color:rgba(255,245,230,.34)!important;
  background:rgba(255,255,255,.07)!important;
  color:#fff8ef!important;
}

body.fp-page-sub.fp-page-wycena main .quote-rates-updated{
  color:rgba(255,248,239,.82);
}

/*
 * Pięć starszych podstron opinii używa klasy fp-page-trust i nie ma już
 * historycznych arkuszy z układem nagłówka. Zakres tej naprawy kończy się
 * na topbarze oraz szufladzie menu — selektory hero są celowo nieobecne.
 */
body.fp-page-trust .topbar{
  position:sticky!important;
  top:0!important;
  left:auto!important;
  right:auto!important;
  z-index:2000!important;
  width:100%!important;
  min-height:92px!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  transform:none!important;
  background:rgba(255,250,241,.94)!important;
  border-bottom:1px solid rgba(201,154,60,.18)!important;
  box-shadow:0 10px 30px rgba(38,24,9,.06)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%)!important;
  backdrop-filter:blur(14px) saturate(140%)!important;
}

body.fp-page-trust .topbar .nav{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:min(1180px,calc(100% - 56px))!important;
  min-height:92px!important;
  height:auto!important;
  margin-inline:auto!important;
  padding:0!important;
  transform:none!important;
}

body.fp-page-trust .topbar .brand{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-width:0!important;
  text-decoration:none!important;
}

body.fp-page-trust .topbar .brand img{
  display:block!important;
  width:auto!important;
  height:70px!important;
  max-width:170px!important;
}

body.fp-page-trust .topbar .brand span{
  display:none!important;
}

body.fp-page-trust .topbar .menu{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:clamp(15px,2vw,26px)!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  transform:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.fp-page-trust .topbar .menu a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:9px 0!important;
  white-space:nowrap!important;
  color:#24170b!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid transparent!important;
  border-radius:0!important;
  font:850 13px/1.15 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  opacity:1!important;
}

body.fp-page-trust .topbar .menu a:hover,
body.fp-page-trust .topbar .menu a.active,
body.fp-page-trust .topbar .menu a.is-current-page{
  color:#875b1c!important;
  border-bottom-color:rgba(201,154,60,.62)!important;
}

body.fp-page-trust .topbar .menu .cta-small{
  min-height:52px!important;
  padding:0 25px!important;
  color:#fffaf1!important;
  background:#24170b!important;
  border:1px solid rgba(201,154,60,.34)!important;
  border-radius:999px!important;
  box-shadow:0 14px 34px rgba(36,23,11,.18)!important;
  font-size:12px!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
}

body.fp-page-trust .mobile-menu-toggle{
  display:none!important;
}

body.fp-page-trust .mobile-menu-panel{
  position:fixed!important;
  inset:0!important;
  z-index:3000!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .24s ease,visibility .24s ease!important;
}

body.fp-page-trust.fp-mobile-drawer-open .mobile-menu-panel,
body.fp-page-trust .mobile-menu-panel[aria-hidden="false"]{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

body.fp-page-trust .mobile-menu-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(33,21,10,.36)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}

body.fp-page-trust .mobile-menu-box{
  position:absolute!important;
  top:104px!important;
  right:16px!important;
  bottom:auto!important;
  left:16px!important;
  width:auto!important;
  max-height:calc(100vh - 124px)!important;
  padding:20px!important;
  overflow:auto!important;
  border:1px solid rgba(201,154,60,.24)!important;
  border-radius:28px!important;
  background:radial-gradient(circle at 90% 0%,rgba(232,200,120,.20),transparent 260px),linear-gradient(180deg,#fffdf8 0%,#fbf3e6 100%)!important;
  box-shadow:0 26px 70px rgba(38,24,9,.24)!important;
  transform:translateY(-10px) scale(.985)!important;
  transition:transform .28s cubic-bezier(.2,.9,.2,1)!important;
  -webkit-overflow-scrolling:touch!important;
}

body.fp-page-trust.fp-mobile-drawer-open .mobile-menu-box,
body.fp-page-trust .mobile-menu-panel[aria-hidden="false"] .mobile-menu-box{
  transform:translateY(0) scale(1)!important;
}

body.fp-page-trust .mobile-menu-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  display:inline-grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  color:#24170b!important;
  background:rgba(255,255,255,.74)!important;
  border:1px solid rgba(201,154,60,.28)!important;
  border-radius:999px!important;
  font-size:30px!important;
  line-height:1!important;
}

body.fp-page-trust .mobile-menu-brand{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin:0 0 10px!important;
  padding:2px 54px 18px 0!important;
  border-bottom:1px solid rgba(201,154,60,.18)!important;
}

body.fp-page-trust .mobile-menu-brand img{
  display:block!important;
  width:auto!important;
  height:54px!important;
}

body.fp-page-trust .mobile-menu-brand span{
  color:#6d5b49!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.35!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}

body.fp-page-trust .mobile-menu-box > a{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:52px!important;
  padding:13px 4px!important;
  color:#21150a!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(201,154,60,.14)!important;
  border-radius:0!important;
  font:24px/1.05 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.02em!important;
  text-decoration:none!important;
}

body.fp-page-trust .mobile-menu-box > a::after{
  content:'→'!important;
  color:#a86f18!important;
  font:15px Inter,system-ui,sans-serif!important;
}

body.fp-page-trust .mobile-menu-cta{
  margin-top:18px!important;
  padding:17px!important;
  color:#21150a!important;
  background:rgba(255,255,255,.56)!important;
  border:1px solid rgba(201,154,60,.22)!important;
  border-radius:22px!important;
}

body.fp-page-trust .mobile-menu-cta b{
  display:block!important;
  margin-bottom:12px!important;
  color:#21150a!important;
  font-size:15px!important;
}

body.fp-page-trust .mobile-menu-phone{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:13px 15px!important;
  color:#fffaf1!important;
  background:#24170b!important;
  border:0!important;
  border-radius:999px!important;
  font:950 12px/1.2 Inter,system-ui,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

body.fp-page-trust .mobile-menu-phone::after{
  display:none!important;
}

@media (max-width:960px){
  body.fp-page-trust .topbar{
    min-height:86px!important;
  }

  body.fp-page-trust .topbar .nav{
    width:calc(100% - 34px)!important;
    min-height:86px!important;
    gap:12px!important;
  }

  body.fp-page-trust .topbar .brand img{
    height:58px!important;
    max-width:146px!important;
  }

  body.fp-page-trust .topbar .menu,
  body.fp-page-trust.fp-mobile-menu-open .topbar nav,
  body.fp-page-trust.mobile-menu-open .topbar nav{
    display:none!important;
  }

  body.fp-page-trust .mobile-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:46px!important;
    padding:10px 14px!important;
    color:#21150a!important;
    background:#fffdf8!important;
    border:1px solid rgba(201,154,60,.30)!important;
    border-radius:999px!important;
    box-shadow:0 10px 26px rgba(38,24,9,.07)!important;
    font-size:10px!important;
    font-weight:950!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
  }

  body.fp-page-trust .mobile-menu-toggle span{
    display:block!important;
    width:18px!important;
    height:2px!important;
    margin:0!important;
    background:#24170b!important;
    border-radius:999px!important;
    box-shadow:none!important;
  }

  body.fp-page-trust .mobile-menu-toggle span:nth-child(2),
  body.fp-page-trust .mobile-menu-toggle span:nth-child(3){
    display:none!important;
  }

  body.fp-page-trust .mobile-menu-toggle span:first-child{
    box-shadow:0 6px 0 #24170b,0 -6px 0 #24170b!important;
  }

  body.fp-page-trust .mobile-menu-toggle em{
    display:inline-block!important;
    font-style:normal!important;
  }
}

@media (max-width:430px){
  body.fp-page-trust .mobile-menu-box{
    top:94px!important;
    max-height:calc(100vh - 112px)!important;
    padding:18px!important;
    border-radius:26px!important;
  }

  body.fp-page-trust .mobile-menu-box > a{
    min-height:50px!important;
    font-size:22px!important;
  }

  body.fp-page-trust .mobile-menu-brand img{
    height:48px!important;
  }
}

@media (min-width:961px){
  body.fp-page-trust.fp-mobile-drawer-open{
    overflow:auto!important;
  }
}

body.fp-page-trust.fp-mobile-drawer-open .fp-mobile-bottom-cta{
  display:none!important;
}
