/* ============================================================================
   Modern Footer Styles - Piximfix Blue & White Premium Design
   Matches header blue color scheme with modern layout and micro-animations
   ============================================================================ */

/* Design System Variables */
:root {
	--footer-container-width: 90%;
	--footer-section-spacing: 4rem;
	--footer-padding: 20px;
	--footer-radius-sm: 8px;
	--footer-radius-md: 12px;
	--footer-radius-lg: 16px;

	/* Colors - Blue & White (Matching Header) */
	--footer-accent: #0c7dfa;
	--footer-accent-soft: #3d9aff;
	--footer-accent-dark: #0560cc;
	--footer-accent-glow: rgba(12, 125, 250, 0.35);
	--footer-gradient: linear-gradient(135deg, var(--footer-accent-soft) 0%, var(--footer-accent) 50%, var(--footer-accent-dark) 100%);
	--footer-bg-primary: #0c7dfa;
	--footer-bg-secondary: #0a6fe0;
	--footer-bg-card: rgba(255, 255, 255, 0.08);
	--footer-bg-card-hover: rgba(255, 255, 255, 0.15);
	--footer-text-primary: #ffffff;
	--footer-text-secondary: rgba(255, 255, 255, 0.85);
	--footer-text-muted: rgba(255, 255, 255, 0.6);
	--footer-border: rgba(255, 255, 255, 0.18);
	--footer-border-accent: rgba(255, 255, 255, 0.3);

	/* Typography */
	--footer-font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
	--footer-font-heading: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	/* Transitions */
	--footer-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	--footer-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
	--footer-transition-bounce: 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

	/* Shadows */
	--footer-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.12);
	--footer-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.18);
	--footer-shadow-glow: 0 0 20px rgba(255, 255, 255, 0.25);
	--footer-shadow-card: 0 4px 24px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(255, 255, 255, 0.1);
}

/* ----------------------------------------------------------------------------
   Footer Widgets Area - Main Content Section
   ---------------------------------------------------------------------------- */
#footer-widgets {
	background: linear-gradient(180deg, #0c7dfa 0%, #0968d6 100%);
	color: #ffffff;
	padding: 70px 0 50px;
	margin-top: 0;
	position: relative;
	overflow: hidden;
	border-top: none;
	font-family: var(--footer-font-primary);
}

/* Animated gradient shimmer at top */
#footer-widgets::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(255, 255, 255, 0.3) 15%,
			rgba(255, 255, 255, 0.7) 30%,
			rgba(255, 255, 255, 0.9) 50%,
			rgba(255, 255, 255, 0.7) 70%,
			rgba(255, 255, 255, 0.3) 85%,
			transparent 100%);
	background-size: 200% 100%;
	animation: footerGradientShift 4s ease-in-out infinite;
	z-index: 2;
}

/* Ambient light orbs */
#footer-widgets::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background:
		radial-gradient(ellipse 600px 400px at 10% 20%, rgba(255, 255, 255, 0.08) 0%, transparent 70%),
		radial-gradient(ellipse 500px 350px at 90% 80%, rgba(255, 255, 255, 0.05) 0%, transparent 70%),
		radial-gradient(ellipse 300px 300px at 50% 50%, rgba(255, 255, 255, 0.03) 0%, transparent 70%);
	pointer-events: none;
	z-index: 0;
}

/* Subtle dot grid pattern */
.footer-widgets-container::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.06) 1px, transparent 0);
	background-size: 32px 32px;
	pointer-events: none;
	z-index: 0;
}

@keyframes footerGradientShift {

	0%,
	100% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}
}

/* Container */
.footer-widgets-container {
	max-width: var(--footer-container-width);
	margin: 0 auto;
	padding: 0 40px;
	position: relative;
	z-index: 1;
}

/* Footer Grid */
.inside-footer-widgets {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: 60px;
	margin: 0;
	align-items: start;
	position: relative;
	z-index: 1;
}

/* Glassmorphism separator between columns */
.inside-footer-widgets>div {
	position: relative;
	padding: 0;
}

.inside-footer-widgets>div:not(:first-child)::before {
	content: '';
	position: absolute;
	left: -30px;
	top: 0;
	bottom: 0;
	width: 1px;
	background: linear-gradient(180deg,
			transparent 0%,
			rgba(255, 255, 255, 0.1) 20%,
			rgba(255, 255, 255, 0.25) 50%,
			rgba(255, 255, 255, 0.1) 80%,
			transparent 100%);
}

/* Footer Column */
.footer-menu-column {
	display: flex;
	flex-direction: column;
}

/* ---- Footer Menu Title Styling ---- */
.footer-menu-title {
	font-family: var(--footer-font-heading);
	font-size: 13px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.7);
	margin: 0 0 24px 0;
	padding: 0;
	letter-spacing: 2.5px;
	line-height: 1;
	text-transform: uppercase;
	transition: color var(--footer-transition);
	display: flex;
	align-items: center;
	gap: 8px;
}

.footer-menu-title a {
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: color var(--footer-transition);
	display: flex;
	align-items: center;
	gap: 8px;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 700;
}

.footer-menu-title a:hover {
	color: #ffffff;
}

/* Footer Menu Icons */
.footer-menu-title .menu-item-icon,
.footer-menu-list .menu-item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 0;
	flex-shrink: 0;
}

.footer-menu-title .menu-item-icon-image img {
	width: 16px;
	height: 16px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: 0.7;
}

.footer-menu-title .menu-item-icon-fa {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.7);
}

.footer-menu-title .menu-item-icon-fa i {
	color: rgba(255, 255, 255, 0.7);
}

.footer-menu-list .menu-item-icon-image img {
	width: 16px;
	height: 16px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: 0.9;
}

.footer-menu-list .menu-item-icon-fa {
	font-size: 14px;
	color: #ffffff;
	opacity: 0.9;
}

.footer-menu-list .menu-item-icon-fa i {
	color: #ffffff;
}

/* ---- Footer Menu List ---- */
.footer-menu-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.footer-menu-list li {
	margin: 0;
	padding: 0;
	line-height: 1.6;
	display: flex;
	align-items: center;
}

.footer-menu-list li::before {
	display: none;
}

/* Footer Menu Links */
.footer-menu-list a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	font-size: 14.5px;
	font-weight: 500;
	line-height: 1.6;
	transition: all var(--footer-transition);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	position: relative;
	padding: 5px 0;
	font-family: var(--footer-font-primary);
}

.footer-menu-list a::after {
	content: '';
	position: absolute;
	width: 0;
	height: 1.5px;
	bottom: 2px;
	left: 0;
	background: rgba(255, 255, 255, 0.7);
	transition: width var(--footer-transition);
	border-radius: 2px;
}

.footer-menu-list a:hover {
	color: #ffffff;
	transform: translateX(3px);
}

.footer-menu-list a:hover::after {
	width: 100%;
}

/* ---- Legacy Widget Support ---- */
.footer-widgets .widget-title {
	font-family: var(--footer-font-heading);
	font-size: 13px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.7);
	margin-bottom: 24px;
	padding: 0;
	letter-spacing: 2.5px;
	line-height: 1;
	border-bottom: none;
	text-transform: uppercase;
}

.footer-widget-1 .widget-title {
	display: none !important;
}

.footer-widgets .widget {
	margin-bottom: 0;
	padding: 0;
	position: relative;
}

.footer-widgets .widget ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-widgets .widget ul li {
	margin-bottom: 2px;
	padding-left: 0;
	line-height: 1.6;
	position: relative;
	transition: transform var(--footer-transition);
}

.footer-widgets .widget ul li:hover {
	transform: translateX(4px);
}

.footer-widgets .widget ul li::before {
	display: none;
}

.footer-widgets .widget ul li:last-child {
	margin-bottom: 0;
}

.footer-widgets .widget a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	transition: all var(--footer-transition);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14.5px;
	line-height: 1.6;
	background: transparent !important;
	background-color: transparent !important;
	font-weight: 500;
	position: relative;
	padding: 5px 0;
	border-radius: 0 !important;
	font-family: var(--footer-font-primary);
}

/* Footer Widget Menu Icons */
.footer-widgets .widget .menu-item-icon,
.footer-widgets .widget_nav_menu .menu-item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 0;
	flex-shrink: 0;
}

.footer-widgets .widget .menu-item-icon-image img {
	width: 16px;
	height: 16px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: 0.9;
}

.footer-widgets .widget .menu-item-icon-fa {
	font-size: 14px;
	color: #ffffff;
	opacity: 0.9;
}

.footer-widgets .widget .menu-item-icon-fa i {
	color: #ffffff;
}

/* Subtle underline on hover */
.footer-widgets .widget a::after {
	content: '';
	position: absolute;
	width: 0;
	height: 1.5px;
	bottom: 2px;
	left: 0;
	background: rgba(255, 255, 255, 0.7);
	transition: width var(--footer-transition);
	border-radius: 2px;
}

.footer-widgets .widget a:hover {
	color: #ffffff;
	background: transparent !important;
	background-color: transparent !important;
	transform: translateX(3px);
	font-weight: 500;
	opacity: 1;
}

.footer-widgets .widget a:hover::after {
	width: 100%;
}

/* ============================================================
   FOOTER MENU ITEM ICONS — Inline SVG via CSS ::before
   ============================================================ */

/* Base icon style for footer nav items */
.footer-widgets .widget_nav_menu .menu-item>a::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	min-width: 15px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0.8;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.footer-widgets .widget_nav_menu .menu-item>a:hover::before {
	opacity: 1;
	transform: scale(1.1);
}

/* === Quick Links Column === */

/* Perumin Cookies — Cookie icon */
#menu-item-64345>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M21.95 10.99c-1.79-.03-3.7-1.95-2.68-4.22-2.98 1-5.77-1.59-5.19-4.56C6.95.71 2 6.58 2 12c0 5.52 4.48 10 10 10 5.89 0 10.54-5.08 9.95-11.01zM8.5 15c-.83 0-1.5-.67-1.5-1.5S7.67 12 8.5 12s1.5.67 1.5 1.5S9.33 15 8.5 15zm2-5C9.67 10 9 9.33 9 8.5S9.67 7 10.5 7s1.5.67 1.5 1.5-.67 1.5-1.5 1.5zm4.5 6c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z'/%3E%3C/svg%3E");
}

/* Blogs — Article/document icon */
#menu-item-65940>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E");
}

/* About — Info circle icon */
#menu-item-68273>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z'/%3E%3C/svg%3E");
}

/* Contact us — Envelope icon */
#menu-item-68274>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E");
}

/* === Important Column === */

/* Disclaimer — Shield/warning icon */
#menu-item-68278>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-1 6h2v2h-2V7zm0 4h2v6h-2v-6z'/%3E%3C/svg%3E");
}

/* Privacy Policy — Lock icon */
#menu-item-68526>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E");
}

/* Terms and Conditions — Clipboard/document icon */
#menu-item-68277>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z'/%3E%3C/svg%3E");
}

/* DMCA — Alert/copyright shield icon */
#menu-item-68276>a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E");
}

.footer-widgets .widget p {
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.8;
	margin-bottom: 16px;
	font-size: 14px;
	font-weight: 400;
	font-family: var(--footer-font-primary);
}

.footer-widgets .widget p:last-child {
	margin-bottom: 0;
}

.footer-widgets .textwidget {
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.85;
	font-size: 14px;
	font-weight: 400;
	font-family: var(--footer-font-primary);
}

/* Logo styling */
.footer-widgets .widget img,
.footer-widgets .widget .footer-logo {
	margin-bottom: 20px;
	display: block;
	transition: all var(--footer-transition);
	filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.15));
	max-width: 140px;
	height: auto;
	width: auto;
}

.footer-widgets .widget img:hover,
.footer-widgets .widget .footer-logo:hover {
	transform: translateY(-3px) scale(1.03);
	filter: brightness(1.1) drop-shadow(0 6px 20px rgba(0, 0, 0, 0.2));
}

/* Tagline under logo */
.footer-widget-1 .textwidget {
	color: rgba(255, 255, 255, 0.8);
	font-size: 14px;
	line-height: 1.7;
	max-width: 280px;
}

/* ----------------------------------------------------------------------------
   Social Media Icons - White Glass Style on Blue
   ---------------------------------------------------------------------------- */
.footer-widgets .widget_social_icons ul,
.footer-widgets .social-icons,
.footer-widgets .social-media-icons,
.footer-widgets .wp-block-social-links,
.footer-widgets ul.wp-block-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 24px 0 0;
}

.footer-widgets .widget_social_icons a,
.footer-widgets .social-icons a,
.footer-widgets .social-media-icons a,
.footer-widgets .wp-block-social-links a,
.footer-widgets .wp-block-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 12px !important;
	color: #ffffff;
	text-decoration: none;
	transition: all var(--footer-transition-bounce);
	font-size: 17px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	background: rgba(255, 255, 255, 0.12) !important;
}

.footer-widgets .wp-block-social-link a {
	width: 100%;
	height: 100%;
	padding: 0;
}

/* Ripple effect on hover */
.footer-widgets .widget_social_icons a::before,
.footer-widgets .social-icons a::before,
.footer-widgets .social-media-icons a::before,
.footer-widgets .wp-block-social-link::before,
.footer-widgets .wp-block-social-link a::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.15);
	transform: translate(-50%, -50%);
	transition: width 0.4s ease, height 0.4s ease;
}

.footer-widgets .widget_social_icons a:hover::before,
.footer-widgets .social-icons a:hover::before,
.footer-widgets .social-media-icons a:hover::before,
.footer-widgets .wp-block-social-link:hover::before,
.footer-widgets .wp-block-social-link a:hover::before {
	width: 100%;
	height: 100%;
}

.footer-widgets .widget_social_icons a i,
.footer-widgets .social-icons a i,
.footer-widgets .social-media-icons a i,
.footer-widgets .widget_social_icons a svg,
.footer-widgets .social-icons a svg,
.footer-widgets .social-media-icons a svg,
.footer-widgets .wp-block-social-link svg,
.footer-widgets .wp-block-social-link a svg {
	position: relative;
	z-index: 1;
	transition: transform var(--footer-transition);
	border-radius: 0 !important;
	width: 20px;
	height: 20px;
	fill: #ffffff;
}

.footer-widgets .widget_social_icons a,
.footer-widgets .social-icons a,
.footer-widgets .social-media-icons a,
.footer-widgets .widget_social_icons a *,
.footer-widgets .social-icons a *,
.footer-widgets .social-media-icons a *,
.footer-widgets .wp-block-social-link,
.footer-widgets .wp-block-social-link * {
	border-radius: 12px !important;
}

/* Social Brand Colors - on blue bg, use white glass instead */
.footer-widgets a[href*="behance"],
.footer-widgets a[href*="be.net"],
.footer-widgets .wp-block-social-link[href*="behance"],
.footer-widgets .wp-block-social-link[href*="be.net"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

.footer-widgets a[href*="instagram"],
.footer-widgets .wp-block-social-link[href*="instagram"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

.footer-widgets a[href*="linkedin"],
.footer-widgets .wp-block-social-link[href*="linkedin"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

.footer-widgets a[href*="telegram"],
.footer-widgets .wp-block-social-link[href*="telegram"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

.footer-widgets a[href*="youtube"],
.footer-widgets .wp-block-social-link[href*="youtube"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

.footer-widgets a[href*="twitter"],
.footer-widgets a[href*="://x.com"],
.footer-widgets .wp-block-social-link[href*="twitter"],
.footer-widgets .wp-block-social-link[href*="x.com"] {
	background: rgba(255, 255, 255, 0.15) !important;
}

/* WordPress Block Social Links */
.footer-widgets .wp-block-social-links {
	justify-content: flex-start !important;
}

.footer-widgets .wp-block-social-link {
	margin: 0 !important;
	padding: 0 !important;
}

.footer-widgets .wp-block-social-link a {
	padding: 0 !important;
}

.footer-widgets .wp-block-social-link svg {
	fill: #ffffff !important;
	color: #ffffff !important;
}

.footer-widgets .wp-block-social-link:hover svg {
	fill: #ffffff !important;
	color: #ffffff !important;
}

.footer-widgets .widget_social_icons a:hover,
.footer-widgets .social-icons a:hover,
.footer-widgets .social-media-icons a:hover,
.footer-widgets .wp-block-social-link:hover,
.footer-widgets .wp-block-social-link a:hover {
	transform: translateY(-4px) scale(1.1);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15), var(--footer-shadow-glow);
	z-index: 10;
	border-color: rgba(255, 255, 255, 0.35) !important;
	background: rgba(255, 255, 255, 0.25) !important;
}

.footer-widgets .widget_social_icons a:hover i,
.footer-widgets .social-icons a:hover i,
.footer-widgets .social-media-icons a:hover i,
.footer-widgets .widget_social_icons a:hover svg,
.footer-widgets .social-icons a:hover svg,
.footer-widgets .social-media-icons a:hover svg,
.footer-widgets .wp-block-social-link:hover svg,
.footer-widgets .wp-block-social-link a:hover svg {
	transform: scale(1.1);
}

/* ----------------------------------------------------------------------------
   Footer Bar - hide
   ---------------------------------------------------------------------------- */
.footer-bar {
	display: none;
}

/* ----------------------------------------------------------------------------
   Site Info / Copyright Bar - White Background
   ---------------------------------------------------------------------------- */
.site-info {
	background: #f8fafc;
	padding: 22px 0;
	text-align: center;
	color: #64748b;
	font-size: 13px;
	line-height: 1.6;
	position: relative;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	font-family: var(--footer-font-primary);
}

.inside-site-info {
	max-width: var(--footer-container-width);
	margin: 0 auto;
	padding: 0 40px;
}

.copyright-bar {
	padding: 0;
	margin: 0;
}

.copyright-bar .copyright {
	color: #64748b;
	font-weight: 400;
	font-size: 13px;
	font-family: var(--footer-font-primary);
}

.site-info a {
	color: #475569;
	text-decoration: none;
	transition: all var(--footer-transition);
	font-weight: 500;
	position: relative;
}

.site-info a::after {
	content: '';
	position: absolute;
	width: 0;
	height: 1px;
	bottom: -2px;
	left: 50%;
	background: var(--footer-accent);
	transition: all var(--footer-transition);
	transform: translateX(-50%);
}

.site-info a:hover {
	color: var(--footer-accent);
	opacity: 1;
}

.site-info a:hover::after {
	width: 100%;
}

.site-info .copyright-bar {
	display: block;
	text-align: center;
}

.site-info .copyright-bar a {
	color: #475569;
	opacity: 1;
}

/* ----------------------------------------------------------------------------
   Back to Top Button - Blue with White Icon
   ---------------------------------------------------------------------------- */
.generate-back-to-top {
	background: var(--footer-gradient) !important;
	border-radius: 14px !important;
	width: 50px !important;
	height: 50px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: var(--footer-shadow-md), 0 0 15px rgba(12, 125, 250, 0.3) !important;
	transition: all var(--footer-transition-bounce) !important;
	opacity: 0.95 !important;
	backdrop-filter: blur(10px) !important;
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.generate-back-to-top::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.15);
	transform: translate(-50%, -50%);
	transition: width 0.4s ease, height 0.4s ease;
}

.generate-back-to-top:hover::before {
	width: 100%;
	height: 100%;
}

.generate-back-to-top:hover {
	transform: translateY(-6px) scale(1.08) !important;
	box-shadow: 0 8px 32px rgba(12, 125, 250, 0.45) !important;
	opacity: 1 !important;
}

.generate-back-to-top svg {
	fill: #ffffff !important;
	width: 20px !important;
	height: 20px !important;
	transition: transform var(--footer-transition) !important;
	position: relative;
	z-index: 1;
}

.generate-back-to-top:hover svg {
	transform: translateY(-2px) !important;
}

/* ----------------------------------------------------------------------------
   Responsive Design
   ---------------------------------------------------------------------------- */
@media (max-width: 1280px) {
	.inside-footer-widgets {
		gap: 50px;
	}

	.footer-widgets-container {
		padding: 0 35px;
	}

	.inside-site-info {
		padding: 0 35px;
	}

	.inside-footer-widgets>div:not(:first-child)::before {
		left: -25px;
	}
}

@media (max-width: 1024px) {
	#footer-widgets {
		padding: 55px 0 45px;
	}

	.footer-widgets-container {
		padding: 0 30px;
	}

	.inside-site-info {
		padding: 0 30px;
	}

	.inside-footer-widgets {
		grid-template-columns: 1fr 1fr;
		gap: 45px;
	}

	/* First widget spans full width on tablet */
	.inside-footer-widgets>div:first-child {
		grid-column: 1 / -1;
		padding-bottom: 30px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	}

	.inside-footer-widgets>div:not(:first-child)::before {
		display: none;
	}

	.inside-footer-widgets>div:nth-child(3)::before {
		display: block;
		left: -22px;
	}
}

@media (max-width: 768px) {
	#footer-widgets {
		padding: 45px 0 35px;
	}

	.footer-widgets-container {
		padding: 0 20px;
	}

	.inside-site-info {
		padding: 0 20px;
	}

	.inside-footer-widgets {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.inside-footer-widgets>div:first-child {
		grid-column: auto;
		padding-bottom: 25px;
	}

	.inside-footer-widgets>div:not(:first-child)::before {
		display: none !important;
	}

	.inside-footer-widgets>div:not(:first-child) {
		padding-top: 25px;
		border-top: 1px solid rgba(255, 255, 255, 0.15);
	}

	.footer-menu-title {
		margin-bottom: 16px;
	}

	.footer-widgets .widget p {
		font-size: 14px;
	}

	.footer-widgets .widget a,
	.footer-menu-list a {
		font-size: 14px;
	}

	.site-info {
		padding: 18px 0;
		font-size: 12px;
	}

	.footer-widgets .widget img,
	.footer-widgets .widget .footer-logo {
		max-width: 120px;
	}
}

@media (max-width: 480px) {
	#footer-widgets {
		padding: 35px 0 25px;
	}

	.footer-widgets-container {
		padding: 0 16px;
	}

	.inside-footer-widgets {
		gap: 25px;
	}

	.footer-widgets .widget_social_icons ul,
	.footer-widgets .social-icons,
	.footer-widgets .social-media-icons,
	.footer-widgets .wp-block-social-links,
	.footer-widgets ul.wp-block-social-links {
		gap: 8px;
	}

	.footer-widgets .widget_social_icons a,
	.footer-widgets .social-icons a,
	.footer-widgets .social-media-icons a,
	.footer-widgets .wp-block-social-links a,
	.footer-widgets .wp-block-social-link {
		width: 38px;
		height: 38px;
		border-radius: 10px !important;
	}

	.generate-back-to-top {
		width: 44px !important;
		height: 44px !important;
		border-radius: 12px !important;
	}
}

/* Print */
@media print {
	#footer-widgets {
		background: #ffffff !important;
		color: #000000 !important;
	}

	.footer-widgets .widget a,
	.footer-menu-list a {
		color: #000000 !important;
	}

	#footer-widgets::before,
	#footer-widgets::after,
	.footer-widgets-container::before,
	.generate-back-to-top {
		display: none !important;
	}
}