:root {
	
	--primary: #40af49;
	--primary-rgb: 64, 175, 73;
	--primary-darker: #1e4a22;
	
	--body: #121820;
	--secondary: #121820;
	--secondary-rgb: 18, 24, 32;
	--secondary-darker: #080d15;
	
	--grey: #666;
	--grey-light: #eeebe9;
	
	--body-family: 'Open Sans', sans-serif;
	--heading-family: 'Roboto', sans-serif;
}

html {
  scroll-behavior: smooth;
}
/* ***************************************************** */
/* OVERWRITES */
/* ***************************************************** */

@media (min-width: 1460px) {
	.container { max-width: 1400px; }
}
@media (max-width: 1459.98px) {
	.container { max-width: 100%; width: 100%; }
}

.text-primary { color: var(--primary) !important; }
.text-secondary { color: var(--secondary) !important; }
.text-grey { color: var(--grey) !important; }

.lead { font-size: 1.2em; }

.rounded-lg { border-radius: .7rem !important; }
.border-bottom-lg { border-bottom: 3px solid var(--grey-light); }
.border-primary { border-color: var(--primary) !important; }

button:focus { outline: none; }

.bg-primary { background-color: var(--primary) !important; }
.bg-secondary { background-color: var(--secondary) !important; }
.bg-grey-light { background-color: var(--grey-light) !important; }

.btn-primary { color: #fff; background-color: var(--primary); border-color: var(--primary); }
	.btn-primary:hover {color: #fff; background-color: var(--primary); border-color: var(--primary); webkit-filter: brightness(90%); filter: brightness(90%); }
	.btn-primary:focus, .btn-primary.focus { -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.5); box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.5); }
	.btn-primary.disabled, .btn-primary:disabled { color: #fff; background-color: var(--primary); border-color: var(--primary); }
	.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
	.show > .btn-primary.dropdown-toggle { color: #fff; background-color: var(--primary); border-color: var(--primary); }
	.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
	.show > .btn-primary.dropdown-toggle:focus { -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.5); box-shadow: 0 0 0 0.2rem rgba(var(--primary-rgb), 0.5); }

.btn-secondary { color: #fff; background-color: var(--secondary); border-color: var(--secondary); }
	.btn-secondary:hover {color: #fff; background-color: var(--secondary); border-color: var(--secondary); webkit-filter: brightness(90%); filter: brightness(90%); }
	.btn-secondary:focus, .btn-secondary.focus { -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--secondary-rgb), 0.5); box-shadow: 0 0 0 0.2rem rgba(var(--secondary-rgb), 0.5); }
	.btn-secondary.disabled, .btn-secondary:disabled { color: #fff; background-color: var(--secondary); border-color: var(--secondary); }
	.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
	.show > .btn-secondary.dropdown-toggle { color: #fff; background-color: var(--secondary); border-color: var(--secondary); }
	.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
	.show > .btn-secondary.dropdown-toggle:focus { -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--secondary-rgb), 0.5); box-shadow: 0 0 0 0.2rem rgba(var(--secondary-rgb), 0.5); }

.btn-light:hover { color: var(--primary); }

.btn-label { position: relative; left: -0.75rem; display: inline-block; padding: .375rem .75rem; background: rgba(0,0,0,0.15); border-radius: .2rem 0 0 .2rem; }
.btn-sm .btn-label { left: -0.5rem; padding: .25rem .6rem; }
.btn-labeled { padding-top: 0; padding-bottom: 0; }

.btn-circle {
    width: 2.2em;
    height: 2.2em;
    padding: .4em 0;
    border-radius: 50%;
    text-align: center;
    font-size: 1.2em;
    line-height: 1.4;
}
.btn-circle.btn-lg { font-size: 1.6em; }
@media (min-width: 576px) {
	.btn-circle.btn-sm-lg { font-size: 1.6em; }
}


/* ***************************************************** */
/* FORMS */
/* ***************************************************** */

.custom-control.custom-control-lg { min-height: 2rem; padding-left: 2.5rem; }
.custom-control .custom-control-label { cursor: pointer; }
.custom-control-lg .custom-control-label:before { top: .1rem; left: -2.5rem; width: 1.5rem; height: 1.5rem; }
.custom-control-lg .custom-control-label:after { top: .1rem; left: -2.5rem; width: 1.5rem; height: 1.5rem; }

.custom-switch.custom-switch-above { padding-left: 0; padding-top: 1.7rem; }
.custom-switch.custom-switch-above .custom-control-label:before { left: 50%; width: 2.5rem; top: -1.3rem; height: 0.8rem; border-radius: .6rem; margin-left: -1.25rem; border: none; background-color: var(--primary-darker); }
.custom-switch.custom-switch-above .custom-control-label:after { top: -1.6rem; left: 50%; width: 1.4rem; height: 1.4rem; border-radius: .75rem; margin-left: -1.5rem; background-color: #fff; -webkit-box-shadow: 0 .125rem .25rem rgba(0,0,0,.3); box-shadow: 0 .125rem .25rem rgba(0,0,0,.3); }
.custom-switch.custom-switch-above .custom-control-input:checked ~ .custom-control-label:before { background-color: rgba(255,255,255,0.4); }
.custom-switch.custom-switch-above .custom-control-input:checked ~ .custom-control-label:after { -webkit-transform: translateX(1.6rem); transform: translateX(1.6rem); }
.custom-switch.custom-switch-above .custom-control-input:not(:disabled):active ~ .custom-control-label:before { background-color: var(--primary-darker); }
.custom-switch.custom-switch-above .custom-control-input:focus ~ .custom-control-label:before { -webkit-box-shadow: none; box-shadow: none; }
.custom-switch.custom-switch-above .custom-control-label { color: rgba(255,255,255,0.6); }
.custom-switch.custom-switch-above .custom-control-input:checked ~ .custom-control-label { color: #fff; }

.switchCol > label { font-size: 2.8em; margin-bottom: 0; cursor: pointer; }
.switchCol .custom-control label { font-size: 1.1em }

.custom-select { background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 2'%3e%3cpath fill='%2340af49' d='M2 3L0 0h4zm0'/%3e%3c/svg%3e") no-repeat right .65rem center/10px 12px; background-color: #fff; }

.form-control:focus, .wpcf7 .wpcf7-validation-errors:focus, .wpcf7 input:focus[type="color"], .wpcf7 input:focus[type="date"], .wpcf7 input:focus[type="datetime-local"], .wpcf7 input:focus[type="datetime"], .wpcf7 input:focus[type="email"], .wpcf7 input:focus[type="file"], .wpcf7 input:focus[type="month"], .wpcf7 input:focus[type="number"], .wpcf7 input:focus[type="range"], .wpcf7 input:focus[type="search"], .wpcf7 input:focus[type="submit"], .wpcf7 input:focus[type="tel"], .wpcf7 input:focus[type="text"], .wpcf7 input:focus[type="time"], .wpcf7 input:focus[type="url"], .wpcf7 input:focus[type="week"], .wpcf7 select:focus, .wpcf7 textarea:focus,
.custom-select:focus
	{ box-shadow: 0 0 0 .2rem rgba(var(--primary-rgb),.25); border-color: var(--primary); }

.custom-control-input:checked ~ .custom-control-label::before { color: #fff; border-color: var(--primary); background-color: var(--primary); }
.custom-control-input:not(:disabled):active ~ .custom-control-label:before { color: #fff; background-color: rgba(var(--primary-rgb),.5); border-color: rgba(var(--primary-rgb),.5); }
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before { border-color: var(--primary); }
.custom-control-input:focus ~ .custom-control-label:before { -webkit-box-shadow: 0 0 0 .2rem rgba(var(--primary-rgb),.25); box-shadow: 0 0 0 .2rem rgba(var(--primary-rgb),.25); }

.privNotice { font-size: 0.8em; line-height: 1.3; }

.roundNumberInput { font-size: 1em; position: relative;  z-index: 1; display: inline-block; }
.roundNumberInput .input-group-btn { position: absolute; top: 1em; z-index: -1; }
.roundNumberInput .rni-plus { right: -1.6em; }
.roundNumberInput .rni-minus { left: -1.6em; }
.roundNumberInput .input-number-circle  { width: 2.5em; height: 2.5em; margin-bottom: -1.4em; }
.roundNumberInput .input-number-circle .input-number  { width: 80%; height: 1em; font-size: 1em; background-color: transparent; }
.roundNumberInput .input-number-circle .input-number:focus  { -webkit-box-shadow: none; box-shadow: none; }
.roundNumberInput .btn-number  { width: 2em; height: 2em; font-size: 0.9em; }
.roundNumberInput .btn-number i { vertical-align: inherit; }

@media (min-width: 576px) {
	.roundNumberInput { font-size: 1.3em; }
}
@media (min-width: 768px) {
	.roundNumberInput { font-size: 1em; }
}
@media (min-width: 1200px) {
	.roundNumberInput { font-size: 1.13em; }
}


/* ***************************************************** */
/* GENERAL */
/* ***************************************************** */

body { font-size: 14px; min-width: 330px; font-family: var(--body-family); color: var(--body); }
.site > #index-wrapper { padding-top: 10rem; }

a { color: var(--primary); }
a:hover { text-decoration: none; color: var(--primary-darker); }

a.underlineLink span { border-bottom: 1px solid; padding-bottom: 3px; }

.stretched-link:after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; pointer-events: auto; background-color:  rgba(0,0,0,0); }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 { font-family: var(--heading-family); font-weight: 700; }

h1, .h1 { font-size: 2.5em; }
h2, .h2 { font-size: 2em; }
h3, .h3 { font-size: 1.75em; }
h4, .h4 { font-size: 1.5em; }
h5, .h5 { font-size: 1.25em; }
h6, .h6 { font-size: 1em; }

nav.navbar,
.headerSticky,
.btn,
.header-font  { font-family: var(--heading-family); font-weight: 500; }

.radiusLogoBg { background-image: url('../images/radius-icon-trans.svg'); background-repeat: no-repeat; background-size: 90vw auto; background-position: -10vw 16vh; }

.dotsBefore { position: relative; }
.dotsBefore:before { content: ""; position: absolute; left: 0; right: 0; top: 5px; border-bottom: 4px dotted rgba(0,0,0,0.2); }
.dotsAfter { position: relative; }
.dotsAfter:after { content: ""; position: absolute; left: 0; right: 0; bottom: 5px; border-top: 4px dotted rgba(0,0,0,0.2); }

.logoBehindRight { background-image: url('../images/radius-icon-trans.svg'); background-repeat: no-repeat; background-size: 95vw auto; background-position: 40vw 50%; }

@media (min-width: 768px) {
	body { font-size: 15px; }
	
	.logoBehindRight { background-size: 56vw auto; background-position: 48vw -7vw; }
}



/* ***************************************************** */
/* SLANT */
/* ***************************************************** */

.slantThis {
	position: relative;
	-moz-transform: skewY(3.8deg);
	-webkit-transform: skewY(3.8deg);
	-o-transform: skewY(3.8deg);
	-ms-transform: skewY(3.8deg);
	transform: skewY(3.8deg);
	-webkit-transform-origin: top left;
	-moz-transform-origin: top left;
	-ms-transform-origin: top left;
	transform-origin: top left;
}
@media (min-width: 992px) {
	.slantThis {
		-moz-transform: skewY(2.5deg);
		-webkit-transform: skewY(2.5deg);
		-o-transform: skewY(2.5deg);
		-ms-transform: skewY(2.5deg);
		transform: skewY(2.5deg);
	}
}


/* ***************************************************** */
/* PERSEPECTIVE */
/* ***************************************************** */

.perspective { position: relative; }
.perspective > * { position: relative; z-index: 2; display: block;
	-webkit-transform: translateZ(10px);
	-moz-transform: translateZ(10px);
	-o-transform: translateZ(10px);
	-ms-transform: translateZ(10px);
	transform: translateZ(10px);
}
.perspective > .perspectiveBox { content: ""; z-index: 1; position: absolute; top: 0; left: 0; right: 0; bottom: 0; outline: 1px solid transparent;
	-webkit-transform: perspective(100px) rotateX(-20deg);
	-moz-transform: perspective(100px) rotateX(-20deg);
	-o-transform: perspective(100px) rotateX(-20deg);
	-ms-transform: perspective(100px) rotateX(-20deg);
	transform: perspective(100px) rotateX(-20deg);
}


/* ***************************************************** */
/* THIRD STRIPES */
/* ***************************************************** */

.thirdStripes { position: relative; }
.thirdStripes:before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 33vh; background: url('../images/stripesBg.png'); }
.thirdStripes > div { position: inherit; }
@media (min-width: 768px) {
	.thirdStripes:before { bottom: 0; right: unset; width: 33%; height: auto; }
}


/* ***************************************************** */
/* HEADER */
/* ***************************************************** */

nav.navbar,
.logoBox,
.logoBox .navbar-brand img,
.navApply,
.searchPrompt,
.menuPrompt,
.mainNavbar .navbar-collapse {
	transition:All 0.5s ease;
	-webkit-transition:All 0.5s ease;
	-moz-transition:All 0.5s ease;
	-o-transition:All 0.5s ease;
}
@media (min-width: 1200px) {
	.mainNavbar {
		transition:padding-top 0.5s ease;
		-webkit-transition:padding-top 0.5s ease;
		-moz-transition:padding-top 0.5s ease;
		-o-transition:padding-top 0.5s ease;
	}
}


/* SCROLL */
nav.navbar.scrolled { background-color: rgba(18,24,32,0.8); }
.menuPrompt,
.searchPrompt,
.navApply  { padding-top: 0; }

.scrolled .menuPrompt,
.scrolled .searchPrompt,
.scrolled .navApply  { padding-top: 0; }

@media (min-width: 768px) {
	.menuPrompt,
	.searchPrompt,
	.navApply  { padding-top: 1rem; }
}
@media (min-width: 992px) {
	.menuPrompt,
	.searchPrompt,
	.navApply  { padding-top: 3rem; }
}
@media (min-width: 1200px) {
	.mainNavbar  { padding-top: 3rem; }
	.scrolled .mainNavbar  { padding-top: 0; }
}

/* LOGO */
.logoBox { padding: 0; max-width: 160px; }
.scrolled .logoBox { padding: 0; }

@media (min-width: 576px) {
	.logoBox { max-width: 200px; }
	.scrolled .logoBox { max-width: 160px; }
}
@media (min-width: 768px) {
	.logoBox { padding: 1rem 0 0; max-width: 200px; }
}
@media (min-width: 992px) {
	.logoBox { padding: 1.8rem 0 0; }
}
@media (min-width: 1460px) {
	.logoBox { max-width: 240px; }
}

/* HEADER STICKY */
.headerSticky { z-index: 1050; }
.headerSticky > div { position: relative; }
.headerSticky > div > div { position: absolute; top: 0; right: 0; z-index: 5; }
.headerSticky a { color: #fff; }
.headerSticky a i { font-size: 1.4em; vertical-align: top; }

/* SEARCHBOX */
.searchPrompt { position: relative; z-index: 50; }
.searchPromptBtn  { position: relative; cursor: pointer; padding: .5rem 1.4rem; border-radius: .25rem; font-size: 1rem; line-height: 1.5; border: none; background-color: transparent; }
.searchPromptBtn:hover  { background-color: rgba(255,255,255,0.7); }
.searchPromptBtn.search-is-visible,
.scrolled .searchPromptBtn.search-is-visible  { 
	background-color: #fff;
	position: relative;
	-webkit-border-bottom-right-radius: 0;
	-webkit-border-bottom-left-radius: 0;
	-moz-border-radius-bottomright: 0;
	-moz-border-radius-bottomleft: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.searchPromptBtn.search-is-visible:before { content: ""; position: absolute; top: 100%; left: 0; right: 0; height: .5rem; background-color: #fff; }
.searchBox.dropdown-menu { margin-top: .5rem; left: unset; right: -1rem; min-width: 16rem; background-color: #fff; }
.search-is-visible .searchBox.dropdown-menu { display: block; }
/* MAX */
@media (max-width: 575.98px) {
	.searchBox.dropdown-menu { right: 0; -webkit-border-top-right-radius: 0; -moz-border-radius-topright: 0; border-top-right-radius: 0;}
}

/* the animated search icon */
.search-toggle {
	color: currentColor;
	background: rgba(255, 255, 255, 0.3);
	box-shadow: 0 0 1em 0 rgba(0, 0, 0, 0.1);
	border-radius: 100%;
	height: 2em;
	width: 2em;
	font-size: 1em;
	line-height: 0;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.search-icon {
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
	font-size: 0.75rem;
	color: #fff;
	background: rgba(255, 255, 255, 0.3);
	border-radius: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	line-height: 0;
}
.searchPromptBtn:hover .search-icon { color: var(--body); }
.search-icon:before, .search-icon:after {
	position: absolute;
	display: block;
	content: "";
	border-radius: 2em;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.search-icon:before {
	box-shadow: 0 0 0 0.25em;
	width: 1em;
	height: 1em;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-75%, -75%);
	transform: translate(-75%, -75%);
}
.search-icon:after {
	width: 1em;
	height: 0.3em;
	background: currentColor;
	-webkit-transform: translate(0%, 100%) rotate(45deg);
	transform: translate(0%, 100%) rotate(45deg);
	top: 50%;
	left: 50%;
}
/*.searchPromptBtn:hover .search-icon:after { background: var(--body); }*/

/* active search/x icon */
.search-is-visible .search-icon {
	background-color: transparent;
	-webkit-transform: translate(-1em, -0.15em);
	transform: translate(-1em, -0.15em);
	color: var(--body);
}
.search-is-visible .search-icon:before, .search-is-visible .search-icon:after {
	box-shadow: 0 0 0 0;
	width: 2em;
	height: 0.3em;
	background: currentColor;
}
.search-is-visible .search-icon:before {
	-webkit-transform: translate(0, 0) rotate(225deg);
	transform: translate(0, 0) rotate(225deg);
}
.search-is-visible .search-icon:after {
	-webkit-transform: translate(0, 0) rotate(-225deg);
	transform: translate(0, 0) rotate(-225deg);
}

.searchCover { z-index: 30; position: fixed; top: 0; right: 0; bottom: -25vh; left: 0; background-color: rgba(0,0,0,0);
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateX(-100%);
	-moz-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	-o-transform: translateX(-100%);
	transform: translateX(-100%);
	-webkit-transition: background-color 0.4ss;
	-moz-transition: background-color 0.4s;
	transition: background-color 0.4s;
}
.searchCover.search-is-visible {
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	-o-transform: translateX(0);
	transform: translateX(0);
	background-color: rgba(0,0,0,0.5);
}


/* NAVBAR */
.navbar-expand > .container, .navbar-expand > .container-fluid { padding-right: 15px; padding-left: 15px; }
.navbar-nav > li { margin: 0 .25rem; }
.navbar-nav > li > a { -webkit-border-radius: .25rem; -moz-border-radius: .25rem; border-radius: .25rem; }
.navbar-nav > li.dropdown.show > a { 
	-webkit-border-bottom-right-radius: 0;
	-webkit-border-bottom-left-radius: 0;
	-moz-border-radius-bottomright: 0;
	-moz-border-radius-bottomleft: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.navbar-expand .navbar-nav .nav-link { padding-right: .75rem; padding-left: .75rem; }

.dropdown-header { color: var(--primary); font-size: 1rem; padding-top: 1.25rem; }
.dropdown-menu > li:first-of-type .dropdown-header { padding-top: .5rem; }
.dropdown-menu { border: none; background-color: rgba(0,0,0,0.2); font-size: 1em; min-width: 200px; }
.dropdown-menu .dropdown-menu { background-color: transparent; }
.navbar-nav .dropdown-menu > .dropdown > .dropdown-menu { display: block; position: relative; top: unset; margin: 0; padding: 0; border: none; border-radius: 0; }
.dropdown-item.active, .dropdown-item:active { background-color: transparent; }

.navbar-nav .dropdown-menu a { white-space: normal; line-height: 1.2; padding-top: .4rem; padding-bottom: .4rem; }
.navbar-nav a i { font-size: 1.3em; vertical-align: text-bottom; }

.navbar-nav a { color: #fff; }


@media (min-width: 1200px) {
	.dropdown-menu { left: -1rem; margin-top: .5rem; }
	.dropdown-menu,
	.dropdown-menu .dropdown-menu { background-color: #fff; }
	.dropdown-center .dropdown-menu {
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}
	li[class^="dropdown-columns"] .dropdown-menu.show { display: -ms-flexbox; display: -webkit-flex; display: flex; }
	.dropdown-columns-3 > .dropdown-menu > li { width: 33.33%; }
	
	.dropdown-header { font-size: 1rem; padding-top: .5rem; }
	
	.navbar-nav > li > a:hover { background-color: rgba(255,255,255,0.7); }
	.navbar-nav > li.show > a { background-color: #fff; position: relative; }
	.navbar-nav > li.show > a:before { content: ""; position: absolute; top: 100%; left: 0; right: 0; height: .5rem; background-color: #fff; }
	
	.navbar-nav a:hover { color: var(--body); }
	.navbar-nav .dropdown-menu a { color: var(--body); }
	.navbar-nav > li.dropdown.show > a { color: var(--body); }
}

/* MAX */
@media (max-width: 1199.98px) {
	
	body.nav-is-visible { overflow: hidden; }
	
	.navbar,
	.headerSocial { padding-right: 15px; padding-left: 15px; }

	.navbar-expand .mainNavbar .navbar-nav .dropdown-menu { position: relative; }
	.navbar-dark .mainNavbar .navbar-nav .menu-item:not(.show) .nav-link.dropdown-toggle:focus { color: #fff; }
	
	.mainNavbarInner { overflow-y: scroll; height: -moz-calc(100vh - 145px); height: -webkit-calc(100vh - 145px); height: -o-calc(100vh - 145px); height: calc(100vh - 145px); -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; }
	.scrolled .mainNavbarInner { height: -moz-calc(100vh - 85px); height: -webkit-calc(100vh - 85px); height: -o-calc(100vh - 85px); height: calc(100vh - 85px); }

	.logoBox,
	.headerSocial > div,
	.navApply { position: relative; z-index: 50; }
	
	.navbar-nav a { color: #fff; }
	.navbar-nav > li { margin: 0; }
	.dropdown-item,
	.dropdown-item:last-child,
	.dropdown-item:first-child
	.dropdown-menu { border-radius: 0; }
	
	.dropdown-header { border-bottom: 1px solid rgba(255,255,255,0.05); margin-bottom: 5px; }
	
	/* -------------------------------- 
	Slide out menu
	-------------------------------- */
	.navCover { z-index: 30; position: fixed; top: 0; right: 0; bottom: -25vh; left: 0; background-color: rgba(0,0,0,0);
		-webkit-transform: translateZ(0);
		-moz-transform: translateZ(0);
		-ms-transform: translateZ(0);
		-o-transform: translateZ(0);
		transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transform: translateX(-100%);
		-moz-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		-o-transform: translateX(-100%);
		transform: translateX(-100%);
		-webkit-transition: background-color 0.4ss;
		-moz-transition: background-color 0.4s;
		transition: background-color 0.4s;
	}
	.navCover.nav-is-visible {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
		background-color: rgba(0,0,0,0.5);
	}

	.mainNavbar {
		padding-top: 145px;
		position: absolute;
		top: 0;
		left: 0;
		width: 400px;
		height: 100%;
		min-height: 100vh;
		background: var(--secondary);
		box-shadow: 4px 4px 20px transparent;
		z-index: 40;
		/* Force Hardware Acceleration in WebKit */
		-webkit-transform: translateZ(0);
		-moz-transform: translateZ(0);
		-ms-transform: translateZ(0);
		-o-transform: translateZ(0);
		transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transform: translateX(-100%);
		-moz-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		-o-transform: translateX(-100%);
		transform: translateX(-100%);
		-webkit-transition: -webkit-transform 0.3s, box-shadow 0.3s;
		-moz-transition: -moz-transform 0.3s, box-shadow 0.3s;
		transition: transform 0.3s, box-shadow 0.3s;
	}
	.scrolled .mainNavbar { padding-top: 85px; }
	.mainNavbar.nav-is-visible {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
		box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.2);
	}
	.mainNavbar.nav-is-visible .cd-close { opacity: 1; }
	
	.navbar-expand .navbar-nav .nav-link { padding-right: 25px; padding-left: 25px; }

	.navicon-button {
		display: inline-block;
		position: relative;
		z-index: 50;
		padding-bottom: 2px;
		-webkit-transition: 0.25s;
		-moz-transition: 0.25s;
		transition: 0.25s;
		cursor: pointer;
		user-select: none;
	}
	
	/* the animated menu icon */
	.menu-icon {
		cursor: pointer;
		position: relative;
		display: inline-block;
		vertical-align: middle;
		color: #fff;
		border-radius: .5em;
		background-color: #fff;
		width: 2.25em;
		font-size: 0.75rem;
		height: 3px;
	}

	.menu-icon:before,
	.menu-icon:after {
		border-radius: .5em;
		height: 3px;
		width: 100%;
		left: 0;
		background-color: currentColor;
		position: absolute;
		display: block;
		content: '';
	}
	.menu-icon:before { top: -8px; }
	.menu-icon:after { top: 8px; }
	.menu-icon,
	.menu-icon:before,
	.menu-icon:after { transition: all .5s ease-in-out; }
	/* active/open menu icon */
	.nav-is-visible .menu-icon { background-color: transparent; transform: rotate(45deg) translate(0%, -50%); }
	.nav-is-visible .menu-icon:before,
	.nav-is-visible .menu-icon:after { top: 0em; }
	.nav-is-visible .menu-icon:before { transform: rotate(90deg); }
	.nav-is-visible .menu-icon:after { transform: rotate(-180deg); }

	.nav-is-visible:not(.steps) .navicon:before,
	.nav-is-visible:not(.steps) .navicon:after {
		top: 0 !important;
	}
	
	/* navbar updates */
	.navbar-expand .navbar-nav {  
		width: 100%;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}

}
@media (max-width: 991.98px) {
	.mainNavbar { padding-top: 135px; }
	.mainNavbarInner { height: -moz-calc(100vh - 135px); height: -webkit-calc(100vh - 135px); height: -o-calc(100vh - 135px); height: calc(100vh - 135px); }
}
@media (max-width: 767.98px) {
	.mainNavbar { padding-top: 110px; }
	.mainNavbarInner { height: -moz-calc(100vh - 110px); height: -webkit-calc(100vh - 110px); height: -o-calc(100vh - 110px); height: calc(100vh - 110px); }
}
@media (max-width: 575.98px) {
	.mainNavbar { padding-top: 95px; width: -moz-calc(100% - 60px); width: -webkit-calc(100% - 60px); width: -o-calc(100% - 60px); width: calc(100% - 60px); }
	.mainNavbarInner { height: -moz-calc(100vh - 95px); height: -webkit-calc(100vh - 95px); height: -o-calc(100vh - 95px); height: calc(100vh - 95px); }
}

/* OTHER NAVS */
.account-nav { border-bottom: 3px dotted rgba(255,255,255,0.2); margin-bottom: 1em; padding-bottom: 1em; }
.contact-nav { border-top: 3px dotted rgba(255,255,255,0.2); margin-top: 1em; padding-top: 1em; }


/* ***************************************************** */
/* HEADER SECTIONS */
/* ***************************************************** */

.menuPadding { padding-top: 80px; }
.headerSection { padding-bottom: 40px; }
.headerSection.circleBelow  { padding-bottom: 80px; }
.headerSection.fanBelow { position: relative; padding-bottom: 50px; }
.fanBelow > div { position: relative; z-index: 1; }

.fanBelow > .bottomFan { z-index: 0; position: absolute; bottom: 0; left: 0; right: 0; top: 0; overflow: hidden; }
.bottomFan > div { position: absolute; bottom: 0; width: 50%; }
.bottomFanLeft { left: 0; }
.bottomFanRight { right: 0; }

.bottomFanLeft:before,
.bottomFanRight:before,
.bottomFanLeft:after,
.bottomFanRight:after { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 10vw; background-color: rgba(var(--primary-rgb), 0.5); }
.bottomFanLeft:before,
.bottomFanRight:before { background-color: rgba(var(--primary-rgb), 0.5); }
.bottomFanLeft:after,
.bottomFanRight:after { background-color: var(--primary); }
.bottomFanLeft:before,
.bottomFanLeft:after { 
	-webkit-transform-origin: top right;
	-moz-transform-origin: top right;
	-ms-transform-origin: top right;
	transform-origin: top right;
}
.bottomFanRight:before,
.bottomFanRight:after { 
	-webkit-transform-origin: top left;
	-moz-transform-origin: top left;
	-ms-transform-origin: top left;
	transform-origin: top left;
}
.bottomFanLeft:before {
	-moz-transform: skewY(16deg);
	-webkit-transform: skewY(16deg);
	-o-transform: skewY(16deg);
	-ms-transform: skewY(16deg);
	transform: skewY(16deg);
}
.bottomFanLeft:after {
	-moz-transform: skewY(8deg);
	-webkit-transform: skewY(8deg);
	-o-transform: skewY(8deg);
	-ms-transform: skewY(8deg);
	transform: skewY(8deg);
}
.bottomFanRight:before {
	-moz-transform: skewY(-16deg);
	-webkit-transform: skewY(-16deg);
	-o-transform: skewY(-16deg);
	-ms-transform: skewY(-16deg);
	transform: skewY(-16deg);
}
.bottomFanRight:after {
	-moz-transform: skewY(-8deg);
	-webkit-transform: skewY(-8deg);
	-o-transform: skewY(-8deg);
	-ms-transform: skewY(-8deg);
	transform: skewY(-8deg);
}

.headerCircle { position: relative; z-index: 3; }
.headerCircleLogo {
	background: url('../images/radius-icon-green.svg') no-repeat 50% 50% #fff;
	background-size: 54% auto;
	width: 16vw;
	height: 16vw;
	max-width: 120px;
	max-height: 120px;
	position: absolute;
	left: 50%;
	top: 0;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.headerCircleSemi { 
	width: 26vw; 
	height: 13vw; 
	max-width: 220px;
	max-height: 110px;
	background-color: rgba(255,255,255,0.3); 
	position: absolute; 
	bottom: 50%; 
	left: 50%;
	-webkit-border-top-left-radius: 44vw;
	-webkit-border-top-right-radius: 44vw;
	-moz-border-radius-topleft: 44vw;
	-moz-border-radius-topright: 44vw;
	border-top-left-radius: 44vw;
	border-top-right-radius: 44vw;
	transform: translate(-50%, 0);
	-webkit-transform: translate(-50%, 0);
	-moz-transform: translate(-50%, 0);
	-o-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
}

@media (min-width: 576px) {
	.menuPadding { padding-top: 100px; }
	.headerSection.fanBelow { padding-bottom: 100px; }
	
	.headerCircleLogo { width: 14vw; height: 14vw; }
	.headerCircleSemi { width: 22vw; height: 11vw; }
}
@media (min-width: 768px) {
	.menuPadding { padding-top: 130px; }
	.headerSection.fanBelow { padding-bottom: 70px; }
	
	.bottomFanLeft:before {
		-moz-transform: skewY(8deg);
		-webkit-transform: skewY(8deg);
		-o-transform: skewY(8deg);
		-ms-transform: skewY(8deg);
		transform: skewY(8deg);
	}
	.bottomFanLeft:after {
		-moz-transform: skewY(4deg);
		-webkit-transform: skewY(4deg);
		-o-transform: skewY(4deg);
		-ms-transform: skewY(4deg);
		transform: skewY(4deg);
	}
	.bottomFanRight:before {
		-moz-transform: skewY(-8deg);
		-webkit-transform: skewY(-8deg);
		-o-transform: skewY(-8deg);
		-ms-transform: skewY(-8deg);
		transform: skewY(-8deg);
	}
	.bottomFanRight:after {
		-moz-transform: skewY(-4deg);
		-webkit-transform: skewY(-4deg);
		-o-transform: skewY(-4deg);
		-ms-transform: skewY(-4deg);
		transform: skewY(-4deg);
	}
	
	.headerCircleLogo { width: 10vw; height: 10vw; }
	.headerCircleSemi { width: 18vw; height: 9vw; }
}
@media (min-width: 992px) {
	.menuPadding { padding-top: 170px; }
}
@media (min-width: 1200px) {
	.headerSection.fanBelow { padding-bottom: 120px; }
}

/* IMAGE HEADER */
.imageHeader  { background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; position: relative; }
.imageHeader h1  { font-size: 2.2em; font-weight: 900; color: #fff; text-shadow: 1px 1px 10px rgba(0,0,0,0.6); }
.headerPreHeading { color: #fff; text-shadow: 1px 1px 10px rgba(0,0,0,0.6); }
.imageHeader:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0;
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);
	background: linear-gradient(to bottom,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
}

@media (min-width: 768px) {
	.imageHeader h1  { font-size: 3.2em; }
}
@media (min-width: 992px) {
	.imageHeader h1  { font-size: 4em; }
}

/* PLAIN HEADER */
.plainHeader h1  { font-size: 2.2em; font-weight: 900; color: #fff; text-shadow: 1px 1px 10px rgba(0,0,0,0.7); }

@media (min-width: 768px) {
	.plainHeader h1  { font-size: 3.2em; }
}
@media (min-width: 992px) {
	.plainHeader h1  { font-size: 4em; }
}


/* ***************************************************** */
/* FOOTER */
/* ***************************************************** */

/* FOOTER CONTACT */
.footerContact { position: relative; padding-top: 3vw; padding-bottom: 6vw; }
.footerContact .slantThis { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: var(--grey-light); }
.footerContact > .wrapper { position: relative; z-index: 2; }
.page-template-contact-page .footerContact > .slantThis { 
	-moz-transform: none;
	-webkit-transform: none;
	-o-transform: none;
	-ms-transform: none;
	transform: none;
}

/* FOOTER AREA */
.slantArea { position: absolute; left: 0; right: 0; top: -8vw; height: 8vw; }
.slantFooterUpper .slantThis { height: 10vw; background-color: var(--body); border-top: 6px solid var(--primary); }
.slantFooterUpper .slantThis:before { content: ""; position: absolute; left: 0; right: 0; top: -8vh; height: 6vh; background-color: rgba(0,0,0,0.07); }
.slantLogo { background: url('../images/radius-icon-white.png') no-repeat 50% 50%; background-size: 85% auto; position: absolute; z-index: 1; left: 50%; top: -3vw; height: 14vw; width: 14vw; margin-left: -7vw; border: 1vw solid var(--primary); background-color: var(--primary); -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
@media (min-width: 576px) {
	.slantLogo { top: -.5vw; height: 10vw; width: 10vw; margin-left: -3vw; }
}
@media (min-width: 992px) {
	.slantArea { top: -5vw; height: 5vw; }
	.slantFooterUpper .slantThis { height: 6vw; }
	.slantLogo { top: -.5vw; height: 6vw; width: 6vw; margin-left: -3vw; background-size: 100% auto; }
}
@media (min-width: 1460px) {
	.slantLogo { top: -.25vw; height: 5vw; width: 5vw; margin-left: -2.5vw; background-size: 90% auto; border-width: 0.6em; }
}



.footerArea { position: relative; }
.footerArea .wrapper { background-color: var(--body); color: #fff; }
.wrapper.footerUpper { padding-top: 5px; }
.footerLower { border-top: 1px solid rgba(255,255,255,0.1); }
.footerArea a { color: #fff; }
.socialLinks a { color: var(--body); }
.copyright { color: rgba(255,255,255,0.5); }
.footerLogo { max-width: 200px; }
.footerAddress { text-align: right; }
.footerContacts p { font-family: var(--heading-family); font-weight: 700; }
.footerContacts p:first-of-type { font-size: 1.6em; }
.footerContacts p:last-of-type { font-size: 1.1em; }
.footerMenuLegal ul li { display: inline-block; margin-left: .5rem !important; }

@media (min-width: 576px) {
	.footerLogo { max-width: 175px; }
	.footerContacts p:first-of-type { font-size: 2em; }
	.footerContacts p:last-of-type { font-size: 1.5em; }
}
@media (min-width: 768px) {
	.footerLogo { max-width: 200px; }
	.footerAddress { text-align: right; }
}
@media (min-width: 1200px) {
	.footerLogo { max-width: 240px; }
}
@media (min-width: 1460px) {
	.footerLogo { max-width: 280px; }
}


/* ***************************************************** */
/* FIXED CONTACT BUTTON */
/* ***************************************************** */

.contactFixed { position: fixed; right: 0; bottom: 15px; z-index: 10; }
.contactFixed .btn { 
	padding-right: .75rem;
	-webkit-border-top-right-radius: 0;
	-webkit-border-bottom-right-radius: 0;
	-moz-border-radius-topright: 0;
	-moz-border-radius-bottomright: 0;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	-webkit-box-shadow: 0 0 1rem rgba(0,0,0,.25);
	box-shadow: 0 0 1rem rgba(0,0,0,.25);
}
.contactFixed .btn:hover { padding-right: 1.2rem; }


/* ***************************************************** */
/* MODALS */
/* ***************************************************** */

.modal-header.text-white .close { color: #fff; text-shadow: 0 1px 0 #000; opacity: 1; }


/* ***************************************************** */
/* PAGE GENERALS */
/* ***************************************************** */

.plainHeaderSpacer { min-height: 75px; 
	transition: All 0.5s ease;
	-webkit-transition: All 0.5s ease;
	-moz-transition: All 0.5s ease;
	-o-transition: All 0.5s ease;
}
@media (min-width: 576px) {
	.plainHeaderSpacer { min-height: 90px; }
}
@media (min-width: 768px) {
	.plainHeaderSpacer { min-height: 130px; }
}
@media (min-width: 992px) {
	.plainHeaderSpacer { min-height: 160px; }
}
@media (min-width: 1460px) {
	.plainHeaderSpacer { min-height: 180px; }
}


/* ***************************************************** */
/* 404 PAGE */
/* ***************************************************** */

.num404 { font-weight: 900; font-size: 8rem; line-height: 0.65; padding-top: 7rem; }

/* ***************************************************** */
/* SECTIONS */
/* ***************************************************** */

/* Partners Slider */
.partnerSlider img { max-height: 69px; margin: 0 auto; }

/* Image Leads */
.imageLeads h3 { font-size: 1.45em;  }
.imageLeads img { max-width: 40%; }
@media (min-width: 768px) {
	.imageLeads h3 { font-size: 1.75em;  }
	.imageLeads img { max-width: 60%; }
}

/* Image Lines */
.imageLinesBg { background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; padding: 5rem 0 10rem; }
.imageLinesHeading { font-size: 1.8em; font-weight: 700; line-height: 1.2; }
.imageLinesArea { margin-top: -5rem }
.imageBox { min-height: 30vh; background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; }
.circleIcon { height: 5rem; width: 5rem; }
.circleIcon i { font-size: 2.2rem; position: relative; z-index: 2; }
.circleIcon img { position: relative; z-index: 2; max-width: 40px; max-height: 40px; width: auto; }
.circleLine { height: 100%; margin-top: -2rem; width: .25rem; position: relative; z-index: 1; }
@media (min-width: 576px) {
	.circleIcon { height: 6rem; width: 6rem; }
	.circleIcon i { font-size: 3rem; }
	.circleIcon img { max-width: 50px; max-height: 50px; }
}
@media (min-width: 768px) {
	.imageLinesBg p { font-size: 2.5em; }
	.imageBox { min-height: unset; }
	.circleLine { height: .25rem; margin-top: 0; margin-left: -3rem; width: 100%; }
	.rightImage .circleLine { margin-left: 3rem; }
}

/* Media and Text */
.mediaThumbs > div > a { display: block; height: 0; padding-bottom: 58%; background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; }
.videoImg { position: relative; display: block; }
.videoImg:before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.2); display: block; }
.videoImg i { position: absolute; z-index: 2;	top: 50%; left: 50%; font-size: 6em; color: #fff; 
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

/* News Posts */
.newsImg { height: 35vh; background-size: cover; background-position: 50% 50%; }
@media (min-width: 576px)  and (max-width: 991.98px) { 
	.newsImg { width: 45vw; }
	.newsRow > div:nth-child(even) .newsImg { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
	.newsDotsBefore { position: relative; }
	.newsDotsBefore:before { content: ""; position: absolute; top: 0; border-bottom: 4px dotted rgba(0,0,0,0.2); }
	.newsRow > div:nth-child(odd) .newsDotsBefore:before { left: 0; right: 1.5rem; }
	.newsRow > div:nth-child(even) .newsDotsBefore:before { left: 1.5rem; right: 0; }
}

/* Text Block */
.text-block img { margin: 0 auto; display: block; padding: 0.5em 0; }
.doubleColumn { 
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-width: 260px;
	-moz-column-width: 260px;
	column-width: 260px; 
	-webkit-column-gap: 4em;
	-moz-column-gap: 4em;
	column-gap: 4em;
}
.keeptogether { display: inline-block; width: 100%; }
.text-block > p:last-of-type { margin-bottom: 0; }


/* Price Offer Cards */
.pricing-table .heading { text-align: center; background-color: var(--body); color:#fff; min-height: 4.6em; }
.pricing-table .heading span { line-height: 1.2; }
.pricing-table .pricingCard { background-color: var(--grey-light); overflow: hidden; }
.pricing-table .item { overflow: hidden; position: relative; }
.pricing-table .ribbon {
	width: 160px;
	height: 32px;
	font-size: 0.8em;
	text-align: center;
	color: #fff;
	font-weight: bold;
	box-shadow: 0px 2px 3px rgba(136, 136, 136, 0.25);
	background: var(--primary);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: -42px;
	top: 20px;
	padding-top: 7px; 
}
.pricing-table .pricingCard p { opacity: 0.7; max-width: 70%; }
.pricing-table .features .feature { font-weight: 600; }
.pricing-table .features h4 { text-align: center; font-size: 18px; padding: 5px; }
.pricing-table .price h4 { font-size: 2.3em; color: #2288f9; }


.switchy-container{
  position: relative;
  margin: 6px auto;
  width: 80px;
  height: 20px;
  background: #fff;
  border-radius: 16px;
  padding: 2px 3px;
  box-shadow: 0px 1px 1px #aaa;
}
.switchy-bar{
  position: relative;
  background: #2E7A35;
  border-radius: 16px;
  box-shadow: 0px 2px 6px #756381 inset;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.switchy-slider{
  position: absolute;
  width: 24px;
  height: 24px;
  background: #fff;
  left: 0px; 
  top:-6px;
  cursor: pointer;
  border-radius: 12px;
  box-shadow: 0px 2px 4px 0px #777;
  margin: 2px;
}



