@media (min-width: 992px) {
    .navbar .navbar-header .navbar-brand img { width: auto; max-height: 70px; }
    .header-filter { background-position: top center; }
    .main-raised { margin: -60px 60px 0; }
    .row.hestia-about-content { max-width: 80%; margin: auto; }
    .navbar .navbar-nav > li a { font-weight: bold; font-size: 13px; font-family: 'Open Sans', sans-serif !important; }
    .subscribe-line { padding: 125px 0; }
}

.hestia-top-bar { background-image: linear-gradient(45deg, #405de6, #5851db, #850035, #850035); }

.btn, .btn-primary { background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035); border-radius: 25px; }

.wrapper { background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #fd1d1d); }

h2.purple, h3.purple, h4.purple { color: #673AB7; }

.subscribe-line.subscribe-line-image:after { background-image: linear-gradient(45deg, #405de6, #850035, transparent); }

footer.footer.footer-black { background-image: linear-gradient(to right, #850035 0%, #405de6 100%); }
footer.footer.footer-black a { font-weight: 600; font-size: 14px; }

.page:not(.home) .wrapper .main .blog-post, body:not(.home) .wrapper .main .hestia-blogs { border-top: 10px solid transparent; border-image: linear-gradient(to right, #850035 0%, #405de6 100%); border-image-slice: 1; }

#pmpro_levels_table .pmpro_btn { background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035); color: #fff; border-radius: 25px; }

body.custom-background { background-color: #850035; }

img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; }

::root { --hestia-primary-color: #850035; }

h1, h2, h3, h4, h5, h6, .hestia-title, .hestia-title.title-in-content, p.meta-in-content, .info-title, .card-title, .footer, .navbar, .main, .content, .category, .card-description, .blog-item-title-link, .footer-menu, .subscribe-description, .copyright {
    font-family: 'Open Sans', sans-serif !important;
}
body, ul, .tooltip-inner { font-family: 'Open Sans', sans-serif !important; } 

/* Make top-bar Facebook and Email links white */
.hestia-top-bar .nav li a[title="Facebook"],
.hestia-top-bar .nav li a[title="Instagram"],
.hestia-top-bar .nav li a[title="Email"] {
    color: #fff !important;
}

/* Footer links: smaller font, less spacing */
.footer .footer-menu li a {
    font-size: 12px !important;
    margin-right: 10px !important;
    padding-right: 0 !important;
    color: #fff !important;
}
.footer .footer-menu li:last-child a {
    margin-right: 0 !important;
}

/* Remove scroll-up button if any custom style remains */
.hestia-scroll-to-top { display: none !important; }

/* Ensure copyright is always visible */
.copyright.pull-right {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Remove parallax effect override */
[data-parallax] { background-attachment: initial !important; }

/* Facebook SDK Layout Protection - Only hide problematic tracking elements */
/* Hide only Facebook internal tracking elements, not user-facing content */
[id^="u_1_"]:not(.fb-page):not(.fb-like):not(.fb-share-button):not(.fb-comments),
.fb_iframe_widget iframe[style*="position: absolute"][style*="top: -9999px"] {
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    z-index: -1 !important;
    pointer-events: none !important;
}

/* Ensure main content stays in proper layout */
.wrapper,
.main,
.container,
.row,
.col-md-* {
    position: relative !important;
    z-index: 1 !important;
}

/* Protect header and footer from Facebook interference */
.header,
.footer {
    position: relative !important;
    z-index: 10 !important;
}

/* Allow Facebook page plugin and social buttons to display normally */
.fb-page,
.fb-like,
.fb-share-button,
.fb-comments,
.fb_iframe_widget {
    position: relative !important;
    z-index: 5 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Larger font for role label on contact cards */
.info-title.contact-role {
    font-size: 26px !important;
}

/* Ensure Facebook page plugin is properly sized */
.fb-page iframe {
    width: 100% !important;
    max-width: 500px !important;
    height: 600px !important;
    border: none !important;
    overflow: hidden !important;
}

/* Ensure top bar is always visible */
.hestia-top-bar {
    display: block !important;
    height: 40px !important;
    max-height: 40px !important;
    overflow: visible !important;
}

.hestia-top-bar .col-md-6.pull-right,
.hestia-top-bar .col-md-12.pull-right {
    display: block !important;
    text-align: right !important;
}

.hestia-top-bar .nav {
    display: block !important;
}

.hestia-top-bar .nav li {
    display: inline-block !important;
} 

/* Style for Stripe Membership Buttons */
.stripe-button {
    display: inline-block;
    padding: 15px 35px;
    font-size: 18px;
    font-weight: 600;
    color: #fff !important;
    background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035);
    border: none;
    border-radius: 25px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.10);
    text-decoration: none !important;
    transition: background 0.3s, box-shadow 0.3s, transform 0.2s;
    cursor: pointer;
    margin: 20px 0;
}
.stripe-button:hover, .stripe-button:focus {
    background-image: linear-gradient(45deg, #850035, #e1306c, #833ab4, #405de6);
    box-shadow: 0 6px 20px rgba(0,0,0,0.18);
    transform: translateY(-2px) scale(1.03);
    color: #fff !important;
    text-decoration: none !important;
}

/* Ensure hero title and subtitle use Open Sans */
.big-title-slider-content .hestia-title,
.big-title-slider-content .sub-title {
    font-family: 'Open Sans', sans-serif !important;
}

/* Consistent styling for social embeds */
.social-embed { text-align: center; }
.social-embed iframe,
.social-embed .fb-page,
.social-embed .fb-page iframe {
    width: 100% !important;
    max-width: 500px !important;
    height: 600px !important;
    border: none !important;
}
@media (max-width: 991px) {
    .social-embed iframe,
    .social-embed .fb-page,
    .social-embed .fb-page iframe { height: 520px !important; }
}

/* Improved social icon links under contact section */
.social-icon-links { margin-top: 10px; }
.social-icon-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-right: 10px;
    color: #fff !important;
    border-radius: 50%;
    background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035);
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    transition: transform .15s ease, box-shadow .2s ease; 
    text-decoration: none !important;
}
.social-icon-link:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,0,0,0.2); }
.social-icon-link i { font-size: 22px; line-height: 1; }

/* Join card styling */
.join-card {
    max-width: 520px;
    margin: 20px auto 0;
    padding: 28px 28px 34px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(0,0,0,0.12);
    border: 1px solid rgba(0,0,0,0.06);
    position: relative;
    overflow: hidden;
}
.join-card:before {
    content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px;
    background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035);
}
.join-title { font-size: 28px; margin-top: 10px; }
.join-subtitle { color: #6c757d; margin: 8px 0 16px; }
.price-pill {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    background-image: linear-gradient(45deg, #405de6, #5851db, #833ab4, #c13584, #e1306c, #850035);
}
.join-card .stripe-button { padding: 14px 36px; font-size: 17px; }
.secure-note { margin-top: 8px; font-size: 12px; color: #6c757d; }
