/*!
 * Start Bootstrap - Business Casual Bootstrap Theme (http://startbootstrap.com)
 * Code licensed under the Apache License v2.0.
 * For details, see http://www.apache.org/licenses/LICENSE-2.0.
 */

body {
    /*font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;*/
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background: linear-gradient(180deg, whitesmoke 0%, aliceblue 70%);
    background-blend-mode: lighten;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    /*font-family: "Josefin Slab","Helvetica Neue",Helvetica,Arial,sans-serif;*/
    /*font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;*/
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
}

h2 {
    color: red;
}

h3 {
    color: blue;
}

h4 {
    color: slategrey;
}

h5 {
    color: navy;
}

p {
    margin-left: 1.2rem;
    font-size: 1.1em;
    line-height: 1.6;
    color: #000;
}

hr {
    border-color: #999999;
}

.sticky-header {
    height:4.5rem;
    background-color: whitesmoke;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    z-index: 1030; /* Ensure it stays above other elements */
}

.header-logo {
    height: 75px;
    width: auto;
}

.brand,
.address-bar {
    display: none;
}

.navbar-brand {
    font-weight: 900;
    letter-spacing: 2px;
}

.navbar-nav {
    font-weight: 400;
    letter-spacing: 3px;
}

.img-full {
    min-width: 100%;
}

.brand-before {
    margin: 15px 0;
}

.brand-name {
    margin: 0;
    font-size: 4em;
}

.tagline-divider {
    margin: 15px auto 3px;
    max-width: 250px;
    border-color: #999999;
}

.box {
    /*margin-bottom: 1rem;*/
    padding: 2rem 2rem;
    background: #fff;
    /*background: rgba(240, 240, 244,0.8);*/
    /*background: ghostwhite;*/
    height: calc(100dvh - 6.9rem) !important;
    overflow-y: auto;
    border-radius:2px;
}

/*.tab-content {
    height: calc(100dvh - 9.0rem) !important;
    background-color: mistyrose;
}*/

.intro-text {
    font-size: 1.25em;
    font-weight: 400;
    letter-spacing: 1px;
}

.img-border {
    float: none;
    margin: 0 auto 0;
    border: #999999 solid 1px;
}

.img-left {
    float: none;
    margin: 0 auto 0;
}

footer {
    background-color:aliceblue;
}

    footer .copyright {
        margin: 0;
        padding: 20px 0;
    }

ul.icons {
    padding: 20px 0;
    list-style: none;
}

    ul.icons li {
        display: inline-block;
        padding: 0 1.25em 0 0;
        font-size: 1.75em;
    }

        ul.icons li a {
            text-decoration: none;
        }

/*
.flex-wrap { display: flex; }
.flex-wrap > * {
    box-sizing: border-box;
    width: 25%; padding: 10px;
  }
*/

figure {
    border: 1px #cccccc solid;
    padding: 4px;
    margin: auto;
}

    figure img {
        width: 100%;
        height: auto;
        border-radius: 60%;
    }

figcaption {
    color: navy;
    font-weight: bold;
    padding: 2px;
    text-align: center;
}

/* Button used to open the contact form - fixed at the bottom of the page */
.open-button {
    background-color: navy;
    color: white;
    padding: 12px 8px;
    border-radius: 12px;
    border: none;
    cursor: pointer;
    opacity: 0.8;
    position: fixed;
    bottom: 53px;
    right: 28px;
    width: 180px;
}

/* The popup form - hidden by default */
.form-popup {
    display: none;
    position: fixed;
    bottom: 0;
    right: 15px;
    border: 3px solid #f1f1f1;
    z-index: 9;
}

/* Add styles to the form container */
.form-container {
    max-width: 300px;
    padding: 10px;
    background-color: white;
}

    /* Full-width input fields */
    .form-container input[type=text], .form-container input[type=email], .form-container input[type=tel] {
        width: 100%;
        padding: 15px;
        margin: 5px 0 22px 0;
        border: none;
        background: #f1f1f1;
    }

        /* When the inputs get focus, do something */
        .form-container input[type=text]:focus, .form-container input[type=password]:focus {
            background-color: #ddd;
            outline: none;
        }

    /* Set a style for the submit/login button */
    .form-container .btn {
        background-color: #4CAF50;
        color: white;
        padding: 6px 8px;
        border: none;
        cursor: pointer;
        width: 35%;
        margin-bottom: 10px;
        opacity: 0.8;
    }

    /* Add a red background color to the cancel button */
    .form-container .cancel {
        background-color: red;
    }

    /* Add some hover effects to buttons */
    .form-container .btn:hover, .open-button:hover {
        opacity: 1;
    }



@media screen and (min-width:768px) {
    .brand {
        display: inherit;
        margin: 0;
        padding: 30px 0 10px;
        text-align: center;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
        font-family: "Josefin Slab","Helvetica Neue",Helvetica,Arial,sans-serif;
        font-size: 5em;
        font-weight: 700;
        line-height: normal;
        color: navy;
    }

    .top-divider {
        margin-top: 0;
    }

    .img-left {
        float: left;
        margin-right: 25px;
    }

    .address-bar {
        display: inherit;
        margin: 0;
        padding: 0 0 40px;
        text-align: center;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
        /*font-size: 1.20em;*/
        font-weight: 400;
        letter-spacing: 3px;
        color: maroon;
    }

    .navbar {
        border-radius: 0;
    }

    .navbar-header {
        display: none;
    }

    .navbar {
        min-height: 0;
    }

    .navbar-default {
        border: none;
        background: #fff;
        background: rgba(255,255,255,0.9);
    }

    .nav > li > a {
        padding: 35px;
    }

    .navbar-nav > li > a {
        line-height: normal;
    }

    .navbar-nav {
        display: table;
        float: none;
        margin: 0 auto;
        table-layout: fixed;
        font-size: 1.25em;
    }
}

@media screen and (min-width:1200px) {
    .box:after {
        content: '';
        display: table;
        clear: both;
    }
}
