/**
 * Stone Tower Winery logged-out account experience.
 *
 * Compact sign-in modal, dedicated registration/confirmation pages, and the
 * WooCommerce lost/reset-password states share one restrained visual system.
 */

.stw-login,
.stw-login-modal {
	--stw-account-bg: #faf9f5;
	--stw-account-paper: #fff;
	--stw-account-soft: #f7f7f0;
	--stw-account-travertine: #e1ddc8;
	--stw-account-gold: #B29659;
	--stw-account-gold-dark: #8e7926;
	--stw-account-ink: #1a1a1a;
	--stw-account-muted: #6e6c67;
	--stw-account-line: #c9c5ba;
	--stw-account-error: #9f3f35;
	--stw-account-success: #4f7a42;
	--stw-account-serif: var(--wp--preset--font-family--lora, "Lora", Georgia, "Times New Roman", serif);
	--stw-account-sans:
		-apple-system,
		blinkmacsystemfont,
		"Segoe UI",
		roboto,
		oxygen-sans,
		ubuntu,
		cantarell,
		"Helvetica Neue",
		sans-serif;
}

.stw-login *,
.stw-login *::before,
.stw-login *::after,
.stw-login-modal *,
.stw-login-modal *::before,
.stw-login-modal *::after {
	box-sizing: border-box;
}

.stw-login [hidden],
.stw-login-modal[hidden] {
	display: none !important;
}

body.stw-login-modal-open {
	overflow: hidden;
}

/* Modal shell */

.stw-login-modal {
	position: fixed;
	inset: 0;
	z-index: 100100;
	display: grid;
	place-items: center;
	padding: 18px;
}

.stw-login-modal__scrim {
	position: absolute;
	inset: 0;
	background: rgba(8, 8, 7, 0.66);
	cursor: pointer;
}

.stw-login-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(440px, calc(100vw - 36px));
	max-height: calc(100dvh - 36px);
	overflow: auto;
	background: var(--stw-account-paper);
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28);
	outline: 0;
	overscroll-behavior: contain;
}

.stw-login-modal__close {
	position: absolute;
	top: 13px;
	right: auto;
	left: 13px;
	z-index: 5;
	display: inline-grid;
	width: 40px;
	height: 40px;
	padding: 0;
	place-items: center;
	color: var(--stw-account-muted);
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
	transition:
		color 180ms ease,
		background 180ms ease;
}

.stw-login-modal__close:hover {
	color: var(--stw-account-ink);
	background: var(--stw-account-soft);
}

.stw-login-modal__close:focus-visible {
	outline: 1px solid var(--stw-account-gold);
	outline-offset: -4px;
}

.stw-login-modal.is-open .stw-login-modal__scrim {
	animation: stw-account-fade-in 160ms ease-out both;
}

.stw-login-modal.is-open .stw-login-modal__dialog {
	animation:
		stw-account-dialog-in 190ms cubic-bezier(0.2, 0.7, 0.2, 1)
		both;
}

@keyframes stw-account-fade-in {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes stw-account-dialog-in {

	from {
		opacity: 0;
		transform: translateY(8px) scale(0.99);
	}

	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {

	.stw-login-modal.is-open .stw-login-modal__scrim,
	.stw-login-modal.is-open .stw-login-modal__dialog {
		animation: none;
	}
}

/* Shared page/panel structure */

.stw-login {
	position: relative;
	display: grid;
	width: 100%;
	min-height: 72vh;
	padding: 64px 20px 76px;
	place-items: center;
	color: var(--stw-account-ink);
	font-family: var(--stw-account-serif);
	isolation: isolate;
}

.stw-login__panel {
	position: relative;
	z-index: 2;
	display: flex;
	width: 100%;
	justify-content: center;
}

.stw-login__body {
	width: min(440px, 100%);
	margin: 0 auto;
	padding: 34px 32px 28px;
	background: var(--stw-account-paper);
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.24);
}

.stw-login-modal .stw-login__body {
	width: 100%;
	padding: 60px 32px 28px;
	box-shadow: none;
}

.stw-login[data-stw-view="register"] .stw-login__body {
	width: min(600px, 100%);
	padding: 42px 44px 36px;
}

.stw-login[data-stw-view="success"] .stw-login__body,
.stw-login__body--single {
	width: min(540px, 100%);
	padding: 46px 46px 40px;
}

.stw-login-modal .stw-login {
	display: block;
	width: auto;
	min-height: 0;
	margin: 0;
	padding: 0;
}

.stw-login__pane {
	width: 100%;
	animation: stw-account-pane-in 180ms ease-out both;
}

@keyframes stw-account-pane-in {

	from {
		opacity: 0;
		transform: translateY(4px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {

	.stw-login__pane {
		animation: none;
	}
}

/* Type */

.stw-login__title {
	max-width: 520px;
	margin: 0 auto 10px;
	color: var(--stw-account-ink);
	font-family: var(--stw-account-serif);
	font-size: clamp(34px, 4vw, 44px);
	font-style: normal;
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1.08;
	text-align: center;
	text-wrap: balance;
}

.stw-login-modal .stw-login__title,
.stw-login__pane--compact .stw-login__title {
	font-size: 34px;
}

.stw-login__lede {
	max-width: 510px;
	margin: 0 auto 30px;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	text-align: center;
	text-wrap: pretty;
}

.stw-login-modal .stw-login__lede {
	margin-bottom: 24px;
	font-size: 15px;
}

.stw-login__hint {
	margin: -3px 0 22px;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.5;
}

/* Forms and fields */

.stw-login .stw-login__form,
.stw-login form.login,
.stw-login form.register,
.stw-login form.lost_reset_password {
	display: block;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.stw-login__pane--register .stw-login__form,
.stw-login--single .stw-login__form {
	margin-top: 30px !important;
}

.stw-field {
	position: relative;
	width: 100%;
	margin: 0 0 18px;
}

.stw-field__label {
	display: block;
	margin: 0 0 8px;
	color: var(--stw-account-ink);
	font-family: var(--stw-account-sans);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	line-height: 1.3;
	text-align: left;
	text-transform: uppercase;
}

.stw-field__row {
	position: relative;
	display: flex;
	width: 100%;
	min-width: 0;
	align-items: stretch;
	background: var(--stw-account-paper);
	border: 1px solid var(--stw-account-line);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.stw-field__row:focus-within,
.stw-field.is-active .stw-field__row {
	border-color: var(--stw-account-gold);
	box-shadow: 0 0 0 1px var(--stw-account-gold);
}

.stw-field.is-error .stw-field__row {
	border-color: var(--stw-account-error);
}

.stw-field__input,
.stw-login input.stw-field__input,
.stw-login .woocommerce-Input.stw-field__input {
	display: block;
	flex: 1 1 auto;
	width: 100% !important;
	min-width: 0;
	height: 52px;
	margin: 0 !important;
	padding: 0 14px !important;
	color: var(--stw-account-ink) !important;
	font-family: var(--stw-account-serif) !important;
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 52px !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
	appearance: none;
}

.stw-field__input:-webkit-autofill,
.stw-field__input:-webkit-autofill:hover,
.stw-field__input:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--stw-account-ink);
	box-shadow: 0 0 0 1000px var(--stw-account-paper) inset !important;
	transition: background-color 9999s ease-out;
}

.stw-field__row > .password-input {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	align-items: center;
}

.stw-field__row > .password-input .stw-field__input {
	padding-right: 4px !important;
}

.stw-field .show-password-input {
	display: none !important;
}

.stw-field__eye {
	display: inline-grid;
	flex: 0 0 50px;
	width: 50px;
	height: 50px;
	margin: 0;
	padding: 0;
	place-items: center;
	color: var(--stw-account-muted);
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
}

.stw-field__eye:hover {
	color: var(--stw-account-ink);
}

.stw-field__eye:focus-visible {
	outline: 1px solid var(--stw-account-gold);
	outline-offset: -4px;
}

.stw-field__eye-off {
	display: none;
}

.stw-field__eye[aria-pressed="true"] .stw-field__eye-on {
	display: none;
}

.stw-field__eye[aria-pressed="true"] .stw-field__eye-off {
	display: block;
}

.stw-login__name-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 18px;
}

.stw-login__row-between {
	display: flex;
	margin: 0 0 22px;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

/* Checkbox */

.stw-check {
	position: relative;
	display: inline-flex;
	margin: 0 !important;
	align-items: center;
	gap: 9px;
	color: var(--stw-account-ink);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.3;
	cursor: pointer;
}

.stw-check__input {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.stw-check__box {
	display: inline-grid;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	place-items: center;
	color: var(--stw-account-paper);
	background: var(--stw-account-paper);
	border: 1px solid var(--stw-account-line);
	transition:
		background 160ms ease,
		border-color 160ms ease;
}

.stw-check__box svg {
	opacity: 0;
}

.stw-check__input:checked + .stw-check__box {
	background: var(--stw-account-gold);
	border-color: var(--stw-account-gold);
}

.stw-check__input:checked + .stw-check__box svg {
	opacity: 1;
}

.stw-check__input:focus-visible + .stw-check__box {
	outline: 1px solid var(--stw-account-gold);
	outline-offset: 2px;
}

/* Links and actions */

.stw-login a {
	color: var(--stw-account-gold-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.stw-login__quiet-link {
	color: var(--stw-account-gold-dark);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.35;
	text-align: right;
}

.stw-login__submit,
.stw-login .stw-login__submit.woocommerce-button,
.stw-login .stw-login__submit.woocommerce-Button,
.stw-login .stw-login__submit.button {
	display: inline-flex !important;
	width: 100% !important;
	min-height: 54px;
	margin: 0 !important;
	padding: 14px 22px !important;
	align-items: center;
	justify-content: center;
	color: var(--stw-account-paper) !important;
	font-family: var(--stw-account-sans) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.2em !important;
	line-height: 1.25 !important;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	background: #000 !important;
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	float: none !important;
	cursor: pointer;
	transition:
		background 200ms ease,
		border-color 200ms ease,
		color 200ms ease;
}

.stw-login__submit:hover,
.stw-login__submit:focus-visible,
.stw-login .stw-login__submit.woocommerce-button:hover,
.stw-login .stw-login__submit.woocommerce-Button:hover {
	color: #000 !important;
	background: var(--stw-account-gold) !important;
	border-color: var(--stw-account-gold) !important;
}

.stw-login__submit:focus-visible {
	outline: 2px solid var(--stw-account-paper);
	outline-offset: -5px;
}

.stw-login__submit:disabled {
	color: var(--stw-account-paper) !important;
	background: #777 !important;
	border-color: #777 !important;
	cursor: wait;
}

.stw-login__secondary-action {
	display: inline-flex;
	width: 100%;
	min-height: 50px;
	padding: 13px 18px;
	align-items: center;
	justify-content: center;
	color: var(--stw-account-ink) !important;
	font-family: var(--stw-account-sans);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	background: var(--stw-account-paper);
	border: 1px solid var(--stw-account-gold);
	transition:
		background 180ms ease,
		color 180ms ease;
}

.stw-login__secondary-action:hover,
.stw-login__secondary-action:focus-visible {
	color: #000 !important;
	background: var(--stw-account-soft);
}

.stw-login__secondary-action:focus-visible {
	outline: 1px solid var(--stw-account-gold);
	outline-offset: 3px;
}

.stw-login__divider {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	width: 100%;
	margin: 18px 0;
	align-items: center;
	gap: 13px;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 15px;
	font-style: italic;
}

.stw-login__divider::before,
.stw-login__divider::after {
	height: 1px;
	background: var(--stw-account-line);
	content: "";
}

.stw-login__switch {
	margin: 22px 0 0;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
}

.stw-login__switch a {
	margin-left: 4px;
	color: var(--stw-account-gold-dark);
}

.stw-login a:hover {
	color: var(--stw-account-ink);
}

/* Notices */

.stw-login__notices {
	margin: 0 0 20px;
}

.stw-login__notices:has(> .woocommerce-notices-wrapper:empty) {
	display: none;
	margin: 0;
}

.stw-login__notices .woocommerce-notices-wrapper:empty {
	display: none;
}

.stw-login__notices .woocommerce-error,
.stw-login__notices .woocommerce-info,
.stw-login__notices .woocommerce-message,
.stw-login__notices .wc-block-components-notice-banner {
	display: block !important;
	margin: 0 !important;
	padding: 12px 14px 12px 17px !important;
	color: var(--stw-account-ink) !important;
	font-family: var(--stw-account-serif) !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	list-style: none;
	background: var(--stw-account-soft) !important;
	border: 0 !important;
	border-left: 3px solid var(--stw-account-gold) !important;
	border-radius: 0 !important;
}

.stw-login__notices .woocommerce-error,
.stw-login__notices .wc-block-components-notice-banner.is-error {
	border-left-color: var(--stw-account-error) !important;
}

.stw-login__notices .woocommerce-error::before,
.stw-login__notices .woocommerce-info::before,
.stw-login__notices .woocommerce-message::before {
	display: none !important;
}

/* stylelint-disable-next-line no-descending-specificity */
.stw-login__notices .wc-block-components-notice-banner > svg {
	display: none !important;
}

.stw-login__notices .wc-block-components-notice-banner__content {
	margin: 0 !important;
	padding: 0 !important;
	color: inherit !important;
}

.stw-login__notices li + li {
	margin-top: 7px;
}

/* Registration additions injected by WooCommerce/Mailchimp */

.stw-login__form .mailchimp-newsletter {
	margin: 18px 0 16px !important;
	color: var(--stw-account-ink);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.45;
}

.stw-login__form .mailchimp-newsletter label {
	display: flex;
	margin: 0;
	align-items: flex-start;
	gap: 9px;
	font: inherit;
	cursor: pointer;
}

.stw-login__form .mailchimp-newsletter input[type="checkbox"] {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: var(--stw-account-gold);
}

.stw-login__form #mailchimp-gdpr-fields {
	margin-bottom: 16px;
}

.stw-login__form .woocommerce-privacy-policy-text {
	margin: 0 0 24px;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 12px;
	line-height: 1.5;
}

.stw-login__form .woocommerce-privacy-policy-text p {
	margin: 0;
}

.stw-login__form .woocommerce-privacy-policy-text a {
	color: var(--stw-account-gold-dark);
}

.stw-login__form wc-order-attribution-inputs,
.stw-login__form .clear {
	display: none;
}

/* Password-strength feedback */

.stw-field .woocommerce-password-strength,
.stw-field .woocommerce-password-hint {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.stw-password-feedback {
	display: block;
	width: 100%;
	margin: 11px 0 2px;
}

.stw-password-feedback[hidden] {
	display: none;
}

.stw-password-feedback__meter {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 4px;
	width: 100%;
	margin-bottom: 8px;
}

.stw-password-feedback__meter i {
	display: block;
	height: 3px;
	background: #deddd9;
}

.stw-password-feedback[data-strength="strong"] .stw-password-feedback__meter i {
	background: var(--stw-account-success);
}

.stw-password-feedback[data-strength="short"] .stw-password-feedback__meter i:nth-child(1) {
	background: var(--stw-account-error);
}

.stw-password-feedback[data-strength="bad"] .stw-password-feedback__meter i:nth-child(-n + 2) {
	background: #b56d3b;
}

.stw-password-feedback[data-strength="good"] .stw-password-feedback__meter i:nth-child(-n + 3) {
	background: var(--stw-account-gold);
}

.stw-password-feedback__summary {
	display: block;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 13px;
	line-height: 1.4;
}

.stw-password-feedback[data-strength="short"]
.stw-password-feedback__summary,
.stw-password-feedback[data-strength="bad"] .stw-password-feedback__summary {
	color: var(--stw-account-error);
}

.stw-password-feedback[data-strength="good"]
.stw-password-feedback__summary {
	color: var(--stw-account-gold-dark);
}

.stw-password-feedback[data-strength="strong"]
.stw-password-feedback__summary {
	color: var(--stw-account-success);
}

/* Confirmation states */

.stw-login__pane--success {
	text-align: center;
}

.stw-login__mail-mark {
	display: inline-flex;
	margin: 0 auto 24px;
	color: var(--stw-account-gold);
}

.stw-login__success-note {
	max-width: 430px;
	margin: -12px auto 26px;
	color: var(--stw-account-muted);
	font-family: var(--stw-account-serif);
	font-size: 14px;
	line-height: 1.55;
	text-align: center;
}

.stw-login__success-link {
	display: inline-block;
	margin-top: 22px;
	color: var(--stw-account-gold-dark);
	font-family: var(--stw-account-serif);
	font-size: 15px;
}

/* Standalone account pages */

.stw-login-active {
	background: #fff;
}

.stw-login-active main .wp-block-group:has(> .my-account-tab-title) {
	display: none !important;
}

.stw-login-active .wp-site-blocks > main {
	min-height: 0 !important;
	margin-block-start: 0;
	padding-bottom: 0 !important;
}

.stw-login-active main > .wp-block-group:has(.stw-login),
.stw-login-active main .wp-block-group:has(> .woocommerce > .stw-login) {
	margin-block-start: 0;
	padding-block-start: 0 !important;
	padding-block-end: 0 !important;
}

.stw-login-active main .wp-block-group:has(> .woocommerce > .stw-login) {
	padding-inline: 0 !important;
}

.stw-login-active .woocommerce:has(> .stw-login) {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.stw-login-active .stw-login {
	--stw-login-hero-inset: clamp(10px, 2.5vw, 16px);
	width: 100vw;
	max-width: 100vw;
	min-height: 100dvh;
	margin-top: calc(-1 * var(--wp--custom--header-height--desktop, 113px));
	margin-right: 0;
	margin-left: 0;
	padding:
		calc(var(--wp--custom--header-height--desktop, 113px) + clamp(28px, 5vw, 58px))
		clamp(16px, 4vw, 56px) clamp(46px, 7vw, 90px);
	overflow: hidden;
	border: var(--stw-login-hero-inset) solid var(--stw-account-paper);
}

.stw-login__background-video {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background-image: url(https://image.mux.com/JbUv00k01UHJrbdwq201p6E02jk9cvRl00iwBvSR02E8XaAuw/thumbnail.jpg?time=0&width=1800&fit_mode=smartcrop);
	background-position: center;
	background-size: cover;
	pointer-events: none;
}

.stw-login__background-video::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(180deg, rgba(10, 10, 8, 0.7) 0%, rgba(10, 10, 8, 0.44) 28%, rgba(10, 10, 8, 0.3) 58%, rgba(10, 10, 8, 0.54) 100%),
		rgba(10, 10, 8, 0.15);
	content: "";
}

.stw-login__background-video-media {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	object-fit: cover;
	object-position: center;
	transition: opacity 200ms ease;
	--media-object-fit: cover;
	--media-object-position: center;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo {
	color: #fff !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part {
	z-index: 10020 !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
a,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
button,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wp-block-navigation-item__content,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wc-block-customer-account__link {
	color: #fff !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content {
	color: #333 !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
svg,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
svg
* {
	color: #fff !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wp-block-navigation__submenu-container
svg,
.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wp-block-navigation__submenu-container
svg
* {
	color: #333 !important;
}

@media (min-width: 992px) {

	.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
	.mobile-menu-closing
)
	header.wp-block-template-part
	#header-left-logo
	.wp-block-navigation-item.has-child.is-submenu-open > .wp-block-navigation__submenu-container {
		visibility: visible !important;
		opacity: 1 !important;
		transform: translateX(-50%) translateY(0) !important;
		transition: none !important;
	}
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo
.wp-block-navigation__responsive-container-open::before {
	background: #fff !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo > .wp-block-minimly-minimly-dynamic-logo
.m-dark-logo {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

.stw-login-active:not(.detached-header):not(.mobile-menu-open):not(
.mobile-menu-closing
)
header.wp-block-template-part
#header-left-logo > .wp-block-minimly-minimly-dynamic-logo
.m-light-logo {
	display: flex !important;
	opacity: 1 !important;
	visibility: visible !important;
}

@media (prefers-reduced-motion: reduce) {

	.stw-login__background-video-media {
		display: none;
	}
}

/* Responsive */

@media (max-width: 700px) {

	.stw-login[data-stw-view="register"] .stw-login__body,
	.stw-login[data-stw-view="success"] .stw-login__body,
	.stw-login__body--single {
		width: min(540px, 100%);
		padding: 34px 28px 30px;
	}

	.stw-login__name-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
}

@media (max-width: 520px) {

	.stw-login-modal {
		padding: 12px;
	}

	.stw-login-modal__dialog {
		width: min(100%, 440px);
		max-height: calc(100dvh - 24px);
	}

	.stw-login-modal__close {
		top: 7px;
		right: auto;
		left: 7px;
	}

	.stw-login-active .stw-login {
		min-height: 100dvh;
		margin-top: calc(-1 * var(--wp--custom--header-height--mobile, 113px));
		padding:
			calc(var(--wp--custom--header-height--mobile, 113px) + 20px)
			12px 38px;
		border-width: 8px;
	}

	.stw-login__body,
	.stw-login[data-stw-view="register"] .stw-login__body,
	.stw-login[data-stw-view="success"] .stw-login__body,
	.stw-login__body--single {
		width: 100%;
		padding: 28px 20px 24px;
	}

	/* stylelint-disable-next-line no-descending-specificity */
	.stw-login-modal .stw-login__body {
		padding: 56px 20px 24px;
	}

	.stw-login__title,
	.stw-login-modal .stw-login__title,
	.stw-login__pane--compact .stw-login__title {
		font-size: 32px;
	}

	.stw-login__lede {
		margin-bottom: 24px;
		font-size: 15px;
	}

	.stw-login__pane--register .stw-login__form,
	.stw-login--single .stw-login__form {
		margin-top: 24px !important;
	}

	.stw-field {
		margin-bottom: 16px;
	}

	.stw-field__input,
	.stw-login input.stw-field__input,
	.stw-login .woocommerce-Input.stw-field__input {
		height: 50px;
		font-size: 16px !important;
		line-height: 50px !important;
	}

	.stw-field__eye {
		height: 48px;
	}

	.stw-login__row-between {
		margin-bottom: 20px;
		gap: 12px;
	}

	.stw-check,
	.stw-login__quiet-link {
		font-size: 13px;
	}

	.stw-login__submit,
	.stw-login .stw-login__submit.woocommerce-button,
	.stw-login .stw-login__submit.woocommerce-Button,
	.stw-login .stw-login__submit.button {
		min-height: 52px;
	}

	.stw-login__secondary-action {
		min-height: 48px;
		padding-right: 12px;
		padding-left: 12px;
		font-size: 10px;
	}

	.stw-login__switch {
		margin-top: 19px;
		font-size: 13px;
	}
}

@media (max-width: 360px) {

	.stw-login__row-between {
		align-items: flex-start;
		flex-direction: column;
	}

	.stw-login__quiet-link {
		text-align: left;
	}
}

@media (max-height: 720px) and (min-width: 521px) {

	.stw-login-modal .stw-login__body {
		padding-top: 56px;
		padding-bottom: 22px;
	}

	.stw-field {
		margin-bottom: 15px;
	}

	.stw-login__row-between {
		margin-bottom: 18px;
	}

	.stw-login__divider {
		margin-top: 15px;
		margin-bottom: 15px;
	}

	.stw-login__switch {
		margin-top: 18px;
	}
}

body.woocommerce-checkout.stw-checkout-has-custom-sign-in
.wp-block-woocommerce-checkout-contact-information-block
.wc-block-checkout__login-prompt {
	display: none !important;
}
