:root {
  --primary:#1f3a5f;
  --secondary:#f5f7fa;
  --accent:#d9a441;
  --text:#2b2b2b;
}
* {
  box-sizing:border-box;
  margin:0;
  padding:0;
}
body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.7;
}
header {
  background:linear-gradient(120deg, var(--primary), #27496d);
  color:#fff;
  padding:3rem 1.5rem;
}
header h1 {
  max-width:1100px;
  margin:auto;
  font-size:2.5rem;
}
nav {
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky;
  top:0;
  z-index:10;
}
nav ul {
  max-width:1100px;
  margin:auto;
  display:flex;
  gap:1.5rem;
  list-style:none;
  padding:1rem;
}
nav a {
  text-decoration:none;
  color:var(--primary);
  font-weight:600;
}
main {
  max-width:1100px;
  margin:auto;
  padding:2rem 1.5rem;
}
section {
  margin-bottom:3rem;
  opacity:0;
  transform:translateY(20px);
  transition:all 0.6s ease;
}
section.visible {
  opacity:1;
  transform:translateY(0);
}
h2 {
  font-size:1.9rem;
  color:var(--primary);
  margin-bottom:1rem;
}
h3 {
  font-size:1.3rem;
  margin-top:1.5rem;
  margin-bottom:0.5rem;
  color:#333;
}
p {
  margin-bottom:1rem;
}
img {
  width:100%;
  border-radius:10px;
  margin:1.5rem 0;
}
a {
  color:var(--accent);
  font-weight:600;
}
footer {
  background:var(--secondary);
  padding:2.5rem 1.5rem;
  margin-top:3rem;
}
footer .footer-inner {
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px,1fr));
  gap:2rem;
}
footer h4 {
  margin-bottom:1rem;
  color:var(--primary);
}
footer ul {
  list-style:none;
}
footer li {
  margin-bottom:0.5rem;
}
footer a {
  color:#333;
  text-decoration:none;
}
.social a {
  margin-right:1rem;
}
@media (max-width:768px) {
  header h1 {
    font-size:2rem;
  }
}
