/* =========================================================================
   Services page (id 9) — hero, service-card grid, subscribe CTA.
   Scoped to section IDs. Colours from Elementor globals.
   ========================================================================= */

/* ---------------- HERO / PAGE TITLE ---------------- */
#vz-svc-hero { position: relative; overflow: hidden; }
#vz-svc-hero .elementor-container { position: relative; z-index: 2; }
#vz-svc-hero::after {                       /* faint globe backdrop */
	content: "\f57d"; font-family: "Font Awesome 6 Free"; font-weight: 900;
	position: absolute; right: -40px; top: 50%; transform: translateY(-50%);
	font-size: 340px; line-height: 1; color: rgba(255, 255, 255, .06);
	pointer-events: none; z-index: 1;
}

/* ---------------- SERVICES GRID ---------------- */
/* Spacing between cards */
#vz-svc-grid .elementor-inner-section .elementor-column { padding-left: 16px !important; padding-right: 16px !important; }
#vz-svc-grid .elementor-inner-section + .elementor-inner-section { margin-top: 40px !important; }

/* Each inner-section column is a card */
#vz-svc-grid .elementor-inner-section .elementor-column > .elementor-widget-wrap {
	background: #fff;
	border: 1px solid #eef1f7;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 12px 30px rgba(18, 48, 107, .06);
	transition: transform .3s ease, box-shadow .3s ease;
	height: 100%;
	position: relative;
}
#vz-svc-grid .elementor-inner-section .elementor-column:hover > .elementor-widget-wrap {
	transform: translateY(-6px);
	box-shadow: 0 24px 46px rgba(18, 48, 107, .14);
}
/* Card image */
#vz-svc-grid .elementor-widget-image { margin: 0 !important; }
#vz-svc-grid .elementor-widget-image img {
	width: 100%; height: 220px; object-fit: cover; display: block;
}
/* Content area (icon-box) with overlapping icon badge */
#vz-svc-grid .elementor-widget-icon-box { margin: 0 !important; }
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-wrapper {
	text-align: left; padding: 34px 5px 6px; position: relative;
}
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-icon {
	position: absolute; top: -28px; right: 24px; margin: 0;
}
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-icon .elementor-icon {
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 56px !important; height: 56px !important; padding: 0 !important;
	border-radius: 50%;
	background: linear-gradient(135deg, color-mix(in srgb, var(--e-global-color-secondary) 82%, #fff), var(--e-global-color-secondary));
	box-shadow: 0 10px 22px rgba(18, 48, 107, .22);
}
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-icon .elementor-icon svg {
	width: 24px !important; height: 24px !important; fill: #fff !important;
}
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-title {
	font-size: 20px; font-weight: 700; color: var(--e-global-color-secondary); margin-bottom: 10px;
}
#vz-svc-grid .elementor-widget-icon-box .elementor-icon-box-description {
	color: var(--e-global-color-text); font-size: 14.5px; line-height: 1.7;
}
/* VIEW MORE link */
#vz-svc-grid .elementor-widget-button { margin: 0 !important; }
#vz-svc-grid .elementor-widget-button .elementor-button {
	background: transparent !important; box-shadow: none !important;
	color: var(--e-global-color-primary) !important;
	font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
	padding: 6px 5px 26px; justify-content: flex-start;
}
#vz-svc-grid .elementor-widget-button .elementor-button .elementor-button-icon { transition: transform .2s ease; }
#vz-svc-grid .elementor-widget-button .elementor-button:hover .elementor-button-icon { transform: translateX(5px); }

/* ---------------- SUBSCRIBE / CTA ---------------- */
#vz-svc-cta { position: relative; overflow: hidden; }
.vz-sub-form {
	display: flex; align-items: center; box-sizing: border-box; background: #fff;
	border-radius: 44px; padding: 6px 6px 6px 10px; max-width: 520px; box-shadow: 0 18px 40px rgba(0,0,0,.15);
}
.vz-sub-form input[type="email"] {
	flex: 1 1 auto; min-width: 0; box-sizing: border-box;
	border: 0 !important; outline: 0 !important; background: transparent !important; box-shadow: none !important;
	padding: 14px 18px; margin: 0 !important; font-size: 15px; color: #333; font-family: 'Poppins', sans-serif;
}
.vz-sub-form button {
	flex: 0 0 52px; width: 52px !important; height: 52px !important; min-width: 52px;
	box-sizing: border-box; border-radius: 50% !important; border: 0 !important; padding: 0 !important; margin: 0; cursor: pointer;
	background: var(--e-global-color-primary); color: #fff; font-size: 17px; line-height: 1;
	display: flex; align-items: center; justify-content: center; transition: filter .2s ease;
}
.vz-sub-form button i { font-size: 17px; }
.vz-sub-form button:hover { filter: brightness(.92); }

/* ---------------- Responsive ---------------- */
@media (max-width: 767px) {
	#vz-svc-cta .elementor-column { width: 100% !important; }
	.vz-sub-form { margin-top: 20px; }
}
