/*--------------------------------------------------------------
 
 Project   : Cabala WordPress Theme
 Purpose   : Custom VC Modules
 Author    : Yonox
 Theme URI : http://www.cabalaprofesional.es

/*------------------------------------------------------------------
[Commons]
-------------------------------------------------------------------*/
.vcex-clr:after { content: ""; display: block; height: 0; clear: both; visibility: hidden; zoom: 1; }
.vcex-isotope-grid { overflow: hidden }
.vcex-readmore { font-size: 0.923em }
.vcex-icon-wrap { display: inline; display: inline-block; text-align: center; }
.vcex-icon-wrap.left,
.vcex-icon-position-left { margin-right: 10px }
.vcex-icon-wrap.right,
.vcex-icon-position-right { margin-left: 10px }
.vcex-img-va-bottom img { vertical-align: bottom }
body .vcex-label-inherit-typo label { color: inherit; font-size: inherit; line-height: inherit; }

/*center row fix when site not set to full-screen*/
.content-right-sidebar .container.center-row,
.content-left-sidebar .container.center-row,
.content-full-width .container.center-row,
.content-no-sidebar  .container.center-row { width: 100% !important }

/*Visual Composer Extension Filter buttons*/
ul.vcex-filter-links { list-style: none; margin: 0 0 20px; }
ul.vcex-filter-links li { float: left; margin-right: 5px; margin-bottom: 5px; }
ul.vcex-filter-links li:last-child { margin-right: 0 }
ul.vcex-filter-links .theme-txt-link { display: inline-block; margin-right: 5px; }

/*center filter links*/
.vcex-filter-links.center { text-align: center }
.vcex-filter-links.center li { display: inline-block; float: none; }

/*single image caption*/
.wpb_single_image a { position: relative; } /* relative position needed for caption*/
.wpb_single_image_caption { position: absolute; z-index: 2; bottom: 20px; left: 0; color: #fff; padding: 4px 10px; background: #000; opacity: 0.7; }

/*------------------------------------------------------------------
[Spacing]
-------------------------------------------------------------------*/
.vcex-spacing { clear: both; display: block; width: 100%; height: auto; margin: 0; padding: 0; background: none; border: none; outline: none; }

/*------------------------------------------------------------------
[List Item]
-------------------------------------------------------------------*/
.vcex-list_item .vcex-icon-wrap { margin-right: 10px; text-align: center; }
.vcex-list_item { margin-bottom: 5px }
body .vcex-list_item a:hover { text-decoration: none !important }

/*------------------------------------------------------------------
[Buttons]
-------------------------------------------------------------------*/
body.compose-mode .vc-element.vc-vcex_button,
.vc_vcex_button.vc_empty-shortcode-element { display: block }
.vc_vcex_button.vc_empty-shortcode-element:after { content: ""; display: block; height: 0; clear: both; visibility: hidden; zoom: 1; }
.theme-button-block-wrap { clear: left; display: block; }

/*------------------------------------------------------------------
[Pricing]
-------------------------------------------------------------------*/
.vcex-pricing-table { list-style: none; margin: 0; padding: 0; font-size: 1em; }
.vcex-pricing { background: #fff; border-radius: 4px 4px 0 0; }
.vcex-pricing .vcex-pricing-header { border: 1px solid #ccc; border-radius: 4px 4px 0 0; padding: 15px 20px; border-radius: 4px 4px 0 0; background: #e5e5e5; text-align: center; color: #444; font-size: 1em; font-weight: 600; text-transform: uppercase; margin: 0; }
.vcex-pricing.featured .vcex-pricing-header { border-color: rgba(0,0,0,0.15) }
.vcex-pricing .vcex-pricing-cost { background: #f7f7f7; text-align: center; padding: 20px 0; border: 1px solid #e4e4e4; border-top: 0 !important; border-bottom: 0 !important; }
.vcex-pricing .vcex-pricing-ammount { display: inline; color: #7dbd21; font-size: 36px; line-height: 1em; padding: 20px 0 0; font-weight: 200; }
.vcex-pricing .vcex-pricing-per { display: inline; font-size: 0.923em; color: #999; padding-top: 7px; }
.vcex-pricing .vcex-pricing-content { font-size: 1em; text-align: center; padding: 15px; border: 1px solid #e8e8e8; }
.vcex-pricing .vcex-pricing-content ul { margin: 0 !important; list-style: none !important; }
.vcex-pricing .vcex-pricing-content ul li { margin: 0 0 5px !important; padding: 0 !important; }
.vcex-pricing .vcex-pricing-content ul li:last-child { margin-bottom: 0 !important }
.vcex-pricing .vcex-pricing-content ul li img { margin-right: 5px; display: inline-block; }
.vcex-pricing .vcex-pricing-button { text-align: center; padding: 15px; border: 1px solid #e8e8e8; border-top: 0 !important; }
.vcex-pricing .vcex-pricing-button a { float: none; margin: 0 auto; }

/*visual composer support*/
.wpb_column .vcex-pricing { width: 100% !important; margin: 0 !important; float: none !important; }
.wpb_column .vcex-pricing:after { content: ""; display: block; height: 0; clear: both; visibility: hidden; zoom: 1; }

/*------------------------------------------------------------------
[LoginForm]
-------------------------------------------------------------------*/
.vcex-login-form { padding: 20px; border: 1px solid #eee; border-radius: 4px; }
.vcex-login-form label { font-weight: 600; }
.vcex-login-form input[type="text"],
.vcex-login-form input[type="password"] { margin-top: 10px; width: 100%; font-size: 14px; }
.vcex-login-form #rememberme { margin-right: 6px; }

/*------------------------------------------------------------------
[Post Type Grid]
-------------------------------------------------------------------*/

/* Post Type Grid > Main */
.vcex-post-type-entry-details { padding: 15px; border: 1px solid #eee; }
.vcex-post-type-entry-media { margin: 0; position: relative; overflow: hidden; }
.vcex-post-type-entry-media img { display: block; margin: 0 auto; }
.vcex-post-type-entry-categories { margin: -5px 0 10px }
.vcex-post-type-entry-categories a { font-size: 0.923em; color: #777; list-style: none; }
.vcex-post-type-entry-date { font-size: 0.923em; color: #777; list-style: none; margin: 0 0 5px; }
.vcex-post-type-entry-excerpt p:last-child { margin: 0 }
.vcex-post-type-entry-readmore-wrap { padding-top: 15px }

/* Post Type Grid > No Margins Grid */
.vcex-post-type-grid.vcex-no-margin-grid .vcex-post-type-entry-details { background: #262626; border: none; color: #787878; }
.vcex-post-type-grid.vcex-no-margin-grid .vcex-post-type-entry-title a { color: #fff }

/*------------------------------------------------------------------
[Post Type List]
-------------------------------------------------------------------*/


/*------------------------------------------------------------------
[Blog Grid]
-------------------------------------------------------------------*/

/* Blog Grid > Main */
.vcex-blog-entry-details { padding: 20px; border: 1px solid #eee; }
.vcex-blog-entry-media { margin: 0 0 -1px; position: relative; }
.vcex-blog-entry-media img { display: block; width: 100%; }
.vcex-blog-entry-excerpt p:last-child { margin: 0 }
.vcex-blog-entry-date { font-size: 0.923em; color: #777; list-style: none; margin: 0 0 5px; }
.vcex-blog-entry-details .theme-button { font-size: 0.923em }
.vcex-blog-entry-excerpt p:last-child { margin: 0 }
.vcex-blog-entry-readmore-wrap { padding-top: 15px }

/*------------------------------------------------------------------
[Image Grid]
-------------------------------------------------------------------*/
.vcex-image-grid.grid-style-no-margins .col { margin: 0 }
.vcex-image-grid-entry-img { position: relative; display: block; margin: 0 auto; text-align: center; }
.vcex-image-grid-entry img { display: inline-block; vertical-align: bottom; }
.vcex-image-grid-entry > a { display: block; margin: 0 auto; }
.vcex-image-grid-entry-title { margin: 10px 0 0; text-align: center; }
.vcex-image-grid-entry-title h2,
.vcex-image-grid-entry-title h3,
.vcex-image-grid-entry-title h4 { margin: 0 }
.vcex-image-grid-entry-title p:last-child { margin: 0 }
.vcex-image-grid.grid-style-no-margins .vcex-image-grid-entry-title { position: absolute; bottom: 0; left: 0; background: #000; background: rgba(0,0,0,0.8); color: #fff; padding: 10px; text-align: center; width: 100%; }
.vcex-image-grid.grid-style-no-margins .vcex-image-grid-entry-title a { color: #fff }
.vcex-image-grid-video-overlay { position: absolute; bottom: 0; right: 0; height: 30px; line-height: 30px; width: 30px; text-align: center; color: #fff; font-size: 12px; background: #000; background: rgba(0,0,0,0.8); }

/*------------------------------------------------------------------
[Navbar]
-------------------------------------------------------------------*/
.vcex-navbar a { display: block; float: left; }
.vcex-navbar a .fa { margin-right: 5px }
.vcex-navbar a:hover { text-decoration: none }
.vcex-navbar a.has-bg-hover:hover { border-color: inherit }

.vcex-navbar a.theme-button { margin: 0 5px 5px 0 }
.vcex-navbar a.theme-txt-link { display: inline-block; margin-right: 7px; }
.vcex-navbar a.theme-txt-link:hover { text-decoration: underline }

.vcex-navbar.align-right a { float: right; margin-left: 5px; margin-right: 0; }
.vcex-navbar.align-left a { float: left }
.vcex-navbar.align-center { text-align: center }
.vcex-navbar.align-center a { float: none; display: inline-block; }

.is-sticky .vcex-navbar { z-index: 99; }

.vcex-navbar-dark { background: #111; padding: 1.154em; }
.vcex-navbar-dark a { color: #fff; opacity: 0.7; transition:all 0.1s linear;-webkit-transition:all 0.1s linear; display: inline-block; margin-right: 0.769em; }
.vcex-navbar-dark a:last-child { margin-right: 0; }
.vcex-navbar-dark a.active,
.vcex-navbar-dark a:hover { text-decoration: none; opacity: 1; }

.vcex-navbar-sticky-wrapper.is-sticky .vcex-navbar { position: fixed; top: 0; }

/*------------------------------------------------------------------
[Heading]
-------------------------------------------------------------------*/
.vcex-heading-link-wrap { font-size: 1em; display: block; margin: 0; }
.vcex-heading { display: block; color: #000; font-size: 1.615em; margin: 0; }
a.vcex-heading:hover { text-decoration: none }

/* Heading > Bottom Bordeer */
.vcex-heading-bottom-border-w-color { padding-bottom: 0; border-bottom: 1px solid #e4e4e4; }
.vcex-heading-bottom-border-w-color .vcex-heading-inner { display: inline-block; padding-bottom: 6px; border-bottom: 2px solid transparent; position: relative; bottom: -1px; }

/* Heading > Graphical  */
.vcex-heading-graphical { padding: 10px 15px; border: 1px solid #e4e4e4; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; background: #f7f7f7; background: -webkit-linear-gradient(#f7f7f7,#eee); background: -moz-linear-gradient(#f7f7f7,#eee); background: -o-linear-gradient(#f7f7f7,#eee); background: linear-gradient(#f7f7f7,#eee); background-repeat: no-repeat; box-shadow: inset 0 1px 1px #fff; }

/*------------------------------------------------------------------
[Terms Grid]
-------------------------------------------------------------------*/
.vcex-terms-grid-entry-title span { display: block; }
.vcex-terms-grid-entry-image { margin-bottom: 15px; }
.vcex-terms-grid-entry-image.vcex-has-overlay { margin-bottom: 0; }
.vcex-terms-grid-entry-image.vcex-has-overlay a { display: block; width: 100%; position: relative; }
.vcex-terms-grid-entry-image.vcex-has-overlay img { display: block; width: 100%; }
.vcex-terms-grid-entry-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4); text-align: center; transition: all 0.25s ease-in-out; -moz-transition: all 0.25s ease-in-out; -webkit-transition: all 0.25s ease-in-out; }
.vcex-terms-grid-entry-overlay:hover { background: rgba(0,0,0,0.5); }
.vcex-terms-grid-entry-overlay-table { padding: 20px; display: table; width: 100%; height: 100%; }
.vcex-terms-grid-entry-overlay-cell { display: table-cell; vertical-align: middle; }
.vcex-terms-grid-entry-overlay .entry-title { color: #fff; font-size: 1.615em; }
.vcex-terms-grid-entry-count { font-size: 0.813em; }

/*------------------------------------------------------------------
[Acccent Color]
-------------------------------------------------------------------*/

/* Accent > #3b86b0 > Background */
.vcex-skillbar-bar,
.vcex-icon-box-five.vcex-icon-box-link-wrap:hover,
.vcex-icon-box-four.vcex-icon-box-link-wrap:hover,
.vcex-recent-news-date span.month,
.vcex-pricing.featured .vcex-pricing-header,
.vcex-testimonials-fullslider .sp-button:hover,
.vcex-testimonials-fullslider .sp-selected-button,
.vcex-social-links a:hover,
.vcex-divider-dots span { background-color: #3b86b0; color: #fff; }

/* Accent > #3b86b0 > Borders */
.vcex-heading-bottom-border-w-color .vcex-heading-inner { border-bottom-color: #3b86b0; }