/* Kavenio public reference design — scoped public interfaces only. */
body.kvx-tool,
body.kvx-legal,
body.kvx-company,
body.kvx-template {
  --kvx-bg:#070a13;
  --kvx-bg-2:#0b1020;
  --kvx-surface:rgba(15,23,42,.72);
  --kvx-surface-strong:rgba(15,23,42,.92);
  --kvx-line:rgba(255,255,255,.10);
  --kvx-line-strong:rgba(234,179,8,.28);
  --kvx-text:#f8fafc;
  --kvx-muted:#9aa6b8;
  --kvx-gold:#eab308;
  --kvx-gold-2:#facc15;
  --kvx-blue:#2563eb;
  --kvx-green:#22c55e;
  --kvx-danger:#ef4444;
  --kvx-radius:26px;
  --kvx-shadow:0 26px 80px rgba(0,0,0,.38);
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 12% 0%,rgba(234,179,8,.11),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(37,99,235,.14),transparent 32%),
    linear-gradient(180deg,var(--kvx-bg) 0%,var(--kvx-bg-2) 55%,var(--kvx-bg) 100%);
  color:var(--kvx-text);
  font-family:"Cairo","Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.kvx-tool::before,
body.kvx-legal::before,
body.kvx-company::before,
body.kvx-template::before {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.32;
  background-image:
    linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,black 0%,transparent 80%);
}
body.kvx-tool *,
body.kvx-legal *,
body.kvx-company *,
body.kvx-template * { box-sizing:border-box; }
body.kvx-tool a,
body.kvx-legal a,
body.kvx-company a,
body.kvx-template a { color:inherit; }

/* Shared floating navigation language */
.kvx-tool .kv2-site-header,
.kvx-legal .kv2-site-header { background:transparent!important; border:0!important; padding:18px 18px 0!important; position:sticky; top:0; z-index:50; }
.kvx-tool .kv2-site-header__bar,
.kvx-legal .kv2-site-header__bar,
.kvx-company .public-nav,
.kvx-legal .public-nav,
.kvx-tool .kv-nav,
.kvx-template .nav {
  width:min(1180px,calc(100% - 28px));
  margin:0 auto!important;
  min-height:72px;
  padding:10px 14px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:999px!important;
  background:rgba(8,12,24,.74)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(22px) saturate(145%);
  -webkit-backdrop-filter:blur(22px) saturate(145%);
}
.kvx-company .public-nav,
.kvx-legal .public-nav,
.kvx-tool .kv-nav,
.kvx-template .nav { margin-top:18px!important; position:sticky; top:18px; z-index:50; }
.kvx-tool .kv2-site-brand,
.kvx-legal .kv2-site-brand,
.kvx-company .public-brand,
.kvx-legal .public-brand,
.kvx-tool .kv-brand,
.kvx-template .brand { color:var(--kvx-text)!important; text-decoration:none!important; font-weight:900!important; }
.kvx-tool .kv2-site-brand__mark,
.kvx-legal .kv2-site-brand__mark { width:46px!important; height:46px!important; border-radius:15px!important; background:#fff!important; padding:5px!important; }
.kvx-tool .kv2-site-brand__copy small,
.kvx-legal .kv2-site-brand__copy small { color:var(--kvx-muted)!important; }
.kvx-tool .kv2-site-nav__link,
.kvx-legal .kv2-site-nav__link,
.kvx-tool .kv-navlinks a,
.kvx-template .links a,
.kvx-company .public-nav a:not(.primary):not(.public-brand),
.kvx-legal .public-nav a:not(.primary):not(.public-brand) {
  color:#cbd5e1!important;
  text-decoration:none!important;
  font-weight:700!important;
  transition:.2s ease;
}
.kvx-tool .kv2-site-nav__link:hover,
.kvx-legal .kv2-site-nav__link:hover,
.kvx-tool .kv-navlinks a:hover,
.kvx-template .links a:hover,
.kvx-company .public-nav a:hover,
.kvx-legal .public-nav a:hover { color:#fff!important; }

/* Shared premium actions */
.kvx-tool .kv2-btn--primary,
.kvx-legal .kv2-btn--primary,
.kvx-tool .kv-btn-primary,
.kvx-company .primary,
.kvx-legal .primary,
.kvx-template .btn-primary,
.kvx-tool .mode-btn.active {
  border:1px solid rgba(250,204,21,.38)!important;
  background:linear-gradient(135deg,var(--kvx-gold-2),var(--kvx-gold))!important;
  color:#111827!important;
  box-shadow:0 10px 28px rgba(234,179,8,.18)!important;
  font-weight:900!important;
}
.kvx-tool .kv2-btn--ghost,
.kvx-legal .kv2-btn--ghost,
.kvx-tool .kv-btn-secondary,
.kvx-template .btn-secondary {
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.055)!important;
  color:#e5e7eb!important;
  box-shadow:none!important;
}
.kvx-tool .kv2-btn,
.kvx-legal .kv2-btn,
.kvx-tool .kv-btn,
.kvx-company .primary,
.kvx-legal .primary,
.kvx-template .btn,
.kvx-tool .mode-btn {
  border-radius:999px!important;
  min-height:44px;
  padding:10px 18px!important;
  text-decoration:none!important;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.kvx-tool .kv2-btn:hover,
.kvx-legal .kv2-btn:hover,
.kvx-tool .kv-btn:hover,
.kvx-company .primary:hover,
.kvx-legal .primary:hover,
.kvx-template .btn:hover { transform:translateY(-1px); }

/* TOOL PAGES — ATS + Job Matcher */
.kvx-tool .kv2-tool-page,
.kvx-tool main { width:min(1180px,calc(100% - 32px)); margin:0 auto!important; padding:74px 0 90px!important; }
.kvx-tool .kv2-tool-hero,
.kvx-tool .hero { max-width:780px; margin:0 auto 34px!important; text-align:center!important; }
.kvx-tool .kv2-tool-hero h1,
.kvx-tool .hero h1 { color:#fff!important; font-size:clamp(2.25rem,5vw,4.6rem)!important; line-height:1.06!important; letter-spacing:-.035em!important; margin:12px 0 18px!important; }
.kvx-tool .kv2-tool-hero p,
.kvx-tool .hero p { color:var(--kvx-muted)!important; font-size:clamp(1rem,1.8vw,1.18rem)!important; line-height:1.9!important; }
.kvx-tool .kv2-eyebrow,
.kvx-tool .eyebrow { display:inline-flex!important; width:max-content!important; max-width:100%!important; align-items:center; gap:8px; border:1px solid var(--kvx-line-strong)!important; background:rgba(234,179,8,.08)!important; color:#fde68a!important; border-radius:999px!important; padding:8px 13px!important; font-weight:800!important; }
.kvx-tool .checker-modes { width:max-content; max-width:100%; margin:0 auto 22px!important; padding:5px!important; border:1px solid var(--kvx-line)!important; border-radius:999px!important; background:rgba(255,255,255,.045)!important; }
.kvx-tool .mode-btn { color:#aeb9ca!important; background:transparent!important; border:0!important; }
.kvx-tool .checker-grid,
.kvx-tool .kv2-tool-workspace { display:grid!important; grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr)!important; align-items:start!important; gap:22px!important; }
.kvx-tool .panel,
.kvx-tool .kv2-tool-input,
.kvx-tool .kv2-score-stage {
  border:1px solid var(--kvx-line)!important;
  border-radius:var(--kvx-radius)!important;
  background:linear-gradient(180deg,rgba(18,27,48,.86),rgba(10,15,28,.86))!important;
  box-shadow:var(--kvx-shadow)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  color:var(--kvx-text)!important;
}
.kvx-tool .dropzone { min-height:360px!important; display:flex!important; flex-direction:column!important; justify-content:center!important; align-items:center!important; gap:12px!important; border:1px dashed rgba(250,204,21,.34)!important; border-radius:22px!important; background:linear-gradient(180deg,rgba(234,179,8,.035),rgba(255,255,255,.025))!important; }
.kvx-tool .dropzone h2,
.kvx-tool .job-match-input h3,
.kvx-tool .recommendations h3,
.kvx-tool .keyword-columns h3 { color:#fff!important; }
.kvx-tool .dropzone p,
.kvx-tool .job-match-input p,
.kvx-tool .status,
.kvx-tool .score-empty,
.kvx-tool .job-match-result p { color:var(--kvx-muted)!important; }
.kvx-tool textarea { width:100%!important; border:1px solid rgba(255,255,255,.12)!important; border-radius:18px!important; background:rgba(2,6,23,.64)!important; color:#fff!important; padding:16px!important; outline:none!important; }
.kvx-tool textarea:focus { border-color:rgba(250,204,21,.55)!important; box-shadow:0 0 0 4px rgba(234,179,8,.08)!important; }
.kvx-tool .privacy { border:1px solid rgba(34,197,94,.18)!important; background:rgba(34,197,94,.07)!important; color:#bbf7d0!important; border-radius:16px!important; }
.kvx-tool .score-ring { border-color:rgba(250,204,21,.32)!important; box-shadow:inset 0 0 0 8px rgba(234,179,8,.055)!important; }
.kvx-tool .score-value { color:var(--kvx-gold-2)!important; }
.kvx-tool .category-list > * { border-color:rgba(255,255,255,.08)!important; }
.kvx-tool .recommendations { border:1px solid rgba(255,255,255,.08)!important; background:rgba(255,255,255,.035)!important; border-radius:18px!important; }
.kvx-tool .chips > * { border:1px solid rgba(34,197,94,.18)!important; background:rgba(34,197,94,.08)!important; color:#bbf7d0!important; }
.kvx-tool .chips.missing > * { border-color:rgba(250,204,21,.20)!important; background:rgba(234,179,8,.08)!important; color:#fde68a!important; }
.kvx-tool .trust-grid,
.kvx-tool .kv2-tool-trust { display:grid!important; grid-template-columns:repeat(3,1fr)!important; gap:16px!important; margin-top:22px!important; }
.kvx-tool .trust-card,
.kvx-tool .kv2-tool-trust__item { border:1px solid var(--kvx-line)!important; border-radius:20px!important; background:rgba(255,255,255,.035)!important; color:var(--kvx-muted)!important; padding:20px!important; }
.kvx-tool .trust-card strong,
.kvx-tool .kv2-tool-trust__item strong { color:#fff!important; }
.kvx-tool .kv2-tool-disclaimer,
.kvx-tool .foot-note { color:#7f8ca0!important; text-align:center!important; }

/* LEGAL — dark shell + editorial reading surface */
.kvx-legal .kv2-legal-main { width:min(1180px,calc(100% - 32px))!important; margin:0 auto!important; padding:64px 0 100px!important; }
.kvx-legal .kv2-legal-hero { margin:0 0 28px!important; padding:34px 38px!important; border:1px solid var(--kvx-line)!important; border-radius:30px!important; background:linear-gradient(135deg,rgba(17,24,39,.82),rgba(15,23,42,.58))!important; box-shadow:var(--kvx-shadow)!important; }
.kvx-legal .kv2-legal-hero h1 { color:#fff!important; font-size:clamp(2.15rem,4vw,3.9rem)!important; line-height:1.08!important; letter-spacing:-.03em!important; }
.kvx-legal .kv2-legal-hero p,
.kvx-legal .kv2-legal-hero__meta { color:var(--kvx-muted)!important; }
.kvx-legal .kv2-legal-layout { display:grid!important; grid-template-columns:250px minmax(0,1fr)!important; gap:24px!important; align-items:start!important; }
.kvx-legal .kv2-legal-toc { position:sticky!important; top:112px!important; border:1px solid var(--kvx-line)!important; border-radius:22px!important; background:rgba(15,23,42,.70)!important; box-shadow:0 18px 44px rgba(0,0,0,.24)!important; backdrop-filter:blur(16px); color:var(--kvx-muted)!important; }
.kvx-legal .kv2-legal-toc strong { color:#fff!important; }
.kvx-legal .kv2-legal-toc a { color:#aab7c9!important; text-decoration:none!important; }
.kvx-legal .kv2-legal-toc a:hover { color:#fde68a!important; }
.kvx-legal .kv2-legal-document { border:1px solid rgba(255,255,255,.72)!important; border-radius:28px!important; background:#fffef9!important; box-shadow:0 30px 80px rgba(0,0,0,.34)!important; color:#182235!important; padding:42px!important; }
.kvx-legal .kv-legal-section { border-bottom:1px solid #e2e8f0!important; padding:0 0 28px!important; margin:0 0 28px!important; }
.kvx-legal .kv-legal-section:last-child { border-bottom:0!important; }
.kvx-legal .kv-legal-section h2,
.kvx-legal .kv-legal-section h3 { color:#0f172a!important; }
.kvx-legal .kv-legal-section p,
.kvx-legal .kv-legal-section li { color:#475569!important; line-height:1.95!important; }
.kvx-legal .kv-legal-section a { color:#1d4ed8!important; }

/* LEGAL fallback pages using the older public-page structure */
.kvx-legal .public-shell { min-height:100vh!important; background:transparent!important; }
.kvx-legal .public-main { max-width:1000px!important; margin:0 auto!important; padding:70px 24px 96px!important; }
.kvx-legal .public-hero { margin:0 0 26px!important; padding:30px 34px!important; border:1px solid var(--kvx-line)!important; border-radius:28px!important; background:linear-gradient(135deg,rgba(17,24,39,.82),rgba(15,23,42,.58))!important; box-shadow:var(--kvx-shadow)!important; }
.kvx-legal .public-hero h1 { color:#fff!important; font-size:clamp(2.15rem,4.5vw,4rem)!important; line-height:1.08!important; letter-spacing:-.03em!important; }
.kvx-legal .public-hero p,
.kvx-legal .last-updated { color:var(--kvx-muted)!important; }
.kvx-legal .public-card { border:1px solid rgba(255,255,255,.72)!important; border-radius:28px!important; background:linear-gradient(180deg,#fffef9,#f8fafc)!important; box-shadow:0 30px 80px rgba(0,0,0,.34)!important; color:#182235!important; padding:38px!important; }
.kvx-legal .public-card h2,
.kvx-legal .public-card h3 { color:#0f172a!important; }
.kvx-legal .public-card p,
.kvx-legal .public-card li { color:#475569!important; line-height:1.95!important; }
.kvx-legal .public-card a { color:#1d4ed8!important; }
.kvx-legal .public-note { border-inline-start-color:var(--kvx-gold)!important; background:#fff8db!important; color:#6b4e00!important; }

/* COMPANY — About + Contact */
.kvx-company .public-shell { width:min(1180px,calc(100% - 32px))!important; margin:0 auto!important; background:transparent!important; }
.kvx-company .public-main { max-width:1000px!important; margin:0 auto!important; padding:78px 0 94px!important; }
.kvx-company .public-hero { padding:0!important; margin:0 auto 30px!important; text-align:center!important; background:transparent!important; border:0!important; }
.kvx-company .public-hero h1 { color:#fff!important; font-size:clamp(2.35rem,5vw,4.7rem)!important; line-height:1.06!important; letter-spacing:-.035em!important; }
.kvx-company .public-hero p { color:var(--kvx-muted)!important; font-size:1.08rem!important; line-height:1.9!important; }
.kvx-company .public-card { border:1px solid var(--kvx-line)!important; border-radius:28px!important; background:linear-gradient(180deg,rgba(18,27,48,.82),rgba(10,15,28,.82))!important; box-shadow:var(--kvx-shadow)!important; color:#dce5f2!important; backdrop-filter:blur(18px); padding:34px!important; }
.kvx-company .public-card h2,
.kvx-company .public-card h3 { color:#fff!important; }
.kvx-company .public-card p,
.kvx-company .public-card li { color:#aeb9ca!important; line-height:1.9!important; }
.kvx-company .contact-grid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:16px!important; }
.kvx-company .contact-item { border:1px solid rgba(255,255,255,.09)!important; border-radius:20px!important; background:rgba(255,255,255,.035)!important; padding:22px!important; }
.kvx-company .contact-item strong { color:#fff!important; }
.kvx-company .contact-item a { color:#fde68a!important; }

/* TEMPLATE LANDINGS */
.kvx-template .shell { width:min(1180px,calc(100% - 32px))!important; margin:0 auto!important; }
.kvx-template main { padding:66px 0 90px!important; }
.kvx-template .hero { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)!important; gap:30px!important; align-items:center!important; border:0!important; background:transparent!important; padding:0!important; }
.kvx-template .hero h1 { color:#fff!important; font-size:clamp(2.35rem,4.8vw,4.5rem)!important; line-height:1.05!important; letter-spacing:-.035em!important; }
.kvx-template .hero p { color:var(--kvx-muted)!important; font-size:1.08rem!important; line-height:1.85!important; }
.kvx-template .badges span,
.kvx-template .badge { border:1px solid rgba(250,204,21,.22)!important; border-radius:999px!important; background:rgba(234,179,8,.075)!important; color:#fde68a!important; }
.kvx-template .preview-wrap { border:1px solid rgba(255,255,255,.11)!important; border-radius:28px!important; background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025))!important; box-shadow:var(--kvx-shadow)!important; padding:20px!important; }
.kvx-template .resume { box-shadow:0 20px 60px rgba(0,0,0,.28)!important; border-radius:12px!important; }
.kvx-template .content-grid { display:grid!important; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important; gap:20px!important; margin-top:28px!important; }
.kvx-template .card { border:1px solid var(--kvx-line)!important; border-radius:24px!important; background:rgba(15,23,42,.72)!important; color:#cbd5e1!important; box-shadow:0 18px 50px rgba(0,0,0,.22)!important; }
.kvx-template .card h2,
.kvx-template .card h3 { color:#fff!important; }
.kvx-template .card p,
.kvx-template .card li { color:#aeb9ca!important; }
.kvx-template .fact { border-color:rgba(255,255,255,.09)!important; }
.kvx-template .fact strong { color:#fff!important; }
.kvx-template .cta { border:1px solid rgba(250,204,21,.22)!important; border-radius:28px!important; background:linear-gradient(135deg,rgba(234,179,8,.12),rgba(37,99,235,.08))!important; color:#fff!important; box-shadow:0 24px 70px rgba(0,0,0,.25)!important; }
.kvx-template .cta p { color:#cbd5e1!important; }

/* Shared premium footer variants */
.kvx-tool .kv2-site-footer,
.kvx-legal .kv2-site-footer,
.kvx-company .public-footer,
.kvx-legal .public-footer,
.kvx-tool .footer,
.kvx-template .footer { border-top:1px solid rgba(255,255,255,.08)!important; background:rgba(3,7,18,.68)!important; color:#8f9caf!important; }
.kvx-tool .kv2-site-footer__inner,
.kvx-legal .kv2-site-footer__inner { width:min(1180px,calc(100% - 32px))!important; margin:auto!important; }
.kvx-tool .kv2-site-footer__brand strong,
.kvx-legal .kv2-site-footer__brand strong,
.kvx-tool .kv2-site-footer__col strong,
.kvx-legal .kv2-site-footer__col strong { color:#fff!important; }
.kvx-tool .kv2-site-footer__link,
.kvx-legal .kv2-site-footer__link { color:#9aa6b8!important; }
.kvx-tool .kv2-site-footer__link:hover,
.kvx-legal .kv2-site-footer__link:hover { color:#fde68a!important; }
.kvx-tool .kv-support-wa,
.kvx-company .kv-support-wa,
.kvx-legal .kv-support-wa,
.kvx-legal .kv2-whatsapp {
  position:fixed!important;
  inset-inline-end:20px!important;
  inset-inline-start:auto!important;
  bottom:20px!important;
  width:auto!important;
  max-width:190px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:11px 16px!important;
  border-radius:999px!important;
  background:#16a34a!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
  text-decoration:none!important;
  z-index:80!important;
}

/* Responsive */
body.kvx-tool,
body.kvx-legal,
body.kvx-company,
body.kvx-template { overflow-x:hidden; }
@media (max-width:980px) {
  body.kvx-tool .checker-grid,
  body.kvx-tool .kv2-tool-workspace,
  body.kvx-legal .kv2-legal-layout,
  body.kvx-template .hero,
  body.kvx-template .content-grid { grid-template-columns:1fr!important; }
  body.kvx-legal .kv2-legal-toc { position:relative!important; top:auto!important; }
  body.kvx-tool .trust-grid,
  body.kvx-tool .kv2-tool-trust { grid-template-columns:1fr!important; }
}
@media (max-width:760px) {
  body.kvx-tool .kv2-site-header,
  body.kvx-legal .kv2-site-header { padding:10px 8px 0!important; }
  body.kvx-tool .kv2-site-header__bar,
  body.kvx-legal .kv2-site-header__bar,
  body.kvx-company .public-nav,
  body.kvx-legal .public-nav,
  body.kvx-tool .kv-nav,
  body.kvx-template .nav { width:calc(100% - 12px)!important; min-height:62px!important; padding:8px 10px!important; border-radius:22px!important; }
  body.kvx-tool .kv2-site-nav,
  body.kvx-legal .kv2-site-nav,
  body.kvx-tool .kv-navlinks,
  body.kvx-template .links { display:none!important; }
  body.kvx-company .public-actions a:not(.primary),
  body.kvx-legal .public-actions a:not(.primary) { display:none!important; }
  body.kvx-tool .kv2-site-actions,
  body.kvx-legal .kv2-site-actions { display:none!important; }
  body.kvx-tool .kv2-mobile-nav,
  body.kvx-legal .kv2-mobile-nav { display:block!important; }
  body.kvx-tool .kv2-tool-page,
  body.kvx-tool main,
  body.kvx-legal .kv2-legal-main,
  body.kvx-company .public-main,
  body.kvx-legal .public-main,
  body.kvx-template main { padding-top:46px!important; }
  body.kvx-tool .kv2-tool-hero h1,
  body.kvx-tool .hero h1,
  body.kvx-company .public-hero h1,
  body.kvx-template .hero h1 { font-size:clamp(2rem,11vw,3.1rem)!important; }
  body.kvx-company .contact-grid { grid-template-columns:1fr!important; }
  body.kvx-legal .kv2-legal-document { padding:26px 20px!important; border-radius:22px!important; }
  body.kvx-legal .kv2-legal-hero { padding:26px 22px!important; }
  body.kvx-template .preview-wrap { padding:12px!important; }
  body.kvx-tool .panel,
  body.kvx-tool .kv2-tool-input,
  body.kvx-tool .kv2-score-stage { border-radius:22px!important; }
  body.kvx-tool .kv-support-wa,
  body.kvx-company .kv-support-wa,
  body.kvx-legal .kv-support-wa,
  body.kvx-legal .kv2-whatsapp { padding:10px 12px!important; max-width:54px!important; overflow:hidden!important; white-space:nowrap!important; }
}

/* v4.1.11.1 — structural compatibility for kv2 public shells.
   These rules restore layout primitives that the visual skin depends on,
   without loading the retired global-premium stylesheet. */
.kvx-legal .kv2-site-header__bar,
.kvx-tool .kv2-site-header__bar {
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
}
.kvx-legal .kv2-site-brand,
.kvx-tool .kv2-site-brand {
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex:0 0 auto!important;
  min-width:max-content!important;
}
.kvx-legal .kv2-site-brand__copy,
.kvx-tool .kv2-site-brand__copy {
  display:grid!important;
  line-height:1.18!important;
}
.kvx-legal .kv2-site-nav,
.kvx-tool .kv2-site-nav {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.kvx-legal .kv2-site-actions,
.kvx-tool .kv2-site-actions {
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
.kvx-legal .kv2-mobile-nav,
.kvx-tool .kv2-mobile-nav {
  display:none!important;
  margin-inline-start:auto!important;
  position:relative!important;
}
.kvx-legal .kv2-mobile-nav summary,
.kvx-tool .kv2-mobile-nav summary {
  list-style:none!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.05)!important;
  color:#fff!important;
  cursor:pointer!important;
  font-size:19px!important;
}
.kvx-legal .kv2-mobile-nav summary::-webkit-details-marker,
.kvx-tool .kv2-mobile-nav summary::-webkit-details-marker { display:none!important; }
.kvx-legal .kv2-mobile-nav__panel,
.kvx-tool .kv2-mobile-nav__panel {
  position:absolute!important;
  top:54px!important;
  inset-inline-end:0!important;
  width:min(300px,calc(100vw - 34px))!important;
  display:grid!important;
  gap:6px!important;
  padding:12px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:18px!important;
  background:#0d1b2e!important;
  box-shadow:var(--kvx-shadow)!important;
}
.kvx-legal .kv2-mobile-nav__panel > a,
.kvx-tool .kv2-mobile-nav__panel > a {
  display:block!important;
  color:#dce7f5!important;
  text-decoration:none!important;
  padding:11px 12px!important;
  border-radius:11px!important;
  font-size:13px!important;
  font-weight:800!important;
}

.kvx-legal .kv2-legal-hero {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:30px!important;
  align-items:end!important;
}
.kvx-legal .kv2-legal-hero__copy { max-width:700px!important; }
.kvx-legal .kv2-legal-layout {
  grid-template-columns:270px minmax(0,1fr)!important;
}
.kvx-legal .kv2-legal-toc {
  display:grid!important;
  gap:5px!important;
  padding:16px!important;
}
.kvx-legal .kv2-legal-toc a {
  display:block!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1.65!important;
}

.kvx-legal .kv2-site-footer__inner,
.kvx-tool .kv2-site-footer__inner { padding:48px 0 28px!important; }
.kvx-legal .kv2-site-footer__grid,
.kvx-tool .kv2-site-footer__grid {
  display:grid!important;
  grid-template-columns:1.45fr repeat(4,minmax(0,1fr))!important;
  gap:34px!important;
}
.kvx-legal .kv2-site-footer__brand p,
.kvx-tool .kv2-site-footer__brand p {
  max-width:280px!important;
  color:#75859b!important;
  font-size:11px!important;
  line-height:1.8!important;
}
.kvx-legal .kv2-site-footer__col,
.kvx-tool .kv2-site-footer__col {
  display:grid!important;
  align-content:start!important;
  gap:9px!important;
}
.kvx-legal .kv2-site-footer__bottom,
.kvx-tool .kv2-site-footer__bottom {
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-top:34px!important;
  padding-top:20px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  color:#66778e!important;
  font-size:10px!important;
}

@media (max-width:1024px) {
  .kvx-legal .kv2-site-nav,
  .kvx-tool .kv2-site-nav { display:none!important; }
  .kvx-legal .kv2-mobile-nav,
  .kvx-tool .kv2-mobile-nav { display:block!important; }
  .kvx-legal .kv2-site-actions .kv2-btn--ghost,
  .kvx-tool .kv2-site-actions .kv2-btn--ghost { display:none!important; }
  .kvx-legal .kv2-site-footer__grid,
  .kvx-tool .kv2-site-footer__grid { grid-template-columns:1.4fr repeat(2,minmax(0,1fr))!important; }
  .kvx-legal .kv2-legal-layout { grid-template-columns:220px minmax(0,1fr)!important; }
}
@media (max-width:760px) {
  .kvx-legal .kv2-site-header__bar,
  .kvx-tool .kv2-site-header__bar { gap:10px!important; }
  .kvx-legal .kv2-site-actions,
  .kvx-tool .kv2-site-actions { display:none!important; }
  .kvx-legal .kv2-legal-hero { grid-template-columns:1fr!important; gap:14px!important; }
  .kvx-legal .kv2-legal-layout { grid-template-columns:1fr!important; }
  .kvx-legal .kv2-legal-toc {
    display:flex!important;
    overflow:auto!important;
    white-space:nowrap!important;
    padding:10px!important;
  }
  .kvx-legal .kv2-legal-toc strong { display:none!important; }
  .kvx-legal .kv2-site-footer__grid,
  .kvx-tool .kv2-site-footer__grid { grid-template-columns:1fr 1fr!important; gap:24px!important; }
  .kvx-legal .kv2-site-footer__brand,
  .kvx-tool .kv2-site-footer__brand { grid-column:1/-1!important; }
  .kvx-legal .kv2-site-footer__bottom,
  .kvx-tool .kv2-site-footer__bottom { display:grid!important; }
}
@media (max-width:480px) {
  .kvx-legal .kv2-site-footer__grid,
  .kvx-tool .kv2-site-footer__grid { grid-template-columns:1fr!important; }
  .kvx-legal .kv2-site-footer__brand,
  .kvx-tool .kv2-site-footer__brand { grid-column:auto!important; }
}
