@font-face{font-family:"Schibsted Grotesk";src:url(fonts/Jqz55SSPQuCQF3t8uOwiUL-taUTtap9Iayoxdg.woff2) format("woff2");font-weight:400 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Schibsted Grotesk";src:url(fonts/Jqz55SSPQuCQF3t8uOwiUL-taUTtap9Gayo.woff2) format("woff2");font-weight:400 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ground:#fff; --ink:#0b0b0d; --soft:#55555f; --step:#f1f1f3; --step-2:#dcdce1;
  --dark:#0b0b0d; --on-dark:#fff; --on-dark-soft:#a9a9b4;
  --m:clamp(20px,2vw,32px); --gut:clamp(16px,1.6vw,24px);
  --step-small:clamp(.8125rem,.79rem + .1vw,.875rem);
  --step-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --step-head:clamp(2rem,1.3rem + 3.2vw,4rem);
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-expo:cubic-bezier(.16,1,.3,1);
  --t-press:140ms; --t-hover:180ms;
}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:clip}
body{background:var(--ground);color:var(--ink);font:400 var(--step-body)/1.45 "Schibsted Grotesk",system-ui,sans-serif;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;letter-spacing:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left}
ol,ul{list-style:none;padding:0}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
::selection{background:var(--ink);color:var(--ground)}

h2,h3{font-weight:800;letter-spacing:-.035em;line-height:1}

/* górny pasek: odwraca się sam na czarnych polach */
.bar{position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:18px var(--m);color:var(--ink);pointer-events:none;transition:color 300ms ease}
.bar.on-dark{color:#fff}
.bar a{pointer-events:auto}
.bar__brand{display:flex;align-items:center;gap:9px;font-weight:800;letter-spacing:-.03em}
.bar__brand svg{width:26px;height:26px}
.bar nav{display:flex;gap:clamp(16px,2.2vw,32px);font-weight:600}
.bar nav a{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.22em;text-decoration-thickness:.08em;transition:text-decoration-color var(--t-hover) ease}
@media (hover:hover) and (pointer:fine){.bar nav a:hover{text-decoration-color:currentColor}}

/* scena */
.stage{position:relative;background:var(--ground)}
.stage__hold{position:relative;min-height:100svh;overflow:clip}
.js .stage{height:540svh}
.js .stage__hold{position:sticky;top:0;height:100svh;min-height:0}
#chrome{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .7s ease}
.poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0;pointer-events:none;transition:opacity .7s ease}
#chrome.is-live~.poster,.js .stage__hold:has(#chrome.is-live) .poster{opacity:0}
#chrome.is-live{opacity:1}
.lockup{position:absolute;left:0;top:0;z-index:3;overflow:clip;font-weight:800;letter-spacing:-.05em;line-height:.98;white-space:nowrap;pointer-events:none;visibility:hidden;will-change:transform}
.lockup>span{display:inline-block;padding-right:.04em;will-change:transform}
.mark-fallback{display:none}
.no-gl .mark-fallback,html:not(.js) .mark-fallback{display:block;position:absolute;right:var(--m);top:14%;width:min(34vw,40svh)}

.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 var(--m);overflow:clip}
.js .hero{position:absolute;inset:0;min-height:0;pointer-events:none}
.hero a,.hero button{pointer-events:auto}
.hero__row{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gut);align-items:end;margin-bottom:clamp(16px,2.2svh,28px)}
.hero__lead{grid-column:1/6;font-size:var(--step-lead);line-height:1.25;letter-spacing:-.02em;font-weight:600;max-width:27em}
.hero__act{grid-column:7/13;display:flex;justify-content:flex-end;align-items:center;gap:clamp(14px,2vw,28px)}
.hero__name{overflow:clip;margin-bottom:clamp(6px,1vw,14px)}
.word{display:block;font-weight:800;letter-spacing:-.05em;line-height:.8;white-space:nowrap;font-kerning:normal;transform-origin:50% 100%}
.word>span{display:inline-block;padding-right:.03em}
.word--hero{padding-top:.06em}

.key{display:inline-flex;align-items:center;gap:12px;font-weight:600}
.key__cap{display:block;width:58px;height:61px;border-radius:12px;background:var(--step-2)}
.key{transition:none}
.key__top{display:grid;place-items:center;height:56px;border-radius:12px;background:var(--step);font-weight:800;letter-spacing:-.02em;transition:transform var(--t-press) var(--ease-out),background-color var(--t-hover) ease}
.key:active .key__top,.key.is-down .key__top{transform:translateY(5px)}
@media (hover:hover) and (pointer:fine){.key:hover .key__top{background:#e8e8ec}}
.key__say{display:block;max-width:7.5em;line-height:1.15}

/* przycisk pobierania: trzy warstwy w perspektywie */
.dl{--bg:var(--ink);--fg:#fff;position:relative;display:inline-block;height:68px;flex:none}
.dl::after{content:"";position:absolute;inset:-18px}
.dl__depth{position:relative;display:block;height:100%}
.dl__press{position:relative;display:block;height:100%;transition:transform var(--t-press) var(--ease-out)}
.dl:active .dl__press{transform:scale(.97)}
.dl__plate{position:relative;display:flex;align-items:center;height:100%;padding:0 10px 0 32px;gap:22px;border-radius:999px;background:var(--bg)}
.dl__text{position:relative;z-index:1;color:var(--fg);font-weight:600;letter-spacing:-.015em;white-space:nowrap}
.dl__bead{position:relative;z-index:1;width:48px;height:48px;flex:none}
.dl__bead img,.dl__bead canvas{position:absolute;inset:0;width:100%;height:100%}
.dl__bead canvas{opacity:0}
.dl__bead.is-live canvas{opacity:1}
.dl__bead.is-live img{opacity:0}
.dl--light{--bg:#fff;--fg:var(--ink)}
@media (hover:hover) and (pointer:fine){.dl__plate{transition:background-color var(--t-hover) ease}.dl:hover{--bg:#1d1d22}.dl--light:hover{--bg:#ececf0}}

/* kroki w scenie */
.steps{padding:0 var(--m) 56px}
.js .steps{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:0 var(--m) clamp(28px,6svh,64px);pointer-events:none}
.steps__head{font-size:var(--step-lead);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 18px}
.js .steps__head{position:absolute;left:var(--m);top:84px;margin:0;visibility:hidden}
.steps__list{position:relative}
.js .steps__list{display:grid}
.step{max-width:min(40vw,34rem);margin-bottom:40px}
.js .step{grid-area:1/1;align-self:end;margin:0;visibility:hidden}
.step h3{font-size:var(--step-head);margin-bottom:16px}
.step p{max-width:32em}
.step small{display:block;font-size:var(--step-small);color:var(--soft);margin-top:14px}
.step kbd{font:inherit;font-weight:800}

/* co to jest: czwarta część sceny, tekst po lewej, logo po prawej */
.about{padding:48px var(--m)}
.about h2{font-size:var(--step-head);margin-bottom:clamp(14px,2.4svh,26px)}
.about__lead{font-size:var(--step-lead);line-height:1.25;letter-spacing:-.02em;font-weight:600;max-width:27em;margin-bottom:clamp(18px,3svh,34px)}
.about__list{display:grid;gap:clamp(12px,2svh,20px)}
.about__list dt{font-weight:800;letter-spacing:-.015em}
.about__list dd{margin:2px 0 0;max-width:44ch}
.js .about{position:absolute;left:0;top:0;bottom:0;width:min(56%,48rem);display:flex;flex-direction:column;justify-content:center;padding:clamp(70px,10svh,110px) 0 clamp(28px,5svh,56px) var(--m);visibility:hidden}

/* aplikacja */
.app{background:var(--ground)}
.app__hold{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gut);align-items:center;min-height:100svh;padding:clamp(70px,10svh,110px) var(--m)}
.js .app{height:330svh}
.js .app__hold{position:sticky;top:0;height:100svh;min-height:0}
.app__side{grid-column:1/5;display:flex;flex-direction:column;gap:clamp(18px,3.2svh,34px);min-width:0}
.app h2{font-size:var(--step-head)}
.tabs{display:flex;gap:4px clamp(14px,1.6vw,22px);flex-wrap:wrap;font-weight:600}
.tab{position:relative;color:var(--soft);padding:6px 0 9px;transition:color var(--t-hover) ease}
.tab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--ink);transform:scaleX(var(--p,0));transform-origin:0 50%}
.tab[aria-selected=true]{color:var(--ink)}
@media (hover:hover) and (pointer:fine){.tab:hover{color:var(--ink)}}
.app__copy h3{font-size:clamp(1.625rem,1.2rem + 1.5vw,2.5rem);margin-bottom:14px}
.app__copy p{max-width:34ch}
.app__get{margin-top:4px}
.plate{--app-accent:#4f6bff;--rec:#ff3b5c;grid-column:5/13;justify-self:end;position:relative;width:min(100%,calc((100svh - 130px) * 1.6));aspect-ratio:16/10;border-radius:22px;overflow:clip;clip-path:inset(0 round 22px);background:#e8edf6}
#appDemo{position:absolute;left:0;top:0;width:1280px;height:800px;border:0;transform-origin:0 0;background:#e8edf6}
.keys{display:flex;gap:clamp(16px,2vw,28px);margin-top:28px}
.key--row .key__say{max-width:none}

/* efekty F8 i F9 na podglądzie: te same co nakładka w grze */
.fx{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:clip;border-radius:inherit}
.fx__edge,.fx__rec-edge{position:absolute;inset:0;opacity:0;border-radius:inherit}
.fx__edge{box-shadow:inset 0 0 0 3px var(--app-accent),inset 0 0 26px 6px var(--app-accent),inset 0 0 90px 24px color-mix(in srgb,var(--app-accent) 55%,transparent)} /* taste-skill-ignore: to jest światło z nakładki aplikacji */
.fx__rec-edge{box-shadow:inset 0 0 0 3px var(--rec),inset 0 0 26px 6px var(--rec),inset 0 0 90px 24px color-mix(in srgb,var(--rec) 45%,transparent)} /* taste-skill-ignore: to samo przy nagrywaniu */
.fx__pill{position:absolute;left:50%;top:14px;display:flex;align-items:center;gap:10px;height:38px;padding:0 14px 0 13px;border-radius:999px;background:#0f0e18;color:#fff;font:600 var(--step-small)/1 "Segoe UI",system-ui,sans-serif;letter-spacing:0}
.fx__pill i{position:relative;width:12px;height:12px;border-radius:50%;background:var(--rec)}
.fx__pill i::after{content:"";position:absolute;inset:-6px;border-radius:50%;background:var(--rec);opacity:.28;transition:opacity .4s ease}
.fx__pill.is-beat i::after{opacity:0}
.fx__pill b{font-weight:900}
.fx__time{color:#c8c8dc;font-variant-numeric:tabular-nums}
.fx__card{position:absolute;right:16px;top:16px;display:grid;gap:2px;padding:12px 18px;background:#0f0e18;color:#fff;border-radius:14px;font:400 var(--step-small)/1.3 "Segoe UI",system-ui,sans-serif;letter-spacing:0}
.fx__card b{font-weight:600;font-size:var(--step-body)}
.fx__card span{color:#c8c8dc}

/* personalizacja */
.pers{padding:clamp(100px,14svh,180px) 0 clamp(80px,12svh,140px)}
.pers__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gut);align-items:end;padding:0 var(--m);margin-bottom:clamp(26px,4svh,44px)}
.pers__word{--f:clamp(2.75rem,1.6rem + 5.4vw,6.5rem);grid-column:1/9;display:flex;align-items:center;min-height:calc(var(--f) * 1.2);font-size:var(--f);font-weight:800;letter-spacing:-.045em;line-height:1;white-space:nowrap;cursor:default;font-kerning:none}
.pers__word>span{display:inline-block}
.pers__word .pch{display:inline-block;will-change:transform}
.pers__lead{grid-column:9/13;max-width:36ch;padding-bottom:.5em}

.studio{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gut);align-items:start;padding:0 var(--m)}
.studio__view{position:sticky;top:20px;grid-column:1/9;margin:0;aspect-ratio:16/10;border-radius:22px;overflow:clip;background:#e8edf6}
#appView{position:absolute;left:0;top:0;width:1280px;height:800px;border:0;transform-origin:0 0;pointer-events:none;opacity:0;transition:opacity .5s ease}
#appView.is-live{opacity:1}
.studio__panel{grid-column:9/13;min-width:0}
.studio__tabs{display:flex;gap:clamp(16px,2vw,28px);font-weight:600;margin-bottom:18px}
.stab{position:relative;color:var(--soft);padding:4px 0 7px;transition:color var(--t-hover) ease}
.stab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--ink);transform:scaleX(0);transform-origin:0 50%;transition:transform 320ms var(--ease-out)}
.stab[aria-selected=true]{color:var(--ink)}
.stab[aria-selected=true]::after{transform:none}
@media (hover:hover) and (pointer:fine){.stab:hover{color:var(--ink)}}

.tgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 10px}
.tcard{display:block;width:100%;text-align:center}
.tcard__field{--t-bg:#000;display:grid;place-items:center;aspect-ratio:1;border-radius:18px;background:var(--t-bg);transition:transform 340ms var(--ease-out),outline-color 200ms ease;outline:2px solid transparent;outline-offset:3px}
.tcard__bead{position:relative;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0 3%,var(--t-a) 34%,var(--t-b) 100%)} /* taste-skill-ignore: zapas bez WebGL */
.tcard canvas{position:absolute;left:-14%;top:-14%;width:128%;height:128%;opacity:0;transition:opacity .25s ease}
.tcard.is-live .tcard__bead{background:none}
.tcard.is-live canvas{opacity:1}
.tcard__name{display:block;margin-top:7px;font-size:var(--step-small);font-weight:600;line-height:1.2;color:var(--soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--t-hover) ease}
.tcard[aria-checked=true] .tcard__field{outline-color:var(--ink)}
.tcard[aria-checked=true] .tcard__name{color:var(--ink)}
.tcard:active .tcard__field{transform:scale(.96)}
@media (hover:hover) and (pointer:fine){.tcard:hover .tcard__field{transform:translateY(-4px)}.tcard:hover .tcard__name{color:var(--ink)}}

.make{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;margin-top:16px;border-radius:999px;background:var(--step);font-weight:600;transition:background-color var(--t-hover) ease,transform var(--t-press) var(--ease-out)}
.make span{font-size:1.4em;line-height:1;font-weight:400}
.make:active{transform:scale(.98)}
.make[hidden]{display:none}
@media (hover:hover) and (pointer:fine){.make:hover{background:#e6e6ea}}
.maker{display:grid;grid-template-rows:0fr;transition:grid-template-rows 460ms var(--ease-out)}
.maker>div{min-height:0;overflow:hidden}
.maker.is-open{grid-template-rows:1fr}
.maker__in{display:grid;gap:14px;margin-top:16px;padding:18px;border-radius:18px;background:var(--step)}
.maker__name{display:grid;gap:6px;font-size:var(--step-small);font-weight:600}
.maker__name input{width:100%;height:44px;padding:0 14px;border:0;border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:var(--step-body);font-weight:400}
.maker__colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.well{display:grid;justify-items:center;gap:6px;font-size:var(--step-small);font-weight:600;cursor:pointer}
.well input{appearance:none;-webkit-appearance:none;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;transition:transform 300ms var(--ease-out)}
.well input::-webkit-color-swatch-wrapper{padding:0}
.well input::-webkit-color-swatch{border:0;border-radius:50%}
.well input::-moz-color-swatch{border:0;border-radius:50%}
@media (hover:hover) and (pointer:fine){.well:hover input{transform:scale(1.07)}}
.maker__note{font-size:var(--step-small);color:var(--soft);line-height:1.3}
.maker__note.is-low{color:#b0132f}
.maker__act{display:flex;align-items:center;justify-content:space-between;gap:12px}
.maker__del{font-size:var(--step-small);font-weight:600;color:var(--soft);transition:color var(--t-hover) ease}
@media (hover:hover) and (pointer:fine){.maker__del:hover{color:#b0132f}}
.maker__ok{height:44px;padding:0 22px;border-radius:999px;background:var(--ink);color:#fff;font-weight:600;transition:transform var(--t-press) var(--ease-out)}
.maker__ok:active{transform:scale(.97)}

.wgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 10px}
.wtile{display:block;width:100%;text-align:center;cursor:pointer}
.wtile__pic{display:grid;place-items:center;aspect-ratio:16/11;border-radius:12px;background-size:cover;outline:2px solid transparent;outline-offset:3px;transition:transform 340ms var(--ease-out),outline-color 200ms ease}
.wtile__name{display:block;margin-top:7px;font-size:var(--step-small);font-weight:600;line-height:1.2;color:var(--soft);transition:color var(--t-hover) ease}
.wtile[aria-checked=true] .wtile__pic{outline-color:var(--ink)}
.wtile[aria-checked=true] .wtile__name{color:var(--ink)}
.wtile:active .wtile__pic{transform:scale(.96)}
.wtile--add .wtile__pic{background:var(--step);font-size:1.5rem;font-weight:400;color:var(--ink)}
.wtile--add input{position:absolute;width:1px;height:1px;opacity:0}
.wtile--add:focus-within .wtile__pic{outline-color:var(--ink)}
@media (hover:hover) and (pointer:fine){.wtile:hover .wtile__pic{transform:translateY(-4px)}.wtile:hover .wtile__name{color:var(--ink)}}
.slider{display:grid;grid-template-columns:1fr auto;gap:2px 12px;margin-top:20px;font-weight:600;font-size:var(--step-small)}
.slider output{color:var(--soft);font-variant-numeric:tabular-nums;font-weight:400}
.slider input{--p:0%;grid-column:1/-1;appearance:none;-webkit-appearance:none;width:100%;height:30px;margin:0;background:none;cursor:pointer}
.slider input::-webkit-slider-runnable-track{height:6px;border-radius:99px;background:linear-gradient(90deg,var(--ink) var(--p),var(--step-2) var(--p))} /* taste-skill-ignore: wypełnienie suwaka */
.slider input::-moz-range-track{height:6px;border-radius:99px;background:var(--step-2)}
.slider input::-moz-range-progress{height:6px;border-radius:99px;background:var(--ink)}
.slider input::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-10px;border:0;border-radius:50%;background:url(bead.png) center/cover}
.slider input::-moz-range-thumb{width:26px;height:26px;border:0;border-radius:50%;background:url(bead.png) center/cover}
.slider__hint{min-height:1.3em;margin-top:6px;font-size:var(--step-small);color:var(--soft);line-height:1.3}

.pers__more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gut);padding:clamp(48px,7svh,80px) var(--m) 0}
.pers__more dt{font-weight:800;letter-spacing:-.02em;font-size:var(--step-lead);line-height:1.15}
.pers__more dd{margin:4px 0 0;max-width:30ch}

/* funkcje */
.feat{padding:20svh var(--m);background:var(--step)}
.feat h2{font-size:clamp(1.625rem,1.2rem + 1.5vw,2.5rem);margin-bottom:96px}
.feat__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:48px var(--gut)}
.feat__col{grid-column:span 3}
.feat__group{font-weight:600;margin-bottom:1.25em}
.feat__name{display:block;width:100%;color:var(--soft);line-height:1.25;padding:3px 0;transition:color var(--t-hover) ease}
.feat__name.is-on{color:var(--ink)}
@media (hover:hover) and (pointer:fine){.feat__name:hover{color:var(--ink)}}
.feat__sum{display:none}
.feat__hint{grid-column:span 3;font-weight:600;line-height:1.25;min-height:5em}

/* pytania */
.faq{padding:clamp(120px,18svh,220px) var(--m)}
.qa{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gut);margin-bottom:clamp(56px,6vw,88px)}
.qa>h2,.qa>h3{grid-column:1/7;font-size:clamp(1.625rem,1.2rem + 1.5vw,2.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.1}
.qa>h2{color:var(--soft)}
.qa>p{grid-column:8/13;max-width:42ch;line-height:1.55}

/* czarne zakończenie */
.end{background:var(--dark);color:var(--on-dark)}
.cta{min-height:90svh;display:flex;flex-direction:column;justify-content:space-between;gap:64px;padding:clamp(96px,14svh,150px) var(--m) 40px}
.cta h2{font-size:clamp(2.75rem,10vw,11rem);line-height:.9;letter-spacing:-.05em}
.cta .line{display:block;overflow:clip;padding-bottom:.1em;margin-bottom:-.1em}
.cta [data-line]{display:block}
.cta__row{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gut);align-items:end}
.cta__row p{grid-column:1/6;font-size:var(--step-lead);line-height:1.25;letter-spacing:-.02em}
.cta__row div{grid-column:9/13;justify-self:end}
.cta__dc{display:inline-block;margin-top:.35em;text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.2em;text-decoration-color:var(--on-dark-soft);transition:text-decoration-color var(--t-hover) ease}
@media (hover:hover) and (pointer:fine){.cta__dc:hover{text-decoration-color:currentColor}}

.foot{min-height:100svh;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);padding:96px var(--m) 20px;overflow:clip}
.foot__cols{display:grid;grid-template-columns:repeat(12,1fr);gap:32px var(--gut)}
.foot__cols>div{grid-column:span 3}
.foot__cols b{display:block;font-weight:600;margin-bottom:.4em}
.foot__cols a,.foot__cols span{display:block;color:var(--on-dark-soft);padding:2px 0;transition:color var(--t-hover) ease}
@media (hover:hover) and (pointer:fine){.foot__cols a:hover{color:var(--on-dark)}}
.foot__stage{position:relative;min-height:30svh}
#chromeFoot{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .5s ease}
#chromeFoot.is-live{opacity:1}
.foot__name{overflow:clip}
.foot__legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:var(--step-small);color:var(--on-dark-soft)}

/* wiadomość po F8: to samo, co nakładka w grze */
.toast{position:fixed;right:var(--m);top:72px;z-index:40;background:var(--ink);color:#fff;padding:14px 22px;font-weight:600;opacity:0;transform:translateY(-8px);transition:opacity 200ms ease,transform 300ms var(--ease-out);pointer-events:none}
.toast.is-on{opacity:1;transform:none}

/* wejście napisu przy ładowaniu */
@media (prefers-reduced-motion:no-preference){
  .js .word--hero>span{animation:rise 1s var(--ease-expo) .08s both}
  .js .hero__lead{animation:lift .6s var(--ease-out) .42s both}
  .js .hero__act{animation:lift .6s var(--ease-out) .5s both}
}
@media (prefers-reduced-motion:reduce){
  .js .word--hero>span,.js .hero__lead,.js .hero__act{animation:fade .5s ease both}
}
@keyframes rise{from{transform:translateY(108%)}}
@keyframes lift{from{opacity:0;transform:translateY(14px)}}
@keyframes fade{from{opacity:0}}

/* średnie szerokości */
@media (max-width:1040px){
  .hero__lead{grid-column:1/7}
  .hero__act{grid-column:7/13}
  .key__say{display:none}
}
@media (max-width:900px){
  .app__hold{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:14px;padding:70px var(--m) 20px}
  .app__side{display:contents}
  .app h2{order:1;font-size:clamp(1.75rem,7vw,2.5rem)}
  .tabs{order:2}
  .plate{order:3;width:100%;justify-self:auto;flex:none;border-radius:18px;clip-path:inset(0 round 18px)}
  .app__copy{order:4}
  .app__copy h3{margin-bottom:6px}
  .app__get{display:none}
  .keys{margin-top:12px}
}
/* telefon: osobna kompozycja */
@media (max-width:760px){
  .bar nav a:not(:last-child){display:none}
  .hero__row{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:18px}
  .hero__act{width:100%;justify-content:space-between}
  .dl{height:60px}
  .dl__plate{padding:0 8px 0 24px;gap:14px}
  .dl__bead{width:44px;height:44px}
  .key__cap{width:52px;height:55px}
  .key__top{height:50px}
  .step{max-width:none}
  .js .about{left:0;right:0;top:auto;width:auto;justify-content:flex-end;padding:0 var(--m) 26px}
  .about__lead{margin-bottom:14px}
  .about__list{gap:10px}
  .js .steps{padding-bottom:28px}
  .js .steps__head{top:72px}
  .studio,.pers__head{display:block}
  .pers__lead{margin-top:10px}
  .studio__view{position:relative;top:0}
  .studio__panel{margin-top:28px}
  .pers__more{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fx__card{right:10px;top:10px;padding:9px 13px}
  .feat{padding:96px var(--m)}
  .feat h2{margin-bottom:48px}
  .feat__grid{display:block}
  .feat__col{margin-bottom:40px}
  .feat__name{line-height:1.4;color:var(--soft)}
  .feat__sum{display:block;margin-top:12px}
  .feat__hint{display:none}
  .qa{display:block;margin-bottom:56px}
  .qa>p{margin-top:12px}
  .cta{min-height:80svh}
  .cta h2{font-size:11.2vw}
  .cta__row{display:flex;flex-direction:column;align-items:stretch;gap:28px}
  .cta__row div{justify-self:auto}
  .cta__row .dl{display:block}
  .cta__row .dl__plate{justify-content:space-between}
  .foot__cols{grid-template-columns:1fr 1fr}
  .foot__cols>div{grid-column:auto}
  .foot__stage{min-height:26svh}
}
.key--row .key__say{display:block}
