/* ================= PAGE ================= */

body{
  margin:0;
  font-family:Arial, sans-serif;
  background:#0f172a;
  color:white;
}

/* Hero Slider */
.hero-slider {
  position: relative;
  width: min(95%, 1400px);
  height: 650px;          /* Increased height */
  margin: 0 auto;
  overflow: hidden;
  border-radius: 24px;
}

.hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.hero-slide.active {
  opacity: 1;
}

.hero-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


.hero-slider {
  width: 100%;
  max-width: 1600px;
  height: 70vh;
  min-height: 500px;
  margin: 0 auto;
}

@media (max-width: 992px) {
  .hero-slider {
    height: 500px;
  }
}

@media (max-width: 768px) {
  .hero-slider {
    height: 380px;
    border-radius: 16px;
  }
}

@media (max-width: 480px) {
  .hero-slider {
    height: 280px;
    border-radius: 12px;
  }
}
.slider-page{
  padding:60px 8%;
}

.page-header{
  text-align:center;
  margin-bottom:70px;
}

.page-tag{
  display:inline-block;
  padding:8px 18px;
  background:#38bdf8;
  border-radius:999px;
  font-size:14px;
  margin-bottom:18px;
}

.page-header h1{
  font-size:3rem;
  margin-bottom:15px;
}

.page-header p{
  max-width:700px;
  margin:auto;
  color:#cbd5e1;
  line-height:1.7;
}

/* ================= SECTION ================= */

.slider-section{
  margin-bottom:90px;
}

.slider-title{
  margin-bottom:30px;
  font-size:2rem;
}

/* ================= HERO SLIDER ================= */

.hero-slider{
  position:relative;
  width:100%;
  height:500px;
  border-radius:30px;
  overflow:hidden;
}

.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:0.6s ease;
}

.hero-slide.active{
  opacity:1;
}

.hero-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.prev,
.next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:55px;
  height:55px;
  border:none;
  border-radius:50%;
  background:rgba(255,255,255,0.2);
  color:white;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:0.3s;
}

.prev:hover,
.next:hover{
  background:#38bdf8;
}

.prev{
  left:20px;
}

.next{
  right:20px;
}

/* ================= CARD SLIDER ================= */

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

.image-card{
  background:#111827;
  border-radius:24px;
  overflow:hidden;
  transition:0.3s;
}

.image-card:hover{
  transform:translateY(-10px);
}

.image-card img{
  width:100%;
  height:250px;
  object-fit:cover;
}

.image-card h3{
  padding:20px;
}

/* ================= GALLERY ================= */

.gallery-slider{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:20px;
}

.gallery-slider img{
  width:100%;
  height:280px;
  object-fit:cover;
  border-radius:22px;
  transition:0.3s;
}

.gallery-slider img:hover{
  transform:scale(1.03);
}

/* ================= FOOTER ================= */

.footer{
  background:#020617;
  padding:70px 8% 30px;
}

.footer-container{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:40px;
}

.footer-links{
  display:flex;
  flex-direction:column;
}

.footer-links a{
  color:#cbd5e1;
  text-decoration:none;
  margin-bottom:12px;
}

.footer-bottom{
  margin-top:50px;
  border-top:1px solid rgba(255,255,255,0.1);
  padding-top:20px;
  text-align:center;
  color:#94a3b8;
}

/* ================= RESPONSIVE ================= */

@media(max-width:768px){

  .page-header h1{
    font-size:2.2rem;
  }

  .hero-slider{
    height:300px;
  }

}

/* ================= COVERFLOW ================= */

.coverflow-slider {
  perspective: 1000px;
  overflow: hidden;
  padding: 40px 0;
}

.coverflow-track {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 25px;
}

.cover-card {
  width: 240px;
  height: 320px;
  border-radius: 24px;
  overflow: hidden;
  transition: 0.5s ease;
  transform: scale(.8) rotateY(20deg);
  opacity: .5;
}

.cover-card.active {
  transform: scale(1);
  opacity: 1;
}

.cover-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ================= AUTO SLIDER ================= */

.auto-slider {
  overflow: hidden;
  border-radius: 24px;
}

.auto-track {
  display: flex;
  width: max-content;
  animation: scrollSlider 18s linear infinite;
  gap: 20px;
}

.auto-track img {
  width: 320px;
  height: 220px;
  object-fit: cover;
  border-radius: 20px;
}

@keyframes scrollSlider {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

/* ================= TESTIMONIAL ================= */

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

.testimonial-card {
  background: #fff;
  padding: 30px;
  border-radius: 24px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  transition: .3s ease;
}

.testimonial-card:hover {
  transform: translateY(-8px);
}

.testimonial-card img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  margin-bottom: 20px;
}

.testimonial-card p {
  color: #555;
  line-height: 1.7;
  margin-bottom: 18px;
}

/* ================= THUMBNAIL ================= */

.thumbnail-slider {
  max-width: 850px;
  margin: auto;
}

.main-preview img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 24px;
}

.thumbnail-track {
  display: flex;
  gap: 15px;
  margin-top: 20px;
}

.thumb {
  width: 120px;
  height: 80px;
  object-fit: cover;
  border-radius: 14px;
  cursor: pointer;
  opacity: .6;
  transition: .3s ease;
}

.thumb:hover,
.active-thumb {
  opacity: 1;
  transform: scale(1.05);
}

/* ================= LOGO SLIDER ================= */

.logo-slider {
  overflow: hidden;
  background: #fff;
  border-radius: 24px;
  padding: 30px 0;
}

.logo-track {
  display: flex;
  gap: 60px;
  width: max-content;
  animation: logoScroll 14s linear infinite;
}

.logo-item {
  font-size: 4rem;
  color: #111;
}

@keyframes logoScroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

/* ================= MASONRY GRID ================= */

.masonry-grid{
  columns: 3 250px;
  column-gap: 18px;
}

.masonry-item{
  margin-bottom: 18px;
  overflow: hidden;
  border-radius: 18px;
}

.masonry-item img{
  width: 100%;
  display: block;
  border-radius: 18px;
  transition: 0.4s ease;
}

.masonry-item img:hover{
  transform: scale(1.05);
}

/* ================= HOVER GRID ================= */

.hover-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
  gap: 20px;
}

.hover-card{
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}

.hover-card img{
  width: 100%;
  height: 320px;
  object-fit: cover;
  transition: 0.5s ease;
}

.hover-overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.4s ease;
}

.hover-overlay h3{
  color: #fff;
  font-size: 1.4rem;
}

.hover-card:hover img{
  transform: scale(1.1);
}

.hover-card:hover .hover-overlay{
  opacity: 1;
}

/* ================= PINTEREST GRID ================= */

.pinterest-grid{
  columns: 4 220px;
  column-gap: 18px;
}

.pin-card{
  margin-bottom: 18px;
  break-inside: avoid;
  overflow: hidden;
  border-radius: 20px;
}

.pin-card img{
  width: 100%;
  display: block;
  border-radius: 20px;
  transition: 0.4s ease;
}

.pin-card img:hover{
  transform: scale(1.05);
}

/* ================= ZOOM GRID ================= */

.zoom-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
  gap: 20px;
}

.zoom-card{
  overflow: hidden;
  border-radius: 20px;
}

.zoom-card img{
  width: 100%;
  height: 300px;
  object-fit: cover;
  transition: 0.5s ease;
}

.zoom-card:hover img{
  transform: scale(1.2) rotate(2deg);
}

/* ================= PARALLAX GRID ================= */

.parallax-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 24px;
}

.parallax-card{
  height: 420px;
  overflow: hidden;
  border-radius: 22px;
  position: relative;
}

.parallax-card img{
  width: 100%;
  height: 120%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.parallax-card:hover img{
  transform: translateY(-20px) scale(1.05);
}

/* ================= RESPONSIVE ================= */

@media(max-width:768px){

  .pinterest-grid,
  .masonry-grid{
    columns: 2;
  }

}

@media(max-width:480px){

  .pinterest-grid,
  .masonry-grid{
    columns: 1;
  }

}

/* ================= GLASS GRID ================= */

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

.glass-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  height:350px;
}

.glass-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.5s;
}

.glass-card:hover img{
  transform:scale(1.1);
}

.glass-overlay{
  position:absolute;
  bottom:20px;
  left:20px;
  right:20px;
  padding:20px;
  backdrop-filter:blur(14px);
  background:rgba(255,255,255,0.15);
  border:1px solid rgba(255,255,255,0.2);
  border-radius:18px;
  color:#fff;
}

/* ================= BENTO GRID ================= */

.bento-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:220px;
  gap:20px;
}

.bento-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
}

.bento-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.5s;
}

.bento-card:hover img{
  transform:scale(1.08);
}

.bento-card.large{
  grid-column:span 2;
  grid-row:span 2;
}

.bento-card.wide{
  grid-column:span 2;
}

.bento-content{
  position:absolute;
  bottom:20px;
  left:20px;
  color:#fff;
}

/* ================= STACK GRID ================= */

.stack-grid{
  display:flex;
  gap:40px;
  justify-content:center;
  flex-wrap:wrap;
}

.stack-card{
  width:280px;
  height:360px;
  border-radius:24px;
  overflow:hidden;
  transform:rotate(-3deg);
  transition:0.4s;
  box-shadow:0 20px 40px rgba(0,0,0,0.2);
}

.stack-card:nth-child(2){
  transform:rotate(3deg);
}

.stack-card:nth-child(3){
  transform:rotate(-2deg);
}

.stack-card:hover{
  transform:rotate(0deg) scale(1.05);
}

.stack-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ================= PORTFOLIO GRID ================= */

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

.portfolio-card{
  position:relative;
  height:420px;
  overflow:hidden;
  border-radius:24px;
}

.portfolio-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.5s;
}

.portfolio-card:hover img{
  transform:scale(1.1);
}

.portfolio-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0,0,0,0.8), transparent);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
  color:#fff;
}

.portfolio-overlay span{
  font-size:14px;
  opacity:0.8;
  margin-bottom:8px;
}

/* ================= FLOATING GRID ================= */

.floating-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:30px;
}

.floating-card{
  border-radius:24px;
  overflow:hidden;
  transform:translateY(0);
  transition:0.4s ease;
  box-shadow:0 15px 30px rgba(0,0,0,0.15);
}

.floating-card:hover{
  transform:translateY(-15px);
}

.floating-card img{
  width:100%;
  height:320px;
  object-fit:cover;
}

/* ================= MINIMAL GRID ================= */

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

.minimal-card{
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  transition:0.3s;
  box-shadow:0 8px 20px rgba(0,0,0,0.08);
}

.minimal-card:hover{
  transform:translateY(-8px);
}

.minimal-card img{
  width:100%;
  height:240px;
  object-fit:cover;
}

.minimal-card h4{
  padding:18px;
  font-size:16px;
  color:#222;
}

/* ================= RESPONSIVE ================= */

@media(max-width:768px){

  .bento-grid{
    grid-template-columns:1fr;
  }

  .bento-card.large,
  .bento-card.wide{
    grid-column:span 1;
    grid-row:span 1;
  }

}
/* ============================================================
   THEME STYLING OVERRIDES
   Navbar, Sidebar, and Footer theme colors:
   - Light Mode: White background, dark text/icons
   - Dark Mode: Black background, light/white text/icons
   ============================================================ */

/* ==========================================
   1. LIGHT MODE SPECIFIC (body:not(.dark-mode))
   ========================================== */
body:not(.dark-mode) .navbar,
body:not(.dark-mode) header.navbar,
body:not(.dark-mode) nav.navbar,
body:not(.dark-mode) .sidebar,
body:not(.dark-mode) aside.sidebar,
body:not(.dark-mode) .footer,
body:not(.dark-mode) footer.footer {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #0f172a !important;
  border-color: #e2e8f0 !important;
}

/* Ensure text, icons, links inside these components are dark */
body:not(.dark-mode) .navbar *,
body:not(.dark-mode) header.navbar *,
body:not(.dark-mode) nav.navbar *,
body:not(.dark-mode) .sidebar *,
body:not(.dark-mode) aside.sidebar *,
body:not(.dark-mode) .footer *,
body:not(.dark-mode) footer.footer * {
  color: #334155 !important;
}

/* Titles and major headings */
body:not(.dark-mode) .navbar .logo,
body:not(.dark-mode) .sidebar .sidebar-brand,
body:not(.dark-mode) .sidebar h2,
body:not(.dark-mode) .sidebar .brand-text,
body:not(.dark-mode) .footer h2,
body:not(.dark-mode) .footer h3,
body:not(.dark-mode) .footer-logo {
  color: #0f172a !important;
}

/* Sidebar navigation links */
body:not(.dark-mode) .sidebar-nav li a,
body:not(.dark-mode) .sidebar ul li a,
body:not(.dark-mode) .sidebar a {
  background: transparent !important;
  color: #475569 !important;
}

/* Sidebar active link and hover states */
body:not(.dark-mode) .sidebar-nav li.active a,
body:not(.dark-mode) .sidebar-nav li a:hover,
body:not(.dark-mode) .sidebar ul li.active a,
body:not(.dark-mode) .sidebar ul li a:hover,
body:not(.dark-mode) .sidebar a:hover,
body:not(.dark-mode) .sidebar .active a {
  background-color: #f1f5f9 !important;
  color: #0f172a !important;
}

body:not(.dark-mode) .sidebar-nav li.active a *,
body:not(.dark-mode) .sidebar-nav li a:hover *,
body:not(.dark-mode) .sidebar ul li.active a *,
body:not(.dark-mode) .sidebar ul li a:hover *,
body:not(.dark-mode) .sidebar a:hover *,
body:not(.dark-mode) .sidebar .active a * {
  color: #0f172a !important;
}

/* Footer links hover */
body:not(.dark-mode) .footer a:hover,
body:not(.dark-mode) footer.footer a:hover {
  color: #4f46e5 !important; /* Premium brand indigo */
}

/* Search bar inside navbar */
body:not(.dark-mode) .search-bar input {
  background-color: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
}
body:not(.dark-mode) .search-bar input::placeholder {
  color: #64748b !important;
}

/* Outline and secondary buttons inside light navbar/sidebar */
body:not(.dark-mode) .navbar .nav-btn.outline-nav-btn,
body:not(.dark-mode) .navbar .outline-btn {
  background-color: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
}
body:not(.dark-mode) .navbar .nav-btn.outline-nav-btn:hover,
body:not(.dark-mode) .navbar .outline-btn:hover {
  background-color: #f1f5f9 !important;
}


/* ==========================================
   2. DARK MODE SPECIFIC (body.dark-mode)
   ========================================== */
body.dark-mode .navbar,
body.dark-mode header.navbar,
body.dark-mode nav.navbar,
body.dark-mode .sidebar,
body.dark-mode aside.sidebar,
body.dark-mode .footer,
body.dark-mode footer.footer {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #f8fafc !important;
  border-color: #1e293b !important;
  box-shadow: none !important;
}

/* Ensure text, icons, links inside these components are light */
body.dark-mode .navbar *,
body.dark-mode header.navbar *,
body.dark-mode nav.navbar *,
body.dark-mode .sidebar *,
body.dark-mode aside.sidebar *,
body.dark-mode .footer *,
body.dark-mode footer.footer * {
  color: #cbd5e1 !important; /* slate-300 */
}

/* Titles and major headings */
body.dark-mode .navbar .logo,
body.dark-mode .sidebar .sidebar-brand,
body.dark-mode .sidebar h2,
body.dark-mode .sidebar .brand-text,
body.dark-mode .footer h2,
body.dark-mode .footer h3,
body.dark-mode .footer-logo {
  color: #ffffff !important;
}

/* Sidebar navigation links */
body.dark-mode .sidebar-nav li a,
body.dark-mode .sidebar ul li a,
body.dark-mode .sidebar a {
  background: transparent !important;
  color: #94a3b8 !important;
}

/* Sidebar active link and hover states */
body.dark-mode .sidebar-nav li.active a,
body.dark-mode .sidebar-nav li a:hover,
body.dark-mode .sidebar ul li.active a,
body.dark-mode .sidebar ul li a:hover,
body.dark-mode .sidebar a:hover,
body.dark-mode .sidebar .active a {
  background-color: #1e293b !important; /* slate-800 */
  color: #ffffff !important;
}

body.dark-mode .sidebar-nav li.active a *,
body.dark-mode .sidebar-nav li a:hover *,
body.dark-mode .sidebar ul li.active a *,
body.dark-mode .sidebar ul li a:hover *,
body.dark-mode .sidebar a:hover *,
body.dark-mode .sidebar .active a * {
  color: #ffffff !important;
}

/* Footer links hover */
body.dark-mode .footer a:hover,
body.dark-mode footer.footer a:hover {
  color: #818cf8 !important; /* Indigo-400 */
}

/* Search bar inside navbar */
body.dark-mode .search-bar input {
  background-color: #0f172a !important;
  color: #ffffff !important;
  border: 1px solid #1e293b !important;
}
body.dark-mode .search-bar input::placeholder {
  color: #475569 !important;
}

/* Secondary/outline buttons in dark navbar */
body.dark-mode .navbar .nav-btn.outline-nav-btn,
body.dark-mode .navbar .outline-btn {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #334155 !important;
}
body.dark-mode .navbar .nav-btn.outline-nav-btn:hover,
body.dark-mode .navbar .outline-btn:hover {
  background-color: #0f172a !important;
}


/* ==========================================
   3. THEME TOGGLE BUTTON STYLING (GLOBAL)
   ========================================== */
.theme-toggle,
#darkModeToggle,
#theme-toggle {
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 1.15rem !important;
  padding: 8px 12px !important;
  border-radius: 9999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

body:not(.dark-mode) .theme-toggle,
body:not(.dark-mode) #darkModeToggle,
body:not(.dark-mode) #theme-toggle {
  color: #475569 !important;
  background-color: #f1f5f9 !important;
}
body:not(.dark-mode) .theme-toggle:hover,
body:not(.dark-mode) #darkModeToggle:hover,
body:not(.dark-mode) #theme-toggle:hover {
  color: #0f172a !important;
  background-color: #e2e8f0 !important;
  transform: scale(1.05);
}

body.dark-mode .theme-toggle,
body.dark-mode #darkModeToggle,
body.dark-mode #theme-toggle {
  color: #e2e8f0 !important;
  background-color: #1e293b !important;
}
body.dark-mode .theme-toggle:hover,
body.dark-mode #darkModeToggle:hover,
body.dark-mode #theme-toggle:hover {
  color: #ffffff !important;
  background-color: #334155 !important;
  transform: scale(1.05);
}

/* Floating theme toggle button (for pages without navbar/sidebar) */
.theme-toggle-floating {
  position: fixed !important;
  top: 20px !important;
  right: 20px !important;
  z-index: 9999 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
}
body.dark-mode .theme-toggle-floating {
  box-shadow: 0 4px 12px rgba(0,0,0,0.5) !important;
}

/* Sidebar list item toggle button */
.sidebar .theme-toggle-sidebar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 16px !important;
  width: calc(100% - 32px) !important;
  margin: 10px 16px !important;
  border-radius: 8px !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  border: none !important;
  background-color: transparent !important;
}
body:not(.dark-mode) .sidebar .theme-toggle-sidebar {
  color: #475569 !important;
  background-color: #f1f5f9 !important;
}
body:not(.dark-mode) .sidebar .theme-toggle-sidebar:hover {
  color: #0f172a !important;
  background-color: #e2e8f0 !important;
}
body.dark-mode .sidebar .theme-toggle-sidebar {
  color: #cbd5e1 !important;
  background-color: #1e293b !important;
}
body.dark-mode .sidebar .theme-toggle-sidebar:hover {
  color: #ffffff !important;
  background-color: #334155 !important;
}
/* ============================================================
   THEME STYLING OVERRIDES
   Navbar, Sidebar, and Footer theme colors:
   - Light Mode: White background, dark text/icons
   - Dark Mode: Black background, light/white text/icons
   ============================================================ */

/* ==========================================
   1. LIGHT MODE SPECIFIC (body:not(.dark-mode))
   ========================================== */
body:not(.dark-mode) .navbar,
body:not(.dark-mode) header.navbar,
body:not(.dark-mode) nav.navbar,
body:not(.dark-mode) .sidebar,
body:not(.dark-mode) aside.sidebar,
body:not(.dark-mode) .footer,
body:not(.dark-mode) footer.footer {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #0f172a !important;
  border-color: #e2e8f0 !important;
}

/* Ensure text, icons, links inside these components are dark */
body:not(.dark-mode) .navbar *,
body:not(.dark-mode) header.navbar *,
body:not(.dark-mode) nav.navbar *,
body:not(.dark-mode) .sidebar *,
body:not(.dark-mode) aside.sidebar *,
body:not(.dark-mode) .footer *,
body:not(.dark-mode) footer.footer * {
  color: #334155 !important;
}

/* Titles and major headings */
body:not(.dark-mode) .navbar .logo,
body:not(.dark-mode) .sidebar .sidebar-brand,
body:not(.dark-mode) .sidebar h2,
body:not(.dark-mode) .sidebar .brand-text,
body:not(.dark-mode) .footer h2,
body:not(.dark-mode) .footer h3,
body:not(.dark-mode) .footer-logo {
  color: #0f172a !important;
}

/* Sidebar navigation links */
body:not(.dark-mode) .sidebar-nav li a,
body:not(.dark-mode) .sidebar ul li a,
body:not(.dark-mode) .sidebar a {
  background: transparent !important;
  color: #475569 !important;
}

/* Sidebar active link and hover states */
body:not(.dark-mode) .sidebar-nav li.active a,
body:not(.dark-mode) .sidebar-nav li a:hover,
body:not(.dark-mode) .sidebar ul li.active a,
body:not(.dark-mode) .sidebar ul li a:hover,
body:not(.dark-mode) .sidebar a:hover,
body:not(.dark-mode) .sidebar .active a {
  background-color: #f1f5f9 !important;
  color: #0f172a !important;
}

body:not(.dark-mode) .sidebar-nav li.active a *,
body:not(.dark-mode) .sidebar-nav li a:hover *,
body:not(.dark-mode) .sidebar ul li.active a *,
body:not(.dark-mode) .sidebar ul li a:hover *,
body:not(.dark-mode) .sidebar a:hover *,
body:not(.dark-mode) .sidebar .active a * {
  color: #0f172a !important;
}

/* Footer links hover */
body:not(.dark-mode) .footer a:hover,
body:not(.dark-mode) footer.footer a:hover {
  color: #4f46e5 !important; /* Premium brand indigo */
}

/* Search bar inside navbar */
body:not(.dark-mode) .search-bar input {
  background-color: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
}
body:not(.dark-mode) .search-bar input::placeholder {
  color: #64748b !important;
}

/* Outline and secondary buttons inside light navbar/sidebar */
body:not(.dark-mode) .navbar .nav-btn.outline-nav-btn,
body:not(.dark-mode) .navbar .outline-btn {
  background-color: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
}
body:not(.dark-mode) .navbar .nav-btn.outline-nav-btn:hover,
body:not(.dark-mode) .navbar .outline-btn:hover {
  background-color: #f1f5f9 !important;
}


/* ==========================================
   2. DARK MODE SPECIFIC (body.dark-mode)
   ========================================== */
body.dark-mode .navbar,
body.dark-mode header.navbar,
body.dark-mode nav.navbar,
body.dark-mode .sidebar,
body.dark-mode aside.sidebar,
body.dark-mode .footer,
body.dark-mode footer.footer {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #f8fafc !important;
  border-color: #1e293b !important;
  box-shadow: none !important;
}

/* Ensure text, icons, links inside these components are light */
body.dark-mode .navbar *,
body.dark-mode header.navbar *,
body.dark-mode nav.navbar *,
body.dark-mode .sidebar *,
body.dark-mode aside.sidebar *,
body.dark-mode .footer *,
body.dark-mode footer.footer * {
  color: #cbd5e1 !important; /* slate-300 */
}

/* Titles and major headings */
body.dark-mode .navbar .logo,
body.dark-mode .sidebar .sidebar-brand,
body.dark-mode .sidebar h2,
body.dark-mode .sidebar .brand-text,
body.dark-mode .footer h2,
body.dark-mode .footer h3,
body.dark-mode .footer-logo {
  color: #ffffff !important;
}

/* Sidebar navigation links */
body.dark-mode .sidebar-nav li a,
body.dark-mode .sidebar ul li a,
body.dark-mode .sidebar a {
  background: transparent !important;
  color: #94a3b8 !important;
}

/* Sidebar active link and hover states */
body.dark-mode .sidebar-nav li.active a,
body.dark-mode .sidebar-nav li a:hover,
body.dark-mode .sidebar ul li.active a,
body.dark-mode .sidebar ul li a:hover,
body.dark-mode .sidebar a:hover,
body.dark-mode .sidebar .active a {
  background-color: #1e293b !important; /* slate-800 */
  color: #ffffff !important;
}

body.dark-mode .sidebar-nav li.active a *,
body.dark-mode .sidebar-nav li a:hover *,
body.dark-mode .sidebar ul li.active a *,
body.dark-mode .sidebar ul li a:hover *,
body.dark-mode .sidebar a:hover *,
body.dark-mode .sidebar .active a * {
  color: #ffffff !important;
}

/* Footer links hover */
body.dark-mode .footer a:hover,
body.dark-mode footer.footer a:hover {
  color: #818cf8 !important; /* Indigo-400 */
}

/* Search bar inside navbar */
body.dark-mode .search-bar input {
  background-color: #0f172a !important;
  color: #ffffff !important;
  border: 1px solid #1e293b !important;
}
body.dark-mode .search-bar input::placeholder {
  color: #475569 !important;
}

/* Secondary/outline buttons in dark navbar */
body.dark-mode .navbar .nav-btn.outline-nav-btn,
body.dark-mode .navbar .outline-btn {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #334155 !important;
}
body.dark-mode .navbar .nav-btn.outline-nav-btn:hover,
body.dark-mode .navbar .outline-btn:hover {
  background-color: #0f172a !important;
}


/* ==========================================
   3. THEME TOGGLE BUTTON STYLING (GLOBAL)
   ========================================== */
.theme-toggle,
#darkModeToggle,
#theme-toggle {
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 1.15rem !important;
  padding: 8px 12px !important;
  border-radius: 9999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

body:not(.dark-mode) .theme-toggle,
body:not(.dark-mode) #darkModeToggle,
body:not(.dark-mode) #theme-toggle {
  color: #475569 !important;
  background-color: #f1f5f9 !important;
}
body:not(.dark-mode) .theme-toggle:hover,
body:not(.dark-mode) #darkModeToggle:hover,
body:not(.dark-mode) #theme-toggle:hover {
  color: #0f172a !important;
  background-color: #e2e8f0 !important;
  transform: scale(1.05);
}

body.dark-mode .theme-toggle,
body.dark-mode #darkModeToggle,
body.dark-mode #theme-toggle {
  color: #e2e8f0 !important;
  background-color: #1e293b !important;
}
body.dark-mode .theme-toggle:hover,
body.dark-mode #darkModeToggle:hover,
body.dark-mode #theme-toggle:hover {
  color: #ffffff !important;
  background-color: #334155 !important;
  transform: scale(1.05);
}

/* Floating theme toggle button (for pages without navbar/sidebar) */
.theme-toggle-floating {
  position: fixed !important;
  top: 20px !important;
  right: 20px !important;
  z-index: 9999 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
}
body.dark-mode .theme-toggle-floating {
  box-shadow: 0 4px 12px rgba(0,0,0,0.5) !important;
}

/* Sidebar list item toggle button */
.sidebar .theme-toggle-sidebar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 16px !important;
  width: calc(100% - 32px) !important;
  margin: 10px 16px !important;
  border-radius: 8px !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  border: none !important;
  background-color: transparent !important;
}
body:not(.dark-mode) .sidebar .theme-toggle-sidebar {
  color: #475569 !important;
  background-color: #f1f5f9 !important;
}
body:not(.dark-mode) .sidebar .theme-toggle-sidebar:hover {
  color: #0f172a !important;
  background-color: #e2e8f0 !important;
}
body.dark-mode .sidebar .theme-toggle-sidebar {
  color: #cbd5e1 !important;
  background-color: #1e293b !important;
}
body.dark-mode .sidebar .theme-toggle-sidebar:hover {
  color: #ffffff !important;
  background-color: #334155 !important;
}

/* ================= NEW 10 SLIDERS ================= */

/* 1. Split Screen Slider */
.split-slider {
  display: flex;
  height: 400px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--card-bg);
}
.split-left {
  flex: 1;
  padding: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.split-right {
  flex: 1;
}
.split-right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 2. Vertical Scroll Slider */
.vertical-slider {
  height: 400px;
  overflow-y: auto;
  border-radius: 20px;
  scroll-snap-type: y mandatory;
}
.vertical-track img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  scroll-snap-align: start;
}

/* 3. Fade Image Slider */
.fade-slider {
  position: relative;
  height: 400px;
  border-radius: 20px;
  overflow: hidden;
}
.fade-slide {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.fade-slide.active {
  opacity: 1;
}

/* 4. Perspective Slider */
.perspective-slider {
  display: flex;
  gap: 20px;
  perspective: 1000px;
}
.perspective-card {
  flex: 1;
  height: 300px;
  transform: rotateY(20deg);
  transition: 0.5s;
  border-radius: 15px;
  overflow: hidden;
}
.perspective-card:hover {
  transform: rotateY(0deg);
}
.perspective-card img {
  width: 100%; height: 100%; object-fit: cover;
}

/* 5. Hexagon Grid */
.hexagon-grid {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}
.hex {
  width: 150px; height: 170px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  overflow: hidden;
}
.hex img {
  width: 100%; height: 100%; object-fit: cover;
}

/* 6. Circular Carousel */
.circular-carousel {
  display: flex;
  gap: 20px;
  justify-content: center;
}
.circle-item {
  width: 150px; height: 150px;
  border-radius: 50%;
  overflow: hidden;
}
.circle-item img {
  width: 100%; height: 100%; object-fit: cover;
}

/* 7. Accordion Slider */
.accordion-slider {
  display: flex;
  height: 350px;
  gap: 10px;
}
.accordion-item {
  flex: 1;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  transition: 0.5s;
  cursor: pointer;
}
.accordion-item:hover {
  flex: 3;
}
.accordion-item img {
  width: 100%; height: 100%; object-fit: cover;
}
.accordion-item h3 {
  position: absolute;
  bottom: 20px; left: 20px;
  color: #fff;
}

/* 8. Stacked Cards Slider */
.stacked-slider {
  position: relative;
  height: 300px;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}
.stacked-card {
  position: absolute;
  width: 100%; height: 100%;
  border-radius: 20px;
  overflow: hidden;
  transition: 0.5s;
}
.card-1 { z-index: 3; transform: translateY(0) scale(1); }
.card-2 { z-index: 2; transform: translateY(20px) scale(0.9); opacity: 0.8;}
.card-3 { z-index: 1; transform: translateY(40px) scale(0.8); opacity: 0.6;}

/* 9. Glitch Effect Slider */
.glitch-slider {
  position: relative;
  height: 350px;
  border-radius: 20px;
  overflow: hidden;
}
.glitch-img {
  width: 100%; height: 100%; object-fit: cover;
}
.glitch-slider:hover .glitch-img {
  transform: scale(1.05);
  filter: hue-rotate(90deg) blur(1px);
}

/* 10. Polaroid Gallery */
.polaroid-gallery {
  display: flex;
  gap: 30px;
  justify-content: center;
  flex-wrap: wrap;
}
.polaroid {
  background: #fff;
  padding: 10px 10px 20px 10px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
  transform: rotate(-5deg);
  transition: 0.3s;
}
.polaroid:nth-child(even) {
  transform: rotate(5deg);
}
.polaroid:hover {
  transform: scale(1.1) rotate(0deg);
  z-index: 10;
}
.polaroid img {
  width: 200px; height: 200px; object-fit: cover;
}
.polaroid p {
  text-align: center; margin-top: 10px; color: #333; font-weight: bold;
}