/* 
Theme Name: Zafiro
Description: Super flexible and fully responsive WordPress Theme
Author: Adrian Acevedo
Version: 6.1
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: zd
*/

/* Reset */
pre { position: relative; background: #333 !important; white-space: pre; word-wrap: break-word; overflow: auto; margin: 20px 0; border: none; }
pre code { display: block; margin: 0; padding: 15px 16px 14px; border: none !important; border-radius: 0 !important; overflow-x: auto; font-size: 13px; line-height: 19px; color: #ddd !important; }
.btn.focus, 
.btn:focus { -webkit-box-shadow: none !important;  box-shadow: none !important; }
button,
select { text-transform: none; }
button,
[type="button"],
[type="reset"],
[type="submit"] { -webkit-appearance: button; }
input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
select { background: #ffffff; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { outline-offset: -2px; -webkit-appearance: none; }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; }
::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }

body { font-family: Arial, Helvetica, sans-serif; font-size: 16px; color: #747474; line-height: 1.5; overflow-x: hidden; }
.wrapper { position: relative; margin: 0 auto; z-index: 1; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { color: #747474; margin: 0 0 20px 0; line-height: 1.3; font-weight: 400; }
h1, .h1 { font-size: 40px; }
h2, .h2 { font-size: 32px; }
h3, .h3 { font-size: 28px; }
h4, .h4 { font-size: 24px; }
h5, .h5 { font-size: 20px; }
h6, .h6 { font-size: 16px; }

a { color: #404041; text-decoration: none; outline: none; }
a:hover { color: #666; text-decoration: none; }
p { margin: 0 0 20px 0; }
img { border-style: none; max-width: 100%; height: auto; }
hr { clear: both; display: block; border-top: 1px solid #e0dede; margin: 20px 0; }
ul, ol { margin-bottom: 20px; padding: 0; list-style: inside; }
ul ul, ul ol, ol ol, ol ul { margin: 15px 0 20px 20px; }
ul { list-style-type: disc; }
ul ul { list-style-type: circle; }
ol { list-style-type: decimal; }
dfn, em { font-style: italic; }
.sidebar-content { top: 0; }

/* Side Menu
================================================================================================= */
.side-header { display: none; position: fixed; width: 100%; height: auto; -webkit-overflow-scrolling: touch; box-sizing: border-box; z-index: 1020; }
.side-header .wrapper-logo .logo { max-width: 200px; height: auto; display: block; margin: 50px auto; }
.side-content-wrapper { position: relative; min-height: 100%; }	

a.fixed-btn-hamburger-style { background: rgba(0, 0, 0, 0.4); color: #ffffff; z-index: 1020; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; text-decoration: none; }
a.fixed-btn-hamburger-style:hover { background: rgba(0, 0, 0, 0.6); color: #ffffff; }

@media (min-width: 1200px) {
    .side-header { display: block; width: 300px; height: 100%; }
	.side-content-wrapper { margin-left: 300px; } 
}

ul.sf-menu li.has-children-arrow > a { padding-right: 30px !important; }
ul.sf-menu li.has-children-arrow > a:after { font-family: "Font Awesome 5 Free"; content: "\f107"; font-weight: 900; position: absolute; top: 50%; right: 8px; width: 18px; height: 18px; margin-top: -9px; text-align: center; line-height: 18px; }
ul.sf-menu li.has-children-arrow ul li.has-children-arrow > a:after { font-family: "Font Awesome 5 Free"; content: "\f105"; font-weight: 900; }

.menu-toggle-content { display: none; position: absolute; right: 0; padding: 1rem; width: 100%; background-color: #ffffff; border: 1px solid #dcdcdc; overflow: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; z-index: 1020; }
.menu-toggle-content a, 
.menu-toggle-content strong, 
.menu-toggle-content h1, 
.menu-toggle-content h2, 
.menu-toggle-content h3, 
.menu-toggle-content h4, 
.menu-toggle-content h5, 
.menu-toggle-content h6 { color: #333; }

ul.menu-v,
ul.menu-v ul { list-style: none; margin: 0; padding: 0; }
ul.menu-v li { position: relative; margin: 0; }
ul.menu-v li a { position: relative; display: block; padding: 10px 15px; border-bottom: 1px solid #e0e0e0; }
ul.menu-v > li:last-child a { border-bottom: none; }
ul.menu-v ul { display: none; }
ul.menu-v ul li a:before { content: '-'; color: #999; padding-right: 5px; }
ul.menu-v ul ul a,
ul.menu-v ul ul ul a { padding-left: 30px; }
ul.menu-v li.menu-item-has-children > a:after { font-size: 12px; position: absolute; top: 35%; right: 15px; font-family: 'Font Awesome 5 Free'; content: '\f078'; font-weight: 900; color: #999; }
ul.menu-v li.menu-item-has-children.open > a:after { position: absolute; top: 35%; right: 15px; font-family: 'Font Awesome 5 Free'; content: '\f077'; font-weight: 900; color: #999; }
ul.menu-v .show-sub-menu { display: block; }

a.menu-overlay-content-close { display: inline-block; width: 60px; height: 60px; text-align: center; line-height: 60px; }
a.menu-overlay-content-close:before { font-family: "Font Awesome 5 Free"; content: "\f00d"; font-weight: 900; font-size: 30px; }
.menu-overlay-content { color: #444; display: none; top: 0; left: 0; width: 100%; height: 100%; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.menu-overlay-content a { color: #444; }
.menu-overlay-content a:hover { color: #444; opacity: 0.8; }
.menu-overlay-content ul.menu-v { margin: 60px 0 30px 0; }
.menu-overlay-content ul.menu-v li a { position:  relative; display: inline-block; padding: 5px; font-size: 26px; border-bottom: none; }
.menu-overlay-content ul.menu-v li.menu-item-has-children > a { padding-right: 30px; }
.menu-overlay-content ul.menu-v li li a { font-size: 18px; }
.menu-overlay-content ul.menu-v ul li, 
.menu-overlay-content ul.menu-v ul ul li, 
.menu-overlay-content ul.menu-v ul ul ul li { background-color: transparent; }
.menu-overlay-content ul.menu-v li.menu-item-has-children > a:after { position: absolute; top: 14px; right: 0; font-size: 18px; font-family: 'Font Awesome 5 Free'; content: '\f107'; color: #ffffff; }
.menu-overlay-content ul.menu-v li li.menu-item-has-children > a:after { top: 10px; font-size: 15px; }

.menu-overlay-content-light { color: #ffffff; }
.menu-overlay-content-light a { color: #ffffff; }
.menu-overlay-content-light a:hover { color: #ffffff; opacity: 0.8; }

.menu-arrows li.has-children > a:after { font-family: "Font Awesome 5 Free"; content: "\f107"; font-weight: 900; font-size: 14px; margin-left: 5px; color: inherit; }
.menu-arrows li li.has-children > a:after { font-family: "Font Awesome 5 Free"; content: "\f105"; font-weight: 900; font-size: 14px; margin-left: 5px; color: inherit; }

@media (min-width: 576px) {
    .searchbar, 
	.menu-toggle-content { width: 420px; }
	.menu-overlay-content ul.menu-v li a { font-size: 30px; }
	.menu-overlay-content ul.menu-v li.menu-item-has-children > a:after { top: 18px; font-size: 18px; }
}

/* Layout
================================================================================================= */

/* Header Meta */
.header-fixed { position:  fixed; left: 0; top: 0; width: 100%; z-index: 1040; }
.header-wrapper .header-meta { position: relative; border-bottom: 1px solid #e1e1e1; }
.header-wrapper .header-meta i { font-size: 17px; }
.header-wrapper .header-meta .table-cell { vertical-align: middle; }
.header-wrapper .header-meta ul.custom-menu { list-style: none; margin: 0; padding: 0; }
.header-wrapper .header-meta ul.custom-menu li { position: relative; float: left; margin: 0; border-left: 1px solid #e1e1e1; }
.header-wrapper .header-meta ul.custom-menu li:first-child { border-left: none; margin: 0; }
.header-wrapper .header-meta ul.custom-menu li a { padding-left: 10px; padding-right: 10px; }

/* Header Main Global */
.header-wrapper .header-main, 
.header-wrapper .header-main .header-main-content { position: relative; }
.header-wrapper .header-main .header-main-content .header-main-content-row { padding: 10px 0; }
.header-wrapper .header-main .wrapper-logo .site-name { display: inline-block; font-size: 18px; max-width: 200px; font-weight: 600; letter-spacing: 1px; }
.header-wrapper .header-main .wrapper-logo .site-description { display: inline-block; font-size: 11px; max-width: 200px; }
.header-wrapper .header-main .wrapper-logo .standard-logo { max-width: 180px; max-height: 35px; }

.menu-main .menu-icon { padding: 0 10px; }
.menu-main .menu-icon a i { display: inline-block; font-size: 17px; }

.wrapper-badge-notification { position: relative; display: inline-block; font-size: 17px; }
.badge-notification { background: #f93154; color: #fff; display: block; font-size: 9px; height: 16px; line-height: 16px; position: absolute; right: -8px; text-align: center; top: -6px; width: 18px; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%; }

.menu-hamburger { color: #444; }

/* Header Main Sticky */
.header-wrapper.header-sticky { position: fixed !important; left: 0; top: 0; right: 0; background-color: rgba( 255, 255, 255, 1.0 ); box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.1 ); -webkit-animation-duration: .5s; animation-duration: .5s; -webkit-transform: translateZ(0); z-index: 1020; }
.header-wrapper.header-sticky .header-meta { display: none !important; }
.header-wrapper.header-sticky .header-main .header-main-content .header-main-content-row { padding-top: 10px; padding-bottom: 10px; }
.header-wrapper.header-sticky .header-main .wrapper-logo .standard-logo, 
.header-wrapper.header-sticky .header-main .wrapper-logo .sticky-logo { max-height: 35px; }
.header-wrapper.header-sticky .header-main .wrapper-logo .site-name { font-size: 18px; }
.header-wrapper.header-sticky .header-main .wrapper-logo .site-description { font-size: 11px; }

.page-title-wrapper { position: relative; background-color: #f6f6f6; color: #333; border-top: 1px solid #e1e1e1; border-bottom: 1px solid #e1e1e1; padding: 20px 0; }
.page-title-wrapper a { color: #333; }
.page-title-wrapper .title-bar h1.entry-title { margin: 0; color: #333; font-size: 18px; }
.page-title-wrapper .nav-breadcrumb { display: inline-block; position: relative; z-index: 2; }
.page-title-wrapper .breadcrumb { padding: 0; margin-bottom: 0; background-color: transparent; border-radius: 0; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; padding-bottom: 1rem; margin-top: -1px; overflow-x: auto; text-align: center; white-space: nowrap; -webkit-overflow-scrolling: touch; }
.page-title-wrapper .breadcrumb li.breadcrumb-item { margin: 0; font-size: 13px; }

#content { position: relative; }

.footer-wrapper .footer-widget-area { position: relative; background-color: #363839; padding: 40px 0; }
.footer-wrapper .footer-copyright-area { position: relative; background-color: #282a2b; color: #888485; border-top: 1px solid #4b4c4d; }
.footer-wrapper .footer-copyright-area > a { color: #bfbfbf; }
.footer-wrapper .footer-copyright-area > a:hover { color: #ffffff; }
.footer-wrapper .footer-copyright-area p:last-child { margin: 0; }
.footer-wrapper .copyright-notice ul.custom-menu { list-style: none; margin: 0; display: inline-block; }
.footer-wrapper .copyright-notice ul.custom-menu li { float: left; margin: 0; }
.footer-wrapper .copyright-notice ul.custom-menu li a { padding: 12px 10px; }

@media (min-width: 1200px) {
	.header-wrapper .header-main .header-main-content .header-main-content-row { padding-top: 25px; padding-bottom: 25px; }
	.header-wrapper .header-main .wrapper-logo .sticky-logo { max-width: 300px; max-height: 45px; }
	.header-wrapper .header-main .wrapper-logo .site-name { font-size: 26px; max-width: 300px; }
    .header-wrapper .header-main .wrapper-logo .site-description { font-size: 13px; max-width: 500px; }
	.page-title-wrapper { padding: 25px 0; }
	.footer-wrapper .footer-widget-area { padding: 60px 0; }
	.footer-wrapper .social-links-footer { text-align: right; }
	a.menu-hamburger i { font-size: 24px; }
}

/* Back to Top
================================================================================================= */
.back-to-top { position: fixed; visibility: hidden; opacity: 0; left: 20px; bottom: 40px; z-index: 1000; background-color: rgba(0, 0, 0, 0.6); -webkit-border-radius: 6px;  -moz-border-radius: 6px; border-radius: 6px; width: 40px; height: 40px; border-radius: 4px; transition: all 0.4s; }
.back-to-top a { color: #fff !important; }
.back-to-top i { font-size: 18px; color: #fff; line-height: 0; }
.back-to-top:hover { background-color: rgba(0, 0, 0, 1.0); color: #fff; }
.back-to-top.active { visibility: visible; opacity: 1; }

/* Widgets
================================================================================================= */
.widget_archive label { display: none; }
.widget_archive select { width: 100%; color: #747474; background-color: #ffffff; border: 1px solid #D2D2D2;  padding: 6px; }
.searchform .search-table { display: table; width: 100%; }
.searchform .search-field { display: table-cell; width: 100%; vertical-align: top; }
.searchform .search-button { display: table-cell; width: 100%; vertical-align: top; }
.searchform .search-table .search-field input { color: #747474; background-color: #ffffff; border-left: 1px solid #dadada; border-top: 1px solid #dadada; border-right: none !important; border-bottom: 1px solid #dadada; padding: 5px 10px; width: 100%; box-sizing: border-box; margin: 0; }
.searchform .search-table .search-button input[type="submit"] { font-family: 'Font Awesome 5 Free'; font-weight: 900; border: none; font-size: 16px; background: #dadada; width: 40px; height: 33px; margin: 0; padding: 0; text-indent: 0; cursor: pointer; text-shadow: none; border: none; border-radius: 0; -webkit-font-smoothing: antialiased; transition: all .2s; }
.searchform .search-table .search-button input[type="submit"]:hover { opacity: 0.8; }

.widget_tag_cloud .tagcloud { margin-top: 20px; }
.widget_tag_cloud .tagcloud a { margin-bottom: 4px; padding: 5px; border: 1px solid #e1e1e1; display: inline-block; }

.tweet-item { position: relative; padding-left: 35px; }
.tweet-item:before { font-family: 'Font Awesome 5 Brands'; content: '\f099'; font-weight: 900; color: #d8d8d8; font-size: 24px; position: absolute; top: 5px; left: 0; }
.tweet-item .tweet-item-content a { text-decoration: underline; }
.tweet-item-time { display: block; margin-bottom: 20px; font-size: 12px; }

.screen-reader-text { display: none; }
.widget_categories select.postform { border: 1px solid #e1e1e1; padding: 8px 15px; width: 100% }

#wp-calendar { width: 100%; }
#wp-calendar caption { text-align: right; font-size: 14px; font-weight:700; margin-top: 10px; margin-bottom: 20px; color: #333; }
#wp-calendar thead { font-size: 12px; font-weight: 700; }
#wp-calendar thead th { padding-bottom: 10px; }
#wp-calendar tbody { color: #666; }
#wp-calendar tbody td { background: #f5f5f5; border: 1px solid #ffffff; text-align: center; padding:8px; }
#wp-calendar tbody td:hover { background: #EDEDED; }
#wp-calendar tbody .pad { background: none; }
#wp-calendar tfoot #next { font-size: 10px; text-transform: uppercase; text-align: right; }
#wp-calendar tfoot #prev { font-size: 10px; text-transform: uppercase; padding-top: 10px; }
#wp-calendar #today { background: #333; color: #ffffff; }

/* Search Page
================================================================================================= */
.post-search { padding: 5px 0; margin-bottom: 5px; border-bottom: 1px solid #E4E4E4; }
.post-search h3 { margin-bottom: 5px; font-size: 16px; }

/* Author
================================================================================================= */
.author-card { text-align:center; margin-bottom:30px; padding-bottom: 30px; border-bottom: 1px solid #e1e1e1; }
.author-card .author-avatar { margin-bottom: 20px; }
.author-card .author-avatar img { border-radius: 50%; border: 1px solid #e1e1e1; }
.author-card .author-info { max-width: 550px; margin: 0 auto; }
.author-card .author-info .social-networks { margin-top: 20px; }

/* Password Page
================================================================================================= */
.post-password-form { width: 100%; background-color: #f5f5f5; border: 1px solid #e1e1e1; padding: 20px 15px 0 15px; text-align: center; }
.post-password-form input[type=password] { border: 1px solid #CCC; padding: 5px; }
.post-password-form input[type=submit] { border: 1px solid #333; padding: 5px 15px; background-color: #333; color: #ffffff; cursor: pointer; }

/* Error 404
================================================================================================= */
#error-404 { text-align: center; }
#error-404 h2 { font-size: 100px; line-height: 100px; }
#error-404 h4 { font-size: 18px; }
#error-404 .check { display: block; }

@media (min-width: 992px) {
	#error-404 { text-align: left; }
	#error-404 h2 { font-size: 180px; line-height: 150px; }
    #error-404 h4 { font-size: 22px; }
	#error-404 .check { display: inline-block; }
}

/* WordPress Core
================================================================================================= */
img.alignright { float: right; margin: 5px 0 20px 20px; }
img.alignnone { margin: 0; }
img.alignleft { float: left; margin: 5px 20px 20px 0; }
img.aligncenter { display: block; margin: 5px auto; }
.wp-caption { border: 1px solid #e1e1e1; max-width: 96%; padding: 5px 3px 10px; text-align: center; }
.wp-caption.alignnone { margin: 5px 20px 20px 0; }
.wp-caption.alignleft { margin: 5px 20px 20px 0; }
.wp-caption.alignright { margin: 5px 0 20px 20px; }
.wp-caption img { border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto; }
.wp-caption p.wp-caption-text { font-size: 11px; margin: 0; padding: 0 4px 5px; }