/*
 * West Coast Performance — Custom Front-End Stylesheet
 * Loaded by: wp-content/mu-plugins/westcoast-custom-styles.php
 * All manual design corrections for this site live in this single file.
 */

/* =========================================================
   1. Design tokens
   ========================================================= */

:root {
	--wcp-green: var(--forest, #2F4A2E);
	--wcp-green-dark: var(--forest-dark, #16231A);
	--wcp-green-light: var(--forest-light, #3D5C3B);
	--wcp-text: #1A1A1A;
	--wcp-text-muted: #5C5C5C;
	--wcp-border: #E2E2E2;
	--wcp-radius: 6px;
	--wcp-container-max: 1300px;
}

/* =========================================================
   2. Global layout
   ========================================================= */


/* =========================================================
   3. Header
   ========================================================= */

.wcp-header {
	background: #fff;
	padding: 20px 0;
	position: relative;
	z-index: 20;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.wcp-header .elementor-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	max-width: var(--wcp-container-max);
	margin: 0 auto;
	padding: 0;
	gap: 15px;
}

.wcp-header .elementor-container > .elementor-column {
	width: auto !important;
}

.wcp-header .elementor-container > .elementor-column:nth-child(1) {
	flex: 0 0 auto;
}

.wcp-header .elementor-container > .elementor-column:nth-child(2) {
	flex: 1 1 auto;
	min-width: 0;
}

.wcp-header .elementor-container > .elementor-column:nth-child(3) {
	flex: 0 0 auto;
}

.wcp-header .tahefobu-site-logo img {
	max-height: 44px;
	width: auto;
	display: block;
}

.wcp-header .tahefobu-site-logo-wrapper {
	margin-right: 24px;
}

.wcp-header .tahefobu-nav-menu-container {
	display: none;
	justify-content: center;
}

.wcp-header ul.tahefobu-nav-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: nowrap;
}
#mainHeader .tahefobu-nav-menu > .menu-item{
	margin-right: 0;
}
#home{
	    padding-top: 30px;
}
#homeR2{

}
.wcp-header .tahefobu-menu-item {
	color: var(--wcp-text);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.2s;
}

.wcp-header .tahefobu-menu-item:hover,
.wcp-header .tahefobu-active-menu-item {
	opacity: 0.8;
}

.wcp-header .tahefobu-active-menu-item {
	border-bottom: 2px solid var(--wcp-green);
	padding-bottom: 4px;
}

.wcp-header__cta-group.e-con {
	display: flex;
	flex-direction: row !important;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	width: auto;
	flex-wrap: nowrap;
}

.wcp-header__cta-group .e-con-inner {
	display: flex;
	flex-direction: row !important;
	align-items: center;
	gap: 12px;
	flex-wrap: nowrap;
	width: auto;
}

.wcp-header__btn-primary .elementor-button,
.wcp-header__btn-secondary .elementor-button {
	border-radius: var(--wcp-radius);
	font-size: 14px;
	font-weight: 600;
	padding: 10px 20px;
	white-space: nowrap;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.wcp-header .elementor-button-icon {
	display: none;
}

.wcp-header__btn-primary .elementor-button {
	background: var(--wcp-green) !important;
	color: #fff !important;
	border: 1px solid var(--wcp-green) !important;
}

.wcp-header__btn-primary .elementor-button:hover,
.darkGreenBtn .elementor-button:hover,
.wcp-reviews__button .elementor-button:hover {
	background: var(--wcp-green-dark) !important;
	border-color: var(--wcp-green-dark) !important;
	color: #fff !important;
}

.wcp-header__btn-secondary .elementor-button {
	background: #fff !important;
	color: var(--wcp-text) !important;
	border: 1px solid var(--wcp-border) !important;
}

.wcp-header__btn-secondary .elementor-button:hover ,
.whiteBtn  .elementor-button:hover {
	border-color: var(--wcp-green) !important;
	color: var(--wcp-green) !important;
}

/* =========================================================
   4. Hero
   ========================================================= */

.wcp-hero__rating {
	display: flex;
	align-items: center;
}

.wcp-hero__rating .elementor-container {
	display: flex;
	align-items: center;
	gap: 8px;
}

.wcp-hero__rating .elementor-column {
	width: auto !important;
	flex: 0 0 auto;
}

.wcp-hero__rating .elementor-star-rating {
	white-space: nowrap;
}

.wcp-hero__rating .elementor-star-rating i {
	color: var(--wcp-green) !important;
}

.wcp-hero__heading h1,
.wcp-hero__heading .elementor-widget-container {
	font-size: 44px;
	line-height: 1.15;
	font-weight: 800;
	margin: 0 0 20px;
}

.wcp-hero__intro {
	color: var(--wcp-text-muted);
	margin-bottom: 28px;
}

.wcp-hero__cta-row .elementor-container {
	display: flex;
	align-items: center;
	gap: 16px;
}

.wcp-btn-primary .elementor-button,
.wcp-btn-secondary .elementor-button {
	border-radius: var(--wcp-radius);
	font-size: 15px;
	font-weight: 600;
	padding: 14px 24px;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.wcp-btn-primary .elementor-button {
	background: var(--wcp-green) !important;
	color: #fff !important;
	border: 1px solid var(--wcp-green) !important;
}

.wcp-btn-primary .elementor-button:hover {
	background: var(--wcp-green-dark) !important;
	border-color: var(--wcp-green-dark) !important;
	color: #fff !important;
}

.wcp-btn-secondary .elementor-button {
	background: #fff !important;
	color: var(--wcp-text) !important;
	border: 1px solid var(--wcp-border) !important;
}

.wcp-btn-secondary .elementor-button:hover {
	border-color: var(--wcp-green) !important;
	color: var(--wcp-green) !important;
}

.wcp-hero__trust-row .elementor-container {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 32px;
}

.wcp-hero__trust-row .elementor-column {
	width: auto !important;
	flex: 0 0 auto;
}

.wcp-hero__trust-logo {
	display: flex;
	align-items: center;
}

.wcp-hero__trust-item .elementor-icon-box-wrapper {
	display: flex;
	align-items: center;
	gap: 8px;
}

.wcp-hero__trust-item .elementor-icon-box-icon {
	margin: 0;
}

.wcp-hero__trust-item .elementor-icon-box-icon i,
.wcp-hero__trust-item .elementor-icon-box-icon svg {
	font-size: 20px;
	width: 20px;
	height: 20px;
	color: var(--wcp-text);
}

.wcp-hero__trust-item .elementor-icon-box-title,
.wcp-hero__trust-item .elementor-icon-box-description {
	font-size: 11px;
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wcp-text);
	white-space: nowrap;
	margin: 0;
}

.wcp-hero__trust-item .elementor-icon-box-description {
	font-weight: 400;
	color: var(--wcp-text-muted);
}

.wcp-hero__image-col {
	position: relative !important;
}

.wcp-hero__card {
    position: absolute !important;
    right: 0;
    bottom: 36px;
    left: auto !important;
    max-width: 400px;
    margin: 0;
}

.wcp-hero__card-title {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 16px;
}

.wcp-hero__card-list .elementor-icon-list-item {
	margin-bottom: 12px;
}

.wcp-hero__card-list .elementor-icon-list-item:last-child {
	margin-bottom: 0;
}

.wcp-hero__card-list .elementor-icon-list-icon {
	color: var(--wcp-green);
	width: 18px;
}

.wcp-hero__card-list .elementor-icon-list-text {
	font-size: 14px;
	color: var(--wcp-text);
}

/* =========================================================
   5. Service strip
   ========================================================= */

.wcp-service-strip {
	padding: 32px 0;
	border-top: 1px solid var(--wcp-border);
	border-bottom: 1px solid var(--wcp-border);
}

.wcp-service-strip .elementor-container {
	align-items: center;
}

.wcp-service-strip .elementor-column:not(:last-child) {
	border-right: 1px solid var(--wcp-border);
}

.wcp-service-strip__item {
	text-align: center;
}

.wcp-service-strip__item .elementor-icon-box-icon {
	margin-bottom: 8px;
}

.wcp-service-strip__item .elementor-icon-box-icon img,
.wcp-service-strip__item .elementor-icon-box-icon svg {
	width: 28px;
	height: 28px;
}

.wcp-service-strip__item .elementor-icon-box-title {
	font-size: 14px;
	font-weight: 700;
	color: var(--wcp-text);
}

.wcp-service-strip__item .elementor-icon-box-description:empty {
	display: none;
}


/* =========================================================
   6. What We Do
   ========================================================= */

.wcp-what-we-do {
	background: #fff;
}

.wcp-what-we-do .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
}

.wcp-section-eyebrow {
	text-align: center;
}

.wcp-section-eyebrow p {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wcp-green);
	margin: 0;
}

.wcp-section-eyebrow p::before,
.wcp-section-eyebrow p::after {
	content: '';
	width: 32px;
	height: 2px;
	background: var(--wcp-green);
	flex: 0 0 auto;
}

.wcp-what-we-do .elementor-heading-title {
	text-align: center;
	font-size: 40px;
	font-weight: 800;
	margin: 8px 0 16px;
}

.wcp-what-we-do__intro {
	text-align: center;
	max-width: 700px;
	margin: 0 auto;
	color: var(--wcp-text-muted);
}

.wcp-service-grid > .elementor-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	max-width: 1140px;
	margin: 0 auto;
}
#workshop .elementor-container > .elementor-column {
    width: 33.3%;
}
.wcp-service-grid > .elementor-container > .elementor-column {
	width: 100% !important;
}

.wcp-service-card {
	background: #fff;
	border: 1px solid var(--wcp-border);
	border-radius: 15px;
	box-shadow: 0 4px 16px rgba(20, 30, 20, 0.05);
	height: 100%;
}

.wcp-service-card .elementor-widget-wrap {
	padding: 28px;
}

.wcp-service-card .elementor-column {
	display: flex;
	align-items: flex-start;
	gap: 18px;
}

.wcp-service-card .elementor-widget-wrap.elementor-element-populated {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap !important;
	align-items: flex-start;
	gap: 18px;
}

.wcp-service-card .elementor-widget-wrap > .wcp-service-card__icon {
	flex: 0 0 68px;
	width: 68px !important;
}

.wcp-service-card__icon .elementor-icon {
	width: 68px;
	height: 68px;
	font-size: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.elementor-element-54d4ce20.elementor-element-54d4ce20 .elementor-icon svg,
.elementor-element-a97f935.elementor-element-a97f935 .elementor-icon svg,
.elementor-element-3f3c91d3.elementor-element-3f3c91d3 .elementor-icon svg,
.elementor-element-10107b8e.elementor-element-10107b8e .elementor-icon svg,
.elementor-element-427599.elementor-element-427599 .elementor-icon svg,
.elementor-element-1c4dabca.elementor-element-1c4dabca .elementor-icon svg {
	width: 26px !important;
	height: 26px !important;
	min-width: 26px !important;
	flex-shrink: 0 !important;
	flex-basis: 26px !important;
}

.wcp-service-card .elementor-widget-wrap > .wcp-service-card__content {
	flex: 1 1 0%;
	min-width: 0;
	width: auto !important;
}

.wcp-service-card__title {
	font-size: 17px;
	font-weight: 700;
	margin: 4px 0 8px;
}

.wcp-service-card__content .elementor-divider {
	margin: 0 0 10px;
}

.wcp-service-card__content .elementor-divider-separator {
	border-top-color: var(--wcp-green);
	border-top-width: 2px;
	width: 32px;
	margin: 0;
}

.wcp-service-card__description {
	font-size: 14px;
	color: var(--wcp-text-muted);
	line-height: 1.5;
}

.wcp-service-card__description p {
	margin: 0;
}
/* =========================================================
   7. Workshop
   ========================================================= */

.wcp-workshop {
	background: #F5F5F2;
	padding: 55px 0;
}

.wcp-workshop > .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
	align-items: center;
	column-gap: 20px;
}

.wcp-workshop__eyebrow p {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wcp-green);
	margin: 0 0 12px;
}

.wcp-workshop__eyebrow p::before {
	content: '';
	width: 24px;
	height: 2px;
	background: var(--wcp-green);
	flex: 0 0 auto;
}

.wcp-workshop__heading .elementor-heading-title {
	font-size: 38px;
	font-weight: 800;
	margin: 0 0 14px;
}

.wcp-workshop__intro {
	color: var(--wcp-text-muted);
	margin-bottom: 20px;
}

.wcp-workshop__benefits .elementor-icon-list-item {
    padding: 8px 0;
    border-bottom: none;
    gap: 15px;
}

.wcp-workshop__benefits .elementor-icon-list-item:last-child {
	border-bottom: none;
}

.wcp-workshop__benefits .elementor-icon-list-icon {
	color: var(--wcp-green) !important;
}

.wcp-workshop__benefits .elementor-icon-list-icon i {
	font-size: 18px;
}

.wcp-workshop__benefits .elementor-icon-list-icon svg {
	fill: var(--wcp-green) !important;
	width: 18px !important;
	height: 18px !important;
	flex-shrink: 0 !important;
	flex-basis: 18px !important;
}

.wcp-workshop__benefits .elementor-icon-list-text {
	position: relative;
    font-size: 15px;
    color: var(--wcp-text);
    position: relative;
    padding-left: 20px;
    
}
.wcp-workshop__benefits .elementor-icon-list-text::before{
position: absolute;
    content: "";
    width: 2px;
    height: 17px;
    display: block;
    background-color: #8a998a;
    left: -8px;
    top: 3px;
}
.wcp-workshop__button {
	margin-top: 8px;
}

.wcp-workshop__button .elementor-button {
	background-color: var(--wcp-green) !important;
	color: #fff;
	border-radius: 8px;
	padding: 14px 26px;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none !important;
	transition: background-color 0.2s;
}

.wcp-workshop__button .elementor-button:hover {
	background-color: var(--wcp-green-dark) !important;
	color: #fff;
}

.wcp-workshop__button .elementor-button-icon i {
	color: #fff;
}

.wcp-workshop__button .elementor-button-icon svg {
	fill: #fff !important;
	width: 15px !important;
	height: 15px !important;
	flex-shrink: 0 !important;
	flex-basis: 15px !important;
}

.wcp-workshop__media {
	width: 66% !important;
}

.wcp-workshop__image .elementor-widget-container {
	line-height: 0;
}

.wcp-workshop__image img {
	width: 100%;
	height: 420px;
	object-fit: cover;
	border-radius: 16px;
	display: block;
}

/* TEMPORARY: no real workshop exterior photo exists yet (see report).
   Using the logo as a placeholder needs `contain`, not `cover`, or it crops into an
   unrecognizable blur. Remove this block entirely once a real photo replaces it. */
#workshop .wcp-workshop__image--fallback img {
    background: transparent;
    padding: 0;
    box-shadow: none;
    border-radius: 20px;
    border-radius: 15px;
}


/* =========================================================
   8. Servicing and Repairs
   (shared rules for .wcp-feature-services apply to both this
   section and Powerflow Exhausts below; section 9 only adds
   the off-white background + spacing that differs)
   ========================================================= */

.wcp-feature-services .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
}

.wcp-feature-services__header .elementor-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 24px;
}

.wcp-feature-services__header .elementor-column {
	width: auto !important;
}

.wcp-feature-services__heading-group {
	flex: 1 1 auto;
	min-width: 0;
}

.wcp-feature-services__eyebrow p {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wcp-green);
	margin: 0 0 8px;
}

.wcp-feature-services__eyebrow p::before {
	content: '';
	width: 24px;
	height: 2px;
	background: var(--wcp-green);
	flex: 0 0 auto;
}

.wcp-feature-services__title .elementor-heading-title {
	font-size: 40px;
	font-weight: 800;
	margin: 0 0 8px;
}

.wcp-feature-services__intro {
	color: var(--wcp-text-muted);
	font-size: 15px;
	max-width: 560px;
}

.wcp-feature-services__cta.elementor-column {
	flex: 0 0 auto;
}

.wcp-feature-services__cta .elementor-button {
	background-color: var(--wcp-green) !important;
	color: #fff;
	border-radius: 8px;
	padding: 14px 22px;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none !important;
	transition: background-color 0.2s;
}

.wcp-feature-services__cta .elementor-button:hover {
	background-color: var(--wcp-green-dark) !important;
	color: #fff;
}

.wcp-feature-services__cta .elementor-button-icon i,
.wcp-feature-services__cta .elementor-button-icon svg {
	color: #fff;
}

.wcp-feature-services__cta .elementor-button-icon svg {
	fill: #fff !important;
	width: 14px !important;
	height: 14px !important;
	flex-shrink: 0 !important;
	flex-basis: 14px !important;
}

/* --- card grid --- */

.wcp-feature-services__grid > .elementor-container {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	align-items: stretch;
}
#repairs.wcp-feature-services__grid > .elementor-container {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.wcp-feature-services__grid .elementor-column {
	width: 100% !important;
}

.wcp-feature-card {
	background: #fff;
	border: 1px solid var(--wcp-border);
	border-radius: 12px;
	box-shadow: 0 4px 16px rgba(20, 30, 20, 0.05);
	overflow: hidden;
	height: 100%;
}

.wcp-feature-card .elementor-widget-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0 !important;
}

.wcp-feature-card__media {
	width: 100% !important;
	height: 155px;
	overflow: hidden;
	flex: 0 0 auto;
}

.wcp-feature-card__media .e-con-inner,
.wcp-feature-card__media .elementor-widget-wrap {
	height: 100%;
}

.wcp-feature-card__image {
	width: 100% !important;
	height: 100%;
}

.wcp-feature-card__image .elementor-widget-container {
	height: 100%;
	line-height: 0;
}

.wcp-feature-card__image img {
	width: 100%;
	height: 155px;
	object-fit: cover;
	display: block;
}

.wcp-feature-card__image.wcp-service-image--fallback img {
	object-fit: contain;
	background: #EDEEEC;
	padding: 30px;
}

.wcp-feature-card__body {
	flex: 1 1 auto !important;
	width: 100% !important;
	align-self: stretch !important;
	padding: 0 !important;
}

.wcp-feature-card__body > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start;
    gap: 7px;
    padding: 10px;
	width: 100% !important;
	height: 100%;
	box-sizing: border-box;
}

.wcp-feature-card__icon {
	flex: 0 0 44px !important;
	width: 44px !important;
	min-width: 44px !important;
}

.wcp-feature-card__icon .elementor-icon {
	width: 44px;
	height: 44px;
	font-size: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.wcp-feature-card__icon .elementor-icon svg,
.wcp-feature-card__icon .elementor-icon i {
	width: 18px !important;
	height: 18px !important;
	flex-shrink: 0 !important;
	flex-basis: 18px !important;
}

.wcp-feature-card__content {
	flex: 1 1 0% !important;
	width: auto !important;
	min-width: 0;
}

.wcp-feature-card__title {
	font-size: 15px;
	font-weight: 700;
	margin: 2px 0 6px;
	line-height: 1.3;
}

.wcp-feature-card__content .elementor-divider {
	margin: 0 0 8px;
}

.wcp-feature-card__content .elementor-divider-separator {
	border-top-color: var(--wcp-green);
	border-top-width: 2px;
	width: 24px;
	margin: 0;
}

.wcp-feature-card__description {
	font-size: 13px;
	color: var(--wcp-text-muted);
	line-height: 1.45;
}

.wcp-feature-card__description p {
	margin: 0;
}

/* =========================================================
   9. Powerflow Exhausts
   ========================================================= */

.wcp-powerflow-exhausts.wcp-feature-services__header,
.wcp-powerflow-exhausts.wcp-feature-services__grid {
	background: #F5F5F2;
}

.wcp-powerflow-exhausts.wcp-feature-services__header {
	padding-top: 56px;
}

.wcp-powerflow-exhausts.wcp-feature-services__grid {
	padding-bottom: 56px;
}


/* =========================================================
   10. Reviews
   ========================================================= */

.wcp-reviews {
	background: #F5F5F2;
}

.wcp-reviews .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
}

.wcp-reviews__eyebrow p {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wcp-green);
	margin: 0;
}

.wcp-reviews__eyebrow p::before,
.wcp-reviews__eyebrow p::after {
	content: '';
	width: 28px;
	height: 2px;
	background: var(--wcp-green);
	flex: 0 0 auto;
}

.wcp-reviews__title .elementor-heading-title {
	text-align: center;
	font-size: 36px;
	font-weight: 800;
	margin: 8px 0 6px;
}

.wcp-reviews__intro {
	text-align: center;
	color: var(--wcp-text-muted);
	font-size: 15px;
	margin-bottom: 0;
}

/* --- summary panel --- */

.wcp-reviews__summary-section .elementor-container {
	max-width: none;
}

.wcp-reviews__summary {
    max-width: 620px;
    margin: 0 auto 32px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 16px rgba(20, 30, 20, 0.06);
    padding: 2px 25px !important;
}

.wcp-reviews__summary > .elementor-container {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 20px;
}

.wcp-reviews__summary .elementor-column {
	width: auto !important;
	position: relative;
}

.wcp-reviews__summary .elementor-column:not(:last-child)::after {
	content: '';
	position: absolute;
	right: -10px;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 30px;
	background: var(--wcp-border);
}

.wcp-reviews__google-logo .elementor-icon {
	font-size: 26px;
}

.wcp-reviews__google-logo .elementor-icon svg,
.wcp-review-card__quote .elementor-icon svg,
.wcp-review-card__google-logo .elementor-icon svg {
	flex-shrink: 0 !important;
}

.wcp-reviews__google-logo .elementor-icon svg {
	width: 26px !important;
	height: 26px !important;
	flex-basis: 26px !important;
}

.wcp-review-card__quote .elementor-icon svg {
	width: 26px !important;
	height: 26px !important;
	flex-basis: 26px !important;
}

.wcp-review-card__google-logo .elementor-icon svg {
	width: 14px !important;
	height: 14px !important;
	flex-basis: 14px !important;
}

.wcp-reviews__rating-block .elementor-widget-wrap {
	align-items: flex-start !important;
}

.wcp-reviews__rating-block .elementor-heading-title,
.wcp-reviews__rating-block p {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	color: var(--wcp-text);
}

.wcp-reviews__rating-block .elementor-star-rating {
	margin-top: 2px;
}

.wcp-reviews__rating-block .elementor-star-rating i {
	display: inline-block;
	width: 14px;
	font-size: 0;
	color: #F5A623;
}

.wcp-reviews__rating-block .elementor-star-rating i::before {
	content: '\2605';
	font-size: 13px;
	line-height: 1;
}

.wcp-reviews__rating {
	font-size: 24px !important;
	font-weight: 800 !important;
	line-height: 1;
}

.wcp-reviews__count {
	font-size: 12px;
	color: var(--wcp-text-muted);
	line-height: 1.3;
}

.wcp-reviews__button .elementor-button {
	background-color: #2f4a2e !important;
	color: #fff !important;
	border: 1px solid #fff;
	border-radius: 8px;
	padding: 10px 18px;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	text-decoration: none !important;
}



.wcp-reviews__button .elementor-button-icon svg {
	fill: currentColor !important;
	width: 13px !important;
	height: 13px !important;
	flex-shrink: 0 !important;
	flex-basis: 13px !important;
}

/* --- review card grid --- */

.wcp-reviews__grid > .elementor-container {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0;
	align-items: stretch;
}

.wcp-reviews__grid > .elementor-container > .elementor-column {
	width: 100% !important;
}

.wcp-review-card {
	background: #fff;
	border: 1px solid var(--wcp-border);
	border-bottom: 3px solid var(--wcp-green);
	border-radius: 11px;
	box-shadow: 0 4px 14px rgba(20, 30, 20, 0.05);
	height: 100%;
}

.wcp-review-card > .elementor-widget-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0 !important;
}

.wcp-review-card > .elementor-widget-wrap > .elementor-column {
	width: 100% !important;
	height: 100%;
}

.wcp-review-card > .elementor-widget-wrap > .elementor-column > .elementor-widget-wrap {
	display: flex !important;
	flex-direction: column !important;
	height: 100%;
	padding: 22px !important;
}

.wcp-review-card > .elementor-widget-wrap > .elementor-column > .elementor-widget-wrap > section:first-child .elementor-container {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.wcp-review-card__stars i {
	display: inline-block;
	width: 14px;
	color: #F5A623;
	font-size: 0;
}

.wcp-review-card__stars i::before {
	content: '\2605';
	font-size: 13px;
	line-height: 1;
}

.wcp-review-card__quote .elementor-icon i,
.wcp-review-card__quote .elementor-icon svg {
	color: rgba(47, 74, 46, 0.15);
	fill: rgba(47, 74, 46, 0.15) !important;
}

.wcp-review-card__text {
	font-size: 13px;
	line-height: 1.5;
	color: var(--wcp-text);
	margin: 10px 0;
	flex: 1 1 auto;
}

.wcp-review-card__text p {
    margin: 0;
    font-style: normal;
    font-weight: 500;
    font-size: 13px;
}

.wcp-review-card__author {
	margin-top: auto;
}

.wcp-review-card__author .elementor-container {
	display: flex;
	align-items: center;
	gap: 8px;
}

.wcp-review-card__author .elementor-column {
	width: auto !important;
}

.wcp-review-card__avatar {
	flex: 0 0 auto;
}

.wcp-review-card__avatar .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #EDEEEC;
	font-size: 13px;
	font-weight: 700;
	color: var(--wcp-text);
}

.wcp-review-card__author-details {
	flex: 1 1 auto;
	min-width: 0;
}

.wcp-review-card__author-details p {
	margin: 0;
	font-size: 12px;
	line-height: 1.35;
}

.wcp-review-card__author-details .elementor-widget-wrap div:first-child p{
	font-weight: 700;
	color: var(--wcp-text);
}

.wcp-review-card__author-details .elementor-widget-wrap div:last-child p{
	color: var(--wcp-green);
}

.wcp-review-card__google-logo .elementor-icon {
	font-size: 14px;
}

/* =========================================================
   11. Gallery
   ========================================================= */


/* =========================================================
   12. Booking
   ========================================================= */

.wcp-contact {
	background: #fff;
	border-top: 1px solid var(--wcp-border);
	border-bottom: 1px solid var(--wcp-border);
	padding: 50px 0;
}

.wcp-contact > .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
	align-items: flex-start;
	column-gap: 38px;
}

/* --- left column: form + direct contact --- */

.wcp-contact__eyebrow p {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wcp-green);
	margin: 0 0 10px;
}

.wcp-contact__eyebrow p::before {
	content: '';
	width: 24px;
	height: 2px;
	background: var(--wcp-green);
	flex: 0 0 auto;
}

.wcp-contact__title .elementor-heading-title {
	font-size: 34px;
	font-weight: 800;
	margin: 0 0 8px;
}

.wcp-contact__intro {
	color: var(--wcp-text-muted);
	margin-bottom: 20px;
}

.wcp-contact__form {
	display: block;
	margin-bottom: 4px;
}

.wcp-contact-form {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.wcp-contact-form__field {
	position: relative;
}

.wcp-contact-form__icon {
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 18px;
	color: var(--wcp-green);
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.wcp-contact-form__icon svg {
	width: 18px;
	height: 18px;
}

.wcp-contact-form__icon--top {
	top: 18px;
	transform: none;
}

.wcp-contact-form__field input,
.wcp-contact-form__field textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--wcp-border);
	border-radius: 7px;
	padding: 12px 16px 12px 46px;
	font-size: 14px;
	font-family: inherit;
	color: var(--wcp-text);
	background: #fff;
}

.wcp-contact-form__field input {
	height: 50px;
}

.wcp-contact-form__field textarea {
	min-height: 100px;
	resize: vertical;
	line-height: 1.5;
	padding-top: 14px;
}

.wcp-contact-form__field input::placeholder,
.wcp-contact-form__field textarea::placeholder {
	color: #9AA09A;
}

.wcp-contact-form__field input:focus,
.wcp-contact-form__field textarea:focus {
	outline: none;
	border-color: var(--wcp-green);
	box-shadow: 0 0 0 3px rgba(47, 74, 46, 0.12);
}

.wcp-contact__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	background-color: var(--wcp-green);
	color: #fff;
	border: none;
	border-radius: 8px;
	padding: 15px 20px;
	font-size: 15px;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: background-color 0.2s;
}

.wcp-contact__submit svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.wcp-contact__submit:hover {
	background-color: var(--wcp-green-dark);
}

.wcp-contact__submit:focus-visible {
	outline: 2px solid var(--wcp-green);
	outline-offset: 3px;
}

.wcp-contact__direct-divider {
	display: none;
}

.wcp-contact__direct-label {
	margin: 22px 0 16px;
}

.wcp-contact__direct-label p {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wcp-text-muted);
	white-space: nowrap;
}

.wcp-contact__direct-label p::before,
.wcp-contact__direct-label p::after {
	content: '';
	flex: 1 1 auto;
	height: 1px;
	background: var(--wcp-border);
}

.wcp-contact__direct .elementor-container {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    margin-top: 15px;
}

.wcp-contact__direct .elementor-column {
	width: auto !important;
}

.wcp-contact__direct-item .elementor-icon-box-wrapper {
	display: flex;
	align-items: center;
	gap: 10px;
}

.wcp-contact__direct-item .elementor-icon-box-icon {
	margin: 0;
}

.wcp-contact__direct-item .elementor-icon {
	width: 36px;
	height: 36px;
	font-size: 14px;
}

.wcp-contact__direct-item .elementor-icon-box-title,
.wcp-contact__direct-item .elementor-icon-box-title a {
	font-size: 11px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--wcp-text-muted);
	margin: 0;
	text-decoration: none !important;
}

.wcp-contact__direct-item .elementor-icon-box-description,
.wcp-contact__direct-item .elementor-icon-box-description a {
	font-size: 15px;
	font-weight: 700;
	color: var(--wcp-text);
	text-decoration: none;
}

.wcp-contact__direct-item .elementor-icon-box-description a:hover {
	color: var(--wcp-green);
}

/* --- right column: map + benefits --- */

.wcp-contact__location-column {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    overflow: hidden;
}

.wcp-contact__address {
	background: var(--wcp-green-dark);
}

.wcp-contact__address .elementor-container {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 20px;
}

.wcp-contact__address .elementor-column {
	width: auto !important;
}

.wcp-contact__address .elementor-icon i,
.wcp-contact__address .elementor-icon svg {
	color: #fff;
	fill: #fff !important;
}

.wcp-contact__address p {
	margin: 0;
	color: #fff;
}

.wcp-contact__address p[style*="font-weight:600"] {
	font-size: 12px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	opacity: 0.85;
}

.wcp-contact__map {
	width: 100% !important;
}

.wcp-contact__map iframe {
    width: 100%;
    height: 225px;
    display: block;
    border: none;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.wcp-contact__benefits > .elementor-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
    padding: 0 !important;
}

.wcp-contact__benefits > .elementor-container > .elementor-column {
	width: 100% !important;
}

.wcp-contact-benefit {
	background: #fff;
	border: 1px solid var(--wcp-border);
	border-radius: 7px;
	box-shadow: 0 5px 8px rgba(20, 30, 20, 0.04);
	padding: 14px !important;
	height: 100%;
	box-sizing: border-box;
}

.wcp-contact-benefit .elementor-icon-box-wrapper {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.wcp-contact-benefit .elementor-icon-box-icon {
	margin: 0;
	flex: 0 0 auto;
}

.wcp-contact-benefit .elementor-icon {
	width: 38px;
	height: 38px;
	font-size: 15px;
}

.wcp-contact-benefit .elementor-icon-box-title {
	font-size: 13px;
	font-weight: 700;
	color: var(--wcp-text);
	margin: 0 0 3px;
	line-height: 1.25;
}

.wcp-contact-benefit .elementor-icon-box-description {
	font-size: 12px;
	color: var(--wcp-text-muted);
	line-height: 1.35;
	margin: 0;
}


/* =========================================================
   13. Footer
   ========================================================= */

.wcp-footer {
	background: var(--wcp-green-dark);
}

.wcp-footer .elementor-container {
	max-width: 1140px;
	margin: 0 auto;
}

/* --- main footer --- */

.wcp-footer__main {
	padding: 56px 0 44px;
}

.wcp-footer__main > .elementor-container {
	align-items: flex-start;
	column-gap: 40px;
}

.wcp-footer__column {
	position: relative;
}

.wcp-footer__column:not(:first-child)::before {
	content: '';
	position: absolute;
	left: -20px;
	top: 2px;
	bottom: 2px;
	width: 1px;
	background: rgba(255, 255, 255, 0.1);
}

/* Brand column */

.wcp-footer__logo img {
	width: 250px;
	max-width: 100%;
	height: auto;
	display: block;
	filter: invert(1);
	mix-blend-mode: screen;
}

.wcp-footer__tagline {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.wcp-footer__tagline p {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wcp-green-light);
	line-height: 1.6;
}

.wcp-footer__description {
	margin-top: 14px;
}

.wcp-footer__description p {
	margin: 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.65);
	line-height: 1.5;
}

.wcp-footer__socials {
	margin-top: 20px;
}

.wcp-footer__socials .elementor-container {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 13px;
}

.wcp-footer__socials .elementor-column {
	width: auto !important;
}

.wcp-footer__social-link .elementor-icon {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.3);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	transition: border-color 0.2s, background-color 0.2s;
}

.wcp-footer__social-link .elementor-icon i,
.wcp-footer__social-link .elementor-icon svg {
	color: #fff;
}

.wcp-footer__social-link .elementor-icon svg {
	fill: #fff !important;
	width: 14px !important;
	height: 14px !important;
	flex-shrink: 0 !important;
	flex-basis: 14px !important;
}

.wcp-footer__social-link .elementor-icon:hover,
.wcp-footer__social-link .elementor-icon:focus-visible {
	border-color: var(--wcp-green-light);
	background-color: rgba(255, 255, 255, 0.06);
	outline: none;
}

/* Headings shared by contact / quick links / why choose */

.wcp-footer__heading {
	margin-bottom: 16px;
}

.wcp-footer__heading .elementor-heading-title {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	margin: 0 0 10px;
	position: relative;
	padding-bottom: 10px;
}

.wcp-footer__heading .elementor-heading-title::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 28px;
	height: 2px;
	background: var(--wcp-green-light);
}

/* Contact column */

.wcp-footer__contact .elementor-icon-list-item {
	align-items: flex-start;
	margin-bottom: 16px;
	gap: 10px;
}

.wcp-footer__contact .elementor-icon-list-item:last-child {
	margin-bottom: 0;
}

.wcp-footer__contact .elementor-icon-list-icon {
	color: var(--wcp-green-light);
	width: 16px;
	flex: 0 0 auto;
	margin-top: 2px;
}

.wcp-footer__contact .elementor-icon-list-icon i {
	font-size: 13px;
}

.wcp-footer__contact .elementor-icon-list-icon svg {
	fill: var(--wcp-green-light) !important;
	width: 13px !important;
	height: 13px !important;
	flex-shrink: 0 !important;
	flex-basis: 13px !important;
}

.wcp-footer__contact .elementor-icon-list-text,
.wcp-footer__contact .elementor-icon-list-text a {
	color: rgba(255, 255, 255, 0.75);
	font-size: 14px;
	line-height: 1.5;
	text-decoration: none;
	word-break: break-word;
}

.wcp-footer__contact .elementor-icon-list-text a:hover {
	color: var(--wcp-green-light);
}

/* Quick Links column */

.wcp-footer__quick-links .elementor-icon-list-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 13px;
}

.wcp-footer__quick-links .elementor-icon-list-item:last-child {
	margin-bottom: 0;
}

.wcp-footer__quick-links .elementor-icon-list-text,
.wcp-footer__quick-links .elementor-icon-list-text a {
	color: rgba(255, 255, 255, 0.75);
	font-size: 14px;
	text-decoration: none;
}

.wcp-footer__quick-links .elementor-icon-list-text a:hover,
.wcp-footer__quick-links li:hover .elementor-icon-list-text,
.wcp-footer__quick-links li:focus-within .elementor-icon-list-text {
	color: #fff;
}

.wcp-footer__quick-links .elementor-icon-list-icon {
	order: 2;
	color: var(--wcp-green-light);
	width: 12px;
}

.wcp-footer__quick-links .elementor-icon-list-icon i {
	font-size: 11px;
}

.wcp-footer__quick-links .elementor-icon-list-icon svg {
	fill: var(--wcp-green-light) !important;
	width: 11px !important;
	height: 11px !important;
	flex-shrink: 0 !important;
	flex-basis: 11px !important;
}

/* Why Choose Us column */

.wcp-footer__benefits .elementor-icon-list-item {
	align-items: center;
	gap: 12px;
	padding-bottom: 12px;
	margin-bottom: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.wcp-footer__benefits .elementor-icon-list-item:last-child {
	border-bottom: none;
	margin-bottom: 16px;
	padding-bottom: 0;
}

.wcp-footer__benefits .elementor-icon-list-icon {
	width: 40px;
	height: 40px;
	flex: 0 0 auto;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.3);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.wcp-footer__benefits .elementor-icon-list-icon i {
	color: #fff;
	font-size: 15px;
}

.wcp-footer__benefits .elementor-icon-list-icon svg {
	fill: #fff !important;
	width: 15px !important;
	height: 15px !important;
	flex-shrink: 0 !important;
	flex-basis: 15px !important;
}

.wcp-footer__benefits .elementor-icon-list-text {
	color: rgba(255, 255, 255, 0.8);
	font-size: 14px;
	font-weight: 600;
}

.wcp-footer__cta .elementor-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	background: transparent !important;
	color: #fff !important;
	border: 1px solid var(--wcp-green-light);
	border-radius: 8px;
	padding: 16px 18px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	transition: background-color 0.2s, border-color 0.2s;
}

.wcp-footer__cta .elementor-button:hover,
.wcp-footer__cta .elementor-button:focus-visible {
	background: rgba(163, 214, 122, 0.1) !important;
	border-color: #fff;
	outline: none;
}

.wcp-footer__cta .elementor-button-icon i,
.wcp-footer__cta .elementor-button-icon svg {
	color: #fff;
}

.wcp-footer__cta .elementor-button-icon svg {
	fill: #fff !important;
	width: 15px !important;
	height: 15px !important;
	flex-shrink: 0 !important;
	flex-basis: 15px !important;
}

.wcp-footer__cta .elementor-button-text::after {
	content: '\2192';
	display: inline-block;
	margin-left: 10px;
	color: var(--wcp-green-light);
	font-weight: 700;
}

/* --- legal bar --- */

.wcp-footer__legal {
	border-top: 1px solid rgba(163, 214, 122, 0.25);
	padding: 22px 0;
}

.wcp-footer__legal .elementor-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1140px;
	padding: 0 58px;
}

.wcp-footer__legal .elementor-column {
	width: auto !important;
}

.wcp-footer__copyright p {
	margin: 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.5);
}

.wcp-footer__legal-links p {
	margin: 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.5);
}

.wcp-footer__legal-links a {
	color: rgba(255, 255, 255, 0.5);
	text-decoration: none;
}

.wcp-footer__legal-links a:hover,
.wcp-footer__legal-links a:focus-visible {
	color: #fff;
	text-decoration: underline;
	outline: none;
}

.elementor-widget:not(:last-child) {
    --kit-widget-spacing: 0;
}
#repairs .sandrepairCls img,
#exhaustsR2 .sandrepairCls img{
	height: 150px;
}
#home>.elementor-container {
    max-width: 1140px;
    border-bottom: 1px solid #ccc;
}
#homeR1Icons p{
	margin-bottom: 0;
	font-weight: 500;
	color: #1A1A1A;
    line-height: 17px;
    padding-left: 10px;
}
#services >.elementor-container{
	padding-top: 55px;
	border-top: 1px solid #ccc;
}
#homeR3 h3:after,
#homeR4 h3:after,
#repairs h3:after,
#exhaustsR2 h3:after{
    display: block;
    content: "";
    width: 45px;
    height: 2px;
    background-color: #6b9c51;
    position: absolute;
    bottom: -11px;
}
#repairs .elementor-column-gap-default>.elementor-column>.elementor-element-populated,
#exhaustsR2 .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 7px;
}
#googleR1 p{
	margin-bottom: 0;
}
/* Reliable submenu arrow without icon fonts */
/* Correct submenu dropdown arrow */
.tahefobu-nav-menu-horizontal
.menu-item-has-children
.tahefobu-sub-icon {
    width: 7px !important;
    height: 7px !important;
    margin-left: 8px !important;
    display: inline-block !important;
    font-size: 0 !important;

    border: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;

    top: 46% !important;
    transform: translateY(-50%) rotate(45deg) !important;
    -webkit-transform: translateY(-50%) rotate(45deg) !important;
}

.tahefobu-nav-menu-horizontal
.menu-item-has-children
.tahefobu-sub-icon::before {
    content: none !important;
}
.tahefobu-nav-menu .tahefobu-menu-item.tahefobu-active-menu-item{
	color: #333333 !important;
    opacity: 0.8;
}
#repairs h3,
#exhaustsR2 h3{
    font-size: 15px;
    font-weight: 600;
}
#repairs .e-con-boxed.e-flex,
#exhaustsR2 .e-con-boxed.e-flex{
	padding: 0;
}
#contact .myContactForm input,
#contact .myContactForm textarea{
        padding-left: 50px;
}

#contact .myContactForm {
	margin: 0;
}

/* Form layout */
#contact .myContactForm .wpforms-form {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

/* Remove WPForms default field spacing */
#contact .myContactForm .wpforms-field-container {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

#contact .myContactForm .wpforms-field {
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0;
}

/* Hide visible field labels */
#contact .myContactForm .wpforms-field-label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* All inputs and textarea */
#contact .myContactForm input[type="text"],
#contact .myContactForm input[type="email"],
#contact .myContactForm input[type="tel"],
#contact .myContactForm input[type="number"],
#contact .myContactForm textarea {
	display: block;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	border: 1px solid var(--wcp-border, #d8dcd8) !important;
	border-radius: 7px !important;
	padding: 12px 16px 12px 46px !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: var(--wcp-text, #202420) !important;
	background: #fff !important;
	box-shadow: none !important;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}

/* Single-line field height */
#contact .myContactForm input[type="text"],
#contact .myContactForm input[type="email"],
#contact .myContactForm input[type="tel"],
#contact .myContactForm input[type="number"] {
	height: 50px !important;
}

/* Message field */
#contact .myContactForm textarea {
	min-height: 100px !important;
	height: 120px;
	padding-top: 14px !important;
	resize: vertical;
}

/* Placeholders */
#contact .myContactForm input::placeholder,
#contact .myContactForm textarea::placeholder {
	color: #9aa09a !important;
	opacity: 1;
}

/* Focus state */
#contact .myContactForm input:focus,
#contact .myContactForm textarea:focus {
	outline: none !important;
	border-color: var(--wcp-green, #2f4a2e) !important;
	box-shadow: 0 0 0 3px rgba(47, 74, 46, 0.12) !important;
}

/* Shared icon placement */
#contact .myContactForm .wpforms-field::before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 16px;
	top: 25px;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px 18px;
	pointer-events: none;
}

/* Name icon — WPForms field 1 */
#contact .myContactForm [data-field-id="1"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f4a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}

/* Email icon — WPForms field 2 */
#contact .myContactForm [data-field-id="2"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f4a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m22 6-10 7L2 6'/%3E%3C/svg%3E");
}

/* Phone icon — WPForms field 4 */
#contact .myContactForm [data-field-id="4"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f4a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.34 1.79.65 2.65a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.43-1.43a2 2 0 0 1 2.11-.45c.86.31 1.75.53 2.65.65A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
}

/* Message icon — WPForms field 3 */
#contact .myContactForm [data-field-id="3"]::before {
	top: 15px;
	transform: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f4a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}

/* Submit area */
#contact .myContactForm .wpforms-submit-container {
	margin: 0 !important;
	padding: 0 !important;
}

/* Submit button */
#contact .myContactForm button[type="submit"] {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100% !important;
	min-height: 50px;
	margin: 0 !important;
	padding: 15px 20px !important;
	border: 0 !important;
	border-radius: 8px !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	color: #fff !important;
	background: var(--wcp-green, #2f4a2e) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

/* Calendar icon inside button */
#contact .myContactForm button[type="submit"]::before {
	content: "";
	display: block;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Button interactions */
#contact .myContactForm button[type="submit"]:hover {
	background: var(--wcp-green-dark, #203820) !important;
}

#contact .myContactForm button[type="submit"]:focus-visible {
	outline: 2px solid var(--wcp-green, #2f4a2e) !important;
	outline-offset: 3px;
}

/* WPForms validation messages */
#contact .myContactForm label.wpforms-error,
#contact .myContactForm em.wpforms-error {
	display: block;
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 5px 0 0 !important;
	color: #b42318 !important;
	font-size: 12px !important;
	clip: auto !important;
	overflow: visible !important;
	white-space: normal !important;
}

/* AJAX loading spinner */
#contact .myContactForm .wpforms-submit-spinner {
	margin: 8px auto 0 !important;
}
form .elementor-widget-wpforms{
    --wpforms-background-url: unset !important;
}
/* =========================================================
   14. Tablet (768px – 1199px)
   ========================================================= */

@media (min-width: 768px) and (max-width: 1199px) {

	.wcp-header .elementor-container {
		flex-wrap: wrap;
		row-gap: 20px;
		padding: 16px 24px;
	}

	.wcp-header .elementor-container > .elementor-column:nth-child(2) {
		order: 3;
		flex-basis: 100%;
		padding-top: 4px;
		border-top: 1px solid var(--wcp-border);
	}

	.wcp-header ul.tahefobu-nav-menu {
		gap: 20px;
	}

	.wcp-hero__trust-row .elementor-container {
		flex-wrap: wrap;
		row-gap: 12px;
	}

	.wcp-service-grid > .elementor-container {
		grid-template-columns: repeat(2, 1fr);
		padding: 0 24px;
	}

	.wcp-what-we-do .elementor-container,
	.wcp-what-we-do__intro {
		padding-left: 24px;
		padding-right: 24px;
	}

	.wcp-workshop > .elementor-container {
		padding: 0 24px;
		column-gap: 32px;
	}

	.wcp-workshop__media {
		width: 60% !important;
	}

	.wcp-workshop__image img {
		height: 320px;
	}

	.wcp-feature-services .elementor-container {
		padding: 0 24px;
	}

	.wcp-feature-services__header .elementor-container {
		flex-wrap: wrap;
		row-gap: 16px;
	}

	.wcp-feature-services__grid > .elementor-container {
		grid-template-columns: repeat(2, 1fr);
	}

	.wcp-powerflow-exhausts.wcp-feature-services__header {
		padding-top: 40px;
	}

	.wcp-powerflow-exhausts.wcp-feature-services__grid {
		padding-bottom: 40px;
	}

	.wcp-reviews .elementor-container {
		padding: 0 24px;
	}

	.wcp-reviews__summary > .elementor-container {
		flex-wrap: wrap;
		row-gap: 10px;
	}

	.wcp-reviews__summary .elementor-column:not(:last-child)::after {
		display: none;
	}

	.wcp-reviews__grid > .elementor-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wcp-contact > .elementor-container {
		flex-wrap: wrap;
	}

	.wcp-contact__form-column,
	.wcp-contact__location-column {
		width: 100% !important;
	}

	.wcp-contact__location-column {
		margin-top: 32px;
	}

	.wcp-contact__benefits > .elementor-container {
		padding: 12px !important;
	}

	.wcp-footer .elementor-container {
		padding: 0 24px;
	}

	.wcp-footer__main > .elementor-container {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 36px;
	}

	.wcp-footer__column,
	.wcp-footer__main .elementor-column {
		width: 100% !important;
	}

	.wcp-footer__socials .elementor-container {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
	}

	.wcp-footer__column::before {
		display: none;
	}

	.wcp-footer__legal .elementor-container {
		padding: 0 24px;
	}

}

/* =========================================================
   15. Mobile (below 768px)
   ========================================================= */

@media (max-width: 767px) {

	.wcp-header .elementor-container {
		flex-wrap: wrap;
		row-gap: 12px;
		padding: 0 16px;
	}

.wcp-header .elementor-container > .elementor-column:nth-child(2) {
        order: 3;
        flex-basis: 10%;
    }
#mainHeader .tahefobu-mobile-toggle-wrap {
    text-align: right;
}
.wcp-header .elementor-container > .elementor-column:nth-child(3) {
    display: none;
}
	.wcp-header ul.tahefobu-nav-menu {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 16px;
	}

	.wcp-hero__heading h1,
	.wcp-hero__heading .elementor-widget-container {
		font-size: 32px;
        color: #fff;
	}
    #home .elementor-widget-text-editor{
        color: #fff;
    }
	.wcp-hero__trust-row .elementor-container {
		flex-wrap: wrap;
		row-gap: 12px;
	}

	.wcp-service-strip .elementor-container {
		flex-wrap: wrap;
	}

	.wcp-service-strip .elementor-column {
		width: 50% !important;
		border-right: none !important;
		margin-bottom: 16px;
	}

	.wcp-what-we-do .elementor-heading-title {
		font-size: 30px;
	}

	.wcp-what-we-do .elementor-container,
	.wcp-what-we-do__intro {
		padding-left: 16px;
		padding-right: 16px;
	}

	.wcp-service-grid > .elementor-container {
		grid-template-columns: 1fr;
		padding: 0 16px;
		gap: 16px;
	}

	.wcp-service-card .elementor-widget-wrap {
		padding: 20px;
	}

	.wcp-workshop {
		padding: 40px 0;
	}

	.wcp-workshop > .elementor-container {
		flex-wrap: wrap;
		padding: 0 16px;
	}

	.wcp-workshop__content,
	.wcp-workshop__media {
		width: 100% !important;
	}

	.wcp-workshop__content {
		order: 1;
		margin-bottom: 28px;
	}

	.wcp-workshop__media {
		order: 2;
	}

	.wcp-workshop__image img {
		height: 260px;
	}

	.wcp-feature-services .elementor-container {
		padding: 0 16px;
	}

	.wcp-feature-services__header .elementor-container {
		flex-wrap: wrap;
		row-gap: 14px;
	}

	.wcp-feature-services__cta.elementor-column {
		width: 100% !important;
	}

	.wcp-feature-services__cta .elementor-button {
		width: 100%;
		justify-content: center;
	}

	.wcp-feature-services__grid > .elementor-container {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.wcp-feature-card__media {
		height: 180px;
	}

	.wcp-feature-card__image img {
		height: 180px;
	}

	.wcp-powerflow-exhausts.wcp-feature-services__header {
		padding-top: 32px;
	}

	.wcp-powerflow-exhausts.wcp-feature-services__grid {
		padding-bottom: 32px;
	}

	.wcp-reviews .elementor-container {
		padding: 0 16px;
	}

	.wcp-reviews__title .elementor-heading-title {
		font-size: 28px;
	}

	.wcp-reviews__summary {
		border-radius: 20px;
		padding: 18px 20px !important;
	}

	.wcp-reviews__summary > .elementor-container {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 12px;
	}

	.wcp-reviews__summary .elementor-column:not(:last-child)::after {
		display: none;
	}

	.wcp-reviews__grid > .elementor-container {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.wcp-contact {
		padding: 32px 0;
	}

	.wcp-contact > .elementor-container {
		flex-wrap: wrap;
		padding: 0 16px;
	}

	.wcp-contact__form-column,
	.wcp-contact__location-column {
		width: 100% !important;
	}

	.wcp-contact__location-column {
		margin-top: 28px;
	}

	.wcp-contact__direct .elementor-container {
		flex-wrap: wrap;
		row-gap: 14px;
	}

	.wcp-contact__benefits > .elementor-container {
		grid-template-columns: 1fr;
		padding: 12px !important;
	}

	.wcp-footer .elementor-container {
		padding: 0 10px;
	}

	.wcp-footer__main {
		padding: 40px 0 32px;
	}

	.wcp-footer__main > .elementor-container {
		display: flex;
		flex-direction: column;
		row-gap: 36px;
	}

	.wcp-footer__column,
	.wcp-footer__main .elementor-column {
		width: 100% !important;
	}

	.wcp-footer__column::before {
		display: none;
	}

	.wcp-footer__column:not(:first-child) {
		padding-top: 28px;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}

	.wcp-footer__logo img {
		width: 210px;
	}

	.wcp-footer__socials .elementor-container {
		flex-wrap: nowrap;
	}

	.wcp-footer__cta .elementor-button {
		padding: 15px 16px;
	}

	.wcp-footer__legal {
		padding: 20px 0;
	}

	.wcp-footer__legal .elementor-container {
		flex-direction: column;
		gap: 10px;
		text-align: center;
		padding: 0 20px;
	}
   .wcp-hero__card {
        max-width: calc(100% - 20px);
        right: 10px;
        bottom: -125px;
        left: auto !important;
        margin: 0;
   }
   .wcp-contact__direct .elementor-container {
    justify-content: center;
	}
	    .wcp-what-we-do .elementor-container, .wcp-what-we-do__intro {
        padding-left: 8px;
        padding-right: 8px;
    }
	    .wcp-service-grid > .elementor-container,
		.wcp-workshop > .elementor-container,
		.wcp-feature-services .elementor-container,
		.wcp-feature-services > .elementor-container,
		.wcp-reviews .elementor-container,
		.wcp-contact > .elementor-container {
        padding: 0px 5px;
    }
	.wcp-feature-services .elementor-inner-section .elementor-container{
		padding: 0px 0px;
	}
	#repairs .sandrepairCls img, #exhaustsR2 .sandrepairCls img {
    height: auto;
	}
	#contact .wcp-contact__address.elementor-section-boxed{
		    margin: 0 10px;
	}
	#contact  .elementor-widget-google_maps{
		    padding: 0 10px;
	}
    /* Mobile submenu arrow */
    .tahefobu-mobile-nav-menu .menu-item-has-children > a {
    position: relative;
    }

    .tahefobu-mobile-nav-menu .menu-item-has-children > a::after {
    content: "" !important;
    font-family: inherit !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    margin: 0 !important;
    border: 0 !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: translateY(-70%) rotate(45deg) !important;
    }

    /* Up arrow when submenu is open */
    .tahefobu-mobile-nav-menu
    .menu-item-has-children.tahefobu-mobile-sub-open > a::after {
    transform: translateY(-25%) rotate(225deg) !important;
    }
    #home {
        padding-bottom: 145px;
    }
    #homeR1RationSec p,#homeR1RationSec span{
        color: #fff !important;
    }
    #repairs.wcp-feature-services__grid > .elementor-container {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    	#contact .myContactForm textarea {
		min-height: 120px !important;
	}

	#contact .myContactForm button[type="submit"] {
		min-height: 50px;
	}
}
