/*
Theme Name: Everest Child
Template: everest-parent
Version: 1.0.0
*/

/* === Global === */
body {
	color: var(--color-text);
}
.btn {
	white-space: normal;
}
.btn-emergency,
.btn-emergency:visited {
	background-color: var(--color-1);
	color: #fff;
}
.btn-emergency:hover,
.btn-emergency:focus {
	background-color: var(--color-5);
	color: #fff;
}
.btn-row .btn {
	margin: 0 10px 10px 0;
}

/* === Header: white bar so the logo (on white) sits cleanly === */
.primary-header {
	background-color: #fff;
}
.primary-header a {
	color: var(--color-1);
}
.primary-header a:hover,
.primary-header a:focus,
.main-nav .current_page_item>a,
.main-nav .current-menu-item>a,
.main-nav a:hover,
.main-nav a:focus {
	color: var(--color-2);
}
/* Keep logo and phone from collapsing when the menu is wide */
.primary-header .logo-col {
	flex: 0 0 auto;
	min-width: 125px;
}
.primary-header .phone-col,
.primary-header .phone {
	flex: 0 0 auto;
	white-space: nowrap;
}
.primary-header .logo-col img {
	max-height: 130px;
}
body.scrolled .primary-header .logo-col img {
	max-height: 85px;
}
/* Phone number with the header CTA button stacked beneath it */
.primary-header .phone {
	margin-left: 20px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	text-align: center;
}
.primary-header .phone .phone-number {
	color: var(--color-2);
	font-weight: 700;
}
.primary-header .phone .phone-number:hover,
.primary-header .phone .phone-number:focus {
	color: var(--color-1);
}
.primary-header .header-cta,
.primary-header .header-cta:visited {
	background-color: var(--color-1);
	color: #fff;
	font-size: 17px;
	padding: 8px 18px;
}
.primary-header .header-cta:hover,
.primary-header .header-cta:focus {
	background-color: var(--color-2);
	color: #fff;
}
.primary-header .nav-col {
	flex: 1 1 auto;
	min-width: 0;
}
.main-nav .menu {
	align-items: center;
}
.main-nav .menu li a {
	padding: 10px 12px;
}
.menu-item-has-children .sub-menu {
	background-color: #fff;
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}
.main-nav .menu li.menu-emergency>a {
	background-color: var(--color-1);
	color: #fff;
	padding: 10px 18px;
	margin-left: 6px;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}
.main-nav .menu li.menu-emergency>a:hover,
.main-nav .menu li.menu-emergency>a:focus {
	background-color: var(--color-2);
	color: #fff;
}
@media screen and (max-width: 1199px) {
	.primary-header {
		font-size: 17px;
	}
	.main-nav .menu li a {
		padding: 10px 8px;
	}
}

/* === Mobile header === */
.mobile-header .nav-base .menu li.menu-emergency a {
	background-color: var(--color-1);
	padding: 4px 12px;
}
.mobile-logo {
	background-color: #fff;
	border-bottom: 1px solid #e3e3e3;
}

/* === Home === */
.background-section:after {
	background: rgba(255, 255, 255, 0.82);
}
.feature-section h2,
.background-section h2,
.review-section h2 {
	color: var(--color-2);
}
.review-section .reviews-widget {
	max-width: 1100px;
	margin: 0 auto;
}
.review-section .review-cta {
	margin-top: 40px;
}

/* === Interior === */
.content-section .content-col h2 {
	color: var(--color-2);
}
.content-section .content-col ul {
	padding-left: 1.2em;
	margin-bottom: 20px;
}
.content-section .content-col li {
	margin-bottom: 8px;
}
.service-section .service .heading {
	color: var(--color-2);
}
.service-section .service ul {
	padding-left: 1.2em;
}
.service-section .service li {
	margin-bottom: 8px;
}
/* About: the team section always renders; hide it when empty */
.team-section:not(:has(.content, .members)) {
	display: none;
}
/* About: team_section content holds the FAQ */
.team-section .content:last-child {
	margin-bottom: 0;
}
.team-section #faq {
	color: var(--color-2);
}
.team-section .faq-accordion {
	margin-top: 40px;
}
.team-section .faq-accordion .panel-title a {
	padding: 18px 50px 18px 20px;
}
.team-section .faq-accordion .panel-title a:after {
	right: 20px;
}
.team-section .faq-accordion .panel-body {
	padding: 0 20px 20px;
}

/* === FAQ accordion (Bootstrap 3 panels in post_content) === */
.faq-accordion {
	max-width: 900px;
	margin: 50px auto 0;
}
.faq-accordion .panel {
	border: none;
	border-radius: 0;
	box-shadow: none;
	border-bottom: 1px solid #d6dfd8;
}
.faq-accordion .panel+.panel {
	margin-top: 0;
}
.faq-accordion .panel-heading {
	background: none;
	padding: 0;
}
.faq-accordion .panel-title {
	font-size: 22px;
	letter-spacing: 0;
	margin: 0;
}
.faq-accordion .panel-title a {
	display: block;
	position: relative;
	padding: 20px 40px 20px 0;
	color: var(--color-1);
}
.faq-accordion .panel-title a:after {
	content: '\f068';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--color-2);
	font-size: 18px;
}
.faq-accordion .panel-title a.collapsed:after {
	content: '\f067';
}
.faq-accordion .panel-title a:hover,
.faq-accordion .panel-title a:focus {
	color: var(--color-2);
}
.faq-accordion .panel-body {
	padding: 0 0 20px;
	border: none !important;
}
.faq-accordion .panel-body p:last-child {
	margin-bottom: 0;
}

/* === Footer form section === */
.form-section a:not(.btn) {
	color: #fff;
	text-decoration: underline;
}
.form-section .form-intro {
	margin-top: -30px;
	margin-bottom: 40px;
}
.form-section .gform_wrapper.gravity-theme .gfield_required {
	color: #fff;
}
.form-section .gform_wrapper.gravity-theme input:not(.button),
.form-section .gform_wrapper.gravity-theme select {
	color: #fff;
}
.form-section .gform_wrapper.gravity-theme select {
	background: none;
	border: none;
	border-bottom: 1px solid #fff;
	font-size: 18px;
	padding: 8px 4px;
}
.form-section .gform_wrapper.gravity-theme select option {
	color: #1a1a1a;
}
.form-section .gform_wrapper.gravity-theme ::placeholder {
	color: rgba(255, 255, 255, 0.75);
}
/* Submit button spans the full form width */
.form-section .gform_wrapper.gravity-theme .gform_fields .gfield.gfield--type-submit,
.form-section .gform_wrapper.gravity-theme .gform_footer {
	grid-column: 1 / -1;
	width: 100%;
}
.form-section .gform_wrapper.gravity-theme .gfield--type-submit .button,
.form-section .gform_wrapper.gravity-theme .gform_footer .button {
	width: 100%;
}
.form-section .footer-badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 20px 40px;
	margin-top: 40px;
}
.form-section .footer-badges .bbb-seal {
	background-color: #fff;
	padding: 6px 10px;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}
.form-section .footer-badges .bbb-seal img {
	display: block;
	max-width: 100%;
	height: auto;
}
.form-section .btn-review {
	background-color: #fff;
	color: var(--color-1);
}
.form-section .btn-review:hover,
.form-section .btn-review:focus {
	background-color: var(--color-1);
	color: #fff;
}
.form-section .btn-review .fab {
	margin-right: 6px;
}

/* === Footer: logo is on white, so give it a white card === */
.primary-footer .logo img {
	background-color: #fff;
	padding: 15px 20px;
	max-width: 260px;
}
