/*
	Theme Name: Retal
	Theme URI: https://www.flatlayers.com/themes/retal
	Author: FlatLayers
    Author URI: https://www.flatlayers.com
	Description: Stories WordPress Magazine/Blog Theme
	Version: 1.0
    Tested up to: 6.1
    Requires PHP: 5.6
    License: GNU/GPL Version 2 or later. 
    License URI: http://www.gnu.org/licenses/gpl.html 
    Tags: custom-background, custom-colors, custom-header, custom-menu, featured-images, post-formats, theme-options
    Text Domain: retal
*/

/*-------------------------------------------------------------------------
[Table of contents]

    1. Browser Reset + Main Styels + Gutengerg
    2. Headings
    3. Main Containers    
    4. Header + Drawer
    5. Featured Post
    6. Loop Styles
    7. Widgets
    8. Ajax Pagination & Comments toggle & Pagination & Navigation
    9. Single Post & Page Style
    10. Comments
    11. Footer
    12. Archive Pages Style
    13. Media Queries
-------------------------------------------------------------------------*/

/*-------------------------------------------------------------------------*/
/*	1. Browser Reset + Main Styels + Gutengerg
/*-------------------------------------------------------------------------*/
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
/* Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section { display: block; }

:focus { outline: 0; }
input[type=submit] { -webkit-appearance: none; }

html,
body {
    width: 100%;
    height: 100%;
}
html {
    font-size: var(--fl-body-font-size);
    scroll-behavior: smooth;
} 
body {
    position: relative;
    overflow-x: hidden;
    background-color: var(--fl-body-background);
    color: var(--fl-body-color);
    font-family: var(--fl-body-font);
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.85;
    background-repeat: repeat-x;
    background-size: cover;
    background-attachment: fixed;
    background-position: top center;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

::-moz-selection {
    background-color: var(--fl-body-color);
    color: var(--fl-body-background);
}
::selection {
    background-color: var(--fl-body-color);
    color: var(--fl-body-background);
}

ol, ul { list-style: none; }
input[type=text]::-ms-clear { display: none; }
sup {
    font-size: .85rem;
    vertical-align: super;
}
sub {
    font-size: .85rem;
    vertical-align: sub;
}
strong { font-weight: 700; }
em { font-style: italic; }
p:empty { display: none; }
hr {
    border: none;
    border-top: 2px dotted;
    opacity: 0.2;
    height: 2px;
    margin: 0 auto;
    width: 100%;
}

a {
    text-decoration: none;
    color: var(--fl-accent-color);
    transition: color .25s ease, background .25s ease;
}

/* BlockQuotes */
blockquote,
q {
    position: relative;
    display: block;
    margin-top: 48px;
    line-height: 1.6;
    margin-bottom: 1.5em;
    padding: 32px 0 16px 48px;
    border: none;
    box-shadow: none;
    border-bottom: 2px solid rgba(128,128,128,0.1);
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    color: var(--fl-headings-color);
}

blockquote:before,
q:before {
    overflow: hidden;
    display: block;
    font-family: bootstrap-icons;
    content: "\f6b0";
    position: absolute;
    left: 0;
    top: -24px;
    background: var(--fl-accent-color);
    border-radius: 50%;
    color: #fff;
    width: 48px;
    font-size: 1.44rem;
    line-height: 48px;
    text-align: center;
    z-index: 1;
}

blockquote:after,
q:after {
    position: absolute;
    display: block;
    content: "";
    top: -1px;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--fl-accent-color);
    z-index: 0;
}

blockquote p,
q {
    margin-bottom: 0.5em;    
    font-size: 1.44rem;
}

blockquote cite, q cite, pre cite {
    position: relative;
    display: block;
    font-size: 1rem;
    opacity: 0.75;
    font-family: var(--fl-body-font);
}

/* Tables */
table, dl {
    margin-bottom: 1.5em;
    width: 100%;    
    border: 1px solid rgba(128,128,128,0.1);
}
table thead, dt {
    font-weight: bold;
    background: rgba(128,128,128,0.1);
}
table th { font-weight: 700; }
table th, table td, dt, dd {
    margin: 0;
    padding: 8px;
    border: 1px solid rgba(128,128,128,0.1);
}

/* Address, Pre, Code ...etc */
pre, address, code {
    display: block;
    position: relative;
    padding: 16px 16px 16px 48px;
    margin-bottom: 1.5em;
    overflow: auto;
    max-width: 100%;
    white-space: nowrap;
    background: rgba(128,128,128,0.1);
}
address:before,
code:before {
    display: block;
    overflow: hidden;
    font-family: bootstrap-icons;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 32px;
    line-height: 60px;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--fl-accent-color);
    border-right: 2px solid var(--fl-body-background);
    z-index: 0;
}
address:before{ content: "\f3e7"; }
code:before{ content: "\f2c8"; }
pre { padding: 16px; }

fieldset {
    margin: 16px 0;
    padding: 16px;
    border: 2px solid rgba(128,128,128,0.1);
}

legend {
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0 16px;
}

/* General and Response Inputs Style */
input,
textarea,
select { font-family: var(--fl-body-font); }

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="search"],
textarea,
select {
    border: none;
    background-color: var(--fl-input-background);
    color: var(--fl-body-color);
    border-radius: 4px;
    padding: 8px;
    width: 100%;
    margin: 0;
    outline: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

/* radio and checkboxes */
input[type="radio"],
input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle !important;
    background-repeat: no-repeat;
    background-position: center;
    background-color: var(--fl-input-background);
    color: var(--fl-body-color);
    border: 2px solid rgba(128,128,128,0.2);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
}
input[type="radio"] { border-radius: 50%; }

input[type="checkbox"]:checked,
input[type="radio"]:checked {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
    background-color: var(--fl-accent-color);
    border-color: var(--fl-accent-color);
}
input[type="radio"]:checked { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); }

.form-allowed-tags { display:block; }

input[type="submit"],
button,
.button {
    padding: 12px 20px;
    font-size: 0.875rem;
    color: #ffffff;
    border-radius: 4px;
    box-shadow: none;
    outline: none;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    background-color: var(--fl-button-background);
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
input[type="submit"]:hover,
button:hover,
.button:hover {
    background-color: var(--fl-accent-color);
    color: #ffffff;
}

/* Gutenberg Blocks -> Images */
.wp-block-image { margin: 0 0 1.5em; }
.wp-block-image .alignleft { margin: 0.5em 1.5em 0.5em 0; }
.wp-block-image .alignright { margin: 0.5em 0 0.5em 1.5em; }

/* Gutenberg Blocks -> Buttons */
.wp-block-button { margin-bottom: 1.5em; }
.wp-block-button__link{
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    background-color: var(--fl-button-background);
    color: #ffffff;
    font-size: 0.875rem;
}
.wp-block-file__button {
    padding: 4px 8px;
    background-color: var(--fl-button-background);
    color: #ffffff;
}

.wp-block-button__link:hover,
.wp-block-file__button:hover { background-color: var(--fl-accent-color); }

.is-style-outline>.wp-block-button__link:not(.has-text-color),
.wp-block-button__link.is-style-outline:not(.has-text-color) { color: var(--fl-button-background); }

.is-style-outline>.wp-block-button__link:not(.has-text-color):hover,
.wp-block-button__link.is-style-outline:not(.has-text-color):hover {
    color: var(--fl-accent-color);
    background-color: transparent;
}

.wp-block-button.is-style-squared .wp-block-button__link { border-radius: 0; }

/* Gutenberg Blocks -> Cover */
.wp-block-cover,
.wp-block-cover-image { margin-bottom: 1.5em; }

.wp-block-cover-image h1:not(.has-text-color),
.wp-block-cover-image h2:not(.has-text-color),
.wp-block-cover-image h3:not(.has-text-color),
.wp-block-cover-image h4:not(.has-text-color),
.wp-block-cover-image h5:not(.has-text-color),
.wp-block-cover-image h6:not(.has-text-color),
.wp-block-cover-image p:not(.has-text-color),
.wp-block-cover h1:not(.has-text-color),
.wp-block-cover h2:not(.has-text-color),
.wp-block-cover h3:not(.has-text-color),
.wp-block-cover h4:not(.has-text-color),
.wp-block-cover h5:not(.has-text-color),
.wp-block-cover h6:not(.has-text-color),
.wp-block-cover p:not(.has-text-color) { color: #ffffff; }


/* Gutenberg Blocks -> Gallery */
.fl-post-content .wp-block-gallery { margin-bottom: 1.5em; }
.fl-post-content ul.blocks-gallery-grid {
    padding: 0;
    margin: 0;
}
.wp-block-gallery figcaption {
    text-align: center;
    margin-top: 0 !important;
}
.wp-block-gallery figure figcaption { opacity: 1; }

/* Gutenberg Blocks -> Columns */
.wp-block-columns {
    margin-top: 2.5em;
    margin-bottom: 1.5em;
}

/* Gutenberg Blocks -> Blockquotes */
.wp-block-quote.is-large:not(.is-style-plain),
.wp-block-quote.is-style-large:not(.is-style-plain) {
    margin-bottom: 1.5em;
    padding: 32px 0 16px 48px;
}

.wp-block-quote.is-large:not(.is-style-plain) p,
.wp-block-quote.is-style-large:not(.is-style-plain) p { font-size: 1.73rem; }

.wp-block-quote.has-text-align-right { padding: 32px 48px 16px 0 !important; }
.wp-block-quote.has-text-align-right:before {
    left: auto;
    right: 0;
}

.wp-block-quote.has-text-align-left { padding: 32px 0 16px 48px !important; }
.wp-block-quote.has-text-align-left:before {
    left: 0;
    right: auto;
}

.wp-block-quote.has-text-align-center { padding: 32px 0 16px 0 !important; }
.wp-block-quote.has-text-align-center:before {
    left: 50%;
    right: auto;
    margin-left: -24px;
}

.wp-block-quote.is-large:not(.is-style-plain) cite,
.wp-block-quote.is-large:not(.is-style-plain) footer,
.wp-block-quote.is-style-large:not(.is-style-plain) cite,
.wp-block-quote.is-style-large:not(.is-style-plain) footer { text-align: inherit; }

.wp-block-column .wp-block-quote { margin-top: 0; }

.wp-block-pullquote {
    position: relative;
    overflow: hidden;
    padding: 3em 1.5em;
    background: rgba(128,128,128,0.1);
    color: var(--fl-headings-color);
    border-radius: 4px;
    margin: 0 0 1.5em 0;
}
.wp-block-pullquote blockquote {
    padding: 0 !important;
    margin: 0 auto !important;
    z-index: 1;
    border-bottom: none;
}
.wp-block-pullquote blockquote p { font-size: inherit; }
.wp-block-pullquote blockquote:before,
.wp-block-pullquote blockquote:after,
.wp-block-pullquote cite:before { display: none; }
.wp-block-pullquote:before {
    position: absolute;
    display: block;
    font-family: bootstrap-icons;
    content: "\f6b0";
    z-index: 0;
    line-height: 1;
    left: -88px;
    font-style: italic;
    font-weight: 700;
    bottom: -104px;
    font-size: 21rem;
    opacity: 0.1;
    user-select: none;
}
.wp-block-pullquote cite { padding: 0; }
.wp-block-pullquote.is-style-solid-color blockquote { max-width: 100%; }

/* Gutenberg Blocks -> embeds */
.wp-block-embed { margin: 0 0 1.5em; }

/* Gutenberg Blocks -> Widgets */
.fl-post-content .wp-block-archives,
.fl-post-content .wp-block-latest-comments,
.fl-post-content .wp-block-latest-posts,
.fl-post-content .wp-block-categories,
.fl-post-content .wp-block-rss {
    margin-left: 0;
    list-style: none;
}

.fl-post-content .wp-block-archives .post-count:before {
    margin-left: 8px;
    content: "(";
}
.fl-post-content .wp-block-archives .post-count:after { content: ")"; }

.fl-post-content .wp-block-archives a,
.fl-post-content .wp-block-latest-comments a,
.fl-post-content .wp-block-latest-posts a,
.fl-post-content .wp-block-categories a,
.fl-post-content .wp-block-rss a { color: var(--fl-body-color); }

.fl-post-content .wp-block-archives a:hover,
.fl-post-content .wp-block-latest-comments a:hover,
.fl-post-content .wp-block-latest-posts a:hover,
.fl-post-content .wp-block-categories a:hover,
.fl-post-content .wp-block-rss a:hover { color: var(--fl-accent-color); }

.fl-post-content .wp-block-search,
.fl-post-content .wp-block-calendar,
.fl-post-content .wp-block-categories,
.fl-post-content .wp-block-archives-dropdown { margin-bottom: 1.5em; }

.wp-block-search__inside-wrapper {
    overflow: hidden;
}
.wp-block-search .wp-block-search__button {
    margin-left: 0;
    background-color: var(--fl-button-background);
    color: #ffffff;
    border: none;
    padding: 8px 16px;
}
.wp-block-search .wp-block-search__button:hover { opacity: 0.9; }

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button { padding: 8px; }
.wp-block-search .wp-block-search__button svg { fill: #ffffff; }

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper { border: 1px solid rgba(128,128,128,0.1); }

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date,
.wp-block-latest-comments__comment-date { opacity: 0.7; }

.wp-block-calendar table { border-collapse: inherit; }

.wp-block-calendar table th { background: rgba(128,128,128,0.1); }

.wp-block-calendar tbody td,
.wp-block-calendar th { border: 1px solid rgba(128,128,128,0.1); }

.wp-block-loginout {
    padding: 16px;
    border: 1px solid rgba(128,128,128,0.1);
}

.wp-block-loginout p { margin-bottom: 8px; }

.wp-block-social-links,
.wp-block-social-links.has-normal-icon-size { justify-content: center; }
.wp-block-social-links .wp-social-link.wp-social-link.wp-social-link { padding: 0; }

.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg { fill: #ffffff; }

.wp-block-latest-posts li a { font-weight: var(--fl-headings-font-weight); }

.wp-block-latest-posts__post-excerpt {
    margin-top: 8px;
    margin-bottom: 0;
    font-size: .9rem;
}

.wp-block-latest-posts__featured-image { margin-bottom: 8px; }
.wp-block-latest-posts__featured-image img {
    line-height: 0;
    border-radius: 50%;
    border: 2px solid rgba(128,128,128,0.1);
}

.wp-block-table td, .wp-block-table th { border-color: rgba(128,128,128,0.1); }

/* Gutenberg Blocks -> Layout Elements */
.wp-block-media-text { margin-bottom: 1.5em; }
pre code {
    padding: 0 0 0 40px;
    margin-bottom: 0;
}
pre code:before {
    left: 0;
    top: 0;
}

.wp-block-table.is-style-stripes { margin-bottom: 1.5em; }

.wp-block-separator.is-style-dots {
    border-top: none;
    opacity: 0.5;
}
.wp-block-separator.is-style-dots:before {
    font-size: 3em;
    letter-spacing: 24px;
    padding-left: 24px;
}

/* Captions */
.wp-block-image figcaption,
.wp-block-gallery figcaption,
.wp-block-embed figcaption,
.wp-caption .wp-caption-text,
.entry-caption,
.gallery-caption {
    position: relative;
    font-size: 0.875em;
    opacity: 0.75;
}

.wp-caption .wp-caption-text {
    margin-bottom: 1.5em;
    margin-top: 0.5em;
}

.aligncenter figcaption,
.aligncenter .wp-caption-text { text-align: center; }

/* Alignment */
.alignleft {
    float: left;
    margin: 0.5em 1.5em 0.5em 0;
}

.alignright {
    float: right;
    margin: 0.5em 0 0.5em 1.5em;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}


/* Images */
img,
.wp-caption {
    height: auto;
    max-width: 100%;
}
.wp-post-image {
    display: block;
    margin: 0 auto;
}

/* Embeds and iframes */
embed,
iframe,
object,
video { max-width: 100%; }

/* Post Protected */
form.post-password-form p {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-end;
}
form.post-password-form label { flex: 1; }
form.post-password-form input[type=password] {
    padding: 0 16px;
    line-height: 48px;
}
form.post-password-form input[type=submit] {
    line-height: 48px;
    padding: 0 32px;
    text-align: center;
}

.screen-reader-text {
    clip: rect(1px,1px,1px,1px);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
    word-wrap: normal;
}

/*-------------------------------------------------------------------------*/
/*  2. Headings
/*-------------------------------------------------------------------------*/
h1 {font-size: 2rem;}
h2 {font-size: 1.73rem;}
h3 {font-size: 1.44rem;}
h4 {font-size: 1.2rem;}
h5 {font-size: 1.1rem;}
h6 {font-size: 1rem;}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.35;
    margin-bottom: 1.38rem;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);    
    word-wrap: break-word;
    word-break: break-word;
    color: var(--fl-headings-color);
}

p { margin-bottom: 2em; }
small { font-size: 0.75rem; }

/*-------------------------------------------------------------------------*/
/*  3. Main Containers / .fl-container
/*-------------------------------------------------------------------------*/
.fl-container {
    position: relative;
    display: block;
    width: 100%;
	max-width: 1600px;
    padding: 8px 32px;	
    margin: 0 auto;
}

#fl-content-wrapper {
    display: flex;
    flex-direction: column;
    min-height: calc(100% - 50px);
}

#fl-content {
    flex: 1;
    margin-top: 16px;
}

/*-------------------------------------------------------------------------*/
/*  4. Header + Drawer
/*-------------------------------------------------------------------------*/
#fl-header {
    position: fixed;    
    z-index: 900;
    width: 100%;
    background-color: var(--fl-header-background);
    color: var(--fl-header-color);
    font-family: var(--fl-headings-font);
    border-bottom: 2px solid rgba(128,128,128,0.1);
}
#fl-header .fl-container {
    display: flex;
    flex-flow: row;
    align-items: center;
    justify-content: space-between; 
}

#fl-header a { color: var(--fl-header-color); }

.fl-header-replace { height: 48px; }

/* Drawer Icon */
.fl-drawer-icon {
    display: inline-block;
    height: 32px;
    padding: 0 8px;
    border-radius: 4px;
    cursor: pointer;
    vertical-align: top;
}
.fl-drawer-icon .icon {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 24px;
    height: 32px;
    margin-top: 0;
    padding: 0;
    background-color: transparent !important;
    overflow: hidden;
    font-size: 0;
}
.fl-drawer-icon .icon:hover { background-color: transparent !important; }
.fl-drawer-icon .icon span {
    background-color: var(--fl-header-color);
    display: block;
    height: 2px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.fl-drawer-icon .icon span:before,
.fl-drawer-icon .icon span:after {
    transition-duration: .2s, .2s;
    transition-delay: .2s, 0s;
    content: '';
    background-color: var(--fl-header-color);
    display: block;
    height: 2px;
    position: absolute;
    left: 0;
    right: 0;
}
.fl-drawer-icon .icon span:before {
    transition-property: top, transform;
    top: -8px;
}
.fl-drawer-icon .icon span:after {
    transition-property: bottom, transform;
    bottom: -8px;
}
.fl-drawer-icon.active .icon span,
.fl-drawer-icon.active:hover .icon span { background-color: transparent; }
.fl-drawer-icon.active .icon span:before {
    top: 0;
    transform: rotate(45deg);
}
.fl-drawer-icon.active .icon span:after {
    bottom: 0;
    transform: rotate(-45deg);
}
.fl-drawer-icon:hover { background-color: rgba(128,128,128,0.1); }

/* Logo */
#fl-logo {}
#fl-logo h1,
#fl-logo p {
    font-size: 2rem;
    font-weight: var(--fl-headings-font-weight);
    padding: 0;
    margin: 0;
    line-height: 1;
}

#fl-logo a {
    margin: 0;
    display: inline-block;
}
#fl-logo img {
    max-height: 32px;
    width: auto;
    vertical-align: middle;
}

#fl-logo .dark-logo { display: none; }

html[data-theme="dark"] #fl-logo .light-logo { display: none; }
html[data-theme="dark"] #fl-logo .dark-logo { display: inline-block; }


#fl-header .header-menu {
    text-align: right;
    font-size: 0;
}
/* Top Menu */
#fl-topmenu {
    display: inline-block;
}
#fl-topmenu li {
    position: relative;
    display: inline-block;
    border-radius: 4px;
}

#fl-topmenu li a {
    position: relative;
    display: block;
    font-size: 0.875rem;
    padding: 0 8px;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
}
#fl-topmenu li.menu-item-has-children a { padding: 0 24px 0 8px; }

#fl-topmenu li:hover { background-color: rgba(128,128,128,0.1); }

#fl-topmenu li.menu-item-has-children .arrow {
    position: absolute;
    font-size: 0.75rem;
    bottom: 0;
    right: 8px;
    cursor: pointer;
}

#fl-topmenu li .sub-menu {
    display: block;
    position: absolute;
    background-color: var(--fl-submenu-background);
    text-align: left;
    text-transform: none;
    min-width: 200px;
    z-index: 800;
    left: 0;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    border-radius: 4px;
    padding: 8px;
    box-shadow: 0 2px 6px rgba(128,128,128,0.25);
}
#fl-topmenu li .sub-menu li {
    display: block;
    position: relative;
    color: var(--fl-submenu-color);
    opacity: 0;
    transform: translateY(-16px);
    transition: opacity 0.35s ease, transform 0.35s ease;
}
#fl-topmenu li .sub-menu li a {
    position: relative;
    display: block;
    margin: 0;
    color: var(--fl-submenu-color);
    font-size: 0.75rem;
    padding: 4px 8px;
    border-radius: 4px;
    white-space: nowrap;
}
#fl-topmenu li .sub-menu li.menu-item-has-children .arrow {
    transform: rotate(-90deg);
    padding: 4px 0;
}
#fl-topmenu li .sub-menu li:hover,
#fl-topmenu li .sub-menu li:hover a { color: var(--fl-submenu-color); }

#fl-topmenu li:hover > .sub-menu {
    visibility: visible;
    max-height: 800px;
    opacity: 1;
    transition: all 0.35s ease;
}
#fl-topmenu li:hover > .sub-menu > li {
    opacity: 1;
    transform: translateY(0);
}

#fl-topmenu li .sub-menu li .sub-menu {
    left: 100%;
    margin: 0;
    top: 0;
    z-index: 800;
}

#fl-topmenu li.current-menu-item,
#fl-topmenu li .sub-menu li.current-menu-item {
    background-color: var(--fl-accent-color);
    color: #ffffff;
}

#fl-topmenu li.current-menu-item > a,
#fl-topmenu li .sub-menu li.current-menu-item > a { color: #ffffff; }

/* Social Icons */
.fl-social-icons {
    position: relative;
    display: inline-block;
}
.fl-social-icons a {
    display: inline-block;
    font-size: 0.875rem;
    width: 28px;
    border-radius: 4px;
    line-height: 32px;
    text-align: center;
}
.fl-social-icons a span {
    font-size: 0;
    line-height: 0;
}

.fl-social-icons a:hover { background: rgba(128,128,128,0.1); }

/* Search Icon */
#fl-topsearch {
    display: inline-block;
    font-size: 1rem;
    line-height: 32px;
    height: 32px;
    width: 32px;
    border-radius: 4px;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
#fl-topsearch .bi-x-lg { display: none; }

#fl-topsearch:hover { background-color: rgba(128,128,128,0.1); }

/* Overlay */
#fl-overlay { 
    display: none;   
    position: fixed;
    background-color: rgba(255,255,255,0.75);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 700;
}

html[data-theme="dark"] #fl-overlay { background-color: rgba(0,0,0,0.75); }

#fl-overlay .fl-container {
    display: flex;
    height: 100%;
    align-items: center;
}
.overlay-search {
    display: none;
    max-width: 720px;
    width: 100%;
    margin: 0 auto;
}
.overlay-search form {
    position: relative;
    display: block;
    border-radius: 32px;
    overflow: hidden;
    line-height: 0;    
    color: var(--fl-headings-color);
}
.overlay-search form:before {
    position: absolute;
    font-family: bootstrap-icons;
    content: "\f52a";
    opacity: 0.5;
    left: 0;
    top: 0;
    font-size: 1.5rem;
    line-height: 64px;
    width: 64px;
    text-align: center;
}
.overlay-search .searchform input[type="search"] {
    border: none;
    font-size: 1.2rem;
    line-height: 64px;
    height: 64px;
    margin: 0;
    padding: 0 160px 0 64px;
    background-color: var(--fl-input-background);
    border: none;
}
.overlay-search .searchform button {
    position: absolute;
    font-size: 1rem;
    right: 0;
    top: 0;
    height: 64px;
    margin: 0;
    border-radius: 0;
    padding: 0 40px;
}
.overlay-search .searchform button:hover { background-color: var(--fl-accent-color); }

.overlay-search .fl-stories {
    display: block;
    text-align: center;
    color: var(--fl-headings-color);
    margin: 32px 0 4px 0;
    padding: 0;
}
.overlay-search .fl-meta {
    display: block;
    position: relative;
    text-align: center;
}
.overlay-search .fl-meta .meta.category {
    font-size: 0.875rem;
    margin: 0;
}
.overlay-search .fl-meta .meta.category a {
    margin: 4px;
    border-radius: 4px;
    padding: 2px 8px;
}

/* Cart Icon && My Account -> WooCommerce */
#fl-header .cart-contents,
#fl-header .my-account,
#fl-header .my-likes {
    position: relative;
    display: inline-block;
    width: 32px;  
    line-height: 32px;
    border-radius: 4px;
    text-align: center;
    font-size: 1rem;
    vertical-align: top;
}
#fl-header .my-account { font-size: 1.3rem; }
#fl-header .cart-contents:hover,
#fl-header .my-account:hover,
#fl-header .my-likes:hover { background-color: rgba(128,128,128,0.1); }

#fl-header .my-likes:hover i:before,
body.page-template-template-likes #fl-header .my-likes i:before { content: "\f415"; }

body.page-template-template-likes #fl-header .my-likes { color: var(--fl-accent-color); }

#fl-header .cart-contents .cart-count {
    position: absolute;
    display: block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    z-index: 1;
    bottom: 0;
    right: 0;
    border-radius: 8px;
    font-size: 0.5rem;
    font-weight: var(--fl-headings-font-weight);
    text-align: center;
    background-color: var(--fl-accent-color);
    color: #ffffff;
}

/* Theme Switch */
.fl-theme-switch {
    display: inline-block;
    line-height: 32px;
    height: 32px;
    width: 32px;
    border-radius: 4px;
    text-align: center;
    font-size: 1rem;
    cursor: pointer;    
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.fl-theme-switch:hover { background-color: rgba(128,128,128,0.1); }
.fl-theme-switch input { display:none; }

.fl-theme-switch .bi-sun { display: none; }

html[data-theme="dark"] .fl-theme-switch .bi-moon { display: none; }
html[data-theme="dark"] .fl-theme-switch .bi-sun { display: inline-block; }


#fl-drawer {
    display: block;
    background-color: var(--fl-submenu-background);
    color: var(--fl-submenu-color);
    max-width: 80%;
    width: 360px;
    padding: 80px 32px 32px 32px;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 800;
    position: fixed;
    overflow-x: hidden;
    overflow-y: auto;
    box-shadow: 0 0px 9px 1px rgba(128,128,128 ,0.25);
    transform: translateX(360px);
    transition: transform 0.25s ease;
}

#fl-drawer .fl-drawer-icon {
    position: absolute;
    top: 16px;
    right: 8px;
}

#fl-drawer a { color: var(--fl-submenu-color); }

#fl-drawer.open {
    -webkit-transform: translateX(0px);
    -ms-transform: translateX(0px);
    transform: translateX(0px);
}

#fl-drawer .fl-widget:last-child { margin-bottom: 0; }

#fl-drawer .mobile-socials,
#fl-drawer .mobile-menu { display: none; }
#fl-drawer .fl-social-icons a {
    font-size: 1rem;
    width: 32px;
    line-height: 32px;
    border-radius: 8px;
}

#fl-drawer .widget_mc4wp_form_widget { padding: 40px 24px 16px 24px; }

/*-------------------------------------------------------------------------*/
/*  5. Featured Posts
/*-------------------------------------------------------------------------*/
/* Featured Posts Area */
.fl-featured-container { margin-top: 16px; }

#fl-featured-col.fl-3col #fl-featured .fl-post:nth-child(n+4),
#fl-featured-col.fl-4col #fl-featured .fl-post:nth-child(n+5),
#fl-featured-col.fl-5col #fl-featured .fl-post:nth-child(n+6) { display: none; }

#fl-featured-col.fl-3col #fl-featured .owl-item .fl-post:nth-child(n+4),
#fl-featured-col.fl-4col #fl-featured .owl-item .fl-post:nth-child(n+5),
#fl-featured-col.fl-5col #fl-featured .owl-item .fl-post:nth-child(n+6) { display: block; }

/* OWL Carousel Style */
.owl-dots {
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: 16px;
    text-align: center;
    line-height: 0;
}
.owl-dots .owl-dot {
    position: relative;
    display: inline-block;
    width: 24px;
    height: 24px;
    padding: 6px;
    background-color: transparent !important;
    text-align: center;
    vertical-align: middle;
}
.owl-dots .owl-dot span {
    display: block;
    font-size: 0 !important;
    line-height: 0 !important;
    width: 100%;
    height: 100%;
    border: 2px solid #ffffff;
    box-shadow: 0 0 4px rgba(128,128,128,0.5);
    border-radius: 50%;
    transition: all 0.25s ease;
}
.owl-dots .owl-dot.active { padding: 3px; }

.owl-dots .owl-dot:hover span,
.owl-dots .owl-dot.active span { background-color: #ffffff; }
.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev {
    position: absolute;
    top: 50%;
    margin-top: -20px;
    padding: 0;
    z-index: 5;
    width: 40px;
    height: 40px;
    background-color: var(--fl-body-background);
    color: var(--fl-headings-color);
    box-shadow: 0 0 4px rgba(128,128,128,0.5);
    border-radius: 50%;
    text-align: center;
    font-size: 0 !important;
    line-height: 0 !important;
    font-weight: 400;
    transition: all 0.25s ease;
}
.owl-carousel .owl-nav button span {
    font-size: 2rem;
    line-height: 40px;
}
.owl-carousel .owl-nav button.owl-next { right: -20px; }
.owl-carousel .owl-nav button.owl-prev { left: -20px; }
.owl-carousel .owl-nav button:hover {
    background-color: var(--fl-accent-color);
    color: #ffffff;
}

.owl-carousel .owl-nav button.disabled { display: none; }

/*-------------------------------------------------------------------------*/
/*	6. Loop Styles
/*-------------------------------------------------------------------------*/
/* Post Loop Style */
.fl-loop-header {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 8px;
    color: var(--fl-headings-color);
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
}
.fl-stories {
    position: relative;
    flex: 1;
    font-weight: var(--fl-headings-font-weight);
    font-size: 1.1rem;
    line-height: 1.85;
    margin-bottom: 0;
}
.fl-stories span.page:before {
    content: "•";
    color: var(--fl-accent-color);
    padding: 0 4px;
    font-weight: 700;
}
.fl-loop-header a {
    display: inline-block;
    padding: 0 8px;
    font-size: 0.875rem;
    border-radius: 4px;
    color: var(--fl-headings-color);
}
.fl-loop-header a:hover { background: rgba(128,128,128,0.1); }
.fl-loop-header a.active {
    background: var(--fl-accent-color);
    color: #ffffff;
}

.fl-archive-info {
    flex: 100%;
    font-size: 0.875rem;
    font-weight: 400;
    margin: 8px 0;
}
.fl-archive-info p { margin-bottom: 0; }

.fl-post { position: relative; }

.fl-post .fl-picture img {
    object-fit: cover;
    object-position: center;
    transition: transform 0.25s ease;
}

.portrait .fl-post .fl-picture img { aspect-ratio: 3 / 4; }
.landscape .fl-post .fl-picture img { aspect-ratio: 16 / 9; }
.square .fl-post .fl-picture img { aspect-ratio: 1 / 1; } 

.fl-post:hover .fl-picture img { transform: scale(1.05); }

.fl-post .post-data {
    position: absolute;
    display: flex;
    flex-flow: column;
    align-items: flex-end;
    row-gap: 8px;
    right: 8px;
    top: 8px;
}
.fl-post .post-format,
.fl-post .fl-sharing,
.fl-post .post-like,
.fl-post .post-views {
    display: block;
    overflow: hidden;
    z-index: 2;
    width: 40px;
    line-height: 40px;
    height: 40px;
    text-align: center;
    font-size: 1.4rem;
    text-shadow: 0 0 2px #000000;
    color: #ffffff;
    border-radius: 24px;
    transition: all 0.25s ease;
}
.fl-post .post-format:hover,
.fl-post .fl-sharing:hover { background-color: rgba(0,0,0,0.5); }

.fl-post .post-like,
.fl-post .post-views {
    overflow: inherit;
    line-height: 1.2;
    border-radius: 0;
}
.fl-post .post-like span,
.fl-post .post-views span {
    font-size: 0.75rem;
    display: block;
    font-weight: 700;
}
.fl-post .post-like:hover i:before,
.fl-post .post-like.liked i:before { content: "\f415"; }

.likeAnimation i {
    display: block;
    animation: likeAnimation 0.25s ease;
}

/* Like Animation */
@keyframes likeAnimation {
  100%  { transform: scale(2); opacity: 0.1; }
}
@-o-keyframes likeAnimation{
  100%  { transform: scale(2); opacity: 0.1; }
}
@-moz-keyframes likeAnimation{
  100%  { transform: scale(2); opacity: 0.1; }
}
@-webkit-keyframes likeAnimation{
  100%  { transform: scale(2); opacity: 0.1; }
}

/* Sharing */
.fl-sharing .menu {
    display: block;
    float: right;
    width: 40px;
    line-height: 40px;
    color: #ffffff;
}

.fl-sharing.active {
    width: 300px;  
    background-color: rgba(0,0,0,0.5);
}

.fl-sharing .share-icons {
    position: relative;
    display: block;
    visibility: hidden;
    float: left;
    font-size: 0;
    line-height: 1;
    width: 0;
}

.fl-sharing.active .share-icons {
    visibility: visible;
    width: auto;
}

.fl-sharing .share-icons a {
    display: inline-block;
    font-size: 1rem;
    width: 32px;
    line-height: 40px;
    color: #ffffff;
    opacity: 0;
    transform: translateX(16px);
    transition: opacity 0.75s ease, transform 0.75s ease;
}
.fl-sharing.active .share-icons a {
    opacity: 0.75;
    transform: translateX(0);
}

.fl-sharing .share-icons a span { display: none; }
.fl-sharing .share-icons a:hover {
    opacity: 1;    
    transition: opacity 0.25s ease, transform 0.75s ease;
}

.fl-post .title {
    position: relative;
    display: block;
    font-size: 1.2rem;
    margin-bottom: 0;
}
.fl-post .title a { color: var(--fl-headings-color); }

/* Overlay Post */
.fl-post.overlay .fl-picture { margin-bottom:0 }
.fl-post.overlay .post-header {
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0 16px 16px 16px;
    color: #ffffff;
    text-shadow: 0 0 1px #000000;
}
.fl-post.overlay .post-header:before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;    
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    background: rgba(0,0,0,0.8);
    background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
    opacity: 0.5;
    transition: opacity 0.25s ease;
    z-index: 0;
}
.fl-post.overlay:hover .post-header:before { opacity: 1; }
.fl-post.overlay .post-header .title a {
    display: block;
    color: #ffffff;
    padding-top: 64px;
}
.fl-post.overlay .post-header .title,
.fl-post.overlay .post-header .fl-meta {
    position: relative;
    z-index: 1;
}
.fl-post.overlay .post-header .fl-meta .meta:after { background: #ffffff; }

/* Sticky */
.fl-post.sticky:after {
    position: absolute;
    left: 8px;
    top: 8px;
    width: 40px;
    line-height: 40px;
    height: 40px;
    text-align: center;
    font-size: 1.4rem;
    font-family: bootstrap-icons;
    content: "\f586";
    color: #ffe234;
    z-index: 2;
}

.fl-meta {
    display: block;   
    font-family: var(--fl-headings-font);
    font-size: 0;
}
.fl-meta .meta {    
    display: inline-block;
    font-size: 0.75rem;
    line-height: 20px;
    margin-top: 8px;
    text-transform: capitalize;
}
.fl-meta .meta.category {
    margin-right: 0;
    margin-top: 0;
}
.fl-meta .meta.category a {
    display: inline-block;
    padding: 0 4px;
    border-radius: 2px;
    background-color: var(--fl-accent-color);
    color: #ffffff;
    margin-top: 4px;    
    margin-right: 4px;
    font-weight: 700;
    text-shadow: none !important;
}
.fl-meta .meta.category a:last-child { margin-right: 8px }
.fl-meta .meta.category:after { display:none; }
.fl-meta .meta a { color: var(--fl-body-color); }
.fl-meta .meta:after {
    display: inline-block;
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 50%;
    opacity: 0.5;
    vertical-align: middle;
    background-color: var(--fl-body-color);
    margin: 0 6px;
}

.fl-meta .meta:last-child:after { display: none; }

.img-bg .fl-meta .meta { opacity: 0.9; }

.fl-picture {
    position: relative;
    display: block;
    overflow: hidden;
    font-size: 0;
    max-width: 100%;
    margin-bottom: 8px;
    border-radius: 4px;
}
.fl-picture img {
    width: 100%;
    height: auto;
    display: block;
}

/* Grid Style */
.fl-loop-posts {
    position: relative;
    display: grid;
    column-gap: 16px;
    row-gap: 32px;
    transition: all 0.25s ease;
}
.fl-3col .fl-loop-posts { grid-template-columns: repeat(3, 1fr); }
.fl-4col .fl-loop-posts { grid-template-columns: repeat(4, 1fr); }
.fl-5col .fl-loop-posts { grid-template-columns: repeat(5, 1fr); }

.fl-5col .fl-loop-posts .fl-post .title { font-size: 1rem; }

.fl-loop-posts.hide {
    transform: translateY(16px);
    opacity: 0;
}
.fl-loop-posts.show {
    transform: translateY(0);
    opacity: 1;
}

/*-------------------------------------------------------------------------*/
/*  7. Widgets
/*-------------------------------------------------------------------------*/
#fl-drawer a.wp-block-button__link,
#fl-footer a.wp-block-button__link,
#fl-drawer .wc-block-featured-product .wc-block-featured-product__title,
#fl-drawer .wc-block-featured-product .wc-block-featured-product__variation,
#fl-footer .wc-block-featured-product .wc-block-featured-product__title,
#fl-footer .wc-block-featured-product .wc-block-featured-product__variation,
#fl-drawer .wc-block-featured-category .wc-block-featured-category__title,
#fl-footer .wc-block-featured-category .wc-block-featured-category__title { color: #ffffff; }

/* Widgets Styles */
.fl-widget,
.widget {
    display: block;
    position: relative;
    font-size: .875rem;    
    line-height: 1.6;
    margin-bottom: 40px;
}

.fl-widget-title,
.widgettitle {
    display: block;
    font-size: 1.1rem;
    margin-bottom: 16px;
}

#fl-drawer .fl-widget-title,
#fl-drawer h1,
#fl-drawer h2,
#fl-drawer h3,
#fl-drawer h4,
#fl-drawer h5,
#fl-drawer h6 { color: var(--fl-submenu-color); }

/* UL */
.fl-widget ul li,
.widget ul li {
    position: relative;
    display: block;
    border-bottom: 1px dotted rgba(128,128,128,0.1);
    padding: 8px 0;
}

.fl-widget ul li ul,
.widget ul li ul {
    margin-top: 8px;
    padding-left: 32px;
}

.fl-widget ul li a,
.widget ul li a { font-weight: var(--fl-headings-font-weight); }

.fl-widget ul li ul li:last-child,
.widget ul li ul li:last-child { border-bottom: none; }

.fl-widget p:last-child,
.fl-widget table:last-child,
.widget p:last-child,
.widget table:last-child { margin-bottom: 0; }

.fl-widget .wp-block-image,
.fl-widget .wp-block-embed { margin-bottom: 0; }

/* Menu widget */
.fl-widget ul.menu li,
.widget ul.menu li {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    padding: 0;
    border-bottom: none;
}

.fl-widget ul.menu li ul.sub-menu,
.widget ul.menu li ul.sub-menu {
    width: 100%;
    display: none;
    margin-top: 0;
}

.fl-widget ul.menu li a,
.widget ul.menu li a {
    flex: 1;
    font-family: var(--fl-headings-font);
    padding: 8px;
}

.fl-widget ul.menu li span.arrow,
.widget ul.menu li span.arrow {
    width: 32px;
    height: 32px;
    line-height: 32px;
    border-radius: 50%;
    background-color: rgba(128,128,128,0.1);
    font-size: 1em;
    cursor: pointer;
    text-align: center;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.fl-widget ul.menu li span.arrow.open,
.widget ul.menu li span.arrow.open {
    transform: rotate(180deg);
    color: #ffffff;
    background-color: var(--fl-accent-color);
}


/* Tag Widget */
.tagcloud a,
.wp-block-tag-cloud a {
    color: var(--fl-body-color);
    padding: 0 4px;
    border-radius: 4px;
    overflow: hidden;
}

/* Calendar Widget */
.widget_calendar { overflow: auto; }
.widget_calendar table {
    margin-bottom: 8px;
    text-align: center;
}
.widget_calendar table td { padding: 4px 0; }
.widget_calendar nav { text-align: center; }

/* Search Form */
form.searchform { display: flex; }

/* Retal Posts Widgets */
.fl-widget.fl-list { counter-reset: posts-counter; }
.fl-widget.fl-list .fl-post {
    display: flex;
    column-gap: 8px;
    padding-bottom: 8px;
    margin-bottom: 8px;
    align-items: center;
    border-bottom: 1px solid rgba(128,128,128,0.1);
    counter-increment: posts-counter;
}
.fl-widget.fl-list .fl-post:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.fl-widget.fl-list .fl-post .fl-picture {
    display: block;
    overflow: hidden;
    margin-bottom: 0;
    border-radius: 50%;
    width: 80px;
    height: 80px;
}
.fl-widget.fl-list .fl-post .fl-picture img {
    border-radius: 50%;
    padding: 4px;
    background-color: rgba(128,128,128,0.1);
}
.fl-widget.fl-list .fl-post .post-header { flex: 1; }
.fl-widget.fl-list .fl-post .post-header .title { font-size: 1rem; }
.fl-widget.fl-list .fl-post .post-header .category a { color: #ffffff !important; }
.fl-widget.fl-list .fl-post .post-header .fl-meta .meta { font-size: 0.65rem }

/*Numbers*/
.fl-widget.fl-list .fl-post.numbers:before {    
    content: counter(posts-counter);
    color: var(--fl-accent-color);
    font-size: 2rem;
    width: 24px; 
    font-style: italic;
}

/* About Widget */
.fl-about {
    display: block;
    position: relative;
    overflow: hidden;
}
.fl-about .desc { margin-bottom: 16px; }
.fl-about .signing { max-width: 120px; }

html[data-theme="dark"] .fl-about .signing { filter: invert(100%); }


/* mc4wp-form */
.widget_mc4wp_form_widget {
    position: relative;
    padding: 40px 32px 16px 32px;
    border: 2px solid rgba(128,128,128,0.1);
    border-radius: 4px;
    align-self: flex-start;
    text-align: center;
}
.widget_mc4wp_form_widget:before {
    content: "\f32f";
    font-family: bootstrap-icons;
    position: absolute;
    display: block;
    width: 48px;
    height: 48px;
    font-size: 1.4rem;
    line-height: 48px;
    top: -24px;
    left: 50%;
    margin-left: -24px;
    background-color: rgba(128,128,128,0.1);    
    color: var(--fl-headings-color);
    border-radius: 50%; 
}
.widget_mc4wp_form_widget p { margin-bottom: 16px; }
.widget_mc4wp_form_widget h4 { margin-bottom: 8px; }
.widget_mc4wp_form_widget .fl-widget-title,
.widget_mc4wp_form_widget .widgettitle { font-weight: 400; }
.mc4wp-form .mc4wp-alert {
	font-size: .75rem;
	margin-top: 8px;
}
.mc4wp-form .mc4wp-form-fields input[type="email"] {
    text-align: center;
    border: 2px solid rgba(128,128,128,0.2);
}
.mc4wp-form .mc4wp-form-fields input[type="submit"] {
    display: block;
    margin-top: 0;
    width: 100%;
}


/*-------------------------------------------------------------------------*/
/*	8. Ajax Pagination & Comments toggle & Pagination & Navigation
/*-------------------------------------------------------------------------*/
.fl-no-post-format {
    position: absolute;
    display: flex;
    align-items: center;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.fl-no-post-format .fl-ajax-end { margin: 0 auto; }

.fl-load-more,
.fl-loading,
.fl-comments-toggle,
.fl-ajax-end {
    display: table;
    background-color: var(--fl-button-background);
    color: #ffffff;
    width: 90%;
    max-width: 320px;
    padding: 8px 32px;
    line-height: 32px;
    margin: 56px auto 24px auto;
    font-size: .875rem;
    text-align: center;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    border-radius: 32px;
    transition: all 0.25s ease;
}

.fl-load-more:hover,
.fl-comments-toggle:hover,
.fl-comments-toggle.open {
    background-color: var(--fl-accent-color);
    color: #ffffff;
    transform: scale(1.05);
}

.fl-comments-toggle { margin-bottom: 0; }
.fl-comments-toggle i {
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    margin-left: 4px;
    transition: all 0.25s ease;
}

.fl-comments-toggle.open i { transform: rotate(-180deg); }

.fl-loading,
.fl-ajax-end {
    color: var(--fl-body-font);
    font-weight: 700;
    font-size: 2rem;
    background-color: rgba(128,128,128,0.1);
}

.fl-ajax-end { font-size: 0.875rem }

.fl-error {
    display: block;
    text-align: center;
    margin-bottom: 24px;
    padding: 16px 0;
    color: red;
}

@keyframes fadeAnimation {
  50%  { opacity:.1; transform: scale(1.5); }
}
@-o-keyframes fadeAnimation{
  50%  { opacity:.1; transform: scale(1.5); }
}
@-moz-keyframes fadeAnimation{
  50%  { opacity:.1; transform: scale(1.5); }
}
@-webkit-keyframes fadeAnimation{
  50%  { opacity:.1; transform: scale(1.5); }
}
.animate-loading {
    display: inline-block;
   -webkit-animation: fadeAnimation 1s infinite;
   -moz-animation: fadeAnimation 1s infinite;
   -o-animation: fadeAnimation 1s infinite;
    animation: fadeAnimation 1s infinite;
}

/* Navigation */
/* Pagination */
.fl-pagination,
.fl-navigation {
    position: relative;
    display: block;
    text-align: center;
    margin: 56px auto 24px auto;
}
.fl-pagination .page-numbers {
    display: inline-block;
    overflow: hidden;
    width: 40px;
    line-height: 40px;
    border-radius: 50%;
    font-size: 0.875rem;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    color: var(--fl-body-color);
}

.fl-pagination a.page-numbers:hover { background-color: rgba(128,128,128,0.1); }
.fl-pagination .current {
    color: #ffffff;
    background-color: var(--fl-accent-color);
}
.fl-pagination a.next,
.fl-pagination a.prev {
    padding: 0 8px;
    width: auto;
    border-radius: 0;
}
.fl-pagination a.next:hover,
.fl-pagination a.prev:hover {
    color: var(--fl-accent-color);
    background-color: transparent;
}

.fl-navigation a {
    display: inline-block;
    overflow: hidden;
    line-height: 32px;
    font-size: 0.875rem;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    background-color: var(--fl-button-background);
    margin: 0 4px;
    color: #ffffff;
    padding: 8px 24px;
    border-radius: 32px;
    transition: all 0.2s ease;
}
.fl-navigation a:hover {
    background-color: var(--fl-accent-color);
    color: #ffffff;
    transform: scale(1.05);
}

/*-------------------------------------------------------------------------*/
/*	9. Single Post & Page Style
/*-------------------------------------------------------------------------*/
/* Article Style */
.fl-single {
    display: flex;
    flex-flow: row wrap;
    column-gap: 32px;
    align-items: flex-start;
}

.fl-single .fl-post {
    max-width: 510px;
    width: 32%;
    align-self: flex-end;
    position: sticky;
    bottom: 16px;
}

/* Single Image & Media */
.fl-single .fl-post:hover .fl-picture img { transform: scale(1); }
.fl-single .fl-post .wp-embed-responsive { background: #000; }
.fl-single .fl-post .wp-embed-responsive.wp-embed-aspect-3-4 .wp-block-embed__wrapper:before { padding-top: 133.33%; }

.fl-picture .caption {
    display: block;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px 8px;
    z-index: 2;
    font-size: 0.875rem;
    line-height: 1.6;
    background: rgba(0,0,0,0.5);
    background: linear-gradient(to top, rgba(0,0,0,0.5), transparent);
    color: #ffffff;
}

/* Gallery */
#fl-gallery { display: block; }
#fl-gallery .fl-picture:nth-child(n+2) { display:none; }
#fl-gallery .owl-item .fl-picture:nth-child(n+2) { display:block; }

.fl-single .fl-post .post-header {
    position: relative;
    padding-right: 40px;
    min-height: 152px;
}
.fl-single .fl-post .post-header .single-title { margin-bottom: 0; }
.fl-single .fl-post .post-header .fl-meta { margin-top: 8px; }

/* LightBox */
.fl-single .fl-lightbox .fl-picture { cursor: pointer; }
.fl-single .fl-lightbox .fl-picture:hover img { transform: scale(1.05); }

#fl-lightbox-gallery {
    position: relative;
    align-self: flex-end;    
    background-color: rgba(0,0,0,0.9);    
    border-radius: 4px;    
    border-top-right-radius: 20px;
}
#fl-lightbox-gallery .owl-item {
    text-align: center; 
    line-height: 0;
    font-size: 0;
}
#fl-lightbox-gallery .fl-picture {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(100vh - 80px);
    padding: 8px;
    margin-bottom: 0;
}
#fl-lightbox-gallery .fl-picture img {
    max-height: 100%;
    width: auto;
    border-radius: 4px;
}
#fl-lightbox-gallery .fl-picture .caption { padding: 40px 8px 64px 8px; }

#fl-lightbox-gallery .close-lightbox {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    z-index: 5;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-color: var(--fl-body-background);
    color: var(--fl-headings-color);
    box-shadow: 0 0 4px rgba(128,128,128,0.5);
    border-radius: 50%;
    text-align: center;
    font-size: 2rem;
    font-weight: 400;
    cursor: pointer;
    transition: all 0.25s ease;
}
#fl-lightbox-gallery .close-lightbox:hover {
    background-color: var(--fl-accent-color);
    color: #ffffff;
}

/* Post Data */
.fl-single .fl-post .post-data {
    top: 0;
    right: 0;
}
.fl-single .fl-post .post-format,
.fl-single .fl-post .fl-sharing,
.fl-single .fl-post .post-like,
.fl-single .fl-post .post-views {
    color: var(--fl-body-color);
    text-shadow: none;
}
.fl-single .fl-post .fl-sharing {
    position: relative;
    background: var(--fl-body-background);
}
.fl-single .fl-post .fl-sharing:before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.fl-single .fl-post .fl-sharing .menu,
.fl-single .fl-post .fl-sharing .share-icons a {
    position: relative;
    color: var(--fl-body-color);
    z-index: 2;
}
.fl-single .fl-post .post-format:hover,
.fl-single .fl-post .fl-sharing:hover:before,
.fl-single .fl-post .fl-sharing.active:before { background: rgba(128,128,128,0.1); }
.fl-single .fl-post .post-like:hover i,
.fl-single .fl-post .post-like.liked i { color:var(--fl-accent-color); }

/* Tags */
.fl-tags {
    position: relative;
    display: block;
    overflow: hidden;
    font-size: 0.8rem;
    margin-top: 16px;
    padding-right: 40px;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
}
.fl-tags a {
    display: inline-block;
    color: var(--fl-body-color);
    margin-right: 8px;
}
.fl-tags a:before {
    content: '#';
    color: var(--fl-accent-color);
}
.fl-tags a:last-child { margin-right: 0; }
.fl-tags a:hover { color: var(--fl-accent-color); }

/* Author Box */
.fl-author-box {
    display: block;
    position: relative;
    width: 100%;
    margin-top: 16px;
    background: rgba(128,128,128,0.1);
    padding: 16px;
    border-radius: 4px;
    border-top-left-radius: 40px;
}
.fl-author-box  .letter {    
    position: absolute;
    top: 16px;
    right: 16px;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    color: rgba(128,128,128,0.1);
    font-size: 3rem;    
    line-height: 1;
    text-transform: uppercase;
    z-index: 0;
    user-select: none;
}
.fl-author-box .title { font-size: 1rem; }
.fl-author-box .title img.avatar {
    border-radius: 50%;
    vertical-align: middle;
    margin-right: 8px;
}
.fl-author-box .info {
    font-size: 0.875rem;
    line-height: 1.7;
    margin-top: 8px;
}
.fl-author-box .fl-social-icons.author {
    margin-top: 8px;
    margin-bottom: 0;
}
.fl-author-box .fl-social-icons.author a { color: var(--fl-headings-color); }
.fl-author-box .fl-social-icons.author .all-stories {
    position: relative;
    width: auto;
    padding: 0;
    padding-left: 20px;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    transition: 0.25s;
}
.fl-author-box .fl-social-icons.author .all-stories:before {
    content: "";
    left: 0;
    background-color: var(--fl-headings-color);
    position: absolute;
    width: 16px;
    height: 1px;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.25s;
}
.fl-author-box .fl-social-icons.author .all-stories:hover {
    background-color: transparent;
    padding-left: 28px;
}
.fl-author-box .fl-social-icons.author .all-stories:hover:before { width: 24px; }


/* post content */
.fl-single .post-content {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    flex: 1;
}

.fl-single .fl-post-content {
    display: block;
    position: relative;
    overflow: hidden;
    padding-bottom: 32px;
    border-bottom: 2px solid rgba(128,128,128,0.1);
}

.fl-post-content h1,
.fl-post-content h2,
.fl-post-content h3,
.fl-post-content h4,
.fl-post-content h5,
.fl-post-content h6 { padding-top: 16px; }

.fl-post-content hr { margin-bottom: 32px; }

/* Content List Style and Mixes Lists */
.fl-post-content ul {
    list-style: disc;
    margin-left: 48px;
    margin-bottom: 32px;
}
.fl-post-content ol {
    list-style: decimal;
    margin-left: 48px;
    margin-bottom: 32px;
}
.fl-post-content ul ul,
.fl-post-content ol ol,
.fl-post-content ul ol,
.fl-post-content ol ul {
    margin-bottom: 0;
    margin-left: 40px;
}

/* page links */
.fl-page-links {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 32px 0;
    text-align: center;
}
.fl-page-links a {
    display: inline-block;
    line-height: 40px;
    width: 140px;
    font-size: .875rem;
    font-weight: var(--fl-headings-font-weight);
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -o-border-radius: 20px;
    border-radius: 20px;    
    background-color: rgba(128,128,128,0.1);
    color: var(--fl-headings-color);
}

.fl-page-links a:hover {
    background-color: var(--fl-accent-color);
    color: #ffffff;
}
.fl-page-links a span,
.fl-page-links a i { padding: 0 4px; }

.fl-page-links .page-link-sep {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: var(--fl-headings-font-weight);
    padding: 0 16px;
}
.fl-page-links .page-link-sep span {
    display: block;
    opacity: 0.7;
    font-size: .875rem;
}

/* Next & Prev Posts */
#fl-prev-next {
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    margin-top: 32px;
    row-gap: 24px;
    column-gap: 24px;
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
}
#fl-prev-next .item {
    display: flex; 
    flex: 1;
    align-items: center;
}
#fl-prev-next .item a { color: var(--fl-headings-color); }
#fl-prev-next .item .content { flex: 1; }
#fl-prev-next .fl-picture {
    width: 88px;
    height: 88px;
    margin-bottom: 0;
    border-radius: 50%;
    background-position: center;
    background-size: cover;
}
#fl-prev-next .item .meta {
    font-size: 0.85rem;
    opacity: 0.5;
}
#fl-prev-next .item .title {
    margin: 0;
    padding: 0;
    font-size: 1.1rem;
}

#fl-prev-next .next {
    text-align: right;
    flex-flow: row-reverse;
}
#fl-prev-next .prev .fl-picture { margin-right: 16px; }
#fl-prev-next .next .fl-picture { margin-left: 16px; }


/* Single Page */
.fl-page .fl-picture { margin-bottom: 32px }
.fl-page .post-content {
    max-width: 768px;
    margin: 0 auto;
}
/*-------------------------------------------------------------------------*/
/*  10. Comments
/*-------------------------------------------------------------------------*/
.fl-comments { display: none; }
.fl-comment-list {
    display: block;
    position: relative;    
    margin-top: 32px;   
    padding: 16px 16px 0 16px; 
    border: 2px solid rgba(128,128,128,0.1);    
    border-radius: 4px;
}

.fl-comment-list li.comment,
.fl-comment-list li.comment li.comment {
    position: relative;
    display: block;
    border-top: 2px solid rgba(128,128,128,0.1);
}
.fl-comment-list li.comment:first-child { border-top: none; }
.fl-comment-list li.comment li.comment { margin-left: 32px; }

.fl-comment-list li.comment:first-child div.comment-body { margin-top: 0; }
.fl-comment-list li.comment li.comment div.comment-body { margin-top: 16px; }

.fl-comment-list li.comment div.comment-author img.avatar {
    position: absolute;
    background: var(--fl-body-background);
    top: 0;
    left: 0;
    border-radius: 50%;
}
.fl-comment-list li.comment div.comment-author,
.fl-comment-list li.comment div.comment-meta,
.fl-comment-list li.comment div.comment-author a {
    font-size: 1rem;
    font-family: var(--fl-headings-font);
    color: var(--fl-headings-color);
}
.fl-comment-list li.comment div.comment-author { font-weight: var(--fl-headings-font-weight); }
.fl-comment-list li.comment div.comment-meta {
    display: block;
    text-transform: capitalize;
    font-size: .75rem;
    line-height: 1;
    margin-top: 4px;
    opacity: 0.75;
    margin-bottom: 16px;
}
.fl-comment-list li.comment div.comment-author .says { display: none; }
.fl-comment-list li.comment .comment-meta a { color: var(--fl-body-color); }
.fl-comment-list li.comment .comment-awaiting-moderation { margin-bottom: 4px; }

.fl-comment-list div.comment-body {
    display: block;
    position: relative;
    overflow: hidden;
    padding-left: 64px;
    margin-top: 16px;
    font-size: 0.875rem;
}

.fl-comment-list li.comment.bypostauthor .children li.comment:not(.bypostauthor) div.comment-body .comment-author.vcard:before { display: none; }

/* bypostauthor */
.fl-comment-list li.comment.bypostauthor div.comment-body .comment-author.vcard:before {
    position: absolute;
    display: block;
    font-family: bootstrap-icons;
    content: "\f26a";
    color: var(--fl-accent-color);
    font-size: 20px;
    line-height: 1;
    border-radius: 50%;
    background: #ffffff;
    left: 34px;
    top: 4px;
    z-index: 2;
}

.fl-comment-list div.comment-body ul {
    list-style: disc;
    margin-left: 1em;
    margin-bottom: 1em;
}
.fl-comment-list div.comment-body ol {
    list-style: decimal;
    margin-left: 1em;
    margin-bottom: 1em;
}
.fl-comment-list div.comment-body ul ul,
.fl-comment-list div.comment-body ol ol,
.fl-comment-list div.comment-body ul ol,
.fl-comment-list div.comment-body ol ul {
    margin-bottom: 0;
    margin-left: 1em;
}

.fl-comment-list div.comment-body ul p { margin-bottom: 1em; }

.fl-comment-list div.comment-body .reply {
    position: absolute;
    display: block;
    bottom: 4px;
    right: 0;
    z-index: 2;
}
.fl-comment-list div.comment-body .reply a {
    display: block;
    font-size: .75rem;
    width: 64px;
    line-height: 32px;
    text-align: center;
    font-weight: 700;
    background: rgba(128,128,128,0.1);
    color: var(--fl-body-color);
    border-radius: 16px;
}
.fl-comment-list div.comment-body .reply a:hover {
    color: #ffffff;
    background: var(--fl-accent-color);
}

.fl-comments .fl-pagination { padding-top: 0; }

.fl-comments .fl-no-comments {
    text-align: center;
    margin-bottom: 0;
    margin-top: 32px;
    font-weight: 700;
    opacity: 0.75;
}

/* Respond */
#respond {
    margin-top: 32px;
    padding: 24px;
    background: rgba(128,128,128,0.1);
    border-radius: 4px;
}
#respond input:not([type="submit"]),
#respond textarea { background-color: var(--fl-body-background); }

#respond input[type="checkbox"]:checked,
#respond input[type="radio"]:checked {
    background-color: var(--fl-accent-color);
    border-color: var(--fl-accent-color);
}
#fl-reply-title {
    position: relative;
    margin-bottom: 8px;
}
#fl-reply-title small { margin-left: 8px; }
#fl-reply-title small a {
    padding-left: 8px;
    border-left: 1px solid rgba(128,128,128,0.2);
}
#respond form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    column-gap: 16px;
    row-gap: 16px;
    font-size: 0.875rem;
    line-height: 1.7;
}
#respond form p {
    margin-bottom: 0;
    flex: 1;
}
#respond form .comment-notes,
#respond form .comment-form-comment,
#respond form .comment-form-cookies-consent { flex: 100%; }

#respond form .form-submit input[type="submit"] {
    display: table;
    padding: 12px 32px;
    margin: 0 auto;
    border-radius: 32px;
    transition: all 0.25s ease;
}

.fl-comment-list li.comment #respond { margin: 16px 0; }

/*-------------------------------------------------------------------------*/
/*  11. Footer
/*-------------------------------------------------------------------------*/
#fl-footer {
    margin-top: 16px;
    background-color: var(--fl-footer-background);
    color: var(--fl-footer-color);
}

#fl-footer a { color: var(--fl-footer-color); }

#fl-footer h1,
#fl-footer h2,
#fl-footer h3,
#fl-footer h4,
#fl-footer h5,
#fl-footer h6,
#fl-footer .fl-widget-title,
#fl-footer .widgettitle,
#fl-footer .widget_mc4wp_form_widget:before { color: var(--fl-footer-headings-color); }

#fl-footer-widgets {
    padding-top: 40px;
    border-top: 2px solid rgba(128,128,128,0.1);
    display: flex;
    flex-flow: row wrap;
    column-gap: 32px;
}

#fl-footer-widgets .widget,
#fl-footer-widgets .fl-widget { flex: 1 1 calc(25% - 24px); }

#fl-copyrights {
    border-top: 1px solid rgba(128,128,128,0.1);
    font-size: 0.8rem;
    display: flex;
    flex-flow: row wrap-reverse;
    justify-content: space-between;
    align-items: center;    
    font-family: var(--fl-headings-font);
    column-gap: 16px;
    row-gap: 8px;
}

#fl-copyrights .footer-menu li {
    display: inline-block;
    margin-right: 16px;    
    font-weight: var(--fl-headings-font-weight);
}
#fl-copyrights .footer-menu li:last-child { margin-right: 0; }

/*-------------------------------------------------------------------------*/
/*  12. Archive Pages Style
/*-------------------------------------------------------------------------*/
/* Category, Tag, Author,...etc box Style */
.fl-stories img.avatar {
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: middle;
}
.fl-social-icons.author {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 4px;
}
.fl-social-icons.author a {
    font-size: .9rem;
    padding: 0;
    margin-right: 4px;
}
.fl-social-icons.author a:last-child { margin-right: 0; }

/* Tag */
body.archive.tag .fl-stories:before {
    content: '#';
    color: var(--fl-accent-color);
}

/* 404 */
body.error404 #fl-content.page-404 {
    min-height: 70vh;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}
body.error404 #fl-content.page-404 .letter {
    font-family: var(--fl-headings-font);
    font-weight: var(--fl-headings-font-weight);
    font-size: 6rem;
    line-height: 1.25;
    opacity: 0.25;
}
body.error404 #fl-content.page-404 .title { font-size: 4rem; }
body.error404 #fl-content.page-404 form.searchform {
    width: 100%;
    max-width: 584px;
    border-radius: 40px;
    overflow: hidden;
}
body.error404 #fl-content.page-404 form.searchform input[type="search"],
body.error404 #fl-content.page-404 form.searchform button {
    padding: 16px 32px;
    border-radius: 0;
}

/*-------------------------------------------------------------------------*/
/*  13. Media Queries
/*-------------------------------------------------------------------------*/

@media only screen and (max-width: 1200px) {
    /* Header & Overlay */
    #fl-topmenu { display: none; }
    #fl-drawer .mobile-menu { display: block; }
    .fl-drawer-icon { display: inline-block !important; }

    /* Loop Posts */
    .fl-4col .fl-loop-posts { grid-template-columns: repeat(3, 1fr); }
    .fl-5col .fl-loop-posts { grid-template-columns: repeat(4, 1fr); }

    /* Featured Posts Area */
    #fl-featured-col.fl-4col #fl-featured .fl-post:nth-child(n+4),
    #fl-featured-col.fl-5col #fl-featured .fl-post:nth-child(n+5) { display: none; }
    #fl-featured-col.fl-4col #fl-featured .owl-item .fl-post:nth-child(n+4),
    #fl-featured-col.fl-5col #fl-featured .owl-item .fl-post:nth-child(n+5) { display: block; }

    /* Single Post */
    #fl-prev-next { flex-flow: column wrap; }
}


@media only screen and (max-width: 1024px) {
    /* Single Post */
    .fl-single {
        flex-flow: column wrap;
        align-items: center;
        column-gap: 0;
    }
    .fl-single .fl-post {
        position: relative;
        bottom: auto;
        display: flex;
        flex-flow: row wrap;
        max-width: 100%;
        width: 100%;
        margin-bottom: 32px;
        column-gap: 24px;
        align-items: center;
    }    
    .fl-single .fl-post .fl-picture {
        max-width: 510px;
        flex: 1;
        margin-bottom: 0;
    }
    #fl-gallery { width: 50%; }
    .fl-single .fl-post .single-header { flex: 1; }
    .fl-single .post-content { max-width: 768px; }

    #fl-prev-next {
        flex-flow: row wrap;
        align-items: center;
    }

    /* Footer */
    #fl-footer-widgets {
        flex-flow: column wrap;
        align-content: center;
    }

    #fl-footer-widgets .fl-widget {
        max-width: 576px;
        flex: 1;
    }

    .widget_mc4wp_form_widget { align-self: stretch; }
}

@media only screen and (max-width: 960px) {
    /* Loop Posts */
    .fl-3col .fl-loop-posts { grid-template-columns: repeat(2, 1fr); }
    .fl-5col .fl-loop-posts { grid-template-columns: repeat(3, 1fr); }

    .fl-4col .fl-loop-posts .fl-post .title { font-size: 1rem; }

    /* Featured Posts Area */
    #fl-featured-col.fl-3col #fl-featured .fl-post:nth-child(n+3),
    #fl-featured-col.fl-5col #fl-featured .fl-post:nth-child(n+4) { display: none; }

    #fl-featured-col.fl-3col #fl-featured .owl-item .fl-post:nth-child(n+3),
    #fl-featured-col.fl-5col #fl-featured .owl-item .fl-post:nth-child(n+4) { display: block; }
}

@media only screen and (max-width: 768px) {
    #fl-logo h1,
    #fl-logo p,
    h1 {font-size: 1.73rem;}
    h2 {font-size: 1.44rem;}
    h3 {font-size: 1.2rem;}
    h4 { font-size: 1.1rem; }

    .fl-drawer-icon .text { display: none; }
    .fl-container { padding: 8px 16px; }

    #fl-header .fl-social-icons { display: none; }

    #fl-drawer .mobile-socials { display: block; }

    .overlay-search { max-width: 576px; }
    .overlay-search form:before {
        font-size: 16px;
        line-height: 48px;
        width: 48px;
    }
    .overlay-search .searchform input[type="search"] {
        font-size: .875rem;
        line-height: 48px;
        height: 48px;
        padding: 0 120px 0 48px;
    }
    .overlay-search .searchform button {
        font-size: .875rem;
        height: 48px;
        padding: 0 24px;
    }

    /* Loop Posts */
    .fl-4col .fl-loop-posts { grid-template-columns: repeat(2, 1fr); }
    .fl-5col .fl-loop-posts { grid-template-columns: repeat(2, 1fr); }
    .fl-3col .fl-loop-posts .fl-post .title { font-size: 1rem; }
    .fl-4col .fl-loop-posts .fl-post .title,
    .fl-5col .fl-loop-posts .fl-post .title  { font-size: 1.2rem; }


    /* Featured Posts Area */
    #fl-featured-col.fl-4col #fl-featured .fl-post:nth-child(n+3),
    #fl-featured-col.fl-5col #fl-featured .fl-post:nth-child(n+3) { display: none; }
    #fl-featured-col.fl-4col #fl-featured .owl-item .fl-post:nth-child(n+3),
    #fl-featured-col.fl-5col #fl-featured .owl-item .fl-post:nth-child(n+3) { display: block; }

    .owl-carousel .owl-nav button.owl-next { right: -14px; }
    .owl-carousel .owl-nav button.owl-prev { left: -14px; }

    /* Single Post */
    .fl-single .fl-post { display: block; }    
    .fl-single .fl-post .fl-picture,
    .fl-single .fl-post .single-header,
    #fl-gallery {
        width: 100%;
        max-width: 510px;
        margin: 0 auto;
    }
    .fl-single .fl-post .fl-picture { margin-bottom: 8px; }
}

@media only screen and (max-width: 576px) {
    h1 {font-size: 1.44rem;}
    h2 {font-size: 1.2rem;}
    h3 {font-size: 1.1rem;}
    h4 {font-size: 1rem;}

    #fl-header .header-menu {
        position: absolute;
        right: 8px;
    }

    #fl-logo {
        background-color: var(--fl-header-background);
        z-index: 2;
    }

    #fl-drawer { padding: 80px 24px 24px 24px; }

    /* Loop Posts */
    .fl-3col .fl-loop-posts { grid-template-columns: repeat(1, 1fr); }
    .fl-3col .fl-loop-posts .fl-post .title { font-size: 1.2rem; }
    .fl-4col .fl-loop-posts .fl-post .title,
    .fl-5col .fl-loop-posts .fl-post .title  { font-size: 1rem; }

    /* Featured Posts Area */
    #fl-featured-col.fl-3col #fl-featured .fl-post:nth-child(n+2) { display: none; }
    #fl-featured-col.fl-3col #fl-featured .owl-item .fl-post:nth-child(n+2) { display: block; }

    /* Loop Header */
    .fl-stories { padding-right: 90px; }
    .fl-stories img.avatar { width: 48px; }
    .fl-loop-header .filter {
        position: absolute;
        right: 0;
        top: 0;
        padding: 4px;
        background: var(--fl-body-background);        
        border-radius: 4px;
        z-index: 100;
    }
    body.archive.author .fl-loop-header .filter { top: 8px; }
    .fl-loop-header .filter a {
        display: none;
        width: 88px;
    }
    .fl-loop-header .filter a.active { display: block; } 

    .fl-loop-header .filter:hover { box-shadow: 0 0 8px rgba(128,128,128,0.25); }
    .fl-loop-header .filter:hover a { display: block; }
    
    /* Single Post*/
    .fl-page-links a { width: 104px; }

    #fl-prev-next { flex-flow: column wrap; }

    /* Comments */
    .fl-comment-list { padding: 16px 16px 0 16px; }
    #respond { padding: 16px; }
    #respond form p { flex: 100%; }

    /* 404 */
    body.error404 #fl-content.page-404 .letter { font-size: 5rem; }
    body.error404 #fl-content.page-404 .title { font-size: 3rem; }
    body.error404 #fl-content.page-404 form.searchform input[type="search"],
    body.error404 #fl-content.page-404 form.searchform button { padding: 16px 24px; }
}


@media only screen and (max-width: 480px) {

    /* Loop Posts */
    .fl-4col .fl-loop-posts { grid-template-columns: repeat(1, 1fr); }
    .fl-5col .fl-loop-posts { grid-template-columns: repeat(1, 1fr); }
    .fl-4col .fl-loop-posts .fl-post .title,
    .fl-5col .fl-loop-posts .fl-post .title { font-size: 1.2rem; }

    /* Featured Posts Area */
    #fl-featured-col.fl-4col #fl-featured .fl-post:nth-child(n+2),
    #fl-featured-col.fl-5col #fl-featured .fl-post:nth-child(n+2) { display: none; }
    #fl-featured-col.fl-4col #fl-featured .owl-item .fl-post:nth-child(n+2),
    #fl-featured-col.fl-5col #fl-featured .owl-item .fl-post:nth-child(n+2) { display: block; }
}