.nfd-form-wrap {
	--nfd-accent: #bf7950;
	--nfd-dark: #1c1714;
	width: 100%;
	max-width: none;
	margin-right: 0;
	margin-left: 0;
	opacity: 0;
	transform: translate3d(0, 28px, 0);
	transition: opacity .8s ease, transform .9s cubic-bezier(.22, 1, .36, 1);
}
.nfd-form-wrap.is-visible { opacity: 1; transform: none; }
.nfd-form { width: 100%; }
.nfd-form, .nfd-form * { box-sizing: border-box; }
.nfd-form-card {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(28px, 4.5vw, 70px);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
.nfd-form-card::after {
	display: none;
}
.nfd-form-copy { position: relative; z-index: 1; max-width: 650px; margin-bottom: 26px; }
.nfd-eyebrow { color: var(--nfd-accent); font-size: 11px; font-weight: 700; letter-spacing: .18em; }
.nfd-form-copy h3 { margin: 8px 0 10px; color: var(--nfd-dark); font-size: clamp(28px, 3.4vw, 52px); line-height: 1.06; letter-spacing: -.035em; }
.nfd-form-copy p { max-width: 570px; margin: 0; color: #74665e; font-size: clamp(14px, 1.1vw, 17px); line-height: 1.6; }
.nfd-form-fields { position: relative; z-index: 1; display: flex; max-width: 720px; gap: 10px; }
.nfd-email {
	width: 100%;
	min-width: 0;
	height: 56px;
	padding: 0 20px !important;
	border: 1px solid #ded3cc !important;
	border-radius: 999px !important;
	background: #fff !important;
	color: var(--nfd-dark) !important;
	font: inherit !important;
	box-shadow: none !important;
	transition: border .25s ease, box-shadow .25s ease !important;
}
.nfd-email:focus { border-color: var(--nfd-accent) !important; outline: none !important; box-shadow: 0 0 0 4px rgba(191,121,80,.15) !important; }
button.nfd-submit {
	position: relative;
	display: inline-flex;
	min-width: 155px;
	height: 56px;
	padding: 0 27px !important;
	border: 1px solid var(--nfd-accent) !important;
	border-radius: 999px !important;
	align-items: center;
	justify-content: center;
	background: var(--nfd-accent) !important;
	color: #fff !important;
	font: 600 14px/1 inherit !important;
	cursor: pointer;
	transition: transform .25s ease, background .25s ease, box-shadow .25s ease !important;
}
button.nfd-submit:hover, button.nfd-submit:focus-visible { background: #a8613d !important; box-shadow: 0 10px 25px rgba(151,82,47,.25); outline: none; transform: translateY(-2px); }
button.nfd-submit:disabled { cursor: wait; opacity: .75; }
.nfd-submit i { display: none; width: 17px; height: 17px; border: 2px solid rgba(255,255,255,.45); border-top-color: #fff; border-radius: 50%; animation: nfd-spin .7s linear infinite; }
.nfd-submit.is-loading span { display: none; }
.nfd-submit.is-loading i { display: block; }
.nfd-privacy { position: relative; z-index: 1; margin: 12px 0 0; color: #8a7c73; font-size: 12px; }
.nfd-response { position: relative; z-index: 1; overflow: hidden; max-height: 0; margin-top: 0; padding: 0 14px; border-radius: 9px; opacity: 0; transition: all .35s ease; }
.nfd-response.is-success, .nfd-response.is-error { max-height: 100px; margin-top: 15px; padding: 12px 14px; opacity: 1; }
.nfd-response.is-success { background: #e8f5eb; color: #226634; }
.nfd-response.is-error { background: #fae9e7; color: #9a3027; }
.nfd-hp { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; clip: rect(0,0,0,0) !important; }
.nfd-sr-only { position: absolute; overflow: hidden; width: 1px; height: 1px; margin: -1px; clip: rect(0,0,0,0); }
@keyframes nfd-spin { to { transform: rotate(360deg); } }
@media (max-width: 600px) {
	.nfd-form-fields { flex-direction: column; }
	button.nfd-submit { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.nfd-form-wrap { opacity: 1; transform: none; transition: none; }
	.nfd-form-wrap * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
