/* Retro-futuristic, pastel, minimalistic styles */

body {
    background-color: #FDFBF7;
    color: #2A2A2A;
    overflow-x: hidden;
}

.plastic-card {
    background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow: 
        0 20px 40px rgba(0, 0, 0, 0.02),
        0 1px 3px rgba(255, 255, 255, 0.5) inset;
    border-radius: 24px;
}

.soft-glow {
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(230, 225, 255, 0.8) 0%, rgba(253, 251, 247, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
    z-index: -1;
}

.hero-visual {
    background: linear-gradient(135deg, #F0F4FF 0%, #FFF0F5 100%);
    border-radius: 40px;
    box-shadow: 
        20px 20px 60px #d1d9e6, 
        -20px -20px 60px #ffffff;
    position: relative;
    overflow: hidden;
}

.hero-visual::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 100%);
}

.btn-primary {
    background: #2A2A2A;
    color: #FFFFFF;
    padding: 16px 32px;
    border-radius: 100px;
    font-weight: 500;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    letter-spacing: -0.01em;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    background: #000000;
}

.video-container {
    border-radius: 32px;
    overflow: hidden;
    box-shadow: 
        0 30px 60px rgba(0,0,0,0.05),
        0 0 0 1px rgba(255,255,255,0.5) inset;
    background: #000;
    aspect-ratio: 16/9;
    position: relative;
}

/* Smooth scroll */
html {
    scroll-behavior: smooth;
}
