/* v0.3.20 Kit signup forms ([hireua_kit_form]). Buttons follow the hover rule:
   yellow #FFF04A -> #E6D52F (navy text), never blue. */
.hu-kit { --hu-kit-r: 6px; position: relative; width: 100%; max-width: 100%; min-width: 0; color: var(--hu-navy); text-align: left; }
.hu-kit *, .hu-kit *::before, .hu-kit *::after { box-sizing: border-box; }
.hu-kit-form { position: relative; margin: 0; }
.hu-kit-hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.hu-kit-title { margin: 0 0 14px; color: var(--hu-navy); font-size: 20px; font-weight: 850; line-height: 1.2; letter-spacing: -.03em; }
.hu-kit-fields { display: grid; gap: 14px; }
.hu-kit-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.hu-kit-field label { color: #25324A; font-size: 12px; font-weight: 750; line-height: 1.3; }
.hu-kit input:not([type="hidden"]) { width: 100%; min-width: 0; height: 51px; margin: 0; padding: 0 15px; border: 1.5px solid var(--hu-line); border-radius: 5px; background: var(--hu-white); color: var(--hu-ink); font: inherit; font-size: 15px; appearance: none; -webkit-appearance: none; transition: border-color .15s, box-shadow .15s; }
.hu-kit input::placeholder { color: #9AA4B5; opacity: 1; }
.hu-kit input:focus { outline: none; border-color: var(--hu-blue); box-shadow: 0 0 0 3px rgba(var(--hu-blue-rgb), .14); }
.hu-kit [aria-invalid="true"] { border-color: #C62828 !important; }
.hu-kit-error { color: #C62828; font-size: 12px; font-weight: 650; line-height: 1.4; }
.hu-kit-alert { margin: 0 0 14px; padding: 11px 13px; border: 1px solid rgba(198, 40, 40, .25); border-radius: 5px; background: #FDF1F1; color: #8E1C1C; font-size: 13px; font-weight: 650; line-height: 1.45; }
.hu-kit-alert:focus, .hu-kit-success:focus { outline: 2px solid var(--hu-blue); outline-offset: 2px; }
.hu-kit-submit { display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; min-height: 56px; margin: 16px 0 0; padding: 12px 18px; border: 1px solid var(--hu-yellow); border-radius: 5px; background: var(--hu-yellow); color: var(--hu-navy); font: inherit; font-size: 15px; font-weight: 850; line-height: 1.2; text-align: center; cursor: pointer; transition: background-color .15s ease, border-color .15s ease; }
.hu-kit-submit:is(:hover, :focus-visible, :active) { border-color: var(--hu-yellow-hover, #E6D52F); background: var(--hu-yellow-hover, #E6D52F); color: var(--hu-navy); }
.hu-kit-submit:focus-visible { outline: 3px solid var(--hu-blue); outline-offset: 3px; }
.hu-kit-submit[aria-busy="true"] { cursor: progress; opacity: .85; }
.hu-kit-note { margin: 12px 0 0; color: #5D6878; font-size: 12px; line-height: 1.5; text-align: center; }
.hu-kit-success { padding: 18px 20px; border: 1px solid rgba(var(--hu-blue-rgb), .25); border-left: 4px solid var(--hu-blue); border-radius: 6px; background: #F1F6FF; }
.hu-kit-success p { margin: 0; color: var(--hu-navy); font-size: 16px; font-weight: 800; line-height: 1.45; }
.hu-kit-needed { margin: 10px 0 0; color: #5D6878; font-size: 12px; line-height: 1.5; }
.hu-kit-fallback { margin: 0; }
.hu-kit-fallback-link { font-weight: 800; }

/* card (default): white panel */
.hu-kit--card { padding: 28px; border: 1px solid var(--hu-line); border-radius: 10px; background: var(--hu-white); box-shadow: 0 18px 44px rgba(var(--hu-navy-rgb), .10); }
.hu-section--navy .hu-kit--card, .is-style-hu-hero-dark .hu-kit--card { border-color: transparent; box-shadow: 0 24px 60px rgba(0, 0, 0, .28); }

/* inline: one row on wide screens */
@media (min-width: 900px) {
	.hu-kit--inline .hu-kit-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; }
	.hu-kit--inline .hu-kit-fields { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
	.hu-kit--inline .hu-kit-submit { width: auto; margin: 0; white-space: nowrap; }
}

/* compact: inside a resource card */
.hu-kit--compact { margin-top: 14px; }
.hu-kit--compact .hu-kit-fields { gap: 8px; }
.hu-kit--compact input:not([type="hidden"]) { height: 46px; font-size: 14px; }
.hu-kit--compact .hu-kit-submit { min-height: 46px; margin-top: 8px; font-size: 14px; }
.hu-resource-card.is-yellow .hu-kit--compact .hu-kit-submit { border-color: var(--hu-navy); background: var(--hu-navy); color: var(--hu-white); }
.hu-resource-card.is-yellow .hu-kit--compact .hu-kit-submit:is(:hover, :focus-visible, :active) { border-color: var(--hu-navy-hover, #030B17); background: var(--hu-navy-hover, #030B17); color: var(--hu-white); }

/* founder: lives inside the yellow .ff-optin box and reuses .ff-optin-form styling */
.hu-kit--founder .hu-kit-fields { display: contents; }
.hu-kit--founder .hu-kit-field { flex: 1 1 260px; }
/* v0.3.80 name + email side by side, button underneath at full width */
.hu-kit--founder .ff-optin-form { flex-wrap: wrap; }
.hu-kit--founder .hu-kit-field--name, .hu-kit--founder .hu-kit-field--email { flex: 1 1 170px; min-width: 0; }
.hu-kit--founder .hu-kit-field--name + .hu-kit-field--email ~ .hu-kit-submit, .hu-kit--founder .hu-kit-fields:has(.hu-kit-field--name) ~ .hu-kit-submit { flex: 1 0 100%; width: 100%; }
.hu-kit--founder .hu-kit-submit { width: auto; min-height: 50px; margin: 0; }
.hu-kit--founder .ff-optin-form { align-items: flex-start; }
.hu-kit--founder .hu-kit-success { background: var(--hu-white); }
@media (max-width: 760px) { .hu-kit--founder .ff-optin-form { align-items: stretch; } .hu-kit--founder .hu-kit-field { flex: 0 0 auto; width: 100%; } .hu-kit--founder .hu-kit-submit { width: 100%; } }

@media (max-width: 580px) {
	.hu-kit--card { padding: 22px 18px; }
	.hu-kit input:not([type="hidden"]) { font-size: 16px; } /* no iOS zoom */
}
@media (prefers-reduced-motion: reduce) { .hu-kit input, .hu-kit-submit { transition: none; } }
.hu-kit-pattern { max-width: 560px !important; }
/* v0.3.80 Founder Files: two fields + button need a fixed-width column next to the heading */
.ff-optin .ff-optin-provider:has(.hu-kit-field--name) { width: min(480px, 100%); }
.hu-kit--founder .ff-optin-form input:not([type="hidden"]) { min-width: 0; }
@media (max-width: 760px) { .ff-optin .ff-optin-provider:has(.hu-kit-field--name) { width: 100%; } }
