﻿/* 1) Reset + full-height */
html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}

/* 2) Particle canvas */
#starfield {
    position: fixed;
    inset: 0;
    z-index: -2;
    pointer-events: none;
}

/* 3) Grid + background */
.Bookfull {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 1fr auto;
    grid-template-areas:
        "BookPromo-section BookDetails"
        "BookPromo-section BookDetails"
        "StellaDatabase     StellaDatabase";
    gap: 20px;
    min-height: 100vh;
    margin: 0 auto;
    padding: 20px;
    background: url('/images/Backgrounds/BookBackground.webp') no-repeat center center fixed;
    background-size: cover;
}

    /* 4) Dark overlay */
    .Bookfull::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: rgba(0,0,0,0.82);
        z-index: -1;
    }

/* 5) Shimmer heading */
.shimmer-heading {
    position: relative;
    color: #fff;
    text-shadow: 0 0 8px rgba(242,163,101,0.6);
    overflow: hidden;
}

    .shimmer-heading::before {
        content: "";
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(to right,transparent,rgba(255,255,255,0.4),transparent);
        transform: skewX(-25deg);
        animation: shimmer 4s infinite;
    }

@keyframes shimmer {
    to {
        left: 200%;
    }
}

/* 6) Reveal helper */
.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .8s, transform .8s;
}

    .reveal.visible {
        opacity: 1;
        transform: translateY(0);
    }

/* 7) Left column text */
.BookPromo-section {
    grid-area: BookPromo-section;
    color: #fff;
}

    .BookPromo-section p {
        line-height: 1.6;
    }

/* 8) Right column container */
.BookDetails {
    grid-area: BookDetails;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

/* 9) Cover image: preserve aspect + hover tilt */
.BookCoverImage {
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 8px 16px rgba(0,0,0,0.5);
    transition: transform .5s, filter .5s;
}

    .BookCoverImage:hover {
        transform: rotateY(15deg) scale(1.05);
        filter: drop-shadow(0 0 12px rgba(242,163,101,0.8));
    }

/* 10) CTA pulse */
.GCcta-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

@keyframes pulse {
    0%,100% {
        box-shadow: 0 0 8px rgba(242,163,101,0.6);
    }

    50% {
        box-shadow: 0 0 20px rgba(242,163,101,1);
    }
}

.cta-button {
    display: inline-block;
    min-width: 150px;
    padding: 10px 20px;
    border: 2px solid #fff;
    border-radius: 25px;
    background: transparent;
    color: #fff;
    text-align: center;
    text-decoration: none;
    animation: pulse 3s infinite;
    transition: background .3s, color .3s;
}

    .cta-button:hover {
        background: #f2a365;
        color: #000;
    }

/* 11) Database cards float */
.StellaDatabase {
    grid-area: StellaDatabase;
    text-align: center;
    color: #fff;
}

.databaseslots {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

    .databaseslots article {
        border: 2px solid #fff;
        border-radius: 8px;
        width: 200px;
        padding: 10px;
        transition: transform .5s, box-shadow .5s;
        animation: float 4s infinite;
    }

        .databaseslots article:hover {
            transform: scale(1.05);
            box-shadow: 0 0 12px rgba(242,163,101,0.8);
        }

    .databaseslots img {
        width: 100%;
        height: auto;
        margin-top: .5rem;
        border-radius: 4px;
    }

@keyframes float {
    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

/* 12) Responsive */
@media (max-width:768px) {
    .Bookfull {
        display: flex;
        flex-direction: column;
        padding: 10px;
    }

    .BookPromo-section,
    .BookDetails,
    .StellaDatabase {
        width: 100%;
        text-align: center;
    }

    .GCcta-buttons {
        flex-direction: column;
    }

    .cta-button {
        width: 100%;
        font-size: .9rem;
    }

    .databaseslots img {
        max-width: 150px;
    }
}
