/* Kancelaria PUK — system sekcji. Jeden arkusz dla całego serwisu. */

.puk{
  --puk-navy:#233962;
  --puk-ink:#172a49;
  --puk-muted:#53637c;
  --puk-line:#dce2eb;
  --puk-light:#f3f5f8;
  --puk-accent:#afc8f2;
  color:var(--puk-ink);
  font-family:Poppins,Arial,sans-serif;
  font-size:16px;
  line-height:1.8;
}
.puk,.puk *{box-sizing:border-box}
.puk .puk-wrap{width:100%;max-width:1248px;margin:0 auto;padding:0 40px}
.puk h1,.puk h2,.puk h3,.puk h4{font-family:inherit;font-weight:600;color:var(--puk-ink);background:none;padding:0;margin:0;text-align:left;text-transform:none;letter-spacing:-.035em}
.puk h1{font-size:clamp(36px,3.6vw,54px);line-height:1.15}
.puk h2{font-size:clamp(28px,2.7vw,39px);line-height:1.25}
.puk h3{font-size:20px;line-height:1.45;letter-spacing:-.02em}
.puk p{font-size:16px;line-height:1.85;color:inherit;margin:0 0 20px;text-align:left}
.puk p:last-child{margin-bottom:0}
.puk a{color:inherit;overflow-wrap:anywhere}
.puk a:focus-visible,.puk summary:focus-visible{outline:3px solid #698dc7;outline-offset:6px}

/* Odnośniki w treści: inny kolor niż tekst, podkreślenie wyraźniejsze po najechaniu */
.puk p a:not([class]),.puk li a:not([class]),.puk td a:not([class]),.puk th a:not([class]),
.puk dd a:not([class]),.puk figcaption a:not([class]),.puk blockquote a:not([class]){
  color:#ae1c28;text-decoration:underline;text-decoration-thickness:1px;
  text-decoration-color:rgba(174,28,40,.4);text-underline-offset:3px;
  transition:color .2s,text-decoration-color .2s}
.puk p a:not([class]):hover,.puk li a:not([class]):hover,.puk td a:not([class]):hover,
.puk th a:not([class]):hover,.puk dd a:not([class]):hover,.puk figcaption a:not([class]):hover,
.puk blockquote a:not([class]):hover{
  color:var(--puk-navy);text-decoration-color:var(--puk-navy);text-decoration-thickness:2px}

/* na granatowym tle czerwony byłby nieczytelny */
.puk-hero p a:not([class]),.puk-navy p a:not([class]),.puk-cta p a:not([class]),
.puk-hero li a:not([class]),.puk-navy li a:not([class]),.puk-cta li a:not([class]){
  color:#fff;text-decoration-color:rgba(255,255,255,.55)}
.puk-hero p a:not([class]):hover,.puk-navy p a:not([class]):hover,.puk-cta p a:not([class]):hover,
.puk-hero li a:not([class]):hover,.puk-navy li a:not([class]):hover,.puk-cta li a:not([class]):hover{
  color:#dce7f8;text-decoration-color:#dce7f8}

/* listy odnośników do innych stron zostają spokojne — mają własny styl niżej */
.puk .puk-links a:not([class]),.puk .puk-tile a:not([class]),.puk .puk-post a:not([class]),
.puk .puk-card a:not([class]),.puk .puk-steps a:not([class]){text-decoration:none;color:inherit}
.puk img{display:block;max-width:100%;height:auto}
.puk figure,.puk .wp-block-image{margin:0;padding:0;background:none;border:0;box-shadow:none}
.puk .puk-eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;margin:0 0 22px;color:var(--puk-muted)}
.puk-section{padding:84px 0}
.puk-section.puk-light{background:var(--puk-light)}
.puk-section.puk-navy{background:var(--puk-navy);color:#fff}
.puk-section.puk-navy h2,.puk-section.puk-navy h3{color:#fff}
.puk-section.puk-navy p{color:#dbe3f0}
.puk-section.puk-navy .puk-eyebrow{color:#a8bade}
/* Miara tekstu: około 75 znaków w wierszu. Dłuższe linie męczą oko,
   bo trudniej trafić wzrokiem w początek następnego wiersza. */
.puk-section:not(.puk-contact) > .puk-wrap > p,
.puk-section:not(.puk-contact) > .puk-wrap > ul,
.puk-section:not(.puk-contact) > .puk-wrap > ol,
.puk-section > .puk-wrap > h3{max-width:76ch}
.puk .puk-col > p,.puk .puk-col > ul,.puk .puk-col > ol{max-width:70ch}
.puk .puk-article > p,.puk .puk-article > ul{max-width:72ch}
.puk .puk-section-head{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1.45fr);column-gap:56px;align-items:start;margin-bottom:42px}
.puk .puk-section-head h2{margin:0;font-size:clamp(26px,2.4vw,34px)}
.puk .puk-section-head .puk-section-intro{min-width:0}
.puk .puk-section-head.puk-head-plain{display:block}
.puk .puk-section-head .puk-section-intro{align-self:end}
.puk a.puk-text-btn{display:inline-block;align-self:end;justify-self:end;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.puk-section.puk-navy a.puk-text-btn{color:#fff}

/* przyciski */
.puk a.puk-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;background:var(--puk-navy);color:#fff;padding:16px 22px;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;border:1px solid var(--puk-navy);transition:background .2s,color .2s}
.puk a.puk-btn:hover{background:#1b2d50;color:#fff}
.puk a.puk-btn-light{background:#fff;color:var(--puk-navy);border-color:#fff}
.puk a.puk-btn-light:hover{background:#dce7f8;color:var(--puk-navy)}
.puk a.puk-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.puk a.puk-btn-ghost:hover{background:rgba(255,255,255,.14);color:#fff}
.puk a.puk-btn-outline{background:transparent;color:var(--puk-navy);border-color:var(--puk-navy)}
.puk a.puk-btn-outline:hover{background:#e3e9f3}
.puk .puk-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:32px 0 0}
/* Stara klasa .button z motywu trafia się w treściach przeniesionych
   z WPBakery — ma dostać ten sam wygląd co nasze przyciski. */
.puk a.button{display:inline-flex;align-items:center;gap:14px;background:var(--puk-navy)!important;color:#fff!important;
  padding:15px 24px!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;
  border:1px solid var(--puk-navy)!important;border-radius:0!important;text-decoration:none!important;
  text-transform:none!important;letter-spacing:0!important;transition:background .2s}
.puk a.button:hover{background:#1b2d50!important;color:#fff!important}
.puk-section.puk-navy a.button{background:#fff!important;color:var(--puk-navy)!important;border-color:#fff!important}
.puk-section.puk-navy a.button:hover{background:#dce7f8!important;color:var(--puk-navy)!important}

/* hero */
.puk-hero{background:var(--puk-navy);color:#fff;padding:88px 0 84px}
.puk-hero h1,.puk-hero h2{color:#fff}
.puk-hero .puk-eyebrow{color:#c3d3ef}
.puk-hero .puk-hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}
.puk-hero.puk-hero-photo-left .puk-hero-grid{grid-template-columns:1fr 1.3fr}
.puk-hero.puk-hero-photo-left .puk-hero-copy{order:2}
.puk-hero.puk-hero-photo-left .puk-hero-media{order:1}
.puk-hero.puk-hero-no-photo .puk-hero-grid{display:block}
.puk-hero .puk-hero-copy{min-width:0}
.puk-hero h1{margin:0 0 24px}
.puk-hero h1 span{color:#c6d7f3}
.puk-hero .puk-lead{max-width:620px;color:#e1e7f0;font-size:17px;line-height:1.8}
.puk-hero .puk-motto{font-size:13px;line-height:1.8;max-width:520px;color:#c6d2e6;border-top:1px solid #53678b;padding-top:22px;margin:30px 0 0}
.puk-hero .puk-hero-media{position:relative;height:450px;min-width:0;overflow:hidden}
.puk-hero .puk-hero-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.puk-hero .puk-hero-media-kolor img{filter:none}
.puk-hero .puk-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(11,27,51,.88))}
.puk-hero .puk-photo-caption{position:absolute;bottom:30px;left:28px;right:28px;z-index:1;font-size:26px;line-height:1.4;font-weight:600}
.puk-hero .puk-photo-caption span{display:block;font-size:13px;line-height:1.7;font-weight:400;margin-top:8px;color:#e1e7f0}

/* pasek zaufania */
.puk-trust{background:#edf1f7;border-bottom:1px solid var(--puk-line);padding:28px 0}
.puk-trust .puk-trust-grid{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:36px}
.puk-trust .puk-trust-item{display:flex;align-items:center;gap:16px;border-right:1px solid #c8d1df;padding-right:20px}
.puk-trust .puk-trust-item:last-child{border-right:0}
.puk-trust strong{font-size:30px;font-weight:600;line-height:1.2;letter-spacing:-.035em;white-space:nowrap}
.puk-trust span{font-size:13px;line-height:1.7;color:var(--puk-muted)}

/* dwie kolumny */
.puk .puk-split{display:grid;grid-template-columns:1.2fr 1fr;gap:78px;align-items:stretch}
/* tekst dostaje szerszą kolumnę niezależnie od tego, z której strony jest zdjęcie */
.puk .puk-split:has(> .puk-split-media-first){grid-template-columns:1fr 1.2fr}
.puk .puk-split>.puk-split-media-first{order:-1}
.puk .puk-split>*{min-width:0}
.puk .puk-split-media{display:flex;align-items:stretch}
.puk .puk-split-media img{width:100%;height:100%;min-height:400px;max-height:660px;object-fit:cover}
.puk .puk-split h2{margin-bottom:22px}

/* listy */
.puk .puk-list{list-style:none;padding:0;margin:24px 0 0}
.puk .puk-list li{display:block;position:relative;padding:16px 0 16px 30px;border-bottom:1px solid var(--puk-line);font-size:16px;line-height:1.7}
.puk .puk-list li:first-child{padding-top:0}
.puk .puk-list li:first-child:before{top:0}
.puk .puk-list li:before{content:"✓";position:absolute;left:0;top:16px;color:var(--puk-navy);font-weight:600}
.puk-section.puk-navy .puk-list li{border-color:#5b6e90}
.puk-section.puk-navy .puk-list li:before{color:var(--puk-accent)}

.puk .puk-col>*:last-child,.puk .puk-article>*:last-child{margin-bottom:0}
.puk .puk-col ul,.puk-section>.puk-wrap>ul,.puk .puk-article ul{list-style:none;padding:0;margin:0 0 24px}
.puk .puk-col ul li,.puk-section>.puk-wrap>ul li,.puk .puk-article ul li{position:relative;padding:15px 0 15px 30px;border-bottom:1px solid var(--puk-line);font-size:16px;line-height:1.7}
.puk .puk-col ul li:before,.puk-section>.puk-wrap>ul li:before,.puk .puk-article ul li:before{content:"✓";position:absolute;left:0;top:15px;color:var(--puk-navy);font-weight:600}
.puk-section.puk-navy .puk-col ul li{border-color:#5b6e90}
.puk-section.puk-navy .puk-col ul li:before{color:var(--puk-accent)}
.puk .puk-col h3,.puk-section>.puk-wrap>h3{font-size:21px;margin:30px 0 14px}
.puk .puk-col h3:first-child{margin-top:0}

/* kroki */
.puk .puk-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:8px}
.puk .puk-steps.puk-steps-2{grid-template-columns:repeat(2,1fr);gap:40px}
.puk .puk-steps.puk-steps-3{grid-template-columns:repeat(3,1fr)}
.puk .puk-step{min-width:0}
.puk .puk-step-no{display:block;font-size:42px;line-height:1.2;color:#748aae;letter-spacing:-.05em;border-bottom:1px solid var(--puk-line);padding-bottom:22px;margin-bottom:24px}
.puk .puk-step h3{font-size:19px;margin-bottom:12px}
.puk .puk-step p{font-size:15px;color:var(--puk-muted)}
.puk .puk-steps-card .puk-step{background:#fff;border-left:3px solid var(--puk-navy);padding:26px 26px 28px}
.puk .puk-steps-card .puk-step-no{border-bottom:0;padding-bottom:0;margin-bottom:14px;font-size:32px}

.puk .puk-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:8px}
.puk .puk-tiles-3{grid-template-columns:repeat(3,1fr)}
.puk .puk-tiles-2{grid-template-columns:repeat(2,1fr)}
.puk .puk-tile{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--puk-line);border-top:3px solid var(--puk-navy);padding:28px 26px 26px;transition:box-shadow .2s,transform .2s}
.puk .puk-tile:hover{box-shadow:0 14px 30px rgba(23,42,73,.09);transform:translateY(-2px)}
.puk .puk-tile-image{display:block;margin:0 0 20px}
.puk .puk-tile-image img{width:auto;max-width:78px;height:64px;object-fit:contain;object-position:left center}
.puk .puk-tile h3{font-size:18px;line-height:1.4;margin:0 0 16px;padding:0;border:0}
.puk .puk-tile h3 a{text-decoration:none}
.puk .puk-tile h3 a:hover{color:#4f6fa4}
.puk .puk-tile .puk-list{margin:0;padding:0;list-style:none}
.puk .puk-tile .puk-list li{position:relative;border:0;padding:6px 0 6px 18px;margin:0;font-size:14.5px;line-height:1.6;color:var(--puk-muted)}
.puk .puk-tile .puk-list li:before{content:"–";position:absolute;left:0;top:6px;color:#8fa2c2;font-weight:400}
.puk .puk-tile-link{margin-top:auto;padding-top:20px;font-size:14px;font-weight:600;text-decoration:none;border-top:1px solid var(--puk-line)}
.puk .puk-tile-link{margin-top:20px}
.puk .puk-tile .puk-list+.puk-tile-link{margin-top:auto}
.puk .puk-tile-link:hover{color:#4f6fa4}

.puk .puk-tile-text{font-size:14.5px;line-height:1.7;color:var(--puk-muted);margin:0 0 18px}

.puk .puk-table{overflow-x:auto;margin:26px 0}
.puk .puk-table table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.7}
.puk .puk-table th,.puk .puk-table td{border:1px solid var(--puk-line);padding:14px 16px;text-align:left;vertical-align:top;color:var(--puk-ink)}
.puk .puk-table thead th,.puk .puk-table tr:first-child td strong{background:var(--puk-light);font-weight:600}
.puk .puk-table tr:nth-child(even) td{background:#fbfcfd}

.puk .puk-banner{margin:44px 0 0}
.puk .puk-banner img{width:100%;height:340px;object-fit:cover}
@media(max-width:767px){.puk .puk-banner img{height:220px}}

.puk-cta{background:var(--puk-navy);color:#fff;padding:58px 0}
.puk-cta .puk-cta-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:48px;align-items:center}
.puk-cta h2{color:#fff;font-size:clamp(24px,2.2vw,32px);line-height:1.25;margin:0}
.puk-cta p{color:#c9d5e8;font-size:16px;line-height:1.7;margin:14px 0 0;max-width:62ch}
.puk-cta .puk-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.puk-cta a.puk-btn{width:100%;justify-content:space-between}
.puk-cta a.puk-cta-phone{display:block;font-size:22px;font-weight:600;letter-spacing:-.02em;color:#fff;line-height:1.3}
.puk-cta a.puk-cta-phone span{display:block;font-size:13px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#a8bade;margin-bottom:4px}
@media(max-width:990px){.puk-cta .puk-cta-grid{grid-template-columns:1fr;gap:28px}.puk-cta .puk-cta-actions{align-items:stretch}}
@media(max-width:767px){.puk-cta{padding:44px 0}.puk-cta a.puk-cta-phone span{font-size:14px}}

/* galeria */
.puk .puk-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:8px}
.puk .puk-gallery-3{grid-template-columns:repeat(3,1fr)}
.puk .puk-gallery-2{grid-template-columns:repeat(2,1fr)}
.puk .puk-gallery-item{display:block;border:1px solid var(--puk-line);background:#fff;padding:10px;transition:box-shadow .2s,transform .2s}
.puk .puk-gallery-item:hover{box-shadow:0 12px 26px rgba(23,42,73,.12);transform:translateY(-2px)}
.puk .puk-gallery-item img{width:100%;height:190px;object-fit:contain}

.puk-lightbox{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;gap:12px;
  padding:5vh 4vw;background:rgba(15,25,45,.93)}
.puk-lightbox[hidden]{display:none}
.puk-lightbox-figure{margin:0;max-width:min(1100px,86vw);max-height:88vh;display:flex;align-items:center;justify-content:center}
.puk-lightbox-figure img{max-width:100%;max-height:88vh;width:auto;height:auto;background:#fff}
.puk-lightbox-close,.puk-lightbox-nav{border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;
  width:48px;height:48px;font-size:26px;line-height:1;transition:background .2s}
.puk-lightbox-close:hover,.puk-lightbox-nav:hover{background:rgba(255,255,255,.26)}
.puk-lightbox-close{position:absolute;top:20px;right:22px;font-size:30px}
.puk-lightbox-counter{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:#c9d5e8;font-size:14px}
body.puk-lightbox-open{overflow:hidden}
@media(max-width:767px){
  .puk-lightbox{padding:16px;gap:6px}
  .puk-lightbox-nav{width:40px;height:40px;font-size:22px}
  .puk-lightbox-figure{max-width:100%}
}

/* wpisy z bloga */
.puk .puk-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:8px}
.puk .puk-post{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--puk-line);border-top:3px solid var(--puk-navy)}
.puk .puk-post-image{display:block;overflow:hidden}
.puk .puk-post-image img{width:100%;height:210px;object-fit:cover;transition:transform .4s}
.puk .puk-post:hover .puk-post-image img{transform:scale(1.04)}
.puk .puk-post-date{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--puk-muted);margin:26px 26px 12px}
.puk .puk-post h3{font-size:19px;line-height:1.45;margin:0 26px 14px}
.puk .puk-post h3 a{text-decoration:none}
.puk .puk-post h3 a:hover{color:#4f6fa4}
.puk .puk-post-excerpt{font-size:15px;line-height:1.75;color:var(--puk-muted);margin:0 26px 20px}
.puk .puk-post-link{margin:auto 26px 26px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.puk .puk-post-link:hover{color:#4f6fa4}

/* kafle przewag */
.puk .puk-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 46px;margin-top:8px}
.puk .puk-cards.puk-cards-2{grid-template-columns:repeat(2,1fr)}
.puk .puk-cards.puk-cards-4{grid-template-columns:repeat(4,1fr)}
.puk .puk-card{border-top:1px solid var(--puk-line);padding-top:23px;min-width:0}
.puk-section.puk-navy .puk-card{border-color:#5b6e90}
.puk .puk-card h3{font-size:18px;margin-bottom:12px}
.puk .puk-cards-numbered{counter-reset:pukbenefit}
.puk .puk-cards-numbered .puk-card{counter-increment:pukbenefit;border-top:2px solid var(--puk-navy);padding-top:20px}
.puk .puk-cards-numbered .puk-card:before{content:"0" counter(pukbenefit);display:block;font-size:13px;color:var(--puk-muted);margin-bottom:22px}
.puk-section.puk-navy .puk-cards-numbered .puk-card{border-color:var(--puk-accent)}
.puk-section.puk-navy .puk-cards-numbered .puk-card:before{color:#a8bade}
.puk .puk-cards-numbered .puk-card h3{font-size:19px;line-height:1.5}
.puk .puk-card p{font-size:15px}

.puk .puk-cards-list{display:block;counter-reset:pukcard;margin-top:0}
.puk .puk-cards-list .puk-card{display:grid;grid-template-columns:60px minmax(0,1fr);column-gap:28px;align-items:start;counter-increment:pukcard;border-top:1px solid var(--puk-line);padding:26px 0 28px;margin:0}
.puk .puk-cards-list .puk-card:last-child{border-bottom:1px solid var(--puk-line)}
.puk .puk-cards-list .puk-card>*{grid-column:2;min-width:0}
.puk .puk-cards-list .puk-card:before{grid-column:1;grid-row:1/span 20;content:"0" counter(pukcard);font-size:15px;font-weight:600;letter-spacing:.04em;color:#748aae;line-height:1.8;padding-top:2px}
.puk .puk-cards-list .puk-card h3{font-size:19px;line-height:1.45;margin:0 0 10px}
.puk .puk-cards-list .puk-card p{font-size:15px;margin:0}
.puk-section.puk-navy .puk-cards-list .puk-card{border-color:#465b81}
.puk-section.puk-navy .puk-cards-list .puk-card:before{color:var(--puk-accent)}
.puk-section.puk-navy .puk-cards-list .puk-card p{color:#e3eaf6}

/* treść z rozwijaniem */
.puk .puk-reading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,2fr);column-gap:64px;align-items:start}
.puk .puk-reading-aside{position:sticky;top:210px}
.puk .puk-reading-aside h2{font-size:clamp(22px,1.9vw,28px);line-height:1.35}
.puk .puk-side-title{font-size:23px;font-weight:600;line-height:1.5;letter-spacing:-.02em;color:var(--puk-ink);margin:0}
.puk .puk-reading-aside h2+p,.puk .puk-reading-aside .puk-eyebrow+h2{margin-top:20px}
.puk .puk-reading-aside p{font-size:15px;line-height:1.85}
.puk .puk-article{min-width:0}
.puk .puk-article h3{font-size:22px;line-height:1.4;margin:34px 0 16px}
.puk .puk-article h3:first-child{margin-top:0}
.puk .puk-article p{color:#42536e;line-height:1.95}
.puk .puk-article ul{list-style:none;padding:0;margin:0 0 24px}
.puk .puk-article ul li{position:relative;padding:13px 0 13px 30px;border-bottom:1px solid var(--puk-line);line-height:1.75}
.puk .puk-article ul li:before{content:"✓";position:absolute;left:0;top:13px;color:var(--puk-navy);font-weight:600}
.puk summary{cursor:pointer;list-style:none}
.puk summary::-webkit-details-marker{display:none}
.puk summary::marker{content:""}
.puk .puk-readmore{margin-top:30px}
.puk .puk-readmore>summary{display:inline-flex;align-items:center;gap:36px;padding:13px 20px;border:1px solid var(--puk-navy);font-size:14px;font-weight:600;line-height:1.6;color:var(--puk-navy)}
.puk .puk-readmore>summary:hover{background:#e3e9f3}
.puk .puk-readmore .puk-open{display:none}
.puk .puk-readmore[open] .puk-open{display:inline}
.puk .puk-readmore[open] .puk-closed{display:none}
.puk .puk-plus{font-size:24px;line-height:1;font-weight:400;display:inline-block;flex-shrink:0}
.puk details[open]>summary .puk-plus{transform:rotate(45deg)}
.puk .puk-expanded{padding-top:14px}

/* FAQ */
.puk .puk-faq{border-top:1px solid var(--puk-line)}
.puk .puk-faq details{border-bottom:1px solid var(--puk-line)}
.puk .puk-faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-size:16px;font-weight:600;line-height:1.7}
.puk .puk-faq summary:hover{color:#4f6fa4}
.puk .puk-answer{padding:0 26px 24px 0}
.puk .puk-answer p{font-size:15px;color:var(--puk-muted)}

/* kontakt */
.puk-contact{background:#e9eef5;scroll-margin-top:170px}
.puk-contact .puk-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.puk-contact .puk-contact-copy{position:sticky;top:150px}
@media(max-width:990px){.puk-contact .puk-contact-copy{position:static}}
.puk-contact .puk-contact-links{display:grid;gap:10px;margin:28px 0}
.puk-contact .puk-contact-links a{font-size:19px;font-weight:600;line-height:1.6;color:#ae1c28;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(174,28,40,.35);text-underline-offset:4px;transition:color .2s,text-decoration-color .2s}
.puk-contact .puk-contact-links a:hover{color:var(--puk-navy);text-decoration-color:var(--puk-navy);text-decoration-thickness:2px}
.puk-contact address{font-size:14px;line-height:1.85;font-style:normal;color:var(--puk-muted)}
.puk-contact .puk-contact-side{min-width:0}
.puk-contact .puk-reassurance{background:#dfe6f1;padding:28px 30px;margin-bottom:22px}
.puk-contact .puk-reassurance h3{font-size:20px;margin-bottom:14px}
.puk-contact .puk-reassurance p{font-size:15px}
.puk-contact .puk-reassurance ul{list-style:none;padding:0;margin:0 0 16px}
.puk-contact .puk-reassurance li{position:relative;padding:8px 0 8px 28px;font-size:15px;line-height:1.7;border-bottom:1px solid #c6d2e4}
.puk-contact .puk-reassurance li:last-child{border-bottom:0}
.puk-contact .puk-reassurance li:before{content:"✓";position:absolute;left:0;top:8px;color:var(--puk-navy);font-weight:600}
.puk-contact .puk-form{padding:32px;background:#fff;min-width:0;border-top:3px solid var(--puk-navy)}
.puk-contact .puk-form h3{font-size:26px;margin-bottom:24px}
.puk-contact .puk-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),.puk-contact .puk-form textarea,.puk-contact .puk-form select{width:100%;max-width:100%;min-height:48px;background:#f7f9fb;border:1px solid #b9c4d4;border-radius:0;padding:12px;color:var(--puk-ink);font:inherit;font-size:16px;box-shadow:none;margin:0 0 14px}
.puk-contact .puk-form textarea{min-height:120px;resize:vertical}
.puk-contact .puk-form input::placeholder,.puk-contact .puk-form textarea::placeholder{color:#5b687d;opacity:1}
.puk-contact .puk-form label,.puk-contact .wpcf7-list-item-label{font-size:14px;line-height:1.7;color:var(--puk-muted)}
/* Zgoda RODO: czytelna niezależnie od kolorów wpisanych w treść formularza. */
.puk-contact .wpcf7-acceptance .puk-consent,
.puk-contact .wpcf7-list-item-label span[style*="color:white"],
.puk-contact .wpcf7-list-item-label span[style*="color: white"],
.puk-contact .wpcf7-list-item-label span[style*="#fff"]{color:var(--puk-muted)!important}
.puk-contact .wpcf7-acceptance .wpcf7-list-item{display:block}
.puk-contact .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:10px}
.puk-contact .wpcf7-acceptance .wpcf7-list-item-label{flex:1;min-width:0;font-size:14px;line-height:1.65}
.puk-contact .wpcf7-acceptance input[type=checkbox]{flex:0 0 auto;margin:3px 0 0}
.puk-contact .wpcf7-acceptance a{color:var(--puk-navy);text-decoration:underline;text-underline-offset:3px}
.puk-contact .wpcf7-list-item{margin-left:0}
.puk-contact .puk-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--puk-navy);margin:3px 7px 0 0;vertical-align:top}
.puk-contact .puk-form input[type=submit]{font:600 14px Poppins,Arial,sans-serif;color:#fff;background:var(--puk-navy);border:0;border-radius:0;padding:16px 28px;min-height:48px;cursor:pointer;width:100%;margin:18px 0 0}
.puk-contact .puk-form input[type=submit]:hover{background:#1b2d50}

.puk-map{display:block;line-height:0}
.puk-map iframe{display:block;width:100%;height:440px;border:0}
@media(max-width:767px){.puk-map iframe{height:320px}}

/* linki powiązane */
.puk .puk-links{display:grid;grid-template-columns:repeat(2,1fr);gap:0 46px;margin-top:8px}
.puk .puk-links a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 0;border-bottom:1px solid var(--puk-line);font-size:17px;font-weight:600;line-height:1.6;text-decoration:none}
.puk .puk-links a:hover{color:#5578ae}

@media(max-width:1199px){
  .puk .puk-wrap{padding-left:30px;padding-right:30px}
  .puk-hero .puk-hero-grid{gap:36px}
  .puk .puk-split{gap:48px}
  .puk-trust .puk-trust-grid{gap:20px}
  .puk-trust .puk-trust-item{display:block}
  .puk-trust span{display:block;margin-top:6px}
  .puk-trust strong{white-space:normal;font-size:26px}
}
@media(max-width:990px){
  .puk-hero{padding-top:64px}
  .puk-hero .puk-hero-grid{grid-template-columns:1.2fr 1fr;gap:28px}
  .puk-hero .puk-hero-media{height:400px}
  .puk .puk-steps,.puk .puk-cards,.puk .puk-cards-4{grid-template-columns:repeat(2,1fr);gap:32px}
  .puk .puk-gallery{grid-template-columns:repeat(3,1fr);gap:18px}
  .puk .puk-tiles{grid-template-columns:repeat(2,1fr);gap:26px}
  .puk .puk-posts{grid-template-columns:repeat(2,1fr);gap:26px}
  .puk .puk-split,.puk .puk-reading,.puk .puk-section-head,.puk-contact .puk-contact-grid{grid-template-columns:1fr;gap:34px}
  .puk .puk-reading-aside{position:static}
  .puk-contact{scroll-margin-top:24px}
}
@media(max-width:767px){
  .puk .puk-wrap{padding:0 22px}
  .puk-section{padding:56px 0}
  .puk-hero{padding:52px 0 56px}
  .puk-hero .puk-hero-grid{grid-template-columns:1fr;gap:30px}
  .puk-hero.puk-hero-photo-left .puk-hero-copy{order:1}
  .puk-hero.puk-hero-photo-left .puk-hero-media{order:2}
  .puk h1{font-size:34px}
  .puk h2{font-size:28px}
  .puk-hero .puk-hero-media{height:260px}
  .puk .puk-actions{gap:12px}
  .puk a.puk-btn{width:100%}
  .puk-trust .puk-trust-grid{grid-auto-flow:row;grid-template-columns:1fr 1fr}
  .puk-trust .puk-trust-item{border-right:0;border-bottom:1px solid #c8d1df;padding:0 0 14px}
  .puk-trust .puk-trust-item:last-child{grid-column:1/-1;border-bottom:0}
  .puk .puk-steps,.puk .puk-cards,.puk .puk-links,.puk .puk-tiles,.puk .puk-posts{grid-template-columns:1fr;gap:24px}
  .puk .puk-gallery{grid-template-columns:repeat(2,1fr);gap:14px}
  .puk .puk-gallery-item img{height:140px}
  .puk .puk-cards-list .puk-card{grid-template-columns:44px minmax(0,1fr);column-gap:18px;padding:20px 0 22px}
  .puk .puk-split-media img{height:260px;min-height:0;max-height:none}
  .puk .puk-readmore>summary{width:100%;justify-content:space-between}
  .puk-contact .puk-form{padding:24px}
}

/* Shared blog image and CF7 styles, independent of any page builder. */
body.blog img.wp-post-image {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    max-width: 100% !important;
    max-height: 235px !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* Kontener linku ze zdjęciem */
body.blog a:has(> img.wp-post-image) {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    overflow: hidden !important;
}

/* Mobile */
@media only screen and (max-width: 767px) {

    body.blog a:has(> img.wp-post-image) {
        height: auto !important;
        aspect-ratio: 3 / 2;
    }

    body.blog img.wp-post-image {
        height: 100% !important;
        max-height: none !important;
        aspect-ratio: 3 / 2;
        object-fit: cover !important;
    }
}

.wpcf7-form fieldset.hidden-fields-container {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Na telefonie nic nie schodzi poniżej 14 px — poniżej tego progu tekst
   robi się męczący, a na małym ekranie to szczególnie widać. */
@media(max-width:767px){
  .puk .puk-eyebrow,
  .puk-hero .puk-eyebrow,
  .puk .puk-post-date,
  .puk-footer-heading{font-size:14px;letter-spacing:.1em}
  .puk-hero .puk-motto,
  .puk-hero .puk-photo-caption span,
  .puk-trust span,
  .puk .puk-mega-foot p,
  .puk .puk-mega-foot a{font-size:14px;line-height:1.7}
  .puk-contact .puk-consent,
  .puk-contact .wpcf7-list-item-label,
  .puk-contact .wpcf7-list-item-label *{font-size:14px!important;line-height:1.65}
  .puk-footer{font-size:15px}
  .puk-footer-brand p,
  .puk-footer-col a,
  .puk-footer-contact address,
  .puk-footer-contact a[href^="mailto"],
  .puk-footer-hours,
  .puk-footer-bottom,
  .puk-footer-bottom p,
  .puk-footer-links a{font-size:14px}
  .puk-topbar,
  .puk-topbar-links a,
  .puk-topbar-note{font-size:14px}
}
