/*------>>> TABLE OF CONTENTS <<<-------
	- CUSTOM PROPERTIES
    - CUSTOM RESETS
    - FOUNDATION RESETS
    - BASE STYLES
	- COMMON STYLES
*/


/************************************
/*----------------------------------
/* CUSTOM PROPERTIES
/*----------------------------------
/*************************************/


:root {
/*----- Row Width -----*/
    --row-max-width-px:1132px;
    --row-max-width-rem:70.75rem;
/*----- Colors -----*/
    /*----- Base  -----*/
    --color-base:#092E42; /* Base Font Color */
    --color-base-rgb:9,46,66;
	--color-white:#fefefe;
	--color-white-rgb:254,254,254;
	--color-black:#0a0a0a;
	--color-black-rgb:10,10,10;
    /*----- Primary  -----*/
    --color-primary:#1879B9;
    --color-primary-rgb:24,121,185;
    --color-primary-dark:#13618B;
    --color-primary-dark-rgb:19,97,139;
    --color-primary-light:#7ACAFF;
    --color-primary-light-rgb:122,202,255;
    --color-primary-lighter:#D0EDFF;
    --color-primary-lighter-rgb:208,237,255;
    /*----- Secondary  -----*/
    --color-secondary:#1EBFB7;
    --color-secondary-rgb:30,191,183;
    /*----- Accents  -----*/
    --color-gray-accent:#EFF7FB;
    --color-gray-accent-rgb:239,247,251;
    --color-gray-accent-hsl:200,60%,96%;
    --color-gray-accent-dark:#CEE1EB;
    --color-gray-accent-dark-rgb:206,225,235;
    --color-gray-accent-darker:#95B3C4;
    --color-gray-accent-darker-rgb:149,179,196;
    --color-nav-accent01:#EFF7FB;
    --color-nav-accent01-rgb:239,247,251;
    --color-highlight:#fff3cd; /* <mark> */
    --color-highlight-alt:#feeaea; /* <code> */
/*----- Font Families -----*/
    --font-primary:'Manrope', sans-serif; /* 200 - 800 */
    --font-secondary:'DM Serif Display', serif; /* 400 */
/*----- Font Sizes -----*/
    --font-size-base:1rem; /* 16px Paragraphs and such */
    --font-size-small:0.875rem; /*14px, Colophon */
    --font-size-tiny:0.625rem; /* 10px, Colophon Captiva */
    --font-size-lead:1.25rem; /* 20px */
    --font-size-h6:1.125rem; /* 18px */
    --font-size-h5:1.125rem; /* 18px */
    --font-size-h4:1.75rem; /* 28px */
    --font-size-h3:1.875rem; /* 30px */
    --font-size-h2:2.5rem; /* 40px */
    --font-size-h1:3.75rem; /* 60px */
    --font-size-nav-01:1rem; /* 16px */
    --font-size-nav-02:1rem; /* 16px */
/*----- Border Radius -----*/
	--button-radius:30px;
/*----- Filters -----*/
    --blur-01:blur(2.5px);
/*----- Box Shadow -----*/
    --box-shadow-default:4px 8px 15px 0px rgba(var(--color-black-rgb),0.05);
    --box-shadow-default-015:4px 8px 15px 0px rgba(var(--color-black-rgb),0.15);
/*----- Spacing -----*/
    --letter-spacing-default:0.1em;
    --letter-spacing-large:0.3em;
    --letter-spacing-larger:0.8em;
    --margin-vert-default:1.5rem;
}
@media all and (min-width:64rem) { /*- 1024px and up -*/
	:root {
	/*----- Font Sizes
        --font-size-base:1rem;
        --font-size-lead:1.25rem;
        --font-size-h6:1.5rem;
        --font-size-h5:2rem;
        --font-size-h4:2.313rem;
        --font-size-h3:3rem;
        --font-size-h2:3.313rem;
        --font-size-h1:3.688rem; -----*/
        --font-size-nav-01:1.25rem; /* 20px */
        --font-size-nav-02:1rem; /* 16px */
	}
}


/************************************
/*----------------------------------
/* CUSTOM RESETS [Building on normalize.css being pulled with Foundation]
/*----------------------------------
/*************************************/


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, 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;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display:block;
}
html {
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
	scroll-behavior: smooth; /* Smooth Scrolling for any Anchor Links */
}
html, html a, body  {
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
html, body {
	height:auto;
	min-height:100%;
}
body {
	line-height:1;
	box-sizing:border-box;
	margin:0;
	overflow-x:hidden;
}
blockquote, q {
	quotes:none;
}
blockquote::before, blockquote::after, q::before, q::after {
	content:'';
	content:none;
}
::-moz-focus-inner {
    padding:0;
    border:0;
}
/*---> Box Model Reset <---*/
*, *::before, *::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*---> Form Resets <---*/
input, label, select, button, textarea {
	margin:0;
	display:inline-block;
	vertical-align:middle;
	white-space:normal;
	line-height:1;	
	/* Browsers have different default form fonts */
	font-size:13px;
	font-family:inherit;
}
/* These elements are usually rendered a certain way by the browser */
button, input[type=reset], input[type=button], input[type=submit], input[type=checkbox], input[type=radio], select {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
input[type=search] {
	-webkit-appearance:textfield;
    -webkit-box-sizing:content-box;
    box-sizing: content-box;
}
::-webkit-search-decoration {
	display:none;
}
button, input[type="reset"], input[type="button"], input[type="submit"] {
	/* Fix IE7 display bug */
	overflow:visible;
	width:auto;
}
::-webkit-file-upload-button {	
	padding:0;
	border:0;
	background:none;
}
textarea  {
	vertical-align:top;
	overflow:auto;
}
select[multiple] {
	vertical-align:top;
}


/************************************
/*----------------------------------
/* FOUNDATION RESETS
/*----------------------------------
/*************************************/


.row {
	max-width:var(--row-max-width-px);
	max-width:var(--row-max-width-rem);
}
/*---> Reset Card Styling <---*/
.card {
	display:block;
	margin-bottom:0;
	border:0;
	border-radius:0;
	background:transparent;
	box-shadow: none;
	overflow: initial;
	color: inherit;
}
.card > :last-child {
    margin-bottom:inherit;
}
/*---> Reset Table Scroll <---*/
.table-scroll table {
    min-width:100%;
}
/*---> Reset Button Styling <---*/
.button {
    display:initial;
    vertical-align:initial;
    margin:0;
    font-family:inherit;
    padding:0;
    -webkit-appearance: none;
    border:0;
    border-radius:0;
    transition:none;
    font-size:inherit;
    line-height:inherit;
    text-align:inherit;
    cursor:inherit;
    background-color:transparent;
    color: inherit;
}
/*---> Reset Callout Styling <---*/
.callout {
	position: relative;
	margin:0;
	margin-bottom:0;
	padding:0;
	border:0;
	border-radius:0;
	background-color:transparent;
	color:inherit;
}
/*---> Reveal Modal Dialog <---*/
.reveal-overlay {
    z-index:10005;
    background-color:rgba(var(--color-base-rgb), 0.90);
}
.reveal {
    margin-left:auto;
    margin-right:auto;
    padding:2.5rem 2.5rem 1.5rem; 
    border:0;
    border-radius:0;
    background-color:var(--color-white);
    box-shadow:none;
    width:90%;
    max-width:1100px;
}
@media screen and (max-width: 39.9375em) {
    .reveal {
        width:100%;
    }
}
.close-button {
    border-radius:0;
    padding:0;
    width:2.5rem;
    height:2.5rem;
    position:absolute;
    top:0;
	right:0;
	font-size:1.5rem;
	transition:all 200ms ease-in-out;
	-webkit-transition:all 200ms ease-in-out;
	cursor:pointer;
}
.close-button,
.close-button:is(:hover, :active, :focus, :focus-visible) {
	color:var(--color-white);
}
.close-button,
.close-button:is(:focus, :focus-visible) {
    background-color:var(--color-primary);
}
.close-button:is(:hover, :active) {
	background-color:var(--color-base);
}
.close-button:active {
    -webkit-box-shadow:inset 0 0 0 2px var(--color-base), inset 0 0 0 4px var(--color-white);
	-moz-box-shadow:inset 0 0 0 2px var(--color-base), inset 0 0 0 4px var(--color-white);
    box-shadow:inset 0 0 0 2px var(--color-base), inset 0 0 0 4px var(--color-white);
}
.close-button:is(:focus, :focus-visible) {
	border:0;
	outline:0;
}
.close-button:is(:focus-visible) {
    -webkit-box-shadow:inset 0 0 0 2px var(--color-primary), inset 0 0 0 4px var(--color-white);
	-moz-box-shadow:inset 0 0 0 2px var(--color-primary), inset 0 0 0 4px var(--color-white);
    box-shadow:inset 0 0 0 2px var(--color-primary), inset 0 0 0 4px var(--color-white);
}
.close-button span {
	color:inherit;
	font-size:inherit;
	position:absolute;
	left:0;
	right:0;
	top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
}
/*- Reveal with Video -*/
.reveal--video-modal {
    background:transparent;
}
.reveal--video-modal .close-button,
.close-button--for-video-modal {
    border-radius:100%;
}
@media all and (min-width:40rem) { /* 640px and up */
	.medium-uncollapse>.columns { 
		padding-right:.625rem;
		padding-left:.625rem;
	}
	.medium-shrink {
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		max-width: 100%;
	}
	.medium-expand {
		max-width:100%;
	}
	.medium-align-right {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
	.medium-align-left {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
	.medium-align-center {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.medium-align-justify {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.medium-align-spaced {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.medium-align-top {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.medium-align-self-top {
		-ms-flex-item-align: start;
		align-self: flex-start;
	}
	.medium-align-bottom {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.medium-align-self-bottom {
		-ms-flex-item-align: end;
		align-self: flex-end;
	}
	.medium-align-middle {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.medium-align-self-middle {
		-ms-flex-item-align: center;
		align-self: center;
	}
	.medium-align-stretch {
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.medium-align-self-stretch {
		-ms-flex-item-align: stretch;
		align-self: stretch;
	}
	.medium-align-center-middle {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-line-pack: center;
		align-content: center;
	}
}
@media all and (min-width:64rem) { /*- 1024px and up -*/
	.large-uncollapse>.columns { 
		padding-right:.625rem;
		padding-left:.625rem;
	}
	.large-shrink {
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		max-width: 100%;
	}
	.large-expand {
        -ms-flex:1 1 0px;
        flex:1 1 0px;
		max-width: 100%;
	}
	.large-align-right {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
	.large-align-left {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
	.large-align-center {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.large-align-justify {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.large-align-spaced {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.large-align-top {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.large-align-self-top {
		-ms-flex-item-align: start;
		align-self: flex-start;
	}
	.large-align-bottom {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.large-align-self-bottom {
		-ms-flex-item-align: end;
		align-self: flex-end;
	}
	.large-align-middle {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.large-align-self-middle {
		-ms-flex-item-align: center;
		align-self: center;
	}
	.large-align-stretch {
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.large-align-self-stretch {
		-ms-flex-item-align: stretch;
		align-self: stretch;
	}
	.large-align-center-middle {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-line-pack: center;
		align-content: center;
	}
}


/************************************
/*----------------------------------
/* BASE STYLES
/*----------------------------------
/*************************************/


body {
	font-family:var(--font-primary);
	font-weight:400;
	font-size:1rem;
	font-size:16px;
	color:var(--color-base);
	line-height:1;
}
/*- Set Vertical Spacing between Block Elements -*/
blockquote, dl, figure, form, h1, .like-h1, h2, .like-h2, h3, .like-h3, h4, .like-h4, h5, .like-h5, h6, .like-h6, hr, ol, p, table, ul {
    margin-bottom:var(--margin-vert-default);
}
a {
	font-weight:700;
    transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
}
a,
a:is(:focus, :focus-visible) {
	color:var(--color-primary);
}
a:is(:hover, :active){
	color:var(--color-primary-dark);
}
a:is(:active, :focus-visible) {
	text-decoration:underline;
}
a:is(:focus, :focus-visible) {
	outline:0; /* Remove Use Agent outer glow */
}
code {
	background-color:var(--color-highlight-alt);
	color:var(--color-base);
    padding-left:0.313rem;
    padding-right:0.313rem;
}
mark {
    background-color:var(--color-highlight);
    color:var(--color-black);
}
hr {
    margin-top:0; /* Reset from Foundation */
    border-bottom:1px solid var(--color-base);
}
p, dl, ol, ul, table, blockquote, blockquote p,
cite {
    font-size:var(--font-size-base);
	line-height: 1.5;
}
blockquote {
	color:var(--color-base);
    padding:1.875rem 2rem;
    background-color:var(--color-gray-accent);
    border:3px solid var(--color-gray-accent-dark);
    border-top:0;
    border-right:0;
    border-radius:var(--button-radius);
}
blockquote::before {
    display:block;
    width:30px;
    height:23px;
    margin-bottom:1.25rem;
	background:var(--color-primary);
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 43.54 32.73' width='30' height='23'%3E%3Cpath d='M31.61,14.76c4.93-.49,9.32,3.11,9.81,8.04,.36,3.66-1.54,7.17-4.81,8.86-8.48,4.38-16.2-5.63-14.49-13.92C23.91,7.85,32.28,.5,42.32,0h.99c.13,0,.23,.1,.23,.23v1.84c0,.13-.11,.23-.23,.24-5.4,1.16-11.35,6.56-11.7,12.46' /%3E%3Cpath d='M9.72,14.76c4.93-.49,9.32,3.11,9.81,8.04,.36,3.66-1.54,7.17-4.81,8.86C6.24,36.04-1.48,26.03,.24,17.74,2.03,7.86,10.39,.5,20.43,0h.99c.13,0,.23,.1,.23,.23v1.84c0,.12-.11,.22-.23,.24-5.4,1.16-11.35,6.56-11.7,12.46' /%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 43.54 32.73' width='30' height='23'%3E%3Cpath d='M31.61,14.76c4.93-.49,9.32,3.11,9.81,8.04,.36,3.66-1.54,7.17-4.81,8.86-8.48,4.38-16.2-5.63-14.49-13.92C23.91,7.85,32.28,.5,42.32,0h.99c.13,0,.23,.1,.23,.23v1.84c0,.13-.11,.23-.23,.24-5.4,1.16-11.35,6.56-11.7,12.46' /%3E%3Cpath d='M9.72,14.76c4.93-.49,9.32,3.11,9.81,8.04,.36,3.66-1.54,7.17-4.81,8.86C6.24,36.04-1.48,26.03,.24,17.74,2.03,7.86,10.39,.5,20.43,0h.99c.13,0,.23,.1,.23,.23v1.84c0,.12-.11,.22-.23,.24-5.4,1.16-11.35,6.56-11.7,12.46' /%3E%3C/svg%3E");
    content:"";
}
blockquote p,
blockquote cite {
	color:inherit;
}
blockquote p {
    font-size:1.25rem;
}
blockquote cite {
    font-size:1rem;
    font-weight:700;
    letter-spacing:var(--letter-spacing-default);
    text-transform:uppercase;
} 
i, /* Legacy */
em { /* Replaces Legacy <i> */
	font-style:italic;
}
strong {
	font-weight:bold;
}
small {
	font-size:80%;
    color:var(--color-base);
}
figcaption {
    margin-top:0.313rem;
    margin-bottom:0.313rem;
    font-size:var(--font-size-small);
    font-weight:400;
    font-style:italic;
    line-height:1.5;
}
h1, h2, h3, h4, h5, h6 {
	line-height:1.1;
}
h1, h2, h3 {
    font-family:var(--font-secondary);
    font-weight:400;
}
h1, h4 {
    color:var(--color-primary-dark);
}
h2, h5 {
    color:var(--color-primary);
}
h1 {
    font-size:var(--font-size-h1);
}
h2 {
    font-size:var(--font-size-h2);
}
h3 {
    font-size:var(--font-size-h3);
}
h4 {
    font-size:var(--font-size-h4);
    font-weight:300;
}
h5 {
    font-size:var(--font-size-h5);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:var(--letter-spacing-default);
}
h6 {
    font-size:var(--font-size-h6);
    font-weight:600;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    margin-top:0.313rem;
    margin-bottom:0.313rem;
    display:block;
    font-family:var(--font-primary);
    font-size:var(--font-size-h6);
    font-weight:700;
    color:inherit;
    letter-spacing:var(--letter-spacing-default);
	line-height:inherit;
    text-transform:uppercase;
}
ul li::marker, 
ol li::marker {
    color:var(--color-primary); 
}
ol li::marker {
    font-weight:bold;
}
dl dt {
    margin-bottom:0; /* Reset from Foundation */
}
dl dd:not(:last-of-type) {
    margin-bottom:0.5rem;
}
table {
    border-radius:0;
    -webkit-box-shadow:var(--box-shadow-default-015);
	-moz-box-shadow:var(--box-shadow-default-015);
	box-shadow:var(--box-shadow-default-015); 
}
table caption {
    font-size:var(--font-size-h6);
    color:var(--color-primary-dark);
    letter-spacing:var(--letter-spacing-default);
    text-transform:uppercase;
}
table tbody, table tfoot, table thead {
    border:1px solid var(--color-gray-accent-dark);
    background-color:var(--color-white);
}
table tr,
table tbody tr:nth-child(2n) {
    border-bottom:1px solid var(--color-gray-accent-dark);    
}
table tbody tr:nth-child(2n) {
    background-color:var(--color-gray-accent);
}
table thead {
    background:var(--color-primary);
    font-size:var(--font-size-h6);
    color:var(--color-white);
    letter-spacing:var(--letter-spacing-default);
    text-transform:uppercase;
}
table tfoot td, table tfoot th {
    padding:0.625rem 1.5rem;
}
table thead td, table thead th {
    padding:0.625rem;
}
table tfoot td, table tfoot th {
    font-weight:400;
}
table tbody,
table thead td, table thead th {
    text-align:center;
}
table tfoot {
    color:var(--color-base);
}
label,
fieldset legend {
	font-size:var(--font-size-base);
    font-weight:700;
    line-height:1;
	color:var(--color-primary-dark);
}
/* Should I remove the "form" before the selectors? */
form input:is([type=text], [type=email], [type=tel]),
form textarea,
form select,
select { 
    display:block;
    box-sizing:border-box;
    width:100%;
    height:46px;
    margin:0;
	padding:0.688rem 0.875rem;
    font-family:inherit;
    font-size:var(--font-size-base);
    font-weight:400;
    line-height:1.3;
	color:var(--color-base);
    border-radius:6px;
    transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
	appearance:none !important;
}
form input:is([type=radio], [type=checkbox]) {
	margin:0 0.313rem 0.250rem 0;
}
form textarea {
	height:auto;
}
form input:is([type=text], [type=email], [type=tel]),
form input:is([type=text], [type=email], [type=tel]):is(:active, :focus, :focus-visible),
form textarea,
form textarea:is(:active, :focus, :focus-visible),
form select,
form select:is(:active, :focus, :focus-visible),
select,
select:is(:active, :focus, :focus-visible) {
	background-color:var(--color-white);
	box-shadow:none;
}
form input:is([type=text], [type=email], [type=tel]),
form input:is([type=text], [type=email], [type=tel]):is(:focus),
form textarea,
form textarea:is(:focus),
form select,
form select:is(:focus),
select,
select:is(:focus) {
    border:1px solid var(--color-primary);
}
form input:is([type=text], [type=email], [type=tel]):active,
form textarea:active,
form select:active,
select:active {
	border:1px solid var(--color-primary-dark);
}
form input:is([type=text], [type=email], [type=tel], [type=radio], [type=checkbox]):is(:focus, :focus-visible),
form textarea:is(:focus, :focus-visible),
form select:is(:focus, :focus-visible),
select:is(:focus, :focus-visible) {
	outline:0;
}
form input:is([type=text], [type=email], [type=tel]):focus-visible,
form textarea:focus-visible,
form select:focus-visible,
select:focus-visible  {
	border:1px solid var(--color-primary-dark);
}
form select,
form select:is(:focus, :focus-visible),
select,
select:is(:focus, :focus-visible) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 998 582'%3E%3Cpath d='M998,83c0,8.67-3.33,16.33-10,23l-466,466c-6.67,6.67-14.33,10-23,10s-16.33-3.33-23-10L10,106C3.33,99.33,0,91.67,0,83s3.33-16.33,10-23L60,10C66.67,3.33,74.33,0,83,0s16.33,3.33,23,10L499,403,892,10c6.67-6.67,14.33-10,23-10s16.33,3.33,23,10l50,50c6.67,6.67,10,14.33,10,23Z' style='fill:%231879B9;' /%3E%3C/svg%3E");
	background-position:right center;
	background-repeat:no-repeat;
	background-size:12px 7px;
}
form input:is([type=radio], [type=checkbox]) {
    cursor:pointer;
}
form input:is([type=radio], [type=checkbox]):focus-visible {
    -webkit-box-shadow:0 0 0 2px var(--color-primary-dark);
	-moz-box-shadow:0 0 0 2px var(--color-primary-dark);
	box-shadow:0 0 0 2px var(--color-primary-dark);
}
form input:is([type=radio], [type=checkbox]):active {
    -webkit-box-shadow:0 0 0 2px var(--color-primary-dark);
	-moz-box-shadow:0 0 0 2px var(--color-primary-dark);
	box-shadow:0 0 0 2px var(--color-primary-dark);
}
input:is([type="submit"], [type="button"]),
button:is([type="button"]),
button {
	display:inline-block;
	width:auto;
	padding:0.688rem 1.375rem;	
	margin:0;		
	position:relative;
	font-size:var(--font-size-base);
	font-weight:600;
	line-height:1;
	text-align:center;
	border:0;
	border-radius:var(--button-radius);
	box-shadow:none;
	cursor:pointer;
    transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
}
input:is([type="submit"], [type="button"]),
input:is([type="submit"], [type="button"]):is(:hover, :active, :focus, :focus-visible),
button,
button:is(:hover, :active, :focus, :focus-visible) {
	color:var(--color-white);
}
input:is([type="submit"]),
input:is([type="submit"], input[type="button"]):is(:focus, :focus-visible),
button:is(:focus, :focus-visible) {
	background-color:var(--color-primary);
}
button,
input[type="button"] {
    background-color:var(--color-base);
}
input[type="submit"]:is(:hover, :active) {
    background-color:var(--color-base);
}
button:hover,
input[type="button"]:hover {
    background-color:var(--color-primary);
}
input:is([type="submit"], [type="button"]):active,
button:active {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
}
input:is([type="submit"], [type="button"]):focus-visible,
button:focus-visible {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
}
input[type="submit"]:is(:focus, :focus-visible),
button:is(:focus, :focus-visible),
input[type="button"]:is(:focus, :focus-visible),
[type="button"]:is(:focus, :focus-visible),
[type="submit"]:is(:focus, :focus-visible) {
	border:0;
	outline:0;
}
/*- Highlighting on Select [Click and Drag] -*/
::-moz-selection,
::selection {
	background-color:var(--color-primary);
	color:var(--color-white);
}


/************************************
/*----------------------------------
/* COMMON STYLES
/*----------------------------------
/*************************************/


/*---> Branding <---*/
.branding-link {
    display:block;
	width:100%;
}
.branding-link:hover {
}
.branding-link:active {
    -webkit-box-shadow:0 0 0 2px var(--color-primary-dark);
    -moz-box-shadow:0 0 0 2px var(--color-primary-dark);
    box-shadow:0 0 0 2px var(--color-primary-dark);
}
.branding-link:is(:focus, :focus-visible) {
    border:0;
    outline:0;
}
.branding-link:is(:focus-visible) {
    -webkit-box-shadow: 0 0 0 2px var(--color-primary);
    -moz-box-shadow: 0 0 0 2px var(--color-primary);
    box-shadow: 0 0 0 2px var(--color-primary);
}
.branding-link__logo {
    display:block;
	width:100%;
	height:auto;
	transition:all 200ms ease-in-out;
	-webkit-transition:all 200ms ease-in-out;
}
/*---> Buttons <---*/
.btn {
	display:inline-block;
	width:auto;
	padding:0.688rem 1.375rem;	
	margin:0;	
	position:relative;
	font-size:var(--font-size-base);
	font-weight:600;
	color:var(--color-white);
	line-height:1;
	text-align:center;
    border:1px solid transparent;
    border-radius:var(--button-radius);
    cursor:pointer;
    transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
}
.btn,
.btn:is(:hover, :active, :focus, :focus-visible) {
	color:var(--color-white);
}
.btn:is(:active, :focus, :focus-visible) {
	text-decoration:none;
}
.btn,
.btn:is(:focus, :focus-visible) {
	background-color:var(--color-primary);
}
.btn:is(:hover, :active) {
    background-color:var(--color-base);
}
.btn:active {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-base);
}
.btn:is(:focus, :focus-visible) {
    outline:0;
}
.btn:is(:focus-visible) {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
}
.btn--large {
    padding-top:1rem;
    padding-bottom:1rem;
}
.btn--ghost,
.btn--ghost:is(:focus, :focus-visible) {
    background-color:transparent;
}
.btn--ghost:not(:hover, :active) {
    color:var(--color-primary);
    border-color:var(--color-primary);
}
.btn--alt:not(.btn--ghost) {
    background-color:var(--color-secondary);
    color:var(--color-base);
}
.btn--alt:is(:hover, :active) {
    background-color:var(--color-primary-light);
}
.btn--alt:active {    
    -webkit-box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-primary-light);
	-moz-box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-primary-light);
	box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-primary-light);
}
.btn--alt:is(:focus-visible) {
    -webkit-box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-secondary);
	-moz-box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-secondary);
	box-shadow: 0 0 0 2px var(--color-base), 0 0 0 4px var(--color-secondary);
}
.btn--alt.btn--ghost:not(:hover, :active) {
    background-color:transparent;
    color:var(--color-secondary);
    border-color:var(--color-secondary);
}
.btn--alt.btn--ghost:is(:hover, :active) {
    color:var(--color-base);
}
/*- Button List -*/
.btn-list {
    margin-left:0;
    margin-bottom:calc(var(--margin-vert-default) - 0.625rem);
	list-style:none;
    display:flex;
    flex-wrap:wrap;    
    align-items:center;
}
.btn-list__item {
    line-height:1;
    margin-bottom:0.625rem;
}
.btn-list__item:not(:last-of-type) {
	margin-right:0.625rem;
}
.btn-list__item::before {
    display:none;
}
.btn-list--align-center {
    justify-content:center;
}
/*---> Video Play Button <---*/
.has-play-btn {
	display:inline-block;
	line-height:0;
	position:relative;
	background:transparent !important;
	isolation:isolate;
}
.has-play-btn:is(:active, :focus-visible) {
	text-decoration:none;
}
.has-play-btn img {
	z-index:1;
}
.has-play-btn::before {
	display:block;
	width:80px;
	height:80px;
	background:var(--color-primary);
	content:"";
	position:absolute;
	left:50%;
	top:50%;
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	border-radius:100%;
	overflow:hidden;
    transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
	z-index:2;
}
.has-play-btn:is(:hover, :active)::before {
	background:var(--color-primary-dark);
}
.has-play-btn:active::before {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
}
.has-play-btn:is(:focus, :focus-visible)::before {
    outline:0;
}
.has-play-btn:is(:focus-visible)::before {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	-moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
	box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
}
.has-play-btn::after {
	display:block;
	width:27.249px;
	height:30.878px;
	content:"";
	background:var(--color-white);
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27.249' height='30.878' viewBox='0 0 27.249 30.878'%3E%3Cpath d='M192.695,186.973l23.422-13.523a1.914,1.914,0,0,0,0-3.315l-23.422-13.523a1.914,1.914,0,0,0-2.871,1.657v27.045a1.914,1.914,0,0,0,2.871,1.657' transform='translate(-189.824 -156.354)' /%3E%3C/svg%3E%0A");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27.249' height='30.878' viewBox='0 0 27.249 30.878'%3E%3Cpath d='M192.695,186.973l23.422-13.523a1.914,1.914,0,0,0,0-3.315l-23.422-13.523a1.914,1.914,0,0,0-2.871,1.657v27.045a1.914,1.914,0,0,0,2.871,1.657' transform='translate(-189.824 -156.354)' /%3E%3C/svg%3E%0A");
	position:absolute;
	left:calc(50% + 0.188rem);
	top:50%;
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	z-index:3;
}
/*---> Checklist <---*/
.checklist {
	list-style:none;
    margin-left:2.125rem;
}
.checklist__item {
	position: relative;
}
.checklist__item::before {
    margin:0;
	display:block;	
	width:13px;
	height:9px;
	content:"";
	position:absolute;
	top:0.5rem;
    left:-1.75rem;
    z-index:2;
	background:var(--color-white);
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12.58 8.89' width='12.58' height='8.89'%3E%3Cg%3E%3Cpath class='cls-1' d='M4.44,8.89h0c-.2,0-.39-.08-.53-.22L.22,4.97c-.29-.29-.29-.77,0-1.06s.77-.29,1.06,0l3.16,3.16L11.3,.22c.29-.29,.77-.29,1.06,0s.29,.77,0,1.06l-7.39,7.39c-.14,.14-.33,.22-.53,.22Z' /%3E%3C/g%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12.58 8.89' width='12.58' height='8.89'%3E%3Cg%3E%3Cpath class='cls-1' d='M4.44,8.89h0c-.2,0-.39-.08-.53-.22L.22,4.97c-.29-.29-.29-.77,0-1.06s.77-.29,1.06,0l3.16,3.16L11.3,.22c.29-.29,.77-.29,1.06,0s.29,.77,0,1.06l-7.39,7.39c-.14,.14-.33,.22-.53,.22Z' /%3E%3C/g%3E%3C/svg%3E");
}
.checklist__item::after {
    width:25px;
    height:25px;
    content:"";
    background-color:var(--color-primary);
    border-radius:100%;
	position:absolute;
	top:0rem;
	left:-2.125rem;
    z-index:1;
}
.checklist__item:not(:last-of-type) {
    margin-bottom:var(--margin-vert-default);
}
/*---> Social List <---*/
.social-list {
    margin-left:0;
	display:flex;
    flex-flow:row wrap;
	list-style:none;
}
.social-list--centered {
    justify-content:center;
}
.social-list__item {
	line-height:1;
}
.social-list__item:not(:last-of-type) {
	margin-right:1rem;
}
.social-list__item::before {
    display:none;
}
.social-link {
	display:inline-block;
}
.social-link:active {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
    -moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
    box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary-dark);
}
.social-link:is(:focus, :focus-visible) {
    border:0;
    outline:0;
}
.social-link:is(:focus-visible) {
    -webkit-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
    -moz-box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
    box-shadow: 0 0 0 2px var(--color-white), 0 0 0 4px var(--color-primary);
}
.social-link__icon {
	fill:var(--color-primary);
	transition:all 200ms ease-in-out;
    -webkit-transition:all 200ms ease-in-out;
}
.social-link:is(:hover, :active) .social-link__icon {
    fill:var(--color-primary-dark);
}
.social-link:is(:focus-visible) .social-link__icon {
    fill:var(--color-primary);
}
/* Alternate Circle Social Links */
.social-list__item--has-round:not(:last-of-type) {
	margin-right:0.625rem;
}
.social-link--is-round {
	width:50px;
	height:50px;
	border-radius:100%;
	background-color:var(--color-primary);
	position:relative;	
}
.social-link--is-round:is(:hover, :active) {
	background-color:var(--color-primary-dark);
}
.social-link--is-round:is(:focus-visible) {
	background-color:var(--color-primary);
}
.social-link__icon--for-round {
	position:absolute;
    inset:0;
    margin:auto;
}
.social-link__icon--for-round,
.social-link--is-round:is(:hover, :active, :focus, :focus-visible) .social-link__icon--for-round {
	fill:var(--color-white);
}
/*---> Style Guide Specific <---*/
.style-guide-header {
	position:relative;
	padding:1.5rem 0 0.5rem;
	margin-bottom:calc(var(--margin-vert-default) + 0.938rem);
}
.style-guide-header:before {
	display:block;
	margin:0 auto;
	width:100vw;
	height:100%;
	content:"";
	position:absolute;
	top:0;
	left:-50vw;
	right:-50vw;
	background-color:var(--color-gray-accent);
	z-index:-1;
}
.code-block {
	margin-bottom:calc(var(--margin-vert-default) + 0.938rem);
}
.code-block-live,
.code-block-color {
	border:1px dotted var(--color-base);
	margin-bottom:calc(var(--margin-vert-default) + 0.938rem);
	-webkit-box-shadow:var(--box-shadow-default-015);
	-moz-box-shadow:var(--box-shadow-default-015);
	box-shadow:var(--box-shadow-default-015);   
}
.code-block-live {
	padding:1.5rem 1.5rem 0.5rem;
}
.code-block-color {
	padding:0 1.5rem 0.5rem;
}
.code-block-color div[class^="background"] {
	margin-left:-1.5rem;
	margin-right:-1.5rem;
	margin-bottom:calc(var(--margin-vert-default) + 0.938rem);
}
.code-block-color div:is(.background-white, .background-gradient-01) {
    border-bottom:1px solid var(--color-gray-accent);
} 
pre[class*="language-"]::after, pre[class*="language-"]::before {
    display:none !important;
}
.dev-hint {
	background-color:#e8f5e1;
	border:1px solid #ADDB94;
	padding:1.5rem 1.5rem 0.5rem;
	margin-bottom:calc(var(--margin-vert-default) + 0.938rem);
}
.dev-hint h6,
.dev-hint p,
.dev-hint a:not(:hover) {
	color:#244116;
}
.dev-hint a:not(.anchor) {
    text-decoration:underline;
    text-decoration-style:dashed;
}
.dev-hint code {
    background-color:rgba(36,65,22,0.15);
}