/* ====== Home Hero Module — module-home-hero.php ====== */

/* Hero section — home page only */
.wiko-reference-front .hero {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: var(--wk-space-4xl);
	align-items: center;
	width: 100%;
	max-width: var(--wk-content-max);
	margin: 0 auto;
	padding: var(--wk-space-3) var(--wk-space-2xl);
}

.wiko-reference-front .hero h1 {
	font-size: var(--wk-text-h1);
	font-weight: 760;
	line-height: 1.15;
	color: var(--text, var(--wk-ink));
	margin: 0 0 var(--wk-space-lg);
	white-space: normal;
}

.wiko-reference-front .hero p {
	font-size: var(--wk-text-body);
	line-height: var(--wk-leading);
	color: var(--text-mute, var(--wk-text-secondary));
	margin: 0 0 var(--wk-space-sm);
}

.wiko-reference-front .hero-meta {
	color: var(--accent-text);
	font-size: var(--wk-text-body);
	font-weight: 600;
	margin: var(--wk-space-xs) 0 var(--wk-space-1);
	letter-spacing: 0.01em;
}

.wiko-reference-front .hero-meta .hm-dot {
	font-style: normal;
	font-weight: 400;
	padding: 0 0.45em;
}

.wiko-reference-front .email-card {
	background: var(--bg-card, var(--wk-surface));
	border: 1px solid var(--border, var(--wk-border-soft));
	border-radius: var(--wk-radius);
	padding: var(--wk-space-3xl);
	box-shadow: var(--shadow, 0 8px 24px var(--wk-overlay));
}

.wiko-reference-front .email-card h2 {
	font-size: var(--wk-text-lg);
	font-weight: 700;
	margin: 0 0 var(--wk-space-sm);
	color: var(--text, var(--wk-ink));
}

.wiko-reference-front .email-card .sub {
	font-size: var(--wk-text-md);
	color: var(--text-mute, var(--wk-text-secondary));
	margin: 0 0 var(--wk-space-1);
}

.wiko-reference-front .email-card form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--wk-space-sm);
	align-items: center;
}

.wiko-reference-front .email-card input[type='email'] {
	width: 100%;
	min-height: var(--wk-space-2);
	border: 1px solid var(--border, var(--wk-border-soft));
	border-radius: var(--wk-radius);
	background: var(--bg, var(--wk-surface));
	color: var(--text, var(--wk-ink));
	padding: 0 var(--wk-space-lg);
	font: inherit;
	font-size: var(--wk-text-md);
}

.wiko-reference-front .email-card input[type='email']:focus {
	outline: 2px solid var(--wk-brand);
	outline-offset: 2px;
	border-color: var(--wk-brand);
}

@media (max-width: 820px) {
	.wiko-reference-front .hero { grid-template-columns: 1fr; }
	.wiko-reference-front .hero h1 { font-size: var(--wk-text-h1); }
}

/* Email card form state */
.wiko-reference-front .email-card.is-submitting,
.wiko-reference-front .email-card.is-success {
	border-color: var(--accent) !important;
	box-shadow: 0 16px 42px var(--wk-cat-sky-tint-2) !important;
}

.wiko-reference-front .email-card.is-success {
	transform: translateY(-2px);
}

.wiko-reference-front .wiko-start-npi-form button[disabled] {
	cursor: wait;
	opacity: .82;
}

/* Form layout (form element has .npi-simple-home__form class) */
.npi-simple-home__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--wk-space-sm);
	/* 故意不写 width：表单要填满 .email-card 的内容盒。曾误用间距 token
	   --wk-space-6（120px）当宽度上限，grid 首列被算成 0px，输入框只剩 34px。 */
	margin: 0;
}

.npi-simple-home__form input[type='email'] {
	width: 100%;
	min-height: var(--wk-space-2);
	border: 1px solid var(--wk-border-soft);
	border-radius: var(--wk-radius);
	background: var(--wk-surface);
	color: var(--wk-ink);
	padding: 0 var(--wk-space-lg);
	font: inherit;
	font-size: var(--wk-text-md);
	text-align: left;
	box-shadow: none;
}

.npi-simple-home__form input[type='email']::placeholder {
	color: var(--wk-text-secondary);
}

.npi-simple-home__form input[type='email']:focus {
	outline: 2px solid var(--wk-green);
	outline-offset: 2px;
	border-color: var(--wk-green);
}

.npi-simple-home__form button {
	min-width: var(--wk-space-4);
	min-height: var(--wk-space-2);
	border: 0;
	border-radius: var(--wk-radius);
	background: var(--wk-brand-bright);
	color: var(--wk-white);
	padding: 0 var(--wk-space-lg);
	font: inherit;
	font-size: var(--wk-text-sm);
	font-weight: 650;
	cursor: pointer;
	transition: background 160ms ease, transform 160ms ease;
}

.npi-simple-home__form button:hover {
	background: var(--wk-brand-dark);
	transform: translateY(-1px);
}

/* Notice / feedback messages */
.npi-simple-home__notice,
.npi-simple-home__feedback {
	min-height: var(--wk-space-lg);
	margin: 0 0 var(--wk-space-md);
	font-size: var(--wk-text-xs);
	line-height: 1.4;
	color: var(--wk-text-secondary);
}

.npi-simple-home__feedback {
	margin: 0;
	color: var(--wk-brand-dark);
}

.npi-simple-home__notice--success {
	color: var(--wk-green-dark);
}

.npi-simple-home__notice--error {
	color: var(--wk-brand-dark);
}
