.ndi-intake,
.ndi-intake * {
    box-sizing: border-box;
}
.ndi-intake {
    --ndi-accent: var(--nd-accent, #d6a62a);
    --ndi-surface: var(--nd-surface, #111214);
    --ndi-surface-alt: var(--nd-surface-alt, #191b1f);
    --ndi-text: var(--nd-text, #fff);
    --ndi-muted: var(--nd-muted, #a7a9ae);
    max-width: 760px;
    margin: 24px auto;
    padding: clamp(22px, 4vw, 32px);
    border: 1px solid color-mix(in srgb, var(--ndi-text) 12%, transparent);
    border-radius: max(var(--nd-radius, 2px), 12px);
    background: var(--ndi-surface);
    color: var(--ndi-text);
    font-family: inherit;
    box-shadow: var(--nd-shadow, 0 18px 48px rgba(0,0,0,.24));
}
.ndi-intake h2 {
    margin: 0 0 18px;
    color: var(--ndi-text);
    font-family: inherit;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 800;
    line-height: 1;
}
.ndi-intake label {
    display: block;
    margin: 16px 0 7px;
    color: var(--ndi-text);
    font-family: inherit;
    font-weight: 700;
}
.ndi-intake input,
.ndi-intake select,
.ndi-intake textarea {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    border: 1px solid color-mix(in srgb, var(--ndi-text) 22%, transparent);
    border-radius: max(var(--nd-radius, 2px), 6px);
    background: var(--ndi-surface-alt);
    color: var(--ndi-text);
    font: inherit;
    outline: none;
    transition: border-color var(--nd-transition, 180ms) ease, box-shadow var(--nd-transition, 180ms) ease;
}
.ndi-intake textarea { min-height: 110px; resize: vertical; }
.ndi-intake input:focus,
.ndi-intake select:focus,
.ndi-intake textarea:focus {
    border-color: var(--ndi-accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--ndi-accent) 22%, transparent);
}
.ndi-intake button {
    min-height: 44px;
    margin-top: 18px;
    padding: 11px 20px;
    border: 1px solid var(--ndi-accent);
    border-radius: max(var(--nd-radius, 2px), 4px);
    background: var(--ndi-accent);
    color: #111214;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
    transition: transform var(--nd-transition, 180ms) ease, filter var(--nd-transition, 180ms) ease;
}
.ndi-intake button:hover { filter: brightness(1.08); transform: translateY(-1px); }
.ndi-intake button:focus-visible { outline: 2px solid var(--ndi-text); outline-offset: 3px; }
.ndi-notice {
    padding: 12px 14px;
    border: 1px solid transparent;
    border-radius: max(var(--nd-radius, 2px), 6px);
    font: inherit;
}
.ndi-success { background: #153d25; border-color: #2c8b50; }
.ndi-error { background: #4d2020; border-color: #b44343; }
@media (max-width: 640px) {
    .ndi-intake { margin: 16px 0; padding: 20px; }
}
