/*
Theme Name:Expansive
Theme URI:http://www.cpothemes.com
Description:A professional WordPress theme perfect for agencies and online businesses.
Author:CPOThemes
Author URI:http://www.cpothemes.com
Version:1.0.0
License:GNU General Public License 2.0
License URI:license.txt
*/


/* --------------------------------------------------------------
1. GENERAL ELEMENTS
-------------------------------------------------------------- */

/* BODY */
html {min-height:100%; }
body { font-family:Arial, Helvetica, sans-serif; background:#fff; color:#777; font-size:0.875em; line-height:1.6; }

/* HEADINGS */
h1, h2, h3, h4, h5, h6 { color:#444; line-height:1.2; margin:0 0 20px; }
h1 { font-size:2.5em; } 
h2 { font-size:2em; } 
h3 { font-size:1.5em; } 
h4 { font-size:1.3em; } 
h5 { font-size:1.2em; } 
h6 { font-size:1.1em; }

/* HYPERLINKS */
a:link, a:visited { color:#d7586c; text-decoration:none; }
a:hover { color:#f78; text-decoration:underline; }

/* CITATIONS */
blockquote { display:block; font-style:italic; padding:0 5%; margin:25px 0; }
blockquote cite, blockquote em, blockquote i { font-style:normal; }

/* FORMS */
input[type=text], input[type=password], input[type=input], 
input[type=tel], input[type=url], input[type=email], 
input[type=number], input[type=range], input[type=search], input[type=color], 
input[type=time], input[type=week], input[type=month], input[type=date], input[type=datetime], 
textarea, select { border:1px solid #ddd; padding:8px 6px; background:#f5f5f5; }
input[type=submit] { width:auto; -webkit-appearance:none; }

/* MAIN THEME COLORS */
.primary-color { color:#E85F52; }
.primary-color-bg { background-color:#E85F52; }
.secondary-color { color:#555; }
.secondary-color-bg { background-color:#555; }

/* SHORTCODE CUSTOM STYLING */
.button, .button:visited, input[type=submit] { border-radius:0; border:none; text-shadow:none; background:#9FC748; border-color:#c15289; font-weight:300; text-transform:uppercase; letter-spacing:2px; }
.button:hover, input[type=submit]:hover { background:#e7a;  }


/* --------------------------------------------------------------
2. LAYOUT
-------------------------------------------------------------- */


/* WRAPPERS */
.wrapper { margin:0 auto; }


/* TOPMENU */
.topbar { display:none; line-height:34px; font-size:0.9em; }


/* SOCIAL ICONS */
.social { float:right; text-align:right; padding:0; width:auto; }
.social .social-profile { display:block; float:left; color:#999; margin:0; width:30px; font-size:18px;  text-align:center; }
.social .social-profile .social-title { display:none; }
.social .social-profile:hover { text-decoration:none; }


/* HEADER */
.header { position:fixed; width:100%; top:0; padding:0 30px; z-index:99999; -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; -moz-transition-delay:0.4s; -webkit-transition-delay:0.4s; transition-delay:0.4s; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
.admin-bar .header { top:32px; }
.header .logo { float:left; padding-top:30px; }
.header .header-content { display:none; float:right; text-align:right; padding:20px 0 0 20px; }

/* HOMEPAGE SLIDES */
.slider { padding:0; margin:0; position:relative; text-align:center; -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; }
.slider-slides { display:block; overflow:hidden; padding:0; margin:0;  }
.slider-slides .slide { overflow:hidden; display:block !important; height:100%; background-position:center; background:no-repeat center center; background-size:cover; position:relative; list-style:none; width:100%; min-height:200px; margin:0; padding:0; }
.slider-slides .container { position:relative; height:inherit; }
.slider-slides .slide-content { overflow:hidden; padding-top:150px; width:50%; margin:0; text-align:left; opacity:0; -moz-transform:translateY(20px); -webkit-transform:translateY(20px); transform:translateY(20px); -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; -moz-transition-delay:0.5s; -webkit-transition-delay:0.5s; transition-delay:0.5s; }
.slider-slides .slide-content p:last-child { margin-bottom:0; }
.slider-slides .slide-active .slide-content { -moz-transform:none; -webkit-transform:none; transform:none; opacity:1; }

/* Slide Positions */
.slider-slides .slide-right .slide-content { float:right; }
.slider-slides .slide-center .slide-content { float:none; width:100%; }
/* Slider Controls */
.slider-pages { position:absolute; text-align:center; right:0; left:0; bottom:10%; height:26px; z-index:9999; }
.slider-pages a { display:inline-block; position:relative; overflow:hidden; margin:0 5px; padding-top:26px; color:transparent; width:60px; height:26px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
.slider-pages a:before { display:block; position:absolute; content:' '; top:50%; margin-top:-1px; left:0; background:#333; width:60px; height:2px; }
.slider-pages .activeSlide:before { background:#fff; }



/* BREADCRUMBS */
.breadcrumb { margin:15px 0 0; }
.breadcrumb-separator{ position:relative; padding-right:20px; margin-right:15px; }
.breadcrumb-separator:before { display:block; position:absolute; top:50%; right:0; list-style:none; font-family:'fontawesome'; content:'/'; font-weight:bold; font-size:12px; color:#ddd; margin-top:-5px; line-height:10px; opacity:0.5; }
.breadcrumb-separator { }
.breadcrumb-link :first-child{}
.breadcrumb-link :hover{}
.breadcrumb-title{}


/* PAGE BANNERS AND TITLES */
.pagetitle { overflow:hidden; padding:150px 0 50px; margin:0; background:#555; text-align:center; background-position:center; background-size:cover; }
.pagetitle .pagetitle-title { margin:0 0 10px; font-size:2.5em; }


/* HOMEPAGE TAGLINE */
.tagline { padding:40px 0; font-size:1.3em; text-align:center; }
.tagline-content { padding:0 10%; }


/* HOMEPAGE MINI FEATURES */
.minifeatures { margin:0; padding:0; }
.minifeatures .feature-row { clear:both; }
.minifeatures .feature { float:left; margin-bottom:0; width:50%; }
.minifeatures .feature-wide { clear:left; float:none; width:auto; }
.minifeatures .feature img { display:block; float:left; margin:0; width:50%; line-height:0; height:auto; }
.minifeatures .feature-right img { float:right; }
.minifeatures .feature .feature-body { overflow:hidden; padding:30px 30px 0; }
.minifeatures .feature .feature-title {  }
.minifeatures .feature .feature-content { }


/* PAGE CONTENT */
.main { background:#fff; padding-bottom:0; }


/* SIDEBARS */
.widget { overflow:hidden; margin:0 0 30px; }
.widget ul li { position:relative; padding:0 0 0 20px; margin:0 0 8px; }
.widget ul li:before { display:block; position:absolute; top:1em; left:0; font-family:'fontawesome'; content:'\f054'; font-size:10px; color:#bbb; margin-top:-7px; line-height:1.6; }


/* FOOTER */
.subfooter { overflow:hidden; padding:0;  }
.subfooter .subfooter-column { padding:30px; }
.footer {  overflow:hidden; padding:30px; clear:both; color:#aaa; text-transform:uppercase; }


/* --------------------------------------------------------------
3. NAVIGATION
-------------------------------------------------------------- */

/* TOP MENU */
.topmenu { float:left; }


/* MAIN MENU */
.menu-main { padding-top:0; float:right; color:#f00 }
/* Menu Elements */
.menu-main li a { padding:0; position:relative; margin:0 20px; color:#fff; line-height:120px; }
.menu-main li a .menu-description { display:none; }
.menu-main li:hover > a, 
.menu-main li a:hover {  }
/* Current item highlight both normally and on hover */
.menu-main > .current-menu-ancestor > a:before { position:absolute; content:' '; background:#fff; height:2px; width:100%; top:0; left:0; }
/* Children Elements */
.menu-main .has-children:before { color:#fff; content:'\f141'; font-size:10px; }
.menu-main .has-children > a { padding-right:18px; }
.menu-main li ul { margin:0; padding:30px; background:rgba(0,0,0,0.4); right:0; left:auto; width:230px; transform:rotate(2deg) translateY(20px); }
.header-sticky-active .menu-main li ul { -moz-transition-delay:0.3s; -webkit-transition-delay:0.3s; transition-delay:0.3s; }
.menu-main li:hover ul { transform:none; }
/*.menu-main > li > ul:before { content:' '; margin:0; position:absolute; top:0; right:20px; margin:-8px 0 0; border-bottom:8px solid rgba(0,0,0,0.4); border-left:8px solid transparent; border-right:8px solid transparent; z-index:9999; }*/
.menu-main li ul li { border-top:1px solid rgba(255,255,255,0.1); }
.menu-main li ul li:first-child { border-top:none; }
.menu-main li ul li a { line-height:1.5; margin:0; padding:10px; text-transform:none; }
.menu-main li ul li:hover > a, 
.menu-main li ul li a:hover { background:rgba(255,255,255,0.1); }


/* MOBILE MENU */
.menu-mobile { display:none; float:right; margin:40px 0; padding:10px; width:70px; border:none; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; -webkit-appearance:none; }


/* FOOTER MENU */
.footermenu { float:right; }
.menu-footer { text-align:left; }
.menu-footer li a { font-weight:bold; }
.menu-footer li ul li a { font-weight:normal; font-size:0.9em; }


/* SUBMENU NAVIGATION */
.menu-sub { }
.menu-sub li { }
.menu-sub li a { margin-bottom:15px; }


/* PORTFOLIO NAVIGATION */
.menu-portfolio { overflow:hidden; margin:0; padding:0; }
.menu-portfolio .menu-item { padding:20px; text-align:center; display:block; letter-spacing:2px; text-transform:uppercase; border-right:1px solid #fff; }
.menu-portfolio .menu-item:hover { text-decoration:none; background:#fff; }
.menu-portfolio .current_page_item, .menu-portfolio .current-cat { border-bottom:0; }
.menu-portfolio .current_page_item a, .menu-portfolio .current-cat a { background:#E85F52; color:#fff; }
.menu-portfolio .current_page_item  ul li a, .menu-portfolio .current-cat ul li a { color:#222; background:none; }


/* NEXT/PREV POST NAVIGATION */
.navigation { }
.navigation .nav-prev,
.navigation .nav-next { padding:0 30px; }
.navigation .nav-prev:before { display:block; position:absolute; top:50%; left:0; list-style:none; font-family:'fontawesome'; content:'\f104'; font-size:30px; color:#999; margin-top:-15px; line-height:30px; }
.navigation .nav-next:before { display:block; position:absolute; top:50%; right:0; list-style:none; font-family:'fontawesome'; content:'\f105'; font-size:30px; color:#999; margin-top:-15px; line-height:30px; }


/* NEXT/PREV POST NAVIGATION */
.navigation-portfolio { overflow:hidden; }
.navigation-portfolio div { float:left; position:relative; width:50%; padding:30px; font-size:1.3em; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
.navigation-portfolio div:before { position:absolute; display:block; font-family:'fontawesome'; content:'\f104'; top:50%; left:20px; margin-top:-20px; width:40px; height:40px; line-height:40px; text-align:center; font-size:30px; color:#fff; }
.navigation-portfolio a:hover { opacity:0.8; text-decoration:none; }
.navigation-portfolio .nav-prev { padding-left:100px; }
.navigation-portfolio .nav-next { padding-right:100px; text-align:right; }
.navigation-portfolio .nav-next:before { content:'\f105'; left:auto; right:20px; }
.navigation-portfolio span { display:block; margin:10px 0 0; font-size:0.8em; opacity:0.6; }


/* NUMBERED PAGINATION */
.pagination span, 
.pagination a { border-radius:0; padding:20px; }


/* NUMBERED PAGINATION FOR SINGLE POSTS */
.postpagination span { }
.postpagination a span { }


/* --------------------------------------------------------------
4. POSTS & PAGES
-------------------------------------------------------------- */

/* POSTS */
.post  { margin:0 0 60px; }
.post .post-image { margin:0; }
.post .post-image img { display:block; margin:0; line-height:0em; width:100%; height:auto; }
.post .post-body { }
.post .post-title { padding:0; margin:20px 0 10px 0; }
.post .post-title a { color:inherit; }
.post .post-meta { overflow:hidden; }
.post .post-meta > div { float:left; width:50%; text-align:center; text-transform:uppercase; letter-spacing:2px; padding:20px 0; border-right:1px solid #fff; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
.post .post-byline { overflow:hidden; padding:10px 0 20px; margin:0; opacity:0.7; text-transform:uppercase; letter-spacing:2px; }
.post .post-tags { display:block; margin:0 0 30px 0; }
.post .post-content { padding:0; margin:0 0 15px 0; }
.post .post-content p:last-child { margin-bottom:0; }
.post .readmore { margin:10px 0 0; }
/* Full post view */
.single-post .post .post-image { float:none; width:auto; }
.single-post .post .post-body-image { margin-left:0; }


/* INDIVIDUAL PORTFOLIO ITEMS */
.cpo_portfolio .portfolio-media { margin:0 0 30px; }
.cpo_portfolio .portfolio-image { text-align:center; }
.cpo_portfolio .portfolio-details { padding-left:5%; margin-bottom:30px; padding:15px 30px 30px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; border-radius:2px; }
.cpo_portfolio .portfolio-details div { margin:15px 0 0; border-top:1px solid #fff; padding:15px 0 0 30px; position:relative; }
.cpo_portfolio .portfolio-details p:last-child { margin:0; }
.cpo_portfolio .portfolio-details div:first-child { margin:0; border-top:none; }
.cpo_portfolio .portfolio-details .details-icon { position:absolute; display:block; width:15px; margin-top:1px; font-size:1.3em; text-align:center; left:0; top:17px; }
.cpo_portfolio .portfolio-content { }


/* AUTHOR BIOS */
.author-info { clear:both; padding:20px; margin:0 0 30px; background:#f3f3f3; }
.author-info .author-image { float:left; margin:0; width:100px; border-radius:3px; }
.author-info .author-image img { display:block; line-height:0; margin:0; border-radius:3px; }
.author-info .author-body { margin-left:120px; }
.author-info .author-name { margin:0 0 10px; }
.author-info .author-description { margin:0 0 10px; }
.author-info .author-social { margin:0 0 0; }
.author-info .author-social a { margin-right:15px; }


/* PORTFOLIO SHOWCASE */
.portfolio { clear:both; padding:0; }
.portfolio-heading { padding:30px 30px 0; max-height:300px; }
.portfolio-content { overflow:hidden; margin-bottom:50px; }
.portfolio-item { display:block; overflow:hidden; position:relative; text-align:center; padding:0; margin:0; }
.portfolio-item-image { display:block; overflow:hidden; position:relative; }
.portfolio-item img { display:block; max-width:100%; margin:0 auto; width:100%; height:auto; line-height:0; -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; }
.portfolio-item .portfolio-item-overlay { opacity:0; position:absolute; top:0; bottom:0; background:rgba(0,0,0,0.5); left:0; right:0; text-align:center; -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; z-index:9999; }
.portfolio-item .portfolio-item-title,
.portfolio-item .portfolio-item-description { opacity:0; position:absolute; top:50%; padding:20px 40px; margin:0; width:100%; -moz-transition:0.4s all; -webkit-transition:0.4s all; transition:0.4s all; -moz-transition-delay:0.3s; -webkit-transition-delay:0.3s; transition-delay:0.3s; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
.portfolio-item .portfolio-item-title { top:auto; bottom:50%; }
.portfolio-item .portfolio-item-separator { position:absolute; overflow:hidden; top:50%; left:50%; width:80px; height:1px; margin:0 0 0 -40px; text-align:center; z-index:9999; }
.portfolio-item .portfolio-item-separator:before,
.portfolio-item .portfolio-item-separator:after { content:' '; position:absolute; top:0; left:40px; width:1px; height:1px; background:rgba(255,255,255,0.7); -moz-transition:0.3s all; -webkit-transition:0.3s all; transition:0.3s all; z-index:9999; }
.portfolio-item .portfolio-item-separator:after { left:auto; right:40px; }
/* Hover Effect */
.portfolio-item a:hover { text-decoration:none; }
.portfolio-item:hover .portfolio-item-overlay { opacity:1; }
.portfolio-item:hover .portfolio-item-title,
.portfolio-item:hover .portfolio-item-description { opacity:1; }
.portfolio-item:hover .portfolio-item-separator:before,
.portfolio-item:hover .portfolio-item-separator:after { width:40px; }



/* 404 PAGE */
.notfound { padding:100px 0; }
.notfound-image { font-size:200px; font-weight:bold; text-align:right; line-height:1; }
.notfound-title { }
.notfound-content { }


/* --------------------------------------------------------------
5. COMMENTS
-------------------------------------------------------------- */


/* COMMENTS */
.comments { clear:both; margin:0; }
.commentlist { list-style:none; padding:0; margin:0 0 30px; }
.comment { overflow:hidden; list-style:none; margin:0 0 10px; padding:0; }
.comment .comment-avatar { float:left; border-radius:3px; }
.comment .comment-avatar img { border-radius:3px; }
.comment .comment-title { padding:0; margin-left:70px; }
.comment .comment-author { display:block; font-size:1.3em; }
.comment .comment-date { font-size:0.9em; }
.comment .comment-approval { display:block; padding:0 10px 0; margin:0; }
.comment .comment-content { margin:10px 0 30px 70px; padding:0; }
.comment .comment-options { overflow:hidden; float:right; text-align:right; padding:5px 10px; border-radius:2px; font-size:0.9em; }
.comment .comment-options a { margin-left:10px; }
.comment .comment-options a:first-child { margin:0; }
/* Contents Styling for Comment Body */
.comment .comment-content ul, .comment .comment-content ol { margin-bottom:18px; }
.comment .comment-content p:last-child { margin-bottom:6px; }
.comment .comment-content blockquote p:last-child { margin-bottom:24px; }
/* Nested Comments */
.comment .children { list-style:none; margin:0 0 0 50px; }
/* Pingbacks & Trackbacks */
.comments ol.pinglist { margin:0; }
.comments .pingback { list-style:none; margin:0 0 10px 0; }
.comments .pingback .url { font-style:italic; }


/* COMMENT FORM */
.comment-respond { margin:30px 0; overflow:hidden; position:relative; }
.comment-respond p { overflow:hidden; }
/* Fields */
.comment-respond .comment-notes { display:none; }
.comment-respond .required { color:#ff4b33; }
.comment-respond label{ display:block; padding:5px 0; }
.comment-respond textarea{ height:200px; max-height:400px; min-height:200px; resize:vertical; }
/* Nested Form */
#cancel-comment-reply-link { float:right; display:block; font-size:0.9em; }
/* Allowed Tags */
.comment-respond .form-allowed-tags { display:none; color:#888; font-size:0.9em; }
.comment-respond .form-allowed-tags code { display:block; font-size:0.9em; }
.comment-respond .form-submit { }