/* Shared machine template — mirrors the Platforma PSW page */
:root{--ink:#08080A;--txt:#F2EFEA;--red:#D8261C;--line:rgba(242,239,234,.12);--mute:rgba(242,239,234,.55)}
*{box-sizing:border-box}
html,body{margin:0;background:var(--ink);color:var(--txt);font-family:Archivo,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--red);color:#0B0B0C}
.grid-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,rgba(242,239,234,.03) 0 1px,transparent 1px 90px),repeating-linear-gradient(90deg,rgba(242,239,234,.03) 0 1px,transparent 1px 90px)}
main{position:relative;z-index:1}
.top{position:fixed;top:0;left:0;right:0;z-index:120;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 26px;background:rgba(8,8,10,.85);border-bottom:1px solid var(--line)}
.top img{height:42px;display:block}
.back{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--txt);font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.22em}
.tel{background:var(--red);color:#0B0B0C;font:800 15px 'Big Shoulders Stencil Display',sans-serif;letter-spacing:.07em;padding:12px 20px;text-decoration:none;white-space:nowrap}
.stag{display:flex;align-items:center;gap:16px;margin-bottom:40px}
.snum{font:500 13px 'IBM Plex Mono',monospace;color:var(--red);letter-spacing:.1em}
.stag .agr-tag{font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.3em;color:var(--mute)}
.sline{flex:1;height:1px;background:var(--line)}
section{padding:120px 5vw 140px}
/* hero */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:150px 5vw 0}
.ghost{position:absolute;top:6%;left:2vw;font:800 clamp(200px,30vw,520px)/.8 'Big Shoulders Stencil Display',sans-serif;color:transparent;-webkit-text-stroke:1px rgba(242,239,234,.09);user-select:none;pointer-events:none;white-space:nowrap}
.glow{position:absolute;right:-10%;bottom:-20%;width:70vw;height:70vw;background:radial-gradient(50% 50% at 50% 50%,rgba(216,38,28,.16),transparent 70%);pointer-events:none}
.hero-in{position:relative;max-width:900px;padding-bottom:70px}
.kart{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.26em;color:rgba(242,239,234,.6)}
.chip{font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.2em;color:rgba(242,239,234,.85);border:1px solid rgba(242,239,234,.25);padding:8px 14px}
.chip.red{color:var(--red);border-color:rgba(216,38,28,.55);padding:5px 12px}
h1{margin:0}
.h-a{display:block;font:800 clamp(50px,8.4vw,136px)/.95 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase}
.h-b{display:block;font:300 clamp(34px,5vw,76px)/1.08 Archivo,sans-serif;color:rgba(242,239,234,.92)}
.lead{max-width:560px;margin:28px 0 0;font-size:16px;font-weight:300;line-height:1.75;color:rgba(242,239,234,.66)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.strip{position:relative;border-top:1px solid rgba(242,239,234,.14);margin:0 -5vw;padding:16px 5vw;font:500 12px 'IBM Plex Mono',monospace;letter-spacing:.3em;color:rgba(242,239,234,.75);background:rgba(9,9,10,.4)}
/* buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;padding:16px 24px;font:500 13px/1 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:2px solid var(--txt);color:var(--txt)}
.btn.red{background:var(--red);border-color:var(--red)}
/* zastosowanie */
.zast-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:60px clamp(40px,5vw,80px)}
.bigh{font:800 clamp(34px,4.6vw,68px)/1.05 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase;margin-bottom:30px}
.zast p{max-width:540px;margin:0 0 20px;font-size:16px;font-weight:300;line-height:1.8;color:rgba(242,239,234,.66)}
/* liczby */
.rows{border-bottom:1px solid var(--line)}
.nrow{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 26px;padding:34px 0 26px;border-top:1px solid var(--line)}
.nv{font:800 clamp(60px,10vw,160px)/.95 'Big Shoulders Stencil Display',sans-serif}
.nu{font:300 clamp(24px,3vw,44px) Archivo,sans-serif;color:var(--red)}
.nl{margin-left:auto;font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.24em;color:rgba(242,239,234,.5);text-align:right}
/* wersje */
.gh{font:800 clamp(28px,3vw,44px)/1 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase;margin:70px 0 24px}
.gh:first-of-type{margin-top:0}
.cards{display:flex;flex-wrap:wrap;gap:24px}
.card{flex:1 1 300px;max-width:520px;border:1px solid rgba(242,239,234,.14);padding:30px;background:rgba(242,239,234,.02)}
.ch{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.cn{font:800 clamp(38px,4.4vw,64px)/1 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase}
.cs{font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.22em;color:var(--mute)}
.ct{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:2px}
.ct>div{border:1px solid var(--line);padding:16px}
.ct b{display:block;font:800 clamp(24px,2.4vw,38px) 'Big Shoulders Stencil Display',sans-serif}
.ct i{font:300 .55em Archivo,sans-serif;font-style:normal;color:rgba(242,239,234,.7)}
.ct span{display:block;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.2em;color:rgba(242,239,234,.5);margin-top:6px}
.cmp{margin-top:56px;overflow-x:auto}
.cmp table{width:100%;min-width:520px;border-collapse:collapse;font-size:16px;color:#F1ECE2}
.cmp thead tr{border-bottom:2px solid #F1ECE2}
.cmp th{text-align:left;padding:14px 10px;font:500 12px 'IBM Plex Mono',monospace;letter-spacing:.2em;color:rgba(241,236,226,.55)}
.cmp th:first-child,.cmp td:first-child{padding-left:0}
.cmp th.vn{font:800 28px 'Big Shoulders Stencil Display',sans-serif;letter-spacing:0;color:#F1ECE2;white-space:nowrap}
.cmp td{padding:14px 10px;border-bottom:1px solid rgba(241,236,226,.14)}
.cmp td:first-child{color:rgba(241,236,226,.6)}
.cmp td.r{color:var(--red)}
.extra{font:500 12px/1.7 'IBM Plex Mono',monospace;letter-spacing:.08em;color:var(--mute);margin:14px 0 0}
/* galeria */
.media[hidden]{display:none}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gal>*{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#000;border:0}
.gal>.main{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;height:100%}
.gal>video{object-fit:contain}
.gal>img{cursor:zoom-in}
.lb{position:fixed;inset:0;z-index:300;background:rgba(8,8,10,.96);display:flex;align-items:center;justify-content:center;cursor:zoom-out}
.lb img{max-width:94vw;max-height:90vh;object-fit:contain}
/* dane techniczne */
.dane-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:50px 60px;max-width:1400px}
.dtn{font:800 32px 'Big Shoulders Stencil Display',sans-serif;margin-bottom:12px}
.dt{border-top:1px solid rgba(242,239,234,.14)}
.dtn+.dr{border-top:0}
.dr{display:grid;grid-template-columns:minmax(150px,1fr) 1.2fr;gap:18px;padding:16px 6px;border-bottom:1px solid rgba(242,239,234,.1)}
.dr span:first-child{font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.2em;color:rgba(242,239,234,.5);align-self:center}
.dr span:last-child{font-size:15px;font-weight:300}
/* cta */
.cta{position:relative;padding:150px 5vw 120px;text-align:center;overflow:hidden}
.glow2{position:absolute;left:0;right:0;bottom:0;height:80%;background:radial-gradient(70% 65% at 50% 100%,rgba(216,38,28,.26),transparent 72%);pointer-events:none}
.cta-in{position:relative}
.c-a{font:300 clamp(26px,3.4vw,48px) Archivo,sans-serif;color:rgba(242,239,234,.92)}
.c-b{font:800 clamp(40px,6.8vw,110px)/1 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase;margin-top:6px}
.c-tel{display:block;margin:26px 0 34px;font:800 clamp(34px,5.6vw,86px) 'Big Shoulders Stencil Display',sans-serif;color:var(--red);text-decoration:none}
.pill{display:inline-flex;border:1px solid rgba(242,239,234,.25);padding:16px 26px;text-decoration:none;color:var(--txt);font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.2em}
.pill:hover{background:rgba(242,239,234,.07)}
.foot{margin-top:70px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:24px;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.2em;color:rgba(242,239,234,.4)}
.foot img{height:32px;opacity:.9}
.foot a{color:rgba(242,239,234,.55);margin-left:18px;font-size:10px}
.bar{display:none}
@media(max-width:760px){
.top{padding:12px 16px}.top img{display:none}.back span{font-size:10px}
section{padding:80px 5vw 90px}.hero{padding-top:120px}
.zast-g,.dane-g{grid-template-columns:1fr}
.gal{grid-template-columns:1fr 1fr}.gal>.main{grid-column:span 2;grid-row:auto;aspect-ratio:4/3;height:auto}
.btn{width:100%;justify-content:center}
.nl{margin-left:0;text-align:left;width:100%}
.dr{grid-template-columns:1fr 1fr}
.bar{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:250;background:var(--ink);border-top:2px solid #F1ECE2}
.bar a{padding:17px 10px calc(17px + env(safe-area-inset-bottom));text-align:center;font:500 14px/1 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#F1ECE2;text-decoration:none;background:var(--red)}
 body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
 html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
 .top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 16px}
 .back{min-width:0;min-height:44px;letter-spacing:0;gap:8px;line-height:1.4}
 .back svg{flex-shrink:0}
 .back span{font-size:11px}
 .top .tel{min-height:44px;display:flex;align-items:center;justify-content:center;padding:12px 16px!important;letter-spacing:0!important}
 section{padding:64px 5vw 72px}
 .hero{min-height:0;padding-top:112px}
 .hero-in{padding-bottom:40px}
 .h-a{font-size:48px;line-height:1.04;overflow-wrap:anywhere}
 .h-b{font-size:30px;line-height:1.2;overflow-wrap:anywhere}
 .kart,.chip{letter-spacing:0;line-height:1.5}
 .lead{margin-top:24px;line-height:1.7}
 .chips{gap:8px;margin-top:24px}
 .chip{padding:10px 12px}
 .stag{gap:10px;margin-bottom:28px;align-items:flex-start}
 .stag .agr-tag{line-height:1.3!important;letter-spacing:0!important;white-space:normal;transform:none!important;min-width:0;max-width:100%}
 .snum{flex-shrink:0;line-height:32px}
 .sline{display:none}
 .strip{margin:0;max-width:100%;line-height:1.5!important;letter-spacing:0!important;transform:none!important}
 .zast-g,.dane-g{gap:32px;grid-template-columns:minmax(0,1fr)}
 .zast-g>*,.dane-g>*,.cards>*{min-width:0}
 .bigh{font-size:34px;line-height:1.1;overflow-wrap:anywhere}
 .nrow{gap:8px 16px;padding:24px 0}
 .nv{font-size:60px;overflow-wrap:anywhere}
 .nu{font-size:24px;overflow-wrap:anywhere}
 .nl{line-height:1.5;letter-spacing:0}
 .cards{gap:16px}
 .card{flex-basis:100%;max-width:100%;padding:22px}
 .ch{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
 .cn{font-size:36px;overflow-wrap:anywhere}
 .cs{letter-spacing:0;text-align:right;max-width:110px}
 .ct{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ct>div{min-width:0;padding:12px}
 .ct b{font-size:28px;overflow-wrap:anywhere}
 .ct span{letter-spacing:0;line-height:1.5;overflow-wrap:anywhere}
 .cmp{margin-top:32px;max-width:100%;overscroll-behavior-x:contain}
 .cmp table{font-size:14px}
 .cmp th,.cmp td{letter-spacing:0;padding:12px 10px}
 .gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .gal>video{grid-column:1 / -1;aspect-ratio:16/9}
 .lb{z-index:500}
 .lb img{max-height:calc(100svh - 100px)}
 .dr{grid-template-columns:minmax(0,1fr);gap:8px;padding:16px 0}
 .dr span:first-child{letter-spacing:0;line-height:1.5}
 .dr span:last-child{line-height:1.6;overflow-wrap:anywhere}
 .dtn{font-size:28px;overflow-wrap:anywhere}
 .cta{padding:72px 5vw}
 .c-a{font-size:26px}
 .c-b{font-size:42px;overflow-wrap:anywhere}
 .c-tel{font-size:40px;white-space:nowrap}
 .pill{max-width:100%;min-height:48px;line-height:1.5;letter-spacing:0;padding:14px 18px}
 .foot{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;text-align:left;letter-spacing:0;line-height:1.7;margin-top:48px}
 .foot img{max-width:100%;height:auto;width:150px}
 .foot>div{display:flex;flex-wrap:wrap;gap:12px 18px}
 .foot a{margin:0;min-height:44px;display:inline-flex;align-items:center}
 .doc.hero{padding-bottom:40px}
 .doc h1,.intro h1{font:800 42px/1.1 'Big Shoulders Stencil Display',sans-serif;text-transform:uppercase;overflow-wrap:anywhere;margin:20px 0 0}
 .doc a,footer{overflow-wrap:anywhere}
 .intro .cats{grid-template-columns:minmax(0,1fr);margin-top:28px}
 .intro .cats div{font-size:28px}
 .bar a{letter-spacing:0;min-height:48px}
}
@media(max-width:360px){.h-a{font-size:40px}.h-b{font-size:28px}.nv{font-size:48px}.top .tel{font-size:14px;padding:12px!important}.c-tel{font-size:36px}}
