:root{
  --bg:#0b1220;
  --card:#111a2b;
  --text:#e8eefc;
  --muted:#b7c3df;
  --accent:#5cb85c;
  --border:rgba(255,255,255,.10);
}
*{box-sizing:border-box}
body{
  margin:0;
  min-height:100vh;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial,"Helvetica Neue",sans-serif;
  background: radial-gradient(1200px 600px at 20% 0%, #17284a 0%, var(--bg) 55%), var(--bg);
  background-repeat:no-repeat;
  background-size:cover;
  color:var(--text);
}
.wrap{
  max-width:740px;
  margin:0 auto;
  padding:18px 14px 30px;
}
.hero{
  padding:18px 14px 10px;
}
.badge{
  display:inline-block;
  font-size:12px;
  letter-spacing:.02em;
  padding:6px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  color:var(--muted);
  background:rgba(255,255,255,.04);
}
h1{margin:12px 0 6px; font-size:28px; line-height:1.15}
.sub{margin:0; color:var(--muted); font-size:15px}

.card{
  margin-top:14px;
  padding:16px 14px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid var(--border);
  border-radius:16px;
  backdrop-filter: blur(6px);
}
.card h2{margin:0 0 12px; font-size:16px}

.center{text-align:center}
.company{display:flex;flex-direction:column;gap:4px}
.company-name{font-weight:750;font-size:16px}
.company-line{color:var(--muted);font-size:14px}

.contact{display:flex; flex-direction:column; gap:10px}
.row{
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:center;
  padding:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(0,0,0,.18);
}
.who{min-width:0}
.name{font-weight:650; font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.role{font-size:12px; color:var(--muted)}

.cta{
  flex:0 0 auto;
  text-decoration:none;
  color:#06110a;
  background:var(--accent);
  padding:10px 12px;
  border-radius:12px;
  font-weight:700;
  font-size:13px;
  line-height:1;
  text-align:center;
  max-width: 220px;
}
.cta:active{transform:translateY(1px)}

.footer{margin-top:18px; color:var(--muted); font-size:12px; text-align:center}

@media (min-width:540px){
  h1{font-size:34px}
  .sub{font-size:16px}
  .kv{grid-template-columns: 140px 1fr}
}
