
/* ===== Poznaj świat, który żyje w Tobie — style lokalne (v4, 01.10) ===== */
:root{--wave:#EEF5F0}
body{background:#fff}
.sw{position:relative;overflow:hidden;padding-block:clamp(64px,8vw,120px)}
.sw .wrap{position:relative;z-index:1}
.sw .num{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;color:var(--g600);display:flex;gap:10px;align-items:center}
.sw .num::after{content:"";width:28px;height:1px;background:var(--g300)}
.sw h2{margin-top:14px;max-width:16ch}
.sw .lead{margin-top:18px}
.sw .copy p + p{margin-top:12px}
.sw .copy .claim{margin-top:18px;font-weight:600;color:var(--g900);font-size:1.08rem;line-height:1.45;max-width:46ch}
.sw .copy .btn{margin-top:26px}
.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,80px);align-items:center}
.split.flip>.copy{order:2}.split.flip>.vis{order:1}
@media(max-width:960px){.split{grid-template-columns:1fr}.split.flip>.copy{order:1}.split.flip>.vis{order:2}}
.vis{min-width:0}
.sw .sub{margin-top:18px;font-size:.9rem;color:var(--ink2);max-width:60ch}
.sw .sub.c{margin-inline:auto;text-align:center}
.wave{position:absolute;left:0;right:0;height:120px;pointer-events:none}
.wave svg{width:100%;height:100%;display:block}
.wave.top{top:-1px}.wave.bottom{bottom:-1px}
/* delikatne tło sekcji — ciepła biel z falą */
.sw.soft{background:linear-gradient(180deg,#FBFCFA 0%,#F3F8F4 100%)}
.sw.warm{background:linear-gradient(180deg,#FBFAF6 0%,#F7F6F1 100%)}
.sw.white{background:#fff}
.ref{margin-top:22px;display:inline-flex;gap:12px;align-items:center;background:#fff;border:1px dashed #BFD6C8;border-radius:16px;padding:8px 12px 8px 8px;max-width:420px}
.ref img{width:112px;height:72px;object-fit:cover;border-radius:10px;flex:0 0 auto}
.ref span{font-size:.72rem;color:var(--muted);line-height:1.35}

/* Pasek postępu (desktop) */
.rail{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:30;display:grid;gap:6px;padding:12px 8px;border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(8px);border:1px solid rgba(220,230,223,.9);box-shadow:var(--shadow-s)}
.rail a{position:relative;display:grid;place-items:center;width:28px;height:28px;color:var(--muted)}
.rail a i{width:7px;height:7px;border-radius:50%;background:#C7D6CC;transition:transform .25s,background .25s}
.rail a .lb{position:absolute;right:38px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--g900);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 10px 5px 10px;opacity:0;pointer-events:none;transition:opacity .2s;display:flex;gap:8px;align-items:center}
.rail a .lb b{font-family:var(--mono);font-weight:500;color:var(--g600);font-size:.66rem}
.rail a:hover .lb{opacity:1}
.rail a.on i{background:var(--g900);transform:scale(1.7)}
.rail a:hover i{background:var(--g600)}
.rail .lbl{font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);writing-mode:vertical-rl;transform:rotate(180deg);justify-self:center;margin-block:4px}
@media(max-width:1300px){.rail{display:none}}

/* HERO */
.hero-sw{background:radial-gradient(70% 80% at 85% 20%,#E7F4EC 0%,rgba(231,244,236,0) 60%),linear-gradient(180deg,#FBFCFA,#F6FAF7);padding-block:clamp(48px,7vw,104px) clamp(56px,7vw,96px)}
.hero-sw .split{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
@media(max-width:960px){.hero-sw .split{grid-template-columns:1fr}}
.hero-sw h1{margin-top:16px}
.hero-sw .lead{max-width:46ch}
.hero-sw .vid{position:relative}
.hero-sw .vid .cap{position:absolute;left:18px;bottom:18px;display:inline-flex;gap:10px;align-items:center;background:rgba(255,255,255,.86);backdrop-filter:blur(8px);border-radius:999px;padding:8px 14px 8px 8px;font-size:.8rem;font-weight:600;color:var(--g900);box-shadow:var(--shadow-s)}
.hero-sw .vid .cap .play{position:static;transform:none;width:32px;height:32px}
.hero-sw .vid .cap .play::after{border-left-width:9px;border-top-width:6px;border-bottom-width:6px;margin-left:2px}
.hero-sw .vid .cap small{font-weight:400;color:var(--muted);margin-left:2px}
.hero-sw .halo{position:absolute;right:-6%;top:-10%;width:52%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(124,203,169,.28),rgba(124,203,169,0) 70%);pointer-events:none}

/* 01 — sieć ekosystemu */
.net{width:min(560px,100%);margin-inline:auto;display:block;overflow:visible}
.net .lk{stroke:#BFD6C8;stroke-width:1.5;fill:none}
.net .lk.flow{stroke:var(--g300);stroke-dasharray:4 10;animation:dash 2.6s linear infinite}
.net .ring{stroke:#D8E6DD;stroke-width:1;fill:none;stroke-dasharray:3 7}
.net .core{fill:#fff;stroke:var(--g600);stroke-width:1.5}
.net .halo1{fill:rgba(124,203,169,.16)}
.net .halo2{fill:rgba(124,203,169,.09);animation:pulse 4s ease-in-out infinite;transform-origin:280px 268px}
.net text{font-family:var(--sans);font-weight:600;fill:var(--g900)}
.net .ct{font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.net .nd circle{fill:#fff;stroke-width:2}
.net .nd text{font-size:13px;fill:var(--ink)}
.net .nd .dot{animation:pulse 3s ease-in-out infinite}
.net .nd.a circle{stroke:var(--g600)}.net .nd.b circle{stroke:var(--amber)}.net .nd.c circle{stroke:var(--violet)}.net .nd.d circle{stroke:var(--blue)}.net .nd.e circle{stroke:var(--coral)}
.net .nd.a .dot{fill:var(--g600)}.net .nd.b .dot{fill:var(--amber)}.net .nd.c .dot{fill:var(--violet)}.net .nd.d .dot{fill:var(--blue)}.net .nd.e .dot{fill:var(--coral)}
@keyframes dash{to{stroke-dashoffset:-28}}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.75}}

/* 02 — proces posiłku */
.proc7{position:relative;display:grid;gap:10px;padding-left:54px;max-width:520px;margin-inline:auto}
.proc7::before{content:"";position:absolute;left:19px;top:22px;bottom:22px;width:2px;background:linear-gradient(var(--g300),var(--g600));border-radius:2px}
.proc7 .run{position:absolute;left:15px;top:22px;width:10px;height:10px;border-radius:50%;background:var(--g900);box-shadow:0 0 0 4px rgba(124,203,169,.35);animation:run 6s linear infinite}
@keyframes run{0%{top:22px}100%{top:calc(100% - 32px)}}
.proc7 li{list-style:none;position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 16px;font-size:.92rem;color:var(--ink2);display:flex;gap:12px;align-items:center}
.proc7 li::before{content:attr(data-n);position:absolute;left:-54px;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:#fff;border:1.5px solid var(--g300);display:grid;place-items:center;font-family:var(--mono);font-size:.68rem;color:var(--g600);letter-spacing:.06em}
.proc7 li.hd{background:var(--g900);color:#fff;border-color:var(--g900);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}
.proc7 li.hd::before{background:var(--g900);border-color:var(--g900);color:#9FE3C2}
.proc7 li.end{border-color:var(--g600);background:var(--mint2);color:var(--g900);font-weight:500}
.proc7 li .ico{color:var(--g600);width:18px;height:18px}

/* 03 — mieszkańcy */
.resid-head{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:end}
@media(max-width:900px){.resid-head{grid-template-columns:1fr}}
.resid-head .lead{margin-top:0}
.resid-head .claim{margin-top:14px;font-weight:600;color:var(--g900)}

/* 04 — łańcuch zależności */
.chain{display:grid;gap:0;max-width:440px;margin-inline:auto;justify-items:center}
.chain .n{width:100%;background:#fff;border:1px solid var(--line);border-radius:999px;padding:12px 18px;display:flex;gap:12px;align-items:center;justify-content:center;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--g900);position:relative}
.chain .n i{width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:var(--c,var(--g600))}
.chain .n .av{width:30px;height:30px;border-radius:50%;background-size:cover;background-position:center top;flex:0 0 auto;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--line)}
.chain .n.hd{background:var(--g900);color:#fff;border-color:var(--g900)}
.chain .n.hd i{background:#9FE3C2}
.chain .ar{height:34px;width:2px;position:relative;background:linear-gradient(var(--g300),var(--g300));margin-block:2px}
.chain .ar::before,.chain .ar::after{content:"";position:absolute;left:50%;width:7px;height:7px;border-left:2px solid var(--g600);border-top:2px solid var(--g600)}
.chain .ar::before{top:0;transform:translateX(-50%) rotate(45deg)}
.chain .ar::after{bottom:0;transform:translateX(-50%) rotate(225deg)}
.chain .ar b{position:absolute;left:50%;top:0;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--g900);animation:updown 2.2s ease-in-out infinite}
.chain .ar:nth-child(4n) b{animation-delay:-1.1s}
@keyframes updown{0%,100%{top:4px}50%{top:24px}}

/* 05 — sylwetka */
.body-vis{position:relative;width:min(560px,100%);margin-inline:auto;aspect-ratio:560/560}
.body-vis svg{position:absolute;inset:0;width:100%;height:100%}
.body-vis .fig{fill:url(#bodyfill);stroke:var(--g600);stroke-width:1.4}
.body-vis .gut{fill:none;stroke:var(--g600);stroke-width:2;stroke-linecap:round;stroke-dasharray:3 6;animation:dash 3s linear infinite}
.body-vis .glow{fill:rgba(124,203,169,.35);animation:pulse 3.4s ease-in-out infinite;transform-origin:280px 300px}
.body-vis .ln{stroke:#B9CFC2;stroke-width:1.2;fill:none;stroke-dasharray:3 5}
.body-vis .ln.hi{stroke:var(--violet)}
.body-vis .lab{position:absolute;display:inline-flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px 7px 7px;font-size:.84rem;font-weight:600;color:var(--g900);box-shadow:var(--shadow-s);white-space:nowrap}
.body-vis .lab .ic-round{width:30px;height:30px}.body-vis .lab .ico{width:16px;height:16px}
.body-vis .lab.l1{left:0;top:34%}.body-vis .lab.l2{right:0;top:28%}.body-vis .lab.l3{left:2%;top:14%}.body-vis .lab.l4{right:0;top:52%}.body-vis .lab.l5{left:50%;top:0;transform:translateX(-50%)}
.body-vis .lab.l5 .ic-round{background:#EFE9F8;color:var(--violet)}
.body-vis .lab.l3 .ic-round{background:#FBE9E3;color:var(--coral)}
.body-vis .lab.l2 .ic-round{background:#FCF1DD;color:var(--amber)}
.body-vis .lab.l4 .ic-round{background:#E5EEF8;color:var(--blue)}
.body-list{display:none;gap:8px;flex-wrap:wrap;margin-top:16px;justify-content:center}
.body-list span{display:inline-flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:600}
.body-list span i{width:8px;height:8px;border-radius:50%}
@media(max-width:640px){.body-vis .lab{display:none}.body-list{display:flex}.body-vis{aspect-ratio:1/1.05}}

/* 06 — twój wybór */
.choice{margin-top:44px;background:#fff;border:1px solid var(--line);border-radius:var(--r28);padding:clamp(28px,4vw,52px);display:grid;grid-template-columns:1.25fr .85fr;gap:40px;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}
.choice::before{content:"";position:absolute;inset:auto -10% -40% auto;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(231,244,236,.9),rgba(231,244,236,0) 70%);pointer-events:none}
@media(max-width:900px){.choice{grid-template-columns:1fr}}
.flow3{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center;position:relative}
.flow3 .o{display:grid;justify-items:center;gap:12px;text-align:center}
.flow3 .o .ball{width:clamp(86px,10vw,124px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;color:#fff;position:relative;box-shadow:0 24px 40px -24px rgba(11,58,44,.5)}
.flow3 .o .ball .ico{width:42%;height:42%;stroke-width:1.5}
.flow3 .o.f .ball{background:linear-gradient(145deg,#E2A33C,var(--amber))}
.flow3 .o.m .ball{background:linear-gradient(145deg,var(--g500),var(--g900))}
.flow3 .o.b .ball{background:linear-gradient(145deg,#F0937A,var(--coral))}
.flow3 .o .ball::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1.5px dashed rgba(11,58,44,.18);animation:spin 18s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.flow3 .o b{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--g900)}
.flow3 .o span{font-size:.78rem;color:var(--muted);max-width:16ch;line-height:1.35}
.flow3 .ar{width:clamp(28px,5vw,64px);height:2px;position:relative;background:linear-gradient(90deg,var(--g300),var(--g600));margin-top:-44px}
.flow3 .ar::after{content:"";position:absolute;right:-1px;top:50%;width:8px;height:8px;border-right:2px solid var(--g600);border-top:2px solid var(--g600);transform:translateY(-50%) rotate(45deg)}
.flow3 .ar b{position:absolute;top:50%;left:0;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--g900);animation:slide 1.8s ease-in-out infinite}
@keyframes slide{0%{left:0;opacity:0}20%{opacity:1}100%{left:calc(100% - 8px);opacity:0}}
@media(max-width:640px){.flow3{grid-template-columns:1fr;justify-items:center}.flow3 .ar{width:2px;height:34px;margin-top:0;background:linear-gradient(var(--g300),var(--g600))}.flow3 .ar::after{right:auto;left:50%;top:auto;bottom:-1px;transform:translateX(-50%) rotate(135deg)}.flow3 .ar b{left:50%;margin-left:-4px;animation:slidev 1.8s ease-in-out infinite}@keyframes slidev{0%{top:0;opacity:0}20%{opacity:1}100%{top:calc(100% - 8px);opacity:0}}}
.choice .big{position:relative;text-align:left}
.choice .big b{display:block;font-size:clamp(2rem,3.6vw,3.2rem);line-height:.98;letter-spacing:-.03em;font-weight:500;color:var(--g900)}
.choice .big b em{font-style:normal;color:var(--g600)}
.choice .big p{margin-top:16px;font-size:.95rem;color:var(--ink2);max-width:34ch}
@media(max-width:900px){.choice .big{text-align:center}.choice .big p{margin-inline:auto}}

/* 07 — aplikacja */
.app-sw .phone{width:min(300px,100%);box-shadow:0 50px 90px -50px rgba(11,58,44,.6)}
.app-sw .phone .scr{padding:22px 16px;gap:12px;background:linear-gradient(180deg,#FBFCFA,#fff)}
.app-sw .scr .top{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:.62rem;color:var(--muted)}
.app-sw .scr .t{font-size:1.05rem;font-weight:500;letter-spacing:-.02em;margin-top:4px}
.app-sw .scr .hello{font-size:.68rem;color:var(--muted)}
.app-sw .scr .ring{width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--g500) 0 68%,#E4ECE7 0);display:grid;place-items:center;position:relative;margin:6px auto 2px}
.app-sw .scr .ring::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}
.app-sw .scr .ring b{position:relative;z-index:1;font-size:.62rem;text-align:center;line-height:1.2;color:var(--g900)}
.app-sw .scr .mi{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-size:.78rem;font-weight:500;background:#fff}
.app-sw .scr .mi .ic-round{width:30px;height:30px}.app-sw .scr .mi .ico{width:15px;height:15px}
.app-sw .scr .mi .arr{margin-left:auto;color:var(--muted)}
.app-sw .scr .mi.on{border-color:var(--g600);background:var(--mint2)}
.app-sw .phone-wrap{position:relative;display:grid;place-items:center;padding:30px 0}
.app-sw .phone-wrap::before{content:"";position:absolute;width:min(420px,90%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#E7F4EC,rgba(231,244,236,0) 70%)}
.app-sw .flo{position:absolute;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px 12px;font-size:.74rem;font-weight:600;box-shadow:var(--shadow-s);display:flex;gap:8px;align-items:center}
.app-sw .flo .av{width:26px;height:26px;border-radius:50%;background-size:cover;background-position:center top}
.app-sw .flo.f1{left:4%;top:28%}.app-sw .flo.f2{right:2%;top:60%}
@media(max-width:640px){.app-sw .flo{display:none}}
.app-sw .h3{font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.025em;line-height:1.1;font-weight:500;margin-top:30px}
.app-sw .h3 span{color:var(--g600)}

/* 08 — kafelki */
.tiles4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
@media(max-width:960px){.tiles4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.tiles4{grid-template-columns:1fr}}
.tile{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 22px;display:grid;gap:14px;align-content:start;transition:transform .25s,box-shadow .25s,border-color .25s}
.tile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--g300)}
.tile .ic-round{width:52px;height:52px}
.tile b{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--g900)}
.tile p{font-size:.9rem;color:var(--ink2)}
.tile .k{font-family:var(--mono);font-size:.66rem;color:var(--muted);letter-spacing:.1em}
.tile.t2 .ic-round{background:#FCF1DD;color:var(--amber)}.tile.t3 .ic-round{background:#FBE9E3;color:var(--coral)}.tile.t4 .ic-round{background:#E5EEF8;color:var(--blue)}
.tiles-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}
@media(max-width:900px){.tiles-head{grid-template-columns:1fr}}

/* 09 — oś czasu */
.tl{position:relative;margin-top:48px;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.tl::before{content:"";position:absolute;left:8%;right:8%;top:23px;height:2px;background:linear-gradient(90deg,var(--g900),var(--g300) 50%,var(--g900));z-index:0}
.tl .tst{position:relative;display:grid;gap:10px;justify-items:center;align-content:start;text-align:center;z-index:1}
.tl .tst .dot{width:48px;height:48px;border-radius:50%;background:#fff;border:1.5px solid var(--g300);display:grid;place-items:center;color:var(--g600)}
.tl .tst .dot .ico{width:20px;height:20px}
.tl .tst.hd .dot{background:var(--g900);border-color:var(--g900);color:#9FE3C2;box-shadow:0 0 0 6px rgba(124,203,169,.25)}
.tl .tst b{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--g900);margin-top:6px}
.tl .tst p{font-size:.82rem;color:var(--ink2);max-width:18ch}
.tl .tst.last .dot{border-style:dashed;border-color:var(--g600);color:var(--g900)}
.tl .tst.last b{color:var(--g600)}
.tl-loop{margin:18px auto 0;width:min(620px,100%);display:flex;gap:12px;align-items:center;justify-content:center;background:var(--mint2);border:1px solid #D7E8DD;border-radius:999px;padding:10px 18px;font-size:.84rem;color:var(--ink2)}
.tl-loop .ico{color:var(--g600);width:18px;height:18px;animation:spin 8s linear infinite}
@media(max-width:960px){.tl{grid-template-columns:1fr;gap:18px;padding-left:0;max-width:420px;margin-inline:auto}.tl::before{left:23px;right:auto;top:24px;bottom:24px;width:2px;height:auto;background:linear-gradient(var(--g900),var(--g300) 50%,var(--g900))}.tl .tst{grid-template-columns:48px 1fr;gap:4px 16px;justify-items:start;text-align:left;align-items:center}.tl .tst .dot{grid-row:1/3}.tl .tst b{margin-top:0}.tl .tst p{max-width:none}}

/* 10 — To jest właśnie GutLoop */
.loop-sw{background:#FBFCFA;background-image:radial-gradient(rgba(11,58,44,.08) 1px,transparent 1px);background-size:22px 22px}
.loop-sw .wrap{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center}
.loop-sw h2{max-width:none}
.loopvis{width:min(640px,100%);display:block;margin-top:36px;overflow:visible}
.loopvis .orbit{fill:none;stroke:var(--g300);stroke-width:1.5;stroke-dasharray:6 10;animation:dash 3s linear infinite}
.loopvis .orbit2{fill:none;stroke:#D8E6DD;stroke-width:1}
.loopvis .traveler{fill:var(--g900);animation:none}
.loopvis .nd rect{fill:#fff;stroke:var(--g600);stroke-width:1.4}
.loopvis .nd.hd rect{fill:var(--g900);stroke:var(--g900)}
.loopvis .nd text{font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.16em;fill:var(--g900);text-anchor:middle;dominant-baseline:middle}
.loopvis .nd.hd text{fill:#fff}
.loopvis .nd .ix{font-family:var(--mono);font-size:10px;fill:var(--muted);letter-spacing:.1em}
.loopvis .ar{fill:none;stroke:var(--g600);stroke-width:1.5;marker-end:url(#arrow)}
.loopvis .c-inf{fill:none;stroke:var(--g900);stroke-width:3.2}
.loopvis .c-t{font-family:var(--sans);font-size:14px;font-weight:600;fill:var(--g900);text-anchor:middle;letter-spacing:-.01em}
.loopvis .c-s{font-family:var(--mono);font-size:10px;fill:var(--muted);text-anchor:middle;letter-spacing:.14em}
.loop-sw .flowline{margin-top:30px}
.loop-sw .flowline span:not(.hi){background:var(--mint2);border-color:#D7E8DD}
.loop-sw .after{margin-top:26px;max-width:52ch}
.loop-sw .after b{display:block;font-weight:500;font-size:1.25rem;letter-spacing:-.02em;color:var(--g900)}
.loop-sw .after p{margin-top:8px;color:var(--ink2)}
@media(max-width:640px){.loopvis .nd text{font-size:15px}}

/* 11 — finał */
.final{background:radial-gradient(80% 60% at 80% 100%,rgba(31,148,112,.35),rgba(11,58,44,0) 60%),radial-gradient(50% 50% at 10% 0%,rgba(124,203,169,.18),rgba(11,58,44,0) 60%),linear-gradient(160deg,#0D4233 0%,#0B3A2C 45%,#06271D 100%);color:#fff;padding-block:clamp(80px,9vw,140px)}
.final .split{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
@media(max-width:960px){.final .split{grid-template-columns:1fr}}
.final .eyebrow{color:#9FE3C2}
.final h2{color:#fff;max-width:none}
.final h2 em{font-style:normal;color:#9FE3C2}
.final .lead{color:#CFE9DB}
.final .btn.ghost{border-color:rgba(255,255,255,.5);color:#fff}
.world{position:relative;width:min(560px,100%);aspect-ratio:560/470;margin-inline:auto}
.world::before{content:"";position:absolute;left:5%;right:5%;bottom:3%;height:46%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(124,203,169,.35),rgba(124,203,169,0) 70%);filter:blur(10px)}
.world .ground{position:absolute;left:0;right:0;bottom:6%;height:34%;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.world .star{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.55);animation:twinkle 4s ease-in-out infinite}
@keyframes twinkle{0%,100%{opacity:.25}50%{opacity:1}}
.world .p{position:absolute;border-radius:36% 36% 32% 32%/40% 40% 28% 28%;background-size:cover;background-position:center top;box-shadow:0 30px 50px -22px rgba(0,0,0,.75),0 0 0 2px rgba(255,255,255,.14);overflow:hidden;transition:transform .3s}
.world .p:hover{transform:translateY(-6px) scale(1.03)}
.world .p::after{content:attr(data-n);position:absolute;left:0;right:0;bottom:0;padding:22px 8px 8px;font-size:.56rem;letter-spacing:.05em;text-transform:uppercase;font-weight:700;color:#fff;text-align:center;background:linear-gradient(transparent,rgba(5,30,22,.85))}
@media(max-width:640px){.world .p::after{font-size:.46rem;letter-spacing:.02em;padding:16px 4px 6px}}
.world .p1{left:34%;bottom:12%;width:24%;aspect-ratio:3/4;z-index:5}
.world .p2{left:16%;bottom:18%;width:21%;aspect-ratio:3/4;z-index:4;transform:rotate(-3deg)}
.world .p3{left:57%;bottom:17%;width:21.5%;aspect-ratio:3/4;z-index:4;transform:rotate(3deg)}
.world .p4{left:0;bottom:34%;width:17%;aspect-ratio:3/4;z-index:2;opacity:.92}
.world .p5{left:81%;bottom:33%;width:17.5%;aspect-ratio:3/4;z-index:2;opacity:.92}
.world .p6{left:38%;bottom:44%;width:17%;aspect-ratio:3/4;z-index:1;opacity:.9}
.world .link{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.world .link path{fill:none;stroke:rgba(159,227,194,.45);stroke-width:1;stroke-dasharray:3 7;animation:dash 4s linear infinite}
.final .meta{margin-top:26px;display:flex;gap:10px 24px;flex-wrap:wrap;font-size:.84rem;color:#B9D3C6}
.final .meta span{display:inline-flex;gap:8px;align-items:center}
.final .meta .ico{width:16px;height:16px;color:#9FE3C2}

@media (prefers-reduced-motion: reduce){.proc7 .run,.chain .ar b,.flow3 .ar b,.world .star{display:none}}
