@charset "UTF-8";

/* Topbar vertical alignment fix */
.topbar .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.site-description {
	margin: 0;
	padding: 8px 0;
	line-height: 1.5;
}

.menu-secondary-container {
	float: none;
}

.wpcf7-not-valid-tip {
	margin-top: 5px;
	font-weight: 700;
	font-size: 1.2em;
}

.wpcf7 form .wpcf7-response-output {
	padding: 0.4em 1em;
	border: 4px solid #dc3232;
	color: #dc3232;
	font-weight: bold;
	font-size: 18px;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #dc3232;
}

/* Manufacturing List - Align text area height with image */
@media screen and (min-width: 48em) {
	#product-list-field li {
		align-items: stretch;
	}
	
	#product-list-field .img {
		align-self: stretch;
	}
	
	#product-list-field .img a {
		display: block;
		height: 100%;
	}
	
	#product-list-field .img img {
		height: 100%;
		object-fit: cover;
	}
	
	#product-list-field .txt-area {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-self: stretch;
	}
	
	#product-list-field .txt-area .txt {
		flex: 0 0 auto;
		max-height: calc(1.6em * 5);
		overflow: hidden;
		display: -webkit-box;
		-webkit-line-clamp: 5;
		-webkit-box-orient: vertical;
	}
	
	#product-list-field .txt-area .txt p {
		margin-bottom: 0;
		line-height: 1.6;
	}
	
	#product-list-field .link {
		margin-top: auto;
		padding-top: 10px;
		flex-shrink: 0;
	}
}

/*
.contents-single h2,
.contents-page h2,
.contents-front-page h2 {
  background: #1d68b6 !important;
  color: #fff !important;
  font-size: 26px !important;
  font-weight: bold !important;
}
*/

/*
.contents-single h3,
.contents-page h3,
.contents-front-page h3 {
  border-top: 4px solid #1d68b6 !important;
  background: #cfe5f0 !important;
  font-size: 22px !important;
  font-weight: bold !important;
  color: #1d68b6 !important;
  line-height: 1.2 !important;
}
*/

/*
.contents-single h4,
.contents-page h4,
.contents-front-page h4 {
  border-bottom: 1px solid #50b875 !important;
  font-size: 20px !important;
  font-weight: bold !important;
  color: #50b875 !important;
}
*/

/*
.contents-single h5,
.contents-page h5,
.contents-front-page h5 {
  border: solid #1d68b6 !important;
  border-width: 1px 1px 2px !important;
  font-size: 18px !important;
  font-weight: normal !important;
  color: #1d68b6 !important;
  line-height: 1.5 !important;
}
*/

/*
.contents-single h6,
.contents-page h6,
.contents-front-page h6 {
  font-size: 16px !important;
  font-weight: normal !important;
  color: #1d68b6 !important;
  line-height: 1.6 !important;
}
*/

