/*
Theme Name: Communike
Version: 1.0
Author: JF Maion
Description: Custom stand-alone theme for Communike.fi. Minimalist theme, unused WordPress code disabled/removed as much as possible. CSS compiled from SCSS under scss_src directory.
*/
/* Generated using 'script/generate_google_fonts "Montserrat"' at 2022-02-04 13:04:54 UTC */
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Montserrat"' at 2022-02-04 13:04:54 UTC */
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400i-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400i-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400i-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400i-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/400i-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Montserrat"' at 2022-02-04 13:04:54 UTC */
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/500-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/500-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/500-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/500-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/500-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Montserrat"' at 2022-02-04 13:04:54 UTC */
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Montserrat"' at 2022-02-04 13:04:54 UTC */
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700i-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700i-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700i-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700i-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/montserrat/700i-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Merriweather"' at 2022-02-04 13:04:49 UTC */
/* cyrillic */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/400-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/400-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/400-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/400-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Generated using 'script/generate_google_fonts "Merriweather"' at 2022-02-04 13:04:49 UTC */
/* cyrillic */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/700-cyrillic.woff2") format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
/* cyrillic-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/700-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
/* vietnamese */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/700-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
/* latin-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/700-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/themes/communike/assets/fonts/merriweather/700-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Style reset, based on  http://meyerweb.com/eric/tools/css/reset/ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* Reset end */
:root {
  --vh: 1vh;
  /* Default value, until JS code kicks in and adjust this */ }

#page {
  min-height: 100vh;
  min-height: calc(100 * var(--vh));
  /* Use --vh instead of vh for devices with optional toolbars */ }
  @media screen and (min-width: 900px) {
    #page {
      padding-top: 5.1rem; } }

#header_content,
#footer_content {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.7rem;
  padding-right: 1.7rem; }

#header {
  height: 5.1rem;
  background-color: #f4f4f4; }
  @media screen and (min-width: 900px) {
    #header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100; } }
  #header nav#header_content {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100%; }
    @media screen and (min-width: 900px) {
      #header nav#header_content #logo {
        margin-top: -10px; } }
    #header nav#header_content #logo img {
      display: block;
      height: 2.55rem;
      width: auto; }
    #header nav#header_content div#main_menu {
      background: #f4f4f4;
      text-align: center;
      z-index: 400;
      position: fixed;
      right: 0;
      top: 0;
      box-sizing: border-box;
      height: 100vh;
      height: calc(100 * var(--vh));
      /* Use --vh instead of vh for devices with optional toolbars */
      overflow-y: auto;
      width: 100%;
      transition: transform linear 0.25s;
      transform: translateX(100%);
      display: flex;
      flex-direction: column; }
      body.nav_visible #header nav#header_content div#main_menu {
        transform: translateX(0); }
      @media screen and (min-width: 900px) {
        #header nav#header_content div#main_menu {
          position: static;
          overflow-y: visible;
          display: block;
          height: auto;
          transition: none;
          transform: none;
          text-align: right; } }
      #header nav#header_content div#main_menu:before {
        content: '';
        margin-top: auto; }
      #header nav#header_content div#main_menu:after {
        content: '';
        margin-bottom: auto; }
      #header nav#header_content div#main_menu ul.menu {
        padding: 1.7rem 0;
        list-style-type: none;
        max-width: 100%; }
        @media screen and (min-width: 900px) {
          #header nav#header_content div#main_menu ul.menu {
            display: inline-flex;
            flex-direction: row;
            padding: 0;
            margin: 0; } }
        #header nav#header_content div#main_menu ul.menu li {
          margin: 0; }
          @media screen and (min-width: 900px) {
            #header nav#header_content div#main_menu ul.menu li {
              position: relative;
              white-space: nowrap; }
              #header nav#header_content div#main_menu ul.menu li:last-child {
                margin-right: -0.85rem; } }
          #header nav#header_content div#main_menu ul.menu li a {
            display: block;
            min-width: 30px;
            max-width: 250px;
            margin: 0 auto;
            color: #000; }
            @media (hover: hover) and (pointer: fine) {
              #header nav#header_content div#main_menu ul.menu li a:hover {
                color: #00c800; } }
        #header nav#header_content div#main_menu ul.menu > li > a {
          padding: 0.85rem;
          text-transform: uppercase;
          font-weight: 500;
          letter-spacing: 0.06em; }
          @media screen and (min-width: 900px) {
            #header nav#header_content div#main_menu ul.menu > li > a.current {
              color: #00c800; } }
@media screen and (min-width: 900px) and (hover: hover) and (pointer: fine) {
  #header nav#header_content div#main_menu ul.menu > li > a:hover {
    border-color: #00c800; } }

          #header nav#header_content div#main_menu ul.menu > li > a.sub_menu_title:not(:hover) {
            color: #555; }
            @media screen and (min-width: 900px) {
              #header nav#header_content div#main_menu ul.menu > li > a.sub_menu_title:not(:hover) {
                color: #000; } }
    #header nav#header_content #nav_toggle {
      position: fixed;
      top: 27px;
      right: 2em;
      color: #000;
      cursor: pointer;
      z-index: 500;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media screen and (min-width: 900px) {
        #header nav#header_content #nav_toggle {
          display: none; } }
      #header nav#header_content #nav_toggle > div {
        width: 20px;
        height: 20px;
        position: relative; }
        #header nav#header_content #nav_toggle > div > div, #header nav#header_content #nav_toggle > div > div::before, #header nav#header_content #nav_toggle > div > div::after {
          position: absolute;
          left: 0;
          height: 2px;
          width: 100%;
          background: #00c800;
          transform: rotate(0deg);
          will-change: transform; }
        #header nav#header_content #nav_toggle > div > div {
          top: 9px;
          transition: transform 0.3s ease-out; }
        #header nav#header_content #nav_toggle > div > div::before {
          content: '';
          top: -6px;
          transition: top 0.3s ease-in 0.3s; }
        #header nav#header_content #nav_toggle > div > div::after {
          content: '';
          bottom: -6px;
          transition: bottom 0.3s ease-in 0.3s, transform 0.3s ease-out; }
      body.nav_visible #header nav#header_content #nav_toggle > div {
        color: #000; }
        body.nav_visible #header nav#header_content #nav_toggle > div > div {
          transform: rotate(135deg);
          transition: transform 0.3s ease-in 0.3s; }
        body.nav_visible #header nav#header_content #nav_toggle > div > div::before {
          top: 0;
          transition: top 0.3s ease-out; }
        body.nav_visible #header nav#header_content #nav_toggle > div > div::after {
          bottom: 0;
          transform: rotate(-90deg);
          transition: bottom 0.3s ease-out, transform 0.3s ease-in 0.3s; }

div {
  scroll-margin-top: 1.7rem; }
  @media screen and (min-width: 900px) {
    div {
      scroll-margin-top: 6.8rem; } }

#page {
  overflow: hidden; }

#main {
  margin-top: 3.4rem; }

#footer {
  top: 100%;
  position: sticky;
  width: 100%;
  margin-top: 3.4rem;
  padding: 3.4rem 0;
  background: #f4f4f4; }
  #footer .logo {
    margin-bottom: 2.55rem; }
    #footer .logo img {
      display: block;
      height: 2.55rem;
      width: auto;
      margin-top: 6px;
      margin-bottom: -6px; }
  #footer h4 {
    margin-top: 1.7rem; }
  #footer .social_icons a svg {
    fill: #00c800;
    width: 2.55rem;
    height: 2.55rem;
    padding: 0.425rem; }
  @media (hover: hover) and (pointer: fine) {
    #footer .social_icons a:hover svg {
      fill: #00a400; } }

/* Content shown on large screen only */
.enhanced {
  visibility: hidden;
  display: none !important; }

@media screen and (min-width: 900px) {
  .enhanced {
    visibility: visible;
    display: block !important; }

  td.enhanced, th.enhanced {
    display: table-cell !important; }

  span.enhanced {
    display: inline !important; } }
.page_width {
  padding: 0 0.85rem;
  margin: 0 auto;
  max-width: 1200px; }

.content_header {
  margin: 3.4rem 0; }

.wp-block-spacer {
  height: 1.7rem !important; }

.wp-block-group {
  margin-top: 1.7rem;
  margin-bottom: 1.7rem; }
  .wp-block-group.is-style-full_width_group, .wp-block-group.is-style-full_width_group_dark {
    background-color: #f4f4f4;
    padding: 3.4rem 0;
    margin: 3.4rem -2000px; }
    .wp-block-group.is-style-full_width_group > .wp-block-group__inner-container, .wp-block-group.is-style-full_width_group_dark > .wp-block-group__inner-container {
      width: 1200px;
      max-width: calc(100vw - 1.7rem);
      margin: 0 auto; }
  .wp-block-group.is-style-full_width_group_dark {
    background-color: #555;
    color: #f4f4f4; }
    .wp-block-group.is-style-full_width_group_dark h1, .wp-block-group.is-style-full_width_group_dark h2, .wp-block-group.is-style-full_width_group_dark h4, .wp-block-group.is-style-full_width_group_dark p, .wp-block-group.is-style-full_width_group_dark label {
      color: #f4f4f4; }

@media screen and (max-width: 900px) {
  .wp-block-column + .wp-block-column {
    margin-top: 1.7rem; } }
@media screen and (min-width: 900px) {
  .wp-block-columns {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    font-size: 0;
    margin: 0 -3.4rem; }
    .wp-block-columns.is-style-small_column_margins {
      margin-left: -0.85rem;
      margin-right: -0.85rem; }
      .wp-block-columns.is-style-small_column_margins .wp-block-column {
        padding-left: 0.85rem;
        padding-right: 0.85rem; }
    .wp-block-columns .wp-block-column {
      flex: 1 !important;
      font-size: 16px;
      box-sizing: border-box;
      align-self: flex-start;
      padding: 0 3.4rem; }
      .wp-block-columns .wp-block-column.is-vertically-aligned-center {
        align-self: center; }
      .wp-block-columns .wp-block-column.is-vertically-aligned-bottom {
        align-self: flex-end; }
      .wp-block-columns .wp-block-column.one_sixth {
        flex-basis: 33.33% !important;
        max-width: 33.33%; }
      .wp-block-columns .wp-block-column.one_fourth {
        flex-basis: 25% !important;
        max-width: 25%; }
      .wp-block-columns .wp-block-column.one_third {
        flex-basis: 33.33% !important;
        max-width: 33.33%; }
      .wp-block-columns .wp-block-column.two_thirds {
        flex-basis: 66.67% !important;
        max-width: 66.67%; }
      .wp-block-columns .wp-block-column.half {
        flex-basis: 50% !important;
        max-width: 50%; } }
    @media screen and (min-width: 900px) and (min-width: 1200px) {
      .wp-block-columns .wp-block-column .one_sixth {
        flex-basis: 16.66% !important;
        max-width: 16.66%; } }

.wp-block-columns.force_flex_on_mobile {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 0;
  margin: 0 -3.4rem; }
  .wp-block-columns.force_flex_on_mobile.is-style-small_column_margins {
    margin-left: -0.85rem;
    margin-right: -0.85rem; }
    .wp-block-columns.force_flex_on_mobile.is-style-small_column_margins .wp-block-column {
      padding-left: 0.85rem;
      padding-right: 0.85rem; }
  .wp-block-columns.force_flex_on_mobile .wp-block-column {
    flex: 1 !important;
    font-size: 16px;
    box-sizing: border-box;
    align-self: flex-start;
    padding: 0 3.4rem; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.is-vertically-aligned-center {
      align-self: center; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.is-vertically-aligned-bottom {
      align-self: flex-end; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.one_sixth {
      flex-basis: 33.33% !important;
      max-width: 33.33%; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.one_fourth {
      flex-basis: 25% !important;
      max-width: 25%; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.one_third {
      flex-basis: 33.33% !important;
      max-width: 33.33%; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.two_thirds {
      flex-basis: 66.67% !important;
      max-width: 66.67%; }
    .wp-block-columns.force_flex_on_mobile .wp-block-column.half {
      flex-basis: 50% !important;
      max-width: 50%; }
    @media screen and (min-width: 1200px) {
      .wp-block-columns.force_flex_on_mobile .wp-block-column .one_sixth {
        flex-basis: 16.66% !important;
        max-width: 16.66%; } }

::selection {
  background-color: #00c800;
  color: #fff; }

html {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  letter-spacing: -0.1px;
  font-size: 16px;
  line-height: 1.7rem; }
  @media screen and (max-width: 370px) {
    html {
      font-size: 14.4px; } }

body {
  color: #555;
  background: #fff;
  font-style: normal; }
  @media print {
    body {
      font-size: 11pt;
      font-family: arial, helvetica; } }

h1, h2, h1, h3, h4, p, .p, pre, figure, caption, ul, ol, .wp-block-embed__wrapper, .wp-block-buttons, .text-card {
  margin-top: 0;
  margin-bottom: 1.7rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 45rem;
  border: none; }
  h1:first-child, h2:first-child, h1:first-child, h3:first-child, h4:first-child, p:first-child, .p:first-child, pre:first-child, figure:first-child, caption:first-child, ul:first-child, ol:first-child, .wp-block-embed__wrapper:first-child, .wp-block-buttons:first-child, .text-card:first-child {
    margin-top: 0; }

h1, h2, h3 {
  font-family: "Merriweather", cambria, georgia, times;
  font-weight: 700; }

h1 {
  font-size: 1.6rem;
  line-height: 1.59375em !important; }
  @media screen and (min-width: 900px) {
    h1 {
      font-size: 2.4rem;
      line-height: 1.4166666667em !important; } }

h2 {
  margin-top: 3.4rem;
  font-size: 1.4rem;
  line-height: 1.2142857143em !important; }
  @media screen and (min-width: 900px) {
    h2 {
      font-size: 1.9rem;
      line-height: 1.3421052632em !important;
      padding-top: 0.5em; } }

h3 {
  font-size: 1.25rem;
  line-height: 1.36em !important;
  color: #00c800; }

h4 {
  font-size: 0.85rem;
  line-height: 2em !important;
  font-weight: 500;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.06em; }

strong, b {
  font-weight: bold; }

em, i {
  font-style: italic; }

img,
video {
  max-width: 100%;
  height: auto; }

ul, ol {
  padding-left: 1em;
  box-sizing: border-box; }
  ul li, ol li {
    margin: 0 0 0.85rem; }
    ul li:last-child, ol li:last-child {
      margin-bottom: 1.7rem; }

ul {
  list-style-type: disc; }

a, .link {
  color: #00c800;
  background-color: transparent;
  cursor: pointer;
  text-decoration: none;
  outline: 0;
  border: 0;
  padding: 0;
  transition: color 0.15s ease-in, background-color 0.15s ease-in, opacity 0.15s ease-in; }
  main a, main .link {
    text-decoration: underline; }
  a:visited, .link:visited {
    color: #00c800; }
  a:focus, .link:focus {
    color: #00a400; }
  @media (hover: hover) and (pointer: fine) {
    a:hover, .link:hover {
      color: #00a400; } }

form {
  max-width: 45rem;
  margin: 0 auto 1.7rem auto; }

label {
  margin-top: 1.7rem;
  font-size: 0.85rem;
  line-height: 2em !important; }

input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="button"]),
textarea,
select {
  padding: 0.85rem 1rem !important;
  width: 100%;
  max-width: 30rem;
  box-sizing: border-box;
  font-size: 16px !important;
  line-height: 1.7rem !important;
  font-family: "Montserrat", sans-serif !important;
  font-weight: 400 !important;
  color: #000 !important;
  background-color: #ecffec !important;
  border-radius: 8px !important;
  outline: 1px solid #00c800 !important;
  outline-offset: -1px;
  border: 0 !important; }

input[type="text"]:hover, input[type="password"]:hover, input[type="email"]:hover, input[type="tel"]:hover, input[type="url"]:hover, input[type="search"]:hover,
#ws_page.no-touch textarea:hover,
#ws_page.no-touch select:hover,
input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="search"]:focus,
#ws_page.no-touch textarea:focus,
#ws_page.no-touch select:focus {
  outline-color: #00a400 !important;
  outline-width: 2px !important;
  outline-offset: -2px !important; }

input[type="button"], input[type="submit"] {
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.06em;
  border-radius: 8px !important;
  text-decoration: none;
  font-size: 0.85rem !important;
  line-height: 2em !important;
  line-height: 2.125em !important;
  padding: 0.85rem 1.7rem !important;
  display: inline-block !important;
  border: 0 !important;
  color: white !important;
  background: #555;
  font-family: "Montserrat", sans-serif !important;
  font-weight: 400 !important;
  background: #00c800 !important; }
  @media (hover: hover) and (pointer: fine) {
    input[type="button"]:hover,
    input[type="submit"]:hover {
      background: #434343; } }
  @media (hover: hover) and (pointer: fine) {
    input[type="button"]:hover,
    input[type="submit"]:hover {
      background: #00a400 !important; } }
  form input[type="button"],
  form input[type="submit"] {
    margin-top: 1.7rem; }

textarea {
  height: 17rem; }

.aligncenter,
.has-text-align-center {
  text-align: center; }

.is-content-justification-center {
  justify-content: center; }

p.has-small-font-size {
  font-size: 0.85rem;
  line-height: 2em !important; }

a.wp-block-button__link {
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.06em;
  border-radius: 8px !important;
  text-decoration: none;
  font-size: 0.85rem !important;
  line-height: 2em !important;
  line-height: 2.125em !important;
  padding: 0.85rem 1.7rem !important;
  display: inline-block !important;
  border: 0 !important;
  color: white !important;
  background: #555; }
  @media (hover: hover) and (pointer: fine) {
    a.wp-block-button__link:hover {
      background: #434343; } }
  .is-style-primary a.wp-block-button__link {
    background: #00c800; }
    @media (hover: hover) and (pointer: fine) {
      .is-style-primary a.wp-block-button__link:hover {
        background: #00a400; } }

.wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  margin: -0.85rem 0 0.85rem; }
  .wp-block-buttons.is-content-justification-center {
    margin-left: auto;
    margin-right: auto; }
  .wp-block-buttons .wp-block-button {
    margin: 0.85rem 0.5rem; }
    .wp-block-buttons .wp-block-button:first-child {
      margin-left: 0; }
    .wp-block-buttons .wp-block-button:last-child {
      margin-right: 0; }

ul.is-style-with_ticks {
  list-style-type: none;
  padding: 0px; }
  ul.is-style-with_ticks li {
    position: relative;
    padding-left: 2rem; }
    ul.is-style-with_ticks li::before {
      position: absolute;
      left: 0;
      content: '\002713';
      margin-right: 0.5rem;
      color: #00c800;
      font-family: "Merriweather", cambria, georgia, times;
      font-size: 1.3em;
      font-weight: bold; }

.wp-block-image.is-style-case_image {
  max-width: 32rem;
  margin-left: 0; }

pre.wp-block-verse {
  overflow: auto;
  white-space: pre-wrap;
  font-style: oblique;
  color: #000; }

blockquote.wp-block-quote {
  margin: 3.4rem auto; }
  blockquote.wp-block-quote p, blockquote.wp-block-quote cite {
    max-width: 37rem; }
  blockquote.wp-block-quote p {
    font-family: "Merriweather", cambria, georgia, times;
    font-size: 1.25rem;
    line-height: 1.36em !important;
    color: #00c800; }
  blockquote.wp-block-quote cite {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.06em;
    font-size: 0.85rem;
    line-height: 2em !important; }

.ingressi, .is-style-ingressi {
  font-size: 1.25rem;
  line-height: 1.36em !important;
  font-weight: 500; }

.wp-block-media-text {
  margin: 0 -0.85rem; }
  @media screen and (min-width: 900px) {
    .wp-block-media-text {
      margin-left: 0;
      margin-right: 0; } }
  @media screen and (max-width: 1200px) {
    .wp-block-media-text.is-style-banner {
      margin-left: -0.85rem;
      margin-right: -0.85rem; } }
  @media screen and (max-width: 1200px) and (min-width: 900px) {
    .wp-block-media-text.is-style-banner {
      margin-left: 0px;
      margin-right: 0px; } }
  @media screen and (max-width: 1200px) {
      .wp-block-media-text.is-style-banner:first-child {
        margin-top: -3.4rem; } }
  .wp-block-media-text.is-style-banner .wp-block-media-text__content {
    margin-bottom: 0; }
    @media screen and (min-width: 900px) {
      .wp-block-media-text.is-style-banner .wp-block-media-text__content {
        max-width: 60%;
        margin-left: auto;
        margin-right: auto;
        transform: translateY(-6.8rem);
        margin-bottom: -3.4rem; } }
  @media screen and (min-width: 900px) {
    .wp-block-media-text.is-style-overlay_right {
      display: flex;
      align-items: center; }
      .wp-block-media-text.is-style-overlay_right figure {
        flex-basis: 50%; }
      .wp-block-media-text.is-style-overlay_right .wp-block-media-text__content {
        transform: translateY(0);
        width: calc(50% + 4 * 1.7rem);
        margin-left: -6.8rem;
        margin-bottom: 0;
        padding-left: 3.4rem;
        padding-right: 3.4rem;
        margin-right: 0;
        text-align: left; } }
  .wp-block-media-text figure {
    max-width: 100%;
    border: 0;
    margin: 0; }
    .wp-block-media-text figure img {
      width: 100%; }
  .wp-block-media-text .wp-block-media-text__content {
    border-radius: 8px;
    transform: translateY(-3.4rem);
    margin-bottom: -3.4rem;
    margin-left: 0.85rem;
    margin-right: 0.85rem;
    padding-top: 3.4rem;
    padding-bottom: 1.7rem;
    padding-left: 10px;
    padding-right: 10px;
    border-right: 8px solid #00c800;
    box-sizing: border-box;
    background: #f4f4f4;
    text-align: center;
    font-family: "Merriweather", cambria, georgia, times;
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.36em !important; }
    @media screen and (min-width: 900px) {
      .wp-block-media-text .wp-block-media-text__content {
        transform: translateY(-6.8rem);
        margin-bottom: -6.8rem;
        margin-left: 1.7rem;
        margin-right: 1.7rem;
        padding-left: 1.7rem;
        padding-right: 1.7rem; } }

.wp-block-communike-cover {
  margin: 3.4rem -0.85rem; }
  @media screen and (min-width: 900px) {
    .wp-block-communike-cover {
      margin-left: 0;
      margin-right: 0; } }
  .wp-block-communike-cover a.img-wrapper {
    display: block;
    position: relative;
    padding: 30%;
    overflow: hidden; }
    .wp-block-communike-cover a.img-wrapper img {
      position: absolute;
      width: 100%;
      left: 0;
      right: 0;
      bottom: 0; }
  .wp-block-communike-cover .title_and_intro {
    border-radius: 8px;
    transform: translateY(-3.4rem);
    margin-bottom: -3.4rem;
    margin-left: 0.85rem;
    margin-right: 0.85rem;
    padding-top: 3.4rem;
    padding-bottom: 1.7rem;
    padding-left: 10px;
    padding-right: 10px;
    border-right: 8px solid #00c800;
    box-sizing: border-box;
    background: #f4f4f4;
    padding-top: 3.4rem; }
    @media screen and (min-width: 900px) {
      .wp-block-communike-cover .title_and_intro {
        transform: translateY(-6.8rem);
        margin-bottom: -6.8rem;
        margin-left: 1.7rem;
        margin-right: 1.7rem;
        padding-left: 1.7rem;
        padding-right: 1.7rem; } }
    .wp-block-communike-cover .title_and_intro > * {
      max-width: 45rem;
      margin-left: auto;
      margin-right: auto; }
    .wp-block-communike-cover .title_and_intro h4 {
      margin-bottom: 0; }
    .wp-block-communike-cover .title_and_intro h3 {
      margin-top: 0;
      color: #555; }
    .wp-block-communike-cover .title_and_intro a:not(.wp-block-button__link), .wp-block-communike-cover .title_and_intro a h2 {
      color: #555;
      text-decoration: none; }
      @media (hover: hover) and (pointer: fine) {
        .wp-block-communike-cover .title_and_intro a:not(.wp-block-button__link):hover, .wp-block-communike-cover .title_and_intro a h2:hover {
          color: #00a400; } }

.wp-block-communike-highlight-box {
  padding: 1.7rem;
  margin-bottom: 1.7rem;
  background: #ecffec;
  border-radius: 8px;
  text-align: center; }
  .wp-block-communike-highlight-box h3 {
    margin-top: 1.7rem;
    color: #555; }
    .wp-block-communike-highlight-box h3::after {
      content: '';
      display: block;
      width: 4rem;
      height: 1.7rem;
      margin-bottom: 1.7rem;
      border-bottom: 3px solid #00c800;
      box-sizing: border-box;
      margin-left: auto;
      margin-right: auto; }

.wp-block-group.is-style-accordion > .wp-block-group__inner-container > h3 {
  border-bottom: 3px solid;
  cursor: pointer; }
  .wp-block-group.is-style-accordion > .wp-block-group__inner-container > h3::before {
    content: '+ ';
    font-size: 1.3em; }
.wp-block-group.is-style-accordion > .wp-block-group__inner-container > div {
  max-height: 0;
  will-change: height;
  transition: max-height 0.25s ease-in;
  overflow: hidden; }
.wp-block-group.is-style-accordion.opened > .wp-block-group__inner-container > h3 {
  border-bottom: 0; }
  .wp-block-group.is-style-accordion.opened > .wp-block-group__inner-container > h3::before {
    content: '- '; }
.wp-block-group.is-style-accordion.opened > .wp-block-group__inner-container > div {
  max-height: 500px; }

article.post header {
  text-align: center; }
  article.post header::after {
    content: '';
    display: block;
    width: 8rem;
    height: 1.7rem;
    margin-bottom: 1.7rem;
    border-bottom: 3px solid #00c800;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto; }
article.post .ingressi, article.post .is-style-ingressi {
  text-align: center; }

.post_index {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.7rem;
  box-sizing: border-box; }
  .post_index h1 {
    text-align: center; }
  .post_index .article_list {
    align-items: stretch;
    margin: 0 -1.7rem; }
    .post_index .article_list article.article_cover {
      margin: 1.7rem;
      display: flex;
      flex-direction: column;
      box-sizing: border-box;
      padding: 1.7rem;
      margin-bottom: 1.7rem;
      background: #ecffec;
      border-radius: 8px;
      padding-bottom: 0; }
      @media screen and (min-width: 900px) {
        .post_index .article_list article.article_cover {
          max-width: calc(33.3333333333% - 1rem);
          flex-basis: calc(33.3333333333% - 1rem);
          margin: 1.7rem 0.5rem; } }
      .post_index .article_list article.article_cover > * {
        margin-left: 0; }
      .post_index .article_list article.article_cover a:not(.wp-block-button__link), .post_index .article_list article.article_cover a h3 {
        color: #555;
        text-decoration: none; }
        @media (hover: hover) and (pointer: fine) {
          .post_index .article_list article.article_cover a:not(.wp-block-button__link):hover, .post_index .article_list article.article_cover a h3:hover {
            color: #00a400; } }
      .post_index .article_list article.article_cover h3 {
        margin-top: 1.7rem; }
      .post_index .article_list article.article_cover .date::after {
        content: '';
        display: block;
        width: 4rem;
        height: 1.7rem;
        margin-bottom: 1.7rem;
        border-bottom: 3px solid #00c800;
        box-sizing: border-box; }
      .post_index .article_list article.article_cover .excerpt {
        flex-grow: 1; }

.nf-form-fields-required {
  display: none; }

.nf-form-hp {
  display: none; }

.nf-field {
  margin-bottom: 0.85rem; }
  .nf-field input[type="button"] {
    margin-top: 0.85rem; }
  .nf-field .checkbox-wrap {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: flex-end; }
