/*==========================
CSS INDEX
============================
1. Header-Area
    1.2 Header-Area -> Version-2
2. Section-Padding
3. Mainmenu-Area
4.2 Burger-Button 
4.3 Hamburger-Menu 
4.4 Transparent-Menu 
5. Product-Details-Area
6. Testimonail-Area
7. Footer-Area
8. Subscribe-Form
==========================*/

/*----------------------
1. Header-Area
-----------------------*/

.header-area {
    background-repeat: no-repeat;
    background-position: right top;
    background-size: auto 100%;
    padding-top: 250px;
    padding-bottom: 250px;
    position: relative;
    z-index: 2;
}

.header-area.v3 {
    background-position: top -300px center;
    background-size: auto 100%;
    padding-bottom: 0;
}
.header-area.v1:after {
    position: absolute;
    content: "";
    height: 100%;
    width: 50%;
    top: 0;
    right: 0;
    background: url(../images/header-bg-2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    z-index: -1;
}

/*---------------------------
1.2 Header-Area -> Version-2
----------------------------*/
.footer-area.v2,
.price-area.v2,
.product-area.v2,
.header-area.v2 {
    background-image: -webkit-gradient(linear, left top, right top, from(#5040F4), to(#31B4FE));
    background-image: linear-gradient(to right, #5040F4 0%, #31B4FE 100%);
}

.footer-area.v2 {
    margin-top: 200px;
}

/*-----------------------
2. Section-Padding
------------------------*/


.about-section.v1 {
    padding: 260px 0;
}

.feature-area.v2 {
    padding-bottom: 70px;
}

.intor-area-1 {
    padding-top: 150px;
    padding-bottom: 150px;
    background-size: auto 100%;
}

.intor-area-2 {
    padding-top: 150px;
    padding-bottom: 150px;
    background-size: auto 100%;
}

.details-area {
    padding-top: 150px;
}

.product-area {
    padding: 150px 0;
}

.product-area.v2 {
    padding: 200px 0;
}

.testimonial-area {
    padding: 200px 0;
}


.testimonial-area.v1,
.testimonial-area.v3 {
    padding: 150px 0;
}
.testimonial-area.v1 {
    padding-bottom: 180px;
}

.price-area.v1 {
    padding: 120px 0;
}

.price-area.v2 {
    padding: 220px 0 0 0;
}

.price-area.v3 {
    background-repeat: no-repeat;
    background-position: top center;
    background-size: auto 100%;
    background-image: url('../images/price-bg-v3.png');
    padding-top: 250px;
    padding-bottom: 150px;
}

.sponsor-area {
    padding-bottom: 150px;
}
.produst-list-area.v2 {
    padding-top: 70px;
}
.testimonial-area.v2 {
    padding-bottom: 70px;
}

.service-area.v1 {
    padding-bottom: 130px;
}
/*--------------------------
3. Mainmenu-Area
---------------------------*/
.mainmenu-area {
    position: absolute;
    width: 100%;
    z-index: 999;
    background-color: #ffffff;
    padding: 15px 0;
}

.mainmenu-area.affix {
    position: fixed;
    top: 0;
    width: 100%;
}

.mainmenu-area.transparent.affix {
    background-color: #7D37E1
}

.mainmenu-area.v2.transparent.affix {
    background-color: #2277FA
}

.site-brand .logo {
    font-size: 20px;
    font-weight: 700;
    padding: 10px 10px 10px 0;
    display: block;
}


.mainmenu {
    text-align: left;
    display: block;
}

.mainmenu ul {
    list-style: none;
    margin: 0;
    padding: 0;
    float: right;
}

.mainmenu ul li {
    display: inline-block;
    position: relative;
}


.mainmenu ul li a {
    padding: 15px;
    display: block;
    font-family: 'Josefin Sans', sans-serif;
    position: relative;
    font-size: 18px;
    font-weight: 400;
}

.mainmenu ul li a:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: #333333;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.transparent .mainmenu ul li a:after {
    background-color: #ffffff;
}

.mainmenu ul li.active > a:after,
.mainmenu ul li:hover > a:after {
    width: 100%;
}

.mainmenu ul li a i {
    -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    margin-left: 2px;
    float: right;
    margin-top: 6px;
    margin-left: 10px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.mainmenu ul li.open > a > i {
    -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
}

.mainmenu ul .sub-menu li a i {
    -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
}

.mainmenu ul .sub-menu > li.open > a i {
    -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
}
.affix a.logo{
    color: #fff !important;
    transition: all .3s;
}
.affix{
    transition: all .3s;
}
/*----------------------
4.2 Burger-Button 
----------------------*/





.burger {
    border: none;
    margin: 0;
    padding: 0;
    background: none;
    width: 30px;
    right: 30px;
    top: 30px;
    z-index: 99999;
    display: none;
}

.burger .bar {
    width: 30px;
    height: 3px;
    display: block;
    background-color: #606060;
    margin-bottom: 6px;
    border-radius: 10px;
    position: relative;
    right: 0;
    top: 0;
    opacity: 1;
    -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5)
}


.burger .bar:last-child {
    margin-bottom: 0;
}

.burger.play .bar:nth-child(1) {
    top: 9px;
    -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
}


.burger.play .bar:nth-child(2) {
    right: 20px;
    opacity: 0;
}

.burger.play .bar:nth-child(3) {
    top: -9px;
    -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
}


/*---------------------
4.3 Hamburger-Menu 
---------------------*/

.topshape {
    height: 200px;
    background: transparent;
    position: relative;
    z-index: 2;
}

.topshape:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
   background: rgba(0, 0, 0, 0) linear-gradient(to right top, #ffffff 50%, transparent 50%) repeat scroll 0 0;

}


.topshapewrap {
    position: absolute;
    width: 100%;
    bottom: 0;
}


.topshape-botom {
    height: 200px;
    background: transparent;
    position: relative;
    z-index: 2;
}

.topshape-botom:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
   background: rgba(0, 0, 0, 0) linear-gradient(to right bottom, #ffffff 50%, transparent 50%) repeat scroll 0 0;

}

.topshape-bottom-wrap {
    position: absolute;
    width: 100%;
    top: 0;
}





.productShape1inner {
    height: 200px;
    position: relative;
    z-index: 2;
}

.productShape1inner:after {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0) linear-gradient(to left bottom, #ffffff 50%, transparent 50%) repeat scroll 0 0;
}

.productShape1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1
}





.productShape2inner {
    height: 200px;
    position: relative;
    z-index: 2;
}

.productShape2inner:after {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0) linear-gradient(to right top, #ffffff 50%, transparent 50%) repeat scroll 0 0;
}

.productShape2 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: -1
}

.product-area.v2 {
    padding: 300px 0;
}



.hamburger .burger {
    display: block;
}

.hamburger .mainmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: fixed;
    right: 0;
    top: 0;
    height: 100vh;
    min-width: 350px;
    background-color: #7D37E1;
    padding: 100px 30px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    overflow-y: auto;
    overflow-x: inherit;
    z-index: 999;
}

.hamburger .mainmenu ul {
    float: none;
}

.hamburger .mainmenu ul li {
    display: block;
}

.hamburger .mainmenu ul li a {
    padding: 8px;
    font-size: 20px;
    color: #ffffff;
}

.hamburger .mainmenu .sub-menu .sub-menu,
.hamburger .mainmenu .sub-menu {
    position: static;
    margin-left: 50px;
    padding: 10px;
    background: none;
    border-radius: 0;
}

.hamburger .mainmenu .sub-menu li a {
    padding: 1px;
    font-size: 16px;
}



/*---------------------
4.4 Transparent-Menu 
----------------------*/
.transparent .site-brand .logo {
    color: #ffffff;
}

.mainmenu-area.transparent {
    background-color: transparent;
}

.mainmenu-area.transparent a {
    color: #ffffff;
}

.transparent .burger .bar {
    background-color: #ffffff;
}


/*-----------------------
5. Product-Details-Area
------------------------*/

ul.product-details {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.product-details li {
    display: block;
    padding-right: 30px;
    margin-bottom: 30px;
    font-size: 20px;
    -webkit-box-shadow: 0 0 15px 0 #E8E8E8;
    box-shadow: 0 0 15px 0 #E8E8E8;
    border-radius: 5px;
    background-color: #ffffff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-transform: translateY(0);
        transform: translateY(0)
}

ul.product-details li:hover {
    -webkit-box-shadow: 0 10px 15px 0 #E8E8E8;
    box-shadow: 0 10px 15px 0 #E8E8E8;
    -webkit-transform: translateY(-5px);
        transform: translateY(-5px)
}

ul.product-details li:last-child {
    margin-bottom: 0;
}

ul.product-details li .title {
    background-color: rgba(0, 159, 253, 0.07);
    padding: 30px 50px;
    display: inline-block;
    min-width: 300px;
    margin-right: 30px;
    color: #0F1D46;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Josefin Sans', sans-serif;
}

/*--------------------
6. Testimonail-Area
----------------------*/

.testimonail-item {
    background-color: #ffffff;
    padding: 50px;
    border-radius: 5px;
    position: relative;
    -webkit-box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
    box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
    margin-top: 15px;
    margin-bottom: 60px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}
.testimonail-item {
    background-color: #ffffff;
    padding: 60px 50px 90px 50px;
    border-radius: 5px;
    position: relative;
    -webkit-box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
    box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
     margin-top: 15px;
    margin-bottom: 90px;
    margin-bottom: 60px;
    /-webkit-transition: 0.3s; 
    transition: 0.3s;
}
.testimonail-item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    background-color: #ffffff;
    -webkit-box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
    box-shadow: 5px 5px 30px 0 rgba(182, 182, 227, 0.16);
    z-index: -3;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.active .testimonail-item:before {
    top: 30px;
    left: 30px;
}

.testimonail-item .desc {
    margin-bottom: 30px;
    font-size: 20px;
    line-height: 35px;
    color: #334d88;
    opacity: .6;
}
.testimonail-item .desc:after,
.testimonail-item .desc:before {
    content: '"';
}

.testimonail-item .desc:before {
    margin-right: 5px;
}

.testimonail-item .desc:after {
    margin-left: 5px;
}

.testimonail-item .title {
    font-size: 20px;
    margin-bottom: 5px;
}

.testimonail-item .position {
    font-size: 17px;
}

.testimonail-item .testimonail-footer:after {
    content: '"';
    font-size: 200px;
    color: #B181FF;
    opacity: 0.16;
    position: absolute;
    right: 50px;
    bottom: 30px;
}

.testimonial-slider {
    z-index: 1;
}

.testimonial-slider .carousel-inner {
    z-index: -1;
}

.testimonial-slider .carousel-indicators {
    position: static;
    bottom: 0;
    margin: 30px 0 0 0;
    padding: 0;
    width: 100%;
    left: 0;

}

.testimonial-slider .carousel-indicators li {
    border: none;
    width: 60px;
    height: 60px;
    text-indent: 0;
    border-radius: 100%;
    overflow: hidden;
    -webkit-box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.2);
    margin: 5px;
    -webkit-transition: 0.3s;
    transition: 0.3s
}

.testimonial-slider .carousel-indicators li:nth-child(-n + 8) {
    position: absolute;
    left: 0;
    top: 0;
}

.testimonial-slider .carousel-indicators li:nth-child(1) {
    width: 100px;
    height: 100px;
    left: 12vw;
    top: 0;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.testimonial-slider .carousel-indicators li:nth-child(2) {
    left: 18vw;
    top: 10vh;
    width: 70px;
    height: 70px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
}

.testimonial-slider .carousel-indicators li:nth-child(3) {
    left: 4vw;
    top: 8vh;
    width: 150px;
    height: 150px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s;
}

.testimonial-slider .carousel-indicators li:nth-child(4) {
    left: 13vw;
    top: 22vh;
    width: 110px;
    height: 110px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s;
}

.testimonial-slider .carousel-indicators li:nth-child(5) {
    left: auto;
    right: 5vw;
    top: 8vh;
    width: 90px;
    height: 90px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.testimonial-slider .carousel-indicators li:nth-child(6) {
    left: auto;
    right: 12vw;
    top: 0;
    width: 70px;
    height: 70px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
}

.testimonial-slider .carousel-indicators li:nth-child(7) {
    left: auto;
    right: 13vw;
    top: 10vh;
    width: 150px;
    height: 150px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s
}

.testimonial-slider .carousel-indicators li:nth-child(8) {
    left: auto;
    right: 6vw;
    top: 22vh;
    width: 120px;
    height: 120px;
    -webkit-animation: jump 4s ease-in-out alternate infinite;
    animation: jump 4s ease-in-out alternate infinite;
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s;
}

.testimonial-slider .carousel-indicators li.active {
    -webkit-animation-play-state: paused !important;
    animation-play-state: paused !important;
}

@-webkit-keyframes jump {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40% {
        -webkit-transform: translate3d(0, 50%, 0);
        transform: translate3d(0, 50%, 0);
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes jump {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40% {
        -webkit-transform: translate3d(0, 50%, 0);
        transform: translate3d(0, 50%, 0);
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}


.nav-control .control {
    height: 3px;
    width: 50px;
    background-color: #ffffff;
    display: inline-block;
    position: relative;
    margin: 5px;
    opacity: 0.8;
}

.v3 .nav-control .control {
    background-color: #8A19FA;
}

.nav-control .control:hover {
    width: 80px;
    opacity: 1;
}

.nav-control .control:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 30px;
    display: block;
    -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
}

.nav-control .control.left:after {
    content: "";
    border-right: 8px solid #ffffff;
    border-bottom: 8px solid transparent;
    border-top: 8px solid transparent;
    width: 0;
    height: 0;
    position: absolute;
    left: -5px;
    top: -6px;
}

.v3 .nav-control .control.left:after {    
    border-right: 8px solid #8A19FA;
}
.nav-control .control.right:after {
    content: "";
    border-left: 8px solid #ffffff;
    border-bottom: 8px solid transparent;
    border-top: 8px solid transparent;
    width: 0;
    height: 0;
    position: absolute;
    right: -5px;
    top: -6px;
}
.v3 .nav-control .control.right:after {
    border-left: 8px solid #8A19FA;    
}

/*-----------------
7. Footer-Area
-------------------*/
.footer-area {
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
}

.footer-bottom {
    padding-top: 80px;
    padding-bottom: 60px;
    color: #ffffff;
}

.copyright-area {
    padding-bottom: 80px;
    color: #ffffff;
}

.footer-area.v3 .copyright-area {
    padding-top: 60px;
    padding-bottom: 0;
}

.footer-bottom.v3 {
    padding-top: 300px;
}

.footer-bottom a {
    color: #ffffff;
}

.footer-bottom .widget-title {
    color: #ffffff;
    font-size: 22px;
}

.footer-bottom .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-bottom .widget ul li {
    display: block;
    padding: 5px 0;
}

.footer-bottom .widget ul li a {
    display: block;
}

.footer-bottom .widget ul li a:hover {
    color: #ffffff;
}

.footer-bottom .widget ul li a:before {
    content: "";
    width: 0;
    height: 2px;
    background-color: #ffffff;
    display: inline-block;
    margin-right: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.footer-bottom .widget ul li:hover a:before {
    width: 20px;
    margin-right: 5px;
}

/*--------------------
8. Subscribe-Form
---------------------*/

.subscribe-area {
    padding: 100px 100px;
    -webkit-box-shadow: 0 0 50px 0 rgba(80, 107, 135, 0.34);
    box-shadow: 0 0 50px 0 rgba(80, 107, 135, 0.34);
    border-radius: 10px;
    background-color: #ffffff;
}

.subscribe-area.v2 {
    margin-top: -200px;
}

.product-single-slider .item {
    text-align: center;
    display: inline-block;
}

.over-hidden {
    overflow: hidden;
}