:root{
  --bg:#0a0705;
  --red:#cf2015;
  --red2:#e6362a;
  --cream:#efe7d6;
  --ink:#141010;
  --muted:#8c8073;
  --line:#2a1d17;
  --display:'Bebas Neue','Arial Narrow',Impact,sans-serif;
  --body:'Helvetica Neue','HelveticaNeue',Helvetica,Arial,sans-serif;

  /* ---------- SKALOWANIE PROPORCJONALNE ----------
     --design : szerokość makiety (13" MacBook Pro = 1440 px CSS)
     --page-max: maksymalna szerokość strony; powyżej strona jest wyśrodkowana
     --u      : 1 px z makiety. Wszystkie rozmiary liczone jako calc(N * var(--u)),
                dzięki czemu cały układ skaluje się proporcjonalnie zamiast się przesuwać.
     Poniżej 860 px skalowanie zamarza i wchodzą reguły mobilne (media queries).      */
  --design:1440;
  --page-max:2000px;
  --u:calc(clamp(860px, 100vw, 2000px) / 1440);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--bg)}
body{background:var(--bg);color:#e9e1d3;font-family:var(--body);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  max-width:var(--page-max);margin:0 auto}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,.disp{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.92;letter-spacing:.02em}
.wrap{max-width:var(--page-max);margin:0 auto;padding:0 calc(86.4 * var(--u))}
.sec-title{font-family:var(--display);color:var(--red);font-size:calc(54 * var(--u));letter-spacing:.03em;margin-bottom:calc(22 * var(--u))}

/* ---------- divider (red line + circled up arrow) ---------- */
.divider{max-width:var(--page-max);margin:calc(10 * var(--u)) auto;padding:0 calc(86.4 * var(--u));display:flex;align-items:center;gap:calc(16 * var(--u))}
.divider .line{flex:1;height:calc(2 * var(--u));background:linear-gradient(90deg,var(--red),rgba(207,32,21,.15));position:relative}
.divider .line::before{content:"";position:absolute;left:0;top:calc(-3 * var(--u));width:60%;height:calc(8 * var(--u));background-image:repeating-linear-gradient(90deg,var(--red) 0 calc(2 * var(--u)),transparent calc(2 * var(--u)) calc(26 * var(--u)));opacity:.5}
.divider .up{width:calc(40 * var(--u));height:calc(40 * var(--u));border:calc(2 * var(--u)) solid var(--red);border-radius:50%;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:calc(20 * var(--u));flex:none;transition:.18s}
.divider .up:hover{background:var(--red);color:#fff}

/* =================== HERO =================== */
.hero-img{width:100%;display:block}
.hero-under{background:var(--bg);text-align:center;padding:calc(26 * var(--u)) calc(16 * var(--u)) calc(8 * var(--u))}
.hero-under .contact-line{font-family:var(--display);font-size:calc(30 * var(--u));letter-spacing:.06em}
.hero-under .contact-line .q{color:#efe7d6}
.hero-under .contact-line a{color:var(--red)}
.hero-under .contact-line .env{display:inline-block;border:calc(2 * var(--u)) solid var(--red);color:var(--red);padding:1px calc(8 * var(--u));border-radius:calc(3 * var(--u));margin-left:calc(8 * var(--u));font-family:var(--body);font-size:calc(16 * var(--u));vertical-align:middle}
.counter{display:flex;flex-direction:column;align-items:center;gap:calc(12 * var(--u));padding:calc(26 * var(--u)) 0 calc(6 * var(--u))}
.counter .digits{display:flex;gap:calc(12 * var(--u))}
.counter .digits span{font-family:var(--display);font-size:calc(72 * var(--u));color:#efe7d6;border:calc(2 * var(--u)) solid var(--red);border-radius:calc(4 * var(--u));width:calc(78 * var(--u));height:calc(96 * var(--u));display:flex;align-items:center;justify-content:center;line-height:1}
.counter .cap{font-family:var(--display);letter-spacing:.14em;font-size:calc(20 * var(--u))}
.counter .cap b{color:var(--red);font-weight:400}

/* =================== PHONE + MENU =================== */
.phonesec{padding:calc(40 * var(--u)) 0 calc(10 * var(--u))}
.phonegrid{display:grid;grid-template-columns:minmax(calc(280 * var(--u)),calc(380 * var(--u))) 1fr;gap:calc(64 * var(--u));align-items:start}
@media(max-width:860px){.phonegrid{grid-template-columns:1fr;gap:20px}}
.phonewrap{position:relative;width:100%;max-width:calc(400 * var(--u));margin:0 auto;user-select:none}
.phonewrap img{width:100%;pointer-events:none;-webkit-user-drag:none;filter:drop-shadow(0 calc(24 * var(--u)) calc(40 * var(--u)) rgba(0,0,0,.6))}
.hot{position:absolute;border:none;background:transparent;cursor:pointer;border-radius:calc(12 * var(--u));transition:.08s}
.hot:hover{background:rgba(140,255,60,.16);box-shadow:0 0 calc(14 * var(--u)) rgba(140,255,60,.35)}
.hot:active,.hot.press{background:rgba(140,255,60,.32);box-shadow:0 0 calc(20 * var(--u)) rgba(140,255,60,.6);transform:scale(.94)}
.hot.rec:hover{background:rgba(255,60,40,.2);box-shadow:0 0 calc(14 * var(--u)) rgba(255,60,40,.4)}
.phone-scr{position:absolute;left:8%;top:2%;font-family:var(--display);color:#8cff2a;font-size:calc(14 * var(--u));letter-spacing:.1em;text-shadow:0 0 calc(8 * var(--u)) rgba(140,255,42,.7);pointer-events:none;opacity:0;transition:.2s}
.phone-scr.on{opacity:1}

.menu .eyebrow{font-family:var(--display);color:var(--red);letter-spacing:.2em;font-size:calc(14 * var(--u));margin-bottom:calc(6 * var(--u))}
.menu ol{list-style:none}
.menu li{border-bottom:1px solid var(--line)}
.menu li:first-child{border-top:1px solid var(--line)}
.menu li a{display:flex;gap:calc(16 * var(--u));align-items:flex-start;padding:calc(12 * var(--u)) calc(4 * var(--u));transition:.15s}
.menu li a:hover{background:rgba(207,32,21,.08);padding-left:calc(12 * var(--u))}
.menu li .n{font-family:var(--display);color:var(--red);font-size:calc(24 * var(--u));line-height:1.1;flex:none;min-width:calc(44 * var(--u));text-align:right}
.menu li .t{font-size:calc(15 * var(--u));color:#e2d7c4}
.menu li.danger .n,.menu li.danger .t{color:#e6362a}

/* =================== CALL ZONE (cord on left) =================== */
.callzone {
  position: relative;
}

.cord {
  position: absolute;
  left: calc(26 * var(--u)); /* Poprawiono kolejność: MIN (26px), VAL, MAX (50px) */
  top: calc(561 * var(--u));                     /* ZMIANA: obniżenie przewodu o 500px (wcześniej było top: 0) */
  bottom: 0;
  width: calc(63.36 * var(--u));
  background: url('assets/img/cord.png') repeat-y center top;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 0;
}
.curve {
  position: absolute;
  left: calc(40 * var(--u)); 
  top: calc(520 * var(--u)); /* Stała pozycja od góry */
  width: calc(160 * var(--u)); 
  height: calc(320 * var(--u));
  background: url('../assets/img/curve.png') no-repeat center top;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 0;
}
/*.curve_down {
  position: absolute;
  left: clamp(25px, 1.4vw, 50px);
  top: 2950px;
  width: clamp(30px, 8.8vw, 160px);
  aspect-ratio: 10 / 200;
  background: url('assets/img/curve.png') no-repeat center bottom;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 0;
  transform:scaleY(-1);
}*/
/*.straight {
  position: absolute;
  left: clamp(155px, 1.4vw, 50px);
  top: 520px;
  width: clamp(30px, 100vw, 160px);
  aspect-ratio: 10 / 200;
  background: url('assets/img/straight.png') no-repeat center top;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 0;
}*/
.straight {
  position: absolute;
  left: calc(160 * var(--u)); 
  top: calc(520 * var(--u)); /* Stała pozycja od góry */
  width: calc(160 * var(--u)); 
  height: calc(320 * var(--u));
  background: url('../assets/img/straight.png') no-repeat center top;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 0;
}

.straight_down {
  position: absolute;
  left: calc(29 * var(--u)); 
  bottom: calc(-310 * var(--u)); 
  width: calc(590 * var(--u)); 
  height: calc(320 * var(--u));
  background: url('../assets/img/straight_down.png') no-repeat center top;
  background-size: contain;
  opacity: .92;
  pointer-events: none;
  z-index: 1; /* ZMIANA: Zwiększono z 0 na 1, aby element nie schował się pod tło */
}
@media (max-width: 860px) {
  .cord {
    display: none;
  }
  .curve {
    display: none;
  }
  .straight {
    display: none;
  }
  .curve_down {
    display: none;
  }
  .straight_down {
    display: none;
  }
}

.callzone .indent {
  padding-left: calc(86.4 * var(--u));
}

.callzone section{position:relative;z-index:1;padding:calc(34 * var(--u)) 0}

/* O FILMIE */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:calc(48 * var(--u));align-items:center}
@media(max-width:760px){.about-grid{grid-template-columns:1fr}}
.redpatch{background:var(--red);color:#fff;padding:calc(26 * var(--u)) calc(28 * var(--u));position:relative;
  clip-path:polygon(0 2%,3% 0,98% 1%,100% 4%,99% 97%,97% 100%,2% 99%,0 96%);box-shadow:0 calc(20 * var(--u)) calc(40 * var(--u)) rgba(0,0,0,.4)}
.redpatch p{font-size:calc(15 * var(--u));margin-bottom:calc(12 * var(--u))}.redpatch p:last-child{margin-bottom:0}
.about-img{border:1px solid var(--line);overflow:hidden;position:relative}
.about-img img{aspect-ratio:16/11;object-fit:cover;width:100%}
.about-img .cap{position:absolute;left:0;bottom:0;background:var(--red);color:#fff;font-family:var(--display);letter-spacing:.12em;font-size:calc(12 * var(--u));padding:calc(5 * var(--u)) calc(12 * var(--u))}

/* GALERIA */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(14 * var(--u))}
@media(max-width:760px){.gal{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.gal{grid-template-columns:1fr}}
.gcell{position:relative;overflow:hidden;background:#000;border:calc(2 * var(--u)) solid #d8cdb8;cursor:pointer}
.gcell img{aspect-ratio:3/2;object-fit:cover;width:100%;transition:.4s}
.gcell:hover img{transform:scale(1.06)}
.gcell .plus{position:absolute;right:calc(10 * var(--u));bottom:calc(8 * var(--u));font-family:var(--display);color:#8cff2a;font-size:calc(22 * var(--u));opacity:0;transition:.2s}
.gcell:hover .plus{opacity:1}

/* ANKIETA */
.survey-grid{display:grid;grid-template-columns:1fr auto;gap:calc(56 * var(--u));align-items:center}
@media(max-width:760px){.survey-grid{grid-template-columns:1fr}}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:calc(12 * var(--u)) calc(20 * var(--u));margin-bottom:calc(22 * var(--u));max-width:calc(460 * var(--u))}
.opt{display:flex;align-items:center;gap:calc(11 * var(--u));cursor:pointer}
.opt .box{width:calc(26 * var(--u));height:calc(26 * var(--u));border:calc(2 * var(--u)) solid #cdbfa6;background:#0d0a08;flex:none;position:relative;transition:.15s}
.opt.sel .box{border-color:var(--red)}
.opt.sel .box::after{content:"";position:absolute;inset:calc(4 * var(--u));background:var(--red);box-shadow:0 0 calc(10 * var(--u)) var(--red)}
.opt span{font-size:calc(16 * var(--u));color:#e2d7c4}
.btn-send{font-family:var(--display);letter-spacing:.06em;font-size:calc(22 * var(--u));background:var(--red);color:#fff;border:none;padding:calc(10 * var(--u)) calc(30 * var(--u));cursor:pointer;transition:.16s}
.btn-send:hover{background:var(--red2)}
.btn-send:disabled{opacity:.5;cursor:default}
.pie-wrap{position:relative;width:calc(340 * var(--u));aspect-ratio:1;margin:0 auto}
.pie-wrap svg{width:100%;height:100%;overflow:visible}
.pie-legend{display:flex;flex-wrap:wrap;gap:calc(6 * var(--u)) calc(16 * var(--u));justify-content:center;margin-top:calc(14 * var(--u));font-size:calc(12.5 * var(--u));color:#cabfac}
.pie-legend div{display:flex;align-items:center;gap:calc(6 * var(--u))}
.pie-legend i{width:calc(11 * var(--u));height:calc(11 * var(--u));border-radius:calc(2 * var(--u))}

/* NAGRAJ */
.recsec{position:relative}
.rec-inner{max-width:calc(640 * var(--u))}
.rec-inner p.big{font-size:calc(22 * var(--u));color:#e6ddcc;margin-bottom:calc(20 * var(--u))}
.rec-inner .noviol{font-family:var(--display);letter-spacing:.04em;font-size:calc(19 * var(--u));color:#fff;margin-bottom:calc(22 * var(--u))}
.rec-btn{font-family:var(--display);letter-spacing:.08em;font-size:calc(26 * var(--u));background:var(--red);color:#fff;border:none;padding:calc(12 * var(--u)) calc(42 * var(--u));cursor:pointer;transition:.16s;box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(207,32,21,.35)}
.rec-btn:hover{background:var(--red2);transform:translateY(calc(-2 * var(--u)))}
.handset-deco {
  position: absolute;
  left: calc(600 * var(--u)); 
  bottom: calc(-9 * var(--u));
  width: calc(200 * var(--u));
  pointer-events: none;
  opacity: .95;
  z-index: 0;
}
@media(max-width:760px){.handset-deco{display:none}}

/* ARCHIWUM */
.arch-row{display:flex;flex-wrap:wrap;gap:calc(18 * var(--u));align-items:flex-start}
.arch-item{display:flex;flex-direction:column;align-items:center;gap:calc(8 * var(--u));width:calc(118 * var(--u))}
.spk{width:calc(84 * var(--u));height:calc(84 * var(--u));border-radius:50%;border:calc(3 * var(--u)) solid #e8dfcb;background:transparent;color:#e8dfcb;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s;position:relative}
.spk svg{width:calc(38 * var(--u));height:calc(38 * var(--u))}
.spk:hover{border-color:var(--red);color:var(--red)}
.arch-item.active .spk,.arch-item.playing .spk{border-color:var(--red);color:var(--red);box-shadow:0 0 calc(22 * var(--u)) rgba(207,32,21,.5)}
.arch-item.playing .spk{animation:pulse 1s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 34px rgba(207,32,21,.8)}}
.arch-item .lab{font-size:calc(11 * var(--u));color:var(--muted);text-align:center;letter-spacing:.02em}
.arch-item .del{background:none;border:1px solid var(--line);color:var(--muted);font-size:calc(10 * var(--u));padding:calc(2 * var(--u)) calc(8 * var(--u));border-radius:calc(3 * var(--u));cursor:pointer;letter-spacing:.04em}
.arch-item .del:hover{border-color:var(--red);color:var(--red)}

/* FOOTER */
.footer{padding:calc(40 * var(--u)) 0 calc(30 * var(--u))}
.foot-panel{max-width:var(--page-max);margin:0 auto;background:var(--cream);color:var(--ink);border-radius:0;padding:calc(54 * var(--u)) calc(86.4 * var(--u));
  clip-path:polygon(0 1.5%,2% 0,99% 1%,100% 3%,99.5% 98%,98% 100%,1% 99%,0 97%)}
.foot-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:calc(60 * var(--u))}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr}}
.foot-panel h3{font-size:calc(34 * var(--u));color:var(--red);margin-bottom:calc(4 * var(--u))}
.foot-panel p.sm{color:#4a4038;font-size:calc(14 * var(--u));margin-bottom:calc(16 * var(--u));max-width:42ch}
.field{margin-bottom:calc(12 * var(--u))}
.field label{display:block;font-size:calc(12 * var(--u));letter-spacing:.08em;text-transform:uppercase;color:#7a6f60;margin-bottom:calc(5 * var(--u))}
.field input,.field textarea{width:100%;background:#fff;border:1px solid #cdbfa6;border-radius:calc(3 * var(--u));color:var(--ink);padding:calc(11 * var(--u)) calc(13 * var(--u));font-family:var(--body);font-size:calc(15 * var(--u))}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--red)}
.field textarea{resize:vertical;min-height:calc(110 * var(--u))}
.foot-panel .btn-send{color:#fff}
.foot-panel a.link{color:var(--red);text-decoration:underline}
.foot-meta{max-width:var(--page-max);margin:calc(18 * var(--u)) auto 0;padding:0 calc(86.4 * var(--u));display:flex;flex-wrap:wrap;gap:calc(12 * var(--u));justify-content:space-between;font-size:calc(12 * var(--u));color:var(--muted)}
.foot-meta a{color:var(--red)}

/* MODAL / LIGHTBOX / TOAST (recording flow) */
.overlay{position:fixed;inset:0;z-index:100;background:rgba(4,3,2,.88);backdrop-filter:blur(calc(4 * var(--u)));display:none;align-items:center;justify-content:center;padding:calc(20 * var(--u))}
.overlay.on{display:flex}
.modal{background:linear-gradient(170deg,#1a120e,#0a0705);border:1px solid var(--line);border-radius:calc(10 * var(--u));max-width:calc(520 * var(--u));width:100%;padding:calc(30 * var(--u));position:relative;box-shadow:0 calc(40 * var(--u)) calc(80 * var(--u)) rgba(0,0,0,.6)}
.modal .x{position:absolute;top:calc(12 * var(--u));right:calc(14 * var(--u));background:none;border:none;color:var(--muted);font-size:calc(26 * var(--u));cursor:pointer}
.modal h3{font-size:calc(34 * var(--u));color:var(--red);margin-bottom:calc(10 * var(--u))}
.warn{display:flex;gap:calc(12 * var(--u));background:rgba(207,32,21,.14);border:1px solid rgba(207,32,21,.5);border-radius:calc(6 * var(--u));padding:calc(14 * var(--u));margin:calc(6 * var(--u)) 0 calc(18 * var(--u))}
.warn .ico{color:var(--red);font-size:calc(22 * var(--u));flex:none}
.warn p{font-size:calc(14.5 * var(--u));color:#f2ddd8}
.consent{display:flex;gap:calc(10 * var(--u));align-items:flex-start;margin-bottom:calc(20 * var(--u));cursor:pointer}
.consent input{margin-top:calc(3 * var(--u));width:calc(18 * var(--u));height:calc(18 * var(--u));accent-color:var(--red);flex:none}
.consent span{font-size:calc(13.5 * var(--u));color:#c9beaa}
.consent a{color:var(--red);text-decoration:underline}
.modal .actions{display:flex;gap:calc(12 * var(--u));flex-wrap:wrap}
.mbtn{font-family:var(--display);letter-spacing:.05em;font-size:calc(19 * var(--u));padding:calc(11 * var(--u)) calc(22 * var(--u));border:calc(2 * var(--u)) solid transparent;border-radius:calc(3 * var(--u));cursor:pointer;background:none;color:inherit}
.mbtn.red{background:var(--red);color:#fff}.mbtn.red:hover{background:var(--red2)}
.mbtn.ghost{border-color:var(--muted);color:#e9e1d3}.mbtn.ghost:hover{border-color:var(--red);color:var(--red)}
.mbtn:disabled{opacity:.4;cursor:not-allowed}
.rec-live {
  text-align: center;
}

.ring {
  width: 170px;
  height: 170px;
  margin: 6px auto 8px;
  position: relative;
}

.ring svg {
  transform: rotate(-90deg);
}

.ring .cd {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.ring .cd .t {
  font-family: var(--display);
  font-size: 52px;
  color: #fff;
  line-height: 1; /* Zapobiega rozjeżdżaniu się tekstu w pionie */
}

.ring .cd .u {
  font-size: 11px;
  letter-spacing: .2em;
  color: var(--muted);
  text-transform: uppercase;
}

.livewave {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  height: 40px;
  margin: 12px 0;
}

.livewave i {
  width: 4px;
  background: var(--red);
  border-radius: 2px;
  height: 8px;
}

.rec-live.active .livewave i {
  animation: eq .5s ease-in-out infinite alternate;
}

@keyframes eq {
  to {
    transform: scaleY(2);
    opacity: 1;
  }
}

.lb {
  position: fixed;
  inset: 0;
  z-index: 110;
  background: rgba(4, 3, 2, .95);
  display: none;
  align-items: center;
  justify-content: center;
  /* Zmniejszono padding na mobile, aby zdjęcie miało więcej miejsca */
  padding: calc(10 * var(--u)); 
}
.lb.on {
  display: flex;
}
.lb img {
  /* KLUCZOWA ZMIANA: zdjęcie zajmie max 100% szerokości ekranu, ale nie więcej niż Twój limit */
  width: 100%;
  max-width: min(100%, calc(1324.8 * var(--u)));
  max-height: 80vh; /* Zmniejszono z 86vh, aby zostawić miejsce na ewentualną nawigację */
  object-fit: contain; /* Gwarantuje, że zdjęcie zachowa proporcje i nie zostanie zniekształcone */
  border-radius: calc(3 * var(--u));
  box-shadow: 0 calc(30 * var(--u)) calc(80 * var(--u)) rgba(0,0,0,.7);
}
.lb .nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, .5);
  border: 1px solid var(--line);
  color: #fff;
  font-size: calc(30 * var(--u));
  width: calc(52 * var(--u));
  height: calc(52 * var(--u));
  border-radius: 50%;
  cursor: pointer;
}
.lb .prev {
  left: calc(20 * var(--u));
}
.lb .next {
  right: calc(20 * var(--u));
}
.lb .x {
  position: absolute;
  top: calc(18 * var(--u));
  right: calc(22 * var(--u));
  background: none;
  border: none;
  color: #fff;
  font-size: calc(34 * var(--u));
  cursor: pointer;
}

/* Opcjonalne reguły dla bardzo małych ekranów (Media Queries) */
@media (max-width: 768px) {
  .lb {
    padding: calc(5 * var(--u));
  }
  .lb .nav {
    /* Na telefonach przyciski nav mogą nachodzić na zdjęcie, można je zmniejszyć lub ukryć na rzecz gestów */
    width: calc(40 * var(--u));
    height: calc(40 * var(--u));
    font-size: calc(22 * var(--u));
  }
}


.toast{position:fixed;left:50%;bottom:calc(26 * var(--u));transform:translateX(-50%) translateY(160%);z-index:130;background:var(--red);color:#fff;padding:calc(14 * var(--u)) calc(22 * var(--u));border-radius:calc(5 * var(--u));font-size:calc(14 * var(--u));box-shadow:0 calc(16 * var(--u)) calc(40 * var(--u)) rgba(0,0,0,.5);transition:.35s cubic-bezier(.2,.9,.3,1);max-width:calc(1296 * var(--u));text-align:center}
.toast.on{transform:translateX(-50%) translateY(0)}
.toast.green{background:#16240d;border:1px solid #8cff2a;color:#8cff2a}
@keyframes shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-8px)}40%,60%{transform:translateX(8px)}}
.shake{animation:shake .5s}
/* ============================================================
   NOWA MAKIETA — dopiski
   ============================================================ */

/* --- BANER z edytowalnymi dymkami --- */
#baner{margin:0}
.banner{position:relative;width:100%;line-height:0}
.banner-img{width:100%;display:block}
.burst{position:absolute;transform:translate(-50%,-50%);text-align:center;font-family:var(--display);
  line-height:1.05;letter-spacing:.02em;text-transform:uppercase;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.15)}
.burst .r{color:var(--red2)}
.burst.tl  {left:16.3%;top:20.4%;width:calc(345.6 * var(--u));max-width:calc(460 * var(--u));font-size:calc(28.08 * var(--u));color:#f3ece0}
.burst.tl .r{color:var(--red2)}
.burst.left{left:15.6%;top:62%;width:calc(288 * var(--u));max-width:calc(380 * var(--u));font-size:calc(29.52 * var(--u));color:#fff}
.burst.tr  {left:84%;top:29%;width:calc(345.6 * var(--u));max-width:calc(440 * var(--u));font-size:calc(26.64 * var(--u));color:#1c1206}
.burst.tr .r{color:var(--red)}
.burst.br  {left:85.2%;top:81%;width:calc(302.4 * var(--u));max-width:calc(400 * var(--u));font-size:calc(28.08 * var(--u));color:#f3ece0}
.burst.br .r{color:var(--red2)}

.event-bar{background:#140f0d;color:#efe7d6;font-family:var(--display);letter-spacing:.05em;
  font-size:calc(15 * var(--u));text-align:center;padding:calc(9 * var(--u)) calc(16 * var(--u));border-top:calc(3 * var(--u)) solid var(--red);line-height:1.3}
.event-bar .r{color:var(--red2)}

/* --- Linia „Skontaktuj się" --- */
.contact-line-wrap{text-align:left;max-width:var(--page-max);margin:0 auto;padding:calc(24 * var(--u)) calc(86.4 * var(--u)) calc(6 * var(--u))}
.contact-line{display:inline-flex;gap:calc(12 * var(--u));align-items:center;justify-content:flex-start;flex-wrap:wrap;
  font-family:var(--display);letter-spacing:.06em;font-size:calc(34 * var(--u));color:#efe7d6;text-decoration:none}
.contact-line .r{color:var(--red)}
.contact-line .env{color:var(--red);font-size:1.1em}
.contact-line:hover .r{color:var(--red2)}

/* --- NA ŻYWO + licznik --- */
.nazywo-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:calc(28 * var(--u));padding-top:calc(14 * var(--u));padding-bottom:calc(22 * var(--u))}
.na-zywo{justify-self:start;display:inline-flex;align-items:center;gap:calc(14 * var(--u));background:var(--red);color:#fff;
  font-family:var(--display);letter-spacing:.05em;font-size:calc(26 * var(--u));padding:calc(12 * var(--u)) calc(26 * var(--u));
  text-decoration:none;box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(207,32,21,.35);transition:.16s}
.na-zywo:hover{background:var(--red2);transform:translateY(calc(-2 * var(--u)))}
.na-zywo .yt{display:inline-flex;align-items:center}
.counter-block{justify-self:end;display:flex;flex-direction:column;align-items:center;gap:calc(10 * var(--u))}
.counter-block .digits{display:flex;gap:calc(10 * var(--u))}
.counter-block .digits span{font-family:var(--display);font-size:calc(64 * var(--u));color:#efe7d6;
  border:calc(2 * var(--u)) solid var(--red);border-radius:calc(4 * var(--u));width:calc(66 * var(--u));height:calc(84 * var(--u));
  display:flex;align-items:center;justify-content:center;line-height:1}
.counter-block .cap{font-family:var(--display);letter-spacing:.12em;font-size:calc(19 * var(--u));text-align:center;color:#efe7d6}
.counter-block .cap b{color:var(--red);font-weight:400}
@media(max-width:760px){.nazywo-row{grid-template-columns:1fr;justify-items:center}.na-zywo,.counter-block{justify-self:center}}

/* --- Telefon + tag + wyjustowane menu --- */
.phonegrid{display:grid;grid-template-columns:minmax(calc(260 * var(--u)),calc(410 * var(--u))) 1fr;gap:calc(60 * var(--u));align-items:start}
.phonecol{display:flex;flex-direction:column;align-items:center;gap:calc(18 * var(--u))}
.phone-tag{background:var(--cream);color:#1c1206;font-family:var(--display);letter-spacing:.03em;
  font-size:calc(18 * var(--u));padding:calc(9 * var(--u)) calc(16 * var(--u));text-align:center;transform:translateY(calc(-13 * var(--u))) translateX(calc(-230 * var(--u))) rotate(-2.5deg);
  box-shadow:0 calc(8 * var(--u)) calc(20 * var(--u)) rgba(0,0,0,.45);max-width:calc(300 * var(--u));line-height:1.15}
  @media (max-width: 860px) {
  .phone-tag {
    transform: translateY(-13px) translateX(5px) rotate(-2.5deg); /* Stara wartość dla telefonów */
  }
}
.phone-tag .r{color:var(--red)}
.menu ol{list-style:none;text-align:left}
.menu li a{display:flex;gap:calc(14 * var(--u));align-items:flex-start;justify-content:flex-start;padding:calc(11 * var(--u)) calc(4 * var(--u));transition:.15s}
.menu li a:hover{background:rgba(207,32,21,.08);padding-left:calc(12 * var(--u));padding-right:0}
.menu li .t{font-size:calc(15 * var(--u));color:#e2d7c4;text-align:left}
.menu li .n{order:1;flex:0 0 calc(60 * var(--u));width:calc(60 * var(--u));text-align:center}
.menu li .t{order:2}

/* --- O filmie: linki --- */
.ofilmie-links{display:flex;flex-direction:column;gap:calc(12 * var(--u));margin-top:calc(24 * var(--u))}
.ofilmie-links a{display:inline-flex;align-items:center;gap:calc(12 * var(--u));color:#e2d7c4;text-decoration:none;font-size:calc(15 * var(--u));line-height:1.3}
.ofilmie-links a:hover{color:var(--red)}
.ofilmie-links .ic{width:calc(34 * var(--u));height:calc(34 * var(--u));border:calc(2 * var(--u)) solid var(--red);border-radius:50%;display:inline-flex;
  align-items:center;justify-content:center;color:var(--red);flex:none}

/* --- Galeria 4 w rzędzie --- */
.gal.gal-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:820px){.gal.gal-4{grid-template-columns:repeat(2,1fr)}}

/* --- Nagraj: rząd zasada + przycisk --- */
.rec-row{display:flex;align-items:center;gap:calc(28 * var(--u));flex-wrap:wrap}
.rec-inner .rec-row .noviol{margin-bottom:0}

/* --- Archiwum: przycisk zgłoszenia (żółty) przy każdym nagraniu --- */
.arch-item .report{background:#f2c53d;color:#1c1206;border:none;font-family:var(--display);letter-spacing:.03em;
  font-size:calc(11 * var(--u));padding:calc(4 * var(--u)) calc(10 * var(--u));border-radius:calc(3 * var(--u));cursor:pointer;margin-top:calc(2 * var(--u));line-height:1.2;text-align:center}
.arch-item .report:hover{background:#ffd84d}
.arch-item .report.done{background:#3a2f13;color:#f2c53d;cursor:default}

/* --- POWRÓT przy dywidenderach --- */
.divider .up{flex-direction:column;border:none;width:auto;height:auto;gap:calc(3 * var(--u));padding:0}
.divider .up:hover{background:none}
.divider .up .ar{width:calc(40 * var(--u));height:calc(40 * var(--u));border:calc(2 * var(--u)) solid var(--red);border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:calc(20 * var(--u));color:var(--red);transition:.18s}
.divider .up:hover .ar{background:var(--red);color:#fff}
.divider .up em{font-style:normal;font-family:var(--display);letter-spacing:.1em;font-size:calc(17 * var(--u));color:var(--red)}

/* --- wcięcie sekcji, by ominąć kabel --- */
.callzone .indent{padding-left:calc(86.4 * var(--u))}
@media(max-width:700px){.callzone .indent{padding-left:clamp(20px,6vw,116px)}.cord{opacity:.45}}

.q{color:#e6ddcc;margin-bottom:calc(14 * var(--u))}

/* zgłoszony przycisk */
.report.reported{opacity:.6;cursor:default;background:#3a2f10;color:#e8d9a0}

/* ============ ARCHIWUM: zapowiedź na froncie ============ */
.arch-teaser{max-width:calc(720 * var(--u))}
.arch-teaser p{color:#e6ddcc;font-size:calc(18 * var(--u));margin-bottom:calc(6 * var(--u))}
.arch-teaser .age-tag{display:inline-block;background:var(--red);color:#fff;font-family:var(--display);
  letter-spacing:.08em;padding:calc(2 * var(--u)) calc(10 * var(--u));border-radius:calc(4 * var(--u));margin-left:calc(8 * var(--u));vertical-align:middle;font-size:calc(16 * var(--u))}
.arch-teaser-sub{color:var(--muted)!important;font-size:calc(14 * var(--u))!important;margin-bottom:calc(18 * var(--u))!important}
#archLink{display:inline-block;margin-top:calc(6 * var(--u))}

/* ============ PODSTRONA ARCHIWUM ============ */
.archpage{padding:calc(48 * var(--u)) 0 calc(20 * var(--u));position:relative;min-height:60vh}
.back-home{display:inline-block;color:var(--muted);text-decoration:none;font-size:calc(14 * var(--u));margin-bottom:calc(18 * var(--u));letter-spacing:.04em}
.back-home:hover{color:var(--cream)}
.arch-intro{color:#e6ddcc;font-size:calc(17 * var(--u));margin-bottom:calc(22 * var(--u));max-width:70ch}
.arch-intro .r{color:var(--red)}
.arch-cta{display:flex;align-items:center;gap:calc(18 * var(--u));flex-wrap:wrap;margin-bottom:calc(30 * var(--u))}
.arch-note{color:var(--muted);font-size:calc(13 * var(--u));max-width:40ch}
.arch-row.wide{display:flex;flex-wrap:wrap;gap:calc(26 * var(--u)) calc(30 * var(--u))}
.arch-row.wide .arch-item{flex:0 0 auto}

/* ============ BRAMKA WIEKOWA 18+ ============ */
body.gated{overflow:hidden}
.agegate{position:fixed;inset:0;z-index:200;background:rgba(6,4,3,.94);backdrop-filter:blur(calc(6 * var(--u)));
  display:none;align-items:center;justify-content:center;padding:calc(20 * var(--u))}
.agebox{background:linear-gradient(170deg,#1a120e,#0a0705);border:1px solid var(--line);border-radius:calc(12 * var(--u));
  max-width:calc(520 * var(--u));width:100%;padding:calc(38 * var(--u)) calc(32 * var(--u));text-align:center;box-shadow:0 calc(40 * var(--u)) calc(90 * var(--u)) rgba(0,0,0,.7)}
.age-badge{width:calc(84 * var(--u));height:calc(84 * var(--u));border-radius:50%;background:var(--red);color:#fff;font-family:var(--display);
  font-size:calc(40 * var(--u));letter-spacing:.04em;display:flex;align-items:center;justify-content:center;margin:0 auto calc(18 * var(--u));
  box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(207,32,21,.5)}
.agebox h2{font-family:var(--display);color:var(--cream);font-size:calc(34 * var(--u));letter-spacing:.03em;margin-bottom:calc(14 * var(--u))}
.agebox p{color:#d8cdb9;font-size:calc(15 * var(--u));line-height:1.5;margin-bottom:calc(12 * var(--u))}
.agebox p.q{color:#fff;font-weight:600;margin-top:calc(6 * var(--u))}
.age-actions{display:flex;flex-direction:column;gap:calc(12 * var(--u));margin:calc(22 * var(--u)) 0 calc(14 * var(--u))}
.age-actions .mbtn{width:100%;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.agebox .fine{color:var(--muted);font-size:calc(12 * var(--u));margin:0}

/* baner klikalny na podstronie archiwum */
.banner-link{display:block;text-decoration:none}

/* =========================================================
   MOBILE / SMARTFONY — poprawki responsywności
   ========================================================= */
@media(max-width:860px){
  /* Telefon NAD menu, jedna kolumna (nadpisuje zduplikowaną regułę .phonegrid) */
  .phonesec .phonegrid{grid-template-columns:1fr;gap:22px}
  .phonecol{order:0}
  .menu{order:1;width:100%}
  /* Na wąskim ekranie menu czyta się lepiej do lewej: numer, potem tekst */
  .menu ol{text-align:left}
  .menu li a{justify-content:flex-start;gap:12px}
  .menu li a:hover{padding-left:12px;padding-right:0}
  .menu li .n{order:1;flex:0 0 50px;width:50px;text-align:center}
  .menu li .t{order:2;text-align:left}
  .phonewrap{max-width:320px}
}
@media(max-width:560px){
  .phonesec{padding:26px 0 6px}
  .phonewrap{max-width:280px}
  .menu li .t{font-size:14px}
  .menu li .n{font-size:22px}
  /* mniejsze marginesy boczne, by nic nie uciekało poza ekran */
  .wrap,.divider,.contact-line-wrap,.foot-panel,.foot-meta{padding-left:clamp(14px,4vw,20px);padding-right:clamp(14px,4vw,20px)}
}
/* zabezpieczenie przed poziomym przewijaniem na mobile */
@media(max-width:860px){ html,body{max-width:100%;overflow-x:hidden} }

/* Dymki banera na mobile: czcionka skaluje się z szerokością (bez sztywnego minimum), z zawijaniem */
@media(max-width:640px){
  .burst{line-height:1.05;overflow-wrap:anywhere}
  .burst.tl {font-size:2.35vw}
  .burst.left{font-size:2.45vw}
  .burst.tr {font-size:2.2vw}
  .burst.br {font-size:2.3vw}
}

/* DESKTOP: menu bliżej telefonu, para telefon+menu wyśrodkowana w linii */
@media(min-width:861px){
  .phonesec .phonegrid{
    grid-template-columns:auto minmax(calc(300 * var(--u)),calc(470 * var(--u)));
    justify-content:center;
    align-items:center;
    gap:calc(31.68 * var(--u));
  }
}

/* Licznik „chcę zobaczyć": drżenie + powolny roll cyfry przy zwiększeniu */
#counter.bump{animation:lg-count-bump .55s ease}
@keyframes lg-count-bump{0%,100%{transform:translate(0,0)}15%{transform:translate(-3px,1px) rotate(-1deg)}30%{transform:translate(3px,-1px) rotate(1deg)}45%{transform:translate(-3px,1px)}60%{transform:translate(2px,-1px) rotate(.5deg)}80%{transform:translate(-1px,0)}}
.counter-block .digits span.rolling{overflow:hidden;display:block;position:relative;padding:0}
.counter-block .digits span.rolling .roll{display:flex;flex-direction:column;height:200%;transition:transform .9s cubic-bezier(.2,.85,.25,1)}
.counter-block .digits span.rolling .roll i{flex:0 0 50%;height:50%;display:flex;align-items:center;justify-content:center;font-style:normal;line-height:1}

/* Słuchawka w wersji mobilnej — wyłącznie dekoracja (nie klika się) */
.handset-mobile{display:none}
@media(max-width:760px){
  .handset-mobile{display:block;text-align:center;pointer-events:none;margin:auto 200px auto;line-height:0}
  .handset-mobile img{
    width:min(280px,64vw);
    height:auto;
    opacity:.97;
    
  }
}
