  :root{
    --navy:#0B559C; --navy-deep:#083E72; --navy-night:#062B50;
    --sky:#EAF2FB; --sky-2:#D9E8F8; --sky-3:#BBD6F0;
    --ink:#13273E; --ink-2:#4F637A; --line:#DBE4F0; --paper:#FFFFFF; --paper-2:#F4F8FC;
    --alert:#7A4A00; --alert-bg:#FCF0DA;
    --focus:#E8A33D;
    --display:"Archivo","Public Sans",system-ui,sans-serif;
    --body:"Public Sans",system-ui,"Segoe UI",sans-serif;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} *{animation:none!important;transition:none!important;} }
  body{margin:0;font-family:var(--body);color:var(--ink);background:var(--paper);font-size:16.5px;line-height:1.6;}
  a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:3px;}
  .skip-link{position:absolute;left:-9999px;top:0;background:var(--navy-night);color:#fff;padding:10px 18px;z-index:200;}
  .skip-link:focus{left:0;}
  .wrap{max-width:1200px;margin:0 auto;padding:0 22px;}
  img{max-width:100%;}

  /* wstęga makiety */
  .mock-ribbon{background:#0E1B2B;color:#C9DCF2;font-size:13px;padding:8px 20px;text-align:center;}
  .mock-ribbon a{color:#8FC1F5;}

  /* pasek górny */
  .topbar{background:var(--navy-night);color:#D9E8F8;font-size:13.5px;}
  .topbar .wrap{display:flex;gap:20px;flex-wrap:wrap;padding:7px 22px;align-items:center;}
  .topbar a{color:#fff;text-underline-offset:3px;}
  .topbar .right{margin-left:auto;display:flex;gap:16px;}

  /* nagłówek */
  .masthead{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:5;}
  .masthead .wrap{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;}
  .logo{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);}
  .logo img{width:52px;height:52px;flex:none;}
  .logo b{display:block;font-family:var(--display);font-weight:900;font-size:21px;line-height:1.1;letter-spacing:-.015em;color:var(--navy-deep);}
  .logo span{display:block;font-size:12.5px;color:var(--ink-2);letter-spacing:.02em;}
  nav.glowna{margin-left:auto;}
  nav.glowna ul{list-style:none;display:flex;gap:0;margin:0;padding:0;flex-wrap:wrap;}
  nav.glowna a{display:block;padding:10px 14px;text-decoration:none;color:var(--ink);font-weight:600;font-size:15.5px;border-radius:8px;}
  nav.glowna a:hover{background:var(--sky);color:var(--navy-deep);}
  .cta-visit{background:var(--navy);color:#fff;font-weight:700;font-size:15px;padding:12px 22px;border-radius:9px;text-decoration:none;white-space:nowrap;}
  .cta-visit:hover{background:var(--navy-deep);}

  /* komunikat pilny */
  .alert-band{background:var(--alert-bg);border-bottom:1px solid #EED9AE;}
  .alert-band .wrap{display:flex;gap:12px;align-items:baseline;padding:10px 22px;font-size:14.5px;color:var(--alert);}
  .alert-band b{font-weight:800;}

  /* hero */
  .hero{position:relative;background:var(--navy-night);overflow:hidden;}
  .hero .photo{position:absolute;inset:0;background:url('hero-szpital.jpg') center 35%/cover no-repeat;}
  .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(96deg,rgba(6,32,61,.93) 0%,rgba(7,45,88,.82) 42%,rgba(11,85,156,.38) 78%,rgba(11,85,156,.15) 100%);}
  .hero .wrap{position:relative;z-index:2;padding-top:clamp(54px,7vw,96px);padding-bottom:clamp(120px,13vw,170px);}
  .hero .eyebrow{color:#9CC4EC;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;margin:0 0 16px;}
  .hero h1{font-family:var(--display);font-weight:900;color:#fff;font-size:clamp(34px,5.4vw,62px);line-height:1.02;letter-spacing:-.025em;margin:0 0 18px;max-width:15ch;text-wrap:balance;}
  .hero p.lead{color:#D6E6F8;font-size:clamp(16px,1.9vw,19px);max-width:52ch;margin:0 0 30px;}
  .btn{display:inline-block;font-weight:700;text-decoration:none;border-radius:10px;padding:14px 26px;font-size:16px;}
  .btn.solid{background:#fff;color:var(--navy-deep);}
  .btn.solid:hover{background:var(--sky);}
  .btn.ghost{color:#fff;border:2px solid rgba(255,255,255,.65);margin-left:12px;}
  .btn.ghost:hover{background:rgba(255,255,255,.12);}

  /* kafle szybkiego dostępu */
  .quick{position:relative;z-index:6;margin-top:-84px;}
  .quick ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(6,43,80,.25);}
  .quick a{display:flex;flex-direction:column;gap:10px;padding:26px 24px 22px;text-decoration:none;min-height:158px;position:relative;}
  .quick li:nth-child(1) a{background:var(--navy);color:#fff;}
  .quick li:nth-child(2) a{background:#fff;color:var(--ink);}
  .quick li:nth-child(3) a{background:var(--navy-deep);color:#fff;}
  .quick li:nth-child(4) a{background:var(--sky);color:var(--ink);}
  .quick a:hover{filter:brightness(1.06);}
  .quick li:nth-child(2) a:hover{background:var(--paper-2);filter:none;}
  .quick svg{width:30px;height:30px;stroke-width:1.7;}
  .quick li:nth-child(2) svg,.quick li:nth-child(4) svg{color:var(--navy);}
  .quick b{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.01em;}
  .quick span{font-size:13.5px;opacity:.9;line-height:1.45;}
  .quick .tag{position:absolute;top:14px;right:14px;font-size:9.5px;font-weight:800;letter-spacing:.1em;background:rgba(255,255,255,.2);border-radius:99px;padding:2px 9px;}
  .quick li:nth-child(2) .tag,.quick li:nth-child(4) .tag{background:var(--navy);color:#fff;}

  /* pasek faktów */
  .facts{padding:54px 0 8px;}
  .facts .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 28px;border-bottom:3px solid var(--navy);padding-bottom:30px;}
  .fact .n{font-family:var(--display);font-weight:900;font-size:clamp(34px,4vw,46px);color:var(--navy);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;}
  .fact .l{font-size:14px;color:var(--ink-2);margin-top:4px;}

  /* sekcje */
  section.blok{padding:60px 0 10px;}
  .blok .kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);font-weight:800;margin:0 0 8px;}
  .blok h2{font-family:var(--display);font-weight:900;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.02em;margin:0 0 10px;color:var(--navy-night);text-wrap:balance;}
  .blok .hint{color:var(--ink-2);margin:0 0 28px;font-size:16px;max-width:70ch;}

  /* wyszukiwarka poradni */
  .finder{background:var(--paper-2);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,3.5vw,40px);}
  .finder form{display:flex;gap:10px;max-width:640px;}
  .finder input{flex:1;border:2px solid var(--sky-3);border-radius:10px;padding:14px 18px;font-size:16px;font-family:var(--body);color:var(--ink);background:#fff;}
  .finder input::placeholder{color:#7E93AB;}
  .finder button{background:var(--navy);color:#fff;border:none;border-radius:10px;padding:14px 26px;font-weight:700;font-size:16px;font-family:var(--body);cursor:pointer;}
  .finder button:hover{background:var(--navy-deep);}
  .chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 0;}
  .chips span{font-size:13px;color:var(--ink-2);padding:6px 0;margin-right:2px;}
  .chips a{display:inline-block;background:#fff;border:1px solid var(--sky-3);color:var(--navy-deep);font-size:13.5px;font-weight:600;padding:6px 14px;border-radius:99px;text-decoration:none;}
  .chips a:hover{background:var(--sky);}

  /* lecznictwo — trzy listy */
  .lecz{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;}
  .lecz .col{border-top:4px solid var(--navy);background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:14px;padding:26px;}
  .lecz h3{font-family:var(--display);font-weight:800;font-size:19px;margin:0 0 4px;color:var(--navy-night);}
  .lecz .sub{font-size:13px;color:var(--ink-2);margin:0 0 14px;}
  .lecz ul{list-style:none;margin:0;padding:0;}
  .lecz li{border-bottom:1px solid var(--line);}
  .lecz li:last-child{border-bottom:none;}
  .lecz a{display:flex;justify-content:space-between;gap:10px;padding:10px 2px;text-decoration:none;color:var(--ink);font-size:15px;}
  .lecz a::after{content:"→";color:var(--sky-3);font-weight:700;}
  .lecz a:hover{color:var(--navy);}
  .lecz a:hover::after{color:var(--navy);}
  .lecz .all a{font-weight:800;color:var(--navy);}

  /* pasmo Dla mam */
  .mamy{margin-top:70px;background:linear-gradient(120deg,var(--navy-night),var(--navy-deep) 55%,var(--navy));color:#fff;position:relative;overflow:hidden;}
  .mamy::before{content:"";position:absolute;right:-90px;bottom:-110px;width:460px;height:460px;opacity:.07;background:no-repeat center/contain url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96"><g fill="none" stroke="white" stroke-width="9" stroke-linejoin="round"><rect x="31" y="4.5" width="34" height="34" rx="10"/><rect x="57.5" y="31" width="34" height="34" rx="10"/><rect x="31" y="57.5" width="34" height="34" rx="10"/><rect x="4.5" y="31" width="34" height="34" rx="10"/></g></svg>');}
  .mamy .wrap{position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;padding-top:64px;padding-bottom:64px;align-items:center;}
  @media (max-width:820px){.mamy .wrap{grid-template-columns:1fr;}}
  .mamy .kicker{color:#9CC4EC;}
  .mamy h2{color:#fff;}
  .mamy p{color:#D6E6F8;font-size:16.5px;max-width:56ch;}
  .mamy .btn.solid{margin-top:10px;}
  .counter{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:34px 30px;text-align:center;}
  .counter .n{font-family:var(--display);font-weight:900;font-size:clamp(56px,7vw,84px);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
  .counter .l{color:#B9D4F1;font-size:14.5px;margin-top:8px;}
  .counter .yr{display:inline-block;margin-top:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#9CC4EC;font-weight:700;border-top:1px solid rgba(255,255,255,.2);padding-top:12px;}

  /* aktualności */
  .news{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;}
  .news article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .15s ease;}
  .news article:hover{box-shadow:0 10px 30px rgba(8,62,114,.10);}
  .news time{font-size:12px;color:var(--navy);letter-spacing:.12em;text-transform:uppercase;font-weight:800;}
  .news h3{font-family:var(--display);margin:0;font-size:18.5px;line-height:1.3;font-weight:800;letter-spacing:-.01em;}
  .news h3 a{color:var(--ink);text-decoration:none;}
  .news h3 a:hover{color:var(--navy);text-decoration:underline;}
  .news p{margin:0;font-size:14.5px;color:var(--ink-2);flex:1;}
  .news .more{font-weight:700;font-size:14.5px;color:var(--navy);text-decoration:none;}
  .news .more:hover{text-decoration:underline;}

  /* ważne informacje */
  .info3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
  .info3 .box{display:flex;gap:16px;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:24px;}
  .info3 svg{width:30px;height:30px;color:var(--navy);flex:none;stroke-width:1.7;margin-top:2px;}
  .info3 b{font-family:var(--display);font-weight:800;font-size:16.5px;display:block;margin-bottom:4px;}
  .info3 p{margin:0;font-size:14px;color:var(--ink-2);}
  .info3 .num{font-family:var(--display);font-weight:900;color:var(--navy);font-size:19px;letter-spacing:-.01em;}

  /* partnerzy */
  .partners{margin:66px 0 0;border-top:1px solid var(--line);background:var(--paper-2);}
  .partners .wrap{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;padding:24px 22px;}
  .partners span{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 22px;font-size:13px;color:var(--ink-2);font-weight:700;letter-spacing:.05em;}

  /* stopka */
  footer.dark{background:var(--navy-night);color:#B9CFE8;}
  footer.dark .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:34px;padding-top:52px;padding-bottom:36px;}
  @media (max-width:880px){footer.dark .wrap{grid-template-columns:1fr 1fr;}}
  @media (max-width:540px){footer.dark .wrap{grid-template-columns:1fr;}}
  footer.dark .flogo{display:flex;gap:12px;align-items:center;margin-bottom:14px;}
  footer.dark .flogo img{width:40px;height:40px;filter:brightness(0) invert(1);opacity:.9;}
  footer.dark .flogo b{font-family:var(--display);font-weight:800;color:#fff;font-size:16px;line-height:1.2;}
  footer.dark h2{font-size:13px;color:#fff;letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px;font-family:var(--display);font-weight:800;}
  footer.dark ul{list-style:none;margin:0;padding:0;}
  footer.dark li{margin:7px 0;font-size:14px;}
  footer.dark a{color:#B9CFE8;text-underline-offset:3px;}
  footer.dark a:hover{color:#fff;}
  footer.dark .bottom{border-top:1px solid rgba(255,255,255,.12);font-size:12.5px;padding:16px 0;text-align:center;color:#7E9BBD;}

/* ===== pasek narzędzi dostępności (WCAG) ===== */
.acc-tools{display:flex;gap:6px;align-items:center;}
.acc-tools .sep{width:1px;height:18px;background:rgba(255,255,255,.25);margin:0 6px;}
.acc-btn{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:7px;font-family:var(--body);font-size:13px;font-weight:700;padding:4px 10px;cursor:pointer;line-height:1.2;display:inline-flex;align-items:center;gap:6px;}
.acc-btn:hover{background:rgba(255,255,255,.22);}
.acc-btn[aria-pressed="true"]{background:#fff;color:var(--navy-night);}
.acc-btn svg{width:15px;height:15px;stroke-width:2;}
/* tryb wysokiego kontrastu */
html.hc{filter:invert(1) hue-rotate(180deg);background:#000;}
html.hc img,html.hc .photo,html.hc video,html.hc iframe{filter:invert(1) hue-rotate(180deg);}

/* ===== nagłówek podstrony + okruszki ===== */
.page-head{background:linear-gradient(180deg,var(--sky) 0%,#fff 100%);border-bottom:1px solid var(--line);}
.page-head .wrap{padding-top:30px;padding-bottom:34px;}
.crumbs{font-size:13.5px;color:var(--ink-2);margin:0 0 14px;}
.crumbs a{color:var(--navy);text-decoration:none;}
.crumbs a:hover{text-decoration:underline;}
.crumbs span[aria-current]{font-weight:700;color:var(--ink);}
.page-head h1{font-family:var(--display);font-weight:900;font-size:clamp(30px,4.4vw,48px);letter-spacing:-.025em;color:var(--navy-night);margin:0 0 10px;line-height:1.05;text-wrap:balance;}
.page-head .lead{color:var(--ink-2);font-size:17px;max-width:66ch;margin:0;}
.sect-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 0;}
.sect-tabs a{background:#fff;border:1px solid var(--sky-3);border-radius:99px;padding:8px 18px;font-size:14px;font-weight:700;color:var(--navy-deep);text-decoration:none;}
.sect-tabs a:hover{background:var(--sky);}
.sect-tabs a[aria-current="page"]{background:var(--navy);border-color:var(--navy);color:#fff;}

/* ===== lista oddziałów ===== */
.ward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:20px;margin:34px 0 20px;}
.ward-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:12px;position:relative;transition:box-shadow .15s ease;}
.ward-card:hover{box-shadow:0 12px 34px rgba(8,62,114,.12);}
.ward-card h2{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.01em;margin:0;line-height:1.25;}
.ward-card h2 a{color:var(--navy-night);text-decoration:none;}
.ward-card h2 a::before{content:"";position:absolute;inset:0;border-radius:16px;}
.ward-card h2 a:hover{color:var(--navy);}
.ward-card .meta{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--ink-2);}
.ward-card .meta span{display:flex;gap:9px;align-items:flex-start;}
.ward-card .meta svg{width:16px;height:16px;color:var(--navy);flex:none;margin-top:3px;stroke-width:2;}
.ward-card .meta b{color:var(--ink);font-weight:700;}
.ward-card p.desc{margin:0;font-size:14.5px;color:var(--ink-2);flex:1;}
.ward-card .go{font-weight:800;font-size:14.5px;color:var(--navy);}
.ward-card .badge247{position:absolute;top:18px;right:18px;background:var(--sky);color:var(--navy-deep);font-size:11px;font-weight:800;letter-spacing:.06em;border-radius:99px;padding:4px 12px;}

/* ===== karta oddziału ===== */
.ward-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:26px 0 0;}
.ward-facts .wf{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;display:flex;gap:12px;align-items:flex-start;}
.ward-facts svg{width:20px;height:20px;color:var(--navy);flex:none;margin-top:2px;stroke-width:1.9;}
.ward-facts b{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);font-weight:800;margin-bottom:2px;}
.ward-facts span{font-size:14.5px;font-weight:600;}
.ward-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:40px;padding:44px 0 20px;}
@media (max-width:900px){.ward-layout{grid-template-columns:1fr;}}
.prose h2{font-family:var(--display);font-weight:800;font-size:23px;letter-spacing:-.015em;color:var(--navy-night);margin:36px 0 12px;}
.prose h2:first-child{margin-top:0;}
.prose p{margin:12px 0;max-width:70ch;}
.prose ul{padding-left:22px;max-width:70ch;}
.prose li{margin:6px 0;}
.prose .note{background:var(--paper-2);border-left:4px solid var(--sky-3);padding:14px 18px;border-radius:0 10px 10px 0;font-size:14.5px;color:var(--ink-2);}
.team{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin:14px 0;}
.team .person{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:12px 16px;}
.team .person b{display:block;font-size:14.5px;}
.team .person small{color:var(--ink-2);font-size:12.5px;}
.side{display:flex;flex-direction:column;gap:18px;}
.side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 6px 24px rgba(8,62,114,.07);}
.side-card.navy{background:linear-gradient(135deg,var(--navy),var(--navy-deep));border:none;color:#fff;}
.side-card h2{font-family:var(--display);font-weight:800;font-size:16px;margin:0 0 14px;letter-spacing:.01em;}
.side-card.navy h2{color:#fff;}
.phone-list{list-style:none;margin:0;padding:0;}
.phone-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:14px;}
.side-card:not(.navy) .phone-list li{border-bottom-color:var(--line);}
.phone-list li:last-child{border-bottom:none;}
.phone-list a{font-family:var(--display);font-weight:800;color:#fff;text-decoration:none;white-space:nowrap;letter-spacing:.01em;}
.phone-list a:hover{text-decoration:underline;}
.side-card:not(.navy) .phone-list a{color:var(--navy);}
.side-links{list-style:none;margin:0;padding:0;}
.side-links li{border-bottom:1px solid var(--line);}
.side-links li:last-child{border-bottom:none;}
.side-links a{display:flex;justify-content:space-between;padding:10px 2px;text-decoration:none;color:var(--ink);font-size:14.5px;font-weight:600;}
.side-links a::after{content:"→";color:var(--sky-3);}
.side-links a:hover{color:var(--navy);}

/* ===== menu rozwijane ===== */
nav.glowna > ul > li{position:relative;}
nav.glowna > ul > li > a{display:flex;align-items:center;gap:6px;}
nav.glowna .car{width:10px;height:10px;flex:none;transition:transform .15s ease;}
nav.glowna li:hover > a .car, nav.glowna li:focus-within > a .car{transform:rotate(180deg);}
nav.glowna .sub{position:absolute;top:100%;left:0;min-width:280px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px rgba(6,43,80,.16);padding:10px;margin:4px 0 0;list-style:none;display:none;z-index:60;}
nav.glowna li:hover > .sub, nav.glowna li:focus-within > .sub{display:block;}
nav.glowna .sub.cols{min-width:560px;display:none;grid-template-columns:1fr 1fr;gap:0 8px;}
nav.glowna li:hover > .sub.cols, nav.glowna li:focus-within > .sub.cols{display:grid;}
nav.glowna .sub li{margin:0;}
nav.glowna .sub a{display:block;padding:9px 14px;border-radius:9px;font-size:14.5px;font-weight:600;color:var(--ink);text-decoration:none;}
nav.glowna .sub a:hover{background:var(--sky);color:var(--navy-deep);}
nav.glowna .sub a small{display:block;font-weight:400;color:var(--ink-2);font-size:12px;}
nav.glowna .sub .cap{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--navy);padding:10px 14px 4px;}
@media (max-width:960px){
  nav.glowna .sub, nav.glowna .sub.cols{position:static;min-width:0;box-shadow:none;border:none;background:var(--paper-2);display:none;}
  nav.glowna li:hover > .sub, nav.glowna li:focus-within > .sub,
  nav.glowna li:hover > .sub.cols, nav.glowna li:focus-within > .sub.cols{display:block;}
}

/* mega-menu Lecznictwo */
nav.glowna .sub.mega{min-width:760px;display:none;grid-template-columns:repeat(3,1fr);gap:0 14px;padding:14px;}
nav.glowna li:hover > .sub.mega, nav.glowna li:focus-within > .sub.mega{display:grid;}
nav.glowna .sub.mega .grp ul{list-style:none;margin:0;padding:0;}
nav.glowna .sub.mega .grp{border-right:1px solid var(--line);padding-right:14px;}
nav.glowna .sub.mega .grp:last-child{border-right:none;padding-right:0;}
@media (max-width:960px){
  nav.glowna .sub.mega{min-width:0;display:none;grid-template-columns:1fr;}
  nav.glowna li:hover > .sub.mega, nav.glowna li:focus-within > .sub.mega{display:block;}
  nav.glowna .sub.mega .grp{border-right:none;padding-right:0;}
}

/* mega-menu 2-kolumnowe */
nav.glowna .sub.mega2{min-width:540px;display:none;grid-template-columns:repeat(2,1fr);gap:0 14px;padding:14px;}
nav.glowna li:hover > .sub.mega2, nav.glowna li:focus-within > .sub.mega2{display:grid;}
nav.glowna .sub.mega2 .grp ul{list-style:none;margin:0;padding:0;}
nav.glowna .sub.mega2 .grp{border-right:1px solid var(--line);padding-right:14px;}
nav.glowna .sub.mega2 .grp:last-child{border-right:none;padding-right:0;}
@media (max-width:960px){
  nav.glowna .sub.mega2{min-width:0;display:none;grid-template-columns:1fr;}
  nav.glowna li:hover > .sub.mega2, nav.glowna li:focus-within > .sub.mega2{display:block;}
  nav.glowna .sub.mega2 .grp{border-right:none;padding-right:0;}
}
/* mega wyrównane do prawej dla pozycji przy prawej krawędzi */
nav.glowna .sub.right{left:auto;right:0;}

/* poprawki menu: nagłówki grup w jednej linii, wyrównane kolumny */
nav.glowna .sub .cap{white-space:nowrap;letter-spacing:.1em;padding:6px 14px 8px;border-bottom:1px solid var(--line);margin-bottom:6px;display:block;}
nav.glowna .sub.mega{min-width:820px;}
/* nagłówek bez zawijania CTA */
@media (min-width:1100px){
  .masthead .wrap{flex-wrap:nowrap;}
  nav.glowna a{padding:10px 11px;font-size:15px;}
}

/* mega-menu kotwiczone do całej nawigacji (nie do pojedynczej pozycji) */
nav.glowna{position:relative;}
nav.glowna > ul > li:has(> .sub.mega),
nav.glowna > ul > li:has(> .sub.mega2){position:static;}
nav.glowna .sub.mega, nav.glowna .sub.mega2{left:0;right:0;width:100%;min-width:0;}
@media (max-width:960px){
  nav.glowna .sub.mega, nav.glowna .sub.mega2{width:auto;}
}

/* ===== miniatury aktualności ===== */
.news .thumb{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,var(--sky),var(--sky-2));margin:-6px 0 4px;position:relative;}
.news .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.thumb.ph::after{content:"";position:absolute;inset:0;background:no-repeat center/64px url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96"><g fill="none" stroke="%230B559C" stroke-width="9" stroke-linejoin="round" opacity=".25"><rect x="31" y="4.5" width="34" height="34" rx="10"/><rect x="57.5" y="31" width="34" height="34" rx="10"/><rect x="31" y="57.5" width="34" height="34" rx="10"/><rect x="4.5" y="31" width="34" height="34" rx="10"/></g></svg>');}

/* ===== cennik ===== */
.cennik-tools{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:26px 0 18px;}
.cennik-tools input{flex:1;min-width:260px;border:2px solid var(--sky-3);border-radius:10px;padding:13px 18px;font-size:16px;font-family:var(--body);}
.pills{display:flex;gap:8px;flex-wrap:wrap;}
.pills button{background:#fff;border:1px solid var(--sky-3);border-radius:99px;padding:9px 18px;font-size:14px;font-weight:700;color:var(--navy-deep);cursor:pointer;font-family:var(--body);}
.pills button:hover{background:var(--sky);}
.pills button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff;}
.price-wrap{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:0 0 14px;}
table.price{width:100%;border-collapse:collapse;font-size:15px;}
table.price th{text-align:left;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-deep);background:var(--sky);padding:13px 20px;}
table.price td{padding:12px 20px;border-top:1px solid var(--line);vertical-align:top;}
table.price td.price-val{text-align:right;font-family:var(--display);font-weight:800;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums;}
table.price td .cat{display:inline-block;background:var(--paper-2);border:1px solid var(--line);color:var(--ink-2);font-size:11.5px;font-weight:700;border-radius:99px;padding:2px 10px;margin-left:10px;}
table.price tbody tr:hover{background:var(--paper-2);}
.no-results{padding:26px 20px;color:var(--ink-2);display:none;}

/* ===== godziny pracy ===== */
table.hours{border-collapse:collapse;font-size:14.5px;margin:8px 0 0;width:100%;max-width:420px;}
table.hours td{padding:7px 0;border-bottom:1px solid var(--line);}
table.hours td:last-child{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;}
table.hours tr:last-child td{border-bottom:none;}

/* ===== lista aktualności ===== */
.pager{display:flex;gap:6px;justify-content:center;margin:34px 0 20px;}
.pager a,.pager span{min-width:42px;text-align:center;padding:10px 12px;border-radius:9px;border:1px solid var(--line);background:#fff;font-weight:700;font-size:14.5px;text-decoration:none;color:var(--navy-deep);}
.pager span[aria-current]{background:var(--navy);border-color:var(--navy);color:#fff;}
.pager a:hover{background:var(--sky);}

/* ===== pełny widok strony: cover, meta, galeria, załączniki ===== */
.cover{border-radius:18px;overflow:hidden;margin:30px 0 0;box-shadow:0 16px 44px rgba(8,62,114,.14);}
.cover img{width:100%;height:auto;max-height:420px;object-fit:cover;display:block;}
.meta-row{display:flex;gap:20px;flex-wrap:wrap;font-size:13.5px;color:var(--ink-2);margin:16px 0 0;}
.meta-row b{color:var(--ink);}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:16px 0;}
.gallery button{border:none;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:none;aspect-ratio:4/3;}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .15s ease;}
.gallery button:hover img{transform:scale(1.04);}
.lightbox{position:fixed;inset:0;background:rgba(6,27,43,.92);display:none;align-items:center;justify-content:center;z-index:300;padding:30px;}
.lightbox.open{display:flex;}
.lightbox img{max-width:92vw;max-height:86vh;border-radius:12px;}
.lightbox .close{position:absolute;top:18px;right:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:99px;width:44px;height:44px;font-size:20px;cursor:pointer;}
.attachments{list-style:none;margin:14px 0;padding:0;display:grid;gap:10px;}
.attachments a{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;text-decoration:none;color:var(--ink);}
.attachments a:hover{border-color:var(--sky-3);background:var(--paper-2);}
.attachments svg{width:26px;height:26px;color:var(--navy);flex:none;stroke-width:1.7;}
.attachments b{display:block;font-size:15px;}
.attachments small{color:var(--ink-2);font-size:12.5px;}

/* ===== projekty ===== */
.proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin:34px 0 20px;}
.proj-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:box-shadow .15s ease;}
.proj-card:hover{box-shadow:0 12px 34px rgba(8,62,114,.12);}
.proj-card .ph-img{aspect-ratio:16/8;overflow:hidden;}
.proj-card .ph-img img{width:100%;height:100%;object-fit:cover;display:block;}
.proj-card .body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1;}
.proj-card h2{font-family:var(--display);font-weight:800;font-size:19px;margin:0;line-height:1.3;}
.proj-card h2 a{color:var(--navy-night);text-decoration:none;}
.proj-card h2 a::before{content:"";position:absolute;inset:0;}
.proj-card h2 a:hover{color:var(--navy);}
.proj-card p{margin:0;font-size:14px;color:var(--ink-2);flex:1;}
.proj-card .src{font-size:12.5px;color:var(--ink-2);}
.proj-card .src b{color:var(--navy-deep);}
.status{position:absolute;top:14px;left:14px;font-size:11px;font-weight:800;letter-spacing:.07em;border-radius:99px;padding:5px 13px;background:#fff;box-shadow:0 2px 8px rgba(6,27,43,.18);}
.status.run{color:#7A5200;}
.status.done{color:var(--ok);}
.timeline{list-style:none;margin:16px 0;padding:0 0 0 22px;border-left:3px solid var(--sky-2);}
.timeline li{position:relative;padding:0 0 20px 16px;}
.timeline li::before{content:"";position:absolute;left:-30.5px;top:4px;width:14px;height:14px;border-radius:99px;background:#fff;border:3.5px solid var(--navy);}
.timeline b{font-family:var(--display);display:block;font-size:15px;}
.timeline p{margin:3px 0 0;font-size:14px;color:var(--ink-2);}
.eu-strip{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0;padding:16px;background:var(--paper-2);border:1px solid var(--line);border-radius:12px;}
.eu-strip span{background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 18px;font-size:12.5px;font-weight:700;color:var(--ink-2);}

/* dla mam — kafle sekcji */
.mam-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:34px 0;}
.mam-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;position:relative;display:flex;flex-direction:column;transition:box-shadow .15s ease;}
.mam-card:hover{box-shadow:0 12px 34px rgba(8,62,114,.12);}
.mam-card .ph-img{aspect-ratio:16/8;overflow:hidden;}
.mam-card .ph-img img{width:100%;height:100%;object-fit:cover;display:block;}
.mam-card .body{padding:20px 24px 22px;display:flex;flex-direction:column;gap:8px;flex:1;}
.mam-card h2{font-family:var(--display);font-weight:800;font-size:19px;margin:0;}
.mam-card h2 a{color:var(--navy-night);text-decoration:none;}
.mam-card h2 a::before{content:"";position:absolute;inset:0;}
.mam-card p{margin:0;font-size:14px;color:var(--ink-2);flex:1;}

/* ===== delikatne okładki: rozmyte zdjęcie + granatowa maska ===== */
.thumb,.ph-img,.cover{position:relative;}
.thumb::before,.ph-img::before,.cover::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(160deg,rgba(11,85,156,.16) 0%,rgba(6,43,80,.38) 100%);}
.thumb img,.ph-img img,.cover img{filter:saturate(.85);}
.gallery button{position:relative;}
.gallery button::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(160deg,rgba(11,85,156,.10),rgba(6,43,80,.28));}

/* ===== nagłówek podstrony: więcej oddechu ===== */
.page-head .wrap{padding-top:46px;padding-bottom:60px;}
.crumbs{margin:0 0 32px;}
.page-head h1{margin:0 0 22px;}
.page-head .lead{line-height:1.75;max-width:62ch;font-size:17.5px;}
.meta-row{margin:30px 0 0;gap:12px 34px;}
.page-head .ward-facts{margin:40px 0 0;}
.sect-tabs{margin:34px 0 0;}

/* maska nieco mocniej w granat — spójność z identyfikacją */
.thumb::before,.ph-img::before,.cover::before{background:linear-gradient(160deg,rgba(11,85,156,.26) 0%,rgba(6,43,80,.46) 100%);}
.thumb img,.ph-img img,.cover img{filter:saturate(.7);}

/* listy wewnątrz grup mega-menu zawsze pionowo (nadpisanie flexa z nav.glowna ul) */
nav.glowna .sub .grp ul{display:block;}

/* ===== pływający widget widoków makiety ===== */
.views-widget{position:fixed;right:18px;bottom:18px;z-index:400;font-family:var(--body);}
.vw-btn{display:flex;align-items:center;gap:9px;background:var(--navy-night);color:#fff;border:none;border-radius:99px;padding:12px 20px;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 10px 30px rgba(6,27,43,.35);font-family:var(--body);}
.vw-btn:hover{background:var(--navy-deep);}
.vw-btn svg{width:17px;height:17px;stroke-width:2;}
.vw-panel{position:absolute;right:0;bottom:calc(100% + 12px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(6,27,43,.28);min-width:230px;padding:10px;}
.vw-panel .cap{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--ink-2);padding:6px 12px 8px;display:block;}
.vw-panel ul{list-style:none;margin:0;padding:0;}
.vw-panel a{display:block;padding:8px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;}
.vw-panel a:hover{background:var(--sky);color:var(--navy-deep);}
.vw-panel a[aria-current="page"]{background:var(--navy);color:#fff;}
.vw-panel .tech{margin-top:8px;border-top:1px solid var(--line);padding-top:10px;color:var(--ink-2);font-weight:600;}
@media print{.views-widget{display:none;}}

/* ===== komunikat na samej górze z zamknięciem ===== */
.alert-band .wrap{position:relative;padding-right:56px;}
.alert-close{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:1.5px solid rgba(122,74,0,.4);color:var(--alert);border-radius:99px;width:30px;height:30px;cursor:pointer;font-size:14px;line-height:1;}
.alert-close:hover{background:rgba(122,74,0,.1);}
/* ikony w widgecie widoków */
.vw-panel a{display:flex;align-items:center;gap:10px;}
.vw-panel a svg{width:16px;height:16px;stroke-width:1.9;color:var(--navy);flex:none;}
.vw-panel a[aria-current="page"] svg{color:#fff;}

.status{z-index:2;}

/* ===== linki: bez podkreśleń, hover z podkreśleniem ===== */
a{text-decoration:none;}
a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;}
/* w tekście ciągłym podkreślenie zostaje (WCAG: link musi się odróżniać nie tylko kolorem) */
.prose p a, .prose li a{text-decoration:underline;text-decoration-color:var(--sky-3);text-underline-offset:3px;font-weight:600;color:var(--navy);}
.prose p a:hover, .prose li a:hover{text-decoration-color:var(--navy);}
/* przyciski i kafle nigdy z podkreśleniem */
.btn:hover,.cta-visit:hover,.quick a:hover,.vw-btn:hover,.pills button:hover,.card a.go:hover{text-decoration:none;}

/* grupy filtrów na liście projektów */
.fgroup{display:flex;gap:14px;align-items:center;flex-wrap:wrap;}
.fgroup .lbl{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--ink-2);min-width:110px;}

/* ===== AUDYT MOBILE ===== */
/* 1) pasek górny: narzędzia w pełnym wierszu, bez ucinania */
@media (max-width:760px){
  .topbar .wrap{gap:6px 14px;padding-top:8px;padding-bottom:8px;}
  .topbar .right{margin-left:0;width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px;}
}
/* 3) przyciski hero po zawinięciu */
@media (max-width:640px){
  .btn.ghost{margin-left:0;margin-top:10px;}
}
/* 2) hamburger + menu mobilne z akordeonem */
.nav-burger{display:none;}
@media (max-width:960px){
  .nav-burger{display:inline-flex;align-items:center;gap:9px;margin-left:auto;background:var(--sky);border:1px solid var(--sky-3);border-radius:10px;color:var(--navy-deep);font-weight:700;font-size:14.5px;padding:11px 16px;cursor:pointer;font-family:var(--body);}
  .nav-burger svg{width:20px;height:20px;stroke-width:2.2;}
  .nav-burger[aria-expanded="true"]{background:var(--navy);border-color:var(--navy);color:#fff;}
  nav.glowna{display:none;flex-basis:100%;margin-left:0;padding:0;}
  nav.glowna.open{display:block;}
  nav.glowna ul{display:block;padding:0;}
  nav.glowna > ul{border-top:1px solid var(--line);margin-top:12px;}
  nav.glowna > ul > li{border-bottom:1px solid var(--line);position:static;}
  nav.glowna > ul > li > a{padding:14px 6px;font-size:16.5px;border-radius:0;display:flex;justify-content:space-between;}
  nav.glowna li.open > a .car{transform:rotate(180deg);}
  nav.glowna .sub, nav.glowna .sub.cols, nav.glowna .sub.mega, nav.glowna .sub.mega2{display:none !important;position:static;box-shadow:none;border:1px solid var(--line);background:var(--paper-2);border-radius:12px;padding:8px;width:auto;min-width:0;margin:0 0 14px;}
  nav.glowna li.open > .sub, nav.glowna li.open > .sub.cols, nav.glowna li.open > .sub.mega, nav.glowna li.open > .sub.mega2{display:block !important;}
  nav.glowna .sub.mega .grp, nav.glowna .sub.mega2 .grp{border-right:none;padding-right:0;}
  .masthead .wrap{row-gap:0;}
  .cta-visit{display:none;}  /* na mobile CTA jest w menu i kaflach — nagłówek zostaje zwarty */
}

/* ===== globalna wyszukiwarka ===== */
.search-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:1.5px solid var(--sky-3);border-radius:10px;color:var(--navy-deep);font-weight:700;font-size:14.5px;padding:10px 16px;cursor:pointer;font-family:var(--body);margin-left:6px;}
.search-btn:hover{background:var(--sky);}
.search-btn svg{width:17px;height:17px;stroke-width:2.2;}
@media (max-width:960px){ .search-btn span{display:none;} .search-btn{padding:11px 12px;margin-left:auto;} .nav-burger{margin-left:6px;} }
.search-ov{position:fixed;inset:0;background:rgba(6,27,43,.62);backdrop-filter:blur(3px);z-index:500;display:none;padding:9vh 18px 18px;overflow-y:auto;}
.search-ov.open{display:block;}
.search-panel{max-width:660px;margin:0 auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden;}
.search-head{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 22px;border-bottom:2px solid var(--sky-2);}
.search-head svg{width:21px;height:21px;color:var(--navy);stroke-width:2.2;flex:none;}
.search-head input{flex:1;border:none;outline:none;font-size:18px;font-family:var(--body);padding:14px 0;color:var(--ink);background:none;}
.search-head input::placeholder{color:#8AA0B8;}
.search-head .esc{background:var(--paper-2);border:1px solid var(--line);border-radius:8px;font-size:11.5px;font-weight:700;color:var(--ink-2);padding:6px 10px;cursor:pointer;font-family:var(--body);}
.search-body{max-height:60vh;overflow-y:auto;padding:8px 10px 14px;}
.sr-group{margin:10px 0 0;}
.sr-group > b{display:flex;align-items:center;gap:8px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);padding:8px 12px 6px;}
.sr-group > b svg{width:14px;height:14px;stroke-width:2;color:var(--navy);}
.sr-item{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--ink);font-size:15px;}
.sr-item:hover,.sr-item:focus-visible{background:var(--sky);text-decoration:none;}
.sr-item small{color:var(--ink-2);font-size:12px;display:block;}
.sr-item .val{font-family:var(--display);font-weight:800;color:var(--navy);white-space:nowrap;font-size:14.5px;}
.sr-item mark{background:none;color:inherit;font-weight:800;text-decoration:underline;text-decoration-color:var(--navy);text-decoration-thickness:2px;text-underline-offset:2px;}
.sr-empty{padding:22px 14px;color:var(--ink-2);font-size:14.5px;}
.sr-pop{padding:14px 12px 6px;}
.sr-pop b{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px;}
.sr-pop .chips{margin:0;}
.search-foot{border-top:1px solid var(--line);padding:10px 22px;font-size:12px;color:var(--ink-2);display:flex;gap:18px;flex-wrap:wrap;}
.search-foot b{background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:1px 7px;font-family:ui-monospace,monospace;font-size:11px;}

/* nagłówek: wyszukiwarka nie może spychać menu do drugiego rzędu */
@media (max-width:1420px) and (min-width:961px){
  .search-btn span{display:none;}
  .search-btn{padding:10px 12px;margin-left:2px;}
  nav.glowna a{padding:10px 8px;font-size:14.5px;}
  .cta-visit{padding:11px 16px;font-size:14px;}
  .masthead .wrap{gap:14px;}
}
.search-btn{margin-left:auto;}
@media (min-width:961px){ nav.glowna{margin-left:auto;} .search-btn{margin-left:6px;} }

/* wyszukiwarka w pasku górnym — nie dotyka struktury menu */
.acc-btn.acc-search svg{width:14px;height:14px;}
.search-btn{display:none!important;}  /* stary wariant w masthead wycofany */
@media (max-width:1100px){ .cta-visit{display:none;} }
@media (max-width:1100px) and (min-width:961px){ nav.glowna a{padding:10px 7px;font-size:14px;} }

/* ===== MOBILE 2.0: nagłówek, menu, topbar ===== */
.m-search{display:none;}
@media (max-width:960px){
  /* top bar: narzędzia rozciągnięte na całą szerokość, nie sklejone do lewej */
  .topbar .wrap{padding-top:9px;padding-bottom:9px;}
  .topbar .right{margin-left:0;width:100%;display:flex;justify-content:space-between;align-items:center;gap:6px;}
  .topbar .right .sep{display:none;}
  .topbar .right > a{padding:4px 2px;}

  /* nagłówek: logo + lupa + Menu zawsze w JEDNEJ linii */
  .masthead .wrap{flex-wrap:wrap;align-items:center;gap:10px;padding-top:12px;padding-bottom:12px;}
  .brand{flex:1;min-width:0;gap:10px;}
  .brand img{width:38px;height:38px;}
  .brand .t b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .brand .t span{font-size:11px;}
  .m-search{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;
    background:#fff;border:1.5px solid var(--sky-3);border-radius:10px;color:var(--navy-deep);cursor:pointer;}
  .m-search svg{width:19px;height:19px;stroke-width:2.2;}
  .m-search:hover{background:var(--sky);}
  .nav-burger{margin-left:0;flex:none;height:44px;}

  /* menu mobilne: czysta lista, submenu jako błękitne panele */
  nav.glowna.open{background:#fff;padding-bottom:10px;}
  nav.glowna > ul{border-top:2px solid var(--sky-2);margin-top:10px;}
  nav.glowna > ul > li > a{padding:15px 4px;font-size:16.5px;font-weight:700;color:var(--navy-night);}
  nav.glowna > ul > li > a .car{width:13px;height:13px;color:var(--navy);}
  nav.glowna .sub, nav.glowna .sub.cols, nav.glowna .sub.mega, nav.glowna .sub.mega2{
    background:var(--sky);border:none;border-radius:14px;margin:2px 0 14px;padding:8px;}
  nav.glowna .sub a{padding:11px 14px;font-size:15px;background:transparent;border-radius:9px;}
  nav.glowna .sub a:hover{background:#fff;}
  nav.glowna .sub a small{font-size:11.5px;}
  nav.glowna .sub .cap{border-bottom:none;padding:10px 14px 2px;color:var(--navy);}
  nav.glowna .sub .grp{margin-bottom:2px;}
}
.tb-links{display:contents;}
@media (max-width:960px){
  .brand .t{min-width:0;overflow:hidden;}
  .topbar .right{justify-content:flex-start;flex-wrap:wrap;gap:8px;}
  .tb-links{display:flex;width:100%;gap:18px;padding-top:2px;}
}
@media (max-width:960px){
  .masthead .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;}
  nav.glowna{grid-column:1 / -1;}
  .cta-visit{display:none;}
}
@media (max-width:960px){
  .logo{min-width:0;gap:10px;}
  .logo img{width:38px;height:38px;}
  .logo > span{min-width:0;overflow:hidden;}
  .logo b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .logo > span > span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
}
@media (max-width:960px){
  .nav-burger{font-size:0;gap:0;width:44px;padding:0;justify-content:center;}
  .nav-burger svg{width:20px;height:20px;}
}

/* spacer wyeksponowany przy widgecie widoków */
.views-widget{display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.vw-spacer{display:inline-flex;align-items:center;gap:8px;background:#E8A33D;color:#3A2503;font-weight:800;font-size:14px;border-radius:99px;padding:11px 20px;text-decoration:none;box-shadow:0 10px 30px rgba(122,74,0,.35);}
.vw-spacer:hover{background:#F2B355;text-decoration:none;}
.vw-spacer svg{width:15px;height:15px;}
.vw-panel .vw-play{display:flex;align-items:center;gap:10px;background:#FCF0DA;color:#7A4A00;font-weight:800;font-size:14px;border-radius:9px;padding:10px 12px;margin:0 0 8px;text-decoration:none;}
.vw-panel .vw-play:hover{background:#F7E4BE;text-decoration:none;}
.vw-panel .vw-play svg{width:15px;height:15px;color:#7A4A00;}

/* pasmo planu placówki na stronie głównej */
.planband{background:var(--sky);border-top:1px solid var(--sky-2);border-bottom:1px solid var(--sky-2);margin-top:64px;}
.planband .wrap{display:flex;align-items:center;gap:26px;padding-top:34px;padding-bottom:34px;flex-wrap:wrap;}
.pb-ico{width:64px;height:64px;border-radius:16px;background:var(--navy);color:#fff;display:grid;place-items:center;flex:none;}
.pb-ico svg{width:32px;height:32px;stroke-width:1.7;}
.pb-txt{flex:1;min-width:260px;}
.planband h2{font-family:var(--display);font-weight:900;font-size:clamp(21px,2.6vw,28px);margin:0 0 6px;color:var(--navy-night);}
.planband p{margin:0;color:var(--ink-2);font-size:15px;max-width:60ch;}
.pb-btn{background:var(--navy);color:#fff;flex:none;}
.pb-btn:hover{background:var(--navy-deep);text-decoration:none;}
