@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;400;700;900&display=swap');

html {
    scroll-behavior: smooth;
}

body {
    position: relative;
    margin: 0;
    font-family: 'Roboto', sans-serif;
}

p {
    font-size: 18px;
}

.navbar.white {
    background-image: linear-gradient(to bottom, rgba(58, 61, 69, .7), rgba(255, 255, 255, 0));
}
.navbar.white a {
    color: #ffffff;
}
.navbar.blue a {
    color: #2679ac;
}
.navbar .nav-top-row {
    border-bottom: 2px solid;
    border-image: linear-gradient(to left, rgba(102, 102, 102, 1), rgba(255, 255, 255, 0)) 1;
}
.nav-top-row {
    font-size: 18px;
    text-transform: lowercase;
}
.nav-bottom-row {
    font-size: 20px;
    text-transform: uppercase;
}

#main {
    position: relative;
}

#home-page-nav {
    position: fixed;
    left: 20px;
    top: 50%;
    transform: translate(0, -50%);
}
#home-page-nav .list-group-item {
    width: 0;
    height: 0;
    margin: 6px 0;
    background-color: #a7a9ac;
    border: 0;
    padding: 8px;
    border-radius: 8px;
}
#home-page-nav .list-group-item.active {
    background-color: #dc8026;
    border-color: #dc8026;
}

#welcome,
#info,
#services,
#sun-up {
    width: 100vw;
    height: 100vh;
}

#welcome,
#info,
#services > div,
#sun-up,
#services-page #title {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

#welcome {
    position: relative;
    padding-top: 50vh;

    color: rgba(255, 255, 255, .7);
    text-align: center;
    text-transform: uppercase;

    background-image: url("images/home_hero.jpg");
}

#welcome h1 {
    font-size: 133px;
    line-height: 110px;
    font-weight: 900;
}
#welcome h2 {
    font-size: 43px;
    font-weight: 400;
}

#welcome #partner-link {
    position: absolute;
    width: 100%;
    bottom: 25px;
    font-size: 18px;
    line-height: 18px;
    left: 50%;
    transform: translate(-50%, 0);
    color: #ffffff;
}
#welcome #partner-link:hover {
    text-decoration: none;
}

#info {
    padding-top: 25vh;

    color: white;

    background-image: url("images/home_intro.jpg");
}

#info h1,
#sun-up h1 {
    font-size: 50px;
    font-weight: 100;
    text-transform: uppercase;
}

#info h1 strong,
#sun-up h1 strong {
    font-weight: 700;
}

#info p,
#sun-up p {
    width: 30vw;
}

.btn-primary {
    background-color: #dc8026;
    border-color: #dc8026;
    border-radius: 0;
    font-weight: 100;
}
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:focus,
.btn-primary:hover {
    background-color: #dc8026;
    border-color: #dc8026;
}
.btn-primary strong {
    font-weight: 400;
}

#services {
    color: white;
}

#services .service-panel {
    height: 100vh;
    padding-top: 50vh;
    padding-left: 50px;

    background-position: left center;
    /*transform: skewX(-10deg);*/
}
#services .service-panel > div {
    /*transform: skewX(10deg);*/
}
#services .service-panel:first-of-type {
    padding-left: 150px;
}
#services .service-panel:not(.active) h1 {
    cursor: pointer;
}
#services .service-panel p,
#services .service-panel a,
#services .service-panel .close-button {
    display: none;
}

#services #left {
    background-image: url("images/home_services_left.jpg");
}
#services #middle {
    background-image: url("images/home_services_middle.jpg");
}
#services #right {
    background-image: url("images/home_services_right.jpg");
}
#services .service-panel.active {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding-top: 45vh;
}
#services .service-panel.active .content {
    border-left: 3px solid #ffffff;
}
#services .service-panel.active p,
#services .service-panel.active a,
#services .service-panel.active .close-button {
    display: block;
}

#services .service-panel.inactive:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    background-color: rgba(0, 0, 0, 0.7);
}
#services .service-panel.inactive h1 {
    display: none;
}
.close-button {
    margin: 60px;
    font-size: 64px;
    cursor: pointer;
}

#services h1 {
    font-size: 50px;
    font-weight: 100;
}

#body {
    padding-top: 80px;
}
#body p {
    color: #444444;
}

#body #contact {
    background-color: #444444;
    color: #ffffff;
}

#body #contact_form {
    background-color: #000000;
    color: #ffffff
}
#body #contact_form .form-control {
    background-color: #444444;
    color: #ffffff;
    border: 0;
    border-radius: 0;
}

#sun-up {
    position: relative;
    padding-top: 50vh;

    color: #ffffff;

    background-image: url("images/home_sun_up.jpg");
}

#contact-us {
    margin-top: 130px;
}
#contact-us #address {
    margin-top: 200px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("images/contact_bg.jpg");
}
#contact-us #address-block {
    top: -125px;
    color: #ffffff;
    background-color: #2679ac;
}
#contact-us #address-block a {
    color: #7ecdfe;
}
#contact-us #stop-by {
    position: absolute;
    top: -40px;
    left: -24px;
}

#find-online {
    height: 400px;
    margin-top: 60px;
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("images/street_view.jpg");
}
#find-online #find-on-facebook {
    position: relative;
}
#find-online #find-on-facebook a {
    position: absolute;
    top: -55px;
}

#services-page #title {
    position: relative;
    height: 850px;

    background-image: url("images/services_title_hero.jpg");
}
#services-page #title h1 {
    padding-top: 375px;
    text-align: center;
    font-size: 100px;
    font-weight: 900;

    color: rgba(255, 255, 255, .7);
    text-transform: uppercase;
}
#services-page #title img {
    position: absolute;
    bottom: 120px;
}
#services-page #icons {
    position: absolute;
    top: -140px;
    left: 40px;
    width: 800px;
}
#services-page .col-6 {
    position: relative;
}
#services-page .upset-block {
    position: absolute;
    top: -40px;
}
#services-page .block-text {
    padding: 80px 60px 0;
    background-color: #ffffff;
}
#services-page h2 {
    font-weight: 100;
    line-height: 36px;
}
#services-page h2.orange {
    font-size: 56px;
    line-height: 48px;
    font-weight: 900;
    color: #fb7f06;
}
#services-page #row2 {
    position: relative;
    background-color: #333333;
}
