﻿@import url("https://fonts.googleapis.com/css?family=Lato&amp;subset=latin,latin-ext");


body {
    font-family: 'Montserrat', sans-serif;
}

a {
    cursor: pointer;
}

.margin-top-7 {
    margin-top: 7px;
}

/********* hero ************************/

.home-hero {
    background-image: url('//images.goodsam.com/goodsam.com/home/2021/portal-hero-mallard-trailer.jpg');
    background-size: cover;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    position: relative;
    margin-bottom: 54px;
    font-family: 'Montserrat', sans-serif;
    text-align: center;
}

.home-hero .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.home-hero .slideScroll {
    padding: 470px 8px 40px;
}

.slideImg {
    position: relative;
    -webkit-transition: all .8s ease-in-out;
    -moz-transition: all .8s ease-in-out;
    -o-transition: all .8s ease-in-out;
    transition: all .8s ease-in-out;
}

.slideImg:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}

.slideImg img {
    margin: 0 8px;
    border-radius: 10px;
}

.slideInfo {
    position: absolute;
    bottom: 35px;
    width: 100%;
}

.slideInfo p {
    font-size: 24px;
    line-height: 32px;
    color: #fff;
    font-weight: 700;
    margin-bottom: 0;
}

.slideImg .slideInfo .btn-hover {
    display: none;
    font-size: 16px;
    line-height: 16px;
    color: #fff;
    font-weight: 600;
    padding: 16px 57px;
    background-color: transparent;
    border-radius: 4px;
    border: 2px solid #fff;
    margin-top: 18px;
    -webkit-transition: all .8s ease-in-out;
    -moz-transition: all .8s ease-in-out;
    -o-transition: all .8s ease-in-out;
    transition: all .8s ease-in-out;
}

.slideImg:hover .slideInfo .btn-hover {
    display: block;
    width: 229px;
    margin: 18px auto 0px;
}

#slideNav {
    position: absolute;
    left: 0;
    bottom: calc(50% - 218px);
    width: 100vw;
    display: flex;
    justify-content: space-between;
}

#slideNav > div {
    font-family: sans-serif;
    font-size: 50px;
    line-height: 1;
    padding: 10px;
    background-color: rgba(0,0,0,.7);
    color: #fff;
}

#slideNav > div#slideNavRight {
    padding-right: 26px;
    border-radius: 10px 0 0 10px;
}

#slideNavLeft {
    padding-left: 16px;
    border-radius: 0 10px 10px 0;
}

#slideNav .glyphicon {
    font-weight: 100;
}

.btn-hover img {
    transform: rotate(-90deg);
    margin-left: 13px
}

.btn-hover:hover {
    background-color: rgba(255,255,255,.4);
}

.home-hero-2million {
    background-image: url('//images.goodsam.com/goodsam.com/2million/home/2million-hero-bg-d.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    display: flex;
    min-height: 260px;
}
.h2-medium {
    font-size: 1.7em;
}
.hero-2mil-content-right {
    margin-top: 100px;
}

.ccstacked-row {
    margin-top: -11%;
}
 .stackedcc {
    width: 190px;
    height: auto;
    margin-left: -5px;
    /*margin-top: -155px;*/
    margin-top: -26px;
}


h1 {
    font-weight: 700;
    font-size: 48px;
    line-height: 58px;
    color: #474342;
    margin-top: 0;
    margin-bottom: 5px;
}

h2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    color: #474342;
    margin-top: 0;
    margin-bottom: 10px;
}

h3 {
    font-weight: 700;
    font-size: 40px;
    line-height: 46px;
    color: #474342;
    margin-top: 0;
    margin-bottom: 10px;
}

p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #474342;
    margin-top: 0;
    margin-bottom: 10px;
}

.home-hero h2 {
    width: 1024px;
    margin: 0 auto 10px;
}



@media (min-width: 1441px) {
    .home-hero {
        background-size: cover;
    }

    .home-hero h2 {
        width: 1057px;
    }
}

@media (min-width: 1700px) {
    .home-hero {
        background-size: 1700px;
        margin: 0px auto 54px;
    }
}

@media (min-width: 1200px) and (max-width: 1350px) {
    .home-hero {
        background-image: url('//images.goodsam.com/goodsam.com/home/2021/portal-hero-mallard-trailer.jpg');
        background-size: contain;
        background-position: 50% 20%;
    }
}

@media (max-width: 1540px) {
    .home-hero .slideScroll {
        padding: 29% 8px 40px;
    }
    .slideNav {
        bottom: 29%;
    }
}

@media (max-width: 1199px) {
    .home-hero {
        background-size: contain;
        background-position: 50% 30%;
    }

    .home-hero h2 {
        width: 100%;
    }

}

@media (max-width: 1024px) {
    .home-hero {
        background-position: 50% 35%;
    }

    .slideImg img {
        width:257px;
    }

    .slideInfo p {
        font-size: 20px;
    }

    .slideImg .slideInfo .btn-hover {
        margin-top:  11px;
        padding: 11px 35px;
    }

    .slideImg:hover .slideInfo .btn-hover {
        width: 190px;
        transform: scale(1);
    }

    .slideImg:hover .slideInfo .btn-hover img {
        width: 9px;
    }

    h1 {
        font-size: 32px;
        line-height: 38px;
        margin-bottom: 9px;
    }

    h3 {
        font-size: 32px;
        line-height: 38px;
        margin-bottom: 9px;
    }
}

@media (max-width: 991px) {
    .home-hero-2million {
        background-image: url('//images.goodsam.com/goodsam.com/2million/home/2million-hero-bg-m.jpg');
        min-height: 180px;
    }

    .hero-2mil-content-right {
        margin-top: 60px;
    }

    .home-hero {
        display: block;
    }

    .col-marcus-text {
        text-align: center;
    }

    .stackedcc {
        margin-top: -60px;
        width: 162px;
    }
}

@media (max-width: 767px) {
    .home-hero {
        background-position: 50% 60%;
        padding: 0 0 0;
        margin-top: 20px;
        margin-bottom: 40px;
    }

    h1 {
        font-size: 28px;
        line-height: 34px;
        margin-bottom: 6px;
    }

    h2 {
        font-size: 14px;
        line-height: 24px;
        margin-bottom: 14px;
    }

    p {
        font-size: 14px;
        line-height: 24px;
    }

    .home-hero .slideScroll {
        padding: 28% 8px 30px;
    }

    .slideImg img {
        width: 120px;
        margin: 0px 2.5px;
    }

    .slideImg:hover {
        -webkit-transform: none;
        -moz-transform: none;
        -o-transform: none;
        transform: none;
    }

    .slideInfo {
        bottom: 15px;
    }

    .slideInfo p {
        font-size: 14px;
        line-height: 18px;
        padding: 0 8px;
    }

    .slideImg:hover .slideInfo .btn-hover {
        display: none;
    }
}

@media (max-width: 600px) {
    .home-hero .slideScroll {
        padding: 32% 2px 20px;
    }
}

    /* fix to show active border around gs mobile product boxes */
    .hero-mobile a:focus div {
        text-decoration: underline !important;
    }

    /********* find a campground ************************/
.home-cg-search {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)), url('//images.goodsam.com/goodsam.com/home/2021/campgroundBackground.png');
    background-size: cover;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: bottom right;
    position: relative;
    padding: 70px 0px 300px;
    font-family: 'Montserrat', sans-serif;
    text-align: left;
}

    .camp-search {
        margin-top: 33px;
    }

    .camp-search > .row:first-child > div.col-md-3 {
        padding: 5px;
    }

    .camp-search input[type=text].form-control, .camp-search select.form-control, .camp-search .btn {
        height: 55px;
        border: .5px solid #D8D8D8;
        border-radius: 4px;
        display: inline-block;
        font-size: 16px;
    }

    .camp-search .btn-red {
        border: none;
    }

    .camp-search .btn-red img {
        transform: rotate(-90deg);
        margin-left: 13px
    }

@media (min-width: 1900px) {
    .home-cg-search {
        padding: 100px 0px 400px;
    }
}

@media (min-width: 1199px) {
    .home-cg-search {
        padding: 50px 0px 250px;
    }
}

@media (max-width: 1024px) {
    .home-cg-search {
        padding: 50px 0px 200px;
    }

    .campSearch input[type=text].form-control, .campSearch input[type=password].form-control, .campSearch input[type=file].form-control, .campSearch .input-group-btn .btn {
        height: 42px;
    }

    .campSearch .btn-red {
        padding: 11px 27px;
    }
}

@media (max-width: 767px) {
    .home-cg-search {
        padding: 50px 0px 150px;
    }

        .home-cg-search p {
            font-size: 14px;
            line-height: 24px;
        }

    .campSearch {
        display: block;
        margin-top: 23px;
    }

        .campSearch .btn-red {
            margin-top: 10px;
            width: 100%;
            border-radius: 4px;
        }
}

/********* explore destinations ************************/
@media (min-width: 1440px) {
    .container.home-explore-section {
        width: 1296px;
    }
}

.home-explore-section {
    font-family: 'Montserrat', sans-serif;
    margin-top: 53px;
    padding-left: 0px;
    padding-right: 0px;
}

        .home-explore-section .slideScroll {
            padding: 0px 0px 61px;
        }

        .home-explore-section .slideImg {
            flex: 0 1 auto;
            margin: 0px 10px;
        }

            .home-explore-section .slideImg img {
                margin: 0;
                width: 100%;
            }

            .home-explore-section .slideImg:hover {
                -webkit-transform: none;
                -moz-transform: none;
                -o-transform: none;
                transform: none;
            }

            .home-explore-section .slideImg .slideInfo {
                display: flex;
                justify-content: center;
                align-items: center;
                position: absolute;
                top: 0;
                bottom: auto;
                width: 100%;
                height: 100%;
                border-radius: 10px;
            }

            .home-explore-section .slideImg:hover .slideInfo {
                background-color: rgba(87, 166, 155,.3);
            }

        .home-explore-section .slideInfo p {
            font-weight: 500;
            text-align: center;
        }

    .exploreLink {
        display: block;
        text-align: right;
        padding-right: 10px;
    }

        .exploreLink a {
            font-size: 18px;
            line-height: 22px;
            color: #474342;
            font-weight: 500;
            text-decoration: none;
        }

            .exploreLink a:hover {
                text-decoration: underline;
            }

            .exploreLink a img {
                margin-left: 5.5px;
                width: 18px;
            }

    @media (max-width: 1024px) {
        .home-explore-section .slideInfo p {
            font-size: 18px;
            line-height: 22px;
        }

        .exploreLink a {
            font-size: 16px;
            line-height: 19px;
        }
    }

    @media (max-width: 767px) {
        .home-explore-section {
            margin: 24px 0px;
        }

            .home-explore-section .slideScroll {
                padding: 0px 0px 30px;
                margin-bottom: 24px;
            }

            .home-explore-section .slideImg {
                flex: 0 0 112px;
                margin: 0 5px;
            }

        .exploreLink {
            text-align: center;
        }
    }

    /************ did you know *******************/
    .home-benefits-bg {
        padding: 224px 0px 0px;
        background-image: url('//images.goodsam.com/goodsam.com/home/2021/grey-slant.svg');
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 0% 0%;
        font-family: 'Montserrat', sans-serif;
        text-align: center;
    }

        .home-benefits-bg h3 {
            font-size: 40px;
            line-height: 46px;
            color: #474342;
            font-weight: 700;
            margin-bottom: 28px;
        }

        .home-benefits-bg p {
            margin-bottom: 5.6px;
        }

            .home-benefits-bg p .gold-text {
                font-size: 24px;
                line-height: 29px;
                font-weight: 700;
            }

        .home-benefits-bg .btn-red {
            margin-top: 10px;
        }

    .affiliateFlex {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 46px auto 46px;
    }

    .affBox {
        position: relative;
        flex: 0 1 auto;
        text-align: center;
    }

    .middle-m {
        margin: 0 24px;
    }

    .affBox img {
        width: 100%;
    }

    .affInfo {
        position: absolute;
        width: 100%;
        bottom: 26px;
    }

    .affLogo {
        margin: 0 auto 18px;
        text-align: center;
    }

    .affLogo.cwgo {
        width: 250px;
    }

    .affLogo.gspark {
        width: 115px;
    }

    .affLogo.pilot {
        width: 147px;
    }

    .home-benefits-bg .affInfo p {
        color: #fff;
        margin-bottom: 0;
    }

        .home-benefits-bg .affInfo p .gold-text {
            font-size: 16px;
            line-height: 19px;
        }

    .home-benefits-bg .btn-red img {
        transform: rotate(-90deg);
        margin-left: 13px;
    }

    .redBar {
        margin: 57px auto 0;
        text-align: center;
        width: 70px;
        height: 7px;
        background-color: #c1122a;
    }

    .membersSave {
        background-image: url('//images.goodsam.com/goodsam.com/home/2021/member-save.jpg');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: bottom right;
        padding-top: 299px;
    }

        .membersSave h3 {
            width: 440px;
            margin: 0px auto 28px 0px;
            font-size: 78px;
            line-height: 78px;
        }

        .membersSave p {
            width: 230px;
            margin: 0px auto 28px 0px;
            line-height: 26px;
        }

        .membersSave .memberIcons {
            display: block;
            margin: 34px auto 111px 0px;
        }

    .memberMobile {
        display: none;
    }

    @media (min-width: 1200px) and (max-width: 1439px) {
        .membersSave {
            padding-top: 11%;
        }
    }

    @media (max-width: 1199px) {
        .membersSave {
            padding-top: 9%;
        }

            .membersSave h3 {
                font-size: 65px;
                line-height: 65px;
            }
    }

    @media (max-width: 1024px) {
        .home-benefits-bg {
            padding: 168px 0px 0px;
        }

            .home-benefits-bg h3 {
                font-size: 32px;
                line-height: 37px;
            }

        .affLogo.cwgo {
            width: 189px;
        }

        .affLogo.pilot {
            width: 110px;
        }

        .affLogo.gspark {
            width: 55px;
        }

        /*.btn-red {
            padding: 12px 23px;
        }*/

        .redBar {
            margin: 52px auto 39px;
        }
    }

    @media (max-width: 991px) {
        .camp-search .btn-red {
            padding: 11px 30.5px;
        }

        .membersSave {
            background-size: 60%;
            padding-top: 39px;
        }

            .membersSave .memberIcons {
                width: 170px;
            }
    }

    @media (max-width: 767px) {
        .home-benefits-bg {
            padding: 106px 0 0;
        }

            .home-benefits-bg h3 {
                font-size: 28px;
                line-height: 32px;
                margin-bottom: 7px;
            }

        .affiliateFlex {
            flex-wrap: wrap;
            margin: 25px 0px 10px;
        }

        .affBox {
            flex: 0 0 100%;
            margin-bottom: 20px;
        }

        .middle-m {
            margin: 0 0 20px;
        }

        .affInfo {
            bottom: 16px;
        }

        .affLogo {
            margin: 0 auto 9px;
        }

        .home-benefits-bg .affInfo p {
            font-size: 16px;
        }

        .redBar {
            margin: 40px auto 0px;
        }
    }

    @media (max-width: 576px) {
        .membersSave {
            background-image: none;
            padding-top: 132px;
            padding-right: 0px;
        }

            .membersSave h3 {
                width: 250px;
                font-size: 40px;
                line-height: 40px;
            }

            .membersSave .memberIcons {
                margin: 34px auto 0px 0px;
            }

        .memberMobile {
            display: block;
            width: 100%;
        }
    }

    /**** RV Rentals ****/
    #rvRentals {
        background-color: #F8F9FA; 
        padding: 100px 0;
    }

    #rvRentals #rvRentalsLogo {
        margin-bottom: 30px;
    }

    #rvRentals p {
        line-height: 26px; 
        margin-top: 6px; 
        margin-bottom: 30px;
    }

    @media (max-width: 1024px) {
        #rvRentals img {
            max-width: 200px;
        }
    }

    @media (max-width: 767px){
        #rvRentals h3 {
            font-size: 28px;
            line-height: 32px;
        }
    }


    /**** marcus banner ****/
    .marcus {
        position: relative;
        background-image: url('//images.goodsam.com/goodsam.com/home/2021/charcoal-slant.svg');
        background-size: cover;
        background-repeat: no-repeat;
        background-position: bottom left;
        background-color: #F8F9FA;
        padding: 22px 0px 7%;
        /*margin-top: 236px;*/
    }

    .marcus-box {
        position: relative;
    }

        .marcus-box img {
            position: relative;
            z-index: 2;
            width: 367px;
        }

    .marcus-bkgd {
        position: absolute;
        background-color: #C30B24;
        border-radius: 10px;
        width: 408px;
        height: 347px;
        top: -22px;
        z-index: 1;
    }

    .marcusInfo .sub {
        font-size: 22px;
        line-height: 45px;
        font-weight: 400;
        margin-bottom: 0;
    }

    .marcusInfo .call {
        margin: 49px 0px 10px;
        line-height: 22px;
    }

    .marcusInfo .email {
        margin: 0px 0px 49px;
        font-size: 18px;
        line-height: 22px;
    }

    .marcusInfo .red-text {
        font-weight: 700;
    }

    .marcusQuote {
        display: block;
        width: 350px;
        margin: 0 auto 0 10%;
    }

        .marcusQuote h4 {
            font-family: 'Montserrat', sans-serif;
            font-size: 40px;
            line-height: 44px;
            font-weight: 700;
            color: #474342;
            margin: 0px 0px 26px;
            text-align: left;
        }

        .marcusQuote .byline {
            font-size: 14px;
            line-height: 26px;
            text-align: left;
            margin: 0;
        }

    @media (max-width: 1024px) {
        .marcus {
            padding: 22px 16px 4%;
        }

        .marcus-box img {
            width: 265px;
        }

        .marcus-bkgd {
            width: 294px;
            height: 250px;
            top: -16px;
        }

        .marcusInfo h3 {
            font-size: 32px;
            line-height: 36px
        }

        .marcusInfo .sub {
            font-size: 16px;
            line-height: 35px;
        }

        .marcusInfo .call {
            margin: 26px 0px 10px;
            line-height: 19px;
        }

        .marcusInfo .email {
            margin: 0px 0px 26px;
            font-size: 16px;
            line-height: 19px;
        }

        .marcusQuote {
            width: 282px;
            margin: 0px;
        }

            .marcusQuote h4 {
                font-size: 32px;
                line-height: 38px;
                margin: 0px 0px 10px;
            }

            .marcusQuote .byline {
                line-height: 20px;
            }
    }

    @media (min-width: 992px) and (max-width: 1024px) {
        .marcusInfo {
            padding-left: 10%;
        }
    }

    @media (max-width: 991px) {
        .marcus .container {
            width: 100%;
            padding-left: 0;
            padding-right: 0;
        }
    }

    @media (max-width: 767px) {
        .marcus {
            padding: 0 16px 12%;
        }

        .marcus-box {
            position: absolute;
            right: 0;
            bottom: 5px;
            text-align: right;
        }

            .marcus-box img {
                width: 113px;
                right: 16px;
            }

        .marcus-bkgd {
            width: 126px;
            height: 106px;
            top: -7px;
            right: 18px;
        }

        .marcusInfo h3 {
            font-size: 28px;
            line-height: 32px;
        }

        .marcusInfo .sub {
            font-size: 12px;
            line-height: 20px;
        }

        .marcusInfo .call {
            margin: 17px 0px 10px;
            font-size: 12px;
            line-height: 15px;
        }

        .marcusInfo .email {
            font-size: 12px;
            line-height: 15px;
            margin: 0px 0px 27px;
        }

        .marcusQuote {
            width: 50%;
        }

            .marcusQuote h4 {
                font-size: 16px;
                line-height: 22px;
                margin: 0px 0px 27px;
            }

            .marcusQuote .byline {
                font-size: 12px;
                line-height: 16px;
            }
    }

    .sellBox {
        position: relative;
        background-color: #474342;
        padding: 30px 16px 71px;
        text-align: center;
        margin-top: -5px;
    }

        .sellBox h3 {
            color: #fff;
            margin-bottom: 30px;
            text-align: center;
        }

        .sellBox p {
            color: #fff;
            margin: 0px auto 30px;
            width: 50%;
            text-align: center;
            line-height: 26px;
        }

    @media (max-width: 1024px) {
        .sellBox p {
            width: 70%;
        }
    }

    @media (max-width: 767px) {
        .sellBox h3 {
            margin-bottom: 15px;
            font-size: 28px;
            line-height: 32px;
        }

        .sellBox p {
            width: 100%;
            font-size: 14px;
            line-height: 24px;
            margin: 0 auto 10px;
        }
    }

    @media (max-width: 649px) {

        #homeHeroVisa {
            padding: 30px;
            background-position: right;
        }

            #homeHeroVisa img, #homeHeroVisa svg {
                position: relative;
                margin: 20px auto;
            }

            #homeHeroVisa svg {
                padding: 0 10px;
            }
    }

    @media (min-width: 650px) {
        #homeHeroVisa .row {
            display: flex;
            align-items: flex-start;
            justify-content: space-around;
            padding: 20px;
        }

        #homeHeroVisa .btn-default {
            margin-top: 20px;
        }
    }

    /**** news ****/

    .home-newsfeed h1 {
        font-size: 2.2em;
        margin-top: 0;
        margin-bottom: 0;
    }

    .home-newsfeed h2 {
        font-size: 1.2em;
        margin-top: 0;
        margin-bottom: 10px;
    }

    .home-newsfeed-mobile h2 {
        margin-top: 0;
        margin-bottom: 0;
    }

    /**** ****/

    .image img {
        -webkit-transition: all 1s ease; /* Safari and Chrome */
        -moz-transition: all 1s ease; /* Firefox */
        -ms-transition: all 1s ease; /* IE 9 */
        -o-transition: all 1s ease; /* Opera */
        transition: all 1s ease;
    }

    .image:hover img {
        -webkit-transform: scale(1.25); /* Safari and Chrome */
        -moz-transform: scale(1.25); /* Firefox */
        -ms-transform: scale(1.25); /* IE 9 */
        -o-transform: scale(1.25); /* Opera */
        transform: scale(1.25);
    }

    #ccTxt {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    @media (max-width: 1399px) and (min-width: 1200px) {
    }

    @media (max-width: 1199px) and (min-width: 992px) {

        .widget-top-banner {
            top: -36px;
        }

        .streamer-neg {
            margin-top: -22px;
        }
    }

    @media (max-width: 767px) {

        .home-benefits-headline {
            font-size: 2.2em;
        }

        .home-benefits-subhead {
            font-size: 1.5em;
        }

        .hero-2mil-content-right {
            margin-top: 0px;
        }

        .explore-section-pie-left {
            clear: both;
            width: 100%;
            float: left;
            margin-top: 10px;
        }

        .explore-section-pie-right {
            clear: both;
            width: 100%;
            float: left;
            margin-top: 10px;
        }
    }

    @media (min-width: 649px) {
        #ccTxt {
            margin-left: 50%;
        }
    }

    @media (max-width: 500px) {

        .home-explore-bg-img {
            background-repeat: no-repeat;
            min-height: 205px;
            min-width: 275px;
            padding: 80px 20px 20px 20px;
        }

        /**** newsfeed ****/

        .home-newsfeed-mobile h2 {
            font-size: 1.4em;
            margin-top: 0;
            margin-bottom: 0px;
        }

        .stackedcc {
            max-width: 117%;
        }
    }

    @media (max-width: 1200px) {
        .home-card-image .overlay-text {
            font-size: 0.750em;
        }

            .home-card-image .overlay-text p {
                margin: 0 0 5px;
            }

        .stackedcc {
            margin-top: -53px;
        }
    }