:root{
  --bg:#0b1220;
  --bg-soft:#111a2c;
  --card:#111a30;
  --line:#243251;
  --text:#f4f7ff;
  --muted:#a9b6d3;
  --gold:#c9a96a;
  --gold-2:#e7cc96;
  --max:1140px;
  --r:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(900px 450px at 5% -10%, rgba(201,169,106,.12), transparent 60%),
    radial-gradient(900px 450px at 100% 0%, rgba(120,150,220,.14), transparent 55%),
    linear-gradient(180deg,#0a1220,#0a111d);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.6;
}
.container{max-width:var(--max);margin:0 auto;padding:0 20px}
.narrow{max-width:880px}
.section{padding:78px 0}
h1,h2,h3{line-height:1.2;margin:0 0 14px}
h1{font-size:clamp(34px,6vw,62px);font-family:"Playfair Display",serif;font-weight:700}
h2{font-size:clamp(28px,4vw,38px);font-family:"Playfair Display",serif}
h3{font-size:20px}
p{margin:0 0 12px;color:var(--muted)}

.header{
  position:sticky;top:0;z-index:50;
  background:rgba(10,17,30,.72);
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(8px);
}
.nav{height:70px;display:flex;align-items:center;justify-content:space-between}
.brand{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.2px}
.menu{display:flex;gap:18px}
.menu a{color:var(--muted);text-decoration:none}
.menu a:hover{color:#fff}
.burger{display:none;background:none;border:0;color:#fff;font-size:24px;cursor:pointer}

.eyebrow{color:var(--gold);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:12px}
.subtitle{font-size:18px;max-width:62ch}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:stretch}
.panel{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:22px;
}
.panel ul{padding-left:18px;margin:0 0 12px}
.panel li{margin:6px 0;color:#d5ddf3}
.stat{
  margin-top:14px;padding:10px 12px;border-radius:10px;
  border:1px solid rgba(201,169,106,.35);color:var(--gold-2);
  background:rgba(201,169,106,.06);font-weight:700;display:inline-block;
}

.btn{
  display:inline-block;text-decoration:none;
  padding:12px 18px;border-radius:12px;font-weight:700;
  border:1px solid transparent;transition:.2s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn-gold{
  background:linear-gradient(90deg,var(--gold),var(--gold-2));
  color:#251b0a;
}
.btn-dark{
  border-color:rgba(255,255,255,.22);
  color:#fff;background:rgba(255,255,255,.02);
}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

.cards{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px
}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:18px;
}
.card p{margin-bottom:0}

.projects-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px
}
.project{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:18px;
}
.tag{
  display:inline-block;padding:4px 8px;border-radius:999px;
  font-size:12px;font-weight:700;
  color:#3d2d0f;background:var(--gold-2);margin-bottom:8px;
}

.contact-box{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:24px;
}
.contact-list p{margin:0 0 8px}
a{color:#d8e8ff}
a:hover{color:#fff}
.footer{
  border-top:1px solid rgba(255,255,255,.08);
  padding:22px 0 38px;color:var(--muted);font-size:14px
}

/* reveal animation */
.reveal{
  opacity:0;transform:translateY(18px);
  transition:opacity .6s ease, transform .6s ease;
}
.reveal.show{opacity:1;transform:none}
.delay-1{transition-delay:.15s}

@media (max-width:920px){
  .hero-grid,.cards,.projects-grid,.contact-box{grid-template-columns:1fr}
  .menu{
    position:absolute;right:20px;top:64px;display:none;
    flex-direction:column;background:#0f182b;border:1px solid var(--line);
    border-radius:12px;padding:10px;min-width:200px;
  }
  .menu.open{display:flex}
  .burger{display:block}
}