/* End custom CSS */

.elementor-31250 .elementor-element.elementor-element-61047a8 {
	--display: flex;
	--min-height: 400px;
	--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: flex-end;
	--overlay-opacity: .73;
	--padding-top: 0vw;
	--padding-bottom: 0vw;
	--padding-left: 5vw;
	--padding-right: 5vw;
}

.elementor-31250 .elementor-element.elementor-element-61047a8:not(.elementor-motion-effects-element-type-background), .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: url("https://www.bullfrogspas.com/nitropack_static/GFJIJgMbZvrVIHqxALvRvIWwzihRdcrF/assets/images/source/rev-96b6c72/www.bullfrogspas.com/wp-content/uploads/2024/06/Swimdek.png");
	background-position: 50% 27%;
	background-size: cover;
}

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

.elementor-31250 .elementor-element.elementor-element-61047a8::before, .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-background-video-container::before, .elementor-31250 .elementor-element.elementor-element-61047a8 > .e-con-inner > .elementor-background-video-container::before, .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-background-slideshow::before, .elementor-31250 .elementor-element.elementor-element-61047a8 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	background-color: transparent;
	--background-overlay: "";
	background-image: linear-gradient(90deg, #232324 0%, rgba(35, 35, 36, .35) 100%);
}

.elementor-31250 .elementor-element.elementor-element-2eb1880 > .elementor-widget-container {
	margin: 0px 0px 50px 0px;
}

.elementor-31250 .elementor-element.elementor-element-2eb1880 {
	text-align: start;
}

.elementor-31250 .elementor-element.elementor-element-2eb1880 .elementor-heading-title {
	font-size: var(--e-global-typography-30f68a8-font-size);
	font-weight: var(--e-global-typography-30f68a8-font-weight);
	text-transform: var(--e-global-typography-30f68a8-text-transform);
	line-height: var(--e-global-typography-30f68a8-line-height);
	letter-spacing: var(--e-global-typography-30f68a8-letter-spacing);
}

.elementor-31250 .elementor-element.elementor-element-2eb1880.elementor-widget-heading .elementor-heading-title, .elementor-31250 .elementor-element.elementor-element-2eb1880.elementor-widget-heading .elementor-heading-title.elementor-heading-title a {
	color: var(--e-global-color-623dbe5);
}

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

.elementor-31250 .elementor-element.elementor-element-deaeda5:not(.elementor-motion-effects-element-type-background), .elementor-31250 .elementor-element.elementor-element-deaeda5 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-4ac65a9);
}

.elementor-31250 .elementor-element.elementor-element-e03e0a9 {
	--display: flex;
	--min-height: 0px;
	--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;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-31250 .elementor-element.elementor-element-f83d5d8 img {
	width: 100%;
}

.elementor-31250 .elementor-element.elementor-element-0c80ba2 {
	--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;
	--gap: 15px 15px;
	--row-gap: 15px;
	--column-gap: 15px;
}

.elementor-31250 .elementor-element.elementor-element-047dc7e > .elementor-widget-container {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.elementor-31250 .elementor-element.elementor-element-047dc7e .elementor-heading-title {
	font-size: var(--e-global-typography-164da7e-font-size);
	font-weight: var(--e-global-typography-164da7e-font-weight);
	line-height: var(--e-global-typography-164da7e-line-height);
}

.elementor-31250 .elementor-element.elementor-element-d683d85 {
	font-size: 12px;
}

.elementor-31250 .elementor-element.elementor-element-8f3e9b0 {
	--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: 100px 100px;
	--row-gap: 100px;
	--column-gap: 100px;
}

.elementor-31250 .elementor-element.elementor-element-3ae77cf {
	--display: flex;
	--min-height: 0px;
	--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;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-31250 .elementor-element.elementor-element-501f75c img {
	width: 100%;
}

.elementor-31250 .elementor-element.elementor-element-a08ccb9 {
	--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;
	--gap: 15px 15px;
	--row-gap: 15px;
	--column-gap: 15px;
}

.elementor-31250 .elementor-element.elementor-element-0cf5eff > .elementor-widget-container {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.elementor-31250 .elementor-element.elementor-element-0cf5eff .elementor-heading-title {
	font-size: var(--e-global-typography-164da7e-font-size);
	font-weight: var(--e-global-typography-164da7e-font-weight);
	line-height: var(--e-global-typography-164da7e-line-height);
}

.elementor-31250 .elementor-element.elementor-element-0bab454 .elementor-icon-list-icon i {
	color: var(--e-global-color-primary);
	transition: color .3s;
}

.elementor-31250 .elementor-element.elementor-element-0bab454 .elementor-icon-list-icon svg {
	fill: var(--e-global-color-primary);
	transition: fill .3s;
}

.elementor-31250 .elementor-element.elementor-element-0bab454 {
	--e-icon-list-icon-size: 14px;
	--icon-vertical-offset: 0px;
}

.elementor-31250 .elementor-element.elementor-element-0bab454 .elementor-icon-list-text {
	transition: color .3s;
}

.elementor-31250 .elementor-element.elementor-element-23acd8a1 {
	--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: 80px 80px;
	--row-gap: 80px;
	--column-gap: 80px;
}

.elementor-31250 .elementor-element.elementor-element-3565978e {
	--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;
}

.elementor-31250 .elementor-element.elementor-element-bc4ba55 {
	--display: flex;
	--gap: 40px 40px;
	--row-gap: 40px;
	--column-gap: 40px;
}

.elementor-31250 .elementor-element.elementor-element-721227c {
	text-align: start;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title {
	border-width: 0px;
	background-color: var(--e-global-color-secondary);
	padding: 18px 15px 18px 15px;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-content {
	border-width: 0px;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-item:not(:last-child) {
	margin-block-end: 10px;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title, .elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-icon {
	color: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-icon svg {
	fill: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active a, .elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active .elementor-toggle-icon {
	color: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title {
	font-family: var(--e-global-typography-e9d61eb-font-family), Sans-serif;
	font-size: var(--e-global-typography-e9d61eb-font-size);
	font-weight: var(--e-global-typography-e9d61eb-font-weight);
	text-transform: var(--e-global-typography-e9d61eb-text-transform);
	letter-spacing: var(--e-global-typography-e9d61eb-letter-spacing);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title .elementor-toggle-icon i:before {
	color: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title .elementor-toggle-icon svg {
	fill: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active .elementor-toggle-icon i:before {
	color: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active .elementor-toggle-icon svg {
	fill: var(--e-global-color-623dbe5);
}

.elementor-31250 .elementor-element.elementor-element-5c1c32f9 {
	--display: flex;
}

body.elementor-page-31250 {
	--ang-classes-border: rgba(79, 122, 233, .58);
	--ang-classes-label: #406de1;
	--ang-css-border: rgba(211, 0, 0, .35);
}

@media (min-width:768px) {
	.elementor-31250 .elementor-element.elementor-element-e03e0a9 {
		--width: 50%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0c80ba2 {
		--width: 50%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-3ae77cf {
		--width: 50%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-a08ccb9 {
		--width: 50%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-bc4ba55 {
		--content-width: 900px;
	}
}

@media (max-width:1366px) {
	.elementor-31250 .elementor-element.elementor-element-2eb1880 .elementor-heading-title {
		font-size: var(--e-global-typography-30f68a8-font-size);
		line-height: var(--e-global-typography-30f68a8-line-height);
		letter-spacing: var(--e-global-typography-30f68a8-letter-spacing);
	}
	
	.elementor-31250 .elementor-element.elementor-element-deaeda5 {
		--gap: 60px 60px;
		--row-gap: 60px;
		--column-gap: 60px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-e03e0a9 {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0c80ba2 {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-047dc7e .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-8f3e9b0 {
		--gap: 60px 60px;
		--row-gap: 60px;
		--column-gap: 60px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-3ae77cf {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-a08ccb9 {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0cf5eff .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title {
		font-size: var(--e-global-typography-e9d61eb-font-size);
		letter-spacing: var(--e-global-typography-e9d61eb-letter-spacing);
	}
}

@media (min-width:2400px) {
	.elementor-31250 .elementor-element.elementor-element-2eb1880 .elementor-heading-title {
		font-size: var(--e-global-typography-30f68a8-font-size);
		line-height: var(--e-global-typography-30f68a8-line-height);
		letter-spacing: var(--e-global-typography-30f68a8-letter-spacing);
	}
	
	.elementor-31250 .elementor-element.elementor-element-047dc7e .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-0cf5eff .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title {
		font-size: var(--e-global-typography-e9d61eb-font-size);
		letter-spacing: var(--e-global-typography-e9d61eb-letter-spacing);
	}
}

@media (max-width:1200px) {
	.elementor-31250 .elementor-element.elementor-element-deaeda5 {
		--gap: 30px 30px;
		--row-gap: 30px;
		--column-gap: 30px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-8f3e9b0 {
		--gap: 30px 30px;
		--row-gap: 30px;
		--column-gap: 30px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-bc4ba55 {
		--gap: 30px 30px;
		--row-gap: 30px;
		--column-gap: 30px;
	}
}

@media (max-width:1024px) {
	.elementor-31250 .elementor-element.elementor-element-61047a8 {
		--min-height: 350px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-61047a8:not(.elementor-motion-effects-element-type-background), .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-position: 50% 71%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-2eb1880 .elementor-heading-title {
		font-size: var(--e-global-typography-30f68a8-font-size);
		line-height: var(--e-global-typography-30f68a8-line-height);
		letter-spacing: var(--e-global-typography-30f68a8-letter-spacing);
	}
	
	.elementor-31250 .elementor-element.elementor-element-f83d5d8 img {
		height: 300px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-047dc7e .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-501f75c img {
		height: 300px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0cf5eff .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-23acd8a1 {
		--gap: 40px 40px;
		--row-gap: 40px;
		--column-gap: 40px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title {
		font-size: var(--e-global-typography-e9d61eb-font-size);
		letter-spacing: var(--e-global-typography-e9d61eb-letter-spacing);
	}
}

@media (max-width:880px) {
	.elementor-31250 .elementor-element.elementor-element-61047a8 {
		--min-height: 250px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-61047a8:not(.elementor-motion-effects-element-type-background), .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-position: 50% 69%;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0c80ba2 {
		--gap: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-047dc7e > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-a08ccb9 {
		--gap: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0cf5eff > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-bc4ba55 {
		--gap: 20px 20px;
		--row-gap: 20px;
		--column-gap: 20px;
	}
}

@media (max-width:767px) {
	.elementor-31250 .elementor-element.elementor-element-61047a8:not(.elementor-motion-effects-element-type-background), .elementor-31250 .elementor-element.elementor-element-61047a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-position: center center;
		background-size: cover;
	}
	
	.elementor-31250 .elementor-element.elementor-element-61047a8 {
		--padding-top: 100px;
		--padding-bottom: 0px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-2eb1880 .elementor-heading-title {
		font-size: var(--e-global-typography-30f68a8-font-size);
		line-height: var(--e-global-typography-30f68a8-line-height);
		letter-spacing: var(--e-global-typography-30f68a8-letter-spacing);
	}
	
	.elementor-31250 .elementor-element.elementor-element-deaeda5 {
		--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: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0c80ba2 {
		--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-31250 .elementor-element.elementor-element-047dc7e .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-8f3e9b0 {
		--gap: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-0cf5eff .elementor-heading-title {
		font-size: var(--e-global-typography-164da7e-font-size);
		line-height: var(--e-global-typography-164da7e-line-height);
	}
	
	.elementor-31250 .elementor-element.elementor-element-bc4ba55 {
		--gap: 20px 20px;
		--row-gap: 20px;
		--column-gap: 20px;
	}
	
	.elementor-31250 .elementor-element.elementor-element-721227c {
		text-align: start;
	}
	
	.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-title {
		font-size: var(--e-global-typography-e9d61eb-font-size);
		letter-spacing: var(--e-global-typography-e9d61eb-letter-spacing);
	}
}

/* Start custom CSS for image, class: .elementor-element-f83d5d8 */
@media (max-width: 767px) {
	.elementor-31250 .elementor-element.elementor-element-f83d5d8 img {
		height: auto !important;
	}
}

.elementor-31250 .elementor-element.elementor-element-f83d5d8 img {
	object-fit: cover;
	aspect-ratio: 3/2;
}

/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-e4817cd */
.elementor-31250 .elementor-element.elementor-element-e4817cd p {
	margin: 0px;
}

/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-d683d85 */
.elementor-31250 .elementor-element.elementor-element-d683d85 p {
	margin: 0px;
}

/* End custom CSS */

/* Start custom CSS for image, class: .elementor-element-501f75c */
@media (max-width: 767px) {
	.elementor-31250 .elementor-element.elementor-element-501f75c img {
		height: auto !important;
	}
}

.elementor-31250 .elementor-element.elementor-element-501f75c img {
	object-fit: cover;
	aspect-ratio: 3/2;
}

/* End custom CSS */

/* Start custom CSS for toggle, class: .elementor-element-76cd973 */
.elementor-31250 .elementor-element.elementor-element-76cd973 a {
	text-decoration: none;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-item .elementor-tab-title:hover, .elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active {
	background: var(--e-global-color-primary) !important;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-toggle-item .elementor-tab-title, .elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title.elementor-active {
	background: var(--e-global-color-accent) !important;
	color: #fff !important;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 .elementor-tab-title {
	align-items: center;
	border-radius: 4px !important;
}

a.elementor-toggle-title:hover {
	color: white !important;
}

.elementor-31250 .elementor-element.elementor-element-76cd973 ul {
	padding-left: 20px;
}

/* End custom CSS */

/* Start custom CSS */
html, body {
	overflow-x: hidden;
}

.elementor-widget-formidable .frm_submit button.frm_button_submit.frm_final_submit {
	white-space: initial !important;
	min-height: 50px;
	height: auto !important;
}

h1 sup, h2 sup {
	font-size: 35% !important;
	top: -1.5em;
}

h3 sup, h4 sup, h5 sup {
	font-size: 55% !important;
	top: -.75em;
}
