/*
Theme Name: Web Solutions
Theme URI: https://www.websolutions.com/
Author: Web Solutions
Author URI: https://www.websolutions.com/
Description: WordPress wpCode
Version: 2.0.0
Text Domain: wpcodev2

Web Solutions is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
*/

@charset "UTF-8";

:root {
  --ws-light-1: #F1F1F1;
  --ws-light-2: #CCD7DF;
  --ws-light-3: #F3F6F8;
  --ws-light-4: #D7E0E6;

  --blue: #45B3EA;
  --blue-2: #46D0FE;
  --ws-blue: #66AACC;
  --ws-blue-2: #1898D8;
  --ws-pale-blue: #E1EEF5;
  --ws-dark-blue: #2A3B4C;
  --ws-dark-blue-2: #2F4D6A;
  --ws-dark-blue-3: #0F618A;

  --ws-dark: #475766;
  --ws-dark-2: #1B2631;
  --ws-dark-3: #214362;
  --ws-dark-4: #485766;

  --ws-green: #4C8E24;
  --ws-pale-green: #DCE9D4;
  --ws-dark-green: #213D0F;
  --ws-dark-green-2: #346318;

  --ws-orange: #ED902C;
  --ws-dk-orange: #D38027;
  --ws-dk-orange-2: #A8661F;

  --ws-purple: #7B59BE;
  --dark-purple: #563A8E;
  --ws-pale-purple: #E2DBF0;
  --ws-dark-purple: #211537;

  --ws-red: #CC6666;
  --ws-pale-red: #ECC6C6;
  --ws-dark-red: #3A1313;
  --ws-red-2: #E76262;
  --ws-dark-red-2: #9B3131;

  --ws-slate: #32596B;
  --ws-slate-rgb: 50,89,107;

  --ws-yellow: #D8B129;
  --ws-pale-yellow: #F7F0D4;
  --ws-dark-yellow: #41350C;
  --ws-dark-yellow-2: #AC8C20;
  --ws-lt-yellow: #F7EFD3;

  --ws-blue-rgb: 24, 152, 216;
  --ws-green-rgb: 76, 142, 36;
  --ws-purple-rgb: 123, 89, 190;
  --ws-red-2-rgb: 231, 98, 98;
  --ws-yellow-rgb: 216, 177, 40;
  --ws-light-2-rgb: 204, 215, 223;


  --ws-gutter: 1.5em;
  --ws-gap: 1.5em;


  --ws-text-1: clamp(1.875em, 1.534em + 1.7vw, 2.813em);    /* 30 - 45 */
  --ws-text-2: clamp(1.625em, 1.42em + 1.02vw, 2.188em);    /* 26 - 35 */
  --ws-text-3: clamp(1.375em, 1.193em + 0.91vw, 1.875em);   /* 22 - 30 */
  --ws-text-4: clamp(1.25em, 1.159em + 0.45vw, 1.5em);      /* 20 - 24 */
  --ws-text-5: clamp(1em, 0.955em + 0.23vw, 1.125em);       /* 16 - 18 */
  --ws-text-6: clamp(1.125em, 1.08em + 0.23vw, 1.25em);     /* 18 - 20 */
  --ws-text-7: clamp(1.125em, 1.034em + 0.45vw, 1.375em);   /* 18 - 22 */

  --ws-transition: all .3s ease;

}




html {-webkit-box-sizing:border-box;box-sizing:border-box; }
*, *:before, *:after {-webkit-box-sizing:inherit;box-sizing:inherit; }
body{margin:0;padding:0;-webkit-text-size-adjust:none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x:hidden; }

img{border: 0}
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;line-height: 1.75;vertical-align:top;text-align:left; }
body {background: #FFF; }
#skipNavigation{background:#fff;color:#000;padding:.5em;position:absolute;left:0;top:-1000px;z-index:10}
#skipNavigation:focus,#skipNavigation:active{top:0; }


/*page widths*/
body>header, #mainnav, main, body>footer, #alertApp{width:100%;display:block; }

body>footer>.fatFooter,#alertApp>*,.wrap {
  margin-inline: auto;
  max-width: 69em;
  overflow:auto;
  padding-inline: var(--ws-gap);
  position:relative;
  width: 100%;
}

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



/* MAIN + WRAPS -------- */
main.home, main.default, main.fullWidth { font-size: 1rem; }
main.states-page, main.state-detail, main.national, main.federal, main.daca, main.data-tools { font-size: 1rem; }

main.home .wrap { max-width: 75em; }

.flex-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

/* text */
body, .text, input, button, select, textarea {
  font-family:'Roboto', sans-serif;
  line-height:1.5;
  color: var(--ws-dark-blue);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.text{font-size: 1rem}
a { color: var(--blue); text-decoration:none; }

p,h1,h2,h3,h4,hr,.content ul,.contentEditor ul,blockquote,dd,ol{margin-top:0;margin-bottom: 1rem; }
h1, h2, h3, h4, h5, h6, th{font-weight:400; line-height: 1.2; }
p + h2, p + h3, p + h4, p + h5, p + h6, ul + h2 {margin-top: 1.5em; }
.textColor, h1, h2, h3, h4, h5, h6, th, dt{color: var(--ws-dark-blue); }
em, i, q, cite, .italic{font-style:italic}
b, strong{font-weight:700}
u{text-decoration:none}
hr{border:0;border-top: .25em solid var(--ws-light-3);margin: 2em 0; }
p{color: var(--ws-dark-blue);font-size:1em; }
p.intro {font-size: 1.125em;margin: 0 0 1.75em; }
sup, sub {font-size:.6em; line-height:.6em;vertical-align:baseline;position:relative}
sup {bottom:1ex}
sub {top:.5ex}
img { max-width: 100%; }
.wp-block-image figcaption { margin-top: 0; }
.wp-block-image.clear { clear: both; margin-top: 2em; }

.text-1 { font-size: var(--ws-text-1); }
h1, .text-2 { font-size: var(--ws-text-2); }
h2, .text-3 { font-size: var(--ws-text-3); }
h3, .text-4 { font-size: var(--ws-text-4); }
h4, th { font-size: 1.125em; }
h5, .text-5 { font-size: var(--ws-text-5); }
h6 { font-size: 1em; }

.text-6 { font-size: var(--ws-text-6); }
.text-7 { font-size: var(--ws-text-7); }


h3 { color: var(--ws-red);  }
h4, th {color: var(--ws-dark-blue); }


label {color: var(--ws-dark);display: inline-block;font-size: 1em; }

::-webkit-input-placeholder { color: #8E8E8E; }
:-ms-input-placeholder { color: #8E8E8E; }
::-moz-placeholder { color: #8E8E8E; }
::-ms-input-placeholder { color: #8E8E8E; }
::placeholder { color: #8E8E8E; }

main ul:not(:is(.flex-row, .ws-flex, .no-style)) li {
  font-size: 1em;
  margin: 0 0 .5em;
  padding-left: 2.5em;
  position: relative;
}

main ul:not(:is(.flex-row, .ws-flex, .no-style)) li::before {
  background: var(--ws-blue);
  border-radius: 50%;
  content: '';
  height: .5em;
  left: 1.5em;
  position: absolute;
  top: .4375em;
  width: .5em;
}

ol {
  list-style: none;
  counter-reset: ws-counter;
  padding: 0 0 0 1.5em;
}

ol li {
  counter-increment: ws-counter;
  margin: 0 0 .25em;
  text-indent: -1.0625em;
  padding: 0 0 0 1.0625em;
}

ol li::before {
  content: counter(ws-counter) ". ";
  color: var(--ws-red);
}

#conf-welcome ol {
  list-style: decimal;
}

#conf-welcome ol li {
  text-indent: 0;
}

#conf-welcome ol li::before {
  display: none;
}



.text-center {
  text-align: center;
}

.mb-2 {
  margin-bottom: 2rem;
}

/* BORDERS ------------------------------ */
.stripe-border {
  margin-top: .5625em;
  position: relative;
}

.stripe-border::before, body:not(.home)>footer::before {
  background: #FFF url('./images/border.svg') repeat-x left center;
  bottom: 100%;
  content: '';
  height: .5625em;
  left: 0;
  position: absolute;
  width: 100%;
}

main.daca .stripe-border::before,
main.advanced-search .stripe-border::before,
main.data-tools .stripe-border::before{
  background-position: left top;
}

body:not(.home)>footer {
  margin-top: .5625em;
  position: relative;
  z-index: 1;
}

body:not(.home)>footer::before {
  height: 0.5625em;
}


.blue-border { border-top: .5em solid var(--ws-blue); }


/* TYPEFACES ------------------------------ */

/* Roboto Light Italic */
#conf-welcome p.org {
  font-family: 'Roboto', sans-serif;
  font-style: italic;
  font-weight: 300;
}

/* Roboto Regular */
.hero p, #legend li, #maps .map-popup h2, #state-select select {
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 400;
}

/* Roboto Regular Italic */
#spotlights time, tfoot p, .policies-list h4 > span, em, :where(ul, div).narratives .meta time, :where(ul, div).narratives .meta span,
#filters>ul>li ul>li>button, .pageHeader form span, .wp-block-image figcaption, label, #conference-partners figcaption, #testimonials .disclaimer p, .upcoming-events :is(span.category, span.organization), .community-resources span.category, .current-federal-policies span.category {
  font-family: 'Roboto', sans-serif;
  font-style: Italic;
  font-weight: 400;
}

/* Roboto Medium */
#maps select, #state-select label, #filters>ul>li>button, p.intro, #sidenav li a, #ancillary a, .tools strong.title, .footer-callouts :is(label, .label), .community-callouts span.title, #maps .subtext, .state-data strong.state-label {
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 500;
}

/* Roboto Bold */
.policies-list h4, #map-filters legend, #conf-welcome time, .quorum__bill .link, .hero label, .resources a.continue, .footer-callouts .button, #maps h2>span, .current-federal-policies time {
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 700;
}

/* Roboto Black */
#conf-welcome article a, .current-federal-policies h2.main-heading  {
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 900;
}

/* Source Sans Pro Light */
#spotlights h2 {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: normal;
  font-weight: 300;
}

/* Source Sans Pro Regular */
#mainnav>ul>li>ul>li>a, table tbody td, #all-states #show-filters span, .state-data .data .row>div:not(:first-child)  {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: normal;
  font-weight: 400;
}

/* Source Sans Pro Semibold */
.rank-table tbody tr td:nth-child(2), #all-states li>a, #list li>a {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: normal;
  font-weight: 600;
}

/* Source Sans Pro Semibold Italic */
#cfd h2, .gp-quote blockquote p {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: italic;
  font-weight: 600;
}

/* Source Sans Pro Bold */
h1, h2, h3, h4, h5, h6, #mainnav>ul>li>a, #mobilenav a, #mobilenav span, #maps .map-popup h2>span,
.button, .button, .wp-block-button__link, input[type="button"], input[type="submit"], input[type="reset"],
.responsive-table th, tfoot td, .responsive-table td::before, .responsive-table td span::before,
.data-table tbody tr.dark-row td, .striped-ribbons section strong, .no-results p,
#conference-hero .textbox time, #conference-hero .textbox time+p, #conf-welcome .textbox strong,
#conference-info time, #conference-info p, #all-states #show-filters, #maps .map-popup.institutions h2,
#access-info .question p, .gp-resources button, .state-data .data .row>div:first-child, .hero button.go, .hero select,
a.outline-link, .data-policies strong.title, .community-resources article a, .resource-callouts span.title,
.resource-callouts .link, .chart-data table caption, .chart-data span.subheading, .state-select :is(select, button),
#access-info .legend>div>span, .map-callouts strong.title {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: normal;
  font-weight: 700;
}

/* Source Sans Pro Black */
#access-info .answer>p,
#access-info .question::before, #access-info .answer::before {
  font-family: 'Source Sans Pro', sans-serif;
  font-style: normal;
  font-weight: 900;
}



/* HEADER ------------------------------ */

#ancillary form {
  align-items: center;
  display: inline-flex;
  position: relative;
}

#ancillary form label {
  font-size: .875em;
  font-style: normal;
}

#ancillary form input {
  background: #FFF;
  border-radius: 1.5em;
  border: 2px solid var(--ws-light-2);
  display: inline-block;
  transition: var(--ws-transition);
}

#ancillary button {
  background: transparent;
  padding: .5em 1em;
  position: absolute;
  right: .125em;
}

#ancillary button::before,
#ancillary button::after {
  animation: none !important;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 1em 1em;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

#ancillary button::before { background-image: url('./images/icons/search-blue.svg'); opacity: 1; }
#ancillary button::after { background-image: url('./images/icons/search-red.svg'); opacity: 0; }

#ancillary button:hover::before {animation: none;opacity: 0; }
#ancillary button:hover::after { opacity: 1; }


header .gtranslate_wrapper a.glink span {
  font-size: inherit;
}




/* MAIN ------------------------------ */
main, .mceContentBody{background:#fff}
.contentEditor{background:#fff;min-width:100%; }

/* t1 */
main #sidenav ul:not(.flex-row) li::before { display: none; }
main #sidenav ul:not(.flex-row) li {margin: 0;padding: 0; }

#sidenav { overflow:hidden;margin:0 0 40px; }
#sidenav ul{padding: 0}
#sidenav ul:empty{display: none}
#sidenav li {height:1%;overflow:hidden}

#sidenav li a:hover, #sidenav li a:active, #sidenav li.current_page_item>a:hover, #sidenav li ul.children li a:hover {color: var(--ws-red); }
#sidenav li.current_page_item>a, #sidenav li.current_page_ancestor>a { color: #121C28; }
#sidenav li.current_page_item, #sidenav li.current_page_ancestor { background: var(--ws-light-3); }

#sidenav>ul>li.current_page_ancestor>a, #sidenav>ul>li.current_page_item>a  { border-left: 5px solid var(--ws-red); }
#sidenav>ul>li.current_page_ancestor li a, #sidenav>ul>li.current_page_item li a { border-left: 5px solid rgba(50,89,107,.15); }

#sidenav>ul>li:first-of-type { border-top: .25em solid var(--ws-light-3); }
#sidenav>ul>li:last-of-type { border-bottom: .25em solid var(--ws-light-3); }

/* t2 */
#sidenav li a {
  background: url('./images/icons/arrow-right-gray.svg') no-repeat right .5em top .6875em / 1em .5em;
  color: #475966;
  display:block;
  line-height: 1.4;
  padding: .3125em 1.75em .3125em .875em;
}

#sidenav li ul li a {padding-left: 1.25em}
#sidenav li.current_page_ancestor ul li a, #sidenav li ul.children li a {padding: .25em .3125em .25em 1em;font-size: 1em;color: var(--ws-dark-blue); }
#sidenav li ul li a:active {color:#000; }

/* t3 */
#sidenav li.current_page_item>a { background-image: url('./images/icons/arrow-right-red.svg') }

#sidenav li.current_page_ancestor ul li a, #sidenav li.current_page_item ul li a {padding: .3125em 2em .3125em 1.75em; }
#sidenav li ul li.current_page_ancestor ul{ padding-bottom:.5em; border:0 }
#sidenav li ul li.current_page_ancestor ul li{border:0}
#sidenav li ul li.current_page_ancestor ul li a, #sidenav li ul li ul.children li a {display: block; padding-left:30px;font-size:.8em;color:#666}
#sidenav li ul li ul li a:hover, #sidenav li ul li ul li a:active {background:#f5f5f5}
#sidenav li ul li ul li.current_page_item>a, #sidenav li ul li ul li.current_page_ancestor>a{color:#000; background:#e5e5e5; }
/* t4 */
#sidenav li ul li ul li.current_page_ancestor ul li a{padding-left:50px;font-size:.7em;color:#666}
#sidenav li ul li ul li ul li a:hover, #sidenav li ul li ul li a:active{background:#fff}
#sidenav li ul li ul li ul li.current_page_item>a{color:#000; background:#f5f5f5; }
/* hide children that arent yours */
#sidenav ul.children { display: none }
#sidenav li.current_page_ancestor>ul, #sidenav li.current_page_item>ul { display: block }

#sidenav h3 {
  padding: .25em 0 0 .75em;
}

/*section callouts*/
main>div>aside section{margin:0 0 20px;padding:10px}
main>div>aside section:hover{background:#FFC}
main>div>aside section h1{margin:0;font-size:1.2em}
main>div>aside section p{margin:0}
/* breadcrumb */
.breadcrumb{margin-bottom: 1em}
.breadcrumb a:after{content: "\00A0\00A0\203A\00A0"}

.content{word-wrap:break-word}
.content .alignright, .content .align-right{margin: 0 0 1em 2em;max-width:50%;height:auto; }
.content .alignright img,.content .align-right img {max-width:100%;height:auto;margin: 0;float: none}
.content img.phototreatment{max-width:50%;height:auto}
.content figure.phototreatment{width: 100%;text-align: center}
.content figure.phototreatment img{max-width: 100%;width: auto;height: auto}
img.phototreatment,img.alignright,img.align-right,.alignright img,.align-right img {max-width: 100%;width: auto;height: auto}
.alignright{float:right;clear:right}
.align-right{float:left;clear:left}
.muted {opacity:0.5;filter:alpha(opacity=50)}
.highlight, .content .highlight{background: #E2E7EC;clear: both;padding: 3em 6em;margin: 2em 0 3em; }
#content .highlight, .content .highlight { padding: 2em 2.5em; position: relative; z-index: 0; }

#content .highlight::before {
  background: url('./images/bg-plus.png') repeat-x left top;
  content: '';
  height: 16.375em;
  left: -3em;
  position: absolute;
  top: -1.25em;
  width: 21.25em;
  z-index: -1;
}

#content .highlight::after {
  background: #E2E7EC;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}


small, .textSm{font-size:.8em}
.content table{width:100%}
.aligncenter {clear: both;display: block;margin-left: auto;margin-right: auto; }

/* blog */
h1.entry-title {margin-bottom:.5em;font-size: 1.45em}
span.posted-on {display: inline-block;font-size: .8em;margin: 0 0 .5em; }
span.byline {font-size: .85em;display: block}
article .entry-content {padding: 1em 0}
.cat-links, .comments-link {font-size: .8rem;display: block}
.blogThumb {width: 100%; }
.blogThumb img, .attachment-post-thumbnail.size-post-thumbnail.wp-post-image {max-width: 100%;height: auto}

#respond {margin-top: 4em}
#respond h3 {margin: 0}
.updated {display:none; }

header > h1+span, h2+.date {display: block; font-family: "proxima-nova-condensed", sans-serif; line-height: 120%; }
header > h1+span{font-style: italic; margin: -1.5em 0 1em; font-size: 1.125em; color: #9e9e9e; }

/* list */
.content ol{margin-left:2em}
.content ol ol li {list-style: lower-alpha}
.content ul li:before{content: "\25B8";display: inline-block;width: 1em;text-align: center;text-indent:0}
.content ul li ul li:before{opacity: .5}

/* addon classes */
.clearFloats{clear:both}
.nobr{white-space: nowrap}
.twoCol, .threeCol, .resCol{
  column-rule:1px outset rgba(0,0,0,.15);
  column-gap:2em;
}
.req{color:#c00}
.textIcon{background:#999; background-color:rgba(0,0,0,.2);font-size:.8em;line-height:1em;display:inline-block;padding:.2em .4em;border-radius: .5em;color:#fff}
.textIcon:hover{background:#666; background-color:rgba(0,0,0,.4);color:#fff}
.clearfix:after{content: "";display: table;clear: both; }

.videoContainer {width: 100%;height:0;line-height:0;position: relative;padding-top:56.25%; /* 16:9 */}
.videoContainer.ratio-4-3 {padding-top:75%; /* 4:3 full-frame */}
.videoContainer iframe {position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;border:0}

.nav-links {
  display: flex;
  justify-content: center;
}

/* forms */
input, button, select{font-size:.9rem;line-height: 1; }
input[type="text"], input[type="password"], input[type="tel"], input[type="number"], input[type="email"],
input[type="url"], input[type="search"], textarea, select, input[type="button"], input[type="submit"],
input[type="reset"]{ border-radius:0;outline: none;-webkit-appearance:none;font-size: 1em; }

input[type="text"], input[type="password"], input[type="tel"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], textarea, select{background-color:rgba(0,0,0,.05);border: 0;padding: .5em 1em; }
input[type="text"]:focus, input[type="password"]:focus, input[type="tel"]:focus, input[type="number"]:focus,
input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, textarea:focus, select:focus{background-color: rgba(204,102,102,.12); }
textarea{ display:block;  width: 100%; }


/* clears the search input 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}


select option{padding:0 .2em}


/* Technical Assistance form */
:is(#form_technicalassistance, #form_technicalassistance2) textarea {
  width: 100%;
}

:is(#form_technicalassistance, #form_technicalassistance2) .frm_dropzone .dz-message {
  padding: 0 0.625rem;
  font-size: 1rem;
}

:is(#form_technicalassistance, #form_technicalassistance2) .frm_form_fields :is(input[type='text'], input[type='email'], input[type='tel']) {
  margin-bottom: 0;
}

:is(#form_technicalassistance, #form_technicalassistance2) .frm12 input {
  width: auto;
}


/* Search results page */
.search-page-search {
  margin: 0 0 1.75em;
}

.search-page-search .flex {
  display: flex;
  justify-content: space-between;
}

.search-page-search input[type="search"] {
  margin-right: .5em;
  padding-inline: clamp(0.5rem, 0.318rem + 0.91vw, 1rem);
  width: calc(100% - 6.25em);
}

.search-page-search button[type="submit"] {
  padding: .75em 1.375em;
}

.search-page-search button[type="submit"]::before {
  display: none;
}

.search-results article a {
  color: var(--ws-dark-red-2);
}



/* Buttons */
button,.button,input[type="button"], input[type="submit"], input[type="reset"], .wp-block-button__link {
  background: var(--blue);
  color: #FFF;
  border:0;
  border-radius: 1.5em;
  font-size: 1em;
  padding: .75em 2.375em .75em 1.375em;
  position: relative;
  line-height: 1;
  cursor:pointer;
}

.button {display: inline-block}

button::before, .button::before, .wp-block-button__link::before {
  background-image: url('./images/icons/angle-right-white.svg');
  background-repeat: no-repeat;
  background-position: right 1em top .4375em;
  background-size: .875em 1.75em;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

button.white::before, .button.white::before {
  background-image: url('/wp-content/themes/wpcode-v2/images/icons/angle-right-gray.svg');
}


.button.back {
  padding: .75em 1.375em .75em 2.375em;
}

.button.back::before {
  transform: scale(-1);
}


button.tall::before, .button.tall::before {
  background-position: right 2em top .6875em;
}

.wp-block-buttons>.wp-block-button.center {
  margin-block: .5em;
  text-align: center;
  width: 100%;
}

.button.tall { background-position: right 2em center; padding: 1em 3.75em 1em 2.75em; }

.button.white {
  background: #FFF;
  color: var(--blue);
  padding: .75em 2.375em .75em 1.375em;
}

.button.purple {
  background-color: #432E6C;
  border: 1px solid #FFF;
  color: #FFF;

}
.button.red {
  background-color: var(--ws-red-2);
}

.button.dark-blue {
  background-color: var(--ws-dark-blue);
}

.button.pdf,
.button.spreadsheet,
.button.angle,
.button.angle-up {
  background-image: none;
  display: table;
  margin: 0 auto;
  padding: .75em 2.75em .75em 1.375em;
}

.button.angle, .button.angle-up {
  padding: .75em 2.25em .75em 1.375em;
}

.button-row .button {
  display: inline-block;
  margin: 0 .625em;
}

.button.hollow.purple { color: var(--ws-purple); background: none; padding:.75em 1.125em; }
.button.hollow.blue { color: var(--blue); background: none; padding:.75em 1.125em; }
.button.hollow.dark-blue { color: var(--ws-dark-blue); background: none; padding:.75em 1.125em; }
.button.hollow.dark-blue-2 { color: var(--ws-dark-blue-2); background: none; padding:.75em 1.125em; }
.button.hollow.green { color:var(--ws-green); background: none; padding:.75em 1.125em; }
.button.hollow { background:#fff; border:0; box-shadow: inset 0 0 0 2px currentColor; }
.button.hollow:before {display: none}

.button.hollow.plus:before {display: none}
.button.hollow.plus:after {content:""; padding-right:1em; margin-left:0.25em; background:url(images/circle-plus-blue.svg) no-repeat center; }
.button.blue.hollow.plus:after { background-image:url(images/circle-plus-blue.svg); }

.button.pdf::before,
.button.spreadsheet::before,
.button.angle::before,
.button.angle-up::before,
.button.pdf::after,
.button.spreadsheet:after,
.button.angle::after,
.button.angle-up::after {
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.button.pdf::after,
.button.spreadsheet::after,
.button.angle::after,
.button.angle-up::after {
  opacity: 0;
}

.button.spreadsheet::before,
.button.white.spreadsheet::after {
  background: url('./images/icons/file-spreadsheet-white.svg') no-repeat right 1.25em top .625em / .875em auto;
}

.button.white.spreadsheet::before {
  background: url('./images/icons/file-spreadsheet-gray.svg') no-repeat right 1.25em top .625em / .875em auto;
}

.button.pdf::before,
.button.white.pdf::after {
  background: url('./images/icons/file-pdf-white.svg') no-repeat right 1.25em top .625em / .875em auto;
}

.button.white.pdf::before {
  background: url('./images/icons/file-pdf-gray.svg') no-repeat right 1.25em top .625em / .875em auto;
}

.button.white.angle::before {
  background: url('./images/icons/angle-right-gray.svg') no-repeat right 1.125em top .5625em / 1.25em 1.5em;
}

.button.white.angle::after {
  background: url('./images/icons/angle-right-white.svg') no-repeat right 1.125em top .5625em / 1.25em 1.5em;
}

.button.white.angle-up::before {
  background: url('./images/icons/angle-up-gray.svg') no-repeat right 1em top .875em / 1em .875em;
}

.button.white.angle-up::after {
  background: url('./images/icons/angle-up-white.svg') no-repeat right 1em top .875em / 1em .875em;
}

.button.yellow {
  background: var(--ws-yellow);
  font-size: .875em;
  line-height: 1.1;
  padding: .3125em 1.125em .375em;
}

.button.yellow::before { display: none; }




/* New homepage / Community pages */
:is(.upcoming-events, .home-partners, .community-resources, .community-text, .resource-callouts) .button {
  padding: .6875em 3.125em .6875em 1.875em;
}

:is(.upcoming-events, .home-partners, .community-resources, .community-text, .resource-callouts) .button::before {
  background-position: right 1.625em top .375em;
}




/* Back to Top button */
#top { position: relative; top: -12em; }
.button[href="#top"]::before {
  background-image: url('./images/icons/angle-up-white.svg');
  background-repeat: no-repeat;
  background-position: right 1em top .4375em;
  background-size: .875em 1.75em;
}

.icon-drop {
  animation-name: icon-drop, icon-bobble;
  animation-duration: .3s, 1.5s;
  animation-delay: 0s, .3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}


@keyframes icon-lunge {
  100% {
    transform: translateX(.375em);
  }
}

@keyframes icon-sway {
  0% {
    transform: translateX(.375em);
  }
  50% {
    transform: translateX(.125em);
  }
  100% {
    transform: translateX(.375em);
  }
}

@keyframes icon-lunge-reverse {
  100% {
    transform: translateX(-.375em) scale(-1);
  }
}

@keyframes icon-sway-reverse {
  0% {
    transform: translateX(-.375em) scale(-1);
  }
  50% {
    transform: translateX(-.125em) scale(-1);
  }
  100% {
    transform: translateX(-.375em) scale(-1);
  }
}

@keyframes icon-rise {
  100% {
    transform: translateY(-.375em);
  }
}

@keyframes icon-float {
  0% {
    transform: translateY(-.375em);
  }
  50% {
    transform: translateY(-.125em);
  }
  100% {
    transform: translateY(-.375em);
  }
}

@keyframes icon-drop {
  100% {
    transform: translateY(.375em);
  }
}

@keyframes icon-bobble {
  0% {
    transform: translateY(.375em);
  }
  50% {
    transform: translateY(.125em);
  }
  100% {
    transform: translateY(.375em);
  }
}



input::-moz-focus-inner {border:0;padding:0; }
button img{height:1em;width:auto;vertical-align:top}
input.bulky, .bulky {padding:.4em .6em;font-size:1.2em}
.formTable, .formTable table{width:100%}
.formTable input[type="text"], .formTable input[type="password"], .formTable input[type="tel"], .formTable input[type="number"], .formTable input[type="email"], .formTable input[type="url"], .formTable input[type="search"], .formTable textarea{width:100%}
.formTable table td,.formTable table td:first-child{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}
td.right, th.right{text-align:right}
.wsNew{display:inline-block;font-size:.7em;line-height:1.5em;height:1.5em;padding:0 .3em;margin:.3em 0;background-color:#FFC700;overflow:visible;vertical-align:top;color:#fff;font-style:italic}
.formEdit select, .formBuilder select { width:40%; }




/* TRANSITIONS ------------------------------ */
a, a *, a::before, a::after, button, .button, button::before, button::after, input[type="button"], input[type="submit"],
.rsFullscreenBtn, #alertApp, #alertApp span, #alertDesc, #mobilenav a, #mobilenav span, #navContainer aside.toggleNav,
#navContainer li, .hamburger, svg path, svg rect, svg text, span.close, #ancillary, #ancillary button::before,
#ancillary button::after, #callouts .image, #callouts .image-hover, #map-filters label, #map-filters label span,
#map-filters span.dot, #map-filters span.dot::after, #filters label span, #filters label span::after,
.accordion, .accordion-icon::before,  .accordion-icon::after, #institution-filters, #filter-definitions {
  transition: all .3s ease
}

input:focus, select:focus, textarea:focus {
  transition: background-color .3s ease
}

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



/* FORM ERROR ------------------------------ */
.formError {background-color:Black; border:0; padding: 5px 10px; color:#fff; display:none; margin:0 0 2px; z-index:9999; border-radius: 10px; box-shadow:0 2px 2px #333; }
.formError p {margin:0; font-size:.9em; }
.formError em { border:10px solid;  border-color:Black transparent transparent; bottom:-17px; display:block; height:0; left:40px; position:absolute; width:0; }




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

body>footer{
  background: var(--ws-dark-blue);
  clear: both;
  padding: 4em 0 3em;
  font-size: 1rem;
  text-align: center;
}

body>footer a, body>footer p { color: rgba(255,255,255,.6); font-size: .875em ;margin: 0 0 .375em; }
body>footer a:hover, footer a:active { color: #FFF; }
body>footer a.on, footer .on>a{ text-decoration:none; color:rgba(255,255,255,.75); }

body>footer .fatFooter {margin: 0 auto 1.5em; }
body>footer .fatFooter #social { margin: 0 auto 2em; text-align: center;  }
body>footer .fatFooter #social li { display: inline-block; margin: 0 1em; }
body>footer .fatFooter #social svg { width: 1.5em; height: 1.5em; }
body>footer .fatFooter #social svg path { fill: #FFF; }
body>footer .fatFooter #social a { padding: .5em; }
body>footer .fatFooter #social a:hover svg path { fill: rgba(255,255,255,.6); }
body>footer .button {
  background-image: none;
  font-size: .875em;
  margin: 0 .5em 1em;
  min-width: 10.75em;
  padding: .9375em 2.25em;
}
body>footer .button.purple { background-color: var(--ws-purple); border: 0; }
body>footer .button::before {display: none; }

body>footer>.wrap { overflow:visible; }
body>footer .wrap nav {margin: .5em 0; }
body>footer .wrap nav span:before {color: rgba(255,255,255,.6);content: "|";margin: 0 .25em 0 .75em; }



/* TABLES ------------------------------ */
.responsive-table {font-size: 1rem;margin: 0 0 2em;table-layout: fixed;width: 100%; }
.responsive-table th, .responsive-table td, .wp-block-table td {padding: .4375rem 1rem; }

th.green { background: var(--ws-green); }
th.slate { background: var(--ws-dark-blue); }
th.blue { background: var(--ws-blue); }
th.red {background: #8F2700; }
th.yellow { background: var(--ws-yellow); }
th.purple { background: #7B6E95; }
th.pink { background: var(--ws-red); }

.state-table th { cursor: default; vertical-align: middle; }
.state-table th, .state-table td { position: relative; text-align: center;  }
.state-table th { color: #FFF; font-size: 1.125em; }
.state-table tfoot tr {
  background: #FAFAFA;
  border-bottom: 1px solid rgba(50,89,107,.25);
  border-top: 1px solid rgba(50,89,107,.25);
}
.state-table a { line-height: 1.75; }

/* border line between columns */
.state-table tr td:not(:last-of-type)::after,
.two-tone tbody tr td:nth-child(3)::after {
  border-right: 1px solid rgba(50,89,107,.25);
  bottom: 1em;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 1em;
}

.rank-table.num-workers td::after {
  display: none;
}

.two-tone tbody tr td:nth-child(3)::after { bottom: 0; top: 0; }


.responsive-table.num-workers {
  margin-inline: auto;
  max-width: 40em;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .state-table tr td:not(:last-of-type)::after, .two-tone tbody tr td:nth-child(3)::after {
    display: none;
  }

  .state-table tbody td {
    border-left: 1px solid rgba(50,89,107,.25);
    border-right: 1px solid rgba(50,89,107,.25);
  }
}


/* No list styling */
main .state-table ul { margin: 0; }
main .state-table ul.twoCol { column-rule: 0; columns: 2; }
main .state-table ul li { list-style: none; margin: 0; padding-left: 0; }
main .state-table ul li::before { display: none; }

.state-table tfoot tr td::after { display: none; }

.rank-table thead th, .data-table tbody tr.dark-row, .wp-block-table tr:first-of-type { background: rgba(50,89,107,.25); vertical-align: bottom; }

.rank-table thead th:not(:nth-child(-n+2)),
.rank-table tbody tr td:not(:nth-child(-n+2)),
.data-table th:last-child, .data-table td:last-child { text-align: right; }

.rank-table tbody td { padding: .4375rem 1rem; position: relative; }
.rank-table tbody tr, .data-table tbody tr { border-bottom: 1px solid rgba(50,89,107,.25); }
.rank-table tbody tr td:nth-child(1) {color: var(--ws-red);width: 2em; }
.rank-table tfoot td { padding: .4375rem 0; text-align: center; }
.rank-table tfoot p, .data-table tfoot p { color: rgba(42,59,76,.5); font-size: .875em; margin: .75em 0 0; text-align: left; }

.rank-table tbody tr:nth-child(even),
.data-table tbody:not(.all-immigrants) tr:nth-child(odd):not(.dark-row),
.data-table tbody.all-immigrants tr:nth-child(even):not(.dark-row) { background: rgba(241,241,241,.5); }

.two-tone thead tr th:nth-child(-n+3)  {background: rgba(50,89,107,.5); }

.data-table tfoot td { padding: .4375rem 0; }
.data-table tfoot p { flex: 1; margin: .75em 0; }
.data-table tr:not(:first-of-type) td:last-child { color: var(--ws-red); }

.data-table ul { margin: 0;  }
main .data-table ul:not(.flex-row) li { margin: 0; }
.data-table li::before { display: none; }

.data-table.national {margin: 3em 0; }
.data-table.national td:last-child {max-width: 5em;text-align: left; }
.data-table.national tr:not(:first-of-type) td:last-child { color:var(--ws-dark-3); }







/* ARROW ROTATOR ------------------------------ /
*  Immigrant Origin community page, Federal Policies subpage templates
*/

.slick-slider.arrow-rotator {
  margin: 0 auto;
  max-width: 50.75em;
  padding-inline: clamp(1.75em, 1.25em + 2.5vw, 3.125em);
}

.slick-slider.arrow-rotator button {
  aspect-ratio: 1;
  background: var(--ws-slate) no-repeat center / auto 40%;
  border-radius: 50%;
  font-size: 1em;
  opacity: .25;
  padding: 0;
  position: absolute;
  top: clamp(3em, -0.727em + 18.64vw, 13.25em);
  width: clamp(1.75em, 1.25em + 2.5vw, 3.125em);
}

.slick-slider.arrow-rotator button::before {
  display: none;
}

.slick-slider.arrow-rotator button.slick-prev {
  background-image: url('./images/icons/arrow-left-white.svg');
  left: clamp(-0.25em, -0.341em + 0.45vw, 0em);
}

.slick-slider.arrow-rotator button.slick-next {
  background-image: url('./images/icons/arrow-right-white.svg');
  right: clamp(-0.25em, -0.341em + 0.45vw, 0em);
}




/* MAPS ------------------------------ */

#maps .blue, #maps .green, #maps .pink, #maps .purple, #maps .red, #maps .slate, #maps .yellow, #maps .gray { cursor: pointer; }
#maps .table-insert tbody * { cursor: default; }
#maps text { fill: #000; }

#maps :is(.slate, .black) text { fill: #FFF; }
#maps.homepage text { fill: #000; }

#maps .blue:hover text, #maps .green:hover text, #maps .pink:hover text, #maps .purple:hover text,
#maps .red:hover text, #maps .slate:hover text, #maps .yellow:hover text { fill: #FFF; }

#maps .gray text { cursor: default; fill: rgba(0,0,0,.2); }
#maps .gray:hover text { cursor: default; fill: #000; }

/* Don't change Puerto Rico's text color on hover since background is white */
#maps [data-abbr='PR']:hover text { fill: #000; }

.blue :is(path, rect, polygon, polyline) { fill: var(--ws-blue); }
:is(.gray, .grey) :is(path, rect, polygon, polyline) { fill: var(--ws-light-1); }
.green :is(path, rect, polygon, polyline) { fill: #609C58; }
.dk-orange :is(path, rect, polygon, polyline) { fill: var(--ws-dk-orange); }
.orange :is(path, rect, polygon, polyline) { fill: var(--ws-orange); }
.pink :is(path, rect, polygon, polyline) { fill: var(--ws-red); }
.purple :is(path, rect, polygon, polyline) { fill: #7B6E95; }
.red :is(path, rect, polygon, polyline) { fill: #AD4436; }
.slate :is(path, rect, polygon, polyline) { fill: var(--ws-dark); }
.yellow :is(path, rect, polygon, polyline) { fill: var(--ws-yellow); }
.lt-yellow :is(path, rect, polygon, polyline) { fill: var(--ws-lt-yellow); }
.lt-purple :is(path, rect, polygon, polyline) { fill: #D7D3DF; }
.white :is(path, rect, polygon, polyline) { fill: #FFF; }

#maps .blue:hover path, #maps .blue:hover rect { fill: #2B9FDA; }
#maps .gray:hover path, #maps .gray:hover rect { fill: #D8D8D8; }
#maps .green:hover path, #maps .green:hover rect {fill: #4DB540; }
#maps .pink:hover path, #maps .pink:hover rect { fill: #E05252; }
#maps .purple:hover path, #maps .purple:hover rect { fill: #483274; }
#maps .red:hover path, #maps #maps .red:hover rect { fill: #CA3521; }
#maps .slate:hover path, .slate:hover rect { fill: #2F4D6A; }
#maps .yellow:hover path, #maps .yellow:hover rect { fill: #F2C626; }

.map-popup .blue { background: var(--ws-blue); color: #FFF; }
.map-popup .green { background: #609C58; color: #FFF; }
.map-popup .pink { background: var(--ws-red); color: #FFF; }
.map-popup .purple { background: #7B6E95; color: #FFF; }
.map-popup .red { background: #AD4436; color: #FFF; }
.map-popup .slate { background: var(--ws-dark); color: #FFF; }
.map-popup .yellow { background: var(--ws-yellow); color: #FFF; }

#maps {
  background: url('./images/bg-plus.png') repeat-x center 34%;
  padding: 4em 0 5em;
  position: relative;
  text-align: center;
}

#maps h2>span {
  color: var(--ws-dark);
  display: block;
  font-size: .667em;
}

#maps:is(.homepage, .daca-undocumented, .refugee-displaced) {
  background: #FFF;
}

#maps.homepage h2 {
  margin: 0 0 .25em;
}

#maps .subtext {
  font-size: var(--ws-text-5);
  margin: 0 0 1em;
}

#maps text {
  pointer-events: none;
}


main #maps.homepage :is(path, rect) {
  fill: var(--ws-light-1);
  stroke: #9DACB5;
  stroke-width: .5px;
}



main #maps.homepage a:is(:hover,:focus-visible) :is(path, rect) {
  fill: var(--ws-blue-2);
}


body.map-overlay {
  overflow: hidden;
}

body.map-overlay::before {
  background: var(--ws-dark-2);
  content: '';
  inset: 0;
  opacity: .85;
  pointer-events: none;
  position: fixed;
  z-index: 6;
}


/* Tooltip ---------- */
#maps .map-wrap {
  margin: 2em 0 0;
  position: relative;
}

#maps .map-wrap svg {
  height: auto;
  max-height: calc(100vh - 7em);
  max-width: 100%;
  width: 69em;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  #maps .map-wrap svg {
    height: 55vw;
    width: 69em;
  }
}

#maps .tooltip {
  background: #121B23;
  color: #FFF;
  display: none;
  font-size: .8125em;
  padding: .875em 1.6875em;
  position: fixed;
}


/* Homepage, DACA/Undocumented, Refugee/Displaced community pages */
#maps .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gutter)) !important;
}

#maps:is(.homepage, .daca-undocumented, .refugee-displaced) .map-wrap svg {
  width: 100%;
}




/* Map & State Selects ---------- */
select {
  appearance: none;
  background: #F1F1F1 url('./images/icons/angle-down.svg') no-repeat right 1.25em center / 2em 2em;
  border-radius: .1875em;
  color: var(--ws-dark-blue);
  font-size: 1.125em;
  margin: 0 0 .5em;
  padding: 1em 3em 1em 1em;
  width: 100%;
}

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

#maps select {
  max-width: 35em;
}

#maps label[for="map-select"] {
  display: block;
  margin: 0 0 .625em;
}

/* State select underneath map */
#state-select { margin: 3em 0 0; }

.homepage #state-select {
  margin: 2em 0 0;
}

.homepage #state-select button {
  margin: 0 0 0 .375em;
}

#state-select label {
  color: var(--ws-dark-blue);
  margin: 0 1em 0 0;
}

#state-select select {
  font-size: 1em;
  line-height: 1.25;
  max-width: 15.3125em;
  padding: .625em 3em .625em 1em;
}

#state-select button {
  background: var(--ws-dark-blue);
  border-radius: .1875em;
  margin: 0 0 0 .125em;
  padding: .75em .9375em;
}

#state-select button::before { display: none; }

#state-select button:hover { background: var(--ws-red); }


/* Popup ---------- */
#maps .map-popup {
  background: #F1F1F1;
  display: none;
  left: 50%;
  max-width: calc(100% - 2em);
  padding: 1.75em 1.75em 1.25em;
  position: fixed;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 40em;
  z-index: 6;
}

#maps .map-popup .close,
#legend-popup .close {
  color: var(--ws-dark-blue);
  cursor: pointer;
  font-size: 2.25em;
  right: .5em;
  position: absolute;
  top: 0;
}

#maps .map-popup .close:hover, #legend-popup .close:hover { opacity: .65; }

#maps .map-popup h2 { color: var(--ws-dark); font-size: 1em; text-align: left; }
#maps .map-popup h2>span { color: var(--ws-red); font-size: 1.6875em; }

#maps .map-popup table { border-top: 1px dashed #A0A0A0; margin: 0 0 1em; }
#maps .map-popup tr { border-bottom: 1px dashed #A0A0A0; }
#maps .map-popup tr.no-border { border: 0; }
#maps .map-popup td { padding: .5em 0; vertical-align: middle; }
#maps .map-popup td:nth-of-type(2) {width: 31%;padding: .5em 1.25em; }

#maps .map-popup ul { margin: 0; }
#maps .map-popup li { padding: 0 0 0 1em; }
#maps .map-popup li::before {background: 0 0;content: '- ';position: static; }

/* Map Legend ---------- */
#legend {
  margin: 3em auto 4em;
  max-width: 44em;
  padding: 0 2em;
  position: relative;
  text-align: left;
}

#maps:is(.daca-undocumented, .refugee-displaced) #legend {
  margin-bottom: 0;
}


#legend ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

#legend ul::after {
  content: '';
  height: 0;
  flex: 1 0 auto;
}


#legend.data-tools {
  margin: 3em auto 0;
}

#legend.data-tools ul {
  justify-content: center;
}

#legend.data-tools ul::after {
  display: none;
}

#legend.data-tools li {
  cursor: default;
}

#legend li {
  display: inline-block;
  font-size: .75em;
  margin: 0 0 .75em;
  padding: 0 0 0 2em;
  position: relative;
  width: 25%;
}

#legend li::before {
  border-radius: .1875em;
  content: '';
  height: 1.41em;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1.41em;
}


#legend li>div { display: none; } /* Hide legend popup text */

#legend li.green::before, #legend-popup.green { background: #609C58; }
#legend li.slate::before, #legend-popup.slate { background: var(--ws-dark); }
#legend li.blue::before, #legend-popup.blue { background: var(--ws-blue); }
#legend li.red::before, #legend-popup.red { background: #AD4436; }
#legend li.yellow::before, #legend-popup.yellow { background: var(--ws-yellow); }
#legend li.purple::before, #legend-popup.purple { background: #7B6E95; }
#legend li.pink::before, #legend-popup.pink { background: var(--ws-red); }
#legend li.dk-orange::before, #legend-popup.dk-orange { background: var(--ws-dk-orange); }
#legend li.lt-purple::before, #legend-popup.lt-purple { background: #D7D3DF; }
#legend li.lt-grey::before, #legend-popup.lt-grey { background: var(--ws-light-1); }
#legend li.lt-grey::before { box-shadow: inset 0 0 0 1px #DDD; }

#legend li.lt-gray::before, #legend-popup.lt-gray { background: #F1F1F1; }
#legend li.lt-gray::before {
  outline: 1px solid #CCC;
  outline-offset: -1px;
}


#legend-popup {
  box-shadow: 50px 50px 100px rgba(0,0,0,.25);
  display: none;
  left: 0;
  max-width: 100%;
  top: 0;
  text-align: left;
  transform: translateY(-100%);
  padding: 1.5em;
  position: absolute;
}

#legend-popup .triangle {
  border-style: solid;
  border-width: 1em 1em 0 1em;
  border-color: #007BFF transparent transparent transparent;
  height: 0;
  left: 0;
  position: absolute;
  top: calc(100% - 1px);
  width: 0;
}

#legend-popup.green .triangle { border-top-color: #609C58; }
#legend-popup.slate .triangle { border-top-color: var(--ws-dark); }
#legend-popup.blue .triangle { border-top-color: var(--ws-blue); }
#legend-popup.red .triangle { border-top-color: #AD4436; }
#legend-popup.yellow .triangle { border-top-color: var(--ws-yellow); }
#legend-popup.purple .triangle { border-top-color: #7B6E95; }
#legend-popup.pink .triangle { border-top-color: var(--ws-red); }

#legend-popup .close { color: #FFF; }
#legend-popup h2 { color: #FFF; font-size: 1.6875em; margin: 0 0 .125em; }
#legend-popup p { color: #FFF; margin: 0; }

/* MAPS - States Page Specific ---------- */

.states-page #maps {
  background-image: url('./images/bg-plus.png'), url('./images/bg-plus.png');
  background-repeat: repeat-x, repeat-x;
  background-position: 50% -12em, 50% 50%;
  padding: 2em 0 0;
}

#maps .textbox h2 { text-align: center; }

#maps .textbox {
  margin: 0 auto 3.5em;
  max-width: 54em;
  text-align: left;
}

#maps:is(.daca-undocumented, .refugee-displaced) .textbox {
  margin-inline: auto;
  max-width: 57.5em;
  text-align: center;
}

.button-row {
  background: #FFF;
  border-bottom: 1px solid #FFF;
  padding: .625em 0;
  position: relative;
  text-align: center;
  z-index: 0;
}

.button-row::before {
  background: rgba(50,89,107,.25);
  bottom: 0;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}

#maps .button-row {
  margin: 6em 0 0;
}



/* Homepage hero map callouts */

.map-callouts {
  margin: clamp(4em, 2.5em + 7.5vw, 8.125em) 0 0;
}

.map-callouts ul.ws-flex {
  justify-content: center;
  row-gap: 3em;
  --ws-column-count: 2;
}


.map-callouts li>a {
  background: #F1F1F1;
  border: 2px solid var(--ws-light-2);
  border-radius: .5em;
  display: block;
  height: 100%;
  padding: clamp(3em, 2.636em + 1.82vw, 4em) 1.25em 2.75em;
  position: relative;
  z-index: 0;
}

.map-callouts li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
  z-index: -1;
}

.map-callouts li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/map-white.svg') no-repeat center / auto 45%;
  border-radius: 50%;
  bottom: 100%;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.15);
  content: '';
  left: 50%;
  position: absolute;
  transform: translate(-50%,50%);
  width: 3.5em;
}

.map-callouts li.blue>a::after { background-color: var(--ws-blue-2); }
.map-callouts li.green>a::after { background-color: var(--ws-green); }
.map-callouts li.purple>a::after { background-color: var(--ws-purple); }
.map-callouts li.red>a::after { background-color: var(--ws-red-2); }
.map-callouts li.yellow>a::after { background-color: var(--ws-yellow); }

.map-callouts li>a>div {
  margin: 0 auto;
  max-width: 30em;
}

.map-callouts .button {
  background: #FFF;
  border: 2px solid;
  border-radius: 1.5em;
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  margin: .25em 0 0;
  padding: .75em 2.87em .75em 1.75em;
}

.map-callouts .button::before {
  background-position: right 1.5em top .625em;
  background-size: .8125em 1.25em;
}

.map-callouts li.blue .button { border-color: var(--ws-blue-2); }
.map-callouts li.green .button { border-color: var(--ws-green); }
.map-callouts li.purple .button { border-color: var(--ws-purple); }
.map-callouts li.red .button { border-color: var(--ws-red-2); }
.map-callouts li.yellow .button { border-color: var(--ws-yellow); }

.map-callouts li.blue .button::before { background-image: url('./images/icons/arrow-right-blue.svg'); }
.map-callouts li.green .button::before { background-image: url('./images/icons/arrow-right-green.svg'); }
.map-callouts li.purple .button::before {background-image: url('./images/icons/arrow-right-purple.svg'); }
.map-callouts li.red .button::before { background-image: url('./images/icons/arrow-right-red-2.svg'); }
.map-callouts li.yellow .button::before { background-image: url('./images/icons/arrow-right-yellow.svg'); }

.map-callouts strong.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: clamp(1.25em, 1.114em + 0.68vw, 1.625em);
  line-height: 1;
  margin: 0 auto .5em;
  max-width: 24.375rem;
}

.map-callouts p {
  margin: 0 0 1.5em;
  text-wrap: pretty;
}




/* SPOTLIGHTS ------------------------------ */
#spotlights {
  background: linear-gradient(180deg, var(--ws-light-3) 0%, var(--ws-light-3) 20em, #FFF 20em, #FFF 100%);
  padding: 2em 0;
}

#spotlights li {
  padding-bottom: 3em;
  position: relative;
  width: calc(33.33% - 1.8125em);
}

#spotlights .image {
  align-items: flex-end;
  display: flex;
  flex-direction: row;
  height: 16em;
  overflow: visible;
}

#spotlights .image img {
  border: .25em solid #FFF;
  display: block;
  margin: 0 auto;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}

#spotlights h2 {margin: 0 0 1.125em; }

#spotlights a:not(.button) {
  display: block;
}

#spotlights a:hover .image img {
  transform: scale(1.06,1.06);
}

#spotlights .textbox {
  padding: 1.5em 1.25em 0;
}

#spotlights h3 {
  color: var(--ws-dark-blue);
  line-height: 1.125;
  margin: 0 0 .75em;
}

#spotlights p { line-height: 1.1875; }

#spotlights time {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1em;
  margin: -.75em 0 1em;
}

#spotlights li .button {
  bottom: 0;
  left: 1.25em;
  position: absolute;
}

#spotlights li:nth-child(3n+1) .button:not(:hover) { background-color: var(--ws-purple); }
#spotlights li:nth-child(3n+2) .button:not(:hover) { background-color: var(--ws-green); }
#spotlights li:nth-child(3n+3) .button:not(:hover) { background-color: var(--ws-red-2); }


/* CALLOUTS ------------------------------ */
#callouts {
  background: url('./images/bg-plus-short.png') repeat-x center 50%;
  padding: 2em 0 4em;
}

#callouts li {
  max-width: 32.5625em;
  width: calc(50% - 1em);
}

#callouts li a {
  background-color: var(--ws-dark-blue);
  display: block;
  height: 100%;
  padding: 5.5em 4em;
  position: relative;
  text-align: center;
  z-index: 0;
}

#callouts .image {
  background-position: center center;
  background-size: cover;
  height: 100%;
  left: 0;
  opacity: .25;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

#callouts h2 { color: #FFF; margin: 0 0 .5em; }
#callouts p { color: #FFF; margin: 0 0 2em; }
#callouts .button {border: 1px solid #FFF;color: #FFF;padding: .75em 2.75em .75em 1.375em; }

#callouts a:hover { background: #E2E7EC; }
#callouts a:hover h2, #callouts a:hover p { color: var(--ws-dark-blue); }

#callouts a:hover .button { background-color: #2F4D6A; }
#callouts a:hover .button font {color:#fff}
#callouts a:hover .image { filter: grayscale(1); }





/* WELCOME ------------------------------ */
#welcome {
  background: var(--ws-light-3) url('./images/bg-welcome.png') no-repeat center bottom / contain;
  padding: 6rem 0 10em;
  position: relative;
  z-index: 0;
}

#welcome::after {
  background: linear-gradient(180deg, var(--ws-light-3) 0%, rgba(255,255,255,0) 50%);
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

#welcome .wrap { align-items: flex-start; overflow: visible; }

#welcome .contributors {
  background: #FFF;
  min-width: 20em;
  padding: 3em 2em 2em;
  position: relative;
  width: 100%;
  z-index: 0;
}

#welcome .contributors::before {
  background: url('./images/bg-plus.png') repeat-x center center;
  content: '';
  height: 16.375em;
  left: -4.25em;
  position: absolute;
  top: -3.375em;
  width: 21.25em;
  z-index: -1;
}

#welcome .contributors::after {
  background: #FFF;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

#welcome .contributors>img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
}

#welcome .contributors ul {
  margin: 2.5em 0 0;
  text-align: center;
}

#welcome .contributors li {
  display: inline-block;
  margin: 0 .875em 2em;
  padding: 0;
  width: calc(20% - 1.75em);
}

#welcome .contributors li::before { display: none; }

#welcome .contributors li img {
  max-width: 100%;
  width: auto;
}

#welcome .textbox {
  margin: 0 auto 3em;
  text-align: center;
  max-width: 52em;
}

#welcome .textbox p {
  line-height: 1.8;
}

#welcome .textbox .button {
  margin: 1.25em 0 0;
}

/* INTERIOR PARTNERS ------------------------------ */
.contributors.interior {
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: .755em 0;
  position: relative;
}

.contributors.interior a {
  max-width: 33.33%;
  padding: .75em 1em;
}

.contributors.interior a>img {
  height: auto;
  width: 100%;
}


/* PAGEHEADER ------------------------------ */
.pageHeader {
  background: var(--ws-dark-3);
  font-size: 1rem;
  padding: 3em 0;
  position: relative;
  text-align: center;
  z-index: 0;
}

.pageHeader.resource-landing {
  padding-block: clamp(3em, 2.273em + 3.64vw, 5em);
}

.pageHeader::after {
  background-image: url(./images/bg-plus.png);
  background-repeat: repeat-x;
  background-position: 50% -6em;
  content: '';
  height: 5em;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: calc(100% - .75em);
  width: 100%;
  z-index: -1;
}

.landing-page .pageHeader::after {display: none}

.pageHeader .background {
  background-position: 50% 50%;
  background-size: cover;
  height: 100%;
  left: 0;
  opacity: .15;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.pageHeader.purple {
  background: var(--ws-purple);
}

main.default .pageHeader.purple .background,
main.fullWidth .pageHeader.purple .background {
  opacity: .15;
}

main.states-age .pageHeader .background, main.state-detail .pageHeader .background { filter: blur(8px); }
main.default .pageHeader .background, main.fullWidth .pageHeader .background { opacity: .4; }

.pageHeader .wrap {overflow: hidden;max-width: 57.875em; }
.pageHeader .textbox { width: 100%; }
.pageHeader h1 {color: #FFF;margin: 0; }
.pageHeader p { color: #FFF; font-size: 1.125em; }

.pageHeader .textbox p>a:not(.button) {
  text-decoration: underline;
}

/* Overrides for: single-taxonomy-funding-institution-state.php */
.state-detail .pageHeader.refugee-tool .wrap {
  max-width: calc(56.875em + 2 * var(--ws-gap));
}
.pageHeader.refugee-tool p {
  max-width: 43.75rem;
}




.state-detail .pageHeader { text-align: left; }
.state-detail .pageHeader .wrap {align-items: center;max-width: 75.5em; }
.state-detail .state-image {margin: 0 3em 0 0; }

.state-detail .state-image svg {height: auto;width: 5em; }

.pageHeader h1 + p, .pageHeader h1 + form { margin-top: 1rem; }

/* Page Header Wrap (includes links to sub-pages) */
.page-header-wrap {
  background: var(--ws-dark-3);
  font-size: 1rem;
  padding: 3em 0;
  position: relative;
  text-align: center;
  z-index: 0;
}

.page-header-wrap .pageHeader {
  position: static;
  padding: 0;
}

.page-header-wrap .pageHeader:after {
  display: none;
}

.page-header-wrap #nav-links {
  margin-top: 3em;
  padding-left: 3.5%;
  padding-right: 3.5%;
}

.page-header-wrap #nav-links ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5em 1em;
}

.page-header-wrap #nav-links li {
  padding: 0;
}

.page-header-wrap #nav-links li:before,
.page-header-wrap #nav-links li:is(.on, .current) {
  display: none;
}

.pageHeader.resource-landing p>a:not(.button) {
  color:#FFF;
  text-decoration: underline;
  text-decoration-color: var(--ws-blue-2);
  text-underline-offset: 3px;
}


/* LANDING PAGE (generic template used for /areas/ and /resources/ ) ------------------------------ */
.landing-page .pageHeader::after {display: none}
.landing-page .intro-section {padding-top:4em; padding-bottom: 4em; }
.landing-page .boxed-links {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-content: stretch;
  align-items: stretch;
}

.landing-page .boxed-links li { width:calc(25% - 1rem); padding:0; text-align: center; }
.landing-page .boxed-links li:before {display:none}
.landing-page .boxed-links li + li {margin-left: 1rem}
.landing-page .boxed-links a {display: block; height: 100%; padding: 3rem 1rem; }
.landing-page .boxed-links a>span { color: #FFF; display: inline-block; margin-top: 1rem;  }
.landing-page .boxed-links h2 { color: #FFF; font-size: 1.25em; margin: 0; }
.landing-page .boxed-links h2 font {color: #FFF; }
.landing-page .boxed-links a:hover h2,
.landing-page .boxed-links a:hover font { color: var(--ws-dark); }

.landing-page .boxed-links li:nth-of-type(4n+1) a { background: var(--ws-dark); }
.landing-page .boxed-links li:nth-of-type(4n+2) a { background:var(--ws-blue); }
.landing-page .boxed-links li:nth-of-type(4n+3) a { background:var(--ws-yellow); }
.landing-page .boxed-links li:nth-of-type(4n+4) a { background:var(--ws-red); }
.landing-page .boxed-links li:nth-of-type(1n) a:hover { background: #F2F2F2; }




/* CALLOUT REPEATER WITH ICONS ------------------------------ */

.page-template-template-resources-landing .intro-section .wrap {
  max-width: 80em;
  overflow: visible;
}

ul.callout-repeater-icons.ws-flex {
  justify-content: center;
  margin: 2em 0;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em);
}

.callout-repeater-icons li {
  max-width: 24.375em;
}

.callout-repeater-icons li>a {
  background: #FFF;
  border: 2px solid var(--ws-light-2);
  border-radius: .5em;
  display: block;
  height: 100%;
  padding: 2em 1.25em 2.5em;
  position: relative;
  text-align: center;
}

.callout-repeater-icons li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
}

.callout-repeater-icons li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-right-white.svg') no-repeat center / auto 40%;
  border-radius: 50%;
  content: '';
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translate(-50%,-50%);
  width: 2.5em;
}

.callout-repeater-icons li:nth-child(4n+1)>a::after { background-color: var(--ws-purple); }
.callout-repeater-icons li:nth-child(4n+2)>a::after { background-color: var(--ws-red-2); }
.callout-repeater-icons li:nth-child(4n+3)>a::after { background-color: var(--ws-green); }
.callout-repeater-icons li:nth-child(4n+4)>a::after { background-color: var(--ws-yellow); }


.callout-repeater-icons strong.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.2;
}

.callout-repeater-icons strong.title::before {
  content: '';
  background: url('./images/icons/landmark-dome.svg') no-repeat center / contain;
  display: block;
  height: 2.5em;
  margin: 0 auto clamp(0.75em, 0.386em + 1.82vw, 1.75em);
}


/* INFOGRAMS ------------------------------ */

.infogram {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 0;
  width: 100%;
}

.infogram + .infogram { margin: 2em auto 0; }

.infogram-embed {display: block;margin: 3.5em auto 0;max-width: 40em;width: 100%; }



/* SCROLL LINKS ------------------------------ */
#scroll-links {
  background: var(--ws-blue);
  border-bottom: 1px solid #FFF;
  font-size: 1rem;
  padding: .5em 0;
  position: sticky;
  z-index: 1;
}


#scroll-links .flex-row {
  align-items: center;
  justify-content: center;
}

#scroll-links .wrap { max-width: 75.5em; }

.state-detail #scroll-links .wrap { max-width: 50em; }

#scroll-links li { text-align: center; }
#scroll-links a {
  border-radius: .25em;
  color: #FFF;
  display: inline-block;
  font-size: clamp(0.875em, 0.667em + 0.44vw, 1em);
  line-height: 1.25;
  padding: .5em 1em 1em;
  position: relative;
  width: 100%;
}

#scroll-links a:is(:hover, :focus-visible) font {
  color:#fff
}

#scroll-links a::before,
#scroll-links a::after {
  background: url('./images/icons/angle-down-white.svg') no-repeat 50% bottom / 1em .875em;
  bottom: .125em;
  content: '';
  left: 0;
  opacity: .5;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
}

#scroll-links li:last-of-type a {
  padding: .5em 1.5em 1em 1em;
}

#scroll-links a::after {
  background: url('./images/icons/angle-down-yellow.svg') no-repeat 50% bottom / 1em .875em;
  opacity: 0;
}

#scroll-links li:last-of-type a::before {
  background: url('./images/icons/angle-up-white.svg') no-repeat right .625em / 1em .875em;
  right: .375em;
}

#scroll-links li:last-of-type a::after {
  background: url('./images/icons/angle-up-yellow.svg') no-repeat right .625em / 1em .875em;
  right: .375em;
}


#scroll-links a:hover { background: var(--ws-dark-blue); }
#scroll-links a:hover::before { opacity: 0; }
#scroll-links a:hover::after { opacity: 1; }





/* Taxonomy state template (i.e. /institutions/california) */
#scroll-links.taxonomy-state li.back a {
  padding: .5em 1em .5em 1.5em;
}

#scroll-links.taxonomy-state li:last-of-type a {
  padding: .5em 1.5em .5em 1em;
}

#scroll-links li.back a::before {
  background: url('./images/icons/angle-left.svg') no-repeat .5em center / auto 1.5em;
}

#scroll-links li.back a::after {
  background: url('./images/icons/angle-left-yellow.svg') no-repeat .5em center / auto 1.5em;
}



/* STATS SECTION (States template) ------------------------------ */
#stats > section { padding: 3em 0; }
#stats .table-row { margin: 0 0 2em; }
#stats .textbox h2, #stats .textbox h3, #stats h4 { text-align: center; }
#stats .textbox { margin: 0 auto; max-width: 54em; text-align: left; }
#stats .textbox + *, #stats .table-row + .table-row { margin-top: 3.5em; }

#stats .button.spreadsheet { margin-top: 2em; }

#stats .highlight h4 { text-align: left; }
.highlight li.green::before { background: var(--ws-green); }
.highlight li.slate::before { background: var(--ws-dark-blue); }
.highlight li.blue::before { background: var(--ws-blue); }
.highlight li.red::before {background: #8F2700; }
.highlight li.yellow::before { background: var(--ws-yellow); }
.highlight li.purple::before { background: #7B6E95; }
.highlight li.pink::before { background: var(--ws-red); }

#stats .flex-row > .column { width: 49%; }

/* INDIVIDUAL STATE PAGE ------------------------------ */
.intro-section {
  background-image: url('./images/bg-plus.png');
  background-repeat: repeat-x;
  background-position: 50% -17em;
  padding: 4em 0 1em;
}

.landing-page .intro-section {padding-top:4em; padding-bottom: 4em; }

.intro-section h2 { text-align: center; }

.data-row {
  border-bottom: .25em solid var(--ws-light-3);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 0 0 2.5em;
}

.data-row .textbox { padding: 0 2em 0 0; width: 43% }
.data-row .buttons {  margin: 2em 0 0; }
.data-row .buttons li { list-style: none; padding: 0; }
.data-row .buttons li::before { display: none; }

.data-row table {margin: 0 0 2.5em;width: 57%; }

#state-data .textbox, #state-policies .textbox, .intro-section .textbox {
  margin: 0 auto;
  max-width: 54em;
  text-align: left;
}

#state-data.intro-section { padding-bottom: 0; }

#state-data .textbox div.buttons { text-align: center; }
#state-data .textbox .buttons .button { margin: .25em; }
#state-data .button-row { margin: 3em 0 0; }




/* AREAS TEMPLATE ------------- */
.intro-section .wrap.columns {
  align-items: center;
  display: flex;
  flex-direction: row;
  margin: 0 auto 1em;
}

.intro-section .columns .textbox {
  margin: 0;
  max-width: none;
  padding: 0 2em 0 0;
}

.intro-section .columns .buttons {
  position: relative;
  width: auto;
}

.intro-section .wrap.columns .buttons .button { display: table; margin: 0 auto 1em; text-align: center; white-space:nowrap; width: 100%;  }
.intro-section .wrap.columns .buttons .button + .button { margin: 1em auto 0; }




/* State Policies section  ---------- */
.blue-border > section, .striped-ribbons section {padding: 3em 0 3.5em; }
.striped-ribbons div.blue-border section:nth-child(even), .striped-ribbons section:nth-child(even) { background: #E2E7EC; }

#state-policies {padding: 3em 0 0; }
#state-policies .wrap h2, .blue-border h3 { text-align: center; }

.policies-list {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 2em 0 3em;
}

main ul:not(.flex-row).policies-list li {
  list-style: none;
  padding: 1.25em 0.9375em;
  width: 32%;
}

.policies-list li>div {
  border-top: 1px solid #FFF;
  position: relative;
}

.policies-list li::after {
  border-top-style: solid;
  border-top-width: .5em;
  bottom: 0;
  content: '';
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: -.5625em;
  width: 100%;
}

main ul:not(.flex-row).policies-list li::before {
  border-radius: 0;
  bottom: 0;
  content: '';
  height: 100%;
  left: 0;
  opacity: .20;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.policies-list li.green::before { background: var(--ws-green); }
.policies-list li.slate::before { background: var(--ws-dark-blue);  }
.policies-list li.blue::before { background: var(--ws-blue);  }
.policies-list li.red::before { background: #8F2700; }
.policies-list li.purple::before { background: #7B6E95; }
.policies-list li.yellow::before { background: var(--ws-yellow); }
.policies-list li.pink::before { background: var(--ws-red);  }

.policies-list li.green::after { border-top-color: var(--ws-green); }
.policies-list li.slate::after { border-top-color: var(--ws-dark-blue); }
.policies-list li.blue::after { border-top-color: var(--ws-blue); }
.policies-list li.red::after { border-top-color: #8F2700; }
.policies-list li.purple::after { border-top-color: #7B6E95; }
.policies-list li.yellow::after { border-top-color: var(--ws-yellow); }
.policies-list li.pink::after { border-top-color: var(--ws-red); }

.policies-list b { display: block; }

#state-policies .policies-list h4 { font-size: 1.3125em; text-align: left; }
#state-policies .policies-list h4 > span { display: block; font-size: .75em; }

/* Icon sections ------- */
.striped-ribbons section svg { display: block; height: auto; margin: 0 auto 1.25em; width: 4em; }
.striped-ribbons section div > strong {color: var(--ws-dark-blue);display: block;font-size: 1.125em;margin: 0 0 .25em;text-align: center; }
.striped-ribbons section div.buttons { margin: 1em 0 0; text-align: center; }
.striped-ribbons section div.buttons .button { display: inline-block; margin: .25em; }
.striped-ribbons section ol { padding-left: 4.5vw; }
.striped-ribbons ul { margin: 2em 0; }
.striped-ribbons .short-row section, section.short-row { padding: 2em 0 1em; }
.striped-ribbons .short-row .textbox { text-align: center !important; }
.striped-ribbons h2 { text-align: center; }

#state-policies section.contributors { padding: 4em 0; }
#state-policies section.contributors .textbox { text-align: center; }
#state-policies section.contributors img { display: inline-block; margin: .5em; }
#state-policies section.contributors em { color: rgba(42,59,76,50%); font-size: .875em; }

#state-policies .button-row { margin: 0; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .striped-ribbons section svg { max-height: 5em; }
}



/* Narratives and Resources Sections ------- */
#narratives, #resources { padding: 3em 0 0; }

#narratives > .wrap > .textbox, #resources > .wrap > .textbox { margin: 0 auto 2.5em; max-width: 60em; text-align: center; }
#narratives .button-row, #resources .button-row { margin: 5em 0 0; }

:where(ul, div).narratives {
  margin: 0 auto;
  max-width: 100%;
  width: 49.1875em;
}

main :is(ul, div):not(.flex-row).narratives li {
  border-top-style: solid;
  border-top-width: .5em;
  display: flex;
  flex-direction: row;
  list-style: none;
  margin: 2.5em 0 0;
  padding: 1em 0 0;
}

:where(ul, div).narratives li::before { display: none; }

ul.narratives li:nth-child(6n+1) { border-top-color: var(--ws-purple); }
ul.narratives li:nth-child(6n+2) { border-top-color: var(--ws-green); }
ul.narratives li:nth-child(6n+3) { border-top-color: var(--ws-red); }
ul.narratives li:nth-child(6n+4) { border-top-color: var(--ws-yellow); }
ul.narratives li:nth-child(6n+5) { border-top-color: var(--ws-dark); }
ul.narratives li:nth-child(6n+6) { border-top-color: var(--ws-blue); }

:where(ul, div).narratives .button {
  font-size: .875em;
  padding: .5625em 2.375em .5625em 1.375em;
}

:where(ul, div).narratives .button::before {
  background-position: right 1em top .25em;
}

ul.narratives li:nth-child(6n+1) .button:not(:hover) { background-color: var(--ws-purple); }
ul.narratives li:nth-child(6n+2) .button:not(:hover) { background-color: var(--ws-green); }
ul.narratives li:nth-child(6n+3) .button:not(:hover) { background-color: var(--ws-red); }
ul.narratives li:nth-child(6n+4) .button:not(:hover) { background-color: var(--ws-yellow); }
ul.narratives li:nth-child(6n+5) .button:not(:hover) { background-color: var(--ws-dark); }
ul.narratives li:nth-child(6n+6) .button:not(:hover) { background-color: var(--ws-blue); }

:where(ul, div).narratives .image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 1.125em 0 0;
  flex: 1 0 auto;
  max-width: 15.6875em;
  width: 32%;
}

:where(ul, div).narratives  .image::after {
  content: '';
  display: block;
  padding: 0 0 66.9%;
}

ul.narratives .textbox {
  flex: 1;
  max-width: 100%;
  position: relative;
  text-align: left;
}

:where(ul, div).narratives .textbox>div:not(.meta) { padding: 0 3em 0 3em; }
:where(ul, div).narratives .image + .textbox>div:not(.meta)  { padding: 0 3em 0 0; }

ul.narratives .meta {overflow: auto;padding: 0 0 0 3em; }
:where(ul, div).narratives .image + .textbox .meta { padding: 0; }
:where(ul, div).narratives .meta time { font-size: .875em; }
:where(ul, div).narratives .meta span { font-size: .875em; float: right; margin: 0 0 0 1em; }

:where(ul, div).narratives h3 { color: var(--ws-dark-blue); font-size: 1.5em; margin: 0 0 .25em;  }




/* NATIONAL PAGE ------------------------------ */
.highlight.text-center { text-align: center; }
.highlight #state-select { margin: 0 auto; }
.highlight #state-select select { background-color: #FFF; }

.highlight .buttons {margin: 1.5em 0 0;text-align: center; }
.highlight .buttons .button {margin: .5em .5em; }

.buttons.stacked .button {
  display: table;
  margin: 0 auto 1em;
}

#immigrant-students.intro-section { padding-bottom: 0; }




/* FEDERAL POLICIES PAGE ------------------------------ */

#daca.intro-section { padding-bottom: 0; }
#daca section:first-of-type { padding: 0 0 3em; }
.button-row.tall-row { box-shadow: inset 0 1px 0 0 #FFF; padding: 3em 0; }
.button-row.tall-row p {margin: 4em 0 1em; }




/* FEDERAL POLICIES PAGE TABLE RIBBON ------------------------------- */

#fed-table {
  padding-block: 5em;
  text-align: center;
}

#fed-table :is(table, li) a {
  line-height: 1.2;
}

#fed-table ul a,
#fed-table table :is(th,td) {
  position: relative;
  z-index: 0;
}

#fed-table table a {
  display: block;
}

/* Background colors */
#fed-table ul:nth-of-type(1) :is(a, strong),
#fed-table table tr>th:nth-child(1),
#fed-table table tr>td:nth-child(1) a::before {background: var(--ws-blue); }

#fed-table ul:nth-of-type(2) :is(a, strong),
#fed-table table tr>th:nth-child(2),
#fed-table table tr>td:nth-child(2) a::before {background: var(--ws-red); }

#fed-table ul:nth-of-type(3) :is(a, strong),
#fed-table table tr>th:nth-child(3),
#fed-table table tr>td:nth-child(3) a::before {background: var(--ws-yellow); }


/* Link colors */
#fed-table ul :is(a, strong),
#fed-table table :is(th, a) {
  color: #000;
}

#fed-table table :is(th, a, th>a)>strong {
  color: inherit;
  transition: none;
}

#fed-table li::before {
  display: none;
}

#fed-table li {
  border-color: inherit;
  margin: 0 0 .375em;
  padding: 0;
}


.accordions ~ h2 {
  margin-top: 2rem;
}


/* DACA - UNDOCUMENTED PAGE ------------------------------ */
main.daca .pageHeader .wrap { overflow: hidden; }
main.daca .pageHeader h1 { margin: 0; }




/* SINGLE POSTS PAGE ------------------------------ */

.single article .buttons {
  margin: 0 0 1em;
  text-align: right;
}

.single article .buttons .button + .button {
  margin-left: 1em;
}

#content.single .entry-header {
  margin: 0 0 2em;
}



/* SEARCH / FILTERS  ------------------------------ */

#filter-search {
  padding: 0 0 3em;
  position: relative;
}

main.advanced-search #filter-search { padding: 4em 0 3em; }

#filter-search .filter-wrap {
  display: flex;
  flex-direction: row;
}

#filter-search #filters { margin: 0; padding: 0 3em 0 0; width: 16.75em; }

#filter-search #results { padding: 0 0 2em; width: calc(100% - 16.75em); }
#filter-search #results :where(ul, div).narratives { border-bottom: .25em solid #F1F1F1; min-height: 50vh; padding-bottom: 2em; }
#filter-search #results :where(ul, div).narratives li:first-of-type { margin-top: .875em; }

#filters ul li {list-style: none;margin: 0;padding: .125em 0;position: relative; }
#filters ul li::before { display: none; }

#filters>ul>li {border-top: .125em solid #F1F1F1;margin: 0;padding: .5625em 0; }
#filters>ul>li:last-child { border-bottom: .125em solid #F1F1F1; }

#filters>ul>li.active::after { opacity: 1; }
#filters>ul>li.active>button::before, #filters>ul>li.active>button.expand::after { opacity: 0; }

#filters>ul>li>button {
  background: transparent;
  color: var(--ws-dark-blue);
  display: block;
  outline: 0;
  padding: 0 1em 0 0;
  position: relative;
  text-align: left;
  text-transform: none;
  width: 100%;
}

#filters>ul>li>button:hover,
#filters>ul>li>button:focus,
#filters>ul>li>button:hover font,
#filters>ul>li>button:focus font { color: var(--ws-blue); }

#filters>ul>li>button::after, #filters>ul>li>button::before {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  content: '';
  height: .75em;
  left: auto;
  opacity: 1;
  right: 0;
  position: absolute;
  top: .125em;
  width: .75em;
}

/* Category expand plus / minus */
#filters>ul>li>button::before { background-image: url('./images/icons/plus.svg'); }
#filters>ul>li>button::after { background-image: url('./images/icons/minus.svg'); opacity: 0; }
#filters>ul>li>button.expand::before { opacity: 0; }
#filters>ul>li>button.expand::after { opacity: 1; }


/* Filters within category ----- */
#filters ul ul {display: none;margin: .75em 0 0; }
#filters button.expand+ul {display: block; }

#filters>ul>li ul>li { line-height: 1; }
#filters>ul>li ul>li>button {
  background: transparent;
  color: var(--ws-dark);
  line-height: 1.4;
  margin: 0 0 .0625em;
  outline: 0;
  padding: 0 0 0 1.625em;
  position: relative;
  text-align: left;
  text-transform: none;
  width: 100%;
}

#filters > ul > li ul > li.level-1{
  padding-left: 0;
}

#filters > ul > li ul > li.level-2{
  padding-left: 1em;
}

#filters > ul > li ul > li.level-3{
  padding-left: 2em;
}

#filters>ul>li ul>li>button:hover {color: var(--ws-red); }

#filters>ul>li ul>li>button::before,
#filters>ul>li ul>li>button::after {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: .875em .875em;
  content: '';
  height: .875em;
  left: .3125em;
  position: absolute;
  top: .1875em;
  width: .875em;
}

#filters>ul>li ul>li>button::before { background-image: url('./images/icons/square.svg'); opacity: 1; }
#filters>ul>li ul>li.on>button::before { opacity: 0; }

#filters>ul>li ul>li>button::after { background-image: url('./images/icons/square-checked.svg'); opacity: 0; }
#filters>ul>li ul>li.on>button::after { opacity: 1; }

/* State Filters ----- */
li#state-filter { display: none; }
li#state-filter ul {
  background: rgba(71,87,102,.05);
  display: block;
  height: 192px;
  margin: .5em 0 0;
  overflow: auto;
  padding: 0;
}

/* PAGINATION ---------- */
#filter-search .pagination { color: var(--ws-dark-blue); }
#filter-search .pagination { margin: 1.5em 0; text-align: center; }

#filter-search .pagination a { display: inline-block; }

#filter-search .pagination a {
  background-position: center center;
  background-repeat: no-repeat;
  padding: .5em .5em;
}

#filter-search .pagination a:hover { opacity: .5; }

#filter-search .pagination a.prev, #filter-search .pagination a.next { background-size: .42em 1.125em; }
#filter-search .pagination a.first, #filter-search .pagination a.last { background-size: .84em 1.125em; }

#filter-search .pagination a.first { background-image: url('./images/icons/page-first.svg'); }
#filter-search .pagination a.prev { background-image: url('./images/icons/page-prev.svg'); }
#filter-search .pagination a.next { background-image: url('./images/icons/page-next.svg'); }
#filter-search .pagination a.last { background-image: url('./images/icons/page-last.svg'); }

#filter-search .pagination form { display: inline-block; margin: 0 2em; }
#filter-search .pagination input {
  background: #F1F1F1;
  border: .125em solid rgba(50,89,107,.25);
  margin: 0 .375em;
  padding: .25em .25em;
  text-align: center;
  width: 2.5em;
}




/* ADVANCED SEARCH ------------------------------ */

.pageHeader form input[type='search'] {
  background: #F1F1F1;
  border-radius: .1875em;
  padding: .625em 1em .6875em 1em;
  width: 15.3125em;
}

.pageHeader form button {
  background: var(--blue);
  border-radius: .1875em;
  margin: 0 0 0 .3125em;
  padding: .75em .875em;
}

.pageHeader form button::before {
  display: none;
}

.pageHeader form span {
  color: #FFF;
  display: block;
  margin: .75em 0 0;
}

.pageHeader ::-webkit-input-placeholder {
  font-style: italic;
}

.pageHeader :-ms-input-placeholder {
  font-style: italic;
}

.pageHeader ::-moz-placeholder {
  font-style: italic;
}

.pageHeader ::-ms-input-placeholder {
  font-style: italic;
}

.pageHeader ::placeholder {
  font-style: italic;
}

/* No results ---------- */
.no-results {
  margin: 6em auto;
  max-width: 32.5625em;
  text-align: center;
  width: 100%;
}

.no-results svg {
  height: 1.25em;
  width: 1.125em;
}

.no-results p {
  color: var(--ws-red);
  font-size: 1.5em;
}



/* DEFAULT TEMPLATES ------------------------------ */

main.default .pageHeader h1 { margin: 0; }
main.default .pageHeader .wrap { overflow: hidden }

main.default > .wrap, main.fullWidth > .wrap{
  max-width: 2400px;
  padding-bottom: 2em;
  padding-top: 4em;
}



/* DATA TOOLS ------------------------------ */

#maps.data-tools {
  background-image: url('./images/bg-plus.png'), url('./images/bg-plus.png');
  background-repeat: repeat-x, repeat-x;
  background-position: center 34%, 50% -18em;
  padding: 4em 0 0;
}

#maps.data-tools .button-row { margin: 1em 0 0; }
#maps.data-tools h3 { text-align: center; }

#maps .blue.black-text text, #maps .gray.black-text text { fill: #000; }

#map-filters {background: #E2E7EC;margin: 2em 0 3em;padding: 1em 0; }
#map-filters h3 { margin: 0; }
#map-filters h3>svg { height: .875em; opacity: .25; position: relative; top: .125em; width: .75em; }
#map-filters h3>svg path { fill: var(--ws-slate); }

#map-filters hr { margin: .75em 0; }

#map-filters form {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0 2.25em 1em;
  text-align: left;
}

#map-filters .column { width: 48%; }
#map-filters fieldset {border: 0;margin: .75em 0 0;padding: 0; }
#map-filters legend {color: var(--ws-dark-blue);font-size: 1.25em;margin: 0 0 .25em; }
#map-filters label, #filters label {
  color: var(--ws-dark-blue);
  cursor: pointer;
  display: block;
  padding: 0 0 .125em 1.625em;
  position: relative;
}

#map-filters label { padding: 0 0 .125em 1.875em; }
#map-filters label:hover,
#filters label:hover { color: var(--ws-red); }
#map-filters input[type="radio"], #filters input[type="radio"] { left: -200vw; position: absolute; }

#map-filters label span.dot, #filters label span.dot {
  border: .125em solid rgba(50,89,107,.25);
  border-radius: 50%;
  display: block;
  height: 1em;
  left: .125em;
  position: absolute;
  top: .1875em;
  width: 1em;
}

#map-filters label span.dot::after, #filters label span.dot::after {
  background: var(--ws-red);
  border-radius: 50%;
  content: '';
  height: .3125em;
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  width: .3125em;
}

#map-filters input ~ span { transition: none; }
#map-filters input:checked + span.dot, #map-filters label:hover span.dot, #filters input:checked + span.dot { border-color: var(--ws-red); }

#map-filters input:checked + span.dot::after, #filters input:checked + span.dot::after { opacity: 1; }
#map-filters input:checked ~ span, #filters input:checked ~ span { color: var(--ws-red); }

#filters label {line-height: 1.4;padding: 0 0 0 1.6875em; }
#filters label span.dot {border: 1px solid rgba(50,89,107,.25);height: .875em;left: .3125em;top: .1875em;width: .875em; }




/* CALL TO ACTION RIBBON ------------------------------ */
#call-to-action {
  background-image: url('./images/bg-call-to-action.png'), url('./images/bg-plus.png');
  background-repeat: no-repeat, repeat-x;
  background-position: center center, center -16.75em;
  background-size: cover, auto;
  padding: 4em 0 6em;
  position: relative;
  text-align: center;
}

#call-to-action h2 { text-align: center; }
#call-to-action .button { border: 1px solid #FFF; margin: 1em 0 0; }

/* Call to Action - States Data ----- */
#call-to-action.states-data {
  background-image: url('./images/bg-states-data.png'), url('./images/bg-plus.png');
}

#call-to-action #state-select { text-align: center; }
#call-to-action #state-select select {
  background: #FFF url('./images/icons/angle-down.svg') no-repeat right 1.25em center / 2em 2em;
  max-width: 17em;
  width: 100%;
}

#call-to-action.states-data .wrap { max-width: 56em; }
#call-to-action.states-data .textbox { text-align: left; }




/* CONTACT PAGE ------------------------------ */
.frm_form_fields fieldset { border: 0; margin: 0; padding: 0; }
.frm_error_style, .frm_error, .frm_required { color: #FF0000; }
.frm_primary_label { display: block; margin: 0 0 .125em; }
.frm_form_fields input[type='text'],
.frm_form_fields input[type='email'],
.frm_form_fields input[type='tel'],
.frm_form_fields :is(select, textarea, input[type='number'], input[type='url'] ){
  border-radius: 1em;
  width: 100%;
}

.frm_form_field,
.frm_dropzone {
  margin: 0 0 1em;
}

.frm_forms select {
  padding-block: .5em;
}

.frm_opt_container { margin: 0 0 1.25em; }

.frm_checkbox label {
  align-items: start;
  display: flex;
  justify-content: start;
  text-align: left;
}

.frm_checkbox label input[type="checkbox"] {
  flex: 0;
  margin: 0 .5em 0 0;
  position: relative;
  top: .25em;
  width: auto;
}

h3.frm_section_spacing {
  margin-top: 2rem;
}

.expert-assistance h3.frm_section_spacing {
  display: none;
}

.frm_form_field .frm_top_container:last-child,
.frm_form_field .frm_opt_container:last-child,
.frm_top_container .frm_opt_container:last-child {
  margin: 0;
}

.frm_slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ddd;
  transition: .4s;
  border-radius: 30px;
}

.frm_slider:before {
  border-radius: 50%;
  position: absolute;
  content: "";
  height: 23px;
  width: 23px;
  left: 1px;
  bottom: 1px;
  background-color: #fff;
  transition: .4s;
  box-shadow: 0 2px 6px rgba(41,58,82,.31);
}

input:checked+.frm_switch .frm_slider {
  background-color: var(--blue);
}

.vertical_radio, .frm_section_heading, #frm_field_80_container, .frm_top_container {
  margin: 0 0 1.25em;
}

#form_registration-payment-form select { padding: .5em 3em .5em 1em; }

.frm_add_form_row::after {
  color: var(--ws-dark);
  content: ' |';
  pointer-events: none;
}

.frm_form_field .frm_description {
  font-style: italic;
  font-size: 0.875rem;
}

.frm_form_field.vertical_radio .frm_description {
  margin: 0.375rem 0 0;
}

/* Refugee Hub form */
#form_refugee-hub h3.frm_section_spacing {
  margin-top: 0;
}

#frm_field_679_container {
  display: flex;
  flex-wrap: wrap;
}

#frm_field_685_container {
  width: 100%;
}




/* MISC STUFF ADDED BY TECH ------------------------------ */

li>button>div { display:inline; width:2em; padding-right:1em; background-color:#edc048; }

#filter-tools-pagination > a:hover { cursor:pointer; }

/* Chrome, Safari, Edge, Opera */
#filter-tools-page::-webkit-outer-spin-button,
#filter-tools-page::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
#filter-tools-page[type=number] {
  -moz-appearance: textfield;
}




/* ACCORDIONS (MODIFIED FROM USJ) ------------------------------ */

:is(.accordions, .gp-resources) .accordion {
  background: #FFF;
  border-bottom: .125em solid rgba(72,87,103,.15);
  position: relative;
}

:is(.accordions, .gp-resources) .accordion:first-of-type { border-top: .125em solid rgba(72,87,103,.15); }
:is(.accordions, .gp-resources) .accordion:nth-child(odd) {  background: #F4F5F6; }


.accordions .accordion>:is(h2,h3,h4), .gp-resources h2 {
  font-size: 1.375em;
  margin: 0;
}

:is(.accordions, .gp-resources) p { margin: 0 0 1em; }

:is(.accordions, .gp-resources) button {
  background: transparent;
  color: var(--ws-dark);
  font-size: .875em;
  margin: 0;
  padding: 1em 3em 1em 1.5em;
  position: static;
  text-align: left;
  width: 100%;
}

.accordions button {
  border-radius: 0;
}

:is(.accordions, .gp-resources) button::before { display: none; }

.accordion-reveal {
  height: 0;
  overflow: hidden;
  position: relative;
  top: 0;
  transition: var(--ws-transition);
  outline: 0;
}

.accordion-reveal>div { padding: 0 1.9375em .5em; }

.accordion-reveal>div>*:first-child {
  margin-top: 1.5rem;
}

.accordion-reveal > div.ws-flex { padding-bottom: 1.75em; }

.accordion-icon {
  height: 2em;
  width: 2em;
  position: absolute;
  right: .5em;
  top: .5em;
  display: block;
  border-radius: 50%;
}

.accordion-icon::before,
.accordion-icon::after {
  background: #485766;
  content: "";
  height: .125em;
  width: 1em;
  top: 50%;
  right: 50%;
  transform: translate(50%,-50%);
  position: absolute;
}

.accordion-icon:before {
  transform: translate(50%,-50%) rotate(-90deg);
}

.expanded .accordion-icon:before {
  transform: translate(50%,-50%) rotate(0);
}




/* AGENDA BLOCK ------------------------------------- */

.agenda-heading {
  text-align: center;
  margin-top: 1rem;
}
.agenda {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.agenda .agenda-row {
  width: 100%;
}
.agenda .agenda-row > * {
  flex: 1 1 0;
  padding: 1rem .5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.agenda .agenda-row > .agenda-row-heading h3 {
  font-size: 1.375rem;
  font-weight: 500;
}
.agenda .agenda-row p {
  font-size: 0.9375rem;
}
.agenda .agenda-row > * > *:last-child {margin-bottom: 0; }
.agenda .agenda-row > .event > *:nth-last-child(2) {
  margin-top: 0;
  margin-bottom: .25rem;
}
.agenda .agenda-row > .event:only-child {
  max-width: 31.25rem;
  margin: 0 auto;
}
.agenda .agenda-row .agenda-speaker, .agenda .agenda-row-heading .agenda-time {margin-top: auto; }
.agenda h4 {
  font-size: 1.25rem;
}
.agenda .agenda-top > div {
  font-size: 1.375rem;
}
.agenda + h2.agenda-heading {
  margin-top: 4rem;
}
.agenda .agenda-row .agenda-speaker > a, .agenda .agenda-row .agenda-speaker > span {
  display: table;
  margin: 4px auto;
}
.agenda .agenda-row .agenda-speaker > a:not(:last-child) {
  margin: 4px auto 6px;
}




/* CONFERENCE TEMPLATE ------------------------------ */

/* HERO ---------- */
#conf-hero {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 2.125em 0;
  position: relative;
  z-index: 1;
}

#conf-hero .textbox {
  background: var(--ws-purple);
  margin: 0 5em;
  padding: 3em 1.5em;
  width: 22.8125em;
}

#conf-hero .textbox.blue {
  background: #475767;
}

#conf-hero .textbox.green {
  background: transparent;
  position: relative;
}

#conf-hero .textbox.green::before {
  background-image: linear-gradient(180deg, rgba(76,142,36,.9) 0%, var(--ws-green) 100%);
  bottom: 0;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}

#conf-hero .textbox h1 {
  color: #FFF;
  font-size: 1.4375em;
}

#conf-hero .textbox h1>span {
  color: inherit;
  display: block;
  font-size: 3.4em;
  line-height: 1.1;
  text-transform: uppercase;
}

#conf-hero .textbox h1::after {
  background: rgba(0,0,0,.3);
  content: '';
  display: block;
  height: 0.218em;
  margin: .75em 0;
  width: 2.174em;
}

#conf-hero .textbox p { color: #FFF; font-size: 1.25em; }

#conf-hero .textbox time {color: #FFF;font-size: 1.125em; }
#conf-hero .textbox time+p { font-size: 1.125em; }

#conf-hero .button {
  background: rgba(0,0,0,.3);
}

#conf-hero .button::before {
  background: url('./images/icons/angle-down-white.svg') no-repeat right 1em center / 1em .875em;
}

#conf-hero .button:hover {
  background: rgba(0,0,0,.5);
}

#conf-hero .button:hover::before {
  animation-name: icon-drop, icon-bobble;
  animation-duration: .3s, 1.5s;
  animation-delay: 0s, .3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}



/* CALLOUTS ---------- */
.conf-callouts {
  background-image: url('./images/bg-plus.png'), linear-gradient(180deg, var(--ws-light-3) 0%, #FFF 100%);
  background-repeat: repeat-x, no-repeat;
  background-position: 50% -12.4em, 0 100%;
  margin-top: 0;
  padding: 5.5em 0 0;
  position: relative;
  z-index: 0;
}

.conf-callouts::before {
  top: 0;
}

.conf-callouts .wrap {
  max-width: 80.75em;
}

.conf-callouts ul {
  display: flex;
  justify-content: center;
  margin: 0 -.5em;
}

main .conf-callouts ul li {
  margin: 0;
  padding: 0 .5em;
  text-align: center;
  width: 20%;
}

.conf-callouts li::before { display: none; }

.conf-callouts li a {
  align-items: center;
  border: .25em solid #FFF;
  display: flex;
  flex-direction: column;
  justify-content: start;
  height: 100%;
  padding: 2.75em 1em;
}

.conf-callouts li a:hover,
.conf-callouts li a:focus {
  transform: scale(.92,.92);
}

.conf-callouts h2 {
  color: #FFF;
  font-size: 1.375em;
  margin: 0;
}

.conf-callouts svg {
  height: 2.25em;
  margin: 0 0 1.5em;
  width: auto;
}
.conf-callouts svg path { fill: #FFF !important; }

.conf-callouts li.yellow a { background-color: var(--ws-yellow); }
.conf-callouts li.blue a { background-color: var(--ws-blue); }
.conf-callouts li.gray a { background-color: var(--ws-dark-blue); }
.conf-callouts li.pink a { background-color: var(--ws-red); }
.conf-callouts li.green a { background-color: var(--ws-green); }
.conf-callouts li.purple a { background-color: var(--ws-purple); }


#bottom-callouts { background-position: 50% -6.5em, 0 100%; padding: 0; position: relative; z-index: 1; }
#bottom-callouts::before { display: none; }
#bottom-callouts .wrap { position: relative; top: 4em; }
#bottom-callouts ul { margin: 0; }


/* PARTNERS ROTATOR ---------- */
#conference-partners {
  padding: 1.5em 0;
  text-align: center;
}

#conference-partners .wrap {
  max-width: 80.75em;
  overflow: hidden;
}

#conference-partners h2 {
  font-size: 1.75em;
}

#conference-partners figcaption {
  color: var(--ws-dark-blue);
}

#sponsor-rotator {
  padding: 0 3em;
  position: relative;
}

#sponsor-rotator figure {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
  text-align: center;
}

#sponsor-rotator figure a:hover {
  transform: scale(.92,.92);
}

#sponsor-rotator img {
  display: inline-block;
  margin: 0 0 1em;
  max-height: 6em;
  max-width: calc(100% - 3em);
}

#sponsor-rotator .slick-dots {
  content-visibility: hidden;
  display: none;
}

#sponsor-rotator .slick-track {
  align-items: center;
  display: flex;
}

#sponsor-rotator .slick-list,
#sponsor-rotator .slick-track,
#sponsor-rotator .slick-slide {
  max-height: none;
  min-height: 0;
}

#sponsor-rotator button {
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 2em;
  border-radius: 0;
  opacity: .25;
  padding: 1em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

#sponsor-rotator button:hover { opacity: .75; }

#sponsor-rotator button::before { display: none; }

#sponsor-rotator button.slick-prev {
  background-image: url('./images/conference/angle-left.svg');
  left: 0;
}

#sponsor-rotator button.slick-next {
  background-image: url('./images/conference/angle-right.svg');
  right: 0;
}


/* Refugee page overrides */
#conference-partners.refugee-page {
  padding-block: 3em;
}



/* WELCOME RIBBON ---------- */
#conf-welcome {
  background-color: var(--ws-light-3);
  background-image: url('./images/bg-plus.png');
  background-repeat: repeat-x;
  background-position: 50% -16.5em;
  padding: 6em 0 0;
}

#top-callouts + #conf-welcome {
  margin-top: 3.5em;
}

#conf-welcome .wrap {
  max-width: 80.75em;
}

#conf-welcome .image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#conf-welcome .image::before {
  content: '';
  display: block;
  padding: 0 0 60.5%;
}

#conf-welcome .textbox img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

#conf-welcome .textbox strong {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1.75em;
  line-height: 1.3;
  margin: 0 0 .5em;
}

#conf-welcome .textbox li strong {
  font-size: 1.25em;
}

#conf-welcome .textbox .button:nth-of-type(1):not(:hover):not(:focus) { background: var(--ws-purple); }
#conf-welcome .textbox .button:nth-of-type(1) { margin: 0 1em 0 0; }

#conf-welcome .embed-container {
  position: relative;
}

#conf-welcome .embed-container::before {
  content: '';
  display: block;
  padding: 0 0 56.25%;
}

#conf-welcome .embed-container iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}


/* Refugee page overrides */
#conf-welcome.refugee-page figure {
  margin-block: 1.75em;
}

#conf-welcome.refugee-page .textbox img {
  margin-inline: 0;
}

#conf-welcome.refugee-page .textbox .border img {
  border: 4px solid #FFF;
}


#conf-welcome article {
  margin: 0 0 1.75em;
}

#conf-welcome article :is(time, p) {
  line-height: 1.625;
  margin: 0 0 .25em;
}

#conf-welcome time {
  background: url('./images/icons/calendar.svg') no-repeat left top .1875em / auto .75em;
  color: var(--ws-green);
  font-size: 1.0625em;
  padding-left: 1em;
}

#conf-welcome h3 {
  color: var(--ws-dark);
  font-size: 1.25em;
  margin: 0 0 .25em;
}

#conf-welcome p {
  color: #4A4A4A;
}

#conf-welcome p.org {
  font-size: .875em;
}

#conf-welcome article a {
  color: #4A4A4A;
}

#conf-welcome .events .button {
  padding-inline: 1.5em;
}



/* BANNER IMAGE RIBBON ---------- */
#conf-banner {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  max-height: 37.5em;
  position: relative;
  z-index: 0;
}

#conf-banner::before {
  content: '';
  display: block;
  padding: 0 0 35.75%;
}

/* CONFERENCE TESTIMONIALS ------------------------------ */
#testimonials {
  background-color: var(--ws-light-3);
  background-image: url('./images/bg-plus.png');
  background-repeat: repeat-x;
  background-position: 50% -16.75em;
  padding: clamp(3em, 2.308em + 3.08vw, 5em) 0;
  position: relative;
  text-align: center;
}

#testimonials .wrap {
  max-width: 50em;
  padding: 0 clamp(2em, 1.444em + 1.78vw, 3em); /* 500 - 1400 */
}

#testimonials blockquote {
  margin: 0 auto;
  max-width: 36.25em;
}

#testimonials-slider {
  display: contents;
  margin: 2.25em 0 0;
}

#testimonials .slick-arrow {
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto clamp(3em, 2.654em + 1.54vw, 4em);
  border: 0;
  height: 100%;
  opacity: .25;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

#testimonials .slick-track, #testimonials .slick-slide, #testimonials .slick-list { min-height: 0; }

#testimonials .slick-arrow:hover {
  opacity: .75;
}

#testimonials .slick-prev {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path d="M24.913,247.5l117.8-116a12.011,12.011,0,0,1,17,0l7.1,7.1a12.011,12.011,0,0,1,0,17L64.613,256l102.3,100.4a12.011,12.011,0,0,1,0,17l-7.1,7.1a12.011,12.011,0,0,1-17,0l-117.8-116A12.1,12.1,0,0,1,24.913,247.5Z" fill="%232A3B4C"/></svg>');
  left: 0;
}

#testimonials .slick-next {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path d="M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z" fill="%232A3B4C" /></svg>');
  right: 0;
}


#testimonials button::before { display: none; }

#testimonials h3 { font-size: clamp(1em, 0.957em + 0.19vw, 1.125em); }
#testimonials p { font-size: clamp(0.938em, 0.873em + 0.29vw, 1.125em); }

#testimonials cite { font-style: normal; }
#testimonials cite>span { display: block; font-style: italic; }
#testimonials cite + .button {
  margin: .75em 0 0;
}


/* Refugee page overrides */
#testimonials.refugee-page .wrap {
  max-width: 62.625em;
}

#testimonials.refugee-page h2 {
  margin-bottom: .75em;
}

#testimonials.refugee-page blockquote {
  align-items: start;
  display: flex;
  max-width: 52em;
  text-align: left;
}

#testimonials.refugee-page blockquote>img {
  margin-right: 1em;
  max-width: clamp(5em, 3.226em + 7.88vw, 10.125em);
}

#testimonials .disclaimer {
  margin: 2.5em auto 0;
  max-width: 54.8125em;
}

#testimonials .disclaimer p {
  font-size: 1em;
}



/* CONTACT FORM ---------- */
#conf-contact {
  padding: 4em 0;
  text-align: center;
}

#conf-contact .wrap {
  max-width: 52.125em;
}

#conf-contact form { margin: 3em 0 0; }
#conf-contact form label {
  text-align: left;
}

#conf-contact textarea { margin: 0 0 2em; width: 100%; }

#conf-contact .vertical_radio { text-align: left; }
#conf-contact .frm_checkbox { padding-left: 1.625em; position: relative; }
#conf-contact .frm_checkbox input { left: 0; position: absolute; }
#conf-contact .frm_submit { margin: 0 0 2em; }


/* CONFERENCE DETAIL TEMPLATE ------------------------------ */
.page-template-template-conference-detail main .wrap {
  background-image: url(./images/bg-plus.png);
  background-repeat: repeat-x;
  background-position: 50% -16.5em;
}

.conference-pageheader {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.conference-pageheader::before {
  content: '';
  display: block;
  padding: 0 0 15%;
}

/* Sidebar ----- */

#conference-info a { background: var(--ws-purple); display: block; padding: 1.5em 1.125em; }
#conference-info a:hover { background: #563E85; }

#conference-info h2 { color: #FFF; font-size: 1.1875em; }

#conference-info h2::after {
  background: rgba(0,0,0,.3);
  content: '';
  display: block;
  height: 0.218em;
  margin: .75em 0;
  width: 2.174em;
}

#conference-info h2>span {
  color: #FFF;
  text-transform: uppercase;
}

#conference-info time,
#conference-info p {
  color: #FFF;
  font-size: .875rem;
  margin: 0;
}


/* SUCCESS Detail template override */
.success #conference-info h2 {
  margin: 0;
}

.success #conference-info h2::after {
  display: none;
}


/* SUCCESS Directory ------------------------------ */
.success-directory .pageHeader:after {top:calc(100% + 9px); height:4.8125rem}
.success-directory .pageHeader h1,
.success-directory .pageHeader p {text-shadow: 0 1px 0 rgba(0,0,0,0.22); }
.success-directory #success-directory-list:after {content:""; position:absolute; top:0; left:0; display: block; height:4.8125rem; width:100%; background-image: linear-gradient(180deg, rgba(255,255,255,0.00) 25%, #FFFFFF 100%); }
.success-directory #success-directory-list .wrap {z-index:2; overflow:visible; padding:0; max-width:77.0625rem; }
.success-directory #success-directory-list .directory-filters {padding-bottom: 2rem; border-bottom: 1px solid #CBD5DA; display: flex; flex-direction: column; position:relative; z-index:1; }
.success-directory #success-directory-list .directory-forms {display: flex; justify-content: center; margin-bottom: 2em; }
.success-directory #success-directory-list .directory-filters > .button {margin: 0 auto; }
.success-directory #success-directory-list .directory-filters p {margin-bottom: .5rem; }
.success-directory #success-directory-list .directory-filters .multi-select button {cursor:pointer; font-size:1rem; color:var(--ws-dark-blue); display: inline-block; line-height:2.5rem; padding: 0 2em 0 1em; background: var(--ws-light-1) url(images/select-arrow.svg) no-repeat calc(100% - 1.25rem) 50%; border-radius: 3px; }
.success-directory #success-directory-list .directory-filters .multi-select button:hover,
.success-directory #success-directory-list .directory-filters .multi-select button:focus,
.success-directory #success-directory-list .directory-filters .multi-select:hover button,
.success-directory #success-directory-list .directory-filters .multi-select.show-dropdown button {background-color:#DCDCDC}
.success-directory #success-directory-list .directory-filters .multi-select button:before {display:none}
.success-directory #success-directory-list .directory-filters .multi-select button {width:100%; text-align:left}
.success-directory #success-directory-list .directory-filters .multi-select.show-dropdown button {pointer-events: none; }
.success-directory #success-directory-list .directory-filters .multi-select .multi-select-dropdown {position:absolute; z-index: 1; padding:1em; background:var(--ws-light-1); box-shadow: 0 2px 24px 0 rgba(0,0,0,0.20); border-radius: 3px; opacity:0; pointer-events:none; transition: ease all 200ms; transform: translateY(-10px); }
.success-directory #success-directory-list .directory-filters .multi-select.show-dropdown .multi-select-dropdown {opacity:1; pointer-events:all; transform:none}
.success-directory #success-directory-list .directory-filters .multi-select .multi-select-dropdown label {font-style: normal; cursor:pointer; position:relative; padding-left:1.25em}
.success-directory #success-directory-list .directory-filters .multi-select .multi-select-dropdown label input {position: absolute; left:0; top:0.25rem}
.success-directory #success-directory-list .directory-filters .button.hollow.purple {line-height: 2.5rem; padding: 0 1.5em}
.success-directory #success-directory-list #directory-list {margin: 2.1875rem 0; display: flex; flex-wrap:wrap; justify-content:center}
.success-directory #success-directory-list #directory-list li {padding:0; text-indent:0; background: var(--ws-light-1); position:relative}
.success-directory #success-directory-list #directory-list li:before {display: none}
.success-directory #success-directory-list #directory-list li .headshot {display: block; padding-bottom: 100%; background-size: cover; background-position:center}
.success-directory #success-directory-list #directory-list li span {display: block; line-height:1em; }
.success-directory #success-directory-list #directory-list li .name {line-height: 1em;margin-bottom:0.25rem; }
.success-directory #success-directory-list #directory-list li .title {font-style: italic; font-size: 0.875rem;line-height: 0.9375rem; }
.success-directory #success-directory-list #directory-list li .location {font-size: 0.875rem; font-weight:600; }
.success-directory #success-directory-list #directory-list li a[href^="mailto:"] {font-size: 0.875rem;color: var(--ws-dark-blue); }
.success-directory #success-directory-list #directory-list li .social-links {display: flex; flex-wrap:wrap; }
.success-directory #success-directory-list #directory-list li .social-links a {margin:0.625rem 0.625rem 0 0}
.success-directory #success-directory-list #directory-list li .social-links a,
.success-directory #success-directory-list #directory-list li .social-links a img {display: block}
.success-directory #success-directory-list #directory-list li .social-links a:hover {filter: grayscale(1) brightness(0);opacity: 0.6; }
.success-directory #success-directory-list #directory-list li .brief .button {background: var(--ws-dark-blue-2);font-weight:600;color:#fff;font-size:0.875rem;padding:0 1.5em;line-height: 2.5rem;position:absolute; }
.success-directory #success-directory-list #directory-list li .brief .button:before {display: none; }
.success-directory #success-directory-list #directory-list li .brief .button:after {content:"";padding-left: 1em; background: url(images/arrow-right-white.svg) no-repeat center right}
.success-directory #success-directory-list .load-more-button {text-align:center; padding-top:2rem; border-top:1px solid #CBD5DA; }
.success-directory #success-directory-list .load-more-button .button {padding: 0 3rem; line-height: 2.5rem}
.success-directory #success-directory-list-single {position:relative; padding: 1.5625rem 1rem 7.5rem; color:var(--ws-dark-blue)}
.success-directory #success-directory-list-single:after {content:""; position:absolute; top:0; left:0; display: block; height:4.8125rem; width:100%; background:#fff}
.success-directory #success-directory-list-single .wrap {z-index:2;overflow: hidden;padding:0;max-width:54.875rem}
.success-directory #success-directory-list-single .back-button a {color: var(--ws-blue);font-weight:700;font-size:0.875rem;line-height:2.1875rem}
.success-directory #success-directory-list-single .back-button a:before {content:"";padding-left: 1em; background:url(images/back-arrow-blue.svg) no-repeat center left; }
.success-directory #success-directory-list-single .back-button a:hover {color:var(--ws-dark-blue)}
.success-directory #success-directory-list-single .profile-top {display: flex; }
.success-directory #success-directory-list-single .profile-top .headshot {background-size:cover; background-position: center; }
.success-directory #success-directory-list-single .profile-top .profile-brief h2 {font-weight: 700;color: var(--ws-dark-blue); line-height:1em; margin:0}
.success-directory #success-directory-list-single .profile-top .profile-brief .pronouns {display: block; font-style:italic}
.success-directory #success-directory-list-single .profile-top .profile-brief .title-and-location {display: block; font-weight:600; margin: 1.125rem 0; line-height:1em}
.success-directory #success-directory-list-single .profile-bottom table {width:100%; }
.success-directory #success-directory-list-single .profile-bottom table tr {border-top: 1px solid #ECEFF2; }
.success-directory #success-directory-list-single .profile-bottom table tr:last-child {border-bottom: 1px solid #ECEFF2; }
.success-directory #success-directory-list-single .profile-bottom table tr:nth-child(odd) {background: rgba(236,239,242,.3); }
.success-directory #success-directory-list-single .profile-bottom table td:first-child {font-weight:700}
.success-directory #success-directory-list-single .join-the-directory {text-align: center; }


/* Content area ----- */
#cfd .button { background: #B7A1E2; }
#cfd .button + .button { margin-left: 1.5em; }

#cfd .button::before {
  background: url('./images/icons/angle-down-white.svg') no-repeat right 1em center / 1em .875em;
}

#cfd .button:hover { background: #563E85 }

#cfd .button:hover::before {
  animation-name: icon-drop, icon-bobble;
  animation-duration: .3s, 1.5s;
  animation-delay: 0s, .3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}

#cfd .buttons { margin: 0 0 2em; }

#cfd section {
  border-top: .25em solid var(--ws-light-3);
  padding: 3em 0;
}

#cfd section div + div {margin: 2.5em 0 0; }

#cfd .logo {
  background-position: center;
  background-repeat: no-repeat;
  background-size: calc(100% - 2.5em) auto;
  border: 1px solid #E0E0E0;
  border-radius: .3125em;
  float: right;
  margin: 0 0 1em 2em;
  width: 13.8125em;
}

#cfd .logo::before {
  content: '';
  display: block;
  padding: 0 0 47.5%;
}

#cfd h2 {
  color: var(--ws-purple);
  font-size: 1.5625em;
  margin: 0 0 1.25em;
}

#cfd h3 {
  color: var(--ws-dark-blue);
  font-size: 1.875em;
  line-height: .9;
  margin: 0 0 .25em;
}

#cfd h3 + em {
  color: var(--ws-dark);
  display: block;
  margin: 0 0 1.5em;
}

.frm12 input:not[type="checkbox"] {
  width: 100%
}





/* ########################################### */
/* ############# STATE POLICY HUB ############# */
/* ########################################### */


/* STATE POLICY HUB PAGEHEADER ------------------------------ /
* - Main page ribbon 1
*/
.state-policy-hub .page-header-wrap .pageHeader {
  background: none;
  padding: 0;
  position: static;
  text-align: center;
  color: #fff;
}

.state-policy-hub .gp-pageheader {
  background: var(--ws-dark-3);
  position: relative;
}

.state-policy-hub .gp-pageheader:before {
  background: url(images/pageHeader.jpg) no-repeat center / cover;
  content: "";
  inset: 0;
  opacity: 0.15;
  position: absolute;
}

.state-policy-hub .gp-pageheader :is(.textbox, h1, p, li) {
  color: #fff;
}

.state-policy-hub .page-header-wrap .pageHeader:before {
  background: url(images/pageHeader.jpg) no-repeat center / cover;
  content: "";
  inset: 0;
  opacity: 0.15;
  position: absolute;
}

.state-policy-hub .page-header-wrap .background {
  display: none;
}

.state-policy-hub .page-header-wrap .wrap {
  display: block;
  text-align: center;
}

.state-policy-hub .page-header-wrap :is(.textbox, h1, p, li) {
  color: #fff;
}

.state-policy-hub .gp-just-text {
  text-align: center;
}

.state-policy-hub #sidenav > ul > li:not(.current_page_ancestor) {
  display: none;
}

/* Sticky Nav */
.in-state-tuition-state-financial-aid .gp-nav li:nth-of-type(3).on,
.child-of-in-state-tuition-state-financial-aid .gp-nav li:nth-of-type(3).on
{background: var(--ws-red); }

.occupational-licensure .gp-nav li:nth-of-type(4).on,
.child-of-occupational-licensure .gp-nav li:nth-of-type(4).on
{background: var(--ws-yellow); }


/* Colored Boxes */
.in-state-tuition-state-financial-aid .state-policy-hub.subpage .gp-colored-boxes li>a,
.child-of-in-state-tuition-state-financial-aid .state-policy-hub.subpage .gp-colored-boxes li>a
{ background: var(--ws-red); }

.occupational-licensure .state-policy-hub.subpage .gp-colored-boxes li>a,
.child-of-occupational-licensure .state-policy-hub.subpage .gp-colored-boxes li>a
{ background: var(--ws-yellow); }

:where(.in-state-tuition-state-financial-aid, .occupational-licensure) .state-policy-hub.subpage .gp-colored-boxes li>a:is(:hover, :focus-visible),
:where(.child-of-in-state-tuition-state-financial-aid, .child-of-occupational-licensure) .state-policy-hub.subpage .gp-colored-boxes li>a:is(:hover, :focus-visible)
{background: var(--ws-dark-blue); }







/* ########################################### */
/* ############# GRADUATE PORTAL ############# */
/* ########################################### */

:where(ul, div).ws-flex {
  --ws-gap: 1em;
  display: flex;
  flex-wrap: wrap;
  gap: var(--ws-gap);
}

:where(ul, div).ws-flex>:where(li, div, article) {
  width: calc( 99.9% / var(--ws-column-count) - ( var(--ws-gap) * ( var(--ws-column-count) - 1 ) / var(--ws-column-count) ) );
}




/* GRADUATE PORTAL PAGEHEADER ------------------------------ /
* - Main page ribbon 1, Resources template ribbon 1
*/

.gp-pageheader {
  background: var(--blue-2);
  padding-block: 2em;
}


.gp-pageheader .wrap {
  max-width: calc(76em + 2 * var(--ws-gutter));
}


.gp-pageheader h1 {
  line-height: 1;
}

.gp-pageheader p {
  font-size: clamp(1em, 0.957em + 0.19vw, 1.125em);
}





/* GRADUATE PORTAL COLORED BOXES ------------------------------ /
* - Main page ribbon 2
*/

.gp-colored-boxes {
  background-image: url('./images/bg-plus.png'), linear-gradient(180deg, var(--ws-light-3) 0%, #FFF 100%);
  background-repeat: repeat-x,no-repeat;
  background-position: 50% -12.4em,0 100%;
  padding-block: clamp(2em, 0.897em + 4.9vw, 5.188em) 1em;
}

.gp-colored-boxes .wrap {
  max-width: calc(76em + 2 * var(--ws-gutter));
}

.gp-colored-boxes ul {
  justify-content: center;
}

main .gp-colored-boxes ul li {
  aspect-ratio: 235 / 211;
  margin: 0;
  padding: 0;
  position: relative;
}

.gp-colored-boxes li::before {
  display: none;
}

.gp-colored-boxes li>a {
  align-items: center;
  bottom: 0;
  color: #FFF;
  display: flex;
  justify-content: center;
  left: 0;
  padding: 1.25em;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
}

.gp-colored-boxes li>a>strong {
  color: inherit;
  line-height: 1.27;
}

.gp-colored-boxes li:nth-child(5n+1)>a { background: var(--ws-green); }
.gp-colored-boxes li:nth-child(5n+2)>a { background: var(--ws-red); }
.gp-colored-boxes li:nth-child(5n+3)>a { background: var(--ws-yellow); }
.gp-colored-boxes li:nth-child(5n+4)>a { background: var(--ws-purple); }
.gp-colored-boxes li:nth-child(5n+5)>a { background: var(--ws-blue); }





/* GRADUATE PORTAL JUST TEXT ------------------------------ /
* - Main page ribbon 3
*/

.gp-just-text {
  padding-block: clamp(2rem, 1.654rem + 1.54vw, 3rem);
}

.gp-just-text .wrap {
  max-width: calc(54.875em + 2 * var(--ws-gutter));
}

.gp-just-text h2 {
  text-align: center;
}




/* GRADUATE PORTAL STUDENT NARRATIVES ------------------------------ /
* - Main page ribbon 4
*/

.gp-narratives {
  background: var(--ws-dark-blue);
  padding-block: 2.5em clamp(3em, 1.962em + 4.62vw, 6em);
}

.gp-narratives .wrap {
  max-width: calc(66em + 2 * var(--ws-gutter));
}

.gp-narratives h2 {
  color: #FFF;
  margin: 0;
  text-align: center;
}

main .gp-narratives ul:not(.flex-row).narratives li {
  background: #FFF;
  padding: 1.5em;
}





/* GRADUATE PORTAL ADVISORY BOARD ------------------------------ /
* - Main page ribbon 5
*/

.gp-advisory-board {
  padding-block: clamp(3em, 2.654em + 1.54vw, 4em) clamp(3em, 1.962em + 4.62vw, 6em);
  text-align: center;
}

.gp-advisory-board .wrap {
  max-width: calc(77em + 2 * var(--ws-gutter));
}

.gp-advisory-board h2 {
  margin: 0 0 1.5em;
}

main .gp-advisory-board ul {
  justify-content: center;
  --ws-gap: clamp(1.5em, 1.219em + 1.25vw, 2.313em);
}

main .gp-advisory-board li::before {
  display: none;
}

main .gp-advisory-board ul:not(.flex-row) li {
  background: #F5F5F5;
  margin: 0;
  padding: 0;
  text-align: left;
}

.gp-advisory-board .image {
  aspect-ratio: 1;
  background: no-repeat center / cover;
}

.gp-advisory-board .textbox {
  padding: 1.25em 1.25em 2em;
}

.gp-advisory-board :where(strong, i, b) {
  display: block;
  line-height: 1.25;
}

.gp-advisory-board strong {
  font-size: clamp(1.25em, 1.077em + 0.77vw, 1.75em);
}

.gp-advisory-board i {
  margin: 0 0 1em;
}

.gp-advisory-board :where(i, b) {
  font-size: .875em;
}




/* GRADUATE PORTAL CONTACT FORM ------------------------------ /
* - Main page ribbon 6
*/

.gp-form {
  padding-block: clamp(3em, 2.654em + 1.54vw, 4em) clamp(3em, 1.962em + 4.62vw, 6em);
}

.gp-form .wrap {
  max-width: calc(54.875em + 2 * var(--ws-gutter));
}

.gp-form h2 {
  text-align: center;
}

.gp-form form {
  margin-top: 2em;
}




/* GRADUATE PORTAL STICKY NAV ------------------------------ /
* - Resource template ribbon 2
*/

.gp-nav {
  background: var(--ws-dark);
  z-index: 1;
}

.gp-nav ul {
  justify-content: center;
  margin: 0;
}

.gp-nav a {
  align-items: center;
  color: #FFF;
  display: flex;
  height: 100%;
  justify-content: center;
  line-height: 1.2;
  text-align: center;
}

.gp-nav li:nth-of-type(1).on { background-color: var(--ws-green); }
.gp-nav li:nth-of-type(2).on { background-color: var(--ws-red); }
.gp-nav li:nth-of-type(3).on { background-color: var(--ws-yellow); }
.gp-nav li:nth-of-type(4).on { background-color: var(--ws-purple); }
.gp-nav li:nth-of-type(5).on { background-color: var(--ws-blue); }

.gp-nav li:first-child a {
  background-image: url('./images/icons/angle-left.svg');
  background-repeat: no-repeat;
  background-size: auto 1.5em;
}



/* GRADUATE PORTAL QUOTE RIBBON ------------------------------ /
* - Resource template ribbon 3
*/

.gp-quote {
  background-image: url(./images/bg-plus.png), linear-gradient(180deg, var(--ws-light-3) 0%, #FFF 100%);
  background-repeat: repeat-x,no-repeat;
  background-position: 50% -16.25em,0 100%;
  padding-block: 2em 3em;
}

.gp-quote blockquote {
  margin: 0;
  padding: clamp(1.75rem, 1.534rem + 0.96vw, 2.375rem) 1.25em;
}

.gp-quote blockquote p {
  quotes: '\201c' '\201d';
  font-size: clamp(1.125em, 1.082em + 0.19vw, 1.25em);
  line-height: 1.3;
}

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

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

.applying .gp-quote blockquote { background: var(--ws-pale-green); }
.funding .gp-quote blockquote { background: var(--ws-pale-red); }
.holistic-resources .gp-quote blockquote { background: var(--ws-pale-yellow); }
.institutional-support .gp-quote blockquote { background: var(--ws-pale-purple); }
.research .gp-quote blockquote { background: var(--ws-pale-blue); }

.applying .gp-quote blockquote p { color: var(--ws-dark-green); }
.funding .gp-quote blockquote p { color: var(--ws-dark-red); }
.holistic-resources .gp-quote blockquote p { color: var(--ws-dark-yellow); }
.institutional-support .gp-quote blockquote p { color: var(--ws-dark-purple); }
.research .gp-quote blockquote p { color: var(--ws-dark-blue); }


.gp-quote blockquote cite {
  display: block;
  font-style: normal;
  text-align: right;
}

.gp-quote blockquote cite::before {
  content: '- ';
}



/* GRADUATE PORTAL RESOURCES RIBBON(S) ------------------------------ /
* - Resource template ribbon 4
*/

.gp-resources {
  padding-block: clamp(3em, 2.654em + 1.54vw, 4em);
}

.gp-resources.gray {
  background: #E2E7EC;
}

.gp-resources .ws-flex {
  margin: 1.5em 0 0;
  --ws-gap: 1em;
}

.gp-resources article>a {
  background: #F5F5F5;
  border-top-width: .5em;
  border-top-style: solid;
  display: block;
  height: 100%;
  padding: 0.8125em 0.9375em 1.5em;
}

.gp-resources .accordion article>a {
  background: #FFF;
}

.gp-resources .accordion:nth-child(even) article>a {
  background: #F5F5F5;
}

.applying .gp-resources article>a  { border-top-color: var(--ws-green); }
.funding .gp-resources article>a  { border-top-color: var(--ws-red); }
.holistic-resources .gp-resources article>a { border-top-color: var(--ws-yellow); }
.institutional-support .gp-resources article>a { border-top-color: var(--ws-purple); }


.gp-resources.gray article>a {
  background: #FFF;
}

.gp-resources article :is(h2, h3) {
  color: var(--ws-dark-blue);
  line-height: 1.125;
  margin: .5em 0 .125em;
  font-size: clamp(1.1875em, 1.123em + 0.29vw, 1.375em);
}

.gp-resources article .thumbnail {
  height: auto;
  margin: 1em 0 0;
  width: 100%;
}

.gp-resources :where(.year, .authors, .type) {
  color: var(--ws-dark-blue);
  display: block;
  font-size: .875em;
}

.gp-resources article>a>div {
  display: flex;
  justify-content: space-between;
}

.gp-resources article>a>div>em {
  width: calc(50% - .75em);
}

.gp-resources .type {
  margin-left: auto;
  text-align: right;
}

.gp-resources .authors {
  margin: 0;
}

.gp-resources p {
  color: var(--ws-dark-blue);
  margin: .75em 0 0;
}

.gp-resources p:last-child {
  margin-bottom: 0;
}





/* GRADUATE PORTAL BOXED LINKS RIBBON(S) ------------------------------ /
* - Research template ribbon 4
*/

.gp-boxed-links {
  padding-block: 0 2em
}




/* GRADUATE PORTAL RESEARCH RIBBON ------------------------------ /
* - Research template ribbon 5
*/

.gp-research {
  background-image: url('./images/bg-plus.png'), linear-gradient(180deg, var(--ws-light-3) 0%, #FFF 100%);
  background-repeat: repeat-x, no-repeat;
  background-position: 50% -12.26em, 0 100%;
  padding-block: clamp(3em, 2.654em + 1.54vw, 4em);
}

.gp-research .narratives {
  border-bottom: 4px solid #F1F1F1;
  margin-bottom: 1em;
  padding-bottom: 2em;
  width: 100%;
}

.gp-research article {
  align-items: start;
  border-top: .5em solid var(--ws-blue);
  display: flex;
  flex-direction: row;
  list-style: none;
  margin: 2.5em 0 0;
  padding: 1em 0 0;
  width: 100%;
}

.gp-research .image + .textbox {
  margin-left: auto;
  max-width: 44em;
}

.gp-research h3 {
  margin: 0 0 .375em
}

.gp-research .button {
  background: var(--ws-blue);
}



/* GRADUATE PORTAL WYSIWYG ------------------------------ /
* - template-state-policy-hub-subpage.php ribbon 5
*/

.gp-wysiwyg {
  background: #FFF;
  padding-block: clamp(2rem, 1.654rem + 1.54vw, 3rem);
}





/* ################################## */
/* ############# QUORUM ############# */
/* ################################## */

/* PAGEHEADER ------------------------------ */
.page-template-template-quorum .pageHeader {
  padding: 5em 0;
}

main.fullWidth.quorum .pageHeader .background {
  opacity: .15;
}

.footnote {
  margin: 2.5em auto 0;
  max-width: 54em;
}


/* MAIN / TEXT / SELECTS ------------------------------ */
main.quorum  {
  overflow: hidden;
}

.quorum .wrap.stripe-border {
  overflow: visible;
  padding-bottom: 0;
}

.quorum #content.wider:not(.anchor) {
  max-width: 66em;
  min-height: 0;
  padding: 0;
}

.quorum .content .textbox {
  margin: 0 auto 3em;
  max-width: 54.875em;
}

.quorum .selects {
  align-items: end;
  display: flex;
  gap: .5em;
  margin: 2em auto 0;
  max-width: 49.375em;
}

.quorum .selects label {
  font-style: normal;
}

.quorum .selects select {
  background-position: right .75em center;
  background-size: .875em auto;
  font-size: 1em;
  padding: 0.75em .9375em;
  margin: 0;
}

.quorum .selects button {
  border-radius: 0.125em;
  font-size: 1em;
  font-weight: 700;
  padding: 0.75em .9375em;
}

.quorum .selects button::before {
  display: none;
}

.quorum .content p {
  line-height: 1.25;
}

.quorum .content p>a {
  font-weight: 700;
}




/* MAP ------------------------------ */
.quorum-map {
  position: relative;
  padding: 0 0 2em;
}

.quorum-map::before {
  background: url('./images/bg-plus.png') repeat center;
  bottom: -5.25em;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
  top: 33%;
}

#quorum-map {
  display: block;
  margin-inline: auto;
  max-height: calc(100vh - 7em);
}

#quorum-map :where(.gray, text) {
  pointer-events: none;
}

#quorum-map g.dk-orange {
  pointer-events: all;
}

#quorum-map .dk-orange:not(.black-text):is(:hover, :focus-visible) :is(path, rect) {
  cursor: pointer;
  fill: var(--ws-orange);
}




/* STATES / JUMP LINKS ------------------------------ */
.quorum-data {
  padding: 0 0 3em;
}

.quorum__state {
  display: none;
}

.quorum__state.show {
  display: block;
}

.quorum__state.show + .quorum__state.show {
  margin: 3em 0 0;
}

.quorum .state-name {
  background: var(--ws-dk-orange);
  padding: 1.25em 1.5em;
  text-align: center;
}

.quorum .state-name h2 {
  color: #FFF;
  margin: 0;
  text-transform: uppercase;
}

.quorum__bills_header {
  padding: .5em 1.125em;
  text-align: center;
}

.quorum__bills_header .button {
  background: transparent;
  border: 1px solid rgba(50,89,107,.25);
  color: var(--ws-dark-blue);
  font-size: clamp(1.125em, 1.082em + 0.19vw, 1.25em);
  margin: .375em;
  padding: .75em 2em .75em 1.125em;
}

.quorum__bills_header .button::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 512"><path fill="%23475766" d="M119.5 326.9L3.5 209.1c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L128 287.3l100.4-102.2c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L136.5 327c-4.7 4.6-12.3 4.6-17-.1z"></path></svg>');
  background-size: .75em auto;
  top: .125em;
}




/* BILLS ------------------------------ */
.quorum__bills>div {
  padding: clamp(1.5em, 1.154em + 1.54vw, 2.5em);
}

.quorum__bills>div:nth-of-type(odd) {
  background: #E2E7EC;
}

.quorum__bills>div:nth-of-type(even) {
  background: var(--ws-light-3);
}

.quorum__bills>div+div {
  margin-top: .25em;
}

.quorum__bill h3 {
  color: var(--ws-dark-blue);
  font-size: clamp(1.25em, 1.077em + 0.77vw, 1.75em);
  text-align: center;
  width: 100%;
}

.quorum__bill div>div {
  font-style: italic;
  line-height: 1.25;
}

.quorum__bill div>div:not(:last-child) {
  margin: 0 0 1.25em;
}

.quorum__bill strong {
  display: block;
  font-size: clamp(1.125em, 1.082em + 0.19vw, 1.25em);
  font-style: normal;
  margin: 0 0 .25em;
}

.quorum__bill .sponsors strong {
  color: var(--ws-dk-orange);
}


.quorum__bill .link {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%2366AACC" d="M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.7L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3V192c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H320zM80 32C35.8 32 0 67.8 0 112V432c0 44.2 35.8 80 80 80H400c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32V432c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z"/></svg>') no-repeat right top .0625em / auto 1em;
  font-style: italic;
  padding-right: 1.25em;
  content: '';
}



/* BACK TO TOP ------------------------------ */

.quorum .button-row {
  border: 0;
}

.quorum .button-row .button[href="#top"]::before {
  background-image: url('./images/icons/angle-up-gray.svg');
}




/* INTERACTIVE CHART ------------------------------ /
* - template-interactive-chart.php
*/

.page-template-template-interactive-chart .wp-block-buttons {
  justify-content: center;
}

.chart {
  padding-block: 3em;
}

.chart h2 {
  margin: 0 0 1.5em;
  text-align: center;
}


.bubbles {
  --color-1: #585e69;
  --color-2: #043964;
  --color-3: #417B9F;
  --color-4: #7071A4;
  --color-5: #A46A1E;
  --color-6: #B65A58;
  --color-7: #8B7223;
  --ws-gap: 1.5em;
}

.bubbles li::before {
  display: none;
}

.bubbles>li {
  padding: 0 !important;
}

.bubbles>li>strong {
  border-style: solid;
  border-radius: .5em;
  border-width: 2px;
  line-height: 1.2;
  padding: 1em;
  position: relative;
  text-align: center;
}

.bubbles>li>ul,
.bubbles>li>ul:first-child>li {
  margin-left: auto;
}

.bubbles>li>ul>li {
  background: #000;
  border-radius: .5em;
  padding: 0 !important;
  position: relative;
}

.bubbles>li.color-1 strong { border-color: var(--color-1); color: var(--color-1); }
.bubbles>li.color-2 strong { border-color: var(--color-2); color: var(--color-2); }
.bubbles>li.color-3 strong { border-color: var(--color-3); color: var(--color-3); }
.bubbles>li.color-4 strong { border-color: var(--color-4); color: var(--color-4); }
.bubbles>li.color-5 strong { border-color: var(--color-5); color: var(--color-5); }
.bubbles>li.color-6 strong { border-color: var(--color-6); color: var(--color-6); }
.bubbles>li.color-7 strong { border-color: var(--color-7); color: var(--color-7); }

.bubbles>li.color-1 ul>li,
.bubbles>li.color-1 strong::after,
.bubbles>li.color-1 ul>li::after { background: var(--color-1); }

.bubbles>li.color-2 ul>li,
.bubbles>li.color-2 strong::after,
.bubbles>li.color-2 ul>li::after { background: var(--color-2); }

.bubbles>li.color-3 ul>li,
.bubbles>li.color-3 strong::after,
.bubbles>li.color-3 ul>li::after { background: var(--color-3); }

.bubbles>li.color-4 ul>li,
.bubbles>li.color-4 strong::after,
.bubbles>li.color-4 ul>li::after { background: var(--color-4); }

.bubbles>li.color-5 ul>li,
.bubbles>li.color-5 strong::after,
.bubbles>li.color-5 ul>li::after { background: var(--color-5); }

.bubbles>li.color-6 ul>li,
.bubbles>li.color-6 strong::after,
.bubbles>li.color-6 ul>li::after { background: var(--color-6); }

.bubbles>li.color-7 ul>li,
.bubbles>li.color-7 strong::after,
.bubbles>li.color-7 ul>li::after { background: var(--color-7); }

.bubbles>li>strong::after,
.bubbles>li>ul>li::after {
  background: red;
  content: '';
  display: block;
  position: absolute;
}

.bubbles>li>ul>li>div.circle {
  background: rgba(0,0,0,.25);
  color: #FFF;
  line-height: 1.2;
  padding: 1em;
  text-align: center;
}

.bubbles>li.vert-lines>ul>li::before,
.bubbles>li.vert-lines>ul>li::after {
  content: '';
  display: block;
  left: 50%;
  position: absolute;
  width: 2px;
}

.bubbles .vert-lines li::before {
  background: var(--ws-dark-blue);
  bottom: 100%;
  top: auto;
}

.bubbles .vert-lines li::after {
  background: var(--ws-dark-purple);
  top: 100%;
}

.bubbles>li>ul>li>div.circle+div,
.bubbles>li>ul>li>div:not(.circle):first-child>button {
  padding: 1em;
}

.bubbles>li>ul>li>div>:is(button, p) {
  background: transparent;
  color: #FFF;
  display: block;
  line-height: 1.25;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 100%;
}

.bubbles>li>ul>li>div>:is(button, p, div) + :is(button, p) {
  margin-top: .375em;
}

.bubbles>li>ul>li>div>button::before {
  display: none;
}

.bubbles .org-data {
  display: none;
}

/* Vertical lines for 'Private Sponsorship' category only */
.bubbles>li:nth-child(2)>strong {
  position: relative;
}




/* MODAL ------------------------------ */
body.no-overflow { overflow: hidden; }

.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: 2em;
}

.modal button.close {
  background: transparent;
  border: 0;
  color: #333;
  cursor: pointer;
  font-size: 3em;
  font-weight: 700;
  line-height: 1 !important;
  padding: 0;
  position: absolute;
  right: .75rem;
  top: .25rem;
  transition: var(--ws-transition);
  width: auto;
}

.modal button.close::before,
.modal button.close::after {
  display: none;
}

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

.modal.organizations .image {
  display: block;
  margin: 0 auto 1em;
  max-width: 15em;
}

.modal.organizations p:last-of-type {
  margin: 0;
}


/* Homepage hero popup */

#population-glossary-popup .modal-content {
  background: transparent;
  height: auto;
  overflow: visible;
  top: calc(50% + .75em);
  width: 65em;
}

#population-glossary-popup .modal-content>div {
  background: #FFF;
  height: 100%;
  overflow: auto;
  max-height: calc(100vh - 4em);
  max-width: calc(100vw - 3em);
}

body.admin-bar #population-glossary-popup .modal-content {
  max-height: calc(100vh - 8em);

}

body.admin-bar #population-glossary-popup .modal-content>div {
  top: calc(50% + 2em);
}

#population-glossary-popup.modal button.close {
  bottom: 100%;
  color: #FFF;
  right: 0;
  top: auto;
}




/* ####################################################################### */
/* ############# COMPARATIVE CHART OF STATES - STUDENT VIEW  ############# */
/* ####################################################################### */

.comparative-chart-of-states .pageHeader::after {
  display: none;
}

/* State Select Ribbon ----------------------------- */

.state-select {
  background: #FFF;
  position: relative;
  padding-block: clamp(3em, 2.682em + 1.59vw, 3.875em) 2.125em;
  text-align: center;
}

.state-select::before {
  background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(243, 246, 248, 1) 100%);
  content: '';
  height: 10.25em;
  inset: 0 0 auto 0;
  position: absolute;
}

.state-select label {
  font-size: 1.125em;
  font-style: normal;
  margin: 0 0 1em;
}

.state-select select {
  background: #FFF url('./images/icons/caret-down-gray.svg') no-repeat right 1.125em center / 1em 1em;
  border: 2px solid var(--ws-blue-2);
  border-radius: 1.5em;
  max-width: 14.25em;
  padding: .75em 2.5em .75em 1.5em;
}

.state-select button {
  font-size: 1.125em;
  padding: .862em 1.5em;
}

.state-select button::before {
  display: none;
}


.state-select button.remove {
  background: transparent;
  color: var(--ws-dark-blue);
  font-size: 1em;
  font-weight: 400;
  padding: 0;
}

.state-select .compare {
  align-self: center;
}

.state-select .compare span {
  margin-inline: .625em .5em;
}

.state-select .compare button {
  background: transparent;
  color: var(--ws-dark-blue);
  padding: 0;
  text-decoration: underline;
}

.view-all-wrap a.button {
  background: #FFF;
  border: 1px solid var(--ws-light-2);
  color: var(--ws-dark-blue);
  font-size: .875em;
  display: table;
  margin: 3.125em auto clamp(4em, 2.545em + 7.27vw, 8em);
  padding: .75em 1.375em .75em 3em;
  text-decoration: none;
}

.view-all-wrap a.button::before {
  animation: none !important;
  background-image: url('./images/icons/list-blue.svg');
  background-position: left 1.25em center;
  background-size: 1.125em auto;
  transition: all .3s ease;
}




/* State Data Ribbon ----------------------------- */

.state-data {
  background: #FFF;
  padding-block: 1em 0;
}

.state-data .wrap {
  max-width: 82em;
}

.state-data .data {
  border: 1px solid #979797;
}

.state-data .heading {
  align-items: center;
  background: var(--ws-dark-blue);
  border-bottom: 0;
  display: flex;
  padding: .875em 1.25em;
}

.state-data .heading svg {
  margin: 0 .5em 0 0;
  max-height: 3.0625em;
}

.state-data .heading svg polyline {
  fill: var(--ws-blue-2);
  stroke: none;
}

.state-data .heading h2 {
  color: #FFF;
  margin: 0;
}

.state-data .data .row:nth-child(odd) {
  background: var(--ws-light-3);
}

.state-data .data .row>div {
  padding: .875em 1.25em;
}

.state-data .data .row>div>*:last-child {
  margin: 0;
}

main .state-data ul:not(.flex-row)>li {
  padding-left: 1.5em;
}

main .state-data ul:not(.flex-row)>li::before {
  background: url('./images/icons/caret-right-red.svg') no-repeat center / .4em auto;
  height: 1em;
  left: .25em;
  top: .2em;
  width: 1em;
}

.state-data a {
  color: var(--ws-dark-blue);
  text-decoration: underline;
}

.state-data {
  display: none;
}
.state-data.show {
  display: block;
}




/* ######################################### */
/* ############# NEW HOMEMPAGE ############# */
/* ######################################### */


/* HERO ------------------------------ /
* - Homepage
*/

.hero {
  background: no-repeat center / cover;
  padding-block: clamp(2.5em, 1.136em + 6.82vw, 6.25em) clamp(2.5em, 1.704em + 3.98vw, 4.6875em);
  text-align: center;
  position: relative;
  z-index: 0;
}

.hero::before {
  background: var(--ws-dark-3);
  content: '';
  inset: 0;
  opacity: .8;
  position: absolute;
  z-index: -1;
}

main.home .hero .wrap {
  max-width: calc(57em + 2 * var(--ws-gap));
}

.hero h1 {
  color: #FFF;
  font-size: var(--ws-text-1);
  margin: 0 0 .625em;
}

.hero h1>span {
  display: block;
  font-size: .6em;
  font-style: italic;
  margin: .5em 0 0;
}

.hero p {
  color: #FFF;
  font-size: var(--ws-text-5);
  line-height: 1.5;
  margin-inline: auto;
  max-width: 40em;
}

.hero .link-select {
  margin: 2.5em 0 0;
}

.hero label {
  color: #FFF;
  display: block;
  font-size: var(--ws-text-5);
  margin: 0 0 .625em;
}

.hero .flex {
  display: flex;
  gap: .5em;
  margin: 0 auto .75em;
  max-width: 21.5em;
}

.hero select {
  background: #FFF url('./images/icons/caret-down-gray.svg') no-repeat right 1.125em center / 1em 1em;
  border: 2px solid var(--ws-light-2);
  border-radius: 1.5em;
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  margin: 0;
  max-width: 16em;
  padding: .75em 2.5em .75em 1em;
}

.hero button.go {
  padding: .625em .875em;
}

.hero button.go::before {
  display: none;
}

.hero button.modal-trigger {
  background: transparent;
  font-size: .75em;
  padding: 1em 2.375em 1em 2.375em;
  text-decoration: underline;
}

.hero button.modal-trigger::before {
  background: url('./images/icons/info-white.svg') no-repeat center / contain;
  margin: 0 .25em 0 0;
  padding-right: 1.0625em;
  position: static;
}




/* RESOURCES ------------------------------ /
* - Homepage
*/

.resources {
  border: 3px solid #FFF;
  position: relative;
}

.resources .background {
  border: 3px solid #FFF;
  position: relative;
}

.resources .background>div {
  background: #FFF;
  text-align: center;
}

.resources .background h2 {
  margin: 0;
}

.resources .background a.view-all {
  color: var(--ws-dark);
  font-size: .875em;
  text-decoration: underline;
}

.resources ul {
  flex-wrap: wrap;
  margin: 0;
  max-width: 100%;
  position: relative;
}

.resources li {
  background: var(--ws-light-3);
  border: 3px solid #FFF;
  margin: 0;
  position: relative;
}

.resources li::before {
  display: none;
}

.resources h3 {
  color: var(--ws-dark-blue);
  font-size: clamp(1.375em, 1.352em + 0.11vw, 1.4375em);
}

.resources p {
  color: #666;
  margin: 0 0 1.5em;
}

.resources a.continue {
  background: #FFF;
  border: .125rem solid var(--ws-light-4);
  border-radius: .57em;
  color: var(--ws-dark-blue);
  display: inline-block;
  font-size: .875em;
  line-height: 1.45;
  overflow: hidden;
  padding: .716em 1.125em .55em;
  position: relative;
}

.resources a.continue::before {
  content: '';
  inset: 0;
  opacity: .1;
  position: absolute;
}

.resources a.continue::after {
  background: url('./images/icons/arrow-right-dark.svg') no-repeat center / auto 1em;
  content: '';
  display: inline-block;
  height: 1em;!;!e;!em;!e;!;
  margin-left: .25em;
  padding-left: 1em;
  position: relative;
  top: .1875em;
}




/* EVENTS ------------------------------ /
* - Homepage
*/

.upcoming-events {
  background: url('./images/bg-plus-short.png') repeat-x center bottom;
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em) clamp(2.5em, 2.091em + 2.05vw, 3.625em);
  position: relative;
  text-align: center;
}

.upcoming-events .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gutter));
  overflow: visible;
}

.upcoming-events h2 {
  margin: 0 0 1em;
}

.upcoming-events ul.ws-flex {
  justify-content: center;
  margin: 0 0 3.5em;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em);
}

.upcoming-events li {
  position: relative;
}

.upcoming-events li>a {
  background: #FFF;
  border: 2px solid;
  border-radius: .5em;
  display: block;
  padding: 2em 1.25em 2.5em;
  height: 100%;
}

.upcoming-events li.blue>a { border-color: var(--ws-blue-2); }
.upcoming-events li.green>a { border-color: var(--ws-green); }
.upcoming-events li.purple>a { border-color: var(--ws-purple); }
.upcoming-events li.red>a { border-color: var(--ws-red-2); }
.upcoming-events li.yellow>a { border-color: var(--ws-yellow); }

.upcoming-events li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
}

.upcoming-events li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-right-white.svg') no-repeat center / auto 40%;
  border-radius: 50%;
  content: '';
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translate(-50%,-50%);
  width: 2.5em;
}

.upcoming-events li.blue>a::after { background-color: var(--ws-blue-2); }
.upcoming-events li.green>a::after { background-color: var(--ws-green); }
.upcoming-events li.purple>a::after { background-color: var(--ws-purple); }
.upcoming-events li.red>a::after { background-color: var(--ws-red-2); }
.upcoming-events li.yellow>a::after { background-color: var(--ws-yellow); }

.upcoming-events span.category {
  color: var(--ws-dark);
  display: block;
  font-size: .8125em;
  margin: 0 0 .875em;
}

.upcoming-events strong.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1.125em;
  line-height: 1.056;
  margin: 0 0 .75em;
}

.upcoming-events time {
  color: var(--ws-dark);
  display: block;
  margin: 0 0 .75em;
}

.upcoming-events span.organization {
  color: var(--ws-dark);
  display: block;
  line-height: 1.188;
}


.upcoming-events .button {
  background: #FFF;
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
}

.upcoming-events .button.blue { border: .125rem solid var(--ws-blue-2); }
.upcoming-events .button.purple { border: .125rem solid var(--ws-purple); }
.upcoming-events .button.red { border: .125rem solid var(--ws-red-2); }
.upcoming-events .button.green { border: .125rem solid var(--ws-green); }
.upcoming-events .button.yellow { border: .125rem solid var(--ws-yellow); }

.upcoming-events .button.blue::before {background-image: url('./images/icons/arrow-right-blue.svg'); }
.upcoming-events .button.purple::before { background-image: url('./images/icons/arrow-right-purple.svg'); }
.upcoming-events .button.red::before { background-image: url('./images/icons/arrow-right-red-2.svg'); }
.upcoming-events .button.green::before { background-image: url('./images/icons/arrow-right-green.svg'); }
.upcoming-events .button.yellow::before { background-image: url('./images/icons/arrow-right-yellow.svg'); display: block; }





/* HOME PARTNERS RIBBON ------------------------------ /
* - Homepage
*/

.home-partners {
  background: var(--ws-light-3) url('./images/bg-welcome.png') no-repeat center bottom / 100% auto;
  overflow: hidden;
  padding: 6rem 0 9em;
  position: relative;
  text-align: center;
  z-index: 0
}

.home-partners::after {
  background: linear-gradient(180deg, var(--ws-light-3) 0%,rgba(255,255,255,0) 50%);
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1
}

main.home .home-partners .wrap {
  max-width: calc(59.6875em + 2 * var(--ws-gutter));
  overflow: visible;
}

.home-partners h2 {
  margin: 0 0 .75em;
}

.home-partners p {
  font-size: var(--ws-text-5);
  margin: 0 0 2em;
}

.home-partners .button {
  background: #FFF;
  border: .125rem solid var(--ws-light-2);
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
}

.home-partners .button::before {
  background-image: url('./images/icons/arrow-right-blue.svg');
}

.home-partners .logos {
  background: #FFF;
  margin: clamp(2.5em, 1.955em + 2.73vw, 4em) 0 0;
  min-width: 20em;
  padding: 3em 2em 2em;
  position: relative;
  width: 100%;
  z-index: 0
}

.home-partners .logos::before {
  background: url('./images/bg-plus.png') repeat-x center center;
  content: '';
  height: 16.375em;
  left: -4.25em;
  position: absolute;
  top: -3.375em;
  width: 21.25em;
  z-index: -1
}

.home-partners .logos::after {
  background: #FFF;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1
}

.home-partners .logos ul.ws-flex {
  align-items: center;
  justify-content: center;
  margin: 2.5em 0 0;
  row-gap: 1.5em;
  --ws-gap: 2em;
}

.home-partners .logos li {
  display: inline-block;
}

.home-partners .logos img {
  max-height: clamp(4em, 3.273em + 3.64vw, 6em);
  object-fit: contain;
}

/* Hardcoded PAHEI logo */
.home-partners .logos img.pahei {
  width: min(22em, 100%);
}





/* FOOTER CALLOUTS RIBBON ------------------------------ /
* - All pages
*/

.footer-callouts {
  background: var(--ws-light-3);
  border-top: 3px solid #FFF;
  padding-block: .875em;
}

.footer-callouts .wrap {
  max-width: calc(55.5em + 2 * var(--ws-gap));
}

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

.footer-callouts form {
  align-items: center;
  display: flex;
}

.footer-callouts :is(label, .label) {
  color: var(--ws-dark-blue);
  display: block;
  font-size: .875em;
  margin: 0 .625em 0 0;
}

.footer-callouts form>div {
  align-items: center;
  display: flex;
  position: relative;
}

.footer-callouts input[type="email"] {
  background: #FFF;
  border: .125rem solid var(--ws-light-2);
  border-radius: 1.5em;
  font-size: .875em;
  height: 2.79em;
  padding: .75em 3em .75em 1em;
  transition: var(--ws-transition);
  width: 100%;
}

.footer-callouts input[type="email"]:focus {
  border-color: var(--ws-blue-2);
}

.footer-callouts input[type="email"]::placeholder {
  font-style: italic;
}

.footer-callouts button[type='submit'] {
  aspect-ratio: 1.5;
  background: #FFF url('./images/icons/paper-plane-blue.svg') no-repeat center / contain;
  height: 1em;
  padding: 0;
  position: absolute;
  right: 0.75em;
}

.footer-callouts button[type='submit']::before {
  display: none;
}

.footer-callouts .button {
  align-items: center;
  background: #FFF;
  border: .125rem solid var(--ws-blue-2);
  border-radius: 1.5em;
  color: var(--ws-dark-blue);
  display: inline-flex;
  font-size: .875em;
  height: 2.79em;
  padding: 0 3.25em 0em 1.5em;
}

.footer-callouts .button::before {
  display: none;
}

.footer-callouts .button::after {
  aspect-ratio: 1;
  background: url('./images/icons/hand-heart-blue.svg') no-repeat center / contain;
  content: '';
  height: 1.25em;
  margin-left: auto;
  padding-left: 1em;
  position: absolute;
  right: 1em;
}





/* SCROLL-TO-TOP BUTTON RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin, Refugee/Displaced community pages
*/

a.scroll-to-top {
  aspect-ratio: 1;
  background: var(--ws-dark-blue) url('./images/icons/angle-up-white.svg') no-repeat 50% 45% / 50% auto;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 50%;
  bottom: 1em;
  padding: 0;
  position: fixed;
  right: clamp(0.5em, -0.036em + 1.71vw, 1.25em); /* 500 - 750 */
  width: clamp(2em, 1.196em + 2.57vw, 3.125em); /* 500 - 750 */
  z-index: 1;
}





/* PAGEHEADER LINKS RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin, Refugee/Displaced community pages - ribbon 1
* - Federal Policies page
*/

.pageheader-links {
  background: url('./images/bg-pageheader-links.webp') no-repeat center / cover;
  padding-block: clamp(2.5em, 2.045em + 2.27vw, 3.75em) clamp(3em, 2.636em + 1.82vw, 4em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.pageheader-links::before {
  background: var(--ws-dark-3);
  content: '';
  inset: 0;
  opacity: .9;
  position: absolute;
  z-index: -1;
}

.pageheader-links .wrap {
  max-width: calc(70.375em + 2 * var(--ws-gap));
}

.pageheader-links .icon {
  aspect-ratio: 1;
  background: url('./images/icons/graduation-cap-white.svg') no-repeat center / auto 38%;
  border: .125em solid rgba(255,255,255,.15);
  border-radius: 50%;
  display: block;
  margin: 0 auto 1.375em;
  width: clamp(4em, 3.636em + 1.82vw, 5em);
}

.pageheader-links.blue .icon { background-color: var(--ws-blue-2); }
.pageheader-links.purple .icon { background-color: var(--ws-purple); }
.pageheader-links.red .icon { background-color: var(--ws-red-2); }
.pageheader-links.green .icon { background-color: var(--ws-green); }
.pageheader-links.yellow .icon { background-color: var(--ws-yellow); }


.pageheader-links .textbox {
  margin: 0 auto 2.5em;
  max-width: 57.5em;
}

.pageheader-links h1 {
  color: #FFF;
  font-size: clamp(1.75em, 1.477em + 1.36vw, 2.5em);
}

.pageheader-links p {
  color: #FFF;
  font-size: var(--ws-text-5);
  line-height: 1.667;
}

.pageheader-links ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1em, 0.909em + 0.45vw, 1.25em);
}

.pageheader-links ul+ul {
  margin-top: 2em;
}

.pageheader-links li {
  display: inline-block;
}

.pageheader-links .button {
  background: #FFF !important;
  border: 2px solid var(--ws-light-2);
  border-radius: 1.5em;
  color: var(--ws-dark-blue) !important;
  font-size: var(--ws-text-5);
  padding: clamp(.5em, 0.409em + 0.45vw, .75em) clamp(1em, 0.864em + 0.68vw, 1.375em);
  position: relative;
  z-index: 0;
}

.pageheader-links .button.off-page {
  background: rgba(42, 59, 76, 0.4) !important;
  color: #FFF !important;
}

.pageheader-links a.button::before {
  background: transparent;
  border-radius: 1.5em;
  content: '';
  display: block;
  height: auto;
  inset: 0;
  opacity: .1;
  position: absolute;
  width: auto;
  z-index: -1;
}

.pageheader-links .button::after {
  aspect-ratio: 1;
  background: no-repeat center / contain;
  content: '';
  display: inline-block;
  margin-left: .5em;
  padding-left: .8125em;
  position: relative;
  top: .0625em;
}

.pageheader-links.blue .button::after { background-image: url('./images/icons/arrow-d-blue.svg'); }
.pageheader-links.purple .button::after { background-image: url('./images/icons/arrow-d-purple.svg'); }
.pageheader-links.red .button::after { background-image: url('./images/icons/arrow-d-red.svg'); }
.pageheader-links.green .button::after { background-image: url('./images/icons/arrow-d-green.svg'); }
.pageheader-links.yellow .button::after { background-image: url('./images/icons/arrow-d-yellow.svg'); }


a.outline-link {
  border-radius: 1.5em;
  border: 2px solid #FFF;
  color: #FFF;
  display: table;
  font-size: var(--ws-text-5);
  margin: 1.875em auto 0;
  padding: .5em clamp(1em, 0.864em + 0.68vw, 1.375em);
}

a.outline-link::after {
  background: url('./images/icons/external-link-yellow.svg') no-repeat center / contain;
  content: '';
  margin-left: .5em;
  padding-left: 1em;
}

/* Refugee page only: */
.pageheader-links.refugee-displaced {
  padding-bottom: 3.5em;
}

.pageheader-links.refugee-displaced .extra-text {
  margin: 2.5em auto 0;
  max-width: 57.5em;
}

.pageheader-links.refugee-displaced .extra-text + a.outline-link {
  margin: 1em auto 0;
}



/* Federal Policies subpage overrides */
.pageheader-links.federal-policies {
  background: no-repeat center / cover;
  padding-block: clamp(3em, 2.091em + 4.55vw, 5.5em) clamp(2.5em, 1.773em + 3.64vw, 4.5em);
}

/* Non-anchor links have right arrow */
.pageheader-links.federal-policies.blue .button:not([href^="#"])::after {
  background-image: url('./images/icons/arrow-right-blue.svg');
}

.pageheader-links.federal-policies .textbox {
  max-width: 54.875em;
}




/* TOOLS RIBBON ------------------------------ /
* - Homepage, Community: Undocumented Students, Community: Refugee & Displaced Students pages
*/

.tools {
  background: url('./images/bg-tools.webp') no-repeat center / cover;
  margin-top: .375em;
  padding-block: clamp(2.5em, 1.773em + 3.64vw, 4.5em) clamp(3em, 2.091em + 4.55vw, 5.5em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.tools::before {
  background: var(--ws-dark-3);
  content: '';
  inset: 0;
  opacity: .8;
  position: absolute;
  z-index: -1;
}

.tools .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gutter));
  overflow: visible;
}

.tools h2 {
  color: #FFF;
  margin: 0 0 1.125em;
}

.tools ul.ws-flex {
  justify-content: center;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em); /* 750 - 1200 */
}

.tools li {
  position: relative;
}

.tools li>a {
  background: #FFF;
  border: .125rem solid var(--ws-light-4);
  border-radius: .5em;
  display: block;
  height: 100%;
  overflow: hidden;
  padding: 2em 1.25em 2.5em;
}

.tools li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
}

.tools li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-right-white.svg') no-repeat center / auto 40%;
  border-radius: 50%;
  content: '';
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translate(-50%,-50%);
  width: 2.5em;
}

.tools li.blue>a::after { background-color: var(--ws-blue-2); }
.tools li.green>a::after { background-color: var(--ws-green); }
.tools li.purple>a::after { background-color: var(--ws-purple); }
.tools li.red>a::after { background-color: var(--ws-red-2); }
.tools li.yellow>a::after { background-color: var(--ws-yellow); }

.tools svg {
  display: block;
  height: 2.5em;
  margin: 0 auto 1.5em;
  width: auto;
}

.tools li.blue path { fill: var(--ws-blue-2); }
.tools li.green path { fill: var(--ws-green); }
.tools li.purple path { fill: var(--ws-purple); }
.tools li.red path { fill: var(--ws-red-2); }
.tools li.yellow path { fill: var(--ws-yellow); }

.tools strong.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1.125em;
  line-height: 1.278;
  margin: 0 0 .5em;
}

.tools span.text {
  display: block;
  line-height: 1.2;
}

.tools p.more {
  color: #FFF;
  margin: 3.5em 0 .5em;
}

.tools .buttons .button {
  font-size: .9375em;
  margin: .375em;
}




/* STUDENT POPULATIONS RIBBON ------------------------------ /
* - International, Immigrant-Origin, community pages
*/

.student-populations {
  padding-block: clamp(2.5em, 2.091em + 2.05vw, 3.625em) clamp(2.5em, 1.955em + 2.73vw, 4em);
  position: relative;
  z-index: 0;
}

.student-populations::after {
  background: url('./images/bg-plus-short.png') repeat-x center top;
  content: '';
  inset: 0;
  position: absolute;
  z-index: -1;
}

.student-populations .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gutter));
  overflow: visible;
}

.student-populations ul.ws-flex {
  justify-content: center;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em); /* 750 - 1200 */
}

.student-populations ul.ws-flex>li {
  background: #FFF;
  border: .125em solid;
  border-radius: .5em;
  overflow: hidden;
  padding: 2em 2em 2.375em 2.3875em;
  position: relative;
  z-index: 0;
}

.student-populations ul.ws-flex>li::before {
  aspect-ratio: 1;
  background: no-repeat center / contain;
  content: '';
  inset: 2.25em auto auto 1em;
  position: absolute;
  width: 1em;
}

.student-populations ul.ws-flex>li.blue::before { background-image: url('./images/icons/arrow-right-blue.svg'); }
.student-populations ul.ws-flex>li.green::before { background-image: url('./images/icons/user-green.svg'); }
.student-populations ul.ws-flex>li.purple::before { background-image: url('./images/icons/arrow-right-purple.svg'); }
.student-populations ul.ws-flex>li.red::before { background-image: url('./images/icons/arrow-right-red-2.svg'); }
.student-populations ul.ws-flex>li.yellow::before { background-image: url('./images/icons/arrow-right-yellow.svg'); }


.student-populations ul.ws-flex>li::after {
  content: '';
  inset: 0;
  position: absolute;
  z-index: -1;
}

.student-populations ul.ws-flex>li.blue { border-color: var(--ws-blue-2); }
.student-populations ul.ws-flex>li.green { border-color: var(--ws-green); }
.student-populations ul.ws-flex>li.purple { border-color: var(--ws-purple); }
.student-populations ul.ws-flex>li.red { border-color: var(--ws-red-2); }
.student-populations ul.ws-flex>li.yellow { border-color: var(--ws-yellow); }

.student-populations ul.ws-flex>li.blue::after { background-image: linear-gradient(0deg, rgba(var(--ws-blue-rgb), 0.1) 0%, rgba(var(--ws-blue-rgb), 0) 100%); }
.student-populations ul.ws-flex>li.green::after { background-image: linear-gradient(0deg, rgba(var(--ws-green-rgb), 0.1) 0%, rgba(var(--ws-green-rgb), 0) 100%); }
.student-populations ul.ws-flex>li.purple::after { background-image: linear-gradient(0deg, rgba(var(--ws-purple-rgb), 0.1) 0%, rgba(var(--ws-purple-rgb), 0) 100%); }
.student-populations ul.ws-flex>li.red::after { background-image: linear-gradient(0deg, rgba(var(--ws-red-2-rgb), 0.1) 0%, rgba(var(--ws-red-2-rgb), 0) 100%); }
.student-populations ul.ws-flex>li.yellow::after { background-image: linear-gradient(0deg, rgba(var(--ws-yellow-rgb), 0.1) 0%, rgba(var(--ws-yellow-rgb), 0) 100%); }


.student-populations ul.ws-flex>li>*:last-child {
  margin: 0;
}

.student-populations ul.ws-flex>li p {
  line-height: 1.625;
}

.student-populations .accordions {
  margin: 1em auto 0;
  max-width: 43.4375em;
}

.student-populations .subtext {
  margin: 2.5em auto 0;
  max-width: 57.5em;
}

.student-populations ul.ws-flex>li p a {
  font-weight: 700;
  text-decoration: underline;
}

.student-populations ul.ws-flex>li.blue p a { color: var(--ws-blue-2); }
.student-populations ul.ws-flex>li.green p a { color: var(--ws-dark-green); }
.student-populations ul.ws-flex>li.purple p a { color: var(--ws-purple); }
.student-populations ul.ws-flex>li.red p a { color: var(--ws-red-2); }
.student-populations ul.ws-flex>li.yellow p a { color: var(--ws-dark-yellow); }




/* COMMUNITY CALLOUTS RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin, Refugee/Displaced community pages
*/

.community-callouts {
  background: var(--ws-light-3);
  padding-block: clamp(2.5em, 1.955em + 2.73vw, 4em) clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.community-callouts::before {
  background: url('./images/bg-plus-short.png') repeat center bottom;
  content: '';
  inset: 0;
  opacity: .5;
  position: absolute;
  z-index: -1;
}

.community-callouts .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gutter));
  overflow: visible;
}

.community-callouts .wrap>.textbox {
  margin: 0 auto 2.25em;
  max-width: calc(50.875em + 2 * var(--ws-gap));
}

.community-callouts ul.ws-flex {
  justify-content: center;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em); /* 750 - 1200 */
}


.community-callouts li>a {
  background: #FFF;
  border: 2px solid var(--ws-light-4);
  border-radius: .375em;
  display: block;
  height: 100%;
  position: relative;
  z-index: 0;
}

.community-callouts li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
  z-index: -1;
}

.community-callouts li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-right-white.svg') no-repeat center / auto 40%;
  border-radius: 50%;
  content: '';
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translate(-50%,-50%);
  width: 2.5em;
}

.community-callouts li.blue>a::after { background-color: var(--ws-blue-2); }
.community-callouts li.green>a::after { background-color: var(--ws-green); }
.community-callouts li.purple>a::after { background-color: var(--ws-purple); }
.community-callouts li.red>a::after { background-color: var(--ws-red-2); }
.community-callouts li.yellow>a::after { background-color: var(--ws-yellow); }

.community-callouts p {
  color: var(--ws-dark-blue);
  margin: 0;
}

.community-callouts .image {
  aspect-ratio: 280 / 216;
  background: no-repeat center / cover;
  border-radius: .3125em .3125em 0 0;
  width: 100%;
}

.community-callouts li .textbox {
  padding: 1em 1em 2.25em;
}


.community-callouts span.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: 1.125em;
  line-height: 1.278;
  margin: 0 0 .5em;
}




/* COMMUNITY CALL-TO-ACTION RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin, Refugee/Displaced community pages - last ribbon
*/

.community-cta {
  background: var(--ws-light-3) url('./images/bg-welcome.png') no-repeat center bottom / 100% auto;
  padding-block: clamp(2.5em, 1.591em + 4.55vw, 5em) clamp(8.375em, 2.92em + 27.27vw, 23.375em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.community-cta::before {
  background: linear-gradient(180deg, var(--ws-light-3) 25%, rgba(255, 255, 255, 0) 70%);
  content: '';
  inset: 0;
  position: absolute;
  z-index: -1;
}

.community-cta .wrap {
  max-width: calc(52.25em + 2 * var(--ws-gap));
}

.community-cta h2 {
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-3);
}

.community-cta p {
  color: var(--ws-dark);
  line-height: 1.438;
}

.community-cta .button {
  background: #FFF;
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  margin-top: 1em;
  padding: .75em 1.375em;
}

.community-cta.purple .button { border: 2px solid var(--ws-purple); }
.community-cta.red .button { border: 2px solid var(--ws-red-2); }
.community-cta.green .button { border: 2px solid var(--ws-green); }
.community-cta.yellow .button { border: 2px solid var(--ws-yellow); }

.community-cta .button::before {
  display: none;
}

.community-cta .button::after {
  background: no-repeat center / contain;
  content: '';
  margin-left: .5em;
  padding-left: 1.125em;
  position: relative;
}

.community-cta.purple .button::after { background-image: url('./images/icons/comments-purple.svg'); }
.community-cta.red .button::after { background-image: url('./images/icons/comments-red.svg'); }
.community-cta.green .button::after { background-image: url('./images/icons/comments-green.svg'); }
.community-cta.yellow .button::after { background-image: url('./images/icons/comments-yellow.svg'); }




/* COMMUNITY NATIONAL DATA / FEDERAL POLICIES RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin community pages
*/

.data-policies {
  background: #FFF;
  margin-top: .375em;
  padding-block: clamp(3em, 2.591em + 2.05vw, 4.125em) clamp(3.25em, 2.886em + 1.82vw, 4.25em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.data-policies:is(.international,.immigrant-origin) {
  background: #E7F4FB;
}

.data-policies::before {
  transform: translateY(-.375em);
}

/* Gray + patterned background on DACA community page only */
.data-policies.daca-undocumented {
  background: var(--ws-light-3);
}

.data-policies.daca-undocumented::after {
  background: url('./images/bg-plus-short.png') repeat center bottom;
  content: '';
  inset: 0;
  opacity: .5;
  position: absolute;
  z-index: -1;
}


.data-policies .wrap {
  max-width: calc(57.5em + 2* var(--ws-gutter));
  overflow: visible;
}

.data-policies ul.ws-flex {
  justify-content: center;
  margin: 0;
  row-gap: calc(1.5em + var(--ws-gap));
  --ws-gap: clamp(1em, -0.667em + 3.56vw, 2em);
}

.data-policies li {
  max-width: 24.375em;
}

.data-policies li>a {
  background: #FFF;
  border: 2px solid var(--ws-light-2);
  border-radius: .5em;
  display: block;
  padding: clamp(2em, 1.818em + 0.91vw, 2.5em) 1.25em clamp(3em, 2.818em + 0.91vw, 3.5em);
  position: relative;
}

.data-policies li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
}

.data-policies li>a::after {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-right-white.svg') no-repeat center / auto 40%;
  border-radius: 50%;
  content: '';
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translate(-50%,-50%);
  width: 2.5em;
}

.data-policies li.blue>a::after { background-color: var(--ws-blue-2); }
.data-policies li.green>a::after { background-color: var(--ws-green); }
.data-policies li.purple>a::after { background-color: var(--ws-purple); }
.data-policies li.red>a::after { background-color: var(--ws-red-2); }
.data-policies li.yellow>a::after { background-color: var(--ws-yellow); }

.data-policies svg {
  height: 2.5em;
  margin: 0 0 clamp(0.5em, 0.318em + 0.91vw, 1em);
}

.data-policies path {
  fill: var(--ws-light-2);
}

.data-policies strong.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: clamp(1.375em, 1.284em + 0.45vw, 1.625em);
  line-height: 1.2;
  margin: 0 0 .25em;
}

.data-policies span.brief {
  color: var(--ws-dark);
  display: block;
  line-height: 1.2;
}





/* COMMUNITY RESOURCES RIBBON ------------------------------ /
* - DACA/Undocumented, International, Immigrant-Origin community pages
* - i.e. "Other Resources" ribbon
*/

.community-resources {
  background: url('./images/bg-other-resources.webp') no-repeat center bottom / cover;
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em) clamp(3.25em, 2.523em + 3.64vw, 5.25em);
  position: relative;
  text-align: center;
  z-index: 0;
}

.community-resources::before {
  background-image: linear-gradient(180deg, rgba(243, 246, 248, 1) 0%, rgba(243, 246, 248, 0) 100%);
  content: '';
  inset: 0;
  position: absolute;
  z-index: -2;
}

.community-resources::after {
  background: #183652;
  content: '';
  inset: 0;
  opacity: .9;
  position: absolute;
  z-index: -1;
}

.community-resources .wrap {
  max-width: calc(75em + 2 * var(--ws-gap));
  overflow: visible;
}

.community-resources div.ws-flex {
  margin: 0 0 3em;
  row-gap: 2em;
}

.community-resources .textbox.top {
  margin: 0 auto 3em;
  max-width: 43.875em;
  text-align: center;
}

.community-resources .textbox.top h2 {
  color: #FFF;
}

.community-resources .textbox.top p {
  color: #FFF;
  line-height: 1.625;
}

.community-resources article {
  position: relative;
  text-align: left;
}

.community-resources .image {
  aspect-ratio: 132 / 174;
  border: 2px solid var(--ws-light-2);
  inset: 3em auto auto 0;
  line-height: 0;
  position: absolute;
}

.community-resources .image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.community-resources article>.textbox {
  background: #FFF;
  border: 2px solid var(--ws-light-2);
  border-radius: .5em;
  height: 100%;
  margin-left: auto;
}

.community-resources article.no-image>.textbox {
  padding: 1.6875em 2.375em 2.125em;
}

.community-resources span.category {
  align-items: center;
  color: var(--ws-dark);
  display: flex;
  font-size: .875em;
  margin: 0 0 .875em;
  text-transform: lowercase;
}

.community-resources span.category::before {
  aspect-ratio: 1;
  border-radius: 50%;
  content: '';
  display: inline-block;
  height: 1em;
  margin: 0 .5em 0 0;
}

.community-resources span.category.blue::before { background-color: var(--ws-blue-2); }
.community-resources span.category.green::before { background-color: var(--ws-green); }
.community-resources span.category.purple::before { background-color: var(--ws-purple); }
.community-resources span.category.red::before { background-color: var(--ws-red-2); }
.community-resources span.category.yellow::before { background-color: var(--ws-yellow); }

.community-resources article h3 {
  color: var(--ws-dark-blue);
}

.community-resources article p {
  color: var(--ws-dark);
  line-height: 1.438;
}

.community-resources article a {
  color: var(--ws-dark);
  display: block;
  line-height: 1.2;
  margin: 1em 0 0;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: .1em;
  text-underline-offset: .25em;
}

.community-resources .button {
  background-color: #FFF;
  border: 2px solid var(--ws-light-2);
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  overflow: hidden;
}


/* Shared between community-resources and resource-callouts ribbons: */
.community-resources article a::after,
.resource-callouts .link::after,
.resource-callouts .button::before {
  background: no-repeat center / contain;
  content: '';
  display: inline-block;
  height: .875em;
  margin-left: .375em;
  padding-left: 1em;
  position: relative;
  top: .125em;
}

.community-resources article a.blue::after,
.community-resources .button.blue::before,
.resource-callouts li.blue .link::after,
.resource-callouts .button.blue::before { background-image: url('./images/icons/arrow-right-blue.svg'); }

.community-resources article a.green::after,
.community-resources .button.green::before,
.resource-callouts li.green .link::after,
.resource-callouts .button.green::before { background-image: url('./images/icons/arrow-right-green.svg'); }

.community-resources article a.purple::after,
.community-resources .button.purple::before,
.resource-callouts li.purple .link::after,
.resource-callouts .button.purple::before { background-image: url('./images/icons/arrow-right-purple.svg'); }

.community-resources article a.red::after,
.community-resources .button.red::before,
.resource-callouts li.red .link::after,
.resource-callouts .button.red::before { background-image: url('./images/icons/arrow-right-red-2.svg'); }

.community-resources article a.yellow::after,
.community-resources .button.yellow::before,
.resource-callouts li.yellow .link::after,
.resource-callouts .button.yellow::before { background-image: url('./images/icons/arrow-right-yellow.svg'); }





/* RESOURCE CALLOUTS RIBBON ------------------------------ /
* - Refugee/Displaced community page i.e. "Additional Resources" ribbon
*/

.resource-callouts {
  background: url('./images/bg-other-resources.webp') no-repeat center bottom / cover;
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em) clamp(3.25em, 2.523em + 3.64vw, 5.25em);
  position: relative;
  z-index: 0;
}

.resource-callouts #resources { padding: 0; } /* Anchor */

.resource-callouts::before {
  transform: translateY(-.375em);
}

.resource-callouts .background {
  inset: 0;
  position: absolute;
}

.resource-callouts .background::before {
  background-image: linear-gradient(180deg, rgba(243, 246, 248, 1) 0%, rgba(243, 246, 248, 0) 100%);
  content: '';
  inset: 0;
  position: absolute;
  z-index: -2;
}

.resource-callouts .background::after {
  background: #183652;
  content: '';
  inset: 0;
  opacity: .9;
  position: absolute;
  z-index: -1;
}

.resource-callouts .wrap {
  max-width: calc(77em + 2 * var(--ws-gap));
  overflow: visible;
}

.resource-callouts .textbox {
  margin: 0 auto 3em;
  max-width: 43.875em;
  text-align: center;
}

.resource-callouts .textbox h2 {
  color: #FFF;
}

.resource-callouts .textbox p {
  color: #FFF;
  line-height: 1.625;
}

.resource-callouts ul.ws-flex {
  margin: 0 0 3em;
  row-gap: clamp(1.5em, 0.773em + 3.64vw, 3.5em);
}

.resource-callouts li {
  padding-left: 1.625em;
  position: relative;
}

.resource-callouts li>a {
  background: #FFF;
  border: 2px solid var(--ws-light-2);
  border-radius: .5em;
  display: block;
  height: 100%;
  overflow: hidden;
  padding: 2.625em 2.125em 2.9375em 3em;
  position: relative;
}

.resource-callouts li>a::before {
  content: '';
  inset: 0;
  opacity: .06;
  position: absolute;
}

.resource-callouts span.title {
  color: var(--ws-dark-blue);
  display: block;
  font-size: clamp(1.25em, 1.205em + 0.23vw, 1.375em);
  line-height: 1.2;
  margin: 0 0 .5em;
}

.resource-callouts .icon {
  align-items: center;
  aspect-ratio: 1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 2em;
  transition: all .3s ease;
  width: 3.25em;
}

.resource-callouts li.blue .icon { background-color: var(--ws-blue-2); }
.resource-callouts li.green .icon { background-color: var(--ws-green); }
.resource-callouts li.purple .icon { background-color: var(--ws-purple); }
.resource-callouts li.red .icon { background-color: var(--ws-red-2); }
.resource-callouts li.yellow .icon { background-color: var(--ws-yellow); }

.resource-callouts svg {
  height: 1.25em;
}

.resource-callouts svg path {
  fill: #FFF;
}

.resource-callouts .link {
  color: var(--ws-dark);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: .1em;
  text-underline-offset: .25em;
}

.resource-callouts .button {
  background-color: #FFF;
  border: 2px solid var(--ws-light-2);
  color: var(--ws-dark-blue);
  display: table;
  font-size: var(--ws-text-5);
  margin-inline: auto;
  overflow: hidden;
  position: relative;
}

.resource-callouts .button::before {
  background-size: .875em 1.75em;
  background-position: right 2em top .375em;
  position: absolute;
  width: 100%;
  height: 100%;
}





/* COMMUNITY TEXT BLOCK RIBBON ------------------------------ /
* - International, Immigrant-Origin community pages (i.e. LPTW ribbon)
*/

.community-text {
  background: no-repeat center / cover;
  padding-block: 2.6875em;
  position: relative;
}

.community-text .background {
  background: no-repeat center / cover;
  inset: 0;
  position: absolute;
}

.community-text .wrap {
  max-width: calc(77.25em + 2 * var(--ws-gap));
}

.community-text .textbox {
  background: var(--ws-green);
  max-width: 36.5em;
  padding: clamp(2.5em, 2.386em + 0.57vw, 2.8125em) clamp(1.5em, 0.386em + 5.57vw, 4.5625em);
}

.community-text h2 {
  color: #FFF;
  font-size: var(--ws-text-3);
}

.community-text p {
  color: #FFF;
}

.community-text .button {
  background: #FFF;
  border: 2px solid #FFF;
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  margin: .25em 0 0;
}

.community-text .button.green::before { background-image: url('./images/icons/arrow-right-blue.svg'); }
.community-text .button.green::before { background-image: url('./images/icons/arrow-right-green.svg'); }
.community-text .button.purple::before { background-image: url('./images/icons/arrow-right-purple.svg'); }
.community-text .button.red::before { background-image: url('./images/icons/arrow-right-red-2.svg'); }
.community-text .button.yellow::before { background-image: url('./images/icons/arrow-right-yellow.svg'); }



/* Immigrant Origin FAFSA Hub ribbon overrides */
.community-text.fafsa {
  background: var(--blue-2);
}

.community-text.fafsa .background::after {
  background: linear-gradient(90deg, rgba(70,208,254,1) 0%, rgba(70,208,254,0) 100%);
  content: '';
  inset: 0 auto 0 0;
  width: 50%;
  position: absolute;
}

.community-text.fafsa .textbox {
  background: var(--ws-dark-blue);
}



/* DACA/Undocumented Collee Corner ribbon overrides */

.community-text.college_corner .textbox {
  background: var(--blue-2);
  margin-left: auto;
}

.community-text.college_corner :is(h2, p) {
  color: var(--ws-dark-blue);
}


/* DATA POINTS RIBBON ------------------------------ /
* - Immigrant-Origin community page
*/

.data-points {
  overflow: hidden;
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
}

.data-points h2 {
  margin: 0 0 clamp(1em, 0.636em + 1.82vw, 2em);
  text-align: center;
}


.data-points .infogram-embed {
  margin: 0 auto;
}





/* CHART DATA RIBBON ------------------------------ /
* - Immigrant-Origin community page
*/

.chart-data {
  padding-block: 0 clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
}

.chart-data h2 {
  line-height: 1;
  margin: 0 0 .75em;
  text-align: center;
}

.chart-data table + h2 {
  margin-top: 2em;
}

.chart-data table + table {
  margin-top: 2.75em;
}

.chart-data span.subheading {
  color: var(--ws-dark-blue);
  display: block;
  font-size: var(--ws-text-5);
  margin: 0 0 1.125em;
  text-align: center;
}

.chart-data table caption {
  background: var(--ws-dark-blue);
  color: #FFF;
  font-size: clamp(1.125em, 1.08em + 0.23vw, 1.25em);
  margin: 0 0 .125rem;
  padding: .5rem;
  text-align: center;
}

.chart-data .table-responsive th {
  background: rgba(var(--ws-slate-rgb), .25);
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-5);
  padding: .86rem 1rem;
}

.chart-data .table-responsive tbody tr:last-child {
  border-bottom: 1px solid #CCC;
}

.chart-data .table-responsive tbody tr:nth-child(even) {
  background: rgba(241,241,241,.5);
}

.chart-data .table-responsive thead th:first-of-type {
  color: transparent;
}

.chart-data .table-responsive td {
  font-size: 1em;
  padding: .61rem 1rem;
}

.chart-data .table-responsive td:not(:first-child) {
  border: 0;
}





/* TABLE OF CONTENTS RIBBON ------------------------------ /
* - Federal Policies subpage templates
*/

.toc {
  padding-block: clamp(3em, 2.773em + 1.14vw, 3.625em);
  position: relative;
  z-index: 0;
}

.toc::after {
  background: url('./images/bg-plus-short.png') repeat-x center top;
  content: '';
  height: 5.25em;
  inset: 0 0 auto 0;
  position: absolute;
  z-index: -1;
}

.toc h2 {
  text-align: center;
}

.toc .ws-flex {
  margin: 1.5em 0 0;
  --ws-gap: 1.5625em;
}

.toc .ws-flex>div {
  background: var(--ws-light-3);
  border-radius: 0.625em;
  overflow: hidden;
}

.toc .ws-flex>div:first-child:last-child {
  margin-inline: auto;
  max-width: 32.1875em;
  width: 100%;
}

.toc .subheading {
  background: rgba(var(--ws-light-2-rgb), .34);
  padding: .827em 2em;
}

.toc h3 {
  color: var(--ws-dark-blue);
  font-size: var(--ws-text-6);
  margin: 0;
}

.toc ul {
  margin: 1.5em 2em 1.875em;
  list-style: none;
}

.toc ul>li {
  margin: 0 0 .875em;
  padding: 0 0 0 2.5em;
  position: relative;
}

.toc ul>li::before {
  aspect-ratio: 1;
  background: url('./images/icons/arrow-d-red.svg') no-repeat center / contain;
  content: '';
  height: .875em;
  left: 1.125em;
  top: .25em;
  position: absolute;
}

.toc ul>li>a {
  color: var(--ws-dark-blue);
  display: block;
  text-decoration: underline;
}





/* CURRENT FEDERAL POLICIES RIBBON ------------------------------ /
* - Federal Policies subpage templates
*/

.current-federal-policies {
  background: var(--ws-light-3);
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
}

.current-federal-policies .wrap {
  max-width: calc(58.75em + 2 * var(--ws-gap));
}

.current-federal-policies .icon {
  aspect-ratio: 1;
  background: url('./images/icons/building.svg') no-repeat center / contain;
  display: block;
  margin: 0 auto 1em;
  width: 3.875em;
}

.current-federal-policies h2.main-heading {
  font-size: 1em;
  margin: 0 0 clamp(2em, 1.636em + 1.82vw, 3em);
  text-align: center;
}

.current-federal-policies h3 {
  color: var(--ws-red);
  font-size: clamp(1.25em, 1.182em + 0.34vw, 1.4375em);
}

.current-federal-policies h4 {
  font-size: var(--ws-text-6);
}


/* Rotator */
.current-federal-policies .rotator-wrap {
  padding-block: 2em;
}

.current-federal-policies .slick-slider.arrow-rotator .slide {
  padding-inline: .5em;
}

.current-federal-policies .slick-slider.arrow-rotator button {
  top: 7em;
}

.current-federal-policies .rotator-wrap h3 {
  margin: 0 0 1em;
}

.current-federal-policies .slick-slider.arrow-rotator {
  max-width: 38.625em;
}

.current-federal-policies .slick-slider.arrow-rotator .card {
  background: #FFF;
  border: 2px solid var(--ws-light-4);
  border-radius: .5em;
  min-height: 17.5em;
  margin-inline: auto;
  max-width: 28.75em;
  padding: clamp(1em, 0.773em + 1.14vw, 1.625em);
}

.current-federal-policies .slick-slider.arrow-rotator .media {
  aspect-ratio: 405 / 228;
  border-radius: .25em;
  margin: 0 0 1em;
  overflow: hidden;
  width: 100%;
}

.current-federal-policies .slick-slider.arrow-rotator .image {
  background: #000 no-repeat center / cover;
  height: 100%;
  width: 100%;
}

.current-federal-policies .flex {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 0 1em;
}

.current-federal-policies time {
  color: var(--ws-dark-blue);
}

.current-federal-policies span.category {
  font-size: .875em;
}

.current-federal-policies .slide-content {
  width: 100%;
}

.current-federal-policies .slide-content .slide-brief p {
  color: #666;
}

.current-federal-policies .slide-content .slide-brief p:last-child {
  margin: 0;
}

.current-federal-policies .slide.mode-none .card {
  display: flex;
  align-items: center;
}





/* ACCORDIONS RIBBON ------------------------------ /
* - Federal Policies subpage templates
*/

.accordions-ribbon {
  padding-block: clamp(3em, 2.773em + 1.14vw, 3.625em) clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
  z-index: 0;
}

.accordions-ribbon::after {
  background: url('./images/bg-plus-short.png') repeat-x center top;
  content: '';
  height: 5.25em;
  inset: 0 0 auto 0;
  position: absolute;
  z-index: -1;
}

.accordions-ribbon h2 {
  margin: 0 0 .625em;
  text-align: center;
}

.accordions-ribbon h3 {
  color: var(--ws-blue-2);
  margin: 1.75em 0 .5em;
}

.accordions-ribbon .group + h2 {
  margin-top: 1.5em;
}

.accordions-ribbon h2 + .group>h3:first-child {
  margin-top: 1.25em;
}

.accordions-ribbon .accordion>:is(h2, h4),
.accordions-ribbon .accordion button {
  font-size: 1em;
}

.accordions-ribbon .accordion button {
  padding-block: 1.25em;
}

.accordions-ribbon .group {
  margin-inline: auto;
  max-width: 43.4375em;
  position: relative;
}




/* FEDERAL POLICIES TEXT RIBBON ------------------------------ /
* - Federal Policies subpage templates
*/

.federal-policies-text {
  background: url('./images/bg-federal-policies-text.webp') no-repeat center / cover;
  padding-block: clamp(3em, 2.318em + 3.41vw, 4.875em);
  position: relative;
  z-index: 0;
}

.federal-policies-text::before {
  background: var(--ws-dark-3);
  content: '';
  inset: 0;
  opacity: .9;
  position: absolute;
  z-index: -1;
}

.federal-policies-text .wrap {
  max-width: calc(43.375em + 2 * var(--ws-gap));
}

.federal-policies-text h2 {
  color: #FFF;
  margin: 0 0 1em;
  text-align: center;
}

.federal-policies-text p {
  color: #FFF;
}

.federal-policies-text a {
  color: #FFF;
  text-decoration: underline;
}




/* INTERIOR PARTNERS ----------------------------- /
* - Shortcode on /about/partners
*/

.content .interior-partners ul {
  margin: 0 0 2.5em;
}

.content .interior-partners li {
  margin: 0;
  padding: 1.75em 0;
}

.content .interior-partners li::before {
  display: none;
}

.content .interior-partners li+li {
  border-top: 1px solid #DDD;
}

.content .interior-partners li:last-child {
  border-bottom: 1px solid #DDD;
}

.content .interior-partners li>a {
  display: block;
}

.content .interior-partners strong.title {
  display: block;
  font-size: var(--ws-text-5);
  margin-block: .25em .75em;
}

.content .interior-partners :is(p, a:last-child>strong) {
  margin-bottom: 0;
}




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