/* ==========================================================
   Swastha360 Nav CSS
   File: wp-content/plugins/swastha360-engine/assets/s360-nav.css
   ========================================================== */

:root {
  --s360g:  #1b3f2f;
  --s360gm: #2d6647;
  --s360gl: #f4faf6;
  --s360gd: #e2ddd4;
  --s360au: #c49a2e;
  --s360wa: #25d366;
  --s360sh: 0 8px 32px rgba(0,0,0,.12);
}

/* ── CTA Buttons ────────────────────────────────────────── */
#s360CTAWrap {
  display: flex !important;
  align-items: center;
  gap: 10px;
  margin-left: 16px;
  flex-shrink: 0;
}

.s360-wa-btn {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  color: var(--s360wa) !important;
  border: 1.5px solid var(--s360wa) !important;
  border-radius: 8px;
  text-decoration: none !important;
  transition: background .18s, color .18s;
  white-space: nowrap;
  line-height: 1.4;
  background: transparent;
}
.s360-wa-btn:hover {
  background: var(--s360wa) !important;
  color: #fff !important;
}
.s360-wa-btn svg { flex-shrink: 0; }
.s360-wa-btn span { display: inline; }

.s360-book-btn {
  display: inline-flex !important;
  align-items: center;
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 600;
  color: #fff !important;
  background: var(--s360g) !important;
  border-radius: 8px;
  text-decoration: none !important;
  transition: background .18s, transform .15s;
  white-space: nowrap;
  line-height: 1.4;
  border: none !important;
}
.s360-book-btn:hover {
  background: var(--s360gm) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

/* ── Mega Menu ──────────────────────────────────────────── */
.s360-mega-wrap {
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(-6px) !important;
  width: 640px;
  background: #fff;
  border: 1px solid var(--s360gd);
  border-radius: 14px;
  box-shadow: var(--s360sh);
  z-index: 99999 !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .22s, transform .22s, visibility .22s;
  display: block !important;
}
.s360-mega-wrap.s360-mega-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

.s360-mega-inner {
  display: grid;
  grid-template-columns: 1fr 220px;
}
.s360-mega-left  { padding: 22px; }
.s360-mega-right {
  padding: 22px;
  border-left: 1px solid var(--s360gd);
  background: var(--s360gl);
  border-radius: 0 14px 14px 0;
}

.s360-mega-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #6b7060;
  margin-bottom: 10px;
  display: block;
}
.s360-mega-cat {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--s360g);
  opacity: .6;
  margin: 10px 0 3px;
  display: block;
}
.s360-mega-item {
  display: block !important;
  padding: 6px 10px;
  font-size: 13px;
  color: #1a1a1a !important;
  text-decoration: none !important;
  border-radius: 6px;
  transition: background .15s, color .15s;
  margin-bottom: 1px;
}
.s360-mega-item:hover {
  background: var(--s360gl) !important;
  color: var(--s360g) !important;
}
.s360-mega-all {
  display: inline-block !important;
  margin-top: 12px;
  font-size: 13px;
  font-weight: 600;
  color: var(--s360g) !important;
  text-decoration: none !important;
}
.s360-mega-all:hover { text-decoration: underline !important; }

.s360-mega-quick {
  display: flex !important;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  color: #1a1a1a !important;
  text-decoration: none !important;
  border-radius: 6px;
  margin-bottom: 2px;
  transition: background .15s;
}
.s360-mega-quick:hover { background: rgba(0,0,0,.04); }

.s360-mega-promo {
  margin-top: 14px;
  background: var(--s360g);
  border-radius: 10px;
  padding: 14px;
}
.s360-promo-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--s360au);
  margin-bottom: 6px;
}
.s360-mega-promo p {
  font-size: 12px;
  color: rgba(255,255,255,.75);
  line-height: 1.5;
  margin-bottom: 10px;
}
.s360-promo-btn {
  display: block !important;
  text-align: center;
  background: var(--s360au) !important;
  color: var(--s360g) !important;
  font-size: 12px;
  font-weight: 700;
  padding: 8px;
  border-radius: 6px;
  text-decoration: none !important;
  transition: background .18s;
}
.s360-promo-btn:hover { background: #d4a832 !important; }

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 1100px) {
  .s360-wa-btn span { display: none; }
  .s360-wa-btn      { padding: 8px 10px; }
}
@media (max-width: 768px) {
  #s360CTAWrap  { display: none !important; }
  .s360-mega-wrap { display: none !important; }
}