:root{
  --blue:#1478ff;--blue-dark:#075ecf;--ink:#0a0a0c;--muted:#666a73;--line:#e6e8ec;--paper:#fff;--soft:#f5f7fa;--max:1200px;
  --shadow:0 26px 70px rgba(13,24,43,.14);--radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}button,a{font:inherit}button{color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:999;background:#000;color:#fff;padding:12px 16px;border-radius:8px}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(10,10,12,.06)}.header-inner{height:82px;display:flex;align-items:center;gap:32px}.brand{display:inline-flex;flex-direction:column;text-decoration:none;color:var(--ink);white-space:nowrap}.brand-main{font-size:21px;font-weight:850;letter-spacing:-.7px;line-height:1}.brand-main i{font-style:normal;color:#a8abb2;font-weight:400}.brand-main b{color:var(--blue);font-weight:700}.brand-sub{font-size:9px;color:#9a9da5;margin-top:5px;letter-spacing:.2px}.site-nav{display:flex;gap:30px;margin-left:auto}.site-nav a,.footer-inner>a{color:#26282d;text-decoration:none;font-size:14px;position:relative}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--blue);transition:.25s}.site-nav a:hover:after{right:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--blue);color:white;text-decoration:none;border:0;border-radius:6px;padding:15px 20px;font-weight:750;box-shadow:0 10px 25px rgba(20,120,255,.2);transition:.25s}.button:hover{transform:translateY(-2px);background:var(--blue-dark);box-shadow:0 16px 35px rgba(20,120,255,.28)}.button-small{padding:11px 16px;font-size:13px}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;padding:9px}.menu-toggle span{display:block;height:2px;background:#111;margin:7px 0;transition:.25s}
.hero{overflow:hidden;padding:70px 0 55px;background:#fff}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:62px;min-height:620px}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;color:var(--blue);margin-bottom:18px}.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}.hero h1{font-size:clamp(44px,5.2vw,75px);line-height:1.03;letter-spacing:-.055em;margin:0 0 24px}.hero h1 em,.contact-copy h2 em{font-style:normal;color:var(--blue)}.lead{font-size:19px;max-width:600px;color:#585b63}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.text-link{color:#26282d;text-decoration:none;font-weight:700;font-size:14px}.text-link span{color:var(--blue);margin-left:8px}.hero-proof{display:flex;gap:38px;margin-top:50px;padding-top:24px;border-top:1px solid var(--line)}.hero-proof div{display:flex;flex-direction:column;max-width:180px}.hero-proof strong{font-size:22px}.hero-proof span{font-size:12px;color:var(--muted);margin-top:3px}.hero-visual{position:relative;height:620px}.hero-visual img{position:absolute;z-index:3;right:3%;bottom:0;width:82%;height:94%;object-fit:cover;object-position:center 22%;border-radius:240px 240px 18px 18px;filter:grayscale(1);box-shadow:var(--shadow)}.hero-shape{position:absolute;border-radius:50%;background:var(--blue)}.hero-shape-one{width:360px;height:360px;right:-70px;bottom:-90px}.hero-shape-two{width:210px;height:210px;left:6%;top:0;background:#f0f1f4}.floating-note{position:absolute;z-index:5;right:-4%;top:26%;display:grid;gap:12px;background:rgba(255,255,255,.92);border:1px solid rgba(10,10,12,.08);box-shadow:0 18px 45px rgba(0,0,0,.1);padding:18px 22px;border-radius:16px}.floating-note span{font-size:12px;font-weight:700}.floating-note span:before{content:"";display:inline-block;width:7px;height:7px;border:2px solid var(--blue);border-radius:50%;margin-right:10px}
.logo-strip{padding:42px 0 34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-kicker{font-size:12px;color:#8b8e95;text-transform:uppercase;letter-spacing:.18em}.centered{text-align:center}.logos{display:grid;grid-template-columns:repeat(8,1fr);gap:26px;align-items:center;margin-top:28px}.logos img{width:100%;height:64px;object-fit:contain;filter:grayscale(1);opacity:.5;transition:.3s}.logos img:hover{filter:none;opacity:1;transform:scale(1.06)}
.section{padding:120px 0}.about{background:#fff}.about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:74px;align-items:center}.about-photo{position:relative}.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1);border-radius:var(--radius);box-shadow:var(--shadow)}.photo-caption{position:absolute;right:-24px;bottom:26px;background:var(--blue);color:#fff;padding:13px 16px;border-radius:7px;font-size:12px;font-weight:750;transform:rotate(-2deg)}h2{font-size:clamp(34px,4vw,58px);line-height:1.08;letter-spacing:-.045em;margin:0 0 26px}.big-copy{font-size:22px;line-height:1.55;color:#24262a}.about-copy p:not(.big-copy){color:var(--muted);font-size:16px}.skill-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.skill-list span,.tags span{border:1px solid #dfe2e8;background:#fff;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:750}
.services{background:var(--soft)}.section-heading{max-width:790px;margin-bottom:55px}.section-heading p{font-size:18px;color:var(--muted);max-width:720px}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.service-card{background:#fff;border:1px solid var(--line);padding:30px 24px;border-radius:12px;min-height:270px;transition:.28s}.service-card:hover{transform:translateY(-8px);border-color:rgba(20,120,255,.45);box-shadow:0 20px 45px rgba(14,29,52,.09)}.service-icon{font-size:32px;color:var(--blue)}.service-card h3{font-size:18px;margin:28px 0 12px}.service-card p{font-size:13px;color:var(--muted);margin:0}
.portfolio-section{overflow:hidden}.case-list{display:grid;gap:100px}.case-card{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.case-reverse .fan{order:2}.case-reverse .case-copy{order:1}.fan{position:relative;width:min(100%,470px);height:570px;margin:auto;border:0;background:transparent;cursor:pointer;isolation:isolate}.fan img{position:absolute;inset:0;margin:auto;width:78%;height:86%;object-fit:cover;border-radius:18px;box-shadow:0 24px 55px rgba(10,20,35,.2);transition:transform .45s cubic-bezier(.2,.75,.25,1),filter .35s}.fan-back{z-index:1;filter:saturate(.8) brightness(.95)}.fan-left{transform:translate(-12%,3%) rotate(-7deg)}.fan-right{transform:translate(12%,3%) rotate(7deg)}.fan-front{z-index:3;transform:translateY(0)}.fan:hover .fan-left,.case-card:hover .fan-left{transform:translate(-28%,0) rotate(-11deg)}.fan:hover .fan-right,.case-card:hover .fan-right{transform:translate(28%,0) rotate(11deg)}.fan:hover .fan-front,.case-card:hover .fan-front{transform:translateY(-14px) scale(1.02)}.fan:focus-visible{outline:3px solid var(--blue);outline-offset:8px;border-radius:20px}.logo-front{object-fit:contain!important;background:#fff;padding:45px}.landscape-fan .fan-front{object-position:center 28%}.case-no{font-size:12px;color:var(--blue);font-weight:800;letter-spacing:.18em}.case-copy h3{font-size:42px;letter-spacing:-.04em;margin:10px 0 20px}.case-copy p{font-size:18px;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.case-open{border:0;background:transparent;color:var(--blue);font-weight:800;padding:8px 0;cursor:pointer}.case-open:hover{text-decoration:underline}
.principles{background:var(--soft)}.principles-grid{display:grid;grid-template-columns:1fr 110px 1fr;align-items:stretch}.principle-card{padding:48px;border:1px solid var(--line);background:white;min-height:440px}.no-card{border-radius:20px 0 0 20px}.yes-card{border-radius:0 20px 20px 0}.principle-symbol{font-size:38px;font-weight:900}.no-card .principle-symbol{color:#17181b}.yes-card .principle-symbol{color:var(--blue)}.principle-card h2{font-size:26px;margin:10px 0 24px}.principle-card ul{list-style:none;padding:0;margin:0}.principle-card li{padding:11px 0;border-bottom:1px solid var(--line);font-size:14px;color:#555961}.principle-card li:before{content:"×";color:var(--blue);font-weight:900;margin-right:12px}.yes-card li:before{content:"✓"}.principle-divider{display:grid;place-items:center;position:relative}.principle-divider:before{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--line)}.principle-divider span{z-index:1;background:white;border:1px solid var(--line);border-radius:50%;width:78px;height:78px;display:grid;place-items:center;font-size:12px;color:var(--muted);box-shadow:0 10px 25px rgba(0,0,0,.08)}
.photography{background:#fff}.photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 300px;gap:16px}.photo-tile{position:relative;border:0;padding:0;overflow:hidden;border-radius:18px;background:#111;cursor:pointer}.photo-large{grid-row:1/3}.photo-tile:nth-child(4){grid-column:2/4}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:.45s}.photo-tile:hover img{transform:scale(1.055)}.photo-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.7))}.photo-tile span{position:absolute;z-index:2;left:22px;bottom:18px;color:white;font-weight:800;font-size:15px}
.after-hours{background:#0d0e11;color:white}.after-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.after-photo{position:relative}.after-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:22px}.after-photo span{position:absolute;left:16px;right:16px;bottom:16px;padding:14px 16px;border-radius:10px;background:rgba(10,10,12,.72);backdrop-filter:blur(10px);font-size:12px}.after-copy p{color:#aeb2bb;font-size:18px}.after-icons{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.after-icons span{border:1px solid #30333a;border-radius:999px;padding:9px 13px;font-size:12px}
.contact-section{padding:110px 0;background:linear-gradient(135deg,#fff 0 58%,#f2f6ff 58%)}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.contact-copy h2{font-size:clamp(38px,5vw,68px)}.contact-copy p{font-size:18px;color:var(--muted);max-width:650px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:10px}.contact-card a,.contact-card button{width:100%;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;text-align:left;padding:22px 20px;border:0;border-bottom:1px solid var(--line);background:transparent;text-decoration:none;color:var(--ink);cursor:pointer}.contact-card>:last-child{border-bottom:0}.contact-card span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.contact-card strong{font-size:18px}.contact-card b{grid-column:2;grid-row:1/3;align-self:center;font-size:22px;color:var(--blue);transition:.25s}.contact-card a:hover b,.contact-card button:hover b{transform:translate(4px,-3px)}
footer{border-top:1px solid var(--line);padding:28px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner p{color:#8c8f96;font-size:11px}.footer-inner>a:last-child{font-weight:700}
.lightbox{border:0;padding:0;background:rgba(5,6,8,.92);width:100vw;height:100vh;max-width:none;max-height:none;color:white}.lightbox::backdrop{background:rgba(5,6,8,.92)}.lightbox[open]{display:grid;grid-template-columns:80px 1fr 80px;align-items:center}.lightbox figure{margin:0;display:grid;place-items:center;gap:16px;height:100%;padding:50px 20px}.lightbox figure img{max-height:82vh;max-width:min(100%,1000px);object-fit:contain;border-radius:10px;box-shadow:0 30px 90px rgba(0,0,0,.45)}.lightbox figcaption{font-size:13px;color:#c7cad1}.lightbox-close{position:fixed;right:24px;top:18px;border:0;background:transparent;color:white;font-size:42px;cursor:pointer;z-index:3}.lightbox-nav{border:0;background:transparent;color:white;font-size:58px;height:100%;cursor:pointer;opacity:.7}.lightbox-nav:hover{opacity:1}.lightbox-counter{position:fixed;left:24px;bottom:20px;font-size:12px;color:#aeb2bb}.toast{position:fixed;left:50%;bottom:24px;z-index:300;transform:translate(-50%,30px);background:#0d0e11;color:#fff;padding:12px 18px;border-radius:8px;font-size:13px;opacity:0;pointer-events:none;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal-delay{transition-delay:.12s}.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1050px){.site-nav{gap:17px}.service-grid{grid-template-columns:repeat(3,1fr)}.logos{grid-template-columns:repeat(4,1fr)}.case-card{gap:48px}.fan{height:500px}.header-cta{display:none}}
@media(max-width:780px){.container{width:min(100% - 28px,var(--max))}.site-header{position:sticky}.header-inner{height:70px}.menu-toggle{display:block;margin-left:auto;z-index:3}.site-nav{position:fixed;inset:70px 0 auto 0;background:white;border-bottom:1px solid var(--line);padding:25px 24px;display:grid;gap:18px;transform:translateY(-130%);transition:.3s;box-shadow:0 24px 45px rgba(0,0,0,.12)}.site-nav.open{transform:none}.hero{padding-top:42px}.hero-grid{grid-template-columns:1fr;min-height:0;gap:35px}.hero h1{font-size:46px}.hero-visual{height:510px}.hero-visual img{width:86%;right:7%}.floating-note{right:0;top:20%;padding:14px}.hero-proof{gap:20px}.section{padding:82px 0}.about-grid,.case-card,.after-grid,.contact-grid{grid-template-columns:1fr;gap:44px}.about-photo{max-width:430px}.photo-caption{right:10px}.service-grid{grid-template-columns:1fr 1fr}.case-reverse .fan,.case-reverse .case-copy{order:initial}.fan{height:480px;max-width:430px}.case-list{gap:78px}.principles-grid{grid-template-columns:1fr}.principle-card{min-height:0}.no-card,.yes-card{border-radius:18px}.principle-divider{height:90px}.principle-divider:before{left:50%;top:0;bottom:0}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 250px 250px}.photo-large{grid-column:1/3;grid-row:1}.photo-tile:nth-child(4){grid-column:1/3}.contact-section{background:#f6f8fc}.footer-inner{flex-direction:column;text-align:center}.lightbox[open]{grid-template-columns:45px 1fr 45px}.lightbox figure{padding-inline:0}}
@media(max-width:520px){.hero h1{font-size:40px}.lead{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-proof{flex-direction:column}.hero-visual{height:420px}.floating-note{display:none}.logos{grid-template-columns:repeat(2,1fr)}.logos img{height:58px}.section-heading{margin-bottom:38px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.fan{height:405px}.case-copy h3{font-size:34px}.case-copy p{font-size:16px}.principle-card{padding:32px 24px}.photo-grid{grid-template-columns:1fr;grid-template-rows:390px 260px 260px 260px}.photo-large,.photo-tile:nth-child(4){grid-column:auto;grid-row:auto}.after-icons{gap:7px}.lightbox[open]{grid-template-columns:1fr}.lightbox-nav{position:fixed;top:50%;width:46px;height:80px;z-index:2}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox figure{padding:55px 10px 45px}.lightbox figure img{max-height:78vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal,.js .reveal{opacity:1;transform:none}}


/* ===== BIERNAT HERO + PORTFOLIO REFINEMENT 02 ===== */
body{overflow-x:hidden}
.hero{position:relative;overflow:hidden;padding:0;background:#fff}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 47%,rgba(20,120,255,.018) 47% 62%,transparent 62%);pointer-events:none}
.hero .container{width:min(1460px,calc(100% - 72px))}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(470px,.92fr);gap:28px;align-items:center;min-height:650px}
.hero-copy{position:relative;z-index:4;padding:76px 0 66px}
.hero-brandline{display:flex;align-items:center;gap:18px;margin-bottom:45px;white-space:nowrap}
.hero-brandline>span{font-size:19px;font-weight:900;letter-spacing:-.04em}
.hero-brandline>span b{color:var(--blue);font-weight:720}
.hero-brandline>i{display:block;width:78px;height:1px;background:#161719}
.hero-brandline>small{text-transform:uppercase;letter-spacing:.28em;font-size:10px;color:#9a9da5;font-weight:760}
.hero h1{margin:0 0 28px;font-size:clamp(46px,4.5vw,70px);line-height:1.08;letter-spacing:-.058em;font-weight:760;max-width:760px}
.hero h1 .hero-line{display:block;white-space:nowrap}
.hero h1 em{font-style:normal;color:var(--blue);font-weight:800}
.hero .lead{max-width:650px;margin:0;color:#555962;font-size:18px;line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}
.hero-disciplines{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:48px;padding-top:20px;border-top:1px solid #eceef1;text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:800;color:#50535a}
.hero-disciplines i{width:4px;height:4px;border-radius:50%;background:var(--blue);display:block}
.hero-visual{position:relative;height:650px;min-width:0;isolation:isolate}
.hero-stage{position:absolute;inset:0;overflow:hidden;background:#fff}
.hero-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0,rgba(255,255,255,.82) 4%,transparent 17%,transparent 91%,rgba(255,255,255,.78) 98%,#fff 100%);pointer-events:none;z-index:5}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;opacity:0;transform:scale(1.025) translateY(4px);transition:opacity 1.45s ease,transform 6.2s ease;filter:none;border-radius:0;box-shadow:none}
.hero-slide.is-active{opacity:1;transform:scale(1) translateY(0);z-index:2}
.hero-vertical-label{position:absolute;z-index:7;right:5px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.38em;font-size:9px;font-weight:850;color:#787b82}
.hero-slide-dots{position:absolute;z-index:8;right:28px;bottom:28px;display:flex;gap:8px}
.hero-slide-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#cfd3da;cursor:pointer;transition:.3s}
.hero-slide-dots button.is-active{width:24px;border-radius:20px;background:var(--blue)}

.portfolio-section{overflow:visible}
.case-card{position:relative}
.case-card:hover{z-index:10}
.fan{width:min(100%,500px);overflow:visible}
.fan img{width:72%;height:86%;transform-origin:50% 88%;will-change:transform}
.fan-left{transform:translate(-13%,3%) rotate(-7deg)}
.fan-right{transform:translate(13%,3%) rotate(7deg)}
@media (hover:hover) and (min-width:900px){
  .fan:hover .fan-left,.case-card:hover .fan-left{transform:translate(-76%,4%) rotate(-11deg) scale(.95)}
  .fan:hover .fan-right,.case-card:hover .fan-right{transform:translate(76%,4%) rotate(11deg) scale(.95)}
  .fan:hover .fan-front,.case-card:hover .fan-front{transform:translateY(-20px) scale(.91)}
}

@media(max-width:1120px){
  .hero .container{width:min(100% - 42px,1180px)}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(420px,.86fr);min-height:610px}
  .hero h1{font-size:clamp(43px,5vw,60px)}
  .hero-brandline>small{display:none}
  .hero-visual{height:610px}
}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:0;min-height:0}
  .hero-copy{padding:60px 0 22px}
  .hero-brandline{margin-bottom:34px}
  .hero h1{font-size:clamp(42px,8.2vw,64px);max-width:none}
  .hero-visual{height:570px;margin-top:-12px}
  .hero-disciplines{margin-top:36px}
  .fan{max-width:455px}
}
@media(max-width:620px){
  .hero .container{width:calc(100% - 30px)}
  .hero-copy{padding-top:44px}
  .hero-brandline{gap:10px;margin-bottom:28px}
  .hero-brandline>span{font-size:16px}
  .hero-brandline>i{width:42px}
  .hero h1{font-size:clamp(31px,10.3vw,45px);line-height:1.12;letter-spacing:-.052em}
  .hero h1 .hero-line{white-space:nowrap}
  .hero .lead{font-size:16px;line-height:1.62}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:18px}
  .hero-disciplines{gap:8px 10px;letter-spacing:.12em;font-size:9px}
  .hero-visual{height:430px;margin-top:4px}
  .hero-vertical-label{display:none}
  .hero-slide-dots{right:10px;bottom:12px}
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide:not(.is-active){display:none}}



/* ===== BIERNAT HERO PHOTO ALIGNMENT 03 ===== */
@media (min-width:901px){
  .hero-grid{
    grid-template-columns:minmax(0,1.08fr) minmax(470px,.92fr);
    grid-template-rows:minmax(596px,auto) auto;
    column-gap:28px;
    row-gap:0;
    align-items:stretch;
    min-height:0;
  }
  .hero-copy{
    grid-column:1;
    grid-row:1;
    padding:62px 0 42px;
    align-self:center;
  }
  .hero-visual{
    grid-column:2;
    grid-row:1;
    height:auto;
    min-height:596px;
    align-self:stretch;
  }
  .hero-disciplines{
    grid-column:1 / -1;
    grid-row:2;
    margin:0;
    padding:18px 0 24px;
    border-top:1px solid #eceef1;
  }
}
.hero-stage{
  overflow:visible;
  background:transparent;
}
.hero-stage:after{display:none}
.hero-slide{
  inset:auto;
  left:50%;
  right:auto;
  top:auto;
  bottom:0;
  width:557px;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center bottom;
  opacity:0;
  transform:translateX(-50%);
  transition:opacity 1.35s ease;
  filter:none;
  border-radius:0;
  box-shadow:none;
}
.hero-slide.is-active{
  opacity:1;
  transform:translateX(-50%);
  z-index:2;
}
.hero-slide-dots{bottom:16px}
@media(max-width:1120px) and (min-width:901px){
  .hero-grid{grid-template-rows:minmax(560px,auto) auto}
  .hero-visual{min-height:560px}
}
@media(max-width:900px){
  .hero-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    gap:0;
  }
  .hero-copy{grid-column:1;grid-row:1}
  .hero-visual{grid-column:1;grid-row:2}
  .hero-disciplines{
    grid-column:1;
    grid-row:3;
    margin:0;
    padding:18px 0 24px;
    border-top:1px solid #eceef1;
  }
}

/* ===== Portfolio v37: układ tematyczny + wachlarze 5 grafik ===== */
.portfolio-section{overflow:visible}
.portfolio-section .section-heading{margin-bottom:48px}
.case-list{display:grid;gap:58px}
.case-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.case-reverse .fan{order:2}.case-reverse .case-copy{order:1}
.fan{position:relative;width:min(100%,430px);height:430px;margin:auto;border:0;background:transparent;cursor:pointer;isolation:isolate;overflow:visible;padding:0}
.fan img{position:absolute;inset:0;margin:auto;width:60%;height:80%;object-fit:cover;border-radius:18px;box-shadow:0 20px 45px rgba(10,20,35,.18);transition:transform .42s cubic-bezier(.2,.75,.25,1), box-shadow .35s, filter .35s;transform-origin:50% 88%;background:#f3f6fb}
.fan-back-left{z-index:1;transform:translate(-70%,9%) rotate(-18deg) scale(.86)}
.fan-mid-left{z-index:2;transform:translate(-46%,4%) rotate(-10deg) scale(.94)}
.fan-front{z-index:4;transform:translateY(0) scale(1)}
.fan-mid-right{z-index:2;transform:translate(46%,4%) rotate(10deg) scale(.94)}
.fan-back-right{z-index:1;transform:translate(70%,9%) rotate(18deg) scale(.86)}
.fan:hover .fan-back-left{transform:translate(-82%,10%) rotate(-21deg) scale(.84)}
.fan:hover .fan-mid-left{transform:translate(-57%,2%) rotate(-12deg) scale(.92)}
.fan:hover .fan-front{transform:translateY(-14px) scale(1.04);box-shadow:0 30px 60px rgba(10,20,35,.22)}
.fan:hover .fan-mid-right{transform:translate(57%,2%) rotate(12deg) scale(.92)}
.fan:hover .fan-back-right{transform:translate(82%,10%) rotate(21deg) scale(.84)}
.fan:focus-visible{outline:3px solid var(--blue);outline-offset:8px;border-radius:20px}
.case-no{font-size:12px;color:var(--blue);font-weight:800;letter-spacing:.18em}
.case-copy h3{font-size:36px;letter-spacing:-.04em;margin:10px 0 16px;line-height:1.08}
.case-copy p{font-size:17px;color:var(--muted);max-width:52ch}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 18px}
.tag{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#f3f6fb;border:1px solid #dce3ef;font-size:13px;font-weight:700;color:#425166}
.case-open{border:0;background:transparent;color:var(--blue);font-weight:800;padding:8px 0;cursor:pointer}
.case-open:hover{text-decoration:underline}
@media(max-width:1050px){.case-card{gap:38px}.fan{height:390px;max-width:390px}.case-copy h3{font-size:32px}}
@media(max-width:780px){.case-card{grid-template-columns:1fr;gap:34px}.case-reverse .fan,.case-reverse .case-copy{order:initial}.case-list{gap:48px}.fan{height:360px;max-width:360px}}
@media(max-width:520px){.fan{height:315px;max-width:315px}.case-copy h3{font-size:28px}.case-copy p{font-size:16px}}

/* Header correction: only the exact supplied rectangles under the portraits. */
.hero{background:#fff!important}
.hero:before,.hero-shape,.floating-note{display:none!important}
.hero h1{
  font-family:"Manrope",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:400!important;
  letter-spacing:.038em!important;
  line-height:1.07!important;
}
.hero h1 em{font-weight:400!important}
.hero-stage{
  overflow:visible!important;
  background:transparent!important;
}
.hero-stage:after{display:none!important}
.hero-backdrop-exact{
  position:absolute;
  z-index:1;
  right:0;
  bottom:0;
  width:516px;
  height:469px;
  background-repeat:no-repeat;
  background-position:right bottom;
  background-size:516px 469px;
  pointer-events:none;
}
.hero-slide{
  z-index:3!important;
}
.hero-slide.is-active{z-index:4!important}
.hero-slide-dots{
  z-index:8!important;
  right:250px!important;
  bottom:80px!important;
}
.hero-signature-stamp{
  position:absolute;
  z-index:9;
  right:-227px;
  bottom:0;
  width:227px;
  height:182px;
  background-repeat:no-repeat;
  background-position:0 0;
  background-size:227px 182px;
  pointer-events:none;
}
@media (min-width:901px){
  .hero-grid{grid-template-rows:minmax(625px,auto) auto!important}
  .hero-visual{min-height:625px!important}
}
@media(max-width:1120px) and (min-width:901px){
  .hero-slide-dots{right:242px!important;bottom:76px!important}
  .hero-signature-stamp{right:-227px!important}
}
@media(max-width:900px){
  .hero-backdrop-exact{right:0;bottom:0}
  .hero-slide-dots{right:242px!important;bottom:76px!important}
  .hero-signature-stamp{right:-227px;bottom:0}
}
@media(max-width:620px){
  .hero h1{letter-spacing:.026em!important}
  .hero-slide-dots{right:242px!important;bottom:76px!important}
}

/* final hero cleanup */
.brand-main{display:block;line-height:1}
.brand-logo-image{display:block;height:30px;width:auto}
.footer-inner .brand-logo-image{height:26px}
.hero-brandline{gap:18px}
.hero-wordmark{display:block;height:34px;width:auto;max-width:100%}
.hero-brandline>small{white-space:nowrap}
@media(max-width:620px){
  .brand-logo-image{height:24px}
  .footer-inner .brand-logo-image{height:22px}
  .hero-wordmark{height:26px}
}
.hero{background:#fff!important}
.hero:before,.hero-stage:after,.hero-shape,.floating-note{display:none!important}
.hero-stage{overflow:visible!important;background:transparent!important}
.hero-backdrop-exact{
  position:absolute!important;
  z-index:1!important;
  right:0!important;
  bottom:0!important;
  width:548px!important;
  height:498px!important;
  background:none!important;
  box-shadow:none!important;
  pointer-events:none!important;
}
.hero-backdrop-exact::before,.hero-backdrop-exact::after{
  content:none!important;
  display:none!important;
}
.hero-backdrop-piece{
  position:absolute;
  border-radius:0!important;
  box-shadow:none!important;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  pointer-events:none;
}
.hero-backdrop-gray{
  right:80px;
  bottom:0;
  width:468px;
  height:468px;
  background-color:#efefef;
  z-index:1;
}
.hero-backdrop-blue{
  right:0;
  bottom:330px;
  width:94px;
  height:94px;
  background-color:#178eff;
  z-index:2;
}
.hero-slide{
  z-index:3!important;
  left:50%!important;
  transform:translateX(calc(-50% - 20px))!important;
}
.hero-slide.is-active{
  z-index:4!important;
  transform:translateX(calc(-50% - 20px))!important;
}
.hero-slide-dots{
  z-index:8!important;
  right:20px!important;
  bottom:18px!important;
}
.hero-signature-stamp{
  position:absolute!important;
  z-index:9!important;
  right:-227px!important;
  bottom:0!important;
  width:226px!important;
  height:181px!important;
  background-image:url('../img/asset-97fb77d58d.webp')!important;
  background-repeat:no-repeat!important;
  background-position:0 0!important;
  background-size:226px 181px!important;
  pointer-events:none!important;
  transform:scale(.9)!important;
  transform-origin:left bottom!important;
}
.hero h1{
  font-family:"Manrope",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:400!important;
  letter-spacing:.052em!important;
  line-height:1.07!important;
}
.hero h1 em{font-weight:400!important}
@media (min-width:901px){
  .hero-grid{grid-template-rows:minmax(625px,auto) auto!important}
  .hero-visual{min-height:625px!important}
}
@media(max-width:1120px) and (min-width:901px){
  .hero-slide-dots{right:18px!important;bottom:16px!important}
}
@media(max-width:900px){
  .hero-backdrop-exact{width:470px!important;height:427px!important}
  .hero-backdrop-gray{right:70px;width:400px;height:400px}
  .hero-backdrop-blue{right:0;bottom:295px;width:70px;height:70px}
  .hero-slide{transform:translateX(calc(-50% - 12px))!important}
  .hero-slide.is-active{transform:translateX(calc(-50% - 12px))!important}
  .hero-slide-dots{right:12px!important;bottom:10px!important}
  .hero-signature-stamp{display:none!important}
}
@media(max-width:620px){
  .hero h1{letter-spacing:.032em!important}
}

/* Tylko pierwszy portret jest aktywny. Pozostałe dwa pozostają schowane. */
.hero-slide{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.hero-slide.is-active{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.hero-signature-stamp{
  transform:scale(.72)!important;
}

/*
  Reset starego stylu .hero-visual img. Tamta reguła miała większą
  specyficzność niż .hero-slide i narzucała portretom ogromne zaokrąglenie
  górnych rogów, cień, kadrowanie cover oraz filtr. To właśnie tworzyło
  widoczny łuk także po podmianie pliku zdjęcia.
*/
.hero-visual img.hero-slide{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:0!important;
  width:557px!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
  clip-path:none!important;
  mask:none!important;
  -webkit-mask:none!important;
  background:transparent!important;
}
@media(max-width:900px){
  .hero-visual img.hero-slide{
    width:557px!important;
    max-width:100%!important;
    height:auto!important;
  }
}

.gl-decor-host{position:relative!important;isolation:isolate;overflow:visible!important}
  .gl-decor{position:absolute;display:block;max-width:none;transform-origin:center center;pointer-events:none}
  .gl-decor-line{border-radius:999px}
  .gl-decor-block{border-radius:0}
  .gl-decor-dots{
    display:grid!important;
    grid-template-columns:repeat(var(--gl-dot-cols,5),8px)!important;
    grid-auto-rows:8px!important;
    column-gap:18px!important;
    row-gap:16px!important;
    width:max-content!important;
    height:max-content!important;
    background:transparent!important;
  }
  .gl-decor-dots span{
    display:block;width:4px;height:4px;border-radius:50%;background:currentColor;
    justify-self:center;align-self:center
  }

[data-gl-section="1"][data-gl-section-styled="1"]{background:var(--gl-section-bg, transparent)!important;color:var(--gl-section-text, inherit)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] h1,
  [data-gl-section="1"][data-gl-section-styled="1"] h2,
  [data-gl-section="1"][data-gl-section-styled="1"] h3,
  [data-gl-section="1"][data-gl-section-styled="1"] h4,
  [data-gl-section="1"][data-gl-section-styled="1"] h5,
  [data-gl-section="1"][data-gl-section-styled="1"] h6,
  [data-gl-section="1"][data-gl-section-styled="1"] strong{color:var(--gl-section-heading, inherit)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] p,
  [data-gl-section="1"][data-gl-section-styled="1"] li,
  [data-gl-section="1"][data-gl-section-styled="1"] small,
  [data-gl-section="1"][data-gl-section-styled="1"] figcaption,
  [data-gl-section="1"][data-gl-section-styled="1"] span,
  [data-gl-section="1"][data-gl-section-styled="1"] .lead,
  [data-gl-section="1"][data-gl-section-styled="1"] .big-copy,
  [data-gl-section="1"][data-gl-section-styled="1"] .brand-sub,
  [data-gl-section="1"][data-gl-section-styled="1"] .photo-caption,
  [data-gl-section="1"][data-gl-section-styled="1"] .contact-copy p,
  [data-gl-section="1"][data-gl-section-styled="1"] .contact-detail span,
  [data-gl-section="1"][data-gl-section-styled="1"] .after-copy p,
  [data-gl-section="1"][data-gl-section-styled="1"] .principle-card li,
  [data-gl-section="1"][data-gl-section-styled="1"] .hero-proof span{color:var(--gl-section-text, inherit)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] em,
  [data-gl-section="1"][data-gl-section-styled="1"] .eyebrow,
  [data-gl-section="1"][data-gl-section-styled="1"] .section-kicker,
  [data-gl-section="1"][data-gl-section-styled="1"] .case-no,
  [data-gl-section="1"][data-gl-section-styled="1"] .service-icon,
  [data-gl-section="1"][data-gl-section-styled="1"] .principle-symbol,
  [data-gl-section="1"][data-gl-section-styled="1"] .text-link span,
  [data-gl-section="1"][data-gl-section-styled="1"] a:not(.button),
  [data-gl-section="1"][data-gl-section-styled="1"] .footer-inner>a,
  [data-gl-section="1"][data-gl-section-styled="1"] .hero h1 em,
  [data-gl-section="1"][data-gl-section-styled="1"] .contact-copy h2 em{color:var(--gl-section-accent, #168eff)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] .eyebrow:before{background:var(--gl-section-accent, #168eff)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] .button{background:var(--gl-section-accent, #168eff)!important;border-color:var(--gl-section-accent, #168eff)!important;color:#fff!important;box-shadow:0 10px 25px rgba(20,120,255,.20)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] .button:hover{background:var(--gl-section-accent-dark, var(--gl-section-accent, #168eff))!important}
  [data-gl-section="1"][data-gl-section-styled="1"] .skill-list span,
  [data-gl-section="1"][data-gl-section-styled="1"] .tags span{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important;color:var(--gl-section-heading, #111)!important}
  [data-gl-section="1"][data-gl-section-styled="1"] .floating-note,
  [data-gl-section="1"][data-gl-section-styled="1"] .service-card,
  [data-gl-section="1"][data-gl-section-styled="1"] .principle-card{border-color:rgba(0,0,0,.08)}
  [data-gl-section="1"][data-gl-section-styled="1"] .floating-note span:before{border-color:var(--gl-section-accent, #168eff)!important}

/* Edytorowe obrysy nie mogą zostać na stronie poza aktywnym trybem. */
  body:not(.gl-text-edit):not(.gl-text-move) [data-gl-editable="1"]{outline:none!important;outline-offset:0!important}
  body:not(.gl-graphic-edit) [data-gl-selected="1"]{outline:none!important;outline-offset:0!important}
  body:not(.gl-section-edit) [data-gl-section-selected="1"]{outline:none!important;outline-offset:0!important}

  /* Logotypy: większe, ale z pierwotnym miękkim, monochromatycznym wyglądem. */
  .logo-strip{padding-top:48px;padding-bottom:42px}
  .logos{gap:18px;margin-top:30px}
  .logos img{
    width:100%;
    height:82px;
    max-width:145px;
    margin-inline:auto;
    object-fit:contain;
    filter:grayscale(1)!important;
    opacity:.5!important;
    image-rendering:auto;
    transform:none;
    backface-visibility:visible;
  }
  .logos img:hover{
    filter:none!important;
    opacity:1!important;
    transform:scale(1.06);
  }
  @media(max-width:1050px){.logos img{height:76px;max-width:155px}}
  @media(max-width:620px){.logos{gap:16px}.logos img{height:68px;max-width:150px}}

  /* Wachlarze nie reagują już na tekst ani całe pole realizacji. */
  @media (hover:hover) and (min-width:900px){
    .case-card:hover .fan-left,
    .fan:hover .fan-left{transform:translate(-13%,3%) rotate(-7deg)!important}
    .case-card:hover .fan-right,
    .fan:hover .fan-right{transform:translate(13%,3%) rotate(7deg)!important}
    .case-card:hover .fan-front,
    .fan:hover .fan-front{transform:translateY(0)!important}

    .fan:has(.fan-front:hover) .fan-left{transform:translate(-76%,4%) rotate(-11deg) scale(.95)!important}
    .fan:has(.fan-front:hover) .fan-right{transform:translate(76%,4%) rotate(11deg) scale(.95)!important}
    .fan:has(.fan-front:hover) .fan-front{transform:translateY(-20px) scale(.91)!important}
  }

/* Górna belka: social media */
.header-socials{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.header-socials a{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dfe3e9;border-radius:50%;color:#20242a;background:#fff;text-decoration:none;transition:transform .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease}
.header-socials a:hover{transform:translateY(-2px);color:var(--blue);border-color:rgba(20,120,255,.48);box-shadow:0 9px 22px rgba(20,120,255,.14)}
.header-socials svg{width:17px;height:17px;display:block;fill:currentColor;pointer-events:none}

/* Liczniki pod ofertą */
.stats-strip{position:relative;overflow:hidden;background:#091327;color:#fff;padding:48px 0 50px}
.stats-strip:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 0 35%,rgba(22,142,255,.08) 50%,transparent 66%);pointer-events:none}
.stats-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.stat-item{text-align:center;padding:7px 24px;position:relative}
.stat-item:not(:last-child):after{content:"";position:absolute;right:-14px;top:12%;bottom:12%;width:1px;background:rgba(255,255,255,.11)}
.stat-number{display:block;font-family:"Manrope",Inter,sans-serif;font-size:clamp(44px,5vw,70px);font-weight:800;line-height:1;letter-spacing:-.055em;color:#fff;font-variant-numeric:tabular-nums;transform:translateY(12px);opacity:0;transition:opacity .45s ease,transform .55s cubic-bezier(.2,.8,.2,1)}
.stat-number.is-counter-visible{transform:none;opacity:1}
.stat-label{display:block;margin-top:16px;color:#d9e1ee;font-size:15px;font-weight:550;line-height:1.45}
[data-gl-section="1"][hidden]{display:none!important}

/* Edytor: przycisk ukrywania sekcji */
#gl-section-order-hide.is-on{background:#17643d!important;border-color:#268a57!important}

@media(max-width:1120px){
  .header-inner{gap:20px}
  .site-nav{gap:18px}
  .header-socials{gap:5px}
  .header-socials a{width:34px;height:34px}
}
@media(max-width:780px){
  .header-socials{order:2;margin-left:auto}
  .menu-toggle{order:3;margin-left:0!important}
  .site-nav{order:4}
  .stats-strip{padding:38px 0 40px}
  .stats-grid{gap:10px}
  .stat-item{padding-inline:10px}
  .stat-label{font-size:13px}
}
@media(max-width:560px){
  .header-socials a{width:32px;height:32px}
  .header-socials svg{width:15px;height:15px}
  .stats-grid{grid-template-columns:1fr;gap:0}
  .stat-item{padding:22px 12px}
  .stat-item:not(:last-child):after{left:18%;right:18%;top:auto;bottom:0;width:auto;height:1px}
  .stat-number{font-size:52px}
  .stat-label{margin-top:10px;font-size:14px}
}

/* Szersza bezpieczna strefa po bokach w hero, żeby podpis i dekor nie wpadały za wcześnie w krawędź ekranu. */
.site-header .container,
.hero .container{
  width:min(1360px,calc(100% - 120px))!important;
}
.hero-grid{
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr)!important;
  gap:34px!important;
}
.hero-copy{
  padding-right:24px!important;
}
.hero-signature-stamp{
  right:clamp(-185px,-11vw,-120px)!important;
}
.hero-backdrop-exact{
  right:8px!important;
}
@media (max-width:1600px) and (min-width:901px){
  .hero .container,
  .site-header .container{
    width:min(1320px,calc(100% - 128px))!important;
  }
}
@media (max-width:1280px) and (min-width:901px){
  .hero .container,
  .site-header .container{
    width:min(1240px,calc(100% - 92px))!important;
  }
  .hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,.96fr)!important;
    gap:26px!important;
  }
  .hero h1{font-size:clamp(42px,4vw,62px)!important}
  .hero-signature-stamp{right:-98px!important}
}
@media (max-width:900px){
  .site-header .container,
  .hero .container{
    width:min(100% - 32px, var(--max))!important;
  }
}

/* Portfolio: odsuń naprzemienne wachlarze od opisów, bez zmiany ich zawartości. */
@media (min-width:781px){
  .case-card:not(.case-reverse) .fan{transform:translateX(-42px)}
  .case-card.case-reverse .fan{transform:translateX(42px)}
  .case-card{column-gap:72px!important}
}
@media (max-width:780px){
  .case-card .fan{transform:none}
}

/* Przywróć linijkę dyscyplin i podnieś ją bliżej banera. */
.hero-disciplines{
  display:flex!important;
  margin-top:-22px!important;
  padding-top:14px!important;
  padding-bottom:18px!important;
}
@media(max-width:900px){
  .hero-disciplines{
    margin-top:-10px!important;
  }
}

/* Wszystkie trzy portrety hero mają znowu jednakową wysokość. */
@media (min-width:901px){
  .hero-visual img.hero-slide{
    width:auto!important;
    height:596px!important;
    max-width:none!important;
    max-height:none!important;
    bottom:0!important;
    object-fit:contain!important;
  }
}

/* Czytelna i klikalna winda w stopce. */
#gl-back-to-top{
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  position:relative;
  z-index:20;
  min-height:44px;
  padding:8px 4px;
  touch-action:manipulation;
  pointer-events:auto!important;
  -webkit-tap-highlight-color:transparent;
}

/* Wachlarze zachowują rzeczywiste proporcje każdej podmienionej grafiki. */
.case-card[data-gallery] .fan img[data-gl-auto-aspect="1"]{
  object-fit:contain!important;
  max-width:none!important;
  max-height:none!important;
}

/* Fotografia: tytuły okładek i niezależne albumy. */
body.gl-text-edit .photography .photo-tile > span[contenteditable="true"]{
  outline:2px dashed rgba(22,142,255,.9)!important;
  outline-offset:4px!important;
  border-radius:5px;
  cursor:text;
}
.photography .photo-tile[data-album-empty="1"]::before{
  content:"Album pusty";
  position:absolute;z-index:3;right:14px;top:14px;
  padding:6px 9px;border-radius:999px;
  background:rgba(10,12,16,.72);color:#fff;
  font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  pointer-events:none;
}

/* Ikony przy zainteresowaniach są prawdziwymi grafikami i można je podmieniać. */
.after-icons .after-tag{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid #33485d;border-radius:999px;
  padding:8px 12px!important;
}
.after-tag-icon{
  width:22px!important;height:22px!important;min-width:22px;
  object-fit:contain;display:block;
  filter:none!important;border-radius:0!important;box-shadow:none!important;
}
.after-tag-label{font-weight:650}
body.gl-graphic-edit .after-tag-icon[data-gl-selected="1"]{
  outline:3px solid #168eff!important;outline-offset:4px!important;border-radius:50%!important;
}

/* Rząd publikacji. Kafelek otwiera podgląd na stronie, link zewnętrzny jest opcjonalny w środku. */
.written-work{background:#f5f7fa}
.written-work .section-heading{margin-bottom:36px}
.written-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
}
.written-card{
  min-width:0;border:1px solid #e2e6ec;border-radius:16px;background:#fff;
  overflow:hidden;box-shadow:0 14px 34px rgba(13,24,43,.07);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.written-card:hover{transform:translateY(-5px);border-color:rgba(22,142,255,.42);box-shadow:0 22px 44px rgba(13,24,43,.11)}
.written-card-open{
  width:100%;height:100%;display:grid;grid-template-rows:auto 1fr;
  border:0;background:transparent;padding:0;text-align:left;cursor:pointer;
}
.written-cover{display:block;aspect-ratio:4/3;overflow:hidden;background:#eaf2fb}
.written-cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.written-card:hover .written-cover img{transform:scale(1.035)}
.written-card-copy{display:grid;align-content:start;gap:8px;padding:18px}
.written-card-copy small{color:#168eff;font-size:9px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.written-card-copy h3{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.025em}
.written-card-copy p{margin:0;color:#6a6e76;font-size:13px;line-height:1.5}
.written-body-store{display:none!important}

.video-proof{
  margin-top:22px;display:grid;grid-template-columns:1fr minmax(280px,420px);
  gap:28px;align-items:center;padding:24px;border:1px solid #e2e6ec;
  border-radius:16px;background:#fff;
}
.video-proof-copy h3{margin:0 0 8px;font-size:22px;letter-spacing:-.03em}
.video-proof-copy p{margin:0;color:#6a6e76}
.video-proof-open{
  position:relative;border:0;border-radius:13px;padding:0;overflow:hidden;
  aspect-ratio:16/9;background:#102437;cursor:pointer;
}
.video-proof-open img{width:100%;height:100%;object-fit:cover;opacity:.82}
.video-proof-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
  background:#168eff;color:#fff;font-size:23px;box-shadow:0 12px 30px rgba(0,0,0,.28);
}
.video-proof-open span:last-child{
  position:absolute;left:14px;bottom:12px;color:#fff;font-size:11px;font-weight:750;
  text-shadow:0 2px 12px rgba(0,0,0,.65)
}

/* Podgląd tekstu. */
.written-dialog,.video-dialog{
  border:0;padding:0;border-radius:18px;background:#fff;color:#0a0a0c;
  width:min(920px,calc(100vw - 30px));max-height:calc(100vh - 30px);
  box-shadow:0 30px 90px rgba(0,0,0,.35);
}
.written-dialog::backdrop,.video-dialog::backdrop{background:rgba(5,10,17,.82);backdrop-filter:blur(4px)}
.written-dialog-inner{display:grid;grid-template-columns:minmax(260px,.75fr) 1.25fr;min-height:520px}
.written-dialog-cover{width:100%;height:100%;object-fit:cover;background:#eaf2fb}
.written-dialog-copy{padding:42px;overflow:auto}
.written-dialog-copy small{color:#168eff;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:850}
.written-dialog-copy h2{font-size:clamp(30px,4vw,48px);margin:10px 0 22px}
.written-dialog-body{color:#494d55;font-size:16px;white-space:pre-wrap;line-height:1.75}
.written-dialog-link{margin-top:28px}
.dialog-close{
  position:absolute;right:14px;top:10px;z-index:4;border:0;background:rgba(10,12,16,.7);
  color:#fff;width:38px;height:38px;border-radius:50%;font-size:26px;cursor:pointer
}
.video-dialog-inner{padding:12px;background:#05080d}
.video-dialog-frame{width:100%;aspect-ratio:16/9;border:0;display:block;border-radius:10px}
.video-dialog-title{color:#fff;padding:12px 4px 2px;font-size:13px;font-weight:700}

/* Narzędzia nowych sekcji w edytorze. */
#gl-editor-panel .gl-content-tools textarea,
#gl-editor-panel .gl-content-tools input,
#gl-editor-panel .gl-content-tools select{
  width:100%;min-height:38px;margin:0 0 8px;padding:8px 10px;
  border:1px solid #454b55;border-radius:9px;background:#272b31;color:#fff;
  font:600 11px Inter,system-ui,sans-serif;
}
#gl-editor-panel .gl-content-tools textarea{min-height:76px;resize:vertical;line-height:1.45}
#gl-editor-panel .gl-content-tools input:disabled,
#gl-editor-panel .gl-content-tools textarea:disabled{opacity:.45;cursor:not-allowed}
#gl-editor-panel .gl-content-note{
  padding:9px 10px;border-radius:9px;background:#272b31;color:#bfc5cf;
  font-size:9px;line-height:1.5;margin:8px 0;
}

@media(max-width:900px){
  .written-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .video-proof{grid-template-columns:1fr}
  .written-dialog-inner{grid-template-columns:1fr}
  .written-dialog-cover{max-height:340px}
}
@media(max-width:560px){
  .written-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}
  .written-card{min-width:78vw;scroll-snap-align:start}
  .written-dialog-copy{padding:28px 22px}
}

/* Fotografia: cztery równe, kwadratowe albumy w jednym rzędzie. */
.photography .photo-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:none!important;
  gap:16px!important;
}
.photography .photo-tile,
.photography .photo-large,
.photography .photo-tile:nth-child(4){
  grid-column:auto!important;
  grid-row:auto!important;
  aspect-ratio:1 / 1!important;
  min-height:0!important;
  width:100%!important;
}
.photography .photo-tile > img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Teksty: pięć mniejszych kafelków na szerokość całego rzędu. */
.written-work .written-strip{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  overflow:visible!important;
}
.written-work .written-card{
  min-width:0!important;
}
.written-work .written-card-copy{
  padding:14px!important;
  gap:6px!important;
}
.written-work .written-card-copy h3{
  font-size:16px!important;
}
.written-work .written-card-copy p{
  font-size:12px!important;
  line-height:1.45!important;
}

@media(max-width:900px){
  .photography .photo-grid,
  .written-work .written-strip{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory;
    padding-bottom:10px;
  }
  .photography .photo-tile{
    min-width:min(72vw,280px)!important;
    scroll-snap-align:start;
  }
  .written-work .written-card{
    min-width:min(68vw,245px)!important;
    scroll-snap-align:start;
  }
}

/* v15: wyłącznie drobne poprawki wskazane przez autora. */
@media (min-width:781px){
  #po-godzinach .after-icons{flex-wrap:nowrap!important;}
}
#po-godzinach .after-icons .after-tag-label{
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  background:transparent!important;
}
#po-godzinach .after-icons .after-tag{white-space:nowrap;}
.hero .hero-slide-dots{right:44px!important;}
@media(max-width:900px){.hero .hero-slide-dots{right:36px!important;}}
@media(max-width:620px){.hero .hero-slide-dots{right:30px!important;}}
#portfolio .tags .tag{border-color:#425166!important;}

/* v17: mobilna korekta wyłącznie sekcji Hero i Po godzinach. Desktop pozostaje bez zmian. */

/* Po przejściu do jednej kolumny zdjęcia przestają być warstwami absolutnymi. */
@media (max-width:780px){
  #po-godzinach{
    overflow:hidden!important;
  }
  #po-godzinach .after-grid{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:24px!important;
    position:relative!important;
    isolation:isolate;
  }
  #po-godzinach .after-photo{
    display:none!important;
  }
  #po-godzinach .after-grid > img.gl-uploaded-image[data-gl-anchor-id="after-hours"][data-gl-added="1"]{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    display:block!important;
    width:min(100%,360px)!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 auto!important;
    translate:none!important;
    scale:1!important;
    rotate:0deg!important;
    transform:none!important;
    z-index:1!important;
  }
  #po-godzinach .after-grid > img.gl-uploaded-image[data-gl-anchor-id="after-hours"]:nth-of-type(1){
    order:1!important;
  }
  #po-godzinach .after-grid > img.gl-uploaded-image[data-gl-anchor-id="after-hours"]:nth-of-type(2){
    order:2!important;
  }
  #po-godzinach .after-copy{
    order:3!important;
    width:100%!important;
    min-width:0!important;
  }
  #po-godzinach .after-grid > .gl-decor[data-gl-anchor-id="after-hours"][data-gl-added="1"]{
    display:none!important;
  }
}

/* Na wąskich telefonach hero pozostaje tekstowe. Zdjęcia, kropki i ręcznie
   przypięte ozdoby są ukryte tylko w tym widoku. */
@media (max-width:620px){
  [data-gl-section-id="hero"] .hero-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    min-height:0!important;
    row-gap:0!important;
  }
  [data-gl-section-id="hero"] .hero-copy{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    padding-bottom:28px!important;
  }
  [data-gl-section-id="hero"] .hero-visual{
    display:none!important;
  }
  [data-gl-section-id="hero"] .hero-disciplines{
    grid-column:1!important;
    grid-row:2!important;
    margin:0!important;
  }
  [data-gl-section-id="hero"] .hero-grid > [data-gl-anchor-id="hero"][data-gl-added="1"]{
    display:none!important;
  }
  [data-gl-section-id="hero"] [data-gl-section-id="hero"]-title,
  [data-gl-section-id="hero"] [data-gl-section-id="hero"]-title .hero-line{
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
  }
  [data-gl-section-id="hero"] [data-gl-section-id="hero"]-title h2[data-gl-text-id="text-10"]{
    margin:0!important;
    width:100%!important;
    max-width:100%!important;
    font:inherit!important;
    color:inherit!important;
    letter-spacing:inherit!important;
    line-height:inherit!important;
    white-space:normal!important;
    translate:none!important;
    scale:1!important;
    rotate:0deg!important;
    transform:none!important;
  }
  [data-gl-section-id="hero"] [data-gl-section-id="hero"]-title h2[data-gl-text-id="text-10"] > br{
    display:none!important;
  }
  [data-gl-section-id="hero"] .hero-wordmark{
    max-width:min(100%,210px)!important;
    translate:none!important;
    scale:1!important;
    rotate:0deg!important;
  }
}

.faq-section{background:#f5f7fa}
  .faq-heading{max-width:780px;margin:0 auto 46px;text-align:center}
  .faq-heading .eyebrow{justify-content:center}
  .faq-heading h2{margin-bottom:18px}
  .faq-heading p{max-width:680px;margin:0 auto;color:var(--muted);font-size:18px}
  .faq-list{width:min(100%,980px);margin-inline:auto;display:grid;gap:11px}
  .faq-item{background:#fff;border:1px solid #dfe3ea;border-radius:15px;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
  .faq-item:hover{border-color:#c8d2df;transform:translateY(-1px)}
  .faq-item[open]{border-color:rgba(22,142,255,.48);box-shadow:0 16px 38px rgba(18,39,68,.09)}
  .faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:21px 22px;cursor:pointer;user-select:none}
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-question-text{color:#17191d;font-size:17px;font-weight:780;line-height:1.35;letter-spacing:-.012em}
  .faq-icon{position:relative;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#eef5ff;border:1px solid #d7e8ff;transition:transform .28s ease,background-color .28s ease,border-color .28s ease}
  .faq-icon:before,.faq-icon:after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;border-radius:999px;background:#168eff;transform:translate(-50%,-50%);transition:transform .28s ease,opacity .2s ease}
  .faq-icon:after{transform:translate(-50%,-50%) rotate(90deg)}
  .faq-item[open] .faq-icon{transform:none;background:#168eff;border-color:#168eff}
  .faq-item[open] .faq-icon:before,.faq-item[open] .faq-icon:after{background:#fff}
  .faq-item[open] .faq-icon:after{opacity:0;transform:translate(-50%,-50%) rotate(90deg)}
  .faq-answer{padding:0 76px 24px 22px;border-top:1px solid #edf0f4}
  .faq-answer p{margin:18px 0 0;color:#5c6270;font-size:15px;line-height:1.72;max-width:82ch}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-question-text{color:var(--gl-section-heading,#17191d)!important}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-heading p,
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-answer p{color:var(--gl-section-text,#5c6270)!important}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-item{background:color-mix(in srgb,var(--gl-section-bg,#fff) 88%,var(--gl-section-heading,#111) 12%);border-color:color-mix(in srgb,var(--gl-section-heading,#111) 15%,transparent)}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-icon{background:color-mix(in srgb,var(--gl-section-accent,#168eff) 12%,transparent);border-color:color-mix(in srgb,var(--gl-section-accent,#168eff) 30%,transparent)}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-icon:before,
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-icon:after{background:var(--gl-section-accent,#168eff)}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-item[open] .faq-icon{background:var(--gl-section-accent,#168eff);border-color:var(--gl-section-accent,#168eff)}
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-item[open] .faq-icon:before,
  [data-gl-section="1"][data-gl-section-styled="1"].faq-section .faq-item[open] .faq-icon:after{background:#fff}
  @media(max-width:780px){
    .faq-heading{margin-bottom:34px;text-align:left}
    .faq-heading .eyebrow{justify-content:flex-start}
    .faq-heading p{font-size:16px;margin:0}
    .faq-item summary{padding:18px 16px;gap:16px}
    .faq-question-text{font-size:16px}
    .faq-icon{flex-basis:32px;width:32px;height:32px}
    .faq-answer{padding:0 16px 20px}
    .faq-answer p{font-size:14px;margin-top:16px}
  }
  @media(prefers-reduced-motion:reduce){.faq-item,.faq-icon,.faq-icon:before,.faq-icon:after{transition:none!important}}

/* v19: wyłącznie Hero. Na klasycznych tabletach zachowuje układ dużego
   tabletu; na telefonach przypina niebieską belkę bezpośrednio do hasła. */

@media (min-width:621px) and (max-width:900px){
  [data-gl-section-id="hero"] .hero-grid{
    grid-template-columns:minmax(0,1.02fr) minmax(300px,.98fr)!important;
    grid-template-rows:minmax(625px,auto) auto!important;
    column-gap:18px!important;
    row-gap:0!important;
    align-items:stretch!important;
    min-height:0!important;
  }
  [data-gl-section-id="hero"] .hero-copy{
    grid-column:1!important;
    grid-row:1!important;
    align-self:center!important;
    min-width:0!important;
    padding:62px 24px 42px 0!important;
  }
  [data-gl-section-id="hero"] .hero-visual{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    position:relative!important;
    height:auto!important;
    min-height:625px!important;
    margin:0!important;
    align-self:stretch!important;
    overflow:visible!important;
  }
  [data-gl-section-id="hero"] .hero-stage{
    position:absolute!important;
    inset:auto 0 0 auto!important;
    width:548px!important;
    height:625px!important;
    overflow:visible!important;
    transform:scale(.68)!important;
    transform-origin:right bottom!important;
  }
  [data-gl-section-id="hero"] .hero-disciplines{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:flex!important;
    margin-top:-22px!important;
    padding:14px 0 18px!important;
    border-top:1px solid #eceef1!important;
  }
  [data-gl-section-id="hero"] h1{
    font-size:clamp(42px,4vw,62px)!important;
    max-width:760px!important;
  }
  [data-gl-section-id="hero"] #hero-title h2[data-gl-text-id="text-10"]{
    margin:0!important;
    width:100%!important;
    max-width:100%!important;
    font:inherit!important;
    color:inherit!important;
    letter-spacing:inherit!important;
    line-height:inherit!important;
    white-space:normal!important;
  }
  [data-gl-section-id="hero"] .hero-visual img.hero-slide{
    width:auto!important;
    height:596px!important;
    max-width:none!important;
    max-height:none!important;
    bottom:0!important;
    object-fit:contain!important;
    transform:translateX(calc(-50% - 20px))!important;
  }
  [data-gl-section-id="hero"] .hero-visual img.hero-slide.is-active{
    transform:translateX(calc(-50% - 20px))!important;
  }
  [data-gl-section-id="hero"] .hero-signature-stamp{
    display:block!important;
    right:-98px!important;
  }
  [data-gl-section-id="hero"] .hero-slide-dots{
    right:44px!important;
    bottom:18px!important;
  }
}

@media (min-width:621px) and (max-width:790px){
  [data-gl-section-id="hero"] .hero-stage{
    transform:scale(.62)!important;
  }
}

@media (max-width:620px){
  [data-gl-section-id="hero"] #hero-title h2[data-gl-text-id="text-10"]{
    position:relative!important;
    padding-left:18px!important;
  }
  [data-gl-section-id="hero"] #hero-title h2[data-gl-text-id="text-10"]::before{
    content:"";
    position:absolute;
    left:0;
    top:.12em;
    bottom:.14em;
    width:5px;
    border-radius:999px;
    background:#168eff;
    pointer-events:none;
  }
}

/* v20: wyłącznie licznik 20+ oraz pozycja niebieskiej belki w Hero. */

/* Tablet: przesuwa tylko istniejącą pionową niebieską linię. */
@media (min-width:621px) and (max-width:900px){
  [data-gl-section-id="hero"] [data-gl-editor-id="decor-1784077294766-vfw4l"]{
    translate:-24px -16px!important;
  }
}

/* Telefon: całe hasło z przypiętą belką trochę w lewo, sama belka trochę wyżej. */
@media (max-width:620px){
  [data-gl-section-id="hero"] #hero-title h2[data-gl-text-id="text-10"]{
    translate:42px 34px!important;
  }
  [data-gl-section-id="hero"] #hero-title h2[data-gl-text-id="text-10"]::before{
    transform:translateY(-6px)!important;
  }
}

/* v21: mobilne i tabletowe reguły oparte wyłącznie na trwałych klasach/ID.
   Muszą działać także po czystym eksporcie, który usuwa data-gl-*. */
:root,html{color-scheme:only light!important}
html,body{background:#fff!important}

/* Klasyczne tablety i iPad Air: ten sam model hero co duży tablet. */
@media (min-width:621px) and (max-width:900px){
  .hero .hero-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1.02fr) minmax(300px,.98fr)!important;
    grid-template-rows:minmax(625px,auto) auto!important;
    column-gap:18px!important;row-gap:0!important;
    align-items:stretch!important;min-height:0!important;
  }
  .hero .hero-copy{
    grid-column:1!important;grid-row:1!important;align-self:center!important;
    min-width:0!important;padding:62px 24px 42px 0!important;
  }
  .hero .hero-visual{
    display:block!important;grid-column:2!important;grid-row:1!important;
    position:relative!important;height:auto!important;min-height:625px!important;
    margin:0!important;align-self:stretch!important;overflow:visible!important;
  }
  .hero .hero-stage{
    position:absolute!important;inset:auto 0 0 auto!important;
    width:548px!important;height:625px!important;overflow:visible!important;
    transform:scale(.68)!important;transform-origin:right bottom!important;
  }
  .hero .hero-disciplines{
    grid-column:1 / -1!important;grid-row:2!important;display:flex!important;
    margin-top:-22px!important;padding:14px 0 18px!important;
    border-top:1px solid #eceef1!important;
  }
  .hero h1{font-size:clamp(42px,4vw,62px)!important;max-width:760px!important}
  .hero #hero-title h2{
    margin:0!important;width:100%!important;max-width:100%!important;
    font:inherit!important;color:inherit!important;letter-spacing:inherit!important;
    line-height:inherit!important;white-space:normal!important;
  }
  .hero .hero-visual img.hero-slide{
    width:auto!important;height:596px!important;max-width:none!important;max-height:none!important;
    bottom:0!important;object-fit:contain!important;
    transform:translateX(calc(-50% - 20px))!important;
  }
  .hero .hero-visual img.hero-slide.is-active{transform:translateX(calc(-50% - 20px))!important}
  .hero .hero-signature-stamp{display:block!important;right:-98px!important}
  .hero .hero-slide-dots{right:44px!important;bottom:18px!important}
  .hero .hero-accent-line{translate:-24px -16px!important}
}
@media (min-width:621px) and (max-width:790px){
  .hero .hero-stage{transform:scale(.62)!important}
}

/* Telefon: hero jest świadomie tekstowe. Żadnych portretów ani luźnych dekoracji. */
@media (max-width:620px){
  .hero{overflow:hidden!important;padding:0!important;background:#fff!important}
  .hero .container{width:calc(100% - 30px)!important;margin-inline:auto!important}
  .hero .hero-grid{
    display:block!important;grid-template-columns:none!important;grid-template-rows:none!important;
    width:100%!important;min-height:0!important;height:auto!important;margin:0!important;
  }
  .hero .hero-copy{
    display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
    padding:46px 0 38px!important;margin:0!important;translate:none!important;transform:none!important;
  }
  .hero .hero-brandline{margin:0 0 28px!important;max-width:100%!important}
  .hero .hero-wordmark{
    max-width:min(100%,210px)!important;translate:none!important;scale:1!important;
    rotate:0deg!important;transform:none!important;
  }
  .hero #hero-title,
  .hero #hero-title .hero-line{
    display:block!important;width:100%!important;max-width:100%!important;
    min-width:0!important;white-space:normal!important;
  }
  .hero #hero-title{
    margin:0 0 26px!important;padding:0!important;translate:none!important;
    transform:none!important;font-size:clamp(38px,11vw,44px)!important;
    line-height:1.08!important;letter-spacing:-.045em!important;
  }
  .hero #hero-title h2{
    position:relative!important;display:block!important;width:100%!important;max-width:100%!important;
    margin:0!important;padding:0 0 0 18px!important;translate:-4px -5px!important;
    scale:1!important;rotate:0deg!important;transform:none!important;
    font:inherit!important;color:inherit!important;letter-spacing:inherit!important;
    line-height:inherit!important;white-space:normal!important;
  }
  .hero #hero-title h2::before{
    content:""!important;position:absolute!important;left:0!important;top:-.02em!important;bottom:.02em!important;
    width:5px!important;border-radius:999px!important;background:#168eff!important;
    transform:none!important;pointer-events:none!important;
  }
  .hero .lead{
    display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
    margin:0!important;padding:0!important;translate:none!important;scale:1!important;
    rotate:0deg!important;transform:none!important;font-size:17px!important;line-height:1.62!important;
    overflow-wrap:normal!important;word-break:normal!important;white-space:normal!important;
  }
  .hero .hero-actions{
    display:flex!important;width:100%!important;max-width:100%!important;margin-top:28px!important;
    align-items:flex-start!important;flex-direction:column!important;gap:18px!important;
  }
  .hero .hero-actions .button{width:auto!important;max-width:100%!important}
  .hero .hero-actions .text-link{display:inline-block!important;width:auto!important;max-width:270px!important}
  .hero .hero-backdrop-exact,
  .hero .hero-backdrop-piece,
  .hero .hero-slide-dots,
  .hero .hero-signature-stamp,
  .hero .hero-vertical-label,
  .hero .hero-grid > .gl-decor{
    display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;
    margin:0!important;padding:0!important;pointer-events:none!important;
  }
  .hero .hero-disciplines{
    display:flex!important;flex-wrap:wrap!important;width:100%!important;max-width:100%!important;
    gap:10px 16px!important;margin:0!important;padding:20px 0 24px!important;
    border-top:1px solid #eceef1!important;translate:none!important;transform:none!important;
  }
  .hero .hero-disciplines span{white-space:nowrap!important;font-size:9px!important;letter-spacing:.13em!important}
  .hero .hero-disciplines i{display:none!important}
}

/* Mobilny eksport: dalsze sekcje muszą pozostać widoczne nawet w kapryśnym WebView. */
@media (max-width:780px){
  #main > section{visibility:visible!important}
  #main > section .reveal{opacity:1!important;transform:none!important;visibility:visible!important}
  .written-work,#po-godzinach,.principles,.faq-section,.contact-section{
    display:block!important;visibility:visible!important;opacity:1!important;
  }
  #po-godzinach{overflow:hidden!important}
  #po-godzinach .after-grid{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    gap:24px!important;position:relative!important;isolation:isolate!important;
  }
  #po-godzinach .after-photo{display:none!important}
  #po-godzinach .after-grid > img.gl-uploaded-image{
    position:relative!important;inset:auto!important;left:auto!important;right:auto!important;
    top:auto!important;bottom:auto!important;display:block!important;width:min(100%,360px)!important;
    max-width:100%!important;height:auto!important;margin:0 auto!important;translate:none!important;
    scale:1!important;rotate:0deg!important;transform:none!important;z-index:1!important;
  }
  #po-godzinach .after-grid > img.gl-uploaded-image:nth-of-type(1){order:1!important}
  #po-godzinach .after-grid > img.gl-uploaded-image:nth-of-type(2){order:2!important}
  #po-godzinach .after-copy{order:3!important;width:100%!important;min-width:0!important}
  #po-godzinach .after-grid > .gl-decor{display:none!important}

  /* Jawne tła ograniczają samowolne "upiększanie" przez tryb ciemny WebView. */
  .logo-strip{background:#fefbfb!important}
  .services,.written-work,.principles,.faq-section{background:#f5f7fa!important}
  .portfolio-section{background:#fff!important}
  .contact-section{background:#f6f8fc!important}
}

/* v23: stabilny mobilny wygląd zgodny z desktopem, bez poziomego przesuwania strony. */
:root{color-scheme:only light!important}

@media (max-width:620px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    color-scheme:only light!important;
  }
  body,#main{position:relative!important;max-width:100vw!important}
  #main{overflow-x:clip!important}
  #main>section,.site-header,footer{max-width:100vw!important}

  /* Jasne sekcje zachowują dokładnie paletę strony desktopowej. Gradient jest
     jednolity i powstrzymuje część mobilnych WebView przed automatycznym ściemnianiem. */
  .site-header,.hero,.portfolio-section,footer{
    background-color:#fff!important;
    background-image:linear-gradient(#fff,#fff)!important;
    color:#0a0a0c!important;
  }
  .logo-strip{
    background-color:#fefbfb!important;
    background-image:linear-gradient(#fefbfb,#fefbfb)!important;
    color:#8b8e95!important;
  }
  .services,.written-work,.principles,.faq-section{
    background-color:#f5f7fa!important;
    background-image:linear-gradient(#f5f7fa,#f5f7fa)!important;
    color:#0a0a0c!important;
  }
  .contact-section{
    background-color:#f6f8fc!important;
    background-image:linear-gradient(#f6f8fc,#f6f8fc)!important;
    color:#0a0a0c!important;
  }
  .stats-strip{
    background-color:#091327!important;
    background-image:linear-gradient(#091327,#091327)!important;
    color:#fff!important;
  }

  /* Kolory tekstów w jasnych sekcjach. Nie polegają na trybie kolorystycznym telefonu. */
  .hero,.hero h1,.hero h2,.hero strong,
  .services h1,.services h2,.services h3,.services h4,.services strong,
  .written-work h1,.written-work h2,.written-work h3,.written-work h4,.written-work strong,
  .principles h1,.principles h2,.principles h3,.principles h4,.principles strong,
  .faq-section h1,.faq-section h2,.faq-section h3,.faq-section h4,.faq-section strong,
  .portfolio-section h1,.portfolio-section h2,.portfolio-section h3,.portfolio-section h4,.portfolio-section strong,
  .contact-section h1,.contact-section h2,.contact-section h3,.contact-section h4,.contact-section strong,
  footer strong{
    color:#0a0a0c!important;
    -webkit-text-fill-color:#0a0a0c!important;
  }
  .hero .lead,
  .services p,.services li,
  .written-work p,.written-work li,
  .faq-section p,.faq-section li,.faq-answer,
  .contact-section p,.contact-section li{
    color:#666a73!important;
    -webkit-text-fill-color:#666a73!important;
  }
  .portfolio-section p,.portfolio-section li{
    color:#5c6270!important;
    -webkit-text-fill-color:#5c6270!important;
  }
  .principles .principle-card li{
    color:#555961!important;
    -webkit-text-fill-color:#555961!important;
  }
  .logo-strip .section-kicker{
    color:#8b8e95!important;
    -webkit-text-fill-color:#8b8e95!important;
  }
  .stats-strip,.stats-strip .stat-number,.stats-strip .stat-label{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  .service-card,.written-card,.principle-card,.faq-item,.contact-card{
    background-color:#fff!important;
    background-image:linear-gradient(#fff,#fff)!important;
  }
  .contact-card span{color:#666a73!important;-webkit-text-fill-color:#666a73!important}
  .contact-card strong{color:#0a0a0c!important;-webkit-text-fill-color:#0a0a0c!important}

  /* Hero: pełna szerokość użytkowa, bez bocznego pustego pasa i dekoracji. */
  .hero{min-height:0!important;overflow:hidden!important}
  .hero .hero-grid.container{
    width:calc(100% - 30px)!important;
    max-width:calc(100% - 30px)!important;
    margin-inline:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .hero .hero-copy{width:100%!important;max-width:100%!important;overflow:hidden!important}
  .hero #hero-title,.hero #hero-title .hero-line{
    width:100%!important;max-width:100%!important;min-width:0!important;
    overflow:visible!important;
  }
  .hero #hero-title h2{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    /* kontruje zapisane inline przesunięcie 65px/34px, zachowując poprzednią korektę mobilną */
    transform:translate(-69px,-39px)!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .hero .hero-backdrop-exact,
  .hero .hero-backdrop-piece,.hero .hero-slide-dots,
  .hero .hero-signature-stamp,.hero .hero-vertical-label,.hero .gl-decor{
    display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;
    margin:0!important;padding:0!important;pointer-events:none!important;
  }
  .hero .hero-disciplines{max-width:100%!important;overflow:hidden!important}
  .services .gl-decor{display:none!important}

  /* Elementy, które wcześniej poszerzały cały dokument. */
  .logo-strip,.logo-strip .container,.logos,
  .services,.services>.container,
  .portfolio-section,.portfolio-section>.container,.case-list,.case-card{
    max-width:100vw!important;
    overflow-x:hidden!important;
  }

  /* Wachlarze pozostają spójne, ale są delikatnie mniejsze na telefonie. */
  #portfolio .fan{
    width:280px!important;
    max-width:280px!important;
    height:290px!important;
    margin-inline:auto!important;
    transform:scale(.82)!important;
    transform-origin:center center!important;
  }

  /* Po godzinach: główne zdjęcie, treść, a dopiero potem okrągła Tori. */
  #po-godzinach .after-grid>img.gl-uploaded-image:nth-of-type(2){
    order:1!important;
    width:min(100%,330px)!important;
    margin:0 auto!important;
  }
  #po-godzinach .after-copy{order:2!important}
  #po-godzinach .after-grid>img.gl-uploaded-image:nth-of-type(1){
    order:3!important;
    width:min(54vw,205px)!important;
    margin:10px auto 0!important;
    border-radius:50%!important;
    object-fit:cover!important;
  }
}

:root{
  --blue:#233d63;--blue-dark:#172941;--ink:#1b1c1f;--muted:#6e7075;--line:#d9d9d6;--paper:#f7f6f2;--soft:#ecebe7;--navy:#17253a;--washed:#202226;--max:1240px;
  --shadow:0 28px 70px rgba(13,18,26,.18);--radius:4px;color-scheme:light only;
}
html{color-scheme:light only;background:#f7f6f2}body{background:var(--paper)!important;color:var(--ink)!important;font-family:Manrope,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;overflow-x:hidden}
body,section,header,footer{forced-color-adjust:none}h1,h2,h3{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;font-weight:500;letter-spacing:.01em}em{font-style:normal;color:#5b7396}.container{width:min(var(--max),calc(100% - 64px))}.section{padding:112px 0}.eyebrow{font-family:Manrope,Inter,sans-serif;color:var(--blue);font-weight:800;letter-spacing:.2em;font-size:10px}.eyebrow:before{width:38px;height:1px}.eyebrow-light{color:#bac8dc}.button{border-radius:2px;background:var(--navy);box-shadow:none;padding:15px 20px;font-size:13px;letter-spacing:.02em}.button:hover{background:#213b60;box-shadow:none;transform:translateY(-2px)}.button span{font-size:18px;line-height:1}.button-light{background:#f5f4f0;color:#17191d}.button-light:hover{background:#fff;color:#111}.button-outline{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff}.button-outline:hover{background:#fff;color:#17191d}.text-link{font-size:13px}.text-link-light{color:#e6e7e9!important}.text-link-light span{color:#9db0ca}
.site-header.biernat-header{height:auto;background:rgba(247,246,242,.94);border-bottom:1px solid rgba(27,28,31,.1);backdrop-filter:blur(14px)}.biernat-header .header-inner{height:76px;gap:28px}.biernat-brand{position:relative;display:flex;flex-direction:row;align-items:center;gap:9px}.biernat-brand .brand-logo-image{width:118px!important;height:auto!important;max-width:none!important;object-fit:contain}.brand-studio{font-size:8px;font-weight:800;letter-spacing:.26em;color:#62656c;border-left:1px solid #bbb;padding-left:9px;margin-top:2px}.biernat-header .site-nav{gap:26px}.biernat-header .site-nav a{font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:#34363a}.biernat-header .site-nav a:after{background:var(--navy);bottom:-12px;height:1px}.biernat-header .header-cta{margin-left:6px;background:#1e2f48}.biernat-header .menu-toggle span{background:#191b1f}
.biernat-hero,.biernat-hero *,.biernat-price,.biernat-price *,.biernat-contact,.biernat-contact *,.biernat-footer,.biernat-footer *{-webkit-text-fill-color:currentColor!important}
.biernat-hero{background:#191b1f!important;color:#fff;min-height:690px;padding:0;position:relative;overflow:hidden}.biernat-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(126deg,transparent 0 59%,rgba(39,61,91,.45) 59% 72%,transparent 72%);pointer-events:none}.biernat-hero .container{width:min(1380px,calc(100% - 72px))}.biernat-hero .hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(460px,.98fr);min-height:690px;gap:60px;align-items:stretch}.biernat-hero .hero-copy{padding:88px 0 70px;align-self:center;z-index:4}.hero-wordmark-row{display:flex;align-items:center;gap:15px;margin-bottom:52px}.hero-wordmark-row img{width:218px!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain}.hero-wordmark-row span{border-left:1px solid rgba(255,255,255,.35);padding-left:14px;font-size:9px;font-weight:800;letter-spacing:.3em;color:#c5c8cd!important}.hero-kicker{margin:0 0 20px;color:#aab8cc!important;font-size:10px;font-weight:800;letter-spacing:.24em}.biernat-hero h1{font-size:clamp(50px,5.35vw,82px);line-height:.98;margin:0 0 28px;letter-spacing:.01em;text-transform:uppercase;max-width:700px}.biernat-hero h1,.biernat-hero h1 .hero-line{color:#fff!important}.biernat-hero h1 .hero-line{display:block;white-space:nowrap}.biernat-hero h1 em{color:#8ca3c1!important}.biernat-hero .lead{font-size:17px;line-height:1.75;color:#c4c6ca;max-width:650px}.biernat-hero .hero-actions{margin-top:34px}.biernat-hero .hero-proof{border-top:1px solid rgba(255,255,255,.14);margin-top:52px;padding-top:23px;gap:34px}.biernat-hero .hero-proof strong{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:15px;font-family:Manrope,Inter,sans-serif}.biernat-hero .hero-proof span{color:#92969d!important;font-size:10px;max-width:190px}.biernat-hero .hero-visual{height:auto;min-height:690px;isolation:isolate}.biernat-hero .hero-stage{inset:0;background:#303237;overflow:hidden}.biernat-hero .hero-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#191b1f 0,rgba(25,27,31,.72) 5%,transparent 25%,transparent 85%,rgba(23,37,58,.35) 100%);z-index:5;pointer-events:none}.biernat-hero .hero-slide{inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:none;border-radius:0;box-shadow:none}.biernat-hero .hero-slide:nth-child(2){object-position:center 24%}.biernat-hero .hero-slide:nth-child(3){object-position:center 25%}.biernat-hero .hero-slide-dots{right:30px;bottom:30px}.biernat-hero .hero-slide-dots button{background:rgba(255,255,255,.35)}.biernat-hero .hero-slide-dots button.is-active{background:#fff}.biernat-hero .hero-vertical-label{right:-8px;color:rgba(255,255,255,.5);font-size:8px;letter-spacing:.42em}.hero-monogram{position:absolute;left:-38px;bottom:34px;z-index:8;width:82px;height:82px;background:#223a5b;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16)}.hero-monogram img{width:42px;height:42px;object-fit:contain}
.biernat-about{background:var(--paper)}.biernat-about .about-grid{grid-template-columns:.9fr 1.1fr;gap:95px}.about-photo-stack{position:relative;min-height:650px}.about-main-photo{position:absolute;inset:0 17% 0 0;background:#fff;overflow:hidden;box-shadow:var(--shadow)}.about-main-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.about-side-photo{position:absolute;right:0;bottom:48px;width:36%;background:#1d2d45;padding:8px;box-shadow:0 18px 42px rgba(15,20,30,.22);z-index:4}.about-side-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top}.about-side-photo span{display:block;padding:10px 4px 4px;color:#fff;font-size:8px;letter-spacing:.22em;text-align:center;font-weight:800}.about-lineart{position:absolute;left:-72px;top:-54px;width:200px;opacity:.13;z-index:5}.biernat-about h2{font-size:clamp(46px,5vw,70px);text-transform:uppercase;line-height:1.02}.biernat-about .big-copy{font-size:21px;line-height:1.62;color:#2a2c30}.biernat-about .about-copy>p:not(.big-copy):not(.about-signature){font-size:15px;line-height:1.8;color:#6e7075}.about-signature{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;font-size:24px;letter-spacing:.05em;text-transform:uppercase;margin-top:28px;color:#243d62}.biernat-about .skill-list span{border-radius:2px;background:transparent;border-color:#cfd0ce;font-size:10px;letter-spacing:.04em}
.biernat-price{position:relative;background:#1b1d21;color:#fff;overflow:hidden}.biernat-price:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 0 64%,rgba(32,54,84,.72) 64% 75%,transparent 75%);pointer-events:none}.price-watermark{position:absolute;left:-110px;bottom:-120px;width:520px;opacity:.045;transform:rotate(-4deg)}.price-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:96px;align-items:center;position:relative;z-index:2}.price-intro h2{font-size:clamp(50px,6vw,82px);line-height:1;text-transform:uppercase;margin:10px 0 28px}.price-intro h2 em{color:#8ba0bc}.price-intro p{color:#aeb2b8;line-height:1.8;max-width:520px}.price-intro .button{margin-top:30px}.price-card{background:#24272c;border:1px solid rgba(255,255,255,.12);padding:42px 48px;box-shadow:0 28px 70px rgba(0,0,0,.27);position:relative}.price-card:before{content:"";position:absolute;top:0;right:0;width:108px;height:108px;background:#203653;clip-path:polygon(100% 0,100% 100%,0 0)}.price-card-head{display:flex;align-items:center;gap:15px;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:22px;margin-bottom:32px}.price-card-head img{width:36px;height:36px;object-fit:contain}.price-card-head span{font-size:9px;letter-spacing:.28em;color:#b6bac0;font-weight:800}.price-group h3{font-size:28px;letter-spacing:.13em;margin:0 0 20px;color:#f4f4f2}.price-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:end;padding:13px 0}.price-row span{font-size:14px;color:#dedfe1}.price-row i{border-bottom:1px dotted #667286;margin-bottom:5px}.price-row strong{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;font-size:24px;font-weight:400;color:#fff;white-space:nowrap}.price-group-last{margin-top:35px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1)}.price-note{margin:28px 0 0;color:#80858d;font-size:9px;letter-spacing:.05em}.biernat-strip{background:#f0efeb;border-bottom:1px solid #d7d7d3}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.strip-grid>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:25px 24px;border-right:1px solid #d1d1cd}.strip-grid>div:first-child{border-left:1px solid #d1d1cd}.strip-grid b{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;font-size:24px;color:#2b466b;font-weight:400}.strip-grid span{font-size:11px;font-weight:700;color:#56595e;line-height:1.4}
.biernat-process{background:#f7f6f2}.process-heading{max-width:820px}.process-heading h2{font-size:clamp(46px,5.4vw,74px);text-transform:uppercase;line-height:1.04}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d3d3cf;border:1px solid #d3d3cf;margin-top:50px}.process-card{background:#f7f6f2;padding:42px 36px;min-height:330px}.process-card>span{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;color:#8290a4;font-size:16px}.process-card h3{font-size:27px;text-transform:uppercase;margin:52px 0 16px}.process-card p{font-size:13px;line-height:1.8;color:#6a6c71;margin:0}.process-card:hover{background:#fff}
.biernat-gallery{background:#fff}.gallery-heading{max-width:900px}.gallery-heading h2{font-size:clamp(48px,5.5vw,76px);text-transform:uppercase;line-height:1.02}.gallery-heading>p{max-width:700px}.biernat-gallery .case-list{margin-top:65px}.biernat-gallery .case-card{grid-template-columns:1.05fr .95fr;gap:90px}.biernat-gallery .fan{height:610px;max-width:560px}.biernat-gallery .fan img{object-fit:cover!important;background:#222;padding:0!important;border-radius:2px;width:66%;height:80%;filter:grayscale(1)}.biernat-gallery .fan-front{object-fit:cover!important;object-position:center!important}.biernat-gallery .fan-back-left,.biernat-gallery .fan-back-right{object-position:center 18%}.biernat-gallery .fan-mid-left,.biernat-gallery .fan-mid-right{object-position:center 12%}.biernat-gallery .case-no{color:#536f94}.biernat-gallery .case-copy h3{font-size:48px;line-height:1.05;text-transform:uppercase}.biernat-gallery .case-copy h3 em{color:#536f94}.biernat-gallery .case-copy p{font-size:16px;line-height:1.75}.biernat-gallery .tags span{border-radius:2px;background:#f4f3ef;font-size:10px}.biernat-gallery .case-open{color:#213d63;text-transform:uppercase;font-size:11px;letter-spacing:.1em}
.biernat-faq{background:#eeede9}.faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.faq-intro{position:sticky;top:130px}.faq-intro h2{font-size:clamp(46px,5vw,68px);text-transform:uppercase;line-height:1.05}.faq-intro p{font-size:14px;line-height:1.8;color:#74767a}.biernat-faq .faq-list{margin:0}.biernat-faq .faq-item{background:transparent;border:0;border-bottom:1px solid #cfd0cc;border-radius:0}.biernat-faq .faq-item:first-child{border-top:1px solid #cfd0cc}.biernat-faq .faq-item summary{padding:23px 4px}.biernat-faq .faq-question-text{font-family:Oswald,"Arial Narrow",Impact,Inter,sans-serif;font-size:21px;text-transform:uppercase;letter-spacing:.025em}.biernat-faq .faq-answer p{font-size:13px;line-height:1.8;color:#66696e;padding:0 45px 24px 4px}.biernat-faq .faq-icon:before,.biernat-faq .faq-icon:after{background:#314b70}
.biernat-contact{background:#19202a;color:#fff;padding:110px 0}.biernat-contact .contact-grid{grid-template-columns:.8fr 1.2fr;gap:75px}.biernat-contact .contact-copy h2{font-size:clamp(48px,5.5vw,76px);text-transform:uppercase;line-height:1.02}.biernat-contact .contact-copy h2 em{color:#9fb0c8}.biernat-contact .contact-copy>p{color:#bdc1c7;font-size:15px;line-height:1.85}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:32px}.contact-address-link{color:#c8d1de;font-size:12px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:4px}.map-card{background:#f3f2ee;padding:10px;box-shadow:0 30px 75px rgba(0,0,0,.3)}.map-card iframe{display:block;width:100%;height:430px;border:0;filter:grayscale(1) contrast(.95)}.map-caption{display:flex;align-items:center;gap:14px;padding:17px 12px 8px;color:#1c1e22}.map-caption img{width:38px;height:38px;object-fit:contain}.map-caption div{display:flex;flex-direction:column}.map-caption b{font-size:13px}.map-caption span{font-size:10px;color:#777a7f;margin-top:2px}.biernat-footer{background:#111317;border-top:1px solid rgba(255,255,255,.08);color:#fff;padding:30px 0}.biernat-footer .footer-inner{min-height:52px}.biernat-footer .brand-studio{color:#a8abb1;border-color:#555}.biernat-footer .footer-inner p{color:#83868d}.biernat-footer .footer-inner>a:last-child{color:#c8cad0}.biernat-footer .brand-logo-image{width:112px!important;height:auto!important}
.lightbox{background:rgba(12,14,18,.96)}.lightbox::backdrop{background:rgba(12,14,18,.96)}.lightbox figure img{border-radius:2px}.toast{background:#1a2230}
@media(max-width:1080px){.biernat-hero .hero-grid{grid-template-columns:1fr 470px;gap:35px}.biernat-about .about-grid{gap:55px}.price-grid{gap:55px}.faq-layout{gap:50px}.biernat-gallery .case-card{gap:50px}.strip-grid{grid-template-columns:1fr 1fr}.strip-grid>div:nth-child(2){border-right:0}.strip-grid>div:nth-child(3){border-left:1px solid #d1d1cd;border-top:1px solid #d1d1cd}.strip-grid>div:nth-child(4){border-top:1px solid #d1d1cd}}
@media(max-width:800px){.container,.biernat-hero .container{width:min(100% - 30px,var(--max))}.biernat-header .header-inner{height:68px}.biernat-brand .brand-logo-image{height:27px!important}.biernat-header .site-nav{inset:68px 0 auto 0;background:#f7f6f2}.biernat-hero .hero-grid{grid-template-columns:1fr;min-height:0;gap:0}.biernat-hero .hero-copy{padding:70px 0 45px}.hero-wordmark-row{margin-bottom:38px}.biernat-hero h1{font-size:58px}.biernat-hero .hero-visual{min-height:540px}.hero-monogram{left:20px}.biernat-about .about-grid,.price-grid,.biernat-gallery .case-card,.faq-layout,.biernat-contact .contact-grid{grid-template-columns:1fr}.about-photo-stack{min-height:620px;max-width:620px}.price-grid{gap:55px}.price-intro{max-width:650px}.process-grid{grid-template-columns:1fr}.process-card{min-height:0}.process-card h3{margin-top:28px}.biernat-gallery .case-list{margin-top:35px}.biernat-gallery .case-card{gap:35px}.biernat-gallery .fan{height:520px}.faq-intro{position:static}.map-card iframe{height:390px}.section{padding:86px 0}.biernat-contact{padding:86px 0}}
@media(max-width:540px){.container,.biernat-hero .container{width:min(100% - 24px,var(--max))}.brand-studio{display:none}.biernat-brand .brand-logo-image{height:25px!important;max-width:170px!important}.biernat-hero .hero-copy{padding:55px 0 38px}.hero-wordmark-row img{width:185px}.hero-wordmark-row{margin-bottom:32px}.biernat-hero h1{font-size:48px}.biernat-hero .lead{font-size:15px}.biernat-hero .hero-actions{align-items:flex-start}.biernat-hero .hero-proof{display:grid;grid-template-columns:1fr 1fr;gap:22px}.biernat-hero .hero-visual{min-height:460px}.biernat-hero .hero-slide{object-position:center 20%}.hero-monogram{width:64px;height:64px;bottom:20px}.hero-monogram img{width:32px}.about-photo-stack{min-height:500px}.about-main-photo{right:10%}.about-side-photo{width:38%;bottom:25px}.about-lineart{width:150px;left:-44px}.biernat-about h2,.price-intro h2,.process-heading h2,.gallery-heading h2,.faq-intro h2,.biernat-contact .contact-copy h2{font-size:43px}.biernat-about .big-copy{font-size:18px}.price-card{padding:32px 23px}.price-row{gap:9px}.price-row span{font-size:13px}.price-row strong{font-size:21px}.strip-grid{grid-template-columns:1fr}.strip-grid>div{border-left:1px solid #d1d1cd!important;border-right:1px solid #d1d1cd!important;border-top:1px solid #d1d1cd}.strip-grid>div:first-child{border-top:0}.process-card{padding:34px 26px}.biernat-gallery .fan{height:405px}.biernat-gallery .case-copy h3{font-size:39px}.biernat-faq .faq-question-text{font-size:18px}.map-card iframe{height:320px}.footer-inner{gap:18px}}

#gl-written-tools-box{display:none!important}

/* FAQ: lżejsze belki, wygodniejsze marginesy i czytelniejsza typografia. */
.biernat-faq .faq-list{
  display:grid!important;
  gap:10px!important;
}
.biernat-faq .faq-item,
.biernat-faq .faq-item:first-child{
  overflow:hidden!important;
  background:#f8f8f6!important;
  border:1px solid #d9d9d4!important;
  border-radius:10px!important;
  box-shadow:none!important;
  transition:background-color .24s ease,border-color .24s ease,box-shadow .24s ease,transform .24s ease!important;
}
.biernat-faq .faq-item:hover{
  background:#fff!important;
  border-color:#b8bec7!important;
  transform:translateY(-1px)!important;
}
.biernat-faq .faq-item[open]{
  background:#fff!important;
  border-color:#9facbd!important;
  box-shadow:inset 3px 0 0 #314b70,0 12px 28px rgba(25,32,42,.07)!important;
}
.biernat-faq .faq-item summary{
  min-height:62px!important;
  padding:18px 18px 18px 24px!important;
  gap:20px!important;
}
.biernat-faq .faq-item[open] summary{
  padding-bottom:12px!important;
}
.biernat-faq .faq-question-text{
  font-family:Manrope,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:16px!important;
  font-weight:650!important;
  line-height:1.42!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.biernat-faq .faq-icon{
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  border:0!important;
  border-radius:50%!important;
  background:#e9ecf0!important;
}
.biernat-faq .faq-icon:before,
.biernat-faq .faq-icon:after{
  width:12px!important;
  height:1.5px!important;
  background:#314b70!important;
}
.biernat-faq .faq-item[open] .faq-icon{
  background:#314b70!important;
}
.biernat-faq .faq-item[open] .faq-icon:before,
.biernat-faq .faq-item[open] .faq-icon:after{
  background:#fff!important;
}
.biernat-faq .faq-answer{
  padding:0 62px 20px 24px!important;
  border-top:0!important;
}
.biernat-faq .faq-answer p{
  margin:0!important;
  padding:0!important;
  font-size:13.5px!important;
  line-height:1.75!important;
}

/* Realizacje: mniej pustego miejsca przed pierwszą realizacją. */
.biernat-gallery .gallery-heading{
  margin-bottom:0!important;
}
.biernat-gallery .case-list{
  margin-top:28px!important;
}
@media(min-width:801px){
  .biernat-gallery .case-card{
    align-items:start!important;
  }
  .biernat-gallery .case-copy{
    padding-top:24px!important;
  }

  /* Kropki hero na wysokości informacji „Kameralnie / Dorośli i dzieci”. */
  .biernat-hero .hero-slide-dots{
    bottom:84px!important;
  }
}
@media(max-width:800px){
  .biernat-hero .hero-slide-dots{
    bottom:20px!important;
  }
}
@media(max-width:540px){
  .biernat-faq .faq-item summary{
    min-height:58px!important;
    padding:16px 14px 16px 18px!important;
    gap:14px!important;
  }
  .biernat-faq .faq-question-text{
    font-size:15px!important;
  }
  .biernat-faq .faq-answer{
    padding:0 48px 18px 18px!important;
  }
}

/* Monogram RB bez niebieskiego pola pod spodem. */
.biernat-hero .hero-monogram{
  width:auto!important;
  height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  display:block!important;
  place-items:unset!important;
}
.biernat-hero .hero-monogram img{
  display:block!important;
  width:58px!important;
  height:auto!important;
  object-fit:contain!important;
}

/* Facebook w kontakcie. */
.contact-socials{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:2px;
}
.contact-social-link{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  text-decoration:none;
  transition:background-color .22s ease,border-color .22s ease,transform .22s ease;
}
.contact-social-link svg{
  width:21px;
  height:21px;
  fill:currentColor;
}
.contact-social-link:hover{
  background:#fff;
  border-color:#fff;
  color:#19202a;
  transform:translateY(-2px);
}

/* Kontrolki slidera są teraz ruchomym obiektem edytora. */
.biernat-hero .hero-slide-dots[data-gl-movable="1"]{
  cursor:grab;
  touch-action:none;
}
body.gl-graphic-edit .biernat-hero .hero-slide-dots[data-gl-movable="1"]{
  outline:1px dashed rgba(255,255,255,.5);
  outline-offset:8px;
}
body.gl-graphic-edit .biernat-hero .hero-slide-dots[data-gl-movable="1"]:active{
  cursor:grabbing;
}
@media(max-width:540px){
  .biernat-hero .hero-monogram img{width:46px!important}
}

/* Jedno zdjęcie dla desktopu, tabletu i telefonu. Zawsze w normalnym układzie strony. */
.biernat-about .about-grid{
  grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)!important;
  gap:72px!important;
  align-items:center!important;
}

.biernat-about .about-team-photo{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
  align-self:center!important;
  justify-self:center!important;
  z-index:auto!important;
}

.biernat-about .about-team-photo img{
  display:block!important;
  position:static!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform-origin:center center!important;
  box-shadow:0 18px 42px rgba(0,0,0,.18)!important;
}

.biernat-about .about-copy{
  position:relative!important;
  z-index:auto!important;
  min-width:0!important;
}

@media(max-width:900px){
  .biernat-about .about-grid{
    grid-template-columns:1fr!important;
    gap:38px!important;
  }

  .biernat-about .about-team-photo{
    max-width:none!important;
  }
}

@media(max-width:620px){
  .biernat-about .about-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .biernat-about .about-team-photo{
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
  }

  .biernat-about .about-copy{
    width:100%!important;
    margin:0!important;
    clear:both!important;
  }
}

@media(max-width:390px){
  .biernat-about .about-team-photo{
    width:100%!important;
    max-width:none!important;
  }
}

/* Jeden Hero = jedno źródło zdjęcia na desktopie i telefonie. */
.hero-mobile-media-slot{
  display:none;
}

/* Nawigacja animacji oraz boczny podpis usunięte niezależnie od breakpointu. */
.biernat-hero .hero-slide-dots,
.biernat-hero .hero-vertical-label{
  display:none!important;
}

/* Przy jednym aktywnym zdjęciu nie ma żadnego przełączania. */
.biernat-hero .hero-stage .hero-slide[data-gl-slide-enabled="0"]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

@media(max-width:620px){
  .biernat-hero .hero-mobile-media-slot{
    display:block!important;
    width:100%!important;
    margin:24px 0 26px!important;
    padding:0!important;
  }

  /* Ten sam kontener ze zdjęciem, który normalnie stoi po prawej na desktopie. */
  .biernat-hero .hero-mobile-media-slot > .hero-visual{
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1 / 1!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    isolation:isolate!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-stage{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#303237!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-slide{
    position:absolute!important;
    inset:0!important;
    display:none!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center 30%!important;
    opacity:0!important;
    visibility:hidden!important;
    translate:0 0!important;
    scale:1!important;
    rotate:0deg!important;
    transform:none!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-slide[data-gl-slide-enabled="1"].is-active{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }

  /* Na telefonie zostawiamy sam portret, bez dodatkowych nakładek. */
  .biernat-hero .hero-mobile-media-slot .hero-monogram{
    display:none!important;
  }

  .biernat-hero .hero-mobile-media-slot + .lead{
    margin-top:0!important;
  }
}

.biernat-header .header-socials a{
  color:#1877f2!important;
}
.biernat-header .header-socials a:hover{
  color:#0f68df!important;
}

#gl-editor-panel #gl-text-color-heading{
  border-color:#5b7396!important;
}
#gl-editor-panel #gl-text-color-heading::before{
  content:"";
  display:inline-block;
  width:9px;
  height:9px;
  margin-right:5px;
  border-radius:50%;
  background:#5b7396;
  vertical-align:-1px;
}

/* Zachowujemy wizualny pierwszy slot po usunięciu zakładki „Fryzury”. */
.biernat-header .site-nav .nav-empty-slot{
  visibility:hidden;
  pointer-events:none;
  user-select:none;
  font-size:12px;
  font-weight:650;
  text-transform:uppercase;
  letter-spacing:.08em;
  white-space:nowrap;
}
@media(max-width:780px){
  /* W rozwijanym menu telefonu nie zostawiamy pustej pozycji. */
  .biernat-header .site-nav .nav-empty-slot{
    display:none!important;
  }
}

/* Telefon ma te same kolory NAPISÓW co desktop.
   Tła pozostają dokładnie takie jak w v35. */
@media(max-width:800px){
  .biernat-hero h1 em{
    color:#8ca3c1!important;
    -webkit-text-fill-color:#8ca3c1!important;
  }

  .biernat-about h2 em,
  .biernat-process h2 em,
  .biernat-faq h2 em{
    color:#5b7396!important;
    -webkit-text-fill-color:#5b7396!important;
  }

  .biernat-price .price-intro h2 em{
    color:#8ba0bc!important;
    -webkit-text-fill-color:#8ba0bc!important;
  }

  .biernat-gallery .case-copy h3 em{
    color:#536f94!important;
    -webkit-text-fill-color:#536f94!important;
  }

  .biernat-contact .contact-copy h2 em{
    color:#9fb0c8!important;
    -webkit-text-fill-color:#9fb0c8!important;
  }

  [data-gl-inline-color="1"]{
    color:var(--gl-inline-color)!important;
    -webkit-text-fill-color:var(--gl-inline-color)!important;
  }
}

@media(max-width:620px){
  .contact-section.biernat-contact{
    background:#19202a!important;
    background-color:#19202a!important;
    background-image:none!important;
  }
}

@media(max-width:620px){
  .biernat-contact .contact-copy h2 .contact-title-main{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
}

.biernat-contact [data-gl-text-id="bs-text-074"]{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.biernat-contact [data-gl-text-id="bs-text-074"] > :not(em){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.biernat-contact [data-gl-text-id="bs-text-074"] > em,
.biernat-contact [data-gl-text-id="bs-text-074"] > em *{
  color:#9fb0c8!important;
  -webkit-text-fill-color:#9fb0c8!important;
}

.biernat-about .about-team-photo{
  overflow:visible!important;
  max-width:none!important;
}
.biernat-about .about-team-photo img[data-gl-editor-id="biernat-team-photo-v45"]{
  max-width:none!important;
  overflow:visible!important;
}
@media(max-width:900px){
  .biernat-about .about-team-photo{
    width:100%!important;
    max-width:none!important;
  }
}
@media(max-width:620px){
  .biernat-about .about-team-photo{
    width:100%!important;
    max-width:none!important;
  }
}
@media(max-width:390px){
  .biernat-about .about-team-photo{
    width:100%!important;
    max-width:none!important;
  }
}

:root,
html{
  color-scheme:only light!important;
}

.site-header{
  -webkit-backdrop-filter:blur(18px);
}

@media(max-width:800px){
  /* HERO: jeden kontener, jeden aktywny portret. */
  .biernat-hero .hero-mobile-media-slot{
    display:block!important;
    width:100%!important;
    margin:24px auto 26px!important;
    padding:0!important;
  }

  .biernat-hero .hero-mobile-media-slot > .hero-visual{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1 / 1!important;
    margin:0 auto!important;
    padding:0!important;
    overflow:hidden!important;
    isolation:isolate!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-stage{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#303237!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-slide{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center 30%!important;
    translate:0 0!important;
    scale:1!important;
    rotate:0deg!important;
    transform:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-slide[data-gl-slide-enabled="0"]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
  }

  .biernat-hero .hero-mobile-media-slot .hero-slide[data-gl-slide-enabled="1"].is-active{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    z-index:4!important;
  }

  /* NASZ ZESPÓŁ:
     desktopowe przesunięcie X nie może przyklejać zdjęcia do lewego boku telefonu. */
  .biernat-about .about-team-photo{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:visible!important;
  }

  .biernat-about .about-team-photo img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    transform-origin:center center!important;
    translate:0 -33px!important;
  }

  .biernat-about h2{
    color:#101114!important;
    -webkit-text-fill-color:#101114!important;
  }
  .biernat-about h2 em,
  .biernat-about h2 em *{
    color:#5b7396!important;
    -webkit-text-fill-color:#5b7396!important;
  }

  /* FAQ: identyczna jasna paleta w Chrome, Custom Tab, WebView i Safari. */
  .biernat-faq{
    background:#eeede9!important;
    color:#1b1c1f!important;
  }
  .biernat-faq .faq-item,
  .biernat-faq .faq-item:first-child{
    background:#f8f8f6!important;
    border-color:#d9d9d4!important;
    color:#17191d!important;
  }
  .biernat-faq .faq-item[open]{
    background:#fff!important;
    border-color:#9facbd!important;
  }
  .biernat-faq .faq-question-text{
    color:#17191d!important;
    -webkit-text-fill-color:#17191d!important;
  }
  .biernat-faq .faq-answer,
  .biernat-faq .faq-answer p{
    background:transparent!important;
    color:#66696e!important;
    -webkit-text-fill-color:#66696e!important;
  }

  /* Kontakt zachowuje desktopową ciemną sekcję i kolory nagłówka. */
  .contact-section.biernat-contact{
    background:#19202a!important;
    background-color:#19202a!important;
    background-image:none!important;
  }
  .biernat-contact .contact-copy h2{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  .biernat-contact .contact-copy h2 em,
  .biernat-contact .contact-copy h2 em *{
    color:#9fb0c8!important;
    -webkit-text-fill-color:#9fb0c8!important;
  }
}

@media(max-width:800px){
  .biernat-hero .hero-mobile-media-slot{
    display:block!important;
  }
  .biernat-hero .hero-mobile-media-slot > .hero-visual{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    min-height:0!important;
    pointer-events:auto!important;
  }
  .biernat-hero .hero-mobile-media-slot .hero-stage{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:100%!important;
    min-height:0!important;
    pointer-events:auto!important;
  }
  .biernat-hero .hero-mobile-media-slot .hero-slide[data-gl-slide-enabled="1"].is-active{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:100%!important;
    min-height:0!important;
    pointer-events:auto!important;
  }
}

#top{
  scroll-margin-top:0!important;
}
#gl-back-to-top{
  touch-action:manipulation!important;
  pointer-events:auto!important;
}

.biernat-hero .hero-mobile-static-photo{
  display:none!important;
}

@media(max-width:800px){
  /* Na telefonie NIE używamy desktopowego, transformowanego Hero. */
  .biernat-hero .hero-mobile-media-slot > .hero-visual{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  .biernat-hero .hero-mobile-media-slot{
    display:block!important;
    width:100%!important;
    margin:24px auto 26px!important;
    padding:0!important;
    background:transparent!important;
  }

  .biernat-hero .hero-mobile-static-photo{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
    rotate:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
}

@media(max-width:800px){
  .biernat-hero .hero-grid > .hero-visual{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
}
