/* Checkout login: keep text fields generous without turning the checkbox into a field. */
body.fpr-demo-stage-checkout form.woocommerce-form-login {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 22px;
	width: min(100%, 1160px) !important;
	height: auto !important;
	margin: 18px auto 22px !important;
	padding: clamp(18px, 3vw, 28px) !important;
	border: 1px solid rgba(35, 31, 32, .13) !important;
	border-radius: 18px !important;
	background: rgba(255, 253, 248, .96) !important;
	box-shadow: 0 12px 34px rgba(35, 31, 32, .07) !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login:not(.fpr-login-open) {
	display: none !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login.fpr-login-open {
	display: grid !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login > p:first-child,
body.fpr-demo-stage-checkout form.woocommerce-form-login > .clear,
body.fpr-demo-stage-checkout form.woocommerce-form-login > .form-row:not(.form-row-first):not(.form-row-last) {
	grid-column: 1 / -1;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login > .clear {
	display: none !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login .form-row {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login > .form-row:not(.form-row-first):not(.form-row-last) {
	display: flex !important;
	align-items: center;
	gap: 12px 20px;
	flex-wrap: wrap;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login .woocommerce-form-login__rememberme {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px;
	width: auto !important;
	margin: 0 !important;
	font-size: 13px !important;
}

body.fpr-demo-stage-checkout form.woocommerce-form-login input[type="checkbox"] {
	appearance: auto !important;
	display: inline-block !important;
	flex: 0 0 18px;
	width: 18px !important;
	height: 18px !important;
	min-height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #9a8e94 !important;
	border-radius: 4px !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.fpr-demo-stage-checkout .woocommerce-form-coupon-toggle,
body.fpr-demo-stage-checkout form.checkout_coupon {
	display: none !important;
}

/* Account access and password recovery: centred card, clear header spacing and calm background. */
body.woocommerce-account {
	background: #fffdf8 !important;
}

body.woocommerce-account .container_wrap_first {
	box-sizing: border-box;
	min-height: calc(100vh - 156px);
}

body.woocommerce-account .container_wrap_first > .container {
	padding-top: clamp(34px, 6vw, 72px) !important;
	padding-bottom: clamp(48px, 8vw, 90px) !important;
}

body.woocommerce-account.woocommerce-lost-password .container_wrap_first .woocommerce {
	max-width: 760px;
	margin-inline: auto;
}

body.woocommerce-account form.lost_reset_password {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto !important;
	padding: clamp(24px, 5vw, 44px) !important;
	border: 1px solid rgba(35, 31, 32, .12);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(35, 31, 32, .09);
}

body.woocommerce-account form.lost_reset_password > p:first-child {
	margin: 0 0 24px;
	color: #4f6263;
	font-size: 15px;
	line-height: 1.65;
}

body.woocommerce-account form.lost_reset_password .form-row-first {
	float: none !important;
	width: 100% !important;
}

body.woocommerce-account form.lost_reset_password label {
	display: block;
	margin-bottom: 7px;
	color: #243f42;
	font-weight: 800;
}

body.woocommerce-account form.lost_reset_password #user_login {
	box-sizing: border-box;
	width: 100% !important;
	min-height: 50px;
	padding: 11px 13px;
	border: 1px solid #d9dfe0;
	border-radius: 11px;
	background: #fffdfb;
	font-size: 16px;
}

body.woocommerce-account form.lost_reset_password button[type="submit"] {
	min-height: 46px;
	margin-top: 8px;
	padding-inline: 22px;
	border-radius: 999px;
}

body.woocommerce-account .fpr-seasonal-layer,
body.woocommerce-account .fpr-seasonal-particle,
body.woocommerce-account .csa-sun {
	display: none !important;
}

@media (min-width: 990px) {
	body.woocommerce-account .container_wrap_first {
		min-height: calc(100vh - 64px);
		padding-top: 90px;
	}
}

@media (max-width: 767px) {
	body.fpr-demo-stage-checkout form.woocommerce-form-login {
		grid-template-columns: 1fr;
		gap: 12px;
		width: 100% !important;
		margin: 12px 0 18px !important;
		padding: 17px 15px !important;
		border-radius: 15px !important;
	}

	body.fpr-demo-stage-checkout form.woocommerce-form-login > p,
	body.fpr-demo-stage-checkout form.woocommerce-form-login > .clear {
		grid-column: 1;
	}

	body.fpr-demo-stage-checkout form.woocommerce-form-login > .form-row:not(.form-row-first):not(.form-row-last) {
		align-items: flex-start;
		flex-direction: column;
	}

	body.woocommerce-account .container_wrap_first {
		min-height: calc(100vh - 146px);
	}

	body.woocommerce-account .container_wrap_first > .container {
		width: 100% !important;
		padding: 30px 15px 72px !important;
	}

	body.woocommerce-account form.lost_reset_password {
		padding: 22px 18px !important;
		border-radius: 17px;
	}
}

@media print {
	body.woocommerce-account .fpr-global-journey-menu {
		display: none !important;
	}
}
