/* ── Public Digital Card Themes ───────────────────────────────────── */
/* All values are overridden at runtime via CSS custom properties set
   inline in _CardLayout.cshtml from the database template record.    */

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    -webkit-font-smoothing: antialiased;
    scroll-behavior: smooth;
}

section { padding: 1.5rem 1rem; }

/* Product card base */
.product-card {
    transition: transform .25s, box-shadow .25s;
}

/* Gallery lightbox */
.gallery-img {
    transition: transform .2s, opacity .2s;
    object-fit: cover;
    border-radius: .5rem;
}
.gallery-img:hover { transform: scale(1.05); opacity: .9; }

/* WhatsApp float */
.whatsapp-float {
    position: fixed;
    bottom: 1.5rem;
    right: 1.5rem;
    z-index: 1000;
    background: #25d366;
    color: #fff;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    box-shadow: 0 4px 14px rgba(37, 211, 102, .5);
    text-decoration: none;
    animation: pulse 2s infinite;
}
@keyframes pulse {
    0%   { box-shadow: 0 0 0 0 rgba(37,211,102,.5); }
    70%  { box-shadow: 0 0 0 14px rgba(37,211,102,0); }
    100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
}

/* Section divider */
.dc-section-title::after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: var(--accent);
    margin-top: 4px;
    border-radius: 2px;
}
