/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    font-family: "Open Sans", sans-serif;
}


/* Main Container */
.main-container {
    width: 100%;
    min-height: 100vh;
    background: white;
    overflow-x: hidden;
}

.content-wrapper {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.5rem;
    padding: 0;
}

.section-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Hero Section */
.hero-section {
    position: fixed;
    width: 100%;
    padding: 1.5rem;
    padding-top: 10px;
    /* padding-bottom: 5.5rem; */
    background: linear-gradient(0deg, #d3d3db 0.07%, #e5e6eb 61.19%, #EFF2FF 99.93%);
}

.hero-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: center;
    /* gap: 1rem; */
    flex-wrap: wrap;
    justify-content: center;
    width: 98%;
    /* min-height: 400px; */
    margin: 1.5rem auto;
    /* Reset to neutral layout */
    padding: 0;
    /* Ensure no padding adds space */

}


.blog-sections-container {
    margin-top: 9.5rem;
    margin-bottom: 40px;
    width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

/* ===== Container ===== */
.container {
    max-width: 1800px;
    margin: 0 auto;
    padding: 16px;
}

/* ===== Header Image ===== */
.post-header-image {
    width: 100%;
    height: auto;
    /* set desired height */
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    /* display: none; */
}

.post-header-image img {
    display: block;
    width: 100%;
    height: auto;
    /* fill the 180px container */
    object-fit: contain;
    /* crop/scale proportionally */
}

@media (max-width: 350px) {
    .post-header-image img {
        padding-top: 2rem
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .post-header-image img {
        padding-top: 2rem
    }
}

    /* ===== Title & Subtitle ===== */
    .post-title {
        color: #121212;
        font-size: 4.5rem;
        font-family: Poppins;
        font-weight: 600;
        line-height: 75px;
        letter-spacing: 0.30px;
        word-wrap: break-word;
        text-align: center;
        margin: 3rem auto;
    }

    .content {
        display: flex;
        flex-direction: column;
        padding: 1rem 3.5rem;
    }

    .post-subtitle {
        font-size: 2.5rem;
        text-align: start;
        margin-bottom: 12px;
        color: #4285F4;
        font-family: Open Sans;
        font-weight: 600;
        font-family: Open Sans;
    }

    /* ===== Section Headings ===== */
    .section-heading {
        font-size: 1.5rem;
        font-weight: 600;
        font-family: Open Sans;
        margin-top: 32px;
        margin-bottom: 12px;
        color: #111;
    }

    .subsection-heading {
        font-size: 1.125rem;
        font-weight: bold;
        margin-top: 24px;
        margin-bottom: 8px;
        color: #111;
    }

    /* ===== Paragraphs & Lists ===== */
    p {
        margin-bottom: 16px;
        font-family: Open Sans;
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 25px;
        letter-spacing: 0.27px;
        word-wrap: break-word;
        width: 100%;
        max-width: 1800px;
    }

    ul,
    ol {
        margin: 0 0 16px 1.5rem;
    }

    li {
        margin-bottom: 8px;
    }

    /* Make sure nested lists also have some spacing */
    ul ul,
    ol ul,
    ul ol,
    ol ol {
        margin-bottom: 0;
        margin-top: 8px;
    }

    /* ===== Blockquotes or highlights (optional) ===== */
    .highlight-box {
        background-color: #e9f5ff;
        border-left: 4px solid #007bff;
        padding: 12px 16px;
        margin: 24px 0;
        border-radius: 4px;
    }

    /* ===== Footer Keywords ===== */
    .post-keywords {
        font-size: 1.1rem;
        color: #555;
        margin-top: 40px;
        border-top: 1px solid #ddd;
        padding-top: 16px;
    }

    .post-keywords strong {
        color: #111;
    }


    table {
        width: 50%;
        border-collapse: collapse;
        min-width: 300px;
        /* ensure proper layout */
    }

    /* thead { */
    /* optional: you could use a slightly different background on header */
    /* background-color: #2a2a2a; */
    /* } */

    th,
    td {
        padding: 0.75rem 1rem;
        text-align: left;
    }

    th {
        margin-bottom: 16px;
        font-family: Open Sans;
        font-size: 1.1rem;
        font-weight: 400;
        line-height: 25px;
        letter-spacing: 0.27px;
        word-wrap: break-word;
        /* color already light from inherited */
        border-bottom: 2px solid var(--border-color);
    }

    tbody tr {
        border-bottom: 1px solid var(--border-color);
    }

    /* Optionally alternate row background:
    tbody tr:nth-child(even) {
      background-color: #1b1b1b;
    }
    */
    td {
        margin-bottom: 16px;
        font-family: Open Sans;
        font-size: 0.95rem;
        font-weight: 400;
        line-height: 25px;
        letter-spacing: 0.27px;
        word-wrap: break-word;
    }

    /* Note/footnote paragraph */
    .table-note {
        margin-top: 1rem;
        font-size: 0.9rem;
        color: var(--muted-text);
    }

    /* Responsive adjustments */
    @media (max-width: 480px) {
        .post-title {
            font-size: 1.75rem;
            line-height: 1.3;
        }

        .table-container {
            padding: 1rem;
        }

        .table-container h2 {
            font-size: 1.25rem;
        }

        .post-subtitle {
            font-size: 1.28rem !important;
        }

        th,
        td {
            padding: 0.5rem 0.75rem;
        }

        .content {

            padding: 1rem 0.5rem;
        }
    }

    /* ===== Responsive tweaks ===== */
    @media (max-width: 768px) {
        .post-title {
            font-size: 1.75rem;
            line-height: 1.3;
        }

        .post-subtitle {
            font-size: 1.3rem;
        }

        .section-heading {
            font-size: 1.25rem;
        }

        .subsection-heading {
            font-size: 1.05rem;
        }
    }