 body {
            font-family: 'Inter', sans-serif;
            background-color: #f8fafc; /* A very light gray */
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: 'Playfair Display', serif;
            font-weight: 500;
        }

        .hero-gradient {
            background: linear-gradient(135deg, #e0f2fe 0%, #ffffff 100%);
        }
        
        .card-hover {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .card-hover:hover {
            transform: translateY(-6px);
            box-shadow: 0 10px 20px -5px rgba(100, 116, 139, 0.1);
        }

        .link-underline-animation {
            position: relative;
            display: inline-block;
            text-decoration: none;
            color: inherit;
        }

        .link-underline-animation::after {
            content: '';
            position: absolute;
            width: 100%;
            transform: scaleX(0);
            height: 1px;
            bottom: -2px;
            left: 0;
            background-color: #3b82f6; /* A soft blue */
            transform-origin: bottom right;
            transition: transform 0.3s ease-out;
        }

        .link-underline-animation:hover::after {
            transform: scaleX(1);
            transform-origin: bottom left;
        }

        .soft-shadow {
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        }
        
        .btn-soft {
             transition: all 0.3s ease;
        }

        .btn-soft:hover {
            box-shadow: 0 4px 15px -3px rgba(59, 130, 246, 0.3);
            transform: translateY(-2px);
        }
