@property --spot1 {
    syntax: '<color>';
    initial-value: rgb(255 255 255 / 100%);
    inherits: false;
}

@property --spot2 {
    syntax: '<color>';
    initial-value: rgb(255 255 255 / 0);
    inherits: false;
}

body {
    background: radial-gradient(80vw 100vw at 50% 40%, var(--spot1) 0%, var(--spot2) 60%), radial-gradient(48% 46% at 50% 74%, var(--spot1) 0%, var(--spot2) 100%);
    background-attachment: fixed;
    transition: --spot1 1s, --spot2 1s;
}

html:has(.body--dark) body {
    --spot1: rgb(255 255 255 / 2%);
}

@media screen and (min-width: 768px) {
    .body--gallery {
        padding-top: 0;
        padding-left: 0;
    }

    .body--gallery .p-menu,
    .body--gallery .p-menu__nav--open {
        background-color: rgb(122 122 122 / 10%);
        backdrop-filter: blur(6px);
    }

    .body--gallery.p-menu {
        color: var(--color-theme-text);
    }

    .js-hasOpenMenu .body--gallery .p-menu {
        backdrop-filter: none;
        background-color: transparent;
    }

    .flickity-page-dots {
        bottom: 1em !important;
    }
}

/* flickity off by default */
.gallery::after {
    content: '';
}

@media screen and ( min-width: 768px ) {
  .gallery {
        width: 100dvw;
        margin: 0;
        padding: 0;
        opacity: 0;
        transition: opacity .4s;
  }

  /* Enable Flickity for larger devices */
    .gallery::after {
        content: 'flickity';
        display: none;
    }
}

.gallery--computerSaysNo {
    position: fixed;
    inset: 2em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
