html,
body {
    height: 100%;
}

.bg-video,
.bg-overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.bg-video {
    object-fit: cover;
    z-index: -2;
    opacity: 0.15;
    pointer-events: none;
}

/* Overlay above the video */
/* .bg-overlay {
    z-index: -1;
    background: radial-gradient(circle at center, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75));
    pointer-events: none;
}

*/
/* Make sure theme backgrounds don't cover the video */
body,
.hero,
.section {
    background: transparent !important;
}
#top .tabs ul {
    justify-content: center !important;
}

/* Fallbacks if the theme uses different markup */
#top nav,
#top .navbar-menu,
#top .menu-list {
    justify-content: center;
    text-align: center;
}

/* ===== Nav under title: bigger text ===== */
#top .tabs a {
    font-size: 1.15rem;
    /* bump size */
    letter-spacing: 0.06em;
    /* optional: looks nice for nav */
    padding: 0.75rem 1.25rem;
    /* optional: more breathing room */
}

/* If the theme uses navbar/menu instead of tabs, these cover it */
#top .navbar-item,
#top .menu-list a {
    font-size: 1.15rem;
    letter-spacing: 0.06em;
}

/* ===== Lines: make them more transparent ===== */
/* 1) If they are real <hr> elements */
#top hr {
    opacity: 0.25;
    /* lower = more transparent */
}

/* 2) If they are tab borders (common in Bulma tabs) */
#top .tabs,
#top .tabs ul {
    border-bottom-color: rgba(255, 255, 255, 0.20) !important;
}

#top .tabs li a {
    border-bottom-color: rgba(255, 255, 255, 0.20) !important;
}

/* 3) If the theme draws lines via a pseudo-element */
#top .tabs::before,
#top .tabs::after {
    opacity: 0.25;
}
/* HARD DISABLE SCROLL (site-wide) */
html,
body {
    height: 100% !important;
    overflow: hidden !important;
}

/* Prevent momentum scroll / overscroll bounce */
body {
    overscroll-behavior: none;
}

/* Optional: hide scrollbars just in case */
::-webkit-scrollbar {
    width: 0;
    height: 0;
}