﻿/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Common
# Structure
    ## Header
    ## Carousel
    ## Footer
# Normalize
    ## General Usage
    ## Bootstrap over-ride classes
# Page specific styles
    ## Index
    ## Contact etc.
# Media
    ## Logos/Icons
# Google Maps
# Backend Styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------------------------
    # Common
---------------------------------------------------------------------------------*/
body {
    font-family: "Helvetica Neue", "Segoe UI", Segoe, Helvetica, Arial, "Lucida Grande", sans-serif;
    background-color: #efefef;
    padding-top: 80px;
}

.standard-text {
    color: #333 !important;
}

p {
    margin: 0 0 10px;
}

a {
    color: #3282e6;
    text-decoration: none;
}

.kce-center-container {
    display: inline-block;
}

.kce-center {
    vertical-align: middle;
}

.kce-margin-top-sm {
    margin-top: 15px;
}

.kce-margin-bottom-sm {
    margin-bottom: 15px;
}

.kce-width-60 {
    width: 60%;
}

.kce-pointer {
    cursor: pointer;
}

/**** Custom font styles 
.lead {
    font-size: 21px;
    font-weight: 200;
    margin-bottom: 20px;
}*****/
/**** Box Styles ****/
.kce-box {
    padding: 30px;
    border-radius: 15px;
    margin-top: 10px;
    background-color: #ffffff;
    border: solid 5px
}

.kce-services .kce-box {
    height: 355px;
}

.kce-fill-horizontal {
    width: 100%;
}

.green-box-header {
    border-color: #629c44;
    border-radius: 30px;
}

.green-box {
    border-color: #629c44;
}

.green-box h1 {
    color: #629c44;
}

.green-box h2 {
    color: #629c44;
}

.green-box h3 {
    color: #629c44;
}

.red-box {
    border-color: #ff0000;
}

.red-box h1 {
    color: #ff0000;
}

.red-box h2 {
    color: #ff0000;
}

.red-box h3 {
    color: #ff0000;
}

.blue-box {
    border-color: #3282e6;
}

.blue-box h1 {
    color: #3282e6;
}

.blue-box h2 {
    color: #3282e6;
}

.blue-box h3 {
    color: #3282e6;
}

/*--------------------------------------------------------------------------------
    # Structure - Header
---------------------------------------------------------------------------------*/
#kce-internal-container {
    margin: 15px auto 15px;
    max-width: 1920px;
    background-color: white;
    padding: 15px;
}

#kce-page-header h2 {
    margin-top: 0;
}

#kce-page-header hr {
    margin: 5px;
}

.kce-page-header-mobile {
    display: none;
}

@media (max-width: 762px) {
    #kce-header-title {
        margin-top: 15px;
        text-align: center;
    }
}

/*smaller image height for mobile */
@media screen and (max-width: 586px) {
    .kce-page-header-mobile {
        display: block;
    }
}


/*--------------------------------------------------------------------------------
    # Structure - Footer
---------------------------------------------------------------------------------*/
footer {
    margin: 25px auto;
}

/***** Carousel ******/
#kce-carousel {
    overflow: hidden;
    min-height: 300px;
    max-height: 600px;
    /*margin-left:-15px;
    margin-right:-15px;*/
    max-width: 1920px;
    margin: 0 auto;
}

#kce-carousel img {
    min-height: 300px;
    max-height: 600px;
    height: 450px;
    margin: 0 auto;
    width: 1920px;
    max-width: none;
}

.carousel-caption p {
    font-size: 20px;
    line-height: 1.4;
}

.carousel-caption {
    z-index: 10;
    right: 20%;
    left: 20%;
    padding-left: 20px;
    padding-right: 20px;
    background: rgba(0, 0, 0, 0.5);
    margin-bottom: 50px;
    border-radius: 25px;
    height: 200px;
}

.carousel-caption a {
    margin-top: 15px;
}

/*--------------------------------------------------------------------------------
    # Normalize
---------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
    # Override Bootstrap
---------------------------------------------------------------------------------*/
.kce-content {
    background-color: white;
    box-shadow: -10px 0 8px -8px grey, 10px 0 8px -8px grey;
    max-width: 1920px;
    margin: 0 auto;
}

/*Force all columns in a row to be the same height*/
.row {
    display: inline;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    /*align-items: center;*/
    /*justify-content: center;*/
}

.row > [class*='col-'] {
    display: flex !important;
    flex-direction: column;
}

/***** Custom Navbar ****/

/* hover on nav link */
.kce-nav-top-link:hover {
    box-shadow: -10px 0 8px -8px grey, 10px 0 8px -8px grey;
}

/*increase navbar hight*/
.navbar {
    background-color: white;
    padding-top: 15px;
    padding-bottom: 15px;
}

/* float nav elements right */
.nav {
    float: right;
}

/* raise top nav links from bottom to top of resized navbar */
.kce-nav-top-link {
    font-size: 16px;
    margin-top: -15px;
    margin-bottom: -15px;
    padding-top: 15px;
    padding-bottom: 15px;
    text-align: center;
}

/* dont highlight dropdown link on select */
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: white;
}

/* contain nav brand */
.navbar-brand {
    margin-top: -20px;
    width: 200px;
}

.navbar-nav > li > .dropdown-menu {
    margin-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    width: 100%;
}

.navbar-nav {
    margin: 0;
    /*padding: 7.5px 15px;*/
}

.navbar-static-top .navbar-collapse.in {
    overflow-y: visible !important; /* Bootstrap default is "auto" */
}

@media (max-width: 1200px) {
    .navbar-collapse {
        margin-top: 15px;
        overflow: hidden;
    }

    .kce-nav-top-link:hover {
        box-shadow: 0 1px 2px 1px grey;
        border-radius: 5px;
    }

    .navbar-header {
        float: none;
    }

    .navbar-left, .navbar-right {
        float: none !important;
    }

    .navbar-toggle {
        display: block;
    }

    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }

    .navbar-fixed-top {
        top: 0;
        border-width: 0 0 1px;
    }

    .navbar-collapse.collapse {
        display: none !important;
    }

    .navbar-nav {
        float: none !important;
        margin-top: 7.5px;
    }

    .navbar-nav > li {
        float: none;
    }

    .navbar-nav > li > a {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .collapse.in {
        display: block !important;
    }

    .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
        max-height: 100%;
    }

    .navbar-collapse.in {
        overflow-y: hidden;
    }

    .dropdown-menu li {
        text-align: center;
    }
}

.navbar-nav > li > a {
    color: #333333;
}


.navbar-default .navbar-nav > .open > a {
    background-color: transparent;
}

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    background-color: transparent;
}

.navbar-nav > li > a:hover {
    background-color: transparent;
}

/***** /Custom Navbar ****/

h1 {
    font-size: 30px;
}

@media (max-width: 768px) {
    h1 {
        font-size: 20pt !important;
    }
}

@media (max-width: 480px) {
    h1 {
        font-size: 16pt !important;
    }
}

/*--------------------------------------------------------------------------------
    # Structure - GENERAL USAGE
---------------------------------------------------------------------------------*/
.featurette {
    padding-right: 15px;
    padding-left: 15px;
}

/*--------------------------------------------------------------------------------
    # Contact
---------------------------------------------------------------------------------*/
#kce-contact-row {
    margin-top: 15px;
    color: #629c44;
}

#kce-contact-row a {
    color: inherit !important;
}

#kce-contact-details {
    padding-top: 20px;
}

#kce-hours-info {
    padding-top: 20px;
}

.kce-contact-card {
    color: green;
    padding: 20px
}

/*--------------------------------------------------------------------------------
    # Media
---------------------------------------------------------------------------------*/
#kce-header-logo {
    max-height: 100px;
    max-width: 300px;
}

.kce-img-responsive {
    width: 100%;
    height: auto;
}

.kce-contact-img {
    margin: 0;
    min-height: 180px !important;
}

.kce-feature-img {
    max-height: 400px;
}

/*smaller image height for tablet */
@media screen and (max-width: 991px) {
    #kce-feature-img {
        margin-top: 15px;
    }
}

/*smaller image height for mobile */
@media screen and (max-width: 767px) {
    #kce-carousel img {
        height: 450px;
    }

    .kce-full-width-mobile {
        width: 100%;
    }
}

/*smaller image height for mobile */
@media screen and (max-width: 586px) {
    .kce-contact-img {
        margin-top: 15px;
    }

    #kce-carousel {
        display: none;
    }
}

/*--------------------------------------------------------------------------------
    # Map
---------------------------------------------------------------------------------*/
#map {
    height: 400px;
    padding-right: 15px;
    margin-bottom: 15px;
}

.kce-hidden {
    display: none;
}

#rom-mero-title {
    color: #244035 !important;
    font-size: 10vh !important;
}

.rom-mero-emphasis {
    color: #244035 !important;
}

.nunito-body {
    font-family: "Nunito", sans-serif;
    font-size: 21px;
    font-weight: 300;
    font-style: normal;
}

.nunito-italic {
    font-family: "Nunito", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: italic;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

/* Cube */

.layer {
    position: absolute;
    overflow: hidden;
    display: block;
}

#cube {
    --animate-duration: 800ms;
}

#cube-div {
    --animate-duration: 1000ms;
}

.btn-cube-outer {
    cursor: pointer;
    background-color: #ffffff;
    z-index: 2;
    rotate: -90deg;
    line-height: 1.5;
    color: #383838;
    border-color: grey;

}

.btn-cube-inner-style {
    cursor: pointer;
    background-color: #ffffff;
    z-index: 2;
    rotate: -90deg;
    line-height: 1.5;
    color: #383838;
    border-color: grey;
    scale: 0.8;
}

.active-cube, .active-cube i {
    /*border-color: #ff4e4e !important;*/
    /*border-width: 3px !important;*/
    /*color: #ff4e4e !important;*/
    border-color: #123a2b !important;
    border-width: 3px !important;
    color: #123a2b !important;
}

.btn-cube-outer i {
    color: grey;


}

.btn-cube-inner i {
    color: #a19999;
}

.btn-cube-outer:hover i, .btn-cube-inner:hover i {
    /*color: #ff4e4e;*/
    color: #244035;

}

.btn-cube-center {
    cursor: pointer;
    z-index: 2;
    rotate: -90deg;
    border-color: #808080;
    background-color: white !important;
}


.cube-line {
    background-color: grey;
}


.cube-circle-line {
    border-top-color: #244035;
}

.btn-cube-inner {
    display: none;
}

.content-section {
    padding: 3rem;
}

@media (max-width: 992px) {

    .scalar {
        scale: 100%;
        margin-top: -50%;
        margin-bottom: auto;
    }

    #cube-top-layer{
        left: -70px !important;
    }


    .gutter {
        --bs-gutter-x: 18rem;
    }

}

@media (min-width: 992px) {

    .scalar {
        scale: 100%;
        margin-top: -50%;
        margin-bottom: auto;
    }

    #cube-top-layer{
        left: -70px !important;
    }
    
    
    .gutter {
        --bs-gutter-x: 18rem;
    }

}


@media (min-width: 1200px) {

    .scalar {
        scale: 110%;
        margin-top: -45%;
        margin-bottom: auto;
    }

    #cube-top-layer{
        left: -20px !important;
    }

    .gutter {
        --bs-gutter-x: 13rem;
    }

}

@media (min-width: 1400px) {

    .scalar {
        scale: 120%;
        margin-top: -50%;
        margin-bottom: auto;
    }
    
    #cube-top-layer{
        left: -20px !important;
    }

    .gutter {
        --bs-gutter-x: 9rem;
    }

}


.icon-card-alignment {
    float: left;
    margin-right: 10px;
}


.card {
    height: 100%;
}

.menu-item-header {
    margin-top: 0;
    margin-bottom: 0.25em;
}

/* cube/card */

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, .125);
    border-radius: 0.8rem;
}

.shadow {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
}

.scroll {
    overflow-y: auto;
}

.scroll::-webkit-scrollbar {
    width: 20px;
}

.scroll::-webkit-scrollbar-track {
    background-color: transparent;
}

.scroll::-webkit-scrollbar-thumb {
    background-color: #d6dee1;
    border-radius: 20px;
    border: 6px solid transparent;
    background-clip: content-box;
}

.scroll::-webkit-scrollbar-thumb:hover {
    background-color: #a8bbbf;
}


.slider {
    display: none !important;
}

.card-body {
    flex: 1 1 auto;
    padding: 1rem 1rem;
}
.fw-500 {
    font-weight: 500;
}

.ms-6 {
    margin-left: 4.4rem;
}

.text-left {
    text-align: left;
    float: left;
}

.text-right {
    text-align: right;
    float: right;
}

.icon-box.iconbox-xxl {
    width: 96px;
    height: 96px;
    line-height: 96px;
    font-size: 2rem;
}

.icon-box {

    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 38px;
    height: 38px;
    line-height: 38px;
    background-color: #f5f6f7;
    color: #999;
    border-radius: 10rem;
}

hr {
    border-color: rgba(117, 117, 117, 0.09);
    margin: 2rem auto;
    border-top: 1px solid rgba(0, 0, 0, 0.1);

}

.lead-4 {
    font-size: 1.5rem !important;
}

.lead-6 {
    font-size: 2rem !important;
}

.lead-7 {
    font-size: 3rem !important;
}


.lead-5 {
    font-size: 1.875rem !important;
}

.float-right {
    float: right;
}

.float-left {
    float: left;
}


.card-title {
    margin-bottom: .5rem;
}

.card-subtitle {
    margin-top: -.25rem;
    margin-bottom: 0;
}

.menu-item-header {
    margin-top: 0;
    margin-bottom: 0.25em;
}

.mt-3 {
    margin-top: 1rem !important;
}

.p-2 {
    padding: .5rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-custom {
    margin-top: 1.9rem !important;
}

.h-100 {
    height: 100% !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.text-decoration-none {
    text-decoration: none !important;
}
.pl-6, .px-6 {
    padding-left: 2rem !important;
}

.pr-6, .px-6 {
    padding-right: 2rem !important;
}

.text-default {
    color: #757575 !important;
}

.border-color {
    border: 1px solid #f1f2f3;
}

.font-size-18{
    font-size: 18px;
}