/**
 * Forms and community CTA — refined system
 */

.hemik-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--hemik-space-2);
    width: 100%;
}

.hemik-search-form__label {
    display: block;
    min-width: 0;
}

.hemik-search-form__input {
    height: 100%;
    min-height: 2.875rem;
    margin: 0;
    border-color: rgb(109 40 217 / 0.14);
    background: rgb(255 255 255 / 0.82);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.72);
}

.hemik-search-form__input:hover {
    border-color: rgb(109 40 217 / 0.22);
}

.hemik-search-form__input:focus {
    border-color: var(--hemik-color-action);
    background: var(--hemik-color-surface);
    box-shadow: var(--hemik-shadow-focus);
}

.hemik-search-form__submit {
    white-space: nowrap;
}

input,
textarea,
select {
    border-color: rgb(109 40 217 / 0.14);
    background: rgb(255 255 255 / 0.82);
}

input:hover,
textarea:hover,
select:hover {
    border-color: rgb(109 40 217 / 0.22);
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--hemik-color-action);
    background: var(--hemik-color-surface);
}

input:disabled,
textarea:disabled,
select:disabled {
    cursor: not-allowed;
    opacity: 0.58;
    background: var(--hemik-color-surface-soft);
}

.hemik-community-cta {
    display: grid;
    gap: var(--hemik-space-6);
    align-items: center;
    padding: clamp(var(--hemik-space-6), 5vw, var(--hemik-space-10));
    border: 1px solid rgb(109 40 217 / 0.16);
    border-radius: var(--hemik-radius-xl);
    background:
        linear-gradient(
            135deg,
            rgb(255 255 255 / 0.96) 0%,
            rgb(245 243 255 / 0.96) 100%
        );
    box-shadow: var(--hemik-shadow-sm);
}

.hemik-community-cta__eyebrow {
    margin-block-end: var(--hemik-space-2);
    color: var(--hemik-color-brand);
    font-size: var(--hemik-font-size-sm);
    font-weight: var(--hemik-font-weight-semibold);
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.hemik-community-cta__title {
    font-size: clamp(1.55rem, 1.28rem + 0.9vw, 2.15rem);
    letter-spacing: -0.015em;
}

.hemik-community-cta__description {
    max-width: 44rem;
    margin-block-start: var(--hemik-space-3);
    color: var(--hemik-color-text-soft);
    line-height: 1.75;
}

@media (max-width: 35.999rem) {
    .hemik-search-form {
        grid-template-columns: 1fr;
    }

    .hemik-search-form__submit {
        width: 100%;
    }
}

@media (min-width: 48rem) {
    .hemik-community-cta {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .hemik-community-cta__action {
        justify-content: flex-end;
    }
}
