/* Fotopomoc Strefa Klienta — poprawka-032
 * Wyłącznie korekty wskazane w „Uwagi 001”.
 */

/* Pasek informacji: zawartość galerii + wygaśnięcie w tej samej linii co nazwa. */
.fp-gallery-summary{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  flex-wrap:wrap;
  margin-left:auto;
  min-width:0;
}
.fp-gallery-summary>span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:26px;
  padding:4px 7px;
  border-left:1px solid rgba(255,255,255,.065);
  color:#aaaeb0;
  font-size:.62rem;
  white-space:nowrap;
}
.fp-gallery-summary>span b{color:#c8aa59;font-weight:500}
.fp-gallery-summary>span.is-expiry{
  color:#78c98e;
  border-color:rgba(120,201,142,.22);
}
.fp-gallery-summary>span.is-expiry b{color:#78c98e}

/* Dwa osobne paski usług Premium pod galerią. */
.fp-gallery-premium-strips{
  display:grid;
  gap:7px;
  margin:14px 0 20px;
  border-top:1px solid rgba(212,175,55,.14);
  border-bottom:1px solid rgba(212,175,55,.10);
  padding:10px 0;
}
.fp-gallery-premium-line{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.fp-gallery-premium-line>strong{
  flex:0 0 165px;
  color:#d7bd6d;
  font-size:.64rem;
  font-weight:750;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.fp-gallery-premium-line>div{
  display:flex;
  align-items:center;
  gap:2px;
  flex-wrap:wrap;
  min-width:0;
}
.fp-gallery-premium-line.is-active-line .fp-gallery-feature.is-active{color:#8fd0a0;opacity:1}
.fp-gallery-premium-line.is-buy-line .fp-gallery-feature.is-locked{opacity:.76}

/* Bez menu z trzema kropkami: bezpośrednie ikonki akcji. */
.fp-card-actions{gap:5px!important}
.fp-card-action{border-radius:6px}
.fp-viewer__direct-action{display:flex!important}
.fp-viewer__direct-action[hidden]{display:none!important}

/* Panel klienta: skrót danych galerii i zielona data ważności. */
.client-gallery-summary .is-expiry{color:#78c98e!important}
.gallery-card[data-gallery-href]{cursor:pointer}

@media(max-width:760px){
  /* Panel klienta — minimalny nagłówek galerii, bez zbędnych opisów. */
  .client-gallery-grid{gap:14px!important}
  .gallery-card-with-preview{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:14px!important;
  }
  .gallery-card-content>.eyebrow{
    margin:0 0 3px!important;
    font-size:.54rem!important;
    letter-spacing:.13em!important;
    line-height:1.1!important;
  }
  .gallery-card-content>h2{
    margin:0!important;
    font-size:clamp(1.05rem,5.4vw,1.35rem)!important;
    line-height:1.08!important;
  }
  .gallery-card-content>p:not(.eyebrow){display:none!important}
  .client-gallery-summary{
    display:flex!important;
    gap:5px 10px!important;
    margin:8px 0 0!important;
    font-size:.66rem!important;
    line-height:1.2!important;
  }
  .client-gallery-summary span{font-size:inherit!important}
  .gallery-status-grid,
  .gallery-card .card-actions,
  .gallery-card .premium-share-note{display:none!important}
  .gallery-card-preview{
    grid-template-columns:1fr!important;
    grid-auto-rows:auto!important;
    width:100%!important;
    margin-top:2px!important;
  }
  .gallery-card-preview .gallery-preview-tile:nth-child(n+2){display:none!important}
  .gallery-preview-tile{
    min-height:0!important;
    aspect-ratio:16/9!important;
  }
  .gallery-preview-tile img{width:100%!important;height:100%!important;object-fit:cover!important}

  /* Galeria — górny pasek z liczbami znika na małym ekranie. */
  .fp-gallery-summary{display:none!important}
  .fp-gallery-identity{
    min-height:0!important;
    padding:5px 7px!important;
    gap:7px!important;
  }
  .fp-gallery-identity__icon{
    width:24px!important;
    height:24px!important;
    flex-basis:24px!important;
    font-size:.7rem!important;
  }
  .fp-gallery-identity__eyebrow{
    font-size:.48rem!important;
    letter-spacing:.12em!important;
  }
  .fp-gallery-identity__copy h1{
    margin-top:1px!important;
    font-size:1rem!important;
    line-height:1.05!important;
  }
  .fp-gallery-identity__copy p{display:none!important}
  .fp-gallery-identity__status{
    padding:3px 5px!important;
    font-size:.48rem!important;
  }

  /* Na telefonie kafelki są czystym podglądem — bez opisów pod/na zdjęciu. */
  .media-grid,
  .media-grid.layout-list,
  .media-grid.layout-panorama{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .media-grid.layout-list .media-card,
  .media-grid.layout-panorama .media-card{display:block!important}
  .media-grid.layout-list .media-preview,
  .media-grid.layout-list .file-icon,
  .media-grid.layout-panorama .media-preview,
  .media-grid.layout-panorama .file-icon{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:4/3!important;
  }
  .media-info{display:none!important}
  .file-inquiry{display:none!important}
  .media-card:hover,.media-card:focus-within{transform:none!important}

  /* Strzałki pełnoekranowe — możliwie dyskretne na małym ekranie. */
  .fp-viewer__nav,
  .fp-viewer.is-fullscreen-mode .fp-viewer__nav{
    width:24px!important;
    height:58px!important;
    opacity:.52!important;
  }
  .fp-viewer__nav::before,
  .fp-viewer.is-fullscreen-mode .fp-viewer__nav::before{
    border-color:rgba(212,175,55,.22)!important;
    background:rgba(5,6,7,.12)!important;
  }
  .fp-viewer__nav span{
    width:11px!important;
    height:11px!important;
    border-width:1px 0 0 1px!important;
  }

  /* Menu viewer'a: wszystkie akcje jako ikony — bez menu „...”. */
  .fp-viewer__dock,
  .fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    left:8px!important;
    right:8px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    translate:0 0!important;
    width:auto!important;
    max-width:none!important;
    display:flex!important;
    justify-content:center!important;
    overflow-x:auto!important;
    scrollbar-width:none;
    border-radius:8px!important;
  }
  .fp-viewer__dock::-webkit-scrollbar{display:none}
  .fp-viewer__control{
    flex:0 0 44px!important;
    min-width:44px!important;
    width:44px!important;
    height:44px!important;
    padding:5px!important;
  }
  .fp-viewer__control strong{font-size:1rem!important}
  .fp-viewer__control span{display:none!important}
  .fp-viewer__interval{
    flex:0 0 auto!important;
    min-width:104px!important;
    height:44px!important;
  }
  .fp-viewer__interval button{width:32px!important;min-width:32px!important}
  .fp-viewer__effect{
    flex:0 0 116px!important;
    min-width:116px!important;
    height:44px!important;
  }
  .fp-viewer__effect select{height:44px!important;min-height:44px!important;padding-inline:7px!important;font-size:.62rem!important}
  .fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__dock{translate:0 11px!important}

  .fp-gallery-premium-strips{margin-top:10px}
  .fp-gallery-premium-line{align-items:flex-start;flex-direction:column;gap:4px}
  .fp-gallery-premium-line>strong{flex-basis:auto}
  .fp-gallery-premium-line>div{width:100%;overflow-x:auto;flex-wrap:nowrap}
}

@media(max-width:430px){
  .media-grid,
  .media-grid.layout-list,
  .media-grid.layout-panorama{grid-template-columns:1fr 1fr!important}
  .fp-viewer__control{flex-basis:40px!important;min-width:40px!important;width:40px!important}
  .fp-viewer__interval{min-width:96px!important}
  .fp-viewer__effect{flex-basis:105px!important;min-width:105px!important}
}


/* poprawka-033 — zakres zatwierdzony: czytelność galerii, Premium, dashboard i mobile. */
@media(min-width:761px){
 .fp-gallery-summary{font-size:1rem!important;gap:18px!important}.fp-gallery-summary span{padding:8px 11px!important}.fp-gallery-summary b{font-size:.96rem!important}
 .fp-viewer__dock{min-height:74px!important}.fp-viewer__control{min-width:100px!important;height:74px!important;padding:9px 16px!important;font-size:.84rem!important}.fp-viewer__control strong{font-size:1.72rem!important;margin-bottom:6px!important}.fp-viewer__interval{min-width:142px!important;padding:0 12px!important}.fp-viewer__interval button{width:38px!important;height:38px!important;font-size:1rem!important}.fp-viewer__interval output{min-width:54px!important;font-size:.82rem!important}.fp-viewer__effect{min-width:220px!important;padding:0 11px!important}.fp-viewer__effect select{height:46px!important;font-size:.8rem!important}
}
.gallery-card[data-gallery-href]{cursor:pointer!important;position:relative}
.fp-gallery-upgrades__rows{display:grid;gap:11px}.fp-gallery-upgrades__row{display:flex;gap:11px;align-items:stretch}.fp-gallery-upgrade-card{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:1px solid rgba(214,176,106,.17);background:rgba(10,11,12,.66);font-size:.9rem}.fp-gallery-upgrade-card__copy{min-width:0}.fp-gallery-upgrade-card h3{margin:0 0 5px;font-size:1rem;color:#f0ece4}.fp-gallery-upgrade-card p{margin:0;color:#aeb0b2;font-size:.9rem;line-height:1.5}.fp-gallery-upgrade-card__action{flex:0 0 auto;display:grid;justify-items:end;gap:7px}.fp-gallery-upgrade-card__action strong{color:#e1bd58;font-size:1rem}.fp-gallery-upgrade-card .button{min-width:108px;text-align:center;font-size:.84rem}.fp-gallery-upgrade-card .button.is-disabled{opacity:.4;pointer-events:none}
.client-sharing-panel>summary{min-height:78px!important;padding:18px 22px!important}.client-sharing-panel>summary>span{display:grid;gap:4px;font-size:1.2rem!important}.client-sharing-panel>summary b{font-family:var(--fp-font-heading);font-size:1.45rem;font-weight:600;color:#efe9dc}.client-sharing-panel>summary em{font-style:normal;color:#d8b64f;font-size:.72rem;font-family:var(--fp-font-ui);letter-spacing:.13em;text-transform:uppercase}.client-sharing-panel>summary small{font-size:.86rem!important}.client-sharing-panel .fp-premium-accordion__body{padding:20px 24px!important}.client-sharing-panel .help{font-size:.94rem!important;line-height:1.55!important}.fp-sharing-create-row label{font-size:.88rem!important}.fp-sharing-create-row input,.fp-sharing-create-row select{min-height:48px!important;font-size:.9rem!important}.fp-sharing-create-row .button{min-height:48px!important;font-size:.8rem!important}
@media(max-width:760px){
 body.fp-gallery-mobile-scrolled .site-header,body.fp-gallery-mobile-scrolled .fp-gallery-head,body.fp-gallery-mobile-scrolled .fp-gallery-toolbar{opacity:0!important;visibility:hidden!important;pointer-events:none!important;max-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0!important}
 .fp-gallery-toolbar{top:max(6px,env(safe-area-inset-top))!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important;padding:7px!important}.fp-gallery-toolbar__group{flex:1 1 0!important;min-width:0!important;display:grid!important;gap:3px!important}.fp-gallery-toolbar__group:nth-of-type(-n+3){width:calc((100% - 12px)/3)!important}.fp-gallery-toolbar__label{font-size:.56rem!important;letter-spacing:.04em!important}.fp-gallery-toolbar__group select{width:100%!important;min-width:0!important;min-height:34px!important;height:34px!important;padding:4px 17px 4px 5px!important;font-size:.66rem!important}.fp-gallery-toolbar__spacer{flex-basis:100%!important;height:0!important}.fp-gallery-upgrades__row{display:grid;grid-template-columns:1fr!important}.fp-gallery-upgrade-card{font-size:.84rem}.fp-gallery-upgrade-card h3{font-size:.94rem}.fp-gallery-upgrade-card p{font-size:.73rem}.client-sharing-panel>summary{padding:14px!important;min-height:64px!important}.client-sharing-panel>summary>span{font-size:1rem!important}.client-sharing-panel>summary b{font-size:1.14rem}.client-sharing-panel>summary small{font-size:.7rem!important}
}


/* poprawka-035 — typografia + Uwagi 003. */
:root{--fp-font-ui:"Space Grotesk","Plus Jakarta Sans","Manrope","Segoe UI",Arial,sans-serif;--fp-font-body:"Manrope","Plus Jakarta Sans","Segoe UI",Arial,sans-serif;--fp-font-heading:"Space Grotesk","Plus Jakarta Sans","Manrope","Segoe UI",Arial,sans-serif}
body{font-family:var(--fp-font-body)!important}h1,h2,h3,h4,h5,h6,.eyebrow,.button,button,input,select,textarea,.site-header,.fp-viewer__dock{font-family:var(--fp-font-ui)!important}
.fp-client-header{display:grid!important;grid-template-columns:minmax(0,1fr);gap:7px!important;padding-top:10px!important;padding-bottom:10px!important}
.fp-client-header__top{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0}.fp-client-header__brand{flex:0 0 auto;min-width:0}.fp-client-header__brand img{width:145px;max-height:38px}.fp-client-header__identity{display:flex;align-items:baseline;justify-content:flex-end;gap:10px;min-width:0;margin-left:auto;text-align:right;font-family:var(--fp-font-ui)}.fp-client-header__identity span{color:var(--gold2);font-size:.72rem;font-weight:700;letter-spacing:.16em;white-space:nowrap}.fp-client-header__identity strong{min-width:0;max-width:38vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.9rem;font-weight:650}.fp-client-header__nav{display:flex!important;justify-content:flex-end!important;gap:16px!important;flex-wrap:nowrap!important;border-top:1px solid rgba(184,135,61,.13);padding-top:5px}.fp-client-header__nav a,.fp-client-header__nav .link-button{padding:4px 5px!important;font-size:.82rem!important;white-space:nowrap}.fp-client-header__nav .is-active{color:var(--gold2)!important}
.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:opacity .30s ease,transform .30s cubic-bezier(.22,.61,.36,1)}.fp-client-shell.fp-client-nav-leaving .site-header{opacity:0;transform:translateY(-20px)}.fp-client-shell.fp-client-nav-leaving .site-main,.fp-client-shell.fp-client-nav-leaving .site-footer{opacity:0;transform:translateY(20px)}.fp-client-shell:not(.fp-client-nav-ready) .site-header{opacity:0;transform:translateY(-14px)}.fp-client-shell:not(.fp-client-nav-ready) .site-main,.fp-client-shell:not(.fp-client-nav-ready) .site-footer{opacity:0;transform:translateY(14px)}.fp-client-shell.fp-client-nav-ready .site-header,.fp-client-shell.fp-client-nav-ready .site-main,.fp-client-shell.fp-client-nav-ready .site-footer{opacity:1;transform:translateY(0)}
.site-footer{justify-content:center!important;align-items:center!important;flex-direction:column!important;text-align:center!important;gap:8px!important}.fp-footer-studio,.fp-footer-safe{display:inline-block;position:relative;font-family:var(--fp-font-ui);font-weight:650}.fp-footer-studio{background:linear-gradient(96deg,#7b6540 4%,#f4efe2 22%,#fffdfa 33%,#d4af37 44%,#fffce6 52%,#b8873d 68%,#8b7045 94%);background-size:240% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fpFooterStudio035 9s linear infinite;text-shadow:0 0 14px rgba(212,175,55,.10)}.fp-footer-safe{background:linear-gradient(100deg,#a9adb2 0%,#b8b8b5 34%,#e39b34 48%,#ffd08a 54%,#e39b34 61%,#b8b8b5 74%,#a9adb2 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fpFooterSafe035 7.6s linear infinite}@keyframes fpFooterStudio035{0%{background-position:210% 50%}100%{background-position:-40% 50%}}@keyframes fpFooterSafe035{0%{background-position:210% 50%}100%{background-position:-45% 50%}}
@media(max-width:760px){.fp-viewer__dock [data-lightbox-share],.fp-viewer__dock .fp-viewer__direct-action[data-lightbox-close]{display:none!important}.fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{overflow:hidden!important;gap:0!important;padding:0 2px!important;justify-content:center!important}.fp-viewer__control{flex:0 0 40px!important;min-width:40px!important;width:40px!important;height:42px!important;padding:4px!important}.fp-viewer__interval{flex:0 1 92px!important;min-width:86px!important;height:42px!important}.fp-viewer__interval button{width:29px!important;min-width:29px!important}.fp-viewer__effect{flex:1 1 96px!important;min-width:92px!important;max-width:126px!important;height:42px!important}.fp-viewer__effect select{height:42px!important;min-height:42px!important;font-size:.60rem!important;padding-inline:5px!important}.fp-client-header{position:sticky!important;top:0;z-index:110;padding:7px 12px!important;gap:4px!important}.fp-client-header__top{gap:9px}.fp-client-header__brand img{width:112px;max-height:31px}.fp-client-header__identity{gap:6px}.fp-client-header__identity span{font-size:.55rem;letter-spacing:.10em}.fp-client-header__identity strong{font-size:.72rem;max-width:34vw}.fp-client-header__nav{justify-content:center!important;gap:7px!important;padding-top:3px}.fp-client-header__nav a,.fp-client-header__nav .link-button{font-size:.69rem!important;padding:3px 4px!important}}
@media(max-width:430px){.fp-viewer__control{flex-basis:38px!important;min-width:38px!important;width:38px!important}.fp-viewer__interval{min-width:82px!important}.fp-viewer__effect{min-width:88px!important;max-width:112px!important}}
@media(prefers-reduced-motion:reduce){.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer,.fp-footer-studio,.fp-footer-safe{transition:none!important;animation:none!important}}

/* poprawka-035 QA: stan wyjścia ma mieć pierwszeństwo nad stanem gotowym. */
.fp-client-shell.fp-client-nav-ready.fp-client-nav-leaving .site-header{opacity:0;transform:translateY(-20px)}
.fp-client-shell.fp-client-nav-ready.fp-client-nav-leaving .site-main,
.fp-client-shell.fp-client-nav-ready.fp-client-nav-leaving .site-footer{opacity:0;transform:translateY(20px)}

/* poprawka-035 QA: tablet zachowuje wszystkie funkcje viewer'a bez poziomego przewijania docka. */
@media(min-width:641px) and (max-width:820px){
  .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{gap:0!important;padding:0 2px!important;overflow:hidden!important}
  .fp-viewer__control{flex:0 0 52px!important;min-width:52px!important;width:52px!important;padding:5px 6px!important;font-size:.62rem!important}
  .fp-viewer__interval{flex:0 1 112px!important;min-width:102px!important;padding:0 3px!important}
  .fp-viewer__interval button{width:28px!important;min-width:28px!important}
  .fp-viewer__interval output{min-width:36px!important;font-size:.68rem!important}
  .fp-viewer__effect{flex:1 1 126px!important;min-width:116px!important;max-width:160px!important;padding:0 4px!important}
  .fp-viewer__effect select{font-size:.62rem!important;padding-inline:5px!important}
  .fp-viewer__direct-action{flex:0 0 auto!important;min-width:56px!important;padding-inline:6px!important;font-size:.62rem!important}
}
@media(min-width:641px) and (max-width:820px){
  .fp-viewer__control{flex-basis:48px!important;min-width:48px!important;width:48px!important;padding-inline:4px!important}
  .fp-viewer__interval{flex-basis:96px!important;min-width:92px!important}
  .fp-viewer__effect{flex-basis:112px!important;min-width:104px!important;max-width:138px!important}
  .fp-viewer__direct-action{min-width:48px!important;padding-inline:4px!important}
}
/* poprawka-035 QA: tablet — zachowaj podpisy i pełne funkcje, ale zmieść dock bez przewijania. */
@media(min-width:641px) and (max-width:820px){
  .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{width:max-content!important;max-width:calc(100vw - 20px)!important;overflow:hidden!important}
  .fp-viewer__control{flex:0 0 82px!important;min-width:82px!important;width:82px!important;height:64px!important;padding:7px 8px!important;font-size:.72rem!important}
  .fp-viewer__control strong{font-size:1.35rem!important;margin-bottom:4px!important}
  .fp-viewer__interval{flex:0 0 120px!important;min-width:120px!important;height:64px!important;padding:0 7px!important}
  .fp-viewer__interval button{width:32px!important;min-width:32px!important;height:32px!important}
  .fp-viewer__interval output{min-width:42px!important;font-size:.75rem!important}
  .fp-viewer__effect{flex:0 0 175px!important;min-width:175px!important;max-width:175px!important;height:64px!important;padding:0 7px!important}
  .fp-viewer__effect select{height:42px!important;font-size:.72rem!important}
  .fp-viewer__direct-action{min-width:82px!important;padding-inline:8px!important}
}

/* poprawka-036 — Uwagi 004. */
/* Desktop: przywrócony pełny układ nagłówka; kompaktowy wariant 035 tylko mobile. */
@media(min-width:761px){
  .fp-client-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;padding:14px clamp(18px,4vw,64px)!important}
  .fp-client-header__top{display:flex;align-items:center;gap:22px;min-width:0;flex:1 1 auto}
  .fp-client-header__brand{display:flex!important;align-items:center!important;gap:18px!important}.fp-client-header__brand img{width:155px!important;max-height:42px!important}.fp-client-header__brand-title{display:inline!important;color:var(--gold2);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}
  .fp-client-header__identity{display:grid!important;gap:1px!important;margin-left:auto!important;text-align:left!important;justify-items:start!important}.fp-client-header__identity-label--desktop{display:block!important}.fp-client-header__identity-label--mobile{display:none!important}.fp-client-header__identity span{font-size:.58rem!important}.fp-client-header__identity strong{max-width:240px!important;font-size:.78rem!important}
  .fp-client-header__nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;border-top:0!important;padding-top:0!important;flex:0 0 auto!important}.fp-client-header__nav a,.fp-client-header__nav .link-button{padding:8px!important;font-size:.86rem!important}
}
@media(max-width:760px){.fp-client-header__brand-title,.fp-client-header__identity-label--desktop{display:none!important}.fp-client-header__identity-label--mobile{display:block!important}}

/* Delikatniejsze i pełne przejście klienta; nie ucina elementów przed końcem animacji. */
.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:opacity .62s ease,transform .62s cubic-bezier(.22,.61,.36,1)!important;will-change:opacity,transform}
.fp-client-shell.fp-client-nav-leaving .site-header{opacity:0!important;transform:translateY(-14px)!important}.fp-client-shell.fp-client-nav-leaving .site-main,.fp-client-shell.fp-client-nav-leaving .site-footer{opacity:0!important;transform:translateY(14px)!important}
.fp-client-shell:not(.fp-client-nav-ready) .site-header{opacity:0;transform:translateY(-10px)}.fp-client-shell:not(.fp-client-nav-ready) .site-main,.fp-client-shell:not(.fp-client-nav-ready) .site-footer{opacity:0;transform:translateY(10px)}

/* Powitanie tylko jako popup pierwszej wizyty. */
.fp-client-welcome-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:24px}.fp-client-welcome-modal[hidden]{display:none!important}.fp-client-welcome-modal__backdrop{position:absolute;inset:0;background:rgba(3,4,5,.42);-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%)}.fp-client-welcome-modal__dialog{position:relative;width:min(680px,100%);padding:clamp(28px,5vw,48px);border:1px solid rgba(214,176,106,.38);border-radius:6px;background:linear-gradient(145deg,rgba(18,20,22,.94),rgba(5,6,7,.97));box-shadow:0 32px 100px rgba(0,0,0,.58),0 0 38px rgba(184,135,61,.08)}.fp-client-welcome-modal__dialog h1{margin:.14em 0 .35em;font:500 clamp(2rem,6vw,3.7rem)/1.04 var(--fp-font-heading)}.fp-client-welcome-modal__dialog>p:not(.eyebrow){color:#d5d3cc;line-height:1.65}.fp-client-welcome-modal__close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid rgba(214,176,106,.3);border-radius:6px;background:#08090a;color:#e8dfcd;font-size:1.4rem;cursor:pointer}
body.fp-client-welcome-open{overflow:hidden}

/* Dashboard: CTA z 033 nie może pozostać nawet z cache starszego HTML. */
.gallery-card-cta{display:none!important}

/* Akcje kart zawsze ponad gradientami/maskami + tooltip na desktopie. */
.media-card{isolation:isolate}.fp-card-actions{z-index:90!important;pointer-events:auto!important;isolation:isolate}.fp-card-action{position:relative!important;z-index:91!important;pointer-events:auto!important;touch-action:manipulation}.media-info{position:relative;z-index:20}.media-visual,.media-visual::before,.media-visual::after{pointer-events:none!important}.media-visual::after{z-index:2!important}
@media(hover:hover) and (pointer:fine){.fp-card-action[data-tooltip]::after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);translate:-50% 4px;z-index:200;max-width:220px;width:max-content;padding:6px 8px;border:1px solid rgba(214,176,106,.28);border-radius:4px;background:rgba(5,6,7,.97);color:#eee8da;font:600 .68rem/1.25 var(--fp-font-ui);white-space:nowrap;box-shadow:0 10px 28px rgba(0,0,0,.5);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,translate .16s ease}.fp-card-action[data-tooltip]:hover::after,.fp-card-action[data-tooltip]:focus-visible::after{opacity:1;visibility:visible;translate:-50% 0}}

/* Popup zapytania z miniaturą, limit tekstu obsługiwany również backendowo (600). */
.fp-inquiry-modal{position:fixed;inset:0;z-index:13000;display:grid;place-items:center;padding:20px}.fp-inquiry-modal[hidden]{display:none!important}.fp-inquiry-modal__backdrop{position:absolute;inset:0;background:rgba(2,3,4,.64);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.fp-inquiry-modal__dialog{position:relative;width:min(720px,100%);display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1.35fr);gap:20px;padding:2px;border-radius:6px;background:linear-gradient(105deg,#9b6a24,#f2d386,#d4af37,#7d531b,#e8c06a);background-size:260% 100%;animation:fpInquiryBorder036 4.8s linear infinite;box-shadow:0 30px 100px rgba(0,0,0,.62)}.fp-inquiry-modal__dialog::before{content:"";position:absolute;inset:2px;border-radius:5px;background:linear-gradient(145deg,#111315,#070809);z-index:0}.fp-inquiry-modal__preview,.fp-inquiry-modal__form{position:relative;z-index:1}.fp-inquiry-modal__preview{padding:18px 0 18px 18px;display:grid;align-content:start;gap:10px}.fp-inquiry-modal__preview img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(214,176,106,.18);border-radius:4px}.fp-inquiry-modal__preview span{color:#bfc0bd;font-size:.74rem;overflow-wrap:anywhere}.fp-inquiry-modal__form{display:grid;gap:12px;padding:24px 24px 24px 4px}.fp-inquiry-modal__form h2{margin:0;font-size:1.5rem}.fp-inquiry-modal__form label{display:grid;gap:7px;color:#c7c7c3;font-size:.82rem}.fp-inquiry-modal__form textarea{width:100%;min-height:155px;resize:vertical;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:4px;background:#090a0b;color:#f3f0ea;font:inherit}.fp-inquiry-modal__close{position:absolute;right:10px;top:10px;z-index:4;width:34px;height:34px;border:1px solid rgba(214,176,106,.28);border-radius:4px;background:#08090a;color:#eee;font-size:1.2rem;cursor:pointer}@keyframes fpInquiryBorder036{to{background-position:-260% 50%}}body.fp-inquiry-open{overflow:hidden}
@media(max-width:620px){.fp-inquiry-modal__dialog{grid-template-columns:1fr}.fp-inquiry-modal__preview{padding:18px 18px 0}.fp-inquiry-modal__preview img{max-height:170px}.fp-inquiry-modal__form{padding:4px 18px 18px}.fp-inquiry-modal__form textarea{min-height:120px}}

/* Mobile viewer: bez Udostępnij i Miniatury; pozostałe sterowanie mieści się w szerokości. */
@media(max-width:760px){.fp-viewer__dock [data-lightbox-share],.fp-viewer__dock [data-lightbox-close].fp-viewer__direct-action{display:none!important}.fp-viewer__dock{overflow:hidden!important;max-width:calc(100vw - 12px)!important}.fp-viewer__control{flex-shrink:1!important}.fp-viewer__effect{min-width:92px!important;flex-basis:100px!important}.fp-viewer__interval{min-width:80px!important;flex-basis:86px!important}}

@media(prefers-reduced-motion:reduce){.fp-inquiry-modal__dialog{animation:none!important}.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:none!important}}
/* poprawka-036 QA — pola techniczne formularza zapytania nie mogą być widoczne w popupie. */
.fp-inquiry-modal input[type="hidden"]{display:none!important}

/* poprawka-037 — definitywne usunięcie starego CTA z kart galerii. */
.gallery-card-cta,
.gallery-card .gallery-card-cta,
.gallery-card [data-gallery-cta] {
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.gallery-card-cta::before,
.gallery-card-cta::after {
  display:none!important;
  content:none!important;
}

/* poprawka-038 — Uwagi 005. Wyłącznie regresje 036 + centrowanie popupów/przejścia. */

/* P1: corrections-036 ustawiło pointer-events:none na całym .media-visual,
   przez co przycisk miniatury dziedziczył blokadę. Pseudo-warstwy nadal są nieklikalne. */
.media-visual{pointer-events:auto!important}
.media-preview,.media-lightbox-trigger{pointer-events:auto!important;touch-action:manipulation}
.media-visual::before,.media-visual::after{pointer-events:none!important}

/* Przejście Strefy ma być czystym, spokojnym zanikiem bez skoku góra/dół. */
.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{
  transition:opacity .78s cubic-bezier(.4,0,.2,1)!important;
  transform:none!important;
  will-change:opacity!important
}
.fp-client-shell.fp-client-nav-leaving .site-header,.fp-client-shell.fp-client-nav-leaving .site-main,.fp-client-shell.fp-client-nav-leaving .site-footer{opacity:0!important;transform:none!important}
.fp-client-shell:not(.fp-client-nav-ready) .site-header,.fp-client-shell:not(.fp-client-nav-ready) .site-main,.fp-client-shell:not(.fp-client-nav-ready) .site-footer{opacity:0;transform:none!important}

/* Powitanie pierwszej wizyty: sam popup jako pierwszy plan, bez czytelnego menu pod spodem. */
.fp-client-welcome-modal{height:100dvh;max-height:100dvh;padding:max(18px,env(safe-area-inset-top,0px)) 18px max(18px,env(safe-area-inset-bottom,0px));overflow:hidden}
.fp-client-welcome-modal__backdrop{background:rgba(3,4,5,.84)!important;-webkit-backdrop-filter:blur(30px) saturate(120%)!important;backdrop-filter:blur(30px) saturate(120%)!important}
.fp-client-welcome-modal__dialog{max-height:calc(100dvh - max(36px,env(safe-area-inset-top,0px) + env(safe-area-inset-bottom,0px)));overflow:auto;overscroll-behavior:contain}
@media(max-width:760px){
  .fp-client-welcome-modal{padding:max(14px,env(safe-area-inset-top,0px)) 14px max(14px,env(safe-area-inset-bottom,0px))}
  .fp-client-welcome-modal__dialog{width:min(360px,100%);max-height:calc(100dvh - 28px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:22px 18px 18px!important}
  .fp-client-welcome-modal__dialog h1{margin:.08em 0 .32em!important;font-size:clamp(1.55rem,7vw,2rem)!important;line-height:1.08!important}
  .fp-client-welcome-modal__dialog>p:not(.eyebrow){margin:.45em 0!important;font-size:.9rem;line-height:1.5!important}
  .fp-client-welcome-modal__close{top:8px!important;right:8px!important;width:34px!important;height:34px!important}
}

/* Popup zapytania zawsze względem viewportu; JS przenosi modal bezpośrednio do body. */
.fp-inquiry-modal{height:100dvh;max-height:100dvh;place-items:center!important;padding:max(14px,env(safe-area-inset-top,0px)) 14px max(14px,env(safe-area-inset-bottom,0px))!important}
.fp-inquiry-modal__dialog{max-height:calc(100dvh - 28px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto;overscroll-behavior:contain}
@media(max-width:620px){.fp-inquiry-modal__dialog{width:min(520px,100%)}}

@media(prefers-reduced-motion:reduce){.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:none!important}}

/* Profil telefonu w poziomie: zachowuje mobilny zestaw sterowania i kompaktowy popup. */
@media(max-width:1160px) and (orientation:landscape) and (max-height:560px){
  .fp-viewer__dock [data-lightbox-share],
  .fp-viewer__dock [data-lightbox-close].fp-viewer__direct-action{display:none!important}
  .fp-client-welcome-modal{padding:12px 18px!important}
  .fp-client-welcome-modal__dialog{width:min(520px,calc(100vw - 36px));max-height:calc(100dvh - 24px);padding:18px!important}
  .fp-client-welcome-modal__dialog h1{margin:.06em 0 .28em!important;font-size:1.5rem!important;line-height:1.08!important}
  .fp-client-welcome-modal__dialog>p:not(.eyebrow){margin:.35em 0!important;font-size:.84rem!important;line-height:1.4!important}
}

/* poprawka-039 — Uwagi 005 po 038: popup powitalny, wejście Strefy, mobilny viewer. */
.fp-client-welcome-modal__backdrop{background:rgba(3,4,5,.58)!important;-webkit-backdrop-filter:blur(20px) saturate(126%)!important;backdrop-filter:blur(20px) saturate(126%)!important;overflow:hidden}
.fp-client-welcome-modal__backdrop::before{content:"";position:absolute;inset:-12%;pointer-events:none;opacity:.32;background:radial-gradient(circle at 14% 22%,rgba(255,232,174,.20) 0 1.4%,transparent 5.2%),radial-gradient(circle at 73% 16%,rgba(214,176,106,.17) 0 1.8%,transparent 5.8%),radial-gradient(circle at 88% 67%,rgba(255,248,222,.11) 0 1.1%,transparent 4.5%),radial-gradient(circle at 31% 81%,rgba(184,135,61,.14) 0 1.5%,transparent 5.3%),radial-gradient(circle at 55% 49%,rgba(255,255,255,.075) 0 1%,transparent 4%);filter:blur(4px);animation:fpWelcomeBokeh039 14s ease-in-out infinite alternate}
.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:opacity .78s cubic-bezier(.4,0,.2,1)!important;transform:none!important}.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-header,.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-main,.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-footer{opacity:1!important;transform:none!important}
@media(max-width:760px){
 .fp-viewer__esc{display:none!important}.fp-viewer__back{left:auto!important;right:max(10px,env(safe-area-inset-right,0px))!important;top:max(10px,env(safe-area-inset-top,0px))!important;transform:none!important;translate:0!important;max-width:calc(100vw - 142px)!important;min-height:34px!important;padding:7px 10px!important;border-radius:6px!important;white-space:nowrap!important;overflow:hidden!important}.fp-viewer__back span{display:block!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap!important}
 .fp-viewer__brand{left:max(10px,env(safe-area-inset-left,0px))!important;top:max(10px,env(safe-area-inset-top,0px))!important;max-width:118px!important}.fp-viewer__brand img{max-width:112px!important;height:24px!important}
 .fp-viewer__meta{left:12px!important;right:12px!important;bottom:82px!important;max-width:none!important;width:auto!important;text-align:left!important;white-space:nowrap!important;overflow:hidden!important}.fp-viewer__meta strong{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.fp-viewer__meta span{display:none!important}.fp-viewer__counter{right:12px!important;bottom:82px!important}
 .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{box-sizing:border-box!important;width:max-content!important;max-width:calc(100vw - 16px)!important;min-width:0!important;height:54px!important;bottom:max(8px,env(safe-area-inset-bottom,0px))!important;overflow:visible!important;border-radius:6px!important;flex-wrap:nowrap!important}
 .fp-viewer__control{flex:0 1 48px!important;min-width:48px!important;width:48px!important;height:52px!important;padding:5px 4px!important}.fp-viewer__control strong{font-size:1rem!important;margin-bottom:0!important}.fp-viewer__interval{flex:0 1 76px!important;min-width:76px!important;width:76px!important;height:52px!important;padding:0 4px!important}.fp-viewer__interval button{width:24px!important;min-width:24px!important;height:28px!important}.fp-viewer__interval output{min-width:28px!important;font-size:.66rem!important}.fp-viewer__effect{flex:0 1 92px!important;min-width:92px!important;max-width:92px!important;width:92px!important;height:52px!important;padding:0 4px!important}.fp-viewer__effect select{height:34px!important;padding:5px 20px 5px 6px!important;font-size:.62rem!important}.fp-viewer__direct-action{flex:0 1 48px!important;min-width:48px!important;width:48px!important}
 .fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__meta{opacity:.78!important;pointer-events:none!important;filter:none!important;translate:0!important}.fp-viewer.is-fullscreen-mode .fp-viewer__stage{box-sizing:border-box!important;padding:54px 8px 68px!important}
}
@media(max-width:1160px) and (orientation:landscape) and (max-height:560px){
 .gallery-lightbox.fp-viewer .fp-viewer__stage,.fp-viewer.is-fullscreen-mode .fp-viewer__stage{box-sizing:border-box!important;height:100dvh!important;min-height:100dvh!important;padding:0!important;overflow:hidden!important}.gallery-lightbox.fp-viewer .fp-viewer__figure,.fp-viewer.is-fullscreen-mode .fp-viewer__figure{position:absolute!important;inset:0!important;z-index:1!important;width:100%!important;height:100%!important;padding:0!important;margin:0!important;overflow:hidden!important}.gallery-lightbox.fp-viewer .fp-viewer__image,.fp-viewer.is-fullscreen-mode .fp-viewer__image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;box-shadow:none!important}
 .fp-viewer__brand,.fp-viewer.is-fullscreen-mode .fp-viewer__brand{z-index:220!important;top:max(7px,env(safe-area-inset-top,0px))!important;left:max(9px,env(safe-area-inset-left,0px))!important;min-height:34px;padding:5px 8px!important;border:1px solid rgba(212,175,55,.16);border-radius:6px;background:rgba(7,8,9,.34);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%);opacity:.82!important}.fp-viewer__brand img{height:23px!important;max-width:112px!important}.fp-viewer__brand span{display:none!important}
 .fp-viewer__back,.fp-viewer.is-fullscreen-mode .fp-viewer__back{z-index:220!important;top:max(7px,env(safe-area-inset-top,0px))!important;right:max(9px,env(safe-area-inset-right,0px))!important;left:auto!important;transform:none!important;translate:0!important;min-height:34px!important;max-width:190px!important;padding:6px 10px!important;border-radius:6px!important;background:rgba(7,8,9,.34)!important;-webkit-backdrop-filter:blur(14px) saturate(120%)!important;backdrop-filter:blur(14px) saturate(120%)!important;opacity:.82!important;white-space:nowrap!important}.fp-viewer__back span{white-space:nowrap!important}.fp-viewer__esc{display:none!important}.fp-viewer__nav,.fp-viewer.is-fullscreen-mode .fp-viewer__nav{z-index:210!important}
 .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{z-index:220!important;width:max-content!important;max-width:calc(100vw - 18px)!important;height:48px!important;bottom:max(7px,env(safe-area-inset-bottom,0px))!important;overflow:visible!important;border-radius:6px!important;background:rgba(8,9,10,.34)!important;opacity:.82!important}.fp-viewer__control{flex:0 0 54px!important;min-width:54px!important;width:54px!important;height:46px!important;padding:4px!important}.fp-viewer__interval{flex:0 0 86px!important;min-width:86px!important;width:86px!important;height:46px!important;padding:0 5px!important}.fp-viewer__effect{flex:0 0 112px!important;min-width:112px!important;max-width:112px!important;width:112px!important;height:46px!important;padding:0 5px!important}.fp-viewer__direct-action{flex:0 0 54px!important;min-width:54px!important;width:54px!important}
 .fp-viewer__meta{z-index:221!important;left:12px!important;right:12px!important;bottom:61px!important;max-width:none!important;width:auto!important;white-space:nowrap!important;overflow:hidden!important;text-align:center!important}.fp-viewer__meta strong{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.fp-viewer__meta span{display:none!important}.fp-viewer__counter{z-index:221!important;right:12px!important;bottom:61px!important}.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__meta{opacity:.78!important;filter:none!important;translate:0!important}
}
@keyframes fpWelcomeBokeh039{from{transform:translate3d(-1.3%,1%,0) scale(1)}to{transform:translate3d(1.6%,-1.2%,0) scale(1.03)}}@media(prefers-reduced-motion:reduce){.fp-client-welcome-modal__backdrop::before{animation:none!important}}

/* poprawka-040 — Uwagi 006. Tylko stabilizacja popupu, przejść i viewera mobile. */

/* Powitanie: pełny viewport, portal body, 20 px blur + bokeh, bez X, całość centralnie. */
.fp-client-welcome-modal{
  position:fixed!important;inset:0!important;z-index:2147483300!important;
  width:100vw!important;height:100dvh!important;max-height:100dvh!important;
  display:grid!important;place-items:center!important;
  padding:max(16px,env(safe-area-inset-top,0px)) 16px max(16px,env(safe-area-inset-bottom,0px))!important;
  overflow:hidden!important
}
.fp-client-welcome-modal[hidden]{display:none!important}
.fp-client-welcome-modal__backdrop{
  position:absolute!important;inset:0!important;
  background:rgba(3,4,5,.48)!important;
  -webkit-backdrop-filter:blur(20px) saturate(126%)!important;
  backdrop-filter:blur(20px) saturate(126%)!important;
  overflow:hidden!important
}
.fp-client-welcome-modal__backdrop::before{
  content:""!important;display:block!important;position:absolute;inset:-12%;pointer-events:none;opacity:.34;
  background:radial-gradient(circle at 14% 22%,rgba(255,232,174,.20) 0 1.4%,transparent 5.2%),radial-gradient(circle at 73% 16%,rgba(214,176,106,.17) 0 1.8%,transparent 5.8%),radial-gradient(circle at 88% 67%,rgba(255,248,222,.11) 0 1.1%,transparent 4.5%),radial-gradient(circle at 31% 81%,rgba(184,135,61,.14) 0 1.5%,transparent 5.3%),radial-gradient(circle at 55% 49%,rgba(255,255,255,.075) 0 1%,transparent 4%);
  filter:blur(4px);animation:fpWelcomeBokeh040 14s ease-in-out infinite alternate
}
.fp-client-welcome-modal__dialog{
  position:relative!important;z-index:1!important;
  width:min(620px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - max(32px,env(safe-area-inset-top,0px) + env(safe-area-inset-bottom,0px)))!important;
  margin:auto!important;padding:clamp(24px,4.2vw,42px)!important;
  display:grid!important;justify-items:center!important;align-content:center!important;gap:12px!important;
  overflow:auto!important;overscroll-behavior:contain!important;text-align:center!important
}
.fp-client-welcome-modal__dialog>.eyebrow,
.fp-client-welcome-modal__dialog h1,
.fp-client-welcome-modal__dialog>p{width:100%!important;margin-inline:auto!important;text-align:center!important}
.fp-client-welcome-modal__dialog>p:not(.eyebrow){max-width:560px!important}
.fp-client-welcome-modal__close{display:none!important}
.fp-client-welcome-modal__dialog .button{
  position:relative!important;overflow:hidden!important;isolation:isolate!important;
  border-radius:6px!important;text-align:center!important
}
.fp-client-welcome-modal__dialog .button::after{
  content:"";position:absolute;z-index:-1;top:-70%;bottom:-70%;left:-42%;width:34%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,245,204,.10),rgba(255,232,162,.55),rgba(255,255,255,.20),transparent);
  transform:skewX(-18deg) translateX(-260%);filter:blur(2px);animation:fpWelcomeButtonSweep040 5.2s ease-in-out infinite
}

/* Jedna geometria przejść; bez translate w obu kierunkach i przy powrocie z bfcache. */
.fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{
  transition:opacity .78s cubic-bezier(.4,0,.2,1)!important;
  transform:none!important;translate:0!important
}
.fp-client-shell.fp-client-nav-leaving .site-header,
.fp-client-shell.fp-client-nav-leaving .site-main,
.fp-client-shell.fp-client-nav-leaving .site-footer,
.fp-client-shell:not(.fp-client-nav-ready) .site-header,
.fp-client-shell:not(.fp-client-nav-ready) .site-main,
.fp-client-shell:not(.fp-client-nav-ready) .site-footer{
  opacity:0!important;transform:none!important;translate:0!important
}
.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-header,
.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-main,
.fp-client-shell.fp-client-nav-ready:not(.fp-client-nav-leaving) .site-footer{opacity:1!important}

/* Viewer jest portalem body: zawsze nad headerem Strefy, niezależnie od Fullscreen API. */
body.lightbox-open .fp-client-header{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.gallery-lightbox.fp-viewer{
  position:fixed!important;inset:0!important;z-index:2147483200!important;
  width:100vw!important;height:100dvh!important;min-height:100dvh!important;
  margin:0!important;padding:0!important;overflow:hidden!important
}
.gallery-lightbox.fp-viewer .fp-viewer__stage{position:absolute!important;inset:0!important;width:100%!important;height:100dvh!important;min-height:100dvh!important}

/* Telefon portrait: pełny, wycentrowany dock i jednoznaczne ikony/stan aktywny. */
@media(max-width:760px){
  .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    left:50%!important;right:auto!important;translate:-50% 0!important;
    width:max-content!important;max-width:calc(100vw - 16px)!important;
    justify-content:center!important;align-items:stretch!important;overflow:visible!important
  }
  .fp-viewer__control strong{
    display:grid!important;place-items:center!important;opacity:1!important;visibility:visible!important;
    min-width:22px!important;min-height:22px!important;color:inherit!important
  }
  .fp-viewer__control.is-active,
  .fp-viewer__control[aria-pressed="true"]{
    color:#ffe29a!important;background:rgba(212,175,55,.20)!important;
    box-shadow:inset 0 0 0 1px rgba(244,207,103,.78),0 0 16px rgba(212,175,55,.24)!important
  }
  .fp-viewer__control.is-active strong,
  .fp-viewer__control[aria-pressed="true"] strong{
    color:#fff0b8!important;text-shadow:0 0 10px rgba(244,207,103,.70)!important
  }
  /* Nazwa pliku nie znika wraz z automatycznie wygaszaną nawigacją. */
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__meta{
    opacity:.80!important;pointer-events:none!important;filter:none!important;translate:0!important
  }
}

/* Telefon landscape: zaakceptowany 100dvh pozostaje. Stabilizujemy tylko chrome i jego warstwy. */
@media(max-width:1160px) and (orientation:landscape) and (max-height:560px){
  .gallery-lightbox.fp-viewer .fp-viewer__stage,.fp-viewer.is-fullscreen-mode .fp-viewer__stage{
    height:100dvh!important;min-height:100dvh!important;padding:0!important
  }
  .fp-viewer__brand,.fp-viewer.is-fullscreen-mode .fp-viewer__brand{
    z-index:220!important;
    left:max(9px,env(safe-area-inset-left,0px))!important;
    right:max(210px,calc(env(safe-area-inset-right,0px) + 205px))!important;
    top:max(7px,env(safe-area-inset-top,0px))!important;
    width:auto!important;max-width:none!important;min-height:34px!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
    padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;
    opacity:.50!important
  }
  .fp-viewer__brand img{height:23px!important;max-width:112px!important;flex:0 0 auto!important}
  .fp-viewer__brand span{
    display:block!important;margin-left:auto!important;color:#d9b855!important;
    font-size:.64rem!important;font-weight:700!important;letter-spacing:.18em!important;white-space:nowrap!important
  }
  .fp-viewer__meta{
    z-index:221!important;left:12px!important;right:12px!important;bottom:81px!important;
    width:auto!important;max-width:none!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important
  }
  .fp-viewer__counter{z-index:221!important;right:12px!important;bottom:81px!important}
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__meta{
    opacity:.80!important;pointer-events:none!important;filter:none!important;translate:0!important
  }
  .fp-viewer__dock,.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    left:50%!important;right:auto!important;translate:-50% 0!important;
    justify-content:center!important;align-items:stretch!important;overflow:visible!important
  }
  .fp-viewer__control strong{display:grid!important;place-items:center!important;opacity:1!important;visibility:visible!important}
  /* Landscape na telefonie jest trybem ikonowym: podpisy nie mogą nachodzić na dock. */
  .fp-viewer__control span{display:none!important}
  .fp-viewer__control.is-active,.fp-viewer__control[aria-pressed="true"]{
    color:#ffe29a!important;background:rgba(212,175,55,.20)!important;
    box-shadow:inset 0 0 0 1px rgba(244,207,103,.78),0 0 14px rgba(212,175,55,.22)!important
  }
  /* Brand ma zanikać razem z chrome podczas bezczynności; nazwa pliku pozostaje. */
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__brand{opacity:0!important;filter:blur(3px)!important}
}

@keyframes fpWelcomeBokeh040{from{transform:translate3d(-1.3%,1%,0) scale(1)}to{transform:translate3d(1.6%,-1.2%,0) scale(1.03)}}
@keyframes fpWelcomeButtonSweep040{0%,52%{transform:skewX(-18deg) translateX(-260%);opacity:0}60%{opacity:.8}78%{transform:skewX(-18deg) translateX(560%);opacity:.28}100%{transform:skewX(-18deg) translateX(560%);opacity:0}}
@media(prefers-reduced-motion:reduce){
  .fp-client-welcome-modal__backdrop::before,.fp-client-welcome-modal__dialog .button::after{animation:none!important}
  .fp-client-shell .site-header,.fp-client-shell .site-main,.fp-client-shell .site-footer{transition:none!important}
}

/* poprawka-041 — viewer mobile: pełna separacja chrome od zdjęcia, komplet ikon w docku, ukrycie opisu w fullscreen/landscape. */

/* Viewer chrome ma być niezależny od geometrii zdjęcia i zawsze liczony względem viewportu telefonu. */
@media (max-width: 1160px){
  .gallery-lightbox.fp-viewer .fp-viewer__brand,
  .gallery-lightbox.fp-viewer .fp-viewer__back,
  .gallery-lightbox.fp-viewer .fp-viewer__nav,
  .gallery-lightbox.fp-viewer .fp-viewer__meta,
  .gallery-lightbox.fp-viewer .fp-viewer__counter,
  .gallery-lightbox.fp-viewer .fp-viewer__dock{
    position:fixed!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__brand{
    top:max(8px,env(safe-area-inset-top,0px))!important;
    left:max(10px,env(safe-area-inset-left,0px))!important;
    right:auto!important;
    width:auto!important;
    max-width:calc(100vw - 188px)!important;
    min-height:32px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    opacity:.50!important;
    white-space:nowrap!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__brand img{
    height:22px!important;
    max-width:110px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__brand span{
    display:block!important;
    margin:0!important;
    color:rgba(217,184,85,.9)!important;
    font-size:.62rem!important;
    font-weight:700!important;
    letter-spacing:.16em!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__back{
    top:max(8px,env(safe-area-inset-top,0px))!important;
    right:max(10px,env(safe-area-inset-right,0px))!important;
    left:auto!important;
    transform:none!important;
    translate:0!important;
    min-height:34px!important;
    padding:6px 10px!important;
    border-radius:6px!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__nav{
    z-index:221!important;
    width:46px!important;
    height:104px!important;
    opacity:.90!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__prev{left:max(2px,env(safe-area-inset-left,0px))!important}
  .gallery-lightbox.fp-viewer .fp-viewer__next{right:max(2px,env(safe-area-inset-right,0px))!important}
  .gallery-lightbox.fp-viewer .fp-viewer__nav::before{
    border-color:rgba(255,255,255,.42)!important;
    background:linear-gradient(90deg,rgba(255,255,255,.08),transparent 68%)!important;
    filter:none!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__nav span{
    width:15px!important;height:15px!important;
    border-top:2px solid #fff!important;
    border-left:2px solid #fff!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__meta{
    z-index:221!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    translate:0!important;
    width:auto!important;
    max-width:calc(100vw - 24px)!important;
    bottom:max(60px,calc(env(safe-area-inset-bottom,0px) + 48px))!important;
    text-align:center!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__meta strong{
    max-width:calc(100vw - 24px)!important;
    margin:0 auto!important;
    text-align:center!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__meta [data-lightbox-meta]{
    display:none!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__counter{
    right:max(10px,env(safe-area-inset-right,0px))!important;
    bottom:max(60px,calc(env(safe-area-inset-bottom,0px) + 48px))!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    z-index:222!important;
    left:50vw!important;
    right:auto!important;
    bottom:max(10px,env(safe-area-inset-bottom,0px))!important;
    transform:none!important;
    translate:-50% 0!important;
    width:max-content!important;
    max-width:calc(100vw - 12px)!important;
    min-width:0!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:center!important;
    align-items:stretch!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__dock > *{flex:0 0 auto!important}

  /* Na telefonie wszystkie ikony mają być widoczne w docku. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-share],
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-close].fp-viewer__direct-action{
    display:flex!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__control,
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action{
    display:flex!important;
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:4px!important;
    align-items:center!important;
    justify-content:center!important;
    border-right:1px solid rgba(255,255,255,.065)!important;
    color:#fff!important;
    font-size:.64rem!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__control strong,
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action strong{
    display:grid!important;
    place-items:center!important;
    width:20px!important;
    min-width:20px!important;
    height:20px!important;
    min-height:20px!important;
    margin:0!important;
    color:#fff!important;
    font-size:1.02rem!important;
    line-height:1!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__control span,
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action span{
    display:none!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__interval{
    flex:0 0 92px!important;
    min-width:92px!important;
    height:42px!important;
    padding:0 4px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__interval button{
    width:26px!important;
    min-width:26px!important;
    height:26px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__interval output{
    min-width:32px!important;
    font-size:.66rem!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__effect{
    flex:0 0 112px!important;
    min-width:112px!important;
    max-width:112px!important;
    height:42px!important;
    padding:0 4px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__effect select{
    width:100%!important;
    height:32px!important;
    min-height:32px!important;
    font-size:.60rem!important;
    padding-inline:6px 22px!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__control.is-active,
  .gallery-lightbox.fp-viewer .fp-viewer__control[aria-pressed="true"]{
    color:#fff7d0!important;
    background:rgba(212,175,55,.18)!important;
    box-shadow:inset 0 0 0 1px rgba(244,207,103,.78),0 0 12px rgba(212,175,55,.20)!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__control.is-active strong,
  .gallery-lightbox.fp-viewer .fp-viewer__control[aria-pressed="true"] strong{
    color:#fff!important;
    text-shadow:0 0 8px rgba(244,207,103,.68)!important;
  }
}

/* W pełnym ekranie i w poziomie nie pokazujemy opisu zdjęcia; zostaje tylko nazwa, jeśli w ogóle ma być widoczna. */
@media (max-width: 1160px) and (orientation: landscape){
  .gallery-lightbox.fp-viewer .fp-viewer__meta [data-lightbox-meta],
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__meta [data-lightbox-meta]{
    display:none!important;
  }
}

.gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__meta [data-lightbox-meta]{
  display:none!important;
}

@media (max-width: 760px){
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__meta{
    opacity:.80!important;
    pointer-events:none!important;
    filter:none!important;
    translate:0!important;
  }
}

/* poprawka-042 — viewer iPhone QA: budżet docka, białe ikony SVG, prawdziwy stan Fullscreen API, brak caption w fullscreen/landscape, blokada long-press preview. */

/* Blokada prostego pobrania preview przez long-press/context menu. Nie dotyczy kontrolowanego przycisku Pobierz. */
.media-lightbox-trigger,
.media-lightbox-trigger img,
.gallery-lightbox.fp-viewer .fp-viewer__image{
  -webkit-touch-callout:none!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}

/* SVG zapewnia identyczne ikony na Safari/Chromium zamiast zależności od glifów Unicode. */
.gallery-lightbox.fp-viewer .fp-viewer__icon{
  display:grid!important;
  place-items:center!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  color:#fff!important;
  opacity:1!important;
}
.gallery-lightbox.fp-viewer .fp-viewer__icon svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  overflow:visible!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.gallery-lightbox.fp-viewer [data-lightbox-autoplay] .fp-viewer__icon svg{fill:currentColor!important;stroke:none!important}
.gallery-lightbox.fp-viewer .fp-viewer__control,
.gallery-lightbox.fp-viewer .fp-viewer__direct-action,
.gallery-lightbox.fp-viewer .fp-viewer__interval button{
  color:#fff!important;
  opacity:1!important;
}

/* Rzeczywisty Fullscreen API ma osobny stan. Immersyjny layout viewera nie oznacza aktywnego Fullscreen API. */
.gallery-lightbox.fp-viewer [data-lightbox-fullscreen][aria-pressed="false"]{
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
}
.gallery-lightbox.fp-viewer.is-native-fullscreen [data-lightbox-fullscreen],
.gallery-lightbox.fp-viewer [data-lightbox-fullscreen][aria-pressed="true"]{
  color:#fff7d0!important;
  background:rgba(212,175,55,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(244,207,103,.78),0 0 12px rgba(212,175,55,.20)!important;
}

/* Mobilny dock: budżet <= 348 px na 360 px viewport. Wszystko względem viewportu, nie zdjęcia. */
@media(max-width:760px){
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    position:fixed!important;
    left:50vw!important;
    right:auto!important;
    bottom:max(8px,env(safe-area-inset-bottom,0px))!important;
    transform:none!important;
    translate:-50% 0!important;
    box-sizing:border-box!important;
    width:max-content!important;
    max-width:calc(100vw - 8px)!important;
    min-width:0!important;
    padding:0!important;
    gap:0!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:center!important;
    align-items:stretch!important;
    overflow:visible!important;
    background:rgba(8,9,10,.72)!important;
    opacity:1!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__dock > *{box-sizing:border-box!important;flex-shrink:0!important}

  .gallery-lightbox.fp-viewer .fp-viewer__control,
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action{
    display:flex!important;
    flex:0 0 34px!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    opacity:1!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__control span:not(.fp-viewer__icon),
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action span:not(.fp-viewer__icon){display:none!important}

  /* Poprzednie poprawki ukrywały te akcje na telefonie — 042 świadomie je przywraca. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-share],
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-close].fp-viewer__direct-action{
    display:flex!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__interval{
    flex:0 0 76px!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    height:40px!important;
    padding:0 2px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__interval button{
    width:22px!important;
    min-width:22px!important;
    height:26px!important;
    padding:0!important;
    color:#fff!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__interval output{
    min-width:28px!important;
    font-size:.62rem!important;
    color:#fff!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__effect{
    flex:0 0 82px!important;
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
    height:40px!important;
    padding:0 3px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__effect select{
    width:100%!important;
    height:30px!important;
    min-height:30px!important;
    padding:3px 18px 3px 4px!important;
    font-size:.55rem!important;
    color:#fff!important;
  }

  .gallery-lightbox.fp-viewer .fp-viewer__back:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
}

/* Landscape telefonu: chrome nadal względem viewportu, a caption/opis NIE zajmuje środka obrazu. */
@media(max-width:1160px) and (orientation:landscape) and (max-height:560px){
  .gallery-lightbox.fp-viewer .fp-viewer__meta{display:none!important}
  .gallery-lightbox.fp-viewer .fp-viewer__counter{
    bottom:max(56px,calc(env(safe-area-inset-bottom,0px) + 48px))!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    left:50vw!important;
    translate:-50% 0!important;
    opacity:1!important;
  }
}

/* Natywny fullscreen: żadnego caption/opisu pliku na zdjęciu. */
.gallery-lightbox.fp-viewer.is-native-fullscreen .fp-viewer__meta{display:none!important}

/* Auto-hide: przezroczystość spada dopiero w stanie idle, nie stale na ikonach. */
.gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__dock{
  opacity:0!important;
  pointer-events:none!important;
}

/* Uprawnienia pobierania pozostają nadrzędne: hidden nie może zostać nadpisany przez mobilny layout docka. */
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-download][hidden]{display:none!important}

/* poprawka-043 — mobile viewer: chrome uproszczony po teście iPhone 042. */

@media(max-width:1160px){
  /* Na telefonie nie pokazujemy tekstowego oznaczenia STREFA KLIENTA w viewerze. Logo zostaje. */
  .gallery-lightbox.fp-viewer .fp-viewer__brand span{display:none!important}

  /* Nazwa/opis zdjęcia nie jest elementem mobilnego viewera — ani normalnie, ani fullscreen. */
  .gallery-lightbox.fp-viewer .fp-viewer__meta,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__meta,
  .gallery-lightbox.fp-viewer.is-native-fullscreen .fp-viewer__meta{display:none!important}

  /* Usuwamy dekoracyjne boczne figury/linie. Zostaje wyłącznie czysty chevron. */
  .gallery-lightbox.fp-viewer .fp-viewer__nav::before{display:none!important;content:none!important}
  .gallery-lightbox.fp-viewer .fp-viewer__nav{
    width:42px!important;height:92px!important;
    background:transparent!important;border:0!important;
    opacity:.90!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__nav span{
    width:15px!important;height:15px!important;
    color:#fff!important;
    border-top:2px solid currentColor!important;
    border-left:2px solid currentColor!important;
  }

  /* Share i Miniatury zostały usunięte z markup docka w 043. Reguła ochronna
     pilnuje, by stary cache/fallback również ich nie przywrócił na telefonie. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-share],
  .gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-close].fp-viewer__direct-action{display:none!important}

  /* Po uproszczeniu docka szerokość nie zależy od zdjęcia i ma duży zapas na 360 px. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock{
    left:50vw!important;right:auto!important;
    width:max-content!important;max-width:calc(100vw - 16px)!important;
    translate:-50% 0!important;
    overflow:visible!important;
  }

  /* Auto-hide ma wygaszać także strzałki; bez pozostających pionowych kresek. */
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__nav{
    opacity:0!important;pointer-events:none!important;filter:none!important;
  }
}

/* poprawka-044 — viewer iPhone: pewne ikony docka + pewne auto-hide strzałek. */

/* Ikony są częścią chrome viewera, a nie zdjęcia. Wymuszamy ich widoczność niezależnie od starszych reguł span/svg. */
.gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon{
  display:grid!important;
  place-items:center!important;
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
.gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon svg{
  display:block!important;
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
}
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-fullscreen] .fp-viewer__icon svg,
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-download] .fp-viewer__icon svg{
  fill:none!important;
  stroke:#fff!important;
  stroke-width:2!important;
}
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-autoplay] .fp-viewer__icon svg{
  fill:#fff!important;
  stroke:none!important;
}

/* 043 usunęło dekoracyjne kliny/pionowe kreski. Ta reguła jest twardym zabezpieczeniem przed fallback/cache. */
@media(max-width:1160px){
  .gallery-lightbox.fp-viewer .fp-viewer__nav::before,
  .gallery-lightbox.fp-viewer .fp-viewer__nav::after{
    content:none!important;
    display:none!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }

  /* Po auto-hide strzałki naprawdę znikają: opacity + visibility + brak hitboxa. Nie zależy od reduced-motion. */
  .gallery-lightbox.fp-viewer.is-ui-idle .fp-viewer__nav,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__nav{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    filter:none!important;
  }

  /* Po dotknięciu UI wraca i strzałki są znów dostępne. */
  .gallery-lightbox.fp-viewer:not(.is-ui-idle) .fp-viewer__nav{
    visibility:visible!important;
  }
}

/* Na iPhone przy reduced motion ukrywamy bez animowania zamiast pozostawiać chrome na stałe. */
@media(prefers-reduced-motion:reduce){
  .gallery-lightbox.fp-viewer .fp-viewer__nav,
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer .fp-viewer__brand,
  .gallery-lightbox.fp-viewer .fp-viewer__back{
    transition:none!important;
  }
}

/* poprawka-045 — iPhone Safari immersive viewer + kumulacja poprawek chrome 044. */

/* Kumulacja 044: ikony docka muszą być widoczne i białe nawet przy starym cache CSS. */
.gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon{
  display:grid!important;place-items:center!important;
  width:20px!important;min-width:20px!important;height:20px!important;min-height:20px!important;
  margin:0!important;padding:0!important;color:#fff!important;opacity:1!important;visibility:visible!important
}
.gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon svg{
  display:block!important;width:20px!important;height:20px!important;
  opacity:1!important;visibility:visible!important;overflow:visible!important
}
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-fullscreen] .fp-viewer__icon svg,
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-download] .fp-viewer__icon svg{
  fill:none!important;stroke:#fff!important;stroke-width:2!important
}
.gallery-lightbox.fp-viewer .fp-viewer__dock [data-lightbox-autoplay] .fp-viewer__icon svg{
  fill:#fff!important;stroke:none!important
}

@media(max-width:1160px){
  /* Kumulacja 043/044: bez opisu/nazwy, bez STREFA KLIENTA, bez klinów/kreskowania przy strzałkach. */
  .gallery-lightbox.fp-viewer .fp-viewer__brand span{display:none!important}
  .gallery-lightbox.fp-viewer .fp-viewer__meta{display:none!important}
  .gallery-lightbox.fp-viewer .fp-viewer__nav::before,
  .gallery-lightbox.fp-viewer .fp-viewer__nav::after{
    content:none!important;display:none!important;border:0!important;background:none!important;box-shadow:none!important
  }
  .gallery-lightbox.fp-viewer.is-ui-idle .fp-viewer__nav,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode.is-ui-idle .fp-viewer__nav{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;filter:none!important
  }
  .gallery-lightbox.fp-viewer:not(.is-ui-idle) .fp-viewer__nav{visibility:visible!important}

  /* Immersive iOS: root może się przewijać, co pozwala Safari naturalnie zwinąć chrome. */
  html.fp-viewer-ios-immersive-root{overflow-y:auto!important;overflow-x:hidden!important}
  body.lightbox-open.fp-viewer-ios-immersive{
    overflow-y:auto!important;overflow-x:hidden!important;
    position:static!important;height:auto!important;min-height:100vh!important;
    overscroll-behavior-y:auto!important
  }
  .fp-viewer-ios-scroll-sentinel{
    display:block!important;width:1px!important;height:max(220px,28dvh)!important;
    margin:0!important;padding:0!important;opacity:0!important;pointer-events:none!important
  }

  /* Jeden właściciel geometrii: sam viewer śledzi visualViewport jako absolute overlay. */
  .gallery-lightbox.fp-viewer.is-ios-immersive{
    position:absolute!important;
    inset:auto!important;
    top:var(--fp-viewer-vv-top,0px)!important;
    left:var(--fp-viewer-vv-left,0px)!important;
    width:var(--fp-viewer-vv-width,100vw)!important;
    height:var(--fp-viewer-vv-height,100dvh)!important;
    min-height:0!important;max-height:none!important;
    margin:0!important;padding:0!important;transform:none!important;translate:0!important;
    overflow:hidden!important;touch-action:pan-y!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__stage{
    position:absolute!important;inset:0!important;
    width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
    overflow:hidden!important;touch-action:pan-y!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__figure{
    position:absolute!important;inset:0!important;
    width:100%!important;height:100%!important;min-height:0!important;
    margin:0!important;padding:0!important;display:grid!important;place-items:center!important;
    touch-action:pan-y!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__image{
    max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;
    object-fit:contain!important;touch-action:pan-y!important
  }

  /* Chrome jest osobną warstwą overlay i nie dziedziczy geometrii zdjęcia. */
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__brand,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__back,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__nav,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__counter,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock{
    position:absolute!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__brand{
    top:max(8px,env(safe-area-inset-top,0px))!important;
    left:max(10px,env(safe-area-inset-left,0px))!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__back{
    top:max(8px,env(safe-area-inset-top,0px))!important;
    right:max(10px,env(safe-area-inset-right,0px))!important;left:auto!important;
    transform:none!important;translate:0!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__prev{
    left:max(2px,env(safe-area-inset-left,0px))!important;top:50%!important;translate:0 -50%!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__next{
    right:max(2px,env(safe-area-inset-right,0px))!important;top:50%!important;translate:0 -50%!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__counter{
    right:max(10px,env(safe-area-inset-right,0px))!important;
    bottom:max(62px,calc(env(safe-area-inset-bottom,0px) + 50px))!important
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock{
    left:50%!important;right:auto!important;
    bottom:max(10px,env(safe-area-inset-bottom,0px))!important;
    transform:none!important;translate:-50% 0!important;
    width:max-content!important;max-width:calc(100% - 16px)!important;
    overflow:visible!important
  }

  /* Przewijanie pionowe steruje Safari, ale kontrolki pozostają zwykłymi tap-targetami. */
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock *,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__back,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__nav{
    touch-action:manipulation!important
  }
}

@media(prefers-reduced-motion:reduce){
  .gallery-lightbox.fp-viewer .fp-viewer__nav,
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer .fp-viewer__brand,
  .gallery-lightbox.fp-viewer .fp-viewer__back{transition:none!important}
}

/* poprawka-046 — mobilna przesłona/menu Strefy Klienta. Tylko nagłówek client UI. */

/* Desktop/tablet szeroki: zachowujemy dotychczasową nawigację i nie pokazujemy przycisku. */
.fp-client-menu-toggle{display:none}

@media (max-width:760px){
  .fp-client-header{
    overflow:visible!important;
    isolation:isolate!important;
  }
  .fp-client-header__top{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) 44px!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
  }
  .fp-client-header__brand{
    min-width:0!important;
  }
  .fp-client-header__identity{
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    justify-self:end!important;
    padding-right:2px!important;
  }
  .fp-client-header__identity strong{
    max-width:22vw!important;
  }

  .fp-client-menu-toggle{
    position:relative!important;
    z-index:2147482500!important;
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:2px!important;
    border:0!important;
    border-radius:6px!important;
    background:transparent!important;
    color:#d9b855!important;
    box-shadow:none!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    touch-action:manipulation!important;
    cursor:pointer!important;
  }
  .fp-client-menu-toggle:focus-visible{
    outline:1px solid rgba(217,184,85,.72)!important;
    outline-offset:2px!important;
  }
  .fp-client-aperture-icon{
    display:block!important;
    width:38px!important;
    height:38px!important;
    overflow:visible!important;
    pointer-events:none!important;
  }
  .fp-client-aperture-icon__ring{
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.5!important;
    opacity:.96!important;
  }
  .fp-client-aperture-icon__blades{
    fill:rgba(217,184,85,.20)!important;
    stroke:currentColor!important;
    stroke-width:.78!important;
    transform-origin:24px 24px!important;
    transition:transform .30s cubic-bezier(.2,.7,.2,1),opacity .24s ease!important;
  }
  .fp-client-aperture-icon__opening{
    fill:#050607!important;
    stroke:#efd06b!important;
    stroke-width:.9!important;
    transform-origin:24px 24px!important;
    transition:transform .30s cubic-bezier(.2,.7,.2,1)!important;
  }
  .fp-client-menu-toggle[aria-expanded="true"] .fp-client-aperture-icon__blades{
    transform:rotate(23deg) scale(.82)!important;
    opacity:.78!important;
  }
  .fp-client-menu-toggle[aria-expanded="true"] .fp-client-aperture-icon__opening{
    transform:scale(3.68)!important;
  }

  /* Mobile nav jest osobnym popoverem viewportu, a nie drugim rzędem nagłówka. */
  .fp-client-header__nav[data-client-menu-nav]{
    position:fixed!important;
    z-index:2147482400!important;
    top:calc(env(safe-area-inset-top,0px) + 60px)!important;
    right:12px!important;
    left:auto!important;
    width:min(286px,calc(100vw - 24px))!important;
    max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 76px)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    align-content:start!important;
    justify-items:stretch!important;
    gap:3px!important;
    padding:9px!important;
    margin:0!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    border:1px solid rgba(212,175,55,.26)!important;
    border-radius:6px!important;
    background:rgba(6,7,8,.92)!important;
    -webkit-backdrop-filter:blur(20px) saturate(125%)!important;
    backdrop-filter:blur(20px) saturate(125%)!important;
    box-shadow:0 24px 64px rgba(0,0,0,.62),0 0 24px rgba(212,175,55,.06)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-6px) scale(.985)!important;
    transform-origin:top right!important;
    transition:opacity .20s ease,transform .20s ease,visibility 0s linear .20s!important;
  }
  body.fp-client-menu-open .fp-client-header__nav[data-client-menu-nav]{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
    transition:opacity .20s ease,transform .20s ease,visibility 0s!important;
  }
  .fp-client-header__nav[data-client-menu-nav] a,
  .fp-client-header__nav[data-client-menu-nav] .link-button{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:44px!important;
    padding:10px 12px!important;
    border-radius:6px!important;
    color:#e7e2d8!important;
    font-size:.78rem!important;
    font-weight:650!important;
    letter-spacing:.03em!important;
    text-align:left!important;
    text-decoration:none!important;
  }
  .fp-client-header__nav[data-client-menu-nav] .is-active{
    color:#efd06b!important;
    background:rgba(212,175,55,.075)!important;
  }
  .fp-client-header__nav[data-client-menu-nav] form{
    width:100%!important;
    margin:0!important;
  }

  /* Viewer ma pierwszeństwo; przy jego otwarciu menu klienta nie może być aktywne. */
  body.lightbox-open .fp-client-menu-toggle,
  body.lightbox-open .fp-client-header__nav[data-client-menu-nav]{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .fp-client-aperture-icon__blades,.fp-client-aperture-icon__opening,
  .fp-client-header__nav[data-client-menu-nav]{transition:none!important}
}

/* poprawka-047 — mobile Strefa header/menu + viewer compact/centered + iOS immersive best effort. */

@media(max-width:760px){
  /* Header telefonu: logo + przysłona; bez "STREFA KLIENTA malixik". */
  .fp-client-header{
    position:sticky!important;top:0!important;z-index:2147482300!important;
    display:block!important;padding:4px 8px!important;gap:0!important;
    min-height:50px!important;overflow:visible!important;
    transition:opacity .30s cubic-bezier(.4,0,.2,1),transform .30s cubic-bezier(.4,0,.2,1)!important;
    will-change:opacity,transform!important;
  }
  .fp-client-header.fp-client-header-hidden{
    opacity:0!important;transform:translateY(-12px)!important;pointer-events:none!important;
  }
  body.fp-client-menu-open .fp-client-header,
  body.fp-client-menu-closing .fp-client-header{opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important}
  .fp-client-header__top{
    display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;
    align-items:center!important;gap:4px!important;min-height:42px!important;
  }
  .fp-client-header__brand{justify-self:start!important;min-width:0!important;gap:0!important}
  .fp-client-header__brand img{width:112px!important;max-height:30px!important}
  .fp-client-header__brand-title,.fp-client-header__identity{display:none!important}
  .fp-client-menu-toggle{justify-self:end!important;margin:0!important}

  /* Minimalny odstęp od nagłówka do pierwszej karty/identyfikacji galerii. */
  .fp-client-shell .site-main{padding-top:6px!important}
  .fp-client-shell .site-main>.fp-gallery-identity,
  .fp-client-shell .site-main .fp-gallery-identity:first-child{margin-top:0!important}

  /* Popover Strefy: ta sama kaskada co główne menu. */
  .fp-client-header__nav[data-client-menu-nav]{
    top:calc(env(safe-area-inset-top,0px) + 54px)!important;
    right:8px!important;width:min(280px,calc(100vw - 16px))!important;
    padding:8px!important;gap:3px!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transform:translateY(-8px) scale(.985)!important;filter:blur(2px)!important;
    transition:opacity .24s ease,transform .24s ease,filter .24s ease,visibility 0s linear .34s!important;
  }
  body.fp-client-menu-open .fp-client-header__nav[data-client-menu-nav],
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]{visibility:visible!important}
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]{
    opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;filter:blur(0)!important;
    transition:opacity .24s ease,transform .24s ease,filter .24s ease,visibility 0s!important;
  }
  .fp-client-header__nav[data-client-menu-nav]>a,
  .fp-client-header__nav[data-client-menu-nav]>form{
    opacity:0;transform:translateY(-12px);filter:blur(2px);will-change:opacity,transform,filter;
  }
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]>a,
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]>form{
    animation:fpClientMenuEnter047 .34s cubic-bezier(.18,.88,.25,1) both;
  }
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]>:nth-child(1){animation-delay:.03s}
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]>:nth-child(2){animation-delay:.09s}
  body.fp-client-menu-open:not(.fp-client-menu-closing) .fp-client-header__nav[data-client-menu-nav]>:nth-child(3){animation-delay:.15s}
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>a,
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>form{animation:fpClientMenuExit047 .26s ease both;pointer-events:none}
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>:nth-child(3){animation-delay:.02s}
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>:nth-child(2){animation-delay:.07s}
  body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>:nth-child(1){animation-delay:.12s}

  /* Viewer: strzałki boczne usunięte na telefonie. */
  .gallery-lightbox.fp-viewer .fp-viewer__nav{display:none!important;visibility:hidden!important;pointer-events:none!important}

  /* Dock minimalny i zawsze centrowany względem viewportu. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock{
    left:50%!important;right:auto!important;translate:-50% 0!important;transform:none!important;
    bottom:max(7px,env(safe-area-inset-bottom,0px))!important;
    width:max-content!important;max-width:calc(100% - 12px)!important;min-height:36px!important;height:36px!important;
    align-items:center!important;justify-content:center!important;padding:0 2px!important;gap:0!important;
    overflow:visible!important;border-radius:6px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__control,
  .gallery-lightbox.fp-viewer .fp-viewer__direct-action{
    flex:0 0 36px!important;width:36px!important;min-width:36px!important;height:34px!important;min-height:34px!important;padding:2px!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon,
  .gallery-lightbox.fp-viewer .fp-viewer__dock .fp-viewer__icon svg{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important}
  .gallery-lightbox.fp-viewer .fp-viewer__interval{flex:0 0 82px!important;min-width:82px!important;height:34px!important;padding:0 2px!important}
  .gallery-lightbox.fp-viewer .fp-viewer__interval button{width:23px!important;min-width:23px!important;height:23px!important}
  .gallery-lightbox.fp-viewer .fp-viewer__interval output{min-width:32px!important;font-size:.62rem!important}
  .gallery-lightbox.fp-viewer .fp-viewer__effect{flex:0 0 103px!important;min-width:103px!important;max-width:103px!important;height:34px!important;padding:0 3px!important}
  .gallery-lightbox.fp-viewer .fp-viewer__effect select{height:28px!important;min-height:28px!important;font-size:.58rem!important;padding:3px 19px 3px 5px!important}

  /* Obraz jest zawsze osobną, centrowaną warstwą niezależną od chrome. */
  .gallery-lightbox.fp-viewer .fp-viewer__stage,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__stage,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__stage{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
    display:block!important;overflow:hidden!important;padding:0!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__figure,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__figure,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__figure{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
    margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;
    transform:none!important;translate:0!important;
  }
  .gallery-lightbox.fp-viewer .fp-viewer__image,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__image,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__image{
    position:static!important;display:block!important;flex:0 1 auto!important;margin:auto!important;
    width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:50% 50%!important;
    inset:auto!important;transform-origin:center center!important;
  }
}

/* Landscape telefonu korzysta z dokładnie tego samego centrum obrazu/docka. */
@media(max-width:1160px) and (orientation:landscape) and (max-height:560px){
  .gallery-lightbox.fp-viewer .fp-viewer__nav{display:none!important}
  .gallery-lightbox.fp-viewer .fp-viewer__figure,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__figure,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__figure{display:flex!important;align-items:center!important;justify-content:center!important;inset:0!important;padding:0!important}
  .gallery-lightbox.fp-viewer .fp-viewer__image,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__image,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__image{margin:auto!important;object-position:50% 50%!important}
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-fullscreen-mode .fp-viewer__dock,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock{left:50%!important;right:auto!important;translate:-50% 0!important}
}

@keyframes fpClientMenuEnter047{from{opacity:0;transform:translateY(-12px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes fpClientMenuExit047{from{opacity:1;transform:translateY(0);filter:blur(0)}to{opacity:0;transform:translateY(-10px);filter:blur(2px)}}
@media(prefers-reduced-motion:reduce){
  .fp-client-header{transition:none!important}
  body.fp-client-menu-open .fp-client-header__nav[data-client-menu-nav]>* ,body.fp-client-menu-closing .fp-client-header__nav[data-client-menu-nav]>*{animation:none!important}
}

/* poprawka-050 — stabilny iOS viewer: brak scroll-sentinel/nudge i brak odsłaniania strony pod obrazem. */
@media(max-width:1160px){
  /* 045 pozwalał przewijać dokument i dokładał sentinel. 050 twardo wyłącza ten mechanizm. */
  html.fp-viewer-ios-immersive-root{overflow:hidden!important}
  body.lightbox-open.fp-viewer-ios-immersive,
  body.lightbox-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  .fp-viewer-ios-scroll-sentinel{display:none!important;height:0!important;min-height:0!important;overflow:hidden!important}

  /* iPhone focus mode: viewer jest jedyną pełnoekranową warstwą aplikacji i nie przesuwa dokumentu. */
  .gallery-lightbox.fp-viewer.is-ios-immersive{
    position:fixed!important;
    inset:auto!important;
    top:var(--fp-viewer-vv-top,0px)!important;
    left:var(--fp-viewer-vv-left,0px)!important;
    width:var(--fp-viewer-vv-width,100vw)!important;
    height:var(--fp-viewer-vv-height,100dvh)!important;
    min-height:0!important;
    margin:0!important;padding:0!important;
    overflow:hidden!important;
    background:#030404!important;
    isolation:isolate!important;
    transform:none!important;translate:0!important;
    touch-action:manipulation!important;
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__stage,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__figure{
    position:absolute!important;inset:0!important;
    width:100%!important;height:100%!important;
    min-width:0!important;min-height:0!important;
    margin:0!important;padding:0!important;
    overflow:hidden!important;
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__figure{
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__image{
    position:static!important;display:block!important;
    width:auto!important;height:auto!important;
    max-width:100%!important;max-height:100%!important;
    margin:auto!important;object-fit:contain!important;object-position:50% 50%!important;
    transform:none!important;translate:0!important;
  }

  /* Chrome viewera nadal jest osobną warstwą względem obrazu. */
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__brand,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__back,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__counter,
  .gallery-lightbox.fp-viewer.is-ios-immersive .fp-viewer__dock{
    position:absolute!important;
  }
}

/* poprawka-051 — iPhone/Safari: naturalne gesty chrome + blokada osi swipe viewera. */
@media (max-width:1160px) and (pointer:coarse){
  /*
   * Pionowy gest i pinch pozostają gestami przeglądarki. JavaScript viewera
   * nie wywołuje preventDefault; poziomy swipe jest rozpoznawany dopiero po
   * zakończeniu gestu i tylko przy wyraźnej dominacji osi X.
   */
  .gallery-lightbox.fp-viewer,
  .gallery-lightbox.fp-viewer .fp-viewer__stage,
  .gallery-lightbox.fp-viewer .fp-viewer__figure,
  .gallery-lightbox.fp-viewer .fp-viewer__image{
    touch-action:pan-y pinch-zoom!important;
  }

  /* Kontrolki zachowują zachowanie przycisków i nie uruchamiają swipe zdjęcia. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer .fp-viewer__dock *,
  .gallery-lightbox.fp-viewer .fp-viewer__back,
  .gallery-lightbox.fp-viewer .fp-viewer__brand{
    touch-action:manipulation!important;
  }
}

/* poprawka-052 — iPhone/Safari: pionowy gest viewera nie może być blokowany przez 050. */
@media (max-width:1160px) and (pointer:coarse){
  /*
   * 050 blokował overflow/overscroll na body, przez co Safari nie dostawało
   * naturalnego pionowego pan po otwarciu viewera. Klasa jest ustawiana tylko
   * na iOS i tylko na czas aktywnego viewera.
   */
  body.lightbox-open.fp-viewer-ios-natural{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior-y:auto!important;
    overscroll-behavior-x:none!important;
    touch-action:pan-y pinch-zoom!important;
  }

  /* Nadrzędny is-ios-immersive z 050 nie może nadpisywać naturalnego pan-y. */
  .gallery-lightbox.fp-viewer,
  .gallery-lightbox.fp-viewer.is-ios-immersive,
  .gallery-lightbox.fp-viewer .fp-viewer__stage,
  .gallery-lightbox.fp-viewer .fp-viewer__figure,
  .gallery-lightbox.fp-viewer .fp-viewer__image{
    touch-action:pan-y pinch-zoom!important;
  }

  /* Chrome viewera pozostaje tap-targetem i nie wchodzi do swipe zdjęcia. */
  .gallery-lightbox.fp-viewer .fp-viewer__dock,
  .gallery-lightbox.fp-viewer .fp-viewer__dock *,
  .gallery-lightbox.fp-viewer .fp-viewer__back,
  .gallery-lightbox.fp-viewer .fp-viewer__brand,
  .gallery-lightbox.fp-viewer .fp-viewer__counter{
    touch-action:manipulation!important;
  }
}

/* poprawka-053 — blokada treści galerii pod viewerem + przycisk powrotu do góry. */

@media (max-width:1160px) and (pointer:coarse){
  body.lightbox-open.fp-viewer-ios-natural{
    overflow:hidden!important;
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    overscroll-behavior:none!important;
  }

  .gallery-lightbox.fp-viewer,
  .gallery-lightbox.fp-viewer.is-ios-immersive,
  .gallery-lightbox.fp-viewer .fp-viewer__stage,
  .gallery-lightbox.fp-viewer .fp-viewer__figure,
  .gallery-lightbox.fp-viewer .fp-viewer__image{
    touch-action:pan-y pinch-zoom!important;
  }
}

.fp-back-to-top{
  position:fixed;
  z-index:780;
  left:22px;
  bottom:24px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(214,176,106,.48);
  border-radius:6px;
  background:rgba(11,12,13,.88);
  color:#d6b06a;
  box-shadow:0 10px 34px rgba(0,0,0,.34);
  opacity:0;
  transform:translateY(10px);
  transition:opacity .25s ease,transform .25s ease,box-shadow .25s ease,color .25s ease;
  cursor:pointer;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
.fp-back-to-top[hidden]{display:none!important}
.fp-back-to-top.is-visible{opacity:1;transform:none}
.fp-back-to-top:hover,.fp-back-to-top:focus-visible{
  color:#fff;
  box-shadow:0 0 10px rgba(199,200,201,.28),0 0 22px rgba(184,135,61,.24);
}
.fp-back-to-top__icon{width:22px;height:22px}
body.lightbox-open .fp-back-to-top,
body.video-lightbox-open .fp-back-to-top{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
@media(max-width:760px){
  .fp-back-to-top{
    left:12px;
    bottom:12px;
    width:42px;
    height:42px;
  }
}
@media(prefers-reduced-motion:reduce){
  .fp-back-to-top{transition:none}
}
