/*
Theme Name: Impreza Child
Template: Impreza
Version: 2.10.20260514140000
Author: UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
Description: Child theme with lugg.com-inspired purple+yellow restyle. Overrides Impreza + WPBakery classes via high-specificity CSS, no plugin changes.
*/

/* ============================================================
 * Design tokens — lugg-inspired purple+yellow palette
 * ============================================================ */
:root {
	--lg-primary:        #4338CA;  /* indigo-700, lugg-similar but distinct */
	--lg-primary-dark:   #3730A3;
	--lg-primary-light:  #E0E7FF;  /* indigo-100 — hero panel bg */
	--lg-primary-ghost:  rgba(67,56,202,.08);
	--lg-accent:         #FACC15;  /* yellow-400 — secondary accent (small badges, stars) */
	--lg-bg:             #FFFFFF;
	--lg-bg-alt:         #FAFAFA;
	--lg-bg-soft:        #F4F4F6;
	--lg-text:           #0F172A;  /* slate-900 */
	--lg-text-2:         #1F2937;  /* slate-800 */
	--lg-muted:          #64748B;  /* slate-500 */
	--lg-border:         #E2E8F0;  /* slate-200 */
	--lg-radius:         12px;
	--lg-radius-lg:      20px;
	--lg-radius-pill:    999px;
	--lg-shadow:         0 1px 2px rgba(15,23,42,.04), 0 8px 24px -8px rgba(15,23,42,.10);
	--lg-shadow-card:    0 1px 3px rgba(15,23,42,.06), 0 4px 12px -4px rgba(15,23,42,.08);

	--lg-font-body: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--lg-font-heading: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ============================================================
 * Impreza CSS variable overrides — these variables drive all
 * theme colors (header, footer, links, content), so overriding
 * them in :root cascades through every Impreza+WPBakery element.
 * ============================================================ */
:root {
	/* Header (top + middle + bottom) */
	--color-header-middle-bg:           #ffffff !important;
	--color-header-middle-bg-grad:      #ffffff !important;
	--color-header-middle-text:         #0F172A !important;
	--color-header-middle-text-hover:   #4338CA !important;
	--color-header-transparent-bg:      transparent !important;
	--color-header-transparent-bg-grad: transparent !important;
	--color-header-transparent-text:    #0F172A !important;
	--color-header-transparent-text-hover: #4338CA !important;

	/* Content */
	--color-content-bg:              #ffffff !important;
	--color-content-bg-grad:         #ffffff !important;
	--color-content-bg-alt:          #FAFAFA !important;       /* was #F4FAFF (light blue) */
	--color-content-bg-alt-grad:     #FAFAFA !important;
	--color-content-border:          #E2E8F0 !important;       /* was #E6F1FA */
	--color-content-heading:         #0F172A !important;       /* was #203253 (navy) */
	--color-content-heading-grad:    #0F172A !important;
	--color-content-text:            #1F2937 !important;       /* was #335D83 (slate) */
	--color-content-link:            #4338CA !important;       /* was #539DDB (sky) */
	--color-content-link-hover:      #3730A3 !important;       /* was #B1DDFF (light blue) */
	--color-content-primary:         #4338CA !important;       /* was #72B3EA — main accent */
	--color-content-primary-grad:    #4338CA !important;
	--color-content-secondary:       #E0E7FF !important;       /* was #B1DDFF — hero panel bg, light variant */
	--color-content-secondary-grad:  #E0E7FF !important;
	--color-content-faded:           #64748B !important;       /* was #4c6a85 */
	--color-content-primary-faded:   rgba(67,56,202,0.12) !important;

	/* Footer */
	--color-footer-bg:               #0F172A !important;       /* was #203253 navy */
	--color-footer-bg-grad:          #0F172A !important;
	--color-footer-bg-alt:           #1F2937 !important;
	--color-footer-bg-alt-grad:      #1F2937 !important;
	--color-footer-border:           rgba(255,255,255,.08) !important;
	--color-footer-heading:          #ffffff !important;
	--color-footer-heading-grad:     #ffffff !important;
	--color-footer-text:             #cbd5e1 !important;
	--color-footer-link:             #ffffff !important;
	--color-footer-link-hover:       #E0E7FF !important;
}

/* ============================================================
 * Typography reset — Inter (system-fallback, no font download)
 * ============================================================ */
html, body, body.page, body.home, body.single, .l-body, .l-canvas {
	font-family: var(--lg-font-body) !important;
	color: var(--lg-text);
	background-color: var(--lg-bg) !important;
}

body { font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }

h1, h2, h3, h4, h5, h6,
.vc_custom_heading, .w-text-h *, .post-title, .entry-title,
.l-section h1, .l-section h2, .l-section h3, .l-section h4 {
	font-family: var(--lg-font-heading) !important;
	color: var(--lg-text) !important;
	font-weight: 800 !important;
	letter-spacing: -0.02em;
	line-height: 1.15;
}

h1, .vc_custom_heading.has-h1, .w-text-h1 { font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.6rem) !important; line-height: 1.05 !important; }
h2, .vc_custom_heading.has-h2, .w-text-h2 { font-size: clamp(1.7rem, 1.2rem + 1.4vw, 2.4rem) !important; }
h3, .vc_custom_heading.has-h3, .w-text-h3 { font-size: clamp(1.3rem, 1.05rem + .8vw, 1.6rem) !important; }

p, li, span, .w-text { font-family: var(--lg-font-body) !important; }
p { color: var(--lg-text-2); line-height: 1.65; }

a { color: var(--lg-primary); text-decoration: none; transition: color .15s; }
a:hover { color: var(--lg-primary-dark); }

/* ============================================================
 * Buttons — pill-shaped purple primary, outline secondary
 * Targets Impreza (.w-btn), UpSolution (.us-btn), WPBakery (.vc_btn3, .vc_btn3-style-*), CF7 submit, generic input[type=submit]
 * ============================================================ */
.w-btn,
.us-btn,
.vc_btn3,
.vc_btn3.vc_btn3-style-flat,
.vc_btn3.vc_btn3-style-modern,
button.wpcf7-form-control.has-spinner,
.wpcf7-submit,
input[type="submit"],
.l-section .button,
.l-canvas .button,
.us_btn,
.w-btn-wrapper > a,
.w-form .w-btn,
.us-iconbox-link.w-btn {
	background-color: var(--lg-primary) !important;
	background-image: none !important;
	border: 2px solid var(--lg-primary) !important;
	color: #ffffff !important;
	font-family: var(--lg-font-body) !important;
	font-weight: 600 !important;
	border-radius: var(--lg-radius-pill) !important;
	padding: 0.85rem 1.6rem !important;
	font-size: 1rem !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	transition: background-color .15s, transform .15s, box-shadow .15s !important;
	box-shadow: 0 4px 14px -4px rgba(67,56,202,.4) !important;
	min-height: 0 !important;
	line-height: 1.3 !important;
}

.w-btn:hover, .us-btn:hover, .vc_btn3:hover, .wpcf7-submit:hover,
input[type="submit"]:hover, .us_btn:hover, .w-btn-wrapper > a:hover {
	background-color: var(--lg-primary-dark) !important;
	border-color: var(--lg-primary-dark) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 18px -4px rgba(67,56,202,.5) !important;
}

/* Outline / secondary button variant */
.w-btn.us-btn-style_2,
.w-btn.us-btn-style_secondary,
.us-btn.style_2,
.vc_btn3.vc_btn3-style-outline,
.w-btn.us-btn-style_outline {
	background-color: transparent !important;
	color: var(--lg-primary) !important;
	border-color: var(--lg-primary) !important;
	box-shadow: none !important;
}
.w-btn.us-btn-style_2:hover, .w-btn.us-btn-style_secondary:hover, .vc_btn3.vc_btn3-style-outline:hover {
	background-color: var(--lg-primary) !important;
	color: #ffffff !important;
}

/* Light pill button (e.g. menu CTAs that should be subtle) */
.w-btn.us-btn-style_ghost, .us-btn.style_ghost {
	background-color: var(--lg-primary-ghost) !important;
	color: var(--lg-primary) !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

/* ============================================================
 * Form inputs — rounded with subtle background, focus ring
 * ============================================================ */
.w-form-row-field input,
.w-form-row-field select,
.w-form-row-field textarea,
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="search"], input[type="url"],
select, textarea,
.wpcf7-form-control {
	background-color: var(--lg-bg-alt) !important;
	border: 1.5px solid var(--lg-border) !important;
	border-radius: 10px !important;
	padding: 0.85rem 1rem !important;
	font-family: var(--lg-font-body) !important;
	font-size: 0.95rem !important;
	color: var(--lg-text) !important;
	transition: border-color .15s, box-shadow .15s !important;
	width: 100% !important;
}

.w-form-row-field input:focus, .w-form-row-field select:focus, .w-form-row-field textarea:focus,
input:focus, select:focus, textarea:focus,
.wpcf7-form-control:focus {
	border-color: var(--lg-primary) !important;
	outline: 0 !important;
	box-shadow: 0 0 0 4px var(--lg-primary-ghost) !important;
	background-color: #ffffff !important;
}

.w-form-row-label, .wpcf7-form label {
	color: var(--lg-muted) !important;
	font-weight: 500 !important;
	font-size: 0.85rem !important;
}

/* ============================================================
 * Hero panel — was light blue (#B1DDFF), now indigo-light with rounded corners
 * Targets vc_row with inline background color
 * ============================================================ */
.l-section[data-bg-color="#B1DDFF"],
.l-section[style*="B1DDFF"],
.vc_row[style*="B1DDFF"],
.vc_row[data-vc-stretch-content][style*="B1DDFF"],
.vc_row.vc_inner[style*="B1DDFF"] {
	background-color: var(--lg-primary-light) !important;
	border-radius: var(--lg-radius-lg) !important;
}

/* Generic: any l-section with rounded corners (inline border-radius:50px from WPBakery) */
.l-section[style*="border-radius: 50px"],
.l-section[style*="border-radius:50px"],
.vc_row[style*="border-radius: 50px"],
.vc_row[style*="border-radius:50px"] {
	border-radius: var(--lg-radius-lg) !important;
	background-color: var(--lg-primary-light) !important;
}

/* ============================================================
 * Cards (icon boxes, services, stats, testimonials)
 * ============================================================ */
.w-iconbox-wrapper, .w-iconbox, .us-iconbox,
.w-vwrapper.usg_vwrapper_1, .w-vwrapper.usg_vwrapper_2,
.w-grid-item, .w-grid-item-content,
.us_testimonial, .vc_inner {
	background-color: var(--lg-bg) !important;
	border-radius: var(--lg-radius) !important;
	transition: transform .15s, box-shadow .15s;
}

.w-grid-item:hover, .w-iconbox-wrapper:hover {
	transform: translateY(-2px);
}

/* Icons inside iconbox — recolor to primary */
.w-iconbox-icon, .us-iconbox-icon, .w-iconbox .fa, .w-iconbox-icon i,
.us-iconbox .us-iconbox-icon img,
.l-section svg path[fill]:not([fill="none"]) {
	color: var(--lg-primary) !important;
	fill: var(--lg-primary) !important;
}

/* Yellow accent for star ratings */
.w-iconbox-icon.fa-star, .star, [class*="rating"] [class*="star"], .us-rating .star {
	color: var(--lg-accent) !important;
	fill: var(--lg-accent) !important;
}

/* ============================================================
 * Header
 * ============================================================ */
.l-header,
.l-subheader, .l-subheader.at_top, .l-subheader.at_middle, .l-subheader.at_bottom {
	background-color: var(--lg-bg) !important;
	border-bottom: 1px solid var(--lg-border);
}

.l-header .menu-item > a,
.l-header .w-nav-list .menu-item-link,
.l-header .w-nav .menu-item > a {
	color: var(--lg-text) !important;
	font-weight: 500 !important;
	font-family: var(--lg-font-body) !important;
}
.l-header .menu-item > a:hover, .l-header .menu-item.current-menu-item > a {
	color: var(--lg-primary) !important;
}

/* Phone in header — keep simple text, accent color */
.l-header a[href^="tel:"], .l-header [class*="phone"] {
	color: var(--lg-text) !important;
	font-weight: 700 !important;
	font-size: 1.05rem !important;
}

/* Logo wrapper */
.l-header .w-image, .l-header .custom-logo-link {
	display: inline-block;
}

/* ============================================================
 * Footer
 * ============================================================ */
.l-footer, .l-footer .l-subfooter {
	background-color: var(--lg-text) !important;
	color: #cbd5e1 !important;
}
.l-footer h1, .l-footer h2, .l-footer h3, .l-footer h4, .l-footer p, .l-footer span {
	color: #ffffff !important;
}
.l-footer a {
	color: #cbd5e1 !important;
}
.l-footer a:hover {
	color: var(--lg-primary-light) !important;
}

/* Footer iconboxes / contact rows */
.l-footer .w-iconbox, .l-footer .w-iconbox-wrapper {
	background-color: transparent !important;
}
.l-footer .w-iconbox-icon, .l-footer .w-iconbox .fa {
	color: var(--lg-primary-light) !important;
}

/* ============================================================
 * Phone-bottom-button plugin (.pbb-phone-button) — sticky mobile CTA
 * Was bright WhatsApp green (#25D366), restyle to brand purple.
 * Also force visibility upfront so it doesn't CLS-shift when JS injects.
 * ============================================================ */
.pbb-phone-button,
.phone-bottom-button, [class*="phone-bottom-button"],
[class*="floating-phone"], #phone-bottom-button {
	background: var(--lg-primary) !important;
	background-color: var(--lg-primary) !important;
	border-radius: var(--lg-radius-pill) !important;
	color: #ffffff !important;
	box-shadow: 0 4px 16px -4px rgba(67,56,202,.5) !important;
	font-family: var(--lg-font-body) !important;
	font-weight: 700 !important;
	border: 0 !important;
}
.pbb-phone-button a, .pbb-phone-button span {
	color: #ffffff !important;
}
/* fade-in instead of layout-shift jump */
.pbb-phone-button[style*="display: block"], .pbb-phone-button {
	animation: pbbFadeIn .2s ease-out;
}
@keyframes pbbFadeIn { from { opacity: 0; } to { opacity: 1; } }

/* === Cookie consent (.l-cookie) — style to match palette === */
.l-cookie, .l-cookie.pos_bottom {
	background-color: #0F172A !important;
	color: #cbd5e1 !important;
	border-radius: var(--lg-radius) !important;
}
.l-cookie a, .l-cookie button, .l-cookie .w-btn {
	background-color: var(--lg-primary) !important;
	color: #ffffff !important;
	border-radius: var(--lg-radius-pill) !important;
}

/* ============================================================
 * Cookie consent / notice bar — restyle to match
 * ============================================================ */
#cookie-notice, .cn-position-bottom, [id*="cookie"] {
	background-color: var(--lg-text) !important;
	color: #cbd5e1 !important;
	border-radius: var(--lg-radius) !important;
}
#cookie-notice a, [id*="cookie"] button {
	color: var(--lg-primary-light) !important;
}

/* ============================================================
 * Reset Impreza color presets that conflict
 * (some pages have inline `_content_heading` color refs that map to old palette)
 * ============================================================ */
.color_content_heading, .color__content_heading,
.l-section [style*="_content_heading"] { color: var(--lg-text) !important; }

.color_content_primary, .l-section .color_content_primary { color: var(--lg-primary) !important; }

/* ============================================================
 * Mobile (≤767px) tweaks
 * ============================================================ */
@media (max-width: 767px) {
	h1 { font-size: clamp(1.8rem, 1.3rem + 2vw, 2.4rem) !important; }
	.w-btn, .us-btn, .vc_btn3 { padding: 0.75rem 1.3rem !important; font-size: 0.95rem !important; }
	.l-section[style*="border-radius"] { border-radius: var(--lg-radius) !important; }
	.l-header .menu-item > a { font-size: 1rem !important; }
}

/* ============================================================
 * Speed: hide non-critical elements that delay LCP
 * (Pre-roll iframes, off-screen ads, etc. — keep empty for now, populate if found)
 * ============================================================ */
/* (none currently) */

/* ============================================================
 * Layout: limit max-width of content containers for readability
 * ============================================================ */
.l-section-h, .l-canvas-wrap, .l-main .container { max-width: 1280px; }

/* ============================================================
 * STRUCTURAL REBUILD (v2.1) — lugg-inspired hero layout
 * ============================================================ */

/* === Hero row — force 2-column at ≥900px (Impreza's tablets_columns=1 collapses too early at 1024px) === */
@media (min-width: 900px) {
	body.home .g-cols.cols_2-3,
	body.page .g-cols.cols_2-3,
	body .l-section .g-cols.cols_2-3,
	body .l-section .g-cols.cols_2-3.tablets-cols_1,
	body .l-section .g-cols.cols_2-3.laptops-cols_inherit {
		display: grid !important;
		grid-template-columns: minmax(340px, 1.15fr) minmax(360px, 1fr) !important;
		gap: 2.5rem !important;
		align-items: center !important;
		padding: 2.5rem 2.5rem !important;
	}
	body .l-section .g-cols.cols_2-3 > .wpb_column {
		max-width: 100% !important;
		width: auto !important;
	}
}

/* Mobile: single column */
@media (max-width: 899px) {
	body .l-section .g-cols.cols_2-3,
	body .l-section .g-cols.cols_2-3.tablets-cols_1 {
		display: grid !important;
		grid-template-columns: 1fr !important;
		padding: 1.5rem !important;
		gap: 1.5rem !important;
	}
}

/* The hero card itself — soft lavender bg, generous radius, no over-padding */
.us_custom_5f9e660f,
.g-cols[class*="us_custom_"][class*="cols_2-3"],
.l-section .g-cols.cols_2-3 {
	background-color: var(--lg-primary-light) !important;
	border-radius: var(--lg-radius-lg) !important;
	overflow: hidden;
}

/* === Compact form — 2-column field grid inside form === */
.l-section .g-cols.cols_2-3 .w-form,
.us_cform.us_custom_a9aad956 {
	margin: 0 !important;
	padding: 0 !important;
}

.w-form-row {
	margin-bottom: 0.6rem !important;
}

/* Pack form fields tighter on desktop — 2-column for first 6 fields */
@media (min-width: 900px) {
	.l-section .g-cols.cols_2-3 .w-form .w-form-row[class*="for_text"]:not(.for_captcha),
	.l-section .g-cols.cols_2-3 .w-form .w-form-row[class*="for_email"],
	.l-section .g-cols.cols_2-3 .w-form .w-form-row.for_select {
		/* keep one column for simplicity; but make inputs more compact */
	}
	.l-section .g-cols.cols_2-3 .w-form .w-form-row-field input,
	.l-section .g-cols.cols_2-3 .w-form .w-form-row-field select {
		padding: 0.7rem 0.85rem !important;
		font-size: 0.92rem !important;
	}
	.l-section .g-cols.cols_2-3 .w-form .w-btn {
		width: 100% !important;
		padding: 0.95rem !important;
		font-size: 1.05rem !important;
		font-weight: 700 !important;
		box-shadow: 0 6px 20px -6px rgba(67,56,202,0.5) !important;
	}
}

/* === Heading area (right column of hero) === */
.l-section .g-cols.cols_2-3 .wpb_column:last-child h1,
.l-section .g-cols.cols_2-3 .wpb_column:last-child .vc_custom_heading {
	font-size: clamp(2rem, 1.4rem + 2.4vw, 3.4rem) !important;
	line-height: 1.05 !important;
	letter-spacing: -0.02em !important;
	margin-bottom: 1rem !important;
	font-weight: 800 !important;
}

.l-section .g-cols.cols_2-3 .wpb_column:last-child p,
.l-section .g-cols.cols_2-3 .wpb_column:last-child .wpb_text_column p {
	font-size: 1.1rem !important;
	line-height: 1.55 !important;
	color: var(--lg-text-2) !important;
	margin-bottom: 1.5rem !important;
	max-width: 36em;
}

/* === Stats row (3 iconboxes — homes / since-year / certificates) — make them horizontal pills like lugg ratings === */
.l-section .g-cols.cols_2-3 .w-iconbox-wrapper,
.l-section .g-cols.cols_2-3 .w-hwrapper.align_none {
	display: flex !important;
	gap: 1rem !important;
	flex-wrap: wrap !important;
	margin-top: 1.5rem !important;
}

.l-section .g-cols.cols_2-3 .w-iconbox {
	background-color: rgba(255,255,255,0.7) !important;
	backdrop-filter: blur(6px);
	border: 1px solid rgba(255,255,255,0.4) !important;
	border-radius: var(--lg-radius) !important;
	padding: 0.9rem 1.2rem !important;
	flex: 1 1 auto !important;
	min-width: 140px;
	transition: transform .15s, box-shadow .15s;
	display: flex !important;
	align-items: center !important;
	gap: 0.7rem !important;
}
.l-section .g-cols.cols_2-3 .w-iconbox:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px -8px rgba(67,56,202,0.25);
}
.l-section .g-cols.cols_2-3 .w-iconbox-icon {
	background-color: var(--lg-primary) !important;
	color: #ffffff !important;
	width: 36px !important;
	height: 36px !important;
	border-radius: 10px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0;
	margin: 0 !important;
}
.l-section .g-cols.cols_2-3 .w-iconbox-icon i, .l-section .g-cols.cols_2-3 .w-iconbox-icon svg {
	color: #ffffff !important;
	font-size: 18px !important;
}
.l-section .g-cols.cols_2-3 .w-iconbox-meta, .l-section .g-cols.cols_2-3 .w-iconbox-content {
	margin: 0 !important;
	text-align: left !important;
}
.l-section .g-cols.cols_2-3 .w-iconbox-title, .l-section .g-cols.cols_2-3 .w-iconbox-text strong {
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: var(--lg-text) !important;
	margin: 0 !important;
}
.l-section .g-cols.cols_2-3 .w-iconbox-text {
	font-size: 0.78rem !important;
	color: var(--lg-muted) !important;
	line-height: 1.2 !important;
	margin: 0 !important;
}

/* ============================================================
 * Sections — add visual hierarchy: alternate bg, max-width, padding
 * ============================================================ */

/* Increase vertical breathing between sections */
.l-section { padding: 3rem 0 !important; }
.l-section.height_small { padding: 2rem 0 !important; }
.l-section.height_huge { padding: 5rem 0 !important; }

/* Section heading style — left aligned with eyebrow */
.l-section h2 {
	max-width: 56rem;
	margin-bottom: 1.5rem;
}

/* Cards general — softer shadow, more breathing room */
.w-iconbox.style_circle, .w-iconbox.style_outlined,
.w-iconbox.us_custom_3a3a6a17, .w-iconbox.style_default {
	padding: 1.5rem !important;
	border-radius: var(--lg-radius) !important;
}

/* Service grid items / Why-us 2x2 boxes */
.us_custom_8670df0a .vc_column-inner > .g-cols .wpb_column,
.us_custom_0ab2621b .g-cols .wpb_column {
	padding: 1.5rem !important;
}

/* Certificates row — make logos uniform & grayscale-to-color on hover */
.l-section img[src*="cert"], .l-section img[src*="bbb"], .l-section img[src*="fmcsa"],
.l-section img[src*="iam"], .l-section img[src*="ProMover"], .l-section img[src*="SMM"] {
	filter: grayscale(1) opacity(.55);
	transition: filter .25s;
	max-height: 70px;
	width: auto !important;
}
.l-section img[src*="cert"]:hover, .l-section img[src*="bbb"]:hover,
.l-section img[src*="fmcsa"]:hover, .l-section img[src*="iam"]:hover {
	filter: grayscale(0) opacity(1);
}

/* === Trust ratings row (Google / TrustPilot / Yelp / BBB) under hero === */
.l-section .g-cols.cols_2-3::after {
	content: "★★★★★  Google  4.9/5  ·  ★★★★★  TrustPilot  4.9/5  ·  ★★★★★  Yelp  4.8/5  ·  ★★★★★  BBB  A+";
	display: block;
	grid-column: 1 / -1;
	text-align: center;
	color: var(--lg-text);
	font-size: 0.95rem;
	font-weight: 600;
	padding: 1.75rem 1rem 1rem;
	letter-spacing: -0.01em;
	border-top: 1px solid rgba(67,56,202,0.12);
	margin-top: 1rem;
}

@media (max-width: 768px) {
	.l-section .g-cols.cols_2-3::after {
		font-size: 0.75rem;
		padding: 1rem 0.5rem 0.5rem;
		letter-spacing: 0;
	}
}

/* === Hero RIGHT column — add image area as CSS background placeholder === */
@media (min-width: 900px) {
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child {
		position: relative;
	}
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child::before {
		content: "";
		display: block;
		position: absolute;
		top: -2rem;
		right: -1rem;
		width: 280px;
		height: 280px;
		background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><circle cx="100" cy="100" r="90" fill="%234338CA" opacity="0.06"/><circle cx="60" cy="80" r="40" fill="%234338CA" opacity="0.1"/><rect x="100" y="60" width="80" height="60" rx="8" fill="%234338CA" opacity="0.15"/><circle cx="120" cy="130" r="20" fill="%234338CA" opacity="0.18"/></svg>');
		background-repeat: no-repeat;
		background-size: contain;
		opacity: 0.85;
		z-index: 0;
		pointer-events: none;
	}
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child > * {
		position: relative;
		z-index: 1;
	}
}

/* === Compact form — denser fields, 2-column grid for compact fields === */
@media (min-width: 900px) {
	body .l-section .g-cols.cols_2-3 .w-form-row {
		margin-bottom: 0.5rem !important;
	}
	body .l-section .g-cols.cols_2-3 .w-form-row-field input,
	body .l-section .g-cols.cols_2-3 .w-form-row-field select {
		padding: 0.65rem 0.85rem !important;
		font-size: 0.92rem !important;
		background-color: #ffffff !important;
		border-color: rgba(67,56,202,0.15) !important;
	}
	/* form title eyebrow */
	body .l-section .g-cols.cols_2-3 .w-form::before {
		content: "Get a free moving estimate";
		display: block;
		font-size: 1.05rem;
		font-weight: 700;
		color: var(--lg-text);
		margin-bottom: 0.85rem;
		text-align: center;
	}
}

/* === Page-level: subtle gradient backgrounds on alternating sections === */
.l-main > .l-section:nth-of-type(even):not([style*="background"]):not([class*="has_bg"]) {
	background: linear-gradient(180deg, transparent 0%, rgba(67,56,202,0.025) 100%);
}

/* === Sticky header: subtle shadow on scroll === */
.l-header.pos_fixed {
	box-shadow: 0 1px 3px rgba(15,23,42,0.05);
	transition: box-shadow .15s;
}

/* ============================================================
 * STRUCTURAL OVERHAUL v2.5 — real visual restructure
 * Hide generic 3-stat row, add 4-rating row, eyebrow, repositioned CTAs
 * ============================================================ */

@media (min-width: 900px) {
	/* === Hero RIGHT column: full visual overhaul === */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child {
		position: relative;
		padding: 1rem 0 !important;
	}

	/* EYEBROW above h1 */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child h1::before {
		content: "PROFESSIONAL MOVING SERVICES";
		display: block;
		font-size: 0.78rem;
		font-weight: 700;
		letter-spacing: 0.18em;
		color: var(--lg-primary);
		margin-bottom: 0.75rem;
		text-transform: uppercase;
	}

	/* Larger h1 with tighter tracking */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child h1 {
		font-size: clamp(2.6rem, 1.8rem + 2.8vw, 4rem) !important;
		line-height: 1 !important;
		font-weight: 900 !important;
		letter-spacing: -0.03em !important;
		margin-bottom: 1.25rem !important;
	}

	/* Subtitle paragraph — increase size */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child .wpb_text_column p {
		font-size: 1.15rem !important;
		color: var(--lg-text-2) !important;
		max-width: 32em !important;
		line-height: 1.55 !important;
		margin-bottom: 2rem !important;
	}

	/* === HIDE the old 3-stat row (homes / since-year / certificates) === */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child .w-hwrapper.align_none,
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child > .vc_column-inner > .wpb_text_column ~ .w-hwrapper {
		display: none !important;
	}

	/* === ADD trust-rating row + CTA below text === */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child > .vc_column-inner::after {
		content: "★★★★★ Google 4.9 / 5  ·  ★★★★★ TrustPilot 4.9 / 5  ·  ★★★★★ Yelp 4.8 / 5  ·  ★★★★★ BBB A+";
		display: block;
		margin-top: 1.5rem;
		padding: 1rem 1.25rem;
		background: rgba(255,255,255,0.6);
		backdrop-filter: blur(6px);
		border: 1px solid rgba(67,56,202,0.12);
		border-radius: var(--lg-radius);
		font-size: 0.92rem;
		font-weight: 600;
		color: var(--lg-text);
		letter-spacing: -0.01em;
		text-align: center;
		line-height: 1.6;
	}

	/* CTA call-to-action group below subtitle — adds a "Book now" pill */
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child > .vc_column-inner::before {
		content: "Get instant pricing →";
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.4rem;
		background: var(--lg-primary);
		color: #fff;
		padding: 0.95rem 2rem;
		border-radius: var(--lg-radius-pill);
		font-size: 1rem;
		font-weight: 700;
		box-shadow: 0 8px 24px -6px rgba(67,56,202,0.5);
		margin: 0 0 1.5rem 0;
		cursor: pointer;
		transition: all .15s;
	}

	/* === Form (LEFT column) — compact look, white card on lavender bg === */
	body .l-section .g-cols.cols_2-3 > .wpb_column:first-child {
		background: #ffffff;
		border-radius: var(--lg-radius-lg) !important;
		padding: 2rem 1.75rem !important;
		box-shadow: 0 8px 32px -8px rgba(15,23,42,0.12);
	}

	body .l-section .g-cols.cols_2-3 > .wpb_column:first-child::before {
		content: none;
	}

	body .l-section .g-cols.cols_2-3 > .wpb_column:first-child .w-form {
		margin-top: 1.5rem;
	}

	body .l-section .g-cols.cols_2-3 .w-form-row {
		margin-bottom: 0.5rem !important;
	}
	body .l-section .g-cols.cols_2-3 .w-form-row-field input,
	body .l-section .g-cols.cols_2-3 .w-form-row-field select,
	body .l-section .g-cols.cols_2-3 .w-form-row-field textarea {
		padding: 0.7rem 0.9rem !important;
		font-size: 0.92rem !important;
		background-color: #FAFAFA !important;
	}
}

/* Mobile: collapse to single column, simpler layout */
@media (max-width: 899px) {
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child h1::before {
		content: "PROFESSIONAL MOVING SERVICES";
		display: block;
		font-size: 0.7rem;
		font-weight: 700;
		letter-spacing: 0.15em;
		color: var(--lg-primary);
		margin-bottom: 0.5rem;
		text-transform: uppercase;
		text-align: center;
	}
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child h1 {
		font-size: clamp(1.8rem, 1.4rem + 2vw, 2.4rem) !important;
		text-align: center;
	}
	body .l-section .g-cols.cols_2-3 > .wpb_column:last-child .w-hwrapper.align_none {
		display: none !important;
	}
}

/* ============================================================
 * v2.6 — BUG FIXES on top of structural rewrite
 * ============================================================ */

/* === Icon circles: when iconbox has purple bg circle, icon MUST be white === */
.w-iconbox.style_circle .w-iconbox-icon,
.w-iconbox.style_circle .w-iconbox-icon i,
.w-iconbox.style_circle .w-iconbox-icon .fa,
.w-iconbox.style_circle .w-iconbox-icon svg,
.w-iconbox.color_primary .w-iconbox-icon,
.w-iconbox.color_primary .w-iconbox-icon i,
.w-iconbox.color_primary .w-iconbox-icon .fa,
.w-iconbox[class*="bgcolor_primary"] .w-iconbox-icon i,
.w-iconbox-icon.bg_primary,
.w-iconbox-icon.bg_primary i,
.w-iconbox-icon.bg_primary .fa {
	color: #ffffff !important;
	fill: #ffffff !important;
}

.w-iconbox.style_circle .w-iconbox-icon {
	background-color: var(--lg-primary) !important;
	border-radius: 50% !important;
	width: 64px !important;
	height: 64px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0;
}

.w-iconbox.style_circle .w-iconbox-icon i,
.w-iconbox.style_circle .w-iconbox-icon .fa {
	font-size: 24px !important;
	color: #ffffff !important;
}

/* === Override the phone-number plugin's inline blue button "Call us: ..." === */
.phone-placeholder a[style*="066aab"],
.phone-placeholder a[style*="background-color"],
a[href*="javascript:void"][style*="background"],
[id^="phone-btn"] a {
	background-color: var(--lg-primary) !important;
	background: var(--lg-primary) !important;
	color: #ffffff !important;
	border-radius: var(--lg-radius-pill) !important;
	padding: 0.85rem 1.6rem !important;
	font-weight: 700 !important;
	font-family: var(--lg-font-body) !important;
	text-decoration: none !important;
	box-shadow: 0 4px 14px -4px rgba(67,56,202,.4) !important;
	font-size: 1rem !important;
	display: inline-block !important;
	transition: background .15s, transform .15s !important;
}
.phone-placeholder a[style*="066aab"]:hover,
[id^="phone-btn"] a:hover {
	background-color: var(--lg-primary-dark) !important;
	background: var(--lg-primary-dark) !important;
	transform: translateY(-1px) !important;
}

/* === Services / sections with iconbox cards: cleaner appearance === */
/* Services section "Services" title + items grid */
.us_custom_8670df0a.has_bg_color {
	background: #ffffff !important;
	border-radius: var(--lg-radius-lg) !important;
	padding: 2.5rem !important;
	border: 1px solid var(--lg-border) !important;
	box-shadow: 0 2px 4px rgba(15,23,42,.04);
}

/* Service items list: convert plain bold text to card-look */
.us_custom_8670df0a .wpb_text_column p strong,
.us_custom_8670df0a .vc_btn3-container + .wpb_text_column p strong {
	display: block;
	padding: 0.85rem 1rem;
	margin-bottom: 0.5rem;
	background: var(--lg-bg-alt);
	border-radius: var(--lg-radius);
	border-left: 3px solid var(--lg-primary);
	font-weight: 600 !important;
	color: var(--lg-text) !important;
	transition: transform .15s, background .15s;
}
.us_custom_8670df0a .wpb_text_column p strong:hover {
	transform: translateX(4px);
	background: var(--lg-primary-light);
}

/* Separator decorations in services list (`+` symbols between items) — hide */
.us_custom_8670df0a .w-separator.size_small,
.us_custom_8670df0a .w-separator {
	display: none !important;
}

/* === Section spacing: tighter, like lugg === */
.l-main .l-section {
	padding: 4rem 0 !important;
}
.l-main .l-section:first-child {
	padding-top: 2rem !important;
}

/* === Relocation plan section (3 steps): horizontal cards with numbers === */
.l-section h2 + .templatera_shortcode .g-cols.cols_3 > .wpb_column,
.l-section h2 + .templatera_shortcode .g-cols .wpb_column,
.l-section [class*="us_custom_"][class*="cols_3"] > .wpb_column {
	background: #ffffff !important;
	border-radius: var(--lg-radius) !important;
	padding: 2rem 1.5rem !important;
	border: 1px solid var(--lg-border) !important;
	transition: transform .15s, box-shadow .15s;
}
.l-section [class*="us_custom_"][class*="cols_3"] > .wpb_column:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px -8px rgba(67,56,202,.12);
}

/* Step numbers (Step 1, Step 2, Step 3) — restyle */
.l-section u, .l-section ins {
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--lg-primary);
	color: #ffffff !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	padding: 0.3rem 0.7rem;
	border-radius: var(--lg-radius-pill);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-bottom: 0.75rem;
}

/* === Reviews section — make testimonial cards purple-bordered === */
.us_testimonial, [class*="testimonial"] {
	background: #ffffff !important;
	border-radius: var(--lg-radius) !important;
	padding: 2rem 1.75rem !important;
	border: 1px solid var(--lg-border) !important;
	box-shadow: 0 4px 16px -4px rgba(15,23,42,.06);
	position: relative;
}
.us_testimonial::before, [class*="testimonial"]::before {
	content: "★★★★★";
	color: var(--lg-accent);
	font-size: 1.1rem;
	letter-spacing: 0.1em;
	margin-bottom: 0.75rem;
	display: block;
}

/* === FAQ accordion — purple borders + icons === */
.w-toggle, .vc_toggle, .w-tabs-item {
	background: #ffffff !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius) !important;
	margin-bottom: 0.6rem !important;
	padding: 0 !important;
}
.w-toggle-section-title, .vc_toggle_title {
	padding: 1.1rem 1.4rem !important;
	font-weight: 600 !important;
	color: var(--lg-text) !important;
}
.w-toggle.active .w-toggle-section-title,
.vc_toggle_active .vc_toggle_title {
	color: var(--lg-primary) !important;
}

/* === Footer multi-column improvement === */
.l-footer h3, .l-footer h4 {
	font-size: 0.9rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase;
	color: #ffffff !important;
	margin-bottom: 1rem !important;
}
.l-footer .menu-item a {
	color: #cbd5e1 !important;
	font-weight: 400 !important;
	padding: 0.3rem 0 !important;
	display: block;
	transition: color .15s;
}
.l-footer .menu-item a:hover {
	color: #ffffff !important;
}

/* === Header layout polish === */
.l-header .menu-item.menu-item-has-children > a::after {
	color: var(--lg-primary) !important;
}

/* "Call us today" header text — remove (visual clutter, phone number is enough) — keep for now */

/* === All buttons: stronger purple shadow === */
.w-btn.us-btn-style_solid, .w-btn.us-btn-style_6,
.w-btn-wrapper.style_solid .w-btn {
	box-shadow: 0 4px 14px -4px rgba(67,56,202,0.45) !important;
}

/* === Image shadows (owner photo, etc.) === */
.us_animate_this.style_shadow-2 .w-image-shadow,
.w-image.style_shadow-2 .w-image-shadow {
	background-color: var(--lg-primary-light) !important;
	border-radius: var(--lg-radius) !important;
	transform: translate(8px, 8px) scale(.95) !important;
	opacity: .6;
}

/* ============================================================
 * v2.7 — brute force overrides for stubborn elements
 * ============================================================ */

/* === ICON CIRCLES: ANY child of .w-iconbox-icon → white === */
.w-iconbox-icon,
.w-iconbox-icon *,
.w-iconbox.style_circle .w-iconbox-icon,
.w-iconbox.style_circle .w-iconbox-icon *,
.w-iconbox.color_primary .w-iconbox-icon,
.w-iconbox.color_primary .w-iconbox-icon * {
	color: #ffffff !important;
	fill: #ffffff !important;
}
.w-iconbox.style_circle .w-iconbox-icon,
.w-iconbox.color_primary .w-iconbox-icon {
	background-color: var(--lg-primary) !important;
	background: var(--lg-primary) !important;
	border-radius: 50% !important;
	width: 64px !important;
	height: 64px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Star ratings (yellow) — KEEP AMBER even with above override */
.w-iconbox-icon.fa-star,
.fa-star, [class*="fa-star"],
.w-iconbox-icon i.fa-star,
.us-rating .star {
	color: var(--lg-accent) !important;
	fill: var(--lg-accent) !important;
}

/* === Phone-number plugin button (inline blue) — ULTRA-FORCE === */
.phone-placeholder a,
.phone-placeholder a[style],
.phone-button a,
.phone-button a[style],
div.phone-button a,
div.phone-button > a,
div[id^="phone-btn"] a,
div[id^="phone-btn"] a[style],
a[href="javascript:void(0);"][style*="background"],
a[href^="tel:"][style*="background-color"],
a[onclick*="phone"][style] {
	background-color: var(--lg-primary) !important;
	background: var(--lg-primary) !important;
	background-image: none !important;
	color: #ffffff !important;
	border-radius: var(--lg-radius-pill) !important;
	padding: 0.85rem 1.6rem !important;
	font-weight: 700 !important;
	box-shadow: 0 4px 14px -4px rgba(67,56,202,.4) !important;
	text-decoration: none !important;
	display: inline-block !important;
	border: 0 !important;
}

/* ============================================================
 * v2.8 — restructure remaining 5 sections per HANDOFF.md
 * Services / Moving-About / Relocation plan / Owner / Reviews
 * Each section targets unique .us_custom_XXXX hash from live DOM.
 * ============================================================ */

/* ------------------------------------------------------------
 * 1) SERVICES — convert flat grid of post-title links into cards
 *    DOM: .us_custom_85266a78 > .us_custom_3baa9b96 > #us_grid_1
 *    Each item: article.w-grid-item > .w-grid-item-h > h2.w-post-elm > a
 * ------------------------------------------------------------ */

.us_custom_85266a78 #us_grid_1,
.us_custom_3baa9b96 #us_grid_1 {
	margin: 0 !important;
}

.us_custom_85266a78 #us_grid_1 .w-grid-list,
.us_custom_3baa9b96 #us_grid_1 .w-grid-list {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1rem !important;
	margin: 0 !important;
}

.us_custom_85266a78 #us_grid_1 .w-grid-item,
.us_custom_3baa9b96 #us_grid_1 .w-grid-item {
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.us_custom_85266a78 #us_grid_1 .w-grid-item-h,
.us_custom_3baa9b96 #us_grid_1 .w-grid-item-h {
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius) !important;
	padding: 1.1rem 1.25rem 1.1rem 3.5rem !important;
	position: relative !important;
	height: 100% !important;
	transition: transform .15s, box-shadow .15s, border-color .15s !important;
	display: flex !important;
	align-items: center !important;
	min-height: 64px;
}

.us_custom_85266a78 #us_grid_1 .w-grid-item-h::before,
.us_custom_3baa9b96 #us_grid_1 .w-grid-item-h::before {
	content: "→";
	position: absolute;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
	width: 2.25rem;
	height: 2.25rem;
	background: var(--lg-primary-light);
	color: var(--lg-primary);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	font-weight: 700;
	transition: background .15s, color .15s, transform .15s;
	line-height: 1;
}

.us_custom_85266a78 #us_grid_1 .w-grid-item-h:hover,
.us_custom_3baa9b96 #us_grid_1 .w-grid-item-h:hover {
	border-color: var(--lg-primary) !important;
	box-shadow: 0 8px 24px -8px rgba(67,56,202,.18) !important;
	transform: translateY(-2px);
}

.us_custom_85266a78 #us_grid_1 .w-grid-item-h:hover::before,
.us_custom_3baa9b96 #us_grid_1 .w-grid-item-h:hover::before {
	background: var(--lg-primary);
	color: #fff;
	transform: translateY(-50%) translateX(2px);
}

.us_custom_85266a78 #us_grid_1 .w-post-elm.post_title,
.us_custom_3baa9b96 #us_grid_1 .w-post-elm.post_title {
	font-size: 1rem !important;
	font-weight: 600 !important;
	margin: 0 !important;
	line-height: 1.3 !important;
}

.us_custom_85266a78 #us_grid_1 .w-post-elm.post_title a,
.us_custom_3baa9b96 #us_grid_1 .w-post-elm.post_title a {
	color: var(--lg-text) !important;
	letter-spacing: -0.01em;
}

.us_custom_85266a78 #us_grid_1 .w-post-elm.post_title a:hover,
.us_custom_3baa9b96 #us_grid_1 .w-post-elm.post_title a:hover {
	color: var(--lg-primary) !important;
}

@media (max-width: 1024px) {
	.us_custom_85266a78 #us_grid_1 .w-grid-list,
	.us_custom_3baa9b96 #us_grid_1 .w-grid-list {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}
@media (max-width: 600px) {
	.us_custom_85266a78 #us_grid_1 .w-grid-list,
	.us_custom_3baa9b96 #us_grid_1 .w-grid-list {
		grid-template-columns: 1fr !important;
	}
}

/* Services section: title block — bigger and centered */
.us_custom_3baa9b96 > .l-section-h > .g-cols > .wpb_column > .vc_column-inner > .w-iconbox {
	justify-content: center !important;
	text-align: center !important;
	margin-bottom: 2rem !important;
}

/* ------------------------------------------------------------
 * 2) MOVING SERVICES + ABOUT US — add list-icons and replace empty placeholders
 *    DOM: .us_custom_3188818e > .g-cols.cols_2 > 2x .us_custom_9c11761b
 *    Left col: Moving services (ul.wp-block-list)
 *    Right col: About us (paragraph + 3 empty .w-image placeholders + 2 buttons)
 * ------------------------------------------------------------ */

/* Both columns get card-like background + padding (was bare) */
.us_custom_3188818e .us_custom_9c11761b {
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius-lg) !important;
	padding: 2rem !important;
}

/* LEFT col (Moving services) — list with check-icons */
.us_custom_3188818e .us_custom_9c11761b .wp-block-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.us_custom_3188818e .us_custom_9c11761b .wp-block-list li {
	list-style: none !important;
	padding-left: 2rem !important;
	position: relative !important;
	line-height: 1.5 !important;
	margin-bottom: 0.85rem !important;
	font-weight: 500 !important;
	color: var(--lg-text) !important;
}
.us_custom_3188818e .us_custom_9c11761b .wp-block-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 2px;
	width: 1.4rem;
	height: 1.4rem;
	background: var(--lg-primary);
	color: #fff !important;
	border-radius: 50%;
	font-size: 0.75rem;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

/* RIGHT col (About us) — hide blank placeholder images, replace with badge row */
.us_custom_3188818e .us_custom_9c11761b .w-image {
	display: none !important;
}
/* Re-show .w-hwrapper that contained images, but turn it into a badge group via ::before */
.us_custom_3188818e .us_custom_9c11761b .w-hwrapper.align_center {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}
.us_custom_3188818e .us_custom_9c11761b .w-hwrapper.align_center::before {
	content: "✓ BBB Accredited      ✓ IAM Member      ✓ ProMover Status";
	display: block;
	padding: 1rem 1.25rem;
	background: var(--lg-primary-light);
	border-radius: var(--lg-radius);
	font-weight: 600;
	color: var(--lg-primary-dark);
	font-size: 0.92rem;
	text-align: center;
	letter-spacing: 0.01em;
	white-space: pre-wrap;
	line-height: 1.6;
}

/* About us buttons row — side by side */
.us_custom_3188818e .us_custom_9c11761b .w-btn-wrapper {
	display: inline-block;
	margin-right: 0.6rem !important;
	margin-top: 1rem !important;
}

/* Both section title-iconboxes (Moving services / About us) — purple icon circle */
.us_custom_3188818e .w-iconbox.style_circle {
	margin-bottom: 1rem !important;
}

/* ------------------------------------------------------------
 * 3) RELOCATION PLAN — 3 numbered step cards
 *    DOM: .us_custom_5c0dde35 > .us_custom_8670df0a > .g-cols.cols_3
 *    1st col has Title "Relocation plan" + Step 1 content
 *    Cols 2/3 have w-separator size_custom (height:123px) instead of title
 *    Each step text: p1=Step N: (underlined), p2=title, p3=description
 * ------------------------------------------------------------ */

/* Hide old in-col title (will be moved above grid via ::before) */
.us_custom_5c0dde35 .g-cols.cols_3 > .wpb_column:first-child > .vc_column-inner > .w-iconbox,
.us_custom_5c0dde35 .g-cols.cols_3 > .wpb_column:first-child > .vc_column-inner > .w-separator.size_medium {
	display: none !important;
}

/* Hide 123px spacers in cols 2/3 (used for vertical alignment) */
.us_custom_5c0dde35 .g-cols.cols_3 .w-separator.size_custom {
	display: none !important;
}

/* Generated title above grid */
.us_custom_5c0dde35 .us_custom_8670df0a > .vc_column-inner::before {
	content: "How we move you in 3 simple steps";
	display: block;
	text-align: center;
	font-size: clamp(1.7rem, 1.2rem + 1.4vw, 2.4rem);
	font-weight: 800;
	color: var(--lg-text);
	margin-bottom: 2.5rem;
	letter-spacing: -0.02em;
	line-height: 1.15;
}

/* The grid itself — 3 cards with gap */
.us_custom_5c0dde35 .g-cols.cols_3 {
	gap: 1.5rem !important;
	counter-reset: relstep;
}

/* Each step column — card */
.us_custom_5c0dde35 .g-cols.cols_3 > .wpb_column > .vc_column-inner {
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius-lg) !important;
	padding: 2rem 1.75rem !important;
	height: 100% !important;
	transition: transform .15s, box-shadow .15s, border-color .15s;
	position: relative;
}
.us_custom_5c0dde35 .g-cols.cols_3 > .wpb_column > .vc_column-inner:hover {
	transform: translateY(-4px);
	border-color: var(--lg-primary) !important;
	box-shadow: 0 16px 36px -10px rgba(67,56,202,.18) !important;
}

/* Numbered badge per column */
.us_custom_5c0dde35 .g-cols.cols_3 > .wpb_column > .vc_column-inner::before {
	counter-increment: relstep;
	content: "0" counter(relstep);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	background: var(--lg-primary);
	color: #fff;
	border-radius: 50%;
	font-size: 1.05rem;
	font-weight: 800;
	margin-bottom: 1.25rem;
	font-feature-settings: 'tnum';
	box-shadow: 0 4px 12px -2px rgba(67,56,202,.4);
}

/* Hide the original "Step N:" underlined first paragraph */
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column .wpb_wrapper > p:first-child:has(span[style*="underline"]),
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column .wpb_wrapper > p:first-of-type {
	display: none !important;
}

/* Step title (now first visible p after hidden Step N) */
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column .wpb_wrapper > p:nth-of-type(2) {
	font-size: 1.2rem !important;
	font-weight: 700 !important;
	color: var(--lg-text) !important;
	line-height: 1.3 !important;
	margin: 0 0 0.6rem 0 !important;
}
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column .wpb_wrapper > p:nth-of-type(2) strong {
	font-weight: 700 !important;
	color: var(--lg-text) !important;
}

/* Kill legacy services-list strong-pill stylings inside relocation steps
   (the v2.6 rule .us_custom_8670df0a .wpb_text_column p strong applies an
   unwanted background + left-border on step titles because the relocation
   wrapper column IS .us_custom_8670df0a) */
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column p strong {
	display: inline !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border-left: none !important;
	border-radius: 0 !important;
}
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column p strong:hover {
	transform: none !important;
	background: transparent !important;
}

/* Step description (3rd p) */
.us_custom_5c0dde35 .g-cols.cols_3 .wpb_text_column .wpb_wrapper > p:nth-of-type(3) {
	color: var(--lg-muted) !important;
	line-height: 1.65 !important;
	font-size: 0.95rem !important;
	margin: 0 !important;
}

@media (max-width: 900px) {
	.us_custom_5c0dde35 .g-cols.cols_3 {
		grid-template-columns: 1fr !important;
		display: grid !important;
	}
}

/* ------------------------------------------------------------
 * 4) OWNER — split layout: round photo | bio with signature
 *    DOM: section uses .us_custom_b60ef15e wrapper, contains .g-cols.cols_2
 *    Reviews ALSO uses .us_custom_b60ef15e but with .w-content-carousel inside
 *    Distinguish: Owner = .g-cols.cols_2, Reviews = has .w-content-carousel
 * ------------------------------------------------------------ */

/* Container — card */
.us_custom_b60ef15e .g-cols.cols_2 {
	display: grid !important;
	grid-template-columns: 320px 1fr !important;
	gap: 2.5rem !important;
	align-items: center !important;
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius-lg) !important;
	padding: 2.5rem !important;
}

/* Kill the huge separator that bumped bio down */
.us_custom_b60ef15e .g-cols.cols_2 .w-separator.size_huge {
	display: none !important;
}

/* LEFT col — title eyebrow + circular photo */
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:first-child > .vc_column-inner {
	text-align: center !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:first-child .w-iconbox.style_circle {
	display: block !important;
	justify-content: center !important;
	text-align: center !important;
	margin-bottom: 1.25rem !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:first-child .w-iconbox-icon {
	display: none !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:first-child .w-iconbox-title {
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em !important;
	color: var(--lg-primary) !important;
	text-transform: uppercase !important;
	margin: 0 !important;
}

/* Owner photo — circular */
.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf {
	border-radius: 50% !important;
	overflow: hidden !important;
	width: 260px !important;
	height: 260px !important;
	margin: 0 auto !important;
	display: block !important;
	box-shadow: 0 16px 40px -12px rgba(67,56,202,.3) !important;
}
.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf .w-image-h,
.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf .w-image-h img {
	width: 100% !important;
	height: 100% !important;
	border-radius: 50% !important;
}
.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf .w-image-h img {
	object-fit: cover !important;
}
.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf .w-image-shadow {
	display: none !important;
}

/* RIGHT col — bio */
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .wpb_text_column p {
	font-size: 1.05rem !important;
	line-height: 1.7 !important;
	color: var(--lg-text-2) !important;
	margin: 0 0 1rem 0 !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .wpb_text_column p strong {
	color: var(--lg-text) !important;
	font-weight: 700 !important;
}

/* Signature row */
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper {
	display: flex !important;
	align-items: center !important;
	gap: 1.25rem !important;
	margin-top: 1.5rem !important;
	padding-top: 1.5rem !important;
	border-top: 1px solid var(--lg-border) !important;
	justify-content: flex-start !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper .w-image {
	display: block !important;
	flex-shrink: 0;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper .w-image img {
	max-height: 50px !important;
	width: auto !important;
	margin: 0 !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper .wpb_text_column p {
	margin: 0 !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: var(--lg-text) !important;
	text-align: left !important;
}
.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper .wpb_text_column p:first-child {
	display: none !important;  /* hide the &nbsp; spacer p */
}

@media (max-width: 900px) {
	.us_custom_b60ef15e .g-cols.cols_2 {
		grid-template-columns: 1fr !important;
		padding: 1.75rem !important;
		text-align: center;
	}
	.us_custom_b60ef15e .g-cols.cols_2 .w-image.us_custom_46845caf {
		width: 200px !important;
		height: 200px !important;
	}
	.us_custom_b60ef15e .g-cols.cols_2 > .wpb_column:last-child .w-hwrapper {
		justify-content: center !important;
	}
}

/* ------------------------------------------------------------
 * 5) REVIEWS — 5-star rating + bigger cards + author avatar circle
 *    DOM: .us_custom_b60ef15e + .w-content-carousel.items_2
 *    Each review: .w-message.us_custom_6526b576/b6466fc7
 *    Body: <p>quote</p><p>Author Name</p>  (last p = author)
 * ------------------------------------------------------------ */

/* Section title centered */
.us_custom_b60ef15e .w-content-carousel ~ *,
.us_custom_b60ef15e:has(.w-content-carousel) .w-iconbox.style_circle {
	justify-content: center !important;
	text-align: center !important;
}

/* Defuse Impreza's us_animate_this opacity:0 initial state on review cards
   (it relies on IntersectionObserver; reliability across viewport widths
   varies and breaks programmatic screenshotting). Cards stay visible. */
.us_custom_b60ef15e .w-content-carousel .w-message.us_animate_this,
.us_custom_b60ef15e .w-content-carousel .w-message {
	opacity: 1 !important;
	transform: none !important;
}

/* Review card */
.us_custom_b60ef15e .w-content-carousel .w-message {
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: var(--lg-radius-lg) !important;
	padding: 2rem !important;
	box-shadow: 0 4px 16px -4px rgba(15,23,42,.06) !important;
	position: relative !important;
	color: var(--lg-text-2) !important;
}

/* Hide the lonely single-star icon in left corner */
.us_custom_b60ef15e .w-content-carousel .w-message .w-message-icon {
	display: none !important;
}

/* Add full 5-star row at top of body */
.us_custom_b60ef15e .w-content-carousel .w-message .w-message-body::before {
	content: "★★★★★";
	display: block;
	color: var(--lg-accent);
	font-size: 1.3rem;
	letter-spacing: 0.18em;
	margin-bottom: 1rem;
	line-height: 1;
}

/* Quote */
.us_custom_b60ef15e .w-content-carousel .w-message .w-message-body p {
	color: var(--lg-text-2) !important;
	line-height: 1.65 !important;
	font-size: 0.97rem !important;
	margin: 0 0 1rem 0 !important;
}

/* Author (last <p>) — avatar + bold */
.us_custom_b60ef15e .w-content-carousel .w-message .w-message-body p:last-child {
	font-weight: 700 !important;
	color: var(--lg-text) !important;
	font-size: 1rem !important;
	position: relative !important;
	padding-left: 3.25rem !important;
	display: flex !important;
	align-items: center !important;
	margin: 1.25rem 0 0 0 !important;
	min-height: 2.5rem;
	border-top: 1px solid var(--lg-border);
	padding-top: 1.25rem;
}
.us_custom_b60ef15e .w-content-carousel .w-message .w-message-body p:last-child::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1rem;
	width: 2.5rem;
	height: 2.5rem;
	background: linear-gradient(135deg, var(--lg-primary), var(--lg-primary-dark));
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px #fff, 0 2px 8px -2px rgba(67,56,202,.4);
}

/* Owl carousel nav */
.us_custom_b60ef15e .owl-carousel .owl-nav button.owl-prev,
.us_custom_b60ef15e .owl-carousel .owl-nav button.owl-next {
	color: var(--lg-primary) !important;
	background: var(--lg-bg) !important;
	border: 1px solid var(--lg-border) !important;
	border-radius: 50% !important;
	width: 40px !important;
	height: 40px !important;
	transition: all .15s !important;
}
.us_custom_b60ef15e .owl-carousel .owl-nav button:hover {
	background: var(--lg-primary) !important;
	color: #fff !important;
	border-color: var(--lg-primary) !important;
}
.us_custom_b60ef15e .owl-carousel .owl-dots .owl-dot.active span {
	background: var(--lg-primary) !important;
}

/* ============================================================
 * v2.9 — admin bar fix + spacing tighten + Why-us & Footer redesign
 * Triggered by user feedback after v2.8:
 *  - WP admin bar search input was distorted (my input styles leaked)
 *  - too much vertical space between sections
 *  - too many "Call us:" repeats between sections
 *  - hero form too tall
 *  - Why-us block + footer need polish
 * ============================================================ */

/* ------------------------------------------------------------
 * 0) WP ADMIN BAR FIX — my generic input[type=text] rules above
 *    set width:100%, padding:0.85rem, border-radius:10px on EVERY
 *    text-like input, including #wpadminbar #adminbarsearch input.
 *    Reset everything inside #wpadminbar.
 * ------------------------------------------------------------ */
#wpadminbar,
#wpadminbar * {
	box-sizing: content-box !important;
}
#wpadminbar input,
#wpadminbar input[type="text"],
#wpadminbar input[type="search"],
#wpadminbar select,
#wpadminbar textarea {
	width: auto !important;
	padding: 0 4px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 13px !important;
	color: #fff !important;
	min-height: 0 !important;
	height: auto !important;
}
#wpadminbar #adminbarsearch input[type="text"] {
	background: rgba(255,255,255,0.1) !important;
	border-radius: 3px !important;
	padding: 2px 6px !important;
	width: 200px !important;
}
#wpadminbar .ab-icon::before,
#wpadminbar .ab-item::before {
	color: inherit !important;
}

/* ------------------------------------------------------------
 * 1) SECTION SPACING — tighten globally
 * ------------------------------------------------------------ */

/* Override v2.6 .l-main .l-section { padding: 4rem 0 } */
.l-main .l-section {
	padding: 2rem 0 !important;
}
.l-main .l-section.height_small {
	padding: 0.75rem 0 !important;
}
.l-main .l-section.height_medium {
	padding: 2rem 0 !important;
}
.l-main .l-section.height_huge {
	padding: 3rem 0 !important;
}
.l-main .l-section:first-child {
	padding-top: 1rem !important;
}

/* ------------------------------------------------------------
 * 2) PHONE-BUTTON ROWS — there are ~7 inter-section "Call us:"
 *    button rows. Squash them into compact strips so they read
 *    as transitions, not as their own sections.
 * ------------------------------------------------------------ */

.l-main .l-section.height_small:has(> .l-section-h > .g-cols.cols_1 > .wpb_column > .vc_column-inner > .wpb_text_column > .wpb_wrapper > div.phone-placeholder[id^="phone-btn-"]) {
	padding: 0.5rem 0 !important;
}

/* The button inside — make it more compact */
.l-main div.phone-placeholder[id^="phone-btn-"] a {
	padding: 0.55rem 1.3rem !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	box-shadow: 0 2px 8px -2px rgba(67,56,202,.3) !important;
}

/* ------------------------------------------------------------
 * 3) HERO FORM — compact
 * ------------------------------------------------------------ */

body .l-section .g-cols.cols_2-3 .w-form-row {
	margin-bottom: 0.3rem !important;
}
body .l-section .g-cols.cols_2-3 .w-form-row-field input,
body .l-section .g-cols.cols_2-3 .w-form-row-field select,
body .l-section .g-cols.cols_2-3 .w-form-row-field textarea {
	padding: 0.55rem 0.85rem !important;
	font-size: 0.9rem !important;
	min-height: 0 !important;
}
body .l-section .g-cols.cols_2-3 .w-form-row-label {
	font-size: 0.78rem !important;
	margin-bottom: 0.1rem !important;
}
body .l-section .g-cols.cols_2-3 .w-form-row-state {
	font-size: 0.75rem !important;
}
body .l-section .g-cols.cols_2-3 .w-form .w-btn {
	padding: 0.7rem !important;
	font-size: 1rem !important;
	margin-top: 0.5rem !important;
}
/* Form title eyebrow — smaller */
@media (min-width: 900px) {
	body .l-section .g-cols.cols_2-3 .w-form::before {
		font-size: 0.95rem !important;
		margin-bottom: 0.6rem !important;
	}
	/* Hero white-card form — less internal padding */
	body .l-section .g-cols.cols_2-3 > .wpb_column:first-child {
		padding: 1.4rem 1.3rem !important;
	}
}

/* ------------------------------------------------------------
 * 4) WHY US REDESIGN — full-width banner with soft gradient,
 *    4 advantages as horizontal chips, big heading + 2 CTAs
 *    DOM: .us_custom_bfa48b71 > .g-cols.cols_2.reversed
 *    Left col (DOM-order)=.us_custom_1fb76dce (text + Get-a-Quote)
 *    Right col (DOM-order)=4× .us_custom_0ab2621b iconboxes
 * ------------------------------------------------------------ */

.us_custom_bfa48b71 {
	background: linear-gradient(135deg, var(--lg-primary-light) 0%, #fff 60%) !important;
	border-radius: var(--lg-radius-lg) !important;
	margin: 1rem auto !important;
	max-width: calc(100% - 2rem) !important;
	padding: 2.5rem !important;
}

.us_custom_bfa48b71 .g-cols.cols_2 {
	gap: 2.5rem !important;
	align-items: center !important;
}

/* TEXT column (Get a Quote) */
.us_custom_bfa48b71 .us_custom_1fb76dce h2,
.us_custom_bfa48b71 .us_custom_0bd56524 h2 {
	font-size: clamp(1.8rem, 1.3rem + 1.6vw, 2.6rem) !important;
	line-height: 1.1 !important;
	margin: 0 0 0.85rem 0 !important;
	color: var(--lg-text) !important;
}
.us_custom_bfa48b71 .us_custom_1fb76dce p,
.us_custom_bfa48b71 .us_custom_0bd56524 p {
	font-size: 1.05rem !important;
	line-height: 1.55 !important;
	color: var(--lg-text-2) !important;
	margin: 0 0 1.25rem 0 !important;
}
/* Hide the "size_medium" separator */
.us_custom_bfa48b71 .us_custom_1fb76dce ~ .w-separator,
.us_custom_bfa48b71 .w-separator.size_medium {
	display: none !important;
}

/* CTA group: Get a Quote + add phone CTA next to it (CSS-generated) */
.us_custom_bfa48b71 .w-popup.w-btn-wrapper {
	display: inline-block !important;
	margin: 0 0.75rem 0 0 !important;
}
.us_custom_bfa48b71 .w-popup-trigger.w-btn {
	padding: 0.85rem 1.6rem !important;
	font-size: 1rem !important;
	box-shadow: 0 6px 20px -4px rgba(67,56,202,.45) !important;
}
/* Inline phone CTA — appended via ::after on the .us_custom_1fb76dce column */
.us_custom_bfa48b71 .us_custom_1fb76dce .vc_column-inner::after {
	content: "Or call +1 (865) 415-6988";
	display: inline-block;
	margin-left: 0.5rem;
	padding: 0.85rem 1.4rem;
	border: 1.5px solid var(--lg-primary);
	color: var(--lg-primary);
	font-weight: 700;
	font-size: 0.95rem;
	border-radius: var(--lg-radius-pill);
	vertical-align: middle;
	background: transparent;
	transition: all .15s;
}
.us_custom_bfa48b71 .us_custom_1fb76dce .vc_column-inner:hover::after {
	background: var(--lg-primary);
	color: #fff;
}

/* ADVANTAGES column — 2x2 grid of horizontal chips */
.us_custom_bfa48b71 .g-cols.cols_2:not(.reversed) > .wpb_column:first-child,
.us_custom_bfa48b71 .g-cols.cols_2.reversed > .wpb_column:first-child {
	/* This is the 4-iconbox column */
}
.us_custom_bfa48b71 .us_custom_0ab2621b {
	background: #fff !important;
	border: 1px solid rgba(67,56,202,0.1) !important;
	border-radius: var(--lg-radius) !important;
	padding: 1.1rem 1.25rem !important;
	transition: transform .15s, box-shadow .15s, border-color .15s !important;
	box-shadow: 0 2px 8px -2px rgba(15,23,42,.04) !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b:hover {
	transform: translateY(-2px);
	border-color: var(--lg-primary) !important;
	box-shadow: 0 8px 20px -4px rgba(67,56,202,.18) !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b .w-iconbox.iconpos_top {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 0.85rem !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b .w-iconbox-icon {
	width: 44px !important;
	height: 44px !important;
	flex-shrink: 0;
	font-size: 18px !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b .w-iconbox-icon i {
	font-size: 18px !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b .w-iconbox-meta {
	margin: 0 !important;
	text-align: left !important;
}
.us_custom_bfa48b71 .us_custom_0ab2621b .w-iconbox-title {
	font-size: 0.92rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: var(--lg-text) !important;
	margin: 0 !important;
}

@media (max-width: 900px) {
	.us_custom_bfa48b71 {
		padding: 1.5rem !important;
	}
	.us_custom_bfa48b71 .g-cols.cols_2 {
		grid-template-columns: 1fr !important;
		gap: 1.5rem !important;
	}
	.us_custom_bfa48b71 .us_custom_1fb76dce .vc_column-inner::after {
		display: block;
		margin: 0.5rem 0 0 0;
		text-align: center;
	}
}

/* ------------------------------------------------------------
 * 5) FOOTER REDESIGN
 *    DOM: .l-footer > section.us_custom_916d5e53.cols_4 > [brand, links, callback, license]
 *         then section.us_custom_3188818e (certificate logos)
 *         then section.height_small (6-col page sitemap-list)
 * ------------------------------------------------------------ */

.l-footer {
	padding-top: 2rem !important;
	padding-bottom: 0 !important;
}

/* Disable scroll-driven init on footer iconboxes so they always render */
.l-footer .has_scroll_effects,
.l-footer .has_scale,
.l-footer [class*="us_animate_this"] {
	opacity: 1 !important;
	transform: none !important;
}

/* 4-col main strip */
.l-footer .us_custom_916d5e53 .g-cols.cols_4 {
	gap: 2rem !important;
	align-items: flex-start !important;
}

/* Col 1: Brand + contacts */
.l-footer .us_custom_e0fd27a2 .wpb_wrapper {
	font-size: 1.5rem !important;
	font-weight: 800 !important;
	color: #fff !important;
	letter-spacing: -0.02em !important;
	margin-bottom: 1rem !important;
}
.l-footer .w-iconbox.iconpos_left {
	margin-bottom: 0.6rem !important;
	gap: 0.7rem !important;
}
.l-footer .w-iconbox-icon {
	background-color: rgba(255,255,255,0.08) !important;
	border-radius: 8px !important;
	width: 32px !important;
	height: 32px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0;
	font-size: 14px !important;
}
.l-footer .w-iconbox-icon i {
	color: var(--lg-primary-light) !important;
	font-size: 13px !important;
}
.l-footer .w-iconbox-text p {
	margin: 0 !important;
	color: #cbd5e1 !important;
	font-size: 0.9rem !important;
	line-height: 1.5 !important;
}
.l-footer .w-iconbox-text a {
	color: #cbd5e1 !important;
}
.l-footer .w-iconbox-text a:hover {
	color: #fff !important;
}

/* Col 2: page nav (About / Contact / Sitemap) */
.l-footer #us_post_list_o900 .w-grid-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}
.l-footer #us_post_list_o900 .w-grid-item {
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}
.l-footer #us_post_list_o900 .w-post-elm.post_title {
	font-size: 0.95rem !important;
	font-weight: 500 !important;
	margin: 0 !important;
	padding: 0.35rem 0 !important;
}
.l-footer #us_post_list_o900 .w-post-elm.post_title a {
	color: #cbd5e1 !important;
}
.l-footer #us_post_list_o900 .w-post-elm.post_title a:hover {
	color: #fff !important;
}

/* Col 3: Callback button */
.l-footer .w-popup-trigger.w-btn {
	padding: 0.7rem 1.4rem !important;
	font-size: 0.95rem !important;
	box-shadow: 0 4px 16px -4px rgba(67,56,202,.5) !important;
}

/* Col 4: License/DOT/MC — compact stack */
.l-footer .us_custom_916d5e53 .g-cols.cols_4 > .wpb_column:last-child .wpb_text_column {
	margin: 0 !important;
}
.l-footer .us_custom_916d5e53 .g-cols.cols_4 > .wpb_column:last-child .wpb_text_column p {
	color: #94a3b8 !important;
	font-size: 0.82rem !important;
	margin: 0.15rem 0 !important;
	font-weight: 500 !important;
}

/* Certificate logos row — smaller + grayscale */
.l-footer section[class*="us_custom_3188818e"] {
	padding: 1rem 0 !important;
	border-top: 1px solid rgba(255,255,255,0.06) !important;
	margin-top: 1.5rem !important;
}
.l-footer section[class*="us_custom_3188818e"] .w-hwrapper {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 1.5rem !important;
	flex-wrap: wrap !important;
}
.l-footer section[class*="us_custom_3188818e"] .w-image {
	display: block !important;
	flex: 0 0 auto !important;
}
.l-footer section[class*="us_custom_3188818e"] .w-image img {
	max-height: 50px !important;
	width: auto !important;
	filter: grayscale(1) brightness(1.3) opacity(.6) !important;
	transition: filter .25s !important;
}
.l-footer section[class*="us_custom_3188818e"] .w-image img:hover {
	filter: grayscale(0) brightness(1) opacity(1) !important;
}

/* 6-col page-list strip at bottom — tiny sitemap-style links */
.l-footer #us_post_list_y507 .w-grid-list {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.4rem 1rem !important;
	justify-content: center !important;
}
.l-footer #us_post_list_y507 .w-grid-item {
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline-block !important;
}
.l-footer #us_post_list_y507 .w-post-elm.post_title {
	font-size: 0.78rem !important;
	font-weight: 500 !important;
	margin: 0 !important;
}
.l-footer #us_post_list_y507 .w-post-elm.post_title a {
	color: #64748B !important;
	transition: color .15s;
}
.l-footer #us_post_list_y507 .w-post-elm.post_title a:hover {
	color: #cbd5e1 !important;
}

@media (max-width: 900px) {
	.l-footer .us_custom_916d5e53 .g-cols.cols_4 {
		grid-template-columns: 1fr 1fr !important;
		gap: 1.5rem !important;
	}
}
@media (max-width: 600px) {
	.l-footer .us_custom_916d5e53 .g-cols.cols_4 {
		grid-template-columns: 1fr !important;
	}
}

/* ============================================================
 * v2.10 — hotfix on top of v2.9
 *  - boost footer iconbox specificity (v2.7 brute-force was winning)
 *  - constrain footer page-list horizontal overflow
 *  - hide all inter-section "Call us:" button rows (visual noise;
 *    phone is already in header, hero ratings, Why-us CTA, Contacts
 *    section, footer, and sticky mobile)
 * ============================================================ */

/* Hide inter-section phone-button rows entirely.
   Phone is shown 6 other places already, no need for the spacer-pills.
   IMPORTANT: phone-bottom-button plugin REPLACES div.phone-placeholder
   with div.phone-button at JS init — server HTML has phone-placeholder,
   runtime DOM has phone-button. Target the runtime class. */
.l-main .l-section.wpb_row.height_small:has(div.phone-button) {
	display: none !important;
}

/* Footer iconbox — beat v2.7 brute force (which used
   .w-iconbox.color_primary .w-iconbox-icon, specificity 0,3,0).
   Match it with .l-footer .w-iconbox.color_primary .w-iconbox-icon (0,4,0). */
.l-footer .w-iconbox.color_primary .w-iconbox-icon,
.l-footer .w-iconbox.style_default .w-iconbox-icon,
.l-footer .w-iconbox-wrapper .w-iconbox-icon,
.l-footer .w-iconbox .w-iconbox-icon {
	background-color: rgba(255,255,255,0.08) !important;
	background: rgba(255,255,255,0.08) !important;
	border-radius: 8px !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	min-height: 32px !important;
	font-size: 14px !important;
	box-shadow: none !important;
}
.l-footer .w-iconbox.color_primary .w-iconbox-icon i,
.l-footer .w-iconbox .w-iconbox-icon i,
.l-footer .w-iconbox-icon .fa {
	color: var(--lg-primary-light) !important;
	font-size: 13px !important;
}

/* Footer page-list strip — wrap properly so links don't bleed off the edge */
.l-footer #us_post_list_y507 {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 1rem !important;
	overflow: hidden !important;
}
.l-footer #us_post_list_y507 .w-grid-list {
	margin: 0 !important;
}

/* Footer cert-logos strip — same constraint */
.l-footer section[class*="us_custom_3188818e"] .l-section-h {
	max-width: 1200px !important;
	margin: 0 auto !important;
}

/* Make sure footer iconboxes stack vertically (label right of icon, single line) */
.l-footer .w-iconbox.iconpos_left {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 0.65rem !important;
}
.l-footer .w-iconbox-meta {
	margin: 0 !important;
	flex: 1 1 auto;
	min-width: 0;
}

/* Tighten footer bottom padding so it doesn't add a wide gap before WP subfooter */
.l-footer .l-subfooter {
	padding: 0.75rem 0 !important;
}

/* ============================================================
 * BACKUP marker: this style is v2.10 (hotfix)
 * ============================================================ */
