/*
Theme Name: Iconic One Pro Child
Theme URI: https://cardexpert.in/
Author: Bella Technologies Private Limited
Author URI: https://bellatechnologies.in/
Description: Child theme for Iconic One Pro
Template: iconic-one-pro
Version: 0.1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iconic-one-pro-child
*/



/* ==========================================================================
   Sticky Frosted-Glass Menu Bar (Apple-style) — mobile only
   ========================================================================== */

/* Desktop (>=768px) intentionally keeps the parent theme's original menu
   (static, non-frosted) — see the screenshot reference. No overrides here. */

/* Mobile (<=767px): the existing .cx-mobile-bar already lives outside
   .site-header, so we just promote it to fixed + frosted. */
@media screen and (max-width: 767px) {
    body {
        padding-top: 57px;
    }

    .cx-mobile-bar {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1001;
        background: rgba(255, 255, 255, 0.72) !important;
        backdrop-filter: saturate(180%) blur(20px);
        -webkit-backdrop-filter: saturate(180%) blur(20px);
        border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
        box-shadow: none !important;
    }
}


/* ==========================================================================
   Single Post — Entry Title
   ========================================================================== */

.entry-header .entry-title {
    font-size: clamp(28px, 20px + 2vw, 32px);
}


/* ==========================================================================
   Footer Widget Area
   ========================================================================== */

#iop-footer.widget-area {
    border: 1px solid #e9e9e9;
    width: calc(100% - 2px);
    margin: 20px 0 0;
    overflow: hidden;
    display: flex;
    background-color: #f0f4f8;
    padding: 60px 0;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

#iop-footer .footer-widget {
    flex: 1;
    float: none;
    width: auto;
    padding-right: 0;
}

#iop-footer .widget-title {
    background: none;
    padding: 0 0 15px;
}

#iop-footer .footer-widget:first-child {
    padding-left: 60px;
}

#iop-footer.widget-area .widget li,
#iop-footer.widget-area .widget .textwidget {
    border-bottom: none;
}

#iop-footer.widget-area .widget a {
    line-height: 2.25;
}

#iop-footer.widget-area .widget .iop-form-desc,
#iop-footer.widget-area .widget .iop-form-title {
    line-height: 1.75;
}


/* ==========================================================================
   Footer — Brand Column (logo + social icons)
   ========================================================================== */

.footer-col-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.footer-logo-link {
    display: block;
    margin-bottom: 14px;
}

.footer-logo {
    max-width: 240px;
    height: auto;
    display: block;
}

.footer-social {
    display: flex;
    gap: 14px;
    align-items: center;
}

.footer-social a {
    color: #555e6e;
    font-size: 20px;
    text-decoration: none;
    line-height: 1;
    transition: color 0.2s;
}

.footer-social a:hover {
    color: #0099ff;
}

.footer-social a svg {
    display: block;
}

/* Footer nav / legal lists */

.footer-col-nav ul,
.footer-col-legal ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-col-nav ul li,
.footer-col-legal ul li {
    border-bottom: none;
    padding: 0;
}

.footer-col-nav ul li a,
.footer-col-legal ul li a {
    line-height: 2.25;
    text-decoration: none;
    color: #555e6e;
    display: block;
}

.footer-col-nav ul li a:hover,
.footer-col-legal ul li a:hover {
    color: #0099ff;
}


/* ==========================================================================
   Sidebar Widget Area
   ========================================================================== */

#secondary.widget-area .widget a {
    line-height: 2;
}

#themonicwidget-2 li,
#recent-comments-2 li,
#categories-2 li {
    font-size: 15px;
}


/* ==========================================================================
   Subscribe Form (Mailchimp) — Footer widget
   ========================================================================== */

#mc_embed_signup.themonic-subscribe {
    width: 87.4% !important;
    margin-left: 0 !important;
}

#mc_embed_signup #emailsubmit {
    cursor: pointer;
}

#iop-footer #mc_embed_signup.themonic-subscribe {
    width: 100% !important;
    margin-left: 0 !important;
    background: linear-gradient(135deg, #00c9a7 0%, #00b4d8 50%, #4361ee 100%) !important;
    border-radius: 8px;
    padding: 22px 20px 18px;
    box-sizing: border-box;
}

#iop-footer .iop-form-title {
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-align: center;
    margin: 0 0 6px !important;
    line-height: 1.3 !important;
}

#iop-footer .iop-form-desc {
    color: #fff !important;
    font-size: 13px !important;
    text-align: center;
    opacity: 0.92;
    margin: 0 0 14px !important;
    line-height: 1.5 !important;
}

#iop-footer .real-content-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#iop-footer .email-container-iop {
    width: 100%;
}

#iop-footer .iopform-email {
    width: 100% !important;
    padding: 18px 14px !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    box-sizing: border-box;
    outline: none;
}

#iop-footer .real-content-form .clear {
    width: 100%;
    margin-top: -12px;
}

#iop-footer .e-subscribe-button {
    width: 100%;
    padding: 9px 16px !important;
    background: #4361ee !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    height: auto !important;
}

#iop-footer .e-subscribe-button:hover {
    background: #3451d1 !important;
}

#iop-footer #mce-responses {
    display: none;
}


/* ==========================================================================
   Footer Bottom Bar
   ========================================================================== */

footer[role="contentinfo"] {
    padding: 12px 0;
}


/* ==========================================================================
   Single Post — Below-Title Author Meta
   ========================================================================== */

.below-title-meta {
    padding-bottom: 0;
    background-color: #ffffff;
}

.below-title-meta .btm-inner {
    display: flex;
    align-items: stretch;
    padding: 0 20px 0;
}

.btm-avatar {
    flex-shrink: 0;
    margin-right: 12px;
}

.btm-avatar img {
    border-radius: 50%;
    width: 52px;
    height: 52px;
    display: block;
}

.btm-meta-text {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.4;
}

.btm-byline {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}

.btm-by,
.btm-date {
    color: #7c7c7c;
}

.btm-author-name {
    color: #333;
    font-weight: 500;
}

.verified-tick {
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
}

.verified-tick path {
    fill: #1d9bf0;
}

.btm-date {
    font-size: 13px;
    margin-top: 3px;
}

.btm-comment-count {
    flex-shrink: 0;
    margin-left: auto;
    padding-left: 16px;
    font-size: 13px;
    display: flex;
    align-items: center;
}

a.link-comments {
    color: #666;
    text-decoration: none;
}

a.link-comments i {
    margin-right: 2px;
}

a.link-comments:hover {
    color: #333;
}

@media screen and (max-width: 768px) {
    #mc_embed_signup.themonic-subscribe:not(#iop-footer *) {
        margin-left: 10px !important;
    }
}

@media screen and (max-width: 959px) {
    #iop-footer.widget-area {
        flex-wrap: wrap;
    }

    #iop-footer .footer-widget {
        flex: 0 0 50%;
        width: 50%;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box;
        margin-bottom: 20px;
        text-align: center;
    }

    #iop-footer .footer-widget:first-child {
        flex: 0 0 100%;
        width: 100%;
        margin-bottom: 60px;
    }

    #iop-footer .footer-col-brand {
        align-items: center;
    }

    #iop-footer .footer-col-nav ul,
    #iop-footer .footer-col-legal ul {
        display: inline-block;
        text-align: left;
    }
}

@media screen and (max-width: 440px) {
    #mc_embed_signup.themonic-subscribe:not(#iop-footer *) {
        margin-left: 10px !important;
    }
}

@media screen and (max-width: 620px) {
    .btm-desktop-only {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .site {
        margin-top: 71px;
    }

    /* When the mobile search panel is open it occupies the space below the
       fixed bar, so the site content no longer needs to clear the bar. */
    #cx-mobile-search-panel:not([hidden]) ~ .site {
        margin-top: 0px;
    }
}

#content .entry-content img {
    margin: 0 0 15px !important;
    width: 100% !important;
    max-width: 100% !important;
}


/* ==========================================================================
   Single Post — Image Captions
   ========================================================================== */

.wp-block-image figcaption {
    font-style: italic;
    text-align: right;
    font-size: 14px;
    letter-spacing: normal;
    color: #666;
    background-color: transparent;
}


/* ==========================================================================
   Single Post — Tables (wp-block-table)
   border-radius on <table> only renders with `border-collapse: separate`;
   the four corner cells need matching radii so their square borders don't
   poke past the rounded outline.
   ========================================================================== */

.wp-block-table table {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
}

.wp-block-table table tr:first-child > *:first-child { border-top-left-radius: 10px; }
.wp-block-table table tr:first-child > *:last-child  { border-top-right-radius: 10px; }
.wp-block-table table tr:last-child  > *:first-child { border-bottom-left-radius: 10px; }
.wp-block-table table tr:last-child  > *:last-child  { border-bottom-right-radius: 10px; }


/* ==========================================================================
   Table of Contents — visual refresh (blue top accent, 4sysops style)
   ========================================================================== */

#toc_container {
    background: #fff !important;
    border: 2px solid #eff0f0 !important;
    border-top: 4px solid #3f9cff !important;
    border-radius: 10px !important;
    padding: 14px 18px 16px !important;
    margin-bottom: 1.5em !important;
}

#toc_container p.toc_title {
    text-align: left !important;
    color: #1d2327;
    margin: 10px 0 !important;
}

#toc_container p.toc_title + ul.toc_list {
    margin: 20px 20px 0 !important;
}

#toc_container a {
    color: #2271b1;
}

#toc_container a:hover {
    color: #135e96 !important;
    text-decoration: none !important;
}

#toc_container ul ul {
    margin-left: 1em !important;
    font-size: 15px !important;
}

#toc_container > ul > li {
    position: relative !important;
    padding-bottom: 5px !important;
}

#toc_container ul ul li {
    padding-bottom: 5px !important;
}

/* Mobile (<=767px): give the top-level ToC entries (the "H2"-level links)
   bottom padding so the first sub-item below them isn't cramped. These links
   are inline <a>, so inline-block is needed for padding-bottom to push the
   nested sub-list down. Top-level entries only; sub-items keep their 5px. */
@media screen and (max-width: 767px) {
    #toc_container .toc_list > li > a {
        display: inline-block !important;
        padding-bottom: 5px !important;
    }
}

#toc_container span.toc_toggle {
    display: inline-block;
    margin-left: 5px;
}

#toc_container span.toc_toggle a {
    box-sizing: content-box;
    padding: 8px 12px;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border: none;
    background-color: #f2f2f2;
    cursor: pointer;
    letter-spacing: 1px;
    color: #1d2327;
    border-radius: 12px;
    display: inline-block;
    vertical-align: middle;
}


/* ==========================================================================
   Single Post — Monthly Newsletter Block
   ========================================================================== */

.single-newsletter-block {
    background: linear-gradient(135deg, #00c9a7 0%, #00b4d8 50%, #4361ee 100%);
    border-radius: 8px;
    padding: 32px 24px;
    margin: 24px 0 20px;
    text-align: center;
}

.snb-title {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 16px;
    border: none;
    background: none;
    padding: 0;
}

.snb-form {
    display: flex;
    justify-content: center;
    gap: 0;
    margin-bottom: 10px;
    position: relative;
}

.snb-email {
    flex: 1;
    max-width: 340px;
    padding: 9px 14px;
    border: none;
    border-radius: 4px 0 0 4px;
    font-size: 14px;
    outline: none;
}

.snb-btn {
    padding: 9px 18px;
    background: #4361ee;
    color: #fff;
    border: none;
    border-radius: 0 4px 4px 0;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
}

.snb-btn:hover {
    background: #3451d1;
}

.snb-tagline {
    color: #fff;
    font-size: 13px;
    margin: 0;
    opacity: 0.92;
}

@media screen and (max-width: 480px) {
    .snb-form {
        flex-direction: column;
        align-items: center;
    }

    .snb-email {
        max-width: 100%;
        border-radius: 4px;
        margin-bottom: 8px;
    }

    .snb-btn {
        border-radius: 4px;
        width: 100%;
    }
}


/* ==========================================================================
   Related Posts — Thumbnails
   ========================================================================== */

.themonicthumb {
    max-height: none;
}

.themonicthumb img {
    width: 210px;
    height: auto;
    display: block;
    border-radius: 15px;
}

/* Image + content sit side by side as equal-height flex columns. */
.relatedrow {
    display: flex;
    align-items: stretch;
}

.relatedrow .themonicthumb {
    flex-shrink: 0;
}

.relatedrow .relatedcontent {
    flex: 1;
}

.relatedcontent {
    padding: 25px 5px 15px 5px;
}

.relatedcontent > a {
    font-size: clamp(16px, 0.83rem + 0.56vw, 18px);
}

.relatedtag {
    margin-top: 12px;
    /* Pin font-size and line-height explicitly so both copies render identically:
       the inside copy would otherwise inherit .relatedcontent's line-height: 1.5
       while the standalone copy inherits the body's line-height: 1, which makes
       the inline-block badge taller (apparent top/bottom padding) in one case. */
    font-size: 13px;
    line-height: 1.5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.relatedtag a:not(.link-comments) {
    background: #666666;
    color: #FFFFFF;
    display: inline-block;
    margin-bottom: 3px;
    margin-left: 5px;
    padding: 4px 12px;
    text-decoration: none;
    transition: all 0.3s ease 0s;
    border-radius: 4px;
    text-transform: capitalize;
}

.relatedtag a:not(.link-comments):hover {
    color: #FFFFFF;
}

.relatedtag .link-comments {
    display: inline;
    margin-top: -5px;
    font-size: 15px;
}

/* The tag + comment count exists twice: inside .relatedcontent (default) and
   as a sibling after the .relatedrow flex container. The sibling copy is for
   narrow screens only, where it drops below the row; hidden on wider screens. */
.relatedrow + .relatedtag {
    display: none;
}

@media screen and (max-width: 559px) {
    /* Stack the card vertically: image on top, then the title, then the tag +
       comment count (the sibling .relatedtag copy below the row). */
    .relatedrow {
        flex-direction: column;
    }

    .themonicthumb {
        padding-bottom: 0;
    }

    /* Replicate the in-post image effect (#content .entry-content img): the
       image fills its content column — no viewport breakout — with a 15px
       radius. Same declarations as the post-content rule so the two match. */
    .themonicthumb img {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 15px !important;
        border-radius: 15px;
    }

    .relatedcontent {
        padding: 5px 5px 20px 5px;
    }

    .relatedcontent > .relatedtag {
        display: none;
    }

    .relatedrow + .relatedtag {
        display: flex;
        /* Indent to line up with the title's 5px content-column padding. */
        padding-left: 5px;
        margin-top: 0;
        margin-bottom: 12px;
    }
}

#content .entry-content img {
    border-radius: 15px;
}

.themonicpt li img {
    border-radius: 10px !important;
}

#colophon {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}


/* ==========================================================================
   Text Selection Highlight — Sunlit Yellow
   ========================================================================== */

::selection {
    background-color: #ffd449;
    color: #1a1a1a;
}

::-moz-selection {
    background-color: #ffd449;
    color: #1a1a1a;
}

/* ==========================================================================
   Mobile Nav — Hide #menu-top at <=767px
   Parent theme's min-width:767px rule uses !important, colliding with the
   max-width:767px hide rule. Force #menu-top off so .selectnav stands alone.
   ========================================================================== */

@media screen and (max-width: 767px) {
    .themonic-nav ul#menu-top,
    .themonic-nav ul.nav-menu {
        display: none !important;
    }
}


/* ==========================================================================
   Mobile Menu Bar (<=767px) — logo, search icon, hamburger
   Replaces parent's centered-logo header and selectnav dropdown.
   ========================================================================== */

.cx-mobile-bar,
.cx-mobile-panel {
    display: none;
}

@media screen and (max-width: 767px) {
    .themonic-top-bar,
    .selectnav,
    .site-header {
        display: none !important;
    }

    .cx-mobile-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 14px;
        background: #ffffff;
        border-bottom: 1px solid #e1e1e1;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    }

    .cx-mobile-logo {
        display: flex;
        align-items: center;
        max-width: 60%;
        text-decoration: none;
    }

    .cx-mobile-logo img {
        max-height: 36px;
        width: auto;
        height: auto;
        display: block;
    }

    .cx-mobile-logo span {
        font-size: 18px;
        font-weight: 600;
        color: #333;
    }

    .cx-mobile-bar-actions {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    .cx-mobile-search-toggle,
    .cx-mobile-menu-toggle {
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 8px 10px;
        font-size: 20px;
        line-height: 1;
        color: #333;
    }

    .cx-mobile-search-toggle[aria-expanded="true"],
    .cx-mobile-menu-toggle[aria-expanded="true"],
    .cx-mobile-search-toggle:hover,
    .cx-mobile-menu-toggle:hover {
        color: #0099ff;
    }

    .cx-mobile-panel {
        display: block;
    }

    .cx-mobile-panel[hidden] {
        display: none;
    }

    .cx-mobile-search-panel {
        padding: 12px 14px;
        background: #f7f7f7;
        border-bottom: 1px solid #e1e1e1;
    }

    .cx-mobile-search-form {
        display: flex;
        width: 100%;
        margin-top: 71px;
    }

    .cx-mobile-search-input {
        flex: 1;
        min-width: 0;
        margin: 0;
        padding: 10px 12px;
        background: #ffffff;
        border: 1px solid #cccccc;
        border-right: none;
        border-radius: 4px 0 0 4px;
        font-size: 16px; /* >=16px prevents iOS Safari auto-zoom on focus */
        outline: none;
    }

    .cx-mobile-search-input:focus {
        border-color: #0099ff;
    }

    #respond form input[type="text"],
    #respond form textarea {
        font-size: 16px; /* >=16px prevents iOS Safari auto-zoom on focus */
    }

    .cx-mobile-search-submit {
        margin: 0;
        padding: 10px 18px;
        background: #0099ff;
        color: #ffffff;
        border: 1px solid #0099ff;
        border-radius: 0 4px 4px 0;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        white-space: nowrap;
    }

    .cx-mobile-search-submit:hover {
        background: #007acc;
        border-color: #007acc;
    }

    .cx-mobile-menu-panel {
        background: #ffffff;
    }

    /* When open, cover the viewport instead of pushing content down. */
    body.cx-menu-open {
        overflow: hidden;
    }

    body.cx-menu-open .cx-mobile-bar {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1001;
    }

    body.cx-menu-open .cx-mobile-menu-panel {
        position: fixed;
        top: 71px;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1000;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* CSS-drawn hamburger that animates smoothly into an X. */
    .cx-mobile-menu-toggle-icon {
        position: relative;
        display: inline-block;
        width: 20px;
        height: 16px;
        vertical-align: middle;
    }

    .cx-mobile-menu-toggle-icon span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background: currentColor;
        border-radius: 1px;
        transition: transform 0.3s ease, opacity 0.2s ease, top 0.3s ease;
    }

    .cx-mobile-menu-toggle-icon span:nth-child(1) { top: 0; }
    .cx-mobile-menu-toggle-icon span:nth-child(2) { top: 7px; }
    .cx-mobile-menu-toggle-icon span:nth-child(3) { top: 14px; }

    .cx-mobile-menu-toggle[aria-expanded="true"] .cx-mobile-menu-toggle-icon span:nth-child(1) {
        top: 7px;
        transform: rotate(45deg);
    }

    .cx-mobile-menu-toggle[aria-expanded="true"] .cx-mobile-menu-toggle-icon span:nth-child(2) {
        opacity: 0;
    }

    .cx-mobile-menu-toggle[aria-expanded="true"] .cx-mobile-menu-toggle-icon span:nth-child(3) {
        top: 7px;
        transform: rotate(-45deg);
    }

    .cx-mobile-menu-panel ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .cx-mobile-menu-panel li {
        position: relative;
    }

    .cx-mobile-menu-panel li:last-child {
        border-bottom: none;
    }

    .cx-mobile-menu-panel li a {
        display: block;
        position: relative;
        padding: 20px 40px 20px 30px;
        color: #333;
        text-decoration: none;
        font-size: 20px;
        font-family: 'Merriweather', arial;
    }

    .cx-mobile-menu-panel li:first-child a {
        padding-top: 40px;
    }

    .cx-mobile-menu-panel li:first-child a::after,
    .cx-mobile-menu-panel li:first-child a::before {
        top: calc(50% + 10px);
    }

    .cx-mobile-menu-panel li a::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 40px;
        width: 10px;
        height: 10px;
        border-right: 2px solid #999;
        border-bottom: 2px solid #999;
        transform: translateY(-65%) rotate(-45deg);
        transition: border-color 0.2s ease;
    }

    /* Submenu parents carry the +/- on a dedicated toggle button (injected by
       mobile-nav.js), so drop the parent link's own chevron. */
    .cx-mobile-menu-panel li.menu-item-has-children > a::after {
        display: none;
    }

    /* The +/- toggle button: sits on the right of the parent row, leaving the
       link itself tappable for navigation. */
    .cx-submenu-toggle {
        position: absolute;
        top: 0;
        right: 0;
        width: 60px;
        height: 100%;
        padding: 0;
        margin: 0;
        background: none;
        border: none;
        cursor: pointer;
        -webkit-appearance: none;
        appearance: none;
    }

    /* "+" — horizontal stroke (::before) crosses vertical stroke (::after). */
    .cx-submenu-toggle::before,
    .cx-submenu-toggle::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 40px;
        background: #999;
        transition: background-color 0.2s ease, opacity 0.2s ease;
    }

    .cx-submenu-toggle::before {
        width: 12px;
        height: 2px;
        transform: translate(50%, -50%);
    }

    .cx-submenu-toggle::after {
        width: 2px;
        height: 12px;
        transform: translate(50%, -50%);
    }

    /* Expanded → hide the vertical stroke, leaving "-". */
    .cx-submenu-toggle[aria-expanded="true"]::after {
        opacity: 0;
    }

    .cx-mobile-menu-panel li a:hover::after,
    .cx-mobile-menu-panel .current-menu-item > a::after,
    .cx-mobile-menu-panel .current-menu-ancestor > a::after {
        border-color: #0099ff;
    }

    .cx-submenu-toggle:hover::before,
    .cx-submenu-toggle:hover::after,
    .cx-mobile-menu-panel .current-menu-item > .cx-submenu-toggle::before,
    .cx-mobile-menu-panel .current-menu-item > .cx-submenu-toggle::after,
    .cx-mobile-menu-panel .current-menu-ancestor > .cx-submenu-toggle::before,
    .cx-mobile-menu-panel .current-menu-ancestor > .cx-submenu-toggle::after {
        background: #0099ff;
    }

    .cx-mobile-menu-panel li a:hover,
    .cx-mobile-menu-panel .current-menu-item > a,
    .cx-mobile-menu-panel .current-menu-ancestor > a {
        color: #0099ff;
    }

    /* Sub-menus stay collapsed until the +/- toggle opens them. JS sets
       max-height to the measured scrollHeight so the reveal slides. */
    .cx-mobile-menu-panel .sub-menu {
        background: rgba(0, 0, 0, 0.04);
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.3s ease;
    }

    .cx-mobile-menu-panel .sub-menu li a {
        padding-left: 32px;
        font-size: 19px;
    }
}

.relatedposts p {
    text-align: center;
    padding-top: 10px;
}


/* ==========================================================================
   Desktop (>=960px) — Site Spacing
   Empty scaffold mirroring the parent theme's `body .site` rule at this
   breakpoint; add your own padding / margin-bottom values below.
   ========================================================================== */

@media screen and (min-width: 960px) {
    body .site {
        margin-top: -8px;
    }
}
