/* #### Sidebar #### */

.sidebar.horizontal {
    margin: 0 0 0.6rem;
    padding-top: 0.4rem;
    padding-bottom: 0.5rem;
}

.widget-area {
    flex: 0 0 100%;
    max-width: 100%;
}

.widget-area.col-md>[class*="col-"]:not(.box) {
    padding-left: 0;
    padding-right: 0;
}

.sidebar .widget {
    position: relative;
    margin-bottom: var(--df-margin-unit);
    clear: both;
}

.sidebar .widget.has-boxless-content,
.sidebar .widget:has(>.boxless) {
    border-color: transparent !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.sidebar .widget:empty {
    display: none !important;
}

.sidebar .widget:last-child,
.sidebar>.box:last-child {
    margin-bottom: 0;
}

.sidebar .widget .widget-title,
.sidebar .widget .widgettitle,
.sidebar .widget>.title,
.sidebar .widget .wp-block-group h2:first-of-type,
.sidebar .widget_block h2:first-of-type {
    font-family: var(--heading-font-family);
    background: transparent;
    padding: 0;
    margin: var(--sidebar-title-margin, 0 0 2.3rem);
    color: var(--title-color);
    text-align: var(--sidebar-title-text-align, left);
    text-transform: var(--sidebar-title-text-transform, uppercase);
    font-weight: var(--sidebar-title-font-weight, 700);
    font-size: var(--sidebar-title-font-size, 1.6rem);
    line-height: 1;
}

.sidebar .widget .widget-title .fa,
.sidebar .widget>.title .fa {
    position: relative;
    top: -0.1rem;
    font-size: 95%;
    margin-right: 0.4rem;
}

.sidebar.single .widget:first-child {
    margin-top: 0.4rem;
}

@media (max-width: 992px) {
    .sidebar .widget:first-child {
        margin-top: 0;
    }
}

/* ## Widgets ## */

/* General */
.sidebar ul {
    --margin-unit: var(--sidebar-list-margin, 2rem);
    margin: 0;
    list-style: none;
}

.widget ul+ul {
    margin-top: var(--margin-unit);
}

.widget li {
    font-size: var(--body-font-size);
    line-height: 1.2;
    padding-left: 1em;
    margin-bottom: var(--margin-unit);
}

/* Calendar */
#wp-calendar {
    width: 100%;
}

#wp-calendar caption {
    text-align: right;
    color: #333;
    font-size: 1.2rem;
    margin-top: 0.1rem;
    margin-bottom: 1.5rem;
}

#wp-calendar thead {
    font-size: 0.1rem;
}

#wp-calendar thead th {
    padding-bottom: 0.1rem;
    text-align: center;
}

#wp-calendar tbody {
    color: #aaa;
}

#wp-calendar tbody td {
    background: #f5f5f5;
    border: 0.1rem solid #fff;
    text-align: center;
    padding: 0.8rem;
}

#wp-calendar tbody td:hover {
    background: #fff;
}

#wp-calendar tbody .pad {
    background: none;
}

#wp-calendar tfoot #next {
    font-size: 0.1rem;
    text-transform: uppercase;
    text-align: right;
}

#wp-calendar tfoot #prev {
    font-size: 0.1rem;
    text-transform: uppercase;
    padding-top: 0.1rem;
}

/* Search */
.widget_search form {
    position: relative;
    clear: both;
    overflow: hidden;
    padding: 0.2rem 0;
}

.widget_search form label {
    display: none;
    font-size: 1.4rem;
    margin-bottom: 1.2rem;
    font-weight: normal;
}

.widget_search input[type="text"],
.widget_search input[type="search"] {
    left: 0.1rem;
    position: relative;
    width: 99%;
    float: left;
    height: 5rem;
    line-height: 1;
    padding-right: 4rem;
    margin-bottom: 0;
}

.widget_search input[type="text"]:hover,
.widget_search input[type="text"]:focus {
    box-shadow: inset 0 0 0 0.1rem rgba(0, 0, 0, 0.2);
}

.widget.widget_search input[type="submit"],
.widget.widget_search button[type="submit"] {
    visibility: visible;
    right: 0;
    opacity: 0;
    position: absolute !important;
    float: right;
    z-index: 2;
    display: block;
    font-size: 1.4rem;
    font-size: 0;
    padding: 0 1.5rem;
    width: 15%;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 5rem;
    min-height: 0;
    cursor: pointer;
}

.widget_search form:after {
    position: absolute;
    bottom: 1.6rem;
    right: 0.4rem;
    font-family: "Font Awesome 6 Free";
    font-size: 1.4rem;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    font-weight: 900;
    content: "\f002";
    color: var(--text-light-color);
    display: block;
    height: 2rem;
    width: 2.5rem;
    pointer-events: none;
    z-index: 1;
}

/* Recent posts widget */
.wp-block-latest-posts__list li {
    position: relative;
    margin: 0 0 2rem;
    padding: 0 0 0 calc(6rem + var(--df-column-gap));
}

.wp-block-latest-posts__list li:has(img) {
    min-height: 6rem;
}

.wp-block-latest-posts__list:not(:has(img)) li {
    padding-left: 0;
}

.sidebar .widget .wp-block-latest-posts__list li:last-child {
    margin-bottom: 0;
}

.wp-block-latest-posts__list .wp-block-latest-posts__featured-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 6rem;
    height: 6rem;
}

.wp-block-latest-posts__featured-image img {
    object-fit: cover;
    width: 100%;
    height: auto;
    border-radius: var(--thumbnail-border-radius);
}

.wp-block-latest-posts__post-title {
    display: block;
    color: var(--title-color);
}

.wp-block-latest-posts__post-title:hover,
.wp-block-latest-posts__post-title:focus {
    color: var(--highlight-color-hover);
}

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date {
    font-size: 80%;
    color: var(--text-light-color);
}

.wp-block-latest-posts__post-author:before,
.wp-block-latest-posts__post-date:before {
    content: "\f2bd";
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    margin-right: .5rem;
}

.wp-block-latest-posts__post-date:before {
    content: "\f073";
}

.wp-block-latest-posts__post-excerpt {
    margin-top: 1rem;
    font-size: 90%;
}

/* Tag Cloud */
div.tagcloud {
    font-size: 0;
}

a.tag-cloud-link {
    margin-right: 0.2rem;
    margin-bottom: 0.2rem;
    zoom: 0.8;
}

/* Mailpoet Plugin */
.sidebar form.mailpoet_form {
    padding: 0 !important;
}

.sidebar div.mailpoet_form_widget {
    text-align: center;
}

.sidebar div.mailpoet_form_widget:before {
    position: relative;
    top: -0.6rem;
    content: "";
    display: block;
    width: 6.8rem;
    height: 6.8rem;
    background: url(../img/email-icn.png) no-repeat left top;
    background-size: contain;
    margin: 0 auto 1rem;
}

.mailpoet_form_widget .mailpoet_paragraph,
.mailpoet_form .mailpoet_paragraph {
    width: 100%;
    font-size: 1.4rem;
    display: inline-block;
    vertical-align: text-top;
    margin-bottom: 0 !important;
    margin-top: 1.3rem;
}

.mailpoet_form_paragraph {
    text-align: center !important;
}

.mailpoet_form_widget .mailpoet_text,
.mailpoet_form_widget .mailpoet_submit {
    width: 100%;
    margin-bottom: 0;
    height: auto;
    padding: 1.1rem 2rem 0.9rem !important;
    text-align: center;
}

.mailpoet_form_widget .mailpoet_text {
    background: #fff;
}

.mailpoet_form_widget .mailpoet_text:hover,
.mailpoet_form_widget .mailpoet_text:focus,
.mailpoet_form_widget .mailpoet_text:active {
    background: #fff;
    box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.15);
}

.mailpoet_form_widget .mailpoet_form_loading {
    margin-top: 0.1rem;
    margin-left: 0.2rem;
}

.mailpoet_form_widget .mailpoet_text_label {
    display: none;
}

.mailpoet_text {
    min-width: 2.5rem;
}

.mailpoet_form_widget .mailpoet_submit {
    margin: 0;
    width: 100%;
}

.mailpoet_form_widget .mailpoet_paragraph:first-of-type {
    margin-bottom: 0.5rem;
    margin-top: -0.5rem;
}

.mailpoet_form_widget ul {
    padding: 0 !important;
    margin: 1.5rem 0 0;
}

.mailpoet_form_widget ul li {
    padding: 0 !important;
}

.mailpoet_form_widget ul li:before {
    display: none;
}

.mailpoet_form_widget .parsley-error,
.mailpoet_form_widget .parsley-error {
    box-shadow: none;
}

.mailpoet_validate_success {
    font-size: 90%;
    color: #66c76a;
}

.parsley-required,
.parsley-custom-error-message {
    font-size: 1.3rem !important;
    margin-bottom: 0 !important;
}

@media (min-width: 992px) and (max-width: 1200px) {
    .mailpoet_text {
        min-width: 100%;
    }

    .mailpoet_form_widget .mailpoet_submit {
        width: 100%;
    }
}

@media (max-width: 992px) {
    .sidebar .widget ul {
        margin: 0;
    }
}

@media (max-width: 600px) {
    .sidebar .widget {
        margin-bottom: 2rem;
    }

    .sidebar .widget .widget-title,
    .sidebar .widget>.title {
        padding-bottom: 0.1rem;
    }
}

/* Subscriber by BestWebSoft Form */
.sbscrbr-form {
    text-align: center;
}

.sbscrbr-form::before {
    content: "";
    display: inline-block;
    background: url(../img/email-icn.png) no-repeat center center / contain;
    width: 5.3rem;
    height: 5.3rem;
    margin-bottom: 1rem;
}

.sbscrbr-form h4,
.sbscrbr-form .title {
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 1.5rem;
    text-align: center;
    color: var(--highlight-color);
}

#sbscrbr-form {
    text-align: center;
    line-height: 1.2;
}

#sbscrbr-form p {
    line-height: inherit;
}

#sbscrbr-form input[type="text"] {
    display: block;
    text-align: center;
    width: 100%;
}

#sbscrbr-form label {
    font-size: 1.2rem;
    line-height: 1.2;
    color: var(--text-light-color);
}

#sbscrbr-form input[type="checkbox"],
#sbscrbr-form input[type="radio"] {
    margin-right: 0.2rem;
    transform: scale(0.8) translateY(-0.2rem);
}

#sbscrbr-form .sbscrbr-unsubscribe-wrap {
    display: none;
}

#sbscrbr-form .sbscrbr-submit-block {
    margin: 0;
}

#sbscrbr-form .sbscrbr-submit-block .submit {
    display: block;
    width: 100%;
}

.sidebar #sbscrbr-form .sbscrbr-submit-block .submit:not(:hover) {
    color: var(--highlight-color);
    background: transparent;
    box-shadow: inset 0 0 0 0.3rem var(--highlight-color);
}

/* Sticky Sidebar Feature */
#sticky-sidebar>.sidebar,
.sticky-sidebar>.sidebar,
.sticky-sidebar>.sticky-sidebar {
    position: relative;
    top: 0 !important;
}

#sticky-sidebar,
.sticky-sidebar,
.sidebar-sticky-inner {
    position: sticky;
    top: 0;
    align-self: flex-start;
}

.sidebar.sticky-sidebar,
.sidebar-sticky-inner {
    top: 3rem;
}

.widget:has(.sidebar-sticky-after) {
    display: none !important;
}

.sidebar:has(.sidebar-sticky-inner),
.sidebar:has(.sidebar-sticky-inner)>.row {
    height: 100%;
}

@media (max-width: 992px) {

    #sticky-sidebar>.holder,
    .sticky-sidebar>.holder {
        position: static;
        overflow: visible;
        max-height: none;
        top: 0;
    }

    .sidebar.sticky-sidebar {
        position: relative;
        top: 0;
        margin-bottom: 0;
    }

    #sticky-sidebar>.holder,
    #sticky-sidebar,
    .sticky-sidebar>.holder,
    .sticky-sidebar {
        width: 100%;
    }
}

/* Deal with direct child .box components */
.widget.box>.textwidget>.box,
.widget.box>.box {
    display: block;
    background: transparent;
    position: static;
    padding: 0;
    border: none;
    margin: 0;
    box-shadow: none;
}