/* ==========================================================================
   AD Group of Companies — site-wide custom styles
   Loaded last on every page.
   ========================================================================== */

/* Contact links (mailto: / tel:) keep the colour of the text around them */
.footer-col p a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s;
}
.footer-col p a:hover,
.footer-col p a:focus {
	color: #c66b3e;
}
.contact-info-text span a,
.form-error-msg a {
	color: inherit;
}
.contact-info-text span a:hover,
.contact-info-text span a:focus {
	color: #c66b3e;
}

/* Privacy Policy & Terms pages */
.legal-content {
	max-width: 860px;
	margin: 0 auto;
}
.legal-content h2 {
	font-size: 22px;
	margin: 36px 0 12px;
}
.legal-content p,
.legal-content li {
	font-size: 15px;
	line-height: 1.7;
}
.legal-content ul {
	padding-left: 20px;
	margin-bottom: 15px;
}
.legal-content ul li {
	list-style: disc;
	margin-bottom: 6px;
}
.legal-content a {
	color: #c66b3e;
}
.legal-content .draft-notice {
	background: #fdf3ec;
	border-left: 4px solid #c66b3e;
	padding: 16px 20px;
	border-radius: 4px;
}
.legal-content .legal-updated {
	color: #777;
	font-size: 14px;
}

/* WhatsApp click-to-chat button (fixed, bottom-right, sits above #scrollUp) */
.whatsapp-float {
	position: fixed;
	right: 20px;
	bottom: 60px;
	z-index: 9999;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #0e3d44;
	border: 2px solid #fff;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 30px;
	line-height: 1;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
	transition: background 0.3s, transform 0.3s;
}
.whatsapp-float:hover,
.whatsapp-float:focus {
	background: #c66b3e;
	color: #fff;
	transform: translateY(-3px);
}
.whatsapp-float:focus-visible {
	outline: 3px solid #c66b3e;
	outline-offset: 3px;
}
@media (max-width: 767px) {
	.whatsapp-float {
		width: 50px;
		height: 50px;
		font-size: 26px;
		right: 16px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.whatsapp-float { transition: none; }
	.whatsapp-float:hover,
	.whatsapp-float:focus { transform: none; }
}

/* <img> tags carry width/height attributes (reserves space, avoids layout
   shift). Zero-specificity default so any existing size rule still wins and
   images scaled by width keep their aspect ratio. */
:where(img[width][height]) {
	height: auto;
}

/* Division pages: intro thumbnail strip. flex:1 images default to
   min-width:auto (their intrinsic width), which pushed the third thumbnail
   off-screen on phones. Let them shrink to share the row. */
.intro-thumbnails img {
	min-width: 0;
	width: 100%;
}

@media (max-width: 767px) {
	/* Services carousel: arrows sat on top of the single visible card.
	   Move them into a centred row below it. */
	.services-owl-carousel .owl-controls {
		text-align: center;
		margin-top: 12px;
	}
	.services-owl-carousel .owl-controls .owl-prev,
	.services-owl-carousel .owl-controls .owl-next {
		position: static !important;
		transform: none !important;
		left: auto !important;
		right: auto !important;
		display: inline-block;
		margin: 0 6px;
	}
	/* ...and trim the empty space under the carousel */
	body .services-sec {
		padding-bottom: 40px;
	}
	body .services-owl-carousel .service-owl-card {
		margin-bottom: 8px;
	}

	/* Justified text leaves big word gaps on narrow screens */
	.about-text {
		text-align: left;
	}
}
