/**
Theme Name: ai.youspeakplus
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ai-youspeakplus
Template: astra
*/

/* 🔧 BASE MENU STYLING */
.ysp-main-nav,
.ysp-spec-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 20px;
  align-items: center;
}

.ysp-main-nav li,
.ysp-spec-nav li {
  position: relative;
}

.ysp-main-nav li a,
.ysp-spec-nav li a {
  text-decoration: none;
  color: #ffffff;
  font-weight: 500;
  padding: 8px 12px;
  display: block;
  transition: background 0.3s ease;
}

.ysp-main-nav li a:hover,
.ysp-spec-nav li a:hover {
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
}

/* 🔽 DROPDOWN STYLING */
.ysp-main-nav li ul,
.ysp-spec-nav li ul {
  display: none ;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #0e6674;
  border: none;
  padding: 8px 0;
  border-radius: 4px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
  min-width: 160px;
  z-index: 1000;
}

.ysp-main-nav li:hover > ul,
.ysp-spec-nav li:hover > ul {
  display: block;
}

.ysp-main-nav li ul li a,
.ysp-spec-nav li ul li a {
  color: #ffffff;
  font-weight: 400;
  padding: 10px 16px;
  white-space: nowrap;
  display: block;
}

.ysp-main-nav li ul li a:hover,
.ysp-spec-nav li ul li a:hover {
  background-color: #084c5e;
  color: #facc15;
}

/* 🔽 CARET INDICATOR */
.ysp-main-nav li.menu-item-has-children > a::after,
.ysp-spec-nav li.menu-item-has-children > a::after {
  content: " ▼";
  font-size: 10px;
  margin-left: 4px;
}

/* 🍔 MOBILE MENU TOGGLE */
.menu-toggle {
  display: none ;
  background: none;
  border: none;
  color: #ffffff;
  font-size: 24px;
  cursor: pointer;
}

/* 📱 MOBILE-ONLY + DESKTOP-ONLY VISIBILITY */
.desktop-only {
  display: flex;
}
.mobile-only {
  display: none;
}

/* 📱 MOBILE STYLES */
@media (max-width: 991px) {
  .desktop-only {
    display: none !important;
  }

  .mobile-only {
    display: block !important;
  }

  .menu-toggle {
    display: block;
  }

  .mobile-nav-wrapper {
    display: none !important;
    flex-direction: column;
    width: 100%;
    margin-top: 10px;
  }

  .mobile-nav-wrapper.active {
    display: flex;
  }

  .ysp-main-nav,
  .ysp-spec-nav {
    flex-direction: column;
    gap: 10px;
  }

  .ysp-main-nav li a,
  .ysp-spec-nav li a {
    padding: 10px 14px;
    border-radius: 4px;
    background-color: #1c5f73;
    color: #fff;
  }

  .ysp-main-nav li ul,
  .ysp-spec-nav li ul {
    position: static;
    display: none !important;
    background: #084c5e;
    padding-left: 20px;
  }

  .ysp-main-nav li:hover > ul,
  .ysp-spec-nav li:hover > ul {
    display: block;
  }
}

/* 🧱 LAYOUT HELPER */
.header-inner {
  white-space: nowrap;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.menu-toggle {
  z-index: 9999; /* ensures it's clickable */
  position: relative; /* just in case */
}

.mobile-nav-wrapper {
  z-index: 9998;
}