body {
    margin: 0;
    padding: 0;
    font-family: "futura-pt", sans-serif;
}

/* Mobile Font */
@media only screen and (max-width: 768px) {
    h1 { font-size: 40; }
    h2 { font-size: 34; }
    h3 { font-size: 26; }
    h4 { font-size: 22; }
    p  { font-size: 16; }
    .short-text { font-size: 14; }
    .intro-text { font-size: 20; }
}

/* Desktop Font */
@media only screen and (min-width: 769px) {
    h1 { font-size: 60; }
    h2 { font-size: 50; }
    h3 { font-size: 36; }
    h4 { font-size: 28; }
    p  { font-size: 18; }
    .short-text { font-size: 16; }
    .intro-text { font-size: 22; }
}

h1 { font-weight: 500; margin-left: 20px; margin-right: 20px; }
h2 { font-weight: 500; margin-left: 20px; margin-right: 20px; }
h3 { font-weight: 500; margin: 10px 20px 10px 20px; }
h4 { font-weight: 500; margin: 10px 20px 10px 20px; }
p { font-weight: 200; margin-left: 20px; margin-right: 20px; }
.short-text { font-weight: 200; margin-left: 20px; margin-right: 20px; }
.intro-text { font-weight: 200; margin-left: 20px; margin-right: 20px; }

p { line-height: 1.5; }

@media only screen and (max-width: 768px) {
    .desktopOnly {
        display: none !important;
    }

    .centerOnMobileOnly {
        text-align: center;
    }
}

@media only screen and (min-width: 769px) {
    .mobileOnly {
        display: none !important;
    }
}


* {
    box-sizing: border-box;
}

.row::after {
    content: "";
    clear: both;
    display: table;
}

[class*="col-"] {
    float: left;
    padding: 15px;
}

/* For mobile phones: */
/*[class*="col-"] {
    width: 100%;
}*/

/* For tablets and mobile phones: */
@media only screen and (max-width: 768px) {
    .col-m-1 {width: 8.33%;}
    .col-m-2 {width: 16.66%;}
    .col-m-3 {width: 25%;}
    .col-m-4 {width: 33.33%;}
    .col-m-5 {width: 41.66%;}
    .col-m-6 {width: 50%;}
    .col-m-7 {width: 58.33%;}
    .col-m-8 {width: 66.66%;}
    .col-m-9 {width: 75%;}
    .col-m-10 {width: 83.33%;}
    .col-m-11 {width: 91.66%;}
    .col-m-12 {width: 100%;}
}

/* For desktop: */
@media only screen and (min-width: 769px) {
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

.header {
    z-index: 100;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #FFFFFF;
    text-align: center;
    padding-top: 9px;
    padding-bottom: 9px;
    padding-right: 20px;
}

.footer {
    z-index: 100;
    width: 100%;
    height: 69px;
    background-color: #013220;
    color: #FFFFFF;
    text-align: center;
}

/* Fixed footer only on desktop */
@media only screen and (min-width: 768px) {
    .footerFixed {
        position: fixed;
        bottom: 0;
    }

    .contentWrapperFixedFooter {
        margin-bottom: 69px;
    }
}

.footer p {
    line-height: 69px;
    margin-top: 0;
}

.logo {
    height: 55px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/* Style the links inside the navigation bar */
.header .headerLink {
    float: right;
    /*display: block;*/
    color: #FFA700;
    padding: 14px 26px;
    text-decoration: none;
    font-size: 17px;
    line-height: 22px;
    width: 100px;
    transition: font 0.15s ease-in-out
}

/* Change the color of links on hover */
.header .headerLink:hover {
    font-size: 19px;
}

/* Hide the link that should open and close the topnav on small screens */
.header .icon {
    display: none;
    width: unset;
    padding-right: 18px;
}

/* When the screen is less than 600 pixels wide, hide all links, except for the first one ("Home"). Show the link that contains should open and close the topnav (.icon) */
@media screen and (max-width: 600px) {
    .header a:not(:first-child) {display: none;}
    .header a.icon {
        float: right;
        display: block;
    }
}

.menu {
    z-index: 100;
    position: fixed;
    top: 68px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #008744;

    max-height: 0;
    overflow-y: hidden;

    transition-property: all;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(0, 1, 0.5, 1);
   /* display: none;
    opacity: 0;
    transition: opacity 2s linear;*/
}

.menuVisible {
    /*display: block;
    opacity: 1;
    
    transition: opacity 2s linear;*/
    max-height: 100%;
}

.menu a {
    color: #FFFFFF;
}

.menu h1 {
    padding-top: 15%;
    padding-bottom: 15%;
    margin-top: 15%;
    margin-bottom: 15%;
}

.menu > canvas {
    margin: 0 0 0 0;
    height: calc(100vh - 69px);
    width: 100%;
    opacity: 0.2;
}

.menuOverlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
}

.contentWrapper {
    margin-top: 68px;
    width: 100%;
}

.rowWidthRestricted {
    margin: auto;   /* Center-align horizontally */
    width: 100%;
    max-width: 1300px;
}

.rowWidthRestrictedNarrow {
    margin: auto;   /* Center-align horizontally */
    width: 100%;
    max-width: 700px;
}

.rowWidthRestrictedMedium {
    margin: auto;   /* Center-align horizontally */
    width: 100%;
    max-width: 1000px;
}

.buttonPrimary {
    border-radius: 10px;
    background-color: #008744;
    border: 1px solid #008744;
    color: white;
    padding: 10px 55px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 24px;
    margin: 20px;
    transition: all 0.5s;
}

.buttonPrimary:hover {
    background-color: #FFFFFF;
    color: #008744;
}

.buttonSecondary {
    border: 1px solid #008744;
    border-radius: 10px;
    background-color: #FFFFFF;
    color: 008744;
    padding: 8px 40px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 18px;
    margin: 20px;
    transition: all 0.5s;
}

.buttonSecondary:hover {
    background-color: #008744;
    color: #FFFFFF;
}

.buttonCircular {
    border: 1px solid #008744;
    border-radius: 40px;
    padding: 10px;
    width: 40px;
    height: 40px;
    background-color: #FFFFFF;
    color: 008744;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 18px;
    margin-right: 15px;
    transition: all 0.5s;
}

.buttonCircular:hover {
    background-color: #008744;
    color: #FFFFFF;
}

/* Mobile Buttons */
@media only screen and (max-width : 600px) {
    .buttonPrimary { width: 80%; }
    .buttonSecondary { width: 80%; }
}

a {
    font-size: 20px;
    color: #008744;
    text-decoration: none;
}

.anchor {
    /* offset fixed header */
    padding-top: 68px;
    margin-top: -68px;
}

.imgContainer {
    display: block;
}

.imgContainer > img {
    max-width: 100%;
    max-height: 100%;
    padding: 10px;
}

.imgContainerNoPadding > img {
    padding: 0;
}

.imgContainerAlignRight {
    text-align: right;
}

.imgContainerAlignLeft {
    text-align: left;
}

.imgContainerAlignCenter {
    text-align: center;
}

/* Mobile Buttons */
@media only screen and (max-width : 768px) {
    .imgContainerSmallForMobile > img {
        max-height: 10vh;
    }
}

/* https://stackoverflow.com/a/7310398 */
.verticalCenterAlignHelper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

ul  {
   padding-left: 0;
}

ul li {
   list-style-position: inside;
}

.listNoBullet {
    padding-left: 20px;
    list-style: none;
}