
.navigation-branding img,.site-logo.mobile-header-logo img {
height:60px!important
}

p a {
text-decoration:underline!important
}

/* GeneratePress Site CSS */
/* Drop shadows */
.drop-shadow {
transition:box-shadow .5s;
box-shadow:5px 5px 10px 0 rgba(0,0,0,0.07)
}

.drop-shadow:hover {
box-shadow:1px 1px 1px 1px rgba(0,0,0,0.03)
}

.drop-shadow-2 {
box-shadow:0 0 25px 0 rgba(0,0,0,0.1)
}

/* FAQ */
.faq .lightweight-accordion {
margin-bottom:.8em
}

.faq .lightweight-accordion details summary::marker {
content:"+ "
}

.faq .lightweight-accordion .lightweight-accordion-body p {
font-size:16px
}

/* Contact map */
.contact-map .gb-inside-container {
line-height:0
}

.main-navigation,.main-navigation ul ul {
background-color:white!important
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
background:none!important;
color:#585858!important;
text-transform:capitalize;
font-weight:700!important
}

.forminator-field {
text-align:-webkit-center
}

.getquote {
box-shadow:1px 1px 7px 0 rgba(0,0,0,0.1),0 0 2px 0 rgba(0,0,0,0.05)
}

.main-navigation .main-nav ul .coupons a {
color:#f02525!important
}

/* Yoast FAQ */
/* colours & borders */
.wp-block-yoast-faq-block {
border-top:1px solid #eee
}

.wp-block-yoast-faq-block .schema-faq-question {
border-bottom:1px solid #eee
}

.wp-block-yoast-faq-block .schema-faq-question:hover,.wp-block-yoast-faq-block .fcp-opened .schema-faq-question {
background-color:#fafafa
}

.wp-block-yoast-faq-block .schema-faq-answer,.wp-block-yoast-faq-block .fcp-opened .schema-faq-answer {
border-bottom:1px solid #eee
}

/* layout */
.wp-block-yoast-faq-block .schema-faq-question {
display:block;
padding:10px;
position:relative
}

.wp-block-yoast-faq-block.fcp-faq .schema-faq-question {
cursor:pointer
}

.wp-block-yoast-faq-block .schema-faq-answer {
margin:0;
padding:12px 10px
}

/* bullet before a question */
.wp-block-yoast-faq-block .schema-faq-question:before {
margin-top:-2px
}

.wp-block-yoast-faq-block .schema-faq-question,.wp-block-yoast-faq-block .schema-faq-answer {
padding-left:34px
}

.wp-block-yoast-faq-block .schema-faq-question:before {
content:'';
display:block;
border:2px solid #dedede;
border-width:0 2px 2px 0;
width:9px;
height:9px;
box-sizing:border-box;
position:absolute;
left:14px
}

.wp-block-yoast-faq-block.fcp-faq .schema-faq-question:before {
top:16px;
transform:rotate(-45deg);
transition:all .3s .3s ease
}

.wp-block-yoast-faq-block .schema-faq-question:before,.wp-block-yoast-faq-block.fcp-faq .fcp-opened .schema-faq-question:before {
top:14px;
transform:rotate(45deg)
}

/* transition */
.wp-block-yoast-faq-block.fcp-faq .schema-faq-answer {
max-height:0;
overflow:hidden;
border-bottom-width:0;
padding-top:0;
padding-bottom:0;
transition:padding-bottom .3s ease-in,max-height .4s ease-in,padding-top .1s .4s ease-out,border-bottom-width 0s .5s linear
}

.wp-block-yoast-faq-block .fcp-opened .schema-faq-answer {
max-height:9999px;
border-bottom-width:1px;
padding-top:12px;
padding-bottom:20px;
transition:padding-top .2s ease-in,max-height .3s .2s linear,padding-bottom .4s .2s ease
}

/* Yoast FAQ End*/
.phonem {
color:#c8102e!important;
text-decoration:underline!important
}

.bod-block-title-closer span {
font-size:40px!important
}

/* Booking button*/
.bod-block-popup-trigger.bod-btn {
display:inline-flex;
align-items:center;
justify-content:center;
letter-spacing:.02em;
text-align:center;
padding:10px 25px;
border-radius:.75rem;
border:2px solid;
background-color:var(--accent)!important;
color:var(--base-2)!important
}

.bod-block-popup-trigger.bod-btn:hover {
border-color:var(--accent-2)!important;
background-color:var(--base-2)!important;
color:var(--accent)!important
}

/* Booking form rounded style */
/** Input and textarea **/
.forminator-ui input,.forminator-ui textarea {
border-radius:.75rem!important
}

/** Submit button **/
.forminator-ui .forminator-button-submit {
margin-top:10px!important;
border-radius:.75rem!important
}

.ti-widget.ti-goog .ti-widget-container {
margin-bottom:0!important
}

.ti-widget.ti-goog .ti-widget-container {
margin-bottom:0!important
}

/** Submenu padding **/
#generate-slideout-menu.main-navigation .main-nav ul ul {
padding-left:7px!important
}

/** underline links **/
a:hover {
text-decoration:underline!important
}

/** fix cf7 on mobile **/
@media (max-width: 767px) {
.gb-container-2781e854 {
max-width:100%!important
}
}

/* woocommerce */
.woocommerce div.product .product_title {
margin-bottom:20px
}

.woocommerce-variation-add-to-cart {
margin-top:40px
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
font-weight:500;
font-size:30px;
color:#3f87f5
}

.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover {
-webkit-box-shadow:var(--wvs-selected-item-box-shadow,0 0 0 2px #3f87f5);
box-shadow:var(--wvs-selected-item-box-shadow,0 0 0 2px #3f87f5);
color:var(--wvs-selected-item-text-color,#3f87f5)
}

/** woocomerce **/
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address__link {
background:#000000!important
}

/** hide call button on calagary page **/
.page-id-4826 .call-now-button {
display:none!important
}

.cal-head {
position:sticky;
position:-webkit-sticky;
top:0;
z-index:9999
}

.my-sticky-element {
position:sticky;
top:0
}

.wpcf7 input[type="submit"] {
width:auto!important
}

/** woocomerce fix cart button **/
.add-to-cart-panel {
transform:translateY(-100%)!important
}

@media (max-width: 767px) {
.hide-mobile {
display:none!important
}
}

/* woocommerce sticky image */
@media (max-width: 1023.98px) {
.single-product div.images {
position:static!important;
top:auto!important;
transform:none!important
}
}

#product-5971 > div.woocommerce-product-gallery {
top:84px;
position:sticky;
will-change:transform
}

.postid-5971 .woocommerce-product-gallery .flex-control-thumbs {
display:none!important
}

.postid-5971 .show-sticky-add-to-cart {
display:none!important
}

.postid-5971 .wc-sticky-cart-panel {
display:none!important
}

.postid-5971 #tab-description > h2 {
display:none!important
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
display:none!important
}

.wc-block-components-product-metadata__description {
display:none!important
}


/* Wrapper for the floating cart link */
.gemini-floating-cart-wrapper {
position:fixed;
top:160px;
right:20px;
z-index:1000;
text-decoration:none;
transition:transform .4s ease-in-out,opacity .4s ease-in-out;
will-change:transform,opacity
}

/* This class will be added by JavaScript to hide the button */
.gemini-floating-cart-wrapper.gemini-cart-hidden {
transform:translateX(150px);
opacity:0;
pointer-events:none
}

/* The cart icon circle */
.gemini-floating-cart-icon {
position:relative;
background-color:#bf0000;
color:#ffffff;
width:60px;
height:60px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 4px 10px rgba(0,0,0,0.2);
transition:transform .2s ease-in-out,background-color .2s
}

/* The cart icon itself (now targeting the SVG) */
.gemini-floating-cart-icon svg {
width:28px;
height:28px;
fill:#ffffff
}

/* Hover effect: slight zoom and color change */
.gemini-floating-cart-wrapper:hover .gemini-floating-cart-icon {
transform:scale(1.1);
background-color:#000000
}

/* Cart count bubble */
.gemini-floating-cart-icon .gemini-cart-count {
position:absolute;
top:-5px;
right:-5px;
background-color:#d63638;
color:#ffffff;
font-size:12px;
font-weight:700;
line-height:1;
border-radius:50%;
padding:4px 8px;
min-width:20px;
text-align:center;
box-sizing:border-box;
border:2px solid #ffffff
}

/* --- START: Mobile Styles --- */
@media (max-width: 767px) {
.gemini-floating-cart-icon {
width:50px;
height:50px
}

.gemini-floating-cart-icon svg {
width:24px;
height:24px
}

/* Adjust the count bubble position and size for the new button size */
.gemini-floating-cart-icon .gemini-cart-count {
top:-2px;
right:-2px;
font-size:11px;
padding:3px 6px;
min-width:18px;
border-width:1px
}
}

/* --- END: Mobile Styles --- */
.wp-block-makeiteasy-popup .makeiteasy-popup-wrapper {
border-color:rgba(57,57,57,1)!important;
border-radius:.75rem!important;
border:1.8px solid!important;
text-align:center
}


body .serv-list .popmake-6294 {
	padding:1.5rem!important;
}

/* General styles for the main container. Adjust padding as needed for your layout. */
:not(.floater-btn,.has-medium-font-size,.site-footer .gb-button-text,.gb-button-7dea32e4,.gb-button-03388a5b,.gb-button-b353f58d,.mcb-btn):is(.gb-button,.popmake-6294) {
padding:1rem;
white-space: nowrap;
margin-bottom:1.5rem!important;
border-color:rgba(105,105,105,1)!important;
border-radius:.75rem!important;
border:1px solid #e5e7eb!important;
box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)!important;
transition:all .3s ease-in-out!important;
text-decoration:none!important
}

.pop-up-content-wrap {
	padding: 60px!important;}


@media (max-width: 767px) 


{
.pop-up-content-wrap {
	padding: 30px!important;}
	
		.serv-list .popmake-6294 {
	padding:1.5rem!important;
}
	
:not(.floater-btn,.has-medium-font-size,.site-footer .gb-button-text,.gb-button-7dea32e4,.gb-button-03388a5b,.gb-button-b353f58d,.mcb-btn):is(.gb-button,.popmake-6294) {
display:flex!important;
padding:1rem!important;
margin-right:10px!important;
margin-bottom:1rem!important;
white-space: normal;
transition: all 0.2s ease-in-out;
cursor: pointer
}
	
}

.pop-up-content-wrap:hover {
border-color: #CC0000;
border-color:rgba(185,28,28,0.5)!important;
box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1),0 8px 10px -6px rgb(0 0 0 / 0.1)!important;
transform:translateY(-0.25rem)!important;
cursor: pointer
}

:not(.floater-btn,.has-medium-font-size):is(.gb-button,.popmake-6294):hover {
border: 2.5px solid #fa3131!important;
transition: all 0.4s ease-in-out!important;
box-shadow:0 15px 20px -3px rgb(0 0 0 / 0.1),0 8px 10px -6px rgb(0 0 0 / 0.1)!important;
transform:translateY(-0.1rem)!important;
cursor: pointer
}

/* Icon styles */
.popmake-6294 .gb-icon {
color:#ffffff;
margin-right:1rem;
transition:color .3s ease-in-out
}

.popmake-6294 .gb-icon svg {
width:3rem;
height:3rem
}

.popmake-6294:hover .gb-icon {
color:#dc2626
}


/*Custom CSS for Forminator Contact Form Redesign*/
.gb-container-2781e854 {
background-color:#ffffff;
padding:2.5rem;
border-radius:.75rem;
box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1);
max-width:28rem;
width:100%;
margin:2rem auto
}

/* 2. Form Headline Styles */
#get-a-free-estimate:not(.gb-headline) {
text-align:center;
margin-bottom:.5rem!important;
font-size:1.875rem!important;
line-height:2.25rem!important;
font-weight:800!important;
color:#11182c!important;
letter-spacing:-.025em!important;
text-transform:uppercase!important
}

/* 4. Form Element Spacing */
#forminator-module-3821 .forminator-row {
margin-bottom:1.5rem
}

#forminator-module-3821 .forminator-row:last-child {
margin-bottom:0
}

/* 5. Input and Textarea styles */
#forminator-module-3821 .forminator-input,#forminator-module-3821 .forminator-textarea {
width:100%;
padding:.75rem 1rem;
border:1px solid #11182c!important;
border-radius:.5rem;
transition:border-color 0.2s,box-shadow .2s;
-webkit-appearance:none!important;
-moz-appearance:none!important;
appearance:none!important;
background-color:#fff!important;
color:#11182c!important;
cursor:pointer!important
}

#forminator-module-3821 .forminator-input::placeholder,#forminator-module-3821 .forminator-textarea::placeholder {
color:#9ca3af!important
}

#forminator-module-3821 .forminator-input:focus,#forminator-module-3821 .forminator-textarea:focus {
outline:none!important;
border-color:#ef4444!important;
box-shadow:0 0 0 2px #ef4444!important
}

#forminator-module-3821 .forminator-textarea {
resize:none!important
}

/* 6. "Is it an emergency?" Radio Buttons */
#radio-1 .forminator-label {
display:flex!important;
font-size:1rem!important;
font-weight:600;
color:#374151!important;
margin-bottom:.7rem
}

#radio-1 .forminator-field {
display: flex!important;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:1rem
}

/* Hide original radio button visuals */
#radio-1 .forminator-radio input[type="radio"],#radio-1 .forminator-radio .forminator-radio-bullet {
display:none
}

/* Reset Forminator label wrapper styles */
#radio-1 .forminator-radio {
padding:0;
margin:0;
border:none;
display:block
}

/* Style the actual text label as a button */
#radio-1 .forminator-radio .forminator-radio-label {
display:block!important;
width:100%;
padding:.75rem 1rem;
border-radius:.5rem;
border:2px solid #d1d5db;
text-align:center
}

/* Checked state for YES */
#radio-1 input[value="one"]:checked ~ .forminator-radio-label {
background-color:#ef4444;
border-color:#ef4444;
color:#ffffff;
box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)
}

/* Checked state for NO */
#radio-1 input[value="two"]:checked ~ .forminator-radio-label {
background-color:#22c55e;
border-color:#22c55e;
color:#ffffff;
box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)
}

/* 7. Submit Button */
#forminator-module-3821 .forminator-button-submit {
width:100%;
display:flex;
align-items:center;
justify-content:center;
background-color:#dc2626;
color:#ffffff;
font-weight:700;
padding:.75rem 1.5rem;
border:none;
border-radius:.5rem;
box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);
transition:all .3s ease-in-out;
cursor:pointer!important
}

#forminator-module-3821 .forminator-button-submit:hover {
background-color:#b91c1c!important;
box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1)!important;
transform:translateY(-2px)!important
}

#forminator-module-3821 .forminator-button-submit:focus {
outline:none!important;
box-shadow:0 0 0 4px #fca5a5!important
}

/* Update button text and add icon */
#forminator-module-3821 .forminator-button-submit {
gap:.5rem
}

#forminator-module-3821 .forminator-button-submit::before {
font-size:1rem!important
}

#forminator-module-3821 .forminator-button-submit::after {
content:'';
display:inline-block;
height:1.5rem;
width:1.5rem;
background-image:url('data:image/svg+xml,<svg width="512pt" height="512pt" version="1.1" fill="white" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="m320.26 217.29c2.3555-3 2.0547-7.293-0.69531-9.9375-2.7461-2.6445-7.0508-2.7734-9.957-0.30078l-133.12 113.25-70.297-27.188c-4.0977-1.5703-7.4375-4.6562-9.3242-8.6172-1.8867-3.9609-2.1797-8.5-0.81641-12.672s4.2812-7.6562 8.1445-9.7383l291.84-163.48v-0.003906c3.0742-1.6523 6.6445-2.1367 10.047-1.3555 3.3984 0.78125 6.4023 2.7734 8.4453 5.6055 2.0391 2.8281 2.9844 6.3047 2.6523 9.7812l-25.602 266.86h0.003906c-0.51953 5.5469-3.6289 10.527-8.3867 13.43-4.7578 2.9023-10.609 3.3906-15.781 1.3125l-85.555-33.125-53.707 50.328c-4.0547 3.7852-9.9688 4.7969-15.047 2.5703-5.0781-2.2266-8.3438-7.2656-8.3008-12.809v-39.527z"/></svg>');
background-size:contain;
background-repeat:no-repeat
}

/* 8. Trust Badge */
.gb-headline-2299786a {
margin-top:2rem!important;
display:flex!important;
align-items:center!important;
justify-content:center!important;
text-align:center!important;
font-size:.75rem!important;
color:#6b7280!important;
gap:.5rem!important
}

.gb-headline-2299786a .gb-icon {
color:#9ca3af;
width:1rem;
height:1rem;
flex-shrink:0
}

/* 9. Optional: Hide "Edit form" link */
.forminator-edit-module {
display:none!important
}



body.has-floating-popup {

  position: fixed;
  

  width: 100%;
  

  overflow: hidden;
}
