/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://toolscrush.com/
 Description:  GeneratePress Child Theme for ToolsCrush.
 Author:       Banex Digital
 Author URI:   https://banexdigital.com/
 Template:     generatepress
 Version:      1.0.0
 Text Domain:  generatepress-child
 */

/* 1. Header Logo Sizing Fix */
.logo img, 
.site-logo,
.custom-logo,
.custom-logo-link img {
	height: 42px !important;
	width: auto !important;
	max-height: 42px !important;
	max-width: 168px !important;
}

/* 2. Global Typography Override for Header and Footer */
.header, 
.footer, 
.header *, 
.footer * {
	font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
}

/* 3. Global Underline Reset */
a, a:hover, a:focus, a:active {
	text-decoration: none !important;
}

/* Keep underlines inside the blog post content for readability */
.entry-content a {
	text-decoration: underline !important;
}

/* 4. Bulletproof Footer Link Styles */
.footer a, 
.footer a:visited,
.footer-tool-group a,
.footer-tool-group a:visited,
.footer-col a,
.footer-col a:visited,
.footer-links a,
.footer-links a:visited {
	color: #475569 !important; /* Muted gray text color */
	text-decoration: none !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}

.footer a:hover, 
.footer-tool-group a:hover,
.footer-col a:hover,
.footer-links a:hover {
	color: #4f46e5 !important; /* Indigo hover color */
}

/* Brand column email link styling */
.footer-brand p a,
.footer-brand p a:visited {
	color: #4f46e5 !important;
}
.footer-brand p a:hover {
	text-decoration: underline !important;
}

/* Bottom copyright links styling */
.footer-links a,
.footer-links a:visited {
	color: #64748b !important;
	font-size: 12px !important;
}
.footer-links a:hover {
	color: #4f46e5 !important;
}

/* 5. Footer Headings Reset */
.footer-col h3 {
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	margin-bottom: 16px !important;
}

/* 6. Footer List Alignment Overrides */
.footer-col ul {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.footer-col ul li {
	margin-bottom: 10px !important;
	padding-left: 0 !important;
	list-style: none !important;
}

/* 7. Bulletproof Footer Layout Resets */
.footer {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	height: auto !important;
	background-color: #ffffff !important;
	border-top: 1px solid var(--border-color) !important;
}

.footer-tools {
	display: block !important;
	width: 100% !important;
	background-color: #f8fafc !important;
	padding: 40px 0 32px !important;
}

.footer-tool-grid {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(130px, 1fr)) !important;
	gap: 28px !important;
	align-items: flex-start !important;
}

.footer-brand-grid {
	display: grid !important;
	grid-template-columns: minmax(200px, 1.8fr) repeat(3, minmax(130px, 1fr)) !important;
	gap: 48px !important;
	padding: 48px 0 !important;
	align-items: flex-start !important;
}

.footer-social-bar {
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 16px 28px 20px !important;
	background-color: #ffffff !important;
	border-top: 1px solid var(--border-color) !important;
	gap: 20px !important;
	flex-wrap: wrap !important;
}

.footer-social-links {
	display: flex !important;
	gap: 12px !important;
	align-items: center !important;
}

.footer-bottom {
	background-color: #f8fafc !important;
	border-top: 1px solid var(--border-color) !important;
	padding-top: 16px !important;
	padding-bottom: 16px !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
}

/* Force standard container max-width from static site (only in footer/breadcrumbs) */
.footer-tools .container,
.footer-brand-grid,
.footer-bottom,
.breadcrumb-container .container {
	max-width: 1280px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Responsive Footer Layouts */
@media (max-width: 1024px) {
	.footer-tool-grid {
		grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
	}
	.footer-brand-grid {
		grid-template-columns: minmax(200px, 1.5fr) repeat(2, minmax(130px, 1fr)) !important;
	}
}

@media (max-width: 768px) {
	.footer-tool-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 480px) {
	.footer-tool-grid {
		grid-template-columns: 1fr !important;
	}
	.footer-brand-grid {
		grid-template-columns: 1fr !important;
	}
}

/* 8. Reset Parent Theme Footer Padding & Margin */
.site-footer,
#colophon {
	padding: 0 !important;
	margin: 0 !important;
}

.footer-col ul li {
	margin-bottom: 10px !important;
	padding-left: 0 !important;
	list-style: none !important;
	line-height: 1.35 !important;
}

.footer-col ul li a {
	line-height: 1.35 !important;
}

/* 9. Breadcrumbs Position / Header Padding Fix */
body {
	padding-top: 64px !important;
}

@media (max-width: 768px) {
	body {
		padding-top: 56px !important;
	}
}

/* 10. Social Links Hover Visibility Fix */
.footer-social-links a:hover img {
	filter: none !important;
}

.footer-social-links a:hover .social-linkedin-mark {
	color: #ffffff !important;
}

/* 11. Banex Digital Link Color Override */
.footer-bottom a[href*="banexdigital.com"] {
	color: #4f46e5 !important;
	font-weight: 600 !important;
}
.footer-bottom a[href*="banexdigital.com"]:hover {
	text-decoration: underline !important;
}

/* 12. Blog Listing & Single Blog Post Page Styling Refinements */

/* Dynamic Centered Grid and Auto-fit for Blog Grid */
.blog-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
	gap: 28px !important;
	justify-content: center !important;
}

/* Hero gradient background for listing */
.blog-list-hero {
	background: radial-gradient(circle at 50% 120%, rgba(79, 70, 229, 0.05), transparent 60%), #ffffff !important;
	border-bottom: 1px solid var(--border-color) !important;
	padding: 56px 0 44px !important;
}

/* Premium Blog Card Spacing & Styling Reset */
.blog-card {
	background-color: #ffffff !important;
	border: 1px solid var(--border-color) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03) !important;
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.blog-card:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.04) !important;
	border-color: rgba(79, 70, 229, 0.25) !important;
}

.blog-card-media {
	width: 100% !important;
	aspect-ratio: 16 / 9 !important;
	background-color: #f1f5f9 !important;
	display: block !important;
	overflow: hidden !important;
	border-bottom: 1px solid var(--border-color) !important;
}

.blog-card-media img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	transition: transform 0.3s ease !important;
}

.blog-card:hover .blog-card-media img {
	transform: scale(1.04) !important;
}

.blog-content {
	padding: 24px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	flex-grow: 1 !important;
}

.blog-meta {
	font-size: 13px !important;
	color: #64748b !important;
	font-weight: 500 !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-bottom: 4px !important;
}

.blog-title {
	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: #0f172a !important;
	margin-bottom: 4px !important;
}

.blog-title a {
	color: #0f172a !important;
	transition: color 0.18s !important;
}

.blog-title a:hover {
	color: #4f46e5 !important;
}

.blog-excerpt {
	font-size: 14px !important;
	color: #475569 !important;
	line-height: 1.6 !important;
	margin-bottom: 12px !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

.blog-read-more {
	margin-top: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	color: #4f46e5 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	transition: gap 0.2s ease !important;
}

.blog-card:hover .blog-read-more {
	gap: 10px !important;
}

/* Single Post Breadcrumbs Styling */
.single .breadcrumb {
	justify-content: flex-start !important;
	margin-bottom: 0 !important;
}

/* Breadcrumb Container Alignment & Background */
.breadcrumb-container {
	background-color: #f8fafc !important; /* Light gray body color matching tools */
	border-bottom: 1px solid #e2e8f0 !important; /* Divider border */
	width: 100% !important;
	display: block !important;
	height: 42px !important;
	box-sizing: border-box !important;
}

.breadcrumb-container .container {
	height: 100% !important;
	display: flex !important;
	align-items: center !important; /* Vertically center the breadcrumb links */
}

.breadcrumb-container .breadcrumb {
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
}

/* Reduce gap between breadcrumb and category/header on article page */
.single main.container {
	padding-top: 8px !important;
}

.single .tool-page-header {
	margin-top: 0 !important;
}

/* Premium Article Header styling */
.single .entry-header {
	text-align: center !important;
	margin-bottom: 24px !important;
	margin-top: 0 !important;
}

.article-kicker {
	background-color: rgba(79, 70, 229, 0.08) !important;
	color: #4f46e5 !important;
	padding: 4px 12px !important;
	border-radius: 99px !important;
	display: inline-block !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	margin-bottom: 14px !important;
}

.article-meta {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 12px !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	margin-top: 10px !important;
	margin-bottom: 24px !important;
}

/* Sleek Hero Image Container and Cover */
.article-hero {
	margin: 28px 0 !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05) !important;
	border: 1px solid var(--border-color) !important;
}

.article-featured-image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-height: 440px !important;
	object-fit: cover !important;
}

/* Article Body Typography for Readability */
.entry-content p {
	font-size: 16px !important;
	line-height: 1.8 !important;
	color: #334155 !important;
	margin-bottom: 24px !important;
}

.entry-content h2 {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin-top: 40px !important;
	margin-bottom: 16px !important;
	letter-spacing: -0.4px !important;
	line-height: 1.3 !important;
}

.entry-content h3 {
	font-size: 19px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	margin-top: 32px !important;
	margin-bottom: 12px !important;
	line-height: 1.3 !important;
}

.entry-content blockquote {
	border-left: 4px solid #4f46e5 !important;
	padding: 12px 20px !important;
	margin: 28px 0 !important;
	background-color: #f8fafc !important;
	border-radius: 0 8px 8px 0 !important;
	font-style: italic !important;
	color: #475569 !important;
}

.entry-content blockquote p {
	margin-bottom: 0 !important;
	font-size: 16px !important;
}

/* Pill-style Share Buttons */
.article-share {
	margin-top: 48px !important;
	padding-top: 24px !important;
	border-top: 1px solid var(--border-color) !important;
}

.share-buttons {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
}

.share-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 18px !important;
	border-radius: 99px !important;
	border: 1px solid var(--border-color) !important;
	color: #475569 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	background-color: #ffffff !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
	transition: all 0.2s ease !important;
}

.share-button:hover {
	color: #4f46e5 !important;
	border-color: #4f46e5 !important;
	background-color: #f8fafc !important;
	transform: translateY(-1px) !important;
}

/* Sleek Article Nav Cards */
.article-nav {
	margin-top: 36px !important;
	padding-top: 24px !important;
	border-top: 1px solid var(--border-color) !important;
	display: flex !important;
	justify-content: space-between !important;
	gap: 16px !important;
}

.article-nav a {
	display: inline-flex !important;
	align-items: center !important;
	padding: 10px 18px !important;
	border-radius: 8px !important;
	background-color: #ffffff !important;
	border: 1px solid var(--border-color) !important;
	color: #475569 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
	transition: all 0.2s ease !important;
}

.article-nav a:hover {
	color: #4f46e5 !important;
	border-color: #4f46e5 !important;
	background-color: #f8fafc !important;
	transform: translateY(-1px) !important;
}


