:root {
    --deep-blue: #1A365D;
    --teal: #0D9488;
    --light-gray: #F7FAFC;
    --bulma-primary: var(--teal);
    --bulma-family-sans-serif: 'Inter', system-ui, -apple-system, sans-serif;
    --bulma-navbar-height: 6rem;

    /* Theme-aware colors */
    --text-primary: var(--deep-blue);
    --bg-overlay: white;

    /* Bulma variable overrides for light mode */
    --bulma-text-grey: #4A5568;
    /* Darker grey for better contrast */
}

html {
    scroll-padding-top: 6rem;
}

section {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        scroll-margin-top: 6rem;
    }
}

/* Dark mode overrides */
@media (prefers-color-scheme: dark) {
    :root {
        --deep-blue: #A3C9E2;
        /* Even lighter blue for dark mode */
        --light-gray: #1A202C;
        --text-primary: #F7FAFC;
        /* Near-white for better contrast */
        --bg-overlay: #1A202C;

        /* Bulma variable overrides for dark mode */
        --bulma-text-strong: #F7FAFC;
        --bulma-text-grey: #CBD5E0;
        /* Lighter grey for better contrast */
        --bulma-text-grey-light: #E2E8F0;
    }
}

/* Explicit data-theme="dark" support */
[data-theme='dark'] {
    --deep-blue: #A3C9E2;
    --light-gray: #1A202C;
    --text-primary: #F7FAFC;
    --bg-overlay: #1A202C;

    /* Bulma variable overrides for dark mode */
    --bulma-text-strong: #F7FAFC;
    --bulma-text-grey: #CBD5E0;
    --bulma-text-grey-light: #E2E8F0;
}

.title,
.subtitle {
    font-family: 'Archivo', sans-serif;
    letter-spacing: -0.02em;
    line-height: 1.4;
}

.title {
    color: var(--text-primary);
}

.is-premium-black {
    background-color: #000;
    color: #fff;
}

/* Ensure premium black stays black in dark mode if intended (e.g. footer) */
[data-theme='dark'] .is-premium-black {
    background-color: #000;
}

.logo-container img {
    max-height: 6rem;
    max-width: 25rem;
}

/* Logo optimization for dark mode */
@media (prefers-color-scheme: dark) {
    .logo-container img {
        filter: invert(1) hue-rotate(180deg);
    }
}

[data-theme='dark'] .logo-container img {
    filter: invert(1) hue-rotate(180deg);
}

.overlay {
    position: absolute;
    inset: 0;
    background: var(--bg-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    border-radius: inherit;
}

.is-hidden {
    display: none !important;
}

.is-arounded {
    border-radius: 20px 50px;
}

.button.is-black {
    background-color: var(--deep-blue);
    color: #fff;
}

.content h1,
.content h2,
.content h3 {
    font-family: 'Archivo', sans-serif;
    color: var(--text-primary);
}

.article-container {
    max-width: 800px;
    margin: 0 auto;
}

.post-meta {
    color: var(--bulma-text-grey);
    font-size: 0.9rem;
    margin-bottom: 2rem;
}

/* Explicit Bulma utility overrides */
.has-text-grey {
    color: var(--bulma-text-grey) !important;
}

.is-inactive-store-badge {
    filter: grayscale(100%);
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}