/* RESET/GLOBAL */
@import url(font/stylesheet.css);
*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  /* Now 10px = 1rem! */
  -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--font-family);
  font-size: var(--font-size);
  line-height: var(--line-height); }

ul {
  list-style-type: none; }

strong, b {
  font-weight: bold; }

img {
  display: block;
  width: 100%; }

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

a:hover {
  text-decoration: underline; }

/* CSS VARIABLES */
:root {
  --font-size: 1.6rem;
  --line-height: 1.375;
  --line-height-em: 1.375em;
  --font-size-s: 0.85;
  --font-size-m: 1.1;
  --font-size-l: 1.25;
  --font-size-xl: 1.5;
  --margin: 1.5rem;
  --font-family: 'Akzidenz-Grotesk BQ', Helvetica, Arial, sans-serif;
  --secondary-font-family: 'Century Schoolbook', serif;
  --medium-weight: 500;
  --if-gray: #999;
  --if-green: #5CBB46; }

.ratio-container-16-9, .text figure.video {
  padding: 56.25% 0 0 0;
  position: relative; }

.ratio-container-21-9 {
  padding: 42.86% 0 0 0;
  position: relative; }

.ratio-container-3-2 {
  padding: 66.66% 0 0 0;
  position: relative; }

.ratio-container-if {
  /* from previous site. move to 3:2 on mobile */
  padding: 53.33% 0 0 0;
  position: relative; }
  @media screen and (max-width: 1000px) {
    .ratio-container-if {
      padding: 66.66% 0 0 0; } }

.ratio-contained, .text figure.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.fades {
  transition: 500ms opacity linear; }

.visible {
  opacity: 1 !important; }

.lighter {
  color: var(--if-gray); }

.highlight {
  color: var(--if-green); }

.layout-wrapper {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  height: 100%;
  padding-top: var(--margin);
  padding-bottom: var(--margin);
  display: grid;
  grid-column-gap: calc(2 * var(--margin));
  grid-template-columns: max-content 1fr;
  grid-template-areas: "header header" "hero hero" "menu content" ". footer"; }
  @media screen and (max-width: 1000px) {
    .layout-wrapper {
      padding-left: var(--margin);
      padding-right: var(--margin);
      grid-column-gap: initial;
      grid-template-columns: 0px 1fr; } }

content {
  grid-area: content; }

.collapsible-block .collapsible-block-heading {
  cursor: pointer; }
.collapsible-block .collapsible-block-content {
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.15s ease-in-out; }
.collapsible-block .arrow {
  width: 0;
  height: 0;
  border-top: .35em solid transparent;
  border-bottom: .35em solid transparent;
  border-left: 0.6em solid var(--if-gray);
  display: inline-block;
  margin-right: 0.5em;
  transition: transform 0.15s ease-in-out; }
.collapsible-block.active .arrow {
  transform: rotate(90deg); }

header {
  grid-area: header;
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: calc(0.5 * var(--line-height-em));
  font-size: calc(var(--font-size) * var(--font-size-xl)); }
  header a {
    text-decoration: none;
    color: inherit; }
    header a:hover {
      color: var(--if-green);
      text-decoration: none; }
  header .header-left__logo {
    width: initial;
    height: calc(2 * var(--line-height-em)); }
  header .header-right {
    display: flex;
    padding-top: 0.15em; }
    header .header-right__cta {
      margin-right: 1em;
      font-weight: var(--medium-weight); }
      header .header-right__cta:last-of-type {
        margin-right: initial; }
  @media screen and (max-width: 1000px) {
    header {
      font-size: calc(var(--font-size) * 1);
      justify-content: initial;
      flex-direction: column; }
      header .header-left {
        padding-bottom: calc(0.5 * var(--line-height-em)); } }

menu {
  grid-area: menu; }
  menu .menu-item {
    font-weight: var(--medium-weight);
    min-height: var(--line-height-em); }
  menu a {
    color: var(--if-gray);
    text-decoration: none; }
    menu a.current {
      color: #000; }
      menu a.current:hover {
        color: #000; }
    menu a:hover {
      color: var(--if-green);
      text-decoration: none; }
  @media screen and (max-width: 1000px) {
    menu {
      position: fixed;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      z-index: 100;
      background: #fff;
      padding: var(--margin);
      visibility: hidden; }
      menu.active {
        visibility: visible; } }

.menu-open, .menu-close {
  display: none;
  font-weight: var(--medium-weight); }

@media screen and (max-width: 1000px) {
  .menu-close {
    position: fixed;
    right: var(--margin);
    top: var(--margin);
    z-index: 100;
    display: block; } }

@media screen and (max-width: 1000px) {
  .menu-open {
    position: absolute;
    right: 0;
    display: block; } }

footer {
  grid-area: footer;
  margin-top: 6em;
  margin-bottom: 2em; }
  footer .socials {
    display: flex; }
    footer .socials__entry {
      height: 1em;
      width: auto;
      margin-right: 0.5em; }

/* KirbyText */
.text {
  font-size: var(--font-size);
  font-weight: initial;
  font-family: var(--secondary-font-family); }

.text.sans, .text .sans {
  font-family: var(--font-family); }

.text p,
.text figure,
.text ul,
.text ol, p {
  margin-bottom: 1em; }
  .text p:last-of-type,
  .text figure:last-of-type,
  .text ul:last-of-type,
  .text ol:last-of-type, p:last-of-type {
    margin-bottom: initial; }

.text li, .text li p {
  margin-left: 1em;
  text-indent: -1em; }

.text hr {
  display: none; }

.text .footnotes, .text sup {
  font-size: calc(var(--font-size) * var(--font-size-s)); }

.text blockquote {
  padding-left: 4em;
  padding-right: 4em; }

.text h1 {
  font-size: calc(var(--font-size) * var(--font-size-xl));
  font-weight: var(--medium-weight);
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-family: var(--font-family);
  line-height: 1; }

.text h2 {
  font-size: calc(var(--font-size) * var(--font-size-l));
  font-weight: var(--medium-weight);
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-family: var(--font-family);
  line-height: 1; }

.text > *:first-child {
  margin-top: 0; }

.text img {
  display: block;
  width: 100%; }

.text figure figcaption {
  text-align: right;
  padding-top: 0.25em;
  font-size: calc(var(--font-size) * var(--font-size-s)); }

.text figure.video iframe {
  border: none; }

@media screen and (max-width: 1000px) {
  .text blockquote {
    padding-right: 1.5em;
    padding-left: 1.5em; }

  .text h1 {
    font-size: calc(var(--font-size) * var(--font-size-l)); }

  .text h2 {
    font-size: calc(var(--font-size) * var(--font-size-m)); } }
.home-grid__item {
  margin-bottom: calc(3 * var(--line-height-em)); }
  @media screen and (max-width: 1000px) {
    .home-grid__item {
      margin-bottom: calc(2 * var(--line-height-em)); } }

ul.events-list {
  margin-bottom: calc(3 * var(--line-height-em)); }
  @media screen and (max-width: 1000px) {
    ul.events-list {
      margin-bottom: calc(2 * var(--line-height-em)); } }
  ul.events-list.past {
    opacity: 47%; }
  ul.events-list .event-item {
    margin-bottom: calc(2 * var(--line-height-em)); }
    ul.events-list .event-item a {
      color: initial;
      text-decoration: initial;
      display: grid;
      grid-template-columns: 1fr 30%;
      grid-column-gap: var(--margin); }
      ul.events-list .event-item a:hover {
        color: initial;
        text-decoration: initial; }
      @media screen and (max-width: 1000px) {
        ul.events-list .event-item a {
          grid-template-columns: 1fr 40%; } }
      ul.events-list .event-item a .event-item__left .event-item__title {
        color: var(--if-green);
        font-weight: var(--medium-weight);
        font-size: calc(var(--font-size) * var(--font-size-m)); }
      ul.events-list .event-item a .event-item__right .event-item__image {
        height: 100%;
        width: 100%;
        position: relative; }

hero {
  grid-area: hero;
  padding-bottom: calc(2 * var(--line-height-em)); }

slideshow .slide-image {
  opacity: 0; }
slideshow .slide-caption-container {
  position: relative;
  padding-top: .25em; }
slideshow .slide-caption {
  position: absolute;
  right: 0;
  opacity: 0;
  font-size: calc(var(--font-size) * var(--font-size-s)); }
slideshow p {
  color: initial; }

/*# sourceMappingURL=main.css.map */
