
:root{--iron:#0f0f12;--iron-2:#17171b;--char:#0b0b0e;--ember:#df5a20;--ember-br:#f3914a;--steel:#8a9097;--paper:#15151a;--paper-2:#1c1c22;--ink:#ece9e3;--ink-soft:#b3aea6;--taupe:#8298ab;--line:rgba(255,255,255,.09);--card:#1f1f26;}
html,body{background:#141418!important;color:var(--ink)!important;}
.page-hero,.process,.cta-bar{background:#0f0f12!important;}
.btn-light{background:var(--ember)!important;color:#141418!important;}
[style*="#fff"]{background:#1c1c22!important;}

header.phdr,header{background:#16161b!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}.reveal,.reveal.in{opacity:1!important;transform:none!important;filter:none!important;}body,h1,h2,h3,p,a{-webkit-font-smoothing:antialiased;text-shadow:none!important;}

h1,h2,h3,h4,h5{color:#ece9e3!important;}
.page-hero,.page-hero h1,.page-hero h2,.page-hero-lede{color:#ece9e3!important;}
.page-hero h1 em,.eyebrow,.lede-row .label,.section-eyebrow,em{color:#ff8c42!important;}
p,li,.faq-item .answer,.type p,.type ul,.teaser-item p,.related-card p,.prep p,dd,figcaption{color:#c9c5bd!important;}
.breadcrumbs,.breadcrumbs a,.breadcrumbs span{color:#b3aea6!important;}
.btn-light,.btn-ember,.pnav-cta,.nav-cta{color:#141418!important;}


footer,.foot-grid,.foot-grid p{color:#c9c5bd!important;}
.foot-grid h4,.foot-bottom .fb,.cta-bar h3,.foot-social a,footer h1,footer h2,footer h3,footer h4{color:#ece9e3!important;}
.foot-grid a,footer a{color:#c9c5bd!important;}
.foot-grid a:hover,footer a:hover,.foot-social a:hover{color:#ff8c42!important;}
.cta-bar h3{color:#ece9e3!important;}.cta-bar p{color:#c9c5bd!important;}.cta-bar .btn-dark{color:#ece9e3!important;border:1px solid rgba(255,255,255,.22)!important;}


/* spójne, subtelne panele zamiast "wklejonych" prostokątów */
.cat-block,.cat-desc,.ref-note,.teaser-item,.related-card,.lib-card,.note,.card-body{background:#17171b!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:10px!important;box-shadow:none!important;}
.ref-note{border-left:3px solid #df5a20!important;}
.doc-grid{background:transparent!important;border:0!important;}
/* galeria: ciemne, mniejsze, równe kafle */
.gal-item{background:#17171b!important;aspect-ratio:4/3!important;border:1px solid rgba(255,255,255,.06);}
.gal-grid{grid-template-columns:repeat(4,1fr)!important;gap:10px!important;}
@media(max-width:860px){.gal-grid{grid-template-columns:repeat(2,1fr)!important;}}
.teaser-grid,.related-grid{grid-template-columns:repeat(3,1fr)!important;gap:16px!important;}
@media(max-width:820px){.teaser-grid,.related-grid{grid-template-columns:1fr!important;}}
/* hero: jedna kolumna (pusta prawa kolumna wyglądała źle) + czysty gradient */
.page-hero-inner{grid-template-columns:1fr!important;padding:64px 0 72px!important;}
/* miara tekstu ograniczona osobno — krawędzie zostają zgodne z treścią niżej */
.page-hero-inner h1,.page-hero-inner .eyebrow{max-width:20ch;}
.page-hero-inner .page-hero-lede{max-width:62ch;}
.page-hero{background:radial-gradient(60% 70% at 80% 28%,rgba(223,90,32,.18),transparent 60%),linear-gradient(160deg,#1d1d21,#151519 72%,#0f0f12)!important;}
.hero-bg{opacity:.5!important;}


.faq{background:transparent!important;}
.faq-item{border-bottom:1px solid rgba(255,255,255,.08)!important;}
.faq-item summary{color:#ece9e3!important;}
.faq-item .answer,.faq-item .answer *{color:#c9c5bd!important;}
.gal-item,.gal-item *{color:#ece9e3!important;text-shadow:0 1px 3px rgba(0,0,0,.6);}
.btn-dark{background:#26262e!important;color:#ece9e3!important;border:1px solid rgba(255,255,255,.22)!important;}
.btn-line{border-color:rgba(243,145,74,.6)!important;color:#ff8c42!important;}
.btn-line:hover{background:rgba(243,145,74,.12)!important;}
.foot-social a{color:#ece9e3!important;opacity:1!important;border-color:rgba(255,255,255,.32)!important;}
.foot-social a:hover{color:#ff8c42!important;border-color:#df5a20!important;}


/* bloki referencji wtapiają się w stronę, bez "wklejonych" prostokątów */
.cat-block,.cat-block.reveal,.cat-desc{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important;}
.cat-block{margin:0 0 34px!important;padding-bottom:26px!important;border-bottom:1px solid rgba(255,255,255,.07)!important;}
.cat-block:last-of-type{border-bottom:0!important;}
.cat-desc{margin:0 0 12px!important;}
/* notka zostaje jako jedyny akcent z żarowym paskiem */
.ref-note{background:rgba(223,90,32,.06)!important;border:0!important;border-left:3px solid #df5a20!important;border-radius:0 8px 8px 0!important;padding:18px 22px!important;}

/* GAL-SCRIM — mocne, czytelne podpisy na kaflach (biały tekst na każdym zdjęciu) */
.gal-item{background:#17171b!important;position:relative;overflow:hidden;}
.gal-item img{filter:brightness(.76) saturate(1.03)!important;}
.gal-item::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.85) 18%,rgba(0,0,0,.35) 46%,rgba(0,0,0,.08) 68%,transparent 100%)!important;}
.gal-item .cap{position:relative;z-index:2;color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.96),0 0 3px rgba(0,0,0,.9)!important;}
.gal-item .cap span{color:#ffd9c4!important;text-shadow:0 2px 8px rgba(0,0,0,.98)!important;}

/* DOC-DIPLOMAS — jednolite ramki, każdy dyplom w całości i wyśrodkowany */
.doc-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:16px!important;align-items:stretch!important;}
.doc-grid a,.doc-grid figure,.doc-grid .doc-item{display:block;height:100%;}
.doc-grid img{width:100%!important;height:300px!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;background:radial-gradient(120% 100% at 50% 0%,#1a1a1f,#0f0f12)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:10px!important;padding:12px!important;box-shadow:0 14px 30px -18px rgba(0,0,0,.7)!important;}
@media(max-width:640px){.doc-grid{grid-template-columns:1fr!important;max-width:360px;margin:0 auto;}.doc-grid img{height:340px!important;}}

/* HERO-PHOTO-POLISH — wariant A: jasny, ostry; przyciemnienie z lewej pod tekst */
.has-photo .hero-bg{overflow:hidden!important;}
.has-photo .hero-bg img{filter:brightness(.9) saturate(1.06) contrast(1.03)!important;transform:none!important;object-position:center 32%!important;}
.has-photo::after{background:linear-gradient(90deg,rgba(12,12,14,.94) 0%,rgba(12,12,14,.72) 40%,rgba(12,12,14,.16) 100%)!important;}
.has-photo .page-hero-lede,.has-photo h1{position:relative;z-index:3;}
@media(max-width:720px){.has-photo::after{background:linear-gradient(180deg,rgba(12,12,14,.55) 0%,rgba(12,12,14,.75) 55%,rgba(12,12,14,.92) 100%)!important;}}

/* BOTTOM-TIDY — porządek w dolnej części podstron */
.cta-bar{border-top:1px solid rgba(255,255,255,.06);padding:56px 0!important;}
.cta-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.cta-bar h2{margin:0;}
.related{padding:64px 0 72px!important;}
.related .lede-row{margin-bottom:26px;}
.related-grid{gap:18px!important;}
/* przycisk Cookies — dyskretny, nie koliduje ze stopką */
#cc-open{left:auto!important;right:14px!important;bottom:14px!important;opacity:.75;}
#cc-open:hover{opacity:1;}
@media(max-width:640px){.cta-bar-inner{flex-direction:column;align-items:flex-start;} .cta-bar{padding:40px 0!important;}}

/* FOOT-4COL — równe 4 kolumny, mniej przegadania */
.foot{grid-template-columns:1.5fr 1fr 1fr 1.1fr!important;gap:30px!important;align-items:start!important;}
.foot h4{margin-bottom:14px!important;}
.foot p{font-size:13.5px!important;line-height:1.6!important;max-width:280px;}
.foot a{line-height:1.9;}
.foot-social{margin-top:16px;}
@media(max-width:900px){.foot{grid-template-columns:1fr 1fr!important;gap:30px!important;}}
@media(max-width:560px){.foot{grid-template-columns:1fr!important;}}
/* RELATED-TIDY — eyebrow nad tytułem, lewa strona, mniejszy tytuł */
.related .lede-row{grid-template-columns:1fr!important;gap:8px!important;max-width:640px;}
.related .lede-row h2{font-size:clamp(26px,3.4vw,38px)!important;line-height:1.15!important;margin:0!important;}

/* FOOT-LINK-STACK — każdy link kolumny stopki w osobnej linii (naprawa sklejeń Kontakt/Wycena) */
.foot>div>a{display:flex!important;width:fit-content;}
.foot-col-kontakt p a{display:inline!important;}

/* === STOPKA-FOOT-2x2: ten sam układ co .foot-grid (strona balustrad) === */
@media(max-width:1000px){ .foot{grid-template-columns:1fr 1fr!important;gap:26px 30px!important;} }
@media(max-width:560px){ .foot{grid-template-columns:1fr 1fr!important;gap:20px 16px!important;}
  .foot>div>a{font-size:14px;line-height:1.65;} }
.foot>div{min-width:0;} .foot>div>a{line-height:1.6;}

/* TELEFON: kolumna Kontakt na całą szerokość — e-mail nie mieści się w połowie ekranu */
@media(max-width:560px){
  .foot-col-kontakt{grid-column:1 / -1;}
  .foot-col-kontakt a,.foot-grid a,.foot a{overflow-wrap:anywhere;word-break:break-word;}
}
