* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: Arial, sans-serif; background:#f9fafb; color:#1a2b3c; line-height:1.6; }

/* Navbar */
.navbar {
  display: flex; justify-content: space-between; align-items: center;
  background: #fff; padding: 10px 16px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  position: sticky; top: 0; z-index: 999;
}
.nav-brand { display: flex; align-items: center; gap: 10px; font-weight: bold; color: #166534; }
.nav-brand img { max-height: 65px; }
.nav-toggle { display: block; background: none; border: none; cursor: pointer; color:#166534; }
.nav-toggle i { font-size: 28px; }

.nav-links {
  list-style: none; display: none; flex-direction: column;
  background: #fff; position: absolute; top: 70px; left: 0; width: 100%;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}
.nav-links.show { display: flex; }

.nav-links li { border-bottom: 1px solid #eee; }
.nav-links a, .nav-links button {
  display: flex; align-items:center; gap:6px;
  padding: 12px; font-size: 16px; color:#1a2b3c;
  text-decoration: none; background:none; border:none;
}
.nav-links button.btn { margin: 8px auto; width: 90%; }

/* Desktop */
@media(min-width: 768px){
  .nav-toggle { display: none; }
  .nav-links { display: flex !important; position: static; flex-direction: row; box-shadow: none; width: auto; }
  .nav-links li { border: none; }
  .nav-links a, .nav-links button { padding: 8px 14px; font-size: 15px; }
}
/* Auth Pages (Login & Register) */
.auth-page {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: #f9fafb;
}

.auth-container {
  background: #fff;
  padding: 25px;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  width: 100%;
  max-width: 360px;
  text-align: center;
}

.auth-logo {
  max-width: 120px;
  margin-bottom: 15px;
}

.auth-container h2 {
  color: #166534;
  margin-bottom: 15px;
}

.auth-container form {
  display: flex;
  flex-direction: column;
}

.auth-container input {
  padding: 10px;
  margin: 6px 0;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
}

.auth-container button {
  margin-top: 12px;
}

.auth-link {
  margin-top: 15px;
  font-size: 14px;
}

.auth-link a {
  color: #2563eb;
  text-decoration: none;
}

.auth-link a:hover {
  text-decoration: underline;
}

.auth-footer {
  margin-top: 20px;
  font-size: 12px;
  color: #666;
}
/* Buttons */
.btn { background: #166534; color: #fff; padding: 8px 14px; border: none; border-radius: 6px; cursor: pointer; font-size: 14px; }
.btn:hover { background:#14532d; }
.btn-blue { background:#2563eb; }
.btn-blue:hover { background:#1e40af; }

/* Sections */
section { max-width: 1100px; margin: 25px auto; padding: 0 16px; }
.box { background:#fff; padding:20px; border-radius:10px; margin-bottom:20px; box-shadow:0 2px 8px rgba(0,0,0,0.1); }
.box h2 { color:#166534; margin-bottom:12px; font-size:22px; }

/* Carousel */
.carousel { position:relative; overflow:hidden; border-radius:10px; }
.carousel-inner { display:flex; transition:transform 0.5s ease; }
.carousel img { width:100%; height:50vh; object-fit:cover; }
@media(min-width:768px){ .carousel img { height:400px; } }
.carousel button {
  position:absolute; top:50%; transform:translateY(-50%);
  background:rgba(0,0,0,0.5); color:#fff; border:none;
  padding:10px; cursor:pointer; font-size:18px;
}
.prev{ left:0; } .next{ right:0; }

/* Gallery */
.gallery { display:grid; grid-template-columns: 1fr; gap:12px; }
.gallery img { width:100%; height:auto; border-radius:8px; cursor:pointer; transition:transform 0.3s; }
.gallery img:hover { transform:scale(1.02); }
@media(min-width:600px){ .gallery { grid-template-columns: repeat(2,1fr); } }
@media(min-width:992px){ .gallery { grid-template-columns: repeat(3,1fr); } }

/* Lightbox */
.lightbox { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.8); justify-content:center; align-items:center; z-index:2000; }
.lightbox img { max-width:92%; max-height:92%; border-radius:6px; }

/* Forms */
.modal-content form, .contact form { display:flex; flex-direction:column; }
.modal-content input { width:100%; padding:10px; margin:6px 0; border:1px solid #ccc; border-radius:6px; font-size:14px; }
.modal-content button { margin-top:10px; font-size:14px; padding:10px; width:100%; max-width:180px; align-self:center; }

/* Modal */
.modal { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.6); align-items:center; justify-content:center; z-index:1500; padding:10px; }
.modal-content { background:#fff; padding:20px; border-radius:10px; width:100%; max-width:340px; position:relative; }
.close { position:absolute; top:10px; right:12px; cursor:pointer; }

/* Contact */
.contact p { margin:6px 0; font-size:15px; }
.contact iframe { width:100%; height:300px; border:0; border-radius:8px; margin:12px 0; }
@media(min-width:768px){ .contact iframe { height:450px; } }

/* Footer */
footer { text-align:center; padding:14px; background:#1f2937; color:#fff; font-size:13px; margin-top:20px; }