/*
 Theme Name: Astra Child
 Theme URI: https://ideas-create.com
 Description: Child theme for IdeasCreate homepage customizations.
 Author: IdeasCreate
 Template: astra
 Version: 1.0.0
 Text Domain: astra-child
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

/* ===================================
   Dark Theme - Global Styles
   =================================== */

:root {
	--bg-primary: #0a0e1a;
	--bg-secondary: #0f1420;
	--bg-elevated: #151b2b;
	--cyan: #00d4ff;
	--cyan-light: #5ae4ff;
	--cyan-dark: #0099cc;
	--white: #ffffff;
	--text-primary: #ffffff;
	--text-secondary: #cbd5e0;
	--text-muted: #94a3b8;
}

/* Body Background */
body {
	background-color: #191919 !important;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif !important;
	color: var(--text-primary) !important;
}

/* ===================================
   Header Styling
   =================================== */

/* Main Header - Very Specific Selectors */
header#masthead,
header.site-header,
#masthead.site-header,
header#masthead.site-header {
	background: rgba(10, 14, 26, 0.95) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
}

/* Header Bar */
.main-header-bar,
.ast-header-bar,
.site-header .main-header-bar {
	background: transparent !important;
}

[data-section="section-below-footer-builder"], [data-section="section-below-header-builder"], .site-below-footer-wrap {
	background-color: #0f1420 !important;
}


/* Sticky Header */
.ast-sticky-active header#masthead,
.ast-sticky-active .site-header,
header#masthead.ast-sticky-active {
	background: rgba(10, 14, 26, 0.98) !important;
	backdrop-filter: blur(24px) !important;
	-webkit-backdrop-filter: blur(24px) !important;
}

footer .site-below-footer-wrap {
    background-color: rgb(15, 20, 32) !important;
}

/* Site Title / Logo */
.site-title,
.site-title a,
.site-branding .site-title a,
.site-branding .site-title,
.ast-site-identity .site-title a,
.ast-site-identity .site-title {
	color: #ffffff !important;
	font-weight: 800 !important;
	font-size: 1.5rem !important;
	letter-spacing: -0.02em !important;
	font-family: 'Inter', sans-serif !important;
	text-decoration: none !important;
}

.site-title a:hover,
.site-branding .site-title a:hover,
.ast-site-identity .site-title a:hover {
	color: #5ae4ff !important;
}

/* Navigation Menu Container */
.main-header-bar-navigation,
.site-navigation,
.navigation-accessibility {
	font-family: 'Inter', sans-serif !important;
}

/* Menu Links - All Variations */
.main-header-menu a.menu-link,
.main-header-menu .menu-item a,
.main-header-menu a,
.ast-nav-menu a.menu-link,
.ast-nav-menu .menu-item a,
.ast-nav-menu a,
.main-navigation a.menu-link,
.main-navigation .menu-item a,
.main-navigation a,
#primary-site-navigation a.menu-link,
#primary-site-navigation .menu-item a,
#primary-site-navigation a {
	color: #cbd5e0 !important;
	font-weight: 500 !important;
	font-size: 0.95rem !important;
	transition: color 0.2s ease !important;
	padding: 0.75rem 1.25rem !important;
	text-decoration: none !important;
	position: relative !important;
}

/* Menu Links Hover & Active */
.main-header-menu a.menu-link:hover,
.main-header-menu .menu-item a:hover,
.main-header-menu a:hover,
.ast-nav-menu a.menu-link:hover,
.ast-nav-menu .menu-item a:hover,
.ast-nav-menu a:hover,
.main-navigation a.menu-link:hover,
.main-navigation .menu-item a:hover,
.main-navigation a:hover,
#primary-site-navigation a.menu-link:hover,
#primary-site-navigation .menu-item a:hover,
#primary-site-navigation a:hover,
.main-header-menu .current-menu-item a.menu-link,
.main-header-menu .current-menu-item a,
.ast-nav-menu .current-menu-item a.menu-link,
.ast-nav-menu .current-menu-item a,
.main-navigation .current-menu-item a.menu-link,
.main-navigation .current-menu-item a,
#primary-site-navigation .current-menu-item a.menu-link,
#primary-site-navigation .current-menu-item a {
	color: #ffffff !important;
	background: transparent !important;
}

/* Menu Item Hover Underline Effect */
.main-header-menu .menu-item > a.menu-link::after,
.main-header-menu .menu-item > a::after,
.ast-nav-menu .menu-item > a.menu-link::after,
.ast-nav-menu .menu-item > a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 2px;
	background: #00d4ff;
	transition: width 0.3s ease;
}

.main-header-menu .menu-item > a.menu-link:hover::after,
.main-header-menu .menu-item > a:hover::after,
.ast-nav-menu .menu-item > a.menu-link:hover::after,
.ast-nav-menu .menu-item > a:hover::after,
.main-header-menu .current-menu-item > a.menu-link::after,
.main-header-menu .current-menu-item > a::after,
.ast-nav-menu .current-menu-item > a.menu-link::after,
.ast-nav-menu .current-menu-item > a::after {
	width: 80%;
}

/* Submenu Dropdown */
.main-header-menu .sub-menu,
.ast-nav-menu .sub-menu,
.main-navigation .sub-menu {
	background: rgba(15, 20, 32, 0.98) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 12px !important;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
	padding: 0.5rem 0 !important;
}

.main-header-menu .sub-menu .menu-item a,
.ast-nav-menu .sub-menu .menu-item a,
.main-navigation .sub-menu .menu-item a {
	color: #cbd5e0 !important;
	padding: 0.75rem 1.5rem !important;
}

.main-header-menu .sub-menu .menu-item a:hover,
.ast-nav-menu .sub-menu .menu-item a:hover,
.main-navigation .sub-menu .menu-item a:hover {
	background: rgba(0, 212, 255, 0.1) !important;
	color: #5ae4ff !important;
}

/* Mobile Menu Toggle */
.ast-mobile-menu-buttons .menu-toggle,
.ast-button-wrap .menu-toggle,
button.menu-toggle {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.2) !important;
	background: transparent !important;
}

.ast-mobile-menu-buttons .menu-toggle:hover,
.ast-button-wrap .menu-toggle:hover,
button.menu-toggle:hover {
	color: #5ae4ff !important;
	border-color: #00d4ff !important;
}

/* Mobile Menu */
.ast-mobile-popup-drawer,
.ast-mobile-popup-content,
.ast-mobile-header-content {
	background: rgba(10, 14, 26, 0.98) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
}

.ast-mobile-popup-drawer .main-header-menu .menu-item a,
.ast-mobile-popup-drawer .ast-nav-menu .menu-item a {
	color: #cbd5e0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.ast-mobile-popup-drawer .main-header-menu .menu-item a:hover,
.ast-mobile-popup-drawer .ast-nav-menu .menu-item a:hover {
	color: #5ae4ff !important;
	background: rgba(0, 212, 255, 0.05) !important;
}

/* Mobile Menu Close Button */
.ast-mobile-popup-drawer .ast-mobile-popup-close,
.ast-mobile-popup-drawer .menu-toggle-close {
	color: #ffffff !important;
}

/* ===================================
   Content Area
   =================================== */

.site-content,
#content {
	background: transparent !important;
}

.ast-container,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single {
	background: transparent !important;
}

/* ===================================
   Footer Styling
   =================================== */

/* Main Footer - All Variations */
.site-footer,
.ast-footer-overlay,
footer#colophon,
footer.site-footer,
#colophon.site-footer,
.ast-small-footer,
.ast-small-footer .ast-footer-overlay,
footer#colophon.ast-small-footer,
footer.site-footer.ast-small-footer {
	background: #0f1420 !important;
	background-color: #0f1420 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	color: #cbd5e0 !important;
	padding: 3rem 0 !important;
}

/* Footer Widget Areas */
.footer-widget-area,
.ast-footer-widget-area,
.site-footer .footer-widget-area {
	background: transparent !important;
}

.footer-widget-area .widget,
.ast-footer-widget-area .widget,
.site-footer .widget {
	color: #cbd5e0 !important;
}

.footer-widget-area .widget-title,
.ast-footer-widget-area .widget-title,
.site-footer .widget-title {
	color: #ffffff !important;
	font-weight: 700 !important;
	font-size: 1.125rem !important;
	margin-bottom: 1.5rem !important;
	font-family: 'Inter', sans-serif !important;
}

/* Footer Links */
.site-footer a,
.footer-widget-area a,
.ast-footer-widget-area a,
footer#colophon a,
footer.site-footer a {
	color: #cbd5e0 !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.site-footer a:hover,
.footer-widget-area a:hover,
.ast-footer-widget-area a:hover,
footer#colophon a:hover,
footer.site-footer a:hover {
	color: #5ae4ff !important;
}

/* Footer Menu */
.footer-navigation,
.site-footer .footer-navigation,
.ast-footer-menu {
	font-family: 'Inter', sans-serif !important;
}

.footer-navigation .menu-item a,
.site-footer .footer-navigation .menu-item a,
.ast-footer-menu .menu-item a {
	color: #cbd5e0 !important;
	font-weight: 500 !important;
	padding: 0.5rem 1rem !important;
	transition: color 0.2s ease !important;
}

.footer-navigation .menu-item a:hover,
.site-footer .footer-navigation .menu-item a:hover,
.ast-footer-menu .menu-item a:hover {
	color: #5ae4ff !important;
}

/* Footer Copyright */
.ast-footer-copyright,
.site-footer .ast-footer-copyright,
.footer-copyright,
.site-footer .footer-copyright {
	color: #94a3b8 !important;
	font-size: 0.9rem !important;
	text-align: center !important;
	padding: 1.5rem 0 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
	margin-top: 2rem !important;
}

/* Footer Social Icons */
.footer-social-icons,
.site-footer .social-icons,
.ast-footer-social-wrap {
	color: #cbd5e0 !important;
}

.footer-social-icons a,
.site-footer .social-icons a,
.ast-footer-social-wrap a {
	color: #cbd5e0 !important;
	transition: all 0.3s ease !important;
}

.footer-social-icons a:hover,
.site-footer .social-icons a:hover,
.ast-footer-social-wrap a:hover {
	color: #5ae4ff !important;
	transform: translateY(-2px) !important;
}

/* Footer Lists */
.footer-widget-area ul,
.ast-footer-widget-area ul,
.site-footer ul {
	list-style: none !important;
	padding-left: 0 !important;
}

.footer-widget-area ul li,
.ast-footer-widget-area ul li,
.site-footer ul li {
	padding: 0.5rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.footer-widget-area ul li:last-child,
.ast-footer-widget-area ul li:last-child,
.site-footer ul li:last-child {
	border-bottom: none !important;
}

/* Footer Text */
.footer-widget-area p,
.ast-footer-widget-area p,
.site-footer p {
	color: #cbd5e0 !important;
	line-height: 1.7 !important;
}

/* Footer Container */
.ast-footer-container,
.site-footer .ast-container,
footer .ast-container,
.ast-small-footer .ast-container {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 2rem !important;
	background: transparent !important;
}

/* Small Footer Sections */
.ast-small-footer-wrap,
.ast-small-footer-section {
	background: transparent !important;
	color: #cbd5e0 !important;
}

.ast-small-footer-section-1,
.ast-small-footer-section-2 {
	color: #cbd5e0 !important;
}

/* Scroll to Top Button */
.scroll-to-top,
.scroll-to-top-arrow,
.ast-scroll-top {
	background: rgba(0, 212, 255, 0.2) !important;
	border: 1px solid rgba(0, 212, 255, 0.4) !important;
	color: #ffffff !important;
	border-radius: 8px !important;
	transition: all 0.3s ease !important;
}

.scroll-to-top:hover,
.scroll-to-top-arrow:hover,
.ast-scroll-top:hover {
	background: rgba(0, 212, 255, 0.3) !important;
	border-color: #00d4ff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 4px 12px rgba(0, 212, 255, 0.3) !important;
}

/* ===================================
   Responsive
   =================================== */

@media (max-width: 768px) {
	.site-title,
	.site-title a {
		font-size: 1.25rem !important;
	}
}
