@font-face{font-family:'Host Grotesk';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/HostGrotesk-400-800-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Host Grotesk';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/HostGrotesk-400-800-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/RedHatMono-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/RedHatMono-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/RedHatMono-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Red Hat Mono';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/RedHatMono-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--bg:#F7F6FD;--grad:linear-gradient(160deg,#F4F0FE 0%,#EEF3FD 55%,#EAF6FC 100%);--surface:#fff;--glass:rgba(255,255,255,.62);--text:#1E1B3A;--muted:#59577A;--primary:#5B3FD1;--primary-d:#4A31B5;--accent:#1F6FD6;--border:#DCD8F0;--success:#1E7A55;--warning:#9A5B00;--lav:#D9D0FF;--fs:'Plus Jakarta Sans',Arial,sans-serif;--fb:'Inter',Arial,sans-serif;--hh:72px;--gsh:0 8px 32px rgba(46,33,120,.08)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--hh) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.7 var(--fb);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover,a:focus-visible{color:var(--primary);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
h1,h2,h3{font-family:var(--fs);color:var(--text);text-wrap:balance}
h1{font-weight:800;font-size:3.25rem;line-height:1.08;letter-spacing:-.02em;margin:0 0 20px}
h2{font-weight:700;font-size:2.25rem;line-height:1.15;letter-spacing:-.02em;margin:0 0 18px}
h3{font-weight:700;font-size:1.35rem;line-height:1.3;margin:28px 0 10px}
p{margin:0 0 1em;text-wrap:pretty}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--primary);color:#fff;padding:12px 18px;border-radius:12px;font-weight:600}.skip:focus{top:12px}
.lbl,.kicker,.loglbl{display:inline-flex;align-items:center;gap:8px;font:600 .8rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.08em;color:var(--primary);margin:0 0 12px}
.glass{background:var(--glass);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(255,255,255,.75);box-shadow:var(--gsh);border-radius:20px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass{background:#fff}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:12px;font:600 1rem/1.2 var(--fb);text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}
.btn-p,.btn-a{background:var(--primary);color:#fff}.btn-p:hover,.btn-a:hover,.btn-p:focus-visible{background:var(--primary-d);color:#fff;box-shadow:0 6px 18px rgba(91,63,209,.28);transform:translateY(-1px)}
.btn-o,.btn-l{background:rgba(255,255,255,.7);color:var(--primary);border-color:var(--primary)}.btn-o:hover,.btn-l:hover{background:#fff;color:var(--primary-d)}
.btn-call{display:none;background:#fff;color:var(--text);border-color:var(--border)}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);border-bottom:1px solid var(--border)}
.hdr .wrap{display:flex;align-items:center;gap:20px;min-height:var(--hh)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);flex:none}
.logo svg{width:36px;height:36px}
.wm{font:800 1.12rem/1 var(--fs);letter-spacing:-.02em;color:var(--text)}.wm b{font-weight:800;color:var(--primary)}
.nav{display:flex;gap:2px;margin-left:auto}
.nav a{padding:8px 11px;border-radius:10px;color:var(--text);text-decoration:none;font:500 .95rem/1.2 var(--fb)}
.nav a:hover,.nav a[aria-current]{background:#EEEAFD;color:var(--primary)}
.nav .mob,.nav .mob-tel{display:none}
.hdr-tel{font:600 .95rem/1 var(--fb);color:var(--text);text-decoration:none;white-space:nowrap}
.hdr .wrap>.btn{min-height:42px;padding:9px 16px;font-size:.94rem}
.menu-btn{display:none;margin-left:auto;width:46px;height:46px;border:1px solid var(--border);background:#fff;border-radius:12px;cursor:pointer;position:relative}
.menu-btn span,.menu-btn span::before,.menu-btn span::after{position:absolute;left:12px;width:20px;height:2px;background:var(--text);border-radius:2px;content:"";transition:transform .2s,background .2s}
.menu-btn span{top:21px}.menu-btn span::before{left:0;top:-6px}.menu-btn span::after{left:0;top:6px}
.menu-btn[aria-expanded="true"] span{background:transparent}.menu-btn[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}.menu-btn[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--grad);padding:64px 0 72px;isolation:isolate}
.hero::before,.hero::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(80px);opacity:.35}
.hero::before{width:520px;height:520px;background:#B9A8FF;left:-140px;top:-160px}
.hero::after{width:560px;height:560px;background:#9FD0FF;right:-180px;bottom:-220px}
.hero-g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}
.hero h1 .cu{background:linear-gradient(90deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{font-size:1.25rem;line-height:1.55;color:var(--muted);max-width:60ch}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 16px}
.cline{font-size:.95rem;color:var(--muted);margin:0 0 20px}.cline a{color:var(--text);font-weight:600}
.glabels{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.glabels li{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--gsh);border-radius:999px;padding:8px 14px 8px 12px;font:500 .9rem/1.2 var(--fb);display:inline-flex;align-items:center;gap:8px}
.glabels li::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--success)}
.hero-r{position:relative;padding-top:40px}
.bwrap{position:absolute;top:0;right:-28px;width:300px;opacity:.95}
.board{width:100%;height:auto;display:block}
.cell rect{stroke-width:1.5;transition:fill .4s,stroke .4s}
.s-f rect{fill:rgba(255,255,255,.7);stroke:var(--accent)}.s-r rect{fill:var(--lav);stroke:#B9A8FF}.s-s rect{fill:var(--success);stroke:var(--success)}
.cell .ck{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .4s}.s-s .ck{opacity:1}
.blg{display:flex;gap:12px;justify-content:flex-end;font:500 .78rem/1 var(--fb);color:var(--muted);margin:8px 0 0}
.blg span{display:inline-flex;align-items:center;gap:5px}.blg span::before{content:"";width:10px;height:10px;border-radius:3px;border:1.5px solid var(--accent)}.blg .r::before{background:var(--lav);border-color:#B9A8FF}.blg .s::before{background:var(--success);border-color:var(--success)}
.fcard{position:relative;padding:28px;border-radius:20px;background:#fff;border:1px solid var(--border);box-shadow:var(--gsh)}
.fcard.glass{background:rgba(255,255,255,.82)}
.hero-r .fcard{margin-top:150px}
.fcard h2{font-size:1.4rem;margin:0 0 4px}.fcard .sub{color:var(--muted);font-size:.95rem;margin:0 0 18px}
/* form */
.form{display:grid;gap:14px}
.form label{display:grid;gap:6px;font:600 .9rem/1.3 var(--fb);color:var(--text)}
.form small{font-weight:400;color:var(--muted)}
.form input[type=text],.form input[type=email],.form input[type=tel],.form select,.form textarea{width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--border);border-radius:8px;background:#fff;font:400 1rem/1.4 var(--fb);color:var(--text)}
.form input:focus,.form select:focus{outline:3px solid rgba(31,111,214,.25);border-color:var(--accent)}
.form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.86rem;line-height:1.45;color:var(--muted)}
.form .consent input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--primary)}
.form .err{color:#B42318;font-size:.85rem;font-weight:500}.form .err:empty{display:none}
.form .hp{position:absolute;left:-9999px}
.form .btn{width:100%}.fnote{font-size:.86rem;color:var(--muted);margin:2px 0 0}
/* short */
.hs{padding:0 0 8px;margin-top:-36px;position:relative;z-index:2}
.bento-s{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));gap:16px;background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(255,255,255,.8);box-shadow:var(--gsh);border-radius:20px;padding:24px}
.bento-s .ans{grid-row:span 2;padding-right:12px}
.bento-s .ans p:last-child{margin:0}
.bento-s .tile.s{background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;position:relative}
.bento-s .tile.s::before{content:"";display:block;width:12px;height:12px;border-radius:3px;background:var(--success);margin-bottom:8px}
.bento-s .tile.s:nth-child(3)::before{background:var(--lav)}.bento-s .tile.s:nth-child(4)::before{background:#fff;border:1.5px solid var(--accent)}
.t-l{font:600 .78rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 4px}
.t-f{font-size:.95rem;line-height:1.45;margin:0}
/* page head */
.ph{background:var(--grad);padding:36px 0 40px;border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.ph::after{content:"";position:absolute;right:-120px;top:-140px;width:420px;height:420px;border-radius:50%;background:#B9A8FF;filter:blur(80px);opacity:.3}
.ph .wrap{position:relative;z-index:1}
.ph-g{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end}
.ph h1{font-size:2.75rem;max-width:22ch;margin-bottom:14px}
.ph .lead{font-size:1.15rem;color:var(--muted);max-width:62ch}
.meta{font-size:.9rem;color:var(--muted)}
.crumbs ol{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem;color:var(--muted)}
.crumbs li+li::before{content:"›";margin-right:6px;color:var(--muted)}
.crumbs a{color:var(--muted)}
.brt{min-width:240px;max-width:280px;padding:18px 20px;border-radius:20px;background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--gsh)}
.br-ic{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,rgba(91,63,209,.14),rgba(31,111,214,.14));color:var(--primary);margin-bottom:10px}
.br-n{display:block;font:700 1.1rem/1.3 var(--fs);margin:0 0 10px;color:var(--text)}
.pills{display:flex;flex-wrap:wrap;gap:6px}.pill{font:500 .8rem/1 var(--fb);padding:6px 10px;border-radius:999px;background:#EEEAFD;color:var(--primary)}
/* layout */
.lay{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:48px;padding-top:40px;padding-bottom:72px}
.main{min-width:0}.prose{max-width:68ch}
.prose ul,.prose ol{padding-left:22px}.prose li{margin:6px 0}
.stn{padding:8px 0 4px}
.stn+.stn,.faq{margin-top:44px;padding-top:44px;border-top:1px solid var(--border)}
.stn>.lbl b{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 6px;border-radius:9px;background:var(--primary);color:#fff;font:700 .82rem/1 var(--fs);letter-spacing:0}
.stn h2{font-size:2rem}
.short{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 22px;margin:0 0 28px}
.short ul{margin:0;padding-left:20px}
.fig{margin:28px 0}.fig img{border-radius:20px;width:100%;aspect-ratio:3/2;object-fit:cover}
.fig figcaption{font-size:.88rem;color:var(--muted);margin-top:8px}
.quote{border-left:3px solid var(--primary);background:#fff;border-radius:0 14px 14px 0;padding:16px 20px;margin:22px 0;font-size:1.05rem}
.note{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 20px;margin:20px 0}
.warnbox{background:#FFF8EC;border-left:4px solid var(--warning);border-radius:0 14px 14px 0;padding:16px 20px;margin:22px 0}
.warnbox .lbl{color:var(--warning)}
.warnbox ul{margin:0}
.check{list-style:none;padding:0;margin:16px 0}.check li{position:relative;padding-left:32px;margin:10px 0}
.check li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:6px;background:var(--success) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.steps{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;counter-reset:st}
.steps li{counter-increment:st;background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;position:relative}
.steps li::before{content:counter(st,decimal-leading-zero);display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#EAF1FC;color:var(--accent);font:700 .9rem/1 var(--fs);margin-bottom:10px}
.steps b{display:block;font-family:var(--fs);margin-bottom:4px}
/* stages, koszyki */
.prose .stages,.prose .kosz,.prose .brgrid,.prose .steps,.prose .check{padding-left:0}.stages{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.stages li{padding:16px;border-radius:20px}
.st-n{font:600 .74rem/1 var(--fb);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 10px}
.mini{display:flex;gap:4px;margin:0 0 12px}.mini i{width:14px;height:14px;border-radius:4px;border:1.5px solid var(--accent);background:#fff}.mini i.s{background:var(--success);border-color:var(--success)}
.st-h{font:700 1rem/1.25 var(--fs);margin:0 0 6px}.st-t{font-size:.88rem;line-height:1.45;color:var(--muted);margin:0 0 8px}.st-m{font-size:.84rem;margin:0}
.kosz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.kosz .k{padding:20px}.kosz .ico{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,rgba(91,63,209,.13),rgba(31,111,214,.13));color:var(--primary);margin-bottom:10px}
.k-h{font:700 1.1rem/1.3 var(--fs);margin:0 0 6px}.kosz p:last-child{font-size:.94rem;color:var(--muted);margin:0}
/* offer grid */
.brgrid{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.brgrid .br{display:flex;flex-direction:column;height:100%;padding:20px;border-radius:20px;text-decoration:none;color:var(--text);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--gsh);transition:transform .18s,background .18s}
.brgrid .br:hover{transform:translateY(-2px);background:rgba(255,255,255,.85)}
.brgrid .go{margin-top:auto;padding-top:14px;font:600 .9rem/1 var(--fb);color:var(--accent)}.brgrid .go::after{content:" →"}
/* tables */
.tbl{overflow-x:auto;overflow-y:hidden;margin:22px 0;border:1px solid var(--border);border-radius:14px;background:#fff}
table{width:100%;border-collapse:collapse;font-size:.95rem;font-variant-numeric:tabular-nums}
th,td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}
tr:last-child td,tr:last-child th{border-bottom:0}
thead th{background:#F1EEFC;font:600 .8rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
tbody th{font-weight:600}
.mx{display:inline-block;padding:3px 10px;border-radius:999px;font:600 .82rem/1.3 var(--fb)}.mx.hi{background:#E3F3EC;color:var(--success)}.mx.mid{background:#EEEAFD;color:var(--primary)}.mx.lo{background:#FFF1DC;color:var(--warning)}
/* variants, pricing */
.variants{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.var{display:flex;flex-direction:column;padding:20px;border-radius:20px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--gsh)}
.var h3{margin:0 0 8px}.var p{font-size:.93rem;margin:0 0 8px}.var .btn{margin-top:auto}
.price-pill{display:inline-block;align-self:flex-start;background:#EEEAFD;color:var(--primary);font:600 .85rem/1.3 var(--fb);padding:6px 12px;border-radius:999px;margin:6px 0 14px!important}
.ptabs{display:flex;gap:8px;margin:12px 0 18px}.ptabs button{min-height:44px;padding:8px 18px;border-radius:12px;border:1px solid var(--border);background:#fff;font:600 .95rem/1 var(--fb);cursor:pointer;color:var(--text)}.ptabs button[aria-selected="true"]{background:var(--primary);color:#fff;border-color:var(--primary)}
.pk{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.pk[hidden]{display:none}
.pkc{position:relative;display:flex;flex-direction:column;padding:22px;border-radius:20px;background:#fff;border:1px solid var(--border)}
.pkc.hi{border:2px solid var(--primary);box-shadow:var(--gsh)}
.pkc .tag{position:absolute;top:-12px;left:20px;background:var(--primary);color:#fff;font:600 .76rem/1 var(--fb);padding:6px 10px;border-radius:999px}
.pkc h3{margin:0 0 6px}.pkc .for{font-size:.9rem;color:var(--muted)}.pkc .pr{font:800 1.9rem/1.1 var(--fs);margin:6px 0 12px;color:var(--primary)}.pkc .pr small{font:500 .85rem var(--fb);color:var(--muted)}
.pkc ul{padding-left:18px;font-size:.92rem;margin:0 0 16px}.pkc .btn{margin-top:auto}
/* calc */
.calc{padding:24px;margin:28px 0}
.calc-g{display:grid;gap:14px;margin-bottom:18px}.calc-g.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.calc label{display:grid;gap:6px;font:600 .88rem/1.3 var(--fb)}
.calc input,.calc select{min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:500 1rem var(--fb);background:#fff;color:var(--text);width:100%}
.calc-o{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:12px}
.calc-o>div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px}
.calc-o .k{font:600 .78rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px}
.calc-o .v{font:800 2.1rem/1.05 var(--fs);margin:0 0 6px;background:linear-gradient(90deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}
.calc-o .s{font-size:.86rem;color:var(--muted);margin:0}
.calc-n{font-size:.86rem;color:var(--muted)}
/* faq */
.faq details{background:#fff;border:1px solid var(--border);border-radius:14px;margin:10px 0}
.faq summary{list-style:none;cursor:pointer;padding:16px 50px 16px 18px;font:600 1.02rem/1.4 var(--fs);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:20px;top:22px;width:9px;height:9px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);top:26px}
.faq .a{padding:0 18px 14px}
/* side */
.side-in{position:sticky;top:calc(var(--hh) + 20px);display:grid;gap:16px}
.toc{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px}
.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:.9rem}
.toc a{color:var(--muted);text-decoration:none;display:block;padding:4px 0}.toc a:hover,.toc a.act{color:var(--primary)}
.scard{padding:20px;border-radius:20px;background:linear-gradient(160deg,#F4F0FE,#EAF6FC);border:1px solid var(--border)}
.scard p{font-size:.94rem}.scard .tel{font:700 1.1rem var(--fs);color:var(--text)}.scard .btn{width:100%}
/* author */
.author{display:flex;gap:18px;align-items:flex-start;margin-top:44px;padding:20px;background:#fff;border:1px solid var(--border);border-radius:20px}
.author img{width:80px;height:80px;border-radius:50%;object-fit:cover;flex:none}
.author .n{font:700 1.05rem var(--fs);margin:0 0 4px}.author p{font-size:.94rem;margin:0}
/* cta, contact */
.cta{padding:22px 24px;border-radius:20px;background:linear-gradient(160deg,#EFEAFE,#E6F2FD);border:1px solid var(--border);margin:28px 0}
.cta p{font-size:1.05rem;font-weight:500}.cta .row{display:flex;flex-wrap:wrap;gap:12px}
.cblock{position:relative;overflow:hidden;background:var(--grad);padding:72px 0;border-top:1px solid var(--border);isolation:isolate}
.cblock::before{content:"";position:absolute;z-index:-1;left:-100px;bottom:-200px;width:480px;height:480px;border-radius:50%;background:#B9A8FF;filter:blur(80px);opacity:.35}
.cblock .g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:48px;align-items:start}
.chan{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.chan li{font-size:.98rem}
/* blog */
.sec{padding:40px 0 72px}
.filt{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.filt button{min-height:42px;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:#fff;font:600 .9rem var(--fb);cursor:pointer;color:var(--text)}
.filt button[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:#fff}
.cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;text-decoration:none;color:var(--text);transition:transform .18s,box-shadow .18s}
.card:hover{transform:translateY(-2px);box-shadow:var(--gsh)}
.card .thumb{width:100%;aspect-ratio:3/2;object-fit:cover}
.card .lbl,.card h2,.card p,.card .m,.card .go{margin-left:20px;margin-right:20px}
.card .lbl{margin-top:16px;margin-bottom:6px}.card h2{font-size:1.2rem;line-height:1.3;margin-top:0;margin-bottom:8px}
.card p{font-size:.93rem;color:var(--muted)}.card .m{font-size:.82rem;color:var(--muted);margin-bottom:6px}
.card .go{margin-top:auto;padding-bottom:18px;font:600 .9rem var(--fb);color:var(--accent)}.card .go::after{content:" →"}
.card:hover h2{color:var(--primary)}
/* footer */
.ftr{background:#1E1B3A;color:#D9D6F0;padding:56px 0 28px;font-size:.94rem}
.ftr a{color:#fff;text-decoration:none}.ftr a:hover{text-decoration:underline}
.ftr .g{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:32px}
.ftr .logo{margin-bottom:14px}.ftr .wm{color:#fff}.ftr .wm b{color:#B9A8FF}
.ftr .h{font:700 .82rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.08em;color:#B4B1D6;margin:0 0 12px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ftr p{color:#D9D6F0}
.op{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:.85rem}.op p{margin:0 0 6px;color:#B4B1D6}
.mbar{display:none}
@media (max-width:1100px){.hdr-tel{display:none}.nav a{padding:8px 8px;font-size:.9rem}.stages{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:980px){
:root{--hh:64px}
.menu-btn{display:block}
.hdr .wrap>.btn{display:none}
.nav{position:fixed;inset:var(--hh) 0 0 0;background:#fff;flex-direction:column;gap:4px;padding:20px 24px 32px;overflow-y:auto;transform:translateX(100%);transition:transform .25s;margin:0;z-index:49;visibility:hidden}
.nav.open{transform:none;visibility:visible}
.nav a{padding:14px 12px;font-size:1.1rem;border-bottom:1px solid var(--border);border-radius:0}
.nav .mob{display:flex;margin-top:18px;color:#fff!important;border-radius:12px;border:0}
.nav .mob-tel{display:block;text-align:center;font-weight:600;border:0}
.hero-g,.lay,.cblock .g{grid-template-columns:minmax(0,1fr)}
.hero-r{padding-top:0}.bwrap{position:static;width:100%;max-width:340px;margin:0 0 16px}.hero-r .fcard{margin-top:0}
.side{display:none}
.bento-s{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-s .ans{grid-column:1/-1;grid-row:auto}
.brgrid,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.ftr .g{grid-template-columns:repeat(2,minmax(0,1fr))}
.ph-g{grid-template-columns:minmax(0,1fr)}.brt{max-width:none}
.mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--border);box-shadow:0 -6px 20px rgba(46,33,120,.08)}
.mbar a{flex:1;text-align:center;padding:14px 6px;font:600 .95rem var(--fb);color:var(--text);text-decoration:none}
.mbar a.p{background:var(--primary);color:#fff}
body{padding-bottom:52px}
}
@media (max-width:640px){
body{font-size:1rem}
.wrap{padding:0 16px}
h1{font-size:2.1rem}h2,.stn h2{font-size:1.65rem}h3{font-size:1.2rem}.ph h1{font-size:1.95rem}
.hero{padding:36px 0 56px}.hero .lead{font-size:1.08rem}
.cta-row .btn{width:100%}.btn-call{display:inline-flex}
.bwrap{max-width:none}.board.hb{max-height:96px;width:auto}
.wm{font-size:1rem}.logo svg{width:32px;height:32px}
.bento-s,.brgrid,.cards,.kosz,.calc-g.c3,.calc-o{grid-template-columns:minmax(0,1fr)}
.stages{grid-template-columns:minmax(0,1fr)}
.ftr .g{grid-template-columns:minmax(0,1fr)}
.author{flex-direction:column}
.hs{margin-top:-28px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}


/* ===== pozycjonowanieaplikacji.pl – motyw „panel wyników aplikacji / licznik znaków” ===== */
:root{--bg:#F4F6FB;--grad:none;--surface:#fff;--glass:#fff;--sa:#ECEFFA;--ice:#DDF4EF;--text:#141A33;--muted:#4D5573;--primary:#3F3DBF;--primary-d:#3330A3;--accent:#0F7466;--border:#DCE1F0;--success:#15724F;--warning:#965A00;--lav:#ECEFFA;--fs:'Plus Jakarta Sans',Arial,sans-serif;--fb:'IBM Plex Sans',Arial,sans-serif;--fm:'IBM Plex Mono',ui-monospace,monospace;--gsh:0 1px 2px rgba(20,26,51,.05),0 6px 20px rgba(20,26,51,.05)}
body{background:var(--bg);font:400 1.0625rem/1.65 var(--fb)}
a{color:var(--primary)}a:hover,a:focus-visible{color:var(--primary-d)}
h1{font-size:3.125rem;line-height:1.1;letter-spacing:-.02em}h2{font-size:2.125rem;line-height:1.2;letter-spacing:-.015em}h3{font-size:1.375rem}
.lbl,.kicker,.loglbl{font:600 .75rem/1.3 var(--fb);letter-spacing:.1em;color:var(--primary)}
.glass,.fcard,.tile,.calc,.chk,.scard,.cta,.short,.warnbox,.pcard,.author,.toc,.card{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:1px solid var(--border)!important;border-radius:16px!important;box-shadow:var(--gsh)!important}
.btn{border-radius:10px}.btn-p,.btn-a{background:var(--primary);color:#fff}.btn-p:hover,.btn-a:hover{background:var(--primary-d);color:#fff}
.btn-o{background:#fff;border:1.5px solid var(--primary);color:var(--primary)}.btn-o:hover{background:var(--sa)}
.hdr{background:rgba(255,255,255,.96);border-bottom:1px solid var(--border)}
.logo .wm{font:800 1.12rem/1.1 var(--fs);color:var(--text);letter-spacing:-.01em}.logo .wm b{color:var(--primary);font-weight:800}.logo svg{width:40px;height:40px}
.hero{background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);border-bottom:1px solid var(--border)}
.hero-g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:start}
.hero h1 .cu,.cu{background:linear-gradient(transparent 62%,var(--ice) 62%);color:inherit;-webkit-text-fill-color:currentColor}
.hero-r{position:relative}
.hero-r .phone{position:absolute;right:-38px;top:-14px;width:190px;height:auto;opacity:.95;z-index:0}
.hero-r .fcard{position:relative;z-index:1;margin-right:56px}
.hero-r .phone .hit{animation:up .6s .8s ease-out both}
@keyframes up{from{transform:translateY(58px)}to{transform:none}}
.hcnt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
/* licznik znaków */
.cnt{margin:18px 0 26px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;box-shadow:var(--gsh)}
.cnt .c-l{font:600 .72rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 6px}
.cnt .c-m{font:500 .95rem/1.5 var(--fm);color:var(--text);margin:0 0 8px;overflow-wrap:anywhere}
.cnt .c-r{display:flex;align-items:center;gap:12px}
.cnt .c-b{flex:1;height:8px;border-radius:999px;background:var(--border);overflow:hidden;position:relative}
.cnt .c-b i{position:absolute;inset:0 auto 0 0;background:var(--ice);border-right:2px solid var(--accent);border-radius:999px;transition:width .4s ease-out}
.cnt .c-v{font:800 1.05rem/1 var(--fs);font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap}
.cnt .c-s{font-size:.82rem;color:var(--muted);margin:8px 0 0}
.cnt.over .c-b i{background:#F6E6CC;border-color:var(--warning)}.cnt.over .c-v{color:var(--warning)}
.cnt.sm{margin:0;padding:12px 14px}.cnt.sm .c-v{font-size:.95rem}
.brt .cnt.sm{margin:10px 0 14px;box-shadow:none}
/* lejek */
.funnel{margin:20px 0 30px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px 20px;box-shadow:var(--gsh)}
.funnel ol{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.funnel li{display:grid;grid-template-columns:40px minmax(0,220px) minmax(0,1fr);gap:14px;align-items:center}
.funnel .f-ic{width:40px;height:40px;border-radius:50%;background:var(--sa);display:grid;place-items:center;color:var(--primary)}
.funnel .f-n{font:600 .95rem/1.3 var(--fb);color:var(--text)}.funnel .f-n small{display:block;font-weight:400;font-size:.8rem;color:var(--muted)}
.funnel .f-b{position:relative;height:28px;background:var(--sa);border-radius:8px;overflow:hidden}
.funnel .f-b i{position:absolute;inset:0 auto 0 0;background:var(--primary);border-radius:8px}
.funnel li:nth-child(2) .f-b i{background:#5B59D0}.funnel li:nth-child(3) .f-b i{background:var(--accent)}.funnel li:nth-child(4) .f-b i{background:#3A9C8D}
.funnel .f-b b{position:absolute;right:10px;top:50%;transform:translateY(-50%);font:800 .95rem var(--fs);font-variant-numeric:tabular-nums;color:var(--text)}
.funnel figcaption{font-size:.88rem;color:var(--muted);margin-top:14px}
/* lista kontrolna */
.chk{padding:22px!important;margin:18px 0 30px}
.chk-h{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin-bottom:14px}
.chk-h .lbl{margin:0}.chk-h .cnt{min-width:220px;box-shadow:none;border:0;padding:0;background:none}
.chk-l{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;counter-reset:q}
.chk-l label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:10px;cursor:pointer;font-size:.95rem;line-height:1.4;min-height:44px}
.chk-l label:hover{border-color:var(--primary)}
.chk-l input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin-top:1px}
.chk-l input:checked+span{color:var(--text);font-weight:600}
.chk-o{font-size:.95rem;color:var(--muted);background:var(--sa);border-radius:10px;padding:10px 14px}
/* pigułki tak/nie */
.yn{display:inline-block;padding:2px 10px;border-radius:999px;font:600 .82rem/1.5 var(--fb)}.yn.y{background:var(--ice);color:var(--text)}.yn.n{background:var(--sa);color:var(--muted)}
table{border:1px solid var(--border);border-radius:12px;overflow:hidden;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}
table th{background:var(--sa)!important;color:var(--text)!important;font:700 .85rem var(--fs)}
table td,table th{border-bottom:1px solid var(--border)}
.ph{background:#fff;border-bottom:1px solid var(--border)}
.hs{background:var(--sa);border-bottom:1px solid var(--border)}
.stn>.lbl b,.lbl b{background:var(--primary);color:#fff;border-radius:6px;padding:1px 7px}
.warnbox{border-left:3px solid var(--warning)!important;background:#FFF9EF!important}.warnbox .lbl{color:var(--warning)}
.quote{border-left:3px solid var(--primary);background:transparent;padding:4px 0 4px 18px;font:700 1.25rem/1.4 var(--fs);color:var(--text)}
.steps li::before{background:var(--ice);color:var(--accent);border:0;font-family:var(--fs);font-weight:800}
.faq details{background:#fff;border:1px solid var(--border);border-radius:12px;margin:0 0 10px;padding:0 18px}
.faq summary{font:700 1.05rem/1.35 var(--fs);padding:16px 30px 16px 0;cursor:pointer;list-style:none;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:14px;font:700 1.3rem var(--fs);color:var(--primary);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .a{padding:0 0 14px}
.cblock{background:#141A33;color:#DDE1F2}.cblock h2,.cblock .lbl{color:#fff}.cblock .lbl{color:#9FE3D6}.cblock a{color:#C9C8FF}
.cblock .fcard,.cblock .fcard h2{color:var(--text)}
.ftr{background:#10142A;color:#C7CBE0;border-top:0}.ftr a{color:#fff}.ftr .h{color:#9FE3D6}.ftr .logo .wm{color:#fff}.ftr .logo .wm b{color:#B9B8FF}
.mbar{background:#141A33}.mbar a{color:#fff}.mbar a.p{background:var(--primary);color:#fff}
.nav .mob,.nav a.btn-p{color:#fff!important;background:var(--primary)!important;border-color:var(--primary)!important}
.fig img{border-radius:16px;border:1px solid var(--border)}
.fcard input,.fcard select,.fcard textarea{border:1px solid #C9CFE3;border-radius:10px;background:#fff}
.fcard input:focus,.fcard select:focus{border-color:var(--primary)}
.brgrid .br{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--gsh)}.brgrid .br:hover{border-color:var(--primary)}
.br-ic{background:var(--sa)!important;color:var(--primary)!important;border-radius:50%!important}
.pill{background:var(--sa);color:var(--text);border:0;border-radius:999px}
.proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 22px}
.pcard{padding:18px 20px}.pcard h3{margin:4px 0 2px}.pc-b{color:var(--muted);font-size:.95rem;margin:0 0 12px}
.pcard dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 12px}
.pcard dl div{background:var(--sa);border-radius:10px;padding:10px;display:flex;flex-direction:column-reverse}
.pcard dd{margin:0;font:800 1.2rem/1.1 var(--fs);color:var(--primary);white-space:nowrap;font-variant-numeric:tabular-nums}.pcard dt{font-size:.8rem;line-height:1.3}
.pc-s{font-size:.85rem;color:var(--muted);margin:0}
.formula{display:grid;gap:4px;background:#fff;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;padding:12px 16px;margin:12px 0}
.formula b,.formula-h{font:600 .75rem/1.2 var(--fb);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.formula span{font:500 1rem/1.5 var(--fm)}
.przypis{font-size:.88rem;color:var(--muted)}
.cards .card .lbl{background:var(--sa);border-radius:999px;padding:2px 10px}
.prose{max-width:68ch}
@media (max-width:980px){.hero-g{grid-template-columns:minmax(0,1fr)}.hero-r .phone{display:none}.hero-r .fcard{margin-right:0}.hcnt{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);overflow-x:auto;padding-bottom:6px}}
@media (max-width:640px){h1{font-size:2.06rem}h2,.stn h2{font-size:1.56rem}.chk-l{grid-template-columns:minmax(0,1fr)}.funnel li{grid-template-columns:36px minmax(0,1fr)}.funnel .f-b{grid-column:1/-1}.proof,.pcard dl{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.hero-r .phone .hit{animation:none}.cnt .c-b i,.btn,.faq summary::after{transition:none}}

.hero{background:linear-gradient(180deg,#fff 0%,var(--bg) 100%)!important}.hero::before,.hero::after{display:none!important}
.funnel li:first-child .f-b b,.funnel li:nth-child(2) .f-b b{color:#fff}

.hs .bento-s .tile.l{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
.hs .bento-s .tile.s{box-shadow:none!important;position:relative;padding-left:34px!important}
.hs .bento-s .tile.s::before{content:""!important;position:absolute!important;left:14px;top:20px;width:10px!important;height:10px!important;border-radius:50%!important;background:var(--accent)!important;border:0!important;display:block!important}

.prose p,.main p{overflow-wrap:anywhere}

.tasma{list-style:none!important;padding:0!important;margin:18px 0 26px;display:grid;gap:12px;counter-reset:none}
.tasma>li{display:grid!important;grid-template-columns:auto 1fr;gap:14px;align-items:start;background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin:0!important}
.tasma>li::before,.tasma>li::marker{content:none!important;display:none!important}
.tasma .fn{display:inline-flex!important;align-items:center;justify-content:center;min-width:38px;height:28px;padding:0 8px;border-radius:999px;background:var(--primary);color:#fff;font:600 13px/1 'IBM Plex Mono',monospace;margin:0!important}
.tasma b{display:block;margin-bottom:4px}
.faq summary::after{content:"+"!important;transform:translateY(-50%)!important;width:auto!important;height:auto!important;border:0!important;background:none!important;font:600 22px/1 var(--fh,inherit);color:var(--primary)}
.faq details[open] summary::after{content:"–"!important}

.tasma>li{grid-template-columns:44px minmax(0,1fr)!important;column-gap:14px;row-gap:2px}
.tasma>li>*:not(.fn){grid-column:2}
.tasma .fn{grid-column:1;grid-row:1 / span 3;width:44px;min-width:0;justify-self:start}
.faq summary{position:relative;padding-right:44px!important}
.faq summary::after{position:absolute!important;right:18px;top:50%!important}

.tasma>li p{margin:0}
.tasma .fn{grid-row:1 / span 2}


/* ===== projektowaniestron.pl – motyw „plansza projektowa / artboard” ===== */
:root{--bg:#EEF0F3;--grad:none;--surface:#fff;--surface-alt:#F6F7F9;--glass:#fff;--text:#15171C;--muted:#545A65;--primary:#0A66D6;--primary-d:#0852AD;--accent:#C42B33;--red:#E5484D;--sel:#3D8BFF;--border:#D9DDE3;--lav:#E6EEFB;--success:#1C7A4E;--warning:#8F4A00;--fs:'Host Grotesk',Arial,sans-serif;--fb:'Host Grotesk',Arial,sans-serif;--fm:'Red Hat Mono',ui-monospace,monospace;--hh:68px;--gsh:none}
body{background:var(--bg);color:var(--text);font:400 1.06rem/1.68 var(--fb)}
h1,h2,h3,h4{font-family:var(--fs);color:var(--text);letter-spacing:-.02em}
h1{font-weight:800;line-height:1.06}h2{font-weight:750;line-height:1.14}h3{font-weight:700}
a{color:var(--primary)}a:hover{color:var(--primary-d)}
::selection{background:#CFE1FF}
.btn{border-radius:8px;font:650 .98rem/1.2 var(--fb);letter-spacing:0;text-transform:none;padding:13px 20px;box-shadow:none}
.btn-p{background:var(--primary);color:#fff;border:1px solid var(--primary)}.btn-p:hover{background:var(--primary-d);color:#fff}
.btn-o{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-o:hover{border-color:var(--sel);color:var(--text);box-shadow:0 0 0 1px var(--sel)}
.lbl,.kicker,.loglbl{font:600 .74rem/1.3 var(--fm);letter-spacing:.04em;text-transform:none;color:var(--muted)}
/* header */
.hdr{background:#fff!important;border-bottom:1px solid var(--border)}
.hdr .wrap{min-height:var(--hh)}
.logo svg{width:38px;height:38px}
.wm{font:700 1.18rem/1 var(--fs);letter-spacing:-.02em;color:var(--text)}.wm b{font-weight:800;color:var(--primary)}
.nav a{font:550 .93rem/1.2 var(--fb);text-transform:none;letter-spacing:0;color:var(--text);border-radius:6px;padding:8px 10px;background:transparent}
.nav a:hover{background:var(--surface-alt);color:var(--text)}
.nav a[aria-current]{color:var(--primary);background:transparent;box-shadow:inset 0 -2px 0 var(--primary);border-radius:0}
.hdr-tel{font:600 .9rem/1 var(--fm);color:var(--text)}
.menu-btn{border:1px solid var(--border);border-radius:8px;background:#fff}
/* hero */
.hero{background:var(--bg);background-image:radial-gradient(#C9CED6 1px,transparent 1px);background-size:20px 20px;padding:44px 0 40px;border-bottom:1px solid var(--border)}
.hero::before,.hero::after{display:none!important}
.hero .kicker{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:6px;padding:5px 10px;color:var(--text);margin:0 0 16px}
.hero .kicker::before{content:"";width:10px;height:10px;border:1.5px solid var(--sel);border-radius:2px}
.hero h1{font-size:clamp(2.2rem,4.2vw,3.5rem);max-width:17ch;margin:0 0 18px}
.hero h1 em{font-style:normal;color:var(--primary);box-shadow:inset 0 -.12em 0 #CFE1FF}
.hero .lead{font-size:1.14rem;color:#2C3038;max-width:58ch}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 12px}
.cline{font-size:.95rem;color:var(--muted)}
.hero-r .fcard{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 0 rgba(0,0,0,.03),0 12px 32px -18px rgba(21,23,28,.25);padding:0 22px 22px;position:relative}
.hero-r .fcard .cp-k{margin:0 -22px 18px;padding:10px 22px;border-bottom:1px solid var(--border);font:600 .76rem/1.2 var(--fm);color:var(--muted);display:flex;justify-content:space-between;background:var(--surface-alt);border-radius:12px 12px 0 0}
.hero-r .fcard .cp-k::after{content:"⋯";letter-spacing:.1em}
.fcard h2{font-size:1.45rem;margin:0 0 4px}
.form label{font:600 .86rem/1.3 var(--fb);color:var(--text)}
.form input,.form select,.form textarea{border:1px solid var(--border);border-radius:6px;background:#fff;font:400 1rem/1.3 var(--fb)}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--sel);outline-offset:0;border-color:var(--sel)}
/* artboard */
.artb{margin-top:26px;border:1px solid var(--border);border-radius:12px;background:#fff;overflow:hidden;max-width:640px}
.ab-bar{display:flex;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border);font:500 .74rem/1 var(--fm);color:var(--muted);background:var(--surface-alt)}
.ab-can{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:18px;padding:22px 18px;background:#E9ECF0;background-image:radial-gradient(#CBD0D8 1px,transparent 1px);background-size:14px 14px}
.ab-frame,.m-f{background:#fff;border-radius:4px;box-shadow:0 0 0 1px #D3D8DF;padding:12px;position:relative;display:grid;gap:12px}
.artb i,.artb b{display:block;background:#E3E6EB;border-radius:3px;height:8px}
.w-nav{display:grid;grid-template-columns:22px 1fr 1fr 1fr 44px;gap:8px;align-items:center}.w-nav i{height:6px}.w-nav .w-logo{height:14px;background:#15171C}.w-nav b{height:14px;background:var(--primary)}
.w-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:12px;align-items:center}
.w-txt{display:grid;gap:7px}.w-h{height:12px!important;background:#C3C9D2!important}.w-h.s,.w-p.s{width:65%}.w-btn{width:56px;height:16px!important;background:var(--primary)!important;margin-top:4px}
.w-img{height:86px!important;background:#DCE6F5!important;position:relative;border-radius:3px}
.w-img.sel{outline:1.5px solid var(--sel);outline-offset:3px}
.w-img .sz{position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);background:var(--sel);color:#fff;font:600 .62rem/1 var(--fm);padding:3px 5px;border-radius:3px;white-space:nowrap}
.w-img em{position:absolute;width:6px;height:6px;background:#fff;border:1.5px solid var(--sel)}
.w-img .h1{left:-7px;top:-7px}.w-img .h2{right:-7px;top:-7px}.w-img .h3{left:-7px;bottom:-7px}.w-img .h4{right:-7px;bottom:-7px}
.w-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.w-cards i{height:34px;background:#EEF0F3}
.red{position:absolute;font:600 .6rem/1 var(--fm);color:#fff;background:var(--red);padding:2px 4px;border-radius:3px}
.r1{left:-2px;top:44px}.r2{right:46%;bottom:44px}
.ab-mob{display:grid;gap:6px;align-content:start}.ab-mn{font:500 .62rem/1 var(--fm);color:var(--muted)}
.m-f{gap:7px;padding:10px 8px}.m-f .w-logo{width:18px;height:8px;background:#15171C}.m-f .w-img{height:44px!important}
/* ticker */
.ticker{background:#15171C;color:#fff;border:0}
.ticker ul{display:flex;flex-wrap:wrap;gap:8px 26px;list-style:none;margin:0;padding:14px 0;justify-content:space-between}
.ticker li{display:flex;align-items:center;gap:8px;font:500 .9rem/1.3 var(--fb);color:#fff}.ticker li svg{color:#7FB2FF}
/* progress curve */
.hcurve{padding:36px 0 8px}
.pcurve{margin:0;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 16px 6px}
.pcurve figcaption{display:flex;justify-content:space-between;font:500 .74rem/1 var(--fm);color:var(--muted);margin-bottom:6px}
.pcurve svg{width:100%;height:auto;display:block}
.pcurve .gr line{stroke:#E6E9EE;stroke-width:1}
.pcurve .ax text{font:500 11px var(--fm);fill:#7A808B}
.pcurve .ln{fill:none;stroke:var(--sel);stroke-width:2.5}
.pcurve .ms rect{fill:#fff;stroke:var(--sel);stroke-width:2}
.pcurve .ms text{font:600 12px var(--fb);fill:var(--text)}
.pcurve.big{max-width:none}
/* short */
.hs{padding:28px 0 4px}
/* page header */
.ph{background:var(--bg)!important;background-image:radial-gradient(#C9CED6 1px,transparent 1px)!important;background-size:20px 20px!important;border-bottom:1px solid var(--border)!important;padding:30px 0 34px}
.ph::after,.ph::before{display:none!important}
.ph h1{font-size:clamp(2rem,3.6vw,2.9rem);max-width:24ch}
.ph .lead{color:#2C3038}
.ph .loglbl{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:6px;padding:5px 10px;color:var(--text)}
.ph .loglbl::before{content:"#";color:var(--sel);font-weight:700}
.crumbs{font:500 .82rem/1.4 var(--fm);color:var(--muted)}.crumbs a{color:var(--muted)}
/* layout & sections as frames */
.lay{padding-top:36px}
.main>.stn,.main>section.stn{background:#fff;border:1px solid var(--border);border-radius:12px;padding:28px 30px 22px;margin:0 0 26px;position:relative}
.main>.stn>.lbl:first-child,.stn>span.lbl{position:absolute;top:-11px;left:18px;margin:0;background:var(--bg);padding:2px 8px;border:1px solid var(--border);border-radius:5px;font:600 .7rem/1.2 var(--fm);color:var(--muted);display:inline-flex;gap:6px}
.stn>span.lbl b{color:var(--primary);font-weight:600}
.stn h2{font-size:clamp(1.5rem,2.4vw,2rem);margin-top:6px}
.stn+.stn{border-top:1px solid var(--border)}
.side .notow,.side .scard,.side .toc{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px}
.insp .nt-h{display:flex;justify-content:space-between;align-items:center;font:600 .78rem/1 var(--fm);color:var(--text);margin:0 0 10px}
.insp .dots{display:flex;gap:3px}.insp .dots i{width:4px;height:4px;border-radius:50%;background:#9AA1AC}
.insp dl{margin:0;display:grid}.insp dl div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid #EEF0F3}
.insp dt{font:500 .86rem/1.3 var(--fb);color:var(--muted)}.insp dd{margin:0;font:600 .86rem/1.3 var(--fm);color:var(--text);text-align:right}
.insp .nt-s{font-size:.78rem;color:var(--muted);margin:8px 0 0}
.side .pcurve{padding:10px 10px 4px}
.toc a{color:var(--text);font-size:.92rem}.toc a:hover{color:var(--primary)}
.scard .tel{font:600 1.1rem/1.2 var(--fm);color:var(--text)}
/* tables */
.tbl,table{border-radius:8px}
table{border:1px solid var(--border);background:#fff}
thead th{background:var(--surface-alt)!important;color:var(--muted)!important;font:600 .76rem/1.3 var(--fm)!important;text-transform:none!important;letter-spacing:.02em!important;border-bottom:1px solid var(--border)!important}
td,tbody th{font-family:var(--fb)!important;border-color:#EEF0F3!important}
tbody tr:hover{background:#F5F9FF}
/* cards */
.tile,.brgrid a{background:#fff!important;border:1px solid var(--border)!important;border-radius:12px!important;box-shadow:none!important}
.brgrid a:hover{border-color:var(--sel)!important;box-shadow:0 0 0 1px var(--sel)!important}
.br-ic,.kosz .ico{background:#E8F1FF!important;color:var(--primary)!important;border-radius:8px!important}
.pill,.price-pill,.mx.mid{background:#E8F1FF!important;color:var(--primary)!important}
.bento-s .tile.s:nth-child(3)::before,.blg .r::before{background:#E8F1FF!important;border-color:var(--border)!important}
.cta{background:#15171C!important;color:#fff;border-radius:12px!important;border:0!important}
.cta p{color:#fff}.cta .btn-o{background:transparent;color:#fff;border-color:#4A505B}
.warnbox{background:#FFF6F0!important;border:1px solid #F1CDB8!important;border-left:3px solid var(--warning)!important;border-radius:8px}
.note{border-left:3px solid var(--sel)!important;background:#F5F9FF!important;border-radius:0 8px 8px 0}
.fig img{border-radius:10px;border:1px solid var(--border)}
.fig figcaption{font:500 .8rem/1.4 var(--fm);color:var(--muted)}
.steps>li::before,.tasma .n{background:var(--primary)!important;color:#fff!important;font-family:var(--fm)!important}
.faq details{border-color:var(--border)!important;background:#fff}
.faq summary{font-weight:650}
.author{background:#fff;border:1px solid var(--border);border-radius:12px}
.cblock{background:#15171C!important;color:#E6E8EC}
.cblock h2,.cblock .lbl{color:#fff}.cblock a{color:#9CC4FF}.cblock .chan li{color:#E6E8EC}
.cblock .fcard{background:#fff;color:var(--text);border-radius:12px}.cblock .fcard a{color:var(--primary)}
.ftr{background:#0E0F13!important;color:#C9CDD4}.ftr a{color:#fff}.ftr .h{font:600 .76rem/1.2 var(--fm);color:#8E95A1;text-transform:none;letter-spacing:.04em}
.ftr .wm{color:#fff}.ftr .wm b{color:#7FB2FF}
.mbar{background:#15171C!important}.mbar a{color:#fff;font-family:var(--fb)}.mbar a.p{background:var(--primary)!important}
@media (max-width:980px){.ab-can{grid-template-columns:minmax(0,1fr) 84px;gap:10px;padding:14px 10px}.nav{background:#fff}.nav a{font-size:1.05rem;padding:12px 4px;border-bottom:1px solid #EEF0F3;border-radius:0;box-shadow:none}.nav a[aria-current]{box-shadow:none;color:var(--primary)}}
@media (max-width:620px){.hero{padding:26px 0 28px}.hero h1{font-size:2.1rem}.cta-row .btn{flex:1 1 100%;text-align:center}.main>.stn,.main>section.stn{padding:22px 16px 16px;border-radius:10px}.ticker ul{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}.ticker li{white-space:nowrap}.wm{font-size:1.04rem}.ab-mob{display:none}.ab-can{grid-template-columns:1fr}.pcurve .ms text{font-size:15px}}

.hero .kicker{white-space:normal;max-width:100%;line-height:1.35}
.cta-row .btn{white-space:nowrap}
.ticker ul{display:flex!important;grid-template-columns:none!important}.ticker li{flex:0 1 auto;white-space:nowrap}
.stn>span.lbl b,.main>.stn>.lbl:first-child b{background:none!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;color:var(--primary)!important;font:600 .7rem/1.2 var(--fm)!important;display:inline!important}
.stn>span.lbl::before,.stn>span.lbl::after{display:none!important}
.form label small{display:inline;margin-left:4px;color:var(--muted);font-weight:500}
@media (max-width:620px){.cta-row .btn{white-space:normal}.hero .kicker{font-size:.7rem}}

.hcurve{padding:36px 0 34px;position:relative;z-index:1}.hs{margin-top:0!important;position:relative}
.br-go,.tile .go,.brgrid .more,.brgrid a span:last-child{color:var(--primary)!important}

.ph .loglbl,.ph .lbl.loglbl{white-space:nowrap;width:auto;max-width:none;display:inline-flex}
