:root {
    --font-family-serif: 'Merriweather', serif;
    --font-family-sans-serif: 'Cairo', -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body {
    font-size: 1rem;
    font-weight: 300;
    font-family: 'Merriweather', 'Georgia', serif;
    font-style: normal;
}

a {
    color: #64A8B5;
}

a:hover {
    color: #67BDCD;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: 'Cairo', -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
    line-height: 1.2;
}

h1, h2, h3, h4, h5, h6 {
    hyphens: none;
}

h3,
.h3 {
    font-size: 1.75rem;
    font-style: normal;
    font-family: 'Merriweather', Georgia, serif;
    font-weight: 400;
}

h4, .h4 {
    font-size: 1rem;
    font-weight: 700;
}

.text-light {
    color: #f8f9fa !important;
}

.btn {
    cursor: pointer;
}

.btn:active,
.btn.active {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(254, 209, 54, 0.25);
}

.text-primary {
    color: #64A8B5 !important;
}

.btn-primary {
    color: #fff;
    background-color: #64A8B5;
    border-color: #64A8B5;
}

.btn-primary:hover {
    color: #fff;
    background-color: #67BDCD;
    border-color: #67BDCD;
}

.btn-primary:focus,
.btn-primary.focus {
    color: #fff;
    background-color: #67BDCD;
    border-color: #67BDCD;
    box-shadow: 0 0 0 0.2rem rgba(100, 168, 181, 0.5);
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #67BDCD;
    border-color: #64A8B5;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
    /* box-shadow: 0 0 0 0.2rem rgba(100, 168, 181, 0.5); */
    box-shadow: none;
}

.btn-outline-primary {
    color: #64A8B5;
    border-color: #64A8B5;
    background-color: #FFFFFF;
}

.btn-outline-primary:hover {
    color: #64A8B5;
    border-color: #64A8B5;
    background-color: #FFFFFF;
}

.btn-primary:hover {
    color: #fff;
    background-color: #67BDCD;
    border-color: #64A8B5;
}

.btn-primary:active {
    color: #fff;
    background-color: #67BDCD;
    border-color: #64A8B5;
}

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: rgba(100, 168, 181, 0.5);
    border-color: #67BDCD;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
    /* box-shadow: 0 0 0 0.2rem rgba(100, 168, 181, 0.5); */
    box-shadow: none;
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
    /* box-shadow: 0 0 0 0.2rem rgba(100, 168, 181, 0.5); */
    box-shadow: none;
}

.page-section h3.section-subheading {
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.5;
    font-family: 'Merriweather', Georgia, serif;
    font-style: normal;
}

::selection {
    background: #64A8B5;
}

#mainNav .navbar-toggler {
    background-color: #64A8B5;
}

#mainNav .navbar-brand {
    color: #64A8B5;
}

#mainNav .navbar-nav .nav-item .nav-link.active,
#mainNav .navbar-nav .nav-item .nav-link:hover {
    color: #64A8B5;
}

header.masthead .masthead-subheading {
    font-size: 1.0rem;
    font-style: normal;
    font-family: 'Merriweather', Georgia, serif;
}

header.masthead .masthead-heading {
    font-family: 'Cairo', -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

@media (min-width: 768px) {
    header.masthead .masthead-subheading {
        font-size: 1.5rem;
    }

    header.masthead .masthead-heading {
        margin-bottom: 2rem;
    }
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover {
    background: rgba(100, 168, 181, 0.9);
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover {
    background: rgba(100, 168, 181, 0.9);
}

#portfolio .portfolio-item .portfolio-caption .portfolio-caption-subheading {
    /* font-style: italic */
    /* font-family: "Droid Serif", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" */
    /* font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; */
    font-style: normal;
    font-family: inherit;
}

#portfolio .portfolio-item .portfolio-caption .portfolio-caption-heading {
    font-size: 1.5rem;
    font-family: 'Cairo', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
    margin-bottom: 0;
    font-style: normal;
}

#portfolio .portfolio-item.disable:after {
    background: rgba(255, 255, 255, .50);
    position: absolute;
    height: 100%;
    width: 100%;
    content: '';
    z-index: 5;

    /* Make sure this value is higher than the z-index of the  .form class */
    top: 0;
    left: 0;
}

.portfolio-modal .modal-content {
    padding-top: 6rem;
    padding-bottom: 6rem;
    text-align: left;
}

.portfolio-modal .modal-content .modal-body h2 {
    text-align: center;
    hyphens: auto;
    -webkit-hyphens: auto;
}

.portfolio-modal .modal-content p {
    margin-bottom: 1rem;
}

.portfolio-modal .modal-content li {
    margin-bottom: .5rem;
}

.portfolio-modal .modal-content .modal-body p.item-intro {
    font-style: normal;
    margin-bottom: 2rem;
    text-align: center;
    font-family: inherit;
}

.portfolio-modal .modal-content .modal-body h3 {
    font-size: 1.25rem;
    margin-top: 1rem;
    line-height: inherit;
    font-weight: 700;
    color: #64A8B5;
    font-family: 'Cairo', -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

.portfolio-modal .modal-content .btn.btn-primary {
    text-transform: uppercase;
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
}

.portfolio-modal .modal-content .snapshot {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

.portfolio-modal .modal-content .snapshot h6 {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
}

.portfolio-modal .modal-content .box {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    padding: 1rem;
    border: 3px;
    background: #efefef;
}

.portfolio-modal .modal-content .box h4 {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

section#contact {
    background-image: none;
}

section#contact form#contactForm .form-control {
    /* font-family: 'Merriweather', Georgia, serif; */
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

section#contact form#contactForm ::-webkit-input-placeholder {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    color: #999999;
}

section#contact form#contactForm :-moz-placeholder {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

section#contact form#contactForm ::-moz-placeholder {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

section#contact form#contactForm :-ms-input-placeholder {
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

section#contact form#contactForm .help-block.text-danger ul {
    list-style-type: none;
    padding-left: 0px;
}

section#contact form#contactForm .help-block.text-danger li {
    color: #fed136;
}

.footer {
    font-size: 0.9rem;
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
}

@media (max-width: 991px) {
    .burger {
        cursor: pointer;
        padding: 18px 0;
        position: fixed;
        right: 1rem;
        top: 1rem;
        z-index: 1000000;
    }

    .burger .slice {
        display: block;
        position: relative;
    }

    .burger .slice,
    .burger .slice:after,
    .burger .slice:before {
        background: #FFFFFF;
        height: 2px;
        -webkit-transition: -webkit-transform .25s ease-in-out;
        transition: -webkit-transform .25s ease-in-out;
        transition: transform .25s ease-in-out;
        transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out;
        width: 24px;
    }

    .burger .slice:after,
    .burger .slice:before {
        content: "";
        position: absolute;
    }

    .burger .slice:before {
        top: -8px;
    }

    .burger .slice:after {
        top: 8px;
    }

    .burger.is-active .slice,
    .burger.is-active .slice:after,
    .burger.is-active .slice:before {
        background: #ffffff;
    }

    .burger.is-active .slice {
        background: transparent;
        -webkit-transition: -webkit-transform .25s ease-in-out;
        transition: -webkit-transform .25s ease-in-out;
        transition: transform .25s ease-in-out;
        transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out;
    }

    .burger.is-active .slice:before {
        -webkit-transform: rotate(45deg) translate(5px, 6px);
        transform: rotate(45deg) translate(5px, 6px);
    }

    .burger.is-active .slice:after {
        -webkit-transform: rotate(-45deg) translate(5px, -6px);
        transform: rotate(-45deg) translate(5px, -6px);
    }
}

@media (min-width: 992px) {
    .social {
        text-align: right !important;
    }
}


.fadein {
    opacity: 0;
    transition: 1s opacity;
  }

/* Temp */
.cs-msg {
    margin-top: -1.5em;
}

.corner {
    height: 1.5em;
    background-color: #64A8B5;
    position: relative;
    z-index: 10;
    padding: 0 .5em;
    color: white;
    text-transform: uppercase;
    font-family: 'Montserrat', -apple-system, "Segoe", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
    display: inline-block;
}

.corner:after,
.corner:before {
    content: "";
    position: absolute;
    left: 100%;
    width: .75em;
    height: 50%;
}

.corner:before {
    top: 0px;
    background: linear-gradient(to top right, #64A8B5 50%, transparent 51%);
}

.corner:after {
    bottom: 0px;
    background: linear-gradient(to bottom right, #64A8B5 50%, transparent 51%);
}

.w-80 {
    width: 80%;
}