/**
 * style.css
 * website stylesheet
**/

/********************************
 * GENERAL
********************************/

* { transition: 0.4s ease; }

body {
	font-family: 'Raleway', sans-serif;
	font-size: 18px;
    line-height: 28px;
    color: #3e3e3d;
    background: #fff;
	font-weight: 400;
}

h1, h2, h3, h4, .lead {
	font-family: 'Montserrat', sans-serif;
    letter-spacing: .2px;
}

h1 {
    font-size: 60px;
    line-height: 70px;
    font-weight: 400;
    letter-spacing: -.2px;
    padding-top: 30px;
}

h2, h3 { 
    font-size: 22px; 
    line-height: 20px;
    font-weight: 600;
}

img { max-width: 100%; }

a, a:hover { transition: 0.4s ease; }
a:hover { 
	filter: brightness(0.9);
	text-decoration: none;
}

.btn {	
    font-weight: normal;
    font-family: 'Montserrat', sans-serif;
    padding: 12px 25px;
    font-size: 16px;
    font-weight: 500;
	border-radius: 10px;    
}

.btn-lg {
    font-size: 20px;
    padding: 12px 30px;
    min-width: 200px;
}

.btn-primary, 
.btn-primary:hover, 
.btn-primary:active, 
.btn-primary:focus {
    background: #ef7829;
    border-color: #ef7829;
    color: #FFF;
}

.btn-inverted {
	color: #FFF;
	border: 1px solid #FFF;
	background: transparent;
}

.btn-inverted:hover {
	color: #000;
	background-color: #FFF;
}

.btn-default, 
.btn-default:hover, 
.btn-default:active, 
.btn-default:focus {
    background: #fff;
    border-color: #fff;
    color: #3e3e3d;
}

.text-grey { color: #ababab; margin-top: -40px; }
.text-grey-nopad { color: #ababab; }
.text-white { color: #fff; }

.container { max-width: 1170px; }

/********************************
 * HEADER
********************************/

#header {
    background: #fafafa;
    position: relative;
    width: 100%;
    padding: 30px 0 50px;
    box-shadow: 0 0 15px -8px #000c;
}

div#alt-logo { display: none; }
#header-logo img { max-width: 100%; }

nav#main-menu {
    background: none;
    border: 0;
    padding: 15px 0;
    min-height: 0;
}

#main-menu .nav-item .nav-link {
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    color: #3e3e3d;
    letter-spacing: -.2px;
    padding: 5px 15px;
}


/********************************
 * FOOTER
********************************/

footer#footer {
    background: #FFF;
    color: #3e3e3d;
    margin-top: 120px;
    padding: 0 0 20px;
    font-size: 14px;
    line-height: 20px;
}

div#footer-cta {
    color: #FFF;
    background: #3e3e3d;
    padding: 80px 0;
    text-align: center;
}

div#footer-cta { padding: 30px 0; }
#footer-cta h3 { line-height: 26px; }
#footer-cta .btn { font-size: 16px; }
#footer .dev p { margin: 0; }
#footer .dev {
    text-align: right;
    display: flex;
    width: 100%;
    align-items: baseline;
    justify-content: flex-end;
    padding-top: 15px;
}

.home #footer { margin-top: -330px; }

/********************************
 * PAGES
********************************/

.main {
    overflow: hidden;
    position: relative;
    z-index: 2;
}

#page-header {
    padding: 100px 0 60px;
    background-color: #FFF;
    color: #3e3e3d;
    margin-bottom: 20px;
}

/*home*/

.home #header {
    background: transparent;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    box-shadow: none;
    z-index: 99;
}

.home #main-menu .nav-item .nav-link { color: #FFF; }
.home-intro {
    padding: 300px 0 100px;
    background-image: url(https://galavantsoftware.com/img/bg-header.png);
    background-position: 200% -30px;
    background-repeat: no-repeat;
}

.intro-title {
    margin: 0 -50px 30px 0;
    font-size: 58px;
    line-height: 70px;
    letter-spacing: -2px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
}

.home-boxes {
    position: relative;
    z-index: 2;
}

.box {
    padding: 30px;
    background: #FFF;
    border: 1px solid #353b79;
    height: 100%;
    box-shadow: 0 0 5px -1px #0005;
}

.box .box-title, .box .box-img {
    text-align: center;
    width: 100%;
    margin-bottom: 15px;
}

ul.box-features li { margin-bottom: 12px; }
ul.box-features {
    font-size: 16px;
    padding: 0 0 0 10px;
    line-height: 26px;
}

.home-features {
    background: url('https://galavantsoftware.com/img/bg-home_1.jpg') no-repeat center;
    background-size: cover;
    padding: 80px 0 360px;
    margin-top: 0;
    position: relative;
    z-index: 1;
}

.home-features:before {
    content: "";
    position: absolute;
    height: 650px;
    width: 100%;
    top: -400px;
    left: 0;
    background-image: url(https://galavantsoftware.com/img/detail2.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
}

.home-features h2 {
    font-size: 60px;
    line-height: 70px;
    margin-bottom: 50px;
    font-weight: 300;
    position: relative;
    z-index: 2;
    letter-spacing: -.2px;
}

.home-features-buttons { 
    text-align: center; 
    position: relative;
    z-index: 2;
}

.home-features-buttons .btn {
    display: block;
    margin: 0 auto 30px;
    max-width: 500px;
    border-radius: 0;
    box-shadow: 0 0 5px -1px #000c;
    font-family: 'Raleway', sans-serif;
    font-weight: bold;
}

.home #footer-cta { background: #0009; }
.home #footer #copy { background: #FFF; }
.home #footer {
    margin-top: -250px;
    position: relative;
    z-index: 9;
    background: transparent;
}


/*platform*/

.platform #header {
    background: transparent;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    box-shadow: none;
    z-index: 99;
}

.platform div#alt-logo { display: block; }
.platform div#header-logo { display: none; }
.platform #main-menu .nav-item .nav-link { color: #FFF; }

#platform #page-header {
    padding-top: 250px;
    margin-bottom: 100px;
    color: #FFF;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.feature-list {
    padding: 0;
    list-style-position: inside;
}

.feature-list li { margin-bottom: 15px; }
.feature-list-two-column { column-count: 2; }

/*reservations page*/

.features .feature { margin-bottom: 40px; }
.features .feature .feature-title { text-transform: uppercase; }


/********************************
 * RESPONSIVE FIXES
********************************/

@media( min-width: 1500px ) {
    /*.home-intro { background-size: auto 650px; }*/
    .home-intro {
        background-size: 70% auto;
        background-position: right top;
    }
}

@media( max-width: 1400px ) {
	.home-intro {
        background-size: 75% auto;
        background-position: right top;
    }
}

@media( max-height: 820px ) {
    .home-intro {
        background-size: 75% auto;
        background-position: right top;
        padding: 230px 0 50px;
    }

    .intro-title {
        font-size: 48px;
        line-height: 58px;
        margin-bottom: 20px;
    }
}

@media( max-height: 820px ) and (min-width: 1460px) {
	.home-intro {
	    background-size: 70% auto;
	    background-position: right top;
	    padding: 230px 0 50px;
	}
}

@media( max-height: 820px ) and (min-width: 1700px) {
	.home-intro {
	    background-size: 65% auto;
	    background-position: right top;
	    padding: 230px 0 50px;
	}
}


@media( max-width: 1100px ) {     
    .home #main-menu .nav-item .nav-link {
        color: #FFF;
        font-size: 14px;
        padding: 5px 10px;
    }	
}


@media( max-width: 990px ) {
		
	#main-menu .navbar-toggler {
        margin-left: auto;
        margin-top: -80px;
        color: #FFF;
        border-color: #fff;
    }

    #main-menu div#navbarSupportedContent .nav-item .nav-link { color: #000;     }
    div#navbarSupportedContent {
        background: #fff;
        text-align: center;
        padding: 10px;
        box-shadow: 0 0 25px -5px #000c;
    }

    .home .navbar-light .navbar-toggler-icon,
    .platform .navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='https://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
    }

    .intro-title {
        font-size: 42px;
        line-height: 52px;
    }

    .box {
        margin-bottom: 30px;
        display: block;
        height: auto;
    }

    .home-features { margin-top: -30px; }
    .home-features h2 { 
        font-size: 42px;
        line-height: 52px; 
    }

    
}

@media( max-width: 767px ) {
    h1 {
        font-size: 42px;
        line-height: 48px;
    }

    h2, h3 { line-height: 26px; }

	.home-intro {
	    background-image: url(https://galavantsoftware.com/img/detail.png);
	    background-size: 150%;
	    background-position: right -50px;
	    padding-top: 200px;
	}

    .home div#alt-logo { display: block; }
    .home div#header-logo { display: none; }

    .home-features:before { display: none; }
    .home-features-buttons .btn {
        font-size: 16px;
        line-height: 18px;
    }

    .home-features h2 {
        font-size: 36px;
        line-height: 44px;
    }

    .home #footer { margin: -300px 0 0; }

    #page-header { padding: 30px 0; }
    #platform #page-header {
        padding-top: 150px;
        margin-bottom: 50px;
    }   

    .feature-list {
        padding: 0;
        list-style-position: inside;
        font-size: 16px;
    }

    .feature-list-two-column { column-count: 1; }
    .feature-list li { margin-bottom: 10px; }

    .platform-img {
        text-align: center;
        margin: 30px 0;
    }

    .features .feature { text-align: center; }
}

@media( max-width: 550px ) {
	.home-intro {
	    background-position: right 0;
	}
}