:root {
	--hq-blue: #0070bb;
	--hq-muted: #6b7280;
	--hq-border: rgba(15, 23, 42, 0.12);
	--hq-bg: #f7f8fb;
}

body {
	background: var(--hq-bg);
	color: #0f172a;
}

.navbar-brand img {
	width: 200px;
	height: 43px;
}

.hero {
	background:
		linear-gradient(135deg, #f0f7ff 0%, #e6f0fa 100%);
	border-bottom: 1px solid var(--hq-border);
}

.card-soft {
	border: 1px solid var(--hq-border);
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
	border-radius: 18px;
}

.container {
	max-width: 960px;
}

.btn-hq {
	color: #ffffff;
	background-color: #0070bb;
	border: 1px solid #0070bb;
}

.btn-hq:hover,
.btn-hq:focus {
	color: #ffffff;
	background-color: #005fa0;
	border-color: #005fa0;
}

.btn-hq:active,
.btn-hq.active {
	color: #ffffff;
	background-color: #004f88;
	border-color: #004f88;
}

.btn-hq:disabled,
.btn-hq.disabled {
	color: #ffffff;
	background-color: #0070bb;
	border-color: #0070bb;
	opacity: 0.65;
}


.btn-outline-hq {
	color: #0070bb;
	border: 1px solid #0070bb;
	background-color: transparent;
}

.btn-outline-hq:hover,
.btn-outline-hq:focus {
	color: #ffffff;
	background-color: #0070bb;
	border-color: #0070bb;
}

.btn-outline-hq:active,
.btn-outline-hq.active {
	color: #ffffff;
	background-color: #005fa0;
	border-color: #005fa0;
}

.btn-outline-hq:disabled,
.btn-outline-hq.disabled {
	color: #0070bb;
	background-color: transparent;
	border-color: #0070bb;
	opacity: 0.65;
}

.badge-soft {
	background: #cfe2ff; /* solid light blue */
	color: var(--hq-blue);
	border: 1px solid #0070bb;
	border-radius: 999px;
	padding: 0.4rem 0.7rem;
	font-weight: 600;
	font-size: 0.875rem;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.hero {
	background:
		linear-gradient(135deg, rgba(240, 247, 255, 0.72) 0%, rgba(230, 240, 250, 0.92) 100%),
		url("../img/hero-roofing-bg.png");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border-bottom: 1px #dee2e6;
}

.icon-pill {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(2, 6, 23, 0.06);
	border: 1px solid var(--hq-border);
	flex: 0 0 auto;
}

.muted {
	color: var(--hq-muted);
}

.section {
	padding: 56px 0;
}

.section-tight {
	padding: 44px 0;
}

.testimonial-carousel .carousel-inner {
	transition: height 200ms ease;
}

.testimonial-carousel .carousel-item > .testimonial-slide {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.carousel-dot {
	width: 22px;
	height: 8px;
	border-radius: 999px;
	background: rgba(0, 0, 0, 0.15);
	padding: 0;
	min-width: 22px;
	border: 0;
	box-shadow: none;
}

.carousel-dot.active {
	background: var(--hq-blue);
}

.text-cta {
	color: var(--hq-blue);
}

.quote {
	border-left: 3px solid rgba(11, 94, 215, 0.35);
	padding-left: 14px;
}

.footer {
	border-top: 1px solid var(--hq-border);
	background: #ffffff;
}