/* ===================================================================================

* Theme Name: Dustrial Child
* Theme URI: https://themeforest.net/user/johanspond
* Description: Dustrial Industrial WordPress Theme.
* Version: 1.0.0
* Author: Johanspond
* Author URI: http://pluginspoint.com/
* Template: dustrial
* License: GNU General Public License version 3.0
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
* Tags: one-column, right-sidebar, left-sidebar, custom-menu, featured-images, post-formats, sticky-post, threaded-comments, translation-ready

* We encourage you to create Child theme for any modifications you will want to do.

* Why use Child theme?

* Because of future updates we may provide for this theme that will overwrite your
* modifications and all your custom work.

* If you are not familiar with Child Themes, you can read about it here:
* http://codex.wordpress.org/Child_Themes
* http://wp.tutsplus.com/tutorials/theme-development/child-themes-basics-and-creating-child-themes-in-wordpress/

====================================================================================== */

/*
 * P-WAVE brand palette (see assets/css/brand-colors.css):
 * --pwave-cyan:  #06C0D6  (primary accent, replaces theme orange)
 * --pwave-coral: #F25A4D  (secondary accent / hover, from logo)
 * --pwave-dark:  #1E222D  (dark chrome, replaces theme navy)
 */

/* Service Page template: editor content under breadcrumbs */
.service-page-intro {
	padding-top: 50px;
	padding-bottom: 10px;
}

.service-page-intro .service-page-content {
	margin-bottom: 20px;
}

/* Contact Information — person item (same icon style as address rows) */
.contact-media--person {
	padding: 18px 0;
}

.contact-media--person .contact-person-header {
	margin-bottom: 16px;
}

.contact-media--person .contact-person-name {
	margin: 0 0 4px;
}

.contact-media--person .contact-person-position {
	margin: 0;
	color: #666;
	font-size: 15px;
	line-height: 1.45;
}

.contact-media--person .contact-person-detail {
	align-items: flex-start;
	margin: 0 0 14px;
}

.contact-media--person .contact-person-detail:last-child {
	margin-bottom: 0;
}

.contact-media--person .contact-person-detail .info-icon {
	flex-shrink: 0;
}

.contact-media--person .contact-person-detail .media-body a {
	text-decoration: none;
}

.contact-media--person .contact-person-detail .media-body a:hover {
	color: #06C0D6;
}

/* Contact Information — clickable phone / email */
.contact_address a.contact-info-link,
.contact_address .contact-media a {
	color: #06C0D6 !important;
	cursor: pointer;
	pointer-events: auto;
	text-decoration: none;
	word-break: break-word;
}

.contact_address a.contact-info-link:hover,
.contact_address a.contact-info-link:focus,
.contact_address .contact-media a:hover,
.contact_address .contact-media a:focus {
	color: #0499AB !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Contact Information — grid layout (3 tiles) */
.contact_address--grid {
	border: 0;
	padding: 20px 0 0;
	margin-bottom: 60px;
}

.contact_address--grid .contact-info-items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 32px;
	row-gap: 32px;
	align-items: stretch;
}

.contact_address--grid .contact-info-item {
	border: 1px solid #ddd !important;
	padding: 24px !important;
	margin: 0 !important;
	min-height: 0;
	height: auto;
	max-height: none;
	box-sizing: border-box;
	overflow: visible;
	align-self: stretch;
}

.contact_address--grid .contact-media,
.contact_address--grid .contact-media--person {
	/* keep item padding; do not zero it (same node as .contact-info-item) */
	margin: 0 !important;
}

.contact_address--grid .contact-info-item--title {
	border: 1px solid transparent !important;
	padding: 24px !important;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.contact_address--grid .contact-info-item--title h4 {
	margin: 0 0 8px;
	padding: 0;
}

.contact_address--grid .contact-info-item--title h1 {
	margin: 0;
	padding: 0;
}

.contact_address--grid .contact-social-info {
	margin-top: 36px;
}

@media (max-width: 991px) {
	.contact_address--grid .contact-info-items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575px) {
	.contact_address--grid .contact-info-items {
		grid-template-columns: 1fr;
	}
}

/* Footer address_info — clickable phone / email */
.bind_footer .address_info a.contact-info-link {
	color: inherit;
	cursor: pointer;
	pointer-events: auto;
	text-decoration: none;
}

.bind_footer .address_info a.contact-info-link:hover,
.bind_footer .address_info a.contact-info-link:focus {
	color: #06C0D6;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Footer address_info: label (activeColor) on top, value below */
.bind_footer .address_info p > .activeColor {
	display: block;
	margin-bottom: 4px;
	line-height: 1.3;
}

.bind_footer .address_info .footer-address,
.bind_footer .address_info .footer-phone,
.bind_footer .address_info .footer-email,
.bind_footer .address_info .footer-open {
	margin-bottom: 14px;
}

.bind_footer .address_info .footer-address {
	white-space: pre-line;
}

.bind_footer .address_info .footer-open {
	margin-top: 0;
}

/* Footer copyright: © year + theme text; subtle Progmatic credit */
.copyright-content .copyright-line {
	margin: 0;
	color: #fff;
}

.copyright-content .copyright-prefix {
	margin-right: 0.35em;
}

.copyright-content .copyright-theme-text,
.copyright-content .copyright-theme-text * {
	display: inline;
	font: inherit;
	color: inherit;
	margin: 0;
}

.copyright-content .copyright-credit {
	margin: 6px 0 0;
	font-size: 12px;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.4);
	font-weight: 400;
}

.copyright-content .copyright-credit-link {
	color: rgba(255, 255, 255, 0.45);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.copyright-content .copyright-credit-link:hover,
.copyright-content .copyright-credit-link:focus {
	color: rgba(255, 255, 255, 0.7);
	border-bottom-color: rgba(255, 255, 255, 0.35);
}

/* CF7 acceptance checkbox: keep label on one line with the input */
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
	display: inline-flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	cursor: pointer;
	line-height: 1.45;
}

.wpcf7-form .wpcf7-acceptance input[type="checkbox"],
.wpcf7-form input.wpcf7-form-control[type="checkbox"],
.wpcf7-form .wpcf7-form-control.privacy-policy-consent {
	width: auto;
	height: auto;
	min-width: 16px;
	min-height: 16px;
	margin: 0.2em 0 0;
	padding: 0;
	flex-shrink: 0;
	border: none;
	background: transparent;
	box-shadow: none;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {
	display: inline;
}

.wpcf7-form .wpcf7-form-control-wrap {
    margin-bottom: 10px;
    display: block;
}