/*
Quick.Cms.Lite2 (demo) – skórka dla Quick.Cms, developed by grafiQa
Ciemny hero ze sliderem, jasna kolumna treści, ciemna stopka z menu.
*/

:root {
  --color-text: #1b1a18;
  --color-muted: #6f6a62;
  --color-bg: #ffffff;
  --color-soft: #f4f1ec;
  --color-divider: #e4dfd6;
  --color-accent: #9a7b4f;
  --color-accent-dark: #7a5f3a;
  --color-dark: #0e0e0e;
  --color-dark-2: #181818;
  --color-on-dark: #f2efe9;
  --color-on-dark-muted: #9b978f;
  --color-white: #fff;
  --font: "Plus Jakarta Sans", "Helvetica Neue", Arial, sans-serif;
  --gutter: clamp(1rem, 4vw, 3rem);
  --measure: 44rem;
}

/* GLOBAL */
body, body *, body *:before, body *:after{margin:0;padding:0;border:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body, table{color:var(--color-text);font-family:var(--font);font-size:1.0625rem;}
body{background:var(--color-bg);line-height:1.7;-webkit-font-smoothing:antialiased;}
a{color:var(--color-accent-dark);text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px;}
a:hover{color:var(--color-text);}
strong{font-weight:600;}
.msg.error h1{padding:4rem 0;text-align:center;}
.wai{position:absolute;width:1px;height:1px;clip:rect(1px,1px,1px,1px);overflow:hidden;}

#container{position:relative;}

/* SKIP LINKS */
#skiplinks{position:absolute;top:0;left:0;}
#skiplinks a{position:absolute;top:-500px;left:0;z-index:100;min-width:200px;padding:10px;color:var(--color-white);}
#skiplinks a:focus{top:0;background:#000;}

/* HEADER / NAVIGATION */
.header__navigation{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem var(--gutter);color:var(--color-on-dark);transition:background .35s ease, padding .35s ease, box-shadow .35s ease;}
.header__navigation.is-solid, .is-sub .header__navigation{background:rgba(14,14,14,.94);padding-top:.75rem;padding-bottom:.75rem;box-shadow:0 1px 0 rgba(255,255,255,.06);}
@supports (backdrop-filter: blur(8px)){
  .header__navigation.is-solid, .is-sub .header__navigation{background:rgba(14,14,14,.82);backdrop-filter:blur(10px);}
}

#logo #title a{color:var(--color-on-dark);font-size:.95rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;white-space:nowrap;}
#logo #title a strong{font-weight:700;}

.header__menu .level-0-menu{display:flex;flex-flow:row wrap;list-style:none;gap:.25rem 1.6rem;}
.header__menu .menu__link{position:relative;display:block;padding:.35rem 0;color:var(--color-on-dark);font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;opacity:.78;transition:opacity .25s ease;}
.header__menu .menu__link:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:currentColor;transition:width .3s ease;}
.header__menu .menu__link:hover, .header__menu .selected > .menu__link{opacity:1;}
.header__menu .menu__link:hover:after, .header__menu .selected > .menu__link:after{width:100%;}

/* menu mobilne ( przycisk Menu + wysuwany panel ) wlacza core/common.js klasa html.menu-collapsed -
   wtedy, gdy menu nie miesci sie w jednej linii obok logo, a nie od stalej szerokosci ekranu */
button.hamburger{display:none;align-items:center;gap:.6rem;background:none;color:var(--color-on-dark);cursor:pointer;font:inherit;}
html.menu-collapsed button.hamburger{display:flex;}
html.menu-collapsed .header__menu .menu-top{display:none;}
button.hamburger .hamburger-label{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;}
button.hamburger .hamburger-box{position:relative;display:block;width:22px;height:14px;}
button.hamburger .hamburger-inner, button.hamburger .hamburger-inner:before, button.hamburger .hamburger-inner:after{position:absolute;left:0;display:block;width:22px;height:1.5px;background:currentColor;content:"";}
button.hamburger .hamburger-inner{top:6px;}
button.hamburger .hamburger-inner:before{top:-6px;}
button.hamburger .hamburger-inner:after{top:6px;}
/* mobile menu (mmenu-light) */
.mm-ocd .menu__link{display:block;padding:.9rem 1.25rem;color:var(--color-text);text-decoration:none;letter-spacing:.08em;text-transform:uppercase;font-size:.9rem;}
.mm-ocd .selected > .menu__link{color:var(--color-accent-dark);}
.mm-ocd .level-0-menu{list-style:none;}

/* HERO (start page) */
#hero{position:relative;height:100vh;height:100svh;min-height:520px;background:var(--color-dark);color:var(--color-on-dark);overflow:hidden;}
#hero.no-slider{background:
  radial-gradient(ellipse 60% 55% at 72% 38%, rgba(154,123,79,.28), transparent 70%),
  radial-gradient(ellipse 50% 60% at 15% 90%, rgba(255,255,255,.06), transparent 70%),
  var(--color-dark);}
#hero #slider, #hero .quick-slider{position:absolute !important;inset:0;width:100% !important;height:100% !important;}
#hero .quick-slider ul, #hero #slider > ul{height:100%;list-style:none;}
#hero .quick-slider-slide, #hero #slider li{height:100% !important;width:100%;}
#hero #slider li.img img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 30%;}
#hero:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 22%, rgba(0,0,0,0) 45%, rgba(0,0,0,.72) 100%);}
#hero .quick-slider-slide .description{z-index:3;position:absolute;top:auto;right:var(--gutter);bottom:2rem;left:auto;width:auto;max-width:22rem;min-width:0;padding:0;background:none;font-size:.8rem;line-height:1.5;color:var(--color-on-dark-muted);text-align:right;}
#hero .quick-slider-nav-arrows{display:none;}
#hero .quick-slider-nav-dots-wrapper{z-index:4;bottom:2.2rem;left:auto;right:var(--gutter);width:auto;text-align:right;}
#hero .quick-slider-nav-dots{width:28px;height:2px;margin:0 0 0 8px;background:rgba(255,255,255,.35);border:0;vertical-align:middle;}
#hero .quick-slider-nav-dots.active, #hero .quick-slider-nav-dots:hover{background:var(--color-white);}
#hero div[id^="slider-"] > ul > li{display:none;}
/* link slajdu ( core/sliders-links.php ): caly slajd klikalny; napisy na zdjeciu go nie zaslaniaja */
#hero .slide-link{position:absolute;inset:0;z-index:3;display:block;}
#hero .slide-link:focus-visible{outline:2px solid var(--color-white);outline-offset:-6px;}
#hero.has-slider .hero__text{pointer-events:none;}
#hero.has-slider .hero__text a{pointer-events:auto;}

.hero__text{position:absolute;z-index:3;left:var(--gutter);right:var(--gutter);bottom:clamp(3rem, 10vh, 6rem);}
.hero__eyebrow{margin-bottom:1rem;color:var(--color-on-dark-muted);font-size:.8rem;font-weight:500;letter-spacing:.24em;text-transform:uppercase;}
.hero__name{font-size:clamp(3rem, 11vw, 9.5rem);font-weight:300;line-height:.92;letter-spacing:-.035em;}
.hero__name strong{display:inline;font-weight:700;} /* pogrubienie nie lamie linii - nowa linia to osobny <br> ( Enter / przycisk w edytorze nazwy ) */
.hero__down{position:absolute;right:0;bottom:.4rem;display:block;width:44px;height:44px;border:1px solid rgba(255,255,255,.35);border-radius:50%;transition:border-color .25s ease;}
.hero__down span{position:absolute;left:50%;top:44%;width:9px;height:9px;border-right:1.5px solid var(--color-white);border-bottom:1.5px solid var(--color-white);transform:translate(-50%,-50%) rotate(45deg);}
.hero__down:hover{border-color:var(--color-white);}
.has-slider .hero__down{display:none;}

/* BODY */
#body{clear:both;}
#body .container{padding:0 var(--gutter);}
.is-sub #body{padding-top:4.5rem;}

/* PAGE */
#page{max-width:var(--measure);margin:0 auto;padding:clamp(3rem, 8vw, 6rem) 0 clamp(3rem, 8vw, 5rem);}
#page:after{content:"";display:table;clear:both;}
#page h1{margin:0 0 2.2rem;font-size:var(--h1-size, clamp(2.2rem, 6vw, 3.6rem));color:var(--h1-color, inherit);font-weight:300;line-height:1.05;letter-spacing:-.03em;}
/* strona glowna: H1 jako maly napis nad trescia - wielkosc i kolor z ustawien ( belka administratora ) tez tu dzialaja */
.is-start #page h1{font-size:var(--h1-size, .8rem);font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--h1-color, var(--color-accent));margin-bottom:1.6rem;}

.breadcrumb{margin-bottom:1.25rem;font-size:.85rem;color:var(--color-muted);}
.breadcrumb ol{list-style:none;}
.breadcrumb li{display:inline-block;}
.breadcrumb li:not(:first-child)::before{content:"\203A";padding:0 .5em;}

#page div.content > p{padding-bottom:1.1em;}
#page div.content > p.lead{padding-bottom:1.4em;font-size:clamp(1.25rem, 2.6vw, 1.55rem);font-weight:300;line-height:1.5;letter-spacing:-.01em;}
#page div.content > h2{margin:2.8em 0 1em;padding-top:1.4em;border-top:1px solid var(--color-divider);color:var(--h2-color, var(--color-accent));font-size:var(--h2-size, .78rem);font-weight:600;letter-spacing:.22em;text-transform:uppercase;}
#page div.content > h2:first-child{margin-top:0;padding-top:0;border-top:0;}
#page div.content > h3{margin:1.6em 0 .6em;color:var(--h3-color, inherit);font-size:var(--h3-size, 1.15rem);font-weight:600;}
#page div.content > ul, #page div.content > ol{margin:0 0 1.4em;padding:0;list-style:none;}
#page div.content > ul > li{position:relative;margin:0;padding:.75em 0 .75em 1.6em;border-bottom:1px solid var(--color-divider);}
#page div.content > ul > li:before{content:"";position:absolute;left:0;top:1.45em;width:.7em;height:1px;background:var(--color-accent);}
/* punktor wybierany w ustawieniach ( belka administratora ): <html data-bullet="..."> - domyslnie kreska */
html[data-bullet="dot"] #page div.content > ul > li:before, html[data-bullet="square"] #page div.content > ul > li:before{top:1.26em;width:.38em;height:.38em;}
html[data-bullet="dot"] #page div.content > ul > li:before{border-radius:50%;}
html[data-bullet="arrow"] #page div.content > ul > li:before, html[data-bullet="check"] #page div.content > ul > li:before{top:.75em;width:auto;height:auto;background:none;color:var(--color-accent);font-weight:600;line-height:inherit;}
html[data-bullet="arrow"] #page div.content > ul > li:before{content:"\203A";}
html[data-bullet="check"] #page div.content > ul > li:before{content:"\2713";}
html[data-bullet="none"] #page div.content > ul > li{padding-left:0;}
html[data-bullet="none"] #page div.content > ul > li:before{display:none;}
#page div.content > ol{list-style:decimal;padding-left:1.4em;}
#page div.content > ol > li{margin:.5em 0;}

/* IMAGES */
ul[class*='images-']{list-style:none;}
ul[class*='images-'] li{margin:0 0 1rem 0;}
ul[class*='images-'] p{margin-top:.4rem;color:var(--color-muted);font-size:.85rem;}
ul[class*="images-"] img{display:block;max-width:100%;height:auto;}
ul[class*="images-"] a:hover img{opacity:.88;}
.images-1{clear:left;float:left;max-width:45%;margin:.4rem 1.8rem 1rem 0;}
.images-2{clear:right;float:right;max-width:45%;margin:.4rem 0 1rem 1.8rem;}
.images-3{clear:both;display:grid;grid-template-columns:repeat(auto-fill, minmax(12rem, 1fr));gap:1rem;margin-top:2rem;}
@media screen and (max-width:600px){
  .images-1, .images-2{float:none;max-width:100%;margin:0 0 1.5rem;}
}

/* FILES LIST */
.files-list{clear:both;margin:2rem 0 .5rem;list-style:none;font-size:.95rem;}
.files-list li{padding:.7rem 0 .7rem 2rem;border-bottom:1px solid var(--color-divider);background:url('img/files-ext.gif') no-repeat 0 calc(.7rem + 2px);}
.files-list p{display:inline;color:var(--color-muted);}
.files-list p:before{content:" – ";}

/* SUBPAGES LIST */
.pages-list{clear:both;margin:2rem 0;}
.pages-list .page{padding:calc(var(--subpages-gap, 2.8rem) / 2) 0;border-top:1px solid var(--color-divider);} /* odstep: suwak przy liscie podstron ( core/page-sources.php ) */
.pages-list .page:after{content:"";display:table;clear:both;}
.pages-list .image{float:left;max-width:30%;margin:0 1.4rem .5rem 0;}
.pages-list .image img{max-width:100%;}
.pages-list .title{font-size:1.3rem;font-weight:600;}
.pages-list .title a{color:var(--color-text);text-decoration:none;}
.pages-list .title a:hover{color:var(--color-accent-dark);}
.pages-list div.description{color:var(--color-muted);}

/* FOOTER */
/* kolor stopki z ustawien ( --foot-bg; kolory napisow dobiera core/site-style.php ) */
#foot{--color-on-dark:var(--foot-text, #f2efe9);--color-on-dark-muted:var(--foot-text-muted, #9b978f);background:var(--foot-bg, var(--color-dark));color:var(--color-on-dark-muted);font-size:.9rem;}
#foot .container{padding:0 var(--gutter);}
.foot__cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem;padding-top:clamp(3rem, 7vw, 5rem) !important;padding-bottom:clamp(2.5rem, 6vw, 4rem) !important;}
@media screen and (max-width:760px){
  .foot__cols{grid-template-columns:1fr 1fr;}
  .foot__about{grid-column:1 / -1;}
}
@media screen and (max-width:420px){
  .foot__cols{grid-template-columns:1fr;}
}
.foot__name{color:var(--color-on-dark);font-size:clamp(1.6rem, 3.5vw, 2.4rem);font-weight:300;line-height:1.1;letter-spacing:-.02em;}
.foot__name strong{font-weight:700;}
.foot__slogan{margin-top:.8rem;font-size:.9rem;}
.foot__head{margin-bottom:1rem;color:var(--color-accent);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;}
.menu-foot .level-0-menu{list-style:none;}
.menu-foot .menu__link{display:inline-block;padding:.3rem 0;color:var(--color-on-dark);text-decoration:none;opacity:.75;transition:opacity .2s ease;}
.menu-foot .menu__link:hover, .menu-foot .selected > .menu__link{opacity:1;}
.menu-foot .menu__link[target="_blank"]:after{content:" \2197";font-size:.8em;opacity:.6;}
.foot__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.4rem !important;padding-bottom:1.4rem !important;border-top:1px solid var(--foot-line, rgba(255,255,255,.08));font-size:.8rem;}
#powered a{color:var(--color-on-dark-muted);font-size:.75rem;letter-spacing:.06em;text-decoration:none;opacity:.7;transition:opacity .2s ease;}
#powered a strong{font-weight:600;}
#powered a:hover{opacity:1;color:var(--color-on-dark);}

.icon{display:inline-block;flex-shrink:0;width:1.5rem;height:1.5rem;fill:currentColor;}

@media print{
  *{color:#000 !important;background:#fff !important;}
  .header__navigation{position:static;}
  #menu-main, #hero, .foot__cols, #powered{display:none !important;}
  #page{padding:0;max-width:none;}
}

/* FORMS */
input[type="text"], input[type="email"], select, textarea{padding:.5rem .7rem;border:1px solid var(--color-divider);font-family:var(--font);font-size:1rem;}
input[type="submit"]{padding:.6rem 1.2rem;background:var(--color-dark);color:var(--color-white);font-family:var(--font);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;}
input[type="submit"]:hover{background:var(--color-accent-dark);}
label{font-weight:600;}

/* QUICK.BOX (image lightbox) */
#quick-box{position:fixed;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.96);z-index:10040;} /* czarne tlo powiekszenia */
#quick-box .background{height:100%;}
#quick-box .quick-box-container{position:absolute;padding:0;}
#quick-box .image-wrapper{position:relative;line-height:0;}
#quick-box .navigation{position:absolute;top:100%;width:100%;padding:.5em 0;text-align:center;font-size:.85rem;color:rgba(255,255,255,.6);line-height:normal;background:none;}
#quick-box .navigation__sep{padding:0 3px;}
#quick-box .full-size{display:none;}
#quick-box .description{margin:0;padding:.6em 0;text-align:center;font-size:.85rem;color:rgba(255,255,255,.75);background:none;max-height:66px;overflow:hidden;}
#quick-box .arrow{position:absolute;display:block;width:50%;top:15%;height:70%;z-index:100;opacity:.5;text-decoration:none;}
#quick-box .arrow:before{content:"";display:block;position:absolute;top:50%;left:18px;width:16px;height:16px;border-top:2px solid #fff;border-right:2px solid #fff;transform:translateY(-50%) rotate(-135deg);}
#quick-box .arrow.next:before{left:auto;right:18px;transform:translateY(-50%) rotate(45deg);}
#quick-box .arrow:hover{opacity:.9;}
#quick-box .prev{left:0;}
#quick-box .next{right:0;}
/* zamkniecie zawsze w rogu ekranu ( duze zdjecie nie wypycha go poza okno ); Esc i klik w tlo tez zamykaja */
#quick-box .close{position:fixed;top:1rem;right:1rem;z-index:10041;display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;padding:0;border-radius:50%;background:#fff;color:#111;font-size:0;text-decoration:none;line-height:1;box-shadow:0 2px 10px rgba(0,0,0,.2);transition:transform .2s;}
#quick-box .close::before{content:"\00d7";font-size:1.7rem;font-weight:300;}
#quick-box .close:hover, #quick-box .close:focus-visible{transform:scale(1.08);}
#quick-box .loading{display:block;padding:40px 35px;color:rgba(255,255,255,.6);line-height:1em;}

/* SMALL SCREENS */
@media screen and (max-width:600px){
  #logo #title a{font-size:.8rem;letter-spacing:.14em;}
  .hero__down{display:none;}
  .hero__eyebrow{font-size:.7rem;letter-spacing:.18em;}
}

/* ==========================================================================
   EDYCJA NA STRONIE ( zalogowany administrator ) - core/front-edit.php / .js
   wzorowane na serwisie andrzejlichota
   ========================================================================== */
:root{--color-user-action:#c0392b;}

/* belka zalogowanego */
.front-user-bar{position:fixed;top:0;left:0;right:0;z-index:9998;display:flex;align-items:center;gap:1em;height:40px;padding:0 1rem;
  background:var(--color-user-action);color:#fff;font-family:var(--font);font-size:.78rem;letter-spacing:.02em;line-height:1.2;}
.front-user-bar-who{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.front-user-bar-who strong{font-weight:600;}
.front-user-bar-msg{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.9;}
.front-user-bar-msg.is-error{font-weight:600;opacity:1;}
.front-user-bar-link, .front-gadgets-toggle{flex:0 0 auto;display:inline-flex;align-items:center;gap:.5em;padding:.35em .8em;
  border:1px solid rgba(255,255,255,.55);border-radius:6px;background:transparent;color:#fff;font-family:inherit;font-size:.7rem;
  letter-spacing:.04em;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .2s ease,border-color .2s ease;}
.front-user-bar-link:hover, .front-gadgets-toggle:hover{background:rgba(255,255,255,.18);border-color:#fff;color:#fff;}
html.has-user-bar body{padding-top:40px;}
html.has-user-bar .header__navigation{top:40px;}
html.has-user-bar #hero{height:calc(100vh - 40px);height:calc(100svh - 40px);}
@media screen and (max-width:600px){
  .front-user-bar{gap:.5em;padding:0 .6rem;font-size:.68rem;}
  .front-user-bar-who, .front-user-bar-msg{display:none;}
  .front-user-bar-link{margin-right:auto;}
}

/* ukrycie narzedzi - podglad strony oczami goscia */
html.front-gadgets-hidden .front-edit,
html.front-gadgets-hidden .front-add-images-button,
html.front-gadgets-hidden .front-add-work,
html.front-gadgets-hidden .front-slider-edit{display:none !important;}

/* olowek przy edytowalnym polu */
.front-edit{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;margin:0 0 0 .5em;padding:0;
  border:1px solid var(--color-user-action);border-radius:3px;background:transparent;color:var(--color-user-action);
  cursor:pointer;vertical-align:middle;opacity:.75;transition:opacity .2s ease, background .2s ease, color .2s ease;font-family:var(--font);}
.front-edit:hover{opacity:1;background:var(--color-user-action);color:#fff;}
.front-edit svg{width:.9rem;height:.9rem;fill:currentColor;}
#page h1 .front-edit{position:relative;top:-.15em;}
#page .content > .front-edit.is-block{display:flex;margin:1rem 0 0;}
.front-edit.is-empty, .front-add-images-button{display:inline-flex;align-items:center;gap:.5em;width:auto;height:auto;margin:1rem 0 0;padding:.5em .95em;
  border:1px dashed var(--color-user-action);border-radius:6px;background:transparent;color:var(--color-user-action);
  font-family:var(--font);font-size:.8rem;letter-spacing:.02em;line-height:1.4;opacity:1;cursor:pointer;transition:background .2s ease,color .2s ease;}
.front-edit.is-empty:hover, .front-add-images-button:hover{background:var(--color-user-action);border-style:solid;color:#fff;}
.front-add-images-button svg, .front-edit.is-empty svg{width:1rem;height:1rem;fill:currentColor;}
.front-add-images-button{display:flex;clear:both;}
/* "dodaj pracę" na liscie prac ( administrator ) i okno krok po kroku ( openAddWork w core/front-edit.js ) */
.front-add-work{display:inline-flex;align-items:center;gap:.5em;margin:0 0 1.2rem;padding:.55em 1.1em;border:1px solid var(--color-user-action);border-radius:6px;background:var(--color-user-action);color:#fff;font-family:var(--font);font-size:.82rem;letter-spacing:.02em;cursor:pointer;}
.front-add-work:hover{filter:brightness(1.1);}
.front-add-work svg{width:1.1rem;height:1.1rem;fill:currentColor;}
.front-edit-box.is-add-work{width:min(760px,96vw);}
.faw-steps{display:flex;flex-wrap:wrap;gap:.3rem .9rem;margin:0;padding:.8rem 1.4rem;border-bottom:1px solid #2b2b2b;list-style:none;color:#777;font-size:.78rem;}
.faw-steps li{display:flex;align-items:center;gap:.4rem;}
.faw-steps li span{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;border:1px solid #555;border-radius:50%;font-size:.7rem;}
.faw-steps li.is-done{color:#bdbdbd;cursor:pointer;}
.faw-steps li.is-done span{border-color:#bdbdbd;}
.faw-steps li.is-on{color:#fff;}
.faw-steps li.is-on span{border-color:#fff;background:#fff;color:#111;}
.faw-pane h3{margin:0 0 .9rem;color:#fff;font-size:1rem;font-weight:500;}
.faw-pane h3 small{color:#8a8a8a;font-size:.78rem;font-weight:400;}
.faw-pane[hidden]{display:none;}
.faw-choices{display:flex;flex-wrap:wrap;gap:.5rem;}
.faw-choice{position:relative;cursor:pointer;}
.faw-choice input{position:absolute;opacity:0;pointer-events:none;}
.faw-choice span{display:inline-block;padding:.5em 1.1em;border:1px solid #444;border-radius:2rem;color:#cfcfcf;font-size:.85rem;transition:border-color .2s, background .2s, color .2s;}
.faw-choice:hover span{border-color:#888;}
.faw-choice input:checked + span{border-color:#fff;background:#fff;color:#111;}
.faw-choice input:focus-visible + span{outline:2px solid var(--color-user-action);outline-offset:2px;}
.faw-drop.is-over{border-color:#fff;background:#232323;}
.faw-drop[hidden]{display:none;}
.faw-main-preview{display:flex;flex-direction:column;align-items:center;gap:.6rem;}
.faw-main-preview[hidden]{display:none;}
.faw-main-preview img{display:block;max-width:100%;max-height:46vh;object-fit:contain;border-radius:6px;background:#222;}
.faw-file{color:#8a8a8a;font-size:.78rem;}
.faw-main-change{padding:.4em 1em;border:1px solid #555;border-radius:2rem;background:none;color:#ddd;font:inherit;font-size:.8rem;cursor:pointer;}
.faw-title{width:100%;font-size:1.1rem !important;}
.faw-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.8rem;margin:1rem 0 0;padding:0;list-style:none;}
.faw-detail{position:relative;display:flex;flex-direction:column;gap:.4rem;padding:.4rem;border:1px solid #2b2b2b;border-radius:8px;background:#1a1a1a;}
.faw-detail img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:5px;background:#222;}
.faw-detail .front-images-remove{top:.6rem;right:.6rem;}
.faw-detail-desc{padding:.4em .6em !important;font-size:.8rem !important;}
.faw-prepub{display:flex;align-items:center;gap:.5rem;margin:1.4rem 0 0;color:#cfcfcf;font-size:.85rem;}

/* link na sliderze */
.front-slider-edit{position:absolute;z-index:6;top:5.5rem;right:var(--gutter);display:inline-flex;align-items:center;gap:.5em;padding:.5em .95em;
  border:1px solid var(--color-user-action);border-radius:6px;background:rgba(192,57,43,.9);color:#fff;font-size:.8rem;letter-spacing:.02em;text-decoration:none;}
.front-slider-edit:hover{background:var(--color-user-action);color:#fff;}
.front-slider-edit svg{width:.9rem;height:.9rem;fill:currentColor;}

/* okno edycji - ciemny modal na srodku ekranu */
/* tlo pod oknem edycji - kolor, krycie i rozmycie z ustawien ( --edit-overlay, --edit-overlay-blur; core/site-style.php ) */
.front-edit-overlay{position:fixed;inset:0;z-index:9990;background:var(--edit-overlay, rgba(10,10,10,.62));backdrop-filter:blur(var(--edit-overlay-blur, 3px));-webkit-backdrop-filter:blur(var(--edit-overlay-blur, 3px));animation:frontEditFade .18s ease;}
.front-edit-box{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;display:flex;flex-direction:column;
  width:min(680px,94vw);max-width:98vw;max-height:94vh;min-width:300px;min-height:200px;overflow:hidden;resize:both;
  background:#141414;color:#f4f4f4;border:1px solid #2b2b2b;border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.55);
  font-family:var(--font);font-size:.9rem;line-height:1.5;text-align:left;animation:frontEditIn .2s cubic-bezier(.2,.8,.3,1);color-scheme:dark;}
.front-edit-box.is-wysiwyg{width:min(860px,96vw);}
.front-edit-box.is-images{width:min(820px,96vw);}
@keyframes frontEditFade{from{opacity:0}to{opacity:1}}
@keyframes frontEditIn{from{opacity:0;transform:translate(-50%,-46%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.front-edit-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1.2rem;border-bottom:1px solid #262626;}
.front-edit-title{font-size:1rem;font-weight:400;letter-spacing:.02em;color:#fff;}
.front-edit-title strong{font-weight:600;}
.front-edit-close{width:2rem;height:2rem;padding:0;border:0;border-radius:50%;background:transparent;color:#8a8a8a;font-size:1.5rem;line-height:1;cursor:pointer;}
.front-edit-close:hover{background:#242424;color:#fff;}
.front-edit-body{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;padding:1.2rem;overflow-y:auto;overflow-x:hidden;}
.front-edit-box .front-edit-field{display:block;width:100%;padding:.75em .9em;background:#1c1c1c;border:1px solid #333;border-radius:8px;
  color:#f4f4f4;font-family:inherit;font-size:1rem;line-height:1.6;outline:none;transition:border-color .2s ease;}
.front-edit-box .front-edit-field:focus{border-color:#6a6a6a;}
.front-edit-box textarea.front-edit-field{flex:1 1 auto;resize:none;min-height:180px;}
/* opis krotki pod trescia strony w tym samym oknie */
.front-edit-short{flex:none;display:flex;flex-direction:column;margin-top:1rem;}
.front-edit-short .front-edit-label{display:block;margin:0 0 .4rem;color:#9a9a9a;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;}
.front-edit-short .front-edit-label small{color:#6f6f6f;font-size:inherit;letter-spacing:0;text-transform:none;}
.front-edit-box .front-edit-short textarea.front-edit-field{flex:none;min-height:90px;resize:vertical;}
.front-edit-box .front-edit-short .mce-tinymce{flex:none;}
.front-edit-box .front-edit-short .mce-edit-area iframe{height:120px !important;}
.front-edit-box.has-short .front-edit-body > .mce-tinymce{flex:none;}
.front-edit-box.has-short .front-edit-body > .mce-tinymce .mce-edit-area iframe{height:min(380px,45vh) !important;}
.front-edit-box.has-short .front-edit-body > textarea.front-edit-field{flex:none;min-height:min(380px,45vh);}
.front-edit-buttons{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;padding:.9rem 1.2rem;border-top:1px solid #262626;background:#101010;}
.front-edit-buttons button{padding:.55em 1.4em;border-radius:8px;border:1px solid #3a3a3a;background:transparent;color:#e6e6e6;
  font-family:inherit;font-size:.9rem;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;}
.front-edit-buttons .front-edit-cancel:hover{background:#242424;border-color:#4d4d4d;}
.front-edit-buttons .front-edit-save{border-color:var(--color-user-action);color:#ff8a7d;font-weight:500;}
.front-edit-buttons .front-edit-save:hover{background:var(--color-user-action);color:#fff;}
.front-edit-buttons button:disabled{opacity:.5;cursor:wait;}
.front-edit-msg{margin-right:auto;font-size:.82rem;color:#9a9a9a;}
.front-edit-msg.error{color:#ff8080;}
.front-edit-loading{padding:2rem 1.2rem;text-align:center;color:#9a9a9a;}

/* TinyMCE w ciemnej kolorystyce okna */
.front-edit-box .mce-tinymce{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;border:1px solid #333 !important;border-radius:8px;overflow:hidden;box-shadow:none !important;}
.front-edit-box .mce-tinymce > .mce-container-body{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;}
.front-edit-box .mce-edit-area{flex:1 1 auto;min-height:0;border:0 !important;}
.front-edit-box .mce-edit-area iframe{height:100% !important;}
.front-edit-box .mce-panel{background:#1c1c1c !important;border-color:#333 !important;}
.front-edit-box .mce-btn{background:transparent !important;border-color:transparent !important;}
.front-edit-box .mce-btn:hover{background:#2e2e2e !important;}
.front-edit-box .mce-ico{color:#dcdcdc !important;}
.front-edit-box .mce-btn.mce-active, .front-edit-box .mce-btn:active{background:#3a3a3a !important;}
.front-edit-box .mce-toolbar-grp{border-bottom:1px solid #333 !important;}

/* okno zdjec */
.front-images-drop{display:flex;flex-direction:column;align-items:center;gap:.3em;padding:1.4rem 1rem;border:1px dashed #444;border-radius:10px;
  color:#cfcfcf;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease;}
.front-images-drop strong{color:#fff;font-weight:600;}
.front-images-drop small{color:#8a8a8a;font-size:.78rem;}
.front-images-drop:hover, .front-images-drop.is-drop{border-color:#f4f4f4;border-style:solid;background:#1c1c1c;}
/* wybor zdjec z serwera ( core/front-edit.js ) */
.front-images-server-bar{margin:.7rem 0 0;text-align:center;}
.front-images-server-open, .front-images-server-cancel, .front-images-server-add{padding:.45rem 1rem;border:1px solid #444;border-radius:6px;background:#1c1c1c;color:#e6e6e6;font:inherit;font-size:.85rem;cursor:pointer;}
.front-images-server-open:hover, .front-images-server-cancel:hover{border-color:#f4f4f4;}
.front-images-server-add{border-color:#f4f4f4;background:#f4f4f4;color:#111;font-weight:600;}
.front-images-server-add:disabled{opacity:.4;cursor:default;}
.front-images-server{margin:.8rem 0 0;padding:.8rem;border:1px solid #2b2b2b;border-radius:10px;background:#151515;}
.front-images-server[hidden]{display:none;}
.front-images-server-head{display:flex;gap:.8rem;align-items:center;}
.front-images-server-head .front-edit-field{flex:1 1 auto;}
.front-images-server-count{color:#8a8a8a;font-size:.8rem;white-space:nowrap;}
.front-images-server-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;max-height:46vh;overflow:auto;margin:.8rem 0 0;padding:0;list-style:none;}
.front-images-server-item[hidden]{display:none;}
.front-images-server-item button{display:block;width:100%;padding:.3rem;border:2px solid transparent;border-radius:7px;background:#1f1f1f;color:#bdbdbd;font:inherit;font-size:.7rem;text-align:left;cursor:pointer;}
.front-images-server-item img{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px;background:#2a2a2a;}
.front-images-server-item span{display:block;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.front-images-server-item button:hover{border-color:#555;}
.front-images-server-item.is-selected button{border-color:#f4f4f4;background:#2c2c2c;color:#fff;}
.front-images-server-foot{display:flex;justify-content:flex-end;gap:.6rem;margin:.8rem 0 0;}
.front-images-progress{height:6px;margin:.9rem 0 0;background:#2a2a2a;border-radius:3px;overflow:hidden;}
.front-images-progress-bar{height:100%;width:0;background:#f4f4f4;transition:width .2s ease;}
.front-images-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.9rem;margin:1.1rem 0 0;padding:0;list-style:none;}
.front-images-empty{grid-column:1 / -1;padding:1rem 0;color:#8a8a8a;text-align:center;}
.front-images-item{position:relative;display:flex;flex-direction:column;gap:.4rem;padding:.4rem;border:1px solid #2b2b2b;border-radius:8px;background:#1a1a1a;cursor:grab;}
.front-images-item.is-dragged{opacity:.4;cursor:grabbing;}
.front-images-item.is-busy{opacity:.4;pointer-events:none;}
.front-images-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:5px;background:#222;pointer-events:none;}
.front-images-item img.front-images-thumb{pointer-events:auto;cursor:zoom-in;}
.front-images-view{position:fixed;inset:0;z-index:10050;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:4vh 4vw;background:rgba(0,0,0,.88);cursor:zoom-out;}
.front-images-view img{display:block;max-width:100%;max-height:calc(100% - 2rem);object-fit:contain;box-shadow:0 10px 40px rgba(0,0,0,.5);}
.front-images-view-name{color:#cfcfcf;font-size:.8rem;letter-spacing:.02em;}
.front-images-item .front-edit-field{padding:.45em .6em;font-size:.8rem;}
.front-images-remove{position:absolute;top:.7rem;right:.7rem;width:1.8rem;height:1.8rem;padding:0;border:0;border-radius:50%;
  background:rgba(0,0,0,.7);color:#fff;font-size:1.2rem;line-height:1;cursor:pointer;}
.front-images-remove:hover{background:#c00;}
.front-images-hint{margin:.9rem 0 0;color:#8a8a8a;font-size:.8rem;}

@media print{
  .front-user-bar, .front-edit, .front-add-images-button, .front-slider-edit{display:none !important;}
  html.has-user-bar body{padding-top:0;}
}

/* ==========================================================================
   UKLAD NAPISU I SLOGANU NA SLIDERZE ( ustawiany w oknie slidera, bin: hero_layout )
   Pozycja = punkt zaczepienia w % slidera; wyrownanie mowi, ktora krawedz elementu
   lezy w tym punkcie. Ta sama regula dziala dla #hero i dla podgladu w oknie.
   Na telefonie ( < 768px ) zostaje uklad domyslny - tekst nie wyjdzie poza ekran.
   ========================================================================== */
@media screen and (min-width:768px){
  .hero-layout[data-layout="custom"] .hero__text{position:static;}
  .hero-layout[data-layout="custom"] .hero__eyebrow,
  .hero-layout[data-layout="custom"] .hero__name{position:absolute;z-index:3;margin:0;--tx:0%;}
  .hero-layout[data-layout="custom"] .hero__eyebrow{left:var(--slogan-x);top:var(--slogan-y);font-size:var(--slogan-size);white-space:nowrap;transform:translate(var(--tx),-50%);}
  .hero-layout[data-layout="custom"] .hero__name{left:var(--name-x);top:var(--name-y);font-size:max(2.4rem, var(--name-size));white-space:nowrap;transform:translate(var(--tx),-50%);}
  .hero-layout[data-slogan-align="center"] .hero__eyebrow, .hero-layout[data-name-align="center"] .hero__name{--tx:-50%;text-align:center;}
  .hero-layout[data-slogan-align="right"] .hero__eyebrow, .hero-layout[data-name-align="right"] .hero__name{--tx:-100%;text-align:right;}
  .hero-layout[data-layout="custom"] .hero__down{right:var(--gutter);bottom:2rem;}
}
.hero-layout[data-color="dark"] .hero__name{color:#111;}
.hero-layout[data-color="dark"] .hero__eyebrow{color:#333;}
.hero-layout[data-color="dark"]:after{background:linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,0) 20%);}

/* okno slidera */
.front-edit-box.is-slider{width:min(1000px,96vw);}
.front-slider-section{margin:0 0 1.4rem;}
.front-slider-section:last-child{margin-bottom:0;}
.front-slider-section h3{margin:0 0 .7rem;color:#c9c9c9;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.front-slider-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:0 0 .7rem;}
.front-slider-seg{display:inline-flex;border:1px solid #3a3a3a;border-radius:8px;overflow:hidden;}
.front-slider-seg button{padding:.45em .85em;border:0;background:transparent;color:#cfcfcf;font-family:inherit;font-size:.8rem;cursor:pointer;}
.front-slider-seg button + button{border-left:1px solid #3a3a3a;}
.front-slider-seg button.is-on{background:#f4f4f4;color:#111;}
.front-slider-seg button.is-name.is-on{background:#ff8a7d;color:#111;}
.front-slider-seg button.is-slogan.is-on{background:#7dc4ff;color:#111;}
.front-slider-range{display:inline-flex;align-items:center;gap:.5rem;color:#9a9a9a;font-size:.78rem;}
.front-slider-range input{width:120px;accent-color:var(--color-user-action);}
.front-slider-range output{min-width:3.5em;color:#ddd;}
.front-slider-stage{position:relative;width:100%;overflow:hidden;border:1px solid #333;border-radius:8px;background:#0e0e0e;cursor:crosshair;user-select:none;-webkit-user-select:none;}
.front-slider-replica{position:absolute;top:0;left:0;transform-origin:0 0;pointer-events:none;overflow:hidden;background:#0e0e0e center 30% / cover no-repeat;}
.front-slider-replica:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 22%, rgba(0,0,0,0) 45%, rgba(0,0,0,.72) 100%);}
.front-slider-replica[data-color="dark"]:after{background:linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,0) 20%);}
.front-slider-replica .hero__text{color:var(--color-on-dark);}
.front-slider-marker{position:absolute;z-index:5;width:22px;height:22px;margin:-11px 0 0 -11px;border:2px solid #fff;border-radius:50%;
  box-shadow:0 0 0 2px rgba(0,0,0,.6);cursor:grab;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;color:#111;}
.front-slider-marker.is-name{background:#ff8a7d;}
.front-slider-marker.is-slogan{background:#7dc4ff;}
.front-slider-marker.is-active{transform:scale(1.25);}
.front-slider-readout{margin:.5rem 0 0;color:#8a8a8a;font-size:.78rem;}
.front-slider-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem;margin:.9rem 0 0;padding:0;list-style:none;}
.front-slider-list .front-images-item img{cursor:pointer;pointer-events:auto;}
.front-slider-list .front-images-item.is-preview{border-color:#f4f4f4;}
.front-slider-list .front-slide-linkpage{width:100%;cursor:pointer;}
.front-slider-list .front-slide-link[hidden]{display:none;}
.front-slider-reset{padding:.45em .85em;border:1px solid #3a3a3a;border-radius:8px;background:transparent;color:#9a9a9a;font-family:inherit;font-size:.78rem;cursor:pointer;}
.front-slider-reset:hover{border-color:#6a6a6a;color:#fff;}
button.front-slider-edit{font-family:var(--font);cursor:pointer;}
.front-edit-panel-link{color:#8a8a8a;font-size:.82rem;text-decoration:none;margin-right:.4rem;}
.front-edit-panel-link:hover{color:#fff;}

/* wlasne kolory napisow z okna slidera ( --name-color / --slogan-color ) */
.hero-layout .hero__name{color:var(--name-color, inherit);}
.hero-layout .hero__eyebrow{color:var(--slogan-color, var(--color-on-dark-muted));}
.hero-layout[data-color="dark"] .hero__name{color:var(--name-color, #111);}
.hero-layout[data-color="dark"] .hero__eyebrow{color:var(--slogan-color, #333);}
.front-slider-colorpick{display:inline-flex;align-items:center;gap:.4rem;color:#9a9a9a;font-size:.78rem;}
.front-slider-colorpick input[type="color"]{width:2.2rem;height:1.7rem;padding:0;border:1px solid #3a3a3a;border-radius:6px;background:transparent;cursor:pointer;}
.front-slider-colorpick button{padding:.2em .5em;border:1px solid #3a3a3a;border-radius:6px;background:transparent;color:#9a9a9a;font-family:inherit;font-size:.72rem;cursor:pointer;}
.front-slider-colorpick button:hover{color:#fff;border-color:#6a6a6a;}
.front-slider-colorpick.is-auto input[type="color"]{opacity:.35;}
/* kolor blendy slajdu - osobna klasa, bo .front-slider-colorpick obsluguje kolory napisow ( aLayout ) */
.front-slider-blendcolor{display:inline-flex;align-items:center;gap:.4rem;color:#9a9a9a;font-size:.78rem;}
.front-slider-blendcolor input[type="color"]{width:2.2rem;height:1.7rem;padding:0;border:1px solid #3a3a3a;border-radius:6px;background:transparent;cursor:pointer;}
.front-slider-blendcolor input[type="color"]:disabled{opacity:.35;cursor:default;}
.front-slider-blendcolor button{padding:.2em .5em;border:1px solid #3a3a3a;border-radius:6px;background:transparent;color:#9a9a9a;font-family:inherit;font-size:.72rem;cursor:pointer;}
.front-slider-blendcolor button:hover{color:#fff;border-color:#6a6a6a;}

/* blenda: kazdy slajd ma wlasny gradient ( span.slide-blend, styl z core/front-edit.php ).
   Po zapisaniu ukladu w oknie slidera stary wspolny gradient znika - na zdjeciu zostaje tylko blenda slajdu.
   Selektory z #hero, bo #hero:after wyzej ma wyzsza wage */
#hero[data-layout="custom"]:after, .front-slider-replica:after,
#hero[data-layout="custom"][data-color="dark"]:after, .front-slider-replica[data-color="dark"]:after{background:none;}
.slide-blend, .front-slider-replica-blend{position:absolute;inset:0;z-index:1;pointer-events:none;}
.front-slider-replica .hero__text{z-index:3;}
.front-slider-marker.is-blend{background:#ffd166;}
.front-slider-seg button.is-blend.is-on{background:#ffd166;color:#111;}
.front-slider-blendtools[hidden]{display:none;}
.front-slider-blendtools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:0 0 .7rem;padding:.6rem .7rem;border:1px solid #2b2b2b;border-radius:8px;background:#181818;}
.front-slider-blendtools .front-slider-label{color:#ffd166;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;}
/* bez blendy menu stoi na samym zdjeciu - delikatny cien, zeby dalo sie je przeczytac na jasnym tle */
.is-start .header__navigation:not(.is-solid){text-shadow:0 1px 10px rgba(0,0,0,.45);}

/* przenikanie slajdow bez przyciemnienia ( skrypt w footer.php ) */
#hero .quick-slider-slide.is-leaving{opacity:1 !important;z-index:1;}
#hero .quick-slider-slide.is-entering{z-index:2;}

/* przed pierwsza zmiana slajdu widoczny jest tylko pierwszy - bez tego wszystkie slajdy
   lezaly na sobie i na wierzchu byl ostatni ( z jego blenda ) */
#hero .quick-slider-slide{position:absolute;top:0;left:0;display:none;}
#hero .quick-slider-slide:first-child{display:block;}
#hero #slider > ul > li:not(:first-child){display:none;}

/* ==========================================================================
   NAGLOWEK: bez przewiniecia - bez paska ( przezroczysty ), po przewinieciu - bialy pasek.
   Napisy zawsze czarne, bez cieni. Klase is-solid dokłada skrypt w footer.php
   ========================================================================== */
:root{--head-h:60px;}
.header__navigation,
.is-sub .header__navigation,
.is-start .header__navigation:not(.is-solid){height:var(--head-h);padding:0 var(--gutter);background:transparent;color:#111;
  box-shadow:none;text-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .25s ease;}
.header__navigation.is-solid, .is-sub .header__navigation.is-solid{background:#fff;}
#logo #title a, .header__menu .menu__link, button.hamburger{color:#111;text-shadow:none;}
.header__menu .menu__link{opacity:.7;}
.header__menu .menu__link:hover, .header__menu .selected > .menu__link{opacity:1;}
.is-sub #body{padding-top:var(--head-h);}

/* galeria "justified" - wtyczka justifiedGallery ( plugins/, jak w serwisie andrzejlichota ).
   Wtyczka stylizuje tylko a / div / figure, a galeria Quick.Cms to ul > li - te same reguly dla li.
   Bez JS ( zanim wtyczka ulozy rzedy ) zdjecia stoja obok siebie w naturalnej wielkosci */
.images-3{display:flex;flex-wrap:wrap;gap:var(--gallery-gap, 6px);margin-top:2rem;}
.images-3 li{position:relative;margin:0;overflow:hidden;}
.images-3 img{display:block;max-width:100%;height:auto;}
.images-3.justified-gallery{display:block;}
.justified-gallery > li{position:absolute;display:inline-block;overflow:hidden;opacity:.1;margin:0;padding:0;background:var(--color-soft);}
.justified-gallery > li > a{display:block;width:100%;height:100%;}
.justified-gallery > li > a > img, .justified-gallery > li > img{position:absolute;top:50%;left:50%;max-width:none;margin:0;padding:0;border:none;opacity:0;}
.justified-gallery > li.jg-entry-visible{opacity:1;background:none;}
.justified-gallery > li.jg-entry-visible > a > img, .justified-gallery > li.jg-entry-visible > img{opacity:1;transition:opacity .5s ease-in, transform .5s ease;}
.justified-gallery > li > a:hover > img{transform:scale(1.03);}
.images-3 p{position:absolute;left:0;right:0;bottom:0;z-index:2;max-width:none;margin:0;padding:1.6rem .7rem .5rem;
  background:linear-gradient(transparent, rgba(0,0,0,.6));color:#fff;font-size:.78rem;line-height:1.35;pointer-events:none;
  opacity:0;transition:opacity .25s ease;}
.images-3 li:hover p{opacity:1;}
@media screen and (max-width:600px){ .images-3 p{opacity:1;} }
/* zdjecia z lewej / prawej: szerokosc miniatury ( bez limitu 45% ), najwyzej cala kolumna */
.images-1, .images-2{max-width:100%;}
.images-1 img, .images-2 img{width:auto;max-width:100%;height:auto;}
/* listy, linie i sródtytuly z kreska omijaja zdjecie z lewej / prawej ( obramowania i punktory nie wchodza pod obrazek );
   gdy obok zdjecia zostaje mniej niz 22rem, schodza pod nie zamiast tworzyc waska kolumne */
#page div.content > ul, #page div.content > ol, #page div.content > h2, #page div.content > h3,
#page div.content > hr, #page div.content > table, #page div.content > blockquote{display:flow-root;min-width:min(100%, 22rem);}

/* stopka: powered by + designed by w jednej linii */
#powered{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .6rem;}
#powered .powered__sep{color:var(--color-on-dark-muted);opacity:.5;font-size:.75rem;}

/* formularz logowania do edycji ( core/front-login.php ) - bez obramowan i cieni */
.front-login{max-width:26rem;margin:2rem 0 0;}
.front-login label{display:block;margin:0 0 .35rem;color:var(--color-muted);font-size:.85rem;font-weight:500;}
.front-login input[type=email], .front-login input[type=password], .front-login input[type=text]{display:block;width:100%;margin:0 0 1rem;padding:.8em .95em;
  background:var(--color-soft);border:0;border-radius:6px;box-shadow:none;color:var(--color-text);font:inherit;outline:none;}
.front-login input:focus{background:#ebe6dc;}
.front-login .front-login__code{font-size:1.8rem;letter-spacing:.5em;text-align:center;padding:.4em .2em .4em .7em;}
.front-login__step{margin:0 0 1rem;color:var(--color-accent);font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.front-login__buttons{display:flex;flex-wrap:wrap;gap:.6rem;margin:.2rem 0 0;}
.front-login button, .front-login__button{display:inline-block;padding:.7em 1.5em;border:0;border-radius:6px;box-shadow:none;background:var(--color-dark);color:#fff;
  font:inherit;font-size:.9rem;text-decoration:none;cursor:pointer;transition:background .2s ease;}
.front-login button:hover, .front-login__button:hover{background:var(--color-accent-dark);color:#fff;}
.front-login button.is-ghost, .front-login__button.is-ghost{background:var(--color-soft);color:var(--color-text);}
.front-login button.is-ghost:hover, .front-login__button.is-ghost:hover{background:#e4ded2;color:var(--color-text);}
.front-login__msg{margin:0 0 1.2rem;padding:.8rem 1rem;border:0;border-radius:6px;background:#e9f2e6;color:#2f5a2a;font-size:.9rem;}
.front-login__msg.is-error{background:#f7e4e1;color:#8a2a1e;}
.front-login__hint{margin:1rem 0 0;color:var(--color-muted);font-size:.8rem;}
.front-login__forgot{color:var(--color-accent-dark);text-decoration:underline;text-underline-offset:.2em;}
.front-login__forgot:hover{color:var(--color-text);}
.front-login__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* punkt srodka slajdu na telefonie ( okno slidera -> Telefon; --fx / --fy z core/front-edit.php ) */
@media screen and (max-width:767px){
  #hero #slider li.img img{object-position:var(--fx,50%) var(--fy,30%);}
}
/* telefon: slogan i nazwa wysrodkowane w poziomie, w pionie jak bylo ( przy dole zdjecia ) - polozenie z okna slidera dziala od 768 px */
@media screen and (max-width:767px){
  #hero .hero__text{left:var(--gutter);right:var(--gutter);text-align:center;}
  #hero .hero__eyebrow, #hero .hero__name{margin-left:auto;margin-right:auto;white-space:normal;}
  /* slogan pod nazwa ( w kodzie stoi nad nia - kolejnosc odwracamy tylko na telefonie ) */
  #hero .hero__text{display:flex;flex-direction:column;}
  #hero .hero__name{order:1;}
  #hero .hero__eyebrow{order:2;margin-top:.9rem;margin-bottom:0;}
}
/* okno slidera: ustawienie telefonu */
.front-slider-seg button.is-phone.is-on{background:#9be38d;color:#111;}
.front-slider-phonetools[hidden]{display:none;}
.front-slider-phonetools{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem;margin:0 0 .7rem;padding:.8rem;border-radius:8px;background:#181818;}
.front-slider-phone-image{position:relative;flex:1 1 320px;max-width:560px;cursor:crosshair;user-select:none;-webkit-user-select:none;line-height:0;}
.front-slider-phone-image img{display:block;width:100%;height:auto;border-radius:4px;pointer-events:none;}
.front-slider-phone-image .front-slider-marker{background:#9be38d;}
.front-slider-phone-image .front-slider-phone-empty{display:block;padding:2rem 1rem;color:#8a8a8a;font-size:.85rem;line-height:1.4;}
.front-slider-phone{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#9a9a9a;font-size:.75rem;}
.front-slider-phone-screen{position:relative;width:140px;height:290px;border-radius:18px;background:#000 50% 30% / cover no-repeat;outline:6px solid #2b2b2b;overflow:hidden;}
.front-slider-phone-screen .front-slider-phone-blend{position:absolute;inset:0;}
.front-slider-phone-hint{flex:1 1 100%;margin:0;color:#8a8a8a;font-size:.78rem;}

.front-images-zoom{display:flex;align-items:center;gap:.45rem;padding:.15rem .1rem;color:#cfcfcf;font-size:.78rem;cursor:pointer;}
.front-images-zoom input{width:1rem;height:1rem;accent-color:var(--color-user-action);cursor:pointer;}
.front-images-default{color:#fff;}

/* srodek kadru zdjecia ( cover ): przycisk przy zdjeciu i okno z przeciaganym punktem ( core/front-edit.js ) */
.front-images-focus{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4em .6em;border:1px solid #333;border-radius:6px;background:#202020;color:#cfcfcf;font:inherit;font-size:.76rem;cursor:pointer;}
.front-images-focus:hover, .front-images-focus:focus-visible{border-color:#777;color:#fff;outline:none;}
.front-images-focus span{color:#8a8a8a;font-variant-numeric:tabular-nums;}
.front-images-focus.is-set span{color:var(--color-user-action);}
.front-focus-overlay{z-index:10010;}
.front-edit-box.is-focus{z-index:10011;width:min(1100px,96vw);}
.front-focus-hint{margin:0 0 .9rem;color:#9a9a9a;font-size:.8rem;}
.front-focus-main{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:flex-start;}
.front-focus-stage{position:relative;flex:0 1 auto;max-width:100%;line-height:0;cursor:crosshair;touch-action:none;user-select:none;-webkit-user-select:none;}
.front-focus-stage img{display:block;max-width:min(640px,100%);max-height:62vh;width:auto;height:auto;border-radius:4px;pointer-events:none;}
.front-focus-line{position:absolute;pointer-events:none;background:rgba(255,255,255,.55);box-shadow:0 0 0 1px rgba(0,0,0,.25);}
.front-focus-line.is-x{top:0;bottom:0;width:1px;margin-left:-.5px;}
.front-focus-line.is-y{left:0;right:0;height:1px;margin-top:-.5px;}
.front-focus-marker{position:absolute;z-index:2;width:26px;height:26px;margin:-13px 0 0 -13px;border:2px solid #fff;border-radius:50%;background:rgba(255,90,70,.35);box-shadow:0 0 0 1px rgba(0,0,0,.45), 0 2px 8px rgba(0,0,0,.5);cursor:grab;outline:none;}
.front-focus-marker:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:#fff;}
.front-focus-marker:focus-visible{box-shadow:0 0 0 3px var(--color-user-action), 0 2px 8px rgba(0,0,0,.5);}
.front-focus-stage.is-dragging, .front-focus-stage.is-dragging .front-focus-marker{cursor:grabbing;}
.front-focus-side{flex:1 1 260px;display:flex;flex-direction:column;gap:1rem;min-width:0;}
.front-focus-fields{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;color:#cfcfcf;font-size:.82rem;}
.front-focus-fields label{display:flex;align-items:center;gap:.4rem;}
.front-focus-fields input{width:5.5em;padding:.4em .5em;font-variant-numeric:tabular-nums;}
.front-focus-reset{padding:.4em .8em;border:1px solid #333;border-radius:6px;background:transparent;color:#cfcfcf;font:inherit;font-size:.78rem;cursor:pointer;}
.front-focus-reset:hover{border-color:#777;color:#fff;}
.front-focus-previews{display:flex;gap:.8rem;align-items:flex-end;}
.front-focus-previews figure{margin:0;display:flex;flex-direction:column;gap:.3rem;}
.front-focus-previews figcaption{color:#8a8a8a;font-size:.72rem;}
.front-focus-preview{overflow:hidden;border:1px solid #333;border-radius:4px;background:#0b0b0b;}
.front-focus-preview.is-wide{width:200px;aspect-ratio:16/9;}
.front-focus-preview.is-tall{width:68px;aspect-ratio:9/19.5;}
.front-focus-preview img{display:block;width:100%;height:100%;object-fit:cover;}

/* kropki slidera: na dole, wyrownane do srodka, jednakowej wielkosci, bez cieni i obramowan;
   zaznaczona biala, niezaznaczone ciemne */
#hero .quick-slider-nav-dots-wrapper{position:absolute;z-index:5;left:0;right:0;bottom:1.4rem;width:auto;display:flex;justify-content:center;gap:.2rem;margin:0;padding:0;list-style:none;text-align:center;mix-blend-mode:normal;}
#hero .quick-slider-nav-dots-wrapper li{display:block;width:auto !important;height:auto !important;margin:0;padding:0;} /* regula slajdow ( #hero #slider li 100% ) nie dotyczy kropek */
#hero .quick-slider-nav-dots{display:block;box-sizing:content-box;width:10px;height:10px;margin:0;padding:0;border:8px solid transparent;border-radius:50%;
  background:rgba(17,17,17,.55);background-clip:content-box;box-shadow:none;font-size:0;line-height:0;color:transparent;overflow:hidden;cursor:pointer;
  transform:none;transition:background-color .25s ease;}
#hero .quick-slider-nav-dots:hover{background-color:rgba(17,17,17,.85);}
#hero .quick-slider-nav-dots.active{background-color:#fff;transform:none;}

/* strona ze statystykami bez dostepu ( core/front-login.php: displayFrontStats ) */
.front-stats__denied{margin:1.5rem 0 0;padding:1.1rem 1.3rem;border-radius:6px;background:var(--color-soft);}
.front-stats__denied p{margin:0;padding:0;}
.front-stats__denied p + p{margin-top:1rem;}

/* stopka: "Powered by Quick.Cms.Lite2" - Quick.Cms -> opensolution.org, .Lite2 -> grafiqa.pl */
#powered .powered__by{color:var(--color-on-dark-muted);font-size:.75rem;letter-spacing:.06em;opacity:.7;}
#powered .powered__by a{opacity:1;}
#powered .powered__by:hover{opacity:1;}

/* przelacznik wersji jezykowej w naglowku ( core/translations.php, displayLanguageSwitcher ) */
.header__menu:has(.lang-switch){display:flex;align-items:center;gap:1.6rem;}
.lang-switch{display:flex;gap:.7rem;margin:0;padding:0;list-style:none;font-size:.72rem;font-weight:600;letter-spacing:.16em;}
.lang-switch li{margin:0;}
.lang-switch a, .lang-switch span{display:block;padding:.35rem 0;color:inherit;text-decoration:none;}
.lang-switch a{opacity:.55;transition:opacity .25s ease;}
.lang-switch a:hover{opacity:1;}
.lang-switch .is-current span{border-bottom:1px solid currentColor;}

/* zrodlo materialu ( pages.sSource / sSourceLink, core/page-sources.php ) - jak media w andrzejlichota */
.page-source{margin:.45rem 0 0;color:var(--color-muted);font-size:.78rem;letter-spacing:.02em;}
.page-source__label{text-transform:lowercase;}
.page-source a{color:var(--color-text);text-decoration:underline;text-underline-offset:2px;}
.page-source a:hover{color:var(--color-accent-dark);}
#page > .page-source{margin:1.2rem 0 0;}

/* "dodaj kolejną" pod lista podstron i edycja zrodla - tylko dla zalogowanego redaktora */
.front-add-subpage-button, .front-source-edit, .front-modal-open{display:inline-flex;align-items:center;gap:.5em;margin:1rem 0 0;padding:.5em .95em;
  border:1px dashed var(--color-user-action);border-radius:6px;background:transparent;color:var(--color-user-action);
  font-family:var(--font);font-size:.8rem;letter-spacing:.02em;line-height:1.4;cursor:pointer;transition:background .2s ease,color .2s ease;}
.front-add-subpage-button:hover, .front-source-edit:hover, .front-modal-open:hover{background:var(--color-user-action);border-style:solid;color:#fff;}
.front-add-subpage-button svg, .front-source-edit svg, .front-modal-open svg{width:1rem;height:1rem;fill:currentColor;}
.front-add-subpage-button{display:flex;}
html.front-gadgets-hidden .front-add-subpage-button, html.front-gadgets-hidden .front-source-edit, html.front-gadgets-hidden .front-modal-open,
html.front-gadgets-hidden .front-prepublication-button, html.front-gadgets-hidden .prepublication-note__publish{display:none !important;} /* przedpublikacja: przyciski ukryj / opublikuj ( core/prepublication.php ) */
@media print{ .front-add-subpage-button, .front-source-edit, .front-modal-open{display:none !important;} }
.front-edit-box.is-fields .front-edit-label{display:block;margin:1rem 0 .4rem;color:#9a9a9a;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;}
.front-edit-box.is-fields .front-edit-label:first-child{margin-top:0;}
.front-edit-box.is-fields .mce-tinymce{flex:0 0 auto;}

/* zdjecie w polozeniu "Tło" ( core/page-background.php ): osobna kolumna obok tresci - tekst na nie nie wchodzi.
   do lewej / do prawej = kolumna z tej strony, srodek = pod trescia; #container ma wybrany kolor tla.
   Zdjecie w oryginalnej wielkosci, zmniejszane tylko gdy nie miesci sie w kolumnie. */
.page-bg-layout{display:flex;align-items:flex-start;justify-content:center;gap:clamp(2rem, 5vw, 4.5rem);}
.page-bg-layout > #page{flex:1 1 var(--measure);min-width:0;margin:0;}
.page-bg-image{flex:0 1 auto;min-width:0;margin:0;padding:clamp(3rem, 8vw, 6rem) 0 clamp(3rem, 8vw, 5rem);}
.page-bg-image img{display:block;max-width:100%;height:auto;}
.page-bg-layout.is-left .page-bg-image{order:-1;}
.page-bg-layout.is-center{flex-direction:column;align-items:center;gap:0;}
.page-bg-layout.is-center > #page{flex:0 0 auto;width:100%;max-width:var(--measure);}
.page-bg-layout.is-center .page-bg-image{padding-top:0;}
@media screen and (max-width:860px){
  /* telefon i waski ekran: tytul, tekst, pod spodem zdjecie */
  .page-bg-layout, .page-bg-layout.is-left, .page-bg-layout.is-right{flex-direction:column;align-items:stretch;gap:0;}
  .page-bg-layout > #page{flex:0 0 auto;width:100%;margin:0 auto;}
  .page-bg-layout .page-bg-image, .page-bg-layout.is-left .page-bg-image{order:0;padding-top:0;align-self:center;}
}
/* okno zdjec: opcje tla ( polozenie "Tło" ) */
.front-images-bg{display:flex;flex-direction:column;gap:.4rem;}
.front-images-bg[hidden]{display:none;}
.front-images-bgpos{display:flex;}
.front-images-bgpos button{flex:1 1 0;padding:.35em .3em;font-size:.72rem;}
.front-images-bgcolor{display:flex;align-items:center;justify-content:space-between;gap:.4rem;color:#9a9a9a;font-size:.75rem;}
.front-images-bgcolor input{width:2.2rem;height:1.6rem;padding:0;border:1px solid #3a3a3a;border-radius:6px;background:transparent;cursor:pointer;}

/* okno ustawien wygladu ( belka administratora -> ustawienia, core/site-style.php ) - z boku, strona widoczna obok */
.front-edit-overlay.is-light{background:rgba(10,10,10,.12);backdrop-filter:none;-webkit-backdrop-filter:none;}
.front-edit-box.is-settings{top:56px;right:1rem;left:auto;transform:none;width:min(460px,94vw);max-height:calc(100vh - 72px);resize:none;animation:frontEditFade .18s ease;}
.front-settings-section{margin:0 0 1.2rem;}
.front-settings-section h3{margin:0 0 .6rem;color:#c9c9c9;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.front-settings-row{display:grid;grid-template-columns:8.5rem 1fr auto;align-items:center;gap:.3rem .7rem;padding:.35rem 0;color:#9a9a9a;font-size:.8rem;}
.front-settings-row input[type="range"]{width:100%;accent-color:var(--color-user-action);}
.front-settings-row input[type="color"]{width:2.4rem;height:1.7rem;padding:0;border:1px solid #3a3a3a;border-radius:6px;background:transparent;cursor:pointer;}
.front-settings-row output{grid-column:2;color:#ddd;font-size:.75rem;}
.front-settings-row.is-default output{color:#7a7a7a;}
.front-settings-row .front-settings-reset, .front-settings-row .front-settings-subgap-reset, .front-settings-row .front-settings-px-reset{grid-column:3;grid-row:1;padding:.2em .6em;border:1px solid #3a3a3a;border-radius:6px;background:transparent;color:#9a9a9a;font-family:inherit;font-size:.72rem;cursor:pointer;}
.front-settings-row .front-settings-reset:hover, .front-settings-row .front-settings-subgap-reset:hover, .front-settings-row .front-settings-px-reset:hover{color:#fff;border-color:#6a6a6a;}
.front-settings-row.is-default .front-settings-reset, .front-settings-row.is-default .front-settings-px-reset{visibility:hidden;}
.front-settings-row .front-settings-bullets{grid-column:2 / -1;flex-wrap:wrap;}
.front-settings-bullets button{font-size:.75rem;}
.front-settings-hint{margin:.3rem 0 0;color:#7a7a7a;font-size:.75rem;}
.front-settings-select{width:100%;padding:.35em .5em;border:1px solid #3a3a3a;border-radius:6px;background:#1c1c1c;color:#eee;font-family:inherit;font-size:.8rem;}
/* probka kroju - w kroju strony ( --font ), nie okna */
.front-settings-row .front-settings-sample{grid-column:1 / -1;padding:.4rem .6rem;border:1px solid #2b2b2b;border-radius:6px;color:#eee;font-family:var(--font);font-size:1.05rem;}
@media screen and (max-width:600px){
  .front-edit-box.is-settings{right:3vw;top:48px;}
  .front-settings-row{grid-template-columns:1fr auto;}
  .front-settings-row .front-settings-name{grid-column:1 / -1;}
  .front-settings-row output{grid-column:1;}
  .front-settings-row .front-settings-reset, .front-settings-row .front-settings-subgap-reset, .front-settings-row .front-settings-px-reset{grid-column:2;grid-row:auto;}
}

/* okno slidera: napisy na zdjeciu ( core/site-texts.php ) */
.front-slider-text{display:inline-flex;align-items:center;gap:.5rem;color:#9a9a9a;font-size:.78rem;}
.front-slider-text .front-edit-field{width:min(320px,60vw);padding:.45em .6em;font-size:.85rem;}
.front-slider-texteditor{display:inline-flex;align-items:stretch;border:1px solid #333;border-radius:8px;background:#1c1c1c;overflow:hidden;}
.front-slider-bold{flex:0 0 2rem;border:0;border-right:1px solid #333;background:#232323;color:#f4f4f4;cursor:pointer;}
.front-slider-bold:hover{background:var(--color-user-action);}
.front-slider-break{flex:0 0 2rem;border:0;border-right:1px solid #333;background:#232323;color:#f4f4f4;font-size:1rem;cursor:pointer;}
.front-slider-break:hover{background:var(--color-user-action);}
.front-slider-name{display:block;min-width:min(260px,50vw);padding:.45em .6em;color:#f4f4f4;font-size:.85rem;white-space:nowrap;outline:none;}
.front-slider-hint{margin:.2rem 0 0;color:#7a7a7a;font-size:.75rem;}
/* okno ustawien: wersja demo ( database/demo.php ) */
.front-settings-row.front-settings-demo{cursor:pointer;}
.front-settings-demo input{grid-column:2;justify-self:start;width:1.1rem;height:1.1rem;accent-color:var(--color-user-action);}
/* belka: wersja demo bez zapisu ( core/site-style.php, checkSiteDemoReadOnly ) */
.front-user-bar-demo{flex:0 0 auto;padding:.25em .7em;border-radius:6px;background:#ffd166;color:#111;font-size:.7rem;font-weight:600;letter-spacing:.03em;white-space:nowrap;}
@media screen and (max-width:600px){ .front-user-bar-demo{display:none;} }
/* okno zdjec: ustawienia naraz dla wszystkich zdjec strony ( core/front-edit.js, applyToAll ) */
.front-images-all{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin:.9rem 0 0;padding:.7rem .8rem;border:1px solid #2b2b2b;border-radius:8px;background:#181818;}
.front-images-all-label{flex:1 1 100%;color:#c9c9c9;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.front-images-all .front-edit-field{width:auto;flex:1 1 11rem;padding:.45em .6em;font-size:.82rem;}

/* GALERIA PRAC ( templates/lite/works-gallery.php, core/works.php ) */
.works-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0 1.4rem;}
.works-filter button{padding:.35rem .95rem;border:1px solid var(--color-divider);border-radius:2rem;background:none;color:var(--color-muted);font:inherit;font-size:.82rem;letter-spacing:.04em;cursor:pointer;transition:border-color .2s, color .2s, background .2s;}
.works-filter button:hover{border-color:var(--color-text);color:var(--color-text);}
.works-filter button.is-on{border-color:var(--color-text);background:var(--color-text);color:var(--color-white);}
.works-tiles{margin:2rem 0;list-style:none;}
.works-filter + .works-tiles{margin-top:0;}
/* pozycje i rozmiary kafelkow ustawia justified gallery ( reguly .justified-gallery > li wyzej ) */
.works-tiles .work-tile a{color:var(--color-white);text-decoration:none;}
.works-tiles:not(.justified-gallery){display:flex;flex-wrap:wrap;gap:12px;}
.works-tiles:not(.justified-gallery) .work-tile{position:relative;height:280px;}
.works-tiles:not(.justified-gallery) .work-tile img{display:block;width:auto;height:100%;}
.work-tile__caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:2.2rem .8rem .6rem;background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.6) 100%);opacity:0;transition:opacity .3s;}
.work-tile a:hover .work-tile__caption, .work-tile a:focus .work-tile__caption{opacity:1;}
.work-tile__name{display:block;font-size:.9rem;font-weight:500;line-height:1.35;}
.work-tile__cycle{display:block;color:rgba(255,255,255,.8);font-size:.74rem;line-height:1.4;letter-spacing:.02em;}
@media (hover:none){ .work-tile__caption{opacity:1;padding-top:1.6rem;} }

/* strona pracy: reprodukcja duza, detale jako miniatury */
.work__images{margin:1.6rem 0 2rem;}
.work__main{margin:0;text-align:center;}
.work__main img{display:block;width:auto;max-width:100%;max-height:82vh;height:auto;margin:0 auto;}
.work__details{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:.8rem 0 0;padding:0;list-style:none;}
/* detale jako kafelki ( jak w modulach strony glownej ): kwadrat, zaokraglone rogi, przyblizenie po najechaniu */
.work__details{gap:.8rem;}
.work__details li{width:clamp(4.55rem, 11.2vw, 7rem);aspect-ratio:1;overflow:hidden;border-radius:var(--tile-radius, 12px);background:var(--color-soft);isolation:isolate;-webkit-mask-image:-webkit-radial-gradient(white, black);}
.work__details a{display:block;width:100%;height:100%;}
.work__params + .work__details{margin:0 0 2rem;} /* detale pod parametrami */
/* skala: praca we wnetrzu ( displayWorkScale w core/works.php ) */
.work-scale{max-width:960px;margin:2.4rem auto;text-align:center;}
#page .work-scale__title{margin:0 0 1rem;font-size:.78rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--color-muted);}
.work-scale__stage{position:relative;overflow:hidden;border-radius:var(--tile-radius, 12px);background:var(--color-soft);}
.work-scale__stage::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(0,0,0,.07);pointer-events:none;} /* ramka podgladu - biala sciana nie zlewa sie ze strona */
.work-scale__svg{display:block;width:100%;height:auto;aspect-ratio:4/3;}
.work-scale__stage:fullscreen{display:flex;align-items:center;justify-content:center;border-radius:0;background:#000;}
.work-scale__stage:fullscreen .work-scale__svg{width:auto;height:100%;max-width:100%;}
.work-scale__full{position:absolute;top:.8rem;right:.8rem;padding:.4em .9em;border:0;border-radius:2rem;background:rgba(255,255,255,.85);color:#1b1a18;font:inherit;font-size:.75rem;letter-spacing:.04em;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.15);}
.work-scale__full[hidden]{display:none;}
.work-scale__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1.4rem;margin:.9rem 0 0;}
.work-scale__walls{display:flex;gap:.35rem;}
.work-scale__walls:empty{display:none;}
.work-scale__walls button{width:2.2rem;height:2.2rem;padding:0;border:1px solid rgba(0,0,0,.15);border-radius:6px;background:center 35% / cover no-repeat;cursor:pointer;transition:box-shadow .2s;}
.work-scale__walls button[aria-pressed="true"]{box-shadow:0 0 0 2px var(--color-bg), 0 0 0 3px var(--color-text);}
.work-scale__own{display:inline-flex;align-items:center;padding:.35em .9em;border:1px dashed var(--color-divider);border-radius:2rem;color:var(--color-muted);font-size:.78rem;cursor:pointer;}
.work-scale__own:hover, .work-scale__own.is-on{border-color:var(--color-text);border-style:solid;color:var(--color-text);}
.work-scale__frames{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:2px;padding:2px;border-radius:2rem;background:var(--color-soft);}
.work-scale__frames button{display:inline-flex;align-items:center;gap:.4em;padding:.3em .8em;border:0;border-radius:2rem;background:none;color:var(--color-muted);font:inherit;font-size:.78rem;cursor:pointer;}
.work-scale__frames button span{width:.8rem;height:.8rem;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);}
.work-scale__frames button[aria-pressed="true"]{background:var(--color-bg, #fff);color:var(--color-text);box-shadow:0 1px 3px rgba(0,0,0,.12);}
.work-scale__mat{display:inline-flex;align-items:center;gap:.35em;color:var(--color-muted);font-size:.78rem;cursor:pointer;}
.work-scale__mat[hidden]{display:none;}
.work-scale__matcolors{display:inline-flex;gap:.3rem;}
.work-scale__matcolors[hidden]{display:none;}
.work-scale__matcolors button{width:1.3rem;height:1.3rem;padding:0;border:1px solid rgba(0,0,0,.18);border-radius:3px;cursor:pointer;}
.work-scale__matcolors button[aria-pressed="true"]{box-shadow:0 0 0 2px var(--color-bg), 0 0 0 3px var(--color-text);}
.work-scale__ownbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem 1rem;margin:.7rem 0 0;color:var(--color-muted);font-size:.75rem;}
.work-scale__ownbar[hidden]{display:none;}
.work-scale__ownbar label{display:inline-flex;align-items:center;gap:.5em;}
.work-scale__ownbar output{min-width:3.5em;color:var(--color-text);}
.work-scale__svg.is-own .work-scale__art{cursor:grab;touch-action:none;}
.work-scale__note{margin:.7rem 0 0;color:var(--color-muted);font-size:.75rem;}
@media print{ .work-scale{display:none;} }
.work__details img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease, opacity .2s;}
.work__details a:hover img, .work__details a:focus-visible img{transform:scale(1.06);}
.work__cycle{color:var(--color-muted);font-size:.9rem;}
.work__cycle span{letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;}
/* poprzednia / nastepna praca - na gorze strony pracy */
.work__nav{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin:0 0 1.6rem;padding:0 0 1rem;border-bottom:1px solid var(--color-divider);font-size:.9rem;}
.work__nav .work__count{margin-left:.4rem;color:var(--color-muted);letter-spacing:.04em;white-space:nowrap;}
.work__nav.is-exhibition .work__all{color:var(--color-text);}
.work__nav a{color:var(--color-text);text-decoration:none;}
.work__nav a:hover{color:var(--color-accent-dark);}
.work__nav .work__all{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;}
.work__nav .work__next{text-align:right;}
@media screen and (max-width:600px){ .work__nav{grid-template-columns:1fr 1fr;} .work__nav .work__all{grid-column:1 / -1;grid-row:1;text-align:center;} }
/* galeria prac i strona pracy szersze niz kolumna tekstu; opis zostaje w szerokosci czytelnej */
#page.works, #page.work{max-width:min(78rem, 100%);}
#page.works > h1, #page.works > .breadcrumb, #page.works > .content,
#page.work > h1, #page.work > .breadcrumb, #page.work > .content, #page.work > .work__cycle{max-width:var(--measure);}

/* wyszukiwarka i filtry galerii prac */
.works-filters{margin:2rem 0 1.4rem;}
.works-search{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:.8rem;}
.works-search__input{flex:1 1 16rem;min-width:0;padding:.55rem .9rem;border:1px solid var(--color-divider);border-radius:2rem;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.9rem;}
.works-search__input:focus, .works-select:focus{outline:none;border-color:var(--color-text);}
.works-select{padding:.5rem 2rem .5rem .9rem;border:1px solid var(--color-divider);border-radius:2rem;background:var(--color-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236f6a62'/%3E%3C/svg%3E") no-repeat right .9rem center;color:var(--color-text);font:inherit;font-size:.85rem;-webkit-appearance:none;appearance:none;}
.works-count{margin-left:auto;color:var(--color-muted);font-size:.8rem;letter-spacing:.06em;white-space:nowrap;}
.works-filters .works-filter{margin:0 0 .5rem;}
.works-empty{padding:2rem 0;color:var(--color-muted);text-align:center;}

/* pokaz slajdow prac ( core/works-slideshow.js ): przycisk przy wyszukiwarce i okno na pelnym ekranie */
.works-slideshow-open{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--color-text);border-radius:2rem;background:var(--color-text);color:var(--color-bg);font:inherit;font-size:.82rem;letter-spacing:.02em;cursor:pointer;transition:background .2s ease, color .2s ease;}
.works-slideshow-open span{width:0;height:0;border-left:7px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent;}
.works-slideshow-open:hover, .works-slideshow-open:focus-visible{background:transparent;color:var(--color-text);}
html.has-works-slideshow, html.has-works-slideshow body{overflow:hidden;}
.work__slideshow{display:flex;justify-content:flex-end;margin:0 0 .8rem;}
.works-slideshow{position:fixed;inset:0;z-index:10000;background:#0b0b0b;color:#f4f4f4;font-family:var(--font, inherit);}
.works-slideshow__stage{position:absolute;inset:0;overflow:hidden;cursor:pointer;}
.works-slideshow__slide{position:absolute;inset:0;opacity:0;transition:opacity var(--wss-fade, 1800ms) ease-in-out;}
.works-slideshow__slide.is-on{opacity:1;}
.works-slideshow__slide.is-off{opacity:0;}
/* cale dzielo na ekranie ( bez przycinania ), margines na podpis; najazd plynie przez caly czas slajdu */
.works-slideshow__slide img{position:absolute;inset:4vh 4vw 9vh;width:92vw;height:87vh;max-width:none;object-fit:contain;will-change:transform;
  animation:wss-drift var(--wss-time, 8800ms) linear forwards;}
.works-slideshow__slide.drift-a img{--wss-x0:-1%;--wss-y0:.6%;--wss-x1:1%;--wss-y1:-.6%;}
.works-slideshow__slide.drift-b img{--wss-x0:1%;--wss-y0:-.6%;--wss-x1:-1%;--wss-y1:.6%;}
.works-slideshow__slide.drift-c img{--wss-x0:.8%;--wss-y0:.8%;--wss-x1:-.6%;--wss-y1:-.8%;}
.works-slideshow__slide.drift-d img{--wss-x0:-.8%;--wss-y0:-.8%;--wss-x1:.6%;--wss-y1:.8%;}
.works-slideshow__slide.no-drift img{animation:none;}
/* cover ( Ustawienia -> Galeria prac ): zdjecie na caly ekran, przyciemnienie dolu pod podpisem i przyciskami */
.works-slideshow.is-cover .works-slideshow__slide img{inset:0;width:100%;height:100%;object-fit:cover;}
.works-slideshow.is-cover .works-slideshow__stage:after{content:"";position:absolute;inset:auto 0 0 0;height:22vh;z-index:1;pointer-events:none;background:linear-gradient(0deg, rgba(0,0,0,.55), rgba(0,0,0,0));}
@keyframes wss-drift{
  from{transform:translate3d(var(--wss-x0, 0), var(--wss-y0, 0), 0) scale(1);}
  to{transform:translate3d(var(--wss-x1, 0), var(--wss-y1, 0), 0) scale(1.07);}
}
.works-slideshow.is-paused .works-slideshow__slide img{animation-play-state:paused;}
.works-slideshow__caption{position:absolute;left:4vw;bottom:2.4vh;z-index:2;display:flex;flex-direction:column;gap:.15rem;max-width:60vw;font-size:.95rem;line-height:1.35;text-shadow:0 1px 8px rgba(0,0,0,.6);transition:opacity .5s ease;}
.works-slideshow__caption a, .works-slideshow__caption span{color:inherit;text-decoration:none;font-weight:500;letter-spacing:.01em;}
.works-slideshow__caption a:hover{text-decoration:underline;}
.works-slideshow__caption small{color:rgba(244,244,244,.62);font-size:.75rem;letter-spacing:.04em;}
.works-slideshow__bar{position:absolute;right:4vw;bottom:2.2vh;z-index:2;display:flex;align-items:center;gap:.35rem;transition:opacity .5s ease;}
.works-slideshow__bar button, .works-slideshow__close{position:relative;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(0,0,0,.25);color:#fff;cursor:pointer;transition:border-color .2s ease, background .2s ease, opacity .5s ease;}
.works-slideshow__bar button:hover, .works-slideshow__close:hover, .works-slideshow__bar button:focus-visible, .works-slideshow__close:focus-visible{border-color:#fff;background:rgba(0,0,0,.5);outline:none;}
.works-slideshow__bar svg, .works-slideshow__close svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;}
.works-slideshow__play .is-play, .works-slideshow.is-paused .works-slideshow__play .is-pause{display:none;}
.works-slideshow.is-paused .works-slideshow__play .is-play{display:block;}
.works-slideshow__counter{min-width:4.5em;white-space:nowrap;padding-left:.5rem;color:rgba(244,244,244,.62);font-size:.75rem;letter-spacing:.08em;text-align:right;font-variant-numeric:tabular-nums;}
.works-slideshow__close{position:absolute;top:2.4vh;right:4vw;z-index:2;}
/* po chwili bez ruchu myszy zostaje samo zdjecie */
.works-slideshow.is-idle{cursor:none;}
.works-slideshow.is-idle .works-slideshow__stage{cursor:none;}
.works-slideshow.is-idle .works-slideshow__bar, .works-slideshow.is-idle .works-slideshow__close{opacity:0;}
.works-slideshow.is-idle .works-slideshow__caption{opacity:.75;}
.works-slideshow.is-loading:after{content:"";position:absolute;left:50%;top:50%;z-index:3;width:28px;height:28px;margin:-14px 0 0 -14px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:wss-spin .9s linear infinite;}
@keyframes wss-spin{to{transform:rotate(360deg);}}
@media (max-width:640px){
  .works-slideshow__slide img{inset:8vh 2vw 14vh;width:96vw;height:78vh;}
  .works-slideshow__caption{left:5vw;right:5vw;bottom:9vh;max-width:none;}
  .works-slideshow__bar{left:5vw;right:5vw;bottom:2vh;justify-content:center;}
}
@media print{ .works-slideshow-open, .works-slideshow{display:none !important;} }

/* parametry pracy: kategoria, cykl, rok, technika, wymiary, cena */
/* parametry pracy: wysrodkowane pod reprodukcja, bez linii */
.work__params{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 2.2rem;margin:0 0 1.6rem;padding:1rem 0;border:0;text-align:center;}
.work__param{display:flex;flex-direction:column;align-items:center;}
.work__param dt{color:var(--color-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;}
.work__param dd{margin:0;font-size:.98rem;}
.work__param.no-label{justify-content:flex-end;}
.work__param--price dd{font-weight:600;}
#page.work > .work__params{max-width:none;}

/* menu nad sliderem: na ciemnym slajdzie biale napisy ( klasa is-on-dark ustawiana w header.php wg jasnosci obrazu pod menu ) */
.is-start .header__navigation.is-on-dark:not(.is-solid) #logo #title a,
.is-start .header__navigation.is-on-dark:not(.is-solid) .header__menu .menu__link,
.is-start .header__navigation.is-on-dark:not(.is-solid) button.hamburger,
.is-start .header__navigation.is-on-dark:not(.is-solid) .lang-switch a,
.is-start .header__navigation.is-on-dark:not(.is-solid){color:#fff;}
.is-start .header__navigation.is-on-dark:not(.is-solid) .header__menu .menu__link{opacity:.85;text-shadow:0 1px 8px rgba(0,0,0,.25);}
.is-start .header__navigation #logo #title a, .is-start .header__navigation .header__menu .menu__link, .is-start .header__navigation button.hamburger{transition:color .4s ease, opacity .25s ease;}

/* edycja na stronie: kategoria, cykl i parametry pracy ( tylko zalogowany redaktor, core/works.php ) */

/* plansza wlaczona - pasek dla zalogowanego ( core/maintenance.php ) */
.maintenance-notice{position:fixed;left:50%;bottom:1rem;z-index:300;transform:translateX(-50%);max-width:calc(100% - 2rem);padding:.55rem 1rem;border-radius:2rem;background:#000;color:#fff;font-size:.8rem;line-height:1.4;text-align:center;box-shadow:0 4px 18px rgba(0,0,0,.25);}
.maintenance-notice a{color:#fff;text-decoration:underline;}

/* praca w przedpublikacji - oznaczenie widoczne tylko dla zalogowanych ( core/works.php ) */
.work-tile__badge{position:absolute;top:.5rem;left:.5rem;z-index:3;padding:.2rem .55rem;border-radius:2rem;background:#c62828;color:#fff;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;}
.works-tiles .work-tile.is-editors-only img{opacity:.75;}
.work__editors-only{display:inline-block;margin:-.6rem 0 1.2rem;padding:.25rem .8rem;border-radius:2rem;background:#000;color:#fff;font-size:.75rem;letter-spacing:.06em;}

/* strona glowna: "Cykle prac" ( core/works.php ) - po jednej losowej pracy z cyklu, cala siatka w poziomym prostokacie, prace kadrowane */
.home-cycles{padding:clamp(3rem, 8vw, 6rem) 0 clamp(3rem, 7vw, 5rem);}
.home-cycles__inner{max-width:min(78rem, 100%);margin:0 auto;}
.home-cycles__title{color:var(--h2-color, var(--color-text));font-size:clamp(1.6rem, 3.4vw, 2.4rem);font-weight:300;letter-spacing:-.01em;}
.home-cycles__list{display:grid;grid-template-columns:repeat(var(--cols, 3), 1fr);grid-template-rows:repeat(var(--rows, 1), 1fr);gap:clamp(6px, 1vw, 12px);aspect-ratio:var(--ratio, 21 / 9);list-style:none;}
.cycle-tile{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--color-soft);}
.cycle-tile.is-tall{grid-row:span 2;}
.cycle-tile a{display:block;width:100%;height:100%;color:#fff;text-decoration:none;}
.cycle-tile img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .7s ease;}
.cycle-tile a:hover img, .cycle-tile a:focus img{transform:scale(1.04);}
.cycle-tile__caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:3rem 1rem .9rem;background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.65) 100%);}
.cycle-tile__name{display:block;font-size:1.05rem;font-weight:500;line-height:1.3;}
.cycle-tile__meta{display:block;color:rgba(255,255,255,.8);font-size:.75rem;letter-spacing:.04em;}
@media screen and (max-width:700px){
  .home-cycles__list{grid-template-columns:repeat(2, 1fr);grid-template-rows:none;grid-auto-rows:clamp(9rem, 42vw, 15rem);aspect-ratio:auto;}
  .cycle-tile.is-tall{grid-row:auto;}
  .home-cycles__list > .cycle-tile:only-child, .home-cycles__list > .cycle-tile:last-child:nth-child(odd){grid-column:1 / -1;}
}
.is-start #body .container > #content > .home-cycles:first-child{padding-top:clamp(3rem, 8vw, 6rem);}
.works-filter[hidden], .works-filter button[hidden]{display:none;}

/* galeria prac: doladowanie porcjami ( Ustawienia -> Galeria prac ) */
.works-tiles .work-tile.is-later{display:none;}
.works-more{margin:1.5rem 0 0;text-align:center;}
.works-more[hidden]{display:none;}
.works-more__button[hidden]{display:none;}
.works-more__all{margin-left:.6rem;border-color:transparent;}
.works-more__button{padding:.65rem 1.8rem;border:1px solid var(--color-text);border-radius:2rem;background:none;color:var(--color-text);font:inherit;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s, color .2s;}
.works-more__button:hover, .works-more__button:focus{background:var(--color-text);color:var(--color-bg);outline:none;}
.works-more__count{opacity:.6;letter-spacing:.06em;}

/* podstrony: slogan obok nazwy w naglowku ( header.php ) */
#logo{display:flex;align-items:baseline;gap:.9rem;min-width:0;}
.logo__slogan{margin:0;padding-left:.9rem;border-left:1px solid currentColor;color:var(--color-muted);font-size:.72rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;line-height:1;border-color:var(--color-divider);}
@media screen and (max-width:980px){ .logo__slogan{display:none;} }

/* strona glowna: fragment "O artyscie" ( core/works.php ) - miniatura do 150px i dwa pierwsze zdania / krotki opis */
.home-about{padding:clamp(3rem, 8vw, 5.5rem) 0 0;}
.home-about + .home-cycles{padding-top:clamp(2.5rem, 6vw, 4rem);}
.home-about__inner{display:flex;gap:clamp(1.2rem, 3vw, 2.2rem);align-items:flex-start;max-width:min(52rem, 100%);margin:0 auto;}
.home-about__image{flex:0 0 auto;display:block;}
.home-about__image img{display:block;width:auto;height:auto;max-width:150px;max-height:150px;}
.home-about__text{min-width:0;}
.home-about__title{margin-bottom:.8rem;color:var(--h2-color, var(--color-text));font-size:clamp(1.4rem, 2.8vw, 1.9rem);font-weight:300;letter-spacing:-.01em;}
.home-about__lead{color:var(--color-text);line-height:1.7;}
.home-about__lead p{margin:0;}
.home-about__more{display:inline-block;margin-top:.9rem;color:var(--color-text);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.15rem;}
.home-about__more:hover{color:var(--color-accent-dark);}
@media screen and (max-width:520px){ .home-about__inner{flex-direction:column;} }

/* wystawy ( core/exhibitions.php ): slider na stronie glownej pod "Cyklami prac", data na podstronach */
.home-exhibitions{padding:clamp(1rem, 3vw, 2rem) 0 clamp(3rem, 7vw, 5rem);}
.home-exhibitions__inner{max-width:min(78rem, 100%);margin:0 auto;}
.home-cycles__head, .home-exhibitions__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.6rem 1.2rem;margin-bottom:clamp(1.4rem, 3vw, 2.2rem);}
.home-exhibitions__title{color:var(--h2-color, var(--color-text));font-size:clamp(1.6rem, 3.4vw, 2.4rem);font-weight:300;letter-spacing:-.01em;}
.home-cycles__all, .home-exhibitions__all{color:var(--color-text);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.15rem;}
.exh-slider{position:relative;aspect-ratio:21 / 9;overflow:hidden;background:var(--color-dark);}
.exh-slides{position:absolute;inset:0;list-style:none;}
.exh-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease, visibility 0s linear .9s;}
.exh-slide.is-active{opacity:1;visibility:visible;transition:opacity .9s ease;}
.exh-slide a{display:block;width:100%;height:100%;color:#fff;text-decoration:none;}
.exh-slide img{display:block;width:100%;height:100%;object-fit:cover;}
.exh-slide.no-image a{background:linear-gradient(135deg, #1b1a18, #3a3631);}
/* wystawa bez zdjecia z wlasnym kolorem tla ( okno daty wystawy ): bez cienia pod napisem, na jasnym kolorze ciemne napisy */
.exh-slide.has-color .exh-slide__text{background:none;}
.exh-slide.is-light a{color:#111;}
.exh-slide.is-light .exh-slide__meta, .exh-slide.is-light .exh-slide__desc{color:rgba(0,0,0,.72);}
.exh-slide.is-light .exh-slide__state{background:rgba(0,0,0,.1);}
.exh-slide.is-light .exh-slide__state.is-now{background:#111;color:#fff;}
.exh-slide.is-light .exh-slide__more{border-bottom-color:rgba(0,0,0,.6);}
.exh-slider.is-light .exh-dot{background:rgba(0,0,0,.3);}
.exh-slider.is-light .exh-dot.is-active, .exh-slider.is-light .exh-dot:hover{background:#111;}
.exh-slider.is-light .exh-arrow{border-color:rgba(0,0,0,.4);background:rgba(255,255,255,.35);}
.exh-slider.is-light .exh-arrow:before{border-color:#111;}
.exh-slide__text{position:absolute;left:0;right:0;bottom:0;padding:clamp(3rem, 8vw, 6rem) clamp(1rem, 4vw, 3rem) clamp(1.4rem, 4vw, 2.6rem);background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.72) 100%);}
.exh-slide__meta{display:block;margin-bottom:.5rem;color:rgba(255,255,255,.85);font-size:.8rem;letter-spacing:.06em;}
.exh-slide__state{display:inline-block;margin-right:.5rem;padding:.12rem .55rem;border-radius:2rem;background:rgba(255,255,255,.18);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;}
.exh-slide__state.is-now{background:#fff;color:#000;}
.exh-slide__title{display:block;max-width:40rem;font-size:clamp(1.4rem, 3.4vw, 2.6rem);font-weight:300;line-height:1.15;letter-spacing:-.01em;}
.exh-slide__desc{display:block;max-width:38rem;margin-top:.6rem;color:rgba(255,255,255,.85);font-size:.95rem;line-height:1.5;}
.exh-slide__more{display:inline-block;margin-top:.9rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:.1rem;}
.exh-arrow{position:absolute;top:50%;z-index:3;width:44px;height:44px;margin-top:-22px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(0,0,0,.25);cursor:pointer;transition:background .2s, border-color .2s;}
.exh-arrow:hover, .exh-arrow:focus{background:rgba(0,0,0,.55);border-color:#fff;outline:none;}
.exh-arrow:before{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;border-top:1.5px solid #fff;border-right:1.5px solid #fff;}
.exh-arrow.is-prev{left:1rem;} .exh-arrow.is-prev:before{transform:translate(-30%,-50%) rotate(-135deg);}
.exh-arrow.is-next{right:1rem;} .exh-arrow.is-next:before{transform:translate(-70%,-50%) rotate(45deg);}
.exh-dots{position:absolute;right:clamp(1rem, 4vw, 3rem);bottom:clamp(1rem, 3vw, 1.6rem);z-index:3;display:flex;gap:8px;}
.exh-dot{width:28px;height:2px;padding:0;border:0;background:rgba(255,255,255,.4);cursor:pointer;}
.exh-dot.is-active, .exh-dot:hover{background:#fff;}
@media screen and (max-width:700px){
  .exh-slider{aspect-ratio:4 / 5;}
  .exh-arrow{display:none;}
  .exh-dots{left:clamp(1rem, 4vw, 3rem);right:auto;top:1rem;bottom:auto;}
}
.exhibition-date{margin:-1.4rem 0 1.6rem;color:var(--color-muted);font-size:.95rem;}
.exhibition-date__state{display:inline-block;margin-right:.4rem;padding:.1rem .55rem;border-radius:2rem;background:var(--color-soft);color:var(--color-text);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;}
.pages-list .exhibition-date{margin:.3rem 0 .6rem;font-size:.85rem;}

/* edycja daty wystawy na stronie ( tylko zalogowany redaktor, core/exhibitions.php ) */

/* okno ustawien: zakladki "Wyglad" / "Strona glowna" ( core/front-edit.js ) */
.front-settings-tabs{display:flex;gap:.3rem;margin:0 0 1rem;padding:0 0 .7rem;border-bottom:1px solid #2b2b2b;}
.front-settings-tabs button{padding:.4rem .9rem;border:1px solid #3a3a3a;border-radius:2rem;background:transparent;color:#9a9a9a;font:inherit;font-size:.78rem;letter-spacing:.06em;cursor:pointer;}
.front-settings-tabs button:hover{color:#fff;border-color:#6a6a6a;}
.front-settings-tabs button.is-on{border-color:#f4f4f4;background:#f4f4f4;color:#111;}
.front-settings-pane[hidden]{display:none;}
.front-settings-home-check{grid-template-columns:1fr auto;cursor:pointer;}
.front-settings-home-check input{width:1.1rem;height:1.1rem;accent-color:var(--color-user-action, #f4f4f4);}
.front-settings-pane[data-pane="home"] .front-settings-row .front-settings-select{grid-column:2 / -1;}

/* okno edycji na stronie z formularzem ( displayFrontModalForm( ): parametry pracy, data wystawy ) */
.front-modal-open{margin:0 0 1.6rem;}
h1 + .front-modal-open, .exhibition-date + .front-modal-open{margin:-.4rem 0 1.4rem;}
.front-edit-box.is-modal-form{width:min(760px,96vw);min-height:0;}
.front-modal-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(15rem, 100%), 1fr));gap:1rem 1.4rem;}
.front-modal-form .fwp{display:flex;flex-direction:column;gap:.35rem;}
.front-modal-form .fwp-name{color:#9a9a9a;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;}
.front-modal-form .fwp-field{display:flex;align-items:center;gap:.4rem;color:#dcdcdc;}
.front-modal-form .exh-color{grid-column:1 / -1;}
.front-modal-form .exh-color__on{display:flex;align-items:center;gap:.4rem;margin-right:.6rem;cursor:pointer;}
.front-modal-form .exh-color input[type="color"]{width:3rem;height:2rem;padding:0;border:1px solid #444;border-radius:4px;background:none;cursor:pointer;}
.front-modal-form select, .front-modal-form input:not([type=checkbox]){min-width:0;padding:.5em .65em;border:1px solid #333;border-radius:8px;background:#1c1c1c;color:#f4f4f4;font:inherit;outline:none;}
.front-modal-form select:focus, .front-modal-form input:focus{border-color:#6a6a6a;}
.front-modal-form select, .front-modal-form .fwp-text, .front-modal-form input[type=date]{flex:1 1 auto;width:100%;}
.front-modal-form input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--color-user-action);}
.front-modal-form .fwp-year{width:6rem;}
.front-modal-form .fwp-number{width:8.5rem;}
.front-modal-form .fwp-dim{width:6rem;}
.front-modal-form .fwp--dimensions .fwp-field{align-items:flex-end;}
.front-modal-form .fwp-dim-box{display:flex;flex-direction:column;gap:.15rem;}
.front-modal-form .fwp-dim-box small{color:#8a8a8a;font-size:.68rem;}
.front-modal-form .fwp-x, .front-modal-form .fwp--dimensions .fwp-unit{padding-bottom:.55em;}
.front-modal-form .fwp-unit, .front-modal-form .fwp-x{color:#8a8a8a;}
.front-modal-form input:user-invalid{border-color:#c0392b;background:#2a1513;}
/* "ukryj narzędzia": bez oznaczen przedpublikacji */
html.front-gadgets-hidden .work-tile__badge, html.front-gadgets-hidden .work__editors-only{display:none !important;}
html.front-gadgets-hidden .works-tiles .work-tile.is-editors-only img{opacity:1;}

/* kurator ( core/curators.php ): belka, plus przy pracy, moje wystawy, udostepniona wystawa */
.curator-bar{background:var(--color-accent-dark);}
.curator-bar__state{flex:1 1 auto;display:flex;align-items:center;gap:.8em;min-width:0;white-space:nowrap;}
.curator-bar__state > span{min-width:0;overflow:hidden;text-overflow:ellipsis;}
.curator-bar__hint{opacity:.85;}
.curator-bar .front-user-bar-msg{flex:0 1 auto;}
.curator-bar__btn{flex:0 0 auto;padding:.35em .8em;border:1px solid rgba(255,255,255,.7);border-radius:6px;background:transparent;color:#fff;font:inherit;font-size:.7rem;letter-spacing:.04em;cursor:pointer;}
.curator-bar__btn:hover{background:rgba(255,255,255,.18);}
.curator-bar__btn.is-primary{border-color:#fff;background:#fff;color:var(--color-accent-dark);font-weight:600;}
.curator-bar__btn.is-primary:hover{background:var(--color-soft);}
@media screen and (max-width:600px){
  .curator-bar__state{order:-1;gap:.4em;}
  .curator-bar__state > span{display:none;}
  .curator-bar .front-user-bar-link{margin-right:0;}
}
.curator-plus{position:absolute;top:.5rem;right:.5rem;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:.4em;width:2.3rem;height:2.3rem;padding:0;
  border:0;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 2px 10px rgba(0,0,0,.25);color:var(--color-accent-dark);font-family:var(--font);font-size:1.45rem;font-weight:300;line-height:1;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease;}
.curator-plus:hover, .curator-plus:focus-visible{transform:scale(1.08);background:#fff;}
.curator-plus.is-in{background:var(--color-accent-dark);color:#fff;font-size:1.05rem;}
.curator-plus:disabled{opacity:.6;cursor:wait;}
.curator-plus.is-wide{position:static;width:auto;height:auto;padding:.55em 1.1em;border:1px solid var(--color-accent-dark);border-radius:2rem;box-shadow:none;font-size:1.1rem;}
.curator-plus.is-wide em{font-size:.85rem;font-style:normal;letter-spacing:.03em;}
.curator-work{margin:0 0 1.6rem;}
.curator-box .curator-meta__name{grid-column:1 / -1;}
.curator-meta__hint, .curator-saved{margin:1rem 0 0;color:#bdbdbd;font-size:.85rem;line-height:1.55;}
.curator-saved{margin:0 0 .8rem;color:#f4f4f4;font-size:.95rem;}
.curator-saved.is-muted{color:#9a9a9a;font-size:.85rem;}

.curator-dashboard{max-width:none;}
.curator-dashboard__intro{color:var(--color-muted);}
.curator-dashboard__buttons{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 2rem;}
.curator-dashboard button.front-login__button{font-family:inherit;line-height:inherit;cursor:pointer;}
.curator-exhibition{margin:0 0 2rem;padding:1.2rem 1.3rem;border:1px solid var(--color-divider);border-radius:10px;}
.curator-exhibition.is-current{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent);}
.curator-exhibition__head h2{margin:0;}
.curator-exhibition__meta{margin:.3rem 0 1rem;color:var(--color-muted);font-size:.9rem;}
.curator-exhibition__current{margin-left:.5em;padding:.15em .6em;border-radius:2rem;background:var(--color-accent);color:#fff;font-size:.72rem;font-weight:600;letter-spacing:.04em;}
.curator-exhibition__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;}
.curator-btn{padding:.5em 1em;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.82rem;cursor:pointer;}
.curator-btn:hover{border-color:var(--color-accent);color:var(--color-accent-dark);}
.curator-btn.is-primary{border-color:var(--color-accent-dark);background:var(--color-accent-dark);color:#fff;}
.curator-btn.is-primary:hover{background:var(--color-accent);color:#fff;}
.curator-btn.is-danger{margin-left:auto;color:#a5281b;}
.curator-btn.is-ghost{background:transparent;}
.curator-btn:disabled{opacity:.5;cursor:wait;}
.curator-share{display:flex;flex-wrap:wrap;gap:.4rem;flex:1 1 22rem;}
.curator-share input{flex:1 1 14rem;min-width:0;padding:.45em .6em;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-soft);font:inherit;font-size:.8rem;}
.curator-hint{color:var(--color-muted);font-size:.82rem;}
.curator-empty{color:var(--color-muted);}

/* prace wystawy: rzad zdjec bez przycinania ( szerokosc wg proporcji --ratio ) */
.curator-works{display:flex;flex-wrap:wrap;gap:var(--gallery-gap, 10px);margin:0;padding:0;list-style:none;}
.curator-works::after{content:"";flex-grow:999;}
.curator-works li{position:relative;flex:calc(var(--ratio) * 100) 1 calc(var(--ratio) * 15rem);margin:0;padding:0;}
.curator-works li::before{display:none;}
.curator-works a{display:block;color:inherit;text-decoration:none;}
.curator-works img{display:block;width:100%;height:auto;aspect-ratio:var(--ratio);object-fit:cover;background:var(--color-soft);}
.curator-works__name{display:block;margin-top:.4rem;font-size:.85rem;}
.curator-works__params{display:block;color:var(--color-muted);font-size:.75rem;}
.curator-works.is-small li{flex-basis:calc(var(--ratio) * 7rem);max-width:calc(var(--ratio) * 10rem);}
.curator-remove{position:absolute;top:.3rem;right:.3rem;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.7);color:#fff;font-size:1.1rem;line-height:1;cursor:pointer;}
.curator-remove:hover{background:#a5281b;}
.curator-shared__label{margin:0 0 .4rem;color:var(--color-accent-dark);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.curator-shared h1{margin-top:0;}
.curator-shared__meta{margin:-.4rem 0 2rem;color:var(--color-muted);font-size:1.05rem;}
@media print{ .curator-plus, .curator-work, .curator-remove{display:none !important;} }
/* redaktor z rola kuratora: dwie belki jedna pod druga; "ukryj narzędzia" chowa tez plusy */
html.has-two-bars .curator-bar{top:40px;}
html.has-two-bars body{padding-top:80px;}
html.has-two-bars .header__navigation{top:80px;}
html.has-two-bars #hero{height:calc(100vh - 80px);height:calc(100svh - 80px);}
html.front-gadgets-hidden .curator-plus, html.front-gadgets-hidden .curator-work{display:none !important;}

/* gesty w sliderach ( core/slider-gestures.js ): poziomo slajdy, pionowo przewijanie strony */
.has-slide-gestures{touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain;}
.has-slide-gestures img{-webkit-user-drag:none;user-select:none;}
.has-slide-gestures.is-dragging, .has-slide-gestures.is-dragging *{cursor:grabbing !important;user-select:none;}

/* przedpublikacja ( core/prepublication.php ): informacja dla zalogowanego i przyciski */
.prepublication-note{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin:0 0 1.4rem;padding:.75rem 1rem;border-left:3px solid #c62828;border-radius:4px;background:#fbeae7;color:#6d2016;font-size:.85rem;line-height:1.45;}
.prepublication-note__badge{padding:.2em .6em;border-radius:3px;background:#c62828;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;}
.prepublication-note__text{flex:1 1 16rem;}
.prepublication-note__publish, .front-prepublication-button{padding:.5em 1.1em;border:0;border-radius:6px;background:var(--color-dark);color:#fff;font:inherit;font-size:.8rem;cursor:pointer;}
.prepublication-note__publish:hover, .front-prepublication-button:hover{background:var(--color-accent-dark);}
.prepublication-note__publish:disabled, .front-prepublication-button:disabled{opacity:.5;cursor:wait;}
.front-prepublication-button{display:inline-block;margin:1rem .6rem 0 0;background:var(--color-soft);color:var(--color-text);}
.front-prepublication-button:hover{background:#e4ded2;color:var(--color-text);}

/* slider wystaw: bez bocznych strzalek - kropki i gesty ( core/slider-gestures.js ) */
.exh-slider .exh-arrow{display:none;}

/* moduly strony glownej ( cykle, techniki, kategorie ): kafelki z zaokraglonymi naroznikami;
   isolation - Safari przycina powiekszane przy najechaniu zdjecie do zaokraglen */
.home-cycles .cycle-tile{border-radius:var(--tile-radius, 12px);isolation:isolate;-webkit-mask-image:-webkit-radial-gradient(white, black);}
.home-cycles .cycle-tile a, .home-cycles .cycle-tile img{border-radius:inherit;}
/* modul "O artyscie": zdjecie z takimi samymi naroznikami */
.home-about__image, .home-about__image img{border-radius:var(--tile-radius, 12px);}
.home-about__image{overflow:hidden;isolation:isolate;}

/* wystawy kuratorow dla redaktora z uprawnieniem ( core/curators.php: displayCuratorExhibitionsFront ) - strona logowania */
.curator-list{margin:3rem 0 0;scroll-margin-top:6rem;}
.curator-list__title{display:flex;align-items:baseline;gap:.6rem;margin:0 0 1.2rem;font-size:clamp(1.3rem, 2.4vw, 1.7rem);font-weight:400;}
.curator-list__title span{color:var(--color-muted);font-size:.8em;}
.curator-list__item h3{margin:0;font-size:1.1rem;font-weight:500;}
.curator-list__state{display:inline-block;margin-left:.4rem;padding:.1rem .55rem;border-radius:2rem;background:var(--color-soft);color:var(--color-muted);font-size:.7rem;font-weight:500;letter-spacing:.06em;vertical-align:middle;}
.curator-list__item.is-draft{border-style:dashed;}
.curator-list__who{color:var(--color-text);}
.curator-list__share{margin:-.6rem 0 1rem;font-size:.85rem;}

/* strona pracy: kuratorskie "dodaj do wystawy" po prawej - narzedzia edycji ( administrator, redaktor ) zostaja po lewej */
.curator-work{display:flex;justify-content:flex-end;clear:both;}

/* lista prac: odstep z Ustawien ( --works-gap ), uklady "w skali" i "siatka" ( core/works.php ) */
.works-tiles:not(.justified-gallery){gap:var(--works-gap, 12px);}
/* w skali: wysokosc kafelka z wymiarow pracy ( --h ), wspolna dolna linia jak na scianie;
   prace bez wymiarow - zwykle 280 px; na telefonie wszystko proporcjonalnie mniejsze */
.works-tiles.is-scale{align-items:flex-end;--scale-zoom:1;}
.works-tiles.is-scale .work-tile{height:calc(var(--h, 280px) * var(--scale-zoom));}
@media screen and (max-width:700px){ .works-tiles.is-scale{--scale-zoom:.6;} }
/* siatka: jednakowe kwadraty, zdjecie kadrowane wg srodka kadru */
.works-tiles.is-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(220px, 42vw), 1fr));}
.works-tiles.is-grid .work-tile{height:auto;aspect-ratio:1;overflow:hidden;}
.works-tiles.is-grid .work-tile a{display:block;height:100%;}
.works-tiles.is-grid .work-tile img{width:100%;height:100%;object-fit:cover;}
/* podpis pod miniatura ( 9 px ): tytul kursywa, rok, wymiary, technika; kafelek nie przycina podpisu - przycina link ze zdjeciem;
   miejsce na podpis miedzy rzedami ( rowne rzedy - skrypt galerii, siatka i w skali - odstep rzedow ) */
.works-tiles > .work-tile > a{position:relative;display:block;height:100%;overflow:hidden;}
.works-tiles.has-labels > .work-tile{overflow:visible;}
.work-tile__label{position:absolute;left:0;right:0;top:100%;padding-top:4px;overflow:hidden;color:var(--color-muted);font-size:9px;line-height:1.3;letter-spacing:.03em;pointer-events:none;}
.work-tile__label > em, .work-tile__label > span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;} /* kolumna: tytul / rok, wymiary, technika / cykl */
.works-tiles.has-labels .work-tile__caption{display:none;} /* opis pod miniatura zamiast napisu na zdjeciu */
.work-tile__label em{color:var(--color-text);font-style:italic;}
.works-tiles.has-labels:not(.justified-gallery){row-gap:calc(var(--works-gap, 12px) + var(--label-space, 40px));padding-bottom:var(--label-space, 40px);}

/* przelacznik ukladu listy prac ( rowne rzedy, w skali, siatka ) - przy wyszukiwarce, na razie dla zalogowanych */
.works-layout{display:inline-flex;gap:2px;padding:2px;border-radius:2rem;background:var(--color-soft);}
.works-layout button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:1.8rem;padding:0;border:0;border-radius:2rem;background:none;color:var(--color-muted);cursor:pointer;}
.works-layout button svg{width:16px;height:16px;fill:currentColor;}
.works-layout button:hover{color:var(--color-text);}
.works-layout button[aria-pressed="true"]{background:var(--color-bg, #fff);color:var(--color-text);box-shadow:0 1px 3px rgba(0,0,0,.12);}
.works-sort{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:2rem;background:var(--color-soft);}
.works-sort button{display:inline-flex;align-items:center;justify-content:center;height:1.8rem;padding:0 .8rem;border:0;border-radius:2rem;background:none;color:var(--color-muted);font:inherit;font-size:.8rem;letter-spacing:.02em;cursor:pointer;}
.works-sort button:hover{color:var(--color-text);}
.works-sort__key[aria-pressed="true"]{background:var(--color-bg, #fff);color:var(--color-text);box-shadow:0 1px 3px rgba(0,0,0,.12);}
.works-sort__dir{width:2rem;padding:0 !important;color:var(--color-text) !important;}
.works-sort__dir svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s;}
.works-sort__dir[data-dir="asc"] svg{transform:rotate(180deg);}

/* strona pracy: ostatnio ogladane ( core/works.php: displayWorkRecent ) - rzad miniatur, na telefonie przewijany w bok */
.work-recent{clear:both;margin:3rem 0 0;padding-top:1.4rem;border-top:1px solid var(--color-divider);}
.work-recent__title{margin:0 0 1rem;text-align:center;color:var(--color-muted);font-size:.78rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;}
.work-recent__list{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin:0;padding:0;list-style:none;}
.work-recent__list li{margin:0;}
.work-recent__list a{display:block;width:50px;height:50px;color:var(--color-text);text-decoration:none;}
.work-recent__list img{display:block;width:50px;height:50px;max-width:none;object-fit:cover;border-radius:4px;transition:opacity .2s ease;}
.work-recent__list a:hover img, .work-recent__list a:focus img{opacity:.8;}
/* siatka 50 x 50: nazwa tylko jako podpowiedz ( title ) i dla czytnikow */
.work-recent__name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* strona pracy: poprzednia / nastepna nad nazwa, "pokaz prac" w linii tytulu po prawej ( templates/lite/works-gallery.php ) */
#page .work__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1.2rem;margin:0 0 2.2rem;}
#page .work__head h1{margin:0;}
#page .work__head .work__slideshow{margin:0;}
.curator-list__mail{color:var(--color-muted);font-size:.85em;}

/* ulubione - serduszko przy pracy ( core/works.php, displayFavoriteButton ) */
.fav-toggle{position:absolute;top:.5rem;right:.5rem;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:.45em;width:2.3rem;height:2.3rem;padding:0;
  border:0;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 2px 10px rgba(0,0,0,.22);color:var(--color-text);font-family:var(--font);cursor:pointer;
  opacity:0;transition:opacity .2s ease,transform .15s ease,background .15s ease;}
.fav-toggle svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;transition:fill .2s ease;}
.fav-toggle[aria-pressed="true"] svg{fill:currentColor;} /* jak serduszko w menu ( .fav-menu ) */
/* na miniaturze: bez kolka, bialy kontur, wybrane - biale serce ( cien dla jasnych obrazow ) */
.fav-toggle:not(.is-wide){background:transparent;box-shadow:none;color:#fff;}
.fav-toggle:not(.is-wide):hover{background:transparent;}
.fav-toggle:not(.is-wide) svg{width:1.45rem;height:1.45rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55));}
.work-tile:hover .fav-toggle, .fav-toggle:focus-visible, .fav-toggle[aria-pressed="true"]{opacity:1;}
.fav-toggle:hover{transform:scale(1.08);background:#fff;}
.fav-toggle.is-beat svg{animation:fav-beat .45s ease;}
@keyframes fav-beat{ 0%{transform:scale(1);} 35%{transform:scale(1.3);} 70%{transform:scale(.92);} 100%{transform:scale(1);} }
@media (hover:none){ .fav-toggle{opacity:1;} }
.curator-plus ~ .fav-toggle{top:3.2rem;}
.fav-toggle.is-wide{position:static;opacity:1;width:auto;height:auto;padding:.5em 1em;border:1px solid rgba(0,0,0,.18);border-radius:2rem;background:transparent;box-shadow:none;font-size:.85rem;letter-spacing:.03em;}
.fav-toggle.is-wide:hover{transform:none;border-color:currentColor;background:transparent;}
.fav-toggle.is-wide[aria-pressed="true"]{border-color:currentColor;}
#page .work__title{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;}
#page > .fav-toggle.is-wide{margin:0 0 1.2rem;}
.favorites-page .work-tile.is-unfavorite > a{opacity:.35;transition:opacity .2s ease;}
.favorites-empty{margin:2rem 0;color:#6b6862;}
@media print{ .fav-toggle{display:none !important;} }

/* ulubione w menu gornym ( core/works.php, displayFavoritesMenuLink ): 0 - obrys serduszka, od 1 - pelne z biala liczba w srodku */
.header__menu:has(.fav-menu){display:flex;align-items:center;gap:1.6rem;}
.fav-menu{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;color:inherit;text-decoration:none;opacity:.8;transition:opacity .25s ease;}
.fav-menu:hover, .fav-menu.is-current{opacity:1;}
.fav-menu svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;transition:fill .2s ease;}
.fav-menu.has-count svg{fill:currentColor;}
.fav-menu__count{position:relative;margin-top:-.08rem;color:#fff;font-size:.6rem;font-weight:600;line-height:1;letter-spacing:0;}
.fav-menu__count[hidden]{display:none;}
.fav-menu.is-beat svg{animation:fav-beat .45s ease;}
.is-start .header__navigation.is-on-dark:not(.is-solid) .fav-menu{color:#fff;}
.is-start .header__navigation.is-on-dark:not(.is-solid) .fav-menu__count{color:#111;}
@media print{ .fav-menu{display:none !important;} }

/* sortowanie "cykle": nazwa cyklu nad jego pracami ( core/works.php, fCycleGroups ) */
.works-cycle-group{margin:0 0 2.6rem;}
.works-cycle-group + .works-cycle-group{padding-top:.4rem;}
.works-cycle-group__title{margin:0 0 1rem;font-size:1.35rem;font-weight:400;letter-spacing:.01em;}

/* belka administratora: ile osob jest teraz w serwisie ( core/front-edit.php, displayFrontOnlineBadge ) */
.front-user-bar-online{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;gap:.45em;padding:.25em .7em;border-radius:6px;background:rgba(255,255,255,.14);font-size:.72rem;font-weight:600;letter-spacing:.03em;white-space:nowrap;cursor:default;}
.front-user-bar-online i{width:.5em;height:.5em;border-radius:50%;background:rgba(255,255,255,.5);}
.front-user-bar-online.is-on i{background:#5ee08a;box-shadow:0 0 0 0 rgba(94,224,138,.6);animation:front-online-pulse 2s ease-out infinite;}
@keyframes front-online-pulse{ 0%{box-shadow:0 0 0 0 rgba(94,224,138,.6);} 80%,100%{box-shadow:0 0 0 .5em rgba(94,224,138,0);} }

/* ==========================================================================
   PARALAKSY ( core/page-background.php ): "Paralaksa – góra" ( pod menu ), "– środek" ( [PARALAKSA] w tresci ), "– moduł" ( pasy pod trescia ), "– dół" ( nad stopka )
   ========================================================================== */
.parallax{position:relative;height:var(--parallax-h, 45vh);min-height:180px;max-height:900px;overflow:hidden;background:#fff;}
.parallax > img{position:absolute;left:0;top:calc(-100% * var(--parallax-speed, .25));display:block;width:100%;max-width:none;height:calc(100% * (1 + 2 * var(--parallax-speed, .25)));object-fit:cover;}
.parallax--bottom{clear:both;}
/* ruch prowadzi przegladarka w kroku z przewijaniem; zakres i przesuniecie mierzy skrypt ( core/page-background.php ) */
@keyframes parallax-shift{from{transform:translate3d(0,var(--parallax-from, 0px),0);}to{transform:translate3d(0,var(--parallax-to, 0px),0);}}
@supports (animation-timeline:scroll()){
  .parallax > img{animation-name:parallax-shift;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:scroll(root block);animation-range:var(--parallax-start, 0px) var(--parallax-end, 100vh);}
}
.parallax.is-static > img{animation:none;transform:none !important;}
@media (prefers-reduced-motion:reduce){ .parallax > img{top:0;height:100%;animation:none;transform:none !important;} }
/* tryb "okno" ( ruch 100 ) i dotyk ( telefon, tablet ): zdjecie przypiete do ekranu, pas przyciety jest oknem na nie - plynnie, bez skryptu przy przewijaniu */
.parallax.is-window, .parallax.is-fixed{clip-path:inset(0);}
.parallax.is-window > img, .parallax.is-fixed > img{position:fixed;top:0;left:0;width:100vw;height:100vh;max-width:none;transform:none !important;animation:none !important;}
@media print{ .parallax{display:none;} }
/* pas w tresci ( [PARALAKSA] ) i moduly pod trescia - na cala szerokosc okna */
.content .parallax--mid, .parallax--block{width:var(--parallax-vw, 100vw);margin:clamp(2.5rem,6vw,5rem) 0 clamp(2.5rem,6vw,5rem) calc(50% - var(--parallax-vw, 100vw) / 2);}
/* tekst / link / guzik na srodku pasa - jasny tekst na przyciemnionym zdjeciu */
.parallax__content{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:2rem var(--gutter, 1.5rem);background:rgba(0,0,0,var(--parallax-dim, .3));color:#fff;text-align:center;}
.parallax.is-window .parallax__content{clip-path:inset(0);}
.parallax__inner{max-width:46rem;text-shadow:0 1px 12px rgba(0,0,0,.35);}
.parallax__inner > :first-child{margin-top:0;}
.parallax__inner > :last-child{margin-bottom:0;}
.parallax__inner h2{margin:0 0 .4em;font-size:clamp(1.6rem, 4vw, 3rem);font-weight:600;letter-spacing:-.01em;line-height:1.15;color:#fff;text-transform:none;}
.parallax__inner h3{margin:0 0 .4em;font-size:clamp(1.2rem, 2.4vw, 1.8rem);font-weight:600;color:#fff;}
.parallax__inner p{margin:0 0 1em;font-size:clamp(1rem, 1.6vw, 1.2rem);line-height:1.6;}
.parallax__inner a{color:#fff;text-decoration:underline;text-underline-offset:.2em;}
.parallax__inner a.is-button{display:inline-block;margin:.3em .3em 0;padding:.75em 1.8em;border:1px solid #fff;border-radius:999px;background:rgba(0,0,0,.15);font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;text-shadow:none;transition:background .2s ease, color .2s ease;}
.parallax__inner a.is-button:hover, .parallax__inner a.is-button:focus-visible{background:#fff;color:#111;}
.front-px-content-note{margin:.6rem 0 0;font-size:.8rem;color:#aaa;}
.parallax__inner a.is-button.is-filled{background:#fff;color:#111;}
.parallax__inner a.is-button.is-filled:hover, .parallax__inner a.is-button.is-filled:focus-visible{background:transparent;color:#fff;}
/* tytul na pasie ( okno pasa -> Tytuł ): wielkosc = ustawiony % szerokosci pasa ( liczy skrypt ), na srodku albo przy dolnej krawedzi, lewo / srodek / prawo */
.parallax__title{position:absolute;left:0;right:0;z-index:1;display:flex;justify-content:center;padding:0 var(--gutter, 1.5rem);pointer-events:none;}
.parallax__title > span{display:block;font-family:var(--font);font-size:clamp(2rem, 8vw, 7rem);font-weight:700;line-height:.95;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 1px 16px rgba(0,0,0,.3);}
.parallax__title.is-v-middle{top:50%;transform:translateY(-50%);}
.parallax__title.is-v-bottom{bottom:0;}
.parallax__title.is-v-bottom > span{line-height:.8;margin-bottom:-.06em;}
.parallax__title.is-h-left{justify-content:flex-start;}
.parallax__title.is-h-right{justify-content:flex-end;}
.parallax__title.is-full{padding:0;}
.parallax__content.is-ink .parallax__title > span, .parallax__content.is-light .parallax__title > span{text-shadow:none;}
.front-pxm-title{flex:1 1 auto;min-width:0;}
/* przycisk "dodaj tekst i ustaw paralaksę" w rogu pasa - tylko zalogowani */
.parallax .front-parallax-edit-button{position:absolute;right:var(--gutter, 1rem);bottom:1rem;z-index:3;margin:0;background:rgba(0,0,0,.55);border-color:rgba(255,255,255,.7);color:#fff;}
.parallax .front-parallax-edit-button:hover{background:var(--color-user-action);border-color:transparent;}
/* okno pasa ( openParallax ): zdjecie, punkt kadru z podgladem, pas, tekst */
.front-px-photo{display:flex;align-items:center;gap:1rem;}
.front-px-photo img{flex:0 0 9rem;width:9rem;height:5.5rem;object-fit:cover;border-radius:4px;background:#111;}
.front-px-photo-tools{display:flex;flex-wrap:wrap;gap:.5rem;}
.front-px-photo-change span, .front-px-photo-focus{display:inline-block;padding:.45em .9em;border:1px solid #555;border-radius:4px;background:#2a2a2a;color:#eee;font:inherit;font-size:.82rem;cursor:pointer;}
.front-px-photo-change span:hover, .front-px-photo-focus:hover{background:var(--color-user-action, #007aff);border-color:transparent;}
.front-px-hint{margin:.5rem 0 0;font-size:.78rem;color:#999;}
.front-pxm-row{display:flex;align-items:center;gap:.7rem;margin:.5rem 0;}
.front-pxm-row > span{flex:0 0 7rem;font-size:.85rem;color:#ccc;}
.front-pxm-row input[type=range]{flex:1 1 auto;}
.front-pxm-row output{min-width:7rem;font-size:.82rem;color:#ccc;}
.front-pxm-row .front-pxm-reset{padding:.25em .7em;border:1px solid #555;border-radius:4px;background:#2a2a2a;color:#eee;font:inherit;font-size:.78rem;cursor:pointer;}
.front-pxm-move[hidden]{display:none;}
.front-px-photo-server{display:inline-block;padding:.45em .9em;border:1px solid #555;border-radius:4px;background:#2a2a2a;color:#eee;font:inherit;font-size:.82rem;cursor:pointer;}
.front-px-photo-server:hover{background:var(--color-user-action, #007aff);border-color:transparent;}
.front-px-server{margin:.8rem 0 0;}
.front-px-server[hidden]{display:none;}
.front-px-server .front-px-server-list{max-height:16rem;margin:.5rem 0 0;}
/* tekst ciemny: wybor "ciemne" ( is-ink ) albo jasne zdjecie bez przyciemnienia ( is-light, automatycznie ) */
.parallax__content.is-ink, .parallax__content.is-light{color:#111;}
.parallax__content.is-ink .parallax__inner, .parallax__content.is-light .parallax__inner{text-shadow:none;}
.parallax__content.is-ink .parallax__inner h2, .parallax__content.is-ink .parallax__inner h3, .parallax__content.is-ink .parallax__inner a, .parallax__content.is-light .parallax__inner h2, .parallax__content.is-light .parallax__inner h3, .parallax__content.is-light .parallax__inner a{color:#111;}
.parallax__content.is-ink .parallax__inner a.is-button, .parallax__content.is-light .parallax__inner a.is-button{border-color:#111;background:rgba(255,255,255,.2);}
.parallax__content.is-ink .parallax__inner a.is-button:hover, .parallax__content.is-ink .parallax__inner a.is-button:focus-visible, .parallax__content.is-light .parallax__inner a.is-button:hover, .parallax__content.is-light .parallax__inner a.is-button:focus-visible{background:#111;color:#fff;}
.parallax__content.is-ink .parallax__inner a.is-button.is-filled, .parallax__content.is-light .parallax__inner a.is-button.is-filled{background:#111;color:#fff;}
.parallax__content.is-ink .parallax__inner a.is-button.is-filled:hover, .parallax__content.is-light .parallax__inner a.is-button.is-filled:hover{background:transparent;color:#111;}
.front-pxp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1rem;align-items:start;margin:.8rem 0 0;}
.front-pxp-src{position:relative;cursor:crosshair;touch-action:none;user-select:none;}
.front-pxp-src img{display:block;width:100%;height:auto;border-radius:4px;}
.front-pxp-dot{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid #fff;border-radius:50%;background:var(--color-user-action, #007aff);box-shadow:0 0 0 2px rgba(0,0,0,.4);pointer-events:none;}
.front-pxp-side{display:flex;flex-direction:column;gap:.5rem;min-width:0;}
.front-pxp-view{position:relative;max-width:100%;overflow:hidden;border-radius:4px;background-color:#111;background-repeat:no-repeat;box-shadow:0 0 0 1px #444;}
.front-pxp-band{position:absolute;left:0;right:0;box-shadow:0 0 0 999px rgba(0,0,0,.6);outline:1px solid rgba(255,255,255,.8);}
.front-pxp-band[hidden]{display:none;}
.front-pxp-note{margin:0;font-size:.78rem;color:#aaa;}
@media (max-width:640px){ .front-pxp{grid-template-columns:1fr;} }

/* ==========================================================================
   OKNO ZGODY NA CIASTECZKA ( core/site-style.php: displayCookieConsent ) - pasek na dole, nie zaslania calej strony
   ========================================================================== */
.cc{position:fixed;left:0;right:0;bottom:0;z-index:900;display:flex;justify-content:center;padding:0 var(--gutter, 16px) var(--gutter, 16px);pointer-events:none;}
.cc[hidden]{display:none;}
.cc__box{pointer-events:auto;width:100%;max-width:52rem;padding:1.3rem 1.5rem;background:#fff;color:#1b1a18;border:1px solid rgba(0,0,0,.1);border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.16);font-size:.88rem;line-height:1.55;}
.cc__title{margin:0 0 .35rem;font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent, #9a7b4f);}
.cc__text{margin:0;color:#3a3936;}
.cc__text a{color:inherit;text-decoration:underline;text-underline-offset:2px;}
.cc__opts{display:grid;gap:.55rem;margin:1rem 0 0;padding:.9rem 0 0;border-top:1px solid rgba(0,0,0,.08);}
.cc__opts[hidden]{display:none;}
.cc__opt{display:flex;gap:.7rem;align-items:flex-start;cursor:pointer;}
.cc__opt input{flex:0 0 auto;margin:.25rem 0 0;width:1rem;height:1rem;accent-color:#1b1a18;}
.cc__opt input:disabled{opacity:.55;}
.cc__opt small{display:block;color:#6d6b66;font-size:.8rem;}
.cc__buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;}
.cc__btn{padding:.6rem 1.1rem;border:1px solid #1b1a18;border-radius:999px;background:#fff;color:#1b1a18;font:inherit;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .2s ease, color .2s ease;}
.cc__btn:hover, .cc__btn:focus-visible{background:#1b1a18;color:#fff;}
.cc__btn.is-main{background:#1b1a18;color:#fff;}
.cc__btn.is-main:hover, .cc__btn.is-main:focus-visible{background:#000;}
.cc__btn[hidden]{display:none;}
@media (max-width: 600px){
  .cc{padding:0 10px 10px;}
  .cc__box{padding:1.1rem 1.1rem;}
  .cc__buttons{justify-content:stretch;}
  .cc__btn{flex:1 1 calc(50% - .5rem);}
}
@media print{ .cc{display:none;} }
.foot__consent{margin-left:.9em;}
.foot__consent a{color:inherit;}
.foot__consent .powered__sep{margin:0 .5em;}
.front-settings-row .front-settings-privacy-create{grid-column:2 / -1;justify-self:start;padding:.35em .8em;border:1px solid #6a6a6a;border-radius:6px;background:transparent;color:#ddd;font:inherit;font-size:.78rem;cursor:pointer;}
.front-settings-row .front-settings-privacy-create:hover{color:#fff;border-color:#9a9a9a;}

/* liczba wejsc na strone obok tytulu - tylko dla zalogowanych ( displayPageViewsBadge w core/stats-db.php ) */
#page h1 .page-views{display:inline-flex;align-items:center;gap:.35em;margin-left:.8rem;padding:.25em .7em;border:1px solid var(--color-divider);border-radius:999px;vertical-align:middle;
  color:var(--color-muted);font-size:.78rem;font-weight:400;letter-spacing:.02em;line-height:1.3;text-decoration:none;text-transform:none;white-space:nowrap;}
#page h1 .page-views:before{content:"";width:.95em;height:.95em;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C6.5 5 2.7 9.3 1.5 11.4a1.2 1.2 0 0 0 0 1.2C2.7 14.7 6.5 19 12 19s9.3-4.3 10.5-6.4a1.2 1.2 0 0 0 0-1.2C21.3 9.3 17.5 5 12 5zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") 50% 50% / contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C6.5 5 2.7 9.3 1.5 11.4a1.2 1.2 0 0 0 0 1.2C2.7 14.7 6.5 19 12 19s9.3-4.3 10.5-6.4a1.2 1.2 0 0 0 0-1.2C21.3 9.3 17.5 5 12 5zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") 50% 50% / contain no-repeat;}
#page h1 .page-views b{color:var(--color-text);font-weight:600;}
#page h1 a.page-views:hover{border-color:var(--color-accent);color:var(--color-accent-dark);}
html.front-gadgets-hidden #page h1 .page-views{display:none;}
@media print{ #page h1 .page-views{display:none;} }

/* belka: lista zalogowanych po najechaniu na "zalogowani" ( core/front-edit.php, displayFrontOnlineBadge ) */
.front-user-bar-online:focus-visible{outline:2px solid #fff;outline-offset:2px;}
.front-online-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:2;min-width:15rem;max-width:min(22rem,calc(100vw - 2rem));padding:.75rem .9rem;border-radius:8px;background:#1b1a18;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.25);
  font-size:.78rem;font-weight:400;letter-spacing:.01em;line-height:1.45;white-space:normal;text-align:left;visibility:hidden;opacity:0;transform:translateY(-4px);transition:opacity .15s,transform .15s,visibility .15s;}
.front-online-pop::before{content:"";position:absolute;bottom:100%;left:0;right:0;height:10px;} /* mostek: lista nie znika przy zjezdzaniu myszka */
.front-user-bar-online:hover .front-online-pop,.front-user-bar-online:focus .front-online-pop,.front-user-bar-online:focus-within .front-online-pop{visibility:visible;opacity:1;transform:none;}
.front-online-pop strong{display:block;margin:0 0 .3rem;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.65;}
.front-online-pop ul{margin:0;padding:0;list-style:none;}
.front-online-pop ul + strong{margin-top:.7rem;}
.front-online-pop li{padding:.12rem 0;overflow-wrap:anywhere;}
.front-online-pop .l-logged li{font-weight:600;}
.front-online-pop li.is-empty{font-weight:400;opacity:.6;}

/* ==========================================================================
   Telefon ( do 600 px ): elementy wysrodkowane - tytuly, naglowki sekcji, kafelki, filtry, przyciski, stopka.
   Dluzsze teksty ( opis artysty, tresc stron ) zostaja wyrownane do lewej - tak lepiej sie je czyta.
   ========================================================================== */
@media screen and (max-width:600px){
  /* tytuly stron */
  #page h1{text-align:center;}

  /* strona glowna: "O artyscie" - zdjecie, tytul i link na srodku */
  .home-about__inner{align-items:center;text-align:center;}
  .home-about__image{margin:0 auto;}
  .home-about__lead{text-align:left;}

  /* strona glowna: naglowek sekcji ( Cykle prac / Techniki / Kategorie ) i link "wszystkie prace" pod nim */
  .home-cycles__head, .home-exhibitions__head{flex-direction:column;align-items:center;text-align:center;}

  /* kafelki ( cykle, techniki, kategorie ) i miniatury prac: podpis na srodku */
  .cycle-tile__caption, .work-tile__caption{text-align:center;}

  /* lista prac: tytul, przycisk pokazu, wyszukiwarka, sortowanie i filtry */
  #page .works__head{flex-direction:column;justify-content:center;}
  #page.works > .content{text-align:center;}
  .works-search{justify-content:center;}
  .works-count{margin-left:0;flex-basis:100%;text-align:center;}
  .works-filter{justify-content:center;}
  .works-more__all{margin:.6rem 0 0;}

  /* strona pracy: tytul z "ulubione", pokaz prac, nawigacja */
  #page .work__head{flex-direction:column;justify-content:center;}
  #page .work__title{justify-content:center;text-align:center;}
  .work__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem 2rem;text-align:center;}
  .work__nav .work__all{flex-basis:100%;order:-1;}
  .work__nav > span:empty{display:none;}
  .work__nav .work__next, .work__nav .work__prev{text-align:center;}

  /* stopka: nazwa, menu, prawa i "powered by" na srodku */
  .foot__cols{text-align:center;}
  .foot__about{grid-column:1 / -1;}
  .foot__bottom{flex-direction:column;justify-content:center;text-align:center;gap:.6rem;}
  .foot__consent{margin-left:0;}
  .foot__bottom .copy{display:flex;flex-direction:column;align-items:center;gap:.4rem;}
  #powered{flex-direction:column;justify-content:center;gap:.2rem;}
  #powered .powered__sep{display:none;}
}
/* okno "Dodaj na tej stronie" ( core/front-edit.php displayFrontAddMenu ): zdjecia, podstrona, paralaksy */
.front-add-menu-items[hidden]{display:none;}
.front-add-menu-box{width:min(22rem, calc(100vw - 2rem));}
.front-add-menu-box .front-edit-body{display:grid;gap:.6rem;}
.front-add-menu-box .front-edit-body button{display:flex;width:100%;margin:0;font-size:.9rem;padding:.75em 1em;}
.front-images-newtype{margin:.6rem 0 0;padding:.5rem .7rem;border-left:3px solid var(--color-user-action, #007aff);background:rgba(0,122,255,.08);color:#ccc;font-size:.82rem;}
/* bloki pod trescia ( core/front-edit.php displayPageBlocks ): kolejnosc przeciaganiem uchwytem w prawym gornym rogu - tylko zalogowani */
.page-block{position:relative;}
.page-blocks.is-sortable > .page-block{outline:1px dashed transparent;outline-offset:.4rem;transition:outline-color .2s ease;}
.page-blocks.is-sortable > .page-block:hover{outline-color:var(--color-user-action);}
.front-block-tools{position:absolute;z-index:5;top:0;right:0;display:flex;gap:.3rem;}
.front-block-handle{display:none;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:1px solid var(--color-user-action);border-radius:6px;background:#fff;color:var(--color-user-action);cursor:grab;touch-action:none;}
.front-block-handle svg{width:1.1rem;height:1.1rem;fill:currentColor;flex:none;}
.page-blocks.is-sortable .front-block-handle{display:inline-flex;}
.front-block-handle:active{cursor:grabbing;}
.page-block.is-ghost{opacity:.35;}
.page-block--parallax .front-block-tools{top:1rem;right:var(--gutter, 1rem);}
/* kafelki prac: uchwyt nad paskiem filtrow, nie na jego przyciskach */
.page-blocks.is-sortable > .page-block--works{margin-top:2.6rem;}
.page-block--works .front-block-tools{top:-2.6rem;}
.page-block--parallax > .parallax--block{margin-top:0;margin-bottom:0;}
.page-block--parallax{margin:clamp(2.5rem,6vw,5rem) 0;}
html.front-gadgets-hidden .front-block-tools{display:none !important;}
html.front-gadgets-hidden .page-blocks.is-sortable > .page-block{outline:0;}
@media print{ .front-block-tools{display:none !important;} }
/* ==========================================================================
   LISTA WYBRANYCH STRON i ISTNIEJACA STRONA pod trescia ( core/front-edit.php, jak w GALAZYN ) - bloki do przeciagania
   ========================================================================== */
.gz-i{display:inline-block;width:1em;height:1em;flex:none;fill:currentColor;vertical-align:-.125em;}
.pages-list--tiles{--tiles:4;display:grid;grid-template-columns:repeat(var(--tiles),minmax(0,1fr));gap:2rem 1.5rem;}
.pages-list--cols-1{--tiles:1;max-width:36rem;}
.pages-list--cols-2{--tiles:2;}
.pages-list--cols-3{--tiles:3;}
@media screen and (max-width:900px){ .pages-list--cols-3, .pages-list--cols-4{--tiles:2;} }
@media screen and (max-width:600px){ .pages-list--tiles{--tiles:1;} }
.pages-list--tiles .page{padding:0;border-top:0;}
.pages-list--tiles .image{float:none;max-width:none;margin:0 0 .8rem;aspect-ratio:4/3;overflow:hidden;background:var(--color-divider);}
.pages-list--tiles .image a{display:block;height:100%;}
.pages-list--tiles .image img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;}
.pages-list--tiles .title{font-size:var(--h2-size, 1.1rem);}
.front-page-list-seg{margin:0 0 .9rem;}
.front-page-list-tools{display:flex;gap:.6rem;align-items:center;margin:0 0 .6rem;}
.front-page-list-tools .front-edit-field{flex:1 1 auto;width:auto;padding:.5em .7em;font-size:.85rem;}
.front-page-list-tools button{flex:none;padding:.45em .7em;border:1px solid #3a3a3a;border-radius:6px;background:transparent;color:#cfcfcf;font-family:inherit;font-size:.76rem;cursor:pointer;}
.front-page-list-tools button:hover{border-color:#777;color:#fff;}
.front-page-list-items{max-height:min(46vh,420px);margin:0;padding:0;overflow-y:auto;list-style:none;}
.front-page-list-items li{margin:0;padding:0;}
.front-page-list-items li[hidden]{display:none;}
.front-page-list-items label{display:flex;align-items:center;gap:.55rem;padding:.42rem .3rem;border-bottom:1px solid #262626;color:#ddd;font-size:.86rem;cursor:pointer;}
.front-page-list-items label:hover{background:#1c1c1c;}
.front-page-list-items input{flex:none;width:1rem;height:1rem;accent-color:var(--color-user-action);cursor:pointer;}
.page-feature{clear:both;display:grid;grid-template-columns:fit-content(50%) minmax(0,1fr);gap:1.5rem 2rem;align-items:start;margin:2rem 0;}
.page-feature.no-image{grid-template-columns:1fr;}
.page-feature__image a{display:block;}
.page-feature__image img{display:block;width:auto;height:auto;max-width:100%;}
.page-feature__title{margin:0 0 .6rem;font-size:var(--h2-size, 1.3rem);font-weight:600;color:var(--h2-color, var(--color-text));}
.page-feature__title a{color:inherit;text-decoration:none;}
.page-feature__title a:hover{color:var(--color-accent-dark);}
.page-feature__text{color:var(--color-muted);}
.page-feature__text p:last-child{margin-bottom:0;}
.page-feature__more{display:inline-block;margin-top:1rem;font-weight:600;text-decoration:none;color:var(--color-accent-dark);}
.page-feature__more:after{content:"";display:inline-block;width:1em;height:1em;margin-left:.35em;vertical-align:-.15em;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-5.6-5.6L12 4l8 8-8 8-1.4-1.4 5.6-5.6H4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h12.2l-5.6-5.6L12 4l8 8-8 8-1.4-1.4 5.6-5.6H4z'/%3E%3C/svg%3E") center/contain no-repeat;background-color:currentColor;}
.page-feature__more:hover{text-decoration:underline;}
@media screen and (max-width:600px){ .page-feature{grid-template-columns:1fr;gap:1rem;} }
.page-list-slider__nav .gz-i{width:1.6rem;height:1.6rem;}
.page-list-head .page-list-all .gz-i{margin-left:.3em;}
#page h2.page-list-title{margin:2.8em 0 1em;padding-top:1.4em;border-top:1px solid var(--color-divider);color:var(--h2-color, var(--color-accent));font-size:var(--h2-size, .78rem);font-weight:600;letter-spacing:.22em;text-transform:uppercase;}
.page-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem;flex-wrap:wrap;}
#page .page-list-head{margin:2.8em 0 1em;padding-top:1.4em;border-top:1px solid var(--color-divider);}
#page .page-list-head h2.page-list-title{margin:0;padding:0;border:0;}
.page-list-head .page-list-all{margin-left:auto;font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:inherit;text-decoration:none;white-space:nowrap;opacity:.75;transition:opacity .2s ease, color .2s ease;}
.page-list-head .page-list-all:hover, .page-list-head .page-list-all:focus-visible{opacity:1;color:var(--color-accent-dark);}

#page .page-list-desc{margin:-.4em 0 1.4em;max-width:44rem;color:var(--color-muted);}
.page-list-head + .page-list-desc{margin-top:.6em;}
.page-list-slider{position:relative;}
.pages-list--tiles.pages-list--slider{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.pages-list--slider::-webkit-scrollbar{display:none;}
.pages-list--slider > .page{flex:0 0 calc((100% - 3 * 1.5rem) / 4);scroll-snap-align:start;min-width:0;}
@media screen and (max-width:900px){ .pages-list--slider > .page{flex-basis:calc((100% - 1.5rem) / 2.4);} }
@media screen and (max-width:600px){ .pages-list--slider > .page{flex-basis:72%;} }
.page-list-slider__nav{position:absolute;top:calc(var(--slider-img-h, 0px) + 30%);z-index:2;display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;margin-top:-1.3rem;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;transition:opacity .2s ease, background .2s ease;}

.page-list-slider__nav--prev{left:-1.3rem;}
.page-list-slider__nav--next{right:-1.3rem;}
.page-list-slider__nav:hover, .page-list-slider__nav:focus-visible{background:var(--color-accent);}
.page-list-slider__nav:disabled{opacity:0;pointer-events:none;}
.page-list-slider.is-static .page-list-slider__nav{display:none;}
@media screen and (max-width:600px){ .page-list-slider__nav--prev{left:.3rem;} .page-list-slider__nav--next{right:.3rem;} }
/* okno listy stron: slider niedostepny przy 4 i mniej stronach */
.front-page-list-seg .is-unavailable{opacity:.5;}
.front-page-list-slider-note{margin:.4rem 0 0;font-size:.8rem;color:#aaa;}
.page-list-picked.pages-list--tiles .image{aspect-ratio:auto;height:auto;overflow:visible;background:none;}
.page-list-picked.pages-list--tiles .image a{height:auto;}
.page-list-picked.pages-list--tiles .image img{width:100%;height:auto;object-fit:initial;}
.pages-list--slider{align-items:flex-start;}
.pages-list--slider > .page{flex:0 0 auto;width:min-content;max-width:80vw;}
.page-list-picked.pages-list--slider .image{width:auto;height:var(--list-slider-h, 15rem);}
.page-list-picked.pages-list--slider .image a{height:100%;}
.page-list-picked.pages-list--slider .image img{width:auto;height:100%;max-width:none;}
.page-list-picked.pages-list--slider .page:not(:has(.image)){width:14rem;}
.page-list-slider{--list-slider-h:15rem;}
@media screen and (max-width:600px){ .page-list-slider{--list-slider-h:12rem;} }
/* bardzo szeroki obrazek: najwyzej 80% ekranu, wtedy zmniejszony w calosci ( bez przycinania ) */
.page-list-picked.pages-list--slider .image img{max-width:80vw;object-fit:contain;object-position:left center;}
.page-list-slider__nav{top:calc(var(--list-slider-h) / 2);margin-top:-1.3rem;}
.page-list-picked.is-hide-thumb .image{display:none !important;}
.page-list-picked.is-hide-name .title{display:none !important;}
.page-list-picked.is-hide-desc .description{display:none !important;}
.page-list-picked.is-thumb-cover .image{aspect-ratio:1/1 !important;height:auto !important;overflow:hidden !important;background:var(--color-divider) !important;}
.page-list-picked.is-thumb-cover .image a{display:block;height:100% !important;}
.page-list-picked.is-thumb-cover .image img{width:100% !important;height:100% !important;max-width:none !important;object-fit:cover !important;}
.page-list-picked.pages-list--slider.is-thumb-cover > .page{width:var(--list-slider-h, 15rem);}
.page-list-picked.pages-list--slider.is-thumb-cover .image{width:100% !important;height:var(--list-slider-h, 15rem) !important;}
.page-list-picked:not(.pages-list--tiles).is-thumb-cover .image{width:min(30%, 12rem);}
.front-page-list-thumb-note{margin:.4rem 0 0;font-size:.8rem;color:#aaa;}
.page-list-slider__nav--prev{left:calc(-1 * min(( var(--gutter, 2rem) + 2.6rem ) / 2, var(--gutter, 2rem)));}
.page-list-slider__nav--next{right:calc(-1 * min(( var(--gutter, 2rem) + 2.6rem ) / 2, var(--gutter, 2rem)));}
@media screen and (max-width:600px), (hover:none) and (pointer:coarse){ .page-list-slider__nav{display:none !important;} }
   bez ustawienia jak naglowek poziomu ( H3 pod naglowkiem listy, H2 bez niego ); poziom HTML zostaje ( hierarchia ) */
#page .page-list-picked h2.title{font-size:var(--list-title-size, var(--h2-size, 1.1rem));color:var(--list-title-color, var(--h2-color, var(--color-text)));}
#page .page-list-picked h3.title{font-size:var(--list-title-size, var(--h3-size, 1.15rem));color:var(--list-title-color, var(--h3-color, var(--color-text)));}
#page .page-list-picked .title a{color:inherit;}
/* moduly ( O artyście, Cykle prac, Wystawy, Techniki, Kategorie prac ) jako bloki na dowolnej stronie - na cala szerokosc okna jak na stronie glownej */
.page-block--mod{width:var(--parallax-vw, 100%);margin-left:calc(50% - var(--parallax-vw, 100%) / 2);padding:0 var(--gutter, 1.5rem);box-sizing:border-box;}
.page-block--mod .front-block-tools{right:var(--gutter, 1rem);top:1rem;}
.page-block--mod > .front-page-module-button{margin:1rem auto 0;display:flex;width:max-content;}
#page.is-modules-only{max-width:none;padding:0;}
.front-module-empty{margin:2rem auto;max-width:40rem;padding:1rem 1.2rem;border:1px dashed var(--color-user-action);border-radius:6px;color:var(--color-muted);font-size:.9rem;text-align:center;}

/* mapy OpenStreetMap ( core/page-maps.php, z GALAZYN ) */
.gz-i{display:inline-block;width:1em;height:1em;flex:none;fill:currentColor;vertical-align:-.125em;}
.page-map__route .gz-i{vertical-align:-.15em;}
.page-map__ui .maplibregl-ctrl-group button .gz-i{width:16px;height:16px;}
/* galazyn: MAPY OpenStreetMap pod trescia ( core/page-maps.php / .js ) - pas na cala szerokosc jak paralaksa */
.page-block--map{width:100vw;margin-left:calc(50% - 50vw);}
.page-map{position:relative;height:var(--map-h, 45vh);min-height:220px;max-height:900px;overflow:hidden;background:#e8e6e1;}
.page-map__canvas{position:absolute;left:0;right:0;top:0;height:100%;z-index:1;}
.page-map.is-parallax .page-map__canvas{top:calc(-100% * var(--map-speed, 0));height:calc(100% * (1 + 2 * var(--map-speed, 0)));will-change:transform;}
.page-map.is-gray .maplibregl-canvas, .front-map-mini.is-gray .leaflet-tile-pane{filter:grayscale(1) contrast(1.05);}
.page-map .maplibregl-map{font-family:var(--font, inherit);background:#e8e6e1;}
.page-map__pin{cursor:pointer;}
.page-map__pin svg{display:block;width:34px;height:46px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35));}
.page-map__pin path{fill:var(--map-pin, var(--color-accent, #b8864b));stroke:#fff;stroke-width:2;}
.page-map__pin circle{fill:#fff;}
.page-map__ui{position:absolute;inset:0;z-index:2;pointer-events:none;font:12px/20px var(--font, sans-serif);}
.page-map__ui .maplibregl-ctrl-top-left{top:4px;left:4px;}
.page-map__ui .maplibregl-ctrl-group button{display:flex;align-items:center;justify-content:center;color:#333;font-size:15px;}
.page-map__lock.is-on button{background:var(--color-accent, #b8864b);color:#fff;}
/* opcje mapy: szerokosc tresci, zabarwienie, napis z guzikiem, dymek, pelny ekran, podpowiedz Ctrl, mapa jako tlo */
.page-block--map:has(> .page-map.is-content){width:auto;margin-left:0;}
.page-map.is-content{border-radius:6px;}
.page-map__tint{position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:multiply;}
.page-map__text{position:absolute;inset:0;z-index:3;display:flex;align-items:center;padding:1.5rem var(--gutter, 1.5rem);pointer-events:none;}
.page-map__text.is-center{justify-content:center;text-align:center;}
.page-map__text.is-right{justify-content:flex-end;}
.page-map__text-in{max-width:min(26rem, 100%);padding:1.4rem 1.6rem;border-radius:6px;background:rgba(17,17,17,.82);color:#fff;pointer-events:auto;box-shadow:0 6px 24px rgba(0,0,0,.25);}
.page-map__text-in p{margin:0;font-size:1rem;line-height:1.55;}
.page-map__text-in p + .is-button{margin-top:1rem;}
.page-map__text-in .is-button{display:inline-block;padding:.7em 1.6em;border:1px solid #fff;border-radius:999px;color:#fff;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;transition:background .2s ease, color .2s ease;}
.page-map__text-in .is-button:hover, .page-map__text-in .is-button:focus-visible{background:#fff;color:#111;}
@media screen and (max-width:600px){ .page-map__text{align-items:flex-end;padding:1rem;} .page-map__text-in{padding:1rem 1.2rem;} }
.page-map .maplibregl-popup-content{padding:.8rem 1.8rem .8rem 1rem;border-radius:8px;font-family:var(--font, inherit);font-size:.9rem;line-height:1.5;color:#222;box-shadow:0 4px 18px rgba(0,0,0,.2);}
.page-map .maplibregl-popup-close-button{width:24px;height:24px;font-size:18px;color:#666;}
.page-map .maplibregl-popup-content a{color:var(--color-accent, #8a6331);}
.page-map__pop-title{display:block;font-size:.95rem;}
.page-map__pop-desc{margin-top:.25rem;color:#444;}
.page-map__route{display:inline-block;margin-top:.5rem;font-weight:600;}
.page-map__ui .maplibregl-ctrl-group button svg{display:block;width:16px;height:16px;margin:7px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.page-map .maplibregl-cooperative-gesture-screen{font-family:var(--font, inherit);font-size:1rem;}
.page-map.is-full{position:fixed;inset:0;z-index:10000;height:auto !important;max-height:none;min-height:0;border-radius:0;}
.page-map.is-full .page-map__canvas{top:0 !important;height:100% !important;transform:none !important;}
.page-map.is-full .page-map__text, .page-map.is-full .front-map-button{display:none;}
html.has-map-full, html.has-map-full body{overflow:hidden;}
.page-map.is-still .page-map__canvas{pointer-events:none;}
.page-map.has-popup .page-map__canvas{transition:transform .4s ease;}
.page-map.is-still .maplibregl-marker{pointer-events:auto;cursor:pointer;}
.page-map .front-map-button.is-in-map{position:absolute;right:var(--gutter, 1rem);bottom:1.6rem;z-index:500;margin:0;background:rgba(0,0,0,.6);border-color:rgba(255,255,255,.7);color:#fff;}
.page-map .front-map-button.is-in-map:hover{background:var(--color-user-action);border-color:transparent;}
@media print{ .page-map{display:none;} }
/* okno mapy */
.front-map-search{display:flex;gap:.5rem;}
.front-map-search input{flex:1 1 auto;}
.front-map-find{flex:0 0 auto;padding:.45em 1em;border:1px solid #555;border-radius:4px;background:#2a2a2a;color:#eee;font:inherit;font-size:.85rem;cursor:pointer;}
.front-map-find:hover{background:var(--color-user-action, #007aff);border-color:transparent;}
.front-map-found{margin:.5rem 0;font-size:.8rem;color:#bbb;}
.front-map-mini{height:220px;border-radius:6px;overflow:hidden;background:#222;}
.front-map-box .front-pxm-row input[type=text]{flex:1 1 auto;}
.front-map-box .front-pxm-row textarea, .front-map-box .front-pxm-row select{flex:1 1 auto;min-width:0;}
.front-map-box textarea{resize:vertical;font:inherit;font-size:.85rem;}
.front-map-box textarea.front-map-points{width:100%;box-sizing:border-box;}
.front-map-box .front-pxm-row .front-slider-seg{flex-wrap:wrap;}
.front-map-box input[type=color]{flex:0 0 2.6rem;width:2.6rem;height:1.9rem;padding:0;border:1px solid #555;border-radius:4px;background:none;cursor:pointer;}

/* ================= GALERIA GOK MOGILANY ( core/gallery.php ) ================= */
/* logo SVG: czarne na jasnym tle, biale na ciemnym slajdzie */
#logo #title a.logo-svg{display:block;line-height:0;letter-spacing:0;}
.logo-svg img{display:block;height:52px;width:auto;}
.logo-svg__light{display:none !important;}
.is-start .header__navigation.is-on-dark:not(.is-solid) .logo-svg__dark{display:none !important;}
.is-start .header__navigation.is-on-dark:not(.is-solid) .logo-svg__light{display:block !important;}
@media screen and (max-width:860px){ .logo-svg img{height:40px;} }
.foot__logo img{display:block;width:84px;height:auto;margin-bottom:.4rem;}

/* naglowek modulu */
.gal-module{margin:3.5rem 0;}
.gal-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 1.4rem;padding-bottom:.8rem;border-bottom:1px solid var(--color-divider, #e2ded7);}
.gal-head__title{margin:0;font-size:.82rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--h2-color, var(--color-accent));}
.gal-head__all{flex:none;font-size:.82rem;letter-spacing:.06em;text-decoration:none;white-space:nowrap;}
.gal-head__all:hover{text-decoration:underline;}

/* plakaty wystaw: po najechaniu termin, tytul, artysci */
.gal-posters__list{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%, 210px), 1fr));gap:1.4rem;margin:0;padding:0;list-style:none;}
.gal-poster{position:relative;margin:0;padding:0;}
.gal-poster:before{display:none !important;}
.gal-poster a{position:relative;display:block;color:inherit;text-decoration:none;}
.gal-poster__image{position:relative;display:block;aspect-ratio:707/1000;overflow:hidden;background:#efece6;box-shadow:0 1px 3px rgba(0,0,0,.12);}
.gal-poster__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease, filter .4s ease;}
.gal-poster__placeholder{position:absolute;inset:0;display:flex;align-items:flex-end;padding:1.2rem;background:linear-gradient(160deg,#3a3631,#15130f);color:#f2efe9;font-size:1.05rem;line-height:1.3;}
.gal-poster__over{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;padding:1.1rem;background:linear-gradient(to top, rgba(10,10,10,.88) 0%, rgba(10,10,10,.55) 55%, rgba(10,10,10,.15) 100%);color:#fff;opacity:0;transition:opacity .3s ease;}
.gal-poster__date{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#f0d9b5;}
.gal-poster__title{font-size:1rem;line-height:1.3;font-weight:600;}
.gal-poster__artists{font-size:.85rem;opacity:.85;}
.gal-poster a:hover .gal-poster__over, .gal-poster a:focus-visible .gal-poster__over{opacity:1;}
.gal-poster a:hover .gal-poster__image img{transform:scale(1.03);}
.gal-poster__badge{position:absolute;top:.6rem;left:.6rem;z-index:2;padding:.25em .7em;border-radius:999px;background:#fff;color:#111;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 1px 4px rgba(0,0,0,.25);}
.gal-poster.is-now .gal-poster__badge{background:var(--color-accent);color:#fff;}
@media (hover:none){ .gal-poster__over{opacity:1;background:linear-gradient(to top, rgba(10,10,10,.85) 0%, rgba(10,10,10,0) 60%);} .gal-poster__artists{display:none;} }

/* archiwum rocznikami */
.gal-archive__nav{position:sticky;top:var(--head-h, 60px);z-index:5;margin:0 0 2rem;padding:.6rem 0;background:var(--color-bg, #fff);}
.gal-archive__nav ul{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;}
.gal-archive__nav li:before{display:none !important;}
.gal-archive__nav a{display:inline-block;padding:.35em .9em;border:1px solid var(--color-divider, #ddd);border-radius:999px;color:inherit;font-size:.85rem;text-decoration:none;}
.gal-archive__nav a span{color:#999;font-size:.75rem;margin-left:.2em;}
.gal-archive__nav a:hover{border-color:var(--color-accent);color:var(--color-accent-dark);}
.gal-archive__year{margin:0 0 3rem;scroll-margin-top:calc(var(--head-h, 60px) + 4rem);}
.gal-archive__title{margin:0 0 1.2rem;font-size:2.2rem;font-weight:300;letter-spacing:.04em;color:var(--color-accent);}

/* kalendarium */
.gal-cal__year{margin:2.6rem 0 1rem;font-size:2rem;font-weight:300;color:var(--color-accent);}
.gal-cal__list{margin:0;padding:0;list-style:none;border-left:2px solid var(--color-divider, #e2ded7);}
.gal-cal__item{position:relative;display:grid;grid-template-columns:5.2rem 1fr auto;gap:1.2rem;align-items:start;margin:0;padding:1.1rem 0 1.1rem 1.4rem;}
.gal-cal__item:before{content:"" !important;position:absolute !important;left:-7px !important;top:1.55rem !important;width:12px !important;height:12px !important;border-radius:50%;background:#fff !important;border:2px solid #bbb;}
.gal-cal__item.is-now:before{border-color:var(--color-accent);background:var(--color-accent) !important;}
.gal-cal__item.is-soon:before{border-color:var(--color-accent);}
.gal-cal__item + .gal-cal__item{border-top:1px solid var(--color-divider, #eee);}
.gal-cal__when{text-align:center;line-height:1.1;}
.gal-cal__day{display:block;font-size:2rem;font-weight:300;}
.gal-cal__month{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#888;}
.gal-cal__meta{margin:0 0 .2rem;font-size:.8rem;color:#777;}
.gal-cal__state{display:inline-block;margin-right:.4em;padding:.1em .6em;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.gal-cal__item.is-soon .gal-cal__state{background:#111;}
.gal-cal__title{margin:0 0 .3rem;font-size:1.15rem;line-height:1.3;font-weight:600;}
.gal-cal__title a{color:inherit;text-decoration:none;}
.gal-cal__title a:hover{color:var(--color-accent-dark);}
.gal-cal__artists, .gal-cal__vernissage{margin:0;font-size:.9rem;}
.gal-cal__vernissage span{color:#888;}
.gal-cal__thumb img{display:block;width:72px;height:100px;object-fit:cover;box-shadow:0 1px 3px rgba(0,0,0,.15);}
@media screen and (max-width:600px){ .gal-cal__item{grid-template-columns:3.6rem 1fr;} .gal-cal__thumb{display:none;} .gal-cal__day{font-size:1.5rem;} }

/* artysci: slider i lista */
.gal-slider{position:relative;}
.gal-slider__track{display:grid;grid-auto-flow:column;grid-auto-columns:min(72%, 220px);gap:1.4rem;margin:0;padding:0 0 .8rem;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;}
.gal-slider__track > li{scroll-snap-align:start;}
.gal-slider__arrow{position:absolute;top:calc(50% - 2.4rem);z-index:3;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 2px 10px rgba(0,0,0,.2);cursor:pointer;}
.gal-slider__arrow:before{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;border-top:2px solid #111;border-right:2px solid #111;transform:translate(-65%,-50%) rotate(45deg);}
.gal-slider__arrow.is-prev{left:-14px;} .gal-slider__arrow.is-prev:before{transform:translate(-35%,-50%) rotate(-135deg);}
.gal-slider__arrow.is-next{right:-14px;}
.gal-slider__arrow:disabled{opacity:0;pointer-events:none;}
.gal-artists__list{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%, 190px), 1fr));gap:1.8rem 1.4rem;margin:0;padding:0;list-style:none;}
.gal-artist{margin:0;padding:0;}
.gal-artist:before{display:none !important;}
.gal-artist a{display:block;color:inherit;text-decoration:none;}
.gal-artist__image{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#efece6;}
.gal-artist__image img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.35);transition:filter .4s ease, transform .5s ease;}
.gal-artist a:hover .gal-artist__image img{filter:none;transform:scale(1.03);}
.gal-artist__initials{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:300;letter-spacing:.08em;color:#a59c8e;}
.gal-artist__name{display:block;margin-top:.7rem;font-size:1rem;font-weight:600;line-height:1.3;}
.gal-artist__exh{display:block;margin-top:.15rem;font-size:.82rem;color:#888;line-height:1.35;}
.gal-artist a:hover .gal-artist__name{color:var(--color-accent-dark);}

/* aktualnosci */
.gal-news__list{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 320px), 1fr));gap:2rem;margin:0;padding:0;list-style:none;}
.gal-news__item{margin:0;padding:0;}
.gal-news__item:before{display:none !important;}
.gal-news__item a{display:grid;grid-template-columns:minmax(0, 38%) 1fr;gap:1.2rem;color:inherit;text-decoration:none;}
.gal-news__item.no-image a{grid-template-columns:1fr;}
.gal-news__image{display:block;aspect-ratio:3/4;overflow:hidden;background:#efece6;}
.gal-news__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.gal-news__item a:hover .gal-news__image img{transform:scale(1.03);}
.gal-news__body{display:flex;flex-direction:column;gap:.4rem;}
.gal-news__date{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);}
.gal-news__title{font-size:1.15rem;font-weight:600;line-height:1.3;}
.gal-news__lead{font-size:.92rem;color:#555;line-height:1.5;}
.gal-news__more{margin-top:auto;font-size:.82rem;color:var(--color-accent-dark);}
.gal-news-date{margin:-.6rem 0 1.4rem;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);}

/* zdjecia z wernisazy */
.gal-vern__list{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%, 280px), 1fr));gap:1.8rem 1.4rem;margin:0;padding:0;list-style:none;}
.gal-vern__item{margin:0;padding:0;}
.gal-vern__item:before{display:none !important;}
.gal-vern__item a{display:block;color:inherit;text-decoration:none;}
.gal-vern__image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#efece6;}
.gal-vern__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.gal-vern__item a:hover img{transform:scale(1.04);}
.gal-vern__count{position:absolute;right:.6rem;bottom:.6rem;padding:.25em .7em;border-radius:999px;background:rgba(0,0,0,.7);color:#fff;font-size:.75rem;}
.gal-vern__title{display:block;margin-top:.7rem;font-weight:600;line-height:1.3;}
.gal-vern__meta{display:block;font-size:.82rem;color:#888;}

/* strona wystawy: wernisaz, artysci, plakat, zdjecia */
.gal-exh-info{display:flex;flex-wrap:wrap;gap:.6rem 2.4rem;margin:0 0 1.8rem;padding:1rem 0;border-top:1px solid var(--color-divider, #e2ded7);border-bottom:1px solid var(--color-divider, #e2ded7);}
.gal-exh-info dt{font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#888;}
.gal-exh-info dd{margin:.15rem 0 0;font-size:.98rem;}
.gal-photos{clear:both;margin:2.6rem 0 0;scroll-margin-top:calc(var(--head-h, 60px) + 1rem);}
.gal-photos__title{margin:0 0 1rem;font-size:.82rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent);}
.exhibition-date{font-size:.85rem;letter-spacing:.06em;}

/* strona artysty */
.gal-artist-head{display:grid;grid-template-columns:minmax(0, 260px) 1fr;gap:2rem;align-items:start;margin:0 0 2rem;}
.gal-artist-head.no-image{grid-template-columns:1fr;}
.gal-artist-head__portrait{margin:0;}
.gal-artist-head__portrait img{display:block;width:100%;height:auto;}
.gal-artist-head__links{margin:0 0 1rem;}
.gal-artist-head__site{display:inline-block;padding:.45em 1.1em;border:1px solid currentColor;border-radius:999px;font-size:.85rem;text-decoration:none;}
.gal-artist-head__site:hover{background:var(--color-accent);border-color:var(--color-accent);color:#fff;}
.gal-artist-head__exh h2{margin:0 0 .5rem;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);}
.gal-artist-head__exh ul{margin:0;padding:0;list-style:none;}
.gal-artist-head__exh li{margin:.3rem 0;padding:0 !important;}
.gal-artist-head__exh li:before{display:none !important;}
.gal-artist-head__exh li span{display:block;font-size:.8rem;color:#888;}
.gal-artist-head__count a{font-size:.85rem;}
.gal-artist-head .gal-edit{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem;}
.gal-works{scroll-margin-top:calc(var(--head-h, 60px) + 1rem);}
.gal-works__title{margin:2rem 0 1rem;font-size:.82rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent);}
@media screen and (max-width:700px){ .gal-artist-head{grid-template-columns:1fr;} .gal-artist-head__portrait{max-width:240px;} .gal-news__item a{grid-template-columns:minmax(0, 34%) 1fr;} }

/* okno wystawy: wybor artystow */
.gal-artists-pick .fwp-field{display:flex;flex-direction:column;gap:.3rem;max-height:220px;overflow:auto;}
.gal-check{display:flex;align-items:center;gap:.5rem;font-size:.9rem;}
/* moduly galerii w pasie na cala szerokosc - tresc wysrodkowana */
.page-block--mod > .gal-module{max-width:var(--gal-max, 1180px);margin-left:auto;margin-right:auto;}
.is-sub .page-block--mod > .gal-cal{max-width:var(--measure, 860px);}
/* zdjecia z wernisazu: rowna siatka kwadratow */
.gal-photos .images-3{display:grid !important;grid-template-columns:repeat(auto-fill, minmax(min(100%, 200px), 1fr));gap:.6rem;height:auto !important;margin:0;padding:0;list-style:none;}
.gal-photos .images-3 > li{position:static !important;width:auto !important;height:auto !important;margin:0 !important;padding:0 !important;opacity:1 !important;aspect-ratio:1;overflow:hidden;}
.gal-photos .images-3 > li:before{display:none !important;}
.gal-photos .images-3 a{display:block;width:100%;height:100%;}
.gal-photos .images-3 img{width:100% !important;height:100% !important;margin:0 !important;object-fit:cover;transition:transform .4s ease;}
.gal-photos .images-3 a:hover img{transform:scale(1.04);}
/* plakat wystawy ( zdjecie "lewa strona" ) wiekszy i z cieniem */
.is-sub .images-1 img{box-shadow:0 2px 10px rgba(0,0,0,.15);}
.page-block--images, .page-block--content{clear:none;}
.page-block--images{clear:both;}
@media screen and (max-width:600px){ .gal-cal__month{font-size:.56rem;letter-spacing:.04em;} }
