/* font svg names */
.st4{font-family:'sans-serif' !important; font-weight: 700;}
.st6{font-family:'sans-serif' !important; font-weight: 400;}
/*.st4{font-family:'FuturaPT-Demi','futura-pt-bold'; font-weight: 700;}
.st6{font-family:'FuturaPT-Book', 'futura-pt'; font-weight: 400;}*/
/* /font svg nams */

html, body {overflow-x: hidden;}
body > section {z-index: 1; position: relative;}
.ct-section-inner-wrap {width:100%}
*:not(.oxygen-builder-body *) {font-family: futura-pt, sans-serif;font-style: normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
.light-font, h1, h2, h3 {font-family: futura-pt, sans-serif;font-weight: 300;font-style: normal;}
.heavy-font {font-family: futura-pt, sans-serif;font-weight: 700; font-style: normal;}
.bold-font {font-family: futura-pt-bold, sans-serif;font-weight: 700;font-style: normal;}
.book-font {font-family: futura-pt, sans-serif;font-weight: 400;font-style: normal;}

footer .footer-bottom-line > a {color:#fff; font-weight:400; display:inline-block;margin:0 10px;}

@media (max-width: 1440px) {
	.ct-section-inner-wrap {
		padding-bottom: 50px;

    }
}
@media (max-width: 768px) {
	.ct-section-inner-wrap {
		padding-top: 50px;
	}
}

/* support */
.form-controls {overflow: hidden; width: 0; height: 0; position: absolute;}

a[class*='btn']{transition: all 0.1s linear;}
a[class*='btn']:hover {text-decoration: underline;}
p {margin: 0 0 35px 0;}
p strong {font-weight: 300;font-family: 'museo-sans';}
p:last-of-type {margin-bottom:0;}
p + a[class*='btn'], .column-text + a[class*='btn'], .column-block + a[class*='btn'] {margin-top:35px;}
.block-container {display:flex; align-items:center}

h1 {font-size: 65px;}
h2.light-font {margin-bottom:50px}
.column-text {columns: 2;column-gap: 50px;line-height:1.2em;}

@media(max-width:992px) {
	h2.light-font {line-height:1.2em;}
}
@media(max-width:768px) {
	h2.light-font {font-size:55px;}
}
@media(max-width:480px) {
	h2.light-font {font-size:45px;}
}

/* hero */
#top > div {padding:0}
/* /hero */
/* main nav */

/* buttons */
.button-row > [class*='-btn']:last-of-type {margin-right:0;}
.btn.down-arrow {padding-right:75px}
@media(max-width:480px) {
	.btn.down-arrow {padding-right:35px}
}
/* /buttons */


/* services line */
.services-line div,
.services-line a:not(.main-btn) {display:flex; font-size:33px;font-weight:100;color:#fff;position:relative;}
.services-line [class*='ring']{padding-left:60px;margin-right:30px; line-height:0; padding-top:25px; padding-bottom:25px;}
.services-line [class*='ring']:before{display:block;content:" ";width:50px;height:50px;border-radius:100%;position: absolute;top:50%;left:0;transform:translate(0%, -50%)}
.services-line .transform-ring:before {border:1px solid #F49438}
.services-line .perform-ring:before {border:1px solid #3198CC}
.services-line .grow-ring:before {border:1px solid #9AC43A}
.services-line .exit-ring:before {border:1px solid #BE0069}

/* columns */

.column-block .half-width {width: calc(50%); text-align:center}
.team-column-block .column {padding:0 70px}
@media(max-width:768px){
	.team-column-block .column {padding:0 25px}
}

/* form */
.form-line-text > p {color:#fff}
#form-top h2, .h2-title,
#form-top h2 span, .h2-title span
#form-top .form-intro-text p {text-align:center;}
#form-top h2,
#form-top h2 span,
#form-top .form-intro-text p {color:#fff;}
#form-top h2 span, .h2-title span {font-size: 35px;line-height:0.95em;display:block; width:100%; font-weight:700; position:relative; padding-bottom:25px;margin-bottom:25px;}
#form-top h2 span:after, .h2-title span:after {position:absolute; content:""; top:100%;left:50%; transform:translate(-50%, 0); width:85%;background:#95c122;height:2px; margin-bottom:25px;}
#form-top h2, #intro .h2-title, #intro .h2-title, #product-info .h2-title  {font-size: 125px;line-height:1em;font-weight: 100;}
.form-row .phone {width:100%}
@media(max-width:980px){
	#form-top h2 {font-size: 85px;}
}
@media(max-width:768px){
	#form-top h2 {font-size: 12vw;}
}
@media(max-width:480px){
	#form-top h2 {font-size: 12vw;}
}


/* intro */
#intro .h2-title {font-size: 85px;margin-bottom: 50px;}
.intro-text strong {font-weight: 700;}
@media(max-width:980px){
	#intro .h2-title {font-size: 60px;}
}
@media(max-width:768px){
}
@media(max-width:480px){
	#intro .h2-title {font-size: 12vw;}
}
/* /intro */

/* how it works */
#how-it-works .h2-title {font-size: 85px;margin-bottom: 50px;}
@media(max-width:980px){
	#how-it-works .h2-title {font-size: 60px;}
}
@media(max-width:768px){
}
@media(max-width:480px){
	#how-it-works .h2-title {font-size: 12vw;}
}
/* /how it works */
/* product info */
#product-info .h2-title {font-size: 85px;margin-bottom: 50px;}
.table .table-row:nth-of-type(even){background-color:rgba(0,0,0,0.025)}
.table .table-row:last-of-type{border-bottom:0}
.alert-box p {color:#fff}
#product-info p {margin-bottom:15px;}
#product-info p + ul {margin-top:-10px;}
@media(max-width:980px){
	#product-info .h2-title {font-size: 60px;}
}
@media(max-width:768px){
}
@media(max-width:480px){
	#product-info .h2-title {font-size: 12vw;}
}
/* /product info */
/* /form */

/*contact */

.wpcf7 .submitting a, .wpcf7 .submitting input[type=submit] {

    pointer-events: none;
    opacity: .7;
}
.wpcf7 .hidden-fields-container {display:none;}
/* /contact */

/* overflow section */
.overflow-section {min-height:100vh}
.overflow-section, .overflow-section > div.ct-section-inner-wrap {display:flex;align-items:stretch}
.overflow-section > div.ct-section-inner-wrap {height: auto}
/* responsive */
@media(max-width:1250px) {
	body .main-nav {display:none !important}
	body .services-line > [class*='ring'] {padding-left: 50px; margin-right: 25px; font-size:25px;}
	body .services-line > [class*='ring']:before {width: 35px; height: 35px;}
}
@media(max-width:768px){
	form p:first-of-type{text-align: center;}
	form .form-line-container {justify-content: center; position: relative;}
	form .form-line-container .wpcf7-spinner {position: absolute;right: 0;}
	.block-container.ct-section.overflow-image-container.break-overflow-at-768 > .ct-section-inner-wrap > div._50-percent-overflow-image {left: 50%;top: 0%;margin-top: 150px;width: 85%;padding-top: 85%;height: auto; transform:translate(-50%, 0)}
	.block-container.ct-section.overflow-image-container.break-overflow-at-768 > .ct-section-inner-wrap > div._50-percent-overflow-image-right {transform: scaleX(-1) translate(50%, 0);}
}
@media(max-width:650px) {
	body .services-line > [class*='ring'] {padding-left: 40px; margin-right: 25px; font-size:20px;padding-top:12.5px;padding-bottom:12.5px;}
	body .services-line > [class*='ring']:before {width: 25px; height: 25px;}

	/* overflow image containers */
	.block-container.ct-section.overflow-image-container {min-height:auto}
	.block-container.ct-section.overflow-image-container > .ct-section-inner-wrap {flex-direction: column;padding-top: calc(100% + (150px - 15%) + 50px);}
	.block-container.ct-section.overflow-image-container > .ct-section-inner-wrap > div:not(._50-percent-overflow-image) {width:100%}
	.block-container.ct-section.overflow-image-container > .ct-section-inner-wrap > div._50-percent-overflow-image {left: 50%;top: 0%;margin-top: 150px;width: 85%;padding-top: 85%;height: auto; transform:translate(-50%, 0)}
	.block-container.ct-section.overflow-image-container > .ct-section-inner-wrap > div._50-percent-overflow-image-right {transform: scaleX(-1) translate(50%, 0);}
	.quote-text, .quote-sign-off {text-align: center;}
	#quote .ct-div-block.about-content-column {width:100%}
}
@media(max-width:550px){
	form p:first-of-type{text-align: center;}
}
@media(max-width:480px){
	.team-column-block .column {padding:0px}
	.column-text {columns: 1;}
}

/* /responsive */


/* mob nav */
.mob-nav-toggle {position: relative;}
.mob-nav-toggle span {transform-origin: center;transition: all 0.2s linear;left:0; position:relative;}
.mob-nav-toggle.on span { position:absolute; transform: rotate(0deg) translate(0%, 0%); opacity:1;top:50%; left:0%; opacity: 0;}
.mob-nav-toggle.on span:first-of-type {transform: rotate(45deg) translate(0%, 0%); opacity:1;}
.mob-nav-toggle.on span:last-of-type {transform: rotate(-45deg) translate(0%, 0%); opacity:1;}
.mob-nav {display: none;}
.mob-nav-container {opacity: 0;transition: top 0.5s ease-in-out, opacity 0.5s linear ;display: flex;position: fixed;background: rgba(255,255,255,0.95);top:-100vh;left: 0;width: 100vw;height: 100vh;pointer-events: none;overflow: hidden;z-index: 999;justify-content: center;align-items: center; flex-direction: column;padding:0;box-shadow: 0 0 100px rgba(0,0,0,1);}
.mob-nav-scroll {z-index:0;display:flex; width:100%; height:100vh; position: relative;overflow: scroll;pointer-events: all;justify-content: center; flex-wrap: wrap;}
.mob-nav-container > .mob-nav-toggle {display:block; pointer-events:all; position:absolute; top: 45px;right: 20px;z-index: 10;}
.mob-nav-scroll > .header-nav:not(.ct-section):not(.oxy-easy-posts) {flex-direction: column; margin: 0;width:80%;height:auto; margin:auto}
.mob-nav-scroll > .header-nav > a.header-nav-btn {display:flex;font-size:4vw;margin: 2.5vw 0 2.5vw 0;}
.mob-nav-container.on {top:0;opacity: 1;}
.mob-nav-container .mob-nav-toggle {transition: all 0.2s ease-in-out 0.8s; opacity: 0;}
.mob-nav-container.on .mob-nav-toggle.on {transition: all 0.2s ease-in-out 0.8s; opacity: 1;}
.mob-nav-scroll .header-nav {padding:180px 0 250px 0}
.mob-nav-container .header-menu-item {flex-direction: column;}
.mob-nav-container .header-menu-item ul {display: block; position: relative;left: 0;top: 0;opacity: 1;transform: translate(0,0);box-shadow: none;background: none;padding: 0; margin: 0;width: auto;pointer-events:all; padding: 25px 0;border-top: 1px solid #231F20;border-bottom: 1px solid #231F20;}
.mob-nav-container .header-menu-item ul::after {display: none;}
.mob-nav-container .header-menu-item ul li {padding:0; width:100%}
.mob-nav-scroll > .header-nav .header-menu-item ul li a {padding:15px 0}
.footer-nav-container > a {flex-grow: unset;margin: 0 15px;}
.footer-bottom-content > .footer-nav-container > a {margin: 0 10px; font-size: 12px;}
@media(max-width:1440px){
    .header-contact-group a:last-of-type,
    .header-menu-item:last-of-type{margin-right:20px;}
    .header-menu-item a {font-size: 1.25vw;}
    .mob-nav-scroll > .header-nav .header-menu-item:last-of-type{margin-right:0px;width: auto;justify-content: center;}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 2.2vw;padding: 25px 0;}
}
@media(max-width:1300px) {
    .header-row .header-tag-line, .header-row .header-contact-group a {font-size: 1.1vw;}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 2.5vw;padding: 25px 0;}
}
@media(max-width:1200px) {
    .header-nav {display:none;}
    .mob-nav, .mob-nav-container .header-nav {display:flex}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 3vw;padding: 25px 0;}
    
}
@media(max-width:992px){
    .header-row .header-contact-group a {font-size: 1.5vw;}
    .footer-nav-container a {font-size: 16px;}
}
@media(max-width:768px){
    .mob-nav .header-btn {display:none;}
    .header-row .header-contact-group a {font-size: 2.2vw;}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 25px;line-height: 1.2em;}
    .footer-nav-container a {margin:0 10px; line-height: 1.6em; flex-grow: unset;}
}
@media(max-width:480px){
    .mob-nav-container > .mob-nav-toggle {top: 15px;}
	.mob-nav-scroll > .header-nav > a.header-nav-btn {font-size:calc((25 / 1440) * 1440px); text-wrap: balance;margin: 5vw 0 5vw 0;}
}
/* /mob nav */

/* cf7 styles */
.wpcf7 .wpcf7-form-control-wrap {width:100%}
.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	word-wrap: normal !important;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #00a0d2; /* Blue */
	background:#fff;
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #F49438; /* Yellow */
    background: #F49438; color: #fff;
}

.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	color: #dc3232; /* Red */
	font-size: 1em;
	font-weight: normal;
	display: block;
    text-align: left;
    padding-bottom: 25px;
}
input.wpcf7-not-valid, textarea.wpcf7-not-valid {
    border-color:#dc3232;

}
.use-floating-validation-tip .wpcf7-not-valid-tip {
	position: relative;
	top: -2ex;
	left: 1em;
	z-index: 100;
	border: 1px solid #dc3232;
	background: #fff;
	padding: .2em .8em;
	width: 24em;
    
}

.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-color: #23282d; /* Dark Gray 800 */
	opacity: 0.75;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	padding: 0;
	margin: 0 24px;
	position: relative;
}

form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: '';
	position: absolute;
	background-color: #fbfbfc; /* Light Gray 100 */
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
	.wpcf7-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.wpcf7 input[type="file"] {
	cursor: pointer;
}

.wpcf7 input[type="file"]:disabled {
	cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {direction: ltr;}
.form .form-line-container.last-line {flex-direction: row !important; align-items: center;}

/* Style for Diagrams */

.nutrient-content table {
	border-collapse: collapse;
	font-weight: 500;
	width: 100%;
}

.nutrient-content table tr {
	border-bottom-style: solid;
	border-width: 1px;
	border-color: rgba(93,103,123,0.4);
}

.nutrient-content table tr:last-child {
	border-bottom-style: none;
}

.nutrient-content table tr td:first-child {
	text-align: right;
	padding-right: 10px;
}

.nutrient-content table tr td:last-child {
	text-align: left;
	padding-left: 10px;
}

/* Hero Slider */

.hero-slider-container {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    gap: 30px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.hero-slider-track {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.hero-slider-left-icon, .hero-slider-right-icon {
    background-color: #95C11F;
    border-radius: 50px;
    color: white;
    font-size: 30px;
    width: 50px;
    height: 50px;
    padding: 10px;
    z-index: 1;
    aspect-ratio: 1/1;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.hero-slider-left-icon:hover, .hero-slider-right-icon:hover {
    transform: scale(1.2);
}

.hero-slider-track img {
    width: 0;
    height: auto;
    aspect-ratio: 1/1;
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.3s ease-in-out;
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
    border-style: solid;
    border-color: white;
    border-width: 0;
}

.hero-slider-track img.active {
    width: 60%;
    height: auto;
    aspect-ratio: 2/3;
    z-index: 1;
    box-shadow: 0 4px 10px rgba(93, 103, 123, 0.6);
    border-width: 5px;
}

.hero-slider-track img.preview {
    width: 30%;
    height: auto;
    aspect-ratio: 1/1;
    top: 15%;
    bottom: -15%;
    box-shadow: 0 2px 14px rgba(93, 103, 123, 0.4);
    border-width: 3px;
}

.hero-slider-track img.preview.before {
    left: 10%;
    right: -10%;
}

.hero-slider-track img.preview.after {
    left: -10%;
    right: 10%;
}

@media only screen and (max-width: 1440px) {
    .hero-slider-container {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media only screen and (max-width: 991px) {
    .hero-slider-container {
        top: -130%;
        left: 0;
        right: 0;
        bottom: unset;
        width: 60%;
        margin: 0 auto;
        height: 125%;
    }
}

@media only screen and (max-width: 767px) {
    .hero-slider-container {
        top: -60vw;
        height: 55vw;
        width: 90%;
    }
    .hero-slider-left-icon, .hero-slider-right-icon {
        font-size: 20px;
        width: 30px;
        height: 30px;
        padding: 5px;
    }
}

@media only screen and (max-width: 479px) {
    .hero-slider-container {
        top: -75vw;
        height: 60vw;
    }
}

/* /Hero Slider */

/* Benefits */

.benefit-tabs {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 20px
}

.benefit-tabs .benefit-tab {
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(93,103,123,.6);
    border-style: solid;
    border-width: 5px;
    border-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    width: 45%;
    cursor: pointer;
    color: #fff;
    background-color: #5b667a;
    transition: all .3s ease-in-out
}

.benefit-tabs .benefit-tab.active {
    background-color: #fff;
    color: #000
}

.benefit-tabs .benefit-tab h3 {
    padding: 20px;
    font-size: 30px;
    font-weight: 400;
}

.benefit-tabs .benefit-tab .benefit-tab-image {
    width: 100%;
    height: auto;
    aspect-ratio: 3/2;
    border-radius: 0 0 5px 5px;
    object-fit: cover;
}

@media only screen and (max-width: 1440px) {
    .benefit-tabs {
        flex-wrap:wrap
    }
}

@media only screen and (max-width: 768px) {
    .benefit-tabs .benefit-tab {
        width: 75%;
    }
}

@media only screen and (max-width: 480px) {
    .benefit-tabs .benefit-tab {
        width: 100%;
    }
}

.benefit-tabs .benefit-tab.active .benefit-tab-image {
    height: 0
}

.benefit-tabs .benefit-tab .benefit-content {
    height: 0;
    padding: 0 20px;
    margin: 0;
    overflow: hidden;
}

.benefit-tabs .benefit-tab.active .benefit-content {
    height: auto;
    padding: 20px;
    font-size: 24px;
    width: 80%;
    line-height: 1.2em;
}

.benefit-content-container .benefit-content {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    height: 0;
    transition: all .3s ease-in-out;
    overflow: hidden
}

.benefit-content-container .benefit-content.active {
    padding: 50px
}

/* /Benefits */

.lightbox {
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out 0.1s;
}

.lightbox.active {
    visibility: visible;
    opacity: 1;
}

.lightbox-content {
    font-size: 25px;
    padding: 0 20px;
}

@media only screen and (max-width: 480px) {
    .lightbox-content {
        font-size: 18px;
    }
}

.article-template-inner ul {
    margin-bottom: 35px;
}
.article-template-inner ul li {
    font-size: 27px;
}

.slider-quote.conversion-support-row.reverse {

    flex-direction: row-reverse;
}

.slider-quote.conversion-support-row {

    opacity: 0;
    position: absolute;
    visibility: hidden;
    transition: 0.3s all ease-in-out;
    transform: translateX(100px);
}

.slider-quote.conversion-support-row.active {

    opacity: 1;
    visibility: visible;
    position: initial;
    transform: translateX(0);
}

.slider-indicators {

    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 15px;
    padding: 5px;
}

.slider-indicators .indicator {

    width: 20px;
    aspect-ratio: 1/1;
    background-color: #5B667A;
    border-radius: 3px;
    border-color: white;
    border-width: 1px;
    border-style: solid;
    box-shadow: #5B667A 0 0 0 1px;
    filter: grayscale();
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}

.slider-indicators .indicator.active {

    filter: unset;
    opacity: 1;
}
.article-page-content div.cols {
    display: flex;
    flex-direction: row;
    width:100%;
    gap:35px;
}
.article-page-content div.cols > div {
    display:flex;
    flex-direction: column;
    width:50%;
}
.article-page-content div.cols > div tr > td:nth-of-type(2) {
    text-align: center;
}
.article-page-content ._2-col {
    columns: 2;
}
@media(max-width:600px){
    .article-page-content ._2-col {
        columns: 1;
    }
    .article-page-content div.cols {
        flex-direction: column;
        width:100%;
    }
    .article-page-content div.cols > div {
        width:100%;
    }
}
.article-page-content .table-wrapper {
    position: relative;
    width:calc(100% + 40px);
    overflow-x: scroll;
    margin-left: -20px;
    padding-left: 20px;
    padding-right: 20px;
}
.article-page-content .table-wrapper + .table-wrapper {
    margin-top:50px;
}
.article-page-content table {
    position: relative;
    width: 100%;
}
.article-page-content table thead {
    background-color: #5c667a;
    color: #fff;

}
.article-page-content table th {
    color: #fff;
    padding: 10px;
    font-size: clamp(1rem,0.875rem + 0.4167vw,1.25rem);
}
.article-page-content table tbody tr:nth-of-type(even){
    background: #eceeef;
}
.article-page-content table td {
    padding: 10px;
    font-size: clamp(1rem,0.875rem + 0.4167vw,1.25rem);
    line-height: 1.6em;
}
.article-page-content table tbody tr > td:nth-of-type(1){
    white-space: nowrap;
}
.article-page-content table tbody tr > td:nth-of-type(3),
.article-page-content table tbody tr > td:nth-of-type(4) {
    text-align: center;
}

/* custom selects */
.select-wrapper {
    min-width: 85%;
    position: relative;
}
@media(max-width:480px){
    .select-wrapper {
        min-width: 100%;
        position: relative;
    }
}
.select-wrapper > select {
    
    appearance: none;
    width: 100%;
    font-weight: 300;
    line-height: 1.2;
    padding: 0.675em calc(1em + 20px) 0.675em 1em;
    background-color: #fff;
    border: 0.5px solid #5d677b;
    border-radius: 100px;
    color: #5d677b;
    cursor: pointer;
    text-align: center;
}

.select-wrapper::before {
    position: absolute;
    pointer-events: none;
    top: 50%;
    right: 20px;
    content: ">";
    color: #5d677b;
    transform: rotate(90deg) scale(1, 1.5);
    line-height: 0;
    font-weight: 100;
}
/* /custom selects */

/* forms */
:root {
    --max-width-px:1440;
    --max-width-px-absolute:1440px;
    /* 300x: 15px - 1440x: 18px */
    --body-copy: clamp(0.9375rem, 0.8882rem + 0.2632vw, 1.125rem);
    /* 300x: 8px - 1440x: 12px */
    --body-copy-small: clamp(0.5rem, 0.4342rem + 0.3509vw, 0.75rem);
    --dark-gray: rgb(93, 103, 123);
    --light-gray: rgba(93, 103, 123, 0.25);
    --blue: #3ba8e0;
    --standard-transition: all 0.1s linear;
}
.wpcf7-form {
    position: relative;
    transition: var(--standard-transition);
    opacity: 1;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.wpcf7-form .form-input {
    width:100%;
}
.wpcf7-form .request-container {
    transition: opacity 0.2s ease-in-out;
    position: relative;
    display: flex;
    flex-direction: column;
    opacity: 0;
}
.wpcf7-form[data-status='init'] .request-container {
    opacity: 1;
}
.wpcf7-form[data-status='submitting'] .request-container {
    opacity: 0.5;
    filter: blur(2px);
    pointer-events: none;
}
.wpcf7-form::before, 
.wpcf7-form::after  {
    content: "";
    position: absolute;
    top:50%;
    left:50%;
    width: 0px;
    border: 5px solid var(--wp--preset--color--dark-blue);
    height: 50px;
    pointer-events: none;
    z-index: 11;
    transform: translate(-50%, 0%);
    animation: clock-spin linear 1s infinite;
    transform-origin: 50% 2.5px;
    border-radius: 10px;
    transition: var(--standard-transition);
    opacity: 0;
}
.wpcf7-form[data-status='submitting']::before,
.wpcf7-form[data-status='submitting']::after {
    opacity: 1;
}
.wpcf7-form::before {
    height: 30px;
    transform: translate(-50%, 0%);
    animation: clock-spin linear 5s infinite;
}
.wpcf7-form .off-screen, 
.wpcf7 .screen-reader-response {
    position: absolute;
    top: -2vw;
    left: -2vw;
    width: 0;
    height: 0;
    overflow: hidden;
}
.wpcf7-form .wpcf7-response-output,
.wpcf7-not-valid-tip {
    position: absolute;
    top:calc(100% + 2rem);
    width: 100%;
    display: flex;
    opacity: 0;
    transition: var(--standard-transition);
    align-items: center;
    justify-content: center;
    padding:1rem;
    border-radius: calc((12 / var(--max-width-px)) * var(--max-width-px-absolute));
    border: 0.5px solid var(--light-gray);
    box-sizing: border-box;
    box-shadow: var(--article-item-shadow);
    /* background-color: #fff; */
    pointer-events: none;
    z-index: 1;
    font-size: var(--body-copy);
}
.wpcf7-not-valid-tip {
    top:calc(100% + 1rem);
    opacity: 1; 
    transition:var(--standard-transition);
}
.wpcf7-not-valid-tip {
    padding:0.5rem 1rem;
    align-items: flex-start;
    text-align: left;
    left: 0;
    top:calc(100% + 2px);
    justify-content: flex-start;
    width: auto;
    max-width: 100%;
    z-index: 10;
}
.wpcf7-form[data-status='submitting'] .wpcf7-response-output,
.wpcf7-form[data-status='submitting'] .wpcf7-response-output.show {
    opacity: 0;
    transition:none;
    top:0;
    left:0;
}
.wpcf7-form[data-status='invalid'] .request-container {
    opacity: 1;
}
.wpcf7-form[data-status='invalid'] .wpcf7-response-output,
.wpcf7-not-valid-tip,
.wpcf7-form[data-status='invalid'] .wpcf7-not-valid {
    background-color: rgba(255, 234, 232, 1);
    border-color: rgba(252, 199, 194, 1);
    color: rgba(196, 74, 63, 1);
}
.wpcf7-form[data-status='invalid'] .wpcf7-response-output {
    opacity: 1;
    transition:var(--standard-transition);
    top:calc(100% + 1rem);
}
.wpcf7-form[data-status='invalid'] .wpcf7-response-output.show{
    opacity: 1;
}
.wpcf7-form[data-status='sent'] .request-container {
    transition: var(--standard-transition);
    opacity: 1;
    filter:blur(0);
    pointer-events: auto;
}
.wpcf7-form[data-status='sent'] .wpcf7-response-output,
.wpcf7-form[data-status='spam'] .wpcf7-response-output,
.wpcf7-form[data-status='spam'] .request-container {
    opacity:1;
}
.wpcf7-form[data-status='invalid'] .wpcf7-not-valid {
    background-color: rgba(255, 248, 247, 1);
    color: var(--wp--preset--color--dark-blue);
}
.wpcf7-form[data-status='invalid'] .wpcf7-validates-as-required[aria-invalid='false']{
    background-color: rgba(247, 255, 249, 1);
    border-color:rgba(208, 252, 194, 1);
}
.wpcf7-form-control-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
}
.wpcf7-form .select-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
}
.wpcf7-form .select-wrapper::before,
.wpcf7-form .select-wrapper::after {
    position: absolute;
    top:50%;
    left:calc(100% - (65px / 2));
    width:35px;
    height: 35px;
    border-radius: 100%;
    content: "";
    transform: translate(-50%, -50%);
}
.wpcf7-form .select-wrapper::before {
    border: 0.5px solid var(--wp--preset--color--gray);
}
.wpcf7-form .select-wrapper::after {
    background:url(./assets/images/Arrow-Down-11x11.svg) no-repeat 50% 50%;
}
.wpcf7-form input[type='text'],
.wpcf7-form input[type='email'],
.wpcf7-form input[type='tel'],
.wpcf7-form input[type='date'],
.wpcf7-form select,
.wpcf7-form textarea,
.request-container .intl-tel-input.allow-dropdown input {
    padding: calc((16 / var(--max-width-px)) * var(--max-width-px-absolute));
    height: calc((75 / var(--max-width-px)) * var(--max-width-px-absolute));
    border: 1px solid var(--light-gray);
    box-sizing: border-box;
    font-size: var(--body-copy);
    border-radius: 3px;
}
.intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input {
    padding-left: 90px;
    padding-right:1rem;
}
.wpcf7-form textarea {
    height: calc((250 / var(--max-width-px)) * var(--max-width-px-absolute));
    resize: none;
}
.wpcf7-form select {
    appearance: none;
    padding-right: calc(1rem + 35px);
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder,
.wpcf7-form select::placeholder,
.wpcf7-form select {
    color:var(--light-gray);
}
.wpcf7-form select.has-value {
    color:var(--dark-gray);
}
.wpcf7-form input:active,
.wpcf7-form textarea:active,
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:active,
.wpcf7-form select:focus {
    outline: 5px solid var(--blue);
}
form label {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.response-container {
    display: flex;
    flex-direction: column;
    width: 100%;
}
form .request-container {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    gap: 2rem;
}
form .form-row {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    max-width: 100%;
    flex-wrap: wrap;
}
form span.label {
    text-align: left !important;
}
form .form-group {
    position: relative;
    padding: 1rem;
    border: 0.5px solid var(--light-gray);
    border-radius: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    background: rgba(255, 255, 255, 0.25);
}
form .form-line {    
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
}
form .form-col {    
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
}
form input, 
form select {
    width:100%;
}
form p + a[class*='btn'] {
    margin: 0;
    width: auto;
    display: flex
}
form p + a[class*='btn']:hover {
    transform:scale(1.1);
    box-shadow: 0 0 5px rgba(0,0,0,0.25);
    border:0.5px solid #fff;
}

@media(max-width:768px){
    form .form-row {
        flex-direction: column;
        gap: 0.5rem;
    }
    .wpcf7-form input[type='text'],
    .wpcf7-form input[type='email'],
    .wpcf7-form input[type='tel'],
    .wpcf7-form input[type='date'],
    .wpcf7-form select,
    .wpcf7-form textarea,
    .request-container .intl-tel-input.allow-dropdown input {
        padding: calc((16 / var(--max-width-px)) * 100vw);
        height: calc((75 / var(--max-width-px)) * 100vw);
        min-height: 50px;
    }
    .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input {
        padding-left: 100px;
        padding-right:1rem;
    }
    .wpcf7-form textarea {
        height: calc((300 / var(--max-width-px)) * 100vw);
        min-height: 150px;
        resize: none;
    }
    form .form-row .submit {
        align-self: flex-start;
    }
    form .form-line {flex-direction: column;}
    form .form-col {align-items: center;}
}
@media(max-width:480px){
    .wpcf7-form input[type='text'],
    .wpcf7-form input[type='email'],
    .wpcf7-form input[type='tel'],
    .wpcf7-form input[type='date'],
    .wpcf7-form select,
    .wpcf7-form textarea,
    .request-container .intl-tel-input.allow-dropdown input  {
        padding: calc((50 / var(--max-width-px)) * 100vw);
        height: calc((75 / var(--max-width-px)) * 100vw);
        min-height: 50px;
    }
    .wpcf7-form textarea {
        height: calc((300 / var(--max-width-px)) * 100vw);
        min-height: 150px;
        resize: none;
    }
    form .form-row .submit {
        align-self: flex-start;
    }
    .wpcf7-form .wpcf7-response-output,
    .wpcf7-not-valid-tip {
        text-align: center;
    }
}
iframe.iframe-video-bg.horizontal {
    aspect-ratio: 16/9;
}
iframe.iframe-video-bg.vertical {
    aspect-ratio: 9/16;
}

/* technical information */
.test-result-container {position: relative;}
.test-result-container + .test-result-container {margin-top: 100px;}
.test-result-container + .test-result-container:before {position: absolute; top:-50px; left:0; content: ""; width: 100%; height: 1px; background: rgb(236, 238, 239);}
.test-result-container > .table-wrapper table td {text-align: center;}
.test-result-container > .table-wrapper:first-of-type table td {text-align: left;}
.test-result-container > .table-wrapper:last-of-type table {position: relative; border: 1px solid #5c667a;}
.test-result-container > .table-wrapper:last-of-type table tr > td:first-of-type {text-align: left;}
/* /technical informaiton */

/* v2 article blocks */
.v2-article-block p,
.v2-article-block ul li {
    font-size:clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem);
    line-height: calc(clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem) * 1.2);
    font-weight: 400;
}
.v2-article-block ul {
    margin-bottom:2rem;
}
.v2-article-block ul li {
    margin-bottom: 0.25rem;
}
.v2-article-block ul li:after {
    width: 0.75em;
    height: 0.75em;
    top: calc(0.75em / 2);
    transform: translate(0, calc(((0.75em / 2) / 2) * -1));
}

.v2-article-block h2,
.v2-article-block h3 {
    margin-top: 85px;
    padding-bottom: 0.5em;
    text-wrap: balance;
}
.v2-article-block h2 + h3,
.v2-article-block ul + h3,
.v2-article-block p + h3 {
    margin-top:0;
}
.v2-article-block section.ct-inner-content :first-child {
    margin-top:0;
}
.v2-article-block .wp-block-buttons {
    margin-top:35px;
    margin-bottom:35px;
}
.v2-article-block blockquote {
    position: relative;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding: calc(clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem) * 2);
    margin-bottom:35px;
    font-size:calc(clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem) * 1.2);
    line-height: calc(clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem) * 1.2);
}
.v2-article-block blockquote::after {
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    background-color: #5d677b;
    opacity: 0.05;
    content:"";
    border-radius: clamp(1rem, 0.9474rem + 0.2807vw, 1.2rem);
}
/* /v2 article blocks */

/* ios lateral scroll fix */
div.scroller-viewport {
  overflow-x: auto;
  overflow-y: visible;
  /* The Fix: Allow both horizontal and vertical panning */
  touch-action: pan-x pan-y pinch-zoom; 
  /* Force Safari to use momentum scrolling */
  -webkit-overflow-scrolling: touch; 
  /* Prevent 'rubber-banding' of the whole page on some iOS versions */
  overscroll-behavior-x: contain; 
  scrollbar-width: none;
}

/* Ensure images don't break the touch gesture */
div.scroller-viewport .feature-slider-item img {
  pointer-events: none;
  -webkit-user-drag: none;
}
/* Only scale items on devices that support true hovering (Desktop) */
@media (hover: hover) and (pointer: fine) {
  .feature-slider-item:hover {
    transform: scale(1.15);
    z-index: 10;
  }
}
/* /ios lateral scroll fix */