/**
 * Theme Name: Byron Child
 * Template: byron
 * Version: 1.0
 * Description: Construction Notice Services WordPress Theme
 * Author: Omens
**/

/* Tokens
-------------------------*/
:root {
	--e-global-color-primary: #a1222d;
	--primary-hover: #dc2b3a;
	--primary-tint: #ffe9eb;
	--divider-white: rgba(255, 255, 255, 0.25);
	--text-muted: #3a3637;
	--border-subtle: #e0e0e0;
	--accent-yellow: #ffd200;
	
	/* FA pseudo-element shorthand (overridden by FA7's own CSS when enqueued) */
	--fa-font-solid: normal 900 1em/1 "Font Awesome 7 Pro", "Font Awesome 5 Free";
}

/* Icon Font Bug Fix
-------------------------*/
[class^="icon-"],
[class*=" icon-"] {
	-moz-osx-font-smoothing: inherit;
	-webkit-font-smoothing: inherit;
	font-family: inherit !important;
	font-style: inherit;
	font-variant: inherit;
	font-weight: inherit;
	line-height: inherit;
	speak: inherit;
	text-transform: inherit;
}

[class^="omens-"],
[class*=" omens-"] {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-family: 'icomoon' !important;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	speak: never;
	text-transform: none;
}

/* Header
-------------------------*/
.header-style-3 #site-header,
#main-nav-mobi,
#footer,
#bottom {
	background: var(--e-global-color-primary);
}

.header-top,
#footer-widgets .widget_information ul li {
	border-bottom: 1px solid var(--divider-white);
}

#topbar .topbar-left > div:after,
.header-info .content:after,
#bottom:before {
	background-color: var(--divider-white) !important;
}

#bottom .bottom-bar-inner-wrap:before {
	background: transparent !important;
}

.header-socials a,
.header-top-menu ul li {
	color: #ffffff;
}

.header-info a {
	color: #ffffff;
	text-decoration: none;
}

.header-info a:hover {
	color: var(--accent-yellow);
}

/* Hide empty socials + topbar dividers when no social links are set */
.header-socials:not(:has(a)) {
	display: none;
}

#topbar .topbar-left:not(:has(.header-socials a)) > div:after {
	display: none;
}

#topbar .topbar-left:not(:has(.header-socials a)) > div {
	padding-left: 0;
}

/* No leading divider when header-info has a single content-wrap */
.header-info .content-wrap:only-child .content:after {
	display: none;
}

/* States readout in topbar-left */
.header-states {
	color: #ffffff;
	font-size: 15px;
	line-height: 50px;
}

.header-states:before {
	-webkit-font-smoothing: antialiased;
	color: var(--accent-yellow);
	content: "\f3c5";
	display: inline-block;
	font: var(--fa-font-solid);
	margin-right: 0.5em;
	text-rendering: auto;
}

.header-button {
	margin-left: 24px;
}

.header-button a {
	border-color: #ffffff;
	color: #ffffff;
	font-family: Roboto;
	font-weight: 600;
	text-transform: uppercase;
}

.header-button a:hover {
	background-color: var(--primary-tint);
	border-color: var(--primary-tint);
	color: var(--e-global-color-primary);
}

.header-button.secondary a {
	background-color: #f6c111;
	border-color: #f6c111;
	color: #ffffff;
}

.on-scroll {
	display: none;
}

.fixed-show .on-scroll {
	display: inline;
}

/* Main Navigation
-------------------------*/
#main-nav .menu-item-96 .sub-menu {
	width: 320px;
}

/* Replace parent's directional grow with a quick fade on dropdown hover */
#main-nav .sub-menu li a:before,
#main-nav .sub-menu li a:after {
	height: 100%;
	opacity: 0;
	transition: opacity 0.15s ease;
}

#main-nav .sub-menu li a:before {
	background: var(--e-global-color-primary);
	width: 2px;
}

#main-nav .sub-menu li a:after {
	background-color: var(--primary-tint);
	width: 100%;
}

#main-nav .sub-menu li a:hover {
	color: #000000;
	transition-delay: 0s;
}

#main-nav .sub-menu li a:hover:before,
#main-nav .sub-menu li a:hover:after {
	opacity: 1;
	transition-delay: 0s;
}

#main-nav-mobi > ul > li li a {
	font-family: Roboto;
	font-weight: 400;
	text-transform: none;
}

/* Featured Title
-------------------------*/
#featured-title #breadcrumbs {
	margin: 36px auto 0;
	max-width: 900px;
}

#featured-title #breadcrumbs .breadcrumbs-inner {
	font-size: 17px;
}

.pre-title {
	color: var(--e-global-color-primary);
	font-family: "Roboto", Sans-serif;
	font-style: normal;
	font-weight: 900;
	margin-bottom: 14px;
	text-transform: uppercase;
}

/* Body
-------------------------*/
#main-content {
	padding: 0;
}

.site-main a {
	color: var(--e-global-color-primary);
	text-decoration: underline;
}

.site-main a:hover {
	color: var(--primary-hover);
}

.hard-light {
	background-blend-mode: hard-light;
}

/* SEO Landing Pages
-------------------------*/
.seo-landing .site-content {
	padding: 64px 0;
}

.no-sidebar .seo-landing #site-content {
	margin: auto;
	max-width: 896px !important;
}

/* Icon Box Widget
-------------------------*/
.master-icon-box {
	height: 100% !important;
}

.master-icon-box .text-wrap {
	font-family: "Roboto", Sans-serif;
}

.master-icon-box .url-wrap a {
	font-family: "Roboto", Sans-serif !important;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none !important;
	text-transform: uppercase;
}

.master-icon-box .master-link.icon-right .icon {
	margin-left: 8px;
}

.no-icons .icon-wrap {
	display: none;
}

/* Blog (archive + single)
-------------------------*/
.hentry a,
.hentry .post-title a {
	text-decoration: none;
}

.hentry .post-title,
.hentry .post-title a {
	font-weight: 700;
}

.hentry .post-title {
	margin: 0 0 20px;
}

.hentry .post-meta {
	margin-bottom: 16px;
}

.hentry .post-excerpt {
	margin: 0 0 26px;
}

.post-media img {
	width: 100%;
}

.hentry .post-link a {
	background-color: var(--e-global-color-primary);
	border: 1px solid var(--e-global-color-primary);
	color: #ffffff;
	fill: #ffffff;
	font-family: "Roboto", Sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	text-decoration: none;
	text-transform: uppercase;
}

.hentry .post-link a:hover {
	background-color: var(--primary-hover);
	border-color: var(--primary-hover);
	color: #ffffff;
}

.byron-pagination ul li .page-numbers,
.woocommerce-pagination .page-numbers li .page-numbers {
	text-decoration: none;
}

/* Master News
-------------------------*/
.master-news .post-date {
	color: var(--text-muted);
}

.master-news .post-date span {
	display: none;
}

.master-news .headline-2 a {
	text-decoration: none;
}

/* Clamp excerpt with ellipsis */
.master-news .desc {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	display: -webkit-box;
	line-clamp: 4;
	overflow: hidden;
}

/* Equal-height carousel cards: text aligned top, Read More at bottom */
.master-news.item-carousel .content-wrap {
	display: flex;
	flex-direction: column;
	min-height: 320px;
}

.master-news.item-carousel .text-wrap {
	flex: 1;
}

.master-news.item-carousel .headline-2 {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	line-clamp: 3;
	overflow: hidden;
}

.master-news.item-carousel .url-wrap {
	margin-top: auto;
}

/* Master Service (Flickity height fix)
-------------------------*/
.master-service .content-wrap {
	padding: 32px 24px;
}

.master-service .headline-2 {
	margin-bottom: 32px;
}

.master-service.sep-before .sep {
	margin-bottom: 32px;
	width: 100%;
}

/* Footer
-------------------------*/
#footer-widgets .widget .widget-title {
	text-transform: uppercase;
}

#footer-widgets .widget.widget_links ul li a {
	color: #ffffff !important;
}

#footer-widgets .widget_information a {
	color: #ffffff;
	text-decoration: none;
}

#footer-widgets .widget_information a:hover {
	color: var(--accent-yellow);
}

.footer-grid .span_1_of_5 {
	width: 33.33%;
}

.footer-grid .span_1_of_5:last-child {
	width: 25%;
}

/* Gravity Forms
-------------------------*/
.widget-title {
	text-transform: uppercase;
}

.gform-theme--foundation .gform_fields {
	row-gap: 24px !important;
}

.gform-theme .gform_heading {
	display: none;
}

.uael-gf-style .uael-gf-select-custom:after {
	content: none !important;
}

.uael-gf-input-size-sm .uael-gf-style .ginput_container select {
	padding: 0 10px !important;
}

#gform_submit_button_1.gform_button {
	background-color: rgb(161, 34, 45) !important;
	color: #ffffff !important;
	border: none !important;
	padding: 16px 28px !important;
	font-family: 'Roboto', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: normal !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

#gform_submit_button_1.gform_button:hover {
	background-color: #DC2B3A !important;
	color: #ffffff !important;
	border: none !important;
}


/* State Service Boxes (list cleanup)
-------------------------*/
.state-services-box .elementor-widget-text-editor ul {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
	text-align: left;
}

.state-services-box .elementor-widget-text-editor ul li {
	border-bottom: 1px solid var(--border-subtle);
	padding: 0;
}

.state-services-box .elementor-widget-text-editor ul li:first-child {
	border-top: none;
}

.state-services-box .elementor-widget-text-editor ul li:last-child {
	border-bottom: none;
}

.state-services-box .elementor-widget-text-editor ul li a {
	border-left: 3px solid transparent;
	color: #000000;
	display: block;
	padding: 6px 8px;
	text-decoration: none;
	transition: all 0.2s ease;
	width: 100%;
}

.state-services-box .elementor-widget-text-editor ul li a:hover {
	background-color: var(--primary-tint);
	border-left-color: var(--e-global-color-primary);
}

/* Pin "Learn More" to the bottom of the flex column */
.state-services-box .elementor-widget-html:has(.url-wrap) {
	margin-top: auto;
}