/* =========================================================
 * RankwellPress — Complete Layout Styles v3.4.0
 * Footer + Grid + Sidebar + Dark Mode + Alignment + Ads
 * + Premium widget containment (sidebar + footer)
 * ========================================================= */


/* ============================================
 * 0. GLOBAL RESET — AdSense-safe
 * ============================================ */

*,
*::before,
*::after {
    box-sizing: border-box;
}

body,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
ul, ol, dl, dd, figure,
hr, fieldset, legend,
button, input, textarea, select {
    margin: 0;
    padding: 0;
}

html {
    overflow-x: hidden;
    width: 100%;
}

body {
    width: 100%;
    position: relative;
    overflow-x: clip;
}

body > ins.adsbygoogle,
body > .adsbygoogle,
body > iframe[id^="aswift"] {
    position: relative;
    z-index: 2147483646;
}

body.rwp-no-sticky-header .rwp-header {
    position: static !important;
    top: auto !important;
}


/* ============================================
 * 1. FOOTER STYLES — Region-Based
 * ============================================ */

.rwp-footer {
    background-color: var(--rw-footer-bg, #0f1e33);
    color: var(--rw-footer-text, #9ca3af);
    margin-top: auto;
    width: 100%;
}

.rwp-footer-region {
    width: 100%;
}

.rwp-footer-heading {
    color: var(--rw-footer-heading, #ffffff);
    font-size: 1.125rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    margin: 0 0 calc(var(--rw-space-5, 1.5rem) * 0.5);
    padding: 0;
}

/* ── 1a. Widget Columns ─────────────────────────── */
.rwp-footer-widgets {
    padding-top: calc(var(--rw-space-8, 3rem) * 0.75);
    padding-bottom: calc(var(--rw-space-6, 2rem) * 0.75);
}

.rwp-footer-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: calc(var(--rw-space-5, 1.5rem) * 0.75);
    min-width: 0;
}

.rwp-footer-grid.rwp-columns-1 { grid-template-columns: 1fr; }
.rwp-footer-grid.rwp-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.rwp-footer-grid > * {
    min-width: 0;
    max-width: 100%;
}

@media (max-width: 640px) {
    .rwp-footer-grid.rwp-columns-2 { grid-template-columns: 1fr; }
}

/* ── 1b. Widget Background — Inherit Footer ─────── */
.rwp-footer .widget {
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 calc(var(--rw-space-5, 1.5rem) * 0.75) 0;
    color: inherit;
    font-size: inherit;
    min-width: 0;
    max-width: 100%;
}

.rwp-footer .widget-title,
.rwp-footer .widgettitle,
.rwp-footer h2.widget-title,
.rwp-footer h3.widget-title,
.rwp-footer h4.widget-title {
    color: var(--rw-footer-heading, #ffffff);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-align: left;
    margin: 0 0 calc(var(--rw-space-4, 1rem) * 0.75);
    padding: 0 0 calc(var(--rw-space-2, 0.5rem) * 0.5);
    border: none;
    position: relative;
}

.rwp-footer .widget-title::after,
.rwp-footer .widgettitle::after {
    display: none !important;
}

.rwp-footer .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rwp-footer .widget ul li {
    color: var(--rw-footer-text, #9ca3af);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    padding: calc(var(--rw-space-2, 0.5rem) * 0.5) 0;
    margin: 0;
    display: block;
}

.rwp-footer .widget ul li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.rwp-footer .widget a,
.rwp-footer .widget a:visited {
    color: var(--rw-footer-text, #9ca3af);
    text-decoration: none;
    transition: color 0.2s ease;
}

.rwp-footer .widget a:hover,
.rwp-footer .widget a:focus {
    color: var(--rw-footer-heading, #ffffff);
    text-decoration: none;
}

.rwp-footer .widget p,
.rwp-footer .widget span,
.rwp-footer .widget div,
.rwp-footer .widget label,
.rwp-footer .widget li {
    color: var(--rw-footer-text, #9ca3af);
}

.rwp-footer .widget h1,
.rwp-footer .widget h2,
.rwp-footer .widget h3,
.rwp-footer .widget h4,
.rwp-footer .widget h5,
.rwp-footer .widget h6 {
    color: var(--rw-footer-heading, #ffffff);
}

.rwp-footer .widget img {
    max-width: 100%;
    height: auto;
    opacity: 1;
}

.rwp-footer .widget input[type="text"],
.rwp-footer .widget input[type="email"],
.rwp-footer .widget input[type="search"],
.rwp-footer .widget input[type="url"],
.rwp-footer .widget textarea,
.rwp-footer .widget select {
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--rw-footer-heading, #ffffff);
    padding: 8px 12px;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
}

.rwp-footer .widget input::placeholder,
.rwp-footer .widget textarea::placeholder {
    color: var(--rw-footer-text, #9ca3af);
    opacity: 0.7;
}

.rwp-footer .widget input:focus,
.rwp-footer .widget textarea:focus,
.rwp-footer .widget select:focus {
    outline: none;
    border-color: var(--rw-footer-accent, #0d7c3e);
    background-color: rgba(255, 255, 255, 0.08);
}

.rwp-footer .widget button,
.rwp-footer .widget input[type="submit"],
.rwp-footer .widget .button {
    background-color: var(--rw-footer-accent, #0d7c3e);
    color: #ffffff;
    border: none;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: background-color 0.2s ease;
}

.rwp-footer .widget button:hover,
.rwp-footer .widget input[type="submit"]:hover,
.rwp-footer .widget .button:hover {
    background-color: color-mix(in srgb, var(--rw-footer-accent, #0d7c3e) 85%, black);
}

.rwp-footer .widget .tagcloud a,
.rwp-footer .widget .cat-item a,
.rwp-footer .widget .wp-tag-cloud a {
    display: inline-block;
    padding: 4px 10px;
    margin: 2px;
    background-color: rgba(255, 255, 255, 0.05);
    border-radius: 4px;
    font-size: 0.85rem !important;
}

.rwp-footer .widget .tagcloud a:hover,
.rwp-footer .widget .cat-item a:hover {
    background-color: var(--rw-footer-accent, #0d7c3e);
    color: #ffffff;
}

.rwp-footer .widget .recentcomments,
.rwp-footer .widget .rpwwt-widget li,
.rwp-footer .widget ul li {
    background: transparent !important;
    border-left: none !important;
    padding-left: 0 !important;
}

/* Don't apply the footer ul li border styling inside premium cards */
.rwp-footer .rwp-premium-trending__card ul,
.rwp-footer .rwp-premium-related__card ul,
.rwp-footer-widgets .rwp-premium-trending__card ul,
.rwp-footer-widgets .rwp-premium-related__card ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rwp-footer .rwp-premium-trending__card ul li,
.rwp-footer .rwp-premium-related__card ul li,
.rwp-footer-widgets .rwp-premium-trending__card ul li,
.rwp-footer-widgets .rwp-premium-related__card ul li {
    border-bottom: none !important;
    padding: 0 !important;
    margin: 0;
}

.rwp-footer .widget.widget_search form {
    display: flex;
    gap: 8px;
}

.rwp-footer .widget.widget_search input[type="search"] {
    flex: 1;
}

.rwp-footer .widget_calendar table {
    width: 100%;
    border-collapse: collapse;
}

.rwp-footer .widget_calendar th,
.rwp-footer .widget_calendar td {
    color: var(--rw-footer-text, #9ca3af);
    padding: 4px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.rwp-footer .widget_calendar caption {
    color: var(--rw-footer-heading, #ffffff);
    margin-bottom: 8px;
    font-weight: 600;
}

/* ── 1c. Brand Block ────────────────────────────── */
.rwp-footer-brand {
    padding: calc(var(--rw-space-7, 2.5rem) * 0.75) 0;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.rwp-footer-brand-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0;
}

.rwp-footer-brand-logo {
    display: inline-block;
    text-decoration: none;
    line-height: 0;
}

.rwp-footer-brand-logo img {
    display: block;
    max-height: 60px;
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    margin: 0 auto;
    opacity: 1;
}

@media (max-width: 640px) {
    .rwp-footer-brand-logo img {
        max-height: 44px;
    }
}

/* ── 1d. About Us ───────────────────────────────── */
.rwp-footer-about {
    padding: calc(var(--rw-space-7, 2.5rem) * 0.75) 0;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.rwp-footer-about-text {
    color: var(--rw-footer-text, #9ca3af);
    font-size: 0.95rem;
    line-height: 1.7;
    max-width: 640px;
    margin: 0 auto;
    text-align: center;
}

.rwp-footer-about-contact {
    color: var(--rw-footer-text, #9ca3af);
    font-size: 0.95rem;
    line-height: 1.7;
    margin: calc(var(--rw-space-4, 1rem) * 0.75) auto 0;
    text-align: center;
}

.rwp-footer-about-contact a {
    color: var(--rw-footer-heading, #ffffff);
    text-decoration: none;
    border-bottom: 1px solid var(--rw-footer-accent, #0d7c3e);
    transition: border-color 0.2s ease, color 0.2s ease;
}

.rwp-footer-about-contact a:hover {
    color: var(--rw-footer-accent, #0d7c3e);
    border-bottom-color: var(--rw-footer-heading, #ffffff);
}

/* ── 1e. Follow Us ──────────────────────────────── */
.rwp-footer-follow {
    padding: calc(var(--rw-space-7, 2.5rem) * 0.75) 0;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.rwp-footer-social-links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: calc(var(--rw-space-3, 0.75rem) * 0.75);
    margin: 0;
    padding: 0;
}

.rwp-footer-follow .rwp-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 0;
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.2s ease, filter 0.2s ease;
    background-color: rgba(255, 255, 255, 0.08);
}

.rwp-footer-follow .rwp-social-facebook  { background-color: #1877F2; }
.rwp-footer-follow .rwp-social-twitter   { background-color: #000000; }
.rwp-footer-follow .rwp-social-instagram { background-color: #E1306C; }
.rwp-footer-follow .rwp-social-youtube   { background-color: #FF0000; }
.rwp-footer-follow .rwp-social-linkedin  { background-color: #0A66C2; }
.rwp-footer-follow .rwp-social-whatsapp  { background-color: #25D366; }
.rwp-footer-follow .rwp-social-telegram  { background-color: #0088CC; }
.rwp-footer-follow .rwp-social-tiktok    { background-color: #000000; }
.rwp-footer-follow .rwp-social-pinterest { background-color: #BD081C; }
.rwp-footer-follow .rwp-social-reddit    { background-color: #FF4500; }

.rwp-footer-follow .rwp-social-icon:hover {
    transform: translateY(-2px);
    filter: brightness(1.1);
}

.rwp-footer-follow .rwp-social-icon svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
}

@media (max-width: 480px) {
    .rwp-footer-follow .rwp-social-icon {
        width: 44px;
        height: 44px;
    }
    .rwp-footer-follow .rwp-social-icon svg {
        width: 20px;
        height: 20px;
    }
}


/* ============================================
   1f. MENU STRIP + BOTTOM BAR
   ============================================ */

.rwp-footer-menu-strip {
    width: 100%;
    box-sizing: border-box;
    background-color: transparent;
    background-image: none;
    text-align: center;
    margin: 0;
    padding: calc(var(--rw-space-5, 1.5rem) * 0.75) 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.rwp-footer-menu-strip .rwp-container {
    padding-top: 0;
    padding-bottom: 0;
}

.rwp-footer-menu-strip .rwp-footer-menu-container {
    display: block;
    width: 100%;
    text-align: center;
}

.rwp-footer-menu-strip .rwp-footer-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: calc(var(--rw-space-4, 1rem) * 0.85);
    list-style: none;
    padding: 0;
    margin: 0;
}

.rwp-footer-menu-strip .rwp-footer-menu li {
    margin: 0;
    padding: 0;
}

.rwp-footer-menu-strip .rwp-footer-menu a {
    color: var(--rw-footer-text, #9ca3af);
    text-decoration: none;
    font-size: 0.95rem;
    font-weight: 500;
    transition: color 0.2s ease;
    opacity: 0.9;
}

.rwp-footer-menu-strip .rwp-footer-menu a:hover {
    color: var(--rw-footer-heading, #ffffff);
    text-decoration: underline;
    text-underline-offset: 4px;
    opacity: 1;
}

/* ── Bottom bar — green copyright strip ─────────── */
.rwp-footer-bottom {
    width: 100%;
    box-sizing: border-box;
    background-color: var(--rw-footer-bottom-bg, #0d7c3e);
    text-align: center;
    margin: 0;
    border: none;
}

.rwp-footer-bottom .rwp-container {
    padding-top: calc(var(--rw-space-4, 1rem) * 1.25);
    padding-bottom: calc(var(--rw-space-4, 1rem) * 1.25);
}

/* ── Single unified bottom bar layout ── */
.rwp-footer-bottom-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    color: var(--rw-footer-bottom-text-color, #ffffff);
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.3px;
    width: 100%;
    margin: 0 auto;
}

.rwp-copyright {
    margin: 0;
    color: inherit;
    text-align: left;
    line-height: 1.5;
    word-break: break-word;
}

.rwp-copyright a,
.rwp-copyright a:link,
.rwp-copyright a:visited,
.rwp-copyright a:active,
.rwp-copyright a:focus {
    color: #ffffff !important;
    background-color: transparent !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5) !important;
    opacity: 1 !important;
}

.rwp-copyright a:hover,
.rwp-copyright a:focus-visible {
    color: #ffffff !important;
    border-bottom-color: #ffffff !important;
    outline: 2px solid rgba(255, 255, 255, 0.7);
    outline-offset: 2px;
    border-radius: 2px;
}

/* ── Credit block (single instance) ── */
.rwp-footer-credit {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--rw-footer-bottom-text-color, #ffffff);
    font-size: 0.9em;
    line-height: 1.4;
    text-align: right;
    white-space: nowrap;
}

.rwp-footer-credit a,
.rwp-footer-credit a:link,
.rwp-footer-credit a:visited {
    color: var(--rw-footer-bottom-text-color, #ffffff) !important;
    text-decoration: none;
    font-weight: 600;
    opacity: 0.9;
    transition: opacity 0.2s ease, text-decoration 0.2s ease;
}

.rwp-footer-credit a:hover,
.rwp-footer-credit a:focus,
.rwp-footer-credit a:focus-visible {
    color: var(--rw-footer-bottom-text-color, #ffffff) !important;
    opacity: 1;
    text-decoration: underline;
    outline: 2px solid currentColor;
    outline-offset: 2px;
    border-radius: 2px;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .rwp-footer-menu-strip {
        padding: calc(var(--rw-space-5, 1.5rem) * 0.5) 0;
    }
    .rwp-footer-menu-strip .rwp-footer-menu {
        gap: calc(var(--rw-space-4, 1rem) * 0.5);
    }
    .rwp-footer-menu-strip .rwp-footer-menu a {
        font-size: 0.8125rem;
    }

    .rwp-footer-bottom-inner {
        flex-direction: column;
        text-align: center;
        gap: 6px;
        font-size: 0.8125rem;
    }

    .rwp-copyright {
        text-align: center;
    }

    .rwp-footer-credit {
        text-align: center;
        white-space: normal;
    }
}

/* ── 1g. Legacy footer classes ──────────────────── */
.rwp-footer-social-nav {
    background-color: transparent;
    padding: calc(var(--rw-space-5, 1.5rem) * 0.5) 0;
    text-align: center;
    margin: 0;
    border: none;
}

.rwp-footer-social-nav .rwp-footer-social-links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: calc(var(--rw-space-3, 0.75rem) * 0.5);
    margin-bottom: calc(var(--rw-space-4, 1rem) * 0.5);
    padding: 0;
}

.rwp-footer-social-nav .rwp-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 0;
    color: #ffffff;
    text-decoration: none;
    transition: all 0.3s ease;
    background-color: rgba(255, 255, 255, 0.1);
}

.rwp-footer-social-nav .rwp-footer-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: calc(var(--rw-space-4, 1rem) * 0.5);
    list-style: none;
    padding: 0;
    margin: 0;
}

.rwp-footer-social-nav .rwp-footer-menu a {
    color: var(--rw-footer-text, #9ca3af);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    transition: color 0.2s ease;
}

.rwp-footer-social-nav .rwp-footer-menu a:hover {
    color: var(--rw-footer-heading, #ffffff);
}

.rwp-footer-menu-centered { justify-content: center !important; }
.rwp-footer-menu-section {
    padding: calc(var(--rw-space-5, 1.5rem) * 0.3) 0;
    text-align: center;
}

.rwp-footer .rwp-title-underline { color: var(--rw-footer-heading, #ffffff); }
.rwp-footer .rwp-title-underline::after {
    background: linear-gradient(90deg,
        var(--rw-footer-accent, #0d7c3e) 0%,
        color-mix(in srgb, var(--rw-footer-accent, #0d7c3e) 20%, transparent) 100%);
}
.rwp-footer .rwp-title-border {
    color: var(--rw-footer-heading, #ffffff);
    border-left-color: var(--rw-footer-accent, #0d7c3e);
}
.rwp-footer .rwp-title-between-lines { color: var(--rw-footer-heading, #ffffff); }
.rwp-footer .rwp-title-between-lines::before,
.rwp-footer .rwp-title-between-lines::after {
    background: linear-gradient(90deg,
        transparent 0%,
        var(--rw-footer-accent, #0d7c3e) 50%,
        transparent 100%);
}
.rwp-footer .rwp-title-slant { color: var(--rw-footer-heading, #ffffff); }
.rwp-footer .rwp-title-slant::before { background-color: var(--rw-footer-accent, #0d7c3e); }


/* ============================================
 * 2. BACK TO TOP BUTTON
 * ============================================ */

.rwp-back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: var(--rw-footer-accent, #0d7c3e);
    color: #ffffff;
    border: 2px solid transparent;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s, background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
    box-shadow: var(--rw-shadow-md, 0 4px 12px rgba(0,0,0,0.08));
    text-decoration: none;
}

.rwp-back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.rwp-back-to-top:hover {
    background-color: var(--rw-footer-bg, #0a5e2f);
    transform: translateY(-3px);
    box-shadow: var(--rw-shadow-hover, 0 8px 24px rgba(0,0,0,0.12));
}

.rwp-back-to-top svg {
    color: currentColor;
    fill: none;
    stroke: currentColor;
    width: 24px;
    height: 24px;
}

html[data-theme="dark"] .rwp-back-to-top {
    background-color: #ffffff;
    color: #0d7c3e;
    border: 2px solid #0d7c3e;
    box-shadow: 0 4px 12px rgba(255, 255, 255, 0.1);
}

html[data-theme="dark"] .rwp-back-to-top:hover {
    background-color: #0d7c3e;
    color: #ffffff;
    border-color: #ffffff;
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

@media (max-width: 768px) {
    .rwp-back-to-top {
        bottom: 20px;
        right: 20px;
        width: 40px;
        height: 40px;
    }

}
	/* ============================================
 * 2. BACK TO TOP BUTTON
 * ============================================ */

.rwp-back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: var(--rw-color-primary, #0d7c3e);
    color: #ffffff;
    border: 2px solid transparent;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s, background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
    box-shadow: var(--rw-shadow-md, 0 4px 12px rgba(0,0,0,0.08));
    text-decoration: none;
}

.rwp-back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.rwp-back-to-top:hover {
    background-color: color-mix(in srgb, var(--rw-color-primary, #0d7c3e) 85%, black);
    transform: translateY(-3px);
    box-shadow: var(--rw-shadow-hover, 0 8px 24px rgba(0,0,0,0.12));
}

.rwp-back-to-top svg {
    color: currentColor;
    fill: none;
    stroke: currentColor;
    width: 24px;
    height: 24px;
}

html[data-theme="dark"] .rwp-back-to-top {
    background-color: var(--rw-color-primary, #4ade80);
    color: #0f172a;
    border: 2px solid var(--rw-color-primary, #4ade80);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

html[data-theme="dark"] .rwp-back-to-top:hover {
    background-color: color-mix(in srgb, var(--rw-color-primary, #4ade80) 85%, black);
    color: #0f172a;
    border-color: var(--rw-color-primary, #4ade80);
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}

@media (max-width: 768px) {
    .rwp-back-to-top {
        bottom: 20px;
        right: 20px;
        width: 40px;
        height: 40px;
    }
}


/* ============================================
 * 3. GRID LAYOUT (Archive/Index/Search/Home)
 * ============================================ */

.rankwellpress-container {
    width: 100%;
    max-width: var(--rw-container-desktop, 1200px);
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .rankwellpress-container {
        padding: 0 15px;
    }
}

@media (max-width: 767px) {
    .rankwellpress-container {
        width: 100%;
        padding: 0 12px;
        box-sizing: border-box;
    }
}

.rankwellpress-main-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--rw-space-4, 1rem);
    margin-top: var(--rw-space-5, 1.5rem);
    margin-bottom: var(--rw-space-8, 3rem);
    min-width: 0;
}

.rankwellpress-main-layout > * {
    min-width: 0;
    max-width: 100%;
}

@media (min-width: 992px) {
    .rankwellpress-main-layout {
        grid-template-columns: minmax(0, 2fr) minmax(var(--rw-sidebar-width, 320px), 1fr);
        gap: var(--rw-space-5, 1.5rem);
    }
}

.rankwellpress-content-area {
    min-width: 0;
    max-width: 100%;
}

.rankwellpress-sidebar {
    position: relative;
    min-width: 0;
    max-width: 100%;
}

@media (min-width: 992px) {
    .rankwellpress-sidebar-inner {
        position: sticky;
        top: 100px;
        transition: top var(--rw-transition-standard, 0.3s ease);
        min-width: 0;
    }
}


/* ============================================
 * 4. SIDEBAR WIDGET STYLES — FLAT
 * ============================================ */

.rankwellpress-sidebar {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

/* Contain the entire chain so carousels can't push the column wide. */
.rankwellpress-sidebar,
.rankwellpress-sidebar-inner,
.rankwellpress-sidebar > *,
.rankwellpress-sidebar-inner > * {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.rankwellpress-sidebar .widget {
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    margin-bottom: 32px;
    min-height: 0;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

.rankwellpress-sidebar .widget:last-child {
    margin-bottom: 0;
}

.rankwellpress-sidebar .widget-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--rw-text-heading, #111827);
    margin: 0 0 20px 0;
    padding: 0;
    border: none;
    position: static;
}

.rankwellpress-sidebar .widget-title::after {
    display: none !important;
}

.rankwellpress-sidebar .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rankwellpress-sidebar .widget ul li {
    padding: 8px 0;
    border-bottom: none;
    color: var(--rw-text-body, #4b5563);
    display: block;
}

.rankwellpress-sidebar .widget ul li:last-child {
    padding-bottom: 0;
}

.rankwellpress-sidebar .widget ul li a {
    color: var(--rw-text-body, #4b5563);
    font-weight: 500;
    transition: color 0.2s ease;
    display: inline-block;
}

.rankwellpress-sidebar .widget ul li a:hover {
    color: var(--rw-color-primary, #0d7c3e);
}

.rankwellpress-sidebar .widget_text,
.rankwellpress-sidebar .widget_custom_html {
    padding: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

/* Shortcode wrapper inside sidebar must clip its contents */
.rankwellpress-sidebar .rkp-sc-widget,
.rankwellpress-sidebar .rankwellpress-shortcode-widget {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
}


/* ============================================
 * 5. SINGLE POST LAYOUT
 * ============================================ */

.single-post-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
}

.single-post-layout > * {
    min-width: 0;
    max-width: 100%;
}

.single-post-main {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.single-post-sidebar {
    min-width: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

@media (min-width: 992px) {
    .single-post-layout.has-sidebar-right { grid-template-columns: minmax(0, 1fr) 300px; }
    .single-post-layout.has-sidebar-left  { grid-template-columns: 300px minmax(0, 1fr); }
    .single-post-layout.has-sidebar-none  { grid-template-columns: 1fr; max-width: 800px; margin: 0 auto; }

    .single-post-sidebar.rwp-sidebar-sticky {
        position: sticky;
        top: 90px;
        align-self: flex-start;
        max-height: calc(100vh - 120px);
        overflow-y: auto;
    }
}

@media (max-width: 991px) {
    .single-post-layout,
    .single-post-layout.has-sidebar-left,
    .single-post-layout.has-sidebar-right,
    .single-post-layout.has-sidebar-none {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .single-post-sidebar.rwp-sidebar-sticky {
        position: static;
        max-height: none;
        overflow-y: visible;
    }
}

.single-post-main img,
.single-post-main iframe,
.single-post-main embed,
.single-post-main object,
.single-post-main video,
.single-post-main table,
.single-post-main pre,
.single-post-main code {
    max-width: 100%;
    height: auto;
    box-sizing: border-box;
}

.single-post-main table {
    display: block;
    overflow-x: auto;
}

.single-post-sidebar {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.single-post-sidebar .widget {
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    margin-bottom: 32px;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

.single-post-sidebar .widget:last-child {
    margin-bottom: 0;
}

.single-post-sidebar .widget-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--rw-text-heading, #111827);
    margin: 0 0 20px 0;
    padding: 0;
    border: none;
    position: static;
}

.single-post-sidebar .widget-title::after {
    display: none !important;
}

.single-post-sidebar .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.single-post-sidebar .widget ul li {
    padding: 8px 0;
    border-bottom: none;
}

.single-post-sidebar .widget ul li:last-child {
    padding-bottom: 0;
}

.single-post-sidebar .widget ul li a {
    color: var(--rw-text-body, #4b5563);
    font-weight: 500;
    transition: color 0.2s ease;
    display: inline-block;
}

.single-post-sidebar .widget ul li a:hover {
    color: var(--rw-color-primary, #0d7c3e);
}

.single-post-sidebar .rkp-sc-widget,
.single-post-sidebar .rankwellpress-shortcode-widget {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
}


/* ============================================
 * 6. DARK MODE
 * ============================================ */

.rwp-icon-sun { display: none; }
.rwp-icon-moon { display: block; }

html[data-theme="dark"] .rwp-icon-moon { display: none; }
html[data-theme="dark"] .rwp-icon-sun { display: block; }

html[data-theme="dark"] {
    --rw-bg-body: #0f172a !important;
    --rw-bg-content: #1e293b !important;
    --rw-bg-alt: #334155 !important;
    --rw-text-body: #cbd5e1 !important;
    --rw-text-muted: #94a3b8 !important;
    --rw-text-heading: #f8fafc !important;
    --rw-border-color: #334155 !important;
    --rw-border-light: #475569 !important;
    --rw-widget-title-color: #f8fafc !important;
    --rw-widget-list-title-color: #f8fafc !important;
    --rwp-mobile-icon-bg: #1e293b !important;
    --rwp-mobile-icon-text: #f8fafc !important;
}

html[data-theme="dark"] .post-content img,
html[data-theme="dark"] .single-content img,
html[data-theme="dark"] .rankwellpress-single-content img,
html[data-theme="dark"] .rankwellpress-sidebar img,
html[data-theme="dark"] .single-post-sidebar img {
    opacity: 0.85;
    transition: opacity 0.3s ease;
}

html[data-theme="dark"] .post-content img:hover,
html[data-theme="dark"] .single-content img:hover,
html[data-theme="dark"] .rankwellpress-single-content img:hover,
html[data-theme="dark"] .rankwellpress-sidebar img:hover,
html[data-theme="dark"] .single-post-sidebar img:hover {
    opacity: 1;
}

html[data-theme="dark"] .rwp-ad-leaderboard img,
html[data-theme="dark"] .rwp-ad-leaderboard iframe,
html[data-theme="dark"] ins.adsbygoogle {
    opacity: 1 !important;
    filter: none !important;
}


/* ============================================
 * 7. DARK MODE FIXES — Cards, Buttons
 * ============================================ */

html[data-theme="dark"] .rankwellpress-load-more-headlines,
html[data-theme="dark"] .rankwellpress-headlines-load-more button,
html[data-theme="dark"] .flexnews-load-more-container button,
html[data-theme="dark"] .rankwellpress-load-more-wrapper button {
    color: var(--rw-color-primary, #0d7c3e) !important;
}


/* ============================================
 * 8. WordPress CORE ALIGNMENT CLASSES
 * ============================================ */

.alignleft {
    float: left;
    margin-right: 1.5em;
    margin-bottom: 1.5em;
    max-width: 50%;
}

.alignright {
    float: right;
    margin-left: 1.5em;
    margin-bottom: 1.5em;
    max-width: 50%;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5em;
    text-align: center;
}

.alignwide {
    margin-left: -80px;
    margin-right: -80px;
    max-width: none;
}

.alignfull {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
}

@media (max-width: 768px) {
    .alignleft,
    .alignright {
        float: none;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .alignwide {
        margin-left: 0;
        margin-right: 0;
    }
}


/* =========================================================
 * 9. Leaderboard Ad (AdSense-safe)
 * ========================================================= */

.rwp-ad-leaderboard {
    width: 100%;
    max-width: 728px;
    margin: 20px auto;
    padding: 0;
    text-align: center;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.rwp-ad-leaderboard *,
.rwp-ad-leaderboard *::before,
.rwp-ad-leaderboard *::after {
    box-sizing: border-box;
}

.rwp-ad-leaderboard .rwp-ad-label {
    display: block;
    margin: 0 0 8px;
    color: #999999;
    font-size: 10px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.rwp-ad-leaderboard .rwp-ad-content {
    width: 100%;
    max-width: 728px;
    min-height: 90px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow-x: hidden;
    overflow-y: visible;
    position: relative;
}

.rwp-ad-leaderboard ins.adsbygoogle {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0;
}

.rwp-ad-leaderboard iframe {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin: 0 auto;
    padding: 0;
    border: 0;
}

.rwp-ad-leaderboard .rankwell-ad-placeholder {
    width: 100%;
    max-width: 728px;
    min-height: 90px;
    margin: 0 auto;
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: linear-gradient(135deg, #0066cc, #004499);
    border-radius: 8px;
    text-align: center;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.rwp-ad-leaderboard .rankwell-ad-placeholder-title {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
}

.rwp-ad-leaderboard .rankwell-ad-placeholder-subtitle {
    margin: 0;
    color: #ffd700;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 500;
}

.rwp-ad-leaderboard .rankwell-ad-placeholder-btn {
    display: inline-block;
    margin-top: 8px;
    padding: 6px 16px;
    background: #ff6600;
    color: #ffffff;
    border-radius: 4px;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.rwp-ad-leaderboard .rankwell-ad-placeholder-btn:hover {
    background: #e55c00;
    transform: translateY(-1px);
}

.rwp-ad-leaderboard .rankwell-ad-placeholder-btn:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}

html[data-theme="dark"] .rwp-ad-leaderboard .rwp-ad-label {
    color: #64748b;
}

html[data-theme="dark"] .rwp-ad-leaderboard .rankwell-ad-placeholder {
    background: linear-gradient(135deg, #1a3a6b, #0d1f44);
}

@media (max-width: 768px) {
    .rwp-ad-leaderboard {
        width: 100%;
        max-width: 100%;
        margin: 10px auto;
        padding: 0 10px;
    }
    .rwp-ad-leaderboard .rwp-ad-label {
        margin-bottom: 5px;
        font-size: 9px;
    }
    .rwp-ad-leaderboard .rwp-ad-content {
        width: 100%;
        max-width: 100%;
        min-height: 100px;
    }
    .rwp-ad-leaderboard[data-format="fixed-320x50"] .rwp-ad-content {
        min-height: 50px;
    }
    .rwp-ad-leaderboard ins.adsbygoogle {
        width: 100% !important;
        max-width: 100% !important;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder {
        width: 100%;
        max-width: 100%;
        min-height: 100px;
        padding: 10px 15px;
        border-radius: 6px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-title {
        font-size: 16px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-subtitle {
        font-size: 12px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-btn {
        padding: 4px 14px;
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .rwp-ad-leaderboard {
        margin: 8px auto;
        padding: 0 5px;
    }
    .rwp-ad-leaderboard .rwp-ad-content {
        min-height: 100px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder {
        min-height: 100px;
        padding: 10px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-title {
        font-size: 14px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-subtitle {
        font-size: 11px;
    }
}

@media (max-width: 359px) {
    .rwp-ad-leaderboard .rwp-ad-content {
        min-height: 90px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder {
        min-height: 90px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-title {
        font-size: 13px;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-subtitle {
        font-size: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rwp-ad-leaderboard .rankwell-ad-placeholder-btn {
        transition: none;
    }
    .rwp-ad-leaderboard .rankwell-ad-placeholder-btn:hover {
        transform: none;
    }
}


/* =========================================================
 * 10. FOOTER SOCIAL ICONS — IMMUNITY SHIELD
 * ========================================================= */

.rwp-footer .rwp-social-icon,
.rwp-footer .rwp-social-icon:link,
.rwp-footer .rwp-social-icon:visited,
.rwp-footer .rwp-social-icon:hover,
.rwp-footer .rwp-social-icon:focus,
.rwp-footer .rwp-social-icon:focus-visible,
.rwp-footer .rwp-social-icon:active,
.rwp-footer-follow .rwp-social-icon,
.rwp-footer-follow .rwp-social-icon:link,
.rwp-footer-follow .rwp-social-icon:visited,
.rwp-footer-follow .rwp-social-icon:hover,
.rwp-footer-follow .rwp-social-icon:focus,
.rwp-footer-follow .rwp-social-icon:focus-visible,
.rwp-footer-follow .rwp-social-icon:active,
.rwp-footer-social-nav .rwp-social-icon,
.rwp-footer-social-nav .rwp-social-icon:link,
.rwp-footer-social-nav .rwp-social-icon:visited,
.rwp-footer-social-nav .rwp-social-icon:hover,
.rwp-footer-social-nav .rwp-social-icon:focus,
.rwp-footer-social-nav .rwp-social-icon:focus-visible,
.rwp-footer-social-nav .rwp-social-icon:active {
    color: #ffffff !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-color: transparent !important;
    border-bottom: none !important;
}

.rwp-footer .rwp-social-icon[target="_blank"]::after,
.rwp-footer-follow .rwp-social-icon[target="_blank"]::after,
.rwp-footer-social-nav .rwp-social-icon[target="_blank"]::after {
    content: none !important;
    display: none !important;
}

.rwp-footer .rwp-social-icon svg,
.rwp-footer-follow .rwp-social-icon svg,
.rwp-footer-social-nav .rwp-social-icon svg {
    fill: currentColor !important;
    color: #ffffff !important;
}

.rwp-footer-follow .rwp-social-facebook,
.rwp-footer-social-nav .rwp-social-facebook { background-color: var(--rw-brand-facebook, #1877F2) !important; }
.rwp-footer-follow .rwp-social-twitter,
.rwp-footer-social-nav .rwp-social-twitter { background-color: var(--rw-brand-twitter, #000000) !important; }
.rwp-footer-follow .rwp-social-instagram,
.rwp-footer-social-nav .rwp-social-instagram { background-color: var(--rw-brand-instagram, #E1306C) !important; }
.rwp-footer-follow .rwp-social-youtube,
.rwp-footer-social-nav .rwp-social-youtube { background-color: var(--rw-brand-youtube, #FF0000) !important; }
.rwp-footer-follow .rwp-social-linkedin,
.rwp-footer-social-nav .rwp-social-linkedin { background-color: var(--rw-brand-linkedin, #0A66C2) !important; }
.rwp-footer-follow .rwp-social-whatsapp,
.rwp-footer-social-nav .rwp-social-whatsapp { background-color: var(--rw-brand-whatsapp, #25D366) !important; }
.rwp-footer-follow .rwp-social-telegram,
.rwp-footer-social-nav .rwp-social-telegram { background-color: var(--rw-brand-telegram, #0088CC) !important; }
.rwp-footer-follow .rwp-social-tiktok,
.rwp-footer-social-nav .rwp-social-tiktok { background-color: #000000 !important; }
.rwp-footer-follow .rwp-social-pinterest,
.rwp-footer-social-nav .rwp-social-pinterest { background-color: #BD081C !important; }
.rwp-footer-follow .rwp-social-reddit,
.rwp-footer-social-nav .rwp-social-reddit { background-color: #FF4500 !important; }

.rwp-footer .rwp-social-icon:hover,
.rwp-footer .rwp-social-icon:focus-visible,
.rwp-footer-follow .rwp-social-icon:hover,
.rwp-footer-follow .rwp-social-icon:focus-visible,
.rwp-footer-social-nav .rwp-social-icon:hover,
.rwp-footer-social-nav .rwp-social-icon:focus-visible {
    color: #ffffff !important;
    filter: brightness(1.15);
}


/* =========================================================
 * 11. SIDEBAR CONTAINMENT — Premium widgets / carousels
 * Fixes horizontal overflow when [rkp_trending] is placed
 * inside a sidebar, home page, or single post sidebar.
 * Root cause: flex/grid items default to min-width: auto, so
 * a carousel's content-width forces its ancestors wider than
 * the viewport. min-width: 0 + overflow:hidden breaks the chain.
 * ========================================================= */

/* ── Sidebar column itself ── */
.rankwellpress-sidebar,
.single-post-sidebar,
.rankwellpress-sidebar-inner,
.single-post-sidebar.rwp-sidebar-sticky {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* ── Widgets inside the sidebar ── */
.rankwellpress-sidebar > *,
.single-post-sidebar > *,
.rankwellpress-sidebar-inner > * {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* ── Shortcode wrapper ── */
.rankwellpress-sidebar .rkp-sc-widget,
.single-post-sidebar .rkp-sc-widget,
.rankwellpress-sidebar .rankwellpress-shortcode-widget,
.single-post-sidebar .rankwellpress-shortcode-widget {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
}

/* ── Trending widget inside sidebar — clip the carousel ── */
.rankwellpress-sidebar .rwp-premium-trending,
.rankwellpress-sidebar .rwp-premium-widget-trending,
.single-post-sidebar .rwp-premium-trending,
.single-post-sidebar .rwp-premium-widget-trending,
.rankwellpress-sidebar .rkp-premium-trending-widget,
.single-post-sidebar .rkp-premium-trending-widget {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
}

/* ── Scroller stays content-width inside the clipped wrapper ── */
.rankwellpress-sidebar .rwp-premium-trending__scroller,
.single-post-sidebar .rwp-premium-trending__scroller {
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    width: max-content;
    will-change: transform;
}

/* ── Cards — bounded width in sidebar ── */
.rankwellpress-sidebar .rwp-premium-trending__card,
.single-post-sidebar .rwp-premium-trending__card {
    flex: 0 0 auto;
    width: 240px;
    max-width: 80vw;
    box-sizing: border-box;
}

/* ── Generic safety — the main layout grid, both sidebars ── */
.widget-area,
.sidebar,
.rwp-sidebar,
.rkp-sidebar {
    min-width: 0;
    max-width: 100%;
}

.widget-area > *,
.sidebar > *,
.rwp-sidebar > *,
.rkp-sidebar > * {
    min-width: 0;
    max-width: 100%;
}

@media (max-width: 480px) {
    .rankwellpress-sidebar .rwp-premium-trending__card,
    .single-post-sidebar .rwp-premium-trending__card {
        width: 200px;
    }
    .rankwellpress-sidebar .rwp-premium-trending__scroller,
    .single-post-sidebar .rwp-premium-trending__scroller {
        gap: 12px;
    }
}


/* =========================================================
 * 12. FOOTER — Premium widget containment & dark glass
 * ========================================================= */

/* ── Contain the trending / posts widgets to their column ── */
.rwp-footer .rwp-premium-trending,
.rwp-footer .rwp-premium-widget-trending,
.rwp-footer .rwp-premium-widget--grid,
.rwp-footer-widgets .rwp-premium-trending,
.rwp-footer-widgets .rwp-premium-widget-trending,
.rwp-footer-widgets .rwp-premium-widget--grid,
.rwp-footer .rkp-premium-trending-widget,
.rwp-footer .rkp-premium-posts-widget,
.rwp-footer-widgets .rkp-premium-trending-widget,
.rwp-footer-widgets .rkp-premium-posts-widget {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
}

/* ── Scroller containment ── */
.rwp-footer .rwp-premium-trending__scroller,
.rwp-footer-widgets .rwp-premium-trending__scroller {
    display: flex;
    flex-wrap: nowrap;
    gap: 14px;
    width: max-content;
    will-change: transform;
}

.rwp-footer .rkp-premium-trending-widget__scroller,
.rwp-footer-widgets .rkp-premium-trending-widget__scroller {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

/* ── Card widths in footer ── */
.rwp-footer .rwp-premium-trending__card,
.rwp-footer-widgets .rwp-premium-trending__card {
    flex: 0 0 auto;
    width: 220px;
    max-width: 80vw;
    box-sizing: border-box;
}

.rwp-footer .rkp-premium-trending-widget__card,
.rwp-footer-widgets .rkp-premium-trending-widget__card {
    flex: 0 0 200px;
    max-width: 80vw;
    box-sizing: border-box;
}

/* ── Dark glass — card bodies ── */
.rwp-footer .rwp-premium-related__body,
.rwp-footer-widgets .rwp-premium-related__body,
.rwp-footer .rwp-premium-trending__body,
.rwp-footer-widgets .rwp-premium-trending__body,
.rwp-footer .rkp-premium-posts-widget__card-body,
.rwp-footer-widgets .rkp-premium-posts-widget__card-body,
.rwp-footer .rkp-premium-trending-widget__card-body,
.rwp-footer-widgets .rkp-premium-trending-widget__card-body {
    background: rgba(15, 23, 42, 0.65);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
}

@supports not (backdrop-filter: blur(1px)) {
    .rwp-footer .rwp-premium-related__body,
    .rwp-footer-widgets .rwp-premium-related__body,
    .rwp-footer .rwp-premium-trending__body,
    .rwp-footer-widgets .rwp-premium-trending__body,
    .rwp-footer .rkp-premium-posts-widget__card-body,
    .rwp-footer-widgets .rkp-premium-posts-widget__card-body,
    .rwp-footer .rkp-premium-trending-widget__card-body,
    .rwp-footer-widgets .rkp-premium-trending-widget__card-body {
        background: rgba(15, 23, 42, 0.92);
    }
}

/* ── Dark glass — titles ── */
.rwp-footer .rwp-premium-related__heading,
.rwp-footer .rwp-premium-related__heading a,
.rwp-footer-widgets .rwp-premium-related__heading,
.rwp-footer-widgets .rwp-premium-related__heading a,
.rwp-footer .rwp-premium-trending__heading,
.rwp-footer .rwp-premium-trending__heading a,
.rwp-footer-widgets .rwp-premium-trending__heading,
.rwp-footer-widgets .rwp-premium-trending__heading a,
.rwp-footer .rkp-premium-posts-widget__card-title,
.rwp-footer .rkp-premium-posts-widget__card-title a,
.rwp-footer-widgets .rkp-premium-posts-widget__card-title,
.rwp-footer-widgets .rkp-premium-posts-widget__card-title a,
.rwp-footer .rkp-premium-trending-widget__card-title,
.rwp-footer .rkp-premium-trending-widget__card-title a,
.rwp-footer-widgets .rkp-premium-trending-widget__card-title,
.rwp-footer-widgets .rkp-premium-trending-widget__card-title a {
    color: #f8fafc;
}

.rwp-footer .rwp-premium-related__heading a:hover,
.rwp-footer-widgets .rwp-premium-related__heading a:hover,
.rwp-footer .rwp-premium-trending__heading a:hover,
.rwp-footer-widgets .rwp-premium-trending__heading a:hover,
.rwp-footer .rkp-premium-posts-widget__card-title a:hover,
.rwp-footer-widgets .rkp-premium-posts-widget__card-title a:hover,
.rwp-footer .rkp-premium-trending-widget__card-title a:hover,
.rwp-footer-widgets .rkp-premium-trending-widget__card-title a:hover {
    color: var(--rw-footer-accent, #4ade80);
}

/* ── Dark glass — category pills ── */
.rwp-footer .rwp-premium-related__category,
.rwp-footer-widgets .rwp-premium-related__category,
.rwp-footer .rwp-premium-trending__category,
.rwp-footer-widgets .rwp-premium-trending__category,
.rwp-footer .rkp-premium-posts-widget__cat,
.rwp-footer .rkp-premium-trending-widget__cat,
.rwp-footer-widgets .rkp-premium-posts-widget__cat,
.rwp-footer-widgets .rkp-premium-trending-widget__cat {
    background: rgba(30, 41, 59, 0.7);
    color: var(--rw-footer-accent, #4ade80);
    border-color: color-mix(in srgb, var(--rw-footer-accent, #4ade80) 30%, transparent);
}

.rwp-footer .rwp-premium-related__category:hover,
.rwp-footer-widgets .rwp-premium-related__category:hover,
.rwp-footer .rwp-premium-trending__category:hover,
.rwp-footer-widgets .rwp-premium-trending__category:hover,
.rwp-footer .rkp-premium-posts-widget__cat:hover,
.rwp-footer .rkp-premium-trending-widget__cat:hover,
.rwp-footer-widgets .rkp-premium-posts-widget__cat:hover,
.rwp-footer-widgets .rkp-premium-trending-widget__cat:hover {
    background: var(--rw-footer-accent, #4ade80);
    color: #0f172a;
    border-color: var(--rw-footer-accent, #4ade80);
}

/* ── Dark glass — meta rows ── */
.rwp-footer .rwp-premium-related__meta,
.rwp-footer-widgets .rwp-premium-related__meta,
.rwp-footer .rkp-premium-posts-widget__meta,
.rwp-footer-widgets .rkp-premium-posts-widget__meta {
    color: #94a3b8;
    border-top-color: rgba(255, 255, 255, 0.08);
}

/* ── Dark glass — load more buttons ── */
.rwp-footer .rwp-premium-widget__load-more,
.rwp-footer-widgets .rwp-premium-widget__load-more,
.rwp-footer .rkp-premium-posts-widget__load-more,
.rwp-footer-widgets .rkp-premium-posts-widget__load-more {
    background: rgba(30, 41, 59, 0.65);
    color: var(--rw-footer-accent, #4ade80);
    border-color: color-mix(in srgb, var(--rw-footer-accent, #4ade80) 30%, transparent);
}

.rwp-footer .rwp-premium-widget__load-more:hover,
.rwp-footer .rwp-premium-widget__load-more:focus-visible,
.rwp-footer-widgets .rwp-premium-widget__load-more:hover,
.rwp-footer-widgets .rwp-premium-widget__load-more:focus-visible,
.rwp-footer .rkp-premium-posts-widget__load-more:hover,
.rwp-footer .rkp-premium-posts-widget__load-more:focus-visible,
.rwp-footer-widgets .rkp-premium-posts-widget__load-more:hover,
.rwp-footer-widgets .rkp-premium-posts-widget__load-more:focus-visible {
    background: var(--rw-footer-accent, #4ade80);
    color: #0f172a;
    border-color: var(--rw-footer-accent, #4ade80);
}

/* ── Dark glass — section titles (both namespaces) ── */
.rwp-footer .rkp-premium-section-title--glass .rkp-premium-section-title__head,
.rwp-footer-widgets .rkp-premium-section-title--glass .rkp-premium-section-title__head,
.rwp-footer .rwp-section-title--glass .rwp-section-title__main,
.rwp-footer-widgets .rwp-section-title--glass .rwp-section-title__main {
    background: rgba(30, 41, 59, 0.65);
    border-color: color-mix(in srgb, var(--rw-footer-accent, #4ade80) 26%, transparent);
}

.rwp-footer .rkp-premium-section-title--glass .rkp-premium-section-title__label,
.rwp-footer-widgets .rkp-premium-section-title--glass .rkp-premium-section-title__label,
.rwp-footer .rwp-section-title--glass .rwp-section-title__text,
.rwp-footer-widgets .rwp-section-title--glass .rwp-section-title__text {
    color: var(--rw-footer-accent, #4ade80);
}

.rwp-footer .rkp-premium-section-title__cta,
.rwp-footer-widgets .rkp-premium-section-title__cta,
.rwp-footer .rwp-section-title__view-all,
.rwp-footer-widgets .rwp-section-title__view-all {
    color: #94a3b8;
}

.rwp-footer .rkp-premium-section-title__cta:hover,
.rwp-footer-widgets .rkp-premium-section-title__cta:hover,
.rwp-footer .rwp-section-title__view-all:hover,
.rwp-footer-widgets .rwp-section-title__view-all:hover {
    color: var(--rw-footer-accent, #4ade80);
    background: color-mix(in srgb, var(--rw-footer-accent, #4ade80) 10%, transparent);
}

/* ── Mobile: card width ── */
@media (max-width: 480px) {
    .rwp-footer .rwp-premium-trending__card,
    .rwp-footer-widgets .rwp-premium-trending__card {
        width: 200px;
    }
    .rwp-footer .rkp-premium-trending-widget__card,
    .rwp-footer-widgets .rkp-premium-trending-widget__card {
        flex: 0 0 180px;
    }
}