/* Shared Konvo styles — light, professional theme (landing index has its own inline CSS). */
:root{
  --bg:#f8fafc; --bg-2:#ffffff; --panel:#ffffff; --panel-2:#ffffff;
  --ink:#0f172a; --text:#334155; --muted:#64748b; --muted-2:#94a3b8;
  --coral:#ea580c; --amber:#c2410c; --coral-light:#ea580c;
  --line:#e2e8f0; --line-2:#eef2f7;
  --brand-tint:#fff5ed; --brand-tint-2:#ffe9d8;
  --radius:14px; --radius-lg:22px; --radius-sm:10px;
  --shadow-sm:0 1px 2px rgba(15,23,42,.04),0 1px 3px rgba(15,23,42,.06);
  --font-sans:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,monospace;
  --maxw:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;font-size:16px;
  -webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
svg{display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.mono{font-family:var(--font-mono)}
:focus-visible{outline:2px solid var(--coral);outline-offset:2px;border-radius:6px}

/* nav */
header{position:sticky;top:0;z-index:50;background:rgba(248,250,252,.82);
  backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line-2)}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px;gap:24px}
.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.brand .dot{width:22px;height:22px;border-radius:7px;background:var(--coral);
  box-shadow:0 4px 10px -3px rgba(234,88,12,.5)}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{color:var(--muted);font-size:14.5px;font-weight:500;transition:color .15s}
.nav-links a:hover{color:var(--ink)}
@media(max-width:760px){.nav-links{display:none}}

.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-weight:600;font-size:15px;
  line-height:1;padding:12px 18px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;
  transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.btn-primary{background:var(--coral);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover{background:var(--amber);box-shadow:0 8px 20px -8px rgba(234,88,12,.5)}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--muted-2)}

/* legal / content document */
.doc{max-width:780px;margin:0 auto;padding:60px 24px 30px}
.doc .eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--coral)}
.doc h1{font-size:clamp(30px,5vw,44px);letter-spacing:-.03em;font-weight:800;color:var(--ink);margin:12px 0 8px}
.doc .meta{font-family:var(--font-mono);font-size:12.5px;color:var(--muted-2);margin-bottom:26px}
.note{display:flex;gap:11px;align-items:flex-start;background:var(--brand-tint);border:1px solid var(--brand-tint-2);
  border-radius:var(--radius);padding:14px 16px;font-size:13.5px;color:#9a3412;margin-bottom:32px}
.note b{color:var(--amber)}
.note .ico{flex:0 0 auto;width:18px;height:18px;color:var(--coral);margin-top:1px}
.doc h2{font-size:21px;font-weight:700;letter-spacing:-.01em;color:var(--ink);margin:32px 0 12px}
.doc h3{font-size:16.5px;font-weight:600;color:var(--ink);margin:22px 0 8px}
.doc p{color:var(--text);margin-bottom:14px}
.doc ul{margin:0 0 16px 0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.doc li{color:var(--text)}
.doc b{color:var(--ink)}
.doc a.link{color:var(--coral);font-weight:600;border-bottom:1px solid var(--brand-tint-2)}
.doc a.link:hover{color:var(--amber)}
.doc table{width:100%;border-collapse:collapse;margin:8px 0 20px;font-size:14px}
.doc th,.doc td{text-align:left;padding:10px 12px;border:1px solid var(--line);color:var(--text);vertical-align:top}
.doc th{background:#f1f5f9;font-weight:600;color:var(--ink)}

/* language switcher */
.lang-select{font-family:var(--font-sans);font-size:13.5px;color:var(--muted);background:#fff;border:1px solid var(--line);
  border-radius:8px;padding:7px 28px 7px 10px;cursor:pointer;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 8px center}
.lang-select:hover{border-color:var(--muted-2)}

/* forms (signup, contact) */
.btn-block{justify-content:center;width:100%}
.field{margin-bottom:16px}
.field label{display:block;font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:7px}
.field input,.field textarea{width:100%;font-family:var(--font-sans);font-size:15px;color:var(--ink);background:#fff;
  border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px var(--brand-tint)}
.field textarea{resize:vertical;min-height:130px}
.form-msg{font-size:14px;border-radius:var(--radius-sm);padding:11px 14px;margin-bottom:16px;display:none}
.form-msg.show{display:block}
.form-msg.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}
.form-msg.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.auth{max-width:440px;margin:0 auto;padding:56px 24px}
.auth .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:34px;box-shadow:var(--shadow-sm)}
.auth h1{font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-bottom:6px}
.auth .sub{font-size:14.5px;color:var(--muted);margin-bottom:24px}
.auth .alt{font-size:14px;color:var(--muted);text-align:center;margin-top:18px}
.auth .alt a{color:var(--coral);font-weight:600}
.fine{font-size:12.5px;color:var(--muted-2);text-align:center;margin-top:16px}

/* footer */
footer{border-top:1px solid var(--line);margin-top:60px;padding:48px 0 40px;background:#fff}
.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
.foot .brand{font-size:17px}
.foot-links{display:flex;gap:24px;flex-wrap:wrap}
.foot-links a{color:var(--muted);font-size:14px}
.foot-links a:hover{color:var(--ink)}
.copy{font-family:var(--font-mono);font-size:12px;color:var(--muted-2);margin-top:24px}
