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

:root {
  --main-font-family:"Source Sans 3", sans-serif;
  --glyphicons-font-family:"Glyphicons Regular";
  --main-text-color:#1f2041;
  --main-blue:#38628f;
  --main-lightest-cream:#fafaf7;
  --main-gold:#ffab00;
  --main-light-blue:#ced9e5;
  --main-lightest-blue:#eaf1f8;
  --main-light-grey:#ccc;
}

html {font-size:18px;}

/* Body */

body {
  background-color:#fff;
  color:var(--main-text-color);
  font-family:var(--main-font-family);
  font-weight:400;
  line-height:1.555556em;
  margin:0;
  padding:0;
}

p {margin:0 0 13.5px;}

.dialog-off-canvas-main-canvas a {
  color:var(--main-blue);
  font-weight:700;
  text-decoration:none;
}

.dialog-off-canvas-main-canvas a:hover {
  color:var(--main-blue);
  text-decoration:none;
}

.dialog-off-canvas-main-canvas p a,
.dialog-off-canvas-main-canvas p a:hover {text-decoration:underline;}

ul.menu {
  margin:0;
  padding:0;
}

ul li, ol li {margin:0 0 .5em;}
li.menu-item {padding-top:0;}

.center {text-align:center;}

/* make sure anchor links take into consideration the fixed menu */

:target::before {
  content:'';
  display: block;
  height:120px;
  margin-top:-120px;
  visibility:hidden;
}

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


/* Header */

header.site-header {
  background-color:#fff;
  height:120px;
  position:fixed;
  top:0;
  width:100%;
  z-index:10;
}

header .header-container {
  background:#fff;
  display:grid;
  height:100%;
  grid-template-columns:205px auto 84px;
  grid-template-rows:120px auto auto;
  max-width:1200px;
  margin:0 auto;
  position:relative;
  width:100%;
}

header .block.branding {
  align-items:center;
  display:flex;
  grid-column:1 / 2;
  grid-row:1 / 2;
  height:120px;
  margin:0;
  width:100%;
  z-index:2;
}

header .menu-controls {display:none;}

.block.branding a.site-logo {
  display:flex;
  font-size:0;
  height:120px;
  justify-content:flex-start;
  padding:20px;
  text-align:left;
  width:100%;
}

.block.branding a.site-logo img.standard-logo {
  height:80px;
  width:165px;
}

.block.branding a.site-logo img.no-tagline {
  height:40px;
  width:115px;
}

.branding img.no-tagline {display:none;}


/* Sticky Header */

header.site-header.sticky,
header.sticky .branding img {transition:250ms;}
header.site-header.sticky {box-shadow:0 0 30px rgba(0,0,0,.5);}
header.site-header.sticky,
header.sticky .block.branding,
header.sticky .block.branding a.site-logo {height:80px;}

header.sticky .header-container {
  grid-template-columns:155px auto 84px;
  grid-template-rows:80px auto auto;
}

header.sticky .branding img.standard-logo {display:none;}
header.sticky .branding img.no-tagline {display:block;}


/* Navigation Menus */

ul.menu.nav {
  list-style:none;
  margin:0 auto;
  padding:0;
  width:100%;
}

ul.menu.nav li {color:#fff;}
ul.menu.nav li span.link-wrapper {cursor:pointer;}

ul.menu.nav li a {
  color:#fff;
  width:100%;
}


/* Social Media Menu */

nav.footer-social {max-width:400px;}

ul.menu-social {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  list-style:none;
  margin:0;
  width:100%;
}

ul.menu-social li {
  display:block;
  height:44px;
  margin:0;
  padding:0;
  width:44px;
}

ul.menu-social li a {
  background-position:center;
  background-repeat:no-repeat;
  background-size:24px;
  display:block;
  font-size:0;
  height:44px;
  padding:0;
  width:44px;
}

ul.menu-social li a.icon-facebook {background-image:url(/themes/custom/jcrc/images/icons/facebook-teal.svg);}
ul.menu-social li a.icon-flickr {background-image:url(/themes/custom/jcrc/images/icons/flickr-teal.svg);}
ul.menu-social li a.icon-instagram {background-image:url(/themes/custom/jcrc/images/icons/instagram-teal.svg);}
ul.menu-social li a.icon-linkedin {background-image:url(/themes/custom/jcrc/images/icons/linkedin-teal.svg);}
ul.menu-social li a.icon-x {background-image:url(/themes/custom/jcrc/images/icons/x-teal.svg);}
ul.menu-social li a.icon-youtube {background-image:url(/themes/custom/jcrc/images/icons/youtube-teal.svg);}


/* Main Menu */

nav.main-menu ul.menu {
  list-style:none;
  margin:0;
  padding:0;
}

nav.main-menu li.menu-item {
  display:grid;
  margin:0;
  padding:0;
  width:100%;
}

nav.main-menu li.menu-item.menu-item--expanded {
  grid-template-columns:1fr 44px;
}

nav.main-menu li.menu-item .no-link,
nav.main-menu li.menu-item a.menu-item {
  color:var(--main-text-color);
  display:block;
  font-size:1rem;
  font-weight:700;
  line-height:1.333333em;
  padding:18px 20px;
  text-decoration:none;
}

nav.main-menu ul.menu-level-1 > li.menu-item > .no-link,
nav.main-menu ul.menu-level-1 > li.menu-item > a {text-transform:uppercase;}

nav.main-menu button.dropdown-control {
  background:unset;
  background-image:url(/themes/custom/jcrc/images/icons/icon-plus-blue.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:16px;
  border:none;
  display:block;
  font-size:0;
  height:100%;
  padding:0;
  width:100%;
}

nav.main-menu li.menu-item.open > button.dropdown-control {background-image:url(/themes/custom/jcrc/images/icons/icon-minus-blue.svg);}

nav.main-menu span.button-controls {
  display:block;
  font-size:1rem;
  height:100%;
  width:30px;
}

nav.main-menu ul.menu ul.menu[hidden] {display:none;}
  
nav.main-menu ul.menu li.menu-item.open > ul.menu {
  display:grid;
  grid-column:1 / 3;
}


/* Action Menu */

ul.menu.action-links {
  display:flex;
  height:56px;
  width:100%;
}

ul.menu.action-links li.action-link {
  align-items:center;
  display:flex;
  flex:1 auto;
  height:100%;
  justify-content:center;
  margin:unset;
}

ul.menu.action-links li.action-link a {
  align-items:center;
  background:var(--main-blue);
  color:#fff;
  display:flex;
  height:100%;
  justify-content:center;
  line-height:1.333333em;
  padding:16px 10px;
  text-align:center;
  text-transform:uppercase;
  width:100%;
}

ul.menu.action-links li.action-link a.donate-link {
  background:var(--main-gold);
  color:var(--main-text-color);
}


/* Hero Region */

main .site-hero {
  display:flex;
  height:250px;
}

.site-hero .hero-image {
  background-size:cover;
  background-position:center;
  display:flex;
  height:auto;
  width:100%;
}

#hero-video {
  height:auto;
  position:relative;
}

#hero-video .hero-container {
  margin:0 auto;
  max-width:1200px;
  padding:0;
  position:relative;
  width:100%;
}

#hero-video .hero-container.hero-video figure.video {
  margin:0 0 20px;
  width:100%;
}

#hero-video .hero-container.hero-video figure.video iframe.media-oembed-content {
  aspect-ratio:16 / 9;
  height:auto;
  width:100%;
}


/* Page Title */

main .region-title {
  background-color:var(--main-lightest-blue);
  padding:32px 20px;
}

main .region-title.has-video {padding:0;}

h1.page-title {
  color:var(--main-blue);
  font-size:2.333333em;
  font-weight:700;
  line-height:1.142857em;
  margin:0 auto;
  max-width:1200px;
  text-align:center;
}

body.path-media h1.page-title {max-width:800px;}

main .region-title.page.has-video h1.page-title {
  padding:32px 20px;
}


/* Page Content */

article :target {
  overflow:scroll;
  scroll-margin-top:100px;
}

article h2 {
  font-size:1.777778em;
  font-weight:600;
  line-height:1.25em;
  margin:24px 0 16px;
}

article .callout-wrapper > h2 {margin-top:0;}
article .callout-wrapper > h2:last-child {margin-bottom:0;}

article h3 {
  color:var(--main-blue);
  font-size:1.333333em;
  line-height:1.333333em;
  margin:24px 0 8px;
}

article figure {
  line-height:0;
  margin:0 0 30px;
  /*! position:relative; */
  width:100%;
}

article figure a {
  display:block;
  line-height:0;
}

article figure img {
  height:auto;
  width:100%;
}

article figure figcaption {
  line-height:1.5294em;
  padding:10px 0 0;
}

article hr {
  background:#d8d8d8;
  border:0;
  height:1px;
  margin:50px 0;  
}

article blockquote {
  border-left:3px solid #38628f;
  color:#38628f;
  margin:30px 20px;
  padding-left:20px;
}

article section.body ul li {
  list-style-type:none;
  position:relative;
}

article section.body ul li:before {
  background:#ffab00;
  content:"";
  display:block;
  height:7px;
  left:-15px;
  position:absolute;
  top:10px;
  width:7px;
}

section.body ul.columns {
  column-gap:50px;
  padding-left:0;
}

section.body ul.columns li:before {display:none;}

p.read-more {
  display:flex;
  font-size:.8888889rem;
  line-height:1.5em;
  margin:0;
  text-transform:uppercase;
}

a.read-more {
  display:block;
  padding:10px 0;
  text-decoration:underline;
}

a.read-more.arrow-right {
  background-image:url(/themes/custom/jcrc/images/icons/arrow-right-long-blue.svg);
  background-position:center right;
  background-repeat:no-repeat;
  background-size:18px;
  padding-right:28px;
  transition:padding 250ms ease-in-out;
}

a.read-more.arrow-right[target="_blank"] {background-image:url(/themes/custom/jcrc/images/icons/arrow-up-right-from-square-blue.svg);}
a.read-more.arrow-right:focus,
a.read-more.arrow-right:hover {padding-right:38px;}

.blessed-memory {
  display:flex;
  flex-wrap:wrap;
}

.blessed-memory span:after {
  content:"\05D6\05F4\05DC";
  font-family:sans-serif;
  padding:0 5px;
}

.giving-tuesday-red {
  color:#f00;
  font-weight:700;
}

.standard-gold {color:#ffab00;}
.standard-blue {color:#38628f;}
.standard-navy {color:#1f2041;}

article.node section a.button-link {
  display:inline-flex;
  background:#ffab00;
  border-radius:4px;
  color:#fff;
  font-size:.8823em;
  height:44px;
  justify-content:center;
  letter-spacing:2px;
  line-height:44px;
  margin:10px 0;
  min-width:160px;
  padding:0 30px;
  text-transform: uppercase;
}


/* People Pages */

article.node.people section.body.main-body {margin-bottom:20px;}
article.node.people section.body.standard-content {margin-top:20px;}

article.node section.people {
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  margin:0 0 20px;
  max-width:1200px;
  padding:10px 0;
}

article.node section.people.board,
article.node section.people.consultants {
  margin:0 auto;
  max-width:800px;
}

section.people > .person {
  margin:20px;
  position:relative;
}

section.people.board section.person,
section.people.consultants section.person {margin:0 20px 10px;}

.person figure.portrait {
  box-shadow:7px 7px 0px #38628f;
  float:left;
  margin:6px 25px 10px 0;
  position:relative;
  width:160px;
}

section.staff .person figure.portrait {
  box-shadow:none;
  float:none;
  margin:0 0 20px;
  padding:16px;
  width:100%;
}

.person figure.portrait:before {
  background:#fff;
  bottom:-7px;
  content:"";
  height:7px;
  position:absolute;
  width:45px;  
}

section.staff .person figure.portrait:before {
  background:#38628f;
  bottom:0;
  content:"";
  height:60px;
  left:0;
  width:100%;
  z-index:-1;
}

section.staff .person figure.portrait img {width:160px;}

.person .person-details {margin:0;}

.person .person-details .person-name {
  display:block;
  font-weight:700;
}

.person .person-details + .person-role {
  color:#676767;
  display:block;
  font-size:.8235em;
  line-height:1.3571em;
  margin:0 0 10px;
}


/* News Pages */

body.page-node-type-event h1.page-title,
body.page-node-type-form h1.page-title,
body.page-node-type-statement h1.page-title,
body.page-node-type-resolution h1.page-title,
body.page-node-type-inthenews h1.page-title {max-width:980px;}

article.news-type header {
  margin:40px auto 0;
  max-width:800px;
  padding:0 20px 10px;
}

article.news-type header p {color:#676767;}

article.news-type header .article-type {
  font-weight:700;
  margin:0 0 3px;
}

article.news-type header .article-date {
  font-size:.8235em;
  line-height:1.3571em;
}

article.news-type header .menu-social {
  justify-content:flex-start;
  margin-left:-10px;
  padding:0 0 8px;;
}

article.news-type section.body.main-body,
article.news-type section.body.callout,
article.news-type section.body.callout .callout-wrapper{margin-top:0;}

article.news-type .share-icons {
  display:flex;
  justify-content:space-between;
  width:60px;
}

article.news-type .share-icons span {display:block;}

article.news-type .share-icons span a,
article.news-type .share-icons span a:before {
  display:block;
  height:24px;
  overflow:hidden;
  width:24px;
}

article.news-type .share-icons span a {
  color:#38628f;
  font-size:20px;
  line-height:24px;
  overflow:hidden;
  text-align:center;
  text-decoration:none;
}

article.node.news-type section.documents {
  margin:0 auto;
  max-width:800px;
}

article.node.news-type section.documents:before {height:400px;}

article.node.news-type .documents-container figure.document {position:relative;}



/* Views Pages */

article.node.views section.view {
  margin:40px auto;
  max-width:960px;
}

section.view ul.cards li.card {
  align-items:flex-start;
  display:flex;
  justify-content:space-between;
  margin:0 0 40px;
}

li.card figure.card-logo {
  display:none;
  margin:unset;
}

li.card .card-date,
li.card .card-cosponsored-by {
  color:#676767;
  font-size:.8235em;
  line-height:1.3571em;
  margin:0 0 5px;
}

li.card .card-title {
  font-weight:700;
  margin:0 0 3px;
}

li.card .card-title a {text-decoration:none;}

li.card .card-type {
  font-size:.8824em;
  line-height:1.3333em;
}

li.card .card-date-details {display:block;}

section.view ul.pager {
  margin:0 0 20px;
  padding:0;
}

section.view ul.pager > li {
  font-size:.8824em;
  font-weight:700;
  letter-spacing:2px;
  line-height:1.3333em;
  margin:0;
  padding:0;
  text-transform:uppercase;
}

section.view ul.pager > li:before {display:none;}
section.view ul.pager > li a {color:#38628f;}


/* Event Pages */

article.node.event section.share-image {margin:20px auto 40px;}

section.event-details .callout-wrapper {
  display:flex;
  flex-direction:column;
}

.event-details-container h3 {margin:0;}

.event-details-container .date-and-time b {
  display:block;
  font-weight:400;
}

.event-details-container .details-link  {
  align-self:flex-start;
  align-items:center;
  background:#ffab00;
  border-radius:4px;
  display:inline-flex;
  justify-content:center;
  letter-spacing:2px;
  line-height:1em;
  margin:0 0 15px;
  min-width:160px;
  padding:14px 10px;
}

.event-details-container .details-link a {
  color:#fff;
  font-size:.8824em;
  text-transform:uppercase;
}

article.node .article-content section.speakers,
article.node .article-content section.cosponsors {margin:40px auto;}

section.speakers .speakers-container {
  display:grid;
  gap:40px;
}

section.speakers .person {position:relative;}

section.speakers .person figure.portrait {
  float:right;
  margin:0 0 10px 25px;
}

section.cosponsors .cosponsors-wrapper {
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
}

section.cosponsors figure.cosponsor {
  height:100px;
  margin:0 50px 20px 0;
  position:relative;
  width:auto;
}

section.cosponsors figure.cosponsor img {
  height:100px;
  max-width:280px;
  width:auto;
}

article.event section.embedded-form > hr {margin:50px 20px;}


/* Search Stuff */

article.search-api-page {
  padding:20px 0 0;
}

section.search-controls {
  border-bottom:2px solid var(--main-blue);
  padding-bottom:4px;
  margin-bottom:40px;
}

.search-controls form {
  align-items:center;
  display:grid;
  gap:32px;
  grid-template-columns:1fr 44px;
  justify-content:space-between;
}

.search-controls form > .form-type-search  {
  margin:unset;
  padding:0;
}

.search-controls form > .form-type-search input {
  background:#fff;
  border:1px solid var(--main-blue);
  border-radius:0;
  box-sizing:border-box;
  font-size:.888889rem;
  height:44px;
  line-height:24px;
  padding:9px 10px;
  width:100%;
  -moz-appearance:none;
  -webkit-appearance:none;
}

.search-controls form > .form-actions {
  background:#ff8033;
  font-weight:600;
  height:44px;
  margin:unset;
  padding:0;
  position:relative;
  width:44px;
}

.search-controls form > .form-actions {
  background:var(--main-blue);
  border-radius:50%;
}

.search-controls form > .form-actions .form-submit {
  align-items:center;
  background-color:unset;
  background-image:url(/themes/custom/jcrc/images/icons/arrow-right-long-white.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:20px;
  border:0;
  display:flex;
  font-size:0;
  height:44px;
  justify-content:center;
  padding:0;
  width:44px;
}

.search-results .teaser {margin:0 0 40px;}
.search-results .teaser h3.content-title {margin:0 0 4px;}
.search-results .teaser h3.content-title a:focus,
.search-results .teaser h3.content-title a:hover {text-decoration:underline;}
.search-results .teaser .content-details {margin:0 0 4px;}

.search-results .teaser .content-details .content-type {
  color:var(--main-blue);
  font-weight:700;
}


/* Content Callouts */

article.node section.body,
article.node section.video,
article.node section.videos,
article.node section.gallery {margin:40px auto;}

article.node section.callout,
article.node section.videos,
article.media section.video {position:relative;}

article.node section.videos figure.video {margin-bottom:20px;}

article.node section.callout .callout-wrapper,
article.media section.callout .callout-wrapper {
  background:#fff;
  border:1px solid #38628f;
  box-shadow:20px 20px 0px #ced9e5;
  margin:30px 20px 60px 0;
  padding:30px;
}

article.node section.callout .callout-wrapper:after,
article.media section.callout .callout-wrapper:after {
  background:#fff;
  content:"";
  display:block;
  height:20%;
  position:absolute;
  right:20px;
  top:0;
  width:20px;
}

article.node .background-blue section.callout .callout-wrapper:after {background:var(--main-lightest-blue);}
article.node .background-cream section.callout .callout-wrapper:after {background:var(--main-lightest-cream);}
article section.callout .callout-wrapper > :last-child {margin-bottom:0;}

.callout-quote .quoter {
  font-size:.8824em;
  line-height:1.3333em;
  margin-bottom:0;
}

.callout-quote .quoter-title {
  color:#676767;
  font-size:.8235em;
  line-height:1.3571em;
}

article.node section.documents,
article.node section.image-callouts {
  margin:0 0 20px;
  max-width:1200px;
  padding:50px 0 0;
  position:relative;
}

article.node section.documents:before {
  background:#f3f6f9;
  content:"";
  display:block;
  height:400px;
  left:0;
  position:absolute;
  top:0;
  width:100%;
  z-index:-1;
}

article.node section.documents h2.documents-title {
  margin:0 20px;
  position:relative;
  z-index:1;
}

section.documents .documents-container,
article.node section.image-callouts {
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
}

.documents-container figure.document,
.image-callouts .image-callout {
  margin:20px;
  width:calc(100% - 40px);
}

article.node section.gallery {padding:0 10px;}

section.gallery .gallery-items {
  display:flex;
  flex-wrap:wrap;
}

section.gallery figure.image {
  cursor:pointer;
  margin:10px;
  position:relative;
  width:auto;
}

section.gallery figure.image figcaption {
  background:rgba(0,0,0,.75);
  color:#fff;
  display:none;
  font-size:.8235em;
  line-height:1.3571em;
  padding:10px;
  position:absolute;
  bottom:0;
  width:100%;
}

section.gallery figure.image:hover figcaption {display:block;}

section.image-callouts .image-callout {position:relative;}

section.image-callouts .image-callout:before {
  background:#f3f6f9;
  content:"";
  display:block;
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100px;
  z-index:-1;
}

section.image-callouts .image-callout:nth-of-type(even):before {
  left:unset;
  right:0;
}

.image-callout figure.image {margin-bottom:10px;}
.image-callout figure.image img {filter: grayscale(1.0);}
.image-callout:hover figure.image img {filter:none;}
.image-callout .read-more a {color:#38628f}

article.node .article-content section.organizations {
  margin:40px auto;
  max-width:440px;
}

article.node section.organizations section.organization {
  margin:0 0 40px;
  position:relative;
}


/* General Image Paragraphs */

figure.paragraph.image {
  margin:0 auto 20px;
  max-width:760px;
  position:relative;
  width:100%;
}



/* People Paragraphs */

article.node section.paragraph.people {
  display:block;
  padding:40px 20px;
  margin:0 auto;
  max-width:unset;
  width:100%;
}

article.node section.paragraph.people + section.paragraph.people {background:var(--main-lightest-blue);}
article.node section.paragraph.people + section.paragraph.people + section.paragraph.people {background:#fff;}
article.node section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people {background:var(--main-lightest-blue);}
article.node section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people {background:#fff;}
article.node section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people {background:var(--main-lightest-blue);}
article.node section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people + section.paragraph.people {background:#fff;}

.people details.people {
  border:0;
  margin:0 auto;
  max-width:760px;
  padding:0;
}

.people details.people summary.people-title {
  list-style:none;
  margin:0;
  padding:0;
  width:100%;
}

.people details.people summary.people-title::-webkit-details-marker {display:none;}
.people details.people summary.people-title:focus {outline:0;}

.people details.people summary.people-title h2 {
  align-items:center;
  background-image:url(/themes/custom/jcrc/images/icons/chevron-down-blue.svg);
  background-position:center right;
  background-repeat:no-repeat;
  background-size:24px;
  display:flex;
  font-size:1.411765em;
  justify-content:space-between;
  line-height:1.25em;
  margin:0;
  width:100%;
}

.people details.people[open] summary.people-title h2 {margin-bottom:20px;}

.people details.people[open] summary.people-title h2 {  background-image:url(/themes/custom/jcrc/images/icons/chevron-up-blue.svg);}

details.people p.person {
  border-bottom:.5px solid var(--main-light-blue);
  break-inside: avoid;
  margin:0 0 20px;
  padding:0 0 20px;
}

details.people p.person strong.name,
details.people p.person span.address,
details.people p.person span.phone-numbers,
details.people p.person a.email-address {display:block;}

details.people p.person span.phone-numbers em {
  padding:0 4px 0 0;
}

details.people p.person span.phone-numbers span {
  border-right:1px solid var(--main-light-blue);
  margin-right:6px;
  padding-right:10px;
}

details.people p.person span.phone-numbers span:last-child {
  border:0;
  margin:0;
  padding:0;
}


/* Sidebar Stuff */

.article-sidebar {
  background-color:#f6f6f6;
  display:grid;
  gap:20px;
  margin:0;
  padding:30px 20px;
}

.article-sidebar .sidebar-block:not(:last-of-type) {
  border-bottom:1px solid #d8d8d8;
  padding-bottom:20px;
}

.article-sidebar h2.sidebar-title {margin:0 0 10px;}

.article-sidebar ul.sidebar-menu {
  display:grid;
  gap:13.5px;
  list-style:none;
  margin:0;
  padding:0;
}

.article-sidebar a:focus,
.article-sidebar a:hover {text-decoration:underline;}

.article-sidebar ul.sidebar-menu li.menu-item {margin:0;}

.article-sidebar ul.sidebar-menu li.menu-item a {


}

.article-sidebar .logos {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
}

.article-sidebar .logos figure.logo {width:calc(50% - 10px);}


/* Media Stuff */

article figure.video {
  margin:0 0 20px;
  width:100%;
}

article figure.video iframe.media-oembed-content {
  aspect-ratio:16 / 9;
  height:auto;
  width:100%;
}

figure.document {
  border:1px solid #ccc;
  box-shadow:0 2px 4px 0 rgba(0,0,0,.5);
}

figure.document span {
  color:#676767;
  display:block;
}

figure.document figcaption {
  background:#fff;
  padding:20px;
  text-transform:uppercase;
}

figcaption span.year {
  font-size:.8235em;
  line-height:1.3571em;
  margin:0 0 5px;
}

figcaption span.document-title a {
  color:#676767;
  font-size:1.1176em;
  font-weight:700;
  letter-spacing:1px;
  line-height:1.3158em;
}

figcaption span.document-title a:hover {color:#676767;}

figcaption span.type {
  color:#ffab00;
  font-size:.8824em;
  font-weight:700;
  letter-spacing:2px;
  line-height:1.333em;
  margin:5px 0 0;
}

section.organization {
  align-items:flex-start;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

section.organization figure.logo {
  display:flex;
  width:100%;
}

section.organization figure.logo a {
  display:block;
  width:100%;
}

section.organization .organization-name {
  font-size:.8824em;
  font-weight:700;
  letter-spacing:2px;
  line-height:1.3333em;
  text-transform:uppercase;
}

section.share figure.share figcaption a {line-height:1em;}


/* Footer */

.site-footer {
  background-color:var(--main-light-blue);
  padding:30px 20px 100px;
  text-align:center;
}

.site-footer .footer-container {
  display:grid;
  gap:20px;
  margin:0 auto;
  max-width:1160px;
  width:100%;
}

.site-footer nav.footer-menu {
  margin:0 auto;
  max-width:600px;
  width:100%;
}

.site-footer nav.footer-menu ul.menu {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  text-align:center;
  width:100%;
}

.site-footer nav.footer-menu ul.menu li.menu-item {
  display:block;
  width:100%;
}

.site-footer nav.footer-menu ul.menu li.menu-item a.menu-item {
  color:var(--main-blue);
  display:block;
  font-size:1rem;
  line-height:1.333333em;
  padding:12px 10px;
  text-transform:uppercase;
}

.site-footer nav.footer-menu ul.menu li.menu-item a.menu-item.button {
  background:var(--main-blue);
  border-radius:24px;
  color:#fff;
  font-size:.888889rem;
  line-height:1.5em;
  margin:0 auto;
  max-width:300px;
  padding:12px 48px;
}

.site-footer .block-content p:last-child {margin-bottom:0;}
.site-footer .address-contact {max-width:700px;}
.site-footer .address-contact a {text-decoration:unset;}
.site-footer .address-contact a:focus,
.site-footer .address-contact a:hover {text-decoration:underline;}

.site-footer .copyright {
  font-size:.888889rem;
  line-height:1.5em;
}

.site-footer figure.logo {
  font-size:0;
  line-height:0;
  margin:0 auto;
  max-width:100px;
  width:100%;
}

.site-footer figure.logo a {display:block;}

.site-footer figure.logo img {
  height:auto;
  width:100%;
}


/* Footer Mobile Menu */

#mobile-footer {
  bottom:0;
  height:56px;
  position:fixed;
  width:100%;
  z-index:11;
}


/* MEDIA QUERIES ************************* */
/* ----- Responsive ------------------ */


@media (min-width:400px) {
  

  /* Action Menu */

  ul.menu.action-links li.action-link {flex:1 0;}


  /* Hero Region */

  main .site-hero {height:300px;}

}

@media (min-width:500px) {
  
  /* Hero */
  
  .standard-hero .site-hero {height:450px;}


  /* Page Content */
  
  section.body ul.columns {column-count:2;}
  
  
  /* People Pages */
  
  article.node.people section.people.board,
  article.node.people section.people.consultants {flex-direction:row;}
  section.people.board section.person,
  section.consultants.board section.person {width:calc(50% - 40px);}
  
  
  /* Views Pages */
  
  li.card figure.card-logo {
    display:block;
    width:140px;
  }
  
  li.card section.card-content {width:calc(100% - 160px);}
  section.view ul.pager {padding:0 0 0 160px;}

  
  /* Event Pages */


  section.event-details .callout-wrapper {
    flex-direction:row;
    justify-content:space-between;
  }
  
  section.event-details .event-details-container {width:calc(50% - 10px);}
  .event-details-container .details-link {margin-bottom:0;}
  
  /* Content Callouts */

  section.documents .documents-container,
  article.node section.image-callouts {flex-direction:row;}
  .documents-container figure.document,
  .image-callouts .image-callout {width:calc(50% - 40px);}  
  section.gallery .gallery-items figure.image {width:calc(50% - 20px);}
  section.gallery .gallery-items.count-1 figure.image {width:100%;}
  article.node .article-content section.organizations {max-width:960px;}
  
  
  /* Media Stuff */
    
  section.organization {flex-direction:row;}

  section.organization figure.logo {
    align-items:center;
    display:flex;
    height:140px;
    margin:5px 0 0;
    width:140px;
  }

  section.organization .organization-content {width:calc(100% - 160px);}
  
  
  /* Footer */

  footer ul.menu-main.nav {
    flex-direction:row;
    justify-content:center;
  }

}


@media (min-width:600px) {
  
  /* Footer */

  .site-footer {
    padding-bottom:40px;
    text-align:left;
    
  }
  .site-footer nav.footer-menu {margin:0 0 0 -10px;}
  
  .site-footer nav.footer-menu ul.menu li.menu-item {
    justify-content:flex-start;
    width:auto;
  }
  
  .site-footer ul.menu-social {
    justify-content:flex-start;
    margin-left:-10px;
  }
  
  .site-footer figure.logo {margin:0;}
  

  /* Footer Mobile Menu */

  #mobile-footer {display:none;}

}


@media (min-width:768px) {
  
  
  /* Hero Region */

  main .site-hero {height:450px;}

  #hero-video:before {
    background:#38628f;
    content:"";
    height:80%;
    position:absolute;
    width:100%;
    z-index:-1;
  }

  #hero-video .hero-container {padding:0 20px;}
  .page #hero-video .hero-container {padding:0;}
  
  
  /* Page Title */

  main region.title {padding:48px 20px;}
  
  h1.page-title {
    font-size:3.333333em;
    line-height:1.133333em;
  }
  

  /* Page Content */

  article h2 {
    font-size:2.222222em;
    line-height:1.2em;
  }
  
  article .article-sidebar h2 {
    font-size:1.777778em;
    line-height:1.25em;
  }
  
  section.body ul.columns {column-count:3;}
  article.form section.body ul.columns {column-count:2;}
  
  
  /* People Pages */

  article.node section.people {flex-direction:row;}
  section.people > .person {width:calc(50% - 40px);}
  section.people.board section.person,
  section.people.consultants section.person {width:calc((100%/3) - 40px);}
  
  
  /* News Pages */

  body.page-node-type-event h1.page-title,
  body.page-node-type-statement h1.page-title,
  body.page-node-type-resolution h1.page-title,
  body.page-node-type-inthenews h1.page-title {
    font-size:2.333333em;
    line-height:1.142857em;
  }
  

  /* Content Callouts */

  .documents-container figure.document,
  .image-callouts .image-callout {width:calc((100%/3) - 40px);}
  .has-sidebar .documents-container figure.document,
  .has-sidebar .image-callout {width:calc(50% - 40px);}
  
  section.gallery .gallery-items figure.image {width:calc((100%/3) - 20px);}
  section.gallery .gallery-items.count-2 figure.image {width:calc(50% - 20px);}
  
  section.callout ul.multiple-columns {
    columns:2;
    column-gap:60px;
  }

  section.callout ul.multiple-columns li {
    break-inside:avoid;
    page-break-inside:avoid;
  }
  
  
  /* People Paragraphs */

  article.node section.people .people-list {
    column-count:2;
    column-gap:50px;
  }  
  
  
  /* Video Paragraphs */
  
  article.node section.videos .videos-container.multiple {
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-column-gap:20px;
  }
  
  
  /* Sidebar Stuff */
    
  article.node.has-sidebar {
    align-items:flex-start;
    display:flex;
  }
  
  article.node.has-sidebar .article-content {
    padding:20px 0;
    width:calc(100% - 300px);
  }
  
  article.node.has-sidebar .article-sidebar {
    padding-top:50px;
    width:300px;
  }
  
}


@media (min-width:1000px) {  
  
  /* Header */
  
  header.site-header {height:160px;}
  header.site-header.sticky {height:100px;}
  
  header.site-header .header-container {
    column-gap:20px;
    grid-template-columns:240px 1fr 380px;
    grid-template-rows:60px 60px;
    row-gap:40px;
  }
  
  header.site-header.sticky .header-container {
    grid-template-columns:215px 1fr 380px;
    grid-template-rows:50px 50px;
    row-gap:0;
  }

  header.site-header .block.branding {
    height:160px;
    grid-row:1 / 3;
  }
  
  header.site-header.sticky .block.branding {height:100px;}
  
  header.site-header .block.branding a.site-logo {
    height:160px;
    padding:30px 20px;
  }
  
  header.site-header.sticky .block.branding a.site-logo {
    height:100px;
    padding:20px;
  }
  
  header.site-header .block.branding a.site-logo img.standard-logo {
    height:100px;
    width:200px;
  }
  
  header.site-header .block.branding a.site-logo img.no-tagline {
    height:60px;
    width:175px;
  }
  
  header.site-header .header-search {
    display:flex;
    grid-column:2 / 3;
    grid-row:1 / 2;
    justify-content:flex-end;
    width:100%;
  }
  
  header.site-header .header-search .search-controls {
    max-width:350px;
    width:100%;
  }
  
  header.site-header .header-search .search-controls form {
    column-gap:16px;
    grid-template-rows:16px 40px 4px;
    height:100%;
    row-gap:0;
  }
  
  header.site-header.sticky .header-search .search-controls form {grid-template-rows:6px 40px 4px;}
  
  header.site-header .header-search .search-controls form > .form-type-search {
    display:block;
    grid-column:1 / 2;
    grid-row:2 / 3;
  }
  
  header.site-header .header-search form > .form-type-search input {
    border:0;
    border-bottom:1px solid var(--main-light-grey);
    height:40px;
    line-height:20px;
  }
  
  header.site-header .header-search .search-controls form > .form-actions {
    grid-column:2 / 3;
    grid-row:2 / 4;
  }
  
  header.site-header nav.action-menu {
    grid-column:3 / 4;
    grid-row:1 / 2;
    margin-right:20px;
    width:360px;
  }
  
  header.site-header.sticky nav.action-menu ul.menu.action-links {height:50px;}
  header.site-header nav.action-menu ul.menu.action-links li.action-link:first-child a {border-radius:0 0 0 28px;}
  header.site-header nav.action-menu ul.menu.action-links li.action-link:last-child a {border-radius:0 0 28px 0;}
  
  header.site-header nav.main-menu {
    grid-column:2 / 4;
    grid-row:2 / 3;
    padding-right:8px;
    width:100%;
  }
  
  header.site-header nav.main-menu ul.nav {
    display:flex;
    height:60px;
    justify-content:flex-end;
  }
  
  header.site-header.sticky nav.main-menu ul.nav {height:50px;}

  header.site-header .main-menu li.menu-item {
    padding:8px 0;
    position:relative;
    width:auto;
  }
  
  header.site-header.sticky .main-menu li.menu-item {padding:6px 0 0;}
  
  header.site-header .main-menu li.menu-item.menu-item--expanded {grid-template-columns:1fr 40px;}
  
  header.site-header .main-menu li.menu-item a,
  header.site-header .main-menu li.menu-item span.no-link {padding:10px 16px;}
  header.site-header .main-menu li.menu-item.menu-item--expanded a,
  header.site-header .main-menu li.menu-item.menu-item--expanded span.no-link {padding-right:0;}
  
  header.site-header.sticky ul.menu-main.nav > li.menu-item > a,
  header.site-header.sticky ul.menu-main.nav > li.menu-item > span.no-link {
    height:50px;
    padding-top:0;
    padding-bottom:0;
  }
  
  header.site-header .main-menu li.menu-item a.menu-item--expanded,
  header.site-header .main-menu li.menu-item span.no-link {padding-right:0;}
   
  header.site-header .main-menu ul.submenu {display:none;}
  
  header.site-header .main-menu li.menu-item.open > ul.submenu {
    background-color:#fff;
    display:grid;
    gap:1px;
    position:absolute;
    top:52px;
    left:-10px;
    width:270px;
    text-align:left;
  }
  
  header.site-header .main-menu li.menu-item.news.open > ul.submenu,
  header.site-header .main-menu li.menu-item.support-jcrc.open > ul.submenu {width:190px;}
  
  header.site-header.sticky .main-menu li.menu-item.open > ul.submenu {top:50px;}
  
  header.site-header .main-menu ul.submenu li.menu-item {
    padding:0;
    width:100%;
  }
  
  header.site-header .main-menu ul.submenu li.menu-item a {
    background:var(--main-lightest-blue);
    font-size:.888889rem;
    font-weight:700;
    line-height:1.5em;
    padding:10px 20px;
    width:100%;
  }
  
  header.site-header .main-menu ul.submenu li.menu-item > button.dropdown-control {background-color:var(--main-lightest-blue);}
  header.site-header .main-menu ul.submenu li.menu-item:focus > button.dropdown-control,
  header.site-header .main-menu ul.submenu li.menu-item:focus a,
  header.site-header .main-menu ul.submenu li.menu-item:hover > button.dropdown-control,
  header.site-header .main-menu ul.submenu li.menu-item:hover a {background-color:var(--main-light-blue);}
  
  header.site-header .main-menu ul.submenu li.menu-item.open > a  {
    background:var(--main-blue);
    color:#fff;
  }
  
  header.site-header .main-menu ul.submenu li.menu-item.menu-item--expanded > a,
  header.site-header .main-menu ul.submenu li.menu-item.menu-item--expanded > span.no-link {padding-right:0;}
  
  
  header.site-header .main-menu ul.submenu li.menu-item.open > button.dropdown-control {
    background-color:var(--main-blue);
    background-image:url(/themes/custom/jcrc/images/icons/icon-minus-white.svg);
  }

  header.site-header .main-menu ul.menu-level-2 li.menu-item.open > ul.submenu {
    left:0;
    position:relative;
    top:0;
  }
  
  header.site-header .main-menu ul.menu-level-2 li.menu-item.open > ul.submenu li.menu-item a {padding-left:40px;}
  
  
  /* People Pages */

  section.people.staff > .person {width:calc((100%/3) - 40px);}
  
  
  /* News Pages */
  
  article.news-type .documents-container figure.document {width:calc((100%/3) - 40px);}
  
  
  /* Content Callouts */

  .documents-container figure.document {width:calc(25% - 40px);}
  .has-sidebar .documents-container figure.document {width:calc((100%/3) - 40px);}
  section.callout ul.multiple-columns {columns:3;}
  
  
  /* Sidebar Stuff */
  
  article.node.has-sidebar .article-content {width:calc(100% - 380px);}
  article.node.has-sidebar .article-sidebar {width:380px;}
  
  
  /* Footer */

  .site-footer .footer-container {grid-template-columns:1fr 100px;}
  .site-footer .footer-container > * {grid-column:1 / 2;}

  .site-footer .footer-container figure.logo {
    grid-column:2 / 3;
    grid-row:1 / 4;
  }
  
}


@media (min-width:1200px) {
  
  /* Header */
  
  header.site-header .header-container {column-gap:40px;} 
  header.site-header .main-menu li.menu-item.menu-item--expanded {grid-template-columns:1fr 44px;}
  header.site-header .main-menu li.menu-item a,
  header.site-header .main-menu li.menu-item span.no-link {padding:10px 24px;}
  header.site-header .main-menu li.menu-item.open > ul.submenu {left:0;}
  header.site-header .main-menu ul.submenu li.menu-item.menu-item--expanded {grid-template-columns:1fr 54px;}
  header.site-header .main-menu ul.submenu li.menu-item a,
  header.site-header .main-menu ul.submenu li.menu-item span.no-link {padding:10px 24px;}
  header.site-header .main-menu ul.submenu li.menu-item.menu-item--expanded > a,
  header.site-header .main-menu ul.submenu li.menu-item.menu-item--expanded > span.no-link {padding-right:0;}
  
  
  /* Footer */

  .site-footer nav.footer-menu {max-width:700px;}
  
}