/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

html {
  font-size: 100%;
}

h1, .alpha,
h2, .beta,
h3, .gamma,
h4, .delta,
h5, .epsilon,
h6, .zeta {
  font-weight: bold;
  margin: 0;
}

h1, .alpha {
  font-size: 3em;
  line-height: 1;
  margin-bottom: 0.5em;
}

h2, .beta {
  font-size: 2.25em;
  line-height: 1.3333333333;
  margin-bottom: 0.6666666667em;
}

h3, .gamma {
  font-size: 1.5em;
  line-height: 1;
  margin-bottom: 1em;
}

h4, .delta {
  font-size: 1.3125em;
  line-height: 1.1428571429;
  margin-bottom: 1.1428571429em;
}

h5, .epsilon {
  font-size: 1.125em;
  line-height: 1.3333333333;
  margin-bottom: 1.3333333333em;
}

h6, .zeta {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 1.5em;
}

p,
blockquote {
  font-size: 1em;
  margin: 0 0 1.5em;
  line-height: 1.5;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
}

dl,
ol,
ul {
  font-size: 1em;
  margin: 0 0 1.5em;
  padding: 0;
}

dd,
dt,
li {
  line-height: 1.5;
  margin: 0;
}

body {
  background: #fff;
  font-family: "Titillium Web", sans-serif;
  font-size: 100%;
  color: #4d4d4d;
}

* {
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  /* Firefox, other Gecko */
  box-sizing: border-box;
  /* Opera/IE 8+ */
}

h1, h2, h3, h4, h5 {
  overflow-wrap: normal;
}

a {
  color: #064e8d;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

.screen-reader-text {
  clip: rect(1px 1px 1px 1px);
  position: absolute !important;
  -webkit-transition: all 0.55s;
  transition: all 0.55s;
}

.horizontal-line {
  background-image: url("../images/mikkeli-banner-border.png");
  background-repeat: repeat-x;
  height: 0.5rem;
}

.primary ul, .responsive-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-content img, .sidebar img, figure img {
  max-width: 100%;
  height: auto;
}

figure {
  max-width: 100%;
  margin: 1em 0;
}

figcaption {
  font-size: 13px;
  color: #888;
  line-height: 1.4;
}

blockquote {
  font-family: Georgia, sans-serif;
  font-style: italic;
  padding: 0 20px;
}

/* TABLES */
table.advgb-table-frontend {
  border-spacing: 2px !important;
}
@media screen and (max-width: 60rem) {
  table.advgb-table-frontend {
    max-width: 1000vw;
    overflow-y: scroll;
    display: block;
    font-size: 0.8rem;
  }
}

table.advgb-table-frontend thead {
  background-color: #f5f5f5;
}

table.advgb-table-frontend tr {
  padding: 0;
}
table.advgb-table-frontend tr:nth-child(even) {
  background-color: #f5f5f5;
}

table.advgb-table-frontend td, table.advgb-table-frontend th {
  padding: 0.5rem;
}

table.advgb-table-frontend th {
  text-align: left;
}

/* Loading Spinner */
#loader {
  text-align: center;
}

.lds-default {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  margin: 4rem auto;
}

.lds-default div {
  position: absolute;
  width: 6px;
  height: 6px;
  background: #888;
  border-radius: 50%;
  -webkit-animation: lds-default 1.2s linear infinite;
          animation: lds-default 1.2s linear infinite;
}

.lds-default div:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  top: 37px;
  left: 66px;
}

.lds-default div:nth-child(2) {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
  top: 22px;
  left: 62px;
}

.lds-default div:nth-child(3) {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
  top: 11px;
  left: 52px;
}

.lds-default div:nth-child(4) {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
  top: 7px;
  left: 37px;
}

.lds-default div:nth-child(5) {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
  top: 11px;
  left: 22px;
}

.lds-default div:nth-child(6) {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s;
  top: 22px;
  left: 11px;
}

.lds-default div:nth-child(7) {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s;
  top: 37px;
  left: 7px;
}

.lds-default div:nth-child(8) {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s;
  top: 52px;
  left: 11px;
}

.lds-default div:nth-child(9) {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
  top: 62px;
  left: 22px;
}

.lds-default div:nth-child(10) {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
  top: 66px;
  left: 37px;
}

.lds-default div:nth-child(11) {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
  top: 62px;
  left: 52px;
}

.lds-default div:nth-child(12) {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s;
  top: 52px;
  left: 62px;
}

@-webkit-keyframes lds-default {
  0%, 20%, 80%, 100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}

@keyframes lds-default {
  0%, 20%, 80%, 100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}
.ui-autocomplete {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  float: left;
  display: none;
  min-width: 160px;
  padding: 4px 0;
  margin: 0 0 10px 25px;
  list-style: none;
  background-color: #ffffff;
  border-color: #ccc;
  border-color: rgba(0, 0, 0, 0.2);
  border-style: solid;
  border-width: 1px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  *border-right-width: 2px;
  *border-bottom-width: 2px;
}

.ui-menu-item > a.ui-corner-all {
  display: block;
  padding: 3px 15px;
  clear: both;
  font-weight: normal;
  line-height: 18px;
  color: #555555;
  white-space: nowrap;
  text-decoration: none;
}

.ui-state-hover, .ui-state-active {
  color: #ffffff;
  text-decoration: none;
  background-color: #0088cc;
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  background-image: none;
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.container {
  width: 100%;
  max-width: 75rem;
  margin: 0 auto;
  padding: 0 1rem;
}
@media screen and (min-width: 75rem) {
  .container {
    padding: 0;
  }
}

/**
  * Header
  */
.site-header {
  position: relative;
  z-index: 200;
}
.site-header .site-branding {
  margin: 1rem 0;
}
@media screen and (min-width: 40rem) {
  .site-header .site-branding {
    margin: 2rem 0;
  }
}
.site-header .site-branding .logo {
  position: relative;
}
.site-header .site-branding .logo a {
  display: block;
  width: 11rem;
  height: 5rem;
  padding-top: 5rem;
  overflow: hidden;
  background-image: url("../images/mikkeli-logo.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.site-header .right-side {
  position: relative;
  text-align: right;
  margin-bottom: 1rem;
}
@media screen and (min-width: 40rem) {
  .site-header .right-side {
    margin-bottom: 0;
  }
}
.site-header .right-side .nav-quick-icons, .site-header .right-side .locale-menu {
  display: inline-block;
  vertical-align: top;
}
.site-header .right-side .locale-menu {
  height: 28px;
}
.site-header .right-side .locale-menu button:focus {
  outline: 2px solid #000;
}
.site-header .right-side .site-search {
  display: block;
  margin-bottom: 1rem;
}
@media screen and (min-width: 40rem) {
  .site-header .right-side .site-search {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 0;
  }
}
.site-header .right-side .site-search form {
  background-color: #e5e5e5;
  text-align: left;
  position: relative;
}
.site-header .right-side .site-search form input[type=search] {
  background-color: transparent;
  color: #000;
  border: none;
  width: 85%;
}
.site-header .right-side .site-search form input[type=search]::-webkit-input-placeholder {
  color: #000;
}
.site-header .right-side .site-search form input[type=search]::-moz-placeholder {
  color: #000;
}
.site-header .right-side .site-search form input[type=search]:-ms-input-placeholder {
  color: #000;
}
.site-header .right-side .site-search form input[type=search]::-ms-input-placeholder {
  color: #000;
}
.site-header .right-side .site-search form input[type=search]::placeholder {
  color: #000;
}
.site-header .right-side .site-search form button {
  background-color: transparent;
  border: none;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 15%;
  padding-left: 15%;
  overflow: hidden;
}
.site-header .right-side .site-search form button::before {
  position: relative;
  left: -15px;
}
.site-header .right-side .rs_preserve {
  display: inline-block;
  margin: 0.1rem 0 0 2rem;
}
.site-header .right-side .nav-some-icons {
  display: none;
}
@media screen and (min-width: 40rem) {
  .site-header .right-side .nav-some-icons {
    display: inline-block;
    font-size: 2rem;
    margin: 0 2rem;
  }
  .site-header .right-side .nav-some-icons a {
    color: #999;
  }
}
.site-header .right-side .nav-quick-icons {
  display: none;
}
@media screen and (min-width: 40rem) {
  .site-header .right-side .nav-quick-icons {
    display: inline-block;
  }
}
.site-header .right-side .nav-quick-icons .fa {
  background-color: #304ea2;
  color: #fff;
  font-size: 1rem;
  padding: 0.5rem;
}
.site-header .right-side .locale-menu .current-locale, .site-header .right-side .locale-menu a {
  z-index: 100;
  background: #304ea2;
  color: #fff;
  padding: 0.25rem;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  width: 2rem;
  height: 2rem;
  font-size: 0.9rem;
  position: relative;
  border: none;
}
.site-header .right-side .locale-menu a {
  display: none;
}
.site-header .right-side .locale-menu.menu-open a {
  display: block;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 0.7;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #000;
  border-radius: 4px;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -10px;
}
.hamburger-inner::after {
  bottom: -10px;
}

/*@import "types/3dx";
@import "types/3dx-r";
@import "types/3dy";
@import "types/3dy-r";
@import "types/arrow";
@import "types/arrow-r";
@import "types/arrowalt";
@import "types/arrowalt-r";
@import "types/boring";
@import "types/collapse";
@import "types/collapse-r";
@import "types/elastic";
@import "types/elastic-r";
@import "types/emphatic";
@import "types/emphatic-r";*/
/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 2px;
}
.hamburger--slider .hamburger-inner::before {
  top: 10px;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
}
.hamburger--slider .hamburger-inner::after {
  top: 20px;
}
.hamburger--slider.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
          transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  -webkit-transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
          transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  -webkit-transform: translate3d(0, -20px, 0) rotate(-90deg);
          transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*@import "types/slider-r";
@import "types/spring";
@import "types/spring-r";
@import "types/stand";
@import "types/stand-r";
@import "types/spin";
@import "types/spin-r";
@import "types/squeeze";
@import "types/vortex";
@import "types/vortex-r";*/
.primary .menu-items {
  display: none;
}
@media screen and (min-width: 60rem) {
  .primary .menu-items {
    display: block;
  }
}

.primary li {
  float: left;
  margin-right: 1.5rem;
}

.primary a {
  font-weight: 700;
  text-transform: uppercase;
}
.primary a:hover {
  text-decoration: underline;
  color: #4c34eb;
}

.responsive-nav {
  display: none;
}
.responsive-nav a {
  display: block;
  padding: 7px 9px;
}
.responsive-nav .nav-some-icons {
  text-align: center;
  margin-top: 2rem;
}
.responsive-nav .nav-some-icons a {
  padding: 0;
  display: inline-block;
}
.responsive-nav .nav-some-icons a .fa {
  background-color: #304ea2;
  color: #fff;
  font-size: 1rem;
  padding: 0.5rem;
}
.responsive-nav .locale-menu .current-locale, .responsive-nav .locale-menu a {
  z-index: 100;
  background: #304ea2;
  color: #fff;
  padding: 0.25rem;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  width: 2rem;
  height: 2rem;
  font-size: 0.9rem;
  position: relative;
  border: none;
}
.responsive-nav .locale-menu a {
  display: none;
}
.responsive-nav .locale-menu.menu-open a {
  display: inline-block;
  padding-top: 0.5rem;
}
.responsive-nav .nav-quick-icons {
  text-align: center;
}
.responsive-nav .nav-quick-icons .map-link, .responsive-nav .nav-quick-icons .locale-menu {
  display: inline-block;
  margin: 1rem 0.5rem;
}

.hamburger {
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (min-width: 60rem) {
  .hamburger {
    display: none;
  }
}

/**
  * Hero
  */
.hero-slides {
  margin: 1rem 0;
  position: relative;
  height: 35em;
}
@media screen and (min-width: 60rem) {
  .hero-slides {
    margin: 3rem 0 2rem;
  }
}

.hero__content {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: 0 auto;
  padding: 0 4rem;
  z-index: 10;
  width: 100%;
  max-width: 80em;
  color: #fff;
  text-shadow: 3px 3px 3px #000;
}
@media screen and (min-width: 60rem) {
  .hero__content {
    padding: 0 4rem;
  }
}
.hero__content h1 {
  font-size: clamp(2rem, 2vw + 4rem, 10rem);
  font-family: "questa-grande", sans-serif;
  font-style: italic;
}

.hero-img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  width: 100%;
  height: 100%;
  min-height: 0;
}

.slides {
  position: relative;
}
.slides .slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  width: 4rem;
  height: 4rem;
  padding-top: 4rem;
  overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: transparent;
  border: none;
  cursor: pointer;
}
.slides .slick-prev {
  left: 0;
  background-image: url("../images/arrow-left.svg");
}
.slides .slick-next {
  right: 0;
  background-image: url("../images/arrow-right.svg");
}
.slides img {
  display: block;
  width: 100%;
  height: 35em;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

/*.page-hero {
  background-image: url('../images/alasivu-hero.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  height: 15.6rem;
  margin: 2rem 0;
}*/
.page-hero {
  max-width: 100vw;
  height: 15.6rem;
  margin: 2rem auto;
  background-color: transparent;
  background-image: url("../images/mikkeli-page-banner-default.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 40rem) {
  .page-hero {
    -ms-grid-columns: 35% 30% 35%;
    grid-template-columns: 35% 30% 35%;
  }
}
.page-hero .left {
  background-image: url("../images/img4.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  display: none;
}
@media screen and (min-width: 40rem) {
  .page-hero .left {
    display: block;
  }
}
.page-hero .title {
  background-color: #58ab51;
  text-align: center;
  color: #fff;
  position: relative;
}
.page-hero .title span {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  padding: 0 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: bold;
  font-size: clamp(2rem, 2vw + 1rem, 4rem);
}
.page-hero .right {
  background-image: url("../images/img3.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  display: none;
}
@media screen and (min-width: 40rem) {
  .page-hero .right {
    display: block;
  }
}

/**
  * Content
  */
.breadcrumbs {
  margin: 2rem auto;
  padding: 0 1rem;
  width: 100%;
  max-width: 75rem;
  text-transform: uppercase;
  font-size: 0.875rem;
}
@media screen and (min-width: 40rem) {
  .breadcrumbs {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 70% 30%;
    grid-template-columns: 70% 30%;
  }
}
.breadcrumbs a {
  color: #464646;
}
.breadcrumbs .navigation {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 40rem) {
  .breadcrumbs .navigation {
    margin-bottom: 0;
  }
}
.breadcrumbs span {
  display: inline-block;
}
.breadcrumbs .sep {
  margin: 0 0.5rem;
}
.breadcrumbs .breadcrumbs__current {
  text-transform: none;
}

.home .breadcrumbs {
  display: block;
}
.home .breadcrumbs .navigation {
  display: none;
}
.home .breadcrumbs .rs_skip {
  float: right;
}

.single .breadcrumbs {
  text-transform: none;
}

.front-content .rs-wrap {
  width: 100%;
  max-width: 75rem;
  margin: 0 auto 1.5rem;
}
.front-content .container {
  margin: 0 auto 4rem;
}
@media screen and (min-width: 40rem) {
  .front-content .container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 70% 5% 25%;
    grid-template-columns: 70% 25%;
    gap: 5%;
  }
}

@media screen and (min-width: 40rem) {
  .articles-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1rem;
  }
}
.articles-container .post {
  background-color: #f7f7f7;
}
.articles-container .post-thumb {
  position: relative;
  height: 12.5rem;
  overflow: hidden;
}
.articles-container .post-thumb .entry-time {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  background-color: #000;
  color: #fff;
  font-weight: bold;
  padding: 0.5rem;
}
.articles-container .title {
  display: block;
  padding: 2rem;
  font-size: 1.25rem;
}
.articles-container .title a {
  color: #000;
  font-weight: 600;
}
.articles-container img {
  width: 100%;
  height: 15rem;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.text-articles {
  border-top: 1px solid #aaa;
  padding: 0.5rem 0;
  margin: 2rem 0 1rem;
}
.text-articles .text-article {
  overflow: hidden;
  padding: 0 0 0.5rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid #aaa;
}
.text-articles .date {
  float: left;
  width: 25%;
  background-color: #000;
  color: #fff;
  font-weight: bold;
  padding: 0.5rem 0.25rem;
  text-align: center;
}
@media screen and (min-width: 40rem) {
  .text-articles .date {
    width: 15%;
    padding: 0.5rem;
  }
}
.text-articles .title {
  float: left;
  width: 73%;
  margin-left: 2%;
  font-size: 1.25rem;
  line-height: 1.15;
}
@media screen and (min-width: 40rem) {
  .text-articles .title {
    width: 83%;
  }
}
.text-articles .title a {
  color: #000;
  font-weight: 600;
}

.all-news-link {
  margin-top: 1rem;
  margin-bottom: 2rem;
  background: #000;
  color: #fff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: 1.5px;
  padding: 1.25rem 1.5rem;
}

.tiles a:hover {
  text-decoration: none;
}
.tiles .tile {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  margin-bottom: 1rem;
  color: #fff;
  padding: 1rem 1.5rem 0;
  overflow: hidden;
  height: 12.5em;
  position: relative;
}
.tiles .tile h2 {
  line-height: 1;
  font-family: "questa-grande", sans-serif;
}
.tiles .tile .tile-text {
  position: absolute;
  bottom: 0;
  left: 1.5rem;
  right: 1.5rem;
}
.tiles .tile .tile-text p {
  float: left;
}
.tiles .tile .tile-text span {
  float: right;
}

.menu-most-popular {
  background-color: #000;
  padding: 1rem 1.5rem;
}
.menu-most-popular h3 {
  color: #fff;
  margin-bottom: 1rem;
}
.menu-most-popular ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu-most-popular ul li {
  border-bottom: 1px solid #fff;
}
.menu-most-popular ul li:last-child {
  border-bottom: none;
}
.menu-most-popular a {
  color: #fff;
  display: block;
  padding: 0.5rem 1.65rem 0.5rem 0;
  position: relative;
  font-size: 1.25rem;
}
.menu-most-popular a span {
  position: absolute;
  bottom: 0.55rem;
  right: 0;
}
.menu-most-popular a:hover {
  text-decoration: none;
}
.menu-most-popular .fa-angle-right {
  background-color: #fff;
  color: #000;
}

.site-content {
  padding: 2rem 0 4rem;
}
@media screen and (min-width: 40rem) {
  .site-content .container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 22% 3% 75%;
    grid-template-columns: 22% 75%;
    gap: 3%;
  }
}
.site-content.full-width .container {
  display: block;
}

.site-main h1 {
  color: #71767d;
  font-size: clamp(1.75rem, 2vw + 1rem, 3rem);
}

.site-main h2, .site-main h3 {
  font-family: "Cairo", sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  padding-bottom: 0.5rem;
}

.site-main ul {
  margin-left: 1.5rem;
  list-style-type: square;
}
.site-main ul ul {
  margin-bottom: 0;
}

.site-main ol {
  margin-left: 1.5rem;
}
.site-main ol ol {
  margin-bottom: 0;
}

.site-main a {
  text-decoration: underline;
  font-weight: 600;
}
.site-main a:hover {
  color: #4c34eb;
}

@media screen and (min-width: 40rem) {
  .container.with-sidebar-column {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 22% 50% 23%;
    grid-template-columns: 22% 50% 23%;
  }
}

.fa-angle-right {
  color: #fff;
  background: #000;
  padding: 0 8px;
  font-size: 26px;
  display: block;
}

.fp-blocks {
  margin: 0 0 4rem;
}
.fp-blocks .container {
  padding: 0 1rem;
}
@media screen and (min-width: 40rem) {
  .fp-blocks .container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 2rem 1fr 2rem 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 2rem;
       -moz-column-gap: 2rem;
            column-gap: 2rem;
  }
}
.fp-blocks .container .col {
  padding: 2.5rem 1rem;
  text-align: center;
  color: #fff;
  margin-bottom: 1rem;
}
@media screen and (min-width: 40rem) {
  .fp-blocks .container .col {
    margin-bottom: 0;
  }
}
.fp-blocks .container .col h4 {
  font-family: "Cairo", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.875rem;
  margin-bottom: 0.5rem;
}
.fp-blocks .container .col a {
  color: #fff;
}
.fp-blocks .container .icon {
  display: block;
  margin: 0 auto 1rem;
  width: 4rem;
  height: 4rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.fp-blocks .container .all-link {
  font-weight: 600;
  font-size: 1rem;
  border: 3px solid #fff;
  padding: 0.5rem 2rem;
  display: inline-block;
  margin-top: 1rem;
  font-family: "Cairo", sans-serif;
}
.fp-blocks .container .info-block {
  background-color: #5ca740;
}
.fp-blocks .container .info-block .icon {
  background-image: url("../images/mikkeli-osallistuvaikuta-icon2.png");
}
.fp-blocks .container .jobs-block {
  background-color: #234c8e;
}
.fp-blocks .container .jobs-block .icon {
  background-image: url("../images/mikkeli-kunta-rekry-icon2.png");
}
.fp-blocks .container .jobs-block a {
  text-transform: uppercase;
}
.fp-blocks .container .jobs-block .all-link {
  text-transform: none;
}
.fp-blocks .container .announcements-block {
  background-color: #d84c6f;
}
.fp-blocks .container .announcements-block .icon {
  background-image: url("../images/mikkeli-kuulutukset-icon.png");
}
.fp-blocks .container .announcements-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.fp-blocks .container .announcements-block ul li {
  margin-bottom: 1rem;
}
.fp-blocks .container .announcements-block ul li a {
  font-weight: 600;
  font-family: "Cairo", sans-serif;
}

.mikkeli-events {
  margin: 0 0 2rem;
}
.mikkeli-events h2 {
  text-align: center;
}

/* Search Results */
.search .site-content .container {
  display: block;
}

.search .site-main .search-form {
  margin-bottom: 4rem;
}
.search .site-main .search-form label {
  font-weight: bold;
  color: #000;
  margin-bottom: 0.5rem;
}
.search .site-main .search-form input[type=search] {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  line-height: 1.25;
  color: #55595c;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  margin-bottom: 0.75rem;
}
.search .site-main .search-form input[type=search]:focus {
  border-color: #66afe9;
  outline: none;
}
.search .site-main .search-form button {
  background-color: #000;
  color: #fff;
  font-size: 1.25rem;
  padding: 0.75rem 1.5rem;
  border-radius: 0.3rem;
  cursor: pointer;
}

.results-filters button {
  border: none;
  border-right: 1px solid #aaa;
  background-color: transparent;
  padding: 0.5rem 1rem;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
}
.results-filters button:hover, .results-filters button.current {
  background-color: rgba(55, 58, 60, 0.04);
}

.results .results-tab-container {
  display: none;
}
.results .results-tab-container:first-child {
  display: block;
}
.results .results-tab-container .item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 120px 1rem 1fr;
  grid-template-columns: 120px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  border-bottom: 1px solid #aaa;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.results .results-tab-container .item p {
  margin-bottom: 1rem;
}
.results .results-tab-container .item div a {
  font-weight: 600;
}
.results .results-tab-container .item img {
  width: 100%;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  display: block;
}

.page-navigation {
  margin: 2rem 0;
  text-align: center;
}
.page-navigation .page-number {
  font-weight: bold;
  display: inline-block;
  margin: 0 0.5rem;
}
.page-navigation .number-of-pages {
  visibility: hidden;
}

.page-image {
  margin-bottom: 1.5rem;
}
.page-image img {
  width: 100%;
  height: auto;
}

.black-border table {
  border: 1px solid grey;
}
.black-border table td {
  border: 1px solid grey;
}

.posts-list .item {
  border-bottom: 1px solid #aaa;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 40rem) {
  .posts-list .item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 160px 1rem 1fr;
    grid-template-columns: 160px 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
  }
}
.posts-list .item p {
  margin-bottom: 1rem;
}
.posts-list .item div a {
  font-weight: bold;
}
.posts-list .item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  display: block;
  margin-bottom: 1rem;
}
@media screen and (min-width: 40rem) {
  .posts-list .item img {
    margin-bottom: 0;
  }
}

.sidebar .title {
  font-family: "Cairo", sans-serif;
  font-size: 0.9rem;
  font-weight: 900;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.sidebar .sub-navigation {
  display: none;
  clear: both;
}
@media screen and (min-width: 40rem) {
  .sidebar .sub-navigation {
    display: block;
  }
}
.sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidebar ul a {
  color: #71767d;
  display: block;
  padding: 0.25rem 1.5rem 0.5rem 0.5rem;
  border-bottom: 1px solid #e5e5e5;
}
.sidebar ul ul {
  display: none;
  border-bottom: 1px solid #e5e5e5;
}
.sidebar ul ul a {
  padding-left: 1rem;
}
.sidebar ul ul ul a {
  padding-left: 2rem;
}
.sidebar ul:last-child {
  border-bottom: none;
}
.sidebar ul li {
  position: relative;
}
.sidebar .open {
  position: absolute;
  top: 0.5rem;
  right: 0.15rem;
  width: 1.3125rem;
  height: 1.3125rem;
  padding-top: 1.3125rem;
  overflow: hidden;
  background-image: url("../images/mikkeli-menu-closed.png");
  background-repeat: no-repeat;
  background-size: contain;
  border: none;
  background-color: transparent;
}
.sidebar .open.toggled {
  background-image: url("../images/mikkeli-menu-open.png");
}
.sidebar .current_page_ancestor > a .open {
  background-image: url("../images/mikkeli-menu-open.png");
}
.sidebar .current_page_parent > a .open {
  background-image: url("../images/mikkeli-menu-open.png");
}
.sidebar .current_page_ancestor > a .open.toggled {
  background-image: url("../images/mikkeli-menu-closed.png");
}
.sidebar .current_page_ancestor .current_page_item > ul .open {
  background-image: url("../images/mikkeli-menu-closed.png");
}
.sidebar .current_page_ancestor .current_page_item > ul .open.toggled {
  background-image: url("../images/mikkeli-menu-open.png");
}
.sidebar .current_page_item > a {
  color: #fff;
  padding-left: 0.5rem;
  background-color: #d94c70;
}
.sidebar .current_page_item > a .open {
  background-image: url("../images/mikkeli-menu-open-white.png");
}
.sidebar .current_page_item > a .open.toggled {
  background-image: url("../images/mikkeli-menu-closed-white.png");
}
.sidebar .current_page_item > ul, .sidebar .current_page_parent > ul, .sidebar .current_page_ancestor > ul {
  display: block;
}
.sidebar .current_page_item > ul a, .sidebar .current_page_parent > ul a, .sidebar .current_page_ancestor > ul a {
  padding-left: 1rem;
}
.sidebar .current_page_item > ul ul a, .sidebar .current_page_parent > ul ul a, .sidebar .current_page_ancestor > ul ul a {
  padding-left: 1.5rem;
}
.sidebar .current_page_item > ul ul ul a, .sidebar .current_page_parent > ul ul ul a, .sidebar .current_page_ancestor > ul ul ul a {
  padding-left: 2rem;
}
.sidebar .page_item_has_children.active > a {
  border-bottom: 1px solid #e5e5e5;
}
.sidebar .all-news-link {
  background-color: transparent;
  color: #000;
  padding: 0;
  margin-top: 1.5rem;
  font-size: 1.1rem;
}
.sidebar .btn-menu {
  display: block;
  float: right;
  background-color: #000;
  border: none;
  border-radius: 3px;
  color: #fff;
  padding: 0.5rem 1rem;
  cursor: pointer;
}
@media screen and (min-width: 40rem) {
  .sidebar .btn-menu {
    display: none;
  }
}

.site-main.with-sidebar-column .sidebar-column {
  padding: 1rem;
  background-color: #edeef2;
}
@media screen and (min-width: 60rem) {
  .site-main.with-sidebar-column .sidebar-column {
    max-width: 40%;
  }
}
@media screen and (min-width: 75rem) {
  .site-main.with-sidebar-column .sidebar-column {
    max-width: 30%;
  }
}
.site-main.with-sidebar-column .wp-block-columns .wp-block-column:nth-child(even) {
  background-color: #edeef2;
  padding: 1rem;
}
.site-main.with-sidebar-column .sidebar-column h3, .site-main.with-sidebar-column .wp-block-column:nth-child(even) h3 {
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  padding-top: 5px;
  padding-bottom: 0;
  margin-top: 15px;
  margin-bottom: 0;
}
.site-main.with-sidebar-column .sidebar-column h4, .site-main.with-sidebar-column .wp-block-column:nth-child(even) h4 {
  font-weight: 700;
  font-size: 1rem;
  color: #000;
  padding-top: 5px;
  padding-bottom: 0;
  margin-top: 15px;
  margin-bottom: 0;
}

.pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  font-size: 11px;
  line-height: 13px;
}

.pagination span, .pagination a {
  display: block;
  float: left;
  margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px;
  width: auto;
  color: #fff;
  background: #555;
}

.pagination a:hover {
  color: #fff;
  background: #3279BB;
}

.pagination .current {
  padding: 6px 9px 5px 9px;
  background: #3279BB;
  color: #fff;
}

.single .page-hero {
  background-image: url("../images/mikkeli-page-banner-default.jpg");
}

.share-buttons {
  margin: 1rem 0;
}
.share-buttons p {
  margin: 0.5rem 0 1rem;
}
.share-buttons i {
  font-size: 2.25rem;
  margin-right: 0.625rem;
}

.entry-header .entry-time {
  font-size: 14px;
}

.tags {
  margin: 1rem 0;
}
.tags .tag {
  display: inline-block;
  background-color: #000;
  color: #fff;
  font-weight: 700;
  padding: 0.5rem;
  border-radius: 0.625rem;
  margin-right: 0.625rem;
}
.tags .tag:hover {
  text-decoration: none;
}

.comment-list img {
  width: auto;
  max-width: 100%;
}

input[type=text], input[type=email], input[type=tel], input[type=search], textarea, input[type=submit], button[type=submit] {
  width: auto;
  padding: 0.5rem;
}

textarea {
  max-width: 100%;
  width: 100%;
}

input[type=submit] {
  width: auto;
}

/* Banners */
@media screen and (min-width: 40rem) {
  .banners {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
.banners .banner {
  background-image: url("../images/green-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 12.5em;
  color: #fff;
  position: relative;
  margin-bottom: 1rem;
}
@media screen and (min-width: 40rem) {
  .banners .banner {
    margin-bottom: 0;
  }
}
.banners .banner.blue {
  background-image: url("../images/blue-bg.jpg");
}
.banners .banner.pink {
  background-image: url("../images/pink-bg.jpg");
}
.banners .banner.orange {
  background-image: url("../images/orange-bg.jpg");
}
.banners .banner .small-page-banner-title {
  position: absolute;
  display: block;
  bottom: 1.25rem;
  width: 100%;
  left: 0;
  padding-left: 1.5rem;
  padding-right: 1rem;
  line-height: 1.5;
}
.banners .banner .small-page-banner-title span {
  font-weight: 600;
}
.banners .banner .small-page-banner-title .fa {
  float: right;
}

/* Accordion */
.site-main .accessibility-sentences .accessibility-sentence {
  border-top: 1px solid #d3d3d3;
  padding: 1rem 0.5rem 0;
}
.site-main .accessibility-sentences .accessibility-sentence:last-child {
  border-bottom: 1px solid #d3d3d3;
}
.site-main .accessibility-sentences .accessibility-sentence ul {
  margin-left: 1rem;
  padding-left: 1rem;
}
.site-main .accessibility-sentences .accessibility-sentence ul li {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.site-main .accessibility-sentences .accessibility-sentence .content {
  display: none;
}
.site-main .accessibility-sentences .accessibility-sentence .content p {
  margin: 0;
}
.site-main .accessibility-sentences .accessibility-sentence.visible .content {
  display: block;
}

.site-main .accessibility-sentences .accessibility-sentence button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  background-color: rgba(0, 0, 0, 0);
  border: 0;
  text-align: left;
  margin-bottom: 0.5rem;
  cursor: pointer;
  position: relative;
  padding: 0;
}
.site-main .accessibility-sentences .accessibility-sentence button::before {
  content: "";
  width: 34px;
  height: 24px;
  position: relative;
  top: -3px;
  background-image: url("../images/mikkeli-menu-open.png");
  background-position: center;
  background-repeat: no-repeat;
}
.site-main .accessibility-sentences .accessibility-sentence button.closed::before {
  background-image: url("../images/mikkeli-menu-closed.png");
}

.site-main .accessibility-sentences .accessibility-sentence .button-text {
  color: #54575a;
  font-weight: 700;
}

.alignleft {
  margin: 25px 0;
}
@media screen and (min-width: 40rem) {
  .alignleft {
    float: left;
    margin: 0 25px 25px 0;
  }
}

.alignright {
  margin: 25px 0;
}
@media screen and (min-width: 40rem) {
  .alignright {
    float: right;
    margin: 0 0 25px 25px;
  }
}

.aligncenter {
  margin: 25px auto;
}

.wp-block-table {
  overflow: auto;
}
@media screen and (min-width: 60rem) {
  .wp-block-table {
    overflow: none;
  }
}
.wp-block-table thead th {
  padding: 0.75rem;
  line-height: 1.5rem;
}
.wp-block-table td {
  padding: 0.75rem 0.25rem;
  line-height: 1.5;
  vertical-align: top;
  border-top: 1px solid #eceeef;
}
.wp-block-table td a {
  word-break: break-all;
}
.wp-block-table table {
  word-break: normal;
}

.wp-block-post-featured-image {
  margin-top: 0;
}

.rsbtn_colorskin {
  position: relative;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.3em;
  float: left;
  border: 0px solid rgb(100, 100, 100);
  background: #fff;
  /* 
   * Add rounded corners to supported browsers 

  -moz-border-radius: 3px;
  border-radius: 3px;
  */
}

/************************************************ GENERAL CLASSES */
/**
* These are a couple of classes that apply to many object or redefine elements
*/
.rsbtn_colorskin a, .rsbtn_colorskin span {
  position: relative;
  display: block;
  text-decoration: none;
}

/**
* Use the predefined CSS sprite for all graphical elements.
*/
.rsbtn_colorskin .rsimg {
  background: transparent url("../images/readspeaker/ReadSpeakerColorSkin.png") no-repeat scroll 0 0;
}

/**
* All the player elements should float.
*/
.rsbtn_colorskin .rspart {
  float: left;
  margin-left: 2px;
}

.rsbtn_colorskin .rsdefloat {
  clear: both;
}

/**
* This goes for all buttons
*/
.rsbtn_colorskin .rspart.rsbutton {
  background-color: rgb(100, 100, 100);
  border: 1px solid black;
  border-radius: 4px;
  -moz-border-radius: 4px;
  width: 22px;
  height: 22px;
  /* 
   * Add rounded corners to supported browsers 
   */
  /*-moz-border-radius: 5px;
  border-radius: 5px;

    /**
     * This is just to make the rollover effect a little smoother.
     */
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

/**
* Add a subtle rollover effect to the buttons.
*/
.rsbtn_colorskin .rspart.rsbutton:hover {
  background-color: #ccc;
}

/**
* Hide all text labels. They will still be visible to non-CSS browsers
*/
.rsbtn_colorskin .rspart .rsbtn_btnlabel {
  display: none;
}

/************************************************ PLAYER BOX */
.rsbtn_colorskin .rsbtn_box {
  margin: 1px;
}

/************************************************ LISTEN BUTTON + ICON */
.rsbtn_colorskin .rsbtn_play {
  float: left;
  margin: 1px;
}

.rsbtn_colorskin .rsbtn_left .rsbtn_text {
  background: transparent url("../images/icon_16px_black.gif") no-repeat scroll 0 0;
  padding-left: 24px;
  color: rgb(100, 100, 100);
}

.rsbtn_colorskin .rsbtn_left.rspart {
  background: none;
}

/************************************************ EXPANDING AREA */
.rsbtn_colorskin .rsbtn_exp.rsimg.rspart {
  background: none;
  float: left;
  display: none;
}

/**
* We want the expanding area to be visible only when the player
* is expanded, hence the .rsexpanded class.
*/
.rsbtn_colorskin.rsexpanded .rsbtn_exp.rsimg {
  display: block;
}

/************************************************ PLAY/PAUSE BUTTON */
.rsbtn_colorskin .rsbtn_pause {
  background-position: -17px -17px;
}

.rsbtn_colorskin.rspaused .rsbtn_pause,
.rsbtn_colorskin.rsstopped .rsbtn_pause {
  background-position: -17px 1px;
}

/************************************************ STOP BUTTON */
.rsbtn_colorskin .rsbtn_stop {
  background-position: -17px -35px;
}

/************************************************ PROGRESS CONTAINER */
.rsbtn_colorskin .rsbtn_progress_container {
  border: 1px solid rgb(100, 100, 100);
  width: 50px;
  height: 10px;
  margin-top: 4px;
  margin-left: 4px;
  background-image: none;
  /* 
   * Add rounded corners to supported browsers 
   */
  border-radius: 3px;
}

/************************************************ PROGRESS DRAG HANDLE */
.rsbtn_colorskin .rsbtn_progress_handle.rsimg {
  position: absolute;
  background-color: rgb(0, 0, 0);
  top: -4px;
  left: -2px;
  width: 6px;
  height: 16px;
  background-image: none;
}

/************************************************ PROGRESS BAR */
.rsbtn_colorskin .rsbtn_progress_played {
  position: absolute;
  height: 100%;
  background-color: #ccc;
  background-image: none;
}

/************************************************ VOLUME BUTTON */
.rsbtn_colorskin .rsbtn_volume {
  margin-left: 4px;
  background-position: -17px -53px;
}

/************************************************ VOLUME SLIDER CONTAINER */
.rsbtn_colorskin .rsbtn_volume_container {
  position: absolute;
  display: none;
  top: 100%;
  width: 18px;
  height: 40px;
  border: 1px solid rgb(0, 0, 0);
  background: #fff;
}

/************************************************ VOLUME SLIDER SLIDER AREA */
.rsbtn_colorskin .rsbtn_volume_slider {
  width: 6px;
  height: 30px;
  margin: 5px;
  background: #ccc;
}

/************************************************ VOLUME SLIDER SLIDE HANDLE */
.rsbtn_colorskin .rsbtn_volume_handle.rsimg {
  position: absolute;
  top: -2px;
  left: -3px;
  width: 12px;
  height: 6px;
  background: rgb(0, 0, 0);
}

/************************************************ DOWNLOAD BUTTON */
.rsbtn_colorskin .rsbtn_dl {
  background-position: -17px -71px;
}

/************************************************ SETTINGS BUTTON */
.rsbtn_colorskin .rsbtn_settings {
  background-position: -17px -89px;
}

/************************************************ CLOSE BUTTON */
.rsbtn_colorskin .rsbtn_closer {
  margin-left: 2px;
  background-position: -17px -107px;
}

/************************************************ POPUP BUTTON */
/**
* This is the style of the listen button that popups when the user
* makes a text selection on the page.
*/
.rsbtn_colorskin.rspopup {
  position: absolute;
  background: #fff;
  border: 0px solid #555;
  -webkit-box-shadow: 0 0 5px #777;
          box-shadow: 0 0 5px #777;
  display: none;
}

/************************************************ POWERED BY READSPEAKER */
.rsbtn_colorskin .rsbtn_powered {
  position: absolute;
  right: -12px;
  top: 23px;
  height: 10px;
  z-index: -1;
  color: #999;
  font-family: "Lucida Grande", "Lucida Sans", "Lucida", sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 10px;
  font-size: 10px;
  background: none;
  cursor: pointer;
}

.rsbtn_colorskin .rsbtn_powered a, .rsbtn_colorskin .rsbtn_powered span {
  font-family: "Lucida Grande", "Lucida Sans", "Lucida", sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 10px;
  font-size: 10px;
  display: inline;
}

.rsbtn_colorskin .rsbtn_powered .rsbtn_btnlabel {
  display: inline;
}

.rsbtn_colorskin .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_read {
  color: #e60;
}

.rsbtn_colorskin .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_speaker {
  color: #33a;
}

.rsbtn_colorskin .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_icon.rsimg {
  position: relative;
  top: 1px;
  width: 11px;
  height: 9px;
  margin-left: 2px;
  padding-right: 11px;
  background-position: -137px -490px;
}

.rsbtn_colorskin.rs_whitelogo .rsbtn_powered,
.rsbtn_colorskin.rs_whitelogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_read,
.rsbtn_colorskin.rs_whitelogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_speaker {
  color: #fff;
}

.rsbtn_colorskin.rs_whitelogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_icon.rsimg {
  background-position: -285px -490px;
}

.rsbtn_colorskin.rs_blacklogo .rsbtn_powered,
.rsbtn_colorskin.rs_blacklogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_read,
.rsbtn_colorskin.rs_blacklogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_speaker {
  color: rgb(0, 0, 0);
}

.rsbtn_colorskin.rs_blacklogo .rsbtn_powered .rsbtn_btnlabel a span.rsbtn_label_icon.rsimg {
  background-position: -433px -490px;
}

/* About-page link */
.rsbtn_colorskin a.rsbtn_abouthelp {
  background: url("../images/readspeaker/ReadSpeakerColorSkin.png") no-repeat scroll -20px -128px transparent;
  background-color: rgb(0, 0, 0);
  border-radius: 7px;
  -webkit-transition: background-color 0.2s ease 0s;
  transition: background-color 0.2s ease 0s;
  height: 14px;
  width: 14px;
  float: left;
  margin: 3px 1px 1px;
}

.rsbtn_colorskin a.rsbtn_abouthelp:hover {
  background-color: #ccc;
}

.rsbtn_colorskin a.rsbtn_abouthelp span {
  display: none;
}

/*Status overlay*/
.rsbtn_exp .rsbtn_status_overlay span.rsbtn_status {
  margin-top: 0px !important;
}

@media print {
  .site-branding .right-side, .page-hero, .sidebar, .site-footer {
    display: none;
  }
}
/**
  * Footer
  */
.site-footer {
  text-align: center;
  background-color: #234c8e;
  color: #fff;
  font-weight: 700;
  padding: 4rem 2rem 2rem;
}
.site-footer a {
  color: #fff;
}
@media screen and (min-width: 60rem) {
  .site-footer {
    text-align: left;
  }
}
@media screen and (min-width: 60rem) {
  .site-footer .container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr 3rem 1fr 3rem 1fr;
    grid-template-columns: repeat(5, 1fr);
    gap: 3rem;
  }
}
.site-footer .container h3 {
  font-size: 1rem;
  text-transform: uppercase;
}

.design {
  margin-top: 50px;
  padding-top: 20px;
  text-align: center;
  color: #fff;
  font-size: 12px;
  text-transform: uppercase;
  overflow: hidden;
  opacity: 0.5;
}

.design a {
  display: inline-block;
  text-indent: -9999px;
  width: 58px;
  height: 28px;
  position: relative;
  top: -12px;
  margin-left: 5px;
  background: url("../images/haaja-logo.png") no-repeat 0 0;
}