:root{ --orange:#f57c00; --green:#2e7d32; --cream:#fff7ea; --ink:#1b1b1b; }
*{ box-sizing:border-box }
body{ margin:0; font-family:Poppins, system-ui, -apple-system, sans-serif; color:var(--ink); background:#fafafa }
.container{ width:min(1100px, 94%); margin:auto; }
.flex{ display:flex; align-items:center }
.logo{ width:56px; height:56px; }
.gov-topbar{ display:flex; justify-content:space-between; align-items:center; padding:12px 0; background:linear-gradient(90deg,var(--orange),var(--green)); color:#fff; }
.brand{ display:flex; gap:12px; align-items:center; }
.brand-title{ font-weight:700; font-size:1.25rem; }
.brand-sub{ font-size:.85rem; opacity:.95; }
.right-controls{ display:flex; align-items:center; gap:12px; }
.lang a{ color:#fff; text-decoration:none; padding:6px; }
.lang a.active{ font-weight:700; text-decoration:underline; }
.hamburger{ background:transparent; border:none; color:#fff; font-size:22px; display:none; }
@media(max-width:900px){ .hamburger{ display:block } .main-nav{ display:none } .main-nav.open{ display:flex; flex-direction:column; gap:8px; padding:12px 0 } }

/* Hero */
.hero-banner{ background: linear-gradient(180deg, #fff7ea, #ffffff); border-bottom:4px solid var(--orange); position:relative; padding:22px 0 36px; }
.hero-seal{ position:absolute; left:12px; top:-36px; opacity:0.95; }
.hero-seal img{ width:84px; height:84px; border-radius:50%; background:#fff; padding:6px; box-shadow:0 6px 18px rgba(0,0,0,.08); }
.hero-content{ display:flex; align-items:center; justify-content:space-between; padding:36px 0; gap:18px; }
.hero-left h1{ margin:0; font-size:1.6rem; color:var(--green); }
.lead{ margin:8px 0 18px; font-size:1.05rem; color:#333; }
.hero-cta .btn{ margin-right:10px; }
.hero-right{ text-align:center; }
.portrait{ width:180px; height:220px; object-fit:cover; border-radius:8px; box-shadow:0 8px 28px rgba(0,0,0,.12); }
.portrait-caption{ margin-top:8px; font-weight:600; }

/* Main nav */
.main-nav{ display:flex; gap:18px; padding:12px 0; background:#fff; border-top:1px solid #eee; }
.main-nav a{ text-decoration:none; color:var(--ink); font-weight:600; }

/* Rest */
.section{ padding:40px 0 }
.section.alt{ background:#fff }
.card{ background:#fff; border:1px solid #eee; border-radius:12px; padding:18px; box-shadow:0 6px 18px rgba(0,0,0,.04) }
.cards{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px,1fr)); gap:18px }
.grid-2{ display:grid; grid-template-columns:1.2fr .8fr; gap:18px }
@media(max-width:900px){ .grid-2{ grid-template-columns:1fr } .hero-content{ flex-direction:column } .hero-right{ order:-1 } .portrait{ width:140px; height:180px } }

.footer{ background:#0f1b13; color:#d8eadb; padding:30px 0; margin-top:40px }
.copy{ text-align:center; padding-top:14px; opacity:.8 }

/* inputs/buttons */
.input{ width:100%; padding:10px 12px; border:1px solid #d8d8d8; border-radius:8px; outline:none; margin:6px 0 14px; font:inherit }
.btn{ background:var(--green); color:#fff; border:none; padding:10px 14px; border-radius:8px; cursor:pointer; font-weight:700; text-decoration:none; display:inline-block }
.btn.outline{ background:transparent; border:2px solid var(--green); color:var(--green) }
/* Banner Slider */
.slider-container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: auto;
  overflow: hidden;
}
.slide {
  display: none;
  width: 100%;
  position: relative;
}
.slide img {
  width: 100%;
  border-radius: 8px;
}
.caption {
  position: absolute;
  bottom: 20px;
  left: 20px;
  background: rgba(0,0,0,0.5);
  color: #fff;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 1rem;
}
