/* LexBridge Translations — premium, minimal, responsive */
:root{
  --bg:#ffffff;
  --surface:#f8fafc;
  --text:#0f172a;
  --muted:#475569;
  --line:#e2e8f0;
  --accent:#1d4ed8;
  --shadow:0 12px 36px rgba(15,23,42,.08);
  --radius:18px;
  --max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
  background:var(--bg);
  color:var(--text);
  line-height:1.65;
}
a{color:inherit; text-decoration:none}
a:hover{opacity:.92}
small{color:var(--muted)}
.container{width:min(var(--max), 92vw); margin:0 auto;}
.skip{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;}
.skip:focus{
  left:16px; top:16px; width:auto; height:auto;
  background:#fff; padding:10px 12px; border:1px solid var(--line);
  border-radius:12px; box-shadow:var(--shadow); z-index:999;
}
.header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.85);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:14px 0;
}
.brand{display:flex; flex-direction:column; gap:2px;}
.brand strong{font-size:15px; letter-spacing:.2px;}
.brand span{font-size:12px; color:var(--muted);}
.nav{display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end;}
.nav a{
  font-size:14px; color:var(--muted);
  padding:8px 10px; border-radius:12px;
}
.nav a:hover{background:var(--surface); color:var(--text);}
.lang{display:flex; gap:8px; align-items:center; padding-left:10px; border-left:1px solid var(--line);}
.pill{
  display:inline-flex; align-items:center; justify-content:center;
  font-size:13px; padding:7px 10px;
  border:1px solid var(--line); border-radius:999px; background:#fff;
}
.pill.active{background:var(--text); color:#fff; border-color:var(--text);}
.pill:focus-visible, .btn:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:3px solid rgba(29,78,216,.25); outline-offset:2px;
}
.hero{padding:72px 0 34px; border-bottom:1px solid var(--line);}
.kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-size:13px; color:var(--muted);
  border:1px solid var(--line); background:var(--surface);
  padding:7px 11px; border-radius:999px;
}
.hero h1{
  margin:14px 0 10px;
  font-size:46px; line-height:1.1; letter-spacing:-.8px;
}
.hero p{margin:0; color:var(--muted); font-size:18px; max-width:78ch;}
.cta{margin-top:22px; display:flex; gap:12px; flex-wrap:wrap; align-items:center;}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:10px; font-size:14px;
  padding:12px 16px; border-radius:14px;
  border:1px solid var(--line); background:#fff; cursor:pointer;
}
.btn.primary{background:var(--text); color:#fff; border-color:var(--text);}
.btn.primary:hover{opacity:.92}
.btn.secondary:hover{background:var(--surface)}
.btn.link{background:transparent; border-color:transparent; color:var(--accent); padding-inline:6px;}
.badges{display:flex; flex-wrap:wrap; gap:8px; margin-top:16px;}
.badge{
  font-size:12px; color:var(--muted);
  border:1px solid var(--line); background:#fff;
  padding:6px 10px; border-radius:999px;
}
.section{padding:52px 0; border-bottom:1px solid var(--line);}
.section h2{margin:0 0 10px; font-size:26px; letter-spacing:-.2px;}
.lead{margin:0 0 22px; color:var(--muted); max-width:88ch;}
.grid{display:grid; gap:16px;}
.grid.cols-3{grid-template-columns: repeat(3, minmax(0,1fr));}
.grid.cols-2{grid-template-columns: repeat(2, minmax(0,1fr));}
.card{
  background:var(--surface); border:1px solid var(--line);
  border-radius:var(--radius); padding:18px; box-shadow:var(--shadow);
}
.card h3{margin:0 0 8px; font-size:16px;}
.card p{margin:0; color:var(--muted); font-size:14px;}
.list{margin:12px 0 0; padding:0 0 0 18px; color:var(--muted); font-size:14px;}
.hr{border:none; border-top:1px solid var(--line); margin:16px 0;}
.quote{margin:14px 0 0; color:var(--muted); border-left:3px solid var(--text); padding-left:14px;}
.kpi{display:flex; flex-direction:column; gap:2px;}
.kpi strong{font-size:18px;}
.kpi span{font-size:13px; color:var(--muted);}
.form{display:grid; gap:12px;}
.label{font-size:13px; color:var(--muted); margin-bottom:6px;}
.input, textarea{
  width:100%; padding:12px 12px; border-radius:12px;
  border:1px solid var(--line); background:#fff; font-size:14px;
}
textarea{min-height:130px; resize:vertical;}
.hint{font-size:12px; color:var(--muted);}
.footer{padding:26px 0 40px; color:var(--muted); font-size:13px;}
.footer a{text-decoration:underline;}
@media (max-width: 940px){
  .hero h1{font-size:36px}
  .grid.cols-3{grid-template-columns: 1fr}
  .grid.cols-2{grid-template-columns: 1fr}
  .nav{display:none}
  .lang{border-left:none; padding-left:0}
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0b1220; --surface:#0f172a; --text:#e5e7eb;
    --muted:#9ca3af; --line:#1f2937;
    --shadow:0 18px 45px rgba(0,0,0,.25);
  }
  .header{background:rgba(11,18,32,.72)}
  .pill{background:transparent}
  .btn.secondary:hover{background:rgba(255,255,255,.06)}
}
