/* Brevo Magazine Subscribers — kept deliberately light so it inherits your theme. */
.bms-teaser { position: relative; }
.bms-teaser::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4em;
	background: linear-gradient(to bottom, rgba(255,255,255,0), var(--bms-bg, #fff));
	pointer-events: none;
}
.bms-locked {
	margin: 1.5em 0; padding: 1.5em; text-align: center;
	border: 1px solid rgba(0,0,0,.12); border-radius: 8px; background: rgba(0,0,0,.025);
}
.bms-locked__heading { margin: 0 0 .4em; }
.bms-locked__message { margin: 0 0 1em; }
.bms-locked__actions { display: flex; flex-wrap: wrap; gap: .75em; align-items: center; justify-content: center; }
.bms-account .bms-locked__actions { justify-content: flex-start; }
.bms-inline-form { display: inline; margin: 0; }

.bms-button, .bms-form button[type="submit"] {
	display: inline-block; padding: .65em 1.3em; border: 0; border-radius: 6px; cursor: pointer;
	background: var(--bms-accent, #1e3a8a); color: #fff; font: inherit; font-weight: 600; text-decoration: none; line-height: 1.2;
}
.bms-button:hover, .bms-button:focus { filter: brightness(1.12); color: #fff; }
.bms-button--secondary { background: transparent; color: var(--bms-accent, #1e3a8a); box-shadow: inset 0 0 0 1.5px currentColor; }
.bms-button--secondary:hover { color: var(--bms-accent, #1e3a8a); }
.bms-button--danger { background: #b42318; }

.bms-form { max-width: 34em; }
.bms-row { display: flex; gap: 1em; flex-wrap: wrap; }
.bms-row .bms-field { flex: 1 1 12em; }
.bms-field label { display: block; font-weight: 600; margin-bottom: .3em; }
.bms-field input[type="text"], .bms-field input[type="email"], .bms-field input[type="password"] {
	width: 100%; box-sizing: border-box; padding: .6em .7em; border: 1px solid rgba(0,0,0,.25); border-radius: 5px; font: inherit;
}
.bms-field--check label { font-weight: normal; display: flex; gap: .5em; align-items: flex-start; }
.bms-field--check input { margin-top: .3em; }
.bms-hp { position: absolute !important; left: -9999px !important; height: 1px; overflow: hidden; }
.bms-small { font-size: .9em; }

.bms-notice { padding: .8em 1em; margin: 0 0 1.2em; border-radius: 6px; border-left: 4px solid; }
.bms-notice ul { margin: 0; padding-left: 1.2em; }
.bms-notice--success { background: #ecfdf3; border-color: #12b76a; color: #054f31; }
.bms-notice--info    { background: #eff8ff; border-color: #2e90fa; color: #194185; }
.bms-notice--error   { background: #fef3f2; border-color: #f04438; color: #7a271a; }

.bms-account { display: grid; gap: 1.2em; }
.bms-card { padding: 1.2em 1.4em; border: 1px solid rgba(0,0,0,.12); border-radius: 8px; }
.bms-card h3 { margin-top: 0; }
.bms-card--danger { border-color: rgba(180,35,24,.35); }
.bms-status { display: inline-block; margin-top: .4em; padding: .15em .6em; border-radius: 99px; font-size: .85em; font-weight: 600; background: #f2f4f7; color: #344054; }
.bms-status--subscribed { background: #ecfdf3; color: #067647; }
.bms-status--pending { background: #fffaeb; color: #b54708; }
.bms-elementor-locked { width: 100%; }
.bms-locked__release { margin: -.4em 0 1em; font-weight: 600; }
.bms-coming-soon .bms-locked__message { margin: 0; font-size: 1.1em; }
.bms-staff-note { padding: .6em .9em; border-left: 4px solid #f79009; background: #fffaeb; color: #93370d; font-size: .9em; }
