.mabrook-portal-wrap,
.mabrook-invitation {
    --bde-headings-color: inherit;
    --bde-body-font-color: inherit;
    --bde-links-color: inherit;
    --bde-button-background-color: transparent;
}

.mabrook-portal-wrap,
.mabrook-portal-wrap *,
.mabrook-invitation,
.mabrook-invitation * {
    box-sizing: border-box !important;
    text-shadow: none !important;
}

.mabrook-portal-wrap {
    font-family: 'Outfit', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    color: var(--mb-plum, #33222e) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.mabrook-invitation {
    font-family: 'Outfit', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.mabrook-invitation.is-rtl {
    font-family: 'Amiri', serif !important;
}

.mabrook-portal-wrap h1,
.mabrook-portal-wrap h2,
.mabrook-portal-wrap h3,
.mabrook-portal-wrap h4,
.mabrook-invitation h1,
.mabrook-invitation h2,
.mabrook-invitation h3,
.mabrook-invitation h4 {
    font-family: 'Marcellus', serif !important;
    font-weight: 400 !important;
    margin-top: 0 !important;
    text-shadow: none !important;
    background: none !important;
}

.mabrook-invitation.is-rtl h1,
.mabrook-invitation.is-rtl h2,
.mabrook-invitation.is-rtl h3 {
    font-family: 'Amiri', serif !important;
}

.mabrook-portal-wrap .mabrook-h1,
.mabrook-portal-wrap .mabrook-h2,
.mabrook-portal-wrap .mabrook-h3,
.mabrook-portal-wrap .mabrook-wordmark,
.mabrook-portal-wrap .mabrook-event-title,
.mabrook-portal-wrap .mabrook-theme-name,
.mabrook-portal-wrap .mabrook-stat-value {
    color: var(--mb-plum, #33222e) !important;
}

.mabrook-invitation .mbi-names,
.mabrook-invitation .mbi-date,
.mabrook-invitation .mbi-venue,
.mabrook-invitation .mbi-section h2,
.mabrook-invitation .mbi-section-title {
    color: var(--mbi-primary) !important;
}

.mabrook-portal-wrap a,
.mabrook-invitation a {
    text-decoration: none !important;
    box-shadow: none !important;
    border-bottom: none;
    transition: none !important;
}

.mabrook-portal-wrap a:hover,
.mabrook-invitation a:hover {
    text-decoration: none !important;
}

.mabrook-portal-wrap .mabrook-out-link {
    color: var(--mb-wine, #7e2647) !important;
    border-bottom: 1px solid var(--mb-champagne, #c8a468);
}

.mabrook-portal-wrap ul,
.mabrook-portal-wrap ol,
.mabrook-invitation ul,
.mabrook-invitation ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mabrook-portal-wrap input[type="text"],
.mabrook-portal-wrap input[type="email"],
.mabrook-portal-wrap input[type="password"],
.mabrook-portal-wrap input[type="number"],
.mabrook-portal-wrap input[type="date"],
.mabrook-portal-wrap input[type="time"],
.mabrook-portal-wrap input[type="search"],
.mabrook-portal-wrap input[type="file"],
.mabrook-portal-wrap select,
.mabrook-portal-wrap textarea,
.mabrook-invitation input[type="text"],
.mabrook-invitation input[type="email"],
.mabrook-invitation input[type="number"],
.mabrook-invitation select,
.mabrook-invitation textarea {
    -webkit-appearance: none !important;
    appearance: none !important;
    font-family: inherit !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: var(--mb-plum, #33222e) !important;
    background-color: #FFFFFF !important;
    border: 1px solid var(--mb-line, #e8e2da) !important;
    border-radius: 7px !important;
    padding: 11px 14px !important;
    box-shadow: none !important;
    outline: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0;
}

.mabrook-portal-wrap input:focus,
.mabrook-portal-wrap select:focus,
.mabrook-portal-wrap textarea:focus,
.mabrook-invitation input:focus,
.mabrook-invitation select:focus,
.mabrook-invitation textarea:focus {
    border-color: var(--mb-wine, #7e2647) !important;
    box-shadow: none !important;
    outline: none !important;
    background-color: #FFFFFF !important;
}

.mabrook-invitation input[type="text"],
.mabrook-invitation input[type="email"],
.mabrook-invitation input[type="number"],
.mabrook-invitation select,
.mabrook-invitation textarea {
    border-color: var(--mbi-line) !important;
    background-color: var(--mbi-surface) !important;
    color: var(--mbi-text) !important;
}

.mabrook-invitation input:focus,
.mabrook-invitation select:focus,
.mabrook-invitation textarea:focus {
    border-color: var(--mbi-accent) !important;
    background-color: var(--mbi-surface) !important;
}

.mabrook-portal-wrap select,
.mabrook-invitation select {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236e5f68' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 12px 8px !important;
    padding-right: 36px !important;
}

.mabrook-invitation.is-rtl select {
    background-position: left 14px center !important;
    padding-right: 14px !important;
    padding-left: 36px !important;
}

.mabrook-portal-wrap input[type="checkbox"],
.mabrook-portal-wrap input[type="radio"],
.mabrook-invitation input[type="checkbox"],
.mabrook-invitation input[type="radio"] {
    -webkit-appearance: auto !important;
    appearance: auto !important;
    width: 16px !important;
    height: 16px !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    accent-color: var(--mb-wine, #7e2647) !important;
    background: none !important;
}

.mabrook-invitation input[type="checkbox"],
.mabrook-invitation input[type="radio"] {
    accent-color: var(--mbi-primary) !important;
}

.mabrook-portal-wrap button,
.mabrook-invitation button {
    -webkit-appearance: none !important;
    appearance: none !important;
    font-family: 'Outfit', sans-serif !important;
    box-shadow: none !important;
    text-shadow: none !important;
    outline: none !important;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}

.mabrook-invitation.is-rtl button {
    font-family: 'Amiri', serif !important;
}

.mabrook-portal-wrap .mabrook-btn,
.mabrook-portal-wrap button.mabrook-btn {
    background: var(--mb-wine, #7e2647) !important;
    color: var(--mb-porcelain, #fdfcfa) !important;
    border: 1px solid var(--mb-wine, #7e2647) !important;
    border-radius: 9px !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    letter-spacing: 0.3px !important;
    text-transform: none !important;
    line-height: 1.2 !important;
    min-height: 44px !important;
    height: auto !important;
}

.mabrook-portal-wrap .mabrook-btn:hover,
.mabrook-portal-wrap button.mabrook-btn:hover {
    background: var(--mb-wine-deep, #661d3a) !important;
    border-color: var(--mb-wine-deep, #661d3a) !important;
    color: var(--mb-porcelain, #fdfcfa) !important;
}

.mabrook-portal-wrap .mabrook-btn-quiet,
.mabrook-portal-wrap button.mabrook-btn-quiet,
.mabrook-portal-wrap a.mabrook-btn-quiet {
    background: #FFFFFF !important;
    color: var(--mb-plum, #33222e) !important;
    border: 1px solid var(--mb-line-strong, #d9cec4) !important;
    border-radius: 9px !important;
    padding: 9px 16px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    min-height: 0 !important;
    height: auto !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    display: inline-block !important;
    cursor: pointer !important;
}

.mabrook-portal-wrap .mabrook-btn-quiet:hover,
.mabrook-portal-wrap button.mabrook-btn-quiet:hover,
.mabrook-portal-wrap a.mabrook-btn-quiet:hover {
    color: var(--mb-wine, #7e2647) !important;
    border-color: var(--mb-wine, #7e2647) !important;
    background: #FFFFFF !important;
}

.mabrook-portal-wrap .mabrook-btn-wa,
.mabrook-portal-wrap a.mabrook-btn-wa {
    color: var(--mb-ok, #2f7a5b) !important;
    border-color: #cfe5d8 !important;
}

.mabrook-portal-wrap .mabrook-btn-wa:hover,
.mabrook-portal-wrap a.mabrook-btn-wa:hover {
    background: var(--mb-ok-tint, #e7f2ec) !important;
    color: var(--mb-ok, #2f7a5b) !important;
    border-color: #cfe5d8 !important;
}

.mabrook-invitation .mbr-submit,
.mabrook-invitation button.mbr-submit {
    background: var(--mbi-primary) !important;
    color: var(--mbi-bg) !important;
    border: 1px solid var(--mbi-primary) !important;
    border-radius: 9px !important;
    padding: 14px 20px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    min-height: 0 !important;
    height: auto !important;
    width: 100% !important;
}

.mabrook-invitation .mbr-submit:hover {
    background: var(--mbi-accent) !important;
    border-color: var(--mbi-accent) !important;
    color: var(--mbi-surface) !important;
}

.mabrook-invitation .mbi-rsvp-btn {
    background: var(--mbi-primary) !important;
    color: var(--mbi-bg) !important;
}

.mabrook-invitation .mbi-rsvp-btn:hover {
    background: var(--mbi-accent) !important;
    color: var(--mbi-surface) !important;
}

.mabrook-invitation .mbi-map {
    color: var(--mbi-primary) !important;
    border: 1px solid var(--mbi-accent) !important;
}

.mabrook-invitation .mbi-map:hover {
    background: var(--mbi-accent) !important;
    color: var(--mbi-surface) !important;
}

.mabrook-portal-wrap label,
.mabrook-invitation label {
    font-family: inherit !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.mabrook-portal-wrap img,
.mabrook-invitation img {
    max-width: 100%;
    height: auto;
    border: none !important;
    box-shadow: none !important;
}

/* The nav lives on the dark rail now */
.mabrook-portal-wrap .mabrook-nav a {
    color: rgba(253, 252, 250, 0.72) !important;
    font-size: 15px !important;
}

.mabrook-portal-wrap .mabrook-nav a.is-active {
    color: #ffffff !important;
}

.mabrook-portal-wrap .mabrook-tabs a {
    color: var(--mb-plum-soft, #6e5f68) !important;
    border-bottom: 2px solid transparent !important;
}

.mabrook-portal-wrap .mabrook-tabs a.is-active {
    color: var(--mb-wine, #7e2647) !important;
    border-bottom: 2px solid var(--mb-champagne, #c8a468) !important;
}

.mabrook-invitation .mbi-brand svg,
.mabrook-invitation .mbi-monogram {
    display: inline-block;
    fill: none;
}


.mabrook-invitation .mbi-kicker {
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
    color: var(--mbi-muted) !important;
}

.mabrook-invitation .mbi-detail span {
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    color: var(--mbi-muted) !important;
}

.mabrook-invitation.is-rtl .mbi-kicker,
.mabrook-invitation.is-rtl .mbi-detail span {
    letter-spacing: 0 !important;
    text-transform: none !important;
    font-size: 13px !important;
}

.mabrook-invitation .mbi-date,
.mabrook-invitation .mbi-schedule-time {
    font-family: 'Marcellus', serif !important;
}

.mabrook-invitation.is-rtl .mbi-date,
.mabrook-invitation.is-rtl .mbi-schedule-time {
    font-family: 'Amiri', serif !important;
}

.mabrook-invitation .mbi-schedule-time {
    color: var(--mbi-accent) !important;
    font-size: 13px !important;
    letter-spacing: 1px !important;
}

.mabrook-portal-wrap .mabrook-event-title,
.mabrook-portal-wrap .mabrook-stat-value,
.mabrook-portal-wrap .mabrook-theme-name {
    font-family: 'Marcellus', serif !important;
}

.mabrook-portal-wrap .mabrook-event-type {
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--mb-plum-soft, #6e5f68) !important;
}

.mabrook-invitation .mbi-cal-btn {
    color: var(--mbi-muted) !important;
    border: 1px solid var(--mbi-line) !important;
    border-radius: 30px !important;
    padding: 8px 20px !important;
    font-size: 12px !important;
    background: transparent !important;
}

.mabrook-invitation .mbi-cal-btn:hover {
    border-color: var(--mbi-accent) !important;
    color: var(--mbi-primary) !important;
}

.mabrook-invitation .mbi-preview-band {
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    background: var(--mbi-primary) !important;
    color: var(--mbi-bg) !important;
}

.mabrook-invitation.is-rtl .mbi-preview-band {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.mabrook-portal-wrap .mabrook-stat-label,
.mabrook-portal-wrap .mabrook-party-meta,
.mabrook-portal-wrap .mabrook-muted {
    font-size: 12px !important;
    color: var(--mb-plum-soft, #6e5f68) !important;
}

.mabrook-portal-wrap .mabrook-lead {
    font-size: 15px !important;
    color: var(--mb-plum-soft, #6e5f68) !important;
    line-height: 1.6 !important;
}

.mabrook-invitation .mbi-message,
.mabrook-invitation .mbi-section p {
    line-height: 1.9 !important;
}

.mabrook-portal-wrap .mabrook-alert,
.mabrook-invitation .mabrook-alert {
    font-size: 14px !important;
    line-height: 1.6 !important;
    border-radius: 0 !important;
}

.mabrook-portal-wrap .mabrook-pill,
.mabrook-portal-wrap .mabrook-guest-chip {
    font-size: 12px !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.mabrook-portal-wrap button:focus-visible,
.mabrook-invitation button:focus-visible,
.mabrook-portal-wrap a:focus-visible,
.mabrook-invitation a:focus-visible {
    outline: 2px solid var(--mb-champagne, #c8a468) !important;
    outline-offset: 2px !important;
}

.mabrook-portal-wrap select {
    cursor: pointer !important;
}
