 /*
         * Custom Control:
         * ---------------
         */
        /* custom classes are always prefixed by "spl-" automatically */
        .spl-like{
            background-image: url(demo/gallery/heart-outline.svg);
            background-size: 23px;
        }
        /* optionally, additional state to toggle the button: */
        .spl-like.on{
            background-image: url(demo/gallery/heart.svg);
        }
        /*
         * Custom Animation:
         * -----------------
         */
        /* custom scene transition (slide effect) */
        .only-this-gallery.show .spl-scene{
            transition: transform 0.2s ease;
        }
        /* custom animation "visible state" (css context by custom classname "only-this-gallery" to apply these animation just on a specific gallery) */
        .only-this-gallery.show .spl-pane > *{
            clip-path: circle(100% at center);
            transition: transform 0.35s ease,
                        opacity 0.65s ease,
                        clip-path 0.8s ease;
        }
        /* custom animation "hidden state" ("custom" is the name of the animation you pass as gallery option) */
        .only-this-gallery .spl-pane .custom {
            clip-path: circle(0px at center) ;
            transition: transform 0.65s ease,
                        opacity 0.65s ease;
        }
        /* animation state when gallery is hidden */
        #spotlight.only-this-gallery{
            clip-path: circle(0px at center);
        }
        /* animation state when gallery will open */
        #spotlight.only-this-gallery.show{
            clip-path: circle(100% at center);
            transition: clip-path 0.65s ease 0.15s;
        }

        html, body{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    font-family: Aral, Helvetica, sans-serif;
    text-align: center;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    background: #f8f9fa;
}
main{
    position: relative;
    max-width: 800px;
    margin: auto;
}
a, b{
    display: inline-block;
    color: #6c757d;
    text-decoration: none;
    font-weight: 600;
}
b{
    padding: 10px;
}
button{
    padding: 5px 10px;
}


.image{
    display: inline-block;
    height: 20vw;
    max-height: 200px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

hr{
    border: 0;
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    padding-top: 20px;
}
h1 img{
    width: 500px;
    max-width: 70vw;
}
label, button{
    display: inline-block;
    padding: 5px 7px;
    margin: 3px 1px;
    border: 1px solid #ddd;
    background: #e9ecef;
    font-size: 12px;
    line-height: 20px;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 5px;
}
button{
    border:0;
    outline: 0;
    padding: 8px 18px;
    font-weight: 400;
    font-size: 15px;
    background-color: #6c757d;
    color: #fff;
}
label input{
    float: left;
    margin-right: 7px;
    margin-left: 2px;
}
pre{
    display: inline-block;
    margin: auto;
    text-align: left;
    width: 100%;
    max-width: calc(100vw - 1.7em);
}
pre code.hljs{
    background: #fff;
    padding: 1em 1.5em;
    border-radius: 10px;
    width: 100%;
    max-width: calc(100vw - 1.7em);
}

a[data-media="node"]{
    width: 29vw;
    max-width: 300px;
    margin: 1vmin 1vmin;
    display: inline-block;
    height: 20vw;
    max-height: 200px;
}
a[data-media="node"] img{
    float: left;
    width: 33.33%;
    margin: 0;
    object-fit: cover;
    height: 100%;
    padding: 0;
}

/*
.hljs{
    color: #000;
}
.hljs-attr {
    color:#79c0ff
}
.hljs-name,
.hljs-built_in {
    color: #ffa657;
}
.hljs-attribute{
    color: #e0e7ff
}
.hljs-selector-class {
    color: #79c0ff
}

.hljs-keyword,
.hljs-selector-tag {
    color: #f92672
}

.hljs-bullet,
.hljs-link,
.hljs-literal,
.hljs-number,
.hljs-quote,
.hljs-regexp {
    color: #d2a8ff
}
*/

.spotlight-group{
    margin-top: 50px;
    column-count: 3; /* Three columns for larger screens */
    column-gap: 15px;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.spotlight img {
    width: 100%;
    height: 200px !important;
    margin-bottom: 15px;
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    break-inside: avoid;
    display: block;
    transition: transform 0.3s ease;
    object-fit: cover;
}
.spotlight {
    cursor: pointer;
    display: inline-block;
    flex: 0 0 calc(33.33% - 15px); /* Ensure 3 columns layout */
    margin-bottom: 15px;
}
.spotlight img,
.image{
    width: 100%;
    height: auto;
    /* max-width: 300px; */
    margin: 1vmin 1vmin;
    content-visibility: auto;
}



.spotlight img:hover {
  transform: scale(1.02);
}

@media (max-width: 768px) {
    .spotlight-group {
        column-count: 2; /* 2 columns for medium screens */
    }

    .spotlight {
        flex: 0 0 calc(50% - 15px); /* Adjusting column width for 2 columns */
    }
}

@media (max-width: 480px) {
    .spotlight-group {
        column-count: 1; /* 1 column for small screens */
    }

    .spotlight {
        flex: 0 0 100%; /* Full-width for 1 column */
    }
}