/*
ooooooooooooo                                                                           oooo                    
8'   888   `8                                                                           `888                    
     888      oooo    ooo oo.ooooo.   .ooooo.   .oooooooo oooo d8b  .oooo.   oo.ooooo.   888 .oo.   oooo    ooo 
     888       `88.  .8'   888' `88b d88' `88b 888' `88b  `888""8P `P  )88b   888' `88b  888P"Y88b   `88.  .8'  
     888        `88..8'    888   888 888   888 888   888   888      .oP"888   888   888  888   888    `88..8'   
     888         `888'     888   888 888   888 `88bod8P'   888     d8(  888   888   888  888   888     `888'    
    o888o         .8'      888bod8P' `Y8bod8P' `8oooooo.  d888b    `Y888""8o  888bod8P' o888o o888o     .8'     
              .o..P'       888                 d"     YD                      888                   .o..P'      
              `Y8P'       o888o                "Y88888P'                     o888o                  `Y8P'       
 */                                                                                                               

/* Only for typographic styling. Font sizes, font selection, hyphens, etc. */

:root {
  --font-sansserif: "Lazzer", Helvetica, Arial, sans-serif;
  --font-display: "Stefan Bubble Tight", "Lazzer", Helvetica, Arial, sans-serif;
  --font-serif: "Times New Roman", serif;

  --base-font-size: 14px;

  --font-size-xs: 0.75rem;
  --font-size-s: 0.875rem;
  --font-site-sm: 1rem;
  --font-size-m: 1.25rem;
  --font-size-ml: 1.375rem;
  --font-size-l: 1.5rem;
  --font-size-xl: 1.875rem;
  --font-size-xxl: 2.4rem;
  --font-size-xxxl: 4.5rem;
}

:root {
  --font-size-display: clamp(3.5rem, 10vw, 10rem);
}

html {
  font-size: var(--base-font-size);
}

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

a {
  color: inherit;
}

h1, h2, h3, h4, h5, h6, p, ul, blockquote, figure, fieldset {
  margin: 0 0 1rem 0;
}

fieldset {
  padding: 0;
}

hr {
  margin: 1em 0;
}

ul:not(.menu), ol:not(.menu) {
  list-style-position: outside;
  padding-left: 1.25em;
}

h1.site-title {
  font-size: var(--font-size-m);
  white-space: nowrap;
}

.site-navigation-title {
  text-align: center;
}

.site-navigation li {
  text-align: center;
}

@media screen and (min-width: 800px) {
  .site-navigation li {
    text-align: unset;
  }
}

.page-title {
  font-size: var(--font-size-xxl);
}

.font-nw {
  font-family: var(--font-display);
  text-transform: uppercase;
  font-size: var(--font-size-display);
  margin-bottom: 0;
  line-height: 1;
}

.footer-newsletter h3 {
  margin-bottom: 2rem;
}

@media screen and (min-width: 800px) {
  .footer-newsletter h3 {
    margin-bottom: 0;
  }
}

.footer-newsletter {
  font-size: var(--font-size-l);
}

summary {
  font-size: var(--font-size-xl);
}

.dates-event-date {
  font-size: var(--font-size-xxl);
  margin-bottom: 2rem;
}

.dates-event-title {
  font-size: var(--font-size-xxl);
}

.dates-month {
  font-size: var(--font-size-xxl);
}

.event-date {
  margin-bottom: var(--space-l);
}

@media screen and (min-width: 800px) {
  .event-date {
    font-size: var(--font-size-xxl);
  }
}

.event-title {
  font-size: var(--font-size-xxl);
  white-space: pre-wrap;
  word-break: break-word;
  margin-bottom: var(--space-l);
}

@media screen and (min-width: 800px) {
  .event-title {
    font-size: var(--font-size-xxxl);
    margin-bottom: inherit;
  }
}

input[type="text"],
input[type="email"],
button[type="submit"],
textarea,
select {
  font-size: var(--font-size-l);
}

.page-subheading {
  font-size: var(--font-size-xxl);
  hyphens: none;
}

.block-type-heading h2 {
  font-size: var(--font-size-xxl);
  line-height: 1.2;
}

.block-type-heading h3 {
  font-size: var(--font-size-xl);
}

h3.news {
  font-size: var(--font-size-xxl);
}