/**********************
** Body
***********************/
html, body 
{
    font-family: 'Raleway', sans-serif;
}

/**********************
** Core
***********************/
div.vertical-align
{
    display:table;
    width:100%;
    height:100%;
}
div.vertical-align>div.vertical-align-cell
{
    display:table-cell;
    vertical-align: middle;
    width:100%;
}
h1, h2, h3, h4, h5, h6 
{
    font-family: 'Heebo', sans-serif;
}
#page-content
{
    min-height:80vh;
}


/**********************
** Header
***********************/
header 
{
    font-family: 'Heebo', sans-serif;
}
header .header-top
{
    background:#1d1b29;
    padding:0.6rem 0;
    color:#FFF;
    font-weight:bold;
    text-transform:uppercase;
}
header .header-top a
{
    color:#FFF;
    text-decoration: none !important;
}
header .header-top a:hover 
{
    opacity:0.75;
}
header .header-top .or 
{
    padding:0 0.5rem;
    font-weight:400;
    font-size:0.9rem;
    color:#b6b4c1;
    display:inline-block;
}

header .header-main 
{
    padding: 1rem 0;
    background:#FFF;
    text-transform:uppercase;
    box-shadow: 0px 3px 6px 1px #00000029;
}
header .navbar-nav .nav-link
{
    color:#505056;
    font-family: 'Heebo', sans-serif;
    font-weight:bold;
    font-size:1.125rem;
}
header .navbar-nav .nav-link:hover 
{
    color:#000 !important;
    opacity:0.3;
}
header .navbar-toggler
{
    border:2px solid #716f7b  !important;
    margin-top:0.75rem;
}



/**********************
** Slider
***********************/
section.slider
{
    height:700px;
    background:#333;
    position: relative;
    font-family: 'Heebo', sans-serif;
    margin-bottom:1rem;
}
section.slider > .carousel, section.slider .carousel-inner, section.slider .carousel-item
{
    height:100%;
}
section.slider .carousel-img
{
    background-size:cover;
    background-repeat:no-repeat;
    background-position: center;
}
section.slider .overlay 
{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    -webkit-box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
    box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
}

section.slider h1 
{
    color:#FFF;
    font-weight:bold;
    font-size:3rem;
}
section.slider .carousel-indicators li, section.slider .carousel-indicators li .active
{
    border-radius: 50%;
    width: 15px;
    height: 15px;
}
section.slider .btn 
{
    padding-left:1.5rem;
    padding-right:1.5rem;
}

/**********************
** Call to action
***********************/
section.call-to-action
{
    background-image:url('../img/calltoaction-bg.png');
    background-size:cover;
    padding:2rem 0;
    margin-bottom:1rem;
}
section.call-to-action h2 
{
    font-size:2rem;
    color:#FFF;
    font-weight:600;
    text-transform: uppercase;
    margin:0.5rem 0;
}
section.call-to-action .btn-light
{
    text-transform:uppercase;
    font-weight:600;
    font-size:1.4rem;
    padding:0.5rem 1.5rem;
    color:#37b466;
}

/**********************
** Text blocks etc
***********************/
section.block
{
    padding:1rem 0;
    margin:1rem 0;
}
section.block h1, section.block h2, section.block h3, section.block h4
{
    font-weight:bold;
    color:#343434;
    margin-bottom:1.5rem;
    font-family: 'Raleway', sans-serif;
}

section.block img 
{
    width:100%;
}

section.content
{
    padding:2rem 0;
}
section.shapes 
{
    background:#ededed;
    padding:2rem 0;
    margin-bottom:1rem;
}
section.shapes .service-thumbnail
{
    margin-bottom:1rem;
}
section.shapes .service-thumbnail.circle 
{
    border-radius:50%;
}
section.shapes .service-thumbnail>.service-img-container
{
    height:320px;
    overflow:hidden;
    background:#000;
    margin-bottom:0.5rem;
}
section.shapes .service-thumbnail .service-img
{
    background:#000;
    display:block;
    background-size:cover;
    height:100%;
    transition: all .25s ease-in-out;
   -moz-transition: all .25s ease-in-out;
   -webkit-transition: all .25s ease-in-out;
   opacity:0.75;
}
section.shapes .service-thumbnail:hover .service-img
{
    opacity:1;
    transform: scale(1.1);
}
section.shapes .service-thumbnail h5 
{
    display:block;
    padding:0.5rem 0;
    text-align:center;
    color:#000;
}
section.shapes .service-thumbnail a:hover
{
    text-decoration:none;
}


section.content h1, section.content h2 
{
    color:#7d858b;
    font-weight:bold;
    position: relative;
    font-family: 'Raleway', sans-serif;
    text-align:center;
}
section.content h1+.underline, section.content h2+.underline
{
    border-bottom: 5px solid #7d858b;
    width:50px;
    margin:0.25rem auto;
    margin-bottom:2.5rem;
}

/**********************
** Gallery
***********************/
.gallery-grid
{
    overflow-x:hidden;
    margin:3rem 0;
}
.gallery-grid
{
    margin:-0.12rem;
    margin-bottom:2rem;
}
.gallery-grid img
{
    width:100%;
    padding:0.12rem;
}
.gallery-grid img.big 
{
    height:100%;
}
section.gallery
{
    padding:2rem 0;
    overflow:hidden;
}
section.gallery .btn-secondary
{
    background:#1d1b29;
    border-color:#1d1b29;
    text-transform:uppercase;
    padding:0.5rem 1.5rem;
    font-weight:500;
}


/**********************
** Testimonials
***********************/
section.testimonial
{
    background:#ededed;
    padding:2rem 0;
    margin-bottom:1rem;
}

.testimonial-container-padded
{
    padding: 0 1.5rem;
    margin-bottom: 1rem !important;
}
.testimonial-container-padded quote
{
    background:#9795a3;
    color:#FFF;
    border-radius:5px;
    padding:1rem;
    display:block;
}
.testimonial-author
{
    padding:0.25rem 0;
}
.testimonial-author .author
{
    font-size:0.9rem;
    font-style: italic;
}


/**********************
** Titles
***********************/
section.title-block 
{
    background:#333140;
    border-bottom:1px solid #333140;
    font-weight:bold;
    padding:1.5rem;
    -webkit-box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
    box-shadow: inset 0px 11px 23px 0px rgba(0,0,0,0.08);
}
section.title-block h1 
{
    margin:0;
    font-weight:bold;
    color:#fff;
}



.content-card
{
    background:#eee;
    border-radius:5px;
    padding:1rem;
}
.card-content-img
{
    width:100%;
}


section.block-code
{
    margin-top:2rem;
}



/**********************
** Buttons and forms
***********************/
.btn 
{
    border-radius:0;
}
.btn-rounded 
{
    border-radius:50px;
}
.btn-primary 
{
    background:#3ab366;
    border-color:#3ab366;
}
.btn-primary:hover, .btn-primary :active, .btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show>.btn-primary.dropdown-toggle:focus
{
    background:#64d08b;
    border-color:#64d08b;
    box-shadow:0 0 0 0.2rem rgba(144, 224, 173, 0.95);
}


section.block-form
{
    background:#efefef;
    padding:2rem 0;
}
section.block-form .form-container 
{
    background:#dfdfdf;
    padding:2rem;
    max-width:600px;
    margin:1rem auto;
}
section.block-form label 
{
    text-transform:uppercase;
}
section.block-form .form-control 
{
    border-radius:0;
    padding: 0.5rem;
    border:2px solid #b4b0c7;
}


section.partners img
{
    margin-bottom:1rem;
}


/**********************
** Footer
***********************/
footer 
{
    background:#1d1b29;
    padding-top:2rem;
    color:#c0c0c0;
    margin-top:1.5rem;
}
footer  h4 
{
    text-transform:uppercase;
    font-weight:600;
    font-size:1.3rem;
}
footer ul li a
{
    color:#FFF;
    padding:0.25rem 0 !important;
    transition: all .25s ease-in-out;
   -moz-transition: all .25s ease-in-out;
   -webkit-transition: all .25s ease-in-out;
}
footer ul li a:hover 
{
    color:#fff;
    opacity:0.75;
}

footer .footer-bottom
{
    font-size:0.9rem;
    color:#716f7d;
    padding:0.5rem 0;
    border-top:1px solid #3d3b48;
}
footer .footer-bottom a 
{
    color:#716f7d;
    transition: all .25s ease-in-out;
   -moz-transition: all .25s ease-in-out;
   -webkit-transition: all .25s ease-in-out;
}
footer .footer-bottom a:hover 
{
    color:#716f7d;
    opacity:0.75;
}


footer .maskreys
{
    height:80px;
    width:80px;
    padding:0.25rem;
    background:#6bc340;
}
footer .maskreys img 
{
    width:100%;
}