/* Shining Gold Button Animation */
@keyframes shine {
    to {
        background-position: 200% center;
    }
}

.btn-shine-gold {
    background: linear-gradient(110deg, #C5A059 8%, #E5C585 18%, #C5A059 33%);
    background-size: 200% auto;
    animation: shine 6s linear infinite;
    color: white;
    border: none;
    box-shadow: 0 4px 14px 0 rgba(197, 160, 89, 0.39);
    transition: all 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
}

.btn-shine-gold:hover {
    background: linear-gradient(110deg, #B08A3E 8%, #D4B46A 18%, #B08A3E 33%);
    background-size: 200% auto;
    transform: scale(1.04);
    box-shadow: 0 8px 28px rgba(197, 160, 89, 0.55);
    color: white;
}

.btn-shine-gold:active {
    transform: scale(0.97);
    box-shadow: 0 2px 10px rgba(197, 160, 89, 0.3);
}

/* Shine sweep overlay — built into the button via ::before */
.btn-shine-gold::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(120deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.25) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    pointer-events: none;
    z-index: 1;
}

.btn-shine-gold:hover::before {
    animation: shine-slide 0.8s ease-in-out;
}

.text-shine-gold {
    background: linear-gradient(110deg, #C5A059 8%, #E5C585 18%, #C5A059 33%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: shine 4s linear infinite;
    display: inline-block;
}

/* Shine Slide animation */
@keyframes shine-slide {
    0% {
        left: -100%;
    }

    100% {
        left: 150%;
    }
}

/* Legacy class — kept for backward compat but no longer needed */
.animate-shine {
    display: none;
}

/* Custom hover for Request Quote button to turn green */
/* Custom hover for ALL buttons to turn green */
.btn-shine-gold:hover {
    background: linear-gradient(110deg, #273620 8%, #425e35 18%, #273620 33%);
    background-size: 200% auto;
    box-shadow: 0 8px 28px rgba(39, 54, 32, 0.55);
    color: white;
}

/* Fixed version for Scroll Button to avoid position conflicts */
.btn-shine-fixed {
    background: linear-gradient(110deg, #C5A059 8%, #E5C585 18%, #C5A059 33%);
    background-size: 200% auto;
    animation: shine 6s linear infinite;
    color: white;
    border: none;
    box-shadow: 0 4px 14px 0 rgba(197, 160, 89, 0.39);
    transition: all 0.3s ease-in-out;
    position: fixed !important;
    /* FORCE FIXED */
    overflow: hidden;
    z-index: 9999;
}

.btn-shine-fixed:hover {
    background: linear-gradient(110deg, #273620 8%, #425e35 18%, #273620 33%);
    /* Green hover */
    background-size: 200% auto;
    transform: scale(1.1);
    box-shadow: 0 8px 28px rgba(39, 54, 32, 0.55);
    color: white;
}

.btn-shine-fixed:active {
    transform: scale(0.95);
    box-shadow: 0 2px 10px rgba(197, 160, 89, 0.3);
}

.btn-shine-fixed::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(120deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.25) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    pointer-events: none;
    z-index: 1;
}

.btn-shine-fixed:hover::before {
    animation: shine-slide 0.8s ease-in-out;
}

/* Class to lift the quote button when scroll button appears */
.quote-lifted {
    bottom: 6rem !important;
    /* Move up to make room */
}