/*=============================================================================
  MAILING LIST CSS

  * For Mailing List signup page and inc_retail_signup portal block
=============================================================================*/

.mailer_signup-page {
    padding: 0 var(--spacing-03);
}

.mailer_signup-form-container, 
.mailer_signup .mailer_signup-faq {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: var(--spacing-15);
}

.mailer_signup .mailer_signup-faq {
	margin-bottom: var(--spacing-10);
}

.podium_perks-heading {
	text-wrap: balance;
}

.podium_perks-subheading {
	padding-bottom: var(--spacing-10);
	max-width: 720px;
	margin: auto;
	font: var(--text-body-md-compact);
	text-wrap: balance;
}

.mailer_signup-header {
	padding-bottom: var(--spacing-10);
	text-wrap: balance;
}

.mailer_signup-join-scroll {
    text-align: center;
    margin-bottom: var(--spacing-06);
}
.mailer_signup-join-scroll .btn-primary{
    display: inline-block;
    margin-bottom: var(--spacing-06);
}

.mailer_signup-benefits {
	text-align: center;
	padding-bottom: var(--spacing-10);
	text-wrap: balance;
}

.subscr_form-wrapper {
	border: 1px solid var(--color-border-primary); border-radius: 6px; 
	padding: var(--spacing-06);
	width: 100%;
	max-width: 540px;
}

.subscr_form-wrapper .form_title {
	text-align: center;
	font: var(--text-title-xl);
	padding-bottom: var(--spacing-06);
}

.subscr_form-bold-label {
	font-size: var(--font-size-100-NC);
	padding-bottom: var(--spacing-04);
	margin: 0;
	font-weight: 500;
}

.mailer_signup-lists {
	list-style-type: none;
	padding: 0;
	margin: 0 0 var(--spacing-06);
	border-radius: var(--spacing-01);
	border: 1px solid var(--color-border-form-default);
}

.mailer_signup-lists li {
	padding: var(--spacing-04);
	border-bottom: 1px solid var(--color-border-form-default);
}

.modal .mailer_signup-lists,
.modal .mailer_signup-lists li {
	border-color: var(--color-border-primary);
}
.modal .mailer_signup-lists:not(:has(+ *)) {
	margin: 0;
}

.modal .mailer_signup-alert{
	margin-bottom: var(--spacing-06);
}

.mailer_signup-lists label {
	margin: 0;
}

.mailer_signup-lists li:last-child {
	border-bottom: none;
}

.mailer_signup .mailer_signup-faq .accordion.list-group{
	width: 100%;
	max-width: 540px;

}

.mailer_signup .form-group {
	margin-bottom: var(--spacing-06);
	color: var(--color-text-form-placeholder, #757575);
}

.mailer_signup .form-group input[type=date] ~ label{
  display: none;
}

.mailer_signup .form-group input[type=date] ~ label.is-lifted{
  display: block;
}

.mailer_signup input.error:invalid,
.mailer_signup input.error:invalid ~ label,
.form-group-error-message,
.mailer-lists-error-message {
	color: var(--color-text-critical);
}

.mailer_signup-lists.error,
.mailer_signup input.error:invalid {
	border-color: var(--color-text-critical);
}

.mailer_signup-lists.error ~ .mailer-lists-error-message,
.mailer-lists-error-message:has(~ .mailer_signup-lists.error),
.mailer_signup input.error:invalid ~ .form-group-error-message {
	display: block;
}

.form-group-error-message {
	display: none;
	font-family: var(--font-family-02, Roboto);
	font-size: var(--font-size-25, 12px);
	font-style: normal;
	font-weight: var(--font-weight-reg, 400);
	line-height: 18px; /* 150% */
	margin: var(--spacing-01) 0 0;
}

.mailer-lists-error-message {
	margin: 0 0 var(--spacing-04);
	display: none;
	font-family: var(--font-family-02, Roboto);
	font-size: var(--font-size-100, 16px);
	line-height: 24px;
}

.mailer-lists-error-message > p {
	display: flex;
	align-items: center;
	margin: 0;
}

.mailer_signup-row {
    margin-bottom: var(--spacing-04);
}

.mailer_signup-row:last-child {
    margin-bottom: 0;
}

.mailer_signup-row label {
    margin-bottom: 0;
}

.mailer_signup-row-check {
    margin-right: 10px;
}

.mailer_signup-note {
    padding-top: var(--spacing-06);
    color: var(--disabled);
}

.page_mailinglist .mailer_signup-lists {
    max-width: none;
}

.page_mailinglist .unsubscribe_header {
    text-align: center;
    margin-top: var(--spacing-10);
    border-top: var(--border-weight-01) solid var(--mediumgray);
    padding-top: var(--spacing-06);
}

.unsubscr_list_check { display: flex; justify-content: center; margin: var(--spacing-06) 0; }
.unsubscr_list_check-submit { margin: auto; background: none; border: none; padding: 0; cursor: pointer; text-decoration: underline; color: var(--black); }
.mailer_signup .recaptcha-disclaimer { color: var(--gray-500); }

@media screen and ( min-width:576px ) {
	.mailer_signup-page {
		padding: 0 var(--spacing-04);
	}
}