/*
 * Final WordPress normalization layer.
 *
 * The imported page styles use the original Duda measurements. These rules
 * remove Gutenberg's competing constrained-layout margins while preserving
 * native Columns, Cover, Image, Heading, Paragraph, List and Button blocks.
 */
html,
body,
.wp-site-blocks,
.dmwr,
.dmBody {
	width: 100%;
	max-width: none;
	overflow-x: clip;
}

.wp-site-blocks > *,
.dmwr > *,
.dmBody > * {
	margin-block-start: 0;
}

.dmBody .dmRespRow.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.dmBody .dmRespCol.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.dmBody .dmRespColsWrapper.wp-block-columns {
	box-sizing: border-box;
	display: flex;
	flex-wrap: nowrap;
	gap: 0 !important;
	width: 100%;
}

.dmBody .dmRespCol.wp-block-column {
	box-sizing: border-box;
	min-width: 0;
}

.dmBody .wp-block-image,
.dmBody .wp-block-cover {
	margin: 0;
}

.dmBody .wp-block-image img {
	display: block;
	max-width: 100%;
}

.dmBody .wp-block-button__link {
	box-sizing: border-box;
	border-radius: 0;
}

/* Shared header measured against the live desktop header at 1280px. */
.em-site-header {
	height: auto;
	overflow: visible;
}

.em-hiring-strip {
	min-height: 52px;
}

.em-header-shell {
	box-sizing: border-box;
	max-width: 1280px !important;
	padding: 0 20px;
}

.em-header-identity {
	min-height: 201px;
	gap: 40px !important;
}

.em-header-logo img {
	width: 267px;
	max-width: 267px;
}

.em-header-phone .wp-block-button__link {
	width: 220px;
	min-width: 220px;
	height: 55px;
	padding: 16px 20px;
	background: #17385f;
	border-radius: 10px;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
}

.em-primary-navigation {
	box-sizing: border-box;
	min-height: 49px;
	height: 49px;
	border-top: 0;
	font-family: Montserrat, Arial, sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #888;
}

.em-primary-navigation .wp-block-navigation__container {
	height: 49px;
	gap: 48px;
}

.em-primary-navigation .wp-block-navigation-item__content {
	color: #888;
}

.em-primary-navigation .current-menu-item > .wp-block-navigation-item__content,
.em-primary-navigation .current-menu-ancestor > .wp-block-navigation-item__content {
	background: #f20909;
	color: #fff;
	padding: 6px 25px;
}

/* Page hero and common location strip. */
.dmBody > .dmRespRow:first-child h1 {
	font-size: 48px !important;
	line-height: 1.5 !important;
}

.dmBody > .dmRespRow:first-child h2 {
	font-size: 30px !important;
	line-height: 1.25 !important;
}

.dmBody > .dmRespRow:nth-child(2) {
	box-sizing: border-box;
}

.dmBody > .dmRespRow:nth-child(2) p {
	margin: 0;
}

/* Shared footer geometry and typography. */
.em-service-areas {
	box-sizing: border-box;
	max-width: 960px !important;
}

.em-service-areas h2,
.em-guarantee-section h2 {
	font-size: 30px;
}

.em-service-areas p,
.em-guarantee-section p {
	font-size: 18px;
}

.em-emergency-strip h3 {
	font-size: 30px;
}

.em-estimate-column > h2 {
	font-size: 30px;
}

.em-partner-logo img {
	width: 176px;
}

/* Live three-column blog index. */
.evo-blog-hero {
	min-height: 430px !important;
}

.evo-blog-hero h1 {
	font-size: 48px !important;
}

.evo-blog-list {
	box-sizing: border-box;
	max-width: 1280px !important;
	padding: 75px;
}

.evo-blog-grid {
	gap: 50px !important;
	margin: 0 0 50px !important;
}

.evo-blog-card {
	box-sizing: border-box;
	min-height: 520px;
	padding-bottom: 24px;
}

.evo-blog-card .wp-block-image img {
	width: 100%;
	height: 220px;
	object-fit: cover;
}

.evo-blog-card h3 {
	box-sizing: border-box;
	min-height: 190px;
	margin: 0;
	padding: 25px 0 15px;
	font-size: 30px;
	line-height: 1.27;
	text-transform: uppercase;
}

.evo-blog-card h3 a {
	color: #2d2d2d;
	text-decoration: none;
}

.evo-blog-card .wp-block-button__link {
	background: #17385f;
	color: #fff;
	border-radius: 0;
}

/* The editor must show the same composed design, not separated backgrounds. */
.editor-styles-wrapper .dmBody,
.editor-styles-wrapper .dmRespRow,
.editor-styles-wrapper .dmRespCol {
	overflow: visible !important;
}

.editor-styles-wrapper .evo-has-editable-background {
	position: relative !important;
	isolation: isolate;
}

.editor-styles-wrapper .evo-has-editable-background > .evo-editable-background {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	margin: 0 !important;
	z-index: 0 !important;
}

.editor-styles-wrapper .evo-has-editable-background > .evo-editable-background ~ * {
	position: relative !important;
	z-index: 1 !important;
}

.editor-styles-wrapper .hide-for-large {
	display: none !important;
}

.editor-styles-wrapper .hide-for-medium {
	display: block !important;
}

/*
 * Live section minimums measured page-by-page at a 1280px desktop viewport.
 * Minimums preserve editor flexibility: adding content can grow a section,
 * while the initial design retains the same visual rhythm as the live site.
 */
[id="1289093911"] { min-height: 413px; }
[id="1734795455"] { min-height: 163px; }
[id="1315662192"] { min-height: 770px; }
[id="1632001111"] { min-height: 550px; }
[id="1648405377"] { min-height: 587px; }

[id="1654586873"] { min-height: 413px; }
[id="1012195174"] { min-height: 155px; }
[id="1060846267"] { min-height: 645px; }
[id="1005937006"] { min-height: 813px; }
[id="1333188637"] { min-height: 617px; }

[id="1427769242"] { min-height: 413px; }
[id="1409082879"] { min-height: 155px; }
[id="1580598784"] { min-height: 496px; }
[id="1129144355"] { min-height: 478px; }

[id="1070354884"] { min-height: 413px; }
[id="1560440913"] { min-height: 155px; }
[id="1045118029"] { min-height: 508px; }
[id="1639663476"] { min-height: 550px; }
[id="1898768586"] { min-height: 177px; }
[id="1361633232"] { min-height: 736px; }
[id="1386087490"] { min-height: 661px; }

[id="1952270439"] { min-height: 341px; }
[id="1461691213"] { min-height: 155px; }
[id="1590768728"] { min-height: 463px; }
[id="1031889605"] { min-height: 834px; }

[id="1851980044"] { min-height: 341px; }
[id="1466470841"] { min-height: 155px; }
[id="1209801848"] { min-height: 640px; }
[id="1973547687"] { min-height: 789px; }
[id="1315718519"] { min-height: 712px; }

[id="1841250991"] { min-height: 341px; }
[id="1018839555"] { min-height: 466px; }
#Lighting { min-height: 549px; }
#Wiring { min-height: 635px; }
#Repair { min-height: 635px; }
#Installation { min-height: 583px; }
#HeatingandAC { min-height: 563px; }
#Security { min-height: 640px; }

[id="1436064990"] { min-height: 365px; }
[id="1272761197"] { min-height: 115px; }
[id="1217590673"] { min-height: 1236px; }
[id="1652604829"] { min-height: 452px; }

[id="1702264979"] { min-height: 370px; }
.em-page-suppliers-diversity [id="1767819285"] { min-height: 955px; }

.em-page-contact [id="1440665122"] { min-height: 288px; }
.em-page-contact [id="1767819285"] {
	box-sizing: border-box;
	min-height: 511px;
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}
.em-page-contact #QUOTE {
	box-sizing: border-box;
	min-height: 656px;
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}

[id="1900443754"] { min-height: 324px; }
[id="1529302394"] { min-height: 866px; }
[id="1269904742"] { min-height: 180px; }
[id="1438862582"] { min-height: 223px; }
[id="1851971330"] { min-height: 224px; }
[id="1637185065"] { min-height: 261px; }

/* Version 3.1 final pass: live article pages append ten related articles. */
.evo-related-blog{box-sizing:border-box;min-height:6345px!important;padding:70px max(30px,calc((100vw - 900px)/2))!important;background:#fff}
.evo-related-blog-title{color:#11569f;font-size:38px;margin:0 0 45px!important}
.evo-related-blog>.evo-blog-grid:nth-child(n+6){display:none!important}
.evo-related-blog>.evo-blog-grid:nth-child(5)>.wp-block-column:nth-child(n+2){display:none!important}
.evo-related-blog .evo-blog-grid{gap:28px!important;margin-bottom:35px!important}
.evo-related-blog .evo-blog-card{min-height:470px!important}

@media (max-width: 900px) {
	.em-header-identity {
		min-height: 145px;
	}

	.em-header-logo img {
		width: 210px;
	}

	.em-primary-navigation {
		height: auto;
		min-height: 58px;
	}

	.em-primary-navigation .wp-block-navigation__container {
		height: auto;
		gap: 22px;
	}

	.dmBody > .dmRespRow:first-child h1 {
		font-size: 38px !important;
	}
}

@media (max-width: 767px) {
	.evo-related-blog{min-height:0!important;padding:45px 20px!important}
	.em-header-shell {
		padding: 0 15px;
	}

	.em-header-identity {
		min-height: 105px;
	}

	.em-header-logo img {
		width: 165px;
	}

	.em-header-phone .wp-block-button__link {
		width: auto;
		min-width: 0;
		height: auto;
		font-size: 14px;
	}

	.dmBody .dmRespColsWrapper.wp-block-columns {
		flex-wrap: wrap;
	}

	.dmBody > .dmRespRow {
		min-height: 0 !important;
	}

	.dmBody > .dmRespRow:first-child h1 {
		font-size: 32px !important;
	}
}
