@charset "UTF-8";
/* Web Solutions 4.0 Compatible */


:root {

	--ws-max-content-width: calc(70em + 2 * var(--ws-gap));
	--ws-gap: clamp(1.25em, 1.163em + 0.38vw, 1.5em);
	--ws-transition: all .3s ease;

	--ws-light:  #C3C3C3;
	--ws-light-2: #CBDBE8;

	--ws-blue: #5DAADB;
	--ws-blue-2: #2985C0;
	--ws-blue-3: #CCE4F3;
	--ws-lt-blue-4: #DFF0FE;

	--ws-green: #068449;
	--ws-dk-green: #005C31;
	--ws-lt-green: #E7FFF1;

	--ws-purple: #3F4675;
	--ws-purple-rgb: 63,70,117;

	--ws-lt-purple: #C298C5;

	--ws-violet: #764C74;

	--ws-yellow: #F7EC3E;
	--ws-yellow-2: #F2F5C4;
	--ws-yellow-3: #F7F9DD;
	--ws-lt-yellow: #FEFEDD;

	--ws-dk-yellow: #8B7E3C;
	--ws-dk-yellow-rgb: 139,126,60;

}



/* open-sans-regular - latin */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	src: url('/fonts/open-sans-v35-latin-regular.woff2') format('woff2');
}
/* open-sans-italic - latin */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 400;
	src: url('/fonts/open-sans-v35-latin-italic.woff2') format('woff2');
}
/* open-sans-600 - latin */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	src: url('/fonts/open-sans-v35-latin-600.woff2') format('woff2');
}
/* open-sans-600italic - latin */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 600;
	src: url('/fonts/open-sans-v35-latin-600italic.woff2') format('woff2');
}
/* open-sans-700 - latin */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	src: url('/fonts/open-sans-v35-latin-700.woff2') format('woff2');
}


html {
	box-sizing: border-box;
}

*, *:before, *:after {
	box-sizing: inherit;
}

body {
	background: var(--ws-lt-purple);
	margin: 0;
	overflow-x: hidden;
	padding: 0;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
}

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

ul {
	padding-left: 0;
}

ul li {
	list-style: none;
}

html, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt,
dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, hr {
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
}

table {
	border-collapse: collapse;
}

td, th {
	empty-cells: show;
	text-align: left;
	vertical-align: middle;
}

#skipNavigation {
	background: #FFF;
	color: #000;
	left: 0;
	padding: .5em;
	position: absolute;
	top: -1000px;
	z-index: 10;
}

#skipNavigation:focus {
	top: 0;
}



/* FONTS ------------------------------ */

body, .text, input, button, select, textarea {
	font-family: 'Open Sans', sans-serif;
	line-height: 1.5;
	color: #666;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Open Sans Regular */
.consultant h2 span {
	font-style: normal;
	font-weight: 400;
}

/* Open Sans Regular Italic */
h1>span, .categoryMenu span {
	font-style: italic;
	font-weight: 400;
}

/* Open Sans Semibold */
#mainnav a, #mobilenav a, a>h2, a>h3, .pdfCallout a, #sidenav li.on>a, .partners-wrap small {
	font-style: normal;
	font-weight: 600;
}

/* Open Sans Semibold Italic */
blockquote p, blockquote :is(cite, footer) {
	font-style: italic;
	font-weight: 600;
}

/* Open Sans Bold */
h1, h2, h3, h4, h5, h6 {
	font-style: normal;
	font-weight: 700;
}



/* TYPOGRAPHY ------------------------------ */

h1, h2, h3, h4, h5 , h6 {
	color: var(--ws-purple);
}

h1 { font-size: 1.125em;}
h2, .highlight h1 { font-size: 1.0625em; }
h3 { font-size: 1em; }
h4, p, .text { font-size: .9375em; }
h5 { font-size: .875em; }

a {
	color: var(--ws-green);
	text-decoration: none;
}

.resources-consultant-s-corner-webinars .content a>em>strong {
	color: var(--ws-green) !important;
}

.content a {
	text-decoration: underline;
}

p,h1,h2,h3,h4,h5, h6, hr,.content ul,.contentEditor ul,blockquote,dd,ol {
	margin-block: 0 1rem;
}

h1, h2, h3, h4, h5, h6, th {
	line-height: 1.2;
}

:is(p, ul, ol, blockquote, .highlight) + :is(h2, h3, h4, h5, h6) {
	margin-top: 2em;
}


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

b, strong {
	font-weight: 700;
}

u {
	text-decoration: none;
}

hr {
	border: 0;
	border-top: 1px solid rgba(0,0,0,.15);
	margin: 1em 0;
	padding-top: 1px;
}

sup, sub {
	font-size: .6em;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: .5ex;
}

.clearFloats {
	clear: both;
}

.nobr {
	white-space: nowrap;
}

.twoCol, .threeCol, .resCol {
	column-gap: 2em;
}

.req {
	color: #C00;
}

figcaption {
	font-size: .8125em;
	text-align: center;
}

.content :is(.photoright, .photoleft) {
	height: auto;
	max-width: min(50%, 21.875em);
}

.content :is(.photoright, .photoleft) img {
	border: 1px solid #fff;
	box-shadow: 3px 6px 8px 0 rgba(60,66,114,.2);
	float: none;
	height: auto;
	margin: 0;
	max-width: 100%;
}

.content figure.photo-fullwidth {
	text-align: center;
	width: 100%;
}

.content figure.photo-fullwidth img {
	width: auto;
}

.photoright {
	clear: right;
	float: right;
}

.photoleft {
	clear: left;
	float: left;
}

.muted {
	opacity: 0.5;
}

small, .textSm {
	display: block;
	font-size: .8em;
}

.content table {
	width: 100%;
}


blockquote {
	color: var(--ws-purple);
	float: right;
	line-height: 1.1;
	margin: 1em 0 1em 3em;
	max-width: 50%;
	text-align: right;
	width: 18.75em;
}

blockquote p {
	color: inherit;
	font-size: 1em;
	quotes: '\201c' '\201d';
}

blockquote :is(cite, footer) {
	color: inherit;
	font-size: .9375em;
}

blockquote cite::before,
blockquote footer::before {
	content: '- ';
}

blockquote p:first-of-type::before {
	content: open-quote;
}

blockquote p:last-of-type::after {
	content: close-quote;
}


.highlight,
.content .highlight {
	background: #eaf1f6;
	border-radius: .5em;
	box-shadow: inset 0 1px 3px 1px rgba(60,66,114,.2);
	clear: both;
	margin: 2em 0;
	padding: 2em 1.5em;
}

.highlight .highlight-content :first-child {
	margin-top: 0;
}

.highlight .highlight-content :last-child,
.highlight .highlight-content ul:last-child li:last-child {
	margin-bottom: 0;
}



/* breadcrumbs */
.breadcrumb {
	margin-bottom: 1em;
}

.breadcrumb a::after {
	content: "\00A0\00A0\203A\00A0";
}

/* content */
.content {
	word-wrap: break-word;
}


.shareIcons {
	display: inline-block;
	overflow: auto;
	position: relative;
}

.shareIcons a {
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border-radius: .2em;
	display: block;
	float: left;
	height: 20px;
	margin: 0 .5em 1em 0;
	width: 20px;
}

.shareFacebook {
	background-color: #1877F2;
	background-image: url('/images/icons/social/facebook.svg');
}

.shareTwitter {
	background-color: #1DA1F2;
	background-image: url('/images/icons/social/twitter.svg');
}

.shareLinkedin {
	background-color: #0A66C2;
	background-image: url('/images/icons/social/linkedin.svg');
}

/* do people still use google+ ? */
.shareGoogle {
	background-color: #DD4B39;
	background-image: url('/images/icons/social/google-plus.svg');
}

/* list */
.content :where(ul, ol) li {
	font-size: .9375em;
}

.content :is(ol, ul) :is(ol, ul) {
	margin-top: .5em;
}

.content ol ol li {
	list-style: lower-alpha;
	margin: 0 0 .5em;
}

.content ul li {
	font-size: .9375em;
	margin: 0 0 .5em;
	padding-left: 1.75em;
	position: relative;
}

.quick-links li>a::before,
.content ul li::before {
	border-radius: 50%;
	content: '';
	height: .375rem;
	left: .75em;
	position: absolute;
	transition: var(--ws-transition);
	width: .375rem;
}

.content ul li::before {
	background: var(--ws-blue);
	top: .5em;
}

.content ul li ul li:before {
	opacity: .5;
}

.content :is(ol, ul) li li {
	font-size: 1em;
}


/* addon classes */
.clearfix::after {
	clear: both;
	content: '';
	display: table;
}

.videoContainer {
	aspect-ratio: 16 / 9;
	line-height: 0;
	position: relative;
	width: 100%;
}

.videoContainer.ratio-4-3 {
	aspect-ratio: 4 / 3; /* 4:3 full-frame */
}

/* Build out the space for videos when editing a CMS page */
#tinymce .videoContainer { aspect-ratio: 16 / 9 !important; }
#tinymce .videoContainer.ratio-4-3 { aspect-ratio: 4 / 3 !important; }


.videoContainer iframe,
#tinymce .mce-preview-object {
	border: 0;
	bottom: 0;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

#wysiwygBody {
	background: #FFF;
}

.wsNew {
	background-color: #FFC700;
	color: #222;
	display: inline-block;
	font-size: .7em;
	font-style: italic;
	height: 1.5em;
	line-height: 1.5em;
	margin: .3em 0;
	overflow: visible;
	padding: 0 .3em;
	vertical-align: top;
}

td.right, th.right {
	text-align: right;
}



/* FORMS AND INPUTS ------------------------------ */
input, button, select, textarea {
	font-size: 1em;
	line-height: 1.2;
}

input:is([type="button"], [type="date"], [type="submit"], [type="text"], [type="reset"], [type="password"], [type="tel"], [type="number"], [type="email"], [type="url"], [type="search"]), textarea, select {
	border-radius: 0;
	outline: none;
}

input:is([type="text"], [type="date"], [type="password"], [type="tel"], [type="number"], [type="email"], [type="url"], [type="search"]), textarea, select {
	background-color: #FFF;
	border: 1px solid var(--ws-light);
	font-size: .875em;
	padding: .5em 1em;
	width: 100%;
}

select {
	background: #FFF url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 285 285'><path d='M282 76.5l-14.2-14.3a9 9 0 0 0-13.1 0L142.5 174.4 30.3 62.2a9 9 0 0 0-13.2 0L3 76.5a9 9 0 0 0 0 13.1l133 133a9 9 0 0 0 13.1 0l133-133a9 9 0 0 0 0-13z' style='fill:%23666'/></svg>") no-repeat calc(100% - .75em) center / .75em auto;
	padding-right: 1.5em;
	width: auto;
	-webkit-appearance: none;
	-moz-appearance: none;
}

select::-ms-expand {
	display: none;
}

:is(input:is([type="text"], [type="date"], [type="password"], [type="tel"], [type="number"], [type="email"], [type="url"], [type="search"]), textarea):focus {
	background-color: #FFF;
	border-color: #333;
}

select:focus {
	background-color: #FFF;
	border-color: #333;
}

textarea {
	display: block;
}

select option {
	padding: 0 .2em;
}


button, .button, input:is([type="button"], [type="submit"], [type="reset"]) {
	background: var(--ws-purple);
	border: 1px solid var(--ws-purple);
	color: #FFF;
	cursor: pointer;
	display: inline-block;
	font-size: .875em;
	line-height: 1.2;
	padding: .5em 1em;
	text-decoration: none;
}

.content :is(button, .button) {
	text-decoration: none;
}

:is(button, .button).white {
	background: #FFF;
	border-color: var(--ws-violet);
	color: var(--ws-violet);
}

:is(button, .button).violet {
	background: var(--ws-violet);
	border-color: var(--ws-violet);
	color: #FFF;
}

:is(button, .button).green {
	background: var(--ws-green);
	border-color: var(--ws-dk-green);
	color: #FFF;
}


input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

.button {
	display: inline-block;
}

button img {
	height: 1em;
	vertical-align: top;
	width: auto;
}

input.bulky, .bulky {
	font-size: 1.2em;
	padding: .4em .6em;
}

.formTable,
.formTable :is(input:is([type="text"], [type="password"], [type="tel"], [type="number"], [type="email"], [type="url"], [type="search"]), table, textarea, select) {
	width: 100%;
}

.formTable table td {
	padding-bottom: 0;
}

.formTable.right td:first-child {
	text-align: right;
	width: 1%;
}

.formTable.right td {
	width: auto;
}

.subjClass {
	display: none !important;
}

#Captcha label {
	padding-left: 0;
}

:is(.formEdit, .formBuilder) select {
	width: 40%;
}

#ContactForm label {
	display: block;
	margin: 0 0 .25em;
}


/* MANAGEMENT ------------------------------ */
hr + .manage {
	margin-top: -1em;
}

.manage {
	border-bottom: 1px solid rgba(0,0,0,.2);
	line-height: 1.3;
	width: 100%;
}

.manage th {
	border-bottom: 1px solid rgba(0,0,0,.2);
	text-align: left;
}

.manage th.right {
	text-align: right;
}

.manage th.sort {
	cursor: pointer;
}

.manage th.sort img {
	margin-left: 5px;
}

.manage th img {
	bottom: -2px;
	position: relative;
}

.manage td,.manage th {
	padding: 5px 5px 5px 0;
}

.manage td:first-child {
	padding-left: .8em;
}

.manage img.preload {
	border: solid 1px #fff;
	display: none;
	position: absolute;
	top: 0;
	z-index: 10;
}

.manage td.icons img {
	bottom: -2px;
	margin-left: 5px;
	position: relative;
}

.manage td:first-child.icons img {
	margin-left: 0;
}

.manage td:first-child.icons {
	padding-inline: 3px;
}

.manage td:nth-child(2) {
	hyphens: auto;
	overflow-wrap: break-word;
	word-break: break-word;
	word-wrap: break-word;
}

.manage td.icons a:first-child img {
	margin-left: 0;
}

.manage td.icons input {
	bottom: 2px;
	margin-left: 5px;
	position: relative;
}

.manage .hidden {
	color: #900;
	font-style: italic;
}

.manageButton {
	padding: 10px 0;
	text-align: right;
}

.alternate tbody tr:nth-child(even), .even {
	background: #FFF;
}

.alternate tbody tr:nth-child(odd), .odd {
	background: rgba(0,0,0,.06);
}

.manage + hr, .manage + .manageLinks + hr {
	margin-top: 50px;
}

.manageLinks {
	margin-top: 10px;
}

.manageLinks select {
	max-width: 20em;
}

.manageLinks a {
	white-space: nowrap;
}

.manageLinks a img {
	bottom: -2px;
	position: relative;
}

.manageLinks button {
	margin-left: 5px;
}

.manageButtons {
	padding: 10px 0;
	text-align: right;
}

.wsReturnToButton {
	float: right;
	margin-top: -3.5em;
}

.manage.rightFirstChild td:first-child {
	text-align: right;
}

.sortRow th {
	cursor: pointer;
}

.manageEllipsis {
	display: inline-block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 200px;
}

.manage colgroup col {
	width: auto !important;
}


/* pagination */
.pagination {
	font-size: .95em;
	text-align: right;
}




/* HEADER ------------------------------*/
body>header {
	background: #FFF url('/images/bg-header.gif') repeat-x center 0;
	border-bottom: 1px solid #FFF;
}


#ancillary .gt_switcher_wrapper {
	font-size: 1em;
	position: relative !important;
	top: auto !important;
	right: auto !important;
}

#ancillary .gt_container--hich1m .gt_switcher {
	width: 12em;
}

#ancillary .gt_container--hich1m .gt_switcher .gt_option {
	position: absolute;
}

#ancillary .gt_container--hich1m .gt_switcher .gt_selected a {
	background: #FFF;
	border: 1px solid var(--ws-light);
	color: #000;
	font-size: .875em;
	line-height: 1.2;
	padding: .625em .5em;
	width: 9.125rem;
}

#ancillary .gt_container--hich1m .gt_switcher .gt_option a {
	color: #000;
	display: block;
	font-size: 1em;
}

#ancillary .gt_container--hich1m .gt_switcher .gt_selected a::after {
	top: 8px;
}



/* MAIN ------------------------------ */
main {
	background: #FFF;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

main.fullWidth .wrap {
	max-width: calc(55em + 2 * var(--ws-gap))
}

body:not(.home) main {
	box-shadow: inset 0 7px 14px -7px rgba(51,51,51,.5);
}


.contentEditor {
	background: #FFF;
	min-width: 100%;
}




/* WRAP ------------------------------ */

.wrap {
	margin-inline: auto;
	max-width: var(--ws-max-content-width);
	padding-inline: var(--ws-gap);
	width: 100%;
}




/* SIDENAV ------------------------------ */

#sidenav {
	margin: 0 0 3em;
	overflow: hidden;
	width: 100%;
}

#sidenav li {
	height: 1%;
	overflow: hidden;
}

#sidenav li a {
	display: block;
	line-height: 1.1;
	padding: .5em 1em;
}

#sidenav li a:hover,#sidenav li a:active {
	background: #e5e5e5;
}

#sidenav>ul>li>a {
	font-size: .9375em;
	text-transform: uppercase;
}

#sidenav li.on>a {
	background: var(--ws-yellow-2);
	color: var(--ws-violet);
	display: block;
	font-size: .875em;
	padding-block: .75em;
}

#sidenav li.on>a:is(:hover, :focus) {
	background: var(--ws-violet);
	color: #FFF;
}

#sidenav li.on ul {
	border-top: 1px solid #d8d9e3;
}

#sidenav li.on ul li {
	border-bottom: 1px solid var(--ws-light-2);
}

#sidenav li.on ul li a {
	color: var(--ws-purple);
	font-size: .875em;
	font-weight: 600;
	padding: .5em 1em .5em 1.75em;
}

#sidenav li ul li a:is(:hover,:focus),
#sidenav li ul li.on a:is(:hover, :focus) {
	color: #FFF;
	background: var(--ws-purple);
}

#sidenav li ul li.on a {
	background: var(--ws-blue);
	color: #FFF;
	text-transform: none;
}

#sidenav li ul li.on ul {
	border: 0;
}

#sidenav li ul li.on ul li {
	border: 0;
}

#sidenav li ul li.on ul li a {
	background: #f5f8fa;
	color: var(--ws-blue-2);
	font-size: .87em;
	padding: .5em 1.25em .5em 2.5em;
}


#sidenav li ul li ul li a:focus,
#sidenav li ul li.on ul li a:is(:hover, :focus),
#sidenav li ul li.on ul li.on a:is(:hover, :focus) {
	background: var(--ws-blue-2);
	color: #FFF;
}

#sidenav li ul li.on ul li.on a {
	background: var(--ws-blue-3);
}

#sidenav li ul li.on ul li.on ul li a {
	background: #f5f8fa;
	color: #7e85b9;
	font-size: .8em;
	padding-left: 3.75em;
}

#sidenav li ul li.on ul li.on ul li a:hover,
#sidenav li.on ul li.on ul li a:focus {
	background: #fff;
	color: #000;
}

#sidenav li ul li.on ul li ul li.on a,
#sidenav li ul li.on ul li ul li.on a:focus {
	background: #fff;
	color: #764d75;
}

#sidenav li ul li.on ul li ul li.on a:hover {
	color: #000;
}



/* GRID COLUMNS ------------------------------ */
.ws-grid,
.ws-grid-inner {
	display: grid;
	gap: var(--ws-gap);
}

.ws-grid {
	grid-template-columns:
	minmax( 0, 1fr )
	[wrap-start]
	repeat( var(--ws-column-count), minmax( 0, calc( ( ( var(--ws-max-content-width) - ( ( var(--ws-column-count) - 1 ) * var(--ws-gap) ) ) / var(--ws-column-count) ) ) ) )
	[wrap-end]
	minmax( 0, 1fr );
}

.ws-grid-inner {
	grid-template-columns: [wrap-start] repeat( var(--ws-column-count), minmax(0,1fr) ) [wrap-end];
}




/* FLEXBOX COLUMNS ------------------------------ */
ul.ws-flex {
	display: flex;
	flex-wrap: wrap;
	gap: var(--ws-gap);
}

ul.ws-flex li {
	width: calc( 100% / var(--ws-column-count) - ( var(--ws-gap) * ( var(--ws-column-count) - 1 ) / var(--ws-column-count) ) );
}



/* PAGEHEADER ------------------------------ */
.pageHeader {
	height: auto;
	margin-bottom: 2em;
	width: 100%;
}



/* FORM ERROR ------------------------------ */
.formError {
	background-color: #000;
	border: 0;
	border-radius: 10px;
	box-shadow: 0 2px 2px #333;
	color: #FFF;
	display: none;
	margin: 0 0 2px;
	padding: .3125em .625em;
	z-index: 5;
}

.formError p {
	font-size: .9em;
	margin: 0;
}

.formError em {
	border: 10px solid;
	border-color: #000 transparent transparent;
	bottom: -1.0625em;
	display: block;
	height: 0;
	left: 2.5em;
	position: absolute;
	width: 0;
}



/* FOOTER ------------------------------ */

body>footer {
	background: var(--ws-lt-purple);
	color: var(--ws-violet);
	padding-block: 1rem;
	position: relative;
	z-index: 0;
}

body>footer a {
	color: var(--ws-violet);
}

body>footer :is(a.on, .on>a) {
	color: #FFF;
	text-decoration: none;
}

body>footer>.wrap {
	clear: both;
	overflow: visible;
}

body>footer .wrap>* {
	font-size: .875em;
}




/* TRANSITIONS ------------------------------ */
a, a *, button, .button, input:is([type="button"], [type="submit"], [type="reset"]),
:is(input, select, textarea):focus, #alertApp, #alertDesc, #navContainer li, #popover .close {
	transition: var(--ws-transition);
}

.stop-transitions * {
	transition: none !important;
}




/* HERO / ROTATOR ------------------------------ */
.hero {
	background: url('/images/bg-rotator.png') repeat center;
}

.hero::after {
	bottom: 0;
	box-shadow: inset 0 7px 14px -7px rgba(var(--ws-purple-rgb), .5);
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

.hero .wrap {
	max-width: 70em;
	position: relative;
	padding: 0;
}

.hero button.pause {
  background-color: var(--ws-purple);
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23FFFFFF" d="M272 63.1l-32 0c-26.51 0-48 21.49-48 47.1v288c0 26.51 21.49 48 48 48L272 448c26.51 0 48-21.49 48-48v-288C320 85.49 298.5 63.1 272 63.1zM80 63.1l-32 0c-26.51 0-48 21.49-48 48v288C0 426.5 21.49 448 48 448l32 0c26.51 0 48-21.49 48-48v-288C128 85.49 106.5 63.1 80 63.1z"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: .625em auto;
  border: 1px solid #FFF;
	border-radius: .25em;
  bottom: 1em;
  cursor: pointer;
  display: table;
  left: 1em;
  opacity: .875;
  padding: .875em;
  position: absolute;
  z-index: 3;
}

.hero button.pause.paused {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="%23FFFFFF" d="M361 215C375.3 223.8 384 239.3 384 256C384 272.7 375.3 288.2 361 296.1L73.03 472.1C58.21 482 39.66 482.4 24.52 473.9C9.377 465.4 0 449.4 0 432V80C0 62.64 9.377 46.63 24.52 38.13C39.66 29.64 58.21 29.99 73.03 39.04L361 215z"/></svg>');
}


/* HOMEPAGE WIDGETS RIBBON ------------------------------ */

.homepage-widgets {
	padding-block: 3em; /* 320 - 1400 */
}

.quick-links span.new {
	color: #FF0000;
	display: inline-block;
	margin-left: .25em;
}

.quick-links li {
	margin: 0 0 .5em;
}

.quick-links li>a {
	border-radius: .25em;
	display: block;
	font-size: .9375em;
	padding: .25em .5em .25em 1.75em;
	position: relative;
}

.quick-links li>a::before {
	background: var(--ws-light-2);
	top: .8125em;
}

.news-events h3 {
	color: var(--ws-green);
	margin: 0 0 .25em;
}

.news-events article {
	margin: 0 0 2em;
}

.news-events .view-all {
	font-size: .9375em;
	font-weight: 600;
}




/* HOMEPAGE WELCOME RIBBON ------------------------------ */

.welcome::before {
	background: var(--ws-light);
	content: '';
	display: block;
	height: 1px;
	left: 50%;
	margin: 0 auto;
	max-width: calc(67em + 2 * var(--ws-gap));
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: calc(100% - 2 * var(--ws-gap));
}

.welcome {
	padding-block: clamp(2em, 1.611em + 1.73vw, 3.125em); /* 320 - 1400 */
	position: relative;
}

.welcome h1>span {
	color: var(--ws-blue-2);
	display: block;
	margin-block: .25em;
}

.welcome .select a {
	display: inline-block;
	font-size: .875em;
}

.welcome select {
	margin: .5em 1em 0 0;
}




/* RESOURCES PAGE - CATEGORY MENU ------------------------------ */

.categoryMenu {
	border-bottom: 1px solid #d8d9e3;
	float: left;
	height: auto;
	margin-bottom: 18px;
	width: 100%;
}

.content .categoryMenu ul {
	margin-bottom: 0;
}

.content .categoryMenu li {
	background: 0;
	display: inline-block;
	padding-left: 0;
}

.content .categoryMenu li:not(:last-child) {
	margin: 0 .5em 0 0;
}

.content .categoryMenu li::before {
	display: none;
}

.categoryMenu span {
	color: var(--ws-purple);
	display: block;
	font-size: .8125em;
	line-height: 3;
	margin-right: 0.625em;
}

.categoryMenu span.infantToddler {
	background: url('/images/icons/infantToddler.png') no-repeat 2px 7px;
	padding-left: 2.875em;
}

.categoryMenu span.preschool {
	background: url('/images/icons/preschool.png') no-repeat 0 0;
	padding-left: 1.25em;
}

.categoryMenu span.caregiver {
	background: url('/images/icons/caregiver.png') no-repeat 0 7px;
	padding-left: 3.25em;
}




/* RESOURCES PAGE - PDF CALLOUT MENU ------------------------------ */

.pdfCallout {
	background: var(--ws-yellow-3);
	border-radius: 0.625em;
	box-shadow: inset 0 1px 3px 1px rgba(60,66,114,.2);
	clear: right;
	float: right;
	height: auto;
	margin: 0 0 3em clamp(1.5em, -0.231em + 3.69vw, 3em);
	max-width: min(calc(50% - clamp(1.5em, -0.231em + 3.69vw, 3em)), 21.875em);
	padding: 1.5em;
}

#content .pdfCallout :is(h1, h2) {
	color: var(--ws-purple);
	font-size: 1.0625em;
	line-height: 1.5em;
	margin-bottom: .75em;
}

.pdfCallout a {
	background: url('/images/icons/pdf.png') no-repeat .5em .25em;
	color: var(--ws-green);
	display: block;
	font-size: .875em;
	line-height: 1.4;
	margin-bottom: 1em;
	padding-left: 2.1875em;
	text-decoration: none;
}

.pdfCallout a:hover {
	color: var(--ws-violet);
}

.pdfCallout a em {
	color: var(--ws-purple);
	display: block;
	font-weight: 400;
}




/* RESOURCES PAGE - IDEAS IN ACTION WIDGET ------------------------------ */

.ideas-in-action {
	margin-block: 2em;
}

.ideas-in-action .flex {
	display: flex;
	flex-wrap: wrap;
	gap: var(--ws-gap);
}

.ideas-in-action figure {
	width: calc( 100% / var(--ws-column-count) - ( var(--ws-gap) * ( var(--ws-column-count) - 1 ) / var(--ws-column-count) ) );
}

.ideas-in-action h2 {
	color: var(--ws-violet);
	margin: 0 0 1.5em;
}

.ideas-in-action figure {
	margin: 0;
}

.ideas-in-action .image {
	aspect-ratio: 300 / 225;
	border: 1px solid #FFF;
	box-shadow: 3px 6px 8px 0 rgba(60,66,114,.2);
	line-height: 0;
	margin: 0 0 .5em;
}

.ideas-in-action .image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ideas-in-action figcaption {
	padding-inline: .5em;
}




/* MODAL POPUP (Services page) ------------------------------ */

.modal {
	background-color: rgba(0,0,0,0.8);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10;
}

.modal-content {
	background-color: #FFF;
	left: 50%;
	max-height: calc(100% - 3em);
	max-width: calc(100% - 3em);
	overflow: auto;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 45em;
}

.modal-content>div {
	padding: 3em 2.5em 2.5em;
}

button.close {
	background: transparent;
	border: 0;
	color: #000;
	cursor: pointer;
	font-size: 3em;
	font-weight: 700;
	line-height: 1 !important;
	padding: 0 .25em;
	position: absolute;
	right: 0;
	top: 0;
	transition: all .3s ease;
	width: auto;
}

button.close:is(:hover, :focus) {
	background: transparent;
	color: #333;
	opacity: .75;
	text-decoration: none;
}




/* SERVICES PAGE TABLE ------------------------------ */

ul.services {
	margin: 0;
}

p + ul.services,
ul.services + *:not(ul.services) {
	margin-top: 2em;
}

ul.services li {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	margin: 0;
	padding: 0;
	position: relative;
}

ul.services li:last-child {
	border-right: 0;
}

ul.services li::before {
	display: none;
}

ul.services li>div:nth-child(1) {
	color: #FFF;
}

ul.services li>div:nth-child(2) {
	flex: 1 0 auto;
}


/* Colors */
ul.services.blue { background: var(--ws-lt-blue-4); }
ul.services.green { background: var(--ws-lt-green); }
ul.services.yellow { background: var(--ws-lt-yellow); }

ul.services.blue li>div:nth-child(1) { background: url('/images/services-blue.png') repeat; }
ul.services.green li>div:nth-child(1) { background: url('/images/services-green.png') repeat; }
ul.services.yellow li>div:nth-child(1) { background: url('/images/services-yellow.png') repeat; }

ul.services.blue a:not(:hover, :focus) { color: var(--ws-blue-2); }
ul.services.yellow a:not(:hover, :focus) { color: var(--ws-dk-yellow); }


/* Typography */
ul.services a {
	text-decoration: none;
}

ul.services strong {
	display: block;
}

ul.services li.heading div:nth-child(1) strong {
	font-size: clamp(1.125em, 1.082em + 0.19vw, 1.25em);
}

ul.services li>div:nth-child(2) strong {
	margin: 0 0 1em;
}

/* Arrows */
ul.services:not(.no-arrows) li:not(:last-child)>div:nth-child(1)::after {
	background: no-repeat center / 1.75em 1.75em;
	border-radius: 50%;
	content: '';
	height: 1.75em;
	position: absolute;
	width: 1.75em;
	z-index: 1;
}

ul.services.blue li:not(:last-child)>div:nth-child(1)::after { background-image: url('/images/icons/arrow-blue.svg');}
ul.services.green li:not(:last-child)>div:nth-child(1)::after { background-image: url('/images/icons/arrow-green.svg'); }
ul.services.yellow li:not(:last-child)>div:nth-child(1)::after { background-image: url('/images/icons/arrow-yellow.svg'); }


ul.services .popup-content {
	display: none;
}




/* PARTNERS PAGE ----------------------------------- */

.partners-wrap {
	padding-block: 2em 3em;
	position: relative;
}

.partners-wrap .fader>div {
	align-items: center;
	display: flex;
	justify-content: center;
}




/* CONSULTANTS PAGE ----------------------------------- */

.findAConsultant {
	font-size: 1em;
	margin: .3125em .625em .625em 0;
}

.consultant {
	margin-bottom: 1.25em;
}

.consultant :is(h2, h3) {
	margin-bottom: 0;
}

.consultant :is(h2, h3) span {
	font-size: .8em;
	font-style: italic;
	margin-left: 0.3125em;
}






/* COOKIEBOT PLUGIN OVERRIDES ------------------------------ */

:root {
    --cookiebot-primary-color: #3F4675; /* button background */
    --cookiebot-primary-color-hover: #BF95C2; /* button background */
    --cookiebot-secondary-color: #000; /* tabs, text links */
    --cookiebot-accent-color: #068449; /* button hovers, slider toggles */  
}

#CybotCookiebotDialog {
    border-radius: 0 !important;
    box-shadow: 0 0 0 1000em rgba(0,0,0,0.5) !important;
}

/* buttons */
#CybotCookiebotDialog #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton,
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept, 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept, 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll,
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonCustomize, 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection,
#CybotCookiebotDialog #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton,
#CookiebotWidget #CookiebotWidget-widgetContent #CookiebotWidget-buttons #CookiebotWidget-btn-change {
    background: var(--cookiebot-primary-color) !important;
    border-color: var(--cookiebot-primary-color) !important;
	border-radius: 10em;
    border-width: 1px !important;
    color: #fff !important;
    opacity: 1 !important;
}

/* button hovers */
#CybotCookiebotDialog #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton:is(:hover, :focus-visible),
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept:is(:hover, :focus-visible), 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept:is(:hover, :focus-visible), 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:is(:hover, :focus-visible),
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonCustomize:is(:hover, :focus-visible), 
#CybotCookiebotDialog #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:is(:hover, :focus-visible),
#CybotCookiebotDialog #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton:is(:hover, :focus-visible),
#CookiebotWidget #CookiebotWidget-widgetContent #CookiebotWidget-buttons #CookiebotWidget-btn-change:is(:hover, :focus-visible) {
    background: var(--cookiebot-primary-color-hover) !important;
    border-color: var(--cookiebot-primary-color-hover) !important;
    color:#fff !important;
    opacity: 1 !important;
}

/* slider toggles */
#CybotCookiebotDialog input:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
    background: var(--cookiebot-accent-color) !important;
}

/* link color */
#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a, 
#CybotCookiebotDialog #CybotCookiebotDialogDetailFooter a, 
#CybotCookiebotDialog #CybotCookiebotDialogDetailBulkConsentList dt a, 
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABDescription a, 
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieLink, 
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonIABHeaderViewPartnersLink, 
#CybotCookiebotDialog #CybotCookiebotDialogDetailBodyContentTextAbout a, 
#CybotCookiebotDialog #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a, 
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonsSelectPane label:not([for="CybotCookiebotDialogBodyLevelButtonNecessary"]) .CybotCookiebotDialogBodyLevelButtonDescription:hover, 
#CybotCookiebotDialog #CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink:hover, 
#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover, 
#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentIABv2Tab:hover, 
#CybotCookiebotDialog #CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieProvider:not(.CybotCookiebotDialogDetailBodyContentCookieInfoCount):hover, 
#CookiebotWidget #CookiebotWidget-widgetContent .CookiebotWidget-consent-details button,
#CybotCookiebotDialog #CybotCookiebotDialogBodyEdgeMoreDetailsLink {
    color: var(--cookiebot-secondary-color) !important;
}

#CybotCookiebotDialog #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a::after {
    border-color: currentColor !important;
}

/* link arrows */
#CybotCookiebotDialog a:hover::after, 
#CybotCookiebotDialog a:hover::before, 
#CybotCookiebotDialog button:hover::after, 
#CybotCookiebotDialog button:hover::before {
    border-color: var(--cookiebot-primary-color) !important;
}

/* tabs */
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
    border-color: var(--cookiebot-primary-color) !important;
    color: var(--cookiebot-secondary-color) !important;
}

/* Consent Box ---- */
#CookiebotWidget .CookiebotWidget-contents #CookiebotWidget-buttons #CookiebotWidget-btn-withdraw {
    border-color: var(--cookiebot-primary-color);
}
#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-consents-list li.CookiebotWidget-approved svg {
    fill: var(--cookiebot-secondary-color) !important;
}
#CookiebotWidget .CookiebotWidget-consent-details button {
    border: 0 !important;
}
#CookiebotWidget .CookiebotWidget-consent-details button:is(:hover, :focus-visible) svg path {
    fill: var(--cookiebot-primary-color);
}


/* close "X" */
#CookiebotWidget .CookiebotWidget-header .CookiebotWidget-close:is(:hover, :focus-visible) svg path {
    fill: var(--cookiebot-primary-color);
}

/* withdraw button */
#CookiebotWidget #CookiebotWidget-widgetContent #CookiebotWidget-buttons #CookiebotWidget-btn-withdraw {
    border-color: var(--cookiebot-secondary-color) !important;
}
#CookiebotWidget #CookiebotWidget-widgetContent #CookiebotWidget-buttons #CookiebotWidget-btn-withdraw:is(:hover, :focus-visible) {
    border-color: var(--cookiebot-accent-color) !important;
    opacity: 1 !important;
}





/* -----------============ STYLE.CSS ============----------- */
