.nested-section:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: var(--overlay-color);
    opacity: var(--overlay-opacity);
    pointer-events: none;
}
.nested-section > .nested-columns {
    position: relative;
    z-index: 1;
}
.web-btn {
    transition:
        transform 0.2s,
        box-shadow 0.2s,
        filter 0.2s;
}
.web-btn.hover-lift:hover {
    transform: translateY(-4px);
}
.web-btn.hover-grow:hover {
    transform: scale(1.06);
}
.web-btn.hover-glow:hover {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);
}
.web-btn.hover-slide:hover {
    transform: translateX(6px);
}
.web-btn.click-shrink:active {
    transform: scale(0.92);
}
.web-btn.click-pulse:active {
    animation: button-pulse 0.35s;
}
.web-btn.click-bounce:active {
    animation: button-bounce 0.35s;
}
@keyframes button-pulse {
    50% {
        transform: scale(1.12);
    }
}
@keyframes button-bounce {
    50% {
        transform: translateY(-7px);
    }
}
