/* ============================================================
   GLOBAL FIXES — Remove Mesmerize pseudo-elements
   ============================================================ */
.site::before,
.section::before,
.container::before,
.page-content::before,
.entry-content::before,
.bio-container::before,
.bio-section::before,
.bio-grid::before,
.partners-grid::before {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ============================================================
   GRID FIXES
   ============================================================ */
.bio-grid,
.partners-grid {
    display: grid !important;
    grid-auto-flow: row !important;
}

.bio-container,
.partners-container {
    padding-left: 0 !important;
    margin-left: 0 !important;
}

/* ============================================================
   HERO / HEADER FIXES
   ============================================================ */
.overlap-first-section #page-content,
.overlap-first-section .site-content,
.overlap-first-section .entry-content {
    padding-top: 90px !important;
    margin-top: 0 !important;
}

.page-header,
.hero-section,
.header-content,
#page-header {
    padding-top: 100px !important;
}

.page-header,
.header-content {
    position: static !important;
    top: auto !important;
    transform: none !important;
}

.header-content {
    margin-top: 100px !important;
}

/* Admin bar spacing */
html.admin-bar .page-header,
html.admin-bar .header-content,
html.admin-bar .hero-section {
    margin-top: 32px !important;
    padding-top: 80px !important;
    transform: none !important;
    top: 0 !important;
}

/* Restore hero spacing ONLY on hero pages */
.page-header::before,
.header-content::before,
.hero-section::before {
    content: "";
    display: block;
    height: 80px;
}

/* ============================================================
   HIDE ALL MESMERIZE FOOTER OUTPUT
   ============================================================ */
.site-footer,
.footer-simple,
.footer-contact-boxes,
.footer-content-lists,
.footer-content,
#footer,
.mesmerize-footer,
.site-info,
.footer-info,
#site-info,
#colophon {
    display: none !important;
}

/* ============================================================
   CUSTOM FOOTER LAYOUT
   ============================================================ */
.pista-footer {
    background: #000;
    color: #fff;
    padding: 40px 0 20px 0;
    margin-top: 40px;
    font-family: inherit;
}

.pista-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
}

.pista-footer-col {
    flex: 1;
    min-width: 220px;
}

.pista-footer-col h4 {
    margin-bottom: 10px;
    font-size: 16px;
    color: #fff;
}

.pista-footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.pista-footer-col ul li {
    margin-bottom: 6px;
}

.pista-footer-col a {
    color: #ccc;
    text-decoration: none;
}

.pista-footer-col a:hover {
    color: #fff;
}

.pista-social a {
    display: inline-block;
    margin-right: 10px;
    color: #ccc;
}

.pista-social a:hover {
    color: #fff;
}

.pista-footer-bottom {
    text-align: center;
    padding-top: 20px;
    font-size: 12px;
    color: #aaa;
}