.glass {
    background: rgba(253, 247, 255, 0.7);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.4);
}
.gradient-text {
    background: linear-gradient(135deg, #5C1DA9 0%, #0C5CA6 50%, #45BEDB 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.gradient-button {
    background: linear-gradient(135deg, #5C1DA9 0%, #0C5CA6 100%);
    transition: all 0.3s ease;
}
.gradient-button:hover:not(:disabled) {
    filter: brightness(1.1);
    transform: translateY(-2px);
    box-shadow: 0 10px 20px -10px rgba(92, 29, 169, 0.5);
}
.service-chip {
    background: rgba(92, 29, 169, 0.1);
    color: #5C1DA9;
}
section { scroll-margin-top: 80px; }

/* Multistep Animations */
.step-transition {
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.step-enter {
    opacity: 0;
    transform: translateX(20px);
    pointer-events: none;
    position: absolute;
    inset: 0;
}
.step-exit {
    opacity: 0;
    transform: translateX(-20px);
    pointer-events: none;
    position: absolute;
    inset: 0;
}
.step-active {
    opacity: 1;
    transform: translateX(0);
    pointer-events: auto;
    position: relative;
}
.radio-card:checked + label {
    border-color: #5C1DA9;
    background-color: rgba(92, 29, 169, 0.05);
    box-shadow: 0 0 0 1px #5C1DA9;
}
