/* Astra + ULBS — Professional University Theme */

/* Clean navy header */
.ulbs-astra-theme .site-header,
.ulbs-astra-theme .main-header-bar,
.ulbs-astra-theme #masthead {
	background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 100%) !important;
	border-bottom: 3px solid #2563eb !important;
	box-shadow: 0 2px 16px rgba(15, 23, 42, 0.15);
}

.ulbs-astra-theme .main-header-menu > .menu-item > .menu-link,
.ulbs-astra-theme .site-title a,
.ulbs-astra-theme .site-description,
.ulbs-astra-theme .ast-site-identity .site-title a {
	color: #ffffff !important;
}

.ulbs-astra-theme .main-header-menu > .menu-item > .menu-link {
	padding: 10px 16px !important;
	font-weight: 600 !important;
	font-family: 'Plus Jakarta Sans', Inter, sans-serif !important;
	border-radius: 8px !important;
	transition: background 0.2s ease, color 0.2s ease;
}

.ulbs-astra-theme .main-header-menu > .menu-item > .menu-link:hover,
.ulbs-astra-theme .main-header-menu > .menu-item.current-menu-item > .menu-link,
.ulbs-astra-theme .main-header-menu > .menu-item.current-menu-ancestor > .menu-link {
	background: rgba(37, 99, 235, 0.25) !important;
	color: #ffffff !important;
}

/* Layout */
.ulbs-astra-theme.ast-plain-container .site-content > .ast-container,
.ulbs-astra-theme.ast-page-builder-template .site-content > .ast-container {
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.ulbs-astra-theme .site-content {
	padding-top: 0 !important;
	background: #f0f4f8 !important;
}

.ulbs-astra-theme .entry-content {
	margin-top: 0 !important;
	color: #0f172a;
}

.ulbs-astra-theme,
.ulbs-astra-theme.ast-plain-container,
.ulbs-astra-theme.ast-page-builder-template,
.ulbs-astra-theme #page,
.ulbs-astra-theme .site {
	background: #f0f4f8 !important;
}

.ulbs-astra-theme .ast-single-entry-banner,
.ulbs-astra-theme .entry-header {
	display: none;
}

/* Professional footer */
.ulbs-astra-theme .site-footer,
.ulbs-astra-theme .ast-small-footer,
.ulbs-astra-theme .site-below-footer-wrap {
	background: #0f172a !important;
	color: #cbd5e1 !important;
	border-top: none !important;
}

.ulbs-astra-theme .site-footer a,
.ulbs-astra-theme .ast-small-footer a {
	color: #93c5fd !important;
}

.ulbs-astra-theme .site-footer a:hover {
	color: #ffffff !important;
}

.ulbs-astra-theme .ast-scroll-top-icon,
.ulbs-astra-theme #ast-scroll-top {
	background: #2563eb !important;
	border-radius: 8px !important;
}

.ulbs-astra-theme .site-title {
	font-weight: 700 !important;
	font-size: 1.1rem !important;
}

.ulbs-astra-theme .site-description {
	font-size: 0.78rem !important;
	color: #94a3b8 !important;
}

.ulbs-astra-theme .ast-mobile-popup-drawer .ast-mobile-popup-content {
	background: #0f172a !important;
}

.ulbs-astra-theme .ast-mobile-popup-drawer .menu-link {
	color: #e2e8f0 !important;
}

/* Text selection — visible on Astra areas */
body.ulbs-astra-theme ::selection,
body.ulbs-astra-theme *::selection {
	background-color: #2563eb !important;
	color: #ffffff !important;
}

body.ulbs-astra-theme ::-moz-selection,
body.ulbs-astra-theme *::-moz-selection {
	background-color: #2563eb !important;
	color: #ffffff !important;
}

/* Ensure form fields stay readable inside Astra */
.ulbs-astra-theme .ulbs-form input,
.ulbs-astra-theme .ulbs-form select,
.ulbs-astra-theme .ulbs-form textarea,
.ulbs-astra-theme .ulbs-auth-card input,
.ulbs-astra-theme .ulbs-auth-card select,
.ulbs-astra-theme .ulbs-auth-card textarea {
	color: #0f172a !important;
	background-color: #ffffff !important;
	-webkit-text-fill-color: #0f172a !important;
}

.ulbs-astra-theme .ulbs-form select option {
	color: #0f172a !important;
	background: #ffffff !important;
}

/* Elementor + booking form selects */
.elementor-widget-shortcode .ulbs-select-field,
.elementor .ulbs-select-field {
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	background: transparent !important;
}

.elementor-widget-shortcode .ulbs-select-display,
.elementor .ulbs-select-display {
	color: #0f172a !important;
	-webkit-text-fill-color: #0f172a !important;
}

.elementor-widget-shortcode .ulbs-select-display.is-placeholder,
.elementor .ulbs-select-display.is-placeholder {
	color: #64748b !important;
	-webkit-text-fill-color: #64748b !important;
}

.elementor-page .site-content {
	background: #f0f4f8 !important;
}

@media (max-width: 921px) {
	.ulbs-astra-theme .main-header-bar {
		padding: 8px 0;
	}
}
