/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 17 2026 | 10:05:55 */
.bennartext{
	font-family: "Roboto Slab", Sans-serif !important;
    font-size: 62px;
    font-weight: 700;
    line-height: 1.2em;
}


#uc_responsive_testemonial_carousel_elementor_4312e7d .uc_stars {
    display: flex;
    position: absolute;
    right: 44px;
    margin: 0;
    top: 45px;
}

ul.hfe-nav-menu li.current-menu-item:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #C90907;
    border-radius: 50%;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 0;
}
ul.hfe-nav-menu li:last-child:before
 {
  display:none;
}
 .ue-flip-box__overlay {
    display: none;
}

.services .elementor-icon-box-icon {
	margin-bottom:-20px !important;
	z-index:999;
}

.services .elementor-icon-box-content { 
	padding: 25px 20px; 
	background-color: #FFFFFF; 
} 

.services .elementor-icon-box-wrapper:hover svg path { 
	fill: #002981;
}


@media only screen and (max-width: 1024px) {
	.elementor-138 .elementor-element.elementor-element-4312e7d .owl-carousel .owl-nav .owl-next, .elementor-138 .elementor-element.elementor-element-4312e7d .owl-carousel .owl-nav .owl-prev {
    top: 113px;
}

	.ue-flip-box__panel__element.ue-flip-box__icon {
    position: absolute;
    top: 193px;
}
	.ue-flip-box__panel__element.ue-flip-box__title br {
    display: none;
}
	ul.hfe-nav-menu li.current-menu-item:before{
		display:none;
	}
	.elementor-138 .elementor-element.elementor-element-4382e6d:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-4382e6d > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: var( --e-global-color-43bad47 );
    background-image: none;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 54% auto;
}
}

.rotating-rays::after {
  content: "";
  position: absolute;
  top: 0;
  left: -39px;
  width: 100%;
  height: 100%;
  background: url("https://thedripdoctor.com/wp-content/uploads/2025/10/Untitled-design-23.png") center/cover no-repeat;
  animation: spin 20s linear infinite;
  opacity: 1;
	
}
.rotating-rays{
    overflow:hidden;
	height:100%;
}
@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.rotating-rays > div {
    position: relative !important;
    z-index: 999;
	
}

.image-animate {
  opacity: 0;
  filter: blur(10px);
  transform: scale(0.95);
  animation: blurFocus 1s ease-out forwards;
  animation-delay: 0.3s;
}

@keyframes blurFocus {
  to {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}
.plumbing-box {
  position: relative;
  background-color: #c8102e;
  color: #fff;
  overflow: hidden;
  transition: background-color 0.5s ease, transform 0.5s ease;
  cursor: pointer;
}

.plumbing-box:hover {
  background-color: #00007F;
  
}

.plumbing-box .extra-content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #00007F;
  color: #fff;
 
  opacity: 0;
  transform: translateY(100%);
  transition: all 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.plumbing-box:hover .extra-content {
  opacity: 1;
	transform: translateY(0);
}

.plumbing-box h2,
.plumbing-box h3,
.plumbing-box h4 {
  color: #fff;
  transition: color 0.4s ease;
}

.plumbing-box .extra-content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.plumbing-box .extra-content li {
  color: #fff;
  margin-bottom: 6px;
  padding-left: 20px;
  position: relative;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease;
}

.plumbing-box:hover .extra-content li {
  opacity: 1;
  transform: translateY(0);
}

.plumbing-box .extra-content li::before {
  position: absolute;
  left: 0;
  color: #fff;
}
.plumbing-box .elementor-element.elementor-element-e10698a.elementor-absolute.elementor-widget.elementor-widget-image {
  position: absolute;
  top: 20px;
  left: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%; 
  color: #fff;
  transition: background-color 0.5s ease, color 0.5s ease;
}

.plumbing-box:hover .elementor-element.elementor-absolute.elementor-widget.elementor-widget-image > div {
  background-color:#b5000f;
  color: #fff;
}
.plumbing-box:hover .elementor-1871 .elementor-element.elementor-element-390e62e:not(.elementor-motion-effects-element-type-background), .elementor-1871 .elementor-element.elementor-element-390e62e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #00007F;
}
.plumbing-box:hover .elementor-element.e-con-full.first-box.e-flex.e-con.e-child
{
    background-color: #00007F;
}


@media (max-width: 767px) {
 .dripdoctor-testimonial .owl-nav {
    bottom: -20px !important;
	  text-align: center!important; 
  }

.dripdoctor-testimonial .owl-nav .owl-prev,
   .owl-nav .owl-next {
    margin: 10px 5px 10px !important; 
	  position: unset!important; 
    display: inline-block!important; 
    
  }
}
.animate-list .elementor-icon-list-item {
  opacity: 0;
  transform: translateY(15px);
  animation: fadeInUp 0.6s forwards;
}

.animate-list .elementor-icon-list-item:nth-child(1) { animation-delay: 0.2s; }
.animate-list .elementor-icon-list-item:nth-child(2) { animation-delay: 0.4s; }
.animate-list .elementor-icon-list-item:nth-child(3) { animation-delay: 0.6s; }
.animate-list .elementor-icon-list-item:nth-child(4) { animation-delay: 0.8s; }
.animate-list .elementor-icon-list-item:nth-child(5) { animation-delay: 1.0s; }

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(15px); }
  to   { opacity: 1; transform: translateY(0); }
}

.elementor-nav-menu .elementor-sub-item,
.elementor-nav-menu .elementor-sub-menu {
    transition: none !important; 
    animation: none !important;   
    display: block !important;    
    opacity: 1 !important;       
}

.wpcf7-form-control.wpcf7-select option {
    color: #000 !important;
}

.wpcf7 form.sent .wpcf7-response-output {
    color: white !important;
	margin: 1em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid white;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffb900;
    COLOR: WHITE !important;
}


@media (min-width: 2400px) {
    .elementor-4312 .elementor-element.elementor-element-c2d3db9:not(.elementor-motion-effects-element-type-background), .elementor-4312 .elementor-element.elementor-element-c2d3db9 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-image: url(https://thedripdoctor.com/wp-content/uploads/2025/11/Drip-Doctor-car-image-1.webp);
        background-position: 300px -245px;
        background-repeat: no-repeat;
        background-size: auto;
    }
}


.section_1 {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}


/* TITLES */
.title-1 {
  font-size: 38px;
  font-weight: 600;
  font-family: "Roboto", sans-serif;
}

.title-2 {
  font-size: 34px;
  font-weight: 600;
  font-family: "Roboto", sans-serif;
}

.title-3 {
  font-size: 32px;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
}

.title-4 {
  font-size: 28px;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
}

.title-5 {
  font-size: 24px;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
}

/* TEXT */
.text-1 {
  font-size: 18px;
  font-weight: 400;
  font-family: "Roboto", sans-serif;
}

.text-2 {
  font-size: 14px;
  font-weight: 400;
  font-family: "Roboto", sans-serif;
}

.row {
  display: flex;
  gap: 20px;
}

.two-columns .column {
  width: 50%;
}

.three-columns .column {
  width: 33.333%;
}


.column input,
.column select,
.column textarea {
  width: 100%;
}

/* Normalize all CF7 fields height & alignment */
.wpcf7-form input,
.wpcf7-form select,
.wpcf7-form textarea {
  height: 48px;
 
  padding: 0 6px;
  box-sizing: border-box;
}
.wpcf7-form textarea {
  height: auto;
  line-height: normal;
  
}
.row {
  display: flex;
  align-items: center;
  gap: 20px;
}
.wpcf7-form input[type="date"]::-webkit-calendar-picker-indicator {
  filter: invert(1);
  cursor: pointer;
}
@media (max-width: 768px) {
  .row {
    flex-direction: column;
  }

  .column {
    width: 100% !important;
  }
}
/* car animation */


@media (min-width: 1440px) {
	.animation-car {
        background-position: center !important;
		
    }  
	}


@media (min-width: 1024px) and (max-width: 1366px) {
    .animation-car,
    .animation-car > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-size: min(1400px, 100%) auto !important;
        background-position: center center !important;
    }
}
.join-form input,
.join-form textarea,
.join-form select {
    background: white !important;        
    color: black !important;              
    border: none !important;             
    border-bottom: 1px solid #ccc !important; 
    border-radius: 5px;                   
    padding: 12px 10px !important;        
    font-size: 15px !important;           
    box-sizing: border-box !important;    
    outline: none !important;             
    width: 100% !important;               
       
}

/* Placeholder color */
.join-form ::placeholder {
    color: rgba(0, 0, 0, 0.6) !important; 
}
.join-form .row.two-columns {
  display: flex;
  gap: 30px;
 
}
.join-form input.submit-btn {
    background: linear-gradient(110deg, #C90907 0%, #001790 100%) !important;
	width: 30% !important;    
    color: #FFF !important;
    font-weight: 400 !important;
    padding: 12px 12px !important;       /* Natural width based on padding */
    font-family: 'Poppins', sans-serif !important;
    border: none !important;
    border-radius: 5px !important;       /* Matches input fields */
    cursor: pointer !important;
    transition: opacity .3s ease, transform .2s ease !important;
    font-size: 16px !important;
}

/* Hover effect */
.join-form input.submit-btn:hover {
    background: linear-gradient(110deg, #001790 0%, #C90907 100%) !important;
    color: white !important;
    transform: scale(1.03);             /* Slight pop effect on hover */
}

/*Header Contact style START*/

/* MAIN */
.call-banner {
	position: relative;
	display: flex;
	align-items: center;
}

/* OUTER WHITE RING */
.circle-outer {
	background: #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 999;
}

/* INNER RED RING */
.circle-inner {
	padding:10px;
	background: #d50000;
	border-radius: 50%;
	border: 4px solid #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
}


/* BLUE STRIP (BEHIND CIRCLE) */
.blue-strip {
	background: #0a2c84;
	color: #ffffff;
	padding: 10px 40px 10px 45px;
	font-size: 14px;
	font-weight: 600;
	clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%, 0 100%);
	width: max-content;
}

.main-class {
	clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%, 0 100%);
	margin-left: -30px;
}

/* RED STRIP */
.red-strip {
	background: #d50000;
	padding: 15px 100px 15px 40px;
	clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%, 0 100%);
}
@media (max-width: 1024px) {
    .red-strip {
        background: #d50000;
        padding: 4px 35px 9px 31px;
        clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%, 0 100%);
    }
	.phone-icon {
    width: 22px !important;
}
	.number {
    color: #ffffff;
    font-size: 14px !important;
    font-weight: 700;
    line-height: 1;
}
}

/* NUMBER */
.number {
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
}

.wp-contact-img{
	line-height: 0 !important;
    padding: 22px;
    border-radius: 100%;
    border: 1px solid #FFF;
}
        
/* MEDIA QUERY FOR 1366px SCREEN */
@media (min-width: 1366px) and (max-width: 1366px) {
    .red-strip {
        background: #d50000;
        padding: 6px 62px 15px 61px; /* Adjusted padding */
        clip-path: polygon(0 0, 75% 0, 100% 100%, 0% 100%, 0 100%);
    }

    .red-strip .number {
        color: #ffffff;
        font-size: 15px !important;  
        font-weight: 700;
        line-height: 1;
    }
}
/* Header Contact style END */

#header-emergency-btn:hover svg path {
    fill: #B5000F !important;
}

#header-emergency-btn .elementor-button-icon svg{
	width:24px !important;
}


.services-form .wpcf7-acceptance label {
    color: #FFF !important;
}

.services-form .wpcf7-acceptance label input{
	height: auto !important;
}

.services-form .wpcf7-acceptance .wpcf7-list-item-label a{
	color: #FFF !important;
	text-decoration: underline !important;
}
.services-form input[type=date], 
.services-form input[type=email], 
.services-form input[type=number], 
.services-form input[type=password], 
.services-form input[type=search], 
.services-form input[type=tel], 
.services-form input[type=text], 
.services-form input[type=url], 
.services-form select, 
.services-form textarea {
    border: none;
    border-bottom: 1px solid #000;  
    outline: none;
    background: #ffffff;  
    color: #00000080; 
    padding: 4px 14px;
    width: 100%;
    border-radius: 4px;
    font-family: 'Poppins', sans-serif;
}


.services-form input::placeholder,
.services-form textarea::placeholder {
    color: #00000080;  
    font-family: 'Poppins', sans-serif; 
    opacity: 1;  
}


.services-form [type=button], 
.services-form [type=submit], 
.services-form button {
    background-color: #b5000f;
    border: 1px solid #b5000f;
    border-radius: 3px;
    color: #ffffff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 400;
    text-align: center;
    transition: all .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
    width: 100%; 
    box-sizing: border-box; 
}


.services-form .row {
    gap: 6px;
    align-items: flex-start !important;
}
.services-form p {
	margin-block-end: 0.5rem;
}

.home-contact-form form.sent .wpcf7-response-output {
    color: green !important;
}

.wp-tdd-cta-section .elementor-widget-button:nth-of-type(2) a {
	background-color: #B5000F !important;
	color: #fff !important; 
	border-color:#B5000F;
}
.wp-tdd-cta-section 
.elementor-widget-button:nth-of-type(2) 
.elementor-button:hover {
    background-color: transparent !important;
    color: #fff !important;
    border-color: #B5000F !important;
}

@media (max-width: 768px) {
    .join-form .row.two-columns {
        display: flex;
        gap: 0px;
    }
}
@media (max-width: 480px) {
    .join-form .row.two-columns {
        display: flex;
        gap: 0px;
    }
}
