.CTA {
     position: relative;
}

.CTA .b-frame {
     background: var(--teal);
     color: var(--white);
     border-radius: var(--border-radius);
     padding: 0 32rem;
     overflow: hidden;
}

.CTA .content {
     max-width: 500rem;
     padding: 32rem 0;
}

.CTA .b-img img {border-radius: 1000rem 0 0 1000rem;}

.CTA .b-img {
     margin-right: -173rem;
     padding-left: 50rem;
     position: relative;
     margin-top: -64rem;
     margin-bottom: -53rem;
}

.CTA .b-img::before {
     content: '';
     position: absolute;
     width: 600rem;
     height: 600rem;
     border: 1px dashed var(--white);
     border-radius: 760%;
     top: -8rem;
     left: 0;
     animation: rotateBorder 30s linear infinite; /* Adjust duration and timing function as needed */
}

.CTA .b-buttons {
     display: flex;
     gap: 16rem;
}

.CTA .b-button {
     margin-top: 16rem;
}

/* FORM */

.CTA[data-style="form"] .b-img::before {
     width: 800rem;
     height: 800rem;
     top: -15rem;
}

/* SMALL */ 

.CTA[data-style="small"] .b-frame {
     padding: 0 0 0 32rem;
}

.CTA[data-style="small"] .b-img img {
     border-radius: 500rem 0 0 0;
}

.CTA[data-style="small"] .content {
     max-width: none;
}

/* LARGE */

.CTA[data-style="large"] .b-img::before {
     width: 800rem;
     height: 800rem;
     top: -15rem;
}

/* TWO COLUMN */

.CTA[data-style="two_column"] .content {padding: 60rem 32rem;}

.CTA[data-style="two_column"] .b-img {
     margin-right: -50rem;
     margin-bottom: -65rem;
     padding-left: 48rem;
     position: relative;
}

.CTA[data-style="two_column"] .b-img::before {
     display: none;
}

.CTA[data-style="two_column"] .b-img img {
     border-radius: 0;
}

.CTA[data-style="two_column"][data-reverse] .b-img {
     margin-right: 0;
     padding-left: 0;
     margin-bottom: -65rem;
     margin-top: -50rem;
}

.CTA[data-style="two_column"] .content.alt-two {
     position: absolute;
     top: 0; 
}


.CTA .form {
     padding-top: 24rem;
     position: relative;
}

.CTA .form .gform_wrapper.gravity-theme .gfield input.large, .CTA .form .gform_wrapper.gravity-theme .gfield select.large {
	padding: 14.2rem 32rem;
	border-radius: 100rem 0 0 100rem;
	width: 82.5%;
	height: 50rem;
	line-height: 1;
}

.CTA .form .gform_wrapper.gravity-theme .gform_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_footer input, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer input {
	position: absolute;
	top: 30rem;
	right: 0;
	padding: 15rem 32rem;
	border-radius: 0 100rem 100rem 0;
	height: 50rem;
	line-height: 1;
	font-size: 16rem;
}

.CTA .gform_confirmation_message {
	font-size: 24rem;
	padding: 0 0 24rem;
	text-align: center;
	color: var(--orange);
}

.CTA .gform_wrapper.gravity-theme .gform_validation_errors {
	display: none;
}

@media screen and (min-width: 1451px) {
     .CTA .form .gform_wrapper.gravity-theme .gform_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_footer input, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer input {
		padding: 15rem 32rem;
		height: 50rem;
          top: 32rem;
	}
}

@media screen and (min-width: 961px) {
	.CTA[data-reverse] .b-columns {flex-direction: row-reverse;}
	.CTA[data-reverse] .image {/* margin: -149rem 6rem -122rem -137rem; */margin-top: -81rem;margin-left: -97rem;margin-bottom: -105rem;}
}


@media screen and (max-width: 960px) {
     .CTA .b-frame {padding: 40rem;}
     .CTA:not([data-style='tight'], [data-style="two_column"]) .b-frame {padding: 40rem 0 0 40rem;}
     .CTA[data-style='tight'] .b-frame {padding: 40rem 40rem 0;}
     .CTA .b-img {
          margin-top: 0;
          margin-right: 0;
          padding-left: 0;
          margin-left: -40rem;
          max-height: 300rem;
     }
     .CTA .b-img::before {display: none;}
     .CTA .b-img img {border-radius: 0;}
     .CTA[data-style="small"] .b-img img {border-radius: 0;}
     .CTA[data-style='tight'] img {border-radius: var(--border-radius);}
     .CTA .b-buttons {padding-top: 25rem;}
     .CTA .content {padding-right: 40rem;}

     .CTA .b-buttons {flex-flow: row wrap; }

     .CTA[data-style="two_column"] .b-img {margin-left: 0; margin-right: 0; padding-left: 0;}
     .CTA[data-style="two_column"] .content {padding: 0;}
     .CTA[data-style="two_column"] .image {display: none;}
     .CTA[data-style="two_column"] .content.alt-two {position: static;}
     .CTA[data-style="two_column"][data-reverse] .b-columns {flex-direction: column-reverse;}

     .CTA .form .gform_wrapper.gravity-theme .gfield input.large, .CTA .form .gform_wrapper.gravity-theme .gfield select.large {border-radius: 100rem; width: 100%;}

     .CTA .form .gform_wrapper.gravity-theme .gform_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_footer input, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer button, .CTA .form .gform_wrapper.gravity-theme .gform_page_footer input {padding: 10rem 20rem; position: static; border-radius: 100rem;}
}

@keyframes rotateBorder {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}