/*
 * Dallas location page — component set for the 6 new sections built from
 * Figma node 1987:4603, plus additive .ldv-bgv__badge/__list/__cta rules
 * (bg-video.php gained those as optional elements; existing case-study
 * pages never populate them, so this is the only page that ever paints
 * them). Enqueued only on template-location-dallas.php.
 */

/* ---------- eyebrow pill on shared sections (FAQ / Testimonials / Industries)
   These template-parts are reused by many other pages; the eyebrow field is
   optional on their ACF group and only ever populated on this page, so the
   markup/style stays scoped to this body class and never affects them. */
/* .faqSec .headContent and .services-industry .main-info have no
   text-align of their own (only their h2/p do) - the eyebrow pill, being
   the first child, defaults to left instead of following the heading. */
.page-template-theme-templatestemplate-location-dallas-v2-php .faqSec .headContent,
.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .main-info {
	text-align: center;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .faqSec .headContent .sectionEyebrow,
.page-template-theme-templatestemplate-location-dallas-v2-php .trustedFounder .main .sectionEyebrow,
.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .main-info .sectionEyebrow {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 20px;
	margin-bottom: 14px;
	border-radius: 100px;
	background: rgba(208, 31, 48, 0.1);
	color: #d01f30;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

/* Industries carousel card — .services-industry .left-info h3/h4 ship
   site-wide at 42px/28px; scoped down to this page's own sizing, with the
   subheading in the theme red accent. Card title can now be a link
   (title_link ACF field) — inherit the heading's size/color/weight, no
   underline until hover. */
.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .left-info h3 {
	font-size: 30px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .left-info h4 {
	font-size: 22px;
	color: #d01f30;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .left-info h3 a {
	color: inherit;
	font: inherit;
	text-decoration: none;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .services-industry.ldv-scf .left-info h3 a:hover {
	color: #d01f30;
	text-decoration: underline;
}

/* ---------- shared head-block pattern used by every new section ---------- */

.ldv-prob .main-info,
.ldv-hrc .main-info,
.ldv-fl3 .main-info,
.ldv-pg6 .main-info,
.ldv-wcu .main-info {
	max-width: 720px;
	margin: 0 auto 50px;
	text-align: center;
}

.ldv-hrc .main-info small,
.ldv-fl3 .main-info small,
.ldv-pg6 .main-info small,
.ldv-wcu .main-info small {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 20px;
	margin-bottom: 14px;
	border-radius: 100px;
	background: rgba(208, 31, 48, 0.1);
	color: #d01f30;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.ldv-hrc .main-info h2,
.ldv-fl3 .main-info h2,
.ldv-pg6 .main-info h2,
.ldv-wcu .main-info h2 {
	font-size: 46px;
	line-height: 1.2;
	font-weight: 500;
	color: #171717;
	margin-bottom: 14px;
}

/* Accent word treatment — same italic script + red underline used by
   .ldv-prob__title, .ldv-bgv__title, and .topnotch .main h2 elsewhere on
   this page (and site-wide, e.g. .industriesCta .leftInfo h2 span). */
.ldv-hrc .main-info h2 span,
.ldv-fl3 .main-info h2 span,
.ldv-pg6 .main-info h2 span,
.ldv-wcu .main-info h2 span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
	font-size: 58px;
}

.ldv-hrc .main-info h2 span::before,
.ldv-fl3 .main-info h2 span::before,
.ldv-pg6 .main-info h2 span::before,
.ldv-wcu .main-info h2 span::before {
	content: "";
	position: absolute;
	bottom: 6px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 7px;
	border-bottom: 7px solid #e3725d;
}

.ldv-hrc .main-info p,
.ldv-fl3 .main-info p,
.ldv-pg6 .main-info p,
.ldv-wcu .main-info p {
	font-size: 17px;
	line-height: 1.6;
	color: #6b6f76;
}

/* ---------- 1. Problem Statement ---------- */

.ldv-prob {
	padding: 90px 0;
}

.ldv-prob__grid {
	display: flex;
	align-items: center;
	gap: 60px;
}

.ldv-prob__collage {
	flex: 1 1 45%;
}

.ldv-prob__collage-img {
	width: 100%;
	height: auto;
	border-radius: 12px;
	object-fit: cover;
}

.ldv-prob__body {
	flex: 1 1 50%;
}

.ldv-prob__eyebrow {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 20px;
	margin-bottom: 14px;
	border-radius: 100px;
	background: rgba(208, 31, 48, 0.1);
	color: #d01f30;
	font-size: 13px;
	font-weight: 600;
}

.ldv-prob__title {
	font-size: 46px;
	line-height: 1.25;
	font-weight: 500;
	color: #171717;
	margin-bottom: 18px;
}

.ldv-prob__title span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
	font-size: 58px;
}

.ldv-prob__title span::before {
	content: "";
	position: absolute;
	bottom: 8px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 7px;
	border-bottom: 7px solid #e3725d;
}

.ldv-prob__body .ldv-prob__copy p {
	font-size: 17px;
	line-height: 1.7;
	color: #565a60;
	margin-bottom: 16px;
}

.ldv-prob__body .btnWrapper {
	margin-top: 20px;
}

/* .whiteBorderBtn/.custonBtn have no real base style outside the dark
   footer context they were built for — on this section's white background
   they render with no visible border/text color at all. Give this section
   its own contrasting look instead of relying on those global classes. */
.ldv-prob__body .btnWrapper a,
.ldv-prob__body .btnWrapper button {
	display: inline-flex;
	align-items: center;
	height: 48px;
	padding: 0 28px;
	border: 1.5px solid #d01f30;
	border-radius: 100px;
	background: #d01f30;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease;
}

.ldv-prob__body .btnWrapper a:hover,
.ldv-prob__body .btnWrapper button:hover {
	background: #be1e2d;
	border-color: #be1e2d;
}

/* ---------- 2. Hover Reveal Cards ---------- */

.ldv-hrc {
	padding: 90px 0;
}

.ldv-hrc__row {
	display: flex;
	gap: 20px;
	height: 480px;
}

.ldv-hrc__tile {
	position: relative;
	flex: 1 1 0;
	border-radius: 16px;
	overflow: hidden;
	cursor: pointer;
	transition: flex 0.5s ease;
}

.ldv-hrc__row:hover .ldv-hrc__tile {
	flex: 1 1 0;
}

.ldv-hrc__row:hover .ldv-hrc__tile:hover,
.ldv-hrc__tile:focus-within {
	flex: 2.4 1 0;
}

.ldv-hrc__tile-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ldv-hrc__tile-scrim {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.15) 55%, rgba(0, 0, 0, 0) 100%);
}

.ldv-hrc__tile-body {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 28px;
	color: #fff;
}

.ldv-hrc__tile-body h3 {
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 8px;
}

.ldv-hrc__tile-desc {
	font-size: 14px;
	line-height: 1.6;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height 0.4s ease, opacity 0.4s ease;
}

.ldv-hrc__tile:hover .ldv-hrc__tile-desc,
.ldv-hrc__tile:focus-within .ldv-hrc__tile-desc {
	max-height: 140px;
	opacity: 1;
}

/* Design Process now matches home page's inline "topnotch" section
   same-to-same (classes topnotch/main/listing/item/content/itemNum) —
   CSS for it already lives in assets/css/responsive.css, enqueued
   site-wide, so no dedicated rules for it belong here any more. */

/* ---------- 4. Feature List (3-col, plain) ---------- */

.ldv-fl3 {
	padding: 90px 0;
}

.ldv-fl3__row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.ldv-fl3__item {
	display: flex;
	flex-direction: column;
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ldv-fl3__item:hover {
	transform: translateY(-4px);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.ldv-fl3__item .ldv-fl3__icon {
	display: block;
	width: 100%;
	height: auto;
	flex: 1 1 auto;
	align-self: stretch;
	margin: 0;
	object-fit: cover;
}

.ldv-fl3__item .ldv-fl3__body {
	padding: 24px 28px 30px;
}

.ldv-fl3__item h3 {
	font-size: 20px;
	font-weight: 600;
	color: #171717;
	margin-bottom: 12px;
}

.ldv-fl3__item p {
	font-size: 15px;
	line-height: 1.7;
	color: #6b6f76;
}

/* ---------- 5. Portfolio Grid (dark mode) ---------- */

.ldv-pg6 {
	padding: 90px 0;
	background: #181a1d;
}

/* Overrides the shared light-theme head-block rules above — same dark
   badge/heading treatment as .sevenYears/.topnotch. */
.ldv-pg6 .main-info small {
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
}

.ldv-pg6 .main-info h2 {
	color: #ffffff;
}

.ldv-pg6 .main-info p {
	color: rgba(255, 255, 255, 0.75);
}

.ldv-pg6__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	align-items: start;
	padding-top: 30px;
}

.ldv-pg6__cell {
	height: fit-content;
	aspect-ratio: 21/9
	/* border-radius: 10px; */
	overflow: hidden;
}

.ldv-pg6__cell img {
	width: 100%;
	height: 100%;
	 border-radius: 10px;
	object-fit: cover;
}

/* Not masonry — a plain equal-height 3-col grid with the middle column
   nudged up, applies to every cell in column 2 (2nd and 5th of 6). */
.ldv-pg6__cell:nth-child(3n+2) {
	margin-top: -50px;
}

/* ---------- 6. Why Choose Us ---------- */

.ldv-wcu {
	padding: 90px 0;
}

/* Swiper carousel — same shape as .topratedSlider (industry detail pages),
   own namespace/instance so its init and styling stay independent. */
.ldv-wcu__stage {
	position: relative;
}

.ldv-wcu__swiper {
	overflow: hidden;
	padding: 10px 4px 40px;
}

.ldv-wcu__swiper .swiper-wrapper {
	align-items: stretch;
}

.ldv-wcu__swiper .swiper-slide {
	height: auto;
	scale: 0.88;
	opacity: 0.55;
	transition: 0.5s;
}

.ldv-wcu__swiper .swiper-slide-active {
	scale: 1;
	opacity: 1;
}

.ldv-wcu__card {
	height: 100%;
	padding: 40px 30px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
	text-align: center;
}

.ldv-wcu__icon {
	width: 96px;
	height: 96px;
	margin: 0 auto 20px;
	object-fit: contain;
}

.ldv-wcu__card h3 {
	font-size: 19px;
	font-weight: 600;
	color: #171717;
	margin-bottom: 10px;
}

.ldv-wcu__card p {
	font-size: 14px;
	line-height: 1.6;
	color: #6b6f76;
}

.ldv-wcu__nav {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: center;
	gap: 14px;
}

.ldv-wcu__nav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: transparent;
	color: #171717;
	cursor: pointer;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15);
	transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}

.ldv-wcu__nav-btn svg {
	width: 18px;
	height: 18px;
}

.ldv-wcu__nav-btn:hover {
	background: #d01f30;
	color: #fff;
	box-shadow: 0 0 0 1px #d01f30;
}

/* ---------- bg-video.php additive elements (badge / list / cta) ----------
   Body-class scoped so these can never touch the .ldv-bgv markup other
   pages (case studies) already render — dallas-page.css is asset-gated to
   only this template anyway, but the extra selector prefix keeps intent
   explicit and future-proofs against the stylesheet ever being enqueued
   more broadly. */

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__title,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__title {
	max-width: none;
}

/* .ldv-bgv ships site-wide (case studies etc) at 50px via --ldv-bgv-title —
   override the var only under this page's body class so this page's hero
   and Why It Matters headings match the 46px rhythm without touching the
   shared component's default for any other page. */
.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv {
	--ldv-bgv-title: 46px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__badge,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__badge {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 20px;
	margin-bottom: 16px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__list,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__list {
	margin: 18px 0;
	padding: 0;
	list-style: none;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__list li,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__list li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 10px;
	color: #fff;
	font-size: 16px;
	line-height: 1.6;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__list li::before,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #fff;
}

/* Same list treatment for a <ul> typed directly into the WYSIWYG paragraph
   field (case-study-sections.css's .ldv-bgv__copy has no list styling of its
   own — plain browser bullets are invisible against a dark overlay bg). */
.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__copy ul,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__copy ul {
	margin: 15px 0;
	padding: 0;
	list-style: none;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__copy ul li,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__copy ul li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 10px;
	color: #fff;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__copy ul li::before,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__copy ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6em;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #fff;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__cta,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__cta {
	margin-top: 20px;
	text-decoration: none;
}

/* Hero's own CTA — .whiteBtn's white-on-white default gets swapped for the
   theme's brand red instead of the shared bg-video button look. */
.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__cta--hero_spotlight,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__cta--hero_spotlight {
	background-color: #d01f30;
	border-color: #d01f30;
	color: #fff;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__cta--hero_spotlight:hover,
.page-template-theme-templatestemplate-page-flexible-php .ldv-bgv__cta--hero_spotlight:hover {
	background-color: #be1e2d;
	border-color: #be1e2d;
	color: #fff;
}

/* "Why It Matters" carries far more copy (badge + title + paragraph + 3
   bullets + second paragraph + CTA) than case-study-sections.css's .ldv-bgv
   was built for (title + one short paragraph). That base rule fixes the
   section to a 1921:902 aspect-ratio with overflow:hidden and bottom-anchors
   the copy absolutely — extra content here was getting clipped clean off
   instead of growing the section. Let this instance size to its content: the
   section drops the fixed ratio/clip, body goes back into normal flow, and
   the media/scrim (already position:absolute inset:0) still cover whatever
   height results. */
.page-template-theme-templatestemplate-location-dallas-v2-php section.ldv-bgv.ldv-bgv--why_it_matters {
	aspect-ratio: unset;
	min-height: 0;
	overflow: visible;
}

.page-template-theme-templatestemplate-location-dallas-v2-php section.ldv-bgv.ldv-bgv--why_it_matters .ldv-bgv__body {
	position: static;
	padding: 90px 0;
}

/* ---------- responsive ---------- */

@media (max-width: 1600px) {
	.ldv-prob__title {
		font-size: 40px;
	}

	.ldv-prob__title span {
		font-size: 50px;
	}

	.ldv-hrc .main-info h2,
	.ldv-fl3 .main-info h2,
	.ldv-pg6 .main-info h2,
	.ldv-wcu .main-info h2,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__title,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec .main .info h2,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2,
	.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 {
		font-size: 40px;
	}

	.ldv-hrc .main-info h2 span,
	.ldv-fl3 .main-info h2 span,
	.ldv-pg6 .main-info h2 span,
	.ldv-wcu .main-info h2 span,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__title span,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec .main .info h2 span {
		font-size: 50px;
	}
}

@media (max-width: 1366px) {
	.ldv-prob__title {
		font-size: 34px;
	}

	.ldv-prob__title span {
		font-size: 42px;
	}

	.ldv-hrc .main-info h2,
	.ldv-fl3 .main-info h2,
	.ldv-pg6 .main-info h2,
	.ldv-wcu .main-info h2,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__title,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec .main .info h2,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2,
	.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 {
		font-size: 34px;
	}

	.ldv-hrc .main-info h2 span,
	.ldv-fl3 .main-info h2 span,
	.ldv-pg6 .main-info h2 span,
	.ldv-wcu .main-info h2 span,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv__title span,
	.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec .main .info h2 span {
		font-size: 42px;
	}
}

@media (max-width: 991px) {
	.ldv-prob__grid {
		flex-direction: column;
	}

	.ldv-prob__collage {
		width: 100%;
	}

	.ldv-prob__title {
		font-size: 30px;
	}

	.ldv-prob__title span {
		font-size: 36px;
	}

	.ldv-hrc__row {
		flex-direction: column;
		height: auto;
	}

	.ldv-hrc__tile {
		height: 220px;
	}

	.ldv-hrc__row:hover .ldv-hrc__tile:hover,
	.ldv-hrc__tile:focus-within {
		flex: 1 1 0;
	}

	.ldv-fl3__row {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.ldv-pg6__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ldv-pg6__cell:nth-child(3n+2) {
		margin-top: 0;
	}
}

@media (max-width: 575px) {
	.ldv-pg6__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- laptop/desktop only, hero overlay body copy width ---------- */

@media (min-width: 992px) {
	.page-template-theme-templatestemplate-location-dallas-v2-php section.ldv-bgv.ldv-bgv--hero_spotlight .max-con {
		width: 40%;
		margin-left: 5vw;
	}

	/* "Why It Matters" only — content column at half the section width.
	   Needs the same specificity as the generic overlay rule above
	   (section + 2 classes) since both match this section and CSS falls
	   back to source order only when specificity ties. */
	.page-template-theme-templatestemplate-location-dallas-v2-php section.ldv-bgv.ldv-bgv--why_it_matters .max-con {
		width: 50%;
		margin-left: 5vw;
	}

	/* "Why It Matters" only — CTA sits right-aligned, after all content */
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-bgv--why_it_matters .ldv-bgv__cta {
		display: block;
		margin-left: auto;
		margin-top: 24px;
		width: fit-content;
	}
}

/* ---------- seven-years.php (shared/reused component) — v2 page only ----------
   seven-years.php is called by many other templates too — every rule here is
   body-class scoped so it only ever repaints this page's instance, never the
   old Dallas page, NY, or industry templates that reuse the same markup. */

/* Same badge pill as every other section on this page (.main-info small /
   .ldv-bgv__badge) — dark-bg variant: white text on 10% white, no uppercase. */
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .left-info small {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 20px;
	margin-bottom: 14px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: none;
	line-height: normal;
}

/* Same accent-word treatment as every other section's h2 span on this page. */
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .left-info h2 span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
	font-size: 58px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .right-info h3 span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
	font-size: 40px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .left-info h2 span::before,
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .right-info h3 span::before {
	content: "";
	position: absolute;
	bottom: 6px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 7px;
	border-bottom: 7px solid #e3725d;
}

/* Global `a { color: #be1e2d; }` is near-invisible against this section's
   dark (#181a1d) background — links in the left/right WYSIWYG paragraphs
   (e.g. Clutch/Trustpilot/Yelp) get a legible, on-brand treatment instead. */
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .left-info p a,
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .right-info p a {
	color: #fff;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.5);
	text-underline-offset: 3px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .left-info p a:hover,
.page-template-theme-templatestemplate-location-dallas-v2-php .sevenYears .main-grid .right-info p a:hover {
	color: #d01f30;
	text-decoration-color: #d01f30;
}

/* ---------- CTA (full-bleed) ----------
   Same full-bleed-photo-under-a-container pattern as template-parts/footer-cta.php
   (own component, own image, section runs edge to edge, only the copy re-establishes
   the site gutter via .max-con) — scoped to this page/template only. */

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw {
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
	padding: 130px 0;
	text-align: center;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 {
	color: #fff;
	font-size: 46px;
	line-height: 1.25;
	font-weight: 500;
	margin-bottom: 18px;
}

/* cta-two.php (.ctaSec) ships site-wide at 50px — bring it to this page's
   46px heading rhythm without touching the shared/global rule. */
.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec .main .info h2 {
	font-size: 46px;
}

/* Same accent-word treatment as every other dark section's heading span
   (Seven Years, Portfolio Grid) — text inherits the heading's own white,
   underline stays the theme's red/orange. */
.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2 span,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2 span::before,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 span::before {
	content: "";
	position: absolute;
	bottom: 6px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 7px;
	border-bottom: 7px solid #e3725d;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner p,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner p {
	color: rgba(255, 255, 255, 0.85);
	font-size: 17px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__btn,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__btn {
	display: inline-flex;
	align-items: center;
	height: 52px;
	padding: 0 32px;
	border: none;
	border-radius: 100px;
	background: #fff;
	color: #be1e2d;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__btn:hover,
.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__btn:hover {
	background: #f2f2f2;
	color: #d01f30;
}

@media (max-width: 767px) {
	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner,
	.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner {
		padding: 80px 0;
	}

	.page-template-theme-templatestemplate-location-dallas-v2-php .ldv-ctafw__inner h2,
	.page-template-theme-templatestemplate-page-flexible-php .ldv-ctafw__inner h2 {
		font-size: 30px;
	}
}

/* ---------- bottom CTA band (cta-two.php, field_group cta_two) ----------
   Same white button treatment as the full-bleed CTA above. Scoped via the
   section's own "DallasV2" extra class (from the classes field) since
   cta-two.php is shared with many other templates. */
.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec.DallasV2 .main .info button.custombtn {
	background: #fff;
	border-color: #fff;
	color: #be1e2d;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .ctaSec.DallasV2 .main .info button.custombtn:hover {
	background: #f2f2f2;
	border-color: #f2f2f2;
	color: #d01f30;
}

/* ---------- FAQ heading span (main-faq.php, shared) ----------
   assets/css/responsive.css's .faqSec .headContent h2 span only sets a red
   color, no underline/italic accent and no inline-block (so it drops to
   width:0 if the accent word wraps) — bring it in line with every other
   section's heading-span treatment on this page. */
.page-template-theme-templatestemplate-location-dallas-v2-php .faqSec .headContent h2 span {
	display: inline-block;
	position: relative;
	z-index: 1;
	color: inherit;
	font-family: "Scotch Text Comp Sm It", serif;
	font-size: 1.05em;
}

.page-template-theme-templatestemplate-location-dallas-v2-php .faqSec .headContent h2 span::before {
	content: "";
	position: absolute;
	bottom: 6px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 7px;
	border-bottom: 7px solid #e3725d;
}
