/*-----------------------------------------------------------------------------------

	Template Name: "the 8" - Creative Multipurpose Template 
	Template URI: http://themeforest.net/user/CreativeWS/portfolio
	Description: G7 is a clean and powerful multipurpose template suitable for a wide variety of businesses. 
		Its fresh and clean design, inspired by iOS 8, complete with "flat" graphics and copious white space, outstands this template from others! 
	Author: Creative Web Solutions 
	Author URI: http://creaws.com
	
-----------------------------------------------------------------------------------

-- GENERAL
	-- fonts
	-- reset
	-- defaults
	-- headings
	-- forms
	-- buttons
-- PLUGINS
	-- isotope
	-- owl carousel
-- LAYOUT
	-- clearfix
	-- grid
	-- page
	-- language selector
	-- cart summary
	-- follow us
	-- logo
	-- main nav
	-- mobile nav
	-- page-title
	-- parallaxify
	-- slideshow
	-- features
	-- bgvideo
-- CONTENT
	-- paralaxed
	-- share
	-- filter
	-- portfolio
	-- portfolio nav
	-- blog
	-- comments
	-- add comment
	-- woocommerce
	-- products grid
	-- product
	-- product tabs
	-- cart products
	-- cart totals
	-- shipping calculator
	-- pager
	-- not found
	-- countdown
	-- subscription
	-- projects
	-- timeline
	-- sitemap
	-- map
	-- contacts
	-- feedback
-- COMPOSER
	-- text
	-- grid
	-- accordion
	-- callout
	-- chart graph
	-- chart pie
	-- soc icon
	-- list
	-- message
	-- milestone
	-- pricing table
	-- progress bar
	-- process
	-- services
	-- tabs
	-- team
	-- testimonial
	-- toggle
	-- twitter
	-- video
-- WIDGETS
	-- widget
	-- widget search 
	-- widget categories 
	-- widget recent posts 
	-- widget recent photos 
	-- widget recent comments
	-- widget tags 
	-- widget details 
	-- widget filter
	-- widget cart
	-- widget sellers
-- FOOTER
	-- widget
	-- widget about
	-- widget contacts
	-- recent posts
	-- feedback
	-- secondary nav
	-- copyrights
	-- scroll top
-- TEMPLATE ADVERTISEMENT
	-- section 1: Retina Ready & Fully Responsive 
	-- section 2: Parallax Effect Sections
	-- section 3: Extensive Style Options 
	-- section 4: iOS 7-inspired Design
	-- section 5: Font Awesome Icons integrated
	-- section 6: Styled Content Elements
	-- section 7: WooCommerce Ready 
	-- section 8: WooCommerce Content
	
*/

/*************************************************************************/

/*----------------------------------------------------------------------------*/
/*                                  GENERAL                                   */
/*----------------------------------------------------------------------------*/

/**/
/* fonts */
/**/
@import url(http://fonts.googleapis.com/css?family=Roboto:100,300,400);


/**/
/* reset */
/**/
html, body, iframe, header, footer, main, aside, nav, section, article, div,
h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li, hr, blockquote, pre,
a, address, del, em, strong, sub, sup, figure, figcaption, img,
form, fieldset, legend, label, input, select, textarea, button,
table, thead, tbody, tfoot, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: none;
    background: none;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

html, body, iframe, header, footer, main, aside, nav, section, article, div,
h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li, hr, blockqoute, pre, figure, figcaption, address,
form, fieldset, legend, label, input, select, textarea, button {
    display: block;
}

input, select, textarea, button {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-appearance: none;
}

html, body {
    -webkit-text-size-adjust: none;
}

dl, dt, dd, ul, ol, li {
    list-style: none;
}

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

    table > tbody > tr {
        border: 1px solid #d1d1d1;
    }

        table > tbody > tr > td {
            padding: 5px 10px;
            border-right: 1px solid #d1d1d1;
        }

a, button {
    cursor: pointer;
}


/**/
/* defaults */
/**/
html, body {
    background: #fff;
    font: 400 15px/1 Roboto, Helvetica, Arial, sans-serif;
    color: #535353;
}

a {
    text-decoration: none;
    color: #B57C01;
    -ms-transition: background 0.3s, color 0.3s;
    -moz-transition: background 0.3s, color 0.3s;
    -webkit-transition: background 0.3s, color 0.3s;
}

    a:hover {
        text-decoration: none;
        color: #000;
    }


/**/
/* headings */
/**/
h1 {
    font-size: 65px;
    font-weight: 100;
    color: #000;
}


/**/
/* forms */
/**/
select,
textarea,
input[type="url"],
input[type="tel"],
input[type="text"],
input[type="email"],
input[type="password"] {
    border-radius: 0;
    font-size: 13px;
    line-height: 17px;
    font-weight: 300;
    color: #000;
    -webkit-appearance: none;
}

textarea {
    resize: none;
}


/**/
/* buttons */
/**/
.button {
    position: relative;
    display: inline-block;
    padding: 12px 30px;
    border-radius: 5px;
    background: #3475AB;
    font-size: 15px;
    line-height: 24px;
    text-align: center;
    color: #fff;
    -ms-transition: background 0.3s, color 0.3s;
    -moz-transition: background 0.3s, color 0.3s;
    -webkit-transition: background 0.3s, color 0.3s;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

    .button:hover {
        background: none;
        box-shadow: inset 0 0 0 1px #3475AB;
        color: #3475AB;
    }

    .button i {
        position: absolute;
        top: 0;
        left: 10px;
        width: 38px;
        font-size: 18px;
        line-height: 48px;
    }

.button-left {
    margin-right: -1px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);
}

.button-middle {
    border-radius: 0;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);
}

    .button-middle + .button-middle,
    .button-middle + .button-right {
        margin-left: -1px;
    }

.button-right {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);
}

.button-with-left-icon {
    padding-left: 48px;
}

.button-with-right-icon {
    padding-right: 48px;
}

    .button-with-right-icon i {
        right: 10px;
        left: auto;
    }

.button-alt {
    background: none;
    box-shadow: inset 0 0 0 1px #3475AB;
    color: #3475AB;
}

    .button-alt:hover {
        background: #3475AB;
        color: #fff;
    }

.button-xlarge {
    padding: 16px 45px;
    font-size: 18px;
    line-height: 26px;
}

.button-large {
    padding: 16px 40px;
    font-size: 16px;
    line-height: 21px;
}

.button-small {
    padding: 10px 25px;
    font-size: 14px;
    line-height: 23px;
}

.button-xsmall {
    padding: 10px 20px;
    font-size: 13px;
    line-height: 18px;
}

    .button-xsmall i {
        width: 28px;
        font-size: 14px;
        line-height: 38px;
    }

    .button-xsmall.button-with-left-icon {
        padding-left: 38px;
    }

.button-white {
    background: #fff;
    box-shadow: inset 0 0 0 1px #fff;
    color: #000;
}

    .button-white:hover {
        box-shadow: inset 0 0 0 1px #fff;
        color: #fff;
    }

    .button-white.button-alt {
        background: none;
        color: #fff;
    }

        .button-white.button-alt:hover {
            background: #fff;
            color: #000;
        }

.button-full-width {
    display: block;
    width: 100%;
}



/*----------------------------------------------*/
/*                   PLUGINS                    */
/*----------------------------------------------*/

/**/
/* isotope */
/**/
.isotope-item {
    z-index: 2;
}

    .isotope-item.isotope-hidden {
        z-index: 1;
    }

.isotope,
.isotope .isotope-item {
    transition-duration: 0.6s;
    -o-transition-duration: 0.6s;
    -ms-transition-duration: 0.6s;
    -moz-transition-duration: 0.6s;
    -webkit-transition-duration: 0.6s;
}

.isotope {
    transition-property: height, width;
    -o-transition-property: height, width;
    -ms-transition-property: height, width;
    -moz-transition-property: height, width;
    -webkit-transition-property: height;
}

    .isotope .isotope-item {
        transition-property: transform;
        -o-transition-property: -o-transform, opacity;
        -ms-transition-property: -ms-transform, opacity;
        -moz-transition-property: -moz-transform, opacity;
        -webkit-transition-property: -webkit-transform, opacity;
    }

        .isotope.no-transition,
        .isotope.no-transition .isotope-item,
        .isotope .isotope-item.no-transition {
            transition-duration: 0s;
            -o-transition-duration: 0s;
            -ms-transition-duration: 0s;
            -moz-transition-duration: 0s;
            -webkit-transition-duration: 0s;
        }


/**/
/* owl carousel */
/**/
.owl-buttons {
    position: absolute;
    right: 0;
    bottom: 100%;
    margin-bottom: 10px;
    font-size: 0;
}

    .owl-buttons div {
        display: inline-block;
        width: 28px;
        height: 28px;
        margin-left: -1px;
        border: 1px solid #c5c5c5;
        font-size: 24px;
        line-height: 26px;
        text-align: center;
        color: #c5c5c5;
        -ms-transition: border 0.3s, background 0.3s, color 0.3s;
        -moz-transition: border 0.3s, background 0.3s, color 0.3s;
        -webkit-transition: border 0.3s, background 0.3s, color 0.3s;
    }

        .owl-buttons div:hover {
            position: relative;
            border-color: #3475AB;
            background: #3475AB;
            color: #fff;
        }

    .owl-buttons .owl-prev {
        padding-right: 2px;
        border-radius: 5px 0 0 5px;
    }

    .owl-buttons .owl-next {
        padding-left: 2px;
        border-radius: 0 5px 5px 0;
    }

.owl-pagination {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    margin-top: 14px;
    font-size: 0;
    text-align: center;
}

    .owl-pagination div {
        display: inline-block;
        width: 7px;
        height: 7px;
        margin: 0 4px;
        border-radius: 50%;
        background: #b8b8b8;
    }

    .owl-pagination .active {
        background: none;
        box-shadow: 0 0 0 1px #3475AB;
    }

@media screen and (max-width: 980px) { /* pad */
    .owl-buttons {
        display: none;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .owl-buttons {
        display: block;
    }
}



/*----------------------------------------------*/
/*                    LAYOUT                    */
/*----------------------------------------------*/

/**/
/* clearfix */
/**/
.clearfix:after {
    content: '';
    display: table;
    clear: both;
}


/**/
/* grid */
/**/
.grid-row {
    width: 1170px;
    margin: 0 auto;
}

    .grid-row:after {
        content: '';
        display: table;
        clear: both;
    }

.grid-col {
    float: left;
    margin-left: 30px;
}

    .grid-col:first-child {
        margin-left: 0;
    }

.grid-col-3 {
    width: 270px;
}

.grid-col-4 {
    width: 370px;
}

.grid-col-6 {
    width: 570px;
}

.grid-col-9 {
    width: 870px;
}

@media screen and (max-width: 1200px) { /* laptop */
    .grid-row {
        width: 940px;
    }

    .grid-col {
        margin-left: 20px;
    }

    .grid-col-3 {
        width: 220px;
    }

    .grid-col-4 {
        width: 300px;
    }

    .grid-col-6 {
        width: 460px;
    }

    .grid-col-9 {
        width: 700px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .grid-row {
        width: 738px;
    }

    .grid-col {
        margin-left: 18px;
    }

    .grid-col-3 {
        width: 171px;
    }

    .grid-col-4 {
        width: 234px;
    }

    .grid-col-6 {
        width: 360px;
    }

    .grid-col-9 {
        width: 549px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .grid-row {
        width: auto;
        margin: 0 20px;
    }

    .grid-col {
        float: none;
        width: 100%;
        margin: 0 0 60px 0;
    }

        .grid-col:last-child {
            margin-bottom: 0;
        }
}


/**/
/* page */
/**/
.page {
    position: relative;
    overflow: hidden;
}

.page-boxed {
    max-width: 1250px;
    margin: 0 auto;
    box-shadow: 0 0 20px rgba(0,0,0,0.5);
}

.page-header-top {
    position: relative;
    z-index: 10;
    padding: 6px 0;
    /* IE10 Consumer Preview */
    background-image: -ms-linear-gradient(top, #89AAC5 0%, #3475AB 100%);
    /* Mozilla Firefox */
    background-image: -moz-linear-gradient(top, #89AAC5 0%, #3475AB 100%);
    /* Opera */
    background-image: -o-linear-gradient(top, #89AAC5 0%, #3475AB 100%);
    /* Webkit (Safari/Chrome 10) */
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #89AAC5), color-stop(1, #3475AB));
    /* Webkit (Chrome 11+) */
    background-image: -webkit-linear-gradient(top, #89AAC5 0%, #3475AB 100%);
    /* W3C Markup, IE10 Release Preview */
    background-image: linear-gradient(to bottom, #89AAC5 0%, #3475AB 100%);
}

    .page-header-top .switcher {
        position: absolute;
        top: 100%;
        left: 50%;
        display: none;
        width: 27px;
        height: 9px;
        margin: 9px 0 0 -14px;
        background: url(../img/page-header-top-switcher.png);
    }

.page-header-bottom {
    position: relative;
    z-index: 9;
    padding: 12px 0;
    background: rgba(255,255,255,1);
    transition: padding 0.3s, background 0.9s;
    -ms-transition: padding 0.3s, background 0.9s;
    -moz-transition: padding 0.3s, background 0.9s;
    -webkit-transition: padding 0.3s, background 0.9s;
}

    .page-header-bottom.fixed {
        box-shadow: 0 0 5px rgba(0,0,0,0.4);
    }

    .page-header-bottom .grid-row {
        position: relative;
    }

    .page-header-bottom + .page-header-bottom-holder {
        position: absolute;
        height: 100px;
        pointer-events: none;
        transition: height 0.3s;
        -ms-transition: height 0.3s;
        -moz-transition: height 0.3s;
        -webkit-transition: height 0.3s;
    }

    .page-header-bottom.fixed {
        position: fixed;
        z-index: 100;
        top: 0;
        left: 0;
        width: 100%;
        padding: 12px 0;
    }

        .page-header-bottom.fixed + .page-header-bottom-holder {
            position: static;
            height: 70px;
        }

.page-header-bottom-alt {
    position: fixed;
    left: 0;
    top: -150px;
    width: 100%;
    opacity: 0;
    color: #3475AB;
    -ms-transition: opacity 0.3s, top 0.5s;
    -moz-transition: opacity 0.3s, top 0.5s;
    -webkit-transition: opacity 0.3s, top 0.5s;
    transition: opacity 0.3s, top 0.5s;
}

    .page-header-bottom-alt + .page-header-bottom-holder {
        position: absolute;
        top: calc(100vh + 99px);
    }

    .page-header-bottom-alt.fixed {
        left: 0;
        opacity: 1;
        display: block;
    }

        .page-header-bottom-alt.fixed + .page-header-bottom-holder {
            position: absolute;
            top: 100vh;
        }

.page-content {
    position: relative;
    padding: 70px 0;
    background: #fff;
}

.no-bottom-padding {
    padding-bottom: 0px;
}

.page-content-alt {
    position: relative;
    padding: 70px 0 10px;
    background: #f7f7f7;
}

#bg-1 {
    background: url(../pic/paralaxed/item-2.jpg) 50% 50% no-repeat;
    background-size: cover;
}

.page-content-alt-2 {
    position: relative;
    padding: 70px 0 10px;
    background: #fff;
}

    .page-content .grid-row,
    .page-content-alt .grid-row,
    .page-content-alt-2 .grid-row {
        margin-bottom: 60px;
    }

.page-footer-top {
    position: relative;
    overflow: hidden;
    padding-bottom: 45px;
    background: #f4f4f4;
}

    .page-footer-top .grid-row:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: #d2d2d2;
        background: -ms-linear-gradient(left, #f4f4f4 0%, #e0e0e0 25%, #e0e0e0 75%, #f4f4f4 100%);
        background: -moz-linear-gradient(left, #f4f4f4 0%, #e0e0e0 25%, #e0e0e0 75%, #f4f4f4 100%);
        background: -webkit-linear-gradient(left, #f4f4f4 0%, #e0e0e0 25%, #e0e0e0 75%, #f4f4f4 100%);
    }

    .page-footer-top .grid-col {
        margin-bottom: 0;
        margin-top: 50px;
    }

    .page-footer-top .grid-row {
        margin-bottom: 0;
        position: relative;
    }

.page-footer-bottom {
    position: relative;
    padding: 30px 0;
    background: #b3b3b3;
}

    .page-footer-bottom .grid-row {
        position: relative;
        margin-bottom: 0;
    }

        .page-footer-bottom .grid-row:before {
            content: '';
            position: absolute;
            top: -30px;
            left: 0;
            width: 100%;
            height: 1px;
            background: #d2d2d2;
            background: -ms-linear-gradient(left, #e8e8e8 0%, #d2d2d2 25%, #d2d2d2 75%, #e8e8e8 100%);
            background: -moz-linear-gradient(left, #e8e8e8 0%, #d2d2d2 25%, #d2d2d2 75%, #e8e8e8 100%);
            background: -webkit-linear-gradient(left, #e8e8e8 0%, #d2d2d2 25%, #d2d2d2 75%, #e8e8e8 100%);
        }

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), /* retina */
only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
    .page-header-top .switcher {
        background-image: url(../img/page-header-top-switcher@2x.png);
        background-size: 27px 9px;
    }
}

@media screen and (max-width: 1200px) { /* laptop */
    .page-boxed {
        max-width: 1000px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .page-boxed {
        max-width: 788px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .page-header-top {
        position: relative;
        margin-top: -71px;
        padding: 0;
        text-align: center;
        transition: margin 0.3s;
        -ms-transition: margin 0.3s;
        -moz-transition: margin 0.3s;
        -webkit-transition: margin 0.3s;
    }

        .page-header-top .row {
            margin: 0 -20px;
            padding: 6px 0;
            border-bottom: 1px solid #a8a5a5;
        }

            .page-header-top .row:last-of-type {
                border-bottom: none;
            }

            .page-header-top .row + .row {
                margin-top: 1px;
            }

        .page-header-top .switcher {
            display: block;
        }

        .page-header-top.visible {
            margin-top: 0;
        }

    .page-header-bottom-alt {
        position: static;
        opacity: 1;
        box-shadow: 0 0 5px rgba(0,0,0,0.4);
    }
}



/*----------------------------------------------*/
/*                    HEADER                    */
/*----------------------------------------------*/

/**/
/* language selector */
/**/
.language-selector {
    float: left;
    margin-right: 35px;
    font-size: 12px;
    line-height: 23px;
    color: #fff;
}

    .language-selector i {
        display: block;
        float: left;
        margin-right: 5px;
        font-size: 19px;
        line-height: 23px;
    }

    .language-selector a {
        display: block;
        padding: 0 10px;
        color: #fff;
    }

    .language-selector span {
        display: block;
        float: left;
    }

    .language-selector div {
        position: relative;
        float: left;
        height: 21px;
        margin-left: 6px;
        border: 1px solid #b4b4b4;
        border-radius: 5px;
        line-height: 21px;
        cursor: default;
    }

        .language-selector div:after {
            content: '';
            position: absolute;
            top: 100%;
            right: 0;
            left: 0;
            height: 3px;
        }

        .language-selector div i {
            display: inline-block;
            vertical-align: middle;
            float: none;
            margin: 0 0 0 10px;
            font-size: 12px;
            line-height: 23px;
        }

        .language-selector div ul {
            position: absolute;
            z-index: 100;
            top: 100%;
            left: 0;
            display: none;
            min-width: 100px;
            overflow: hidden;
            margin-top: 3px;
            border-radius: 5px;
            background: rgba(255,255,255,0.95);
        }

        .language-selector div li {
            border-top: 1px solid #e2e2e2;
            text-align: left;
        }

            .language-selector div li:first-child {
                border-top: 0;
            }

        .language-selector div ul a {
            padding: 2px 10px;
            color: #535353;
        }

            .language-selector div ul a:hover {
                background: #3475AB;
                color: #fff;
            }

        .language-selector div:hover ul {
            display: block;
        }

@media screen and (max-width: 767px) { /* phone */
    .language-selector {
        float: none;
        display: inline-block;
        vertical-align: middle;
        margin: 0;
    }
}


/**/
/* cart summary */
/**/
.cart-summary {
    float: left;
    font-size: 12px;
    line-height: 23px;
    color: #fff;
}

    .cart-summary i {
        display: block;
        float: left;
        margin-right: 5px;
        font-size: 19px;
        line-height: 23px;
    }

    .cart-summary a {
        display: block;
        padding: 0 10px;
        color: #fff;
    }

    .cart-summary span {
        display: block;
        float: left;
    }

    .cart-summary div {
        position: relative;
        float: left;
        height: 21px;
        margin-left: 6px;
        border: 1px solid #b4b4b4;
        border-radius: 5px;
        line-height: 21px;
        cursor: default;
    }

        .cart-summary div:after {
            content: '';
            position: absolute;
            top: 100%;
            right: 0;
            left: 0;
            height: 3px;
        }

        .cart-summary div i {
            display: inline-block;
            vertical-align: middle;
            float: none;
            margin: 0 0 0 10px;
            font-size: 12px;
            line-height: 23px;
        }

        .cart-summary div ul {
            position: absolute;
            z-index: 100;
            top: 100%;
            left: 0;
            display: none;
            width: 240px;
            overflow: hidden;
            margin-top: 3px;
            border-radius: 10px;
            background: #fff;
        }

        .cart-summary div:hover ul {
            display: block;
        }

        .cart-summary div li {
            min-height: 54px;
            padding: 15px;
            border-bottom: 1px solid #e9e9e9;
            font-size: 13px;
            line-height: 18px;
            color: #000;
        }

            .cart-summary div li a {
                display: inline;
                padding: 0;
                color: #535353;
            }

                .cart-summary div li a:hover {
                    color: #3475AB;
                }

            .cart-summary div li img {
                display: block;
                float: left;
                width: 54px;
                height: 54px;
                margin-right: 10px;
                border-radius: 10px;
                -ms-transition: opacity 0.3s;
                -moz-transition: opacity 0.3s;
                -webkit-transition: opacity 0.3s;
            }

                .cart-summary div li img:hover {
                    opacity: 0.7;
                }

        .cart-summary div .subtotal {
            min-height: 0;
            padding: 9px 0 9px 0;
            border: 0;
            text-align: center;
            color: #3475AB;
        }

        .cart-summary div .total {
            min-height: 34px;
            padding: 0;
            line-height: 34px;
            text-align: center;
        }

            .cart-summary div .total i {
                display: inline-block;
                float: none;
                margin: 0;
                font-size: 14px;
                line-height: 1;
            }

            .cart-summary div .total a {
                display: block;
                float: right;
                width: 120px;
                border: 1px solid #3475AB;
                border-radius: 0 0 10px 0;
                background: #3475AB;
                color: #fff;
                box-sizing: border-box;
                -moz-box-sizing: border-box;
            }

                .cart-summary div .total a:hover {
                    background: #fff;
                    color: #3475AB;
                }

                .cart-summary div .total a:first-child {
                    float: left;
                    width: 119px;
                    border-radius: 0 0 0 10px;
                }

@media screen and (max-width: 767px) { /* phone */
    .cart-summary {
        float: none;
        display: inline-block;
        vertical-align: middle;
    }

        .cart-summary div ul {
            left: 50%;
            margin-left: -120px;
        }
}


/**/
/* follow us */
/**/
.follow-us a {
    display: block;
    float: right;
    width: 23px;
    height: 23px;
    margin-left: 5px;
    border-radius: 50%;
    background: rgba(255,255,255,0.8);
    color: #7d7d7d;
    font-size: 16px;
    line-height: 23px;
    text-align: center;
    -ms-transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
}

    .follow-us a:hover {
        background: #3475AB;
        color: #fff;
    }

    .follow-us a:last-child {
        margin-left: 0;
    }

@media screen and (max-width: 767px) { /* phone */
    .follow-us {
        display: inline-block;
        vertical-align: middle;
    }
}


/**/
/* logo */
/**/
.logo {
    position: relative;
    float: left;
    height: 76px;
    transition: height 0.3s;
    -ms-transition: height 0.3s;
    -moz-transition: height 0.3s;
    -webkit-transition: height 0.3s;
}

    .logo img {
        position: relative;
        display: block;
        width: auto;
        height: 100%;
    }

.page-header-bottom.fixed .logo {
    height: 45px;
}

@media screen and (max-width: 767px) { /* phone */
    .logo {
        height: 38px;
    }
}


/**/
/* main nav */
/**/
.main-nav {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -19px;
}

    .main-nav li {
        position: relative;
        display: block;
        float: left;
        width: 130px;
        margin-left: 15px;
        padding-bottom: 2px;
        font-size: 13px;
        line-height: 34px;
        font-weight: 400;
        text-align: center;
    }

        .main-nav li a {
            display: block;
            border: 1px solid #d1d1d1;
            border-radius: 7px;
            box-shadow: 0 0 1px #858689;
            color: #333333;
            font-size: 15px;
            /* font-weight: 600; */
            text-shadow: 0 0 1px #DFDFDF;
            -webkit-text-shadow: 0 0 1px #DFDFDF;
            -moz-shadow: 0 0 1px #DFDFDF;
            -webkit-text-shadow: 0 0 1px #DFDFDF;
            -moz-text-shadow: 0 0 1px #DFDFDF;
        }

        .main-nav li:hover > a {
            background: #3475AB;
            color: #fff;
        }

        .main-nav li .active {
            border-color: transparent;
            background: #3475AB;
            color: #fff;
        }

        .main-nav li ul {
            position: absolute;
            z-index: 10;
            top: 100%;
            left: -9999px;
            width: 200px;
            border-radius: 5px;
            box-shadow: 0 0 12px rgba(0,0,0,0.1);
            opacity: 0;
            -ms-transition: opacity 0.3s;
            -moz-transition: opacity 0.3s;
            -webkit-transition: opacity 0.3s;
        }

        .main-nav li:hover > ul {
            left: 0;
            opacity: 1;
        }

        .main-nav li li {
            float: none;
            width: auto;
            margin: 0;
            padding: 0;
            border-top: 1px solid #e2e2e2;
            line-height: 39px;
            font-weight: 300;
            text-align: left;
        }

            .main-nav li li:first-child {
                border-top: 0;
            }

            .main-nav li li a {
                border: none;
                padding-left: 35px;
                background: rgba(255,255,255,0.95);
                border-radius: 0;
                color: #535353;
            }

            .main-nav li li:first-child > a {
                border-radius: 5px 5px 0 0;
            }

            .main-nav li li:last-child > a {
                border-radius: 0 0 5px 5px;
            }

            .main-nav li li a:hover,
            .main-nav li li a.active {
                background: #3475AB;
                color: #fff;
            }

            .main-nav li li ul:before {
                content: '';
                position: absolute;
                top: 0;
                right: 100%;
                width: 2px;
                height: 100%;
                background: transparent;
            }

        .main-nav li:hover li:hover ul {
            top: 0;
            left: 100%;
            margin-left: 2px;
        }

@media screen and (max-width: 980px) { /* pad */
    .main-nav li {
        display: none;
    }

    /*.main-nav li {
        width: 87px;
        font-size: 12px;
    }

        .main-nav li ul {
            width: 150px;
        }

        .main-nav li li a {
            padding-left: 20px;
        }*/
}

@media screen and (max-width: 767px) { /* phone */
    .main-nav {
        display: none;
    }
}


/**/
/* mobile nav */
/**/
.mobile-nav {
    position: absolute;
    top: 50%;
    right: 0;
    display: none;
    margin-top: -15px;
}

    .mobile-nav ul {
        position: absolute;
        z-index: 98;
        top: 100%;
        right: 0;
        width: 240px;
        margin-top: 37px;
        padding: 14px 15px 15px;
        border-radius: 10px;
        background: rgba(243,242,242,0.6);
        opacity: 0;
        pointer-events: none;
        transform: translate(270px,0);
        -ms-transform: translate(270px,0);
        -moz-transform: translate(270px,0);
        -webkit-transform: translate(270px,0);
        transition: opacity 0.3s, transform 0.3s;
        -ms-transition: opacity 0.3s, -ms-transform 0.3s;
        -moz-transition: opacity 0.3s, -moz-transform 0.3s;
        -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    }

        .mobile-nav ul.opened {
            z-index: 99;
            opacity: 1;
            pointer-events: all;
            transform: translate(0,0);
            -ms-transform: translate(0,0);
            -moz-transform: translate(0,0);
            -webkit-transform: translate(0,0);
        }

        .mobile-nav ul.closed {
            z-index: 98;
            opacity: 0;
            pointer-events: none;
            transform: translate(-270px,0);
            -ms-transform: translate(-270px,0);
            -moz-transform: translate(-270px,0);
            -webkit-transform: translate(-270px,0);
        }

        .mobile-nav ul li {
            margin-top: 1px;
        }

        .mobile-nav ul a {
            position: relative;
            display: block;
            padding: 10px 0 10px 15px;
            border-radius: 5px;
            background: #ebebeb;
            font-size: 13px;
            line-height: 16px;
            color: #535353;
        }

            .mobile-nav ul a:hover,
            .mobile-nav ul a.active {
                color: #3475AB;
            }

        .mobile-nav ul i {
            display: block;
            float: right;
            width: 36px;
            height: 16px;
            font-size: 14px;
            line-height: 16px;
            text-align: center;
        }

        .mobile-nav ul .back {
            background: #e1e1e1;
            text-align: center;
        }

            .mobile-nav ul .back em {
                position: relative;
                top: -1px;
                font-style: normal;
            }

        .mobile-nav ul:nth-child(2) {
            text-transform: uppercase;
            transform: translate(0,20px);
            -ms-transform: translate(0,20px);
            -moz-transform: translate(0,20px);
            -webkit-transform: translate(0,20px);
        }

            .mobile-nav ul:nth-child(2).opened {
                transform: translate(0,0);
                -ms-transform: translate(0,0);
                -moz-transform: translate(0,0);
                -webkit-transform: translate(0,0);
            }

            .mobile-nav ul:nth-child(2).closed {
                transform: translate(-270px,0);
                -ms-transform: translate(-270px,0);
                -moz-transform: translate(-270px,0);
                -webkit-transform: translate(-270px,0);
            }

    .mobile-nav .switcher {
        display: block;
        font-size: 16px;
        line-height: 30px;
        color: #535353;
    }

        .mobile-nav .switcher:after {
            content: 'MENU';
        }

        .mobile-nav .switcher i {
            display: block;
            float: left;
            width: 30px;
            height: 30px;
            margin-right: 6px;
            border-radius: 5px;
            background: #FEB500;
            background: -ms-linear-gradient(top, #FEB500 0%, #FF9A00 100%);
            background: -moz-linear-gradient(top, #FEB500 0%, #FF9A00 100%);
            background: -webkit-linear-gradient(top, #FEB500 0%, #FF9A00 100%);
            font-size: 14px;
            line-height: 32px;
            text-align: center;
            color: #fff;
        }

        .mobile-nav .switcher.opened:after {
            content: 'CLOSE';
        }

        .mobile-nav .switcher.opened i {
            line-height: 30px;
        }

            .mobile-nav .switcher.opened i:before {
                content: "\f00d";
            }

@media screen and (max-width: 980px) { /* phone */
    .mobile-nav {
        display: block;
    }
}

@media screen and (max-width: 1200px) { /* phone */
    .logo {
        height: 48px;
    }

    .main-nav li {
        width: 100px;
    }
}

/**/
/* page-title */
/**/
.page-title {
    position: relative;
    z-index: 2;
    background: #f5f5f5;
    border-top: 1px solid #e6e6e6;
}

    .page-title h1 {
        float: left;
        margin: 0 10px -10px 0;
        font-size: 24px;
        line-height: 44px;
        font-weight: 400;
        color: #3475AB;
    }

        .page-title h1 i {
            display: block;
            float: left;
            margin: 11px 6px 0 0;
            width: 17px;
            height: 18px;
            padding-left: 1px;
            border: 2px solid #3475AB;
            border-radius: 50%;
            font-size: 16px;
            line-height: 18px;
            text-align: center;
        }

    .page-title nav {
        float: right;
        padding: 10px 0;
        font-size: 13px;
        line-height: 24px;
    }

        .page-title nav a {
            color: #000;
        }

        .page-title nav span {
            color: #3475AB;
        }


/**/
/* parallaxify */
/**/
.slideshow-wrap * {
    line-height: inherit !important;
}

#scene {
    position: absolute;
    top: 0;
    width: 104%;
    left: -2%;
}

#bg_substrate {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1080px;
    background: #fff none 50% 0 no-repeat;
    background-size: cover;
}

.parallaxify-wrap {
    position: relative;
    overflow: hidden;
}

#bg_container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1080px;
    background-color: transparent;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (max-width: 980px) { /* pad */
    #bg_container,
    #bg_substrate {
        height: 100vw;
    }
}

@media screen and (max-width: 479px) { /* pad */
    #bg_container,
    #bg_substrate {
        height: 120vw;
    }
}


/**/
/* slideshow */
/**/
.slideshow-wrap {
    padding: 60px 0px;
}

.slideshow h1 {
    font-size: 74px;
    line-height: 1;
    font-weight: 100;
    text-transform: uppercase;
    color: #fff;
}

.slideshow h2 {
    font-size: 27px;
    line-height: 1;
    font-weight: 100;
    color: #fff;
}

@media screen and (max-width: 1200px) {
    .slideshow-wrap {
        width: 940px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 980px) {
    .slideshow-wrap {
        width: 738px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px) {
    .slideshow-wrap {
        width: auto;
        margin: 0 20px;
        padding: 30px 0px;
    }
}


/**/
/* features */
/**/
.ft_wrapper {
    position: relative;
}

    .ft_wrapper > * {
        position: relative;
        z-index: 1;
    }

    .ft_wrapper:before {
        content: "";
        position: absolute;
        top: 0;
        height: 350px;
        left: 0;
        right: 0;
        background: -webkit-linear-gradient(bottom, #fff 65%,rgba(255,255,255,0.3));
        background: -moz-linear-gradient(bottom, #fff 65%,rgba(255,255,255,0.3));
        background: -o-linear-gradient(bottom, #fff 65%,rgba(255,255,255,0.3));
        background: -ms-linear-gradient(bottom, #fff 65%,rgba(255,255,255,0.3));
        background: linear-gradient(bottom, #fff 65%,rgba(255,255,255,0.3));
    }

    .ft_wrapper:after {
        content: "";
        position: absolute;
        top: 350px;
        bottom: 0;
        left: 0;
        right: 0;
        background: #fff;
    }

.features {
    position: relative;
    margin: 0 0 0 -30px;
    font-weight: 300;
}

    .features li {
        display: inline-block;
        vertical-align: top;
        /*width: 267px;*/
        margin: 0 0 30px 30px;
        text-align: center;
    }

        .features li > div {
            padding: 35px 10px 20px;
        }

    .features h3 {
        margin: 20px 0 15px;
        font-size: 23px;
        line-height: 24px;
        color: #000;
    }

    .features p {
        line-height: 24px;
    }

    .features .sep {
        height: 1px;
        margin: 10px 0;
        background: #e0e0e0;
        background: -ms-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
        background: -moz-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
        background: -webkit-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
    }

    .features .icon {
        position: relative;
        width: 106px;
        height: 74px;
        overflow: hidden;
        margin: 0 auto;
        border-radius: 20px;
        font-size: 44px;
        line-height: 74px;
        text-shadow: 0 2px rgba(0,0,0,0.3);
        color: #fff;
    }

        .features .icon:before {
            content: "";
            position: absolute;
            width: 105px;
            height: 46px;
            left: 0;
            bottom: 0;
            border-radius: 23px;
            background-image: -ms-linear-gradient(left, rgba(250, 217, 149, 1) 0%, #3475AB 100%);
            background-image: -moz-linear-gradient(left, rgba(250, 217, 149, 1) 0%, #3475AB 100%);
            background-image: -o-linear-gradient(left, rgba(250, 217, 149, 1) 0%, #3475AB 100%);
            background-image: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(250, 217, 149, 1)), color-stop(1, #3475AB));
            background-image: -webkit-linear-gradient(left, rgba(250, 217, 149, 1) 0%, #3475AB 100%);
            background-image: linear-gradient(to right, rgba(250, 217, 149, 1) 0%, #3475AB 100%);
        }

        .features .icon:after {
            content: "";
            position: absolute;
            width: 74px;
            height: 74px;
            left: 50%;
            bottom: 0;
            margin-left: -37px;
            border-radius: 37px;
            background-image: -ms-linear-gradient(left, #E9C069 0%, #C88F14 100%);
            background-image: -moz-linear-gradient(left, #E9C069 0%, #C88F14 100%);
            background-image: -o-linear-gradient(left, #E9C069 0%, #C88F14 100%);
            background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #E9C069), color-stop(1, #C88F14));
            background-image: -webkit-linear-gradient(left, #E9C069 0%, #C88F14 100%);
            background-image: linear-gradient(to right, #E9C069 0%, #C88F14 100%);
        }

        .features .icon > i {
            position: relative;
            z-index: 1;
        }

@media screen and (max-width: 1200px) { /* laptop */
    .features {
        margin-left: -20px;
    }

        .features li {
            width: 216px;
            margin-left: 20px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .features {
        margin: 0 0 22px -18px;
    }

        .features li {
            width: 46%;
            margin: 0 0 2% 2%;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .features {
        margin: 0 -10px 22px -4%;
    }

        .features li {
            width: 46%;
            margin: 0 0 2% 2%;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
        }
}

@media screen and (max-width: 479px) { /* mini phone */
    .features {
        margin: 0 0 20px 0;
        padding-top: 20px;
    }

        .features li {
            width: 100%;
            margin: 0 0 20px;
        }
}


/**/
/* bgvideo */
/**/
.bgvideo {
    position: relative;
    height: 600px;
    overflow: hidden;
}

    .bgvideo:after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: url(../img/bgvideo.png);
    }

    .bgvideo video {
        position: absolute;
        top: 50%;
        left: 50%;
        width: auto;
        height: auto;
        margin: -540px 0 0 -960px;
        min-width: 100%;
        min-height: 100%;
        background-size: cover;
    }

    .bgvideo .pic {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url(../pic/video.jpg) 50% 50% no-repeat;
        background-size: cover;
    }

    .bgvideo .slogan {
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        width: 900px;
        margin: -140px 0 0 -450px;
        padding: 65px 0 25px;
        border-radius: 15px;
        background: rgba(255,255,255,0.1);
        box-shadow: 0 0 0 1px rgba(255,255,255,0.25);
        font-size: 100px;
        font-weight: 100;
        text-align: center;
        text-transform: uppercase;
        color: #fff;
    }

        .bgvideo .slogan ul {
            position: relative;
            height: 130px;
            overflow: hidden;
        }

        .bgvideo .slogan li {
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            opacity: 0;
            transition: opacity 0.2s;
            -ms-transition: opacity 0.2s;
            -moz-transition: opacity 0.2s;
            -webkit-transition: opacity 0.2s;
        }

        .bgvideo .slogan .active {
            z-index: 1;
            opacity: 1;
            transition: opacity 0.6s;
            -ms-transition: opacity 0.6s;
            -moz-transition: opacity 0.6s;
            -webkit-transition: opacity 0.6s;
        }

        .bgvideo .slogan a {
            display: block;
            width: 30px;
            margin: 0 auto;
            margin-top: 30px;
            font-size: 42px;
            line-height: 0;
            color: #fff;
        }

            .bgvideo .slogan a i {
                vertical-align: middle;
                line-height: 10px;
                opacity: 0.6;
            }

                .bgvideo .slogan a i:first-child {
                    opacity: 0.8;
                }

                .bgvideo .slogan a i:last-child {
                    opacity: 0.2;
                }

        .bgvideo .slogan span {
            display: block;
            font-size: 30px;
            line-height: 1;
            text-transform: none;
        }

        .bgvideo .slogan img {
            position: absolute;
            top: 0;
            left: 50%;
            margin: -38px 0 0 -38px;
        }

@media screen and (max-width: 1024px) {
    .bgvideo video {
        display: none;
    }
}

@media screen and (max-width: 980px) {
    .bgvideo .slogan {
        width: 738px;
        margin: -124px 0 0 -369px;
        font-size: 70px;
    }

        .bgvideo .slogan ul {
            height: 105px;
        }

        .bgvideo .slogan span {
            margin-top: 5px;
        }
}

@media screen and (max-width: 767px) {
    .bgvideo .slogan {
        width: 440px;
        margin: -112px 0 0 -220px;
        font-size: 50px;
    }

        .bgvideo .slogan ul {
            height: 75px;
        }

        .bgvideo .slogan span {
            font-size: 20px;
        }
}

@media screen and (max-width: 480px) {
    .bgvideo .slogan {
        width: 300px;
        margin: -101px 0 0 -150px;
        font-size: 32px;
    }

        .bgvideo .slogan ul {
            height: 53px;
        }

        .bgvideo .slogan span {
            font-size: 16px;
        }
}



/*----------------------------------------------*/
/*                    CONTENT                   */
/*----------------------------------------------*/

/**/
/* paralaxed */
/**/
.parallaxed {
    position: relative;
    overflow: hidden;
}

    .parallaxed > * {
        position: relative;
    }

        .parallaxed > *:not(.parallax-image) {
            z-index: 1;
        }

.parallax-image {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
}

    .parallax-image img {
        width: auto;
        z-index: -2;
    }

.paralaxed .grid-row {
    position: relative;
}

.paralaxed .owl-pagination div {
    background: #fff;
}

.paralaxed .owl-pagination .active {
    background: none;
}



/**/
/* share */
/**/
.share {
    margin-top: 15px;
}

    .share a {
        position: relative;
        display: block;
        float: left;
        width: 22px;
        height: 22px;
        margin: 5px 6px 0;
        border-radius: 3px;
        font-size: 14px;
        line-height: 22px;
        text-align: center;
        color: #fff;
    }

        .share a:after {
            content: '';
            position: absolute;
            top: 50%;
            right: 100%;
            margin-top: -3px;
            border-top: 3px solid transparent;
            border-right: 3px solid transparent;
            border-bottom: 3px solid transparent;
        }

    .share span {
        display: block;
        float: left;
        margin-top: 5px;
        padding: 0 10px;
        border: 1px solid #e3e3e3;
        border-radius: 3px;
        font-size: 11px;
        line-height: 20px;
    }

    .share .fa-facebook {
        background: #39579a;
    }

        .share .fa-facebook:after {
            border-right-color: #39579a;
        }

    .share .fa-twitter {
        background: #01acee;
    }

        .share .fa-twitter:after {
            border-right-color: #01acee;
        }

    .share .fa-pinterest {
        background: #cd1d1f;
    }

        .share .fa-pinterest:after {
            border-right-color: #cd1d1f;
        }

    .share .fa-google-plus {
        background: #d34836;
    }

        .share .fa-google-plus:after {
            border-right-color: #d34836;
        }

    .share .fa-linkedin {
        background: #1783bc;
    }

        .share .fa-linkedin:after {
            border-right-color: #1783bc;
        }


/**/
/* filter */
/**/
.filter {
    position: relative;
    z-index: 1;
    margin-bottom: 30px;
    font-weight: 400;
    text-align: center;
}

    .filter a {
        display: inline-block;
        width: 168px;
        margin-left: -1px;
        font-size: 15px;
        line-height: 36px;
        text-align: center;
        box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);
        color: #535353;
    }

        .filter a:first-child {
            margin: 0;
            border-radius: 5px 0 0 5px;
        }

        .filter a:last-child {
            border-radius: 0 5px 5px 0;
        }

    .filter .active {
        position: relative;
        background: #3475AB;
        color: #fff;
    }

@media screen and (max-width: 767px) { /* phone */
    .filter a {
        width: 100%;
        margin: -1px 0 0 0;
    }

        .filter a:first-child {
            border-radius: 5px 5px 0 0;
        }

        .filter a:last-child {
            border-radius: 0 0 5px 5px;
        }
}


/**/
/* portfolio */
/**/
.portfolio h2 {
    margin-bottom: 30px;
    font-size: 50px;
    font-weight: 100;
    color: #000;
}

.portfolio .grid {
    margin: -30px -15px 0;
}

.portfolio .item {
    position: relative;
    float: left;
    margin-top: 30px;
    padding: 0 15px;
    text-align: center;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

    .portfolio .item h1 {
        margin-bottom: 20px;
        font-size: 65px;
        font-weight: 100;
        text-align: left;
        color: #000000;
    }

    .portfolio .item h3 {
        margin: 15px 0 5px;
        font-size: 24px;
        font-weight: 300;
        color: #000;
    }

    .portfolio .item p {
        margin-bottom: 15px;
        font-size: 15px;
        line-height: 24px;
        font-weight: 300;
    }

    .portfolio .item .pic {
        padding: 10px;
        border-radius: 15px;
        background: #f5f5f5;
        box-shadow: inset 0 0 0 1px #dedede;
    }

        .portfolio .item .pic div {
            position: relative;
            overflow: hidden;
            padding-bottom: 100%;
        }

        .portfolio .item .pic img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border-radius: 10px;
        }

        .portfolio .item .pic ul {
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            margin-top: -30px;
            text-align: center;
            font-size: 0;
            opacity: 0;
            -ms-transition: opacity 0.6s;
            -moz-transition: opacity 0.6s;
            -webkit-transition: opacity 0.6s;
        }

        .portfolio .item .pic:hover ul {
            opacity: 1;
        }

        .portfolio .item .pic li {
            position: relative;
            display: inline-block;
            margin: 0 5px;
            -ms-transition: right 0.3s, left 0.3s, opacity 0.3s;
            -moz-transition: right 0.3s, left 0.3s, opacity 0.3s;
            -webkit-transition: right 0.3s, left 0.3s, opacity 0.3s;
        }

.portfolio .pic li:first-child {
    left: -200%;
}

.portfolio .pic:hover li:first-child {
    left: 0;
}

.portfolio .pic li:last-child {
    right: -200%;
}

.portfolio .pic:hover li:last-child {
    right: 0;
}

.portfolio .item .pic li:hover {
    opacity: 0.7;
}

.portfolio .item .pic span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 10px;
    background: #3475AB;
    opacity: 0;
    -ms-transition: opacity 0.6s;
    -moz-transition: opacity 0.6s;
    -webkit-transition: opacity 0.6s;
}

.portfolio .item .pic:hover span {
    opacity: 0.8;
}

.portfolio .item .pic a {
    display: block;
    width: 58px;
    height: 58px;
    border: 1px solid #fff;
    border-radius: 50%;
    font-size: 28px;
    line-height: 60px;
    text-align: center;
    color: #fff;
}

.portfolio-1 .item {
    width: 100%;
    margin-bottom: 80px;
}

    .portfolio-1 .item:after {
        content: '';
        position: absolute;
        top: 100%;
        right: 15px;
        left: 15px;
        height: 1px;
        margin-top: 50px;
        background: #e0e0e0;
    }

    .portfolio-1 .item:last-child {
        margin-bottom: 0;
    }

        .portfolio-1 .item:last-child:after {
            display: none;
        }

    .portfolio-1 .item .pic div {
        padding-bottom: 50%;
    }

.portfolio-2 .item {
    width: 50%;
}

.portfolio-3 .item {
    width: 400px;
}

.portfolio-4 .item {
    width: 300px;
}

@media screen and (max-width: 1200px) { /* laptop */
    .portfolio .grid {
        margin-right: -10px;
        margin-left: -10px;
    }

    .portfolio .item {
        padding: 0 10px;
    }

        .portfolio .item .pic ul {
            margin-top: -25px;
        }

        .portfolio .item .pic a {
            width: 48px;
            height: 48px;
            font-size: 24px;
            line-height: 50px;
        }

    .portfolio-3 .item {
        width: 320px;
    }

    .portfolio-4 .item {
        width: 240px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .portfolio .grid {
        margin-right: -9px;
        margin-left: -9px;
    }

    .portfolio .item h1 {
        font-size: 50px;
    }

    .portfolio .item {
        padding: 0 9px;
    }

    .portfolio-2 .item {
        width: 378px;
    }

    .portfolio-3 .item,
    .portfolio-4 .item {
        width: 252px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .portfolio-2 .item,
    .portfolio-3 .item,
    .portfolio-4 .item {
        width: 49.99%;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .portfolio .item {
        width: 100%;
    }
}


/**/
/* portfolio nav */
/**/
.portfolio-nav {
    position: relative;
    height: 47px;
    padding: 7px 0;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    font-size: 15px;
    line-height: 47px;
    font-weight: 100;
}

    .portfolio-nav .prev,
    .portfolio-nav .next {
        display: block;
        float: left;
        color: #535353;
    }

        .portfolio-nav .prev i,
        .portfolio-nav .next i {
            display: block;
            float: left;
            width: 45px;
            height: 45px;
            margin-right: 10px;
            border: 1px solid #868686;
            border-radius: 5px;
            font-size: 25px;
            line-height: 45px;
            text-align: center;
            -ms-transition: background 0.3s, color 0.3s;
            -moz-transition: background 0.3s, color 0.3s;
            -webkit-transition: background 0.3s, color 0.3s;
        }

        .portfolio-nav .prev:hover i,
        .portfolio-nav .next:hover i {
            background: #868686;
            color: #fff;
        }

    .portfolio-nav .next {
        float: right;
    }

        .portfolio-nav .next i {
            float: right;
            margin: 0 0 0 10px;
        }

    .portfolio-nav .grid {
        display: block;
        width: 45px;
        height: 45px;
        margin: 0 auto;
        border: 1px solid #868686;
        border-radius: 5px;
    }

        .portfolio-nav .grid:hover {
            background: #868686;
        }

    .portfolio-nav span {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 4px;
        height: 4px;
        margin: -3px 0 0 -3px;
        border: 1px solid #868686;
        border-radius: 50%;
        background: #fff;
    }

        .portfolio-nav span:after,
        .portfolio-nav span:before {
            content: '';
            position: absolute;
            top: -1px;
            width: 4px;
            height: 4px;
            border: 1px solid #868686;
            border-radius: 50%;
            background: #fff;
        }

        .portfolio-nav span:after {
            left: 8px;
        }

        .portfolio-nav span:before {
            left: -10px;
        }

        .portfolio-nav span.t {
            margin-top: -12px;
        }

        .portfolio-nav span.b {
            margin-top: 6px;
        }


/**/
/* blog */
/**/
.blog-wrap {
    overflow: hidden;
}

.blog .grid {
    margin: 0 -15px -100px;
}

.blog .item {
    position: relative;
    float: left;
    margin-bottom: 101px;
    padding: 0 15px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

    .blog .item:after {
        content: '';
        position: absolute;
        top: 100%;
        right: 15px;
        left: 15px;
        height: 1px;
        margin-top: 50px;
        background: #e0e0e0;
    }

    .blog .item h3 {
        margin-bottom: 25px;
        font-size: 65px;
        font-weight: 100;
        color: #000000;
    }

    .blog .item p {
        margin-top: 24px;
        line-height: 24px;
        font-weight: 300;
    }

    .blog .item .center {
        text-align: center;
    }

    .blog .item .pic {
        position: relative;
        padding: 10px;
        border: 1px solid #dedede;
        border-radius: 15px;
        background: #f5f5f5;
    }

    .blog .item .pic-small {
        width: 550px;
        float: left;
        margin-right: 30px;
    }

    .blog .item .info {
        padding: 5px 0 5px 80px;
        border-radius: 10px 10px 0 0;
        background: #fff;
        font-size: 13px;
        line-height: 17px;
        font-weight: 300;
    }

        .blog .item .info div {
            display: table-cell;
            vertical-align: middle;
            height: 46px;
            padding: 0 18px;
            border-left: 1px solid #e7e7e7;
            white-space: nowrap;
        }

            .blog .item .info div:first-child {
                width: 99%;
                padding-right: 8px;
                padding-left: 0;
                border-left: 0;
                white-space: normal;
            }

    .blog .item .info-alt {
        border-radius: 10px;
    }

    .blog .item .date {
        position: absolute;
        z-index: 1;
        top: -1px;
        left: -1px;
        width: 76px;
        height: 63px;
        padding-top: 13px;
        border-radius: 15px;
        background: #3475AB;
        box-shadow: 1px 1px 0 rgba(0,0,0,0.15);
        font-size: 20px;
        font-weight: 300;
        text-align: center;
        color: #fff;
    }

        .blog .item .date span {
            display: block;
            margin-bottom: -4px;
            font-size: 32px;
        }

    .blog .item .frame {
        position: relative;
        overflow: hidden;
        padding-bottom: 50%;
        border-radius: 0 0 10px 10px;
        -webkit-transform: scale(1);
    }

        .blog .item .frame img,
        .blog .item .frame iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border-radius: 0 0 10px 10px;
        }

    .blog .item .audio {
        position: relative;
        height: 30px;
        padding: 39px 15px 39px 215px;
        border-radius: 0 0 10px 10px;
        background: url(../pic/audio/player.jpg) 50% 0;
    }

        .blog .item .audio img {
            position: absolute;
            top: 15px;
            left: 15px;
            border-radius: 10px;
        }

        .blog .item .audio audio {
            width: 100%;
        }

        .blog .item .audio .song {
            position: absolute;
            bottom: 37px;
            left: 106px;
            width: 90px;
            height: 15px;
            overflow: hidden;
            font-weight: 300;
            color: #fff;
        }

        .blog .item .audio .author {
            position: absolute;
            top: 37px;
            left: 106px;
            width: 90px;
            height: 15px;
            overflow: hidden;
            color: #fff;
        }

.blog-1 .item {
    width: 100%;
}

.blog-2 .item {
    width: 50%;
}

.blog-3 .item {
    width: 400px;
}

    .blog-3 .item h3 {
        font-size: 50px;
    }

    .blog-3 .item .audio {
        padding-left: 120px;
    }

        .blog-3 .item .audio img {
            display: none;
        }

        .blog-3 .item .audio .song,
        .blog-3 .item .audio .author {
            left: 15px;
        }

@media screen and (max-width: 1200px) { /* laptop */
    .blog .grid {
        margin-right: -10px;
        margin-left: -10px;
    }

    .blog .item h3 {
        font-size: 55px;
    }

    .blog .item {
        padding: 0 10px;
    }

        .blog .item .pic-small {
            width: 440px;
            margin-right: 20px;
        }

    .blog-3 .item {
        width: 50%;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .blog .grid {
        margin-right: -9px;
        margin-left: -9px;
    }

    .blog .item h3 {
        font-size: 45px;
    }

    .blog .item {
        padding: 0 9px;
    }

        .blog .item .pic-small {
            width: 340px;
            margin-right: 18px;
        }

    .blog-2 .item .audio {
        padding-left: 120px;
    }

        .blog-2 .item .audio img {
            display: none;
        }

        .blog-2 .item .audio .song,
        .blog-2 .item .audio .author {
            left: 15px;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .blog .item {
        width: 100%;
    }

        .blog .item .pic-small {
            width: auto;
            margin-bottom: 24px;
        }

        .blog .item .audio {
            padding-left: 120px;
        }

            .blog .item .audio img {
                display: none;
            }

            .blog .item .audio .song,
            .blog .item .audio .author {
                left: 15px;
            }
}

@media screen and (max-width: 479px) { /* mini phone */
    .blog .item .info div {
        padding: 0 10px;
    }
}


/**/
/* comments */
/**/
.comments {
    margin-top: 110px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e3e3e3;
}

    .comments h2 {
        font-size: 50px;
        font-weight: 100;
        color: #000;
    }

    .comments li {
        position: relative;
        margin-top: 30px;
        padding-top: 30px;
        border-top: 1px solid #e0e0e0;
        line-height: 21px;
        font-weight: 300;
    }

        .comments li:first-child {
            padding-top: 0;
            border-top: 0;
        }

        .comments li ul {
            margin-top: 20px;
            border-top: 1px solid #e3e3e3;
        }

        .comments li li {
            padding-left: 85px;
        }

    .comments .text {
        min-height: 70px;
        overflow: hidden;
    }

    .comments .author {
        margin-bottom: 10px;
        color: #000;
    }

        .comments .author .reply {
            display: block;
            float: right;
            padding: 0 15px;
            border-radius: 5px;
            background: #3475AB;
            font-size: 13px;
            line-height: 23px;
            color: #fff;
        }

    .comments .fa-user {
        display: block;
        float: left;
        width: 68px;
        height: 68px;
        margin-right: 10px;
        border: 1px solid #3475AB;
        border-radius: 10px;
        font-size: 28px;
        line-height: 68px;
        text-align: center;
        color: #3475AB;
    }

    .comments .rating {
        float: right;
        width: 103px;
        height: 18px;
        margin-top: 1px;
        background: url(../img/rating.png);
    }

        .comments .rating span {
            display: block;
            height: 18px;
            background: url(../img/rating.png) 0 -18px;
        }

@media screen and (max-width: 980px) { /* pad */
    .comments li li {
        padding-left: 60px;
    }

    .comments .avatar {
        width: 50px;
        height: 50px;
        margin-right: 10px;
    }

        .comments .avatar i {
            font-size: 26px;
            line-height: 50px;
        }
}

@media screen and (max-width: 479px) { /* mini phone */
    .comments li li {
        padding-left: 20px;
    }
}


/**/
/* add comment */
/**/
.add-comment {
    margin-top: 60px;
}

    .add-comment h2 {
        font-size: 50px;
        font-weight: 100;
        color: #000;
    }

    .add-comment input {
        float: left;
        width: 270px;
        margin: 30px 0 20px 30px;
        padding: 6px 10px;
        border-radius: 10px;
        background: #ddd;
    }

    .add-comment h2 + input {
        margin-left: 0;
    }

    .add-comment textarea {
        width: 100%;
        margin-bottom: 20px;
        padding: 6px 10px;
        border-radius: 10px;
        background: #ddd;
    }

    .add-comment .rating {
        float: left;
        width: 270px;
        margin: 30px 0 20px 30px;
        font-size: 13px;
        line-height: 30px;
        font-weight: 300;
    }

        .add-comment .rating input {
            display: none;
        }

        .add-comment .rating label {
            display: block;
            float: right;
            width: 19px;
            height: 18px;
            margin-top: 5px;
            padding: 0 1px;
            font-size: 17px;
            line-height: 17px;
            cursor: pointer;
        }

            .add-comment .rating label i {
                display: block;
                height: 18px;
                background: url(../img/rating.png);
            }

        .add-comment .rating input:checked ~ label i {
            background-position: 0 -18px;
        }

@media screen and (max-width: 1190px) { /* laptop */
    .add-comment input,
    .add-comment .rating {
        width: 220px;
        margin-left: 20px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .add-comment input,
    .add-comment .rating {
        width: 171px;
        margin-left: 18px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .add-comment input,
    .add-comment .rating {
        float: none;
        width: 100%;
        margin-left: 0;
    }
}


/**/
/* woocommerce */
/**/
.woocommerce-ordering {
    float: right;
}

    .woocommerce-ordering select {
        height: 29px;
        padding: 0 37px 0 10px;
        border: 1px solid #d8d8d8;
        border-radius: 10px;
        background: url(../img/select.png) 100% 50% no-repeat;
        font-size: 13px;
        line-height: 27px;
        font-weight: 300;
        color: #535353;
    }

.woocommerce-result-count {
    float: left;
    font-size: 13px;
    line-height: 29px;
    font-weight: 300;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), /* retina */
only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
    .woocommerce-ordering select {
        background-image: url(../img/select@2x.png);
        background-size: 25px 23px;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .woocommerce-ordering {
        float: none;
    }

        .woocommerce-ordering select {
            width: 100%;
        }

    .woocommerce-result-count {
        float: none;
        margin-bottom: 10px;
    }
}


/**/
/* products grid */
/**/
.products-grid h2 {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px solid #e0e0e0;
    font-size: 65px;
    font-weight: 100;
    color: #000;
}

.products-grid > ul {
    margin: 0 -15px;
}

    .products-grid > ul > li {
        display: inline-block;
        vertical-align: top;
        width: 300px;
        margin-top: 30px;
        padding: 0 15px;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }

        .products-grid > ul > li > div {
            position: relative;
            padding: 10px 10px 20px;
            border: 1px solid #dedede;
            border-radius: 15px;
            background: transparent;
            text-align: center;
            z-index: 1;
            background: #f5f5f5;
        }

            .products-grid > ul > li > div:before {
                content: "";
                position: absolute;
                background: #fff;
                border-radius: 10px;
                top: 10px;
                bottom: 10px;
                left: 10px;
                right: 10px;
                z-index: -1;
            }

.products-grid h3 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 300;
}

    .products-grid h3 a {
        color: #000;
    }

        .products-grid h3 a:hover {
            color: #3475AB;
        }

.products-grid .pic {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 100%;
    border-radius: 10px;
    overflow: hidden;
}

    .products-grid .pic img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 10px;
    }

    .products-grid .pic span {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        border-radius: 10px;
        background: #3475AB;
        opacity: 0;
        pointer-events: none;
        -ms-transition: opacity 0.6s;
        -moz-transition: opacity 0.6s;
        -webkit-transition: opacity 0.6s;
    }

    .products-grid .pic ul {
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        margin-top: -30px;
        text-align: center;
        font-size: 0;
        opacity: 0;
        -ms-transition: opacity 0.6s;
        -moz-transition: opacity 0.6s;
        -webkit-transition: opacity 0.6s;
    }

    .products-grid .pic li {
        position: relative;
        display: inline-block;
        margin: 0 5px;
        -ms-transition: right 0.3s, left 0.3s, opacity 0.3s;
        -moz-transition: right 0.3s, left 0.3s, opacity 0.3s;
        -webkit-transition: right 0.3s, left 0.3s, opacity 0.3s;
    }

    .products-grid .pic a {
        display: block;
        width: 58px;
        height: 58px;
        border: 1px solid #fff;
        border-radius: 50%;
        font-size: 28px;
        line-height: 60px;
        text-align: center;
        color: #fff;
    }

    .products-grid .pic li:hover {
        opacity: 0.7;
    }

    .products-grid .pic li:first-child {
        left: -200%;
    }

    .products-grid .pic li:last-child {
        right: -200%;
    }

    .products-grid .pic:hover ul {
        opacity: 1;
    }

    .products-grid .pic:hover li:first-child {
        left: 0;
    }

    .products-grid .pic:hover li:last-child {
        right: 0;
    }

    .products-grid .pic:hover span {
        opacity: 0.8;
    }

.products-grid .sale {
    position: absolute;
    z-index: 1;
    top: -10px;
    right: -10px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #ed1c24;
    background: -ms-linear-gradient(top, #ed1c24 0%, #d11920 100%);
    background: -moz-linear-gradient(top, #ed1c24 0%, #d11920 100%);
    background: -webkit-linear-gradient(top, #ed1c24 0%, #d11920 100%);
    box-shadow: 1px 1px 0 rgba(0,0,0,0.3);
    font-size: 14px;
    line-height: 50px;
    color: #fff;
}

.products-grid .price {
    font-size: 18px;
    line-height: 45px;
    color: #3475AB;
}

.products-grid .rating {
    width: 103px;
    height: 18px;
    margin: 0 auto;
    background: url(../img/rating.png);
}

    .products-grid .rating span {
        display: block;
        height: 18px;
        background: url(../img/rating.png) 0 -18px;
    }

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), /* retina */
only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
    .products-grid .rating {
        background-image: url(../img/rating@2x.png);
        background-size: 103px 36px;
    }

        .products-grid .rating span {
            background-image: url(../img/rating@2x.png);
            background-position: 0 -18px;
            background-size: 103px 36px;
        }
}

@media screen and (max-width: 1200px) { /* laptop */
    .products-grid h2 {
        font-size: 55px;
    }

    .products-grid > ul {
        margin: 0 -10px;
    }

        .products-grid > ul > li {
            width: 240px;
            padding-right: 10px;
            padding-left: 10px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .products-grid h2 {
        font-size: 45px;
    }

    .products-grid > ul {
        margin-right: -9px;
        margin-left: -9px;
    }

        .products-grid > ul > li {
            width: 283px;
            padding-right: 9px;
            padding-left: 9px;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .products-grid > ul > li {
        width: 50%;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .products-grid > ul > li {
        width: 100%;
    }
}


/**/
/* product */
/**/
.product h1 {
    font-size: 30px;
    font-weight: 100;
    color: #000;
}

.product .price {
    margin-top: 15px;
    font-size: 24px;
    font-weight: 300;
    color: #3475AB;
}

.product .description {
    margin-top: 35px;
    line-height: 24px;
    font-weight: 300;
}

    .product .description span {
        font-weight: 400;
        color: #000;
    }

.product .main-features {
    margin-top: 35px;
    line-height: 28px;
    font-weight: 300;
}

    .product .main-features span {
        font-weight: 400;
        color: #000;
    }

    .product .main-features li {
        position: relative;
        margin-top: 6px;
        padding: 10px 10px 10px 50px;
        border: 1px solid #d1d1d1;
        border-radius: 5px;
    }

    .product .main-features i {
        position: absolute;
        top: 10px;
        left: 10px;
        width: 24px;
        height: 26px;
        padding-left: 2px;
        border: 1px solid #d1d1d1;
        border-radius: 50%;
        font-size: 12px;
        line-height: 26px;
        text-align: center;
        color: #cfcfcf;
    }

.product .quantity {
    margin-top: 35px;
}

    .product .quantity p {
        margin-bottom: 10px;
        color: #000;
    }

    .product .quantity a {
        position: relative;
        display: inline-block;
        vertical-align: top;
        width: 41px;
        height: 37px;
        border: 1px solid #d1d1d1;
    }

        .product .quantity a:after,
        .product .quantity a:before {
            content: '';
            position: absolute;
            top: 18px;
            left: 11px;
            width: 19px;
            height: 1px;
            background: #3475AB;
        }

    .product .quantity input {
        display: inline-block;
        vertical-align: top;
        width: 38px;
        height: 39px;
        margin: 0 -1px;
        border: 1px solid #d1d1d1;
        font-size: 17px;
        line-height: 37px;
        font-weight: 300;
        text-align: center;
    }

    .product .quantity .plus {
        border-radius: 0 5px 5px 0;
    }

        .product .quantity .plus:after {
            top: 9px;
            left: 20px;
            width: 1px;
            height: 19px;
        }

    .product .quantity .minus {
        border-radius: 5px 0 0 5px;
    }

.product .categories {
    margin-top: 20px;
    font-size: 12px;
    line-height: 16px;
    font-weight: 300;
}

.product .button {
    margin-top: 20px;
}

.product .pic {
    position: relative;
    padding: 9px;
    border: 1px solid #dedede;
    border-radius: 20px;
    background: #f5f5f5;
    overflow: hidden;
}

    .product .pic img {
        width: 100%;
        height: auto;
        border-radius: 10px;
    }

    .product .pic span {
        position: absolute;
        top: -1px;
        right: -1px;
        bottom: -1px;
        left: -1px;
        border-radius: 20px;
        background: #3475AB;
        opacity: 0;
        -ms-transition: opacity 0.6s;
        -moz-transition: opacity 0.6s;
        -webkit-transition: opacity 0.6s;
    }

        .product .pic span i {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 58px;
            height: 58px;
            margin: -30px 0 0 -30px;
            border: 1px solid #fff;
            border-radius: 50%;
            font-size: 28px;
            line-height: 60px;
            text-align: center;
            color: #fff;
        }

    .product .pic a:hover span {
        opacity: 0.8;
    }

.product .thumbnails {
    margin-left: -9px;
    font-size: 0;
}

    .product .thumbnails li {
        display: inline-block;
        vertical-align: top;
        width: 134px;
        margin: 9px 0 0 9px;
    }

    .product .thumbnails a {
        position: relative;
        display: block;
        padding: 9px;
        border: 1px solid #dedede;
        border-radius: 10px;
        background: #f5f5f5;
    }

    .product .thumbnails img {
        width: 100%;
        border-radius: 5px;
    }

    .product .thumbnails span {
        position: absolute;
        top: -1px;
        right: -1px;
        bottom: -1px;
        left: -1px;
        border-radius: 10px;
        background: #3475AB;
        opacity: 0;
        -ms-transition: opacity 0.6s;
        -moz-transition: opacity 0.6s;
        -webkit-transition: opacity 0.6s;
    }

        .product .thumbnails span i {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 24px;
            height: 24px;
            margin: -13px 0 0 -13px;
            border: 1px solid #fff;
            border-radius: 50%;
            font-size: 14px;
            line-height: 24px;
            text-align: center;
            color: #fff;
        }

    .product .thumbnails a:hover span {
        opacity: 0.8;
    }

.product .left-col {
    float: left;
    width: 420px;
}

.product .right-col {
    float: right;
    width: 420px;
}

@media screen and (max-width: 1200px) { /* laptop */
    .product .left-col,
    .product .right-col {
        width: 340px;
    }

    .product .thumbnails {
        margin-left: -8px;
    }

        .product .thumbnails li {
            margin: 8px 0 0 8px;
            width: 108px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .product .left-col,
    .product .right-col {
        width: 265px;
    }

    .product .thumbnails {
        margin-left: -9px;
    }

        .product .thumbnails li {
            margin: 9px 0 0 9px;
            width: 128px;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .product .left-col {
        width: 38%;
    }

    .product .right-col {
        width: 58%;
    }

    .product .thumbnails li {
        width: 50%;
        margin-left: 0;
        padding-left: 9px;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .product .left-col,
    .product .right-col {
        width: 100%;
    }

    .product .left-col {
        margin-bottom: 30px;
    }

    .product .thumbnails li {
        width: 33.33%;
    }
}


/**/
/* product tabs */
/**/
.product-tabs {
    position: relative;
    overflow: hidden;
    margin-top: 30px;
    padding-top: 50px;
    border-top: 1px solid #e0e0e0;
}

    .product-tabs > div {
        position: absolute;
        top: 87px;
        left: 0;
        opacity: 0;
        -ms-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -webkit-transition: opacity 0.3s;
    }

    .product-tabs > input {
        display: none;
    }

    .product-tabs > label {
        display: inline-block;
        width: 33.33%;
        border: 1px solid #d1d1d1;
        margin-right: -1px;
        line-height: 35px;
        text-align: center;
        cursor: pointer;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-transition: background 0.3s, color 0.3s;
        -moz-transition: background 0.3s, color 0.3s;
        -webkit-transition: background 0.3s, color 0.3s;
    }

        .product-tabs > label:hover {
            color: #3475AB;
        }

    .product-tabs > .first {
        border-radius: 5px 0 0 5px;
    }

    .product-tabs > .last {
        border-radius: 0 5px 5px 0;
    }

    .product-tabs > input:checked + label {
        position: relative;
        border-color: rgba(0,0,0,0.2);
        background: #3475AB;
        color: #fff;
    }

    .product-tabs > #product-tab1:checked ~ #product-tab-content1,
    .product-tabs > #product-tab2:checked ~ #product-tab-content2,
    .product-tabs > #product-tab3:checked ~ #product-tab-content3 {
        position: relative;
        top: 0;
        opacity: 1;
    }

    .product-tabs .description {
        line-height: 24px;
        font-weight: 300;
    }

        .product-tabs .description p {
            margin-top: 24px;
        }

        .product-tabs .description dl {
            margin-top: 24px;
        }

        .product-tabs .description dt {
            float: left;
            margin-right: 0.5em;
            font-weight: 400;
            color: #000;
        }

    .product-tabs .comments {
        margin: 0;
        padding: 0;
        border: 0;
    }

@media screen and (max-width: 479px) { /* mini phone */
    .product-tabs > label {
        display: block;
        width: 100%;
        margin: 0 0 -1px 0;
    }

    .product-tabs > .first {
        border-radius: 5px 5px 0 0;
    }

    .product-tabs > .last {
        border-radius: 0 0 5px 5px;
    }

    .product-tabs > div {
        top: 158px;
    }
}


/**/
/* cart products */
/**/
.cart-products {
    overflow: hidden;
    border: 1px solid #d1d1d1;
    border-radius: 15px;
}

    .cart-products th {
        padding: 14px 20px 14px 0;
        background: #f7f7f7;
        font-weight: 300;
        text-align: center;
        color: #000;
    }

    .cart-products td {
        vertical-align: middle;
        padding: 20px 20px 20px 0;
        border-bottom: 1px solid #d1d1d1;
        font-weight: 300;
    }

        .cart-products td[colspan="6"] {
            padding-left: 20px;
            border: 0;
            text-align: right;
        }

    .cart-products .pic {
        width: 1px;
        padding-right: 0;
        padding-left: 20px;
    }

        .cart-products .pic img {
            display: block;
            width: 54px;
            height: 54px;
            border-radius: 10px;
            -ms-transition: opacity 0.3s;
            -moz-transition: opacity 0.3s;
            -webkit-transition: opacity 0.3s;
        }

            .cart-products .pic img:hover {
                opacity: 0.7;
            }

    .cart-products .name {
        padding-left: 10px;
        text-align: left;
    }

    .cart-products .price {
        text-align: center;
    }

    .cart-products .quantity div {
        width: 123px;
        margin: 0 auto;
    }

    .cart-products .quantity a {
        position: relative;
        display: inline-block;
        vertical-align: top;
        width: 41px;
        height: 37px;
        border: 1px solid #d1d1d1;
    }

        .cart-products .quantity a:after,
        .cart-products .quantity a:before {
            content: '';
            position: absolute;
            top: 18px;
            left: 11px;
            width: 19px;
            height: 1px;
            background: #3475AB;
        }

    .cart-products .quantity input {
        display: inline-block;
        vertical-align: top;
        width: 38px;
        height: 39px;
        margin: 0 -1px;
        border: 1px solid #d1d1d1;
        font-size: 17px;
        line-height: 37px;
        font-weight: 300;
        text-align: center;
    }

    .cart-products .quantity .plus {
        border-radius: 0 5px 5px 0;
    }

        .cart-products .quantity .plus:after {
            top: 9px;
            left: 20px;
            width: 1px;
            height: 19px;
        }

    .cart-products .quantity .minus {
        border-radius: 5px 0 0 5px;
    }

    .cart-products .remove {
        width: 1px;
    }

        .cart-products .remove a {
            display: block;
            width: 16px;
            height: 16px;
            margin: 0 auto;
            border-radius: 50%;
            background: #3475AB;
            font-size: 10px;
            line-height: 16px;
            text-align: center;
            color: #fff;
        }

    .cart-products .button {
        margin-left: 10px;
    }

    .cart-products .coupon {
        position: relative;
        float: left;
        width: 121px;
        padding-right: 159px;
    }

        .cart-products .coupon input {
            width: 100%;
            padding: 11px 10px;
            border: 1px solid #d1d1d1;
            border-radius: 5px;
            font-size: 15px;
            line-height: 24px;
        }

        .cart-products .coupon button {
            position: absolute;
            top: 0;
            right: 0;
            margin: 0;
        }

@media screen and (max-width: 980px) { /* pad */
    .cart-products th,
    .cart-products td {
        padding-right: 15px;
    }

    .cart-products .pic {
        display: none;
    }

    .cart-products .name {
        padding-left: 15px;
    }

    .cart-products .button {
        margin-top: 10px;
    }

    .cart-products .coupon {
        float: none;
        width: auto;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .cart-products th,
    .cart-products td {
        padding-right: 10px;
    }

        .cart-products td[colspan="6"] {
            padding-left: 10px;
        }

    .cart-products .name {
        padding-left: 10px;
    }

    .cart-products .quantity div {
        width: 38px;
    }

    .cart-products .quantity a {
        display: none;
    }
}


/**/
/* cart totals */
/**/
.cart-totals {
    float: right;
    width: 340px;
    margin-top: 40px;
    text-align: right;
}

    .cart-totals h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-weight: 300;
        color: #000;
    }

    .cart-totals table {
        font-weight: 300;
    }

    .cart-totals tr:last-child {
        color: #000;
    }

    .cart-totals th {
        padding: 10px 0;
        border-top: 1px solid #e0e0e0;
        text-align: left;
    }

    .cart-totals td {
        padding: 10px 0;
        border-top: 1px solid #e0e0e0;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .cart-totals {
        width: 300px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .cart-totals {
        float: none;
        width: 100%;
    }
}


/**/
/* shipping calculator */
/**/
.shipping-calculator {
    width: 420px;
    margin-top: 40px;
}

    .shipping-calculator form {
        margin-top: 10px;
        padding: 30px;
        border-radius: 15px;
        background: #f3f2f2;
    }

    .shipping-calculator input,
    .shipping-calculator select {
        width: 100%;
        height: 29px;
        margin-bottom: 20px;
        padding: 6px 5px 6px 10px;
        border-radius: 5px;
        background: #ddd;
    }

    .shipping-calculator select {
        background: #ddd url(../img/select-alt.png) 100% 50% no-repeat;
    }

    .shipping-calculator button {
        width: 100%;
    }

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), /* retina */
only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
    .shipping-calculator select {
        background-image: url(../img/select-alt@2x.png);
        background-size: 29px 15px;
    }
}

@media screen and (max-width: 1200px) { /* laptop */
    .shipping-calculator {
        width: 380px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .shipping-calculator {
        width: 100%;
    }
}


/**/
/* pager */
/**/
.pager {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #e0e0e0;
    text-align: center;
}

    .pager a {
        display: inline-block;
        vertical-align: top;
        width: 38px;
        margin-left: -1px;
        border: 1px solid #3475AB;
        font-size: 16px;
        line-height: 38px;
        font-weight: 300;
        text-align: center;
        color: #000;
    }

        .pager a:hover {
            color: #3475AB;
        }

        .pager a:first-child {
            margin-left: 0;
            border-radius: 5px 0 0 5px;
        }

        .pager a:last-child {
            border-radius: 0 5px 5px 0;
        }

    .pager .active {
        background: #3475AB;
        color: #fff;
        cursor: default;
    }

        .pager .active:hover {
            color: #fff;
        }


/**/
/* not found */
/**/
.not-found {
    width: 525px;
    margin: 30px auto 0;
    text-align: center;
}

    .not-found h1 {
        font-size: 50px;
        line-height: 54px;
        font-weight: 100;
    }

    .not-found h2 {
        margin-top: 15px;
        padding-top: 15px;
        border-top: 1px solid #e5e5e5;
        font-size: 24px;
        font-weight: 300;
    }

    .not-found img {
        display: block;
        margin: 0 auto;
    }

@media screen and (max-width: 767px) { /* phone */
    .not-found {
        width: auto;
    }

        .not-found img {
            width: 262px;
            height: 125px;
        }
}


/**/
/* countdown */
/**/
.countdown {
    margin-top: 60px;
    text-align: center;
}

    .countdown li {
        position: relative;
        display: inline-block;
        width: 158px;
        height: 158px;
        overflow: hidden;
        margin: 0 15px;
        border-radius: 15px;
        background: #3475AB;
        font-size: 34px;
        font-weight: 100;
        text-transform: lowercase;
        text-shadow: 1px 1px 0 rgba(0,0,0,0.25);
        color: #fff;
    }

        .countdown li:before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: #fff;
            background: -ms-linear-gradient(top, #fff 0%, #000 100%);
            background: -moz-linear-gradient(top, #fff 0%, #000 100%);
            background: -webkit-linear-gradient(top, #fff 0%, #000 100%);
            opacity: 0.15;
        }

        .countdown li span {
            position: relative;
            display: block;
            padding-top: 20px;
            font-size: 74px;
            font-weight: 300;
        }

    .countdown p {
        margin-top: 30px;
        font-size: 24px;
        line-height: 30px;
        font-weight: 100;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .countdown li {
        margin: 0 10px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .countdown li {
        margin: 0 9px 18px;
    }
}


/**/
/* subscription */
/**/
.subscription {
    text-align: center;
}

    .subscription h2 {
        font-size: 56px;
        font-weight: 100;
        color: #000;
    }

    .subscription h3 {
        margin: 10px 0 25px;
        font-size: 24px;
        font-weight: 300;
        color: #3475AB;
    }

    .subscription form {
        position: relative;
        max-width: 640px;
        margin: 0 auto;
    }

    .subscription input {
        width: 100%;
        height: 38px;
        padding: 6px 10px;
        border: 1px solid #d1d1d1;
        background: #fff;
        border-radius: 5px;
        font-size: 15px;
        line-height: 24px;
    }

    .subscription button {
        position: absolute;
        top: 0;
        right: 0;
        border-radius: 0 5px 5px 0;
        font-size: 15px;
    }

    .subscription label.error {
        color: #ff6766;
        margin: 3px;
        text-align: center;
    }

    .subscription .message-success i,
    .subscription .message-error i {
        float: left;
        padding-right: 5px;
    }

    .subscription .message-success,
    .subscription .message-error {
        text-align: left;
        padding-top: 5px;
    }

    .subscription .message-success {
        color: #6bcbca;
    }

    .subscription .message-error {
        color: #ff6766;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .subscription h2 {
        font-size: 50px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .subscription h2 {
        font-size: 45px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .subscription h2 {
        font-size: 40px;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .subscription .button-left,
    .subscription .button-right {
        border-radius: 5px;
    }

    .subscription .button-left {
        margin-bottom: 5px;
    }
}


/**/
/* projects */
/**/
.projects {
    margin: -60px 0 -70px;
}

    .projects .filter {
        margin-right: 20px;
        margin-left: 20px;
    }

    .projects ul {
        overflow: visible !important;
    }

    .projects li {
        display: inline-block;
        vertical-align: top;
        width: 19.97%;
    }

        .projects li:hover {
            z-index: 3 !important;
        }

        .projects li img {
            display: block;
            width: 100%;
            height: auto;
        }

    .projects h3 {
        margin-bottom: 15px;
        font-size: 17px;
        font-weight: 400;
        color: #000;
    }

    .projects p {
        font-size: 13px;
        font-weight: 400;
    }

    .projects .cont {
        position: absolute;
        z-index: 10;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 0 20px;
        border: 1px solid #fff;
        background: url(../img/projects-cont.png);
        box-shadow: 0 0 15px rgba(0,0,0,0.1);
        text-align: center;
        font-size: 13px;
        line-height: 16px;
        font-weight: 300;
        opacity: 0;
        -ms-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -webkit-transition: opacity 0.3s;
    }

    .projects .text {
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        margin-top: -55px;
    }

    .projects .icons {
        position: absolute;
        right: 20px;
        bottom: 0;
        left: 20px;
        padding: 26px 0 25px;
        background: url(../img/projects-sep.png) 50% 0 no-repeat;
    }

        .projects .icons a {
            display: inline-block;
            margin: 0 5px;
            width: 32px;
            height: 32px;
            border-radius: 50%;
            background: rgba(0,0,0,0.4);
            text-shadow: 1px 1px 0 rgba(0,0,0,0.15);
            font-size: 14px;
            line-height: 32px;
            color: #fff;
        }

            .projects .icons a:hover {
                background: rgba(0,0,0,0.6);
            }

    .projects li:hover img {
        filter: blur(2px);
        -ms-filter: blur(2px);
        -webkit-filter: blur(2px);
    }

    .projects li:hover .cont {
        opacity: 1;
    }

@media screen and (min-width: 1200px) {
    .projects li {
        width: 16.64%;
    }
}

@media screen and (max-width: 1200px) { /* laptop */
    .projects li {
        width: 24.97%;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .projects li {
        width: 33.31%;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .projects li {
        width: 49.99%;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .projects li {
        width: 100%;
    }
}


/**/
/* timeline */
/**/
.timeline {
    position: relative;
    padding: 0 75px;
}

    .timeline:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        border-left: 1px solid #d1d1d1;
    }

    .timeline .end {
        position: absolute;
        bottom: 0;
        left: 50%;
        margin-left: -5px;
        width: 9px;
        height: 9px;
        border: 1px solid #d1d1d1;
        border-radius: 50%;
        background: #fff;
    }

    .timeline .year {
        position: relative;
        clear: both;
        margin: 0 auto;
        width: 60px;
        height: 60px;
        border: 6px solid #fff;
        border-radius: 50%;
        background: #3475AB;
        box-shadow: 0 0 0 1px #d1d1d1;
        font-size: 18px;
        line-height: 60px;
        text-align: center;
        color: #fff;
    }

    .timeline .item {
        position: relative;
        width: 315px;
        margin: 25px 0;
        border-radius: 10px;
        box-shadow: 0 1px 2px rgba(0,0,0,0.2);
    }

        .timeline .item:before {
            content: "\f00c";
            position: absolute;
            top: 10px;
            width: 23px;
            height: 23px;
            border: 1px solid #3475AB;
            border-radius: 50%;
            background: #fff;
            font-family: FontAwesome;
            font-size: 14px;
            line-height: 24px;
            text-align: center;
            color: #3475AB;
        }

    .timeline .head {
        position: relative;
        padding: 10px 20px;
        border: 1px solid #ebebeb;
        border-radius: 10px 10px 0 0;
        background: #f9f9f9;
        background: -ms-linear-gradient(top, #f9f9f9 0%, #f2f2f2 100%);
        background: -moz-linear-gradient(top, #f9f9f9 0%, #f2f2f2 100%);
        background: -webkit-linear-gradient(top, #f9f9f9 0%, #f2f2f2 100%);
        font-size: 15px;
        line-height: 24px;
        font-weight: 300;
    }

        .timeline .head:after {
            content: '';
            position: absolute;
            top: 13px;
            border-top: 7px solid transparent;
            border-bottom: 7px solid transparent;
        }

        .timeline .head:before {
            content: '';
            position: absolute;
            top: 14px;
            border-top: 8px solid transparent;
            border-bottom: 8px solid transparent;
        }

    .timeline .cont {
        padding: 10px 20px;
        border: 1px solid #ebebeb;
        border-top: 0;
        border-radius: 0 0 10px 10px;
        font-size: 13px;
        line-height: 24px;
        font-weight: 300;
    }

    .timeline .date {
        font-size: 13px;
        color: #3475AB;
    }

    .timeline .item-left {
        float: left;
        clear: left;
        text-align: right;
    }

        .timeline .item-left:before {
            right: -58px;
        }

        .timeline .item-left .head:after {
            left: 100%;
            border-left: 7px solid #f6f6f6;
        }

        .timeline .item-left .head:before {
            left: 100%;
            border-left: 8px solid rgba(0,0,0,0.07);
        }

        .timeline .item-left .date {
            float: left;
            margin-right: 10px;
        }

    .timeline .item-right {
        float: right;
        clear: right;
    }

        .timeline .item-right:before {
            left: -57px;
        }

        .timeline .item-right .head:after {
            right: 100%;
            border-right: 7px solid #f6f6f6;
        }

        .timeline .item-right .head:before {
            right: 100%;
            border-right: 8px solid rgba(0,0,0,0.07);
        }

        .timeline .item-right .date {
            float: right;
            margin-left: 10px;
        }

    .timeline .item-first {
        margin-top: 75px;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .timeline {
        padding: 0;
    }

        .timeline .item {
            width: 425px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .timeline .item {
        width: 334px;
    }

    .timeline .item-left:before {
        right: -48px;
    }

    .timeline .item-right:before {
        left: -47px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .timeline:before {
        left: 36px;
    }

    .timeline .end {
        left: 36px;
    }

    .timeline .year {
        margin: 0;
    }

    .timeline .item {
        float: none;
        width: auto;
        margin-left: 71px;
    }

    .timeline .item-left {
        text-align: left;
    }

        .timeline .item-left:before {
            right: auto;
            left: -47px;
        }

        .timeline .item-left .head:after {
            right: 100%;
            left: auto;
            border-right: 7px solid #f6f6f6;
            border-left: 0;
        }

        .timeline .item-left .head:before {
            right: 100%;
            left: auto;
            border-right: 8px solid rgba(0,0,0,0.07);
            border-left: 0;
        }

        .timeline .item-left .date {
            float: right;
            margin: 0 0 0 10px;
        }

    .timeline .item-first {
        margin-top: 25px;
    }
}


/**/
/* sitemap */
/**/
.sitemap li {
    display: inline-block;
    vertical-align: top;
    width: 14.28%;
    text-align: center;
}

    .sitemap li p {
        margin-top: 14px;
        font-size: 14px;
        line-height: 18px;
    }

    .sitemap li .title {
        margin-bottom: 4px;
        font-size: 18px;
    }

        .sitemap li .title a {
            color: inherit;
        }

.sitemap .icon {
    display: block;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    border-radius: 10px;
    font-size: 28px;
    line-height: 60px;
    text-align: center;
    color: #fff;
}

.sitemap .red {
    background: #ff2969;
    background: -ms-linear-gradient(top, #ff2969 0%, #ff5c3a 100%);
    background: -moz-linear-gradient(top, #ff2969 0%, #ff5c3a 100%);
    background: -webkit-linear-gradient(top, #ff2969 0%, #ff5c3a 100%);
}

.sitemap .orange {
    background: #feb900;
    background: -ms-linear-gradient(top, #feb900 0%, #ff9600 100%);
    background: -moz-linear-gradient(top, #feb900 0%, #ff9600 100%);
    background: -webkit-linear-gradient(top, #feb900 0%, #ff9600 100%);
}

.sitemap .blue {
    background: #4c7092;
    background: -ms-linear-gradient(top, #4c7092 0%, #436381 100%);
    background: -moz-linear-gradient(top, #4c7092 0%, #436381 100%);
    background: -webkit-linear-gradient(top, #4c7092 0%, #436381 100%);
}

.sitemap .light-blue {
    background: #1acefd;
    background: -ms-linear-gradient(top, #1acefd 0%, #1e58ef 100%);
    background: -moz-linear-gradient(top, #1acefd 0%, #1e58ef 100%);
    background: -webkit-linear-gradient(top, #1acefd 0%, #1e58ef 100%);
}

.sitemap .green {
    background: #79ea32;
    background: -ms-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
    background: -moz-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
    background: -webkit-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
}

.sitemap .purple {
    background: #fb5bc4;
    background: -ms-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
    background: -moz-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
    background: -webkit-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
}

.sitemap .dark-purple {
    background: #7850c7;
    background: -ms-linear-gradient(top, #7850c7 0%, #49349e 100%);
    background: -moz-linear-gradient(top, #7850c7 0%, #49349e 100%);
    background: -webkit-linear-gradient(top, #7850c7 0%, #49349e 100%);
}

@media screen and (max-width: 980px) { /* pad */
    .sitemap {
        margin-top: -50px;
    }

        .sitemap li {
            width: 25%;
            margin-top: 50px;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .sitemap li {
        width: 33.33%;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .sitemap li {
        width: 50%;
    }
}


/**/
/* map */
/**/
.map {
    padding: 10px;
    border-radius: 20px;
    background: #f5f5f5;
    box-shadow: inset 0 0 0 1px #dedede;
}

    .map + h1 {
        margin: 60px 0 -30px;
        padding-top: 50px;
        border-top: 1px solid #e0e0e0;
        text-align: center;
    }

    .map .google-map {
        height: 480px;
        overflow: hidden;
        -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
        -webkit-transform: rotate(0.000001deg);
        -webkit-border-radius: 20px;
        -moz-border-radius: 20px;
        border-radius: 10px;
    }


/**/
/* contacts */
/**/
.contacts h3 {
    font-size: 24px;
    font-weight: 300;
    color: #000;
}

.contacts p {
    margin-top: 24px;
    font-size: 15px;
    line-height: 24px;
    font-weight: 300;
}

    .contacts p span {
        display: block;
        font-weight: 400;
        color: #000;
    }

.contacts .links a {
    display: block;
    float: left;
    margin: 5px 5px 0 0;
    width: 44px;
    height: 44px;
    border: 1px solid #3475AB;
    border-radius: 50%;
    font-size: 22px;
    line-height: 44px;
    text-align: center;
    color: #3475AB;
}

    .contacts .links a:hover {
        background: #3475AB;
        color: #fff;
    }


/**/
/* feedback */
/**/
.feedback div {
    padding: 15px;
    border-radius: 15px;
    background: #f3f2f2;
}

.feedback label {
    display: block;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 300;
}

.feedback input[type=text],
.feedback textarea, .feedback select {
    width: 97%;
    margin-bottom: 20px;
    padding: 6px 10px;
    border-radius: 5px;
    background: #ddd;
}

.feedback label.error {
    color: #ed1c24;
    margin: 3px;
    text-align: right;
}

.feedback input.error,
.feedback url.error,
.feedback textarea.error {
    border: 1px solid #ed1c24;
    margin-bottom: 2px;
}

.feedback .message {
    display: none;
    margin-bottom: 30px;
}



/*----------------------------------------------*/
/*                   COMPOSER                   */
/*----------------------------------------------*/

/**/
/* text */
/**/
.composer h1 {
    margin-bottom: 30px;
    font-size: 65px;
    font-weight: 100;
    color: #000;
}

.composer h2 {
    margin-bottom: 20px;
    font-size: 40px;
    font-weight: 100;
    color: #000;
}

.composer h3 {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 300;
    color: #3475AB;
}

.composer h4 {
    margin-bottom: 20px;
    color: #3475AB;
}

.composer p {
    line-height: 24px;
    font-weight: 300;
}

.composer strong {
    font-weight: 400;
    color: #000;
}

.composer hr {
    height: 1px;
    margin: 50px 0;
    background: #e0e0e0;
}

    .composer hr.alt {
        background: #3475AB;
    }

    .composer hr.alt-2 {
        height: 4px;
        border: 1px solid #3475AB;
        border-radius: 3px;
        background: none;
    }

.composer .buttons .button {
    margin-bottom: 5px;
}

/*.composer .wysiwyg p {
    margin-top: 24px;
}*/

.composer .wysiwyg .pad-player {
    display: inline-block;
    width: 100%;
    position: relative;
    overflow: hidden;
    padding-bottom: 66%;
    -webkit-box-shadow: 0px 0px 0px 1px #dedede;
    -moz-box-shadow: 0px 0px 0px 1px #dedede;
    box-shadow: 0px 0px 0px 1px #dedede;
    border-radius: 15px;
    background: #f5f5f5;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-transform: scale(1);
}

    .composer .wysiwyg .pad-player iframe {
        position: absolute;
        top: 10px;
        left: 10px;
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
        -webkit-transform: rotate(0.000001deg);
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        border-radius: 10px;
    }

.composer .wysiwyg .pic-clear {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
}

.full-width {
    width: 100%;
}

.composer .wysiwyg .pic-left {
    float: left;
    margin-right: 30px;
}

.composer .center {
    text-align: center;
}

@media screen and (max-width: 1200px) { /* laptop */
    .composer h1 {
        font-size: 60px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .composer h1 {
        font-size: 55px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .composer h1 {
        font-size: 50px;
    }
}


/**/
/* grid */
/**/
.composer .columns-row {
    margin: 0 -15px;
}

    .composer .columns-row:after {
        content: '';
        display: table;
        clear: both;
    }

.composer .columns-col {
    float: left;
    padding: 0 15px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.composer .columns-col-3 {
    width: 25%;
}

.composer .columns-col-4 {
    width: 33.33%;
}

.composer .columns-col-6 {
    width: 50%;
}

.composer .columns-col-8 {
    width: 66.66%;
}

.composer .columns-col-9 {
    width: 75%;
}

.composer .columns-col-12 {
    width: 100%;
}

@media screen and (max-width: 980px) { /* pad */
    .composer .columns-col {
        width: 100%;
    }

        .composer .columns-col + .columns-col {
            margin-top: 30px;
        }
}


/**/
/* accordion */
/**/
.composer .accordion dt {
    position: relative;
    margin-top: 10px;
    padding-left: 35px;
    font-size: 15px;
    line-height: 25px;
    font-weight: 300;
    cursor: pointer;
    -ms-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -webkit-transition: color 0.3s;
}

    .composer .accordion dt:hover {
        color: #3475AB;
    }

    .composer .accordion dt:first-child {
        margin-top: 0;
    }

    .composer .accordion dt i {
        position: absolute;
        top: 0;
        left: 0;
        width: 23px;
        height: 23px;
        border: 1px solid #3475AB;
        border-radius: 50%;
    }

        .composer .accordion dt i:after,
        .composer .accordion dt i:before {
            content: '';
            position: absolute;
            top: 11px;
            left: 4px;
            width: 15px;
            height: 1px;
            background: #3475AB;
        }

        .composer .accordion dt i:after {
            top: 4px;
            left: 11px;
            width: 1px;
            height: 15px;
        }

.composer .accordion dd {
    position: relative;
    display: none;
    margin-top: 10px;
    padding: 10px 20px;
    border-radius: 10px;
    background: #3475AB;
    font-size: 14px;
    line-height: 24px;
    font-weight: 300;
    color: #fff;
}

    .composer .accordion dd:before {
        content: '';
        position: absolute;
        bottom: 100%;
        left: 9px;
        border-right: 4px solid transparent;
        border-bottom: 4px solid #3475AB;
        border-left: 4px solid transparent;
    }

.composer .accordion .active {
    color: #3475AB;
    pointer-events: none;
}

    .composer .accordion .active i:after {
        display: none;
    }

.composer .accordion-alt dt {
    margin-top: 5px;
    border: 5px solid transparent;
    border-radius: 10px;
    background: #f3f2f2;
    -ms-transition: background 0.3s, color 0.3s;
    -moz-transition: background 0.3s, color 0.3s;
    -webkit-transition: background 0.3s, color 0.3s;
}

.composer .accordion-alt dd {
    margin-top: 1px;
    border-radius: 0 0 10px 10px;
}

    .composer .accordion-alt dd:before {
        display: none;
    }

.composer .accordion-alt .active,
.composer .accordion-alt .active:hover {
    border-radius: 10px 10px 0 0;
    background: #3475AB;
    color: #fff;
}

    .composer .accordion-alt .active i {
        border-color: #fff;
    }

        .composer .accordion-alt .active i:after,
        .composer .accordion-alt .active i:before {
            background: #fff;
        }


/**/
/* callout */
/**/
.composer .callout {
    margin-top: 30px;
    padding: 50px 20px;
    border: 1px solid #d1d1d1;
    border-radius: 10px;
    background: #f7f7f7;
    box-shadow: inset 0 0 0 10px #fff;
    text-align: center;
}

    .composer .callout h2 {
        margin-bottom: 10px;
    }

.composer .callout-alt {
    border-color: #3475AB;
    background: #3475AB;
    box-shadow: none;
    color: #fff;
}

    .composer .callout-alt h2,
    .composer .callout-alt h3 {
        color: #fff;
    }

.composer .callout-alt2 {
    position: relative;
    padding-right: 268px;
    padding-left: 30px;
    border-color: #3475AB;
    box-shadow: none;
    text-align: left;
}

    .composer .callout-alt2 h3 {
        font-size: 21px;
        color: inherit;
    }

    .composer .callout-alt2 .button {
        position: absolute;
        top: 50%;
        right: 30px;
        margin-top: -29px;
    }

@media screen and (max-width: 980px) { /* pad */
    .composer .callout-alt2 {
        padding-right: 30px;
        text-align: center;
    }

        .composer .callout-alt2 .button {
            position: static;
            margin-top: 20px;
        }
}

@media screen and (max-width: 479px) { /* mini phone */
    .composer .callout .button-left,
    .composer .callout .button-right {
        border-radius: 5px;
    }

    .composer .callout .button-left {
        margin-bottom: 5px;
    }
}


/**/
/* chart graph */
/**/
.composer .chart-graph {
    overflow: hidden;
}

    .composer .chart-graph > div {
        height: 400px;
    }


/**/
/* chart pie */
/**/
.composer .chart-pie {
    position: relative;
    overflow: hidden;
}

    .composer .chart-pie > div {
        width: 260px;
        height: 260px;
        margin: 0 auto;
        font-size: 20px;
        font-weight: 300;
    }

    .composer .chart-pie > span {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100px;
        margin: -25px 0 0 -50px;
        font-size: 50px;
        font-weight: 100;
        text-align: center;
        color: #3475AB;
    }


/**/
/* soc icon */
/**/
.composer .soc-icon {
    display: inline-block;
    vertical-align: top;
    width: 44px;
    height: 44px;
    margin-bottom: 5px;
    border: 1px solid #3475AB;
    background: #fff;
    border-radius: 50%;
    font-size: 24px;
    line-height: 44px;
    text-align: center;
}

    .composer .soc-icon:hover {
        background: #3475AB;
        color: #fff;
    }

.composer .soc-icon-alt {
    background: #3475AB;
    color: #fff;
}

    .composer .soc-icon-alt:hover {
        background: none;
        color: #3475AB;
    }

.composer .soc-icon-grey {
    border-color: transparent;
    background: #b4b4b4;
    color: #fff;
}

.composer .soc-icon-grey-alt {
    box-shadow: inset 1px 1px 0 rgba(0,0,0,0.15);
    text-shadow: 1px 1px 0 rgba(0,0,0,0.15);
}

.composer .soc-icon-small {
    width: 30px;
    height: 30px;
    font-size: 18px;
    line-height: 30px;
}


/**/
/* list */
/**/
.composer .list li {
    position: relative;
    margin-top: 6px;
    padding: 10px 10px 10px 50px;
    border: 1px solid #d1d1d1;
    border-radius: 5px;
    line-height: 28px;
    font-weight: 300;
}

    .composer .list li:first-child {
        margin-top: 0;
    }

    .composer .list li i {
        position: absolute;
        top: 10px;
        left: 10px;
        width: 24px;
        height: 26px;
        padding-left: 2px;
        border: 1px solid #d1d1d1;
        border-radius: 50%;
        font-size: 12px;
        line-height: 26px;
        text-align: center;
        color: #cfcfcf;
    }

    .composer .list li:hover {
        border-color: #3475AB;
        color: #3475AB;
        box-shadow: 0 0 3px #3475AB;
        -webkit-box-shadow: 0 0 3px #3475AB;
        -moz-box-shadow: 0 0 3px #3475AB;
        /* font-weight: bold; */
        /* text-shadow: none; */
        transition: all 300ms linear;
        -webkit-transition: all 300ms linear;
    }

.composercol {
    width: 48%;
    margin-right: 1%;
    margin-left: 1%;
}

}

@media screen and (max-width: 479px) { /* mini phone */
    e4a51e;
}

.composer .list-alt li i {
    border-color: transparent;
    font-size: 24px;
    color: #535353;
}

.composer .list-alt li:hover {
    background: #3475AB;
    color: #fff;
}

    .composer .list-alt li:hover i {
        border-color: transparent;
        color: #fff;
    }


/**/
/* message */
/**/
.composer .message {
    position: relative;
    padding: 10px 20px 10px 101px;
    border: 1px solid #3475AB;
    border-radius: 10px;
    color: #3475AB;
}

    .composer .message:before {
        content: '';
        position: absolute;
        top: 0;
        left: 80px;
        width: 0;
        height: 100%;
        border-right: 1px solid #3475AB;
    }

    .composer .message h4 {
        margin-bottom: 5px;
        font-size: 18px;
        line-height: 24px;
    }

    .composer .message p {
        font-size: 14px;
        line-height: 18px;
    }

    .composer .message > i {
        position: absolute;
        top: 44%;
        left: 15px;
        width: 50px;
        height: 50px;
        margin-top: -20px;
        border: 1px solid #3475AB;
        border-radius: 50%;
        font-size: 35px;
        line-height: 51px;
        text-align: center;
    }

.composer .message-warning,
.composer .message-warning:before,
.composer .message-warning h4,
.composer .message-warning i {
    border-color: #94846e !important;
    color: #94846e !important;
}

    .composer .message-warning:hover, .composer .message-warning:hover:before,
    .composer .message-warning:hover h4,
    .composer .message-warning:hover i {
        background-color: #94846e !important;
        color: #fff !important;
        transition: all 50ms linear;
        border-color: #fff !important;
    }

.composer .message-success,
.composer .message-success:before,
.composer .message-success h4,
.composer .message-success i {
    border-color: #6bcbca !important;
    color: #6bcbca !important;
}

.composer .message-error,
.composer .message-error:before,
.composer .message-error h4,
.composer .message-error i {
    border-color: #ff6766 !important;
    color: #ff6766 !important;
}


/**/
/* milestone */
/**/
.composer .milestone {
    position: relative;
    display: inline-block;
    width: 178px;
    height: 158px;
    overflow: hidden;
    margin-bottom: 10px;
    padding-top: 20px;
    border: 1px solid #3475AB;
    border-radius: 15px;
    text-align: center;
    color: #3475AB;
}

    .composer .milestone p {
        position: relative;
        z-index: 1;
        font-size: 16px;
        line-height: 20px;
    }

    .composer .milestone .fa {
        position: relative;
        z-index: 1;
        display: block;
        margin-bottom: 4px;
        font-size: 72px;
        text-align: center;
    }

    .composer .milestone .value {
        position: relative;
        z-index: 1;
        font-size: 42px;
    }

.composer .milestone-alt {
    border-color: transparent;
    background: #3475AB;
    color: #fff;
}

    .composer .milestone-alt:after,
    .composer .milestone-alt:before {
        content: '';
        position: absolute;
        top: 50%;
        left: -25%;
        width: 150%;
        height: 100%;
        background: rgba(0,0,0,0.05);
        -webkit-transform-origin: 50% 0;
        -webkit-transform: rotate(45deg);
    }

    .composer .milestone-alt:before {
        -webkit-transform: rotate(135deg);
    }


/**/
/* pricing table */
/**/
.composer .pricing-table {
    margin: -10px -5px 0 -5px;
}

    .composer .pricing-table .col {
        display: inline-block;
        vertical-align: top;
        width: 210px;
        margin: 10px 5px 0 5px;
        border: 1px solid #3475AB;
        border-radius: 10px;
        overflow: hidden;
        text-align: center;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }

    .composer .pricing-table .head {
        padding: 11px 0;
        background: #3475AB;
        font-size: 26px;
        font-weight: 300;
        color: #fff;
    }

    .composer .pricing-table .price {
        padding: 54px 0;
        font-size: 84px;
        line-height: 64px;
        font-weight: 300;
        color: #000;
    }

        .composer .pricing-table .price sup {
            vertical-align: top;
            font-size: 36px;
            line-height: 1;
        }

        .composer .pricing-table .price sub {
            vertical-align: bottom;
            margin-left: -50px;
            font-size: 13px;
            line-height: 1;
        }

    .composer .pricing-table .listing li {
        padding: 10px 0;
        font-weight: 300;
    }

        .composer .pricing-table .listing li:nth-child(odd) {
            background: #f3f2f2;
        }

    .composer .pricing-table .foot {
        padding: 35px 0;
    }

    .composer .pricing-table .featured {
        box-shadow: 0 0 10px rgba(0,0,0,0.2);
    }

        .composer .pricing-table .featured .price {
            color: #3475AB;
        }

@media screen and (max-width: 1200px) { /* laptop */
    .composer .pricing-table .col {
        width: 167px;
    }

    .composer .pricing-table .price {
        font-size: 64px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .composer .pricing-table .col {
        width: 269px;
    }

    .composer .pricing-table .price {
        font-size: 84px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .composer .pricing-table .col {
        width: 48%;
        margin-right: 1%;
        margin-left: 1%;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .composer .pricing-table {
        margin-right: 0;
        padding-left: 0;
    }

        .composer .pricing-table .col {
            width: 100%;
        }
}


/**/
/* progress bar */
/**/
.composer .progress-bar li {
    margin-top: 10px;
    line-height: 27px;
    font-weight: 300;
}

    .composer .progress-bar li:first-child {
        margin-top: 0;
    }

.composer .progress-bar .bar {
    height: 25px;
    border: 1px solid #d1d1d1;
    border-radius: 5px;
}

    .composer .progress-bar .bar span {
        position: relative;
        display: block;
        height: 25px;
        border-radius: 4px;
        background: #3475AB;
    }

        .composer .progress-bar .bar span:after {
            content: '';
            position: absolute;
            top: -2px;
            left: 100%;
            width: 29px;
            height: 29px;
            margin-left: -14px;
            border-radius: 50%;
            background: #fff;
            box-shadow: 0 0 6px rgba(0,0,0,0.20);
        }

.composer .progress-bar-alt li {
    margin-top: 37px;
}

    .composer .progress-bar-alt li:first-child {
        margin-top: 27px;
    }

.composer .progress-bar-alt .name {
    position: relative;
    z-index: 1;
    margin-bottom: -27px;
    padding-left: 10px;
}

.composer .progress-bar-alt .bar {
    border-color: #3475AB;
}

    .composer .progress-bar-alt .bar em {
        position: absolute;
        top: -32px;
        left: 100%;
        width: 35px;
        margin-left: -17px;
        border-radius: 5px;
        background: #3475AB;
        font-size: 13px;
        text-align: center;
        color: #fff;
    }

        .composer .progress-bar-alt .bar em:after {
            content: '';
            position: absolute;
            top: 100%;
            left: 50%;
            margin-left: -4px;
            border-top: 4px solid #3475AB;
            border-right: 4px solid transparent;
            border-left: 4px solid transparent;
        }

    .composer .progress-bar-alt .bar span {
        border-right: 1px solid #3475AB;
        border-radius: 9px 0 0 9px;
        background: #f3f2f2;
    }

        .composer .progress-bar-alt .bar span:after {
            display: none;
        }


/**/
/* process */
/**/
.composer .process {
    position: relative;
    margin: 0 -15px;
}

    .composer .process:after,
    .composer .process:before {
        content: '';
        position: absolute;
        z-index: 1;
        top: 64px;
        width: 5px;
        height: 5px;
        border: 1px solid #535353;
        border-radius: 50%;
        background: #fff;
    }

    .composer .process:after {
        left: 0;
        margin-left: 12px;
        border-color: #3475AB;
    }

    .composer .process:before {
        right: 0;
        margin-right: 12px;
    }

    .composer .process li {
        position: relative;
        display: inline-block;
        vertical-align: top;
        width: 270px;
        margin: 0 15px;
        text-align: center;
    }

        .composer .process li:after {
            content: '';
            position: absolute;
            z-index: 1;
            top: 52px;
            left: 100%;
            width: 29px;
            height: 29px;
            border: 1px solid #535353;
            border-radius: 50%;
            background: #fff;
            font-family: FontAwesome;
            font-size: 14px;
            line-height: 30px;
        }

        .composer .process li:before {
            content: '';
            position: absolute;
            top: 67px;
            left: 0;
            width: 100%;
            border-bottom: 1px solid #535353;
        }

        .composer .process li:last-child:after {
            display: none;
        }

    .composer .process h3 {
        margin-bottom: 15px;
        font-size: 18px;
        color: #000;
    }

    .composer .process i {
        position: relative;
        display: block;
        width: 133px;
        height: 133px;
        margin: 0 auto 20px;
        border: 1px solid #535353;
        border-radius: 15px;
        background: #fff;
        font-size: 42px;
        line-height: 134px;
        text-align: center;
    }

    .composer .process .done:after {
        content: "\f00c";
        border-color: #3475AB;
        color: #3475AB;
    }

    .composer .process .done:before {
        border-color: #3475AB;
    }

    .composer .process .done i {
        border-color: #3475AB;
        color: #3475AB;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .composer .process {
        margin: 0 -10px;
    }

        .composer .process:after {
            margin-left: 7px;
        }

        .composer .process:before {
            margin-right: 7px;
        }

        .composer .process li {
            width: 220px;
            margin: 0 10px;
        }

            .composer .process li:after {
                margin-left: -5px;
            }
}

@media screen and (max-width: 980px) { /* pad */
    .composer .process {
        margin: -50px 0 0;
    }

        .composer .process:after,
        .composer .process:before,
        .composer .process li:after,
        .composer .process li:before {
            display: none;
        }

        .composer .process li {
            width: 50%;
            margin: 50px 0 0;
        }

        .composer .process p {
            padding: 0 10px;
        }
}

@media screen and (max-width: 479px) { /* mini phone */
    .composer .process li {
        width: 100%;
    }

    .composer .process p {
        padding: 0;
    }
}


/**/
/* services */
/**/
.composer .services {
    margin: -50px -15px 0;
}

    .composer .services li {
        display: inline-block;
        vertical-align: top;
        width: 297px;
        margin-top: 50px;
        padding: 0 15px;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }

    .composer .services h3 {
        margin: 0;
        padding-left: 90px;
        font-size: 18px;
        font-weight: 300;
        color: #000;
    }

    .composer .services p {
        margin-top: 10px;
        padding-left: 90px;
    }

    .composer .services .icon {
        display: block;
        float: left;
        width: 70px;
        height: 70px;
        border-radius: 10px;
        background: #3475AB;
        font-size: 28px;
        line-height: 70px;
        text-align: center;
        text-shadow: 5px 5px 0 rgba(0,0,0,0.05);
        color: #fff;
    }

.composer .services-alt li {
    text-align: center !important;
}

.composer .services-alt h3,
.composer .services-alt p {
    padding-left: 0 !important;
}

.composer .services-alt .sep {
    height: 1px;
    margin-top: 10px;
    background: #e0e0e0;
    background: -ms-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
    background: -moz-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
    background: -webkit-linear-gradient(left, #ffffff 0%, #e0e0e0 50%, #ffffff 100%);
}

.composer .services-alt .icon {
    float: none !important;
    width: 134px;
    height: 134px;
    margin: 0 auto 15px !important;
    border: 1px solid #888;
    border-radius: 15px;
    background: none;
    font-size: 64px;
    line-height: 134px;
    text-shadow: none;
    color: #888;
}

@media screen and (max-width: 1200px) { /* laptop */
    .composer .services {
        margin-right: -10px;
        margin-left: -10px;
    }

        .composer .services li {
            width: 240px;
            padding: 0 10px;
        }

        .composer .services h3,
        .composer .services p {
            padding-left: 85px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .composer .services {
        margin-right: -9px;
        margin-left: -9px;
    }

        .composer .services li {
            width: 189px;
            padding: 0 9px;
            text-align: center;
        }

        .composer .services .icon {
            float: none;
            margin: 0 auto 10px;
        }

        .composer .services h3,
        .composer .services p {
            padding-left: 0;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .composer .services li {
        width: 50%;
        padding: 0 9px;
        text-align: left;
    }

    .composer .services .icon {
        float: left;
        margin: 0;
    }

    .composer .services h3,
    .composer .services p {
        padding-left: 85px;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .composer .services li {
        width: 100%;
    }
}


/**/
/* tabs */
/**/
.composer .tabs {
    position: relative;
}

    .composer .tabs > input {
        display: none;
    }

    .composer .tabs > label {
        position: relative;
        display: inline-block;
        vertical-align: top;
        margin-right: -1px;
        padding: 0 50px;
        border-right: 1px solid #fff;
        border-left: 1px solid #fff;
        background: #3475AB;
        line-height: 56px;
        text-align: center;
        color: #fff;
        cursor: pointer;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }

        .composer .tabs > label:nth-child(2) {
            border-left-color: #3475AB;
        }

    .composer .tabs > div {
        position: absolute;
        top: 56px;
        left: 0;
        margin-top: -1px;
        padding: 20px;
        border: 1px solid #3475AB;
        opacity: 0;
        -ms-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -webkit-transition: opacity 0.3s;
    }

    .composer .tabs > input:checked + label {
        z-index: 1;
        padding-bottom: 1px;
        border-top: 1px solid #3475AB;
        border-right-color: #3475AB;
        border-left-color: #3475AB;
        border-bottom: 0;
        background: #fff;
        line-height: 54px;
        color: #3475AB;
        cursor: default;
    }

    .composer .tabs > .tabs-head-1:checked ~ .tabs-cont-1,
    .composer .tabs > .tabs-head-2:checked ~ .tabs-cont-2,
    .composer .tabs > .tabs-head-3:checked ~ .tabs-cont-3,
    .composer .tabs > .tabs-head-4:checked ~ .tabs-cont-4,
    .composer .tabs > .tabs-head-5:checked ~ .tabs-cont-5 {
        position: relative;
        top: 0;
        opacity: 1;
    }

.composer .tabs-alt > label {
    float: left;
    clear: left;
    width: 70px;
    height: 70px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    font-size: 20px;
    line-height: 70px !important;
}

.composer .tabs-alt > div {
    top: 0;
    left: 0;
    margin: 0 0 0 70px;
    padding: 31px;
    border: 0;
    background: #f3f2f2;
}

.composer .tabs-alt > input:checked + label {
    padding-bottom: 0;
    background: #f3f2f2;
}

@media screen and (max-width: 980px) { /* pad */
    .composer .tabs > label {
        padding: 0 30px;
    }

    .composer .tabs-alt > label {
        padding: 0;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .composer .tabs > label {
        padding: 0 20px;
    }

    .composer .tabs-alt > label {
        width: 70px;
    }
}


/**/
/* team */
/**/
.composer .team {
    margin: -50px -15px 0;
}

    .composer .team li {
        display: inline-block;
        vertical-align: top;
        width: 300px;
        margin-top: 50px;
        padding: 0 15px;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
    }

        .composer .team li > div {
            overflow: hidden;
            padding: 9px;
            border: 1px solid #d1d1d1;
            border-radius: 15px;
            text-align: center;
        }

    .composer .team h3 {
        margin-bottom: 10px;
        font-size: 18px;
        font-weight: 300;
        color: #000;
    }

    .composer .team h4 {
        font-weight: 300;
    }

    .composer .team img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 10px;
    }

    .composer .team .pic {
        position: relative;
        margin-bottom: 15px;
        padding-bottom: 100%;
    }

    .composer .team .social {
        margin: 25px -9px -9px;
        padding: 10px 0;
        background: #f7f7f7;
    }

        .composer .team .social a {
            margin: 0 1px;
        }

.composer .team-alt li > div {
    border-color: #3475AB;
}

.composer .team-alt .social {
    background: #3475AB;
}

@media screen and (max-width: 1200px) { /* laptop */
    .composer .team {
        margin-right: -10px;
        margin-left: -10px;
    }

        .composer .team li {
            width: 240px;
            padding: 0 10px;
        }
}

@media screen and (max-width: 980px) { /* pad */
    .composer .team {
        margin-right: -9px;
        margin-left: -9px;
    }

        .composer .team li {
            width: 189px;
            padding: 0 9px;
            text-align: center;
        }
}

@media screen and (max-width: 767px) { /* phone */
    .composer .team li {
        width: 49.99%;
        padding: 0 9px;
    }
}

@media screen and (max-width: 479px) { /* mini phone */
    .composer .team li {
        width: 100%;
    }
}


/**/
/* testimonial */
/**/
.composer .testimonial .date {
    position: relative;
    margin-bottom: 15px;
    font-size: 12px;
    text-align: center;
    color: #000;
}

    .composer .testimonial .date:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 0;
        left: 50%;
        margin-left: 70px;
        border-bottom: 1px solid #e0e0e0;
    }

    .composer .testimonial .date:before {
        content: '';
        position: absolute;
        top: 50%;
        right: 50%;
        left: 0;
        margin-right: 70px;
        border-bottom: 1px solid #e0e0e0;
    }

.composer .testimonial .text {
    position: relative;
    min-height: 96px;
    margin-left: 125px;
    padding: 20px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.2);
    font-size: 13px;
}

    .composer .testimonial .text:before {
        content: '';
        position: absolute;
        top: 45px;
        right: 100%;
        border-top: 6px solid transparent;
        border-right: 6px solid rgba(0,0,0,0.2);
        border-bottom: 6px solid transparent;
    }

    .composer .testimonial .text:after {
        content: '';
        position: absolute;
        top: 44px;
        right: 100%;
        border-top: 6px solid transparent;
        border-right: 6px solid #fff;
        border-bottom: 6px solid transparent;
    }

    .composer .testimonial .text a {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 46px;
        height: 46px;
        font-size: 20px;
        line-height: 46px;
        text-align: center;
    }

.composer .testimonial .author {
    float: left;
    display: inline-block;
    font-size: 13px;
    line-height: 15px;
    font-weight: 300;
    text-align: center;
}

    .composer .testimonial .author img {
        display: block;
        width: 100px;
        height: 100px;
        margin-bottom: 3px;
        border-radius: 50%;
        border: 3px solid #fff;
    }

.composer .testimonial-group .author img {
    border: 0;
}

.composer .testimonial .author span {
    display: block;
    font-weight: 400;
    color: #000;
}

.composer .testimonial-alt .text {
    background: #3475AB;
    box-shadow: none;
    color: #fff;
}

    .composer .testimonial-alt .text:after {
        border-right-color: #3475AB;
    }

    .composer .testimonial-alt .text:before {
        display: none;
    }

    .composer .testimonial-alt .text a {
        color: #fff;
    }

.composer .testimonial-group {
    text-align: center;
}

    .composer .testimonial-group .text {
        display: none;
        margin: 0 0 15px 0;
        text-align: left;
    }

        .composer .testimonial-group .text:after {
            display: none;
        }

        .composer .testimonial-group .text.active {
            display: block;
        }

    .composer .testimonial-group .author {
        position: relative;
        display: inline-block;
        vertical-align: top;
        float: none;
        margin: 0 2px;
        cursor: pointer;
    }

        .composer .testimonial-group .author div {
            position: absolute;
            top: 0;
            left: 0;
            width: 100px;
            height: 100px;
            border-radius: 50%;
            background: #3475AB;
            opacity: 0.5;
            -ms-transition: opacity 0.3s;
            -moz-transition: opacity 0.3s;
            -webkit-transition: opacity 0.3s;
        }

        .composer .testimonial-group .author.active {
            cursor: default;
        }

            .composer .testimonial-group .author.active:before {
                content: '';
                position: absolute;
                top: -15px;
                left: 44px;
                border-top: 6px solid #3475AB;
                border-right: 6px solid transparent;
                border-left: 6px solid transparent;
            }

            .composer .testimonial-group .author.active div {
                opacity: 0;
            }

.owl-carousel .testimonial {
    padding-bottom: 5px;
}


/**/
/* toggle */
/**/
.composer .toggle dt {
    position: relative;
    margin-top: 5px;
    padding: 5px 40px 5px 15px;
    border-radius: 5px;
    background: #f3f2f2;
    font-size: 15px;
    line-height: 25px;
    font-weight: 300;
    cursor: pointer;
}

    .composer .toggle dt:hover {
        color: #3475AB;
    }

    .composer .toggle dt:first-child {
        margin-top: 0;
    }

    .composer .toggle dt i {
        position: absolute;
        top: 5px;
        right: 5px;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: #3475AB;
    }

        .composer .toggle dt i:after,
        .composer .toggle dt i:before {
            content: '';
            position: absolute;
            top: 12px;
            left: 5px;
            width: 15px;
            height: 1px;
            background: #fff;
        }

        .composer .toggle dt i:after {
            top: 5px;
            left: 12px;
            width: 1px;
            height: 15px;
        }

.composer .toggle dd {
    display: none;
    margin: 15px 0;
    padding: 0 15px;
    font-size: 15px;
    line-height: 24px;
    font-weight: 300;
}

    .composer .toggle dd:last-child {
        margin-bottom: 0;
    }

.composer .toggle .active i:after {
    display: none;
}

.composer .toggle-alt dt {
    background: none;
    box-shadow: inset 0 0 0 1px #3475AB;
    color: #3475AB;
}

    .composer .toggle-alt dt:hover {
        color: #000;
    }


/**/
/* twitter */
/**/
.composer .twitter-feed li {
    position: relative;
    margin-top: 2px;
    padding-left: 90px;
    background: #3475AB;
    color: #fff;
}

    .composer .twitter-feed li:first-child {
        margin-top: 0;
    }

.composer .twitter-feed p {
    padding: 15px 20px;
    border-left: 2px solid #fff;
    font-size: 13px;
    line-height: 20px;
}

.composer .twitter-feed a {
    font-weight: 400;
    color: #fff;
}

    .composer .twitter-feed a:hover {
        text-decoration: underline;
    }

.composer .twitter-feed i {
    position: absolute;
    top: 50%;
    left: 20px;
    width: 48px;
    height: 48px;
    margin-top: -25px;
    border: 1px solid #fff;
    border-radius: 50%;
    font-size: 24px;
    line-height: 48px;
    text-align: center;
    color: #fff;
}

.composer .twitter-feed-alt p {
    padding-top: 14px;
    padding-bottom: 14px;
    border: 1px solid #3475AB;
    border-left: 0;
    background: #fff;
    color: #535353;
}

.composer .twitter-feed-alt a {
    color: #3475AB;
}

.composer .twitter-feed-alt p span {
    color: #000;
    font-weight: 400;
    opacity: 1;
}

.composer .twitter-carousel {
    text-align: center;
    margin: 0 58px;
}

    .composer .twitter-carousel p {
        font-size: 14px;
        line-height: 24px;
    }

        .composer .twitter-carousel p span {
            font-weight: 400;
            color: #000;
        }

    .composer .twitter-carousel .button {
        margin-top: 10px;
        padding-top: 4px;
        padding-bottom: 4px;
    }

    .composer .twitter-carousel .fa-twitter {
        display: block;
        width: 62px;
        height: 62px;
        margin: 0 auto 10px;
        border-radius: 10px;
        background: #3475AB;
        font-size: 24px;
        line-height: 62px;
        color: #fff;
    }

    .composer .twitter-carousel .owl-buttons {
        top: 0;
        right: -58px;
        left: -58px;
        margin: 0;
    }

        .composer .twitter-carousel .owl-buttons div {
            width: 46px;
            height: 46px;
            margin: 0;
            border-color: #3475AB;
            border-radius: 5px;
            font-size: 30px;
            line-height: 44px;
            color: #3475AB;
        }

            .composer .twitter-carousel .owl-buttons div:hover {
                color: #fff;
            }

        .composer .twitter-carousel .owl-buttons .owl-prev {
            float: left;
        }

        .composer .twitter-carousel .owl-buttons .owl-next {
            float: right;
        }

.composer .twitter-carousel-alt {
    margin: 0;
}

    .composer .twitter-carousel-alt .owl-pagination {
        margin-top: 62px;
    }


/**/
/* video */
/**/
.composer .video {
    padding: 10px;
    border-radius: 15px;
    background: #f5f5f5;
    box-shadow: inset 0 0 0 1px #dedede;
}

    .composer .video div {
        position: relative;
        overflow: hidden;
        padding-bottom: 50%;
        border-radius: 10px;
        -webkit-transform: scale(1);
    }

    .composer .video iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); /*ios 7 border-radius-bug */
        -webkit-transform: rotate(0.000001deg); /*mac os 10.6 safari 5 border-radius-bug */
        -webkit-border-radius: 20px;
        -moz-border-radius: 20px;
        border-radius: 10px;
    }



/*----------------------------------------------*/
/*                    WIDGETS                   */
/*----------------------------------------------*/

/**/
/* widget */
/**/
.widget-area {
    padding: 15px;
    border-radius: 10px;
    background: #f3f2f2;
}

.widget .head {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 30px;
    color: #000;
}

    .widget .head i {
        display: block;
        float: left;
        width: 30px;
        height: 30px;
        margin-right: 6px;
        border-radius: 5px;
        font-size: 14px;
        line-height: 30px;
        text-align: center;
        color: #fff;
    }

    .widget .head .orange {
        background: #feb900;
        background: -ms-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -moz-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -webkit-linear-gradient(top, #feb900 0%, #ff9600 100%);
    }

    .widget .head .blue {
        background: #feb900;
        background: -ms-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -moz-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -webkit-linear-gradient(top, #feb900 0%, #ff9600 100%);
    }

    .widget .head .light-blue {
        background: #feb900;
        background: -ms-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -moz-linear-gradient(top, #feb900 0%, #ff9600 100%);
        background: -webkit-linear-gradient(top, #feb900 0%, #ff9600 100%);
    }

    .widget .head .green {
        background: #79ea32;
        background: -ms-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
        background: -moz-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
        background: -webkit-linear-gradient(top, #79ea32 0%, #2bbe06 100%);
    }

    .widget .head .purple {
        background: #fb5bc4;
        background: -ms-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
        background: -moz-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
        background: -webkit-linear-gradient(top, #fb5bc4 0%, #a845fd 100%);
    }

.widget .cont {
    border-radius: 5px;
    background: #fff;
}

.widget .foot {
    margin-top: 10px;
}

.widget + .widget {
    margin: 15px -15px 0;
    padding: 15px 15px 0;
    border-top: 1px solid #e3e3e3;
}


/**/
/* widget search  */
/**/
.widget-search form {
    position: relative;
}

.widget-search input {
    width: 100%;
    padding: 7px 28px;
    border-radius: 5px;
    background: #ddd;
    font-size: 12px;
    line-height: 16px;
}

.widget-search .fa-search {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    font-size: 12px;
    line-height: 30px;
    text-align: center;
}


/**/
/* widget categories  */
/**/
.widget-categories li {
    border-top: 1px solid #e9e9e9;
}

    .widget-categories li:first-child {
        border-top: 0;
    }

.widget-categories a {
    display: block;
    padding: 10px 13px;
    font-size: 13px;
    line-height: 17px;
    color: #535353;
}

    .widget-categories a:hover {
        color: #3475AB;
    }

.widget-categories i {
    float: right;
    line-height: 17px;
}

.widget-categories .active {
    color: #3475AB;
}

    .widget-categories .active i {
        float: left;
        margin-right: 8px;
    }


/**/
/* widget recent posts  */
/**/
.widget-recent-posts li {
    margin-top: 10px;
    padding-top: 10px;
    border-radius: 5px;
    background: #fff;
    text-align: center;
}

.widget-recent-posts p {
    min-height: 54px;
    padding: 0 10px 10px 10px;
    border-bottom: 1px solid #e9e9e9;
    font-size: 13px;
    line-height: 18px;
    text-align: left;
}

.widget-recent-posts img {
    display: block;
    float: left;
    margin: 0 10px;
    border-radius: 10px;
    -ms-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
}

    .widget-recent-posts img:hover {
        opacity: 0.7;
    }

.widget-recent-posts div a {
    width: 25%;
    border-left: 1px solid #e9e9e9;
    font-size: 14px;
    line-height: 32px;
    color: #ccc;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

    .widget-recent-posts div a:hover {
        color: #3475AB;
    }

.widget-recent-posts div span {
    display: inline-block;
    width: 50%;
    font-size: 12px;
    line-height: 32px;
    font-weight: 300;
}

@media screen and (max-width: 980px) { /* pad */
    .widget-recent-posts img {
        display: none;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-recent-posts img {
        display: block;
    }
}


/**/
/* widget recent photos  */
/**/
.widget-recent-photos ul {
    margin: -6px 0 0 -6px;
}

.widget-recent-photos li {
    position: relative;
    display: inline-block;
    width: 76px;
    height: 76px;
    overflow: hidden;
    margin: 6px 0 0 6px;
}

    .widget-recent-photos li img {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 10px;
    }

    .widget-recent-photos li a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 10px;
        background: #3475AB;
        opacity: 0;
        -ms-transition: opacity 0.6s;
        -moz-transition: opacity 0.6s;
        -webkit-transition: opacity 0.6s;
    }

        .widget-recent-photos li a:hover {
            opacity: 0.8;
        }

    .widget-recent-photos li i {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 24px;
        height: 24px;
        margin: -13px 0 0 -13px;
        border: 1px solid #fff;
        border-radius: 50%;
        font-size: 14px;
        line-height: 24px;
        text-align: center;
        color: #fff;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .widget-recent-photos ul {
        margin: -5px 0 0 -5px;
    }

    .widget-recent-photos li {
        width: 60px;
        height: 60px;
        margin: 5px 0 0 5px;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .widget-recent-photos li {
        width: 68px;
        height: 68px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-recent-photos ul {
        margin: -6px 0 0 -6px;
    }

    .widget-recent-photos li {
        width: 76px;
        height: 76px;
        margin: 6px 0 0 6px;
    }
}


/**/
/* widget recent comments */
/**/
.widget-recent-comments li {
    margin-top: 10px;
    padding-top: 10px;
    border-radius: 5px;
    background: #fff;
    text-align: center;
}

.widget-recent-comments p {
    min-height: 36px;
    padding: 0 10px 10px 10px;
    border-bottom: 1px solid #e9e9e9;
    font-size: 13px;
    line-height: 18px;
    text-align: left;
}

.widget-recent-comments img {
    display: block;
    float: left;
    margin: 0 10px;
}

.widget-recent-comments span {
    display: block;
    padding: 8px 0;
    font-size: 12px;
    line-height: 16px;
    font-weight: 300;
}

@media screen and (max-width: 980px) { /* pad */
    .widget-recent-comments img {
        display: none;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-recent-comments img {
        display: block;
    }
}


/**/
/* widget tags  */
/**/
.widget-tags a {
    display: inline-block;
    vertical-align: top;
    margin: 5px 0 0 5px;
    padding: 0 10px;
    border: 1px solid #3475AB;
    border-radius: 4px;
    font-size: 14px;
    line-height: 30px;
    font-weight: 300;
}

    .widget-tags a:hover {
        background: #3475AB;
        color: #fff;
    }

.widget-tags .cont {
    padding: 5px 10px 10px 5px;
}


/**/
/* widget details  */
/**/
.widget-details p {
    padding: 9px 13px;
    font-size: 13px;
    line-height: 21px;
}

.widget-details li {
    padding: 10px 13px;
    border-bottom: 1px solid #e9e9e9;
    font-size: 13px;
    line-height: 17px;
}

    .widget-details li i {
        float: right;
        line-height: 17px;
    }


/**/
/* widget filter */
/**/
.widget-filter .cont {
    padding: 20px 15px;
}

.widget-filter .slider {
    position: relative;
    height: 4px;
    margin: 5px 7px 25px;
    border-radius: 2px;
    background: #e8e8e8;
}

    .widget-filter .slider a {
        position: absolute;
        top: -5px;
        width: 14px;
        height: 14px;
        margin-left: -7px;
        border-radius: 50%;
        background: #fff;
        box-shadow: 0 0 5px rgba(0,0,0,0.20);
    }

    .widget-filter .slider div {
        position: relative;
        height: 4px;
        border-radius: 2px;
        background: #3475AB;
    }

.widget-filter .slider-label {
    float: right;
    margin: 13px 0 12px;
    font-size: 13px;
    font-weight: 300;
}

@media screen and (max-width: 1200px) { /* laptop */
    .widget-filter .slider-label {
        float: none;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-filter .slider-label {
        float: right;
    }
}


/**/
/* widget cart */
/**/
.widget-cart li {
    min-height: 54px;
    padding: 15px;
    border-bottom: 1px solid #e9e9e9;
    font-size: 13px;
    line-height: 18px;
    color: #000;
}

.widget-cart a {
    color: #535353;
}

    .widget-cart a:hover {
        color: #3475AB;
    }

.widget-cart img {
    display: block;
    float: left;
    width: 54px;
    height: 54px;
    margin-right: 10px;
    border-radius: 10px;
    -ms-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
}

    .widget-cart img:hover {
        opacity: 0.7;
    }

.widget-cart .fa {
    display: block;
    float: right;
    width: 38px;
    border-left: 1px solid #e9e9e9;
    font-size: 14px;
    line-height: 34px;
    text-align: center;
}

.widget-cart .total {
    padding: 9px 0 9px 15px;
    font-size: 13px;
    line-height: 16px;
    color: #3475AB;
}

@media screen and (max-width: 980px) { /* pad */
    .widget-cart img {
        float: none;
        width: 111px;
        height: 111px;
        margin: 0 0 10px 0;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-cart img {
        float: left;
        width: 54px;
        height: 54px;
        margin: 0 10px 0 0;
    }
}


/**/
/* widget sellers */
/**/
.widget-sellers li {
    min-height: 54px;
    padding: 15px;
    border-bottom: 1px solid #e9e9e9;
    font-size: 13px;
    line-height: 18px;
    color: #000;
}

    .widget-sellers li:last-child {
        border-bottom: 0;
    }

.widget-sellers a {
    color: #535353;
}

    .widget-sellers a:hover {
        color: #3475AB;
    }

.widget-sellers img {
    display: block;
    float: left;
    width: 54px;
    height: 54px;
    margin-right: 10px;
    border-radius: 10px;
    -ms-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
}

    .widget-sellers img:hover {
        opacity: 0.7;
    }

.widget-sellers .price {
    color: #3475AB;
}

@media screen and (max-width: 980px) { /* pad */
    .widget-sellers img {
        float: none;
        width: 111px;
        height: 111px;
        margin: 0 0 10px 0;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-sellers img {
        float: left;
        width: 54px;
        height: 54px;
        margin: 0 10px 0 0;
    }
}



/*----------------------------------------------*/
/*                    FOOTER                    */
/*----------------------------------------------*/

/**/
/* widget */
/**/
.widget-alt {
    font-weight: 400;
    position: relative;
}

    .widget-alt > * {
        position: relative;
        z-index: 3;
    }

    .widget-alt .head {
        position: relative;
        margin-bottom: -10px;
        background: #ededed;
        font-size: 16px;
        padding: 15px 0 25px;
        text-align: center;
        color: #000;
        border: 1px solid #d8d8d8;
        border-radius: 0px 10px 0px 0px !important;
    }

    .widget-alt:before {
        content: "";
        position: absolute;
        background: #ededed;
        bottom: calc(100% - 1px);
        height: 17px;
        left: 16px;
        width: 45px;
        border-top: 1px solid #d8d8d8;
        border-right: 2px solid #d8d8d8;
        border-top-right-radius: 5px !important;
        z-index: 4;
        -webkit-transform: skew(45deg);
        -moz-transform: skew(45deg);
        -ms-transform: skew(45deg);
        transform: skew(45deg);
    }

    .widget-alt:after {
        content: "";
        position: absolute;
        bottom: calc(100% - 1px);
        left: 0px;
        width: 45px;
        height: 17px;
        background: #ededed;
        border-top-left-radius: 10px !important;
        border-top: 1px solid #d8d8d8;
        border-left: 1px solid #d8d8d8;
        z-index: 4;
    }

    .widget-alt .cont {
        padding: 24px;
        border: 1px solid #d8d8d8;
        border-radius: 10px;
        background: #ededed;
    }

@media screen and (max-width: 1200px) { /* laptop */
    .widget-alt .cont {
        padding: 14px;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-alt .head {
        border-radius: 10px;
    }
}


/**/
/* widget about */
/**/
.widget-alt-about ul {
    padding: 7px 0;
}

.widget-alt-about li {
    position: relative;
    padding-top: 33px;
    font-size: 13px;
    line-height: 22px;
    text-align: center;
    color: #646464;
}

    .widget-alt-about li:before {
        content: '';
        position: absolute;
        top: 16px;
        left: 0;
        width: 100%;
        height: 1px;
        background: #d7d7d7;
        background: -ms-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
        background: -moz-linear-gradient(left, #ededed 0%, #d7d7d7 50%, #ededed 100%);
        background: -webkit-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
    }

    .widget-alt-about li:first-child {
        padding: 0;
    }

        .widget-alt-about li:first-child:before {
            display: none;
        }


/**/
/* widget contacts */
/**/
.widget-alt-contacts address {
    font-size: 13px;
    line-height: 22px;
    text-align: center;
    color: #646464;
}

    .widget-alt-contacts address i {
        margin-right: 1ex;
        font-size: 14px;
    }

.widget-alt-contacts ul,
.widget-alt-contacts ol {
    position: relative;
    padding-top: 31px;
    font-size: 13px;
    line-height: 22px;
    text-align: center;
    color: #646464;
}

    .widget-alt-contacts ul:before,
    .widget-alt-contacts ol:before {
        content: '';
        position: absolute;
        top: 14px;
        left: 0;
        width: 100%;
        height: 1px;
        background: #d7d7d7;
        background: -ms-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
        background: -moz-linear-gradient(left, #ededed 0%, #d7d7d7 50%, #ededed 100%);
        background: -webkit-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
    }

.widget-alt-contacts ul {
    padding-top: 25px;
}

    .widget-alt-contacts ul:before {
        top: 12px;
    }

    .widget-alt-contacts ul a {
        color: #646464;
    }

        .widget-alt-contacts ul a:hover {
            color: #000;
        }

    .widget-alt-contacts ul i {
        margin-right: 1ex;
        font-size: 14px;
    }

.widget-alt-contacts ol li {
    display: inline-block;
    margin: 0 3px;
}

.widget-alt-contacts ol a {
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #b4b4b4;
    font-size: 20px;
    line-height: 32px;
    text-align: center;
    color: #fff;
    -ms-transition: background 0.3s;
    -moz-transition: background 0.3s;
    -webkit-transition: background 0.3s;
}

    .widget-alt-contacts ol a:hover {
        background: #3475AB;
    }


/**/
/* recent posts */
/**/
.widget-alt-posts li {
    position: relative;
    min-height: 58px;
    padding-bottom: 31px;
    font-size: 13px;
    line-height: 18px;
    color: #646464;
}

    .widget-alt-posts li:before {
        content: '';
        position: absolute;
        bottom: 15px;
        left: 0;
        width: 100%;
        height: 1px;
        background: #d7d7d7;
        background: -ms-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
        background: -moz-linear-gradient(left, #ededed 0%, #d7d7d7 50%, #ededed 100%);
        background: -webkit-linear-gradient(left, #ededed 0%,#d7d7d7 50%,#ededed 100%);
    }

.widget-alt-posts p {
    overflow: hidden;
}

.widget-alt-posts img {
    float: left;
    margin-right: 10px;
    border-radius: 10px;
    -ms-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
}

    .widget-alt-posts img:hover {
        opacity: 0.7;
    }

.widget-alt-posts span {
    display: block;
    margin-top: 4px;
    font-size: 11px;
}

.widget-alt-posts i {
    margin-left: 1ex;
    font-size: 14px;
}

@media screen and (max-width: 980px) { /* pad */
    .widget-alt-posts img {
        display: none;
    }
}

@media screen and (max-width: 767px) { /* phone */
    .widget-alt-posts img {
        display: block;
    }
}


/**/
/* feedback */
/**/
.widget-alt-feedback .widget-form {
    padding: 15px;
    border-bottom: 1px solid #cecece;
    border-radius: 5px;
    background: #ddd;
}

.widget-alt-feedback input,
.widget-alt-feedback textarea {
    width: 100%;
    padding: 7px 10px;
    border: 1px solid #c2c2c2;
    border-radius: 4px;
    background: #fff;
}

.widget-alt-feedback input {
    margin-bottom: 12px;
}

    .widget-alt-feedback input.error,
    .widget-alt-feedback textarea.error {
        border-color: #ed1c24;
        -ms-transition: border-color 0.3s;
        -moz-transition: border-color 0.3s;
        -webkit-transition: border-color 0.3s;
    }

.widget-alt-feedback textarea {
    margin-bottom: 17px;
}

.widget-alt-feedback .message-success,
.widget-alt-feedback .message-error {
    padding-bottom: 10px;
}

.widget-alt-feedback .message-success {
    color: #6bcbca;
}

.widget-alt-feedback .message-error {
    color: #ff6766;
}

    .widget-alt-feedback .message-success i,
    .widget-alt-feedback .message-error i {
        float: left;
        padding-right: 5px;
    }

.widget-alt-feedback button {
    display: inline-block;
    width: 49%;
    border-top: 1px solid #efefef;
    line-height: 40px;
    color: #646464;
    -ms-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -webkit-transition: color 0.3s;
}

    .widget-alt-feedback button:hover {
        color: #3475AB;
    }

    .widget-alt-feedback button:first-child {
        border-right: 1px solid #efefef;
    }

.widget-alt-feedback .buttons {
    margin: 0 -15px -15px;
}


/**/
/* secondary nav */
/**/
.secondary-nav {
    float: right;
    font-size: 12px;
}

    .secondary-nav li {
        display: inline-block;
        margin-left: 15px;
        padding-left: 15px;
        border-left: 1px solid #7f7f7f;
    }

        .secondary-nav li:first-child {
            margin-left: 0;
            padding-left: 0;
            border-left: 0;
        }

    .secondary-nav a {
        color: #535353;
    }

        .secondary-nav a:hover {
            color: #000;
        }

@media screen and (max-width: 767px) { /* phone */
    .secondary-nav {
        float: none;
        margin-bottom: 30px;
        text-align: center;
    }

        .secondary-nav li {
            margin-bottom: 10px;
        }
}


/**/
/* copyrights */
/**/
.copyrights {
    font-size: 12px;
    color: #535353;
}

@media screen and (max-width: 767px) { /* phone */
    .copyrights {
        text-align: center;
    }
}


/**/
/* scroll top */
/**/
.scroll-top {
    position: fixed;
    z-index: 9;
    right: 10px;
    bottom: 10px;
    display: none;
    width: 56px;
    height: 56px;
    border-radius: 5px;
    background: #ccc;
    font-size: 42px;
    line-height: 54px;
    text-align: center;
    color: #fff;
}

    .scroll-top:hover {
        background: #3475AB;
        color: #fff;
    }

/*----------------------------------------------------------------------------*/
/*                            TEMPLATE ADVERTISEMENT                          */
/*----------------------------------------------------------------------------*/
.colored {
    color: #3475AB;
}

#adds .wysiwyg {
    position: relative;
}

#adds .page-content-alt {
    text-align: right;
}

    #adds .page-content .grid-row,
    #adds .page-content-alt .grid-row {
        margin-bottom: 0px;
        padding-bottom: 0px;
    }

    #adds .page-content h1,
    #adds .page-content-alt h1 {
        padding-top: 60px;
    }


/* section 1: Retina Ready & Fully Responsive  */
#post1 .wysiwyg img {
    position: absolute;
}

#post1 .wysiwyg .macbook {
    position: relative;
    top: 0;
    left: 0;
    padding-bottom: 20px;
    width: 95.5%;
}

#post1 .wysiwyg .ipad,
.wysiwyg .ipad-shadow {
    right: -7%;
    bottom: 0;
}

#post1 .wysiwyg .ipad {
    z-index: 3;
    width: 63.5%;
}

#post1 .wysiwyg .ipad-shadow {
    z-index: 2;
    width: 63.5%;
}

#post1 .wysiwyg .phone {
    right: 28%;
    top: 29%;
    z-index: 4;
    width: 26%;
}

#post1 .wysiwyg .g7-logo {
    left: -6%;
    top: -13%;
    z-index: 2;
    width: 33.3%;
}

#post1 .wysiwyg .iphone {
    bottom: 10%;
    z-index: 2;
    max-width: 18%;
}


/* section 2: Parallax Effect Sections */

#post2 .wysiwyg img {
    position: absolute;
}

#post2 .wysiwyg .ipad {
    position: relative;
    z-index: 4;
}

#post2 .wysiwyg img {
    top: 0;
    left: -25px;
    width: 110.4%;
}

#post2 .wysiwyg .ipad-image {
    z-index: 5;
}

#post2 .wysiwyg .ipad-screan {
    z-index: 6;
}

/* section 3: Extensive Style Options  */

#post3 .wysiwyg img {
    position: absolute;
}

#post3 .wysiwyg .window-2 {
    top: 33%;
    left: -13%;
    width: 89.1%;
}

#post3 .wysiwyg .window-1 {
    position: relative;
    top: 0;
    left: 7%;
    width: 103.8%;
}

#post3 .wysiwyg .style-switcher {
    top: 1%;
    left: -1%;
    width: 42.3%;
}

/* section 4: iOS 7-inspired Design */

#post4 .wysiwyg img {
    position: absolute;
}

#post4 .wysiwyg .ipad {
    position: relative;
    left: -8%;
    width: 116.2%;
}

#post4 .wysiwyg .left-window {
    top: 17%;
    left: -8%;
    width: 73.1%;
}

#post4 .wysiwyg .right-window {
    top: 7%;
    left: 44%;
    width: 68.4%;
}

#post4 .wysiwyg .tools-icon {
    left: 26%;
    bottom: 18%;
    width: 69.9%;
}

/* section 5: Font Awesome Icons integrated */

#post5 .wysiwyg img {
    position: absolute;
}

#post5 .wysiwyg .mac {
    position: relative;
    top: 0;
    left: 0;
    width: 105.8%;
}

#post5 .wysiwyg .icon-1 {
    top: 43%;
    left: 15%;
    z-index: 3;
    width: 17.44%;
}

#post5 .wysiwyg .icon-2 {
    top: 43%;
    left: 35%;
    z-index: 3;
    width: 17.2%;
}

#post5 .wysiwyg .icon-3 {
    top: 43%;
    left: 55%;
    z-index: 3;
    width: 17.1%;
}

#post5 .wysiwyg .icon-4 {
    top: 43%;
    left: 75%;
    z-index: 3;
    width: 17.44%;
}

/* section 6: Styled Content Elements */

#post6 .wysiwyg img {
    position: absolute;
}

#post6 .wysiwyg .ipad-vertical {
    position: relative;
    top: 0;
    z-index: 2;
    left: -11%;
    width: 128.8%;
}

#post6 .wysiwyg .ipad-horizont {
    top: 0;
    left: -13%;
    width: 128.7%;
    z-index: 1;
}

#post6 .wysiwyg .icon {
    top: 0;
    left: -11%;
    width: 128.8%;
    z-index: 3;
}

/* section 7: WooCommerce Ready  */
#post7 .wysiwyg img {
    position: absolute;
    max-width: 100%;
}

#post7 .wysiwyg .ninja,
#post7 .wysiwyg .woo-logo {
    position: relative;
}

#post7 .wysiwyg .bag {
    top: 45%;
}

#post7 .wysiwyg .shadow {
    top: 100%;
    left: 15%;
}

/* section 8: WooCommerce Content */
#post8 .wysiwyg img {
    position: absolute;
}

#post8 .wysiwyg .iMac {
    position: relative;
    padding-bottom: 10.5%;
    margin-right: 23.33%;
    width: 76.67%;
}

#post8 .wysiwyg .iPad {
    width: 44.2%;
    top: 21%;
    left: 55%;
}

#post8 .wysiwyg .iPhone {
    top: 53%;
    left: 90%;
    width: 18.48%;
}

@media screen and (max-width: 1200px) {
    .wysiwyg.picture-cont {
        margin-right: 20px;
    }

    #adds .page-content h1,
    #adds .page-content-alt h1 {
        padding-top: 0px;
    }

    #post7 .wysiwyg .shadow {
        left: 20%;
    }

    #post8 .wysiwyg .iPad {
        width: 44.4%;
    }
}

@media screen and (max-width: 980px) { /* pad */
    .wysiwyg.picture-cont {
        width: 570px;
        margin: 20px auto;
    }

    #adds .page-content,
    #adds .page-content-alt {
        text-align: center;
        padding: 30px 0px;
    }

    #post7 .wysiwyg .shadow {
        left: 24%;
    }

    #post7 .wysiwyg .ninja {
        left: -15%;
    }

    #post7 .wysiwyg .bag {
        left: 60%;
    }

    #post8 .wysiwyg .iPad {
        width: 44.2%;
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg.picture-cont {
        width: 90%;
    }

    #post7 .wysiwyg .ninja {
        left: -20%;
    }

    #post8 .wysiwyg .iMac {
        width: 69.55%;
    }

    #post8 .wysiwyg .iPad {
        width: 40%;
        left: 53%;
    }

    #post8 .wysiwyg .iPhone {
        top: 52%;
        left: 84%;
        width: 16.9%;
    }
}

@media screen and (max-width: 479px) {
    #post7 .wysiwyg .shadow {
        left: 13%;
    }

    #post7 .wysiwyg .bag {
        width: 40%;
    }
}

input[type=checkbox] {
    -webkit-appearance: checkbox;
    float: left;
    margin-right: 5px;
}
