@charset "utf-8";
/* RESET ============== http://meyerweb.com/eric/tools/css/reset ===== RESET */
*, ::after, ::before {
	box-sizing: border-box;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline; }
button {
		font: inherit;
	padding: 0;
	border: none; }
input[type=search] {
	-webkit-appearance: none;
	-moz-appearance: none;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box; }
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
	-webkit-appearance: none;
	-moz-appearance: none; }
textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical; }
table {
	border-collapse: collapse;
	border-spacing: 0; }
a, a:hover { text-decoration: none; }
a:active, a:hover, :focus { outline: 0; }
/* ol, ul, .unstyled {	list-style: none; }
blockquote, q {	quotes: none; } */

/* GLOBAL ===================================================================== GLOBAL */
body {
	font-family: 'Inter', sans-serif;
	display: flex;
	min-height: 100vh;
	flex-direction: column;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
#wrap {
	display: flex;
	flex: 1;
	flex-direction: column;}
header, #top, #bottom, footer {
	flex: 0 1 100%;
	align-self: stretch; }
main {
	flex: 1; }
/* TYPOGRAPHY ==== https://css-tricks.com/simplified-fluid-typography/ ==== TYPOGRAPHY */
strong, .bold {
	font-weight: bold; }
em, .italic {
	font-style: italic; }
.upper {
	text-transform: uppercase; }
.fw100 {
	font-weight: 100; }
.fw200 {
	font-weight: 200; }
.fw300 {
	font-weight: 300; }
.fw400 {
	font-weight: 400; }
.fw500 {
	font-weight: 500; }
.fw600 {
	font-weight: 600; }
.fw700 {
	font-weight: 700; }
.fw800 {
	font-weight: 800; }
.fw900 {
	font-weight: 900; }
.h1, h1 {
	font-size: clamp(2.3rem, 4vw, 2.5rem);
	padding-bottom: 30px;	}
.h2, h2 {
	font-size: clamp(2.0rem, 4vw, 2.33rem);
	padding-bottom: 25px; }
.h3, h3 {
	font-size: clamp(1.6rem, 3.5vw, 1.9rem);
	padding-bottom: 25px; }
.h4, h4 {
	font-size: clamp(1.3rem, 3.5vw, 1.5rem);
	padding-bottom: 20px; }
.h5, h5 {
	font-size: clamp(1.2rem, 3vw, 1.375rem);
	padding-bottom: 20px; }
.h6, h6 {
	font-size: clamp(1rem, 2.5vw, 1.25rem);
	padding-bottom: 10px; }
p {
	line-height: 1.6em;
	padding-bottom: 20px;	}
/* NAV =========================================================================== NAV */
nav {
	padding: 1em 0; }
nav, ul.dropdown-menu {
	background-color: #FFF;
	box-shadow: 0 4px 16px -16px #000;	}
ul.dropdown-menu {
	padding: 5px 15px; }
ul.dropdown-menu li a {
	font-size: 0.8em;
	color: #1a2b4a; }
.navbar-nav li a {
	color: #1a2b4a; }
.navbar-collapse {
	justify-content: flex-end;
	align-items: center; }
/* Effect 11: text fill based on Lea Verou's animation http://dabblet.com/gist/6046779 */
.navbar-toggler-icon i {
	width: auto !important;
	color: #1a2b4a; }
.navbar-nav {
	font-size: 1.5em;
	font-weight: 700;	}
.navbar-nav li a {
	position: relative;
	transition: 0.5s;
	text-decoration: none; }
.navbar-navfoot li a:hover {
	color: #ff5b24; }
.navbar-toggler:active, .navbar-toggler:focus {
	outline: 0; }
/* css for animated icon bar --------------------------------------------------------- */
.icon-bar {
	display: block;
	width: 36px;
	height: 6px;
	margin: 4px 0 4px 0;
	transition: all 0.2s;
	background: #1a2b4a }
.navbar-toggler .icon-bar.top-bar {
	transform: rotate(45deg);
	transform-origin: 10% 10%; }
.navbar-toggler .icon-bar.middle-bar {
	opacity: 0;
	filter: alpha(opacity=0); }
.navbar-toggler .icon-bar.bottom-bar {
	transform: rotate(-45deg);
	transform-origin: 10% 90%; }
.navbar-toggler.collapsed .icon-bar.top-bar {
	transform: rotate(0); }
.navbar-toggler.collapsed .icon-bar.middle-bar {
	opacity: 1;
	filter: alpha(opacity=100); }
.navbar-toggler.collapsed .icon-bar.bottom-bar {
	transform: rotate(0); }
/* HEADER ===================================================================== HEADER */
.header-img,
.introduction-img,
.difference-main,
.whoweare-img,
.contact-img {
	border-radius: 8px;
}
/* TOP =========================================================================== TOP */
.intro h3, .feature-desc {
	line-height: 1.4em;	}
.intro-image, .intro-text {
	padding-bottom: 6vh; }
.intro-image img {
	border-radius: 8px; }
.feature {
	padding-top: 20px; }
.feature-desc {
	padding: 20px 0; }
.services-item {
	padding-bottom: 20px; }
.services-item-title {
	padding-bottom: 0; }
.services-item-content {
	display: flex;
	flex-direction: row; }
.services-item-stack {
	display: flex;
	flex-direction: column; }
.services-item-icon {
	display: flex;
	flex-direction: column;
	justify-content: center; }
.services-item-caption {
	font-size: 1.1em;}
.services-item-wrap,
.services-item-link {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	flex: 1;
	border-radius: 8px; }
.difference-caption-text {
	font-size: clamp(1.2rem, 3vw, 1.375rem); }
.services-item-title:after,
.difference-caption-text:after,
.article-title:after {
  content: ""; 
	display: block;
	width: 128px;
	margin: 5px 0 15px;
	border-bottom: 3px solid #ff7f57; }
.introduction-item-caption:before,
.whoweare-item-caption:before {
	content: ""; 
	display: block;
	width: 128px;
	margin: 15px 0;
	border-bottom: 3px solid #ff7f57; }
/* MAIN ========================================================================= MAIN */
.item-page {
	margin-bottom: 30px;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	box-shadow: 0 0 30px rgba(0,0,0,.1); }
.article-title {
	margin-left: 30px;
	color: #ff7f57;
	font-weight: 900; }
.article-body {
	padding: 0 30px 30px 30px;
	font-size: 1.2em;
}
.article-body h6 {
	font-weight: 800;
}
/* BOTTOM ===================================================================== BOTTOM */

/* FOOTER ===================================================================== FOOTER */
#footer {
	padding-top: 5vh;
	padding-bottom: 8vh; }
#copyright {
	color: #4ed6d4;
	padding: 20px;
	background: #1a2b4a; }
a.back-to-top {
	z-index:9999;
	border-radius: 50%;
	background-color: #1a2b4a;
	color: #4ed6d4;
	position: fixed;
	bottom: 10px;
	right: 15px;
	height: 36px;
	width: 36px;
	opacity: 1;
	-webkit-transition: opacity 0.15s ease-in-out;
	-o-transition: opacity 0.15s ease-in-out;
	transition: opacity 0.15s ease-in-out;
	transition-property: opacity;
	transition-duration: 0.15s;
	transition-timing-function: ease-in-out;
	transition-delay: initial; }
.back-to-top i {
	color: #4ed6d4;
	position: relative;	}
.back-to-top i:before {
	padding: 4px 0 0 6px;
	font-size: 24px;}
.fadeButton {
	opacity: 0 !important; }
.contact-form {
	font-weight: 700; }
.formControls {
	display: flex;
	padding: 10px 0 30px;
	width:100%; }
fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0; }
input.form-control,
textarea.form-control {
	display: flex;
	flex: 1;
	border: none;
	border-radius: 8px;
	background: #f2f5f7;
	padding: .75em 1em;
	font-size: 1em;
	font-family: 'Inter', arial, serif;
	max-width: 100%; }
.form-check {
	padding-right: 15px;
	display: inline-block;
	font-weight: 500; }
.rsform-radio {
	padding-right: 5px; }
::-webkit-input-placeholder, ::placeholder {
	font-family: 'Inter', arial, serif;
	font-weight: 500;
	color: #a8afc9;
	font-size: 1em; }

/* BUTTONS =================================================================== BUTTONS */
.btn-cta-wrap {
display: flex; }
.btn-cta,
button.rsform-submit-button {
	position: relative;
	text-align: center;
	cursor: pointer;
	text-align:center;
	color: #ffffff;
	background-color: #ff7f57;
	box-shadow: 0 8px 8px -8px #ff7f57;
	transition: all 0.2s ease-out;	}
.btn-cta:hover,
button.rsform-submit-button:hover {
	color: #ffffff;
	box-shadow: 0 16px 16px -16px #ff7f57;
	background-color: #ff5b24;}
button.rsform-submit-button {
	padding: 10px 30px;
	border-radius: 8px; }
/* RESPONSIVE ============================================================= RESPONSIVE */
.img-responsive {
	width: auto;
	max-height: 100%; }

@media (min-width: 1200px) {
	#top {
		padding-top: 112px; }
}
@media (max-width: 1199px) {
	img#site-logo {
		max-width: 256px;
		height: auto; }
	#top {
		padding-top: 92px; }
}
@media (max-width: 991.98px) {
	.align-right-switch {
		text-align: left; }
	.align-left-switch {
		text-align: right; }
}
@media (min-width: 992px) {
	.intro-text-left {
		padding-right: 8vh; }
	.intro-text-right {
		padding-left: 8vh; }
	.align-right-switch {
		text-align: right; }
	.align-left-switch {
		text-align: left; }
	.services-item-caption {
		padding-right: 15%; }
}
@media screen and (min-width: 769px) {
	.navbar-nav li a:hover {
		color: #F46F74; }
	.navbar-navfoot li a:hover:after,
	.navbar-nav li a:hover:after {
		width: 100%; }
	.show > .dropdown-menu {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1); }
	.dropdown-menu {
		-webkit-transform-origin: top;
		transform-origin: top;
		-webkit-animation-fill-mode: forwards;	
		animation-fill-mode: forwards; 
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		display: block;
		transition: all 0.2s ease-out;
		-webkit-transition: all 0.2s ease-out; }
}
@media screen and (max-width: 768px) {
	.nav-item {
		text-align: right;
		padding-right: 30px; }
	.header-btn-wrap,
	.header-title	{
		text-align: center;
		justify-content: center; }
	.nav.navbar-nav li {
		text-align: right; }
}
@media screen and (max-width: 562px) {
	img#site-logo {
		padding-left: 15px; }
}