/* ── Scroll & Scrollbar ─────────────────────────────────────────── */
html {
    scroll-behavior: smooth;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #1e1a15; }
::-webkit-scrollbar-thumb { background: #a98467; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #d4a373; }

/* ── Reveal animations ──────────────────────────────────────────── */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

.delay-100 { transition-delay: 0.1s; }
.delay-200 { transition-delay: 0.2s; }
.delay-300 { transition-delay: 0.3s; }
.delay-400 { transition-delay: 0.4s; }

/* ── Hero bg subtle zoom on load ────────────────────────────────── */
#hero-bg {
    animation: heroZoom 12s ease-out forwards;
}

@keyframes heroZoom {
    from { transform: scale(1.08); }
    to   { transform: scale(1.0); }
}

/* ── Navbar scroll state ────────────────────────────────────────── */
#navbar.scrolled {
    background-color: rgba(30, 26, 21, 0.98) !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.4);
}

/* ── Product card image transition ──────────────────────────────── */
.duration-600 {
    transition-duration: 600ms;
}

/* ── Smooth image hover on featured cards ────────────────────────── */
.group:hover #hero-bg {
    transform: scale(1.03);
}

/* ── Modal devis ─────────────────────────────────────────────────── */
#devis-modal {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

#devis-modal.open {
    opacity: 1;
    pointer-events: auto;
}

.modal-box {
    transform: translateY(24px) scale(0.97);
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease;
    opacity: 0;
}

#devis-modal.open .modal-box {
    transform: translateY(0) scale(1);
    opacity: 1;
}

/* Select arrow personnalisé */
#devis-type {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23a98467'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1.2em;
    padding-right: 2.5rem;
}

/* Message de confirmation */
#devis-success {
    display: none;
}

#devis-success.show {
    display: flex;
}
