
/* Global Styles */

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

body {
  font-family: Arial, sans-serif;
  line-height: 1.6;
  color: #1A1D23; /* Main Navy */
  background-color: #FFFFFF; /* Main Background */
  overflow-y: auto;
  height:100vh;
}

body .containers{
  /*width:100vw;*/
  overflow-x:hidden;
}

.mobs-nav{
  height:100vh;
  overflow-y:hidden;
}
/* Links */

a {
  text-decoration: none;
  color: #4C9DFE; /* Accent Blue */
}

a:hover {
  color: #34C759; /* Green */
}

/* Buttons */

button {
  background-color: #1A1D23; /* Main Navy */
  color: #FFFFFF; /* White */
  border: none;
  padding: 0.5em 1em;
  font-size: 1em;
  cursor: pointer;
  height:unset;
}

button:hover {
  background-color: #4C9DFE; /* Accent Blue */
}

/* Forms */

form {
  margin-top: 1em;
}

input[type="email"],
input[type="password"] {
  width: 100%;
  padding: 0.5em;
  margin-bottom: 1em;
  border: 1px solid #CCCCCC; /* Light Gray */
}

button[type="submit"] {
  background-color: #1A1D23; /* Main Navy */
  color: #FFFFFF; /* White */
  border: none;
  padding: 0.5em 1em;
  font-size: 1em;
  cursor: pointer;
  height:unset;
}

button[type="submit"]:hover {
  background-color: #4C9DFE; /* Accent Blue */
}

/* Tables */

table {
  border-collapse: collapse;
  width: 100%;
}

th, td {
  border: 1px solid #ddd;
  padding: 0.5em;
  text-align: left;
}

th {
  background-color: #F7F7F7; /* Light Gray */
}

/* Alerts */

.alert {
  background-color: #F7F7F7; /* Light Gray */
  color: #6C757D; /* Dark Gray */
  padding: 0.5em;
  border: 1px solid #CCCCCC; /* Light Gray */
  margin-bottom: 1em;
}

.alert-success {
  background-color: #C6F4D6; /* Green */
  color: #0f0;
}

.alert-error {
  background-color: #F2DEDE; /* Red */
  color: #f00;
}

/* Modals */

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
}

.modal-content {
  background-color: #FFFFFF; /* Main Background */
  padding: 2em;
  border-radius: 0.5em;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  width: 50%;
  margin: 5% auto;
}

.close-button {
  float: right;
  background-color: #1A1D23; /* Main Navy */
  color: #FFFFFF; /* White */
  border: none;
  padding: 0.5em 1em;
  font-size: 1em;
  cursor: pointer;
}

.close-button:hover {
  background-color: #4C9DFE; /* Accent Blue */
}

/* Accordion */

.accordion {
  background-color: #F7F7F7; /* Light Gray */
  padding: 0;
  border: none;
  cursor: pointer;
}

.accordion-content {
  display: none;
  padding: 1em;
  border-bottom: 1px solid #CCCCCC; /* Light Gray */
}

.accordion-content:last-child {
  border-bottom: none;
}

.accordion:hover {
  background-color: #1A1D23; /* Main Navy */
  color: #FFFFFF; /* White */
}

.accordion:after {
  content: "\2795";
  font-size: 1em;
  float: right;
}

.accordion-content.show {
  display: block;
}

.accordion-content.show + .accordion:after {
  content: "\2796";
}


/* Mobile Navigation */

.mobile-nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF; /* Main Background */
  padding: 1em;
  z-index: 1000;
}

.mobile-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-nav li {
  margin-bottom: 10px;
}

.mobile-nav a {
  color: #1A1D23; /* Main Navy */
  text-decoration: none;
}

.mobile-nav a:hover {
  color: #4C9DFE; /* Accent Blue */
}

/* Submenu label styling */
.submenu-label {
  display: flex;                /* enable flex layout */
  justify-content: space-between; /* space between text and chevron */
  align-items: center;          /* vertically center */
  cursor: pointer;
  padding: 0.5rem 1rem;
  font-weight: 500;
  color:white;
}

/* Chevron icon styling */
.submenu-chevron {
  margin-left: auto;           /* push icon to far right if needed */
  transition: transform 0.3s ease;
  color:white;
}

/* Rotate chevron when submenu is open */
li input[type="checkbox"]:checked + .submenu-label .submenu-chevron {
  transform: rotate(90deg);
}

/* Overlay */

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: none;
}

/* Animations */

.fade-in {
  animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade-out {
  animation: fadeOut 0.5s ease-in-out;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* Utility Classes */

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.mt-1 {
  margin-top: 1em;
}

.mt-2 {
  margin-top: 2em;
}

.mb-1 {
  margin-bottom: 1em;
}

.mb-2 {
  margin-bottom: 2em;
}

.p-1 {
  padding: 1em;
}

.p-2 {
  padding: 2em;
}

.bg-white {
  background-color: #FFFFFF; /* Main Background */
}

.bg-light-gray {
  background-color: #F7F7F7; /* Light Gray */
}

.bg-navy {
  background-color: #1A1D23; /* Main Navy */
}

.bg-accent-blue {
  background-color: #4C9DFE; /* Accent Blue */
}

.color-white {
  color: #FFFFFF; /* White */
}

.color-navy {
  color: #1A1D23; /* Main Navy */
}

.color-accent-blue {
  color: #4C9DFE; /* Accent Blue */
}

.hidden {
  display: none;
}

.show {
  display: block;
}

/* Custom Components */

.custom-button {
  background-color: #1A1D23; /* Main Navy */
  color: #FFFFFF; /* White */
  border: none;
  padding: 0.5em 1em;
  font-size: 1em;
  cursor: pointer;
}

.custom-button:hover {
  background-color: #4C9DFE; /* Accent Blue */
}

.custom-input {
  width: 100%;
  padding: 0.5em;
  margin-bottom: 1em;
  border: 1px solid #CCCCCC; /* Light Gray */
}

.custom-select {
  width: 100%;
  padding: 0.5em;
  margin-bottom: 1em;
  border: 1px solid #CCCCCC; /* Light Gray */
}

.custom-textarea {
  width: 100%;
  padding: 0.5em;
  margin-bottom: 1em;
  border: 1px solid #CCCCCC; /* Light Gray */
}

/* Navigation */

.top-nav {
  position: sticky;
  top: 0;
  z-index: 1000;
  background-color: #1A1D23; /* Main Navy */
  padding: 1em;
  text-align: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.top-nav ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.top-nav li {
  display: inline-block;
  margin-right: 20px;
}

.top-nav a {
  color: #FFFFFF; /* White */
  text-decoration: none;
}

.top-nav a:hover {
  color: #4C9DFE; /* Accent Blue */
}

.top-nav .about-link{
  margin-left: auto;
}
.top-nav .home-link2{
  display:none;
}
.top-nav .logo img{
  width:25px; 
  height:25px; 
  margin-top:-5px; 
  margin-bottom:-8px;
}

.top-nav button {
  background-color: #1A1D23;
}
.top-nav button:hover {
  background-color: #1A1D23;
}

/* Side Navigation */
.aside-toggle {
    display: none;
    transform: scaleX(-1); 
    margin-right:-25px;
  }
.side-nav {
  flex-basis: 260px;
  flex-shrink: 0;
  background-color: #181818; /* Light Gray */
  padding: 1em; 
  box-shadow: 2px 0px 5px rgba(0, 0, 0, 0.1);
  margin-left:10px;
  border-radius:10px;
  height:unset;
   max-height:unset;
}

.side-nav .contact-link2 , .side-nav .about-link2 ,
.side-nav .privacy-link2 ,
.side-nav .pricing-link2 , .side-nav .shop-link2{
  display:none;
}

.side-nav .docs-nav {
  padding: 0;
}

.side-nav .docs-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.side-nav .docs-nav li {
  margin-bottom: 10px; 
}
.side-nav .docs-nav ul li { 
  font-weight:700;
}
.side-nav .docs-nav ul ul li { 
  font-weight:500;
}

.side-nav .docs-nav a {
  color: #CCCCCC; /* Main Navy */
  text-decoration: none;
}

.side-nav .docs-nav a:hover {
  color: #4C9DFE; /* Accent Blue */
}

.side-nav .docs-nav input[type="checkbox"] {
  display: none;
}

.side-nav .docs-nav input[type="checkbox"]:checked + label + ul {
  display: block;
}

.side-nav .docs-nav label {
  cursor: pointer;
}

.side-nav .docs-nav label:hover {
  font-weight:bold;
}

.side-nav .docs-nav ul ul {
  display: none;
  padding-left: 20px;
}

.side-nav .docs-nav ul ul li {
  margin-bottom: 5px;
}

/* Main Content */

.main-content {
  flex-basis: 0;
  flex-grow: 1;
  margin-left: 20px;
  padding: 1em;
  background-color: #FFFFFF; /* Main Background */
}

@media (max-width: 768px) { .main-content { 
  width:calc(100vw- 1em - 2em);
  margin-left:0px;
}}

@media (max-width: 480px) { .main-content {
  width:calc(100vw- 1em - 2em);
  margin-left:0px;
}}

/* Sections */

.section {
  display: none;
}

.section.active {
  display: block;
  background-color: #F7F7F7; /* Light Gray */
  padding: 2em;
}
/* Style the home section */

/* Portfolio Section */


/* Pricing */

/* Shop Section */
/* CKE Editor */
.cke_notification {
  display: none;
}

/* Services */


/* Tags Styles */
 
#portfolio .tags {
  list-style: none;
  padding: 0;
  margin: 0;
}

#portfolio .tags li {
  display: inline-block;
  background-color: #4CAF50;
  color: #fff;
  padding: 5px 10px;
  border-radius: 5px;
  margin-right: 10px;
}

#portfolio .tags li:hover {
  background-color: #3e8e41;
}

#portfolio .tags li:last-child {
  margin-right: 0;
}

/* Screenshot Styles */


#portfolio .screenshot {
  width: 80%;
  max-width: 80%;
  margin: 20px auto;
  border-radius: 10px;
}

#portfolio .screenshots {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 20px;
}

#portfolio .screenshots img {
  width: 45%;
  max-width: 45%;
  margin: 5px;
  border-radius: 5px;
  box-shadow: none;
  opacity: 0.8;
}

#portfolio .screenshots img:hover {
  opacity: 1;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

#portfolio .screenshots img:last-child {
  margin-right: 0;
}

/* Features Styles */


#portfolio .features {
  background-color: #f4f4f4;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#portfolio .features h2 {
  color: #333;
}

#portfolio .features ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#portfolio .features li {
  margin-bottom: 10px;
}

#portfolio .features li:before {
  content: "\2022";
  font-size: 1.5em;
  margin-right: 10px;
}

#portfolio .features li:last-child {
  margin-bottom: 0;
}

/* Feature Grid Styles */


#portfolio .feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

#portfolio .feature {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 20px;
}

#portfolio .feature h3 {
  color: #333;
}

#portfolio .feature p {
  color: #666;
}

#portfolio .feature:last-child {
  margin-bottom: 0;
}

/* Responsive Design */


@media (max-width: 768px) {
  #portfolio .project {
    width: calc(50% - 20px);
    margin-bottom: 10px;
  }
  #portfolio .screenshots img {
    width: 100%;
    max-width: 100%;
    margin: 10px 0;
  }
}

@media (max-width: 480px) {
  #portfolio .project {
    width: 100%;
    margin-bottom: 5px;
  }
  #portfolio .screenshots img {
    margin: 5px 0;
  }
}

/* Style the contact section */
/* Flex Container */

.flex-container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between; 
}

/* Responsive Design */
/* Mobile Landscape or Tablet */
@media only screen and (max-width: 768px) {
  .top-nav .privacy-link {
    display:none;
  }
    .aside-toggle {
    display: block;
  }
  .side-nav{
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
  }
    .side-nav nav{
      background-color: #1A1D23; /* Main Navy */
      padding: 0;
      width: 80%;
      max-width: 300px;
      height: 100%;
      overflow-y: auto;
      box-shadow: 2px 0px 5px rgba(0, 0, 0, 0.1);
    } 
    .side-nav .docs-nav{
      margin-left:-10px; 
      margin-top:-10px; 
      padding:30px
    }
   .side-nav .docs-nav a  {
      color: #FFFFFF; /* White */ 
    }
  
    .side-nav label{
      color:#03A9F4;
    }
    
    .side-nav .docs-nav a:hover {
      color: #1A1D23; /* Main Navy */
    }
  .flex-container {
    flex-direction: column;
  }
  .side-nav {
    flex-basis: 100%;
    margin-bottom: 20px;
  }
  .main-content {
    margin-left: 0;
  }
}
/* Mobile Portrait */
@media only screen and (max-width: 480px) {
  .top-nav .home-link , 
  .top-nav .pricing-link ,  
  .top-nav .shop-link , 
  .top-nav .about-link , 
  .top-nav .privacy-link , 
  .top-nav .contact-link{
    display:none;
  }
  .top-nav .home-link2{
    display:block;
  }
  .aside-toggle {
    display: block;
  }
  .side-nav{
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
  }
    .side-nav nav{
      background-color: #1A1D23; /* Main Navy */
      padding: 0px;
      width: 80%;
      max-width: 300px;
      height: 100%;
      overflow-y: auto;
      box-shadow: 2px 0px 5px rgba(0, 0, 0, 0.1);
    }
    .side-nav .contact-link2 , .side-nav .about-link2 ,
  .side-nav .privacy-link2 ,
   .side-nav .pricing-link2 , .side-nav .shop-link2{
      display:block;
    }
    .side-nav .docs-nav{
      margin-left:-10px; 
      margin-top:-10px; 
      padding:30px
    }
   .side-nav .docs-nav a {
      color: #FFFFFF; /* White */ 
    }

    .side-nav label{
      color:#03A9F4;
    }
    
    .side-nav .docs-nav a:hover {
      color: #1A1D23; /* Main Navy */
    }
  
  .flex-container {
    flex-direction: column;
    align-items: center;
  }
  .side-nav {
    padding: 0.5em;
  }
  .main-content {
    padding: 0.5em;
  }
}

/* Desktop */
@media (min-width: 769px) {
  .side-nav {
    position: sticky;
    top: 30px; /* Adjust based on top nav height */ 
  }
}


.mob-nav{
  display:block; 
  border-radius:0px;
}

@media only screen and (max-width: 480px) {
  .mob-nav{ 
  height:100vh;
  padding:0px; 
  overflow-y: auto;
  margin-left:-10px;
}

.mob-nav .docs-nav{
  margin-left:0px;
  margin-top:0px;
  height:100%;

}
}

/* Typography */

h1 {
  font-size: 2em;
  margin-bottom: 0.5em;
  color: #1A1D23; /* Main Navy */
}

h2 {
  font-size: 1.5em;
  margin-bottom: 0.5em;
  color: #343A40; /* Secondary Navy */
}

p {
  margin-bottom: 1em;
  color: #6C757D; /* Dark Gray */
}

section li{
  margin-left:16px;
}

/* Top-level: no bullets */
.docs-nav > ul > li {
    list-style: none;
}

.docs-nav > ul > li > ul > li {
    list-style-type: disc;
    margin-left: 20px;
    color: #1f78b4;
}

.docs-nav > ul > li > ul > li > ul > li {
    list-style-type: circle;
    margin-left: 20px;
    color: #1f78b4;
}

.docs-nav > ul > li > ul > li > ul > li > ul > li {
    list-style-type: square;
    margin-left: 20px;
    color: #1f78b4;
}
 
.docs-nav li a {
    text-decoration: none;
    color: #1f78b4;
}

.docs-nav li a:hover {
    text-decoration: underline;
}



/* Odd-level submenus: level 1, 3, 5... */
.docs-nav ul li > .submenu-label {
    color: #4da6ff; /* light blue for primary highlight */
}

/* Even-level submenus: level 2, 4, 6... */
.docs-nav ul li ul li > .submenu-label {
    color: #c0c0c0; /* silver/light gray for contrast */
}

/* Level 3 (nested deeper): odd again */
.docs-nav ul li ul li ul li > .submenu-label {
    color: #4da6ff;
}

/* Level 4 (nested deeper): even again */
.docs-nav ul li ul li ul li ul li > .submenu-label {
    color: #c0c0c0;
}


@media (max-width: 768px)
 { 
  section{
    max-height: calc(100vh - 80px);
    overflow-y: scroll; 
  }
  section[page="sections/home.html"] {
    margin-top: -30px;;
  }
}

@media (max-width: 480px) 
 { 
  section{
    max-height: calc(100vh - 80px);
    overflow-y: scroll; 
  }
  section[page="sections/home.html"] {
    margin-top: -30px;;
  }
}

/* --- Responsive Adjustments --- */
@media (max-width: 768px) {
    .main {
        padding: 15px;
        width:90vw
    } 
}

@media (max-width: 480px) {
    .main {
        padding: 12px;
        width:95vw
    }
  }

  .mst li:nth-child(2n) label{
    background-color: lightgrey;
  }