 /* ---------- Monogram hero ---------- */
.mb-hero { --mb-accent:#c81d52; --mb-navy:#2f2a52; color:#fff; }
.mb-hero-row { display:flex; flex-wrap:wrap; align-items:center; }

.mb-hero-title { color:#fff; font-size:44px; line-height:1.2; font-weight:400; margin:0 0 20px; }
.mb-hero-sub { color:rgba(255,255,255,.85); font-size:17px; margin-bottom:24px; }
.mb-hero-sub strong { color:#fff; }

.mb-hero-fields { display:flex; gap:12px; margin-bottom:16px; }
.mb-hero-fields .field-group { flex:1; margin:0; }
.mb-hero-fields .input-control-1 { width:100%; height:48px; padding:0 14px; border-radius:3px; background:#fff; color:#333; }

.mb-hero-submit { width:100%; height:52px; background:var(--mb-accent); border-color:var(--mb-accent); color:#fff; font-weight:600; font-size:16px; border-radius:3px; }
.mb-hero-submit:hover { background:#a8163f; border-color:#a8163f; }

.mb-hero-note { color:rgba(255,255,255,.75); font-size:14px; margin:20px 0 24px; }

.mb-hero-promo { display:flex; align-items:center; gap:14px; padding:16px 18px; border:1px solid rgba(255,255,255,.25); border-radius:4px; background:rgba(0,0,0,.15); }
.mb-hero-promo-badge { flex:0 0 32px; height:32px; border-radius:50%; background:var(--mb-accent); color:#fff; font:13px/32px Georgia, serif; text-align:center; }
.mb-hero-promo-text { flex:1; font-size:13px; color:rgba(255,255,255,.75); }
.mb-hero-promo-text strong { display:block; color:#fff; font-size:15px; margin-bottom:2px; }
.mb-hero-promo-link { color:#f48fb1; font-weight:600; white-space:nowrap; }
.mb-hero-promo-link:hover { color:#fff; text-decoration:none; }

/* Preview card */
.mb-preview { background:#fff; border-radius:6px; padding:24px; max-width:420px; margin-left:auto; box-shadow:0 20px 40px rgba(0,0,0,.25); color:#555; }
.mb-preview-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; }
.mb-preview-label { font-size:12px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--mb-navy); }
.mb-preview-hint { font-size:12px; color:#888; }

.mb-preview-items { display:flex; justify-content:space-between; align-items:center; padding-bottom:20px; border-bottom:1px solid #eee; }
.mb-mono { width:105px; height:105px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:var(--mb-navy); font-family:'Cormorant Garamond', Georgia, serif; }
.mb-mono-initials { font-size:30px; line-height:1; }
.mb-mono-initials em { font-style:normal; font-size:.6em; color:var(--mb-accent); margin:0 4px; }
.mb-mono-names { font-family:Arial, sans-serif; font-size:7px; letter-spacing:1.5px; margin-top:8px; max-width:85px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }

.mb-mono--script { border:2px solid var(--mb-accent); border-radius:50%; }
.mb-mono--script .mb-mono-initials { font-family:'Great Vibes', 'Brush Script MT', cursive; font-size:38px; }
.mb-mono--script .mb-mono-initials em { margin:0 1px; }

.mb-mono--square { width:90px; height:90px; border:4px double var(--mb-navy); }

.mb-mono--filled { background:var(--mb-navy); border-radius:50%; color:#fff; box-shadow:inset 0 0 0 4px var(--mb-navy), inset 0 0 0 5px rgba(255,255,255,.6); }
.mb-mono--filled .mb-mono-initials em { color:#f48fb1; }

.mb-preview-foot { display:flex; justify-content:space-between; align-items:center; padding-top:16px; font-size:13px; }
.mb-preview-foot a { color:var(--mb-accent); font-weight:600; }

@media (max-width:1024px) {
    .mb-preview { margin:40px auto 0; }
}
@media (max-width:575px) {
    .mb-hero-title { font-size:32px; }
    .mb-hero-fields { flex-direction:column; }
    .mb-hero-promo { flex-wrap:wrap; }
    .mb-mono { width:85px; height:85px; transform:scale(.95); }
    .mb-mono--square { width:76px; height:76px; }
}




/* ---------- Why section ---------- */
.wmm-why { padding: 56px 0 60px; background: #fff; }
.wmm-why__title {
	margin: 0 0 40px; text-align: center;
	font-size: 26px; font-weight: 400; color: #2f2d55;
}
.wmm-why__grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
	max-width: 960px; margin: 0 auto;
}
.wmm-why__card {
	padding: 24px 24px 28px; background: #fff;
	border: 1px solid #e6e6ec; border-radius: 3px;
}
.wmm-why__icon { display: inline-flex; color: #c81e5b; margin-bottom: 14px; }
.wmm-why__card-title { margin: 0 0 12px; font-size: 17px; font-weight: 400; color: #2f2d55; }
.wmm-why__card-text { margin: 0 0 14px; font-size: 13px; line-height: 1.7; color: #5d5c75; }
.wmm-why__card-text:last-child { margin-bottom: 0; }
.wmm-why__link { color: #c81e5b; font-weight: 600; text-decoration: none; }
.wmm-why__link:hover { text-decoration: underline; color: #c81e5b; }

/* ---------- CTA band ---------- */
.wmm-cta { padding: 56px 0 50px; background: #34325b; color: #fff; }
.wmm-cta__row { display: flex; max-width: 960px; margin: 0 auto; }
.wmm-cta__col { flex: 1 1 50%; min-width: 0; }
.wmm-cta__col--wedding { padding-right: 32px; border-right: 1px solid rgba(255,255,255,.18); }
.wmm-cta__col--business { padding-left: 32px; }
.wmm-cta__eyebrow {
	display: block; margin-bottom: 10px;
	font-size: 11px; font-weight: 700; letter-spacing: 1.2px;
	text-transform: uppercase; color: #f08bb0;
}
.wmm-cta__title { margin: 0 0 16px; font-size: 22px; font-weight: 400; color: #fff; }
.wmm-cta__text { margin: 0 0 20px; font-size: 13px; line-height: 1.7; color: #d4d3e3; }

.wmm-cta__fields { display: flex; gap: 8px; margin-bottom: 12px; }
.wmm-cta__field { flex: 1 1 0; min-width: 0; margin: 0; }
.wmm-cta .wmm-cta__input {
	width: 100%; height: 38px; padding: 0 12px; margin: 0;
	font-size: 13px; color: #2f2d55; background: #fff;
	border: 1px solid #fff; border-radius: 2px; box-shadow: none;
}
.wmm-cta .wmm-cta__input:focus { outline: none; border-color: #c81e5b; }
.wmm-cta__error { margin-top: 4px; font-size: 12px; color: #ffb3cb; text-align: left; }
.wmm-cta__error:empty { display: none; }

.wmm-cta__submit {
	display: block; width: 100%; height: 40px;
	font-size: 13px; font-weight: 700; color: #fff;
	background: #c81e5b; border: 0; border-radius: 2px; cursor: pointer;
	transition: background .2s;
}
.wmm-cta__submit:hover { background: #ad1850; }

.wmm-cta__outline-btn {
	display: block; height: 40px; line-height: 38px; text-align: center;
	font-size: 13px; font-weight: 700; color: #fff; text-decoration: none;
	border: 1px solid rgba(255,255,255,.85); border-radius: 2px;
	transition: background .2s, color .2s;
}
.wmm-cta__outline-btn:hover { background: #fff; color: #34325b; text-decoration: none; }

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
	.wmm-why__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
	.wmm-why { padding: 40px 0; }
	.wmm-why__title { font-size: 22px; margin-bottom: 28px; }
	.wmm-why__grid { grid-template-columns: 1fr; }
	.wmm-cta__row { flex-direction: column; }
	.wmm-cta__col--wedding { padding: 0 0 32px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
	.wmm-cta__col--business { padding: 32px 0 0; }
}
@media (max-width: 479px) {
	.wmm-cta__fields { flex-direction: column; }
}