
:root{
  --blue:#1844D4;
  --blue-dark:#0F2E92;
  --off:#F8F9FA;
  --ink:#1f2937;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;color:var(--ink);background:var(--off)}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
.header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:10}
.nav{display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:12px}
.brand h1{font-size:22px;margin:0;color:#0f172a}
.brand small{color:#64748b}
.icon{width:44px;height:44px;position:relative}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;padding:10px 16px;border-radius:12px;font-weight:600}
.btn.secondary{background:#fff;color:var(--blue);border:1px solid #cbd5e1}
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:1fr 1fr}
.grid-3{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:18px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.hero{border-radius:24px;padding:32px;background:#fff;border:1px solid #e5e7eb;display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center}
.hero h2{font-size:40px;line-height:1.05;margin:0;color:#0f172a;text-transform:uppercase;font-weight:900;letter-spacing:-.02em}
.badges{display:flex;flex-wrap:wrap;gap:8px}
.badge{background:#EEF3FF;color:var(--blue);border:1px solid #c7d2fe;border-radius:999px;padding:6px 10px;font-weight:700;font-size:12px}
.banner{background:#EEF3FF;border:1px solid #c7d2fe;border-radius:20px;padding:18px}
.portfolio figure{position:relative;overflow:hidden;border-radius:14px;border:1px solid #e5e7eb;background:#000}
.portfolio img{width:100%;height:220px;object-fit:cover;display:block}
.portfolio figcaption{position:absolute;inset:auto 0 0 0;color:#fff;background:rgba(0,0,0,.55);padding:10px 12px;display:flex;justify-content:space-between;font-size:13px}
footer{margin-top:40px;background:var(--blue-dark);color:#fff}
footer a{color:#fff;text-decoration:underline}
footer .container{padding:26px}
@media (max-width:900px){
  .hero{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
}
