
body { overflow-x: hidden; }
:root { --primary: #d7000f !important }
.bg-primary { background-color: #d7000f !important; }
.color-primary { color: #d7000f !important; }
.btn-danger { background-color: #d7000f; border-color: #d7000f; }
.btn-danger:hover { background-color: #ac000b; border-color: #ac000b; }
.btn-danger:not(:disabled):not(.disabled).active, .btn-danger:not(:disabled):not(.disabled):active, .show > .btn-danger.dropdown-toggle, 
.btn-danger.focus, .btn-danger:focus { background-color: #d7000f; border-color: #ac000b; }
.btn-xxl { padding: .5rem 3rem .8rem; font-size: 2rem; font-weight: 900; line-height: 1.5; border-radius: .5rem; }


/** 页头 comm/head.html **/
.xx-navbar {
    padding: 0;
    box-shadow: 0 .3125rem .625rem rgba(0, 0, 0, .1);
    background-color: white;
}
.xx-navbar .container {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: 1140px !important;
}
.xx-navbar .logo {
    width: 18.75rem;
    background-color: #d7000f;
    background-image: url(../images/logo-xl-white.png);
    background-repeat: no-repeat;
    background-size: 18.75rem auto;
    height: 6.25rem;
}
.xx-navbar .left, .xx-navbar .right {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: center;
    height: 6.25rem;
    margin: 0 1rem;
    width: 23.31rem;
}
.xx-navbar .nav-link {
    width: 5.77rem;
    text-align: center;
    margin: 0 1rem;
    font-size: .875rem;
    line-height: 6.25rem;
    padding: 0;
    color: #343a40;
    font-weight: 700;
    position: relative;
}
.xx-navbar a.nav-link:hover, .xx-navbar a.nav-link.active {
    color: #d7000f;
    font-weight: 700;
}
.xx-navbar a.nav-link.active::after, .xx-navbar a.nav-link:hover::after {
    content: '';
    width: 3.75rem;
    height: 5px;
    position: absolute;
    bottom: 0;
    left: 1.01rem;
    background-color: #d7000f;
    animation-name: navbar-link-hover;
    animation-duration: .5s;
}
@keyframes navbar-link-hover {
    from {
        width: 0rem;
        left: 1.875rem;
    }
    to {
        width: 3.75rem;
        left: 1.01rem;
    }
}
.xx-navbar-holder { height: 6.25rem; }
.xx-navbar .m {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    justify-content: center;
}
.xx-navbar .m a {
    padding: .2rem 1rem;
    color: #d7000f;
    text-decoration: none;
}
.xx-navbar .m a span {
    font-size: 3rem;
}


/** 移动端底部导航 **/
.xx-footbar, .xx-footbar-holder {
    height: 6.25rem;
}
.xx-footbar {
    box-shadow: 0 0 0 black, 0 -0.3125rem .625rem rgba(0, 0, 0, .25);
    background-color: #d7000f;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: center;
}
.xx-footbar a {
    flex-grow: 1;
    color: white;
    border-right: 1px solid white;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    text-decoration: none;
}
.xx-footbar a:last-child {
    border: 0;
}
.xx-footbar a .iconfont {
    font-size: 3rem;
    margin-right: .5rem;
}



/** 移动端页脚 **/
.xx-footer-mobile {
    background-color: rgb(245, 245, 245);
}
.xx-footer-mobile > .container {
    padding-top: 2rem;
    padding-bottom: 2rem;
    color: #666;
    font-size: 1.5rem;
    text-align: center;
}
.xx-footer-mobile a {
    color: #666;
}



/** 页脚 comm/foot.html **/
.xx-footer {
    background-color: #35363a;
}
.xx-footer .container {
    padding: 0;
}
.xx-footer .foot-nav {
    height: 8.125rem;
    border-bottom: 1px solid #666;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.xx-footer .foot-nav .foot-nav-items a.nav-link {
    display: inline;
    color: white;
    font-size: 1rem;
    padding: .5rem 0;
    margin: 0 0 0 2.4rem;
}
.xx-footer .foot-nav .foot-nav-items a.nav-link:hover {
    border-bottom: 1px dotted white;
}

.xx-footer .foot-copyright, .xx-footer .foot-copyright a {
    color: #aeaeae;
    font-size: 0.875rem;
    text-decoration: none;
    line-height: 1.5;
}

.xx-footer .foot-info {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    color: white;
    font-size: 1rem;
}
.xx-footer .foot-info ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.xx-footer .foot-info ul li {
    height: 3.125rem;
    padding: .625rem 0;
    line-height: 1.75rem;
    overflow: hidden;
}
.xx-footer .foot-contactus {
    flex-grow: 1;
}
.xx-footer .foot-partners {
    width: 10.5rem;
}
.xx-footer .foot-info .foot-partners ul li > div {
    height: 1.875rem;
    overflow: hidden;
    background-repeat: no-repeat;
    background-image: url(../images/footer-partners.png);
}
.xx-footer .foot-info .foot-partners .meituan {
    width: 5rem;
}
.xx-footer .foot-info .foot-partners .ele {
    width: 5.625rem;
    background-position: -6.25rem 0;
}
.xx-footer .foot-info .foot-partners .qianniuhua {
    width: 10.5rem;
    background-position: -12.5rem 0;
}
.xx-footer .foot-info .foot-contactus span {
    float: left;
}
.xx-footer .foot-contactus img {
    height: 1.875rem;
}
.xx-footer .foot-info .foot-contactus a {
    display: inline-block;
    height: 1.875rem;
    width: 1.875rem;
    background-repeat: no-repeat;
    background-image: url(../images/footer-contactus.png);
}
.xx-footer .foot-info .foot-contactus a.weixin {
    width: 2.3125rem;
}
.xx-footer .foot-info .foot-contactus a.phone {
    background-position: -2.3125rem 0;
}
.xx-footer .foot-info .foot-qrcode img {
    height: 8.75rem;
    margin-top: 1.25rem;
}
.xx-footer .foot-info .foot-qrcode p {
    font-size: .875rem;
    text-align: center;
    font-weight: 200;
    line-height: 2.5rem;
    margin: 0;
}


/** 公用隔断 **/
.partition {
    background-color: #35363a;
}
.partition .container {
    height: 11.25rem;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
}
.partition .people {
    width: 13.75rem;
    position: relative;
}
.partition .people .image {
    width: 16.25rem;
    height: 16.25rem;
    background-image: url(../images/people-1.png);
    background-repeat: no-repeat;
    background-size: 16.25rem auto;
    position: absolute;
    left: -0.9375rem;
    bottom: 0;
}
.partition .people .triangle {
    border: 1.5625rem solid transparent;
    border-bottom: 1.5625rem solid white;
    position: absolute;
    left: 20.625rem;
    bottom: 0;
}
.partition .intro {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    justify-content: center;
    color: white;
}
.partition .intro img {
    width: 15.9375rem;
}
.partition .intro p {
    margin: .625rem 0 0;
}
.partition .intro .title {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    align-items: center;
}
.partition .intro .logo {
    width: 13rem;
    height: 4.125rem;
    background-image: url(../images/partition-logo.png);
    background-repeat: no-repeat;
    background-size: 13rem auto;
}
.partition .line {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 4.375rem;
}
.partition .line::after {
    content: '';
    width: 2px;
    height: 2.1875rem;
    background-color: #999;
    transform: rotate(30deg);
}
.partition .intro .channel {
    height: 1.875rem;
    width: 42.1875rem;
    background-image: url(../images/partition-channel.png);
    background-repeat: no-repeat;
    margin-top: .9375rem;
}
.partition .holder {
    flex-grow: 1;
}
.partition .contact {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    justify-content: center;
}
.partition .people .image.type-1 {
    background-image: url(../images/people-1.png);
}
.partition .people .image.type-2 {
    background-image: url(../images/people-2.png);
}
.partition .people .image.type-3 {
    background-image: url(../images/people-3.png);
}
.partition .people .image.type-4 {
    background-image: url(../images/people-4.png);
}
.partition .people .image.type-5 {
    background-image: url(../images/people-5.png);
}
.partition .people .image.type-6 {
    background-image: url(../images/people-6.png);
}
.partition .people .image.type-7 {
    background-image: url(../images/people-7.png);
}
.partition .people .image.type-8 {
    background-image: url(../images/people-8.png);
}
.partition .people .triangle.type-1 {
    border-bottom-color: white;
}
.partition .people .triangle.type-2 {
    border-bottom-color: #fef7f7;
}

/** 浮动客服 **/
.float-service {
    left: auto;
    right: 1rem;
    bottom: 8.125rem;
    width: 6.25rem;
    height: 20rem;
    background-image: url(../images/float-service.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 20rem;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    align-items: center;
}
.float-service > a {
    width: 3.75rem;
    height: 3.75rem;
}
.float-service .cooperation {
    margin-top: 5.9375rem;
}
.float-service .phone {
    margin-top: .625rem;
}
.float-service .weixin {
    margin-top: .625rem;
}
#modal-phone .content {
    padding-left: 1.25rem;
    padding-top: .9375rem;
}

#modal-weixin .modal-dialog {
    width: 18.75rem;
    padding: 1.25rem;
}
#modal-weixin .content {
    text-align: center;
    padding-bottom: 1.25rem;
}
#modal-weixin .content img {
    border-radius: .5rem;
}





/** 移动端菜单 **/
.mobile-menu {
    background-color: rgba(0, 0, 0, .8);
}
.mobile-menu .modal-dialog {
    margin: 0;
    max-width: 100% !important;
    width: 100%;
    height: 100%;
}
.mobile-menu .modal-content {
    border: 0;
    border-radius: 0;
    background-color: transparent;
    padding: 0 15px 15px;
}
.mobile-menu .modal-content ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.mobile-menu .modal-content li {
    height: 6.25rem;
    border-bottom: 1px solid white;
}
.mobile-menu .modal-content li:first-child {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    justify-content: space-between;
    border-bottom: 0;
}
.mobile-menu .modal-content .close {
    font-size: 3rem;
    padding: .2rem 1rem;
    color: white;
    opacity: 1;
}
.mobile-menu .modal-content .close span {
    font-size: 3rem;
    color: white;
}
.mobile-menu .modal-content li .logo {
    width: 18.75rem;
    height: 6.25rem;
    background-image: url(../images/logo-xl-white.png);
    background-repeat: no-repeat;
    background-size: 18.75rem auto;
}
.mobile-menu .modal-content li a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 6.25rem;
    text-align: center;
    font-size: 2rem;
    color: white;
}
.mobile-menu .modal-content li a.active {
    color: #d7000f;
}



