/* End custom CSS */

.elementor-955 .elementor-element.elementor-element-87ced4e {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-955 .elementor-element.elementor-element-dc8cf90 {
	text-align: center;
}

.elementor-955 .elementor-element.elementor-element-beacf69 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-955 .elementor-element.elementor-element-8d2402a {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
}

.elementor-955 .elementor-element.elementor-element-09db7d0 {
	text-align: center;
}

.elementor-955 .elementor-element.elementor-element-d9d103d {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-955 .elementor-element.elementor-element-5726c7d {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--gap: 12px 12px;
	--row-gap: 12px;
	--column-gap: 12px;
	--margin-top: 32px;
	--margin-bottom: 32px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 32px;
	--padding-bottom: 32px;
	--padding-left: 32px;
	--padding-right: 32px;
}

.elementor-955 .elementor-element.elementor-element-091ece4 {
	--display: flex;
}

.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta .elementor-cta__bg, .elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta .elementor-cta__bg-overlay {
	transition-duration: 1500ms;
}

.elementor-955 .elementor-element.elementor-element-ea0e938 > .elementor-widget-container {
	border-radius: 6px 6px 6px 6px;
	box-shadow: 0px 0px 24px -8px rgba(0, 0, 0, .5);
}

.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__content {
	text-align: start;
	padding: 32px 32px 32px 32px;
	background-color: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__bg-wrapper {
	min-width: 280px;
}

.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__title {
	font-size: 2.2em;
}

.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta:hover .elementor-cta__bg-overlay {
	background-color: var(--e-global-color-dbe4fd8);
}

.elementor-955 .elementor-element.elementor-element-36144da {
	--display: flex;
}

.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta .elementor-cta__bg, .elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta .elementor-cta__bg-overlay {
	transition-duration: 1500ms;
}

.elementor-955 .elementor-element.elementor-element-31e6a9d > .elementor-widget-container {
	border-radius: 6px 6px 6px 6px;
	box-shadow: 0px 0px 24px -8px rgba(0, 0, 0, .5);
}

.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__content {
	text-align: start;
	padding: 32px 32px 32px 32px;
	background-color: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__bg-wrapper {
	min-width: 280px;
}

.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__title {
	font-size: 2.2em;
}

.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta:hover .elementor-cta__bg-overlay {
	background-color: var(--e-global-color-dbe4fd8);
}

.elementor-955 .elementor-element.elementor-element-251f73e {
	--e-n-carousel-swiper-slides-to-display: 1;
	--e-n-carousel-swiper-slides-gap: 10px;
	--e-n-carousel-slide-height: auto;
	--e-n-carousel-slide-container-height: 100%;
	--e-n-carousel-arrow-prev-left-align: 0%;
	--e-n-carousel-arrow-prev-translate-x: 0px;
	--e-n-carousel-arrow-prev-left-position: 0px;
	--e-n-carousel-arrow-prev-top-align: 50%;
	--e-n-carousel-arrow-prev-translate-y: -50%;
	--e-n-carousel-arrow-prev-top-position: 0px;
	--e-n-carousel-arrow-next-right-align: 0%;
	--e-n-carousel-arrow-next-translate-x: 0%;
	--e-n-carousel-arrow-next-right-position: 0px;
	--e-n-carousel-arrow-next-top-align: 50%;
	--e-n-carousel-arrow-next-translate-y: -50%;
	--e-n-carousel-arrow-next-top-position: 0px;
	--e-n-carousel-arrow-normal-color: var(--e-global-color-secondary);
	--e-n-carousel-arrow-hover-color: var(--e-global-color-eae9abe);
}

:where( .elementor-955 .elementor-element.elementor-element-251f73e .swiper-slide ) > .e-con {
	--padding-top: 32px;
	--padding-right: 32px;
	--padding-bottom: 32px;
	--padding-left: 32px;
}

:where( [data-core-v316-plus="true"] .elementor-element.elementor-widget-n-carousel .swiper-slide ) > .e-con {
	--padding-block-start: 32px;
	--padding-inline-end: 32px;
	--padding-block-end: 32px;
	--padding-inline-start: 32px;
}

.elementor-955 .elementor-element.elementor-element-d661aba {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 12px 12px;
	--row-gap: 12px;
	--column-gap: 12px;
	--flex-wrap: nowrap;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-955 .elementor-element.elementor-element-a87d329 .elementor-button {
	background-color: var(--e-global-color-4c91bb79);
	fill: var(--e-global-color-primary);
	color: var(--e-global-color-primary);
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: var(--e-global-color-primary);
}

.elementor-955 .elementor-element.elementor-element-a87d329 .elementor-button:hover, .elementor-955 .elementor-element.elementor-element-a87d329 .elementor-button:focus {
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-16760eb1);
	border-color: var(--e-global-color-accent);
}

.elementor-955 .elementor-element.elementor-element-a87d329 .elementor-button:hover svg, .elementor-955 .elementor-element.elementor-element-a87d329 .elementor-button:focus svg {
	fill: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-d30c495 .elementor-button {
	background-color: var(--e-global-color-primary);
	fill: var(--e-global-color-387bcc87);
	color: var(--e-global-color-387bcc87);
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: var(--e-global-color-primary);
}

.elementor-955 .elementor-element.elementor-element-d30c495 .elementor-button:hover, .elementor-955 .elementor-element.elementor-element-d30c495 .elementor-button:focus {
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-16760eb1);
	border-color: var(--e-global-color-accent);
}

.elementor-955 .elementor-element.elementor-element-d30c495 .elementor-button:hover svg, .elementor-955 .elementor-element.elementor-element-d30c495 .elementor-button:focus svg {
	fill: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-99f9d72 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 32px;
	--padding-bottom: 32px;
	--padding-left: 32px;
	--padding-right: 32px;
}

.elementor-955 .elementor-element.elementor-element-99f9d72:not(.elementor-motion-effects-element-type-background), .elementor-955 .elementor-element.elementor-element-99f9d72 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-bfcd575);
}

.elementor-955 .elementor-element.elementor-element-327b1eb {
	text-align: center;
}

.elementor-955 .elementor-element.elementor-element-e3915ec {
	--image-border-color: var(--e-global-color-16760eb1);
	--image-border-width: 4px;
	--image-transition-duration: 800ms;
	--content-text-align: center;
	--content-padding: 20px;
	--content-transition-duration: 800ms;
	--content-transition-delay: 800ms;
}

.elementor-955 .elementor-element.elementor-element-40c820a {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--align-items: center;
	--overlay-opacity: .5;
	--padding-top: 124px;
	--padding-bottom: 124px;
	--padding-left: 48px;
	--padding-right: 48px;
}

.elementor-955 .elementor-element.elementor-element-40c820a:not(.elementor-motion-effects-element-type-background), .elementor-955 .elementor-element.elementor-element-40c820a > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-text);
	background-image: url("https://cdn-bfilc.nitrocdn.com/dIyBRzaFoOiiXkKmNsnQOoCUAwfVJzeC/assets/images/optimized/rev-f6c543a/brownbrosroofing.net/wp-content/uploads/2024/10/7-Greenough-Ave.jpeg");
	background-position: center center;
	background-size: cover;
}

.elementor-955 .elementor-element.elementor-element-40c820a:not(.elementor-motion-effects-element-type-background).nitro-lazy, .elementor-955 .elementor-element.elementor-element-40c820a > .elementor-motion-effects-container > .elementor-motion-effects-layer.nitro-lazy {
	background-image: none !important;
}

.elementor-955 .elementor-element.elementor-element-40c820a::before, .elementor-955 .elementor-element.elementor-element-40c820a > .elementor-background-video-container::before, .elementor-955 .elementor-element.elementor-element-40c820a > .e-con-inner > .elementor-background-video-container::before, .elementor-955 .elementor-element.elementor-element-40c820a > .elementor-background-slideshow::before, .elementor-955 .elementor-element.elementor-element-40c820a > .e-con-inner > .elementor-background-slideshow::before, .elementor-955 .elementor-element.elementor-element-40c820a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	background-color: var(--e-global-color-text);
	--background-overlay: "";
}

.elementor-955 .elementor-element.elementor-element-5790da4 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-955 .elementor-element.elementor-element-9415030 img {
	border-style: solid;
	border-width: 4px 4px 4px 4px;
	border-color: var(--e-global-color-16760eb1);
	border-radius: 333px 333px 333px 333px;
	box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, .5);
}

.elementor-955 .elementor-element.elementor-element-31af2de {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-955 .elementor-element.elementor-element-9e33f27 .elementor-heading-title {
	color: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-6430339 {
	color: var(--e-global-color-16760eb1);
}

.elementor-955 .elementor-element.elementor-element-7896b10 .elementor-button {
	background-color: var(--e-global-color-primary);
	fill: var(--e-global-color-387bcc87);
	color: var(--e-global-color-387bcc87);
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: var(--e-global-color-primary);
}

.elementor-955 .elementor-element.elementor-element-7896b10 .elementor-button:hover, .elementor-955 .elementor-element.elementor-element-7896b10 .elementor-button:focus {
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-16760eb1);
	border-color: var(--e-global-color-accent);
}

.elementor-955 .elementor-element.elementor-element-7896b10 .elementor-button:hover svg, .elementor-955 .elementor-element.elementor-element-7896b10 .elementor-button:focus svg {
	fill: var(--e-global-color-16760eb1);
}

@media (min-width:768px) {
	.elementor-955 .elementor-element.elementor-element-8d2402a {
		--width: 50%;
	}
	
	.elementor-955 .elementor-element.elementor-element-d9d103d {
		--width: 50%;
	}
	
	.elementor-955 .elementor-element.elementor-element-5790da4 {
		--width: 25%;
	}
	
	.elementor-955 .elementor-element.elementor-element-31af2de {
		--width: 75%;
	}
}

@media (max-width:1024px) {
	.elementor-955 .elementor-element.elementor-element-091ece4 {
		--padding-top: 24px;
		--padding-bottom: 24px;
		--padding-left: 24px;
		--padding-right: 24px;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__content {
		min-height: 100px;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__bg-wrapper {
		min-width: 200px;
		min-height: 180px;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__content {
		min-height: 100px;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__bg-wrapper {
		min-width: 200px;
		min-height: 180px;
	}
	
	.elementor-955 .elementor-element.elementor-element-251f73e {
		--e-n-carousel-swiper-slides-to-display: 1;
	}
	
	.elementor-955 .elementor-element.elementor-element-40c820a {
		--padding-top: 48px;
		--padding-bottom: 48px;
		--padding-left: 48px;
		--padding-right: 48px;
	}
}

@media (max-width:767px) {
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__content {
		padding: 24px 24px 24px 24px;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__bg-wrapper {
		min-height: 150px;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__title {
		font-size: 1.8em;
		line-height: 1.2em;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__title:not(:last-child) {
		margin-bottom: 4px;
	}
	
	.elementor-955 .elementor-element.elementor-element-ea0e938 .elementor-cta__description {
		font-size: .9em;
		line-height: 1.6em;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__content {
		padding: 24px 24px 24px 24px;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__bg-wrapper {
		min-height: 150px;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__title {
		font-size: 1.8em;
		line-height: 1.2em;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__title:not(:last-child) {
		margin-bottom: 4px;
	}
	
	.elementor-955 .elementor-element.elementor-element-31e6a9d .elementor-cta__description {
		font-size: .9em;
		line-height: 1.6em;
	}
	
	.elementor-955 .elementor-element.elementor-element-251f73e {
		--e-n-carousel-swiper-slides-to-display: 1;
	}
	
	.elementor-955 .elementor-element.elementor-element-d661aba {
		--flex-direction: column;
		--container-widget-width: 100%;
		--container-widget-height: initial;
		--container-widget-flex-grow: 0;
		--container-widget-align-self: initial;
		--flex-wrap-mobile: wrap;
	}
	
	.elementor-955 .elementor-element.elementor-element-40c820a {
		--padding-top: 24px;
		--padding-bottom: 24px;
		--padding-left: 24px;
		--padding-right: 24px;
	}
}

/* Start custom CSS for gallery, class: .elementor-element-e3915ec */
.elementor-955 .elementor-element.elementor-element-e3915ec * {
	background-size: contain !important;
	background-repeat: no-repeat;
}

.elementor-955 .elementor-element.elementor-element-e3915ec .e-gallery-image {
	background-color: #fff;
}
