/*
 Theme Name:   Astra Child – FC Hertha Wiesbach
 Template:     astra
 Version:      1.0.0
*/

/* Header */
.ast-primary-header-bar {
    background-color: #111111 !important;
    border-bottom: 4px solid #ffc200 !important;
}

/* Mobile Menu */
.ast-mobile-header-wrap .ast-mobile-header-content,
.ast-mobile-popup-drawer.active .ast-mobile-popup-inner {
    background-color: #111111 !important;
}

/* Nav-Links obere Ebene */
.ast-builder-menu-1 .menu-item > .menu-link {
    color: #ffffff;
}

/* Schrift nur erste Ebene Desktop */
.ast-desktop .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link {
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 18px;
}

/* Dropdown-Links */
.ast-desktop .ast-builder-menu-1 .sub-menu .menu-item > .menu-link {
    color: #111111;
}

.ast-desktop .ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link {
    color: var(--ast-global-color-1) !important;
}

/* Logo Mobile */
@media (max-width: 921px) {
    header .custom-logo-link img {
        max-width: 80px !important;
        width: 80px !important;
    }
}

/* Burger Button Mobile */
@media (max-width: 921px) {
    .ast-mobile-menu-trigger-minimal {
        border:        1px solid rgba(255, 194, 0, 0.42) !important;
        border-radius: 10px !important;
        padding:       8px 12px !important;
        background:    linear-gradient(180deg, rgba(255, 194, 0, 0.10) 0%, rgba(255, 194, 0, 0.04) 100%) !important;
        box-shadow:    0 6px 16px rgba(0, 0, 0, 0.20), inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
        line-height:   1 !important;
        transition:    background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
    }

    .ast-mobile-menu-trigger-minimal:hover {
        background:   linear-gradient(180deg, rgba(255, 194, 0, 0.16) 0%, rgba(255, 194, 0, 0.08) 100%) !important;
        border-color: rgba(255, 194, 0, 0.60) !important;
        box-shadow:   0 8px 20px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
        transform:    translateY(-1px);
    }

    .ast-mobile-menu-trigger-minimal[aria-expanded="true"] {
        background:   linear-gradient(180deg, rgba(255, 194, 0, 0.18) 0%, rgba(255, 194, 0, 0.10) 100%) !important;
        border-color: rgba(255, 194, 0, 0.68) !important;
        box-shadow:   0 8px 22px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
    }
}

/* Abstände Header nullstellen */
body.blog #primary,
body.page #primary,
body.single-post #primary,
body.single-team #primary,
body.post-type-team #primary {
    padding:    0;
    margin-top: 0;
}
 
body.blog .site-content > .ast-container,
body.page .site-content > .ast-container,
body.single-post .site-content > .ast-container,
body.single-team .site-content > .ast-container,
body.post-type-team .site-content > .ast-container {
    padding: 0;
}
 
body.blog main#primary > .ast-container,
body.blog article.ast-article-single.news-overview-page,
body.page main#primary > .ast-container,
body.page article.ast-article-single.team-page,
body.single-post main#primary > .ast-container,
body.single-post article.ast-article-single.single-post-page {
    margin-top:  0;
    padding-top: 0;
}

/* Abstand Header zu Inhalt */
.site-content {
    margin-top: 40px;
}


/* Seitenhintergrund */
html {
    background-color: #111111;
}

body {
    background-color: transparent;
}

#page,
.site {
    background-color: #e3e3e3;
}

/* Standard-Seite: inneres Container und Article volle Breite */
article.team-page {
    width: 100%;
}


/* H1 Unterlinie */
.team-header {
    position:      relative;
    padding-bottom: 16px;
    margin-bottom: 16px;
}
 
.team-header::before {
    content:       "";
    position:      absolute;
    inset:         auto 0 0 0;
    height:        6px;
    background:    linear-gradient(
        90deg,
        #ffc200  0,      #ffc200  20px,
        #111111  20px,   #111111  34px,
        #ffc200  34px,   #ffc200  54px,
        transparent      54px
    );
    border-radius: 999px;
    width:         200px;
}


/* Footer */

.custom-footer-meta {
    text-align: center;
}

.custom-footer-line {
    display:         flex;
    justify-content: center;
    align-items:     center;
    gap:             10px;
}

.custom-footer-line + .custom-footer-line {
    margin-top: 6px;
}

.custom-footer-line-links {
    gap: 8px;
}

.custom-footer-line-social {
    gap: 8px;
}

.footer-separator {
    display: inline-block;
    margin:  0;
}

.footer-social-wrap {
    display:       inline-block;
    margin-left:   0;
    vertical-align: middle;
}

.footer-social-button {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    width:           30px;
    height:          30px;
    border:          1px solid rgba(255, 194, 0, 0.32);
    border-radius:   6px;
    background:      rgba(255, 194, 0, 0.05);
    color:           #c99700;
    text-decoration: none;
    box-shadow:      0 1px 4px rgba(0, 0, 0, 0.06);
    transition:      background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
    vertical-align:  middle;
}

.footer-social-button:hover {
    background:   rgba(255, 194, 0, 0.12);
    border-color: rgba(255, 194, 0, 0.48);
    color:        #9a7200;
    transform:    translateY(-1px);
}

.footer-social-button svg {
    width:   16px;
    height:  16px;
    display: block;
    fill:    currentColor;
}

.footer-social-button img {
    width:   16px;
    height:  16px;
    display: block;
}

.footer-social-button .dashicons {
    font-size:   16px;
    width:       16px;
    height:      16px;
    line-height: 16px;
}

@media (max-width: 768px) {
    .custom-footer-line {
        flex-wrap: wrap;
    }
}

/* Scroll-to-top Button */
#ast-scroll-top,
.ast-scroll-top-icon {
    width:         42px !important;
    height:        42px !important;
    border:        1px solid rgba(255, 194, 0, 0.42) !important;
    border-radius: 8px !important;
    background:    linear-gradient(180deg, rgba(255, 194, 0, 0.12) 0%, rgba(255, 194, 0, 0.06) 100%) !important;
    box-shadow:    0 4px 12px rgba(0, 0, 0, 0.14) !important;
    color:         #b88700 !important;
    transition:    background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

#ast-scroll-top:hover,
.ast-scroll-top-icon:hover {
    background:   linear-gradient(180deg, rgba(255, 194, 0, 0.18) 0%, rgba(255, 194, 0, 0.10) 100%) !important;
    border-color: rgba(255, 194, 0, 0.60) !important;
    box-shadow:   0 6px 16px rgba(0, 0, 0, 0.18) !important;
    transform:    translateY(-1px);
}

#ast-scroll-top svg,
.ast-scroll-top-icon svg,
#ast-scroll-top i,
.ast-scroll-top-icon i,
#ast-scroll-top span,
.ast-scroll-top-icon span {
    color:       #b88700 !important;
    fill:        #b88700 !important;
    font-size:   18px !important;
    line-height: 42px !important;
}

#ast-scroll-top i::before,
.ast-scroll-top-icon i::before,
#ast-scroll-top span::before,
.ast-scroll-top-icon span::before {
    color:       #b88700 !important;
    font-size:   18px !important;
    line-height: 42px !important;
    font-weight: 700 !important;
}


/* ===================================================
   TEAM-SEITEN – CARDS
   =================================================== */
 
/* Team-Seite: Sections mit Abstand */
.team-page {
    display:        flex;
    flex-direction: column;
    gap:            40px;
}
 
.team-row {
    display:               grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap:                   32px;
}

.team-row--no-fupa {
    grid-template-columns: 1fr;
}

.team-section-description--full {
    width: 100%;
}
 
/* Basis-Card */
.team-card {
    background:    #ffffff;
    border:        2px solid #111111;
    border-radius: 8px;
    padding:       24px;
    box-shadow:    4px 4px 0 #111111;
}

body.page .team-card {
    border:     1px solid #d9d9d9;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
 
/* Überschriften in Cards */
.team-card h2 {
    font-family:    'Barlow Semi Condensed', sans-serif;
    font-weight:    800;
    font-size:      22px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color:          #111111;
    margin:         0 0 16px 0;
    padding-bottom: 10px;
    border-bottom:  3px solid #ffc200;
}

.home-section-first-team > .team-card > h2 {
    font-size:      28px;
    color:          #ffffff;
    margin:         0 0 22px 0;
    padding-bottom: 12px;
    border-bottom:  3px solid #ffc200;
    text-shadow:    3px 3px 0 rgba(17, 17, 17, 0.95), 0 2px 8px rgba(0, 0, 0, 0.22);
}
 

/* Team-Foto */
.team-section-image .team-card {
    padding:       0;
    overflow:      hidden;
    border:        1px solid #d9d9d9;
    box-shadow:    0 2px 8px rgba(0, 0, 0, 0.08);
}
 
.team-photo {
    display: block;
    width:   100%;
    height:  auto;
}

/* Standard-Seiten Beitragsbild */
.standard-page-image-section {
    width:           100%;
    display:         flex;
    justify-content: center;
}

.standard-page-image-card {
    width:         min(100%, 920px);
    padding:       0 !important;
    overflow:      hidden;
    border:        1px solid #d9d9d9 !important;
    box-shadow:    0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.standard-page-image {
    display:    block;
    width:      100%;
    height:     auto;
    max-height: 440px;
    object-fit: cover;
}

/* Vorstand – Mitgliederübersicht */
.board-members-card {
    border:     1px solid #d9d9d9 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.board-members-grid {
    display:               grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap:                   24px;
    align-items:           stretch;
}

.board-member-item {
    min-width: 0;
    margin:    0;
    padding:   0 !important;
}

.board-member-card {
    display:        flex;
    flex-direction: column;
    height:         100%;
    background:     #ffffff;
    border:         1px solid #dddddd;
    border-radius:  10px;
    overflow:       hidden;
    box-shadow:     0 3px 10px rgba(0, 0, 0, 0.06);
    transition:     transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.board-member-card:hover {
    transform:    translateY(-2px);
    box-shadow:   0 8px 18px rgba(0, 0, 0, 0.10);
    border-color: rgba(255, 194, 0, 0.32);
}

.board-member-photo-wrap {
    aspect-ratio:   4 / 4.6;
    overflow:       hidden;
    background:     #ececec;
    border-bottom:  3px solid #ffc200;
}

.board-member-photo {
    display:    block;
    width:      100%;
    height:     100%;
    object-fit: cover;
}

.board-member-content {
    display:        flex;
    flex-direction: column;
    gap:            8px;
    padding:        16px 18px 18px;
}

.board-member-name {
    margin:         0;
    font-family:    'Barlow Semi Condensed', sans-serif;
    font-size:      25px;
    line-height:    0.98;
    font-weight:    700;
    text-transform: uppercase;
    color:          #111111;
}

.board-member-role {
    margin:         0;
    font-size:      14px;
    line-height:    1.35;
    font-weight:    700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color:          #7b7f87;
}

.board-member-email {
    margin:      4px 0 0;
    font-size:   15px;
    line-height: 1.45;
}

.board-member-email a {
    color:           #4b5563;
    text-decoration: none;
    border-bottom:   1px solid rgba(17, 17, 17, 0.14);
    transition:      color 0.18s ease, border-color 0.18s ease;
}

.board-member-email a:hover {
    color:        #111111;
    border-color: rgba(255, 194, 0, 0.64);
}


/* ===================================================
   STARTSEITE
   =================================================== */

.front-page-home {
    gap: 48px;
}

.home-section > .team-card {
    padding: 28px;
}

.home-section-news > .team-card {
    padding:       34px;
    background:    linear-gradient(180deg, #141414 0%, #0f0f0f 100%);
    border:        1px solid rgba(255, 194, 0, 0.22);
    box-shadow:    0 16px 40px rgba(0, 0, 0, 0.18);
}

.home-section-news > .team-card h2 {
    color:         #ffffff;
    border-bottom: 3px solid #ffc200;
    margin-bottom: 22px;
}

.home-news-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.home-news-card {
    min-width: 0;
}

.home-news-link {
    display:         flex;
    flex-direction:  column;
    height:          100%;
    background:      #ffffff;
    border:          1px solid rgba(255, 255, 255, 0.08);
    border-radius:   10px;
    overflow:        hidden;
    text-decoration: none;
    color:           inherit;
    box-shadow:      0 10px 24px rgba(0, 0, 0, 0.16);
    transition:      transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home-news-link:hover {
    transform:    translateY(-3px);
    box-shadow:   0 16px 32px rgba(0, 0, 0, 0.22);
    border-color: rgba(255, 194, 0, 0.40);
}

.home-news-thumb {
    aspect-ratio: 16 / 9;
    overflow:     hidden;
    background:   #ececec;
    border-bottom: 3px solid #ffc200;
}

.home-news-thumb img {
    display:    block;
    width:      100%;
    height:     100%;
    object-fit: cover;
}

.home-news-content {
    display:        flex;
    flex-direction: column;
    gap:            12px;
    padding:        20px;
}

.home-news-date {
    margin:         0;
    font-size:      12px;
    font-weight:    700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color:          #7b7f87;
}

.home-news-title {
    margin:         0;
    font-family:    'Barlow Semi Condensed', sans-serif;
    font-size:      28px;
    line-height:    1;
    font-weight:    700;
    text-transform: uppercase;
    color:          #111111;
}

.home-section-action {
    margin-top: 28px;
    text-align: left;
}

.home-section-button {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    min-height:      46px;
    padding:         0 18px;
    border:          1px solid rgba(255, 194, 0, 0.44);
    border-radius:   8px;
    background:      linear-gradient(180deg, rgba(255, 194, 0, 0.18) 0%, rgba(255, 194, 0, 0.08) 100%);
    color:           #ffffff;
    font-family:     'Barlow Semi Condensed', sans-serif;
    font-size:       17px;
    font-weight:     700;
    letter-spacing:  0.04em;
    text-transform:  uppercase;
    text-decoration: none;
    box-shadow:      0 4px 12px rgba(0, 0, 0, 0.16);
    transition:      background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.home-section-button:hover {
    background:   linear-gradient(180deg, rgba(255, 194, 0, 0.28) 0%, rgba(255, 194, 0, 0.12) 100%);
    border-color: rgba(255, 194, 0, 0.68);
    box-shadow:   0 8px 18px rgba(0, 0, 0, 0.22);
    transform:    translateY(-1px);
}

.home-video-card {
    padding:       28px;
    background:    #111111;
    border:        1px solid rgba(255, 194, 0, 0.22) !important;
    box-shadow:    0 16px 40px rgba(0, 0, 0, 0.18) !important;
}

.home-video-card > h2 {
    color:         #ffffff;
    border-bottom: 3px solid #ffc200;
    margin-bottom: 22px;
}

.home-video-wrap {
    overflow:      hidden;
    border-radius: 10px;
    border:        1px solid rgba(255, 255, 255, 0.10);
    box-shadow:    0 10px 24px rgba(0, 0, 0, 0.18);
    background:    #000000;
}

.home-intro-video {
    display:    block;
    width:      100%;
    height:     auto;
    max-height: 620px;
    object-fit: cover;
}

.home-video-action {
    margin-top: 16px;
}

.home-video-sound-toggle {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    min-height:      48px;
    padding:         0 18px;
    border-radius:   10px;
    border:          1px solid rgba(255, 194, 0, 0.46);
    background:      linear-gradient(180deg, rgba(255, 194, 0, 0.18) 0%, rgba(255, 194, 0, 0.08) 100%);
    color:           #ffffff;
    font-family:     'Barlow Semi Condensed', sans-serif;
    font-size:       20px;
    font-weight:     700;
    text-transform:  uppercase;
    letter-spacing:  0.02em;
    cursor:          pointer;
    transition:      background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.home-video-sound-toggle:hover {
    background:   linear-gradient(180deg, rgba(255, 194, 0, 0.28) 0%, rgba(255, 194, 0, 0.12) 100%);
    border-color: rgba(255, 194, 0, 0.68);
    box-shadow:   0 8px 18px rgba(0, 0, 0, 0.22);
    color:        #ffffff;
    transform:    translateY(-1px);
}

.home-video-sound-toggle[aria-pressed="true"] {
    background:   linear-gradient(180deg, rgba(255, 194, 0, 0.32) 0%, rgba(255, 194, 0, 0.14) 100%);
    border-color: rgba(255, 194, 0, 0.76);
    color:        #ffffff;
}

.home-section-first-team > .team-card {
    position:   relative;
    overflow:   hidden;
    background: url("https://hertha-wiesbach.de/wp-content/uploads/2026/03/rasen2.jpg") center / cover no-repeat;
}

.home-first-team-grid {
    align-items: stretch;
}

.home-first-team-grid > .team-section > .team-card,
.home-widget-fixtures .team-card,
.home-widget-table .team-card {
    height:       100%;
    border:       2px solid #111111;
    box-shadow:   4px 4px 0 #111111;
    background:   #ffffff;
}

.home-first-team-grid .team-card h3 {
    margin:         0 0 16px 0;
    padding-bottom: 10px;
    border-bottom:  3px solid #ffc200;
    font-family:    'Barlow Semi Condensed', sans-serif;
    font-size:      22px;
    font-weight:    800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color:          #111111;
}

.home-sponsors-card {
    border:     1px solid #d9d9d9 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.home-sponsors-grid {
    display:               grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap:                   20px;
}

.home-sponsor-item {
    min-width: 0;
}

.home-sponsor-link,
.home-sponsor-static {
    display:         flex;
    align-items:     center;
    justify-content: center;
    min-height:      140px;
    padding:         18px;
    background:      #ffffff;
    border:          1px solid #e3e3e3;
    border-radius:   8px;
    box-shadow:      0 1px 4px rgba(0, 0, 0, 0.05);
}

.home-sponsor-link {
    text-decoration: none;
    transition:      transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home-sponsor-link:hover {
    transform:    translateY(-2px);
    border-color: rgba(255, 194, 0, 0.32);
    box-shadow:   0 4px 12px rgba(0, 0, 0, 0.10);
}

.home-sponsor-logo {
    display:    block;
    max-width:  100%;
    max-height: 72px;
    width:      auto;
    height:     auto;
    object-fit: contain;
}

/* ===================================================
   MELDUNGEN-ÜBERSICHT
   =================================================== */

.news-overview-page {
    gap: 32px;
}

.news-overview-section {
    width: 100%;
}

.news-overview-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap:                   28px;
}

.news-overview-item {
    min-width: 0;
    margin:    0;
    padding:   0 !important;
}

.news-overview-link {
    height: 100%;
}

.news-overview-item-title {
    font-size: 26px;
}

.news-overview-pagination {
    margin-top: 32px;
    padding-top: 8px;
}

.news-overview-pagination .nav-links {
    display:         flex;
    flex-wrap:       wrap;
    align-items:     center;
    gap:             10px;
}

.news-overview-pagination .page-numbers {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    min-width:       42px;
    min-height:      42px;
    padding:         0 14px;
    border:          1px solid #d9d9d9;
    border-radius:   8px;
    background:      #ffffff;
    color:           #111111;
    text-decoration: none;
    box-shadow:      0 2px 8px rgba(0, 0, 0, 0.06);
    transition:      background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.news-overview-pagination .page-numbers:hover,
.news-overview-pagination .page-numbers.current {
    background:   #fff7db;
    border-color: rgba(255, 194, 0, 0.45);
    box-shadow:   0 4px 12px rgba(0, 0, 0, 0.10);
}

 
/* Responsive */
@media (max-width: 1024px) {
    .home-sponsors-grid,
    .news-overview-grid,
    .board-members-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    .home-section-news {
        position: relative;
    }

    .home-section-news::after {
        content:        "";
        position:       absolute;
        top:            96px;
        right:          28px;
        bottom:         110px;
        width:          56px;
        pointer-events: none;
        background:     linear-gradient(90deg, rgba(15, 15, 15, 0) 0%, rgba(15, 15, 15, 0.88) 100%);
        border-radius:  0 10px 10px 0;
        z-index:        2;
    }

    .home-news-grid {
        display:               grid;
        grid-auto-flow:        column;
        grid-auto-columns:     minmax(380px, 380px);
        grid-template-columns: none;
        gap:                   24px;
        overflow-x:            auto;
        overflow-y:            hidden;
        padding-bottom:        8px;
        scroll-snap-type:      x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width:       none;
    }

    .home-news-grid::-webkit-scrollbar {
        display: none;
    }

    .home-news-grid > * {
        scroll-snap-align: start;
    }

    .home-news-card {
        min-width: 0;
    }
}

@media (max-width: 768px) {
    .team-row,
    .home-news-grid,
    .home-sponsors-grid,
    .news-overview-grid,
    .board-members-grid {
        grid-template-columns: 1fr;
    }
 
    .team-card,
    .home-section > .team-card {
        padding: 18px;
    }

    .home-news-title {
        font-size: 24px;
    }

    .news-overview-item-title {
        font-size: 24px;
    }

    .board-member-name {
        font-size: 22px;
    }

    .board-member-role {
        font-size: 13px;
    }

    .home-sponsor-link,
    .home-sponsor-static {
        min-height: 120px;
    }

    .home-video-card {
        padding: 18px;
    }

    .home-intro-video {
        max-height: 360px;
    }

    .home-video-action {
        margin-top: 14px;
    }

    .home-video-sound-toggle {
        min-height: 44px;
        font-size:  18px;
    }

    .home-section-first-team > .team-card {
        padding: 12px;
    }

    .home-widget-fixtures,
    .home-widget-table,
    .home-widget-fixtures .team-card,
    .home-widget-table .team-card,
    .home-widget-fixtures .team-widget-wrap,
    .home-widget-table .team-widget-wrap {
        min-width: 0;
        width: 100%;
    }

    .home-widget-fixtures .team-card,
    .home-widget-table .team-card {
        padding: 14px;
    }

    .home-widget-fixtures .team-widget-wrap,
    .home-widget-table .team-widget-wrap {
        overflow-x: hidden;
    }

    .standard-page-image-card {
        width: 100%;
    }

    .standard-page-image {
        max-height: 320px;
    }
}


/* ===================================================
   SINGLE POST
   =================================================== */

.single-post-page {
    gap:       32px;
    width:     100%;
    margin:    0 auto;
}

.single-post-header {
    margin-bottom: 8px;
}

.single-post-date {
    margin:         0 0 12px 0;
    font-size:      13px;
    font-weight:    700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color:          #6b7280;
}

.single-post-title {
    margin:      0;
    max-width:   22ch;
    line-height: 0.95;
}

.single-post-image-section,
.single-post-content-section {
    width: 100%;
}

.single-post-image-section {
    display:         flex;
    justify-content: center;
}

.single-post-image-card {
    width:         min(100%, 920px);
    padding:       0;
    overflow:      hidden;
    border:        1px solid #d9d9d9;
    box-shadow:    0 2px 8px rgba(0, 0, 0, 0.08);
}

.single-post-image {
    display:    block;
    width:      100%;
    height:     auto;
    max-height: 440px;
    object-fit: cover;
}

.single-post-content-card {
    border:     1px solid #d9d9d9;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.single-post-content {
    font-size:   18px;
    line-height: 1.75;
    color:       #1f2937;
}

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

.single-post-content p,
.single-post-content ul,
.single-post-content ol,
.single-post-content blockquote,
.single-post-content figure,
.single-post-content h2,
.single-post-content h3 {
    margin-bottom: 1.1em;
}

.single-post-content h2,
.single-post-content h3 {
    line-height: 1.05;
}

.single-post-content a {
    color: #111111;
}

.single-post-content img {
    display:       block;
    max-width:     100%;
    height:        auto;
    border-radius: 8px;
}

.standard-page-content .wp-block-separator,
.single-post-content .wp-block-separator {
    border:     0;
    height:     1px;
    background: rgba(17, 17, 17, 0.18);
    max-width:  none;
    margin:     36px 0 28px;
}

.standard-page-content h2,
.standard-page-content h3,
.standard-page-content h4 {
    font-family:  'Barlow Semi Condensed', sans-serif;
    font-weight:  800;
    text-transform: uppercase;
    color:        #111111;
    margin-top:   44px;
    margin-bottom: 18px;
    line-height:  1.05;
}

.standard-page-content h2 {
    font-size:      34px;
    letter-spacing: 0.01em;
}

.standard-page-content h3 {
    font-size:      24px;
    letter-spacing: 0.02em;
}

.standard-page-content h4 {
    font-size:      20px;
    letter-spacing: 0.02em;
}

.standard-page-content p,
.standard-page-content ul,
.standard-page-content ol {
    margin-bottom: 1.35em;
}

.standard-page-content ul,
.standard-page-content ol {
    padding-left: 1.4em;
}

.standard-page-content li + li {
    margin-top: 0.35em;
}

.standard-page-content h2 + p,
.standard-page-content h3 + p,
.standard-page-content h4 + p,
.standard-page-content h2 + ul,
.standard-page-content h3 + ul,
.standard-page-content h4 + ul,
.standard-page-content h2 + ol,
.standard-page-content h3 + ol,
.standard-page-content h4 + ol {
    margin-top: 0;
}

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

.single-post-footer-actions {
    margin-top:  -4px;
    padding-top: 4px;
}

.single-post-back-link {
    min-width:    0;
    color:        #111111;
    background:   #ffffff;
    border:       1px solid #d9d9d9;
    box-shadow:   0 2px 8px rgba(0, 0, 0, 0.08);
}

.single-post-back-link:hover {
    background:   #fff7db;
    border-color: rgba(255, 194, 0, 0.45);
    color:        #111111;
    box-shadow:   0 4px 12px rgba(0, 0, 0, 0.10);
}

@media (max-width: 768px) {
    .single-post-page {
        gap: 24px;
    }

    .single-post-title {
        max-width: none;
    }

    .single-post-content {
        font-size:   17px;
        line-height: 1.7;
    }

    .single-post-image-card {
        width: 100%;
    }

    .single-post-image {
        max-height: 320px;
    }

    .standard-page-content h2 {
        font-size: 30px;
    }

    .standard-page-content h3 {
        font-size: 22px;
    }

    .standard-page-content h4 {
        font-size: 18px;
    }
}

/* Fupa Widget Fix */
.fp-title-text.fp-team-liveticker-view-heading.fp-liveticker-view-heading {
    display: none;
}