﻿		/* Sticky call button — floating pill, bottom-right, mobile/tablet only */
		.sticky-call { display: none; }
		@media (max-width: 991px) {
			.sticky-call {
				display: flex;
				position: fixed;
				right: 14px;
				bottom: 14px;
				z-index: 1000;
			}
		}
		.sticky-call-btn {
			display: flex;
			align-items: center;
			text-decoration: none;
		}
		.sticky-call-btn .num {
			box-sizing: border-box;
			height: 36px;
			display: flex;
			align-items: center;
			justify-content: center;
			font-family: "Archivo", sans-serif;
			font-weight: 800;
			font-size: 13px;
			color: #fff;
			background: #f4c244;
			white-space: nowrap;
			overflow: visible;
			text-align: center;
			padding: 0 30px 0 16px;
			border-radius: 999px 0 0 999px;
			box-shadow: 0 6px 16px rgba(0,0,0,.25);
		}
		.sticky-call-btn .ico {
			position: relative;
			width: 36px;
			height: 36px;
			margin-left: -16px;
			flex: none;
			border-radius: 50%;
			background: #14171a;
			border: 2px solid #f4c244;
			color: #fff;
			display: flex;
			align-items: center;
			justify-content: center;
			box-shadow: 0 4px 10px rgba(0,0,0,.3);
		}
		.sticky-call-btn .ico svg { position: relative; z-index: 1; width: 16px; height: 16px; }
		.sticky-call-btn .ico .ring {
			position: absolute; inset: 0; border-radius: 50%; border: 1.5px solid #f4c244;
			animation: stickyCallRingPing 1.8s cubic-bezier(0,0,.2,1) infinite;
		}
		.sticky-call-btn .ico .ring.r2 { animation-delay: .9s; }
		@keyframes stickyCallRingPing {
			0% { transform: scale(1); opacity: .85; }
			100% { transform: scale(2.3); opacity: 0; }
		}
		@media (prefers-reduced-motion: reduce) {
			.sticky-call-btn .ico .ring { animation: none; }
		}
		@media (max-width: 991.98px) {
		    .text-center{
		        text-align: left !important;
		    }.owl-stage-outer.owl-height {
                height: 500px !important;
                background: url(https://resolveautoelectrical.com.au/images/banner/banner1-1.jpg);
                margin-top: -100px;
                background-position: bottom;
                background-size: contain;
                background-repeat: no-repeat;
            }
            .service-block-three .inner-box .content .title{
                font-size: 15px !important;
            }
		}

		/* Sticky header — pinned from the top, no scroll threshold, same on all breakpoints.
		   Using position:fixed + a JS-measured spacer instead of position:sticky —
		   sticky depends on every single ancestor having the right overflow/transform
		   setup, which this theme's markup doesn't reliably guarantee. Fixed positioning
		   only cares about the viewport, so it can't be broken by an ancestor rule. */
		.main-header.header-style-two {
			position: fixed;
			top: 0;
			left: 0;
			right: 0;
			z-index: 9999;
		}
		#header-spacer {
			display: block;
			width: 100%;
		}

		/* Menu bar — solid yellow shadow instead of the faint hairline, and a bit shorter */
		.header-style-two .header-lower {
			box-shadow: 0 3px 0 0 #f4c244;
		}
		.header-style-two .header-lower .main-box .logo-box {
			padding: 11px 0;
		}
		.main-header .logo img {
			max-height: 34px;
			width: auto;
		}
		@media (max-width: 991.98px) {
			/* vendor CSS gives the logo a 50px right margin meant to clear the desktop
			   nav, which is hidden here — left in place it can push the hamburger
			   past the edge of the viewport on narrow phones */
			.header-style-two .header-lower .main-box .logo-box {
				margin-right: 0;
			}
			.main-header .logo img {
				max-height: 28px;
			}
		}

		/* Nav pills, with a cyan glow on the section currently in view */
		.main-menu .navigation > li {
			padding: 0;
			margin-right: 8px;
		}
		.main-menu .navigation > li:before {
			display: none;
		}
		.main-menu .navigation > li > a {
			font-family: "Archivo", sans-serif;
			font-weight: 700;
			font-size: 13px;
			padding: 7px 14px;
			border-radius: 999px;
			border: 1px solid transparent;
			color: #d7dade;
			transition: color .2s, background .2s, border-color .2s, text-shadow .2s;
		}
		.main-menu .navigation > li > a:hover {
			color: #fff;
		}
		.main-menu .navigation > li > a.nav-active {
			color: #fff;
			background: rgba(0,142,255,.16);
			border-color: rgba(0,142,255,.5);
			text-shadow: 0 0 8px rgba(0,142,255,.8), 0 0 16px rgba(0,142,255,.4);
		}

		/* Call button — ghost outline, icon in a filled circle, gentle vibrate */
		.nav-call-btn {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			font-family: "Archivo", sans-serif;
			font-weight: 700;
			font-size: 13px;
			color: #fff;
			text-decoration: none;
			border: 1.5px solid var(--theme-color1);
			border-radius: 999px;
			padding: 5px 16px 5px 5px;
			white-space: nowrap;
		}
		.nav-call-btn .ico {
			width: 25px;
			height: 25px;
			border-radius: 50%;
			background: var(--theme-color1);
			color: #04222b;
			display: flex;
			align-items: center;
			justify-content: center;
			flex: none;
		}
		.nav-call-btn .ico svg {
			width: 14px;
			height: 14px;
			animation: navCallVibrate 1.6s ease-in-out infinite;
			transform-origin: 50% 50%;
		}
		@keyframes navCallVibrate {
			0%, 60%, 100% { transform: rotate(0deg); }
			2% { transform: rotate(-18deg); } 4% { transform: rotate(16deg); }
			6% { transform: rotate(-14deg); } 8% { transform: rotate(12deg); }
			10% { transform: rotate(-8deg); } 12% { transform: rotate(6deg); }
			14% { transform: rotate(-4deg); } 16% { transform: rotate(2deg); }
			18% { transform: rotate(0deg); }
		}
		@media (prefers-reduced-motion: reduce) {
			.nav-call-btn .ico svg { animation: none; }
		}

		/* Mobile header: hide the desktop call pill, show a Free Quote pill + custom hamburger instead */
		.mobile-quote-btn {
			display: none;
			align-items: center;
			justify-content: center;
			gap: 5px;
			height: 30px;
			box-sizing: border-box;
			text-decoration: none;
			font-family: "Archivo", sans-serif;
			font-weight: 700;
			font-size: 11.5px;
			color: #f4c244;
			background: transparent;
			border: 1.5px solid #f4c244;
			border-radius: 999px;
			padding: 0 13px;
			white-space: nowrap;
			margin-right: 2px;
		}
		.mobile-quote-btn:link,
		.mobile-quote-btn:visited,
		.mobile-quote-btn:hover,
		.mobile-quote-btn:active,
		.mobile-quote-btn:focus {
			color: #f4c244;
		}
		.mobile-quote-btn svg {
			width: 12px;
			height: 12px;
			flex: none;
		}
		.mobile-nav-toggler {
			display: none;
			align-items: center;
			justify-content: center;
			width: 34px;
			height: 34px;
		}
		.mobile-nav-toggler svg {
			width: 24px;
			height: 24px;
			color: #fff;
			transform: scaleX(-1);
		}
		@media (max-width: 991.98px) {
			.btn-box { display: none; }
			.mobile-quote-btn { display: inline-flex; }
			.mobile-nav-toggler { display: flex; }
		}

		/* Mobile menu panel */
		.mobile-menu .upper-box { padding: 12px 20px; }
		.mobile-menu .nav-logo img { max-height: 32px; }
		.mobile-menu .close-btn {
			width: 30px;
			height: 30px;
			border-radius: 50%;
			background: #f4c244;
			color: #4a3400;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 0;
		}
		.mobile-menu .close-btn svg { width: 15px; height: 15px; }
		.mobile-menu .navigation li > a {
			font-family: "Archivo", sans-serif;
			font-weight: 800;
			letter-spacing: .01em;
		}
		.mobile-menu .navigation li > a.nav-active {
			color: #008eff;
			text-shadow: 0 0 8px rgba(0,142,255,.6);
		}

		/* Callout slider — replaces the old phone/email/tagline header-top bar */
		.callout-strip {
			position: relative;
			background-color: var(--theme-color-dark);
			border-bottom: 1px solid rgba(255,255,255,.08);
			display: flex;
			align-items: stretch;
			overflow: hidden;
		}
		.callout-pin {
			flex: none;
			display: flex;
			align-items: center;
			padding: 0 16px;
			border-right: 1px solid rgba(255,255,255,.14);
		}
		.callout-wcty {
			font-family: "Archivo", sans-serif;
			font-weight: 800;
			font-size: 12px;
			letter-spacing: .01em;
			color: #008eff;
			white-space: nowrap;
			animation: calloutWctyGlow 2.6s ease-in-out infinite;
		}
		@keyframes calloutWctyGlow {
			0%, 100% { text-shadow: 0 0 4px rgba(0,142,255,.35); }
			50% { text-shadow: 0 0 9px rgba(0,142,255,.85), 0 0 16px rgba(0,142,255,.35); }
		}
		@media (prefers-reduced-motion: reduce) {
			.callout-wcty { animation: none; text-shadow: 0 0 6px rgba(0,142,255,.5); }
		}
		.callout-strip .strip-inner {
			position: relative;
			flex: 1;
			min-width: 0;
			overflow: hidden;
			padding: 3px 0;
			-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
			mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
		}
		.callout-track {
			display: flex;
			align-items: center;
			width: max-content;
			gap: 8px;
			padding: 0 12px;
			animation: calloutScroll 38s linear infinite;
		}
		@keyframes calloutScroll {
			from { transform: translateX(0); }
			to { transform: translateX(-50%); }
		}
		.callout-strip:hover .callout-track {
			animation-play-state: paused;
		}
		@media (prefers-reduced-motion: reduce) {
			.callout-track { animation: none; }
		}
		.callout-card {
			display: flex;
			align-items: center;
			gap: 6px;
			height: 21px;
			padding: 0 9px;
			border-radius: 999px;
			flex: none;
		}
		.callout-card.blue { background: rgba(0,142,255,.14); border: 1px solid rgba(0,142,255,.3); }
		.callout-card.yellow { background: rgba(244,194,68,.14); border: 1px solid rgba(244,194,68,.35); }
		.callout-card .label,
		.callout-card .gtext {
			display: inline-block;
			font-family: "Epilogue", sans-serif;
			font-weight: 500;
			font-size: 10px;
			color: #f3f4f5;
			white-space: nowrap;
			transform: scaleY(1.22);
			transform-origin: center;
		}
		.callout-card .label em,
		.callout-card .gtext em {
			font-style: italic;
			color: #f4c244;
		}
		.callout-card .stars { display: flex; gap: 2px; }
		.callout-card .stars svg { width: 11px; height: 11px; }
		.callout-badge {
			width: 15px;
			height: 15px;
			border-radius: 50%;
			flex: none;
			background: #f4c244;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		.callout-badge.google { background: #fff; }
		@media (max-width: 767.98px) {
			.callout-pin { padding: 0 10px; }
			.callout-wcty { font-size: 10px; }
		}

		/* ===== Hero banner — full-bleed photo, dark overlay, text right-aligned ===== */
		.hero-banner {
			position: relative;
			overflow: hidden;
			background: #000;
		}
		.hero-banner-photo {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
		}
		.hero-banner-overlay {
			position: absolute;
			inset: 0;
			background: linear-gradient(270deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.7) 35%, rgba(0,0,0,.1) 100%);
		}
		.hero-banner-content {
			position: relative;
			z-index: 1;
			max-width: 560px;
			margin-left: auto;
			padding: 92px 0;
			text-align: right;
		}
		.hero-badge-row {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			gap: 8px;
			margin-bottom: 12px;
			flex-wrap: wrap;
		}
		.hero-pill {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			flex: none;
			border-radius: 999px;
			border: 1px solid rgba(244,194,68,.5);
			background: rgba(10,10,10,.55);
			backdrop-filter: blur(6px);
			-webkit-backdrop-filter: blur(6px);
			padding: 2px 10px 2px 7px;
			line-height: 1;
		}
		.hero-pill-label {
			font-family: "Epilogue", sans-serif;
			font-weight: 500;
			font-size: 10.5px;
			line-height: 1;
			color: #f5f5f5;
			white-space: nowrap;
		}
		.hero-ping { position: relative; width: 7px; height: 7px; flex: none; }
		.hero-ping .ring {
			position: absolute; inset: 0; border-radius: 50%;
			background: var(--theme-color1); opacity: .75;
			animation: heroDotPing 1.7s cubic-bezier(0,0,.2,1) infinite;
		}
		.hero-ping .core { position: relative; width: 100%; height: 100%; border-radius: 50%; background: var(--theme-color1); }
		@keyframes heroDotPing { 75%, 100% { transform: scale(2.6); opacity: 0; } }

		.hero-bolt-glow { position: relative; width: 14px; height: 14px; flex: none; display: flex; align-items: center; justify-content: center; }
		.hero-bolt-glow::before {
			content: ""; position: absolute; inset: -55%; border-radius: 50%;
			background: radial-gradient(circle, rgba(244,194,68,.65), transparent 70%);
			animation: heroGlowPulse 2.2s ease-in-out infinite;
		}
		.hero-bolt-glow svg { position: relative; z-index: 1; filter: drop-shadow(0 0 3px rgba(244,194,68,.9)); }
		@keyframes heroGlowPulse { 0%, 100% { opacity: .5; transform: scale(.85); } 50% { opacity: 1; transform: scale(1.2); } }

		.hero-banner-title {
			font-family: "Archivo", sans-serif;
			font-weight: 800;
			color: #fff;
			font-size: 32px;
			line-height: 1.22;
			margin: 0 0 12px;
			text-align: right;
			text-wrap: balance;
		}
		.hero-banner-title em { font-style: italic; }
		.hero-yellow { color: #f4c244; }
		.hero-blue { color: #008eff; }
		.hero-brand { color: #008eff; font-weight: 700; font-style: italic; }

		.hero-banner-text {
			font-family: "Epilogue", sans-serif;
			font-size: 15px;
			color: #dcdcdc;
			line-height: 1.7;
			margin: 0 0 4px;
			margin-left: auto;
			max-width: 46ch;
			text-align: right;
		}
		.hero-banner-text:last-of-type { margin-bottom: 24px; }

		.hero-cta-ghost {
			position: relative;
			display: inline-flex;
			align-items: center;
			gap: 10px;
			background: transparent;
			border: 1.5px solid var(--theme-color1);
			color: #fff;
			font-family: "Archivo", sans-serif;
			font-weight: 700;
			font-size: 15px;
			line-height: 1;
			padding: 6px 24px;
			border-radius: 999px;
		}
		.hero-cta-ghost .num { color: #008eff; }
		.hero-cta-ghost::before {
			content: "";
			position: absolute;
			inset: -6px;
			border-radius: 999px;
			animation: heroCtaGlow 2.4s ease-out infinite;
			pointer-events: none;
		}
		@keyframes heroCtaGlow {
			0%   { box-shadow: 0 0 0 0 rgba(0,142,255,.55); }
			70%  { box-shadow: 0 0 16px 8px rgba(0,142,255,0); }
			100% { box-shadow: 0 0 0 0 rgba(0,142,255,0); }
		}
		.hero-cta-row {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			gap: 14px;
			flex-wrap: wrap;
		}
		.hero-cta-white {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			background: transparent;
			border: 1.5px solid #fff;
			color: #fff;
			font-family: "Archivo", sans-serif;
			font-weight: 700;
			font-size: 15px;
			line-height: 1;
			padding: 6px 24px;
			border-radius: 999px;
		}
		.hero-brand-underline {
			position: relative;
			display: inline-block;
			padding-bottom: 1px;
		}
		.hero-brand-underline svg {
			position: absolute;
			left: 0;
			bottom: -1.5px;
			width: 100%;
			height: 6px;
			display: block;
		}

		@media (prefers-reduced-motion: reduce) {
			.hero-ping .ring, .hero-bolt-glow::before, .hero-cta-ghost::before { animation: none; }
		}

		@media (max-width: 767.98px) {
			.hero-banner-content {
				max-width: 70%;
				padding: 32px 0;
			}
			.hero-badge-row {
				flex-direction: column;
				align-items: flex-end;
				gap: 6px;
				margin-bottom: 14px;
			}
			.hero-pill { padding: 2px 8px 2px 6px; }
			.hero-pill-label { font-size: 9px; }
			.hero-ping, .hero-bolt-glow { width: 11px; height: 11px; }
			.hero-banner-title { font-size: 19px; margin-bottom: 8px; }
			.hero-banner-text { font-size: 10.5px; margin-bottom: 3px; }
			.hero-banner-text:last-of-type { margin-bottom: 16px; }
			.hero-cta-ghost { font-size: 11px; padding: 6px 16px; gap: 7px; }
			.hero-cta-white { font-size: 11px; padding: 6px 16px; gap: 7px; }
			.hero-cta-row { gap: 8px; }
			.hero-brand-underline { padding-bottom: 1px; }
		}

		/* ===== Trust / Free Quote section ===== */
		.trust-section {
			position: relative;
			overflow: hidden;
			background: #fff;
			padding: 46px 0 54px;
		}
		.trust-section::before {
			content: "";
			position: absolute;
			inset: 0;
			background-image:
				repeating-linear-gradient(0deg, rgba(0,142,255,.06) 0px, rgba(0,142,255,.06) 1px, transparent 1px, transparent 46px),
				repeating-linear-gradient(90deg, rgba(0,142,255,.06) 0px, rgba(0,142,255,.06) 1px, transparent 1px, transparent 46px);
		}
		.trust-card {
			position: relative;
			z-index: 1;
			overflow: hidden;
			max-width: 1040px;
			margin: 0 auto;
			border-radius: 28px;
			background: #12151a;
			border: 1.5px solid rgba(255,255,255,.3);
			box-shadow: 0 10px 24px -4px rgba(0,0,0,.55);
			padding: 40px;
			display: grid;
			grid-template-columns: 1.15fr 0.85fr;
			gap: 40px;
			align-items: center;
		}
		.trust-card::before {
			content: "";
			position: absolute;
			top: -60px;
			right: -40px;
			width: 340px;
			height: 260px;
			background: radial-gradient(closest-side, rgba(0,142,255,.42), transparent 72%);
			filter: blur(4px);
			z-index: 0;
			pointer-events: none;
			animation: trustGlowDrift 5s ease-in-out infinite;
		}
		@keyframes trustGlowDrift {
			0%   { transform: translate(0, 0) scale(1); }
			50%  { transform: translate(-45px, 35px) scale(1.15); }
			100% { transform: translate(0, 0) scale(1); }
		}
		.trust-card > * { position: relative; z-index: 1; }

		.trust-eyebrow { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 12px; letter-spacing: .6px; color: #008eff; margin: 0 0 10px; }
		.trust-heading { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(24px, 2.6vw, 30px); line-height: 1.18; color: #fff; margin: 0 0 12px; text-wrap: balance; }
		.trust-heading .cy { color: #f4c244; }
		.trust-heading .yl { color: #f4c244; }
		.trust-text { font-family: "Epilogue", sans-serif; font-size: 14px; line-height: 1.65; color: #c7cbd1; margin: 0 0 18px; max-width: 46ch; }
		.trust-text b { color: #008eff; font-weight: 700; }

		.trust-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 14px; }
		.trust-list li { display: flex; align-items: center; gap: 8px; font-family: "Epilogue", sans-serif; font-size: 12.5px; font-weight: 600; color: #eef0f2; }
		.trust-check { flex: none; width: 20px; height: 20px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(244,194,68,.16); }
		.trust-check svg { width: 9px; height: auto; }

		.trust-quote-card { background: rgba(0,0,0,.35); border: 1.5px solid rgba(255,255,255,.55); border-radius: 18px; padding: 16px; backdrop-filter: blur(2px); }
		.trust-quote-head { display: flex; align-items: center; gap: 9px; margin: 0 0 8px; }
		.trust-quote-head h3 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 15px; color: #fff; margin: 0; }
		.trust-quote-icon { position: relative; width: 20px; height: 20px; flex: none; display: flex; align-items: center; justify-content: center; }
		.trust-quote-icon .ring { position: absolute; inset: 0; border-radius: 50%; border: 1px solid #f4c244; animation: trustRingPing 2.2s cubic-bezier(0,0,.2,1) infinite; }
		.trust-quote-icon .ring.r2 { animation-delay: 1.1s; }
		@keyframes trustRingPing { 0% { transform: scale(1); opacity: .8; } 100% { transform: scale(2.4); opacity: 0; } }
		.trust-quote-icon svg { position: relative; z-index: 1; width: 15px; height: 15px; filter: drop-shadow(0 0 4px rgba(244,194,68,.9)); }
		.trust-quote-icon path { fill: #f4c244; }

		.trust-row { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
		.trust-row--email { grid-template-columns: 1.7fr 1fr; }
		.trust-quote-card input, .trust-quote-card textarea {
			width: 100%;
			background: #0b0d10;
			border: 1px solid rgba(255,255,255,.1);
			border-radius: 10px;
			color: #fff;
			font-family: "Epilogue", sans-serif;
			font-size: 12.5px;
			padding: 7px 11px;
			margin-top: 6px;
			outline: none;
		}
		.trust-quote-card input::placeholder, .trust-quote-card textarea::placeholder { color: #6c7278; }
		.trust-quote-card input:focus, .trust-quote-card textarea:focus { border-color: #f4c244; box-shadow: 0 0 0 3px rgba(244,194,68,.18); }
		.trust-quote-card textarea { resize: none; min-height: 0; }
		.trust-quote-btn {
			margin-top: 8px;
			width: 100%;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 8px;
			background: #f4c244;
			color: #1a1300;
			border: none;
			border-radius: 999px;
			font-family: "Archivo", sans-serif;
			font-weight: 800;
			font-size: 12.5px;
			line-height: 1;
			padding: 9px 14px;
			cursor: pointer;
		}

		@media (prefers-reduced-motion: reduce) {
			.trust-card::before, .trust-quote-icon .ring { animation: none; }
		}
		#about-sec { border-top: 1px solid rgba(11,13,16,.08); padding-top: 50px; padding-bottom: 40px; box-shadow: none; }

		/* tablets: card stacks, but the callout list stays 2-up */
		@media (max-width: 860px) {
			.trust-card { grid-template-columns: 1fr; padding: 28px; gap: 24px; }
		}
		/* phones: compact everything, callouts drop to 1-up */
		@media (max-width: 640px) {
			.trust-section { padding: 28px 0 34px; }
			.trust-card { padding: 20px; gap: 16px; }
			.trust-eyebrow { font-size: 10px; letter-spacing: .4px; margin-bottom: 6px; }
			.trust-heading { font-size: 18px; margin-bottom: 8px; }
			.trust-text { font-size: 12.5px; margin-bottom: 12px; }
			.trust-list { grid-template-columns: 1fr; gap: 6px; }
			.trust-quote-card { padding: 14px; }
			.trust-quote-head { margin-bottom: 8px; }
			#about-sec { padding-top: 28px; padding-bottom: 28px; }
		}

		/* ===== About Us section (photo background, card on top) ===== */
		.about-section-two {
			position: relative; overflow: hidden;
			display: flex; align-items: center; min-height: 460px;
		}
		.about-photo-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
		.about-photo-fade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(11,13,16,.82) 0%, rgba(11,13,16,.4) 58%, rgba(11,13,16,.12) 100%); }
		.about-section-two .auto-container { position: relative; z-index: 2; }

		.about-card {
			position: relative; max-width: 600px; background: #12151a;
			border: 1.5px solid var(--theme-color1); border-radius: 18px;
			padding: 40px; box-shadow: 0 30px 60px rgba(0,0,0,.35); color: #fff;
		}

		/* icon sits behind the label, at its native (yellow) colour - a plain <img> renders reliably on every browser/device */
		.about2-kicker { position: relative; display: inline-flex; align-items: center; height: 62px; margin-bottom: 12px; }
		.about2-kicker img {
			width: 30px; height: 62px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 1;
		}
		.about2-kicker .label { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-left: 26px; }

		.about2-heading { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(21px, 2.4vw, 27px); line-height: 1.25; margin: 0 0 14px; color: #fff; text-wrap: balance; }
		.about2-text { color: #d8dade; font-size: 14px; line-height: 1.7; margin: 0 0 14px; text-align: left; }

		.about2-check-row { display: grid; grid-template-columns: repeat(2, 1fr); justify-items: start; gap: 10px 28px; margin: 4px 0 18px; }
		.about2-check-row span { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: #fff; }
		.about2-check-row svg { width: 14px; height: auto; flex: none; }

		.about2-btn-row { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; justify-content: center; }
		.about2-btn-call {
			position: relative; display: inline-flex; align-items: center; gap: 10px;
			background: var(--theme-color1); border: 1.5px solid var(--theme-color1); color: #fff;
			font-family: "Archivo", sans-serif; font-weight: 700; font-size: 15px; line-height: 1;
			padding: 10px 24px; border-radius: 999px;
		}
		.about2-btn-call svg { width: 16px; height: 16px; flex: none; }
		.about2-btn-call::before { content: ""; position: absolute; inset: -6px; border-radius: 999px; animation: about2CtaGlow 2.4s ease-out infinite; pointer-events: none; }
		@keyframes about2CtaGlow { 0% { box-shadow: 0 0 0 0 rgba(0,142,255,.5); } 70% { box-shadow: 0 0 16px 8px rgba(0,142,255,0); } 100% { box-shadow: 0 0 0 0 rgba(0,142,255,0); } }
		.about2-btn-ghost {
			display: inline-flex; align-items: center; gap: 8px;
			background: transparent; border: 1.5px solid #fff; color: #fff;
			font-family: "Epilogue", sans-serif; font-weight: 700; font-size: 13.5px; line-height: 1;
			padding: 10px 22px; border-radius: 999px;
		}
		.about2-btn-ghost svg { width: 14px; height: 14px; }

		@media (max-width: 767.98px) {
			.about-section-two { min-height: 0; }
			.about-card { padding: 24px 20px; background: rgba(18,21,26,.62); }
			.about2-kicker { height: 46px; margin-bottom: 8px; }
			.about2-kicker img { width: 22px; height: 46px; }
			.about2-kicker .label { font-size: 13px; margin-left: 19px; }
			.about2-heading { font-size: 15px; margin-bottom: 10px; }
			.about2-text { font-size: 12.5px; margin-bottom: 10px; }
			.about2-check-row { gap: 8px 14px; margin-bottom: 14px; }
			.about2-check-row span { font-size: 11px; }
			.about2-check-row svg { width: 11px; }
			.about2-btn-row { gap: 8px; }
			.about2-btn-call { font-size: 12px; padding: 8px 16px; gap: 6px; }
			.about2-btn-call svg { width: 13px; height: 13px; }
			.about2-btn-ghost { font-size: 11px; padding: 8px 14px; gap: 6px; }
			.about2-btn-ghost svg { width: 12px; height: 12px; }
		}

		/* ===== Our Services section ===== */
		.svc-section { position: relative; background: #f4f5f6; padding: 56px 44px; overflow: hidden; }
		.svc-section > .svc-bg-pattern { position: absolute; top: 0; left: 0; width: 65%; height: 195px; z-index: 0; pointer-events: none; }
		.svc-section > * { position: relative; z-index: 1; }

		.svc-kicker { position: relative; display: flex; justify-content: flex-end; width: 100%; align-items: center; height: 62px; margin-bottom: 10px; }
		.svc-kicker img { width: 30px; height: 62px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 1; opacity: .55; }
		.svc-kicker span { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-right: 26px; }

		.svc-h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(19px, 2.1vw, 23px); line-height: 1.32; color: #14171a; margin: 0 0 16px auto; max-width: 50%; text-wrap: balance; text-align: right; }
		.svc-h2 .yellow { color: #f4c244; }
		.svc-h2 .italic { font-style: italic; }
		.svc-h2 .underline-blue { position: relative; display: inline-block; padding-bottom: 1px; }
		.svc-h2 .underline-blue svg { position: absolute; left: 50%; bottom: -4px; width: 78%; height: 6px; display: block; transform: translateX(-50%); }
		.svc-intro { font-size: 14px; line-height: 1.5; color: #444; max-width: 62%; margin: 0 0 22px auto; text-align: right; }

		/* desktop zig-zag rows */
		.svc-row { position: relative; display: grid; grid-template-columns: 90px 260px 1fr; gap: 34px; align-items: start; padding: 34px 0; }
		.svc-row:not(:first-of-type)::before {
			content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px;
			background: linear-gradient(to right, transparent, rgba(11,13,16,.14) 50%, transparent);
		}
		.svc-row.flip { grid-template-columns: 1fr 260px 90px; }
		.svc-num { order: 1; font-family: "Archivo", sans-serif; font-weight: 900; font-size: 64px; line-height: 1; color: transparent; -webkit-text-stroke: 1.8px #f4c244; align-self: start; }
		.svc-row.flip .svc-num { order: 3; text-align: right; }
		.svc-photo { position: relative; order: 2; border-radius: 6px; overflow: hidden; }
		.svc-photo img { display: block; width: 100%; aspect-ratio: 16/10; object-fit: cover; }
		.svc-photo::after {
			content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px;
			background: linear-gradient(to right, var(--theme-color1), rgba(0,142,255,0));
			-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
			-webkit-mask-composite: xor; mask-composite: exclude;
			pointer-events: none;
		}
		.svc-text-block { order: 3; }
		.svc-row.flip .svc-text-block { order: 1; }
		.svc-title { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 19px; color: #14171a; margin: 0 0 10px; }
		.svc-text { font-size: 13.5px; line-height: 1.7; color: #444; margin: 0 0 12px; }
		.svc-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; }
		.svc-tags span { font-size: 11.5px; font-weight: 400; color: #14171a; background: #fff; border: 1px solid rgba(11,13,16,.12); padding: 3px 12px; line-height: 1.6; border-radius: 999px; }

		/* photo placeholder texture, for services without a supplied photo yet */
		.svc-ph { background: linear-gradient(135deg, #7a8188, #565c62); width: 100%; aspect-ratio: 16/10; overflow: hidden; }

		.svc-desktop { display: block; }
		.svcm-list { display: none; }

		/* expandable mobile cards - whole card is the tap target, image stays fixed */
		.svcm-card { position: relative; display: grid; grid-template-columns: 140px 1fr; gap: 12px; align-items: start; padding: 8px; margin: 0 -8px; border-radius: 12px; cursor: pointer; transition: background .15s; }
		.svcm-card:active { background: rgba(0,142,255,.06); }
		.svcm-card.open { background: rgba(0,142,255,.05); }
		.svcm-card:not(:first-child)::before {
			content: ""; position: absolute; left: 8px; right: 8px; top: 0; height: 1px;
			background: linear-gradient(to right, transparent, rgba(11,13,16,.14) 50%, transparent);
		}
		.svcm-card.flip { grid-template-columns: 1fr 140px; }
		.svcm-card.flip .svcm-thumb { order: 2; }
		.svcm-card.flip .svcm-body { order: 1; text-align: right; }
		.svcm-card.flip .svcm-head { padding-right: 0; padding-left: 22px; }
		.svcm-thumb { width: 140px; height: 140px; flex: none; }
		.svcm-thumb-inner { position: relative; width: 100%; height: 100%; border-radius: 10px; overflow: hidden; box-shadow: 0 3px 10px rgba(11,13,16,.12); }
		.svcm-thumb-inner::after {
			content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px;
			background: linear-gradient(to right, var(--theme-color1), rgba(0,142,255,0));
			-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
			-webkit-mask-composite: xor; mask-composite: exclude;
			pointer-events: none;
		}
		.svcm-thumb-inner img { width: 100%; height: 100%; object-fit: cover; display: block; }
		.svcm-body { min-width: 0; }
		.svcm-head { position: relative; padding-right: 22px; }
		.svcm-body h4 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 12.5px; line-height: 1.3; margin: 0 0 3px; color: #14171a; }
		.svcm-body .short { font-size: 11px; line-height: 1.45; color: #666; margin: 0; }
		.svcm-plus {
			position: absolute; top: 2px; right: 0;
			width: 14px; height: 14px; color: #008eff; transition: transform .2s; pointer-events: none;
		}
		.svcm-card.flip .svcm-plus { right: auto; left: 0; }
		.svcm-card.open .svcm-plus { transform: rotate(180deg); }
		.svcm-more { margin-top: 0; display: none; }
		.svcm-card.open .svcm-more { display: block; }
		.svcm-more p { font-size: 11px; line-height: 1.3; color: #555; margin: 0; }
		.svcm-more .svc-tags { justify-content: center; margin-top: 6px; margin-left: -152px; width: calc(100% + 152px); max-height: 52px; overflow: hidden; }
		.svcm-card.flip .svcm-more .svc-tags { margin-left: 0; margin-right: -152px; width: calc(100% + 152px); }
		.svcm-more .svc-tags span { font-size: 9.5px; padding: 2px 8px; }

		@media (max-width: 767.98px) {
			.svc-section { padding: 40px 20px; }
			.svc-bg-pattern { width: 78%; height: 125px; }
			.svc-kicker { height: 46px; margin-bottom: 8px; }
			.svc-kicker img { width: 22px; height: 46px; }
			.svc-kicker span { font-size: 13px; margin-right: 19px; }
			.svc-h2 { font-size: 15px; margin-bottom: 10px; max-width: 88%; margin-left: auto; }
			.svc-intro { font-size: 12.5px; max-width: 100%; margin-bottom: 24px; }
			.svc-desktop { display: none; }
			.svcm-list { display: block; }
			.svcm-body .short, .svcm-more p { text-align: left; }
		}

		/* ===== Services callout stripe ===== */
		.svc-stripe-wrap { position: relative; margin: 40px -44px -56px; overflow: hidden; }
		.svc-stripe { position: relative; overflow: hidden; padding: 6px 0 15px; background: #0d1013; box-shadow: 0 -18px 34px -14px rgba(0,0,0,.55); display: flex; align-items: center; }
		.svc-stripe-yellow { position: absolute; left: 0; right: 0; bottom: 0; height: 9px; background: #f4c244; z-index: 3; }
		.svc-stripe-yellow::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(11,13,16,.55), rgba(11,13,16,0) 70%); }
		.svc-stripe::before, .svc-stripe::after { content: ""; position: absolute; top: 0; bottom: 0; width: 70px; z-index: 2; pointer-events: none; }
		.svc-stripe::before { left: 0; background: linear-gradient(to right, #0d1013, transparent); }
		.svc-stripe::after { right: 0; background: linear-gradient(to left, #0d1013, transparent); }
		.svc-stripe-track { display: flex; width: max-content; gap: 16px; animation: svcStripeMarquee 26s linear infinite; }
		@keyframes svcStripeMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
		@media (prefers-reduced-motion: reduce) { .svc-stripe-track { animation: none; } }
		.svc-stripe-card {
			display: flex; align-items: center; gap: 10px; flex: none; white-space: nowrap;
			font-family: "Archivo", sans-serif; font-weight: 800; font-size: 13.5px; color: #fff;
			background: #14171a; border: 1.5px solid rgba(0,142,255,.35); box-shadow: 0 0 14px rgba(0,142,255,.18);
			border-radius: 10px; padding: 3px 16px;
		}
		.svc-stripe-card svg { width: 15px; height: 15px; flex: none; color: #008eff; }
		@media (max-width: 767.98px) {
			.svc-stripe-wrap { margin: 28px -20px -40px; }
			.svc-stripe-card { font-size: 12px; padding: 4px 14px; }
		}

		/* ===== "We do all Routine Services" style card, below the stripe ===== */
		.wwcd-section { padding: 60px 20px; background: #fff; }
		.wwcd-wrap {
			position: relative; max-width: 1160px; margin: 0 auto; background: #e9ebf1; border-radius: 18px;
			padding: 34px 40px 38px; box-shadow: 10px 10px 0 rgba(11,13,16,.9); overflow: hidden;
		}
		.wwcd-wrap > .wwcd-bg-pattern { position: absolute; top: 0; right: 0; width: 42%; height: 220px; z-index: 0; pointer-events: none; }
		.wwcd-wrap > *:not(.wwcd-bg-pattern) { position: relative; z-index: 1; }
		.wwcd-head { display: block; }
		.wwcd-badge { width: 28px; height: 28px; border-radius: 8px; background: #f4c244; display: flex; align-items: center; justify-content: center; flex: none; margin-bottom: 14px; }
		.wwcd-badge svg { width: 13px; height: 13px; color: #14171a; }
		.wwcd-wrap h3 { margin: 0 0 8px; font-family: "Archivo", sans-serif; font-size: clamp(22px, 2.8vw, 30px); font-weight: 800; color: #14171a; }
		.wwcd-wrap h3 em { font-style: italic; color: #008eff; }
		.wwcd-wrap p.sub { margin: 0 0 24px; font-size: 13px; line-height: 1.6; color: #555; max-width: 62ch; }
		.wwcd-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
		.wwcd-card { position: relative; background: #14171a; border-radius: 12px; overflow: hidden; box-shadow: 0 14px 28px rgba(11,13,16,.28); }
		.wwcd-thumb { position: relative; width: 100%; aspect-ratio: 4/3; overflow: hidden; }
		.wwcd-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
		.wwcd-thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,13,16,0) 55%, rgba(11,13,16,.88) 100%); }
		.wwcd-body { position: absolute; left: 0; right: 0; bottom: 0; padding: 0 14px 12px; z-index: 2; }
		.wwcd-body h4 { margin: 0; font-family: "Archivo", sans-serif; font-size: clamp(8.5px, 2.2vw, 13px); font-weight: 900; color: #fff; line-height: 1.25; text-align: center; text-shadow: 0 2px 6px rgba(0,0,0,.6); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
		.wwcd-ribbon {
			position: absolute; top: 10px; left: -6px; z-index: 3; background: #f4c244; color: #14171a;
			font-family: "Archivo", sans-serif; font-weight: 900; font-size: 9px; letter-spacing: .04em; text-transform: uppercase;
			padding: 2px 8px 2px 11px; line-height: 1.4; clip-path: polygon(0 0, 100% 0, 90% 50%, 100% 100%, 0 100%);
			animation: wwcdStamp 1.8s ease-in-out infinite;
		}
		@keyframes wwcdStamp { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.18); } }
		@media (prefers-reduced-motion: reduce) { .wwcd-ribbon { animation: none; } }
		@media (max-width: 767.98px) {
			.wwcd-section { padding: 40px 20px; }
			.wwcd-wrap { padding: 24px 20px 26px; border-radius: 14px; box-shadow: 7px 7px 0 rgba(11,13,16,.9); }
			.wwcd-wrap > .wwcd-bg-pattern { width: 55%; height: 140px; }
			.wwcd-wrap h3 { font-size: 20px; }
			.wwcd-wrap p.sub { font-size: 11.5px; margin-bottom: 18px; }
			.wwcd-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
		}

		/* ===== Our Jobs section ===== */
		.jobs-section { position: relative; padding: 60px 44px; background: #fff; overflow: hidden; }
		.jobs-section > .jobs-bg-pattern { position: absolute; top: 0; right: 0; width: 42%; height: 300px; z-index: 0; pointer-events: none; }
		.jobs-section > .auto-container { position: relative; z-index: 1; }
		.jobs-kicker { position: relative; display: flex; justify-content: flex-start; width: 100%; align-items: center; height: 62px; margin-bottom: 10px; }
		.jobs-kicker img { width: 30px; height: 62px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 1; opacity: .55; }
		.jobs-kicker span { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-left: 26px; }
		.jobs-h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(19px, 2.1vw, 23px); line-height: 1.25; color: #14171a; margin: 0 0 18px; text-wrap: balance; text-align: left; max-width: 100ch; }
		.jobs-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 130px; grid-auto-flow: dense; gap: 16px; }
		.jobs-card { position: relative; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 22px rgba(11,13,16,.12); transition: transform .18s; }
		.jobs-card:hover { transform: translateY(-4px); }
		.jobs-card img { width: 100%; height: 100%; object-fit: cover; display: block; }
		.jobs-card::after {
			content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; z-index: 1;
			background: linear-gradient(135deg, var(--theme-color1), rgba(0,142,255,0) 60%);
			-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
			-webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none;
		}
		.jobs-card.m-big { grid-column: span 2; grid-row: span 2; }
		.jobs-card.m-wide { grid-column: span 2; }
		.jobs-card.m-tall { grid-row: span 2; }
		@media (max-width: 900px) {
			.jobs-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 90px; gap: 10px; }
			.jobs-card.m-wide { grid-column: span 2; grid-row: span 1; }
			.jobs-card.m-tall { grid-row: span 1; }
		}
		@media (max-width: 767.98px) {
			.jobs-section { padding: 40px 20px; }
			.jobs-bg-pattern { width: 55%; height: 190px; }
			.jobs-kicker { height: 46px; margin-bottom: 8px; }
			.jobs-kicker img { width: 22px; height: 46px; }
			.jobs-kicker span { font-size: 13px; margin-left: 19px; }
			.jobs-h2 { font-size: 15px; margin-bottom: 20px; max-width: 100%; text-wrap: wrap; }
		}

		/* ===== Reviews section: rotating cards + heading side by side ===== */
		.rev-section { position: relative; overflow: hidden; padding: 36px 0; }
		.rev-section > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
		.rev-section::before { content: ""; position: absolute; inset: 0; background: linear-gradient(to left, rgba(10,12,14,.93) 0%, rgba(10,12,14,.68) 55%, rgba(10,12,14,.45) 100%); z-index: 1; }
		.rev-section::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 9px; background: #f4c244; z-index: 3; }
		.rev-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px; }

		.rev-stripe { position: relative; overflow: hidden; background: #0a0c0e; }
		.rev-track {
			display: flex; width: max-content; gap: 16px; padding-left: 48px; animation: revMarquee 42s linear infinite; will-change: transform;
			-webkit-mask-image: linear-gradient(to right, transparent, #000 60px, #000 calc(100% - 60px), transparent);
			mask-image: linear-gradient(to right, transparent, #000 60px, #000 calc(100% - 60px), transparent);
		}
		@keyframes revMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
		@media (prefers-reduced-motion: reduce) { .rev-track { animation: none; } }

		.rev-card { flex: none; width: 240px; background: #fff; border-radius: 12px; padding: 14px 16px; box-shadow: 0 14px 28px rgba(0,0,0,.4); display: flex; flex-direction: column; }
		.rev-card .stars { display: flex; gap: 2px; margin-bottom: 8px; }
		.rev-card .stars svg { width: 13px; height: 13px; color: #f4c244; }
		.rev-card p { font-style: italic; font-size: 12px; line-height: 1.5; color: #3a3d42; margin: 0 0 10px; flex: 1; }
		.rev-card .who { margin-top: auto; padding-top: 10px; border-top: 1px solid rgba(20,23,26,.1); }
		.rev-card .who .name { font-weight: 800; font-size: 12px; color: #14171a; margin-bottom: 0; line-height: 1.2; }
		.rev-card .who .src { display: flex; align-items: center; gap: 5px; font-size: 10px; color: #6b7280; }

		.rev-head { padding-right: 32px; text-align: right; max-width: 300px; }
		.rev-kicker { position: relative; display: flex; justify-content: flex-end; width: 100%; align-items: center; height: 48px; margin-bottom: 8px; }
		.rev-kicker img { width: 24px; height: 48px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 1; opacity: .55; }
		.rev-kicker span { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 14px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-right: 20px; }
		.rev-head h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(19px, 2vw, 24px); line-height: 1.25; color: #fff; margin: 0 0 10px auto; text-wrap: balance; max-width: 18ch; }
		.rev-head h2 .hl { color: #f4c244; }
		.rev-score { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
		.rev-score .txt { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #b9bec4; }
		.rev-score .glogo { display: inline-flex; align-items: center; }
		.rev-score .stars { display: flex; gap: 2px; }
		.rev-score .stars svg { width: 15px; height: 15px; color: #f4c244; }

		@media (max-width: 900px) {
			.rev-inner { grid-template-columns: 1fr; }
			.rev-head { padding: 0 16px; text-align: right; order: -1; margin-bottom: 10px; max-width: none; width: 100%; }
			.rev-kicker { justify-content: flex-end; height: 28px; margin-bottom: 2px; }
			.rev-kicker img { width: 14px; height: 28px; }
			.rev-kicker span { font-size: 13px; }
			.rev-head h2 { max-width: none; font-size: 16px; margin-bottom: 4px; }
			.rev-score { align-items: flex-start; gap: 0; }
			.rev-score .txt { line-height: 1; }
			.rev-score .stars { line-height: 1; }
			.rev-section { padding: 14px 0; }
			.rev-track { padding-left: 24px; gap: 12px; }
			.rev-card { width: 230px; padding: 10px 12px; }
			.rev-card p { margin-bottom: 6px; }
			.rev-card .who { padding-top: 6px; }
			.rev-track {
				-webkit-mask-image: linear-gradient(to right, transparent, #000 30px, #000 calc(100% - 30px), transparent);
				mask-image: linear-gradient(to right, transparent, #000 30px, #000 calc(100% - 30px), transparent);
			}
		}

		/* ===== FAQ section ===== */
		.faq-section { background: #f4f5f6; padding: 64px 44px; position: relative; box-shadow: 0 18px 26px -14px rgba(11,13,16,.28); }
		.faq-section > .faq-bg-pattern { position: absolute; top: 0; right: 0; width: 42%; height: 260px; z-index: 0; pointer-events: none; }
		.faq-section > .auto-container { position: relative; z-index: 1; }
		.faq-inner { display: grid; grid-template-columns: .6fr 1.4fr; gap: 56px; align-items: start; }

		.faq-kicker { position: relative; display: flex; justify-content: flex-start; width: 100%; align-items: center; height: 62px; margin-bottom: 10px; }
		.faq-kicker img { width: 30px; height: 62px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 1; opacity: .55; }
		.faq-kicker span { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-left: 26px; }
		.faq-head h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(24px, 2.8vw, 32px); line-height: 1.2; color: #14171a; margin: 0 0 14px; text-wrap: balance; max-width: 14ch; }
		.faq-head p { font-size: 13.5px; line-height: 1.75; color: #555c63; margin: 0; max-width: 38ch; }
		.faq-head p b, .faq-head p a { color: #14171a; font-weight: 800; text-decoration: none; }

		.faq-list { background: #fff; border-radius: 16px; box-shadow: 0 10px 30px rgba(11,13,16,.06); padding: 6px 26px; }
		.faq-item { border-bottom: 1px solid rgba(11,13,16,.08); }
		.faq-item:last-child { border-bottom: none; }
		.faq-q { all: unset; box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; padding: 20px 2px; cursor: pointer; font-family: "Archivo", sans-serif; font-weight: 800; font-size: 14.5px; color: #14171a; }
		.faq-q .chev { flex: none; width: 20px; height: 20px; color: #008eff; transition: transform .25s ease; }
		.faq-item.open .faq-q .chev { transform: rotate(180deg); }
		.faq-a-wrap { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .28s ease; }
		.faq-item.open .faq-a-wrap { grid-template-rows: 1fr; }
		.faq-a-inner { overflow: hidden; }
		.faq-a { margin: 0 0 20px; font-size: 13px; line-height: 1.75; color: #5b636b; max-width: 90ch; }

		@media (max-width: 900px) {
			.faq-section { padding: 26px 16px; }
			.faq-inner { grid-template-columns: 1fr; gap: 14px; }
			.faq-kicker { height: 32px; margin-bottom: 3px; }
			.faq-kicker img { width: 16px; height: 32px; }
			.faq-kicker span { font-size: 12px; margin-left: 16px; }
			.faq-head h2 { max-width: none; font-size: 17px; margin-bottom: 6px; }
			.faq-head p { max-width: none; font-size: 12px; }
			.faq-section > .faq-bg-pattern { width: 65%; height: 160px; }
			.faq-list { padding: 2px 14px; }
			.faq-q { font-size: 11px; padding: 12px 2px; line-height: 1.3; gap: 10px; }
			.faq-q .chev { width: 16px; height: 16px; }
			.faq-a { font-size: 11px; line-height: 1.6; margin-bottom: 14px; }
		}

		/* ===== Contact section: diagnostic widget + form cards ===== */
		.c2-section { position: relative; background: #f4f5f6; padding: 64px 44px; }
		.c2-section > .c2-bg-pattern { position: absolute; top: 0; left: 0; width: 45%; height: 200px; z-index: 0; pointer-events: none; }
		.c2-section > *:not(.c2-bg-pattern) { position: relative; z-index: 1; }
		.c2-head { text-align: right; max-width: 700px; margin: 0 0 22px auto; }
		.c2-kicker { position: relative; display: flex; justify-content: flex-end; width: 100%; align-items: center; height: 40px; margin-bottom: 6px; }
		.c2-kicker img { width: 20px; height: 40px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 1; opacity: .55; }
		.c2-kicker span { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .07em; text-transform: uppercase; color: #008eff; position: relative; z-index: 2; margin-right: 26px; }
		.c2-head h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(22px, 2.4vw, 28px); line-height: 1.15; margin: 0 0 6px; color: #14171a; text-wrap: balance; }
		.c2-head p { font-size: 13px; line-height: 1.45; color: #555c63; margin: 0; }

		.c2-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: stretch; }

		.c2-photo-frame { position: relative; border-radius: 20px; overflow: hidden; padding: 44px 36px; display: flex; align-items: center; justify-content: center; }
		.c2-photo-frame > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
		.c2-photo-frame::before { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(10,12,14,.62), rgba(10,12,14,.32)); z-index: 1; }

		.diag-card { position: relative; z-index: 2; width: 100%; max-width: 420px; background: rgba(20,23,26,.55); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1.5px solid rgba(0,142,255,.4); border-radius: 16px; box-shadow: 0 20px 48px rgba(0,0,0,.35); overflow: hidden; }
		.diag-header { background: transparent; border-bottom: 1px solid rgba(255,255,255,.14); padding: 10px 16px; color: #fff; position: relative; overflow: hidden; }
		.diag-header::after { content: ""; position: absolute; right: -30px; top: 50%; width: 150px; height: 150px; margin-top: -75px; border-radius: 50%; background: radial-gradient(circle, rgba(0,142,255,.55), rgba(0,142,255,0) 70%); animation: diagGlowFloat 5s ease-in-out infinite; }
		@media (prefers-reduced-motion: reduce) {
			.diag-header::after { animation: none; }
		}
		.diag-header-row { display: flex; align-items: center; gap: 10px; position: relative; z-index: 1; }
		.diag-header .ico { width: 24px; height: 24px; border-radius: 7px; background: rgba(255,255,255,.18); display: flex; align-items: center; justify-content: center; flex: none; }
		.diag-header .ico svg { width: 13px; height: 13px; }
		.diag-header h3 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 14.5px; line-height: 1.15; margin: 0 0 2px; color: rgba(255,255,255,.8); }
		.diag-header p { font-size: 10.5px; margin: 0; opacity: .92; color: #fff; }
		@keyframes diagGlowFloat {
			0%, 100% { transform: translateY(-18px) scale(.85); opacity: .55; }
			50% { transform: translateY(18px) scale(1.2); opacity: 1; }
		}

		.diag-body { padding: 14px 18px 16px; }
		.diag-symptoms-label { font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: rgba(255,255,255,.55); margin: 0 0 7px; }

		.symptom-row { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.14); border-left: 3px solid rgba(255,255,255,.14); border-radius: 9px; cursor: pointer; transition: border-color .15s, background .15s; margin-bottom: 6px; }
		.symptom-row:last-child { margin-bottom: 0; }
		.symptom-row[data-type="battery"] { border-left-color: rgba(0,142,255,.55); }
		.symptom-row[data-type="alternator"] { border-left-color: rgba(244,194,68,.85); }
		.symptom-row:hover { background: rgba(255,255,255,.06); }
		.symptom-row.checked[data-type="battery"] { background: rgba(0,142,255,.14); border-color: rgba(0,142,255,.5); }
		.symptom-row.checked[data-type="alternator"] { background: rgba(244,194,68,.2); border-color: rgba(244,194,68,.7); }
		.symptom-row input { width: 15px; height: 15px; accent-color: var(--theme-color1); flex: none; cursor: pointer; }
		.symptom-row[data-type="alternator"] input { accent-color: #f4c244; }
		.symptom-row span { font-size: 12px; font-weight: 500; color: #e7e9eb; line-height: 1.3; }
		.symptom-row.disabled { opacity: .4; cursor: not-allowed; }
		.symptom-row.disabled input { cursor: not-allowed; }

		.diag-results { margin-top: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 16px 18px; display: none; }
		.diag-results.show { display: block; }
		.diag-results .label { font-size: 10px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: rgba(255,255,255,.55); margin: 0 0 4px; }
		.diag-results h4 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 16px; margin: 0 0 8px; color: #fff; }
		.diag-results h4 span { color: #008eff; }
		.diag-results h4 span.alt { color: #f4c244; }
		.diag-results h4 span.mix { color: #fff; }
		.diag-results p.desc { font-size: 12px; line-height: 1.6; color: rgba(255,255,255,.65); margin: 0 0 14px; }

		.diag-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 14px; }
		.diag-stat { border-radius: 12px; padding: 12px 8px; text-align: center; }
		.diag-stat.battery { background: rgba(0,142,255,.12); border: 1px solid rgba(0,142,255,.35); }
		.diag-stat.alternator { background: rgba(244,194,68,.18); border: 1px solid rgba(244,194,68,.5); }
		.diag-stat .pct { display: block; font-family: "Archivo", sans-serif; font-weight: 800; font-size: 24px; line-height: 1; margin-bottom: 4px; font-variant-numeric: tabular-nums; }
		.diag-stat.battery .pct { color: #008eff; }
		.diag-stat.alternator .pct { color: #f4c244; }
		.diag-stat .lbl { font-size: 9px; font-weight: 600; color: rgba(255,255,255,.55); text-transform: uppercase; letter-spacing: .02em; }

		.diag-bar { width: 100%; height: 8px; border-radius: 999px; overflow: hidden; display: flex; background: rgba(255,255,255,.12); margin-bottom: 6px; }
		.diag-bar .seg-battery { background: var(--theme-color1); height: 100%; transition: width .4s ease; }
		.diag-bar .seg-alt { background: #f4c244; height: 100%; transition: width .4s ease; }
		.diag-legend { display: flex; justify-content: space-between; font-size: 10px; font-weight: 500; color: rgba(255,255,255,.55); text-transform: uppercase; letter-spacing: .03em; margin-bottom: 16px; font-variant-numeric: tabular-nums; }
		.diag-legend .b { color: #008eff; }
		.diag-legend .a { color: #f4c244; }

		.diag-cta { display: block; width: 100%; text-align: center; font-family: "Archivo", sans-serif; font-weight: 700; font-size: 13.5px; padding: 12px 16px; border-radius: 999px; text-decoration: none; transition: opacity .15s; border: 1.5px solid transparent; }
		.diag-cta:hover { opacity: .88; }
		.diag-cta.battery { background: #009fc2; border-color: #009fc2; color: #fff; }
		.diag-cta.alternator { background: #f4c244; border-color: #f4c244; color: #14171a; }
		.diag-cta.mixed { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.35); color: #fff; }

		.c2-form-card { background: #fff; border-radius: 20px; box-shadow: 0 14px 34px rgba(11,13,16,.08); border: 1.5px solid #f4c244; padding: 24px 26px; display: flex; flex-direction: column; justify-content: center; }
		.c2-form-card .eyebrow { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: #008eff; margin: 0 0 6px; }
		.c2-form-card h3 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: 20px; margin: 0 0 14px; color: #14171a; }

		.c2-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 8px; }
		.c2-field label { display: block; font-size: 10.5px; font-weight: 700; color: #6b7280; text-transform: uppercase; letter-spacing: .03em; margin-bottom: 4px; }
		.c2-field label .req { color: #008eff; }
		.c2-field input, .c2-field textarea {
			width: 100%; background: #f4f5f6; border: 1.5px solid rgba(11,13,16,.08); border-radius: 8px;
			color: #14171a; font-family: "Archivo", sans-serif; font-size: 13px; padding: 8px 11px; outline: none; transition: border-color .15s, box-shadow .15s;
		}
		.c2-field input::placeholder, .c2-field textarea::placeholder { color: #9aa0a6; }
		.c2-field input:focus, .c2-field textarea:focus { border-color: var(--theme-color1); box-shadow: 0 0 0 3px rgba(0,142,255,.14); background: #fff; }
		.c2-field textarea { resize: none; min-height: 62px; }
		.c2-field.full { margin-bottom: 10px; }

		.c2-submit { width: 100%; display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: var(--theme-color1); color: #fff; border: none; border-radius: 999px; font-family: "Archivo", sans-serif; font-weight: 800; font-size: 13.5px; padding: 11px 20px; cursor: pointer; transition: opacity .15s; }
		.c2-submit:hover { opacity: .9; }
		.c2-submit svg { width: 16px; height: 16px; }

		.c2-info-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 32px; }
		.c2-info-item { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid rgba(11,13,16,.08); border-radius: 14px; padding: 16px 18px; }
		.c2-info-item .ico { width: 38px; height: 38px; border-radius: 10px; background: rgba(0,142,255,.1); display: flex; align-items: center; justify-content: center; flex: none; }
		.c2-info-item .ico svg { width: 18px; height: 18px; color: #009fc2; }
		.c2-info-item h5 { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; color: #6b7280; margin: 0 0 2px; }
		.c2-info-item a, .c2-info-item span.val { font-size: 13px; font-weight: 700; color: #14171a; text-decoration: none; }

		@media (max-width: 900px) {
			.c2-section { padding: 40px 20px; }
			.c2-section > .c2-bg-pattern { width: 60%; height: 130px; }
			.c2-head { text-align: right; margin: 0 0 30px; max-width: none; }
			.c2-kicker { justify-content: flex-end; height: 46px; margin-bottom: 8px; }
			.c2-kicker img { width: 22px; height: 46px; }
			.c2-kicker span { font-size: 13px; }
			.c2-head h2 { font-size: 22px; }
			.c2-grid { grid-template-columns: 1fr; }
			.c2-info-row { grid-template-columns: 1fr; }
			.c2-form-card { width: 94vw; margin-left: calc(50% - 47vw); margin-right: calc(50% - 47vw); border-radius: 12px; padding: 14px 16px; }
			.c2-form-card .eyebrow { margin-bottom: 3px; }
			.c2-form-card h3 { font-size: 16px; margin-bottom: 6px; }
			.c2-row { grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 4px; }
			.c2-field label { font-size: 9.5px; margin-bottom: 2px; }
			.c2-field input, .c2-field textarea { padding: 5px 9px; font-size: 12px; }
			.c2-field textarea { min-height: 34px; }
			.c2-field.full { margin-bottom: 5px; }
			.c2-submit { padding: 8px 16px; font-size: 12.5px; }
			.c2-photo-frame { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding: 20px 16px; border-radius: 0; box-shadow: 0 -14px 26px rgba(0,0,0,.4), 0 14px 26px rgba(0,0,0,.4); }
			.diag-card { max-width: none; border-radius: 14px; }
			.diag-header { padding: 8px 14px; }
			.diag-header-row > div { flex: 1; min-width: 0; }
			.diag-header h3 { font-size: clamp(10.5px, 3.4vw, 14.5px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
			.diag-header p { font-size: 10.5px; }
			.diag-body { padding: 12px 14px 14px; }
			.symptom-row { padding: 7px 10px; gap: 8px; margin-bottom: 5px; }
			.symptom-row input { width: 15px; height: 15px; }
			.symptom-row span { font-size: 10.3px; line-height: 1.3; }
		}

		/* ===== CTA section: centered glass card ===== */
		.cta-section { position: relative; border-radius: 0; overflow: hidden; min-height: 260px; display: flex; align-items: center; justify-content: center; margin-bottom: 0; }
		.cta-section img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; filter: brightness(.55); }
		.cta-card { position: relative; z-index: 1; width: 78%; max-width: 780px; margin: 26px auto; padding: 18px 32px; text-align: center; background: rgba(20,23,26,.55); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1.5px solid rgba(0,142,255,.4); border-radius: 16px; }
		.cta-card h2 { font-family: "Archivo", sans-serif; font-weight: 800; font-size: clamp(20px, 2.4vw, 26px); line-height: 1.28; color: #fff; margin: 0 auto 12px; text-wrap: balance; max-width: 48ch; }
		.cta-card h2 .hl { color: #f4c244; }
		.cta-card p { font-size: 13.5px; line-height: 1.55; color: #d8dade; margin: 0 auto 14px; max-width: 48ch; }
		.cta-card p .ru { position: relative; display: inline-block; padding-bottom: 1px; }
		.cta-card p .ru svg { position: absolute; left: 0; bottom: -3px; width: 100%; height: 5px; display: block; }
		.cta-btn-row { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; align-items: center; }
		.cta-btn-row .btn-call {
			position: relative; display: inline-flex; align-items: center; gap: 7px;
			background: var(--theme-color1); border: 1.5px solid var(--theme-color1); color: #fff;
			font-family: "Archivo", sans-serif; font-weight: 700; font-size: 14px; line-height: 1;
			padding: 8px 14px; border-radius: 999px; text-decoration: none;
		}
		.cta-btn-row .btn-call svg { width: 16px; height: 16px; }
		.cta-btn-row .btn-ghost-w {
			display: inline-flex; align-items: center; gap: 6px;
			background: transparent; border: 1.5px solid #fff; color: #fff;
			font-family: "Archivo", sans-serif; font-weight: 700; font-size: 13px; line-height: 1;
			padding: 8px 14px; border-radius: 999px; text-decoration: none;
		}
		.cta-btn-row .btn-ghost-w svg { width: 15px; height: 15px; }
		@media (max-width: 767.98px) {
			.cta-card { width: 90%; margin: 24px auto; padding: 22px 20px; }
			.cta-btn-row { flex-direction: column; width: 100%; }
			.cta-btn-row .btn-call, .cta-btn-row .btn-ghost-w { width: 100%; justify-content: center; }
		}
