:root{
  --bg:#0b0e14;
  --panel:#121826;
  --muted:#8a93a6;
  --text:#e9eefc;
  --brand:#5b8cff;
  --brand-2:#9a6bff;
  --accent:#19d3da;
  --success:#22c55e;
  --warn:#f59e0b;
  --danger:#ef4444;
  --border:#1e2638;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-2)}
.container{width:min(1200px,92%);margin:0 auto}
.visually-hidden{position:absolute;left:-9999px}

.topbar{
  background:linear-gradient(90deg,rgba(91,140,255,.2),rgba(154,107,255,.2));
  color:var(--text);
  font-size:.9rem;
  padding:.4rem 0;
  border-bottom:1px solid var(--border);
}
.topbar .wrap{display:flex;gap:1rem;align-items:center;justify-content:space-between}
.topbar .geo{display:flex;align-items:center;gap:.5rem;color:var(--muted)}
.topbar svg{width:18px;height:18px;fill:var(--brand)}

.nav{
  position:sticky;top:0;z-index:1000;
  background:rgba(18,24,38,.8);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border)
}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:.8rem 0;gap:1rem}
.brand{display:flex;align-items:center;gap:.75rem;font-weight:700}
.brand img{width:36px;height:36px;border-radius:8px;object-fit:cover;border:1px solid var(--border)}
.brand span{letter-spacing:.4px}
.nav ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.nav a{
  padding:.55rem .9rem;border-radius:10px;color:var(--text);font-weight:600;
  transition:all .2s ease
}
.nav a.active,.nav a:hover{background:linear-gradient(135deg,rgba(91,140,255,.2),rgba(154,107,255,.18));box-shadow:inset 0 0 0 1px var(--border)}
.nav .cta{
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  color:#fff;border:0;box-shadow:var(--shadow)
}

#progress{
  position:fixed;top:0;left:0;height:4px;width:0;
  background:linear-gradient(90deg,var(--accent),var(--brand));z-index:1200
}

.hero{
  display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;
  padding:3rem 0 2rem;border-bottom:1px solid var(--border)
}
.hero h1{font-size:2.4rem;line-height:1.15;margin:.2rem 0 1rem}
.hero p{color:var(--muted);font-size:1.05rem}
.badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(25,211,218,.12);color:#a9f2f5;border:1px solid rgba(25,211,218,.3);padding:.35rem .7rem;border-radius:999px;font-size:.85rem}
.hero .image{
  border-radius:18px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)
}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.1rem;border-radius:12px;border:1px solid var(--border);color:var(--text);font-weight:600}
.btn svg{width:18px;height:18px}
.btn.primary{background:linear-gradient(135deg,rgba(91,140,255,.25),rgba(154,107,255,.25))}
.btn.ghost:hover{background:rgba(255,255,255,.04)}

.section{padding:2.2rem 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.card{
  background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.card .media{height:180px;overflow:hidden}
.card .media img{width:100%;height:100%;object-fit:cover}
.card .content{padding:1rem}
.meta{display:flex;gap:1rem;color:var(--muted);font-size:.9rem}
.meta svg{width:16px;height:16px;fill:var(--muted)}
.list{display:grid;gap:1rem}
.list a{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px dashed var(--border);border-radius:12px;color:var(--text)}
.list a:hover{border-style:solid;background:rgba(255,255,255,.02)}

.split{display:grid;grid-template-columns:2fr 1fr;gap:2rem}
.article{
  background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1.2rem
}
.article h2{margin-top:.2rem}
.article .cover{border-radius:12px;overflow:hidden;border:1px solid var(--border);margin:.7rem 0 1rem}

.sidebar{
  background:var(--panel);border:1px dashed var(--border);border-radius:16px;padding:1rem;height:fit-content
}

.contact{
  display:grid;grid-template-columns:1.2fr .8fr;gap:2rem
}
.form{
  background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1.2rem
}
.input{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.9rem}
.input label{color:var(--muted);font-size:.95rem}
.input input,.input textarea, .input select{
  background:#0e1422;border:1px solid var(--border);border-radius:12px;color:var(--text);
  padding:.85rem 1rem;outline:none
}
.input input:focus,.input textarea:focus{border-color:var(--brand)}
.form .actions{display:flex;gap:.8rem;align-items:center}
.notice{font-size:.9rem;color:var(--muted)}
.map{
  background:var(--panel);border:1px dashed var(--border);border-radius:16px;padding:1rem
}

.footer{
  margin-top:3rem;border-top:1px solid var(--border);background:rgba(12,16,25,.6)
}
.footer .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem;padding:2rem 0}
.footer h4{margin:.2rem 0 1rem}
.legal{display:flex;gap:.8rem;flex-wrap:wrap}
.legal a{background:rgba(255,255,255,.05);padding:.4rem .7rem;border-radius:999px;border:1px solid var(--border)}
.social{display:flex;gap:.6rem}
.social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid var(--border);background:rgba(255,255,255,.04)}
.social a:hover{background:linear-gradient(135deg,rgba(91,140,255,.22),rgba(154,107,255,.22))}
.small{color:var(--muted);font-size:.9rem}

.cookie{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:1400;
  background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:1rem;box-shadow:var(--shadow);
  display:none
}
.cookie.show{display:block}
.cookie .row{display:flex;gap:1rem;align-items:flex-start}
.cookie .col{flex:1}
.cookie .buttons{display:flex;gap:.6rem;flex-wrap:wrap}
.cookie .buttons button{
  border:1px solid var(--border);background:#0e1422;color:var(--text);padding:.6rem .9rem;border-radius:10px;font-weight:600
}
.cookie .buttons .accept{background:linear-gradient(90deg,var(--brand),var(--brand-2));border:0}
.cookie a{color:var(--accent)}

.modal{
  position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;z-index:1500
}
.modal.show{display:flex}
.modal .box{
  width:min(560px,92%);background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1rem 1.2rem
}
.modal .top{display:flex;align-items:center;justify-content:space-between}
.modal .prefs{display:grid;gap:.5rem;margin:.8rem 0}
.modal .prefs label{display:flex;gap:.6rem;align-items:center}

.thanks{
  position:fixed;right:16px;bottom:16px;background:linear-gradient(135deg,rgba(34,197,94,.15),rgba(34,197,94,.25));
  border:1px solid rgba(34,197,94,.35);color:#eaffef;padding:1rem 1.2rem;border-radius:14px;box-shadow:var(--shadow);
  display:none;z-index:1300
}

.team{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.member{
  background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1rem;text-align:center
}
.member img{width:400px;height:400px;max-width:100%;border-radius:12px;object-fit:cover;border:1px solid var(--border);margin:0 auto}
.member h3{margin:.6rem 0 .2rem}
.member p{margin:.2rem 0;color:var(--muted)}

@media (max-width: 1024px){
  .hero{grid-template-columns:1fr;gap:1.5rem}
  .cards{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
  .team{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 560px){
  .cards{grid-template-columns:1fr}
  .footer .wrap{grid-template-columns:1fr}
  .topbar .wrap{flex-direction:column;align-items:flex-start}
}
