/*!
Theme Name: regeneratecascadia
Theme URI: http://underscores.me/
Author: BlueDot Project
Author URI: https://www.bluedotproject.com/
Description: Custom Theme for Bluedot Project
Version: 1.0
*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
--------------------------------------------- */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */

body,
button,
input,
select,
optgroup,
textarea {
	background: #FEFFF6;
	color: #022726;
	font-family: 'Source Sans 3', sans-serif;
	font-size: 18px;
	line-height: 1.6;
}


h1,h2,h3,h4,h5,h6 { font-family: 'DM Serif Display', serif; margin-top:0; margin-bottom:16px; }
h1, .h1 { font-size:55px; font-weight:700; line-height:1.1; letter-spacing: -1.65px; } 
h2, .h2 { font-size:34px; font-weight:700; line-height:1.1; } 
h3, .h3 { font-size:28px; font-weight:700; line-height:1.1; }
h4, .h4 { font-size:22px; font-weight:700; line-height:1.5; }
h5, .h5 { font-size:20px; font-weight:700; line-height:1.5; }
h6, .h6 { font-size:16px; font-weight:700; text-transform: uppercase; line-height:1.5; color: #08BCE7 }

.hfont { font-family: 'Source Sans 3', sans-serif; }
.pfont { font-family: 'Source Sans 3', sans-serif; }

strong { font-weight:700; }

h1.small-heading,
.small-heading h1 { font-size:34px; }

h3.large-heading,
.small-heading h3 { font-size:34px; }

p { margin-top: 0; margin-bottom: 24px }
.xlarge-text p { margin-bottom: 48px }

.xlarge-text { font-size:22px; line-height:1.5; }
.large-text { font-size:20px; line-height:1.5; }
.small-text { font-size:15px; line-height:1.7; }
.micro-text { font-size:14px; line-height:1.7; }

.caption { font-size: 15px;  line-height: 1.3; text-transform: uppercase; margin-bottom: 20px; }

h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child { margin-bottom:0; }
p:first-child, pre:first-child { margin-top:0; }
p:last-child, pre:last-child { margin-bottom:0; }

.dark-bg,.dark-bg h1,.dark-bg .h1,.dark-bg h2,.dark-bg .h2,.dark-bg h3,.dark-bg .h3,.dark-bg h4,.dark-bg .h4,.dark-bg h5,.dark-bg .h5,.dark-bg h6,.dark-bg .h6, .dark-bg .caption, .dark-bg a:not(.cta) {color: #EFF6FF;}


dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 48px 0;
	border-top: 4px solid #0077FF;
	border-bottom: 4px solid #0077FF;
	font-size: 24px;
	padding: 24px 48px 24px 0;
}

blockquote:last-of-type { margin-bottom: 0 }

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 20px 0;
	padding-left: 16px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

ul:last-child,
ol:last-child {  margin-bottom: 0 }

li { margin-bottom: 10px; }
li:last-child { margin-bottom: 0 }

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

.arrow-right-listing ul,ul.arrow-right-listing { list-style: none; padding-left: 0;  }
.arrow-right-listing ul>li,ul.arrow-right-listing>li { padding-left: 65px; position: relative; }
.arrow-right-listing ul>li:last-child,ul.arrow-right-listing>li:last-child { margin-bottom: 0 }
.arrow-right-listing ul>li:after,ul.arrow-right-listing>li:after { position: absolute;  top: 4px; content: ''; left: 0; height: 22px; width: 52px; background-position: right; background-repeat: no-repeat; background-size: auto;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110.526' height='22.429' viewBox='0 0 110.526 22.429'%3E%3Cg transform='translate(-506.5 -473.002)'%3E%3Cg transform='translate(-710.376 483.766)'%3E%3Cpath d='M22.429,11.214A11.214,11.214,0,1,1,11.214,0,11.213,11.213,0,0,1,22.429,11.214' transform='translate(1216.876 -10.764)' fill='none'/%3E%3Cpath d='M4.423,2.212A2.212,2.212,0,1,1,2.212,0,2.211,2.211,0,0,1,4.423,2.212' transform='translate(1225.879 -1.762)' fill='%23eff6ff'/%3E%3C/g%3E%3Cg transform='translate(-666.376 483.766)'%3E%3Cpath d='M22.429,11.214A11.214,11.214,0,1,1,11.214,0,11.213,11.213,0,0,1,22.429,11.214' transform='translate(1216.876 -10.764)' fill='none'/%3E%3Cpath d='M4.423,2.212A2.212,2.212,0,1,1,2.212,0,2.211,2.211,0,0,1,4.423,2.212' transform='translate(1225.879 -1.762)' fill='%23eff6ff'/%3E%3C/g%3E%3Cg transform='translate(-622.376 483.766)'%3E%3Cpath d='M22.429,11.214A11.214,11.214,0,1,1,11.214,0,11.213,11.213,0,0,1,22.429,11.214' transform='translate(1216.876 -10.764)' fill='none'/%3E%3Cpath d='M4.423,2.212A2.212,2.212,0,1,1,2.212,0,2.211,2.211,0,0,1,4.423,2.212' transform='translate(1225.879 -1.762)' fill='%23eff6ff'/%3E%3C/g%3E%3Cg transform='translate(510.688 478.002)'%3E%3Cg%3E%3Cline x2='96.643' transform='translate(0 6.406)' fill='none' stroke='%23eff6ff' stroke-width='1'/%3E%3Cpath d='M0,12.815V0L9.7,6.408Z' transform='translate(96.643)' fill='%2307f'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }

@media (max-width: 767px) {
	.arrow-right-listing ul>li, 
	ul.arrow-right-listing>li {
		padding-left: 20px;
	}

	.arrow-right-listing ul>li:after, 
	ul.arrow-right-listing>li:after {
		width: 9px;
	}
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: inherit;
}

a:hover,
a:focus,
a:active {
	text-decoration: underline
}

a:focus {
	outline: 0
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #0077FF;
	background-color: #0077FF;
	color: #fff;
	cursor: pointer;
	line-height: 1;
	padding: 30px;
}

input[type="submit"] { min-width: 220px; }

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #006AE3;
	background-color: #006AE3;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #006AE3;
	background-color: #006AE3;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #0A151E;
	border: 1px solid #DBDFE6;
	border-radius: 2px;
	padding: 10px 15px;
	width: 100%;
}
.dark input[type="text"],
.dark input[type="email"],
.dark input[type="url"],
.dark input[type="password"],
.dark input[type="search"],
.dark input[type="number"],
.dark input[type="tel"],
.dark input[type="range"],
.dark input[type="date"],
.dark input[type="month"],
.dark input[type="week"],
.dark input[type="time"],
.dark input[type="datetime"],
.dark input[type="datetime-local"],
.dark input[type="color"],
.dark textarea {
	color: #FFFFFF;
	border: 1px solid #FFFFFF;
	background-color:transparent;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

label {
	font-weight: 700;
	margin-bottom: 7px;
	display: block;
}

.hs-form-field { margin-bottom: 24px; }

/* Form Error */
form ul {padding: 0;list-style: none; margin-left: 0; margin-top: 8px;margin-bottom: 0;}
form label.hs-form-booleancheckbox-display {font-size:13px; font-weight: 500; line-height:1.7; position: relative; padding-left: 20px; }
form label.hs-form-booleancheckbox-display input { position: absolute; top:4px; left: 0; margin: 0; }
form .hs_error_rollup { display:none!important; }
form ul.hs-error-msgs,
form ul.hs-error-msgs label, form label.error { color: #ffa6a7; font-size: 12px; font-weight: 400; line-height: 1.2; margin-top: 4px; }
form ul.hs-error-msgs label:before, form label.error:before {
	content: ''; width: 12px; height: 12px; display: inline-block; margin-right: 5px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.2' overflow='visible' preserveAspectRatio='none' viewBox='0 0 24 24' width='14' height='14'%3E%3Cg%3E%3Cpath xmlns:default='http://www.w3.org/2000/svg' id='exclamation-circle' d='M8,5.08C6.79,5.78,5.78,6.79,5.08,8C4.37,9.21,3.99,10.59,4,12c-0.01,1.41,0.36,2.79,1.07,4 c0.7,1.21,1.71,2.22,2.93,2.92c1.21,0.71,2.59,1.09,4,1.08c1.41,0.01,2.79-0.36,4-1.07c1.21-0.7,2.22-1.71,2.92-2.93 c0.71-1.21,1.09-2.59,1.08-4c0.01-1.41-0.36-2.79-1.07-4c-0.7-1.21-1.71-2.22-2.93-2.92C14.79,4.37,13.41,3.99,12,4 C10.59,3.99,9.21,4.37,8,5.08z M13.33,17c0,0.09-0.03,0.17-0.09,0.24c-0.06,0.07-0.14,0.1-0.23,0.1H11 c-0.18-0.01-0.32-0.16-0.33-0.34v-2c0.01-0.18,0.15-0.32,0.33-0.33h2c0.09,0,0.17,0.03,0.23,0.1c0.06,0.07,0.09,0.15,0.09,0.24v2 l0,0L13.33,17z M13.33,13.42c-0.01,0.07-0.05,0.14-0.11,0.18c-0.07,0.05-0.15,0.08-0.24,0.08H11c-0.09,0-0.18-0.03-0.25-0.08 c-0.06-0.04-0.1-0.11-0.1-0.18L10.5,6.94c-0.01-0.08,0.03-0.15,0.1-0.19c0.07-0.05,0.16-0.08,0.25-0.08h2.29 c0.09,0,0.18,0.03,0.25,0.08c0.07,0.04,0.11,0.11,0.1,0.19l-0.19,6.47l0,0L13.33,13.42z' style='fill: rgb(255, 166, 167);' vector-effect='non-scaling-stroke'/%3E%3C/g%3E%3C/svg%3E");}
form label.error { margin-top: 8px; margin-bottom: 10px;}
form input.error, form input.invalid,
form textarea.error, form textarea.invalid{ border-color: #ffa6a7;  }
form select.error, form select.invalid { border-color: #ffa6a7; }
form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="tel"]:focus,
form input[type="password"]:focus,
form input[type="number"]:focus,
form input[type="url"]:focus,
form textarea:focus{ border-color:; }

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.site { display: flex; flex-wrap: wrap; align-content: space-between; min-height: 100vh; }
.content-wrapper { max-width:1448px; width:100%; margin-left:auto; margin-right:auto; padding-left:24px; padding-right:24px;}

.single .post, .post-navigation, .comments-area { max-width: 1448px; margin-left: auto; margin-right: auto;  padding-left:24px; padding-right:24px; }

.single .post { position: relative; padding-top: 48px; }

.blog .post {  margin-bottom: 64px; }
.blog .post:last-child {  margin-bottom: 0; }

/*--------------------------------------------------------------
# Site Header
--------------------------------------------------------------*/

.site-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 10000; border-bottom: 1px solid transparent; }
.site-header.menu-opened { z-index:99999; }
.dark { background-color: #0A151E }
.admin-bar .site-header { top: 32px; }
.sh-wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; padding: 8px 0; transition: all .3s ease;  }
.sh-branding { width: 338px; line-height: 1; transition: all .3s ease }
.sh-branding>a { display: inline-block; }
.sh-logo svg { width: 100%; height: auto; }

/*scrolled */
.scrolled .light .site-header { background-color: #fff; border-bottom: 1px solid rgba(10, 21, 30, .15) }
.scrolled .dark .site-header { background-color: #0A151E; border-bottom: 1px solid rgb(239, 246, 255, .3) }
/*.scrolled  .sh-wrapper { padding: 0 }
.scrolled .sh-branding { width: 125px } */
.dark .sh-navigation { background-color: #0A151E; }

/*--------------------------------------------------------------
# Site Main
--------------------------------------------------------------*/
.site-main { width:100%; }


/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */

.sh-navigation .nav-menu {
	display: none;
	align-items: center;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.sh-navigation ul ul {
	background-color: #213243;
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	list-style: none;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.sh-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.sh-navigation ul ul li:hover > ul,
.sh-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.sh-navigation ul ul a { width: 200px; }
.sh-navigation ul li:hover > ul,
.sh-navigation ul li.focus > ul { left: auto; }
.sh-navigation li { position: relative; padding: 5px 24px; margin: 0; }

.sh-navigation a { display: block; text-decoration: none; font-size: 16px; font-weight: 600; color: #022726; position: relative; }

.sh-navigation a:after { content: ''; position: absolute; display: block; height: 2px; width: 0; top: 100%; background: #022726; left: 50%; transform: translateX(-50%); transition: width .2s ease; }

.sh-navigation .nav-menu>li.focus>a:after,
.sh-navigation a:hover:after { width: 100%;   }

.current_page_parent>a,
.current-menu-item>a,
.sh-navigation .nav-menu>li.focus>a { color: #0077FF }

.current_page_parent>a:after,
.current-menu-item>a:after,
.sh-navigation .nav-menu>li.focus>a:after { background: #0077FF !important }

.sub-menu { padding: 12px; margin: 0; }
.sh-navigation .sub-menu  a { color: #fff }


/* Small menu. */
.sh-menu-toggle {  display: block; }

/* Mobile Toggle */
.sh-menu-toggle,
.sh-menu-toggle:hover,
.sh-menu-toggle:focus { background-color: transparent; border: 0; padding: 0; width: 20px; cursor: pointer;  position: relative;  user-select: none; width: 20px; }
.sh-menu-toggle-icon { background-color: #006AE3; display: block; height: 2px; position: relative; transition: background .2s ease-out; width: 18px; margin-left: -2px;}
.sh-menu-toggle-icon:before,
.sh-menu-toggle-icon:after { background-color: #006AE3; content: ''; display: block; height: 100%; position: absolute; transition: all .2s ease-out; width: calc(100% + 6px); }
.sh-menu-toggle-icon:before { top: 6px; }
.sh-menu-toggle-icon:after { top: -6px; }
.toggled .sh-menu-toggle-icon { background-color: transparent; }
.toggled .sh-menu-toggle-icon:before { background-color: #006AE3; transform: rotate(-45deg); }
.toggled .sh-menu-toggle-icon:after { background-color: #006AE3; transform: rotate(45deg); }
.toggled .sh-menu-toggle-icon:before,
.toggled .sh-menu-toggle-icon:after { top: 0; }

@media screen and (min-width: 960px) {

	.sh-menu-toggle {
		display: none;
	}

	.sh-navigation .nav-menu {
		display: flex;
	}


	.sh-navigation .sub-menu  a:after {
		background: linear-gradient(to left, #213243 50%, #fff 50%) right;
		background-size: 200%;
	}

}

@media screen and (max-width: 959px) {
	.sh-navigation {
		display: none;
		width: calc(100% + 48px );
		padding: 0 24px 24px 24px;
		overflow: auto;
		margin-right: -24px;
		margin-left: -24px;
		margin-top: 24px;
		max-height: calc(100vh - 90px );
		box-shadow: 0 5px 5px rgb(0 0 0 / 10%);
	}
	.sh-navigation .menu-item {
		display: block;
		width: 100%;
		padding: 5px 0;
		position: relative;
	}

	.toggled.sh-navigation,
	.sh-toggle, .sh-navigation.toggled .nav-menu {
		display: block;
	}

	.sh-navigation ul ul { position: static; display: none; margin-top: 7px; }
	.sh-navigation ul li.focus ul { display: block;  background: transparent;  box-shadow: none; }
	.sh-navigation ul ul a { width: 100%; }
	.sh-navigation .sub-menu a { color: #0A151E }
	.dark .sh-navigation .sub-menu a { color: #fff; }
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Header CTA */
.header-cta { margin-left: auto; padding-right: 0 }
.header-cta a { font-size:16px; line-height:1.2; text-align:center; display:inline-block !important; vertical-align:middle; text-decoration:none;  max-width:100%; position: relative; transition: all .3s ease-in-out }
.header-cta a { background-color: #E3EDDC; border: 2px solid #E3EDDC; border-radius: 12px; color:inherit !important; padding: 12px 24px } 
.header-cta a:hover, 
.header-cta a:focus { background-color: #D8E6CD; border-color: #D8E6CD; color:inherit !important; }
.header-cta a:after { display: none }
@media screen and (max-width: 959px) {
	.header-cta { padding-top: 24px !important }
}


/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* Modules
--------------------------------------------- */
.module, .c8-module { position: relative; overflow: hidden; }
.no-overflow { overflow: hidden; }
.overflow-visible { overflow: visible; }

.layer1 { position: relative; z-index: 1; }
.layer2 { position: relative; z-index: 2; }
.layer3 { position: relative; z-index: 3; }


/* Block Alignment
--------------------------------------------- */
.halign-left {  margin-right:auto; }
.halign-center { margin-left:auto; margin-right:auto; }
.halign-right { margin-left:auto;  }

/* Text Alignment
--------------------------------------------- */
.text-left {text-align:left;}
.text-center {text-align:center;}
.text-right {text-align:right;}

@media(max-width:767px) {
	.reset-padding-m{padding-top:40px!important;padding-bottom:40px!important;}
	.reset-padding-top-m{padding-top:40px!important;}
	.reset-padding-bottom-m{padding-bottom:40px!important;}
}

/* Background Colors
--------------------------------------------- */
.bgc-white { background-color: #fff; }
.bgc-black { background-color: #0A151E; color: #fff; }
.bgc-blue { background-color: #0046F0; color: #fff; }
.bgc-gray, .bgc-lg { background-color: #f5f5f5 }
.bgc-lg2 { background-color: #DFE7ED }
.bgc-lg3 { background-color: #F7F9FA }
.bgc-grad-black1 { background: transparent linear-gradient(180deg, #0A151E 0%, rgba(255, 255, 255, 0) 100%) }

/* CTAs
--------------------------------------------- */
.cta { font-family: 'Source Sans 3', sans-serif; font-size:16px; font-weight: 600; line-height:1.2; text-align:center; display:inline-block; vertical-align:middle; text-decoration:none!important;  max-width:100%; position: relative; transition: all .3s ease-in-out }
.cta:hover, .cta:focus, .cta:active { color: inherit }
.cta { border-width:2px; border-style:solid; padding: 28px 57px 28px 40px; top: 0; }
.cta-wrapper { display: inline-block; vertical-align: middle; padding-right:24px; }
.cta-wrapper:last-child { padding-right:0px; }
.cta-label { color: inherit; display: inline-block; position: relative }

.cta-label:after { content: '';
	display: block;
	position: absolute;
	width: 16px;
	height: 7px;
	left: 100%;
	top: 50%;
	transform: translate(10px, -50%);
	background-repeat: no-repeat;
	transition: all .3s ease;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35.756' height='7.421' viewBox='0 0 35.756 7.421'%3E%3Cg transform='translate(-419.021 -395.707)'%3E%3Cpath d='M-16507.229-15533h33.891' transform='translate(16927 15932.5)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='1.5'/%3E%3Cg transform='translate(133 -4621)'%3E%3Cpath d='M-16507.229-15533h4.918' transform='translate(5315.754 27125.914) rotate(34)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='1.5'/%3E%3Cpath d='M-16507.229-15533h4.918' transform='translate(22378.672 10221.463) rotate(-30)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='1.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.cta:hover { padding-right: 77px; }
.cta:hover .cta-label:after { width: 37px; }

.cta.no-arrow,
.cta.no-arrow:hover { padding: 28px 40px }

.primary-cta { background-color: #0077FF; border-color: #0077FF; color:#fff; fill:#fff; }
.primary-cta:hover, .primary-cta:focus { background-color: #006AE3; border-color: #006AE3; color:#fff; fill:#fff; }
.cta-microcopy { display: block; text-align: center; font-size: 14px; margin-top: 10px; }

.secondary-cta { background-color: #fff; border-color: #fff; color:#0077FF; fill:#0077FF; }
.secondary-cta:hover, .secondary-cta:focus { background-color: #EFF6FF; border-color: #EFF6FF; color:#0077FF; fill:#0077FF; }
.secondary-cta .cta-label:after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35.756' height='7.421' viewBox='0 0 35.756 7.421'%3E%3Cg transform='translate(-419.021 -395.707)'%3E%3Cpath d='M-16507.229-15533h33.891' transform='translate(16927 15932.5)' fill='none' stroke='%230077FF' stroke-linecap='round' stroke-width='1.5'/%3E%3Cg transform='translate(133 -4621)'%3E%3Cpath d='M-16507.229-15533h4.918' transform='translate(5315.754 27125.914) rotate(34)' fill='none' stroke='%230077FF' stroke-linecap='round' stroke-width='1.5'/%3E%3Cpath d='M-16507.229-15533h4.918' transform='translate(22378.672 10221.463) rotate(-30)' fill='none' stroke='%230077FF' stroke-linecap='round' stroke-width='1.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }

.black-ghost-cta { background-color: transparent; border-color: #0A151E; color:#0A151E; fill:#0A151E; }
.black-ghost-cta:hover, .black-ghost-cta:focus { background-color: #0A151E; border-color: #0A151E; color:#fff; fill:#fff; }
.black-ghost-cta .cta-label:after { display: none }

.white-ghost-cta { background-color: transparent; border-color: #fff; color:#fff; fill:#fff; }
.white-ghost-cta:hover, .primary-cta:focus { background-color: #fff; border-color: #0A151E; color:#0A151E; fill:#0A151E; }
.white-ghost-cta .cta-label:after { display: none }

button.video-link {border: 0;background-color: transparent;color: #0046F0;position: relative; }
button.video-link:before { content:""; display:block; width:24px; height:24px; border-radius:50%; background-color:#0046F0; position:absolute; left:0; top:50%; margin-top:-12px; z-index:1; }
button.video-link:after { content:""; display:block; border-left:6px solid #fff; border-top:6px solid transparent; border-bottom:6px solid transparent; position:absolute; left:0; top:50%; margin-top:-6px; z-index:2; margin-left:10px;  }

button.video-link:hover { color:#0077FF; }
button.video-link:hover:before {background-color:#0077FF; }

.cta-microcopy { display: block; text-align: center; font-size: 14px; margin-top: 10px; }


/* CTAs Sizing
--------------------------------------------- */
.medium-cta { font-size:16px; padding:16px 48px 16px 32px  }
.medium-cta:hover { padding-right:  58px }
.cta.no-arrow.medium-cta,
.cta.no-arrow.medium-cta:hover { padding: 16px 32px }

/* CTAs Spacing
--------------------------------------------- */
.ctas-band > span { display:inline-block; vertical-align:top; margin-top:10px; padding-right:12px; }
.ctas-band > span:last-child { padding-right:0px; }


/*--------------------------------------------------------------
# Site Footer
--------------------------------------------------------------*/
.site-footer { background: #034732; width:100%; position:relative; z-index:2; padding: 24px 0 40px 0;  color: rgba(255, 255, 255, 0.8); border-top: 1px solid rgb(239, 246, 255, .3) }
.sf-top { border-bottom: 1px solid #313A41; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; padding-bottom: 30px }
.sf-logo-wrapper { padding: 20px 20px 0 0 }
.sf-follow { display: flex; align-items: center; width: 265px; padding-top: 30px; color: #EFF6FF; }
.sf-follow>span { margin-right: 10px;  }
.sf-follow>a { line-height: 1 }
.sf-follow>a:hover .li-bg { transition: all .3s ease }
.sf-follow>a:hover .li-bg { fill: #0077FF; stroke: #0077FF; }
.sf-bottom { font-size: 15px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.sf-copyright  {padding: 24px 24px 24px 0 }
.sf-separator { display: inline-block; width: 48px }
.sf-menu ul { display: flex; list-style: none; margin: 0; padding-left: 0; }
.sf-menu ul li {  }
.sf-menu ul li a { color: inherit !important; display: block; text-decoration: none; position: relative; padding: 0 12px; transition: all .3s ease }
.sf-menu ul li a:hover { color: #0077FF; text-decoration: underline  }
.sf-menu ul li:first-child a { padding-left: 0 }
.sf-menu ul li a:before { content: ''; position: absolute; display: block; width: 2px; height: 2px; background-color: #fff; border-radius: 2px; top: 50%; left: 0;
}
.sf-menu ul li:first-child a { padding-left: 0 }
.sf-menu ul li:first-child a:before { display: none }

@media screen and (max-width: 767px) {
	.sf-follow { width: auto }
	.sf-separator { display: block }
}

@media(max-width: 767px) {
	/* ------------ Typography ------------ */
	body { font-size:16px; }
	h1, .h1 { font-size:40px; } 
	h2, .h2 { font-size:32px; } 
	h3, .h3 { font-size:20px; }
	h4, .h4 { font-size:16px; }
	h5, .h5 { font-size:14px; }

	.small-heading h1, .small-heading .h1 { font-size: 24px;}
	.small-heading h2, .small-heading .h2 { font-size: 20px;}

	.xlarge-text { font-size:18px; line-height:1.5; }
	.large-text { font-size:16px; }
	.medium-text { font-size:14px; }
}
@media(max-width: 320px) {
	body { font-size:12px; }
}
