* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: #e9e9e9;
}

.page {
  max-width: 920px;
  margin: 20px auto;
  background: #fff;
  border: 8px solid #cfcfcf;
  border-radius: 18px;
  overflow: hidden;
}

/* Header */
.top { padding: 18px 22px 8px; }
.logo { width: 289px; }

/* Menu */
.main-menu { background: #111; }
.main-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
.main-menu li { position: relative; }
.main-menu a {
  display: block;
  padding: 15px 22px;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  font-size: 14px;
}
.main-menu a:hover,
.main-menu .active > a {
  background: #7cc300;
  color: #000;
}

/* Submenu */
.has-sub .submenu {
  display: none !important;
  position: absolute;
  top: 100%;
  left: 0;
  background: #000;
  min-width: 200px;
  z-index: 9999;
  margin: 0;
  padding: 0;
}
.has-sub:hover > .submenu { display: block !important; }
.submenu li { list-style: none; }
.submenu a { padding: 12px 16px; font-size: 13px; }
.submenu a:hover { background: #7cc300; color: #000; }

/* Banner / Promo (solo Home) */
.hero { background: #fff; }
.hero img {
  width: 100%;
  height: auto;
  display: block;
}
.hero + .hero { border-top: 1px solid #e5e5e5; }

/* Content area */
.content { padding: 18px; background: #0b5a7f; }
.panel {
  background: #e9ecef;
  padding: 16px;
  border-radius: 8px;
}
.panel h2 { margin: 0 0 10px; }

/* Home quick links */
.home-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 14px;
}
.home-card {
  background: #ffffff;
  border-radius: 10px;
  padding: 14px;
  text-decoration: none;
  color: #111;
  border: 1px solid #d9d9d9;
}
.home-card:hover { border-color: #7cc300; }
.home-card .t { font-weight: 800; margin-bottom: 6px; }
.home-card .d { font-size: 13px; opacity: .85; }

/* Footer */
.footer {
  text-align: center;
  padding: 14px;
  background: #fff;
}

@media (max-width: 860px) {
  .main-menu ul { flex-wrap: wrap; }
  .home-cards { grid-template-columns: 1fr; }
}
