/**
Theme Name: Astra Child
Author: NeuQuest Enterprises
Author URI: https://neuquest.net
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites$
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* Block Layout Fixes */
.wp-block {
  margin-block-start: 0;
}

p, ul, ol {
	margin: initial;
}

code {
	color: #dc3232;
	font-family: "Oswald", sans-serif; 
	font-weight: 800;
}

.entry-content .clear::before {
  content: "";
  clear: both;
  display: table;	
}

.editor-block-page .wp-block-heading,
.entry-content .wp-block-heading {
	margin-bottom: .25em;
	margin-top: 0;	
}

.editor-block-page ul.wp-block-list,
.entry-content ul,
.entry-content ol {
	margin-bottom: 1em;
	margin-top: 0;
}

#masthead {
	background-image: url(/wp-content/uploads/2024/09/hcsb-roadtripconcert.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	min-height: calc(100vw / (1200 / 400));
}

.ast-below-header-wrap {
	position: absolute;
	bottom: 0;
	width: 100%;
}

#masthead .ast-below-header-bar .ast-container {
	max-width: 1240px;
	margin: 0 auto;
	padding-left: calc(20px - 1rem)
}

img.custom-logo {
	background-color: #ffffff;
	border: 2px solid #ffffff;
}

.wp-block-column {
	min-width: fit-content;
}

.site-header-above-section-right {
	position: relative;
}

.product-buttons {
	position: absolute;
	right: 0;
	top: 1rem;
}

.ast-plain-container.ast-no-sidebar #primary {
	margin: 0 auto 0;
}

.editor-block-page ul.no-bullets,
.entry-content ul.no-bullets {
	list-style: none;
	margin-left: 0;
	padding: 0 1em;	
}

.editor-block-page .wp-block-group.roster,
.entry-content > .wp-block-group.roster {
	padding: 0 1em;
}

.entry-content > .wp-block-group.roster {
	margin: 0 0 1em;
}

.entry-content > .wp-block-group.roster .wp-block-group {
	break-inside: avoid;
	margin-top: 0;
	margin-bottom: 1rem;
}

.entry-content > .wp-block-group.roster ul.no-bullets {
	padding-left: 1em;
}

/* WooCommerce */
.woocommerce-product-gallery {
	display: none;
	float: none;
	width: 0 !important;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary {
	float: none;
	width: 100%;
}

.woocommerce-cart .product-thumbnail {
	display: none;
}

.woocommerce-cart table.shop_table thead,
.woocommerce-cart .cart-collaterals .cart_totals > h2 {
	background-color: #ffffff00;
}

.woocommerce-js input[type="number"] {
	max-width: 120px;
}

.woocommerce-checkout .ast-product-name {
	display: flex;
}

.ast-modern-checkout .woocommerce #order_review .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .product-name .ast-product-image {
	padding: 0;
}

.woocommerce-js a.remove::before {
	font-family: "dashicons";
	content: "\f158";
}

/*.woocommerce-js a.remove .remove-icon {
	color: red;
	content: "x";
	z-index: 20;
}*/

/* The Events Calendar */
.tribe-events .tribe-events-header {
	display: none;
}

.ast-separate-container .ast-article-post {
	background-color: initial;
}

/* Contact Form */
.wpcf7 {
	margin-top: 2rem;
}

.wpcf7 .special {
	display: none;
	visibility: hidden;
}

.wpcf7 {
	padding: 0 1em;
	background-color: none;
	border-top-left-radius:5px;
	border-top-right-radius:5px;
	border-bottom-left-radius:5px;
	border-bottom-right-radius:5px;
	margin-right: 10px;
}

.wpcf7 h2 {
	display: none;
}

.wpcf7 label {
	font-size: 1rem;
}

.wpcf7 .form-group input {
	box-sizing: border-box;
	line-height: 1.5rem;
	margin: 1px 1px 12px;
	z-index: 1;
}

.wpcf7 .form-group input,
.wpcf7 .form-group textarea,
.wpcf7 .form-multi select {
	background-color: var(--ast-global-color-7);
	border: 1px solid var(--ast-global-color-1);
	border-radius: 4px;
}

.wpcf7 label,
.wpcf7 .wpcf7-list-item-label,
.wpcf7 select.wpcf7-form-control {
	color: var(--ast-global-color-1);
	padding-left: 1rem;
}

.wpcf7 .wpcf7-radio {
	display: flex;
}

.wpcf7 .wpcf7-list-item-label {
	padding-left: 0;
}

.wpcf7 .wpcf7-radio input[type=radio] {
	accent-color: pink;
}
 
.wpcf7 .form-multi label {
/*	padding-left: 0; */
	position: relative;
}

.wpcf7 input[type="submit"] {
	background: none;
	background-color: var(--ast-global-color-2);
	border: none;
	border-radius: 6px;
	box-sizing: border-box;
	color: #ffffff;
	height: auto;
	font-size: 1rem;
	font-weight: bold;
	line-height: 2rem;
	margin-top: 10px;
	padding: 5px 10px;
	text-transform: uppercase;
	white-space: normal;
	width: 100%;
	word-break: normal;
}

.wpcf7 input[type="checkbox"] {
	line-height: 0;
	margin-right: 0;
	width: 1.4em;
}

.wpcf7 .below-form {
	width: 100%;
}

.wpcf7 .button-right {
	width: fit-content;
	float: right;
}

.wpcf7 p.required {
	box-sizing: border-box;
	float: left;
	margin: 0;
	width: 50%;
}

.wpcf7 p.required::before {
	content: "*";
	color: #dc3232;
	padding-right: .15em;
}

.wpcf7 .form-group {
	position: relative;
	margin: 0;
	padding-bottom: .5em;
}

.wpcf7 .form-group label {
	position: absolute;
	z-index: 5;
	top: .5rem;
	left: 0;
	line-height: 1.25rem;
	transform-origin: top left;
	transform: translate(0, 0) scale(1);
	transition: all .1s ease-in-out;
	width: 100%;
}

.wpcf7 .form-group .wpcf7-not-valid-tip {
	background-color: #fff;
	font-weight: bold;
	position: absolute;
	margin-top: -.5rem;
	padding-left: 1rem;
	z-index: 5;
	top: 0;
	left: 0;
	transform-origin: top left;
	transform: translate(0, 0) scale(.65);
	transition: all .1s ease-in-out;
	width: 100%;
}

.wpcf7 input:not([type="submit"]),
.wpcf7 textarea {
	padding: 5px 1rem;
}

.wpcf7 .form-group label.required:after,
.wpcf7 .form-multi label.required:after {
	content: "*";
	color: #dc3232;
	padding-left: .15em;
}

.wpcf7 .form-group input.wpcf7-not-valid,
.wpcf7 .form-group textarea.wpcf7-not-valid {
	border: 1px solid #dc3232;
}

.wpcf7 form .wpcf7-response-output {
	border: none;
	clear: both;
	margin: 0;
}

.wpcf7 form.sent .wpcf7-response-output {
	border: none;
/*	background-color: var(--ast-global-color-7); */
	clear: both;
	color: var(--ast-global-color-1);
	font-weight: bold;
	margin: 1rem 0;
	padding: .5rem;
	text-align: center;
	width: 100%;
}

.wpcf7 .form-group input:focus + label,
.wpcf7 .form-group textarea:focus + label,
.wpcf7 .form-group input:not(:placeholder-shown) + label,
.wpcf7 .form-group textarea:not(:placeholder-shown) + label,
.wpcf7 .form-group span.wpcf7-not-valid-tip {
	top: -1rem;
	transform: translate(0, 0) scale(.75);
}

.wpcf7 .form-group span.wpcf7-not-valid-tip {
	color: #dc3232;
}

.wpcf7 .form-group span.wpcf7-not-valid-tip {
	color: #dc3232;
}

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
	color: transparent;
}

.wpcf7 .form-group input:focus ~ span.wpcf7-not-valid-tip,
.wpcf7 .form-group textarea:focus ~ span.wpcf7-not-valid-tip {
	color: transparent;
	background-color: transparent;
}

.wpcf7 .form-split,
.wpcf7 .form-inline {
	display: flex;
	gap: 1rem;
}

.wpcf7 .phone-container {
	width: calc(70% - .5rem);
}

.wpcf7 .zip-container {
	width: calc(30% - .5rem);
}

@media (min-width: 545px) {
/*	.wpcf7 .form-group {
		display: flex;
		flex-wrap: wrap;
		gap: 1em;
	}*/
/*	.wpcf7 .form-left,
	.wpcf7 .form-right,
	.wpcf7 .perm-container,
	.wpcf7 .shirt-container,
	.wpcf7 .birth-month-container,
	.wpcf7 .instrument-container,
	.wpcf7 .birthdate-container,
	.wpcf7 .birth-day-container {
		max-width: 50%;
	}*/
}

@media (min-width: 1010px) {
	.editor-block-page > .wp-block-group.roster,
	.entry-content > .wp-block-group.roster {
		column-count: 5;
	}
}

@media (min-width: 769px) and (max-width: 1009px) {
	.wpcf7 .wpcf7-form {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
	}
	.wpcf7 .wpcf7-form .form-left,
	.wpcf7 .wpcf7-form .form-right {
		box-sizing: border-box;
		width: calc(50% - .5rem);
	}
/*	.wpcf7 .wpcf7-list-item {
		width: 50%;
	}*/
	.editor-block-page > .wp-block-group.roster,
	.entry-content > .wp-block-group.roster {
		column-count: 4;
	}
	.editor-block-page > .wp-block-group.roster .percussion,
	.entry-content > .wp-block-group.roster .percussion {
		padding-bottom: 500px;
	}

}

@media (min-width: 555px) and (max-width: 768px) {
	.editor-block-page > .wp-block-group.roster,
	.entry-content > .wp-block-group.roster {
		column-count: 3;
	}
}

@media (min-width: 420px) and (max-width: 554px) {
	.editor-block-page > .wp-block-group.roster,
	.entry-content > .wp-block-group.roster {
		column-count: 2;
	}
}

@media (max-width: 554px) {
	figure {
		width: 100%;
	}
}