/* Elementy generowane przez skróty wtyczki af-strona; kolory i czcionki z globalnych ustawień kitu */
.af-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;background:var(--e-global-color-primary);color:#fff!important;border:1px solid var(--e-global-color-primary);font-family:var(--e-global-typography-70c1fdb-font-family),sans-serif;font-weight:500;font-size:15px;line-height:1.4;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s}
.af-btn:hover,.af-btn:focus-visible{background:var(--e-global-color-secondary);border-color:var(--e-global-color-secondary);color:#fff!important}
.af-btn--outline{background:transparent;color:var(--e-global-color-primary)!important}
.af-btn--outline:hover,.af-btn--outline:focus-visible{background:var(--e-global-color-primary);color:#fff!important}
.af-btn:focus-visible,.af-tile:focus-visible{outline:3px solid var(--e-global-color-accent);outline-offset:3px}
.af-karta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:20px;background:var(--e-global-color-4d091aa);border-left:3px solid var(--e-global-color-primary)}
.af-karta>div{flex:1 1 180px;display:flex;flex-direction:column;gap:2px}
.af-karta strong{font-family:var(--e-global-typography-primary-font-family),sans-serif;font-weight:500;font-size:17px;color:var(--e-global-color-fb5f3b8)}
.af-karta span{font-size:14px;color:var(--e-global-color-82683c2)}
.af-doc-icon{width:36px;height:36px;color:var(--e-global-color-primary);flex:none}
.af-facts{margin:0;display:grid;gap:0}
.af-facts>div{display:grid;grid-template-columns:minmax(110px,35%) 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--e-global-color-c205efd)}
.af-facts dt{color:var(--e-global-color-82683c2);font-size:14px}
.af-facts dd{margin:0;color:var(--e-global-color-fb5f3b8);font-weight:500}
.af-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.elementor-col-narrow .af-tiles,.af-tiles--1{grid-template-columns:minmax(0,1fr)}
.af-tile{display:flex;flex-direction:column;background:var(--e-global-color-4d091aa);color:inherit;text-decoration:none;transition:background-color .2s}
.af-tile:hover{background:var(--e-global-color-a1b2c3d,#EDF5FB)}
.af-tile__img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--e-global-color-c205efd)}
.af-tile__img img{width:100%!important;height:100%!important;object-fit:cover;display:block}
.af-tile__body{display:flex;flex-direction:column;gap:6px;padding:18px 20px 22px}
.af-tile__body strong{font-family:var(--e-global-typography-primary-font-family),sans-serif;font-weight:500;font-size:19px;color:var(--e-global-color-fb5f3b8)}
.af-tile__body span{font-size:14px;color:var(--e-global-color-82683c2)}
.af-tile--product .af-tile__body span{color:var(--e-global-color-primary)}
.af-related{margin-bottom:80px}
.af-related__title{margin:0 0 32px}
.woocommerce-breadcrumb .af-sep{margin:0 8px;opacity:.6}
/* Zakładki rodzajów realizacji */
.af-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.af-tabs a{padding:10px 18px;border:1px solid var(--e-global-color-c205efd);color:var(--e-global-color-fb5f3b8);font-size:15px;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s}
.af-tabs a:hover{border-color:var(--e-global-color-primary);color:var(--e-global-color-primary)}
.af-tabs a[aria-current]{background:var(--e-global-color-primary);border-color:var(--e-global-color-primary);color:#fff}
.af-empty{color:var(--e-global-color-82683c2)}

/* Nagłówek: pasek obszarów, menu, przycisk w menu */
.af-switch{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:13px;line-height:1.4}
.af-switch a{color:var(--e-global-color-c27a742)!important;text-decoration:none;transition:color .2s}
.af-switch a:hover,.af-switch a[aria-current]{color:#fff!important}
.af-switch a[aria-current]{font-weight:500}
.af-switch a[aria-current]::before{content:"";display:inline-block;width:6px;height:6px;margin:0 8px 2px 0;background:var(--e-global-color-text)}
.af-nav .elementor-nav-menu--main .af-menu-cta>a{margin-left:12px;padding:13px 22px!important;background:var(--e-global-color-primary);color:#fff!important;transition:background-color .2s}
.af-nav .elementor-nav-menu--main .af-menu-cta>a:hover{background:var(--e-global-color-secondary)}
.af-nav .elementor-nav-menu--main .af-menu-cta>a::after{display:none}
.af-nav .elementor-nav-menu--dropdown .af-menu-cta>a{color:var(--e-global-color-primary)!important;font-weight:600}
.af-logo.e-con.e-flex,.af-logo .e-con.e-flex{--width:auto;--flex-wrap:nowrap;width:auto;flex:0 0 auto}
.af-logo img{display:block}
/* nagłówek kitu (E1-T10): przezroczysty nad banerem w ramce sekcji, po przewinięciu przyklejony u góry z ciemnym tłem i bez paska obszarów */
.af-header.e-con{position:fixed!important;top:24px;left:24px;right:24px;width:auto!important;max-width:none!important;transition:background-color .25s,box-shadow .25s}
.admin-bar .af-header.e-con{top:calc(24px + var(--wp-admin--admin-bar--height,32px))}
.af-scrolled .af-header.e-con{top:0;left:0;right:0;background:var(--e-global-color-fb5f3b8);box-shadow:0 6px 24px rgba(28,38,48,.2)}
.af-scrolled .admin-bar .af-header.e-con{top:var(--wp-admin--admin-bar--height,32px)}
.af-scrolled .af-header .af-pasek{display:none}
.af-scrolled .af-header .af-header-row.e-con{--padding-top:12px;--padding-bottom:12px}
.error404 .af-header.e-con{background:var(--e-global-color-fb5f3b8)}
.error404 .site-main{padding-top:calc(160px + var(--wp-admin--admin-bar--height,0px))} /* nagłówek jest fixed, a 404 nie ma hero, pod którym się chowa */
@media (max-width:767px){.error404 .site-main{padding-top:calc(124px + var(--wp-admin--admin-bar--height,0px))}}
.af-pasek.e-con{border-bottom:1px solid rgba(255,255,255,.14)}
.af-pasek .elementor-icon-list-item>a,.af-pasek .elementor-icon-list-item>.elementor-icon-list-text,.af-pasek .elementor-icon-list-text{line-height:1.4!important}
@media (max-width:767px){.af-header.e-con{top:12px;left:12px;right:12px}.admin-bar .af-header.e-con{top:calc(12px + var(--wp-admin--admin-bar--height,46px))}}

/* Karty z obramowaniem: hover zmienia tylko kolor */
.af-hover{transition:border-color .2s,background-color .2s}
.af-hover:hover{border-color:var(--e-global-color-primary)!important}
a.af-hover,a.af-hover:hover{color:inherit}
.af-placeholder,.af-placeholder p{font-style:italic}
p.af-placeholder,.elementor-widget-text-editor.af-placeholder{padding-left:12px;border-left:3px solid var(--e-global-color-c205efd)}

/* Katalog: kafelki produktów WooCommerce */
.af-produkty ul.products{margin:0!important;padding:0;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.af-produkty ul.products::before,.af-produkty ul.products::after{display:none!important}
.af-produkty ul.products li.product{display:flex;flex-direction:column;width:auto!important;margin:0!important;float:none!important;padding:0!important;background:var(--e-global-color-4d091aa);border:1px solid var(--e-global-color-c205efd);transition:border-color .2s}
.af-produkty ul.products li.product:hover{border-color:var(--e-global-color-primary)}
.af-produkty ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;color:inherit;text-decoration:none}
.af-produkty ul.products li.product img{margin:0!important;aspect-ratio:4/3;object-fit:cover;width:100%}
.af-produkty ul.products li.product .woocommerce-loop-product__title{padding:20px 22px 4px!important;margin:0!important;font-family:var(--e-global-typography-e611e9d-font-family),sans-serif;font-size:22px!important;line-height:1.3!important;font-weight:500;color:var(--e-global-color-fb5f3b8)!important}
.af-loop-typ{display:block;padding:0 22px;font-size:14px;color:var(--e-global-color-82683c2)}
.af-loop-more{display:block;margin-top:auto;padding:16px 22px 22px;font-size:15px;font-weight:500;color:var(--e-global-color-primary)}
.af-produkty .woocommerce-result-count{color:var(--e-global-color-82683c2);font-size:14px}
.af-produkty nav.woocommerce-pagination ul li a,.af-produkty nav.woocommerce-pagination ul li span{padding:10px 14px}
.woocommerce-info,.woocommerce-no-products-found .woocommerce-info{border-top-color:var(--e-global-color-primary)}

/* Katalog: drzewo kategorii i wyszukiwarka */
.af-cat-tree ul.product-categories{margin:0;padding:0;list-style:none}
.af-cat-tree ul.product-categories ul{margin:0;padding:0 0 0 16px;list-style:none;border-left:1px solid var(--e-global-color-c205efd)}
.af-cat-tree .cat-item a{display:block;padding:9px 0;color:var(--e-global-color-fb5f3b8);text-decoration:none;font-size:15px;transition:color .2s}
.af-cat-tree .cat-item>ul .cat-item a{padding:7px 0 7px 4px;font-size:14px;color:var(--e-global-color-82683c2)}
.af-cat-tree .cat-item a:hover,.af-cat-tree .current-cat>a{color:var(--e-global-color-primary)!important}
.af-cat-tree .current-cat>a{font-weight:600}
.af-cat-tree>.elementor-widget-container>h5,.af-cat-tree h5{display:none}
.af-search form.woocommerce-product-search{display:flex;gap:0}
.af-search .search-field{flex:1;min-width:0;min-height:48px;padding:10px 14px;border:1px solid var(--e-global-color-c205efd);border-right:0;border-radius:0;font-size:15px;background:#fff}
.af-search button{min-height:48px;padding:10px 18px;border:0;border-radius:0;background:var(--e-global-color-primary);color:#fff;font-size:15px;cursor:pointer}
.af-search button:hover{background:var(--e-global-color-secondary)}
.af-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Strona produktu */
.af-produkt-galeria .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.af-produkt-galeria .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px!important}
.af-produkt-galeria .flex-control-thumbs li{width:auto!important;margin:0!important}
.af-produkt-opis h2,.af-produkt-opis h3{font-family:var(--e-global-typography-e611e9d-font-family),sans-serif!important;color:var(--e-global-color-fb5f3b8)!important;font-size:26px!important;line-height:1.3!important;font-weight:500!important;margin:32px 0 12px!important}
.af-produkt-opis h2:first-child,.af-produkt-opis h3:first-child{margin-top:0!important}
.af-produkt-opis p{margin:0 0 16px}
.related.products>h2{display:none}

@media (max-width:1024px){.af-produkty ul.products,.af-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
.af-produkty ul.products{grid-template-columns:minmax(0,1fr)}
.af-tiles{grid-template-columns:1fr}
.af-facts>div{grid-template-columns:1fr;gap:2px}
.af-btn{width:100%;justify-content:center}
.af-tabs{flex-wrap:nowrap;overflow-x:auto;margin-right:-20px;padding-bottom:4px}
.af-tabs a{flex:none}
.af-produkty ul.products li.product .woocommerce-loop-product__title{font-size:20px!important}
}
/* Strony obszarów: rzędy bez zawijania na telefonie, etapy, nagłówki w formularzu */
.af-nowrap.e-con.e-flex{--flex-wrap:nowrap}
.af-nowrap.e-con.e-flex>.e-con{--width:auto;flex:1 1 0;min-width:0}
.af-etapy{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.af-etapy a{display:flex;flex-direction:column;gap:6px;padding:18px 16px;background:var(--e-global-color-4d091aa);border:1px solid var(--e-global-color-c205efd);color:var(--e-global-color-fb5f3b8)!important;font-weight:600;font-size:15px;line-height:1.35;text-decoration:none;transition:border-color .2s,color .2s}
.af-etapy a span{color:var(--e-global-color-primary);font-family:var(--e-global-typography-primary-font-family),sans-serif;font-weight:700;font-size:20px}
.af-etapy a:hover,.af-etapy a:focus-visible{border-color:var(--e-global-color-primary);color:var(--e-global-color-primary)!important}
.af-krok{scroll-margin-top:120px}
.elementor-form .af-form-h{margin:12px 0 0!important;padding-top:20px;border-top:1px solid var(--e-global-color-c205efd);font-size:20px!important;line-height:1.3!important;font-weight:500;color:var(--e-global-color-fb5f3b8)}
.elementor-form .elementor-field-subgroup .elementor-field-option{display:inline-flex;align-items:center;gap:8px;margin:0 20px 8px 0}
.elementor-form .elementor-field-type-acceptance .elementor-field-option{display:flex;align-items:flex-start;gap:10px;margin:0}
.elementor-form input[type=checkbox]{width:18px;height:18px;flex:none;margin:2px 0 0;accent-color:var(--e-global-color-primary)}
.elementor-form input[type=file]{width:100%;padding:12px;border:1px dashed var(--e-global-color-c205efd);background:var(--e-global-color-4d091aa);font-size:14px;color:var(--e-global-color-82683c2)}
.elementor-form input[type=file]::file-selector-button{margin-right:12px;padding:10px 18px;border:1px solid var(--e-global-color-primary);background:#fff;color:var(--e-global-color-primary);font:inherit;cursor:pointer}
@media (max-width:1024px){.af-etapy{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.af-etapy{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* strona główna: wybór obszaru (E1-T7) */
.af-wybor__cta p{display:inline-block;margin:8px 0 0;padding-bottom:6px;border-bottom:1px solid currentColor}
.af-wybor__panel:focus-visible{outline:3px solid #24A6D7;outline-offset:-3px}
@media (min-width:1025px){.af-wybor>.af-wybor__panel{flex:1 1 0!important;min-width:0;transition:flex-grow .6s ease}.af-wybor>.af-wybor__panel:hover,.af-wybor>.af-wybor__panel:focus-visible{flex-grow:1.45!important}.af-wybor>.af-wybor__info{flex:0 0 400px!important;max-width:400px}}
@media (prefers-reduced-motion:reduce){.af-wybor>.af-wybor__panel{transition:none}}

/* nagłówek kitu: pozycja CTA z menu dubluje przycisk nagłówka, zostaje tylko w menu mobilnym (D11) */
@media (min-width:768px){.af-kit-nav .af-menu-cta,.af-kit-nav .af-menu-obszar{display:none!important}}
@media (min-width:1025px){.af-kit-nav .af-menu-mobile{display:none!important}} /* hamburger działa do 1024 px, więc pozycje tylko z menu mobilnego zostają też na tablecie */
/* E1-QA R1: fokus przycisków, pola formularza pod nagłówkiem, odstęp akapitów, aktywna zakładka */
.elementor-button:focus-visible,.af-tabs a:focus-visible{outline:3px solid var(--e-global-color-accent)!important;outline-offset:3px}
.elementor-form .elementor-field,.elementor-form input{scroll-margin-top:130px}
.elementor-widget-text-editor p+p{margin-top:.75em}
.af-tabs{position:relative;scroll-margin-top:110px}
.af-tabs a[aria-current],.af-tabs a[aria-current]:hover{color:#fff!important}
/* punktor listy przy pierwszej linii, nie na środku wielowierszowej pozycji */
.elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-icon{align-self:flex-start;margin-top:calc((26px - var(--e-icon-list-icon-size,14px)) / 2)}
/* pola formularza: widoczny fokus, czytelne podpowiedzi, większe pola wyboru */
.elementor-form .elementor-field-textual:focus{border-color:var(--e-global-color-primary)!important;box-shadow:0 0 0 2px rgba(20,107,176,.25)!important;outline:none}
.elementor-form .elementor-field-textual::placeholder{color:var(--e-global-color-82683c2);opacity:1}
.elementor-form .elementor-field-option{display:inline-flex;align-items:center;min-height:40px}
.elementor-form .elementor-field-option input{width:20px;height:20px;margin:0 8px 0 0;cursor:pointer}
.elementor-form .elementor-field-option label,.elementor-form .elementor-field-type-upload input{cursor:pointer}
.af-form-hint{margin:-10px 0 0;font-size:14px;color:var(--e-global-color-82683c2)}
/* kolumna obok formularza: zdjęcia w jednej proporcji, na dużym ekranie przyklejona przy przewijaniu */
.af-form-karuzela img{aspect-ratio:3/2;width:100%;height:auto;object-fit:cover}
@media (min-width:1025px){.af-form-bok.e-con{position:sticky;top:110px;align-self:flex-start}}
.af-eyebrow{margin:0 0 16px;font-family:var(--e-global-typography-21dd57f-font-family),sans-serif;font-size:var(--e-global-typography-21dd57f-font-size,13px);font-weight:var(--e-global-typography-21dd57f-font-weight,500);letter-spacing:var(--e-global-typography-21dd57f-letter-spacing,2px);text-transform:uppercase;color:var(--e-global-color-82683c2)}
/* lupa galerii produktu: ikona zamiast emoji WooCommerce */
.woocommerce-product-gallery__trigger{display:flex!important;align-items:center;justify-content:center;width:40px!important;height:40px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231C2630' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center/20px no-repeat!important;font-size:0!important}
.woocommerce-product-gallery__trigger>*{display:none!important}
/* katalog: brak wyników wyszukiwania jako zwykły komunikat, nie nagłówek w kolorze akcentu */
.af-produkty .elementor-products-nothing-found{font-size:18px!important;line-height:1.5!important;color:var(--e-global-color-fb5f3b8)!important}
/* hero obszarów (E1-T11): dokładnie wysokość okna; tekst wyśrodkowany w wolnym miejscu, fakty i karta przy dolnej krawędzi */
.af-hero.e-con{min-height:calc(100vh - var(--wp-admin--admin-bar--height,0px));min-height:calc(100svh - var(--wp-admin--admin-bar--height,0px))}
.af-hero>.e-con{flex-grow:1!important}
.af-hero>.e-con>.e-con-inner{flex-grow:1;padding-bottom:0!important}
.af-hero>.e-con>.e-con-inner>.e-con{flex-grow:1;justify-content:space-between;gap:24px}
.af-hero>.e-con>.e-con-inner>.e-con>.e-con:first-child{margin-block:auto}
@media (min-width:1025px){
.af-hero h1.elementor-heading-title{font-size:clamp(40px,7.1vh,64px)!important;line-height:1.15!important}
.af-hero a.e-con{min-height:clamp(106px,calc(100vh - 680px),260px)!important}
}
@media (min-width:1025px) and (max-height:700px){.af-hero>.e-con>.e-con-inner>.e-con>.e-con:last-child{display:none}}
/* tablet i telefon: bez karty (powtarza przycisk hero), na telefonie także bez faktów i nadtytułu (powtarza podpis logo), żeby hero mieściło się w oknie */
@media (max-width:1024px){.af-hero a.e-con{display:none!important}}
@media (max-width:767px){.af-hero>.e-con>.e-con-inner>.e-con>.e-con:last-child,.af-hero>.e-con>.e-con-inner>.e-con>.e-con:first-child>.e-con:first-child>.elementor-widget:first-child{display:none}}
