:root {
    --rosa-cupcake: #FCE7F3;
    --rosa-scuro: #DB2777;
    --rosso-cupcake: #E11D48;
    --viola: #4C1D95;
}

body {
    font-family: 'Poppins', system-ui, sans-serif;
    background-color: #FCE7F3;
}

.heading-font {
    font-family: 'Playfair Display', serif;
}

.watermark-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9999;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Ctext x='50%25' y='50%25' font-family='Arial' font-size='18' font-weight='bold' fill='rgba(76,29,149,0.07)' text-anchor='middle' transform='rotate(-35 260 260)'%3EDIGITAL STUDIO - PROTOTIPO%3C/text%3E%3C/svg%3E");
    background-repeat: repeat;
    opacity: 0.85;
}

/* Hero background */
.hero-bg {
    background: linear-gradient(rgba(76, 29, 149, 0.4), rgba(225, 29, 72, 0.45)), 
                url('images/hero-bg.webp') center/cover no-repeat fixed;
    background-position: center 30%;
}

/* Logo animation */
.logo-cupcake {
    transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.logo-cupcake:hover {
    transform: scale(1.15) rotate(12deg);
}

/* Card hover effects */
.group:hover img {
    transform: scale(1.08);
}

/* Cookie Banner */
#cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #4C1D95;
    color: white;
    z-index: 10000;
    padding: 1rem;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.1);
}

.ds-link {
    color: rgba(255,255,255,0.8);
    transition: all 0.3s;
}

.ds-link:hover {
    color: #FCE7F3;
    text-shadow: 0 0 8px rgba(225, 29, 72, 0.6);
}