/*
Theme Name: Legalfist Article
Theme URI: 
Author: 
Author URI: 
Description: A custom WordPress theme.
Version: 1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: legalfist-article
*/

body {
	font-family: 'Noto Sans Bengali', sans-serif;
	color: #2D2D2D;
	line-height: 1.6;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6,
.font-display,
.elementor-heading-title,
.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6 {
	font-family: 'Hind Siliguri', sans-serif !important;
	line-height: 1.6 !important;
	padding-top: 0.1em;
	padding-bottom: 0.1em;
}

/* Custom scrollbar for topic navigation */
.scrollbar-hide::-webkit-scrollbar {
	display: none;
}

.scrollbar-hide {
	-ms-overflow-style: none;
	scrollbar-width: none;
}

/* WP overrides mapping to Tailwind properties */
.custom-logo-link {
	display: flex;
}

.custom-logo {
	height: 2.5rem;
	/* Equivalent to h-10 */
	width: auto;
	object-fit: contain;
}

.main-navigation ul {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	/* Equivalent to gap-6 */
	list-style: none;
	margin: 0;
	padding: 0;
}

.main-navigation a {
	color: #2D2D2D;
	/* text-text-main */
	transition: color 0.3s;
	text-decoration: none;
}

.main-navigation a:hover {
	color: #C5A059;
	/* text-accent */
}

.main-navigation .current-menu-item>a,
.main-navigation .current_page_item>a {
	color: #251460;
	/* text-primary */
}

/* Mobile Sidebar Menu Styles */
.mobile-navigation ul {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.mobile-navigation a {
	display: block;
	padding: 0.5rem 0;
	color: #2D2D2D;
	transition: color 0.3s;
	text-decoration: none;
	border-bottom: 1px solid rgba(37, 20, 96, 0.05);
}

.mobile-navigation a:hover {
	color: #C5A059;
}

.mobile-navigation .current-menu-item>a,
.mobile-navigation .current_page_item>a {
	color: #251460;
	font-weight: 600;
}

/* Default Structure Layout */
.site-container {
	max-width: 1218px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

/* Custom Tailwind Overrides */
.text-accent {
	color: #C5A059 !important;
}

.card-sharpen {
	border-radius: 0.125rem !important;
}

.section-accent {
	border-left: 6px solid #A68648;
}

/* Override Elementor Defaults */
body h1:not(.text-primary):not(.text-white):not(.text-accent),
body h2:not(.text-primary):not(.text-white):not(.text-accent),
body h3:not(.text-primary):not(.text-white):not(.text-accent),
body h4:not(.text-primary):not(.text-white):not(.text-accent),
body h5:not(.text-primary):not(.text-white):not(.text-accent),
body h6:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h1:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h2:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h3:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h4:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h5:not(.text-primary):not(.text-white):not(.text-accent),
.elementor-kit-122 h6:not(.text-primary):not(.text-white):not(.text-accent) {
	color: #2D2D2D !important;
}

h1.text-primary,
h2.text-primary,
h3.text-primary,
h4.text-primary,
h5.text-primary,
h6.text-primary {
	color: #251460 !important;
}

h1.text-white,
h2.text-white,
h3.text-white,
h4.text-white,
h5.text-white,
h6.text-white {
	color: #ffffff !important;
}

h1.text-accent,
h2.text-accent,
h3.text-accent,
h4.text-accent,
h5.text-accent,
h6.text-accent {
	color: #C5A059 !important;
}

/* Desktop Navigation Dropdowns */
.main-navigation ul li {
	position: relative;
}

.main-navigation ul .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 100;
	background: #fff;
	min-width: 220px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
	border-radius: 4px;
	padding: 0.75rem 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: all 0.3s ease;
	display: block; /* Overrides default flex if any */
}

/* Second level alignment */
.main-navigation ul li:hover > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.main-navigation ul .sub-menu li {
	width: 100%;
}

.main-navigation ul .sub-menu a {
	display: block;
	padding: 0.6rem 1.5rem;
	font-size: 0.85rem;
	color: #2D2D2D;
	border: none;
	width: 100%;
}

.main-navigation ul .sub-menu a:hover {
	background: rgba(37, 20, 96, 0.05);
	color: #251460;
}

/* Third level (sub-sub-menu) */
.main-navigation ul .sub-menu .sub-menu {
	top: 0;
	left: 100%;
	margin-top: -0.75rem;
}

/* Indicator for sub-menus */
.menu-item-has-children > a::after {
	content: '\e313'; /* Material arrow_drop_down */
	font-family: 'Material Symbols Outlined';
	font-size: 18px;
	vertical-align: middle;
	margin-left: 2px;
	opacity: 0.6;
}

/* Mobile Sidebar Sub-menu Styles */
.mobile-navigation .sub-menu {
	display: none;
	padding-left: 1rem;
	margin-top: 0.25rem;
	border-left: 1px solid rgba(37, 20, 96, 0.1);
}

.mobile-navigation .sub-menu.toggled-on {
	display: block;
}

.mobile-navigation .menu-item-has-children > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mobile-navigation .dropdown-toggle {
	background: none;
	border: none;
	padding: 0.5rem;
	cursor: pointer;
	color: #251460;
	display: flex;
	align-items: center;
}

.mobile-navigation .dropdown-toggle .material-symbols-outlined {
	transition: transform 0.3s ease;
}

.mobile-navigation .dropdown-toggle.toggled-on .material-symbols-outlined {
	transform: rotate(180deg);
}