/* Custom Left Alignment Styles */

/* Align logo to left */
.header-alternative .logo-wrap {
    margin-right: auto;
}

/* Align all headers to left */
h1, h2, h3, h4, h5, h6 {
    text-align: left !important;
}

/* Ensure header content is left-aligned */
.gh-content h1,
.gh-content h2,
.gh-content h3,
.gh-content h4,
.gh-content h5,
.gh-content h6 {
    text-align: left !important;
}

/* Post card alignment - Hero section */
.post-card-excerpt {
    text-align: left !important;
}

.post-card-author {
    text-align: left !important;
}

.post-card-meta {
    justify-content: flex-start !important;
}

/* Post card image container - transparent background for transparent images */
.post-card-image,
.blur-load,
.figure.post-card-image,
.kg-image-card,
.kg-card.kg-image-card {
    background-color: transparent !important;
    background: transparent !important;
}

/* Post card excerpt - line clamping with ellipsis */
.post-card-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Primary section: 4 lines for news posts */
.section-primary .post-card-excerpt {
    -webkit-line-clamp: 4;
}

/* Tag News excerpt: 3 lines */
.tag-news-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Footer - prevent auto-generated no-image background and pseudo-elements */
.site-footer,
.footer-container {
    background-image: none !important;
    background: transparent !important;
}

.site-footer::before,
.site-footer::after,
.footer-container::before,
.footer-container::after {
    display: none !important;
    content: none !important;
    background-image: none !important;
}

/* Navigation headers - remove italic */
.gh-head-menu a,
.gh-head-menu span,
.footer-nav a,
.footer-nav span,
.footer-group-header,
.footer-nav-flex {
    font-style: normal !important;
}

/* Button styling - match nupath.eu (6px border radius) */
.button,
button.button-primary,
.gh-btn,
.gh-primary-btn,
button[type="submit"],
input[type="submit"] {
    border-radius: 6px !important;
}

/* Subscription box button */
.form-wrapper .button,
.hero-form-wrapper .button {
    border-radius: 6px !important;
}

/* Post page - Dateline slug above header: align left */
.single-meta.label.meta-top {
    justify-content: flex-start !important;
    text-align: left !important;
}

/* Post page - Heading wrap: center block, left-align content */
.single-heading-wrap {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: var(--page-content-width) !important;
    text-align: left !important;
}

.single-title {
    text-align: left !important;
}

/* Post page - Subheading: left align */
.sub-heading-large,
.sub-heading,
.single-excerpt {
    text-align: left !important;
}

/* Post page - Author Meta below header: align left */
.single-footer-top {
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

.author-list {
    justify-content: flex-start !important;
}

/* Post page - Author byline image: no corner radius */
.author-byline-image {
    border-radius: 0 !important;
}

.author-byline-image img {
    border-radius: 0 !important;
}

/* Author page - Remove round corners on author image */
/* Author page - Target the taxonomy-media container with rounded-full */
.taxonomy-media,
.taxonomy-media.aspect-3/4,
.page-header-author .taxonomy-media {
    border-radius: 0 !important;
    overflow: visible !important;
}

/* Author page - Target the parent wrapper */
.page-header-author .taxonomy-wrapper + .taxonomy-media {
    border-radius: 0 !important;
}


.author-image,
.author-avatar,
.author-profile-image,
.kg-avatar,
.author-image img,
.author-avatar img,
.author-profile-image img,
.kg-avatar img,
.author-header,
.author-header img,
.author-profile,
.author-profile img,
.author-cover,
.author-cover img,
.author-header-avatar,
.author-header-avatar img,
.absolute.inset-0.w-full.h-full.object-cover {
    border-radius: 0 !important;
}

/* Author page - Target parent container with overflow-hidden */
.relative.overflow-hidden,
.author-cover,
.author-header,
.author-profile {
    border-radius: 0 !important;
}

/* Top menu - Remove round corners on mouseover pill */
.gh-head-menu a,
.gh-head-menu a:hover,
.gh-head-menu a:focus,
.menu-item,
.menu-item:hover,
.menu-item:focus {
    border-radius: 0 !important;
}

/* Post page - Subscribe box: rectangular form field */
.form-wrapper input[type="email"],
.hero-form-wrapper input[type="email"] {
    border-radius: 0 !important;
}

/* Post page - Share and comment button: align left */
.kg-share-buttons {
    justify-content: flex-start !important;
}

/* Post page - Content share container */
.content-share {
    width: 100% !important;
    justify-content: flex-start !important;
}

/* General: Reduce space between header and content */
.site-main {
    padding-top: 2rem !important;
}

.gh-main {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
}

.content-area {
    padding-top: 0 !important;
}

.site-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Hero module spacing fix */
.editorial-hero {
    margin-top: 30px !important;
}

/* Footer: Only override bold header, 12px font, and remove nav padding */
.footer-group-header {
    font-weight: bold !important;
    font-style: normal !important;
}

/* Override theme's .footer-nav .nav li padding */
.footer-nav .nav li {
    padding: 0 !important;
    margin: 0 !important;
}

/* Nuclear override for nav padding */
body .site-footer .footer-container .footer-nav .nav li {
    padding: 0 !important;
    margin: 0 !important;
}

/* More specific override */
.footer-nav.text-black .nav li {
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove row-gap and set line-height on nav UL */
.footer-nav .nav {
    row-gap: 0 !important;
    line-height: 1.75 !important;
}

.footer-nav-group a,
.footer-publisher div,
.footer-contact div {
    font-size: 12px !important;
}

/* News post cards: hide "By {author}" fallback when a source tag is displayed */
.post-card-byline:has(.post-card-source) .author-fallback {
    display: none;
}
