.menu-item-heading .stk-block-heading__text {
	display: flex;
	align-items: center;
}

.menu-item-heading .stk-block-heading__text:after {
	content: '';
	flex: 1;
	opacity: 0.5;
	margin: 0 15px;
	border-bottom: 2px dashed currentcolor;
}

.menu-item-heading .stk-block-heading__text strong {
	order: 10;
}

/* menu item heading elementor */
.menu-item-elementor h3.elementor-icon-box-title span,
.menu-item-elementor h3.elementor-image-box-title {
	display: flex;
	align-items: center;
}

.menu-item-elementor h3.elementor-icon-box-title span:after,
.menu-item-elementor h3.elementor-image-box-title:after {
	content: '';
	flex: 1;
	opacity: 0.5;
	margin: 0 15px;
	border-bottom: 2px dashed currentcolor;
}

.menu-item-elementor h3.elementor-icon-box-title strong,
.menu-item-elementor h3.elementor-image-box-title strong {
	order: 10;
}

/* subscribe form */
.ct-wpforms-inline-fields {
	--theme-form-field-border-width: 0;
	margin-bottom: 0;
}


/* reservation form */
.ct-reservation-form {
	--theme-form-text-initial-color: #fff;
	--theme-form-text-focus-color: #fff;
}

.ct-reservation-form .wpforms-field {
	padding: 20px 0;
}

.ct-reservation-form .wpforms-field-label {
	color: rgba(255, 255, 255, 0.6);
}

.ct-reservation-form .wpforms-submit-container {
	text-align: center;
}

@media (max-width: 690px) {
	.ct-reservation-form .wpforms-one-third {
		width: 100%;
		margin-left: 0;
	}
}


/* footer */
.phone-store-button img {
	max-width: 150px;
}

/* services and contact page icon boxes */
.ct-iconbox .elementor-icon,
.ct-iconbox .elementor-icon-box-title,
.ct-iconbox .elementor-icon-box-description {
	transition: all 0.3s ease;
}

.ct-iconbox:hover .elementor-icon, 
.ct-iconbox:hover .elementor-icon-box-title,
.ct-iconbox:hover .elementor-icon-box-description { 
	fill: var(--theme-palette-color-8) !important;
	color: var(--theme-palette-color-8) !important 
}

.wpcf7-form-control-wrap {
  position: relative;
  padding-bottom: 18px; /* reserve space for error under field */
}

.wpcf7-not-valid-tip {
  position: absolute;
/*   bottom: -20px;  */
/*  left: 0; */
  font-size: 11px !important;
  color: red;
  line-height: 1.2;
  margin: 0;
}

form.wpcf7-form label > .wpcf7-form-control-wrap > .wpcf7-not-valid-tip {
  display: block !important;
}

/* Response output - fixed position inside form */
.wpcf7-response-output {
  position: absolute;
  bottom: -40px; 
  left: 0;
  right: 0;
  color: #000;
  font-size: 14px;
  padding: 10px 15px;
  border: 1px solid #f5c2c7;
  text-align: center;
  box-sizing: border-box;
  width: 100%;
  margin: 0 !important;   /* prevent extra space */
}

#wpcf7-f1923-o2 label > .wpcf7-form-control-wrap > .wpcf7-not-valid-tip {
    /*position: relative !important;*/
	  width: 100vh;
}

.wpcf7-form-control wpcf7-submit
{
	padding:0;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	color: #000;
}

.contact-form [data-name="work-type"] .wpcf7-not-valid-tip {
  margin-top: 12px; /* slightly more spacing for radio group */
}