/*
Theme Name:   Bal Geetanjali Theme
Theme URI:    https://balgeetanjali.edu.np
Description:  Block theme for Bal Geetanjali School, based on the index2 HTML template.
Author:       Vincio Tech
Version:      1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain:  bal-geetanjali-theme
*/

:root {
	--mainColor: #1b3691;
	--accentColor: #ec1f26;
	--goldColor: #f5b301;
	--secounderyColor: #f0f4fa;
	--paragraphColor: #5b677a;
	--paragraphColorSecond: #b4c0d3;
	--whiteColor: #ffffff;
	--blackColor: #0a1835;
	--fontSize: 16px;
	--transition: .4s ease-in-out;
}

.skip-link {
	position: absolute;
	top: -100px;
	left: 0;
	z-index: 100000;
	padding: 12px 20px;
	background: #000;
	color: #fff;
	text-decoration: none;
}

.skip-link:focus {
	top: 0;
}

.wp-site-blocks > *,
.site-main > *,
.wp-block-post-content > *,
.entry-content > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.wp-block-post-content,
.entry-content,
.site-main {
	max-width: none;
}

/* ==================================================
   Bal Geetanjali Logo & Brand Sizing
   ================================================== */
.navbar-brand img,
.navbar-area .navbar .navbar-brand img {
	max-height: 72px;
	width: auto;
	object-fit: contain;
	transition: transform 0.3s ease;
	display: inline-block;
	vertical-align: middle;
}

.navbar-brand:hover img {
	transform: scale(1.04);
}

.responsive-navbar .offcanvas-header .logo img,
.clgun.offcanvas .offcanvas-header .logo img {
	max-height: 65px;
	width: auto;
	object-fit: contain;
}

.footer-top-info .content .image {
	position: relative;
	top: -45px;
	margin-bottom: -20px;
}

.footer-top-info .content .image img {
	max-height: 120px;
	width: auto;
	object-fit: contain;
	filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.45));
	background: #ffffff;
	border-radius: 50%;
	padding: 6px;
}

/* ==================================================
   Header Colors & Accents
   ================================================== */
.top-area {
	background-color: #f7f9fd;
	border-bottom: 1px solid #e2e8f0;
}

.top-left-items ul li i,
.top-right-items ul li i {
	color: var(--accentColor);
}

.top-left-items ul li a:hover,
.top-right-items ul li a:hover {
	color: var(--mainColor);
}

.navbar-area {
	border-bottom: 2px solid rgba(27, 54, 145, 0.08);
}

.navbar-area .navbar .navbar-nav > .nav-item > .nav-link {
	font-weight: 500;
	color: var(--blackColor);
}

.navbar-area .navbar .navbar-nav > .nav-item > .nav-link.active,
.navbar-area .navbar .navbar-nav > .nav-item > .nav-link:hover {
	color: var(--mainColor);
}

.navbar-area .navbar .others-option .option-item .nav-search .search-button {
	color: var(--mainColor);
	border: 1px solid #e2e8f0;
	border-radius: 50%;
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.navbar-area .navbar .others-option .option-item .nav-search .search-button:hover {
	background-color: var(--mainColor);
	color: #ffffff;
	border-color: var(--mainColor);
}

/* Buttons */
.default-btn {
	background-color: var(--accentColor);
	color: #ffffff;
	box-shadow: 0 4px 14px rgba(236, 31, 38, 0.25);
	transition: all 0.3s ease;
}

.default-btn:hover {
	background-color: var(--mainColor) !important;
	color: #ffffff !important;
	box-shadow: 0 6px 18px rgba(27, 54, 145, 0.3);
	transform: translateY(-2px);
}

/* ==================================================
   Footer Colors & Accents
   ================================================== */
.footer-area {
	background-color: var(--blackColor);
}

.footer-top-info {
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-top-info .content p {
	color: #cbd5e1;
}

.footer-top-info .content ul li a {
	background-color: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.15);
	transition: all 0.3s ease;
}

.footer-top-info .content ul li a:hover {
	background-color: var(--accentColor);
	border-color: var(--accentColor);
	color: #ffffff;
	transform: translateY(-3px);
}

.footer-widget-info .footer-widget h4 {
	color: #ffffff;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 22px;
}

.footer-widget-info .footer-widget h4::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 38px;
	height: 3px;
	background-color: var(--accentColor);
	border-radius: 2px;
}

.footer-widget-info .footer-widget ul li a {
	color: #cbd5e1;
	transition: all 0.25s ease;
}

.footer-widget-info .footer-widget ul li a:hover {
	color: var(--goldColor);
	padding-left: 5px;
}

.footer-widget-info .footer-widget ul li a i {
	color: var(--accentColor);
}

.copy-right-area {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.copy-right-area .cpr-left p {
	color: #94a3b8;
}

.copy-right-area .cpr-left p a,
.copy-right-area .cpr-right ul li a:hover {
	color: var(--goldColor);
}

.copy-right-area .cpr-right ul li a {
	color: #94a3b8;
}

/* ==================================================
   Offcanvas & Search Panel
   ================================================== */
.clgun .offcanvas-body .search-box .searchwrapper .searchbox .btn {
	background-color: var(--accentColor);
	color: #ffffff;
	transition: background-color 0.3s ease;
}

.clgun .offcanvas-body .search-box .searchwrapper .searchbox .btn:hover {
	background-color: var(--mainColor);
	color: #ffffff;
}

.clgun .offcanvas-body .contact-info li i {
	color: var(--accentColor);
}

.clgun .offcanvas-body .social-profile li a:hover {
	background-color: var(--mainColor);
	color: #ffffff;
}

.responsive-navbar.offcanvas .accordion-button:not(.collapsed) {
	color: var(--mainColor);
	background-color: var(--secounderyColor);
}

.responsive-navbar.offcanvas .accordion-link.active {
	color: var(--accentColor);
}

/* ==================================================
   Scroll to Top
   ================================================== */
.go-top {
	background-color: var(--accentColor);
	color: #ffffff;
	border-radius: 50%;
	transition: all 0.3s ease;
}

.go-top:hover {
	background-color: var(--mainColor);
	color: #ffffff;
	transform: translateY(-4px);
}

/* ==================================================
   Uniform Image Sizing for News, Blogs & Events
   ================================================== */

/* News and Blog Cards */
.blog-single-card {
	display: flex !important;
	flex-direction: column !important;
	height: calc(100% - 30px) !important;
	background: #ffffff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.blog-single-card .image,
.vincio-news-block .blog-single-card .image {
	width: 100% !important;
	height: 250px !important;
	max-height: 250px !important;
	position: relative !important;
	overflow: hidden !important;
	background: #eaeff5;
	flex-shrink: 0 !important;
}

.blog-single-card .image a,
.vincio-news-block .blog-single-card .image a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

.blog-single-card .image img,
.vincio-news-block .blog-single-card .image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
	transition: transform 0.4s ease;
}

.blog-single-card:hover .image img {
	transform: scale(1.05);
}

.blog-single-card .content {
	display: flex !important;
	flex-direction: column !important;
	flex-grow: 1 !important;
	padding: 25px !important;
}

.blog-single-card .content h3 {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	line-height: 1.4;
	font-size: 20px;
	margin-bottom: 15px;
}

.blog-single-card .content .butn {
	margin-top: auto !important;
}

/* Events Area (mini-events & event-list) */
.event .content {
	display: flex !important;
	align-items: stretch !important;
	margin-bottom: 25px !important;
	background: #ffffff !important;
	border-radius: 10px !important;
	overflow: hidden !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
}

.event .content .image,
.events-area-2 .event .image {
	width: 240px !important;
	min-width: 240px !important;
	max-width: 240px !important;
	height: 190px !important;
	position: relative !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
	background: #eaeff5;
}

.event.lg .content .image,
.events-area-2 .event.lg .image {
	width: 48% !important;
	min-width: 48% !important;
	max-width: 48% !important;
	height: 330px !important;
	max-height: 330px !important;
	position: relative !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
	background: #eaeff5;
}

.event .content .image img,
.events-area-2 .event .image img,
.event.lg .content .image img,
.events-area-2 .event.lg .image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
	transition: transform 0.4s ease;
}

.event:hover .content .image img {
	transform: scale(1.05);
}

@media only screen and (max-width: 767px) {
	.event .content {
		flex-direction: column !important;
	}
	.event .content .image,
	.event.lg .content .image,
	.events-area-2 .event .image,
	.events-area-2 .event.lg .image {
		width: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
		height: 220px !important;
	}
	.event .content .text,
	.recent-post .event .content .text {
		width: 100% !important;
		padding: 20px 15px !important;
	}
}

/* Notice Board Urgent Ticker White Font */
.notice-urgent-ticker,
.notice-urgent-ticker p,
.notice-urgent-ticker .ticker-text {
	color: #ffffff !important;
}

.notice-urgent-ticker .pulse-badge {
	background-color: #ffffff !important;
	color: #d32f2f !important;
}

.notice-urgent-ticker .pulse-badge i {
	color: #d32f2f !important;
}

