/* Justyna Romaniuk Fotografia – layout 1:1 z projektu zaakceptowanego przez klienta.
   Struktura: Elementor (kontenery + widgety) + klasy .jr-* (ten plik) + jr.js (interakcje). */
:root{
  --jr-black:#0d0c0b;--jr-bg:#f3f2f2;--jr-surface:#eae8e7;--jr-text:#1c1a19;
  --jr-text-inverse:#f3f2f2;--jr-muted:#726d69;--jr-muted-inverse:#8f8c89;
  --jr-accent:#ec3013;--jr-accent-dim:#ae1800;
  --jr-divider:rgba(28,26,25,.35);--jr-divider-inverse:rgba(243,242,242,.24);
  --jr-font:"Archivo",system-ui,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--s20:80px;--s24:96px;
}

/* ---------- reset przeciw stylom motywu Tank ---------- */
body.jr-site{background:var(--jr-bg);color:var(--jr-text);font-family:var(--jr-font);margin:0}
body.jr-site #tt-footer,body.jr-site .bg-noise{display:none!important}
body.jr-site #page-content{padding:0;margin:0}

.jr-page a{color:inherit;text-decoration:none}
.jr-page img{max-width:none;height:auto}
.jr-page h1,.jr-page h2,.jr-page h3,.jr-page p{font-family:var(--jr-font);text-transform:none;letter-spacing:normal}

/* kontenery Elementora: zero domyślnych odstępów, pełna szerokość */
.jr-page .e-con,.jr-page .e-con-inner{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--container-widget-width:100%;box-sizing:border-box;max-width:none}
.jr-page .elementor-widget:not(:last-child){margin-block-end:0}
.jr-page .elementor-widget-container{margin:0;padding:0}
.jr-page .elementor-widget-heading .elementor-heading-title{margin:0;padding:0;font-family:var(--jr-font);display:block;line-height:normal}
.jr-page .elementor-widget-text-editor p{margin:0}
.jr-page .elementor-widget-text-editor{font-family:var(--jr-font)}
.jr-page .elementor-widget-image img{display:block}
.jr-page .jr-accent{color:var(--jr-accent)}
.jr-page .jr-arrow{color:var(--jr-accent)}

/* =========================================================
   HEADER (renderowany z PHP – template global)
   ========================================================= */
.jr-header{position:sticky;top:0;z-index:99990;background:var(--jr-black);border-bottom:1px solid rgba(243,242,242,.28);display:flex;flex-direction:column;width:100%;box-sizing:border-box;font-family:var(--jr-font)}
body.admin-bar .jr-header{top:32px}
@media (max-width:782px){body.admin-bar .jr-header{top:46px}}
.jr-header *{box-sizing:border-box}
.jr-header__bar{display:flex;align-items:center;justify-content:space-between;padding:var(--s4) var(--s6);gap:var(--s4)}
.jr-header__brand{display:flex;align-items:center;gap:var(--s3);text-decoration:none;color:var(--jr-text-inverse)}
.jr-header__brand img{height:40px;width:auto;flex-shrink:0;max-width:none}
.jr-header__brand span{font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.jr-header__right{display:flex;align-items:center;gap:var(--s8)}
.jr-header__lang{display:flex;align-items:center;gap:var(--s2);font-size:12px;letter-spacing:.1em;color:var(--jr-muted-inverse)}
.jr-header__lang .is-cur{color:var(--jr-text-inverse);border-bottom:1px solid var(--jr-accent);padding-bottom:2px}
.jr-header__lang .is-soon{opacity:.5}
.jr-header__toggle{display:flex;align-items:center;gap:var(--s3);background:transparent;border:none;cursor:pointer;padding:0;color:var(--jr-text-inverse);font-family:var(--jr-font)}
.jr-header__toggle:hover,.jr-header__toggle:focus{background:transparent;color:var(--jr-text-inverse)}
.jr-header__toggle-label{font-size:11px;letter-spacing:.15em}
.jr-header__lines{display:flex;flex-direction:column;gap:5px;width:26px}
.jr-header__lines i{display:block;height:1px;background:var(--jr-text-inverse);transition:all .2s;width:100%}
.jr-header__lines i:first-child{width:65%}
.jr-header__lines i:last-child{width:40%}
.jr-header.is-open .jr-header__lines i{width:100%}
.jr-nav{display:none;background:var(--jr-black);border-top:1px solid var(--jr-divider-inverse)}
.jr-header.is-open .jr-nav{display:block}
.jr-nav__inner{display:flex;justify-content:space-between;gap:var(--s24);padding:var(--s10) var(--s6) var(--s16);max-width:1400px;margin:0 auto}
.jr-nav__list{display:flex;flex-direction:column;gap:var(--s6)}
.jr-nav__item{display:flex;flex-direction:column;gap:var(--s3)}
.jr-nav__main{display:flex;align-items:baseline;gap:var(--s4);text-decoration:none;color:var(--jr-text-inverse);font-weight:800;font-size:44px;letter-spacing:-.01em;line-height:1.2}
.jr-nav__main small{font-size:14px;font-weight:400;color:var(--jr-accent)}
.jr-nav__sub{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s6);padding-left:calc(14px + var(--s4))}
.jr-nav__sub a{text-decoration:none;color:var(--jr-muted-inverse);font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.jr-nav__sub a:hover{color:var(--jr-accent)}
.jr-nav__meta{display:flex;flex-direction:column;gap:var(--s4);font-size:12px;color:var(--jr-muted-inverse);letter-spacing:.05em;min-width:180px;text-align:right}
.jr-nav__meta .is-hi{color:var(--jr-text-inverse)}
.jr-nav__corner{width:44px;height:44px;border:1px solid var(--jr-divider-inverse);align-self:flex-end;position:relative;margin-top:var(--s4)}
.jr-nav__corner:before,.jr-nav__corner:after{content:"";position:absolute;background:var(--jr-accent)}
.jr-nav__corner:before{top:-1px;left:-1px;width:8px;height:1px;box-shadow:0 0 0 0 transparent}
.jr-nav__corner:after{bottom:-1px;right:-1px;width:8px;height:1px}
.jr-nav__corner i{position:absolute;width:1px;height:8px;background:var(--jr-accent)}
.jr-nav__corner i:nth-child(1){top:-1px;left:-1px}
.jr-nav__corner i:nth-child(2){bottom:-1px;right:-1px}
body.jr-site .jr-header a,body.jr-site .jr-header a:hover,body.jr-site .jr-header .jr-header__brand span{color:var(--jr-text-inverse)}
body.jr-site .jr-header .jr-nav__sub a{color:var(--jr-muted-inverse)}
body.jr-site .jr-header .jr-nav__sub a:hover{color:var(--jr-accent)}
body.jr-site .jr-header .jr-nav__main small{color:var(--jr-accent)}
@media (max-width:900px){.jr-header__lang,.jr-nav__meta{display:none}}
@media (max-width:640px){.jr-nav__inner{flex-direction:column}.jr-nav__main{font-size:32px}}

/* =========================================================
   HERO
   ========================================================= */
@keyframes jrFlicker{0%{opacity:1;transform:translateX(0)}10%{opacity:.6;transform:translateX(-2px)}20%{opacity:1;transform:translateX(1px)}30%{opacity:.7;transform:translateX(-1px)}100%{opacity:1;transform:translateX(0)}}
@keyframes jrLogoZoomIn{0%{transform:scale(1);filter:blur(0)}30%{transform:scale(2.6);filter:blur(26px)}60%{transform:scale(1.15);filter:blur(8px)}100%{transform:scale(1);filter:blur(0)}}
@keyframes jrLogoZoomOut{0%{transform:scale(1.7);filter:blur(18px)}50%{transform:scale(1.25);filter:blur(9px)}100%{transform:scale(1);filter:blur(0)}}
@keyframes jrBigGlitch{
  0%{clip-path:inset(10% 0 70% 0);transform:translateX(0);opacity:.95;background:#fff}
  10%{clip-path:inset(40% 0 20% 0);transform:translateX(22px);opacity:.85;background:var(--jr-accent)}
  20%{clip-path:inset(5% 0 80% 0);transform:translateX(-18px);opacity:.9;background:#000}
  30%{clip-path:inset(60% 0 10% 0);transform:translateX(26px);opacity:.75;background:var(--jr-accent)}
  40%{clip-path:inset(20% 0 55% 0);transform:translateX(-14px);opacity:.9;background:#fff}
  50%{clip-path:inset(45% 0 30% 0);transform:translateX(20px);opacity:.65;background:var(--jr-accent)}
  60%{clip-path:inset(0 0 85% 0);transform:translateX(-24px);opacity:.85;background:#000}
  70%{clip-path:inset(65% 0 5% 0);transform:translateX(16px);opacity:.7;background:var(--jr-accent)}
  80%{clip-path:inset(30% 0 40% 0);transform:translateX(-10px);opacity:.5;background:#fff}
  90%{clip-path:inset(15% 0 60% 0);transform:translateX(8px);opacity:.3;background:var(--jr-accent)}
  100%{opacity:0}
}
@keyframes jrPulseWave{0%{transform:translate(-50%,-50%) scale(1);opacity:.9}100%{transform:translate(-50%,-50%) scale(4.2);opacity:0}}
.jr-page .logo-zoom-in{animation:jrLogoZoomIn .6s cubic-bezier(.2,.7,.25,1) 1}
.jr-page .logo-zoom-out{animation:jrLogoZoomOut .55s cubic-bezier(.2,.7,.25,1) 1}
.jr-page .glitch-sweep-active{animation:jrBigGlitch .55s steps(1) 1}
.jr-page .glitch-sweep-active2{animation:jrBigGlitch .5s steps(1) 1 reverse;animation-delay:.06s}

.jr-page .jr-hero{background:var(--jr-black);color:var(--jr-text-inverse);height:100vh;min-height:560px;display:flex;flex-direction:column;position:relative;overflow:hidden;box-sizing:border-box;width:100%}
.jr-page .jr-hero .jr-hero__bg,.jr-page .jr-hero .jr-hero__photo,.jr-page .jr-hero .jr-hero__video,.jr-page .jr-hero .jr-hero__shade{position:absolute;inset:0;width:100%;height:100%;margin:0}
.jr-page .jr-hero .jr-hero__bg{z-index:0;pointer-events:none}
.jr-page .jr-hero .jr-hero__photo{z-index:1;opacity:0;transition:opacity .6s ease}
.jr-page .jr-hero .jr-hero__video{z-index:2;opacity:0;transition:opacity .6s ease .1s}
.jr-page .jr-hero .jr-hero__shade{z-index:3;opacity:0;transition:opacity .6s ease;pointer-events:none}
.jr-page .jr-hero .jr-hero__bg .elementor-widget-container,.jr-page .jr-hero .jr-hero__photo .elementor-widget-container,.jr-page .jr-hero .jr-hero__video .elementor-widget-container,.jr-page .jr-hero .jr-hero__shade .elementor-widget-container{height:100%;width:100%}
.jr-page .jr-hero .jr-hero__bg img,.jr-page .jr-hero .jr-hero__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.jr-page .jr-hero .jr-hero__video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.jr-page .jr-hero .jr-hero__shade div{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,12,11,.15),rgba(13,12,11,.75))}
.jr-page .jr-hero.is-active .jr-hero__photo,.jr-page .jr-hero.is-active .jr-hero__video,.jr-page .jr-hero.is-active .jr-hero__shade{opacity:1}

.jr-page .jr-hero__cols{flex:1 1 auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--s8);max-width:1600px;width:100%;margin:0 auto;padding:var(--s10) var(--s8);position:relative;z-index:4}
.jr-page .jr-hero__left{flex:0 0 220px;width:220px;display:flex;flex-direction:column;gap:var(--s4);transition:opacity .4s}
.jr-page .jr-hero__words{display:flex;flex-direction:column;gap:2px}
.jr-page .jr-hero__sub{display:flex;flex-direction:column;gap:6px;margin-top:var(--s3)}
.jr-page .jr-hero__rule{display:block;width:40px;height:3px;background:var(--jr-accent)}
.jr-page .hero-word{cursor:default;display:inline-block;transition:transform .25s,color .25s}
.jr-page .hero-word .elementor-heading-title{display:inline-block;transition:transform .25s,color .25s;cursor:default}
.jr-page .hero-word.jr-w-lg .elementor-heading-title{font-weight:800;font-size:24px;letter-spacing:.06em;line-height:1.3;color:var(--jr-text-inverse)}
.jr-page .hero-word.jr-w-sm .elementor-heading-title{font-weight:400;font-size:13px;letter-spacing:.14em;line-height:normal;color:var(--jr-muted-inverse)}
.jr-page .hero-word:hover .elementor-heading-title{color:var(--jr-accent);transform:translateX(6px)}
.jr-page .jr-hero__center{flex:1 1 0;display:flex;justify-content:center;min-width:0}
.jr-page .jr-logo-stage{position:relative;display:flex;align-items:center;justify-content:center;height:56vh;max-width:100%}
.jr-page .jr-logo-stage img{height:min(56vh,36vw);width:auto;max-width:100%;filter:blur(0);opacity:1;transition:opacity .2s ease;display:block}
.jr-page .jr-hero.is-active .jr-logo-stage img{opacity:0}
.jr-page .logo-ghost{position:absolute;inset:0;margin:auto;height:min(56vh,36vw);width:auto;max-width:100%;-webkit-mask-image:var(--logo-mask);mask-image:var(--logo-mask);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;mix-blend-mode:screen;opacity:0;pointer-events:none}
.jr-page .logo-ghost--red{background:var(--jr-accent)}
.jr-page .logo-ghost--cyan{background:#2fe0ff}
.jr-page .logo-ghost--noise{background:#e9e6e2}
.jr-page .jr-hero__right{flex:0 0 150px;width:150px;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s10)}
.jr-page .jr-hero__exif{display:flex;flex-direction:column;align-items:flex-end;gap:3px;transition:opacity .4s}
.jr-page .jr-hero__exif .elementor-heading-title{font-size:12px;letter-spacing:.1em;color:var(--jr-muted-inverse);font-weight:400;line-height:normal}
.jr-page .jr-hero.is-active .jr-hero__left,.jr-page .jr-hero.is-active .jr-hero__exif,.jr-page .jr-hero.is-active .jr-hero__scroll{opacity:0}
.jr-page .jr-hero__scroll{display:flex;flex-direction:column;align-items:center;gap:var(--s2);padding-bottom:var(--s8);position:relative;z-index:4;transition:opacity .4s}
.jr-page .jr-hero__scroll .elementor-heading-title{font-size:11px;letter-spacing:.2em;color:var(--jr-muted-inverse);font-weight:400;line-height:normal}
.jr-page .jr-hero__scroll-line{display:block;width:1px;height:26px;background:var(--jr-divider-inverse)}
/* celownik */
.jr-page .jr-focus{width:60px;height:60px;border-radius:50%;border:1px solid var(--jr-divider-inverse);position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.jr-page .jr-focus>span{position:absolute;display:block}
.jr-page .jr-focus .t,.jr-page .jr-focus .b{left:50%;width:1px;height:12px;background:var(--jr-divider-inverse);transform:translateX(-50%)}
.jr-page .jr-focus .t{top:-10px}.jr-page .jr-focus .b{bottom:-10px}
.jr-page .jr-focus .l,.jr-page .jr-focus .r{top:50%;height:1px;width:12px;background:var(--jr-divider-inverse);transform:translateY(-50%)}
.jr-page .jr-focus .l{left:-10px}.jr-page .jr-focus .r{right:-10px}
.jr-page .jr-focus .frame{inset:-8px;border:1px solid var(--jr-accent);border-radius:50%;opacity:.55;transition:opacity .3s}
.jr-page .jr-focus .pulse{top:50%;left:50%;width:10px;height:10px;border:2px solid var(--jr-accent);border-radius:50%;animation:jrPulseWave 1.4s ease-out infinite}
.jr-page .jr-focus .pulse+.pulse{animation-delay:.7s}
.jr-page .jr-focus .dot{position:static;width:10px;height:10px;border-radius:50%;background:var(--jr-accent);box-shadow:0 0 10px 2px var(--jr-accent);opacity:1;transition:opacity .3s}
.jr-page .jr-hero.is-active .jr-focus .frame{opacity:1}
.jr-page .jr-hero.is-active .jr-focus .pulse{display:none}
.jr-page .jr-hero.is-active .jr-focus .dot{opacity:0}

/* =========================================================
   O MNIE
   ========================================================= */
.jr-page .jr-about{box-sizing:border-box;width:100%;background-position:center;background-repeat:no-repeat;background-size:cover}
.jr-page .jr-about__row{display:flex;flex-direction:row;align-items:center;padding:0 var(--s6);max-width:1600px;margin:0 auto;gap:var(--s8);width:100%}
.jr-page .jr-about__card{flex:0 0 308px;width:308px;display:flex;flex-direction:column;gap:var(--s4);background:rgba(243,242,242,.88);padding:var(--s6)}
.jr-page .jr-about__label .elementor-heading-title{font-size:12px;letter-spacing:.2em;color:var(--jr-muted);font-weight:400;line-height:normal}
.jr-page .jr-about__h .elementor-heading-title{font-weight:800;font-size:26px;line-height:1.25;text-transform:uppercase;letter-spacing:.01em;color:var(--jr-text)}
.jr-page .jr-rule{display:block;width:36px;height:3px;background:var(--jr-accent)}
.jr-page .jr-about__card .elementor-widget-text-editor,.jr-page .jr-about__card .elementor-widget-text-editor p{font-size:14px;line-height:1.7;color:var(--jr-text)}
.jr-page .jr-about__lead .elementor-heading-title{font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--jr-text);line-height:normal;margin-top:var(--s2)}
.jr-page .jr-about__sign .elementor-heading-title{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:22px;color:var(--jr-text);margin-top:var(--s2);line-height:normal}
.jr-page .jr-link{display:inline-flex;align-items:center;gap:var(--s2);font-weight:600;font-size:13px;letter-spacing:.08em;text-decoration:none;color:var(--jr-text);margin-top:var(--s2)}
.jr-page .jr-link .elementor-button{background:transparent;padding:0;border-radius:0;font-family:var(--jr-font);font-weight:600;font-size:13px;letter-spacing:.08em;color:var(--jr-text);line-height:normal;display:inline-flex;gap:var(--s2)}
.jr-page .jr-link .elementor-button:after{content:"→";color:var(--jr-accent)}
.jr-page .jr-link .elementor-button-text{color:inherit}
.jr-page .jr-about__photo{flex:1 1 480px;min-width:0}
.jr-page .jr-about__photo img{width:100%;height:auto;display:block;filter:contrast(1.05)}

/* =========================================================
   KATEGORIE (accordion)
   ========================================================= */
.jr-page .jr-cats{background:var(--jr-black);color:var(--jr-text-inverse);padding:var(--s16) 0 var(--s24);box-sizing:border-box;width:100%}
.jr-page .jr-cats__head{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--s8);padding-left:var(--s6);padding-right:var(--s6);width:100%}
.jr-page .jr-cats__head .elementor-heading-title{font-weight:800;font-size:32px;max-width:680px;line-height:1.3;color:var(--jr-text-inverse)}
.jr-page .jr-cats__spacer{height:var(--s10);width:100%}
.jr-page .cat-strip{display:flex;flex-direction:row;gap:var(--s2);height:64vh;padding:0 var(--s6);box-sizing:border-box;width:100%}
.jr-page .cat-panel{flex:1 1 0%;min-width:0;display:flex;position:relative;overflow:hidden;color:var(--jr-text-inverse);transition:flex-grow .55s cubic-bezier(.2,.7,.2,1);cursor:pointer;width:auto}
.jr-page .cat-panel.is-open{flex-grow:2.6}
.jr-page .cat-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,12,11,0) 40%,rgba(13,12,11,.9) 100%);z-index:1;pointer-events:none}
.jr-page .cat-panel>.elementor-widget{position:static}
.jr-page .cat-panel .cat-img{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.jr-page .cat-panel .cat-img .elementor-widget-container{height:100%}
.jr-page .cat-panel .cat-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.55) contrast(1.1) brightness(.85);transform:scale(1);transition:filter .5s ease,transform .6s ease}
.jr-page .cat-panel.is-open .cat-img img{filter:grayscale(.15) contrast(1.05) brightness(1);transform:scale(1.12)}
.jr-page .cat-panel .cat-label,.jr-page .cat-panel .cat-tag{position:absolute;left:var(--s3);right:var(--s3);z-index:2;opacity:1;transition:opacity .35s ease;pointer-events:none}
.jr-page .cat-panel .cat-label{bottom:calc(22% + 18px)}
.jr-page .cat-panel .cat-tag{bottom:22%}
.jr-page .cat-panel .cat-label .elementor-heading-title{font-weight:800;font-size:16px;letter-spacing:.04em;white-space:normal;text-transform:uppercase;line-height:1.15;color:var(--jr-text-inverse)}
.jr-page .cat-panel .cat-tag .elementor-heading-title{font-size:10.5px;letter-spacing:.1em;color:var(--jr-muted-inverse);white-space:nowrap;text-transform:uppercase;font-weight:400;line-height:normal}
.jr-page .cat-panel .cat-num{position:absolute;bottom:var(--s3);left:var(--s3);z-index:2;opacity:1;transition:opacity .35s ease}
.jr-page .cat-panel .cat-num .elementor-heading-title{font-size:11px;letter-spacing:.1em;color:var(--jr-muted-inverse);font-weight:400;line-height:normal}
.jr-page .cat-panel.is-open .cat-label,.jr-page .cat-panel.is-open .cat-tag,.jr-page .cat-panel.is-open .cat-num{opacity:0}
.jr-page .cat-panel .cat-film{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:0;transition:opacity .35s ease .08s}
.jr-page .cat-panel .cat-film .elementor-widget-container{height:100%}
.jr-page .cat-panel .cat-film img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.jr-page .cat-panel.is-open .cat-film{opacity:.48}
.jr-page .cat-panel .cat-open{position:absolute;bottom:var(--s6);left:var(--s5);z-index:3;display:flex;flex-direction:column;gap:var(--s3);max-width:55%;opacity:0;transition:opacity .35s ease .08s}
.jr-page .cat-panel.is-open .cat-open{opacity:1}
.jr-page .cat-open .cat-headline .elementor-heading-title{font-weight:800;font-size:20px;line-height:1.25;text-transform:uppercase;letter-spacing:.02em;color:var(--jr-text-inverse)}
.jr-page .cat-open .jr-rule{width:32px}
.jr-page .cat-open .jr-see .elementor-button{background:transparent;padding:0;border-radius:0;font-family:var(--jr-font);font-weight:600;font-size:12px;letter-spacing:.1em;color:var(--jr-text-inverse);line-height:normal;display:inline-flex;gap:var(--s2);fill:currentColor}
.jr-page .cat-open .jr-see .elementor-button:after{content:"→";color:var(--jr-accent)}
.jr-page .cat-open .jr-see .elementor-button-text{color:inherit}

/* =========================================================
   CYTAT (zdjęcie + tekst)
   ========================================================= */
.jr-page .jr-quote{position:relative;min-height:70vh;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;box-sizing:border-box;overflow:hidden;width:100%}
.jr-page .jr-quote__img{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.jr-page .jr-quote__img .elementor-widget-container{height:100%}
.jr-page .jr-quote__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.1)}
.jr-page .jr-quote:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,12,11,.85),rgba(13,12,11,0) 55%);z-index:1}
.jr-page .jr-quote__text{position:relative;z-index:2;padding:var(--s16) var(--s6);max-width:900px;width:100%}
.jr-page .jr-quote__text .elementor-heading-title{font-weight:800;color:var(--jr-text-inverse);font-size:30px;line-height:1.3}
.jr-page .jr-quote__exif{position:absolute;top:var(--s6);right:var(--s6);z-index:2}
.jr-page .jr-quote__exif .elementor-heading-title{font-size:11px;letter-spacing:.15em;color:var(--jr-text-inverse);font-weight:400;line-height:normal}

/* =========================================================
   GALERIA
   ========================================================= */
.jr-page .jr-gallery{background:var(--jr-bg);padding:var(--s24) var(--s6);box-sizing:border-box;width:100%}
.jr-page .jr-gallery__inner{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--s10);width:100%}
.jr-page .jr-gallery__head{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:var(--s4);width:100%}
.jr-page .jr-gallery__head .jr-h2 .elementor-heading-title{font-weight:800;font-size:32px;line-height:normal;color:var(--jr-text)}
.jr-page .jr-gallery__head .jr-all .elementor-button{background:transparent;padding:0;border-radius:0;font-family:var(--jr-font);font-weight:600;font-size:14px;letter-spacing:.08em;color:var(--jr-text);line-height:normal}
.jr-page .jr-gallery__head .jr-all .elementor-button:after{content:" →"}
.jr-page .jr-gallery__grid{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--s4);width:100%}
.jr-page .gallery-item{flex:1 1 32%;margin:0;display:flex;flex-direction:column;gap:var(--s2);position:relative;min-width:0;width:auto}
.jr-page .gallery-item.is-wide{flex-basis:48%}
.jr-page .gallery-item__ph{position:relative;overflow:hidden;width:100%}
.jr-page .gallery-item__ph img{width:100%;height:auto;display:block;filter:grayscale(1) contrast(1.1);transition:filter .5s ease}
.jr-page .gallery-item__ph img:hover{filter:grayscale(0) contrast(1)}
.jr-page .gallery-item .g-num{position:absolute;top:var(--s2);left:var(--s2);z-index:1;pointer-events:none}
.jr-page .gallery-item .g-num .elementor-heading-title{font-size:11px;color:var(--jr-text-inverse);background:rgba(13,12,11,.55);padding:1px 5px;font-weight:400;line-height:normal;display:inline-block}
.jr-page .gallery-item .g-cap .elementor-heading-title{font-size:11px;color:var(--jr-muted);letter-spacing:.05em;font-weight:400;line-height:normal}
.jr-page .gallery-item .g-cap .jr-dim{opacity:.6}

/* =========================================================
   STUDIO
   ========================================================= */
.jr-page .jr-studio{background:var(--jr-black);color:var(--jr-text-inverse);padding:var(--s24) var(--s6);box-sizing:border-box;width:100%}
.jr-page .row-split{max-width:1400px;margin:0 auto;display:flex;flex-direction:row;gap:var(--s16);align-items:center;width:100%}
.jr-page .jr-studio__txt{flex:1 1 420px;display:flex;flex-direction:column;gap:var(--s4);min-width:0}
.jr-page .jr-studio__label .elementor-heading-title{font-size:12px;letter-spacing:.2em;color:var(--jr-accent);font-weight:400;line-height:normal}
.jr-page .jr-studio__txt .jr-h2 .elementor-heading-title{font-weight:800;font-size:32px;color:var(--jr-text-inverse);line-height:normal}
.jr-page .jr-studio__txt .elementor-widget-text-editor,.jr-page .jr-studio__txt .elementor-widget-text-editor p{font-size:16px;line-height:1.7;color:var(--jr-muted-inverse);max-width:480px}
.jr-page .jr-studio__txt .jr-more .elementor-button{background:transparent;padding:0;border-radius:0;font-family:var(--jr-font);font-weight:600;font-size:14px;letter-spacing:.08em;color:var(--jr-text-inverse);line-height:normal;margin-top:var(--s2)}
.jr-page .jr-studio__txt .jr-more .elementor-button:after{content:" →"}
.jr-page .jr-studio__img{flex:1 1 380px;min-width:0}
.jr-page .jr-studio__img img{width:100%;height:auto;display:block;filter:grayscale(1) contrast(1.15)}

/* =========================================================
   SEO
   ========================================================= */
.jr-page .jr-seo{background:var(--jr-bg);padding:var(--s24) var(--s6);box-sizing:border-box;width:100%}
.jr-page .seo-grid{max-width:1400px;margin:0 auto;display:flex;flex-direction:row;gap:var(--s10);flex-wrap:wrap;width:100%}
.jr-page .jr-seo__col{flex:1 1 280px;display:flex;flex-direction:column;gap:var(--s3);min-width:0}
.jr-page .jr-seo__col .elementor-heading-title{font-weight:800;font-size:18px;line-height:normal;color:var(--jr-text)}
.jr-page .jr-seo__col .elementor-widget-text-editor,.jr-page .jr-seo__col .elementor-widget-text-editor p{font-size:14px;line-height:1.7;color:var(--jr-muted)}

/* =========================================================
   CTA
   ========================================================= */
.jr-page .jr-cta{background:var(--jr-accent);color:var(--jr-bg);padding:var(--s24) var(--s6);box-sizing:border-box;display:flex;flex-direction:row;justify-content:center;width:100%}
.jr-page .jr-cta__inner{max-width:900px;display:flex;flex-direction:column;gap:var(--s6);align-items:flex-start;width:100%}
.jr-page .jr-cta__inner .jr-h2 .elementor-heading-title{font-weight:800;font-size:40px;line-height:1.1;color:var(--jr-bg)}
.jr-page .jr-cta__inner .elementor-widget-text-editor,.jr-page .jr-cta__inner .elementor-widget-text-editor p{font-size:16px;line-height:1.6;max-width:560px;color:var(--jr-bg)}
.jr-page .jr-cta__btn .elementor-button{display:inline-flex;align-items:center;gap:var(--s3);background:var(--jr-black);color:var(--jr-bg);font-family:var(--jr-font);font-weight:600;font-size:14px;letter-spacing:.08em;padding:var(--s4) var(--s8);border-radius:0;line-height:normal;fill:var(--jr-bg)}
.jr-page .jr-cta__btn .elementor-button:after{content:"→"}
.jr-page .jr-cta__btn .elementor-button:hover{background:var(--jr-black);color:var(--jr-bg)}
.jr-page .jr-cta__btn .elementor-button-text{color:inherit}

/* =========================================================
   FOOTER (PHP)
   ========================================================= */
.jr-footer{background:var(--jr-black);color:var(--jr-text-inverse);width:100%;box-sizing:border-box;position:relative;overflow:hidden;font-family:var(--jr-font)}
.jr-footer *{box-sizing:border-box}
.jr-footer__ring{position:absolute;right:-60px;bottom:-60px;width:280px;height:280px;border:1px solid rgba(243,242,242,.22);border-radius:50%;opacity:.5}
.jr-footer__inner{max-width:1400px;margin:0 auto;padding:var(--s20) var(--s6) var(--s10);position:relative}
.jr-footer__cols{display:flex;justify-content:space-between;gap:var(--s16);flex-wrap:wrap}
.jr-footer__brand{display:flex;flex-direction:column;gap:var(--s4);max-width:340px}
.jr-footer__mark{width:180px;height:180px;display:flex;align-items:center;justify-content:center;position:relative}
.jr-footer__mark img{width:100%;height:100%;object-fit:contain;max-width:none}
.jr-footer__brand p{font-size:14px;line-height:1.6;color:var(--jr-muted-inverse);margin:0}
.jr-footer__links{display:flex;gap:var(--s16);flex-wrap:wrap}
.jr-footer__col{display:flex;flex-direction:column;gap:var(--s3)}
.jr-footer__col h4{font-family:var(--jr-font);font-size:12px;font-weight:400;letter-spacing:.12em;color:var(--jr-muted-inverse);margin:0 0 var(--s2);text-transform:none}
.jr-footer__col a{color:var(--jr-text-inverse);text-decoration:none;font-size:15px}
.jr-footer__col a:hover{color:var(--jr-accent)}
.jr-footer__line{height:1px;background:rgba(243,242,242,.22);margin:var(--s12) 0 var(--s6)}
.jr-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);flex-wrap:wrap}
.jr-footer__bottom span{font-size:12px;color:var(--jr-muted-inverse)}
.jr-footer__bottom span:last-child{font-style:italic}
@media (max-width:900px){.jr-footer__cols{flex-direction:column;gap:var(--s10)}.jr-footer__mark{width:120px;height:120px}}
@media (max-width:640px){.jr-footer__bottom{flex-direction:column;align-items:flex-start;gap:var(--s3)}}

/* =========================================================
   RESPONSIVE (1:1 z prototypu)
   ========================================================= */
@media (max-width:900px){
  .jr-page .row-split,.jr-page .jr-about__row{flex-direction:column}
  .jr-page .jr-about__card{flex:0 0 auto;width:100%}
  .jr-page .cat-strip{flex-wrap:wrap;height:auto}
  .jr-page .cat-panel{flex:1 1 calc(50% - 2px);height:36vh}
  .jr-page .gallery-item{flex-basis:calc(50% - var(--s3))}
  .jr-page .seo-grid{flex-direction:column}
  .jr-page .jr-hero__cols{flex-direction:column;gap:var(--s8);padding-top:var(--s8)}
  .jr-page .jr-hero__left{flex:0 0 auto;width:auto;align-items:center;text-align:center;order:2}
  .jr-page .jr-hero__center{order:1}
  .jr-page .jr-hero__right{flex:0 0 auto;width:auto;align-items:center;order:3}
  .jr-page .jr-hero__right>.jr-hero__exif{flex-direction:row;gap:var(--s4)}
  .jr-page .jr-logo-stage img{height:min(40vh,60vw)}
}
@media (max-width:640px){
  .jr-page .cat-panel{flex-basis:100%;height:42vh}
  .jr-page .gallery-item{flex-basis:100%}
  .jr-page .jr-gallery,.jr-page .jr-studio,.jr-page .jr-seo,.jr-page .jr-quote__text{padding-left:var(--s4);padding-right:var(--s4)}
  .jr-page .jr-quote__text .elementor-heading-title{font-size:28px}
}

/* przesunięcia nakładek "film" per panel (z prototypu) */
.jr-page .cat-p1 .cat-film{transform:translate(140px,-16px)}
.jr-page .cat-p2 .cat-film{transform:translate(-14px,10px)}
.jr-page .cat-p3 .cat-film{transform:translate(10px,-8px)}
.jr-page .cat-p4 .cat-film{transform:translate(140px,14px)}
.jr-page .cat-p5 .cat-film{transform:translate(14px,-10px)}
.jr-page .cat-p6 .cat-film{transform:translate(-10px,8px)}

/* ---------- typografia: równe łamanie wierszy (bez sierot typu "NA" w osobnej linii) ---------- */
.jr-page h1,.jr-page h2,.jr-page h3,.jr-page .elementor-heading-title,.jr-nav__main,.jr-footer__col h4{text-wrap:balance}
.jr-page p,.jr-page .elementor-widget-text-editor,.jr-footer__brand p{text-wrap:pretty}
@media (min-width:901px){
  .jr-page .jr-about__card{flex:0 0 380px;width:380px}
}
.jr-page .jr-about__h .elementor-heading-title{font-size:24px;line-height:1.25}

/* panele kategorii: szerszy blok tekstu w stanie otwartym (bez wyrazów w osobnych liniach) */
.jr-page .cat-panel .cat-open{max-width:calc(100% - var(--s5) - var(--s4))}
.jr-page .cat-open .cat-headline .elementor-heading-title{text-wrap:balance}
@media (max-width:640px){.jr-page .jr-about__h .elementor-heading-title{font-size:22px}}

/* podpis odręczny (Alex Brush – najbliższy charakterem logotypowi "jr") */
.jr-page .jr-about__sign .elementor-heading-title{font-family:"Alex Brush","Brush Script MT",cursive;font-style:normal;font-weight:400;font-size:42px;line-height:1.1;letter-spacing:0;color:var(--jr-text);margin-top:var(--s1);transform:rotate(-2deg);transform-origin:left center;display:inline-block;padding:var(--s1) 0}
@media (max-width:640px){.jr-page .jr-about__sign .elementor-heading-title{font-size:36px}}

/* strzałki „→” w linkach tekstowych: w jednej linii z napisem */
.jr-page .jr-gallery__head .jr-all .elementor-button,.jr-page .jr-studio__txt .jr-more .elementor-button{display:inline-flex;align-items:center;gap:var(--s2);width:auto}
.jr-page .jr-gallery__head .jr-all .elementor-button:after,.jr-page .jr-studio__txt .jr-more .elementor-button:after{content:"→";color:var(--jr-accent);margin:0}
.jr-page .jr-ph-back .elementor-button,.jr-page .jr-link .elementor-button{white-space:nowrap}

/* ---------- nagłówek: monogram jr bez tablicy, wyższy pasek ---------- */
.jr-header{overflow:visible}
body.jr-site .jr-header .jr-header__bar{padding:var(--s3) var(--s6);min-height:88px}
body.jr-site .jr-header .jr-header__brand{display:flex;align-items:center}
body.jr-site .jr-header .jr-header__brand img{height:64px;width:auto;max-width:none;display:block}
@media (max-width:640px){
  body.jr-site .jr-header .jr-header__bar{padding:var(--s2) var(--s4);min-height:72px}
  body.jr-site .jr-header .jr-header__brand img{height:52px}
}

/* ---------- ozdobniki HUD (jak w hero): sekcja STUDIO i stopka ---------- */
.jr-page .jr-studio{position:relative;overflow:hidden}
.jr-page .jr-studio:before{content:"";position:absolute;inset:0;background:url("https://fotojustyn.joost.pl/wp-content/themes/tank-child/jr-assets/hud-bg.webp") center/cover no-repeat;opacity:.8;pointer-events:none;z-index:0}
.jr-page .jr-studio>*{position:relative;z-index:1}
.jr-footer:before{content:"";position:absolute;inset:0;background:url("https://fotojustyn.joost.pl/wp-content/themes/tank-child/jr-assets/hud-bg.webp") center/cover no-repeat;opacity:.8;transform:scaleX(-1);pointer-events:none;z-index:0}
.jr-footer__ring{z-index:1}
.jr-footer__inner{z-index:1}

/* stopka: tekstura HUD nie wchodzi pod logo i opis (lewa kolumna zasłonięta czernią, płynne przejście w prawo) */
.jr-footer:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#0d0c0b 0,#0d0c0b 30%,rgba(13,12,11,.85) 38%,rgba(13,12,11,0) 54%)}
.jr-footer:before{opacity:.7}
@media (max-width:900px){.jr-footer:after{background:linear-gradient(0deg,rgba(13,12,11,.9) 0,rgba(13,12,11,.5) 100%)}}

/* "Wybrane kadry": kolor przygaszony zamiast czerni i bieli, na hover oryginalny kolor */
.jr-page .gallery-item__ph img{filter:saturate(.58) contrast(1.03) brightness(.95);transition:filter .5s ease,transform .6s ease}
.jr-page .gallery-item__ph img:hover{filter:none;transform:scale(1.03)}
@media (hover:none){.jr-page .gallery-item__ph img{filter:none}}

/* =========================================================
   RUCH AMBIENTOWY: kursor Tank, przewijanie kinetyczne (Smooth Scrollbar), delikatny dryf tła
   ========================================================= */
/* nagłówek poza przewijanym kontenerem Tanka: stały na górze, treść zaczyna się pod nim */
body:not(.is-mobile).tt-smooth-scroll .jr-header{position:fixed;top:0;left:0;right:0;width:100%}
body:not(.is-mobile).tt-smooth-scroll.admin-bar .jr-header{top:32px}
body:not(.is-mobile).tt-smooth-scroll #content-wrap{padding-top:88px}
body:not(.is-mobile).tt-smooth-scroll.admin-bar #scroll-container{height:calc(100vh - 32px)}
@media (max-width:640px){body:not(.is-mobile).tt-smooth-scroll #content-wrap{padding-top:72px}}
body.tt-smooth-scroll .scrollbar-thumb{background:var(--jr-accent)!important;opacity:.6}
body.tt-smooth-scroll .scrollbar-track{width:6px!important}

/* kursor Tank w kolorze akcentu */
body.jr-site #ball{border-color:var(--jr-accent)!important}
body.jr-site #magic-cursor{z-index:2147483000}

/* subtelny dryf tekstur (ambient) */
@keyframes jrDrift{0%{transform:scale(1.03) translate3d(0,0,0)}50%{transform:scale(1.08) translate3d(-1.2%,.9%,0)}100%{transform:scale(1.03) translate3d(0,0,0)}}
.jr-page .jr-hero__bg,.jr-page .jr-ph-hero__texture{animation:jrDrift 80s ease-in-out infinite;will-change:transform}
.jr-page .jr-studio:before{animation:jrDrift 90s ease-in-out infinite;will-change:transform}
@media (prefers-reduced-motion:reduce){
  .jr-page .jr-hero__bg,.jr-page .jr-ph-hero__texture,.jr-page .jr-studio:before{animation:none}
}

/* przełącznik języka PL / EN */
.jr-header__lang a{font-size:12px;letter-spacing:.1em;text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent;transition:color .25s}
body.jr-site .jr-header .jr-header__lang a{color:var(--jr-muted-inverse)}
body.jr-site .jr-header .jr-header__lang a:hover{color:var(--jr-text-inverse)}
body.jr-site .jr-header .jr-header__lang a.is-cur{color:var(--jr-text-inverse);border-bottom-color:var(--jr-accent)}

/* =========================================================
   NAGŁÓWEK: przezroczysty na górze (z delikatnym gradientem dla czytelności), niski i pełny po przewinięciu
   ========================================================= */
body.jr-site .jr-header{position:fixed;top:0;left:0;right:0;width:100%;background:linear-gradient(180deg,rgba(13,12,11,.74) 0,rgba(13,12,11,.34) 58%,rgba(13,12,11,0) 100%);border-bottom:1px solid transparent;transition:background .35s ease,border-color .35s ease,-webkit-backdrop-filter .35s ease,backdrop-filter .35s ease}
body.jr-site.admin-bar .jr-header{top:32px}
@media (max-width:782px){body.jr-site.admin-bar .jr-header{top:46px}}
body.jr-site .jr-header .jr-header__bar{transition:padding .3s ease,min-height .3s ease}
body.jr-site .jr-header .jr-header__brand img{transition:height .3s ease}
body.jr-site .jr-header.is-scrolled,body.jr-site .jr-header.is-open{background:rgba(13,12,11,.94);border-bottom-color:rgba(243,242,242,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
body.jr-site .jr-header.is-scrolled .jr-header__bar{padding-top:var(--s2);padding-bottom:var(--s2);min-height:58px}
body.jr-site .jr-header.is-scrolled .jr-header__brand img{height:42px}
/* treść zaczyna się od góry (hero pod przezroczystym nagłówkiem); strony bez Elementora dostają odstęp */
body.jr-site.elementor-page #content-wrap{padding-top:0!important}
body.jr-site:not(.elementor-page) #content-wrap{padding-top:96px!important}
.jr-page .jr-ph-hero{min-height:92vh}
@media (max-width:640px){body.jr-site .jr-header.is-scrolled .jr-header__brand img{height:36px}}

/* =========================================================
   HERO NA TELEFONIE: celownik ("magiczny punkt") musi być widoczny i klikalny
   ========================================================= */
@media (max-width:900px){
  .jr-page .jr-hero{height:100vh;height:100svh;min-height:600px}
  .jr-page .jr-hero .jr-hero__cols{flex-direction:column;justify-content:center;align-items:center;gap:var(--s5);padding:88px var(--s4) var(--s4)}
  .jr-page .jr-hero__center{order:1;flex:0 0 auto;width:100%}
  .jr-page .jr-logo-stage{height:auto}
  .jr-page .jr-logo-stage img,.jr-page .logo-ghost{height:min(32vh,58vw)}
  .jr-page .jr-hero__right{order:2;flex:0 0 auto;width:auto;flex-direction:column;align-items:center;gap:var(--s4)}
  .jr-page .jr-focus{width:76px;height:76px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .jr-page .jr-focus .frame{inset:-12px}
  .jr-page .jr-hero__exif{flex-direction:row;align-items:center;gap:var(--s4)}
  .jr-page .jr-hero__left{order:3;flex:0 0 auto;width:auto;align-items:center;text-align:center}
  .jr-page .jr-hero__words{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:var(--s3)}
  .jr-page .jr-hero__sub{display:none}
  .jr-page .hero-word.jr-w-lg .elementor-heading-title{font-size:15px}
}

/* =========================================================
   MOBILE: flex-basis w układzie kolumnowym działa jak wysokość (puste miejsca) + kadr zdjęcia "O mnie"
   ========================================================= */
@media (max-width:900px){
  .jr-page .jr-seo__col,.jr-page .jr-studio__txt,.jr-page .jr-studio__img,.jr-page .jr-about__photo{flex:0 0 auto;width:100%}
  .jr-page .seo-grid{gap:var(--s8)}
  .jr-page .jr-seo{padding-top:var(--s16);padding-bottom:var(--s16)}
  .jr-page .jr-studio{padding-top:var(--s16);padding-bottom:var(--s16)}
  .jr-page .row-split{gap:var(--s8);align-items:stretch}
  /* zdjęcie w sekcji "O mnie": kadr pionowy, wypełnia przestrzeń pod kartą, twarz w kadrze */
  .jr-page .jr-about__row{padding-bottom:var(--s6);align-items:stretch;gap:var(--s5)}
  .jr-page .jr-about__photo{align-self:stretch}
  .jr-page .jr-about__photo img{width:100%;height:min(120vw,560px);object-fit:cover;object-position:56% 28%;display:block}
}

/* =========================================================
   NAGŁÓWEK po przewinięciu: bez białej linii, ciemny pasek z płynnym zanikaniem w dół
   ========================================================= */
body.jr-site .jr-header,body.jr-site .jr-header.is-scrolled,body.jr-site .jr-header.is-open{border-bottom:0}
body.jr-site .jr-header.is-scrolled,body.jr-site .jr-header.is-open{background:rgba(13,12,11,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body.jr-site .jr-header:after{content:"";position:absolute;left:0;right:0;top:100%;height:46px;pointer-events:none;background:linear-gradient(180deg,rgba(13,12,11,.9) 0,rgba(13,12,11,.55) 38%,rgba(13,12,11,0) 100%);opacity:0;transition:opacity .35s ease}
body.jr-site .jr-header.is-scrolled:after{opacity:1}
body.jr-site .jr-header.is-open:after{opacity:0}
body.jr-site .jr-header .jr-nav{border-top:0}

/* =========================================================
   HERO NA TELEFONIE: celownik w prawym dolnym rogu (nie przesłania logo ani filmu)
   ========================================================= */
@media (max-width:900px){
  .jr-page .jr-hero .jr-hero__right{position:absolute;right:var(--s5);bottom:var(--s5);order:0;align-items:flex-end;gap:var(--s3);z-index:5}
  .jr-page .jr-focus{width:64px;height:64px}
  .jr-page .jr-hero__exif{flex-direction:column;align-items:flex-end;gap:2px}
  .jr-page .jr-hero .jr-hero__cols{padding-bottom:var(--s20)}
  .jr-page .jr-hero__scroll{padding-bottom:var(--s5)}
}

/* dotyk: po włączeniu filmu celownik znika (powrót: dotknięcie w dowolnym miejscu hero) */
@media (hover:none){
  .jr-page .jr-focus{transition:opacity .3s ease}
  .jr-page .jr-hero.is-active .jr-focus{opacity:0;pointer-events:none}
}

/* przełącznik PL / EN też na telefonie */
@media (max-width:900px){
  body.jr-site .jr-header .jr-header__lang{display:flex;gap:var(--s2)}
  body.jr-site .jr-header .jr-header__right{gap:var(--s5)}
  body.jr-site .jr-header .jr-header__lang a{padding:var(--s2) 2px;min-width:22px;text-align:center}
}
@media (max-width:380px){body.jr-site .jr-header .jr-header__right{gap:var(--s3)}}

@media (max-width:900px){.jr-page .jr-hero .jr-logo-stage,.jr-page .jr-hero .jr-hero__left{transform:none!important}}

/* =========================================================
   HERO NA TELEFONIE: powrót z filmu (zoom logo) nie może nachodzić na napisy
   ========================================================= */
@keyframes jrLogoZoomInM{0%{transform:scale(1);filter:blur(0)}35%{transform:scale(1.35);filter:blur(14px)}65%{transform:scale(1.08);filter:blur(5px)}100%{transform:scale(1);filter:blur(0)}}
@keyframes jrLogoZoomOutM{0%{transform:scale(1.22);filter:blur(10px)}100%{transform:scale(1);filter:blur(0)}}
@media (max-width:900px){
  .jr-page .logo-zoom-in{animation-name:jrLogoZoomInM}
  .jr-page .logo-zoom-out{animation-name:jrLogoZoomOutM}
  .jr-page .jr-logo-stage{overflow:visible;position:relative;z-index:1}
  .jr-page .jr-hero__left,.jr-page .jr-hero__right{position:relative;z-index:2}
  /* po powrocie z filmu napisy pojawiają się dopiero gdy logo się uspokoi */
  .jr-page .jr-hero:not(.is-active) .jr-hero__left,.jr-page .jr-hero:not(.is-active) .jr-hero__exif{transition:opacity .45s ease .6s}
}

/* =========================================================
   LIGHTBOX (Elementor): nad nagłówkiem, żeby przycisk zamknięcia był klikalny
   ========================================================= */
.dialog-widget.elementor-lightbox,.elementor-lightbox,.dialog-lightbox-widget{z-index:2147482000!important}
.elementor-lightbox .dialog-lightbox-close-button{z-index:5;cursor:pointer;opacity:1;pointer-events:auto;top:max(16px,env(safe-area-inset-top))}
body.admin-bar .elementor-lightbox .dialog-lightbox-close-button{top:max(16px,env(safe-area-inset-top))}

/* =========================================================
   PRZEŁĄCZNIK TRYBU JASNY / CIEMNY
   ========================================================= */
body.jr-site .jr-header .jr-theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin:0;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0;color:var(--jr-text-inverse);cursor:pointer;transition:color .25s,transform .35s}
body.jr-site .jr-header .jr-theme-toggle:hover{color:var(--jr-accent);transform:rotate(18deg)}
body.jr-site .jr-header .jr-theme-toggle .i-moon{display:none}
html.jr-light body.jr-site .jr-header .jr-theme-toggle .i-sun{display:none}
html.jr-light body.jr-site .jr-header .jr-theme-toggle .i-moon{display:block}
body.jr-site .jr-header .jr-header__right{gap:var(--s4)}
@media (min-width:901px){body.jr-site .jr-header .jr-header__right{gap:var(--s6)}}

/* =========================================================
   TRYB JASNY (czerwone akcenty i ozdobniki zostają)
   ========================================================= */
html.jr-light{
  --jr-black:#ece9e6;--jr-bg:#f8f7f5;--jr-surface:#e3dfdb;
  --jr-text-inverse:#1c1a19;--jr-muted-inverse:#5f5a56;--jr-muted:#5f5a56;
  --jr-divider-inverse:rgba(28,26,25,.22);color-scheme:light;
}
/* elementy leżące na zdjęciach z ciemnymi gradientami zachowują jasny tekst */
html.jr-light .jr-quote,html.jr-light .cat-panel,html.jr-light .jr-pf-card,html.jr-light .jr-hero.is-active{
  --jr-text-inverse:#f3f2f2;--jr-muted-inverse:#bfbab6;--jr-bg:#f3f2f2;--jr-divider-inverse:rgba(243,242,242,.3);
}
html.jr-light .jr-ph-grid .gallery-icon:before,html.jr-light .gallery-item .g-num .elementor-heading-title{color:#f3f2f2}

/* nagłówek */
html.jr-light body.jr-site .jr-header{background:linear-gradient(180deg,rgba(248,247,245,.94) 0,rgba(248,247,245,.55) 58%,rgba(248,247,245,0) 100%)}
html.jr-light body.jr-site .jr-header.is-scrolled,html.jr-light body.jr-site .jr-header.is-open{background:rgba(248,247,245,.94)}
html.jr-light body.jr-site .jr-header:after{background:linear-gradient(180deg,rgba(248,247,245,.94) 0,rgba(248,247,245,.55) 38%,rgba(248,247,245,0) 100%)}
html.jr-light .jr-header__brand img,html.jr-light .jr-footer__mark img{filter:invert(1)}
html.jr-light .jr-logo-stage{filter:invert(1)}

/* tekstury HUD: odwrócone (ciemne linie na jasnym tle) */
html.jr-light .jr-hero__bg img,html.jr-light .jr-ph-hero__texture img{filter:invert(1);mix-blend-mode:multiply;opacity:.9}
html.jr-light .jr-studio:before,html.jr-light .jr-footer:before{filter:invert(1);mix-blend-mode:multiply;opacity:.55}
html.jr-light .jr-ph-hero__film{mix-blend-mode:multiply;opacity:.1}
html.jr-light .jr-ph-hero:after{background:linear-gradient(0deg,rgba(248,247,245,.85),rgba(248,247,245,0) 45%)}
html.jr-light .jr-am-hero:before{background:linear-gradient(90deg,rgba(248,247,245,.96) 0,rgba(248,247,245,.76) 38%,rgba(248,247,245,.08) 78%)}
@media (max-width:900px){html.jr-light .jr-am-hero:before{background:linear-gradient(0deg,rgba(248,247,245,.94) 0,rgba(248,247,245,.62) 60%,rgba(248,247,245,.3) 100%)}}
html.jr-light .jr-ph-hero__photo img{filter:grayscale(1) contrast(1.05) brightness(1.05)}

/* stopka */
html.jr-light .jr-footer:after{background:linear-gradient(90deg,#ece9e6 0,#ece9e6 30%,rgba(236,233,230,.85) 38%,rgba(236,233,230,0) 54%)}
html.jr-light .jr-footer__line{background:rgba(28,26,25,.18)}
html.jr-light .jr-footer__ring{border-color:rgba(28,26,25,.2)}
@media (max-width:900px){html.jr-light .jr-footer:after{background:linear-gradient(0deg,rgba(236,233,230,.9) 0,rgba(236,233,230,.5) 100%)}}

/* przyciski i formularz */
html.jr-light .jr-cta__btn .elementor-button,html.jr-light .jr-cta__btn .elementor-button:hover{background:#1c1a19;color:#f8f7f5}
html.jr-light body.jr-site .jr-form input[type=text],html.jr-light body.jr-site .jr-form input[type=email],html.jr-light body.jr-site .jr-form input[type=tel],html.jr-light body.jr-site .jr-form input[type=date],html.jr-light body.jr-site .jr-form select,html.jr-light body.jr-site .jr-form textarea{border-bottom-color:rgba(28,26,25,.3)!important}
html.jr-light body.jr-site .jr-form ::placeholder{color:rgba(28,26,25,.42)}
html.jr-light .jr-form .wpcf7-radio .wpcf7-list-item-label{border-color:rgba(28,26,25,.3)}
html.jr-light .jr-form .wpcf7-radio input:checked+.wpcf7-list-item-label{color:#f8f7f5!important}
html.jr-light .jr-form__consent input[type=checkbox]{border-color:rgba(28,26,25,.5)}
html.jr-light .jr-form select option{background:#f8f7f5;color:#1c1a19}
html.jr-light .jr-form input[type=date]{color-scheme:light}
html.jr-light .jr-ct__row small,html.jr-light .jr-ct__steps li{color:var(--jr-muted-inverse)}

/* subtelne przejście przy przełączaniu */
body.jr-site,body.jr-site .jr-header,body.jr-site .jr-footer,.jr-page section,.jr-page .e-con{transition:background-color .35s ease,color .35s ease}

/* tryb jasny: inwersja zachowuje czerwień (hue-rotate 180° po invert) */
html.jr-light .jr-logo-stage{filter:invert(1) hue-rotate(180deg)}
html.jr-light .jr-hero__bg img,html.jr-light .jr-ph-hero__texture img{filter:invert(1) hue-rotate(180deg);mix-blend-mode:multiply;opacity:.9}
html.jr-light .jr-studio:before,html.jr-light .jr-footer:before{filter:invert(1) hue-rotate(180deg);mix-blend-mode:multiply;opacity:.55}

/* lightbox: większy przycisk zamknięcia pod palec */
.elementor-lightbox .dialog-lightbox-close-button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;background:rgba(13,12,11,.55);border-radius:50%;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top))}
.elementor-lightbox .dialog-lightbox-close-button i{font-size:22px;color:#f3f2f2}

/* tryb jasny: zdjęcia w nagłówkach (hero podstron i wpisów) w kolorze */
html.jr-light .jr-ph-hero__photo img{filter:saturate(1.03) contrast(1.02) brightness(1.02)}

/* ikony trybu po bokach logo w hero (księżyc po lewej = ciemny, słońce po prawej = jasny) */
.jr-page .jr-hero-row{display:flex;align-items:center;justify-content:center;gap:clamp(12px,3vw,56px);width:100%}
.jr-page .jr-hero-row .jr-logo-stage{flex:0 1 auto;min-width:0}
.jr-page .jr-hero-mode{flex:0 0 auto;width:52px;height:52px;border-radius:50%;border:1px solid var(--jr-divider-inverse);background:transparent;color:var(--jr-muted-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;position:relative;z-index:5;transition:color .25s,border-color .25s,box-shadow .25s,opacity .4s,transform .3s}
.jr-page .jr-hero-mode:hover{color:var(--jr-accent);border-color:var(--jr-accent);transform:scale(1.06)}
.jr-page .jr-hero-mode.is-on{color:var(--jr-accent);border-color:var(--jr-accent);box-shadow:0 0 0 5px rgba(236,48,19,.12)}
.jr-page .jr-hero.is-active .jr-hero-mode{opacity:0;pointer-events:none}
@media (max-width:900px){.jr-page .jr-hero-mode{width:40px;height:40px}.jr-page .jr-hero-mode svg{width:19px;height:19px}.jr-page .jr-hero-row{gap:10px}}

/* lightbox: zdjęcia poziome mieszczą się w ekranie (globalne .jr-page img{max-width:none} psuło ich skalowanie) */
.elementor-lightbox .swiper-slide img,.elementor-lightbox img.elementor-lightbox-image,.dialog-lightbox-widget img{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain;margin:0 auto}
.elementor-lightbox .swiper-zoom-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.elementor-lightbox .elementor-slideshow__slide,.elementor-lightbox .swiper-slide{overflow:hidden}

/* cytat z dużym zdjęciem (O mnie): wyższa sekcja i kadr od góry, żeby widoczne były wszystkie osoby */
.jr-page .jr-quote--tall{min-height:min(92vh,880px)}
.jr-page .jr-quote--tall .jr-quote__img img{object-position:50% 8%}
@media (max-width:900px){
  .jr-page .jr-quote--tall{min-height:0;aspect-ratio:4/3.4}
  .jr-page .jr-quote--tall .jr-quote__img img{object-position:45% 10%}
  .jr-page .jr-quote--tall .jr-quote__text{padding:var(--s6) var(--s4)}
  .jr-page .jr-quote--tall .jr-quote__text .elementor-heading-title{font-size:22px}
}
