:root {
  --primary-color: #c6262b;
  --primary-color-darker: #9c0307;
  --primary-neutral: #e6e6e6;
  --primary-border: solid 1px var(--primary-color-darker);
}
/* KS - Widen page content */
@media screen and (min-width: 40em) {
  .region-header .region-inner-wrapper, .region-footer .region-inner-wrapper, .region-before-content, .region-after-content, .main-inner-wrapper, .details-page, hr {
    max-width: 100rem;
  }
}
/* KS - Top Bar Wrapper */
.header-layout-4 .top-bar-wrapper {
  flex-wrap: wrap;
  gap: 1rem;
  column-gap: 0.5rem;
}
.header-layout-4 .top-bar-wrapper .top-menu-nav {
  order: 1;
}
.header-layout-4 .top-bar-wrapper .block-stacks-font-resizer {
  order: 2;
}
.header-layout-4 .top-bar-wrapper .top-menu-icons {
  order: 3;
}
.header-layout-4 .top-bar-wrapper #stacks-search-bar {
  order: 10;
}
.header-layout-4 .top-bar-wrapper .top-location-bar {
  flex-basis: 100%;
  justify-content: flex-end;
}
/* KS - Header */
@media screen and (min-width: 64em) {
  .header-layout-4.header-cta-enabled .search-drop-down, .header-layout-4.header-cta-enabled .call-to-action, .header-layout-4 .container-main-search-block .search-horizontal-tabs {
    margin-block: 1rem;
  }
}
.header-background-color-holder {
  z-index: 1;
}
/* KS - Site Branding */
.site-branding .name-and-slogan .site-name {
  font-size: 1.2rem;
  font-weight: bold;
}
/* KS - Top Location & Hours */
.ui-dialog #modal-all-locations {
  box-shadow: none;
}
/* KS - Font Resizer */
.block-stacks-font-resizer .font-resizer .list-icon {
  border: solid 1px white;
  padding: 0 0.5rem;
}
.block-stacks-font-resizer .font-resizer .font-down {
  border-inline-start: 0;
}
/* KS - Main Search */
@media (min-width: 64em) {
  .container-main-search-block .horizontal-tabs-list {
    display: flex !important;
    gap: 2px;
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button {
    flex: 1;
    height: fit-content;
    margin: 0;
    border-radius: 2px;
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button span {
    text-align: center;
    font-size: 14px;
    padding-block: 0;
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button span.summary {
    padding: 0;
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button.selected {
    font-weight: normal;
    background-color: var(--primary-color-darker);
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button.selected span {
    color: white;
    padding-block: 0;
  }
  .container-main-search-block .horizontal-tabs-list .horizontal-tab-button.selected span.summary {
    padding: 0;
  }
}
@media screen and (min-width: 64em) {
  .header-layout-4.header-cta-enabled .search-horizontal-tabs.single-search-tab {
    margin-top: 0;
  }
}
/* KS - CTAs */
@media screen and (min-width: 64em) {
  .header-layout-4.header-cta-enabled .call-to-action {
    margin: 0;
  }
}
/* KS - Mobile Menu */
.mobile-menu .menu-parent .menu-item a.menu-link:hover {
  background-color: transparent;
}
.mobile-menu .menu-parent .has-expanded .menu-item:hover, .region-mobile-menu .menu-parent > .menu-item.active, .mobile-menu .menu-parent .menu-item:not(.has-expanded):hover {
  background-color: transparent;
}
.mobile-main-menu .menu-parent .menu-child {
  padding-inline-start: 1rem;
}
/* KS - Main Navigation */
#main-navigation {
  padding-block: 1rem;
}
#main-navigation .menu-parent {
  flex-wrap: wrap;
  column-gap: 2rem;
}
#main-navigation .menu-parent .menu-item-level-1 .menu-child {
  opacity: 0;
  transition: opacity 300ms;
}
#main-navigation .menu-parent .menu-item-level-1:hover .menu-child {
  opacity: 1;
}
/* KS - Pages */
.node--type-page {
  padding: 1rem;
  border: var(--primary-border);
}
/* KS - Page Title */
.sub-header-content {
  background-color: white;
  margin-inline: -100vw;
  padding-inline: 100vw;
}
.sub-header-content h1#header-page-title-block {
  text-transform: uppercase;
  color: var(--primary-color-darker);
  font-weight: bold;
  padding-block: 2rem 0.5rem;
  margin-block-end: 0;
  border-block-end: var(--primary-border);
  text-align: center;
  margin: 0 auto;
  font-size: 20px;
  width: 40%;
  min-width: fit-content;
  max-width: 100%;
}
.sub-header-content h1#header-page-title-block:empty {
  border: none;
}
/* KS - Block Title */
.block-container h2.block-title {
  display: block;
  margin: 0 auto 2rem;
  border-block-end: var(--primary-border);
  text-align: center;
  font-size: 20px;
  width: 40%;
  min-width: fit-content;
  max-width: 100%;
  font-weight: bold;
  text-transform: uppercase;
}
.block-container h2.block-title:hover .block-stacks-share, .block-container h2.block-title .block-stacks-share {
  display: none;
}
/* KS - My Account */
.my-account-layout-1.container-my-account .container-item {
  border: var(--primary-border);
}
.my-account-layout-1.container-my-account .action-links-my-account {
  border-color: var(--primary-color-darker);
}
/* KS - Custom Blocks */
.main-inner-wrapper .node-custom-block {
  overflow: hidden;
  padding: 1rem;
  border: var(--primary-border);
}
/* KS - Image Floats */
.node-custom-block img[style*="float:left"], .node--type-page img[style*="float:left"] {
  margin-inline-end: 2rem;
  margin-block: 1rem;
}
.node-custom-block img[style*="float:right"], .node--type-page img[style*="float:right"] {
  margin-inline-start: 2rem;
  margin-block: 1rem;
}
@media (min-width: 40em) {
  .node-content img[style*="float:right"], .node-content img[style*="float:left"] {
    max-width: 50%;
  }
}
/* KS - Easy Forms */
.progress-marker::before {
  z-index: 1;
}
/* KS - Mini Sliders */
.block-stacks-slider .slider-mini-layout-7 .slick-list {
  padding: 0.5rem;
}
.block-stacks-slider .slider-mini-layout-7 .slick-list .slick-slide {
  border: var(--primary-border);
  padding: 0.5rem;
}
.block-stacks-slider .slider-mini-layout-7 .slick-list .slick-slide .slider-item {
  border: var(--primary-border);
}
.block-stacks-slider .slider-mini-layout-7 .slick-list .slick-slide .slider-item .img-wrapper {
  padding: 1rem;
  margin: 0 auto;
}
.block-stacks-slider .slider-mini-layout-7 .slick-list .slick-slide .slider-item .img-wrapper img {
  object-fit: contain;
}
/* KS - Resource Flows */
.js_resourceflow-slider {
  padding: 1rem;
  border: var(--primary-border);
  margin-block-end: 2rem;
}
.js_resourceflow-slider .slider-mini-layout-7 .slider-item {
  border: none;
}
.js_resourceflow-slider .slider-mini-layout-7 .slider-item img {
  height: 12rem;
  object-fit: scale-down;
}
/* KS - Events Details Page */
.stacks-events-details-page .main-inner-wrapper {
  flex-wrap: wrap;
}
.stacks-events-details-page .main-inner-wrapper .new-sidebar-event-details {
  width: 26rem;
  margin-block-end: 0;
}
.stacks-events-details-page .main-inner-wrapper .new-sidebar-event-details #block-stacks-event-instance-date-block {
  display: flex;
  flex-wrap: wrap;
}
.stacks-events-details-page .main-inner-wrapper .new-sidebar-event-details #block-stacks-event-instance-date-block #ics-download-form {
  order: 1;
  flex-basis: 100%;
  margin-block-start: 1rem;
}
.stacks-events-details-page .main-inner-wrapper .new-sidebar-event-details #block-stacks-event-instance-date-block .events-details-info, .stacks-events-details-page .main-inner-wrapper .new-sidebar-event-details #block-stacks-event-instance-date-block .events-details-contact {
  width: 26rem;
}
.stacks-events-details-page .main-inner-wrapper #main-content {
  margin: 0;
  width: 100% !important;
}
.stacks-events-details-page .main-inner-wrapper #main-content .block-system-main-block {
  display: flex;
  gap: 2rem;
  margin-block-start: 1rem;
}
.stacks-events-details-page .main-inner-wrapper #main-content .block-system-main-block .header-image {
  margin-block-end: 2rem;
  width: 100%;
  max-height: 20rem;
  object-fit: contain;
}
.stacks-events-details-page .main-inner-wrapper #main-content .block-system-main-block .event-details-description {
  margin-block-start: 0;
}
.stacks-events-details-page .main-inner-wrapper #main-content .block-system-main-block .event-details-description > h3 {
  display: none;
}
@media (max-width: 64em) {
  .stacks-events-details-page .main-inner-wrapper .block-system-main-block {
    display: block !important;
  }
  .stacks-events-details-page .main-inner-wrapper .block-system-main-block .header-image {
    display: block;
    height: auto;
    margin: 0 auto 2rem;
  }
}
/* KS - Callouts */
.container-callout .container-item .container-details {
  height: 100%;
  padding-block-end: 0;
}
.container-callout .container-item .container-details .container-content {
  height: inherit;
  margin-block-end: -1rem;
}
.container-callout .container-item .container-details .container-content .image-holder img {
  object-fit: cover;
  object-position: left;
  aspect-ratio: 1.3333333333;
  width: 100%;
  height: auto;
}
.container-callout .container-item .container-details .container-content h3.title {
  font-size: 1.125rem;
}
.container-callout .container-item .container-details .container-content p:empty {
  display: none;
}
.container-callout .container-item .container-details .container-content .description {
  margin-block-end: 0;
}
.callout-layout-2 h3.title {
  margin-block-start: 0.75rem;
}
/* KS - Results Block, all content types */
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-research-guide-content-listing h2, #block-stacks-content-listing-results-block .stacks-databases-content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-databases-content-listing h2, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing h2, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing h2, #block-stacks-content-listing-results-block .stacks-news-content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-news-content-listing h2, #block-stacks-content-listing-results-block .stacks-rooms-content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-rooms-content-listing h2, #block-stacks-content-listing-results-block .stacks-reserves-content-listing h3.result-title, #block-stacks-content-listing-results-block .stacks-reserves-content-listing h2 {
  font-weight: bold;
  font-size: 1.1rem;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-databases-content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-news-content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-rooms-content-listing article.media--type-image img, #block-stacks-content-listing-results-block .stacks-reserves-content-listing article.media--type-image img {
  float: right;
  margin-inline-start: 1rem;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-databases-content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-news-content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-rooms-content-listing article:last-of-type .container-content, #block-stacks-content-listing-results-block .stacks-reserves-content-listing article:last-of-type .container-content {
  border-block-end: var(--primary-border);
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-databases-content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-news-content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-rooms-content-listing details.form-wrapper > summary, #block-stacks-content-listing-results-block .stacks-reserves-content-listing details.form-wrapper > summary {
  background-color: var(--primary-color);
  color: white;
  padding-inline: 1rem;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-databases-content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-news-content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-rooms-content-listing details.form-wrapper > summary a, #block-stacks-content-listing-results-block .stacks-reserves-content-listing details.form-wrapper > summary a {
  color: white;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing .container-content, #block-stacks-content-listing-results-block .stacks-databases-content-listing .container-content, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing .container-content, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing .container-content, #block-stacks-content-listing-results-block .stacks-news-content-listing .container-content, #block-stacks-content-listing-results-block .stacks-rooms-content-listing .container-content, #block-stacks-content-listing-results-block .stacks-reserves-content-listing .container-content {
  padding: 1rem;
  border: var(--primary-border);
  border-block-end: 0;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-databases-content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-news-content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-rooms-content-listing .container-content .content, #block-stacks-content-listing-results-block .stacks-reserves-content-listing .container-content .content {
  padding: 0;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-databases-content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-news-content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-rooms-content-listing .container-content .content-details, #block-stacks-content-listing-results-block .stacks-reserves-content-listing .container-content .content-details {
  flex-basis: 100%;
}
#block-stacks-content-listing-results-block .stacks-research-guide-content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-databases-content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-index-entries--content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-collection-items--content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-news-content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-rooms-content-listing .container-content .field__items, #block-stacks-content-listing-results-block .stacks-reserves-content-listing .container-content .field__items {
  flex-direction: column;
}
#block-stacks-content-listing-featured-block h3 {
  font-size: 1.25rem;
}
.content-listing-sidebar {
  border-color: var(--primary-color-darker);
}
/* KS - Location & Hours */
.block-stacks-locations {
  margin-block-start: 2rem;
}
.block-stacks-locations .location-item {
  border: var(--primary-border);
}
.block-stacks-locations .location-item h3.title {
  font-weight: bold;
  margin-block-start: 1rem;
  font-size: 1.25rem;
}
.block-stacks-locations .location-tabs {
  display: none;
}
.block-stacks-locations .location-hours-address .hours .field__label {
  font-weight: bold;
  text-decoration: underline;
}
.ms-domain .location-tabs #tab-panel-0 {
  display: none !important;
}
.ms-domain .location-tabs #tab-panel-1 {
  display: block !important;
}
@media screen and (min-width: 40em) {
  .block-stacks-locations .location-item .location-content {
    height: 100%;
  }
  .block-stacks-locations .location-hours-address .hours {
    grid-template-columns: none;
  }
  .block-stacks-locations .location-hours-address .office-hours {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, 1fr);
    grid-column-gap: 1rem;
    grid-template-areas: "sunday thursday" "monday friday" "tuesday saturday" "wednesday null";
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(1) {
    grid-area: sunday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(2) {
    grid-area: monday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(3) {
    grid-area: tuesday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(4) {
    grid-area: wednesday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(5) {
    grid-area: thursday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(6) {
    grid-area: friday;
  }
  .block-stacks-locations .location-hours-address .office-hours .office-hours__item:nth-child(7) {
    grid-area: saturday;
  }
}
/* KS - Research Guides */
.block-research-guide-tab-block .tabs .tabs-item {
  padding: 0.5rem 1rem;
  margin-block: 1px;
  text-decoration: none;
}
.block-research-guide-tab-block .tabs .tabs-item:not(.selected) {
  background-color: #dadada;
  color: #444;
}
.block-research-guide-tab-block .tabs .tabs-item:not(.selected):hover {
  color: white;
  background-color: var(--primary-color-darker);
  transition: 300ms;
}
.block-research-guide-tab-block .tabs .tabs-item.selected {
  color: white;
  background-color: var(--primary-color);
}
.stacks_research_guide .research-guide-blocks .block-item > div {
  border: var(--primary-border);
}
.stacks_research_guide .research-guide-blocks .block-item > div .block-item-title {
  border-color: var(--primary-color-darker);
}
/* KS - Footer */
footer .footer-inner-wrapper {
  border-block-start: var(--primary-border);
}
.footer-layout-3 > .footer-inner-wrapper .contact-links {
  padding-block-end: 0;
}
/* KS - Footer */
footer.footer-layout-1 .site-branding {
  margin-inline: auto;
}
footer.footer-layout-1 .social-icons-wrapper {
  display: flex;
  justify-content: center;
}
footer.footer-layout-1 .contact-links-wrapper {
  justify-content: center;
  flex-wrap: wrap;
}
footer.footer-layout-1 .contact-links-wrapper .contact-links, footer.footer-layout-1 .contact-links-wrapper .contact-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
footer.footer-layout-1 .copyright-wrapper {
  justify-content: center;
}
.footer:not(.footer-layout-4) > .footer-inner-wrapper > div:not(.copyright-wrapper) {
  padding: 0;
}
