/* ----------------------
  FONTS
---------------------- */
/* 
Poppins: 300, 400, 500, 600, 800
Korolev: 500, 700
*/
:root {
  --bodyfont: "Poppins", sans-serif;
  --headerfont: "korolev", sans-serif;
}

/* ----------------------
  FOUNDATION
---------------------- */
html.is-reveal-open, html.is-reveal-open body { position: fixed; width: 100% }
.reveal:focus-visible { outline: none }

/* ----------------------
  ACCESSIBILITY
---------------------- */
/* Two-tone ring: dark outline plus a white halo, so focus shows on light and dark backgrounds */
:focus-visible { outline: 3px solid var(--darktext); outline-offset: 2px; box-shadow: 0 0 0 2px var(--white) }
#drawerNav :focus-visible, footer :focus-visible, .panel-wrapper.primaryDark :focus-visible, .panel-wrapper.primary :focus-visible, .panel-wrapper.accent :focus-visible,
.color-block:not(.accent2):not(.lightBackground) :focus-visible, .banner:not(.accent2):not(.lightBackground) :focus-visible,
body.home.nav-horizontal #header-wrapper .utility-nav :focus-visible, body.home.nav-horizontal #header-wrapper .primary-nav > li > a:focus-visible { outline-color: var(--white); box-shadow: 0 0 0 2px var(--darktext) }
main:focus { outline: none }

.skip-link { position: absolute; top: 8px; left: 8px; z-index: 10000; padding: 12px 18px; border-radius: 6px; background: var(--darktext); color: var(--white); font-weight: 600; transform: translateY(-200%) }
.skip-link:focus { transform: none; color: var(--white) }

.language-selector, .language-selector-mobile { display: inline-flex; align-items: center; gap: 6px; padding: 4px 2px; border: 0; background: transparent; color: inherit; cursor: pointer }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important }
}

/* ----------------------
  BODY, TEXT
---------------------- */
body, html { font-family: var(--bodyfont); font-weight: 400; font-style: normal }

h1, h2, h3, h4, h5 { font-family: var(--headerfont); font-weight: 500; font-style: normal; line-height: 1.1 }
h3 { font-size: 1.5rem }
h1 { font-size: 2.8rem }
h2 { font-weight: 500; font-size: 1.7rem; line-height: 1.1; margin-bottom: 20px }
figure { margin-bottom: 20px }
figcaption { font-size: .9rem }
p strong, p b, ul strong, ol strong, h3 strong, h3 b, table thead th, table thead td, table tfoot th, table tfoot td { font-weight: 600 }
ul:not(.menu):not(.tabs):not(.accordion) li, ol li { line-height: 1.4; margin-bottom: 8px }
ul:not(.menu):not(.tabs):not(.accordion) ul { list-style-type: circle; margin-top: 10px; margin-bottom: 12px }
ul:not(.menu):not(.tabs):not(.accordion) ul li { line-height: 1.2 !important }

ol ol { list-style-type: lower-alpha; margin-top: 10px }
ol ol ol { list-style-type: lower-roman }

/* ----------------------
  GLOBAL
---------------------- */
.image-style-align-right { float: right; margin-left: 20px }
.image-style-align-left { float: left; margin-right: 20px }

.column.main { background: var(--white); padding: 20px; margin-bottom: 80px }
body.interior .column.main:not(.has-sidebar),
body.interior .row:has(> .sidebar-column:not(:has(#side-nav, .content-blocks))) > .column.main { max-width: min(75rem, 100%); margin-left: auto; margin-right: auto }
body.home .column.main { background: transparent; padding: 0 20px; margin-bottom: 0 }
.column.content { max-width: 75rem }
.row { max-width: 90rem }

/* if Title BG color is selected */
.row.title-bg { border-top-left-radius: 13px; border-top-right-radius: 13px; margin: -30px -7px 0; }
.row.title-bg .column.title-container { padding: 30px 30px 0 30px !important }
.row.title-bg .column.title-container h1 { color: white }

.crt-widget.crt-widget-branded .crt-logo { color: white !important }

@media print, screen and (min-width: 40.025em) { 
  .row { padding: 0 30px }
  .row { padding: 0 }
  .column.main { padding: 40px }
  body.home .column.main { padding: 0 40px }
  .row.title-bg { margin: -40px -40px 20px -40px }
}
@media only screen and (min-width: 75.063em) {
  
}

/* BUTTONS */
.button { margin: 0 10px 10px 0; font-family: var(--headerfont); font-weight: 700; font-size: 1.3rem; padding: 10px 17px; border-radius: 6px; transition: all .2s }
/* Korolev's font metrics leave empty space under the label in Firefox. Trim that box there only. */
@supports (-moz-appearance: none) {
  .button {
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
  }
}

/* HEADER */
body.home #header-wrapper { width: 100%; position: absolute; z-index: 999 }
body.interior #header-wrapper { border-bottom: 1px solid #E8CED0; margin-bottom: 30px }
#nav-main { height: 110px }
#nav-main i { font-size: 1.4rem; color: var(--accent) }
#nav-main a.button { margin-bottom: 0 }
body.home #nav-main .button { background: var(--accent); color: var(--white); border-color: var(--accent) }
body.home #nav-main i { color: white }
#nav-main #search { padding: 10px; position: relative; top: 5px; margin-right: 10px }
#nav-main #search:hover i { transform: translate(2px, 2px); font-size: 1.7rem }
body.interior #nav-main #search:hover i { color: var(--primary) }
#logo { display: inline-block; padding: 14px 18px 14px; margin-left: -15px; max-height:100%; max-width:100%; height: 80px; line-height: 1 }
.home #logo { background: white; border-radius: 16px; position: relative; top: 6px; left: 15px }
#logo img { max-height:100%; max-width:100%; float: left; margin-right: 10px }
#logo span { font-family: var(--headerfont); font-size: 1.5rem; display: block; line-height: .95; text-transform: uppercase; width: 240px; margin-top: 5px }
#language, #language-mobile { font-size: .85rem; font-family: var(--bodyfont) !important; font-weight: 600 }

/* Mobile Language Selector */
.language-selector-mobile {
  color: white;
  font-size: 1rem;
  font-weight: 600;
  padding: 5px 0;
}
.language-selector-mobile:hover {
  opacity: 0.8;
}

@media only screen and (min-width: 40.063em) {
  #logo span { width: 300px; font-size: 1.7rem }
}
@media only screen and (min-width: 48.063em) {
  #logo { height: 90px }
}

footer { min-height: 500px; padding: 50px 0 150px }
footer img.footer-logo { max-width: 140px }
footer h3 { font-size: 1.5rem; font-weight: 700; margin: 40px 0 15px }
footer a:hover, footer a:active, footer a:focus { text-decoration: underline }
footer ul { list-style: none; margin-left: 0 }

footer ul li { line-height: 1.2; margin-bottom: 10px }
footer .social.menu li { margin-right: 5px }
footer .social.menu a { padding: 0 10px 0 0 }
footer .social i { font-size: 1.6rem }
footer a:hover { color: white }
footer .desc p { font-size: .9rem; line-height: 1.4 }
footer .desc img { margin-bottom: 40px }


.content-block { margin-bottom: 60px; }


/* FEATURE */
#feature { min-height: 520px; margin-bottom: 20px; overflow: hidden }
#feature h1 { color: var(--white); font-weight: 700; font-size: 3rem }
/* body.district #feature { clip-path: polygon(0 0, 100% 0%, 100% 80%, 50% 100%, 0 80%) } */
@media print, screen and (min-width: 40.025em) { 
  #feature { min-height: 520px }
  #feature h1 { font-size: 3.8rem }
}
@media print, screen and (min-width: 64.025em) { 
  .column.main { border-radius: 13px }
  #feature { height: 640px }
}
img.small-feature { margin-bottom: 30px }
.intro p { font-size: 1.5rem; line-height: 1.4; font-family: 'korolev', sans-serif }
.intro .button { margin-right: 10px; margin-top: 20px }

.heading-block { padding: 80px 0 0 }
.feed-heading { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: thin solid var(--primaryDark); padding-bottom: 10px; margin-bottom: 30px; }
.feed-heading h2 { line-height: 1; margin: 0; font-size: 2em; }
a.view-all { color: var(--accent); font-weight: 600; background: transparent; border-radius: 6px; padding: 2px 8px }
a.view-all:hover { background: var(--lightBackground) }
.ellipsis { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; margin: 0; }

/* PANELS */
.panel-wrapper { --panel-pad-top: 60px; --panel-pad-bottom: 50px; margin-left: -40px; margin-right: -40px; background: transparent; padding: var(--panel-pad-top) 40px var(--panel-pad-bottom) }
.content-blocks .panel-wrapper:not(.lightBackground):first-of-type { padding-top: 20px }
body.home .panel-wrapper { --panel-pad-top: 80px; --panel-pad-bottom: 80px; margin: 0 0 60px; padding: 80px 0 }
.panel-wrapper.side-by-side { --sbs-pad: 80px; padding: var(--sbs-pad) 40px 1px; margin-top: 60px; margin-bottom: 60px }
body.home .panel-wrapper.side-by-side { padding: var(--sbs-pad) 0 0 }
.panel-wrapper.promo-slider { margin: 2rem }
.panel-wrapper.no-space-above { padding-top: 0 }
.panel-wrapper.no-space-below { padding-bottom: 0 }
body.home .panel-wrapper.no-space-above { padding-top: 0 }
body.home .panel-wrapper.no-space-below { padding-bottom: 0; margin-bottom: 0 }
.panel-wrapper.side-by-side.no-space-above,
.panel-wrapper.promo-slider.no-space-above { margin-top: 0 }
.panel-wrapper.side-by-side.no-space-below,
.panel-wrapper.promo-slider.no-space-below { margin-bottom: 0 }
.panel-wrapper.text-columns.has-background.no-space-above { padding-top: var(--panel-pad-top); margin-top: calc(-1 * var(--panel-pad-top)) }
.panel-wrapper.text-columns.has-background.no-space-below { padding-bottom: var(--panel-pad-bottom); margin-bottom: calc(-1 * var(--panel-pad-bottom)) }
hr.header-line { clear: both; height: 0; margin: 1.25rem auto; border-top: 0; border-right: 0; border-bottom: 2px solid var(--accent); border-left: 0; width: 80px; margin-bottom: 30px }
.panel-wrapper.side-by-side h2 { text-align: center; margin-bottom: 70px; font-size: 2rem }

/* DISABLE H2 HR STYLING FOR NOW */ hr.header-line { display: none }

.panel { padding: 65px 0 }

.panel-wrapper.primaryDark * { color: var(--white) }
.panel-wrapper.primaryDark h2 { color: var(--accent2) }
.panel-wrapper.primaryDark hr.header-line { border-color: var(--accent2) }
.panel-wrapper.primaryDark .text-image-block p a, .panel-wrapper.primaryDark .text-image-block ul li a, .panel-wrapper.primaryDark .text-image-block ol li a { text-decoration-color: var(--accent2) }

.panel-wrapper.accent * { color: var(--white) }
.panel-wrapper.accent .button { background: var(--primaryDark); border-color: var(--primaryDark); color: var(--white) }
.panel-wrapper.accent .button:hover { background: var(--white); border-color: var(--white); color: var(--accent) }
.panel-wrapper.accent hr.header-line { border-color: var(--white) }
.panel-wrapper.accent .text-image-block p a, .panel-wrapper.accent .text-image-block ul li a, .panel-wrapper.accent .text-image-block ol li a { text-decoration-color: var(--white) }

.panel-wrapper.accent2 * { color: var(--darktext) }
.panel-wrapper.accent2 hr.header-line { border-color: var(--primaryDark) }
.panel-wrapper.accent2 .button { background: var(--white); border-color: var(--white) }
.panel-wrapper.accent2 .button:hover { background: var(--primaryDark); border-color: var(--primaryDark); color: var(--white) }
.panel-wrapper.accent2 .text-image-block p a, .panel-wrapper.accent2 .text-image-block ul li a, .panel-wrapper.accent2 .text-image-block ol li a { text-decoration-color: var(--darktext) }


/* TEXT COLUMNS */
.text-columns h2 i { margin-right: 0.15em }
.text-columns .column { margin-bottom: 40px }
.text-columns p a, .text-columns ul li a, .text-columns ol li a, .text-image-block p a, .text-image-block ul li a, .text-image-block ol li a, .tabs-content p a, .tabs-content ul li a, .tabs-content ol li a, .accordion-content p a, .accordion-content li a, .sidebar-block p a, .color-block p a, .color-block ul li a, .color-block ol li a { text-decoration-line: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; transition: all .2s }
.text-columns p a:hover, .text-columns ul li a:hover, .text-columns ol li a:hover, .text-image-block p a:hover, .text-image-block ul li a:hover, .text-image-block ol li a:hover, .tabs-content p a:hover, .tabs-content ul li a:hover, .tabs-content ol li a:hover, .accordion-content p a:hover, .sidebar-block p a:hover, .accordion-content li a:hover, .color-block p a:hover, .color-block ul li a:hover, .color-block ol li a:hover { text-decoration-thickness: 2px }
.text-columns .button { margin-bottom: 10px }
p + h3 { margin-top: 30px }
figure.image img[width="550"] { max-width: 225px; height: auto }
.text-columns figure img { display: block }
.text-columns figure:last-child,
.text-columns figure:nth-last-child(2):has(+ p:empty),
.text-columns figure:nth-last-child(2):has(+ p > br:only-child) { margin-bottom: calc(var(--panel-pad-top) - var(--panel-pad-bottom)) }
.text-columns p:last-child:empty,
.text-columns p:last-child:has(> br:only-child) { margin: 0; height: 0; overflow: hidden }

.panel-wrapper.text-columns.lightBackground + .panel-wrapper.text-columns.lightBackground, .panel-wrapper.text-columns.noColor + .panel-wrapper.text-columns.noColor { padding-top: 0 }

@media print, screen and (min-width: 40.025em) { 
  .text-columns .column { margin-bottom: 0 }
  .text-columns .row.center-columns { align-items: center }
}

/* QUICK LINKS */
.quick-links-wrapper { padding-top: 60px; padding-bottom: 50px }
body.home .quick-links-wrapper { padding-top: 80px; padding-bottom: 80px }
.content-blocks .quick-links-wrapper:first-of-type { padding-top: 20px }
.quick-links-wrapper.no-space-above,
body.home .quick-links-wrapper.no-space-above,
.content-blocks .quick-links-wrapper:first-of-type.no-space-above { padding-top: 0 }
.quick-links-wrapper.no-space-below,
body.home .quick-links-wrapper.no-space-below { padding-bottom: 0 }
.quick-links-wrapper .heading { margin-top: 0 }
.quick-links { margin-bottom: 6px }
.quick-link { aspect-ratio: 1.1/1; display: flex; justify-content: center; align-items: center; min-height: 0; transition: all .2s }
.quick-link .contents { padding: 18px }
.quick-link i { font-size: 3rem; margin-bottom: 15px }
.quick-link h4 { font-size: 4.5vw; margin-bottom: 0 }
.quick-links.column { padding-left: 3px; padding-right: 3px }
@media print, screen and (min-width: 40.025em) { 
  .quick-link h4 { font-size: 2.5vw }
  /* .quick-link { border-radius: 50% } */
  .quick-link:hover { transform: scale(1.05) }
  /* .quick-link.active { transform: scale(1.05) } */
  /* .quick-link.active:hover { transform: scale(1.15) } */
}
@media print, screen and (min-width: 64.025em) { 
  .quick-link h4 { font-size: 1.3vw }
  .quick-links.column { padding-left: 3px; padding-right: 3px }
}
@media print, screen and (min-width: 1600px) { 
  .quick-link h4 { font-size: 1.2vw }
}
@media print, screen and (min-width: 2000px) { 
  .quick-link h4 { font-size: 1vw }
}

/* COLOR BLOCKS */
.color-block { padding: 60px 40px 50px; position: relative }
.heading-block + .color-blocks { padding-top: 10px }
.color-block.link { padding: 6% 40px 9%; transition: all .2s }
.color-block.link span { text-decoration: underline; text-underline-offset: 0.5em; text-decoration-color: transparent; transition: all .2s }
.color-block.link:hover span { text-decoration-color: white }
.color-block.link:hover p.more i { left: 5px; opacity: 1 }
.color-block a { color: var(--white) }
.color-block a.more-link { display: contents; position: absolute; bottom: 0; left: 0; padding: 60px 40px 40px }
.color-block *, .sidebar .color-block h3, .color-block a:hover { color: var(--white) }
.color-block.accent2 *, .color-block.lightBackground *, .sidebar .color-block.lightBackground h3, .sidebar .color-block.accent2 h3, .color-block.accent2 a:hover { color: var(--darktext) }
.color-block.accent2.link:hover span { text-decoration-color: var(--darktext) }
.color-block .color-block-icon { display: block; font-size: 2.4rem; margin-bottom: 16px }
.color-block .color-block-icon.text-center { text-align: center }
.color-block .color-block-icon.text-right { text-align: right }
.color-block h3 { margin-bottom: 10px; font-weight: 600 }
.color-block p { font-weight: 500; line-height: 1.3 }
.color-block p.more { display: block; position: absolute; bottom: 20px; right: 30px }
.color-block p.more i { font-size: 1.7rem; position: relative; top: 5px; margin-left: 5px; opacity: .6; left: 0 }

/* BANNER */
.banner { border-radius: 20px; padding: 80px 40px; margin: 60px 0 }
.banner h2 { color: var(--white); margin-bottom: 0; font-size: 2.85rem; text-align: center }
.banner .button { margin-top: 50px; font-size: 1.6rem; margin: 0 auto; display: table; margin-top: 40px }
.banner.accent2 h2, .banner.lightBackground h2 { color: var(--darktext) }

/* GRAPHIC */
.graphic-banner { margin: 60px 0 }
.graphic-banner a { display: block }
.graphic-banner img { display: block; width: 100%; height: auto; border-radius: 20px }
.graphic-banner.no-space-above { margin-top: 0 }
.graphic-banner.no-space-below { margin-bottom: 0 }

.text-image-block img { margin-bottom: 30px }
img.float-left { margin-right: 30px }
img.float-right { margin-left: 30px }
@media print, screen and (min-width: 40.025em) { 
  .text-image-block img { max-width: 50%; margin-bottom: 0 }
  .side-by-side figure { margin-bottom: 0 }
  .side-by-side .content-block:last-child { margin-bottom: var(--sbs-pad) }
}

/* TABS */
.tabs { border: 0; border-bottom: 1px solid var(--accent); margin-top: 30px; white-space: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; background: transparent }
.tabs li { display: inline-block }
.tabs li a { color: var(--text); border-bottom: 3px solid transparent }
.tabs li.is-active a { color: var(--white); background: var(--accent) }
.tabs-title { border-right: 1px solid var(--accent) }
.tabs-title > a { display: block; padding: 0; font-size: 1.1rem; font-weight: 500; line-height: 1; padding: 15px 20px }
.tabs-title > a:hover { background: transparent; color: var(--accent) }
.tabs-content { border: 0; background: transparent }
.tabs-content p, .tabs-content h2, .tabs-content ul li, .tabs-content h3 { color: var(--text) }
.tabs-panel { padding: 50px 15px 0 }


/* ACCORDION */
.panel-wrapper.accordion-block + .panel-wrapper.accordion-block { padding-top: 0 }
.accordion { list-style-type: none; background: transparent }
.accordion[disabled] .accordion-title { cursor: not-allowed }
.accordion-item { width: 100%; border-bottom: 1px solid var(--lightBackground) }
.accordion-item span { font-size: 1.1em; padding-right: 50px; display: block; line-height: 1.2 }
.accordion-item:first-child > :first-child { border-radius: 0 }
.accordion-item:last-child > :last-child { border-radius: 0 }
.accordion-title { position: relative; display: block; padding: 8px; border: 0; font-size: inherit; font-weight: 600; line-height: inherit; color: inherit; transition: all .2s }
.accordion-title p { margin-bottom: 10px; font-size: 1.2rem; transition: all .3s }
a.accordion-title:hover, .accordion-title:focus { color: var(--accent); text-decoration: none; opacity: 1; background: transparent }
.accordion-item.is-active .accordion-title { opacity: 1; color: var(--accent); border-bottom: 1px solid; margin-bottom: 10px }
.accordion-item:not(:first-of-type).is-active .accordion-title { margin-top: 8px }
.accordion-item.is-active .accordion-title p { font-size: 1.6rem }
.accordion-title::before { margin-top: -1.5rem;	font-size: 2rem; color: var(--accent); font-weight: 400 }
.accordion-content { display: none; padding: 5px 20px 20px 10px; border: 0; border-bottom: 0; color: inherit }
.accordion-content ul { margin-bottom: 25px }
p + ul { margin-top: -10px }
:last-child:not(.is-active) > .accordion-title { border-bottom: 0; border-radius: 0 }


/* DOCUMENT LIST */
.row.doc-row { width: 100%; border-bottom: 1px solid #CCC; padding: 8px 0; margin-left: 0; margin-right: 0; background: white }
.row.doc-row .fa-kit { font-size: 1.3rem; position: relative; top: 1px }
.row.doc-row p, .row.doc-row a { margin-bottom: 0; line-height: 1; font-size: .9rem }
.row.doc-row a { font-weight: 600; text-decoration: underline; cursor: pointer }
@media print, screen and (min-width: 40.025em) { 
  .row.doc-row:hover { background: #F5F5F5 }
  .documents-list .doc-card:hover { border-color: var(--primary) }
}
@media screen and (max-width: 39.9375em) {
  .documents-list.layout-grid .documents-grid { display: none; }
}
@media print, screen and (min-width: 40em) {
  .documents-list.layout-grid .documents-rows { display: none; }
}
.documents-list.layout-grid .small-up-1 > .column { margin-bottom: 16px }
.documents-list .doc-card { display: flex; flex-direction: column; height: 100%; background: white; border: 1px solid #DFDFDF; border-radius: 10px; padding: 20px; text-decoration: none }
.documents-list .doc-card i { font-size: 1.6rem; margin-bottom: 10px }
.documents-list .doc-card .fa-file-pdf-regular { color: var(--accent) }
.documents-list .doc-card p { margin-bottom: 12px; flex-grow: 1; font-size: .95rem; line-height: 1.3 }
.documents-list .doc-card span { font-weight: 600; text-decoration: underline; font-size: .9rem }

/* MEDIA EMBED */
.embed-container { position: relative; padding: 0 0 55.55% 0; height: 0; overflow: hidden; max-width: 100%; display: block; margin: 25px 0; width: 100% }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100% }
.text-columns .embed-container { margin: 0 }

/* GALLERY/SLIDER */
.slick-with-captions.panel { margin-left: -20px; margin-right: -20px }
.slick-with-captions .row { margin: 0 }

.gallery-block.gallery img { margin-bottom: 30px }
 
.js-slick-lightbox.row { padding: 0 10px }
.js-slick-lightbox .column { padding: 0 5px; margin-bottom: 15px !important }
.js-slick-lightbox a img:hover { opacity: .7 }
.slick-with-captions img { padding: 5px; max-height: 280px }
.slick-lightbox-slick-img { margin: 0 0 15px 0; max-width: 100% }

.js-slick-with-captions--slides { margin-bottom: 15px }
.js-slick-with-captions--slides.row.column { margin-bottom: 0; padding: 0 0 15px 0 !important }
.js-slick-with-captions--captions .caption h4 { margin-bottom: 2px }
button.slick-arrow { display: none !important }

.js-slick-with-captions--number { font-weight: 500; color: var(--text); margin: 0 5px; font-size: 1.1rem }
.row.caption-wrapper { border-bottom: 1px solid var(--lightBackground) }
.row.caption-wrapper .column:first-of-type { padding: 0 }
.js-slick-with-captions--next i, .js-slick-with-captions--prev i { display: none }
@media print, screen and (min-width: 40.025em) { 
  .slick-slide { opacity: .5; transition: all .2s }
  .slick-slide.slick-active { opacity: 1 }
  .row.caption-wrapper .column:first-of-type { padding-right: 0.9375rem; padding-left: 0.9375rem }
  .js-slick-with-captions--next i, .js-slick-with-captions--prev i { display: inline-block }
  .js-slick-with-captions--next, .js-slick-with-captions--prev { color: var(--accent) }
  .js-slick-with-captions--next:hover, .js-slick-with-captions--prev:hover { color: var(--text) }
  .js-slick-with-captions--next i, .js-slick-with-captions--prev i { font-size: 1.4rem; position: relative; top: 2px }
  .slick-with-captions img { max-height: 500px }
}

/* STATS */
.row.stats .column { border-right: 1px solid var(--lightBackground); margin-bottom: 40px }
.row.stats .column:last-of-type { border-radius: 0 }
.stats i { font-size: 3.4rem; opacity: .75 }
.stats span { display: block }
.stats span.value { font-size: 2.5rem; margin: 8px 0 }
.stats span.text { line-height: 1.2 }

@media only screen and (min-width: 40.063em) {
  .row.stats .column { margin-bottom: 0 }
}


/* --- LOGO GRID --- */
img.gray { -webkit-filter: grayscale(100%); filter: grayscale(100%); opacity: .6; mix-blend-mode: multiply; }
img.gray:hover  { -webkit-filter: grayscale(0); filter: grayscale(0); opacity: 1 }


/* CALENDAR */
.content-block.calendar { min-height: 500px }
.cal-row { display: flex; margin-bottom: 4px; }
.cal-row p { margin: 0; }
.cal-title-box { background-color: var(--lightBackground); padding: 15px 25px; flex-grow: 1; display: flex; justify-content: center; flex-direction: column; }
.cal-date-box { padding: 20px; max-height: 90px; background-color: var(--accent); display: flex; flex-direction: column; justify-content: center; }
.cal-date-box p { color: var(--white); margin: 0; line-height: 1; text-align: center; font-family: var(--headerfont); font-weight: 500; font-style: normal; }
.cal-month { text-transform: uppercase; }
.cal-day { font-size: 2rem; min-width: 40px }

/* PARENTSQUARE */
.ps-row { margin-bottom: 30px }
.feed-row h4.title { font-size: 1.3rem; margin-bottom: 0 }
.feed-row h4.title a { font-weight: 500 }
p.ps-date { font-size: .9rem; color: var(--primary); margin-bottom: 2px; font-family: var(--headerfont); font-weight: 500; font-style: normal; }
p.ps-desc { font-size: .85rem; line-height: 1.4 }


/* SIDEBAR */
.sidebar .color-block { margin-left: 20px; padding: 40px 35px 35px; position: relative }
.sidebar .color-block p.more { bottom: 5px }
.sidebar { width: 100%; margin-bottom: 80px }
.sidebar-column { display: flex }
.sidebar-column:not(:has(#side-nav, .content-blocks)) { display: none }
@media screen and (max-width: 63.9375em) {
  .sidebar-column:not(:has(.content-blocks)) { display: none }
}
.sidebar-block, #side-nav h3 { padding-left: 20px }
.sidebar-block.spacer { margin-bottom: 50px }
.sidebar-block img { margin-bottom: 15px }
.sidebar-block a.button { margin-top: 10px; width: 100% }
.sidebar h3 { font-weight: 700 }
@media only screen and (min-width: 40.025em) {
  .sidebar-block a.button { width: auto }
}
@media only screen and (min-width: 64.025em) {
  .sidebar { width: 300px; margin-top: 100px }
  .sidebar-block a.button.wide { width: 100% }
  body.sidebar-right .sidebar-column { order: 2 }
  body.sidebar-right .column.main { order: 1 }
}

/* POPUP MODAL */
.reveal#announce-modal { background: var(--primary); color: var(--white); padding: 30px 25px 25px; border-radius: 20px; border: 0; max-width: 600px; margin: 0 auto; border-top: 50px solid var(--accent2); overflow: visible }
.reveal#announce-modal h3 { color: white; font-size: 3rem; margin-bottom: 10px }
.reveal#announce-modal p { color: white; font-size: 1.2rem }
.reveal#announce-modal .button:hover { background: var(--accent2); color: var(--primaryDark) }
.close-button { right: 1rem; top: .5rem; font-size: 2.7em; line-height: 1; color: var(--primaryDark); z-index: 9999 }
#announce-modal:not(.image-modal) .close-button { top: -45px }
#translate { padding-top: 3.5rem }
.reveal#announce-modal.image-modal { border-top: 0; padding: 0; border-radius: 20px; overflow: hidden }
.reveal#announce-modal.image-modal a { display: block }
.reveal#announce-modal.image-modal .modal-image { display: block; width: 100%; border-top: 50px solid var(--primaryDark) }
.image-modal .close-button { color: white; z-index: 9999; top: 5px }

@media screen and (max-width: 39.9375em) {
  .reveal#announce-modal.image-modal { height: inherit !important; min-height: 0 !important; width: 95%; }
}