/*  -------------------------
    VARIABLES */


/* ALLOVER */

:root {
    /* colors*/
    --my-green: #5ebb46;
    --my-green-hover: #428431;
    --gray: #D3D3D3;
    --gray-dark: #757575;
    /* margins*/
    --block-border-radius: 5px;
}


/* MOBILE ONLY */

@media only screen and (max-width: 600px) {
     :root {
        --size-h1: large;
        --size-h2: medium;
        --size-h3: medium;
        --size-h4: medium;
        --outer-margin: 2%;
        --block-vertical-padding: 5px;
        --block-horizontal-padding: 5%;
    }
}


/* ABOVE MOBILE */

@media only screen and (min-width: 601px) {
     :root {
        --size-h1: x-large;
        --size-h2: large;
        --size-h3: x-large;
        --size-h4: large;
        --outer-margin: 10%;
        --block-vertical-padding: 10px;
        --block-horizontal-padding: 10%;
    }
}


/* LAYOUT */

body {
    font-family: 'Montserrat', "DejaVu Sans", Verdana, Sans‑Serif;
}

html {
    scroll-behavior: smooth;
}

.container {
    width: 100% !important;
    padding-top: 70px !important;
    max-width: none !important;
}


/* ELEMENTS */

.sticky-header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 99;
}

.sticky-header-image {
    height: 60px;
    padding-left: 20px;
}

.nav-wrapper {
    background-color: white;
}

nav ul a {
    color: black;
}

.nav-button {
    background-color: var(--my-green) !important;
    border-radius: 3px !important;
    border: 1px solid #FFF !important;
}

.nav-button:hover {
    background-color: var(--my-green-hover);
}

.btn-floating {
    margin-top: 20px;
    margin-bottom: 20px;
}

.btn.waves-effect {
    height: auto;
    min-height: 20px;
    line-height: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
}

blockquote {
    border-left: transparent !important;
    padding-left: none !important;
}

.blob {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
    transform: scale(1);
    animation: pulse 2s infinite;
}

.usp-icon {
    display: inline-block;
    border-radius: 2.5rem;
    border: 3px solid var(--my-green) !important;
    box-shadow: 0px 0px 0.5rem var(--my-green);
    padding: 1rem;
    font-size: 2.5rem;
    color: var(--my-green);
}

.fab-icon {
    display: inline-block;
    font-size: 24px;
    color: black !important;
}

.portrait {
    top: 0;
    bottom: 0;
    margin: auto;
    height: 70px;
    width: 70px;
    overflow: hidden;
}

.portrait img {
    height: auto;
    width: 100%;
}


/* BLOCK STYLE */


/* REMOVE Padding on main-header-if needed
.main-header-column {
    padding-left: 0px !important;
    padding-right: 0px !important;
}
*/

.block-gray {
    background-color: var(--gray);
    border-radius: var(--block-border-radius);
    margin-left: var(--outer-margin) !important;
    margin-right: var(--outer-margin) !important;
    margin-bottom: 10px;
    padding-top: var(--block-vertical-padding);
    padding-bottom: var(--block-vertical-padding);
}

.block-white {
    background-color: white;
    border-radius: var(--block-border-radius);
    z-index: 2;
    padding: 10px;
}

.testimonial-container {
    margin: auto;
    padding-left: var(--block-horizontal-padding);
    padding-right: var(--block-horizontal-padding);
    padding-top: var(--block-vertical-padding);
    padding-bottom: var(--block-vertical-padding);
    background: linear-gradient(130deg, var(--my-green), white);
    background-size: 400% 400%;
    -webkit-animation: gradient 16s ease infinite;
    -moz-animation: gradient 16s ease infinite;
    animation: gradient 16s ease infinite;
}

.footer {
    background: var(--gray-dark);
    margin-bottom: 0px !important;
    padding: 20px 20px 60px 20px;
    color: white;
}

.footer-item {
    margin-bottom: 20px;
}

@media only screen and (max-width: 600px) {
    .main-header {
        margin-top: 10px;
        margin-left: var(--outer-margin) !important;
        margin-right: var(--outer-margin) !important;
    }
    .header-image {
        height: 150px;
        margin-bottom: 10px;
    }
    .flex-box-container {
        text-align: center !important;
    }
    .flex-box-text {
        text-align: center !important;
    }
}

@media only screen and (min-width: 601px) {
    .main-header {
        margin-top: 10px !important;
        margin-bottom: 10vh !important;
        margin-left: var(--outer-margin) !important;
        margin-right: var(--outer-margin) !important;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .flex-box-container {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .flex-box-text {
        text-align: left !important;
    }
}


/* FONT STYLE */

h1 {
    font-size: var(--size-h1) !important;
    font-weight: 700 !important;
    margin: 10px 10px 20px 10px !important;
}

h2 {
    font-size: var(--size-h2) !important;
    font-weight: 500 !important;
    margin: 10px !important;
}

h3 {
    font-size: var(--size-h3) !important;
    font-weight: 700 !important;
}

h4 {
    font-size: var(--size-h4) !important;
    font-weight: 500 !important;
}

cite span {
    font-style: italic;
}

.inset-text {
    padding-left: 10px;
}


/* ANIMATIONS */


/*https://codepen.io/hellokatili/pen/rVvMZb*/

@-webkit-keyframes gradient {
    0% {
        background-position: 5% 0%;
    }
    50% {
        background-position: 96% 100%;
    }
    100% {
        background-position: 5% 0%;
    }
}

@-moz-keyframes gradient {
    0% {
        background-position: 5% 0%;
    }
    50% {
        background-position: 96% 100%;
    }
    100% {
        background-position: 5% 0%;
    }
}

@keyframes gradient {
    0% {
        background-position: 5% 0%;
    }
    50% {
        background-position: 96% 100%;
    }
    100% {
        background-position: 5% 0%;
    }
}


/* PULSATING BUTTON by https://www.florin-pop.com/blog/2019/03/css-pulse-effect/ */

@keyframes pulse {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    }
}