/* ============================================================
   seo-analyza.cz — Landing · Editorial Paper / Diagnostic Report
   ============================================================ */
:root{
  --paper:#F6F2EA;
  --paper-2:#EFEADF;
  --paper-3:#E9E3D6;
  --card:#FFFDF8;
  --ink:#1B1A17;
  --ink-2:#5E594E;
  --ink-3:#928C7E;
  --line:rgba(27,26,23,.14);
  --line-2:rgba(27,26,23,.08);
  --accent:oklch(0.55 0.16 33);          /* restrained brick red */
  --accent-soft:oklch(0.55 0.16 33 / .10);
  --crit:oklch(0.55 0.15 28);
  --crit-soft:oklch(0.55 0.15 28 / .10);
  --warn:oklch(0.64 0.11 70);
  --ok:oklch(0.52 0.09 150);
  --ok-soft:oklch(0.56 0.09 150 / .12);
  --serif:"Source Serif 4",Georgia,serif;
  --sans:"Hanken Grotesk",system-ui,sans-serif;
  --mono:"IBM Plex Mono",monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
}
a{color:inherit;text-decoration:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 44px}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.serif{font-family:var(--serif)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:600;font-size:15.5px;cursor:pointer;border:none;transition:.2s;white-space:nowrap;letter-spacing:.005em}
.btn-primary{background:var(--ink);color:var(--paper);padding:14px 26px;border-radius:3px}
.btn-primary:hover{background:var(--accent)}
.btn-primary .arr{transition:.2s}
.btn-primary:hover .arr{transform:translateX(3px)}
.btn-ghost{color:var(--ink);border:1px solid var(--line);padding:13px 24px;border-radius:3px;background:transparent}
.btn-ghost:hover{border-color:var(--ink);background:var(--card)}
.btn-lg{font-size:16.5px;padding:16px 30px}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--paper) 80%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .35s var(--ease),box-shadow .35s var(--ease),background .35s var(--ease)}
header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(27,26,23,.02),0 10px 28px -22px rgba(27,26,23,.35)}
.nav{display:flex;align-items:center;justify-content:space-between;height:82px}
.lockup{display:flex;align-items:center;gap:13px}
.lockup .mark{width:34px;height:34px;flex:none}
.lockup .mark svg{width:100%;height:100%;display:block;overflow:visible}
.lockup .mark .lens{stroke:var(--ink);stroke-opacity:.3;stroke-width:2.2;fill:var(--card)}
.lockup .mark .gauge{stroke:var(--accent);stroke-width:2.4;stroke-linecap:round}
.lockup .mark .handle{stroke:var(--ink);stroke-width:3;stroke-linecap:round}
.lockup .mark .pivot{fill:var(--ink)}
.lockup:hover .mark .gauge{stroke-dasharray:22;stroke-dashoffset:22;animation:gaugeDraw .6s var(--ease,cubic-bezier(.2,.8,.2,1)) forwards}
@keyframes gaugeDraw{to{stroke-dashoffset:0}}
.lockup .lk-txt{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}
.lockup .lk-txt .a{font-family:var(--mono);font-size:15px;color:var(--ink);letter-spacing:0}
.lockup .lk-txt .b{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}
.navlinks{display:flex;gap:32px;font-size:15px;color:var(--ink-2)}
.navlinks a:hover{color:var(--ink)}
.nav .navcta{display:flex;align-items:center;gap:18px}

/* ---------- hero ---------- */
.hero{padding:74px 0 76px;position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:28px}
.eyebrow .rule{width:36px;height:1px;background:var(--accent)}
h1.hero-h{font-family:var(--serif);font-weight:500;font-size:60px;line-height:1.04;letter-spacing:-.02em;margin-bottom:26px;text-wrap:balance}
h1.hero-h em{font-style:italic;color:var(--accent)}
h1.hero-h .hl{color:var(--accent);font-style:normal}
.hero-sub{font-size:19px;color:var(--ink-2);max-width:33em;margin-bottom:36px;text-wrap:pretty}
.hero-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.chip{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:40px;padding:8px 15px 8px 12px}
.chip .ck{width:15px;height:15px;flex:none;color:var(--accent)}

/* report mockup */
.report-stage{position:relative;perspective:2000px}
.doc{background:var(--card);border:1px solid var(--line);border-radius:6px;position:relative}
.doc-back{position:absolute;inset:0;transform:rotate(3.5deg) translate(14px,16px);background:var(--paper-2);border:1px solid var(--line);border-radius:6px;z-index:0}
.doc-front{position:relative;z-index:1;box-shadow:0 1px 0 rgba(0,0,0,.02),0 34px 64px -32px rgba(27,26,23,.34);transform:rotate(-1.4deg);transition:.45s cubic-bezier(.2,.8,.2,1)}
.report-stage:hover .doc-front{transform:rotate(-0.4deg) translateY(-5px)}
.doc-head{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 26px 18px;border-bottom:1px solid var(--line-2)}
.doc-head .dom{font-family:var(--mono);font-size:13.5px;color:var(--ink)}
.doc-head .ty{font-size:11.5px;color:var(--ink-3);margin-top:4px}
.doc-head .stamp{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:2px;padding:4px 8px}
.doc-score{display:flex;align-items:center;gap:22px;padding:26px 26px 20px}
.ring{position:relative;width:104px;height:104px;flex:none}
.ring svg{transform:rotate(-90deg)}
.ring .num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring .num b{font-family:var(--serif);font-size:36px;font-weight:600;line-height:1}
.ring .num span{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--ink-3);margin-top:3px}
.doc-score .sc-l h5{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}
.doc-score .sc-l p{font-family:var(--serif);font-size:16px;line-height:1.35;text-wrap:pretty}
.doc-score .sc-l p b{color:var(--accent);font-weight:600}
.doc-rows{padding:4px 26px 8px}
.drow{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line-2)}
.drow .rn{font-size:14px;color:var(--ink-2)}
.drow .rb{display:flex;align-items:center;gap:10px}
.drow .rb .track{width:70px;height:5px;background:var(--paper-2);border-radius:3px;overflow:hidden}
.drow .rb .track i{display:block;height:100%;border-radius:3px}
.drow .rb .st{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;width:60px;text-align:right}
.doc-foot{display:flex;align-items:center;gap:10px;padding:16px 26px;border-top:1px solid var(--ink);background:var(--paper-2)}
.doc-foot .pdot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}
.doc-foot .pt{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.doc-foot .pt b{color:var(--ink)}

/* ---------- section frame ---------- */
section{padding:78px 0;position:relative}
.divider{border-top:1px solid var(--line)}
.sec-head{max-width:760px;margin-bottom:44px}
.sec-head .mono{display:block;margin-bottom:18px}
.sec-head h2{font-family:var(--serif);font-weight:500;font-size:42px;line-height:1.1;letter-spacing:-.018em;margin-bottom:18px;text-wrap:balance}
.sec-head p{font-size:18.5px;color:var(--ink-2);max-width:36em;text-wrap:pretty}

/* ---------- co zjistíme (editorial list) ---------- */
.diaglist{border-top:1px solid var(--ink)}
.diag{display:grid;grid-template-columns:64px 1fr 1.1fr;gap:36px;align-items:baseline;padding:34px 0;border-bottom:1px solid var(--line);transition:.2s}
.diag:hover{padding-left:8px}
.diag .dn{font-family:var(--mono);font-size:13px;color:var(--accent)}
.diag h3{font-family:var(--serif);font-size:25px;font-weight:500;letter-spacing:-.01em}
.diag p{font-size:16px;color:var(--ink-2);text-wrap:pretty}

/* ---------- google / AI section ---------- */
.ai{background:var(--ink);color:var(--paper)}
.ai .sec-head .mono{color:var(--accent)}
.ai .sec-head h2{color:var(--paper)}
.ai .sec-head p{color:rgba(246,242,234,.72)}
.ai-split{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid rgba(246,242,234,.16);border-radius:6px;overflow:hidden}
.ai-col{padding:38px 40px}
.ai-col:first-child{border-right:1px solid rgba(246,242,234,.16)}
.ai-col h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;color:rgba(246,242,234,.6)}
.ai-col .reads{font-family:var(--serif);font-size:20px;line-height:1.5;color:rgba(246,242,234,.94);text-wrap:pretty}
.ai-col .lead-q{font-family:var(--serif);font-size:21px;line-height:1.55;border-left:2px solid var(--accent);padding-left:24px;color:rgba(246,242,234,.94);text-wrap:pretty}
.ai-mini{margin-top:22px;display:flex;flex-direction:column;gap:14px}
.ai-mini .m{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:baseline;font-size:15px;color:rgba(246,242,234,.82)}
.ai-mini .m .tg{font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);padding-top:2px}

/* ---------- co dostanete (deliverables) ---------- */
.deliv{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--card)}
.dv{padding:30px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.dv:nth-child(4n){border-right:none}
.dv:nth-last-child(-1n+4){border-bottom:none}
.dv .dvn{font-family:var(--mono);font-size:12px;color:var(--accent);margin-bottom:18px}
.dv h3{font-family:var(--serif);font-size:21px;font-weight:500;margin-bottom:9px;letter-spacing:-.01em}
.dv p{font-size:15px;color:var(--ink-2);text-wrap:pretty}

/* ---------- report preview ---------- */
.preview-sec{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.verdict{background:var(--ink);color:var(--paper);border-radius:6px;padding:40px 44px;margin-bottom:30px;display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center}
.verdict .vlab{font-family:var(--mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);writing-mode:vertical-rl;transform:rotate(180deg);align-self:stretch;border-right:1px solid rgba(246,242,234,.2);padding-right:18px}
.verdict p{font-family:var(--serif);font-size:23px;line-height:1.45;text-wrap:pretty}
.verdict p b{color:#fff}
.pv-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pv-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}
.scard{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:22px 24px}
.scard .sk{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.scard .sv{display:flex;align-items:baseline;gap:8px}
.scard .sv b{font-family:var(--serif);font-size:34px;font-weight:600;line-height:1}
.scard .sv .o{font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.scard .strack{height:5px;background:var(--paper-2);border-radius:3px;overflow:hidden;margin-top:14px}
.scard .strack i{display:block;height:100%;border-radius:3px}
.pv-table{background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.pv-table .pth{display:grid;grid-template-columns:50px 1fr auto;gap:16px;padding:14px 22px;background:var(--paper-2);font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.pv-table .ptr{display:grid;grid-template-columns:50px 1fr auto;gap:16px;padding:16px 22px;border-top:1px solid var(--line-2);align-items:center}
.pv-table .ptr .pp{font-family:var(--mono);font-size:11px}
.pv-table .ptr .pi{font-size:15px}
.pv-table .ptr .pf{font-size:12.5px;color:var(--ink-2);text-align:right;max-width:18em}
.sev-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;padding:3px 7px;border-radius:20px}
.sev-tag .bp{width:6px;height:6px;border-radius:50%}
.t-crit{background:var(--accent-soft);color:var(--accent)}.t-crit .bp{background:var(--accent)}
.t-warn{background:oklch(0.66 0.11 70 / .16);color:oklch(0.46 0.1 60)}.t-warn .bp{background:var(--warn)}
.preview-cta{margin-top:30px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.preview-cta .nt{font-size:14px;color:var(--ink-3)}

/* ---------- pro koho ---------- */
.audience{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line)}
.aud{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 22px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;transition:.2s}
.aud .ad h3{font-family:var(--serif);font-size:18px;font-weight:500;line-height:1.2;letter-spacing:-.01em;margin-bottom:7px}
.aud .ad p{font-size:13px;color:var(--ink-2);line-height:1.45;text-wrap:pretty}
.aud:hover{background:var(--card)}
.aud .an{font-family:var(--mono);font-size:12px;color:var(--accent)}
.aud h3{font-family:var(--serif);font-size:20px;font-weight:500;line-height:1.2;letter-spacing:-.01em}

/* ---------- final cta + form ---------- */
.final{background:var(--ink);color:var(--paper)}
.final-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.final h2{font-family:var(--serif);font-weight:500;font-size:46px;line-height:1.08;letter-spacing:-.02em;margin-bottom:20px;text-wrap:balance}
.final .fl-sub{font-size:18px;color:rgba(246,242,234,.72);max-width:26em;text-wrap:pretty}
.form{background:var(--card);border-radius:8px;padding:34px 36px;color:var(--ink);box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
.form h3{font-family:var(--serif);font-size:22px;font-weight:500;margin-bottom:22px}
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.field input,.field textarea{width:100%;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:13px 15px;transition:.18s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);background:var(--card)}
.field textarea{resize:vertical;min-height:78px}
.form .btn-primary{width:100%;justify-content:center;margin-top:6px}
.form .micro{font-size:13px;color:var(--ink-3);margin-top:16px;line-height:1.5;text-wrap:pretty}
.form .done-msg{display:none;text-align:center;padding:30px 10px}
.form .done-msg.show{display:block}
.form .done-msg .dh{font-family:var(--serif);font-size:24px;margin-bottom:10px}
.form .done-msg p{font-size:15px;color:var(--ink-2)}
.form.sent .field,.form.sent .btn-primary,.form.sent .micro,.form.sent h3{display:none}

/* ---------- footer ---------- */
footer{padding:54px 0 44px;border-top:1px solid var(--line)}

/* ---------- hero facts strip ---------- */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin-top:32px;background:var(--card)}
.fact{padding:16px 20px;border-right:1px solid var(--line)}
.fact:last-child{border-right:none}
.fact .fl{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.fact .fv{font-size:14.5px;color:var(--ink);line-height:1.35;text-wrap:pretty}
.fact .fv b{font-weight:600}
.mockup-cap{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-3);text-align:center;margin-top:18px;text-transform:none}

/* ---------- richer hero mockup ---------- */
.doc-counts{display:flex;gap:8px;flex-wrap:wrap;padding:2px 26px 16px}
.dcount{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2);background:var(--paper-2);border-radius:20px;padding:5px 11px}
.dcount .dd{width:7px;height:7px;border-radius:50%;flex:none}
.dcount .dd.crit{background:var(--crit)}.dcount .dd.high{background:var(--warn)}.dcount .dd.mid{background:var(--accent)}
.ring-ticks line{stroke:var(--ink);stroke-opacity:.14;stroke-width:1.4;stroke-linecap:round}
.doc-find2{margin:0 26px 16px;padding:15px 17px;background:var(--paper-2);border:1px solid var(--line-2);border-radius:5px}
.doc-find2 .ph{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.doc-find2 .ph .pt{font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.3}
.doc-find2 .pl{font-family:var(--mono);font-size:11px;color:var(--ink-2);line-height:1.6}
.doc-find2 .pl b{color:var(--ink)}
.doc-mods{display:flex;gap:8px;flex-wrap:wrap;padding:16px 26px;border-top:1px solid var(--ink);background:var(--paper-2)}
.dmod{font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);border-radius:3px;padding:5px 9px;background:var(--card)}

/* ---------- report preview blocks ---------- */
.pvblocks{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.pvb{border:1px solid var(--line);border-radius:6px;background:var(--card);overflow:hidden;display:flex;flex-direction:column}
.pvb .pvh{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line-2);background:var(--paper-2)}
.pvb .pvh .mono{color:var(--ink-2)}
.pvb .pvh .sn{font-family:var(--mono);font-size:10px;color:var(--ink-3)}
.pvb .pvbody{padding:8px 20px 16px}
.pvb.wide{grid-column:1 / -1}
/* top5 list */
.t5{list-style:none}
.t5 li{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line-2)}
.t5 li:first-child{border-top:none}
.t5 .rk{font-family:var(--serif);font-size:18px;color:var(--ink-3);line-height:1.2}
.t5 .tt{font-size:14.5px;color:var(--ink);line-height:1.35}
.t5 .tt span{display:block;font-size:12.5px;color:var(--ink-2);margin-top:3px;text-wrap:pretty}
/* ai before/after (light) */
.baL{display:flex;flex-direction:column;gap:12px}
.baL .row{padding:13px 15px;border-radius:5px}
.baL .row.now{background:var(--paper-2);border:1px solid var(--line-2)}
.baL .row.aft{background:var(--ok-soft);border:1px solid oklch(0.52 0.09 150 / .3)}
.baL .row .l{font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:7px}
.baL .row .l .d{width:6px;height:6px;border-radius:50%}
.baL .row.now .l{color:var(--ink-3)}.baL .row.now .l .d{background:var(--warn)}
.baL .row.aft .l{color:var(--ok)}.baL .row.aft .l .d{background:var(--ok)}
.baL .row .q{font-family:var(--serif);font-size:15px;line-height:1.4;color:var(--ink);text-wrap:pretty}
/* mini 30-day plan */
.mplan{list-style:none;display:flex;flex-direction:column;gap:11px}
.mplan li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:baseline;font-size:14px;color:var(--ink-2);line-height:1.4;text-wrap:pretty}
.mplan li .ph{font-family:var(--mono);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);white-space:nowrap;padding-top:1px}
/* mini competitors */
.ctable{width:100%;border-collapse:collapse;font-size:13.5px}
.ctable td{padding:9px 0;border-top:1px solid var(--line-2);font-family:var(--mono);text-align:right}
.ctable tr:first-child td{border-top:none}
.ctable td:first-child{text-align:left;font-family:var(--sans);color:var(--ink-2)}
.ctable tr.me td{color:var(--accent);font-weight:600}
.ctable tr.me td:first-child{color:var(--accent)}

/* ---------- proč má report cenu ---------- */
.why{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line)}
.whyc{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 28px}
.whyc .wn{font-family:var(--mono);font-size:12px;color:var(--accent);margin-bottom:14px}
.whyc h3{font-family:var(--serif);font-size:20px;font-weight:500;margin-bottom:8px;letter-spacing:-.01em}
.whyc p{font-size:14.5px;color:var(--ink-2);text-wrap:pretty}

/* ---------- ceník ---------- */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
.price{border:1px solid var(--line);border-radius:8px;padding:30px 28px;background:var(--card);display:flex;flex-direction:column;position:relative}
.price.feat{border:1.5px solid var(--ink);box-shadow:0 24px 50px -34px rgba(27,26,23,.3)}
.price .pill{position:absolute;top:-11px;left:28px;font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:5px 11px;border-radius:20px}
.price .pname{font-family:var(--mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}
.price .pamt{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}
.price .pamt b{font-family:var(--serif);font-size:38px;font-weight:600;line-height:1;letter-spacing:-.01em}
.price .pamt .per{font-family:var(--mono);font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}
.price .pd{font-size:14.5px;color:var(--ink-2);margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--line-2);text-wrap:pretty}
.price ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:24px;flex:1}
.price li{display:grid;grid-template-columns:auto 1fr;gap:11px;font-size:14px;color:var(--ink);line-height:1.4;text-wrap:pretty}
.price li .ck{width:15px;height:15px;flex:none;color:var(--ok);margin-top:2px}
.price .btn{justify-content:center}
.price.feat .btn-ghost{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.price.feat .btn-ghost:hover{background:var(--accent);border-color:var(--accent)}

/* ---------- faq ---------- */
.faq{border-top:1px solid var(--ink);max-width:880px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;font-family:var(--serif);font-size:20px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{position:relative;width:16px;height:16px;flex:none}
.faq summary .pm::before,.faq summary .pm::after{content:"";position:absolute;background:var(--accent);transition:.2s}
.faq summary .pm::before{top:7px;left:0;width:16px;height:2px}
.faq summary .pm::after{top:0;left:7px;width:2px;height:16px}
.faq details[open] summary .pm::after{transform:rotate(90deg);opacity:0}
.faq .fa{padding:0 0 24px;font-size:15.5px;color:var(--ink-2);line-height:1.6;max-width:62em;text-wrap:pretty}

/* ---------- methodology (jak postupujeme) ---------- */
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:8px}
.mstep{padding-top:26px;border-top:2px solid var(--ink)}
.mstep .mn{font-family:var(--mono);font-size:13px;color:var(--accent);margin-bottom:16px}
.mstep h3{font-family:var(--serif);font-size:21px;font-weight:500;margin-bottom:9px;letter-spacing:-.01em;line-height:1.2}
.mstep p{font-size:15px;color:var(--ink-2);text-wrap:pretty}

/* ---------- honest / restraint band ---------- */
.honest{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.honest-in{display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:start}
.honest .hq{font-family:var(--serif);font-size:64px;line-height:.7;color:var(--accent);user-select:none}
.honest .hcols{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.honest .hc h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.honest .hc p{font-family:var(--serif);font-size:20px;line-height:1.45;text-wrap:pretty}
.honest .hc p b{color:var(--accent);font-weight:600}

/* ---------- quick lead form (early) ---------- */
.quickform{background:var(--ink);color:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.qf{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.qf-l .mono{color:var(--accent);display:block;margin-bottom:16px}
.qf-l h2{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.1;letter-spacing:-.015em;margin-bottom:14px;text-wrap:balance}
.qf-l p{font-size:15.5px;color:rgba(246,242,234,.66);max-width:30em;text-wrap:pretty}
.qf-card{background:var(--card);border-radius:8px;padding:26px 28px;color:var(--ink);box-shadow:0 30px 60px -32px rgba(0,0,0,.55)}
.qf-card .qf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.qf-card .field{margin-bottom:14px}
.qf-card .btn-primary{width:100%;justify-content:center;margin-top:4px}
.qf-card .micro{font-size:12.5px;color:var(--ink-3);margin-top:14px;line-height:1.5;text-wrap:pretty}
.qf-card .done-msg{display:none;text-align:center;padding:26px 8px}
.qf-card .done-msg.show{display:block}
.qf-card .done-msg .dh{font-family:var(--serif);font-size:22px;margin-bottom:8px}
.qf-card .done-msg p{font-size:14.5px;color:var(--ink-2)}
.qf-card.sent .field,.qf-card.sent .btn-primary,.qf-card.sent .micro,.qf-card.sent h3{display:none}
.qf-card h3{font-family:var(--serif);font-size:20px;font-weight:500;margin-bottom:18px}

/* ---------- AI before/after example ---------- */
.ai-ba{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.ai-ba .bacard{border-radius:6px;padding:28px 30px}
.ai-ba .bacard.now{background:rgba(246,242,234,.04);border:1px solid rgba(246,242,234,.16)}
.ai-ba .bacard.after{background:var(--accent-soft);border:1px solid var(--accent)}
.ai-ba .bacard .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:9px}
.ai-ba .bacard .lbl .d{width:7px;height:7px;border-radius:50%}
.ai-ba .bacard.now .lbl{color:rgba(246,242,234,.55)}.ai-ba .bacard.now .lbl .d{background:var(--warn)}
.ai-ba .bacard.after .lbl{color:var(--accent)}.ai-ba .bacard.after .lbl .d{background:var(--accent)}
.ai-ba .bacard .q{font-family:var(--serif);font-size:18.5px;line-height:1.5;color:rgba(246,242,234,.95);text-wrap:pretty}

/* ---------- raw crawl findings ---------- */
.rawfind{margin-top:30px;background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.rawfind .rf-h{display:flex;align-items:center;gap:10px;padding:16px 24px;border-bottom:1px solid var(--line-2);background:var(--paper-2)}
.rawfind .rf-h .mono{color:var(--ink-2)}
.rawfind .rf-h .live{width:7px;height:7px;border-radius:50%;background:var(--ok);flex:none}
.rawfind ul{list-style:none}
.rawfind li{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:14px 24px;border-top:1px solid var(--line-2);font-size:15px}
.rawfind li:first-child{border-top:none}
.rawfind li .rf-ic{font-family:var(--mono);font-size:13px;color:var(--accent)}
.rawfind li .rf-loc{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);text-align:right}
.rawfind li code{font-family:var(--mono);font-size:13px;background:var(--paper-2);padding:1px 6px;border-radius:3px}

/* ---------- pricing / next-step note ---------- */
.nextnote{margin-top:28px;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--paper-2);border:1px solid var(--line);border-radius:6px;padding:26px 30px}
.nextnote .nn-tag{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:7px 11px;white-space:nowrap;align-self:start}
.nextnote p{font-size:16px;color:var(--ink-2);text-wrap:pretty}
.nextnote p b{color:var(--ink);font-weight:600}
.nextnote p + p{margin-top:8px;font-size:14.5px;color:var(--ink-3)}

/* ---------- expanded trust footer ---------- */
.foot-trust{border-top:1px solid var(--line);margin-top:44px;padding-top:28px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px}
.foot-trust .tcol{font-size:13.5px;color:var(--ink-3);line-height:1.7}
.foot-trust .tcol b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:7px;font-weight:500}
.foot-trust .tcol a{color:var(--ink-2)}
.foot-trust .tcol a:hover{color:var(--accent)}
.foot-trust .disclaimer{max-width:30em;text-wrap:pretty}
.foot-legal{margin-top:24px;font-size:12.5px;color:var(--ink-3);display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.foot-legal a:hover{color:var(--accent)}
.foot{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:32px}
.foot .small{font-size:14px;color:var(--ink-3);max-width:27em;margin-top:16px;text-wrap:pretty}
.foot-links{display:flex;gap:50px}
.foot-links .col h5{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.foot-links .col a{display:block;font-size:15px;color:var(--ink-2);padding:4px 0}
.foot-links .col a:hover{color:var(--accent)}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .navlinks{display:none}
  .hero-grid,.ai-split,.pv-grid,.final-grid{grid-template-columns:1fr;gap:44px}
  .qf,.ai-ba,.nextnote{grid-template-columns:1fr;gap:24px}
  .method-grid{grid-template-columns:1fr 1fr;gap:28px}
  .honest-in{grid-template-columns:1fr;gap:20px}
  .honest .hq{font-size:48px}
  .honest .hcols{grid-template-columns:1fr;gap:24px}
  .ai-col:first-child{border-right:none;border-bottom:1px solid rgba(246,242,234,.16)}
  .deliv{grid-template-columns:1fr 1fr}
  .dv:nth-child(4n){border-right:1px solid var(--line)}
  .dv:nth-child(2n){border-right:none}
  .audience{grid-template-columns:1fr 1fr 1fr}
  .report-stage{margin-top:8px;max-width:460px}
  .pvblocks{grid-template-columns:1fr}
  .why{grid-template-columns:1fr 1fr}
  .pricing{grid-template-columns:1fr}
  .price.feat{order:-1}
  .facts{grid-template-columns:1fr 1fr}
  .fact:nth-child(2n){border-right:none}
}
@media(max-width:760px){
  .wrap{padding:0 26px}
  section{padding:72px 0}
  h1.hero-h{font-size:42px}
  .hero{padding:56px 0 64px}
  .sec-head h2,.final h2{font-size:32px}
  .verdict{grid-template-columns:1fr;gap:18px;padding:30px 28px}
  .verdict .vlab{writing-mode:horizontal-tb;transform:none;border-right:none;border-bottom:1px solid rgba(246,242,234,.2);padding-right:0;padding-bottom:12px}
  .verdict p{font-size:20px}
  .pv-cards{grid-template-columns:1fr 1fr}
  .diag{grid-template-columns:1fr;gap:8px;padding:26px 0}
  .diag .dn{margin-bottom:4px}
}
@media(max-width:560px){
  .deliv,.audience,.pv-cards{grid-template-columns:1fr}
  .method-grid{grid-template-columns:1fr}
  .qf-card .qf-row{grid-template-columns:1fr}
  .why{grid-template-columns:1fr}
  .whyc{border-right:none}
  .facts{grid-template-columns:1fr}
  .fact{border-right:none}
  .t5 li,.mplan li{grid-template-columns:auto 1fr}
  .nextnote{padding:22px 24px}
  .dv{border-right:none!important}
  .aud{min-height:0}
  .verdict p{font-size:19px}
}

/* ============================================================
   MICRO-ANIMATIONS — subtle, editorial, GPU-friendly (opacity + transform only)
   Base styles are the visible end-state; hidden states only apply
   when JS is present (.js on <html>) so no-JS / crawlers see everything.
   ============================================================ */
:root{--ease:cubic-bezier(.2,.8,.2,1)}

/* ---- shared scroll-reveal ---- */
.js .reveal{opacity:0;transform:translateY(10px);transition:opacity .55s var(--ease),transform .55s var(--ease);will-change:opacity,transform}
.js .reveal.in{opacity:1;transform:none}

/* ---- hero entrance ---- */
.js .hero .eyebrow,
.js .hero .hero-h,
.js .hero .hero-sub,
.js .hero .hero-cta,
.js .report-stage,
.js .hero .facts,
.js .doc-counts .dcount,
.js .doc-find2{
  opacity:0;transform:translateY(8px);
  transition:opacity .5s var(--ease),transform .5s var(--ease);
}
.js .report-stage{transform:translateY(12px)}
.js .hero-in .hero .eyebrow{transition-delay:.04s}
.js .hero-in .hero .hero-h{transition-delay:.12s}
.js .hero-in .hero .hero-sub{transition-delay:.22s}
.js .hero-in .hero .hero-cta{transition-delay:.30s}
.js .hero-in .report-stage{transition-delay:.30s}
.js .hero-in .hero .facts{transition-delay:.44s}
.js .hero-in .doc-counts .dcount{transition-delay:.60s}
.js .hero-in .doc-counts .dcount:nth-child(2){transition-delay:.66s}
.js .hero-in .doc-counts .dcount:nth-child(3){transition-delay:.72s}
.js .hero-in .doc-find2{transition-delay:.82s}
.js .hero-in .hero .eyebrow,
.js .hero-in .hero .hero-h,
.js .hero-in .hero .hero-sub,
.js .hero-in .hero .hero-cta,
.js .hero-in .report-stage,
.js .hero-in .hero .facts,
.js .hero-in .doc-counts .dcount,
.js .hero-in .doc-find2{opacity:1;transform:none}

/* hero score ring draws in once on load (stroke only — no layout) */
.js .hero .doc-score .ring circle:nth-child(2){stroke-dashoffset:295.3;transition:stroke-dashoffset .9s var(--ease) .5s}
.js .hero-in .hero .doc-score .ring circle:nth-child(2){stroke-dashoffset:106.3}

/* ---- report card hover (desktop only) ---- */
@media(hover:hover){
  .report-stage:hover .doc-front{box-shadow:0 1px 0 rgba(0,0,0,.02),0 46px 82px -36px rgba(27,26,23,.44)}
  /* primary CTA: tiny lift + shadow (arrow nudge already defined) */
  .btn-primary{box-shadow:0 1px 2px rgba(27,26,23,.10)}
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 9px 22px -10px rgba(27,26,23,.5)}
}

/* ---- FAQ open/close (JS-driven height) ---- */
.faq .fa{overflow:hidden}
.js .faq .fa{transition:height .28s var(--ease),opacity .26s ease}
.faq details.closing summary .pm::after{transform:none;opacity:1}

/* ============================================================
   ACCESSIBILITY — honour reduced-motion. Must stay last to win.
   ============================================================ */
@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important;scroll-behavior:auto !important}
  .js .reveal{opacity:1;transform:none}
  .js .hero .eyebrow,.js .hero .hero-h,.js .hero .hero-sub,.js .hero .hero-cta,
  .js .report-stage,.js .hero .facts,.js .doc-counts .dcount,.js .doc-find2{opacity:1;transform:none}
  .js .hero .doc-score .ring circle:nth-child(2){stroke-dashoffset:106.3}
}
