/* ===============================
   ROOT VARIABLES
================================ */
:root{
  --bg-dark:#0a0f1a;
  --card-bg:#111827;
  --primary:#00ffff;
  --primary-soft:#00ffff33;
  --text-light:#e8f1ff;
  --text-muted:#9fb3c8;
}

/* ===============================
   GLOBAL
================================ */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  background:var(--bg-dark);
  color:var(--text-light);
  font-family:'Oxanium',sans-serif;
  overflow-x:hidden;
}

a{
  text-decoration:none;
  color:inherit;
}

/* ===============================
   NAVBAR
================================ */
header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 40px;
  border-bottom:1px solid var(--primary-soft);
  background:#0f172a;
  position:relative;
  z-index:2000;
}


.logo{
  font-family:'Orbitron',sans-serif;
  font-size:22px;
  color:var(--primary);
  text-shadow:0 0 10px var(--primary);
}

nav a{
  margin-left:25px;
  font-size:15px;
  color:#cdd7e0;
  transition:0.3s;
}

nav a:hover{
  color:var(--primary);
}

.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
    color:var(--primary);
}

.dropdown-item.active, .dropdown-item:active {
    color:var(--primary);
    text-decoration: none;
    background-color: #3c5170;
}

/* ===============================
   HERO SECTION
================================ */
.hero{
  text-align:center;
  padding:40px 0px 50px 0px;
}

.hero h1{
  font-family:'Orbitron',sans-serif;
  font-size:40px;
  color:var(--primary);
  text-shadow:0 0 20px var(--primary);
  margin-bottom:10px;
}

.hero p{
  color:var(--text-muted);
  font-size:18px;
  margin:auto;
  margin-bottom:10px;
}

.hero-btn{
    display: inline-block;
    background: linear-gradient(90deg, #00ffff33, #00ffffaa);
    border: 2px solid var(--primary);
    padding: 8px 22px;
    border-radius: 19px;
    color: var(--primary);
    font-weight: 600;
    transition: 0.3s;
    font-size: 15px;
}

.hero-btn:hover{
  background:var(--primary);
  color:#000;
  box-shadow:0 0 25px var(--primary);
}

/* ===============================
   TOOL GRID
================================ */
.tools-section{
  max-width:1200px;
  margin:10px auto;
  padding:0 20px;
}

.section-title{
  font-size:24px;
  color:var(--primary);
  margin-bottom:30px;
  border-left:4px solid var(--primary);
  padding-left:10px;
}

.tools-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:25px;
}

.tool-card{
  background:rgba(17,24,39,0.85);
  border:1px solid var(--primary-soft);
  border-radius:15px;
  padding:25px;
  text-align:center;
  transition:0.4s;
  backdrop-filter:blur(8px);
}

.tool-card:hover{
  transform:translateY(-8px);
  border-color:var(--primary);
  box-shadow:0 0 25px var(--primary);
}

.tool-card h3{
  color:var(--primary);
  margin-bottom:10px;
  font-size:18px;
}

.tool-card p{
  color:var(--text-muted);
  font-size:14px;
  margin-bottom:15px;
}

.btn-explore{
    display: inline-block;
    padding: 12px 22px;
    border: 2px solid var(--primary);
    background: var(--primary);
    color: #000;
    border-radius: 25px;
    font-size: 17px;
    font-weight: 600;
    transition: 0.3s;
}
.btn-explore:hover{
    background: linear-gradient(90deg, #00ffff33, #00ffffaa);
    border: 2px solid var(--primary);
    color: var(--primary);
}

.tool-card a:hover{
  box-shadow:0 0 15px var(--primary);
}

/* ===============================
   ABOUT SECTION
================================ */
.about{
  padding:60px 20px;
  text-align:center;
}

.about h2{
  font-family:'Orbitron';
  color:var(--primary);
  margin-bottom:20px;
}

.about p{
  max-width:700px;
  margin:auto;
  color:var(--text-muted);
  line-height:1.8;
}

/* ===============================
   FOOTER
================================ */
footer{
  background:#0f172a;
  padding:30px 20px;
  text-align:center;
  border-top:1px solid var(--primary-soft);
  font-size:14px;
  color:#9fb3c8;
}

footer a.active{
  color:var(--primary);
  margin:0 10px;
}
footer a{
  margin:0 10px;
}
.page-content{
  flex:1;
}
html, body{
  height:100%;
}

body{
  display:flex;
  flex-direction:column;
}

/* ===============================
   MOBILE
================================ */
@media(max-width:768px){
  header{
    flex-direction:column;
    gap:15px;
  }
  nav a{
    margin:0 10px;
  }
  .hero h1{
    font-size:28px;
  }
}


/* ===== MENU STRUCTURE ===== */

.menu {
  list-style: none;
  display: flex;
  align-items: center;
}

.menu li {
  position: relative;
}

.menu a {
  color: #cdd7e0;
  font-size: 15px;
  padding: 8px 0;
  display: block;
  transition: 0.3s;
}

.menu a:hover {
  color: var(--primary);
}

/* ===== DROPDOWN FIX ===== */

.submenu {
  position: absolute;
  top: 100%;
  left: 0;
  background: linear-gradient(145deg,#0f172a,#111827);
  list-style: none;
  padding: 12px 0;
  border-radius: 10px;
  min-width: 180px;
  border: 1px solid var(--primary-soft);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: 0.3s ease;
  z-index: 1000;
}

.submenu li {
  padding: 8px 18px;
}

.submenu li a {
  font-size: 14px;
  color: #cdd7e0;
}

.submenu li a:hover {
  color: var(--primary);
}

/* hover effect improved */
.dropdown:hover .submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}



/* ===== MOBILE MENU ===== */

.menu-toggle {
  display: none;
  font-size: 26px;
  cursor: pointer;
  color: var(--primary);
}

@media (max-width: 768px) {

  header {
    flex-direction: row;
  }

  .menu-toggle {
    display: block;
  }

  nav {
    position: fixed;
    top: 0;
    left: -100%;
    width: 260px;
    height: 100vh;
    background: linear-gradient(180deg,#0f172a,#0a0f1a);
    padding-top: 80px;
    transition: 0.4s ease;
    z-index: 3000;
    box-shadow: 5px 0 25px #00000066;
  }
  nav.active {
    left: 0;
  }

   .menu {
    flex-direction: column;
    display: flex;
  }


  .menu > li {
    width: 100%;
    padding: 12px 25px;
    text-align: left;
  }

  .menu a {
    font-size: 16px;
  }

  /* submenu */
  .submenu {
    background: #111827;
    margin-top: 10px;
    border-radius: 8px;
    display: none;
  }


    .submenu {
        top: 64%;
        left: 17px;
       
        min-width: 230px;
    }

  .dropdown.active .submenu {
    display: block;
  }

}
/* Submenu Divider */

.submenu li:not(:last-child) {
  border-bottom: 1px solid var(--primary-soft);
}

.submenu li {
  padding: 10px 18px;
}

.submenu li a {
  display: block;
}
.nav-link:hover,
.dropdown-item:hover{
  color:#00ffff !important;
}

span#pageInfo {
    color: black;
    margin-top: 10px;
}

@media (max-width: 767px) {
    .pdf-card {
        width: 45% !important;
        margin: 4px !important;
    }
}

.modal-box {
    color: #000;
}