* {
    box-sizing: border-box;
}

body {
    margin: 0;
    color: #222;
    background: var(--cs-outer-background-color, #fff);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.6;
}

a {
    color: inherit;
}

.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.skip-link:focus {
    z-index: 999;
    top: 12px;
    left: 12px;
    width: auto;
    height: auto;
    padding: 10px 14px;
    clip: auto;
    background: var(--cs-outer-background-color, #fff);
}

.header-inner,
.footer-block-area,
.site-layout {
    max-width: var(--cs-content-width, 1140px);
    margin-inline: auto;
    padding-inline: 20px;
}

.header-inner,
.footer-block-area {
    background: var(--cs-content-background-color, #fff);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-block: 20px;
}

.site-title {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 700;
}

.site-title a {
    text-decoration: none;
}

.site-description {
    margin: 4px 0 0;
    color: #666;
}

.primary-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.primary-navigation a {
    text-decoration: none;
}


.site-hero {
    width: 100%;
    max-width: var(--cs-content-width, 1140px);
    margin-inline: auto;
    height: var(--cs-hero-height-mobile, 220px);
    background-color: #e8e5db;
    background-size: var(--cs-hero-object-fit, cover);
    background-position: var(--cs-hero-object-position, center center);
    background-repeat: no-repeat;
}

.site-layout {
    display: flex;
    background: var(--cs-content-background-color, #fff);
    box-shadow: var(--cs-content-box-shadow, none);
    align-items: flex-start;
    gap: 40px;
    padding-block: 40px;
}

.site-content {
    flex: 1 1 auto;
    min-width: 0;
}

.site-sidebar {
    flex: 0 0 var(--cs-sidebar-width, 340px);
}

.content-card {
    margin-bottom: 40px;
}

.entry-title {
    margin-top: 0;
    line-height: 1.2;
}

.entry-content > *:first-child {
    margin-top: 0;
}

.entry-content img {
    max-width: 100%;
    height: auto;
}

.site-footer {
    max-width: var(--cs-content-width, 1140px);
    margin-inline: auto;
    background: var(--cs-footer-background-color, #f4f1ea);
    padding-block: 32px;
}

.theme-widget + .theme-widget {
    margin-top: 24px;
}

@media (max-width: 767px) {
    .header-inner {
        display: block;
    }

    .primary-navigation ul {
        margin-top: 16px;
        display: block;
    }

    .primary-navigation li + li {
        margin-top: 8px;
    }

    .site-layout {
        display: block;
    }

    .site-sidebar {
        width: 100%;
        margin-top: 40px;
    }
}

.error-404 .home-link {
    display: inline-block;
    padding: 10px 16px;
    border: 1px solid currentColor;
    text-decoration: none;
}


.theme-widget {
    color: var(--cs-widget-text-color, #222222);
    font-size: var(--cs-widget-font-size, 16px);
    font-weight: var(--cs-widget-font-weight, 400);
    font-style: var(--cs-widget-font-style, normal);
    line-height: var(--cs-widget-line-height, 1.6);
    letter-spacing: var(--cs-widget-letter-spacing, 0);
    text-transform: var(--cs-widget-text-transform, none);
}

.theme-widget .widget-title,
.theme-widget h1,
.theme-widget h2,
.theme-widget h3,
.theme-widget h4,
.theme-widget h5,
.theme-widget h6 {
    color: var(--cs-widget-title-color, #222222);
}

.theme-widget .widget-title {
    font-size: var(--cs-widget-title-font-size, 22px);
}

.theme-widget a {
    color: var(--cs-widget-link-color, #222222);
    text-decoration: var(--cs-widget-text-decoration, none);
}

.theme-widget ul,
.theme-widget ol,
.theme-widget .wp-block-page-list,
.theme-widget .wp-block-navigation__container,
.theme-widget .wp-block-categories-list,
.theme-widget .wp-block-archives-list {
    list-style: var(--cs-widget-list-marker, none);
    padding-left: 0;
}

.theme-widget li::marker {
    content: var(--cs-widget-marker-content, normal);
}

.theme-widget ul[style*="list-style"],
.theme-widget ol[style*="list-style"] {
    list-style: var(--cs-widget-list-marker, none) !important;
}


/* MENU APPEARANCE SETTINGS */


.primary-navigation ul,
.theme-widget ul.menu,
.theme-widget .wp-block-navigation__container {
    margin: 0;
    padding: 0;
    list-style: none;
}

.primary-navigation li,
.theme-widget ul.menu li,
.theme-widget .wp-block-navigation-item {
    margin: 0;
    list-style: none;
}

.primary-navigation a,
.theme-widget ul.menu a,
.theme-widget .wp-block-navigation-item__content {
    color: var(--cs-menu-link-color, #222222);
    font-size: var(--cs-menu-font-size, 16px);
    font-weight: var(--cs-menu-font-weight, 400);
    line-height: var(--cs-menu-line-height, 1.6);
    text-transform: var(--cs-menu-text-transform, none);
    text-decoration: var(--cs-menu-link-decoration, none);
    display: block;
    padding-block: 4px;
}

.primary-navigation a:hover,
.primary-navigation a:focus,
.theme-widget ul.menu a:hover,
.theme-widget ul.menu a:focus,
.theme-widget .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item__content:focus {
    color: var(--cs-menu-link-hover-color, #555555);
}



.primary-navigation .current-menu-item > a,
.primary-navigation .current-menu-ancestor > a,
.primary-navigation .current-menu-parent > a,
.primary-navigation .current_page_item > a,
.primary-navigation .current_page_parent > a,
.primary-navigation .current_page_ancestor > a,
.primary-navigation a[aria-current="page"],
.theme-widget ul.menu .current-menu-item > a,
.theme-widget ul.menu .current-menu-ancestor > a,
.theme-widget ul.menu .current-menu-parent > a,
.theme-widget ul.menu .current_page_item > a,
.theme-widget ul.menu .current_page_parent > a,
.theme-widget ul.menu .current_page_ancestor > a,
.theme-widget ul.menu a[aria-current="page"],
.theme-widget .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item.current-menu-parent > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item.current_page_parent > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item.current_page_ancestor > .wp-block-navigation-item__content,
.theme-widget .wp-block-navigation-item__content[aria-current="page"] {
    color: var(--cs-menu-active-color, #cc0000) !important;
    background-color: var(--cs-menu-active-background-color, transparent);
}

.primary-navigation .current-menu-item > a:hover,
.primary-navigation .current-menu-ancestor > a:hover,
.primary-navigation .current-menu-parent > a:hover,
.primary-navigation .current_page_item > a:hover,
.primary-navigation .current_page_parent > a:hover,
.primary-navigation .current_page_ancestor > a:hover,
.primary-navigation a[aria-current="page"]:hover,
.theme-widget ul.menu .current-menu-item > a:hover,
.theme-widget ul.menu .current-menu-ancestor > a:hover,
.theme-widget ul.menu .current-menu-parent > a:hover,
.theme-widget ul.menu .current_page_item > a:hover,
.theme-widget ul.menu .current_page_parent > a:hover,
.theme-widget ul.menu .current_page_ancestor > a:hover,
.theme-widget ul.menu a[aria-current="page"]:hover,
.theme-widget .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item.current-menu-parent > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item.current_page_parent > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item.current_page_ancestor > .wp-block-navigation-item__content:hover,
.theme-widget .wp-block-navigation-item__content[aria-current="page"]:hover {
    color: var(--cs-menu-active-color, #cc0000) !important;
    background-color: var(--cs-menu-active-background-color, transparent);
}

.primary-navigation .sub-menu,
.theme-widget .sub-menu,
.theme-widget .wp-block-navigation__submenu-container {
    list-style: none;
}

.primary-navigation .sub-menu a,
.theme-widget .sub-menu a,
.theme-widget .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    padding-inline: 12px;
}

@media (max-width: 767px) {
    .primary-navigation ul.menu,
    .theme-widget ul.menu,
    .theme-widget .wp-block-navigation__container {
        flex-direction: column;
        align-items: stretch;
    }

    .primary-navigation .sub-menu,
    .theme-widget .sub-menu,
    .theme-widget .wp-block-navigation__submenu-container {
        position: static !important;
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        padding-left: var(--cs-mobile-menu-submenu-indent, var(--cs-submenu-indent, 20px));
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* v1.0.12 header/navigation structure */
.site-header {
    background: var(--cs-header-background-color, #fff);
}

.desktop-navigation {
    max-width: var(--cs-content-width, 1140px);
    margin-inline: auto;
    background: var(--cs-navigation-background-color, #fff);
    padding-inline: 20px;
    padding-block: 12px;
}

.desktop-navigation ul.menu {
    justify-content: var(--cs-menu-justify-content, flex-start);
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-hero {
    position: relative;
}

.site-hero-mobile-image {
    display: none;
}

.mobile-menu-toggle {
    display: none;
    position: absolute;
    right: 20px;
    top: 16px;
    transform: none;
    align-items: center;
    gap: 8px;
    padding: var(--cs-mobile-menu-button-padding-y, 10px) var(--cs-mobile-menu-button-padding-x, 14px);
    border: 1px solid var(--cs-mobile-menu-button-border-color, currentColor);
    border-radius: var(--cs-mobile-menu-button-border-radius, 4px);
    background: var(--cs-mobile-menu-button-background-color, var(--cs-content-background-color, #fff));
    color: var(--cs-mobile-menu-button-text-color, var(--cs-menu-link-color, #222222));
    cursor: pointer;
    font: inherit;
    z-index: 5;
}

.mobile-menu-toggle-icon {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
}

.mobile-menu-toggle-icon span {
    display: block;
    width: 24px;
    height: 2px;
    background: currentColor;
}

.mobile-menu-panel {
    display: none;
    position: fixed;
    z-index: 10000;
    inset: 0 auto 0 0;
    width: min(92vw, var(--cs-mobile-menu-panel-width, 360px));
    background: var(--cs-mobile-menu-panel-background-color, var(--cs-content-background-color, #ffffff));
    box-shadow: 8px 0 30px rgba(0,0,0,.22);
    transform: translateX(-105%);
    transition: transform .25s ease;
    overflow-y: auto;
}

.mobile-menu-open .mobile-menu-panel {
    transform: translateX(0);
}

.mobile-menu-panel-inner {
    padding: var(--cs-mobile-menu-panel-padding, 24px);
}

.mobile-menu-close {
    display: block;
    margin-left: auto;
    margin-bottom: 20px;
    border: 0;
    background: transparent;
    color: var(--cs-mobile-menu-close-color, inherit);
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
}

.mobile-navigation ul.menu {
    display: flex;
    flex-direction: var(--cs-mobile-menu-flex-direction, column);
    flex-wrap: var(--cs-mobile-menu-flex-wrap, nowrap);
    align-items: var(--cs-mobile-menu-align-items, stretch);
    justify-content: var(--cs-mobile-menu-justify-content, flex-start);
    gap: var(--cs-mobile-menu-item-gap, var(--cs-menu-item-vertical-gap, 8px));
    margin: 0;
    padding: 0;
    list-style: none;
}

.mobile-navigation .sub-menu {
    display: block;
    position: static;
    margin-top: var(--cs-menu-item-vertical-gap, 8px);
    padding-left: var(--cs-mobile-menu-submenu-indent, var(--cs-submenu-indent, 20px));
    list-style: none;
    box-shadow: none;
    background: transparent;
}

.mobile-menu-backdrop {
    display: none !important;
    position: fixed;
    z-index: 9999;
    inset: 0;
    background: var(--cs-mobile-menu-backdrop-background, rgba(0,0,0,.35));
}

.mobile-menu-open .mobile-menu-backdrop {
    display: block !important;
}

.mobile-navigation ul.menu,
.mobile-navigation .sub-menu {
    width: 100%;
}

.mobile-navigation .sub-menu {
    display: block !important;
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    padding-left: var(--cs-mobile-menu-submenu-indent, var(--cs-submenu-indent, 20px)) !important;
    box-shadow: none !important;
    background: transparent !important;
}

.site-footer {
    max-width: var(--cs-content-width, 1140px);
    margin-inline: auto;
    background: var(--cs-footer-background-color, #f4f1ea);
}

.desktop-navigation ul,
.mobile-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.desktop-navigation ul.menu,
.mobile-navigation ul.menu {
    font-size: var(--cs-menu-font-size, 16px);
    line-height: var(--cs-menu-line-height, 1.6);
    font-weight: var(--cs-menu-font-weight, 400);
    text-transform: var(--cs-menu-text-transform, none);
}

.desktop-navigation li,
.mobile-navigation li {
    list-style: none;
}

.desktop-navigation a,
.mobile-navigation a {
    color: var(--cs-menu-link-color, #222222);
    text-decoration: var(--cs-menu-link-decoration, none);
}

.desktop-navigation a:hover,
.desktop-navigation a:focus,
.mobile-navigation a:hover,
.mobile-navigation a:focus {
    color: var(--cs-menu-link-hover-color, #555555);
}

.desktop-navigation .current-menu-item > a,
.desktop-navigation .current-menu-ancestor > a,
.desktop-navigation .current-menu-parent > a,
.desktop-navigation .current_page_item > a,
.desktop-navigation .current_page_parent > a,
.desktop-navigation .current_page_ancestor > a,
.desktop-navigation a[aria-current="page"],
.mobile-navigation .current-menu-item > a,
.mobile-navigation .current-menu-ancestor > a,
.mobile-navigation .current-menu-parent > a,
.mobile-navigation .current_page_item > a,
.mobile-navigation .current_page_parent > a,
.mobile-navigation .current_page_ancestor > a,
.mobile-navigation a[aria-current="page"] {
    color: var(--cs-menu-active-color, #cc0000) !important;
    background-color: var(--cs-menu-active-background-color, transparent);
}

.desktop-navigation .sub-menu,
.mobile-navigation .sub-menu {
    list-style: none;
}

.desktop-navigation .sub-menu a,
.mobile-navigation .sub-menu a {
    padding-inline: 12px;
}


/* MOBILE MENU CUSTOMIZATION */
.mobile-navigation a {
    color: var(--cs-mobile-menu-link-color, var(--cs-menu-link-color, #222222));
    font-size: var(--cs-mobile-menu-font-size, var(--cs-menu-font-size, 16px));
    line-height: var(--cs-mobile-menu-line-height, var(--cs-menu-line-height, 1.6));
}

.mobile-navigation a:hover,
.mobile-navigation a:focus {
    color: var(--cs-mobile-menu-link-hover-color, var(--cs-menu-link-hover-color, #555555));
}

.mobile-navigation .current-menu-item > a,
.mobile-navigation .current-menu-ancestor > a,
.mobile-navigation .current-menu-parent > a,
.mobile-navigation .current_page_item > a,
.mobile-navigation .current_page_parent > a,
.mobile-navigation .current_page_ancestor > a,
.mobile-navigation a[aria-current="page"] {
    color: var(--cs-mobile-menu-active-color, var(--cs-menu-active-color, #cc0000)) !important;
    background-color: var(--cs-mobile-menu-active-background-color, var(--cs-menu-active-background-color, transparent)) !important;
}
