.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-79b9106:#88175C;--e-global-color-71b4d0e:#14A89A;--e-global-color-de15b59:#E2E0D7;--e-global-color-c06c21a:#FFFFFF;--e-global-color-7d30920:#C42586;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   IWMag — Brevo Magazine Subscribers plugin styling
   Covers: [bms_register] Subscribe · [bms_login] Log in ·
           [bms_account] My subscription · locked-content box ·
           [bms_subscribers_only] · notices · status pills
   Paste into Elementor → Site Settings → Custom CSS
   (or Appearance → Customise → Additional CSS).
   Brand: magenta #C52587 (sections + buttons) · teal #14A89A
          (buttons on magenta) · blue #5170FF · mint #7CE6DA
          paper #FAF9F6 · text #17171C
   ============================================================ */

:root{
  --bms-accent:#C52587;       /* plugin's own button variable */
  --bms-bg:#FAF9F6;           /* teaser fade colour — match your page bg */
  --iwm-magenta:#C52587;
  --iwm-teal:#14A89A;
  --iwm-blue:#5170FF;
  --iwm-mint:#7CE6DA;
  --iwm-paper:#FAF9F6;
  --iwm-text:#17171C;
  --iwm-grey:#55596B;
  --iwm-line:#E2E0D7;
  --iwm-ui:'Archivo',system-ui,sans-serif;
  --iwm-head:'Archivo Black','Archivo',sans-serif;
  --iwm-body:'Source Serif 4',Georgia,serif;
}

/* ---------- shared: forms ---------- */
.bms-form{
  max-width:560px;
  font-family:var(--iwm-body);
  color:var(--iwm-text);
}
.bms-form p{margin:0 0 18px}
.bms-row{display:flex;flex-wrap:wrap;gap:0 16px}
.bms-row .bms-field{flex:1 1 200px}

.bms-field label{
  display:block;
  margin-bottom:6px;
  font-family:var(--iwm-ui);
  font-weight:600;
  font-size:13px;
  letter-spacing:.06em;
  color:var(--iwm-grey);
}
.bms-field input[type="text"],
.bms-field input[type="email"],
.bms-field input[type="password"]{
  width:100%;
  box-sizing:border-box;
  padding:13px 14px;
  font-family:var(--iwm-ui);
  font-size:15px;
  color:var(--iwm-text);
  background:var(--iwm-paper);
  border:1px solid #CFCDC4;
  border-radius:0;
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.bms-field input:focus{
  border-color:var(--iwm-blue);
  box-shadow:0 0 0 3px rgba(81,112,255,.18);
}

/* checkboxes (consent, remember me, delete confirm) */
.bms-field--check label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-family:var(--iwm-ui);
  font-weight:400;
  font-size:14px;
  line-height:1.45;
  letter-spacing:0;
  color:var(--iwm-text);
}
.bms-field--check input{
  flex:none;
  width:18px;height:18px;
  margin:2px 0 0;
  accent-color:var(--iwm-teal);
}

/* honeypot — keep hidden */
.bms-hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}

/* small print + links */
.bms-small{
  font-family:var(--iwm-ui);
  font-size:13px;
  line-height:1.5;
  color:var(--iwm-grey);
}
.bms-form a,
.bms-account a,
.bms-small a,
.bms-link{
  color:var(--iwm-magenta);
  font-family:var(--iwm-ui);
  font-weight:600;
  text-decoration:none;
}
.bms-form a:hover,
.bms-account a:hover,
.bms-small a:hover,
.bms-link:hover{color:var(--iwm-blue)}

/* ---------- buttons ---------- */
.bms-button,
.bms-form button[type="submit"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 26px;
  border:0;
  border-radius:0;
  cursor:pointer;
  background:var(--iwm-magenta);
  color:#fff;
  font-family:var(--iwm-ui);
  font-weight:700;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.16em;
  text-transform:uppercase;
  text-decoration:none;
  filter:none;
  transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
.bms-button:hover,
.bms-button:focus,
.bms-form button[type="submit"]:hover,
.bms-form button[type="submit"]:focus{
  background:var(--iwm-teal);
  color:#fff;
  filter:none;
}

/* secondary — outline */
.bms-button--secondary,
.bms-form button.bms-button--secondary{
  background:transparent;
  color:var(--iwm-magenta);
  box-shadow:inset 0 0 0 1.5px var(--iwm-magenta);
}
.bms-button--secondary:hover,
.bms-button--secondary:focus{
  background:var(--iwm-magenta);
  color:#fff;
  box-shadow:inset 0 0 0 1.5px var(--iwm-magenta);
}

/* danger — delete account */
.bms-button--danger,
.bms-form button.bms-button--danger{
  background:#fff;
  color:var(--iwm-magenta);
  box-shadow:inset 0 0 0 1.5px var(--iwm-magenta);
}
.bms-button--danger:hover,
.bms-button--danger:focus{
  background:var(--iwm-magenta);
  color:#fff;
}

.bms-inline-form{display:inline;margin:0}

/* ---------- notices ---------- */
.bms-notice{
  margin:0 0 22px;
  padding:16px 20px;
  border:0;
  border-left:5px solid;
  border-radius:0;
  font-family:var(--iwm-ui);
  font-size:15px;
  font-weight:600;
  line-height:1.45;
}
.bms-notice ul{margin:0;padding-left:18px}
.bms-notice li+li{margin-top:4px}
.bms-notice a{color:inherit;text-decoration:underline}
.bms-notice--success{background:#E6F6F4;border-color:var(--iwm-teal);color:#0B5C55}
.bms-notice--info   {background:#ECEFFF;border-color:var(--iwm-blue);color:#23349A}
.bms-notice--error  {background:#FBE9F3;border-color:var(--iwm-magenta);color:#8A1760}

/* ---------- locked content box (paywall) ----------
   Selectors are doubled up (.bms-locked.bms-locked) and use
   !important where Elementor's post-content styles would
   otherwise restyle the heading, paragraphs and links.     */
.bms-locked.bms-locked{
  box-sizing:border-box;
  position:relative;
  z-index:1;
  margin:8px 0 40px !important;
  padding:clamp(28px,4vw,44px) clamp(22px,4vw,40px) !important;
  text-align:center;
  background:var(--iwm-magenta) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.bms-locked.bms-locked::before{
  content:"Subscribers only";
  display:inline-block;
  margin:0 0 16px;
  padding:6px 10px;
  background:#fff;
  color:var(--iwm-magenta);
  font-family:var(--iwm-ui);
  font-weight:700;
  font-size:11px;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.bms-locked .bms-locked__heading{
  margin:0 auto 12px !important;
  max-width:560px;
  font-family:var(--iwm-head) !important;
  font-weight:400 !important;
  font-size:clamp(24px,3.2vw,34px) !important;
  line-height:1.02 !important;
  letter-spacing:-.01em !important;
  text-transform:uppercase !important;
  color:#fff !important;
  text-wrap:balance;
}
.bms-locked .bms-locked__message{
  margin:0 auto 18px !important;
  max-width:540px;
  font-family:var(--iwm-body) !important;
  font-size:18px !important;
  line-height:1.5 !important;
  font-style:normal !important;
  color:#fff !important;
  text-wrap:pretty;
}
/* "This article will be available to subscribers on…" */
.bms-locked .bms-locked__release{
  display:inline-block;
  margin:0 auto 22px !important;
  padding:9px 14px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.4);
  font-family:var(--iwm-ui) !important;
  font-weight:600 !important;
  font-size:13px !important;
  line-height:1.4 !important;
  letter-spacing:.04em;
  color:#fff !important;
}
.bms-locked .bms-locked__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px 22px;
  align-items:center;
  justify-content:center;
  margin:0;
}
/* buttons on the magenta box use teal */
.bms-locked a.bms-button,
.bms-locked .bms-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 26px !important;
  background:var(--iwm-teal) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  font-family:var(--iwm-ui) !important;
  font-weight:700 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  filter:none !important;
  transition:background .15s ease,color .15s ease;
}
.bms-locked a.bms-button:hover,
.bms-locked a.bms-button:focus{background:#fff !important;color:var(--iwm-magenta) !important}
.bms-locked .bms-button--secondary{background:transparent !important;box-shadow:inset 0 0 0 1.5px #fff}
.bms-locked a.bms-link,
.bms-locked .bms-link{
  font-family:var(--iwm-ui) !important;
  font-weight:600 !important;
  font-size:14px !important;
  color:#fff !important;
  text-decoration:underline !important;
  text-underline-offset:3px;
}
.bms-locked a.bms-link:hover{color:var(--iwm-mint) !important}

/* coming-soon variant (no buttons, just the message) */
.bms-coming-soon .bms-locked__message{margin-bottom:0 !important;font-size:20px !important}

/* Elementor widget version of the lock */
.bms-elementor-locked{width:100%}

/* staff preview note (only admins see this) */
.bms-staff-note{
  margin:0 0 18px;
  padding:10px 14px;
  border-left:4px solid var(--iwm-blue);
  background:#ECEFFF;
  color:#23349A;
  font-family:var(--iwm-ui);
  font-size:13px;
  line-height:1.45;
}

/* ---------- teaser above the lock ---------- */
.bms-teaser{position:relative;overflow:hidden}
/* the teaser shows a big image; keep it tidy */
.bms-teaser figure,
.bms-teaser .wp-block-image{margin:24px 0 !important}
.bms-teaser img{
  display:block;
  max-width:100%;
  height:auto;
  max-height:70vh;
  width:auto;
  margin:0 auto;
  background:#EEEDE8;
}
/* duplicate name heading straight after the image is hidden */
.bms-teaser figure + h2{display:none}
.bms-teaser .standfirst{font-size:21px;line-height:1.45}
/* fade the last lines into the lock box */
.bms-teaser::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;
  height:6em;
  background:linear-gradient(to bottom,rgba(250,249,246,0),var(--bms-bg,#FAF9F6) 85%);
  pointer-events:none;
}

@media (max-width:600px){
  .bms-locked .bms-locked__actions{flex-direction:column}
  .bms-locked a.bms-button{width:100%}
  .bms-locked .bms-locked__release{display:block}
}

/* ---------- My subscription (account) ---------- */
.bms-account{
  display:grid;
  gap:22px;
  max-width:760px;
  font-family:var(--iwm-body);
  color:var(--iwm-text);
}
.bms-account .bms-locked__actions{justify-content:flex-start}

.bms-card{
  padding:26px 28px;
  background:#fff;
  border:1px solid var(--iwm-line);
  border-radius:0;
}
.bms-card h3{
  margin:0 0 16px;
  padding-bottom:12px;
  border-bottom:2px solid var(--iwm-text);
  font-family:var(--iwm-ui);
  font-weight:700;
  font-size:12px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--iwm-blue);
}
.bms-card > p{margin:0 0 18px;font-size:17px;line-height:1.5}
.bms-card .bms-form{max-width:none}

/* first card = subscription status: magenta panel */
.bms-account > .bms-card:first-child{
  background:var(--iwm-magenta);
  border-color:var(--iwm-magenta);
  color:#fff;
}
.bms-account > .bms-card:first-child h3{color:#fff;border-bottom-color:rgba(255,255,255,.45)}
.bms-account > .bms-card:first-child .bms-small{color:#FFE3F2}
.bms-account > .bms-card:first-child .bms-button{background:var(--iwm-teal);color:#fff}
.bms-account > .bms-card:first-child .bms-button:hover,
.bms-account > .bms-card:first-child .bms-button:focus{background:#fff;color:var(--iwm-magenta)}
.bms-account > .bms-card:first-child .bms-button--secondary{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px #fff}
.bms-account > .bms-card:first-child .bms-button--secondary:hover{background:#fff;color:var(--iwm-magenta)}

/* delete card */
.bms-card--danger{border-color:var(--iwm-magenta);border-style:dashed}
.bms-card--danger h3{color:var(--iwm-magenta)}

/* log out link at the bottom */
.bms-account > p:last-child{margin:0;font-family:var(--iwm-ui);font-size:13px;letter-spacing:.12em;text-transform:uppercase}

/* status pill */
.bms-status{
  display:inline-block;
  margin-top:8px;
  padding:6px 10px;
  border-radius:0;
  font-family:var(--iwm-ui);
  font-weight:700;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  background:#fff;
  color:var(--iwm-text);
}
.bms-status--subscribed{background:var(--iwm-teal);color:#fff}
.bms-status--pending{background:var(--iwm-mint);color:#0F1B4A}
.bms-status--unsubscribed,
.bms-status--not_found,
.bms-status--unknown{background:#fff;color:var(--iwm-magenta)}

/* ============================================================
   PAGE LAYOUT — Elementor Full Width template
   The template removes the theme's content container, so the
   plugin output would otherwise run edge to edge. These rules
   centre it, add page margins and put the forms on a card.
   Works whether the shortcode sits in the page content or in an
   Elementor Shortcode widget.
   ============================================================ */

body:has(.bms-form--register),
body:has(.bms-form--login),
body:has(.bms-account){background:var(--iwm-paper)}

/* shortcode widget: remove Elementor's extra spacing */
.elementor-widget-shortcode:has(.bms-form),
.elementor-widget-shortcode:has(.bms-account){margin-bottom:0}
.elementor-shortcode:has(.bms-form),
.elementor-shortcode:has(.bms-account){
  padding:clamp(40px,7vw,88px) 20px clamp(56px,8vw,104px);
}

/* Subscribe + Log in: centred card */
.bms-form--register,
.bms-form--login{
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:600px;
  margin:clamp(40px,7vw,88px) auto clamp(56px,8vw,104px);
  padding:clamp(24px,4vw,40px);
  background:#fff;
  border:1px solid var(--iwm-line);
  border-top:5px solid var(--iwm-magenta);
}
.bms-form--login{max-width:480px}
.elementor-shortcode .bms-form--register,
.elementor-shortcode .bms-form--login{margin-top:0;margin-bottom:0;width:100%}
.bms-form--register > p:last-child,
.bms-form--login > p:last-child{margin-bottom:0;text-align:center}
.bms-form--register button[type="submit"],
.bms-form--login button[type="submit"]{width:100%}

/* My subscription: centred column */
.bms-account{
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:760px;
  margin:clamp(40px,7vw,88px) auto clamp(56px,8vw,104px);
}
.elementor-shortcode .bms-account{margin-top:0;margin-bottom:0;width:100%}
.bms-card .bms-form{margin:0;padding:0;border:0;background:none;width:auto}
.bms-card .bms-form > p:last-child{margin-bottom:0}

/* notices sit above the card at the same width */
.bms-notice{
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:600px;
  margin:clamp(32px,5vw,56px) auto 0;
}
.bms-notice + .bms-form--register,
.bms-notice + .bms-form--login,
.bms-notice + .bms-account{margin-top:20px}
.bms-notice:has(+ .bms-form--login){max-width:480px}
.bms-notice:has(+ .bms-account){max-width:760px}
.elementor-shortcode .bms-notice{width:100%;margin-top:0;margin-bottom:20px}
.elementor-shortcode .bms-notice + *{margin-top:0}

/* "You're already logged in…" / "Please log in…" lines */
.elementor-shortcode > p,
.elementor-template-full-width .entry-content > p:has(+ .bms-form),
.elementor-template-full-width .entry-content > p:only-child{
  box-sizing:border-box;
  max-width:600px;
  margin:clamp(40px,7vw,88px) auto 20px;
  padding:0 20px;
  text-align:center;
  font-family:var(--iwm-body);
  font-size:18px;
  line-height:1.5;
  color:var(--iwm-text);
}
.elementor-shortcode > p a{color:var(--iwm-magenta);font-family:var(--iwm-ui);font-weight:600}

/* page headings added automatically above each form.
   Delete this block if you add your own heading in Elementor. */
.bms-form--register::before,
.bms-form--login::before{
  display:block;
  margin:0 0 22px;
  padding-bottom:14px;
  border-bottom:2px solid var(--iwm-text);
  font-family:var(--iwm-head);
  font-weight:400;
  font-size:clamp(26px,3.4vw,36px);
  line-height:1;
  letter-spacing:-.01em;
  text-transform:uppercase;
  color:var(--iwm-text);
}
.bms-form--register::before{content:"Subscribe free"}
.bms-form--login::before{content:"Subscriber log in"}
.bms-account::before{
  content:"My subscription";
  display:block;
  padding-bottom:14px;
  border-bottom:3px solid var(--iwm-text);
  font-family:var(--iwm-head);
  font-weight:400;
  font-size:clamp(30px,4.4vw,52px);
  line-height:.98;
  letter-spacing:-.02em;
  text-transform:uppercase;
  color:var(--iwm-text);
}

/* ============================================================
   FORGOTTEN PASSWORD + RESET PASSWORD
   [bms_login] with ?bms_view=lost  → .bms-form--lost
   [bms_login] with ?bms_view=reset → .bms-form--reset
   ============================================================ */

body:has(.bms-form--lost),
body:has(.bms-form--reset){background:var(--iwm-paper)}

.bms-form--lost,
.bms-form--reset{
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:480px;
  margin:clamp(40px,7vw,88px) auto clamp(56px,8vw,104px);
  padding:clamp(24px,4vw,40px);
  background:#fff;
  border:1px solid var(--iwm-line);
  border-top:5px solid var(--iwm-magenta);
}
.elementor-shortcode .bms-form--lost,
.elementor-shortcode .bms-form--reset{margin-top:0;margin-bottom:0;width:100%}

/* intro line ("Enter your email address…" / "Choose a new password for…") */
.bms-form--lost > p:not([class]):first-of-type,
.bms-form--reset > p:not([class]):first-of-type{
  margin:0 0 22px;
  font-family:var(--iwm-body);
  font-size:17px;
  line-height:1.5;
  color:var(--iwm-text);
  text-wrap:pretty;
}
.bms-form--reset strong{font-family:var(--iwm-ui);font-weight:700;color:var(--iwm-magenta);overflow-wrap:anywhere}

.bms-form--lost button[type="submit"],
.bms-form--reset button[type="submit"]{width:100%}
.bms-form--lost > p:last-child,
.bms-form--reset > p:last-child{margin-bottom:0;text-align:center}

/* headings */
.bms-form--lost::before,
.bms-form--reset::before{
  display:block;
  margin:0 0 18px;
  padding-bottom:14px;
  border-bottom:2px solid var(--iwm-text);
  font-family:var(--iwm-head);
  font-weight:400;
  font-size:clamp(24px,3.2vw,32px);
  line-height:1;
  letter-spacing:-.01em;
  text-transform:uppercase;
  color:var(--iwm-text);
}
.bms-form--lost::before{content:"Forgotten password"}
.bms-form--reset::before{content:"Choose a new password"}

/* notices above these forms match their width */
.bms-notice:has(+ .bms-form--lost),
.bms-notice:has(+ .bms-form--reset){max-width:480px}
.bms-notice + .bms-form--lost,
.bms-notice + .bms-form--reset{margin-top:20px}

/* expired/invalid link: notice followed by a "Request a new link" button */
.bms-notice:has(+ p > .bms-button){max-width:480px}
.bms-notice + p:has(> .bms-button){
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:480px;
  margin:20px auto clamp(56px,8vw,104px);
  text-align:center;
}
.bms-notice + p:has(> .bms-button) .bms-button{width:100%}
.elementor-shortcode .bms-notice + p:has(> .bms-button){width:100%;margin-bottom:0}

/* ============================================================
   ALREADY LOGGED IN — Subscribe + Log in pages
   "You're already logged in. Manage your subscription on…"
   "You're logged in. Go to your account."
   The plugin prints a bare <p> straight after the header.
   ============================================================ */

body:has(> .elementor-location-header + p){background:var(--iwm-paper)}

.elementor-location-header + p,
.elementor-shortcode > p:only-child{
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:560px;
  margin:clamp(48px,8vw,104px) auto clamp(64px,9vw,120px);
  padding:clamp(28px,4vw,40px) clamp(24px,4vw,40px) clamp(28px,4vw,36px);
  background:#fff;
  border:1px solid var(--iwm-line);
  border-top:5px solid var(--iwm-magenta);
  text-align:center;
  font-family:var(--iwm-body);
  font-size:19px;
  line-height:1.5;
  color:var(--iwm-text);
}
.elementor-location-header + p::before,
.elementor-shortcode > p:only-child::before{
  content:"Welcome back";
  display:block;
  margin:0 0 14px;
  font-family:var(--iwm-head);
  font-weight:400;
  font-size:clamp(26px,3.4vw,34px);
  line-height:1;
  letter-spacing:-.01em;
  text-transform:uppercase;
  color:var(--iwm-text);
}
/* the account link becomes a button on its own line */
.elementor-location-header + p a,
.elementor-shortcode > p:only-child a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  box-sizing:border-box;
  margin-top:22px;
  padding:16px 26px;
  background:var(--iwm-magenta);
  color:#fff;
  font-family:var(--iwm-ui);
  font-weight:700;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.16em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .15s ease;
}
.elementor-location-header + p a:hover,
.elementor-location-header + p a:focus,
.elementor-shortcode > p:only-child a:hover{background:var(--iwm-teal);color:#fff}

/* ---------- mobile ---------- */
@media (max-width:600px){
  .elementor-location-header + p{width:calc(100% - 32px);font-size:17px}
  .bms-form--lost,
  .bms-form--reset,
  .bms-notice + p:has(> .bms-button){width:calc(100% - 32px)}
  .bms-card{padding:22px 18px}
  .bms-locked{padding:28px 20px}
  .bms-locked__actions .bms-button,
  .bms-form button[type="submit"]{width:100%}
  .bms-form--register,
  .bms-form--login,
  .bms-account,
  .bms-notice{width:calc(100% - 32px)}
  .bms-row{gap:0}
  .bms-account .bms-locked__actions{flex-direction:column;align-items:stretch}
  .bms-account .bms-inline-form,
  .bms-account .bms-inline-form .bms-button{display:block;width:100%}
}


/* ============================================================
   IWMag — article image captions (fix overlap)
   Applies to all posts, teasers and the post-content widget
   ============================================================ */
.elementor-widget-theme-post-content figure,
.elementor-widget-theme-post-content .wp-block-image,
.bms-teaser figure,
.bms-teaser .wp-block-image,
.single-post .entry-content figure{
  display:block !important;
  height:auto !important;
  margin:32px 0 !important;
  overflow:visible !important;
}
.elementor-widget-theme-post-content figure img,
.elementor-widget-theme-post-content .wp-block-image img,
.bms-teaser figure img,
.single-post .entry-content figure img{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 !important;
}
.elementor-widget-theme-post-content figcaption,
.elementor-widget-theme-post-content .wp-element-caption,
.elementor-widget-theme-post-content .wp-caption-text,
.bms-teaser figcaption,
.bms-teaser .wp-element-caption,
.single-post .entry-content figcaption{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:10px 0 0 !important;
  padding:0 0 0 12px !important;
  border-left:3px solid #C52587 !important;
  background:none !important;
  font-family:'Archivo',system-ui,sans-serif !important;
  font-size:14px !important;
  font-style:normal !important;
  line-height:1.45 !important;
  color:#55596B !important;
  text-align:left !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.elementor-widget-theme-post-content figcaption em,
.bms-teaser figcaption em{font-style:italic}/* End custom CSS */