:root {
  --bg: #ffffff;
  --fg: #E88C00;
  --accent: #0000ff;
  --muted: #777777;
  --panel: #f4f4f4;
  --max-width: 1200px;
  --nav-height: 72px;
  --transition: 0.3s ease;
}

/* Reset & Global */
html { 
  scroll-behavior: smooth; 
}
* { 
  box-sizing: border-box; 
  margin: 0; 
  padding: 0; 
}
body { 
  font-family: "Poppins", sans-serif; 
  background: var(--bg); 
  color: var(--fg); 
  line-height: 1.5; 
}
.container { 
  width: 92%; 
  max-width: var(--max-width); 
  margin: 0 auto; 
}

/* ================= NAVBAR ================= */
.navbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--nav-height);
  background: #0a0a0a;
  display: flex; 
  align-items: center;
  z-index: 1200;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12);
}

.nav-inner { 
    width: 100%; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
}

.logo {
  display: flex; align-items: center; gap: 10px;
  font-weight: 900; color: #fff; 
  text-decoration: none;
  font-size: 1.1rem;
}

.logo-img { 
    height:36px; 
    transition: transform var(--transition); 
}
.logo:hover .logo-img { 
    transform: scale(1.05);
 }

.nav-list { 
    display: flex; 
    gap: 22px; 
    list-style: none; 
}

.nav-list li a {
  color: var(--fg); 
  text-decoration: none; 
  font-weight: 500;
  position: relative; 
  transition: color var(--transition);
}
.nav-list li a::after {
  content: ""; 
  position: absolute; 
  left:0; 
  bottom:-4px; 
  width:0%; 
  height:2px;
  background: var(--accent); 
  transition: width var(--transition);
}
.nav-list li a:hover::after {
     width:100%; 
}
.nav-list li a.active { 
    color: var(--accent); 
}

.contact-link {
  color:#fff; 
  background: var(--accent); 
  border: 2px solid var(--accent);
  padding:8px 14px; 
  border-radius:999px; 
  font-weight:700; 
  text-decoration:none;
  transition: all var(--transition);
}
.contact-link:hover { 
    background:transparent; 
    color: var(--accent); 
    transform: translateY(-1px); }

/* Toggle Button */
.nav-toggle { 
    display:none; 
    background:none; 
    border:none; 
    color: var(--fg); 
    font-size:1.8rem; 
    cursor:pointer; 
}
.nav-toggle.active { 
    background: var(--accent); 
    color:#fff; 
    border-radius:6px; 
}


/* ================= FAQ ================= */
.faq { 
  width: min(800px, 92vw); 
  margin: 140px auto 60px; 
}
.faq h1 { 
  text-align: center; 
  color: var(--accent); 
  margin-bottom: 24px; 
}
.faq-item { 
  margin-bottom: 16px; 
  overflow: hidden; 
  border-radius: 8px; 
  box-shadow: 0 2px 12px rgba(0,0,0,0.05); 
}
.faq-question {
  width: 100%;
  background: var(--panel);
  color: var(--fg);
  padding: 16px;
  text-align: left;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  transition: background .3s, color .3s;
}
.faq-question.active { 
  background: var(--accent); 
  color: #fff; 
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 16px;
  background: var(--panel);
  color: var(--muted);
  transition: max-height .3s ease, padding .3s ease;
}
.faq-answer p { 
  margin: 12px 0; 
}
  
/* ================= FOOTER ================= */
.site-footer { 
    background: var(--fg); 
    color:#fff; 
    padding:48px 20px 26px; 
    margin-top:40px; font-size:14px; 
}
.footer-top { 
    display:grid; 
    grid-template-columns:minmax(220px,1fr) repeat(3,minmax(160px,1fr)); 
    gap:32px; 
}
.footer-logo { 
    font-weight:900; 
    font-size:1.2rem; 
    margin-bottom:10px; 
    display:block; 
}
.footer-desc { 
    color:#f0f0f0; 
    line-height:1.6; 
    margin-bottom:12px; 
}
.footer-links h4 { 
    margin-bottom:12px; 
    font-weight:700; 
}
.footer-links ul { 
    list-style:none; 
    padding-left:0; 
}
.footer-links ul li { 
    margin-bottom:6px; 
}
.footer-links ul li a { 
    color:#fff; 
    text-decoration:none; 
    transition: color var(--transition); 
}
.footer-links ul li a:hover { 
    color: var(--accent); 
}
.footer-bottom { 
    margin-top:28px; 
    border-top:1px solid rgba(255,255,255,0.2); 
    padding-top:16px; 
    display:flex; 
    justify-content:space-between; 
    flex-wrap:wrap; 
    flex-direction: column;
    align-items: center;
    font-size: 1rem;
}
.socials { 
    display:flex; 
    gap:14px; 
}
.socials a { 
    color:#fff; 
    text-decoration:none; 
    transition: color var(--transition); 
}
.socials a:hover { 
    color: var(--accent); 
    transform: translateY(-2px); 
}

/* ================= ANIMATIONS ================= */
.fade-in { 
  opacity: 0; 
  transform: translateY(20px); 
  animation: fadeIn 1s forwards ease-out; 
}
@keyframes fadeIn {
   to { opacity: 1; transform: translateY(0); } 
  }

/* ================= RESPONSIVE ================= */
@media(max-width:700px) {
  .nav-list { 
    display: none; 
    flex-direction: column;
    background: var(--panel); 
    padding: 12px; gap: 12px; 
    position: absolute; 
    top: var(--nav-height); 
    right: 0; width: 200px; 
  }
  .nav-list.show { 
    display: flex; 
  }
  .nav-toggle { 
    display: block; 
  }
  .faq { 
    margin-top: 180px; 
  }
  .footer-top { 
    grid-template-columns: 1fr; 
    gap: 20px; 
  }
}
