:root {
    --bulma-primary-h: 191deg;
    --bulma-primary-s: 91%;
    --bulma-primary-l: 36%;
    --bulma-link-h: 191deg;
    --bulma-link-s: 91%;
    --bulma-link-l: 36%;
    --bulma-info-h: 221deg;
    --bulma-info-s: 91%;
    --bulma-info-l: 36%;
    --bulma-success-h: 161deg;
    --bulma-success-s: 91%;
    --bulma-success-l: 36%;
    --bulma-warning-h: 41deg;
    --bulma-warning-s: 91%;
    --bulma-warning-l: 36%;
    --bulma-danger-h: 341deg;
    --bulma-danger-s: 91%;
    --bulma-danger-l: 36%;
}

/* Emphasis on Plus Plan */
.plan-emphasis {
    border: 2px solid var(--bulma-primary);
}

/* Card hover effect */
.card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(8, 143, 175, 0.12);
}

/* Primary button with light text */
.button.is-primary {
    color: #ffffff;
}

.button.is-primary:hover {
    color: #ffffff;
}

.button.is-primary.is-outlined {
    color: #088faf;
    border-color: #088faf;
}

.button.is-primary.is-outlined:hover {
    background-color: #088faf;
    color: #ffffff;
}

html {
    scroll-behavior: smooth;
}

/* Offset anchor links for fixed navbar */
section[id] {
    scroll-margin-top: 3rem;
}

body > nav > div.navbar-brand > a.navbar-item {
    padding: 0;
}
.navbar-item img, .navbar-item svg {
    max-height: 60px;
}

/* Equal height feature boxes */
#features .cell {
    display: flex;
}

#features .box {
    width: 100%;
}

.feature-icon {
    width: 64px;
    height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--bulma-primary-light);
    border-radius: 12px;
}

.feature-icon i {
    font-size: 2rem;
}

.contact-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bulma-primary-light);
    border-radius: 8px;
    flex-shrink: 0;
}
