body,
.editor-styles-wrapper {
  color: var(--wp--preset--color--almost-black);
}
.editor-styles-wrapper h1.wp-block-post-title {
  color: black !important;
}

.wp-block-image img {
  /* WP 6.3 doesn't let this work with "defined" image sizes now */
  height: auto !important;
}


header.wp-block-template-part {
	z-index: 10;
	position: relative;
}


@media (max-width: 960px) {
  /* TODO: add into parent theme */
  .mobile-justify-space-between {
    justify-content: space-between !important;
  }
}
@media (min-width: 961px) {
  .desktop-hide {
    display: none !important;
  }
}

/* better default to use? */
.wp-block-gallery.has-nested-images figure.wp-block-image {
  flex-grow: 0;
}

/* elements that are first remove the owl selector -- talk to visbility selector plugin dev */
.remove-top-margin {
  margin-top: 0 !important;
}

.pointer-events-none {
	pointer-events: none;
}
.pointer-events {
	pointer-events: all
}


/* TODO: parent theme default? */
.wp-element-button > * {
  vertical-align: middle;
}

.is-style-inner-width-100 .wp-block-cover__inner-container {
  width: 100% !important;
}


/* TODO: remove from parent */
header .wp-block-navigation {
  order: unset;
}
.equal-height-cols>.wp-block-column {
  max-width: none;
}

/* block social lacks this option */
.wp-block-social-links svg:hover {
  color: var(--wp--preset--color--bright-green) !important;
}


div h2 a:focus,
div h2 a:hover,
div h3 a:focus,
div h3 a:hover {
  color: var(--wp--preset--color--bright-green) !important;
}


strong {
	font-weight: 600;
}


/* customize */

h1:not([class*='wp-block']),
h2:not([class*='wp-block']),
h3:not([class*='wp-block']) {
  margin-top: 0; /* WC non-block items */
}


/* parent theme override */
.wp-site-blocks .wp-block-group .wp-block-button__link:focus,
.wp-site-blocks .wp-block-group .wp-block-button__link:hover,
.wp-site-blocks .wp-block-group .wp-block-button__link:active {
  background: var(--wp--preset--color--black) !important;
  border-color: var(--wp--preset--color--white) !important;
}
.wp-site-blocks .wp-block-group .wp-block-button__link:focus img,
.wp-site-blocks .wp-block-group .wp-block-button__link:hover img,
.wp-site-blocks .wp-block-group .wp-block-button__link:active img {
  filter: brightness(100);
}



/* blocks lack bg size px */
@media (min-width: 1600px) {
	div[style*=background-chb-logo] {
		background-size: 1600px !important;
	}
}



/*--- Gravity Forms customization ---*/
.gform-theme--foundation .gform_fields {
	row-gap: 20px;
}
#gform_wrapper_1 .gform_footer,
#gform_wrapper_2 .gform_footer {
  justify-content: flex-end;
}
#gform_2 {
	padding: 10px;
	margin-bottom: -23px;
}
input[type=text]::placeholder,
textarea::placeholder {
  color: #000;
  opacity: 0.55;
}
@media (max-width: 640px) {
	#input_2_1 {
		border: 1px solid #fff;
	}
}


/*--- FAQ (and Services dropdown) summary block change ---*/
.wp-block-details summary {
  position: relative;
  color: var(--wp--preset--color--dark-blue);
  font-size: var(--wp--preset--font-size--large);
  padding-left: 50px;
}
.wp-block-details summary:hover {
  color: var(--wp--preset--color--bright-green);
}
.wp-block-details summary::after {
  content: "";
  position: absolute;
  background: url('../images/icon-arrow-right-green.svg') no-repeat 50% 50%;
  height: 23px;
  width: 26px;
  left: 0;
  top: 50%;
  margin-top: -10px;
}
.wp-block-details[open] summary::after {
  background-image: url('../images/icon-arrow-down-green.svg');
  height: 26px;
  width: 23px;
}
.wp-block-details summary::marker {
  content: "";
}
.wp-block-details summary::-webkit-details-marker {
  display:none;
}




#modal-rightside {
	display: none;
}
.has-modal-open #modal-rightside {
	display: block;
	z-index: 12222222000;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 60%;
}
@media (max-width: 1400px) {
	.has-modal-open #modal-rightside {
		top: 180px;
	}
}
@media (max-width: 781px) {
	#modal-rightside {
		display: none !important;
	}
}



/* mobile theme.json */
@media (max-width: 781px) {
	/* override background gradients */
	.has-horz-red-clear-gradient-background {
		background-image: linear-gradient(to right, rgb(106, 25, 26) 0%, rgb(106, 25, 26) 20%, rgba(0, 0, 0, 0) 80%) !important;
	}
}


/* classes to use (that aren't BlockStyles) */
.menu-button {
  padding: 20px 20px 20px 15px !important;
  letter-spacing: normal !important;
  border: 1px solid rgb(46 32 6 / 25%);
  border-radius: 40px;
}
.menu-button img {
  vertical-align: middle;
}

.header-search {
	position: absolute;
	bottom: 30px;
}

@media (max-width: 781px) {
  /* cover block min-height */
  .mobile-ignore-min-height {
    min-height: auto !important;
  }
}



:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper),
.wp-block-search__input {
	background-color: transparent !important;
}
.wp-block-search__input {
	color: #fff !important;
}


.modal-menu-buttons {
	padding: 20px;
}

@media (min-width: 782px) {
	.modal-menu-buttons {
		position: fixed;
		bottom: 0;
		z-index: 2;
	}
}
@media (min-width: 1400px) {
	header div > .wp-block-navigation__container > li:first-of-type {
		position: absolute;
		left: 0;
	}
	header div > .wp-block-navigation__container {
		padding-left: calc(200px + 10vw);
	}
	.modal-menu-buttons {
		padding: 20px 20px 50px calc(200px + 10vw);
	}
}



@media (max-width: 781px) {
	.front-opening {
		padding-left: 47px !important;
		padding-right: 17px !important;
	}
	.front-opening p {
		font-size: 16px !important;
		line-height: 1.3 !important;
	}
}

/* BlockStyle Variations to use (see functions.php) */

.is-style-arrow-right .wp-element-button::after {
	content: "";
	background: #fff url("../images/icon-black-arrow-right.svg") no-repeat center;
	border-radius: 100%;
	display: inline-block;
	height: 37px;
	width: 37px;
	margin-left: 10px;
	vertical-align: middle;
}

.is-style-bullets-arrow-red li {
	list-style: none !important;
	padding-left: 30px;
	margin-bottom: 25px !important;
}
.is-style-bullets-arrow-red li::before {
	content: "";
	border-top: 10px solid transparent;
	border-left: 10px solid var(--wp--preset--color--red);
	width: 0;
	height: 0;
	display: block;
	border-bottom: 10px solid transparent;
	position: absolute;
	margin-left: -30px;
	margin-top: 4px;
}

.is-style-heading-underline::after,
.is-style-heading-alt-underline::after {
	content: "";
	display: block;
	height: 5px;
	margin-top: 16px;
}
.is-style-heading-underline::after {
	width: 45px;
	background: #fff;

}
.is-style-heading-alt-underline::after {
	width: 65px;
	background: rgba(255,255,255,0.7);
}

.is-style-opening-min-height {
	min-height: 630px;
}


@media (min-width: 960px) {
	.is-style-faux-col .wp-block-cover__image-background {
		left: 23% !important;
		object-fit: contain !important;
	}
}


/* Custom Block Overrides */
.breadcrumb-item--home a {
	height: 20px;
}
.breadcrumb-item--home .breadcrumb-item-name {
	display: inline-block;
	background: url("../images/icon-white-house.svg") no-repeat center;
	background-size: contain;
	width: 1em;
	height: 1em;
	text-indent: -9999px;
	overflow: hidden;
}


/* Custom Shortcodes Overrides */
/* -none- */
