
:root{--brand:#428bca;--brand-dark:#256fae;--brand-deep:#163f5f;--ink:#183247;--muted:#5d7182;--surface:#fff;--soft:#f3f8fc;--line:#dbe8f2;--shadow:0 18px 45px rgba(25,75,110,.11);--radius:18px;--radius-sm:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:var(--brand-dark);text-underline-offset:3px}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:#fff;color:#111;padding:.75rem 1rem;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(66,139,202,.18)}.navbar{min-height:78px}.navbar-brand img{object-fit:contain}.navbar-toggler{border-color:var(--line);padding:.6rem}.nav-link{color:var(--ink)!important;font-weight:650;font-size:.94rem;padding:.65rem .7rem!important;border-radius:8px}.nav-link:hover,.nav-link:focus{color:var(--brand-dark)!important;background:var(--soft)}.btn{font-weight:750;border-radius:10px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem}.btn-book,.btn-primary-accessible{background:var(--brand-dark);border:1px solid var(--brand-dark);color:#fff}.btn-book:hover,.btn-book:focus,.btn-primary-accessible:hover,.btn-primary-accessible:focus{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}.btn-outline-brand{border:1.5px solid var(--brand);color:var(--brand-deep);background:#fff}.btn-outline-brand:hover,.btn-outline-brand:focus{background:var(--soft);border-color:var(--brand-dark);color:var(--brand-deep)}:focus-visible{outline:3px solid #f0b429!important;outline-offset:3px!important}.hero-2026{padding:clamp(3rem,7vw,6.6rem) 0;background:linear-gradient(135deg,#f7fbff 0%,#edf6fd 55%,#fff 100%);overflow:hidden}.hero-2026 h1{font-size:clamp(2.25rem,5vw,4.35rem);line-height:1.06;letter-spacing:-.045em;margin:.6rem 0 1.35rem;color:#143750;max-width:760px}.eyebrow{display:inline-block;color:var(--brand-dark);font-size:.79rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850}.hero-lead{font-size:clamp(1.08rem,2vw,1.32rem);color:#405e72;max-width:670px}.hero-points{list-style:none;padding:0;margin:1.8rem 0;display:grid;gap:.9rem}.hero-points li{display:flex;gap:.75rem;align-items:flex-start}.hero-points i{color:var(--brand);margin-top:.34rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.7rem 0 1rem}.hero-note{font-size:.92rem;color:var(--muted);max-width:680px}.hero-media{position:relative}.hero-media picture img{display:block;width:100%;aspect-ratio:1.22/1;object-fit:cover;border-radius:28px;box-shadow:0 28px 65px rgba(22,63,95,.2)}.hero-media:before{content:"";position:absolute;inset:-22px -22px auto auto;width:160px;height:160px;border-radius:50%;background:rgba(66,139,202,.17);z-index:-1}.location-card{position:absolute;left:-28px;bottom:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:.85rem 1rem;display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;min-width:310px}.location-card i{color:var(--brand-dark);font-size:1.35rem}.location-card div{display:flex;flex-direction:column}.location-card span{font-size:.82rem;color:var(--muted)}.location-card a{font-weight:800;text-decoration:none}.trust-strip{background:var(--brand-dark);padding:1.1rem 0;border-top:4px solid var(--brand)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.trust-grid>div{text-align:center;color:#fff;border-right:1px solid rgba(255,255,255,.25)}.trust-grid>div:last-child{border-right:0}.trust-grid strong{display:block;font-size:1.3rem}.trust-grid span{font-size:.82rem;font-weight:650}.section{padding:clamp(4.2rem,8vw,7rem) 0}.narrow{max-width:900px}.intro-section{text-align:center}.intro-section h2,.section-heading h2,.about-section h2,.reviews-section h2,.contact-section h2,.faq-section h2{font-size:clamp(1.9rem,4vw,3rem);line-height:1.16;letter-spacing:-.03em;margin:.5rem 0 1.2rem}.intro-section p{font-size:1.08rem;color:#405e72}.services-section,.pricing-section,.benefits-section,.faq-section{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.2rem}.section-heading>p{max-width:530px;color:var(--muted);margin:0}.section-heading.centered{display:block;text-align:center;max-width:820px;margin:0 auto 2.4rem}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.55rem;box-shadow:0 8px 24px rgba(25,75,110,.05);display:flex;flex-direction:column;min-height:100%;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card--small{grid-column:span 2}.service-icon{width:48px;height:48px;border-radius:14px;background:rgba(66,139,202,.14);display:grid;place-items:center;color:var(--brand-dark);font-size:1.25rem;margin-bottom:1rem}.service-card h3{font-size:1.16rem;line-height:1.3}.service-card h3 a{color:var(--ink);text-decoration:none}.service-card p{color:var(--muted);font-size:.95rem;flex:1}.text-link{font-weight:800;text-decoration:none}.process-section{background:#fff}.process-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;counter-reset:step}.process-grid li{position:relative;padding:1.8rem 1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.process-grid li>span{width:42px;height:42px;border-radius:50%;background:var(--brand-dark);color:#fff;font-weight:900;display:grid;place-items:center;margin-bottom:1rem}.process-grid h3{font-size:1.2rem}.process-grid p{margin:0;color:var(--muted)}.about-section{background:linear-gradient(180deg,#fff,#f8fbfe)}.about-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.check-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:1.5rem 0}.check-list li:before{content:"✓";color:var(--brand-dark);font-weight:900;margin-right:.55rem}.content-details,.brand-details{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.content-details summary,.brand-details summary{cursor:pointer;padding:1rem 1.15rem;font-weight:800;color:var(--brand-deep)}.content-details__body{padding:0 1.15rem 1.15rem;max-height:520px;overflow:auto;border-top:1px solid var(--line)}.content-details__body h2:first-child{display:none}.content-details__body h3{font-size:1.15rem;margin-top:1.5rem}.content-details__body p{color:#405e72}.reviews-section{background:#fff}.reviews-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:start;margin-bottom:2rem}.rating-display{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.rating-display strong{font-size:2.6rem}.rating-display span{color:#e59d00;letter-spacing:.08em}.rating-display small{width:100%;color:var(--muted)}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.price-grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;position:relative}.price-grid article.featured{border:2px solid var(--brand);transform:translateY(-8px);box-shadow:var(--shadow)}.price-grid .badge{position:absolute;right:1rem;top:1rem;background:var(--brand-dark);color:#fff}.price{display:block;color:var(--brand-dark);font-size:1.7rem;font-weight:900;margin-bottom:.7rem}.price-grid h3{font-size:1.15rem}.price-grid h3 a{color:var(--ink);text-decoration:none}.price-grid p{color:var(--muted);font-size:.94rem}.pricing-note{text-align:center;margin:2rem auto 0;max-width:820px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.guide-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(25,75,110,.06)}.guide-card__image{display:block;overflow:hidden}.guide-card img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .25s ease}.guide-card:hover img{transform:scale(1.025)}.guide-card__body{padding:1.3rem}.guide-card h3{font-size:1.18rem;line-height:1.35;margin:.5rem 0}.guide-card h3 a{color:var(--ink);text-decoration:none}.guide-card p{color:var(--muted);font-size:.94rem}.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.benefit-grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;overflow:hidden}.benefit-grid article>img{margin-top:1.2rem;border-radius:12px;width:100%;max-height:260px;object-fit:cover}.benefit-icon{width:48px;height:48px;border-radius:14px;background:rgba(66,139,202,.14);display:grid;place-items:center;color:var(--brand-dark);font-size:1.25rem}.brand-details{margin-top:1.25rem}.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem;border-top:1px solid var(--line)}.brand-grid img{width:100%;height:82px;object-fit:contain;filter:grayscale(1);opacity:.78}.promo-section{background:#fff}.promo-card{background:linear-gradient(120deg,var(--brand-deep),#286da8);color:#fff;border-radius:24px;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;overflow:hidden}.promo-card .eyebrow{color:#cfe8fb}.promo-card img{border-radius:14px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch}.contact-cards{display:grid;gap:.75rem;margin:1.5rem 0}.contact-cards a{display:flex;gap:.85rem;align-items:center;border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;text-decoration:none;color:var(--ink);background:#fff}.contact-cards i{color:var(--brand-dark);font-size:1.15rem;width:22px}.contact-cards span{display:flex;flex-direction:column}.contact-cards small{color:var(--muted)}.hours{list-style:none;padding:0}.hours li{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:.65rem 0}.map-wrap{border-radius:20px;overflow:hidden;box-shadow:var(--shadow);min-height:520px}.map-wrap iframe{display:block;height:100%;min-height:520px}.faq-list{display:grid;gap:.8rem}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px}.faq-list summary{cursor:pointer;padding:1rem 1.15rem;font-weight:800}.faq-list p{padding:0 1.15rem 1.15rem;margin:0;color:var(--muted)}.final-cta{padding:3.2rem 0;background:var(--brand-dark);color:#fff;border-top:4px solid var(--brand)}.final-cta .container{display:flex;justify-content:space-between;gap:2rem;align-items:center}.final-cta .eyebrow{color:#d9efff}.final-cta h2{font-size:clamp(1.8rem,4vw,2.8rem);margin:.4rem 0}.final-cta p{margin:0}.final-actions{display:flex;gap:.75rem;flex-shrink:0}.site-footer{background:#112f45;color:#dce9f2;padding:4rem 0 1.4rem}.site-footer img{filter:brightness(0) invert(1);margin-bottom:1rem}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem}.footer-grid h2{font-size:1rem;color:#fff}.footer-grid a{display:block;color:#dce9f2;text-decoration:none;margin:.45rem 0}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:2.5rem;padding-top:1.2rem;display:flex;justify-content:space-between;font-size:.86rem}.mobile-cta{display:none}.navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2822,63,95,.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}
@media(max-width:1199.98px){.service-grid{grid-template-columns:repeat(2,1fr)}.service-card--small{grid-column:span 1}.price-grid{grid-template-columns:repeat(2,1fr)}.price-grid article.featured{transform:none}.brand-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:991.98px){body{font-size:16px}.navbar-collapse{padding:1rem 0 1.2rem}.btn-book{width:100%;margin-top:.5rem}.location-card{left:18px;bottom:18px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-grid>div:nth-child(2){border-right:0}.trust-grid>div{padding:.4rem}.section-heading{align-items:flex-start}.reviews-intro,.contact-grid{grid-template-columns:1fr}.map-wrap{min-height:400px}.map-wrap iframe{min-height:400px}.footer-grid{grid-template-columns:1fr 1fr}.final-cta .container{align-items:flex-start;flex-direction:column}.mobile-cta{display:grid;grid-template-columns:1fr 1.4fr;position:fixed;left:0;right:0;bottom:0;z-index:1040;box-shadow:0 -10px 30px rgba(15,45,68,.18)}.mobile-cta a{min-height:58px;display:flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;font-weight:850}.mobile-cta a:first-child{background:#fff;color:var(--brand-deep)}.mobile-cta a:last-child{background:var(--brand-dark);color:#fff}body{padding-bottom:58px}}
@media(max-width:767.98px){.hero-2026{padding-top:2.5rem}.hero-actions,.final-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .btn,.final-actions .btn{width:100%}.location-card{position:relative;left:auto;bottom:auto;margin:-24px 14px 0;min-width:0}.section{padding:4rem 0}.section-heading{display:block}.section-heading .btn{margin-top:1rem}.service-grid,.process-grid,.price-grid,.guide-grid,.benefit-grid,.promo-card{grid-template-columns:1fr}.check-list{grid-template-columns:1fr}.brand-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:.3rem 0}.trust-grid strong{font-size:1.15rem}.trust-grid span{font-size:.75rem}.content-details__body{max-height:430px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Korekty nawigacji 2026-07-25 */
.navbar-brand{display:flex;align-items:center;flex:0 0 auto;margin-right:1rem;padding:.15rem 0}
.navbar-brand img{display:block;width:240px;height:60px;object-fit:contain}
.navbar-collapse{gap:.7rem}
.navbar-nav{gap:.05rem}
.nav-link{font-size:.875rem;padding:.58rem .48rem!important;white-space:nowrap}
.language-nav{display:flex;align-items:center;gap:.15rem;margin-left:.35rem;padding-left:.55rem;border-left:1px solid var(--line)}
.language-nav a{display:grid;place-items:center;min-width:32px;height:32px;padding:0 .35rem;border-radius:7px;color:var(--brand-deep);font-size:.78rem;font-weight:850;text-decoration:none}
.language-nav a:hover,.language-nav a:focus{background:var(--soft);color:var(--brand-dark)}
.language-nav a[aria-current="page"]{background:var(--brand);color:#fff}
.btn-book{flex:0 0 auto;white-space:nowrap;margin-left:.35rem}
@media(max-width:1199.98px){.navbar-brand img{width:220px;height:55px}.navbar-collapse{gap:0}.language-nav{margin:.6rem 0;border-left:0;padding-left:0}.btn-book{margin-left:0}.navbar-nav{align-items:stretch!important}}
@media(max-width:575.98px){.navbar-brand img{width:180px;height:45px}}

/* Korekta nadmiernej przestrzeni nad pierwszą treścią — 2026-07-25 */
.hero-2026{
  padding-top:clamp(1.75rem,3vw,3rem);
  padding-bottom:clamp(2.75rem,4.5vw,4.5rem);
}
@media(max-width:767.98px){
  .hero-2026{padding-top:1.35rem;padding-bottom:2.5rem}
}
/* Nawigacja strony głównej na tabletach i mniejszych ekranach — 2026-07-25 */
@media (max-width:1399.98px){
  .site-header .navbar-collapse{
    width:100%;
    max-height:calc(100vh - 78px);
    overflow-y:auto;
    overflow-x:hidden;
    padding:.9rem 0 1.15rem;
    overscroll-behavior:contain;
  }
  .site-header .navbar-nav{align-items:stretch!important;width:100%;}
  .site-header .nav-link{width:100%;white-space:normal;padding:.72rem .75rem!important;}
  .site-header .language-nav{margin:.65rem 0;border-left:0;padding-left:0;justify-content:flex-start;}
  .site-header .btn-book{width:100%;max-width:none;margin:.35rem 0 0;}
}
@media (min-width:1400px){
  .site-header .navbar-collapse{min-width:0;gap:.35rem;}
  .site-header .navbar-nav{min-width:0;}
  .site-header .nav-link{font-size:.84rem;padding:.58rem .42rem!important;}
  .site-header .language-nav{margin-left:.25rem;padding-left:.4rem;}
  .site-header .btn-book{margin-left:.15rem;min-width:126px;padding-left:.75rem;padding-right:.75rem;}
}
@media (max-width:575.98px){
  .site-header .navbar>.container-fluid{padding-left:.75rem;padding-right:.75rem;}
  .site-header .navbar-toggler{flex:0 0 auto;}
  .site-header .navbar-collapse{max-height:calc(100vh - 68px);}
}

/* Usunięcie poziomego przewijania na małych ekranach — 2026-07-25 */
@media (max-width:575.98px){
  body{overflow-x:hidden;}
  .hero-2026 .row.g-5,.about-section .row.g-5{--bs-gutter-x:1.5rem;}
  .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:.75rem;}
  .brand-grid img{min-width:0;max-width:100%;}
}


/* Ostateczna korekta: stały nagłówek i bezkolizyjna nawigacja — 2026-07-25 */
:root{--site-header-height:82px;}
html{scroll-padding-top:calc(var(--site-header-height) + 16px);}
body,body.site-2026{padding-top:var(--site-header-height)!important;}
.site-header{
  position:fixed!important;
  top:0!important;
  left:0;
  right:0;
  width:100%;
  z-index:1085!important;
}
.site-header .navbar{min-height:var(--site-header-height);}
.site-header .navbar>.container-fluid{
  width:100%;
  max-width:none!important;
  padding-left:clamp(.75rem,1.6vw,1.75rem);
  padding-right:clamp(.75rem,1.6vw,1.75rem);
}
.site-header .navbar-collapse,.site-header .navbar-nav{min-width:0;}
.site-header .language-nav,.site-header .btn-book{flex:0 0 auto;}

/* Do 1499 px menu jest zwijane. Zapobiega to nachodzeniu Kontaktu,
   wersji językowych i przycisku rezerwacji na laptopach. */
@media (max-width:1499.98px){
  .site-header .navbar-expand-xxl{flex-wrap:wrap;}
  .site-header .navbar-expand-xxl .navbar-toggler{display:block;}
  .site-header .navbar-expand-xxl .navbar-collapse{
    display:none!important;
    flex-basis:100%;
    width:100%;
    align-items:stretch;
    max-height:calc(100vh - var(--site-header-height));
    overflow-y:auto;
    overflow-x:hidden;
    padding:.8rem 0 1rem;
    background:#fff;
    overscroll-behavior:contain;
  }
  .site-header .navbar-expand-xxl .navbar-collapse.show,
  .site-header .navbar-expand-xxl .navbar-collapse.collapsing{display:block!important;}
  .site-header .navbar-expand-xxl .navbar-nav{
    flex-direction:column;
    width:100%;
    align-items:stretch!important;
  }
  .site-header .nav-link{
    display:block;
    width:100%;
    white-space:normal!important;
    padding:.72rem .75rem!important;
  }
  .site-header .language-nav{
    width:100%;
    margin:.65rem 0 0;
    padding:.65rem 0 0;
    border-left:0;
    border-top:1px solid var(--line);
    justify-content:flex-start;
  }
  .site-header .btn-book{
    width:100%;
    max-width:none;
    margin:.55rem 0 0;
  }
}

/* Pełne menu poziome tylko wtedy, gdy rzeczywiście mieści się w nagłówku. */
@media (min-width:1500px){
  .site-header .navbar-expand-xxl{flex-wrap:nowrap;}
  .site-header .navbar-expand-xxl .navbar-toggler{display:none;}
  .site-header .navbar-expand-xxl .navbar-collapse{
    display:flex!important;
    flex-basis:auto;
    align-items:center;
    flex-wrap:nowrap;
    gap:.3rem;
    overflow:visible;
    padding:0;
  }
  .site-header .navbar-expand-xxl .navbar-nav{
    flex-direction:row;
    flex:1 1 auto;
    justify-content:flex-end;
    align-items:center!important;
    flex-wrap:nowrap;
    gap:0;
  }
  .site-header .navbar-brand{margin-right:.65rem;}
  .site-header .navbar-brand img{width:200px;height:50px;}
  .site-header .nav-link{
    font-size:.80rem;
    padding:.55rem .31rem!important;
    white-space:nowrap!important;
  }
  .site-header .language-nav{margin-left:.2rem;padding-left:.35rem;}
  .site-header .language-nav a{min-width:29px;padding:0 .25rem;}
  .site-header .btn-book{
    min-width:118px;
    margin-left:.15rem;
    padding-left:.65rem;
    padding-right:.65rem;
    font-size:.92rem;
  }
}
@media (min-width:1750px){
  .site-header .navbar-brand img{width:220px;height:55px;}
  .site-header .nav-link{font-size:.88rem;padding:.58rem .48rem!important;}
  .site-header .language-nav{margin-left:.35rem;padding-left:.55rem;}
  .site-header .btn-book{min-width:132px;padding-left:1rem;padding-right:1rem;font-size:1rem;}
}
@media (max-width:575.98px){
  :root{--site-header-height:69px;}
  .site-header .navbar-collapse{max-height:calc(100vh - var(--site-header-height));}
}
