/* Asfot – widżety strony */
:root{--as-accent:#0054a6;--as-red:#e31e24;--as-ink:#222;--as-text:#444;--as-muted:#777;--as-line:#e6e6e6;--as-soft:#f5f6f8;--as-dark:#1f262d;--as-display:'Bebas Neue',Oswald,Impact,sans-serif;--as-body:Helvetica,Arial,sans-serif}
.as-wrap{width:min(1180px,100% - 40px);margin-inline:auto}
[class^="as-"],[class*=" as-"]{box-sizing:border-box}
.as-hdr,.as-ftr,.as-title,.as-sec,.as-prices,.as-feat,.as-gal,.as-cta{font-family:var(--as-body);color:var(--as-text)}
.as-h2{font:400 clamp(40px,5vw,64px)/.95 var(--as-display);color:var(--as-ink);margin:0;letter-spacing:.01em}
.as-h3{font:400 30px/1 var(--as-display);color:var(--as-ink);margin:0 0 14px;letter-spacing:.02em}
.as-lead{font-size:18px;color:var(--as-muted);margin:10px 0 0}
.as-center{text-align:center}
.as-eyebrow{display:block;font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--as-accent)}
.as-title-bar{display:block;width:56px;height:3px;background:var(--as-accent);margin:16px 0 20px}
.as-note{font-size:14px;color:var(--as-muted);margin:12px 0 0}
.as-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;background:var(--as-accent);color:#fff!important;font:700 15px/1 var(--as-body);text-decoration:none!important;border:2px solid var(--as-accent);transition:filter .2s,transform .2s}
.as-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}
.as-btn--light{background:#fff;color:var(--as-accent)!important;border-color:#fff}
.as-btn--ghost{background:transparent;border-color:rgba(255,255,255,.7)}
.as-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:320px;background:var(--as-soft);border:1px dashed #cfd4da;color:var(--as-muted);font-size:14px}

/* nagłówek */
.as-hdr{background:#fff;border-bottom:3px solid var(--as-accent);position:relative;z-index:50}
/* przyklejanie: tylko najbliższy pojemnik nagłówka */
.e-con:has(> .elementor-widget-asfot_header .as-hdr--sticky),
.elementor-section:has(> .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-asfot_header .as-hdr--sticky),
.ekit-template-content-header:has(.as-hdr--sticky),
#masthead:has(.as-hdr--sticky){position:sticky;top:0;z-index:999}
/* odstęp na pasek admina tylko wtedy, gdy pasek naprawdę jest na stronie */
body:has(#wpadminbar) :is(.e-con,.elementor-section,.ekit-template-content-header,#masthead):has(.as-hdr--sticky){top:32px}
@media (max-width:782px){body:has(#wpadminbar) :is(.e-con,.elementor-section,.ekit-template-content-header,#masthead):has(.as-hdr--sticky){top:46px}}
@media (max-width:600px){body:has(#wpadminbar) :is(.e-con,.elementor-section,.ekit-template-content-header,#masthead):has(.as-hdr--sticky){top:0}}
.ekit-template-content-header:has(.as-hdr--sticky) :is(.elementor-section,.e-con),#masthead:has(.as-hdr--sticky) :is(.elementor-section,.e-con){position:static}
.e-con:has(> .elementor-widget-asfot_header),.elementor-widget-asfot_header{padding:0!important;margin:0!important;gap:0!important}
.as-hdr-in{display:flex;align-items:center;gap:32px;min-height:78px}
.as-logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}
.as-logo img{height:52px;width:auto;display:block;max-width:none}
.as-logo-text{font:400 32px/1 var(--as-display);color:var(--as-ink)}
.as-nav{margin-left:auto}
.as-menu{list-style:none;margin:0;padding:0;display:flex;gap:28px}
.as-menu a{font-weight:600;font-size:15px;color:var(--as-ink);text-decoration:none;padding:8px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.as-menu a:hover,.as-menu .current-menu-item>a{color:var(--as-accent);border-color:var(--as-accent)}
.as-hdr-cta{padding:12px 18px;font-size:14px}
.as-burger{display:none;width:44px;height:44px;background:none!important;border:0!important;padding:10px!important;cursor:pointer;flex-direction:column;justify-content:center;gap:5px;margin-left:auto}
.as-burger span{display:block;height:2px;background:var(--as-accent);transition:transform .25s,opacity .25s}
.as-hdr.is-open .as-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.as-hdr.is-open .as-burger span:nth-child(2){opacity:0}
.as-hdr.is-open .as-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:960px){
 .as-hdr-cta{display:none}
 .as-burger{display:flex}
 .as-nav{position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 12px 24px rgba(0,0,0,.12);display:none;margin:0}
 .as-hdr.is-open .as-nav{display:block}
 .as-menu{flex-direction:column;gap:0;padding:8px 20px 20px}
 .as-menu a{display:block;padding:14px 0;border-bottom:1px solid var(--as-line);font-size:17px}
 .as-logo img{height:42px}
}

/* tytuł strony */
.as-title{padding:72px 0 56px;background:var(--as-soft);text-align:center;background-size:cover;background-position:center;position:relative}
.as-title h1{font:400 clamp(52px,8vw,96px)/.9 var(--as-display);color:var(--as-ink);margin:0;letter-spacing:.02em}
.as-title .as-title-bar{margin:18px auto 0}
.as-title p{margin:18px auto 0;max-width:640px;font-size:18px;color:var(--as-muted)}
.as-title--img::before{content:"";position:absolute;inset:0;background:rgba(10,14,20,.55)}
.as-title--img .as-wrap{position:relative}
.as-title--img h1,.as-title--img p{color:#fff}

/* sekcje */
.as-sec{padding:88px 0}
.as-sec-head{margin-bottom:40px}
.as-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.as-card{background:var(--as-soft);padding:36px 32px}
.as-card h3{font:400 38px/1 var(--as-display);color:var(--as-ink);margin:0;letter-spacing:.02em}
.as-card .as-title-bar{margin:14px 0 18px;width:40px}
.as-card ul{list-style:none;margin:0 0 20px;padding:0}
.as-card li{padding:9px 0;border-bottom:1px solid var(--as-line);font-size:16px}
.as-more{display:inline-flex;align-items:center;gap:8px;color:var(--as-accent)!important;font-weight:700;text-decoration:none!important}

/* cennik */
.as-prices{margin:0 0 44px}
.as-prices:last-child{margin-bottom:0}
.as-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.as-table{width:100%;border-collapse:collapse;font-size:15px;min-width:420px;margin:0}
.as-table th,.as-table td{padding:13px 16px;text-align:left;border:0;border-bottom:1px solid var(--as-line);background:none}
.as-table thead th{background:var(--as-dark);color:#fff;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;border-bottom:3px solid var(--as-accent)}
.as-table tbody th{color:var(--as-ink);font-weight:700}
.as-table tbody td{font-variant-numeric:tabular-nums;color:var(--as-text);font-weight:600}
.as-table tbody tr:nth-child(even) th,.as-table tbody tr:nth-child(even) td{background:#fafbfc}
.as-table tbody tr:hover th,.as-table tbody tr:hover td{background:#eef4fb}

/* zdjęcie + tekst */
.as-feat{padding:72px 0}
.as-feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.as-feat--flip .as-feat-media{order:2}
.as-feat-media img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover}
.as-video{position:relative;aspect-ratio:16/9;background:#000}
.as-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.as-rich p{margin:0 0 14px;font-size:17px;line-height:1.7}
.as-feat .as-btn{margin-top:10px}
@media (max-width:860px){.as-feat-grid{grid-template-columns:1fr;gap:28px}.as-feat--flip .as-feat-media{order:0}}

/* galeria */
.as-gal{padding:56px 0 88px}
.as-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:32px}
.as-tab{padding:12px 20px!important;min-height:44px;background:#fff!important;color:var(--as-ink)!important;border:1px solid #d8dde3!important;font:700 13px/1 var(--as-body)!important;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:0!important}
.as-tab.is-on,.as-tab:hover{background:var(--as-accent)!important;border-color:var(--as-accent)!important;color:#fff!important}
.as-grid{display:grid;grid-template-columns:repeat(var(--as-cols,4),minmax(0,1fr));gap:12px}
.as-gi{display:block;overflow:hidden;aspect-ratio:1/1;background:var(--as-soft)}
.as-gi img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.as-gi:hover img{transform:scale(1.06)}
.as-gi.is-hidden{display:none}
@media (max-width:860px){.as-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* kontakt */
.as-contact .as-h2{margin-bottom:40px}
.as-card--contact{padding:40px 32px}
.as-contact-val{display:block;margin:12px 0 0;font-size:21px;font-weight:700;line-height:1.5;color:var(--as-ink)!important;text-decoration:none!important}
a.as-contact-val:hover{color:var(--as-accent)!important}
.as-map{margin-top:24px;aspect-ratio:21/8;min-height:320px;background:var(--as-soft)}
.as-map iframe{width:100%;height:100%;border:0;display:block}

/* pasek CTA */
.as-cta{background:var(--as-accent);color:#fff;padding:64px 0}
.as-cta-in{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.as-cta .as-h2{color:#fff}
.as-cta p{margin:12px 0 0;max-width:640px;font-size:18px;color:#dbe7f4}
.as-cta-btns{display:flex;gap:12px;flex-wrap:wrap}

/* stopka */
.as-ftr{background:var(--as-dark);color:#b9c2cb;padding:72px 0 0}
.as-ftr-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:48px}
.as-logo--ftr{display:inline-flex;margin-bottom:22px}
.as-logo--ftr img{height:64px}
.as-ftr-contact p{margin:0 0 14px;line-height:1.7;font-size:15px}
.as-ftr a{color:#fff;text-decoration:none}
.as-ftr a:hover{color:#9cc6ef}
.as-ftr-h{font:400 26px/1 var(--as-display);color:#fff;margin:0 0 18px;letter-spacing:.04em}
.as-ftr-menu{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.as-social{display:flex;gap:10px;margin-bottom:22px}
.as-social a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #46525e}
.as-social a:hover{border-color:#fff;color:#fff}
.as-ftr-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:56px;padding:22px 0;border-top:1px solid #36414c;font-size:13px}
.as-ftr-legal{display:flex;gap:20px}
@media (max-width:860px){.as-ftr-grid{grid-template-columns:1fr;gap:36px}.as-sec{padding:64px 0}}
