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

/* Enhanced button base styles */
.wp-block-button__link,
.gform_button {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    transform: translateY(0);
}

.wp-block-button__link::before,
.gform_button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.5s ease;
}

.wp-block-button__link:hover {
    background-color: var(--wp--preset--color--contrast) !important;
    color: var(--wp--preset--color--accent-1) !important;
    animation: subtleBounce 0.6s ease;
}

.wp-block-button__link:hover::before {
    left: 100%;
}

.gform_button:hover {
    background-color: var(--wp--preset--color--contrast) !important;
    color: var(--wp--preset--color--accent-1) !important;
    animation: subtleBounce 0.6s ease;
}

.gform_button:hover::before {
    left: 100%;
}
/* Focus state with blue glow effect */
.gform_wrapper input:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
    background-color: transparent !important;
    border-color: #203655;
    outline: none;
    box-shadow: 0 0 0 3px rgba(32, 54, 85, 0.4), 0 0 15px rgba(32, 54, 85, 0.3);
    transform: translateY(-1px);
}

@keyframes subtleBounce {
    0%, 20%, 60%, 100% { transform: translateY(0); }
    40% { transform: translateY(-3px); }
    80% { transform: translateY(-1px); }
}