/* ════════════════════════════════════════════════════════════════
   PLUGIN SKIN
   Paste into: Divi → Theme Options → General → Custom CSS

   Restyles the output of Zoom Meeting Manager, ProMembership,
   Pro Events and Mailing List Manager so they match the site
   instead of looking like bolted-on plugins.
   ════════════════════════════════════════════════════════════════ */

:root{
  --mmc-d0:#040a07;--mmc-d1:#07110c;--mmc-bone:#e4e5da;--mmc-bone2:#f4f2e8;
  --mmc-moss:#1a7a3c;--mmc-moss-lt:#35a95e;--mmc-sage:#8fb59a;
  --mmc-ember:#e08b3e;--mmc-ember-lt:#f5c088;--mmc-ink:#07110c;
  --mmc-disp:'Bricolage Grotesque',system-ui,sans-serif;
  --mmc-sans:'Inter',system-ui,sans-serif;
}

/* ── 1 · ZOOM MEETING MANAGER — registration form ─────────────── */
.zmm-wrap{max-width:560px;margin:0 auto;font-family:var(--mmc-sans)!important}
.zmm-form-box{
  background:rgba(255,255,255,.03)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:6px!important;padding:38px 34px!important;
  box-shadow:0 30px 70px rgba(0,0,0,.35)!important}
.zmm-title{
  font-family:var(--mmc-disp)!important;font-weight:800!important;
  font-size:26px!important;letter-spacing:-.025em!important;
  color:#fff!important;margin:0 0 8px!important}
.zmm-subtitle{color:var(--mmc-sage)!important;font-size:15px!important;
  margin:0 0 26px!important;line-height:1.6}
.zmm-form label{font-family:var(--mmc-sans)!important;font-size:13px!important;
  font-weight:600!important;color:#c4d1c6!important;margin-bottom:16px!important;
  letter-spacing:.02em}
.zmm-form label input,.zmm-form label select{
  background:rgba(0,0,0,.28)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:3px!important;color:#fff!important;
  font-family:var(--mmc-sans)!important;font-size:15px!important;
  padding:14px 15px!important;margin-top:7px!important}
.zmm-form label input::placeholder{color:#5d7064!important}
.zmm-form label input:focus,.zmm-form label select:focus{
  border-color:var(--mmc-ember)!important;background:rgba(0,0,0,.4)!important;
  box-shadow:0 0 0 3px rgba(224,139,62,.18)!important}
.zmm-form label select{
  background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%228%22%3E%3Cpath%20d%3D%22M1%201l5%205%205-5%22%20stroke%3D%22%238fb59a%22%20stroke-width%3D%221.6%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E")!important}
.req{color:var(--mmc-ember)!important}
.zmm-btn{
  background:var(--mmc-ember)!important;color:#180d03!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;
  font-size:16px!important;padding:18px 20px!important;border-radius:3px!important;
  letter-spacing:0!important;margin-top:8px!important;
  box-shadow:0 8px 28px rgba(224,139,62,.3)!important;
  transition:background .25s,transform .25s!important}
.zmm-btn:hover{background:var(--mmc-ember-lt)!important;transform:translateY(-3px)!important}
.zmm-privacy{color:#5d7064!important;font-size:12.5px!important;margin-top:14px!important}
.zmm-success{background:rgba(26,122,60,.12)!important;border:1px solid rgba(53,169,94,.4)!important;
  color:#cfdad0!important;border-radius:5px!important;padding:22px 24px!important}
.zmm-error{background:rgba(224,139,62,.10)!important;border:1px solid rgba(224,139,62,.4)!important;
  color:#e8d3bd!important;border-radius:5px!important;padding:22px 24px!important}

/* on the bone bands, flip it */
.b6 .zmm-form-box,.b7 .zmm-form-box,.mmctiers .zmm-form-box{
  background:rgba(7,17,12,.04)!important;border-color:rgba(7,17,12,.14)!important;
  box-shadow:0 20px 50px rgba(7,17,12,.12)!important}
.b7 .zmm-title{color:var(--mmc-ink)!important}
.b7 .zmm-subtitle{color:#4a5c4f!important}
.b7 .zmm-form label{color:#3b4a3f!important}
.b7 .zmm-form label input,.b7 .zmm-form label select{
  background:#fff!important;border-color:rgba(7,17,12,.18)!important;color:var(--mmc-ink)!important}

/* ── 2 · PROMEMBERSHIP ────────────────────────────────────────── */
.pmbr-gate{
  background:rgba(255,255,255,.03)!important;
  border:1px solid rgba(224,139,62,.35)!important;
  border-radius:6px!important;padding:44px 34px!important;text-align:center;
  font-family:var(--mmc-sans)!important;max-width:640px;margin:0 auto!important}
.pmbr-gate-icon{font-size:30px!important;margin-bottom:14px!important;opacity:.85}
.pmbr-gate-title{
  font-family:var(--mmc-disp)!important;font-weight:800!important;font-size:25px!important;
  letter-spacing:-.025em!important;color:#fff!important;margin:0 0 10px!important}
.pmbr-gate-msg{color:var(--mmc-sage)!important;font-size:15.5px!important;
  line-height:1.7!important;margin:0 0 26px!important}
.pmbr-gate-btn{
  display:inline-block!important;background:var(--mmc-ember)!important;color:#180d03!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;font-size:15px!important;
  padding:16px 30px!important;border-radius:3px!important;text-decoration:none!important;
  margin:0 6px 10px!important;transition:.25s!important}
.pmbr-gate-btn:hover{background:var(--mmc-ember-lt)!important;transform:translateY(-2px)}
.pmbr-gate a:not(.pmbr-gate-btn){color:var(--mmc-sage)!important;font-size:14px!important;
  text-decoration:underline!important}

/* plans, login, account */
.pmbr-plans,.pmbr-login,.pmbr-account,.pmbr-checkout{font-family:var(--mmc-sans)!important}
.pmbr-plan,.pmbr-card,.pmbr-account-box,.pmbr-login-box{
  background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.12)!important;
  border-radius:6px!important;color:#c4d1c6!important;padding:32px 28px!important}
.pmbr-plan h3,.pmbr-card h3,.pmbr-account-box h2,.pmbr-login-box h2{
  font-family:var(--mmc-disp)!important;font-weight:800!important;color:#fff!important;
  letter-spacing:-.025em!important}
.pmbr-price,.pmbr-plan-price{
  font-family:var(--mmc-disp)!important;font-weight:800!important;
  color:var(--mmc-ember)!important;letter-spacing:-.04em!important}
.pmbr-btn,.pmbr-button,.pmbr-plan .button,
.pmbr-login input[type=submit],.pmbr-account .button{
  background:var(--mmc-ember)!important;color:#180d03!important;border:0!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;font-size:15px!important;
  padding:16px 28px!important;border-radius:3px!important;text-decoration:none!important;
  transition:.25s!important;cursor:pointer}
.pmbr-btn:hover,.pmbr-button:hover{background:var(--mmc-ember-lt)!important;
  transform:translateY(-2px)}
.pmbr-login input[type=text],.pmbr-login input[type=email],
.pmbr-login input[type=password],.pmbr-account input{
  background:rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:3px!important;color:#fff!important;padding:14px 15px!important;
  font-family:var(--mmc-sans)!important;font-size:15px!important;width:100%}
.pmbr-login input:focus,.pmbr-account input:focus{
  border-color:var(--mmc-ember)!important;outline:none!important}
.pmbr-members-welcome{font-family:var(--mmc-disp)!important;font-weight:800!important;
  color:#fff!important;letter-spacing:-.025em!important}

/* the Divi-builder placeholder the plugin shows while editing */
.pmbr-divi-placeholder,.pev-divi-placeholder{
  background:rgba(224,139,62,.10)!important;border:1px dashed rgba(224,139,62,.5)!important;
  color:var(--mmc-ember)!important;padding:26px!important;text-align:center;
  font-family:var(--mmc-sans)!important;font-size:14px!important;border-radius:5px!important}

/* ── 3 · PRO EVENTS ───────────────────────────────────────────── */
.pev-next,.pev-events,.pev-event-card,.pev-card{font-family:var(--mmc-sans)!important}
.pev-next,.pev-event-card,.pev-card{
  background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.12)!important;
  border-radius:6px!important;color:#c4d1c6!important}
.pev-next .pev-title,.pev-event-card h3,.pev-card h3,.pev-title{
  font-family:var(--mmc-disp)!important;font-weight:800!important;color:#fff!important;
  letter-spacing:-.025em!important}
.pev-next .pev-label,.pev-label{
  font-family:var(--mmc-sans)!important;font-size:10.5px!important;font-weight:700!important;
  letter-spacing:.24em!important;text-transform:uppercase!important;
  color:var(--mmc-ember)!important}
.pev-date,.pev-next .pev-date{color:var(--mmc-sage)!important}
.pev-btn,.pev-next a.pev-btn,.pev-event-card a{
  background:var(--mmc-ember)!important;color:#180d03!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;
  padding:14px 26px!important;border-radius:3px!important;text-decoration:none!important;
  border:0!important;transition:.25s!important}
.pev-btn:hover{background:var(--mmc-ember-lt)!important;transform:translateY(-2px)}

/* ── 4 · MAILING LIST MANAGER ─────────────────────────────────── */
.mlm-signup,.mlm-form,.mlm-wrap{font-family:var(--mmc-sans)!important;
  max-width:560px;margin:0 auto}
.mlm-signup h3,.mlm-title{
  font-family:var(--mmc-disp)!important;font-weight:800!important;font-size:24px!important;
  color:#fff!important;letter-spacing:-.025em!important;margin:0 0 8px!important}
.mlm-subtitle,.mlm-signup p{color:var(--mmc-sage)!important;font-size:15px!important;
  line-height:1.65!important}
.mlm-signup input[type=text],.mlm-signup input[type=email],.mlm-form input{
  background:rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:3px!important;color:#fff!important;padding:14px 15px!important;
  font-family:var(--mmc-sans)!important;font-size:15px!important;width:100%}
.mlm-signup input:focus,.mlm-form input:focus{
  border-color:var(--mmc-ember)!important;outline:none!important}
.mlm-signup button,.mlm-form button,.mlm-btn{
  background:var(--mmc-ember)!important;color:#180d03!important;border:0!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;font-size:15px!important;
  padding:16px 26px!important;border-radius:3px!important;cursor:pointer;
  transition:.25s!important}
.mlm-signup button:hover,.mlm-btn:hover{background:var(--mmc-ember-lt)!important;
  transform:translateY(-2px)}
.mlm-success{background:rgba(26,122,60,.12)!important;border:1px solid rgba(53,169,94,.4)!important;
  color:#cfdad0!important;border-radius:5px!important;padding:18px 22px!important}
.mlm-error{background:rgba(224,139,62,.10)!important;border:1px solid rgba(224,139,62,.4)!important;
  color:#e8d3bd!important;border-radius:5px!important;padding:18px 22px!important}

/* ── 5 · shared: kill the plugins' own fonts ──────────────────── */
.zmm-wrap *,.pmbr-gate *,.mlm-signup *,.pev-next *{
  font-family:inherit}

/* ════════════════════════════════════════════════════════════════
   ProMembership 3.15 — specific classes from its own frontend.css
   ════════════════════════════════════════════════════════════════ */
.pmbr-wrap,.pmbr-plans-wrap,.pmbr-checkout-wrap,.pmbr-account-wrap,.pmbr-login-wrap{
  font-family:var(--mmc-sans)!important;color:#b8c6bb!important}
.pmbr-wrap h1,.pmbr-wrap h2,.pmbr-wrap h3,
.pmbr-plans-wrap h1,.pmbr-plans-wrap h2,.pmbr-account-wrap h2,.pmbr-login-wrap h2{
  font-family:var(--mmc-disp)!important;font-weight:800!important;
  letter-spacing:-.03em!important;color:#fff!important}
.pmbr-plan-card,.pmbr-level-card,.pmbr-box,.pmbr-panel{
  background:rgba(255,255,255,.03)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:6px!important;color:#b8c6bb!important}
.pmbr-plan-card.featured,.pmbr-level-card.featured,.pmbr-plan-card.popular{
  border-color:rgba(224,139,62,.45)!important;
  box-shadow:0 30px 70px rgba(0,0,0,.35)!important}
.pmbr-badge,.pmbr-popular-badge,.pmbr-tag{
  background:var(--mmc-ember)!important;color:#180d03!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;
  font-size:10px!important;letter-spacing:.2em!important;text-transform:uppercase!important;
  border-radius:2px!important;padding:6px 12px!important}
.pmbr-amount,.pmbr-plan-amount{
  font-family:var(--mmc-disp)!important;font-weight:800!important;
  font-size:40px!important;letter-spacing:-.04em!important;color:var(--mmc-ember)!important}
.pmbr-period,.pmbr-plan-period{color:#93a897!important;font-size:14px!important}
.pmbr-features li,.pmbr-plan-features li{
  color:#cfdad0!important;font-size:14.5px!important;line-height:1.6!important;
  padding-left:26px!important;position:relative;list-style:none!important}
.pmbr-features li::before,.pmbr-plan-features li::before{
  content:''!important;position:absolute;left:0;top:8px;width:7px;height:7px;
  border-radius:50%;background:var(--mmc-ember)}
.pmbr-cta,.pmbr-submit,.pmbr-plan-cta,button.pmbr-btn,a.pmbr-btn,
.pmbr-wrap button[type=submit],.pmbr-wrap input[type=submit]{
  background:var(--mmc-ember)!important;color:#180d03!important;border:0!important;
  font-family:var(--mmc-sans)!important;font-weight:700!important;font-size:15px!important;
  padding:16px 28px!important;border-radius:3px!important;cursor:pointer!important;
  text-transform:none!important;letter-spacing:0!important;
  box-shadow:0 8px 26px rgba(224,139,62,.28)!important;transition:.25s!important}
.pmbr-cta:hover,.pmbr-submit:hover,button.pmbr-btn:hover,a.pmbr-btn:hover{
  background:var(--mmc-ember-lt)!important;color:#180d03!important;transform:translateY(-2px)}
.pmbr-wrap input[type=text],.pmbr-wrap input[type=email],
.pmbr-wrap input[type=password],.pmbr-wrap input[type=tel],.pmbr-wrap select{
  background:rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:3px!important;color:#fff!important;padding:14px 15px!important;
  font-family:var(--mmc-sans)!important;font-size:15px!important;width:100%!important}
.pmbr-wrap input:focus,.pmbr-wrap select:focus{
  border-color:var(--mmc-ember)!important;outline:none!important;
  box-shadow:0 0 0 3px rgba(224,139,62,.16)!important}
.pmbr-wrap label{color:#c4d1c6!important;font-size:13px!important;font-weight:600!important}
.pmbr-notice,.pmbr-message{border-radius:5px!important;padding:16px 20px!important}
.pmbr-notice.success,.pmbr-success{
  background:rgba(26,122,60,.12)!important;border:1px solid rgba(53,169,94,.4)!important;
  color:#cfdad0!important}
.pmbr-notice.error,.pmbr-error{
  background:rgba(224,139,62,.10)!important;border:1px solid rgba(224,139,62,.4)!important;
  color:#e8d3bd!important}
.pmbr-wrap a{color:var(--mmc-sage)!important}
.pmbr-wrap a:hover{color:var(--mmc-ember)!important}

/* the plugin's own header widget / login state in the nav */
.pmbr-header-widget a,.pmbr-account-link{
  font-family:var(--mmc-sans)!important;font-size:13.5px!important;
  font-weight:500!important;color:#3b4a3f!important;text-decoration:none!important}
.pmbr-header-widget a:hover{color:var(--mmc-moss)!important}

/* ════════════════════════════════════════════════════════════════
   ZOOM REGISTRATION FORM — layout fix
   The plugin's two-column grid was breaking: labels sat beside their
   inputs and fields wrapped. These force label-above-input and a
   clean two-up row.
   ════════════════════════════════════════════════════════════════ */

.zmm-wrap{max-width:600px!important;margin:0 auto!important}
.zmm-form-box{padding:40px 38px!important}

/* every label is a block, its input beneath it */
.zmm-form label{
  display:block!important;width:100%!important;
  margin:0 0 20px!important;
  font-size:12.5px!important;font-weight:600!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
  color:#8fb59a!important;line-height:1.4!important}
.zmm-form label input,
.zmm-form label select,
.zmm-form label textarea{
  display:block!important;width:100%!important;box-sizing:border-box!important;
  margin-top:9px!important;
  font-size:15.5px!important;font-weight:400!important;
  letter-spacing:0!important;text-transform:none!important;
  padding:15px 16px!important}

/* the two-up row: first name / last name */
.zmm-row{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0 18px!important;
  align-items:start!important}
.zmm-row label{margin-bottom:20px!important}
@media(max-width:560px){
  .zmm-row{grid-template-columns:1fr!important;gap:0!important}
  .zmm-form-box{padding:30px 24px!important}
}

/* the button sits alone, full width, below everything */
.zmm-btn{
  display:block!important;width:100%!important;box-sizing:border-box!important;
  margin:10px 0 0!important;float:none!important;clear:both!important}

/* heading and intro */
.zmm-title{font-size:27px!important;line-height:1.15!important;margin:0 0 10px!important}
.zmm-subtitle{margin:0 0 28px!important;font-size:15px!important}
.zmm-privacy{margin:14px 0 0!important;text-align:center!important}

/* the required asterisk shouldn't dominate */
.zmm-form .req{
  color:#e08b3e!important;font-weight:600!important;margin-left:3px;
  font-size:13px!important}

/* stop any stray floats from the plugin's own css */
.zmm-form,.zmm-form-box{overflow:visible!important}
.zmm-form::after{content:'';display:block;clear:both}
