:root { --jkh-green:#009746; --jkh-ink:#071b13; --jkh-muted:#68736e; }
body,button,input,textarea,select { font-family:"Chakra Petch",sans-serif !important; }
.nitro-x-icon { display:block; width:1em; height:1em; }

/* Zgoda na cookies. */
.nitro-cookie-banner[hidden] { display:none !important; }
.nitro-cookie-banner { position:fixed; z-index:99996; bottom:20px; left:20px; box-sizing:border-box; width:min(980px,calc(100% - 140px)); display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:20px; margin:0; padding:18px 20px; border:1px solid #dfe6e2; border-top:3px solid var(--jkh-green); background:rgba(255,255,255,.985); color:var(--jkh-ink); box-shadow:0 12px 35px rgba(7,35,24,.13); opacity:0; transform:translateY(16px); transition:opacity .3s ease,transform .3s ease; }
.nitro-cookie-banner.is-visible { opacity:1; transform:none; }
.nitro-cookie-icon { display:none; }
.nitro-cookie-copy h2 { margin:0 0 5px; color:var(--jkh-ink); font-family:"Big Shoulders",sans-serif; font-size:23px; font-weight:900; line-height:1; letter-spacing:.02em; }
.nitro-cookie-copy p { max-width:640px; margin:0; color:#6d7973; font:500 10px/1.55 "Chakra Petch",sans-serif; }
.nitro-cookie-copy a { color:var(--jkh-green); font-weight:800; text-decoration:underline; text-underline-offset:2px; }
.nitro-cookie-actions { display:flex; align-items:center; gap:10px; }
.nitro-cookie-button { min-height:38px; padding:0 14px; border:1px solid #ced9d3; color:var(--jkh-ink); font:800 8px/1 "Chakra Petch",sans-serif; letter-spacing:.035em; white-space:nowrap; cursor:pointer; transition:background-color .2s ease,border-color .2s ease,color .2s ease; }
.nitro-cookie-button--secondary { background:#fff; }
.nitro-cookie-button--primary { border-color:var(--jkh-green); background:var(--jkh-green); color:#fff; }
.nitro-cookie-button:hover,.nitro-cookie-button:focus { border-color:#087344; background:#087344; color:#fff; }

/* Panel informacyjny otwierany z prawej strony naglowka. */
body.nitro-side-panel-open { overflow:hidden; }
.nitro-side-panel { position:fixed; z-index:99998; top:0; right:0; width:min(440px,100%); height:100%; overflow-y:auto; border-left:2px solid var(--jkh-green); background:#fff; color:var(--jkh-ink); opacity:0; visibility:hidden; transform:translateX(100%); transition:transform .45s ease,opacity .45s ease,visibility .45s ease; }
.nitro-side-panel.is-open { opacity:1; visibility:visible; transform:translateX(0); }
.nitro-side-panel-inner { box-sizing:border-box; min-height:100%; padding:32px; font-family:"Chakra Petch",sans-serif; }
.nitro-side-panel-top { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:38px; }
.nitro-side-panel-logo { width:auto; max-width:calc(100% - 70px); }
.nitro-side-panel-logo.nitro-logo { flex:0 1 auto; margin:0; }
.nitro-brand-lockup { display:flex; align-items:center; gap:14px; color:var(--jkh-ink); text-decoration:none; }
.nitro-brand-lockup img { flex:0 0 68px; display:block; width:68px; height:68px; object-fit:cover; object-position:left center; }
.nitro-brand-lockup > span { display:flex; flex-direction:column; color:inherit; font-family:"Big Shoulders",sans-serif; font-size:28px; font-weight:900; line-height:.88; letter-spacing:.01em; }
.nitro-brand-lockup > span strong { font:inherit; }
.nitro-side-panel-close { flex:0 0 48px; width:48px; height:48px; padding:0; border:0; border-radius:50%; background:var(--jkh-green); color:#fff; font-size:20px; cursor:pointer; transition:background-color .25s ease,transform .25s ease; }
.nitro-side-panel-close:hover,.nitro-side-panel-close:focus { background:#07623f; transform:rotate(90deg); }
.nitro-side-panel-inner > p { margin:0 0 28px; color:var(--jkh-muted); font-size:13px; font-weight:600; line-height:1.8; }
.nitro-side-panel-image { display:block; width:100%; height:210px; object-fit:cover; object-position:center; }
.nitro-side-panel-contact { margin-top:28px; }
.nitro-side-panel-contact h2 { margin:0 0 22px; font-family:"Big Shoulders",sans-serif; font-size:34px; font-weight:900; line-height:1; text-transform:uppercase; }
.nitro-side-panel-contact ul { margin:0 0 28px; padding:0; list-style:none; }
.nitro-side-panel-contact li { display:flex; align-items:flex-start; gap:15px; margin-bottom:17px; color:var(--jkh-muted); font-size:13px; font-weight:600; line-height:1.6; }
.nitro-side-panel-contact li > i { width:18px; margin-top:3px; color:var(--jkh-green); text-align:center; }
.nitro-side-panel-contact a { color:inherit; }
.nitro-side-panel-contact li a:hover { color:var(--jkh-green); }
.nitro-side-panel .nitro-btn { color:#fff; }
.nitro-side-panel-social { display:flex; gap:10px; margin-top:28px; }
.nitro-side-panel-social a { width:44px; height:44px; display:flex; align-items:center; justify-content:center; background:#f2f5f3; color:var(--jkh-ink); transition:background-color .25s ease,color .25s ease,transform .25s ease; }
.nitro-side-panel-social a:hover,.nitro-side-panel-social a:focus { background:var(--jkh-green); color:#fff; transform:translateY(-3px); }
.nitro-side-panel-overlay { position:fixed; z-index:99997; inset:0; width:100%; height:100%; padding:0; border:0; background:rgba(2,12,9,.78); opacity:0; visibility:hidden; cursor:pointer; transition:opacity .4s ease,visibility .4s ease; }
.nitro-side-panel-overlay.is-open { opacity:1; visibility:visible; }

/* Jeden szkielet Nitro na stronie glownej i wszystkich podstronach. */
.nitro-header--subpage,.nitro-header--subpage *,.nitro-product-page,.nitro-product-page * { box-sizing:border-box; }
.nitro-header--subpage { font-family:"Chakra Petch",sans-serif; }
.nitro-news-page,.nitro-gallery-page,.nitro-contact-page,.nitro-product-page,.nitro-generic-content { font-family:"Chakra Petch",sans-serif; }
body:not(.nitro-home) .nitro-container { width:min(1480px,calc(100% - 56px)); margin-right:auto; margin-left:auto; }
body:not(.nitro-home) .nitro-generic-content { width:min(1480px,calc(100% - 56px)) !important; }
.nitro-menu > ul > li.is-active > a { color:var(--jkh-green); }
.nitro-menu > ul > li.is-active > a::after { width:100%; }
body:not(.nitro-home) .nitro-page-hero { min-height:370px; padding-top:135px; }
body:not(.nitro-home) .nitro-page-hero { background-image:var(--nitro-subpage-hero,linear-gradient(135deg,#061b13,#08734b)) !important; }
body:not(.nitro-home) .nitro-page-hero .nitro-container { padding-bottom:48px; }
body:not(.nitro-home) .nitro-page-hero::before { background:linear-gradient(90deg,rgba(2,19,13,.96),rgba(1,63,40,.77),rgba(0,0,0,.42)); }
body:not(.nitro-home) .nitro-page-hero h1 { text-wrap:balance; }
.nitro-site-footer .wow,.nitro-page-hero .wow { visibility:visible; }
.theme-btn { position:relative; isolation:isolate; overflow:hidden; }
.theme-btn::before { content:""; position:absolute; z-index:-1; top:-10px; left:50%; width:0; height:0; border-radius:50%; background:#073e2a; transform:translate(-50%,-50%); transition:width .7s ease,height .7s ease; }
.theme-btn:hover::before,.theme-btn:focus::before { width:700px; height:700px; }
.theme-btn i { transition:transform .3s ease; }
.theme-btn:hover i,.theme-btn:focus i { transform:translate(3px,-3px); }

/* Produkt Nitro */
.nitro-product-page { background:#fff; color:var(--jkh-ink); }
.nitro-product-page .nitro-container { width:min(1380px,calc(100% - 56px)); margin:0 auto; }
.nitro-product-detail-section { padding:120px 0 135px; }
.nitro-product-detail { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:78px; align-items:center; }
.nitro-product-detail-image { overflow:hidden; background:#f2f5f3; }
.nitro-product-detail-image a { position:relative; min-height:620px; display:flex; align-items:center; justify-content:center; padding:40px; }
.nitro-product-detail-image img { display:block; width:100%; max-height:620px; object-fit:contain; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.nitro-product-detail-image span { position:absolute; right:24px; bottom:24px; width:52px; height:52px; display:flex; align-items:center; justify-content:center; background:#fff; color:var(--jkh-green); opacity:0; transform:translateY(10px); transition:.3s ease; }
.nitro-product-detail-image:hover img { transform:scale(1.045); }
.nitro-product-detail-image:hover span { opacity:1; transform:none; }
.nitro-product-detail-copy .nitro-kicker { color:var(--jkh-green); font-size:11px; }
.nitro-product-detail-copy h2 { margin:0; font-family:"Big Shoulders",sans-serif; font-size:clamp(50px,5vw,76px); font-weight:900; line-height:.95; text-transform:uppercase; }
.nitro-product-detail-price { margin:28px 0; color:var(--jkh-green); font-family:"Big Shoulders",sans-serif; font-size:38px; font-weight:900; }
.nitro-product-detail-description { color:var(--jkh-muted); font-size:15px; line-height:1.85; }
.nitro-product-detail-description img { max-width:100%; height:auto; }
.nitro-product-detail-actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; margin-top:38px; }
.nitro-product-back { color:var(--jkh-ink); font-size:11px; font-weight:800; }
.nitro-product-back i { margin-right:8px; color:var(--jkh-green); transition:transform .25s ease; }
.nitro-product-back:hover { color:var(--jkh-green); }
.nitro-product-back:hover i { transform:translateX(-4px); }

/* Ekran startowy */
html.nitro-loader-active,html.nitro-loader-active body { overflow:hidden !important; }
html.nitro-loader-seen .nitro-page-loader { display:none !important; }
.nitro-page-loader { position:fixed; z-index:999999; inset:0; display:flex; align-items:center; justify-content:center; overflow:hidden; background:linear-gradient(135deg,#04150e 0%,#075032 100%); opacity:1; visibility:visible; transition:opacity .5s ease,visibility .5s ease; }
.nitro-page-loader::before,.nitro-page-loader::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.08); border-radius:50%; }
.nitro-page-loader::before { width:52vw; height:52vw; min-width:520px; min-height:520px; }
.nitro-page-loader::after { width:38vw; height:38vw; min-width:380px; min-height:380px; }
.nitro-page-loader.is-hidden { opacity:0; visibility:hidden; pointer-events:none; }
.nitro-page-loader-inner { position:relative; z-index:1; display:flex; align-items:center; flex-direction:column; color:#fff; text-align:center; transition:opacity .32s ease,transform .32s ease; }
.nitro-page-loader.is-completing .nitro-page-loader-inner { opacity:0; transform:scale(.96); }
.nitro-page-loader-mark { position:relative; width:120px; height:120px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#fff url("../../images/logo.png") 22px center/371px 92px no-repeat; box-shadow:0 24px 70px rgba(0,0,0,.25); }
.nitro-page-loader-ring { position:absolute; inset:-11px; border:2px solid rgba(255,255,255,.17); border-top-color:#16bd67; border-right-color:#16bd67; border-radius:50%; animation:nitroLoaderSpin .9s linear infinite; }
.nitro-page-loader-inner p { display:flex; align-items:center; gap:9px; margin:28px 0 10px; color:#8bd5ad; font:700 10px/1 "Chakra Petch",sans-serif; letter-spacing:.2em; }
.nitro-page-loader-inner p i { width:4px; height:4px; border-radius:50%; background:#16bd67; }
.nitro-page-loader-inner strong { color:#fff; font-family:"Big Shoulders",sans-serif; font-size:38px; font-weight:900; line-height:.82; letter-spacing:.02em; }
.nitro-page-loader-progress { width:190px; height:2px; margin-top:28px; overflow:hidden; background:rgba(255,255,255,.16); }
.nitro-page-loader-progress span { display:block; width:100%; height:100%; background:#16bd67; transform:translateX(-100%); animation:nitroLoaderProgress .55s cubic-bezier(.2,.75,.3,1) forwards; }
.nitro-page-loader.is-completing .nitro-page-loader-progress span { animation:none; transform:translateX(0); transition:transform .16s ease; }
@keyframes nitroLoaderSpin { to { transform:rotate(360deg); } }
@keyframes nitroLoaderProgress { to { transform:translateX(0); } }

/* Stopka Nitro */
.nitro-site-footer { position:relative; padding:95px 0 0; overflow:hidden; background:#06140f center/cover; color:#b8c2bd; }
.nitro-site-footer::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,15,11,.98),rgba(1,47,31,.92)); }
.nitro-footer-container { position:relative; z-index:1; width:min(1380px,calc(100% - 56px)); margin:0 auto; }
.nitro-footer-top { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:0 0 55px; border-bottom:1px solid rgba(255,255,255,.15); }
.nitro-footer-top h2 { max-width:720px; margin:0; color:#fff; font-family:"Big Shoulders",sans-serif; font-size:clamp(44px,4.4vw,70px); font-weight:900; line-height:.95; text-transform:uppercase; }
.nitro-footer-top h2 span { color:var(--jkh-green); }
.nitro-footer-top > div { display:flex; align-items:center; gap:20px; }
.nitro-footer-top strong { color:#fff; font-size:11px; letter-spacing:.1em; }
.nitro-footer-top nav { display:flex; gap:8px; }
.nitro-footer-top nav a { width:44px; height:44px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.22); color:#fff; }
.nitro-footer-top nav a:hover { border-color:var(--jkh-green); background:var(--jkh-green); transform:translateY(-3px); }
.nitro-footer-widgets { display:grid; grid-template-columns:1.65fr 1fr 1fr 1.15fr; gap:65px; padding:72px 0 75px; }
.nitro-footer-logo { display:flex; align-items:center; gap:16px; color:#fff; }
.nitro-footer-logo.nitro-logo { flex:0 1 auto; width:auto; margin:0; color:#fff; }
.nitro-footer-logo.nitro-logo .nitro-logo-text { color:#fff; font-size:27px; }
.nitro-footer-logo.nitro-logo > img.nitro-footer-crest-highres { flex:0 0 56px; display:block; width:56px !important; max-width:56px !important; height:68px !important; max-height:68px !important; object-fit:contain; object-position:center; }
.nitro-footer-logo.nitro-brand-lockup img { flex-basis:72px; width:72px; height:72px; }
.nitro-footer-logo.nitro-brand-lockup > span { color:#fff; font-size:31px; }
.nitro-footer-about p { max-width:390px; margin:25px 0 0; font-size:13px; line-height:1.8; }
.nitro-footer-widgets h3 { margin:4px 0 25px; color:#fff; font-family:"Big Shoulders",sans-serif; font-size:28px; font-weight:850; text-transform:uppercase; }
.nitro-footer-widgets ul { margin:0; padding:0; list-style:none; }
.nitro-footer-widgets li { margin:0 0 14px; font-size:12px; line-height:1.6; }
.nitro-footer-widgets a { color:#b8c2bd; }
.nitro-footer-widgets a:hover { padding-left:5px; color:var(--jkh-green); }
.nitro-footer-contact li { margin-bottom:17px; }
.nitro-footer-bottom { display:flex; justify-content:space-between; gap:25px; padding:25px 0; border-top:1px solid rgba(255,255,255,.15); font-size:11px; }
.nitro-footer-bottom p { margin:0; }
.nitro-footer-bottom nav { display:flex; flex-wrap:wrap; gap:24px; }
.nitro-footer-bottom a { color:#b8c2bd; }
.nitro-footer-bottom a:hover { color:var(--jkh-green); }

/* Kontakt Nitro */
.nitro-contact-page { background:#fff; color:var(--jkh-ink); }
.nitro-contact-page .nitro-container { width:min(1380px,calc(100% - 56px)); margin:0 auto; }
.nitro-contact-info-section { padding:78px 0; }
.nitro-contact-info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:38px; }
.nitro-contact-info-grid article { min-height:120px; display:flex; gap:22px; padding-left:26px; border-left:2px solid var(--jkh-green); }
.nitro-contact-info-grid article > i { margin-top:4px; color:var(--jkh-green); font-size:25px; }
.nitro-contact-info-grid h3 { margin:0 0 13px; font-family:"Big Shoulders",sans-serif; font-size:28px; font-weight:850; text-transform:uppercase; }
.nitro-contact-info-grid p { margin:0; color:var(--jkh-muted); font-size:14px; line-height:1.7; }
.nitro-contact-info-grid a { display:block; color:var(--jkh-muted); font-size:14px; line-height:1.7; }
.nitro-contact-info-grid a:hover { color:var(--jkh-green); }
.nitro-contact-box-section { padding:0 0 125px; }
.nitro-contact-box { display:grid; grid-template-columns:.9fr 1.1fr; min-height:650px; background:#f4f6f5; }
.nitro-contact-map iframe { width:100%; height:100%; min-height:650px; border:0; }
.nitro-contact-form { padding:70px 65px; }
.nitro-contact-form h2 { margin:0 0 18px; font-family:"Big Shoulders",sans-serif; font-size:clamp(48px,4vw,66px); font-weight:900; line-height:.96; text-transform:uppercase; }
.nitro-contact-form h2 span { color:var(--jkh-green); }
.nitro-contact-form > p:not(.nitro-kicker) { margin:0 0 32px; color:var(--jkh-muted); font-size:13px; }
.nitro-contact-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.nitro-contact-form label strong { display:block; margin-bottom:9px; font-size:10px; letter-spacing:.07em; }
.nitro-contact-form input,.nitro-contact-form textarea { box-sizing:border-box; width:100%; padding:16px 18px; border:1px solid #dce3df; outline:0; background:#fff; color:var(--jkh-ink); font:600 13px/1.5 "Chakra Petch",sans-serif; }
.nitro-contact-form input:focus,.nitro-contact-form textarea:focus { border-color:var(--jkh-green); }
.nitro-contact-message { grid-column:1 / 3; }
.nitro-contact-form textarea { min-height:165px; resize:vertical; }
.nitro-contact-form .g-recaptcha { margin:22px 0; }
.nitro-contact-form .btn-submit-acr { box-sizing:border-box; width:auto; min-width:230px; height:auto; padding:0 30px; font-family:inherit; white-space:nowrap; }
.nitro-contact-form .btn-submit-acr:disabled { color:#fff; cursor:not-allowed; opacity:.68; }
.nitro-contact-privacy { max-width:680px; margin:24px 0 0; padding-top:20px; border-top:1px solid #dce3df; color:#78837e; font-size:11px; font-weight:500; line-height:1.65; }
.nitro-contact-privacy a { color:var(--jkh-green); font-weight:800; text-decoration:underline; text-underline-offset:2px; }

@media (max-width:950px) {
  .nitro-cookie-banner { right:96px; left:16px; width:auto; grid-template-columns:1fr; }
  .nitro-cookie-actions { grid-column:auto; justify-content:flex-start; }
  .nitro-footer-widgets { grid-template-columns:1fr 1fr; }
  .nitro-contact-box { grid-template-columns:1fr; }
  .nitro-contact-map iframe { min-height:430px; }
  .nitro-product-detail { grid-template-columns:1fr; gap:50px; }
}
@media (max-width:800px) {
  .nitro-footer-container,.nitro-contact-page .nitro-container,.nitro-product-page .nitro-container { width:min(100% - 32px,1380px); }
  .nitro-footer-top { align-items:flex-start; flex-direction:column; }
  .nitro-contact-info-grid { grid-template-columns:1fr; }
  body:not(.nitro-home) .nitro-page-hero { min-height:340px; padding-top:128px; }
  .nitro-product-detail-section { padding:80px 0 95px; }
  body:not(.nitro-home) .nitro-container,body:not(.nitro-home) .nitro-generic-content { width:min(100% - 32px,1480px) !important; }
}
@media (max-width:560px) {
  .nitro-cookie-banner { right:10px; bottom:96px; left:10px; width:auto; gap:13px; padding:16px; }
  .nitro-cookie-copy h2 { font-size:22px; }
  .nitro-cookie-copy p { font-size:9px; line-height:1.55; }
  .nitro-cookie-actions { grid-column:auto; align-items:stretch; flex-direction:column-reverse; }
  .nitro-cookie-button { width:100%; min-height:38px; }
  .nitro-site-footer { padding-top:70px; }
  .nitro-footer-top > div { align-items:flex-start; flex-direction:column; }
  .nitro-footer-widgets { grid-template-columns:1fr; gap:40px; padding:55px 0; }
  .nitro-footer-bottom { align-items:flex-start; flex-direction:column; }
  .nitro-contact-form { padding:48px 24px; }
  .nitro-contact-form-grid { grid-template-columns:1fr; }
  .nitro-contact-message { grid-column:auto; }
  body:not(.nitro-home) .nitro-page-hero { min-height:310px; padding-top:118px; }
  body:not(.nitro-home) .nitro-page-hero .nitro-container { padding-bottom:38px; }
  .nitro-product-detail-image a { min-height:380px; padding:24px; }
}

@media (max-width:560px) {
  .nitro-page-loader-mark { width:104px; height:104px; }
  .nitro-page-loader-mark { background-position:19px center; background-size:322px 80px; }
  .nitro-page-loader-inner strong { font-size:33px; }
  .nitro-page-loader-progress { width:170px; }
  .nitro-side-panel-inner { padding:24px 20px; }
  .nitro-side-panel-image { height:190px; }
}
@media (prefers-reduced-motion:reduce) { .nitro-page-loader-ring,.nitro-page-loader-progress span { animation:none; transform:none; } }
