/*
Theme Name:   Apex Meridian Child
Theme URI:    https://joinapexmeridian.com
Description:  Apex Meridian — Hello Elementor child theme. Full membership site with Paid Member Subscriptions, Tutor LMS, Stripe, WP Mail SMTP.
Author:       Apex Meridian
Template:     hello-elementor
Version:      5.0.0
Text Domain:  apex-meridian-child
*/

/* =========================================================
   DESIGN TOKENS
   ========================================================= */
:root {
  /* ── Colour palette ─────────────────────────────────────── */
  --am-navy:       #2A6CB0;   /* Primary — banners, heroes, CTAs */
  --am-navy-mid:   #2f79bd;   /* Hover state for primary         */
  --am-blue:       #2A6CB0;   /* Same — single primary colour    */
  --am-blue-mid:   #2f79bd;   /* Hover state                     */
  --am-blue-pale:  #c8ddf0;   /* Light blue tint                */
  --am-blue-bg:    #E4EEF8;   /* Section background tint        */
  --am-dark:       #21262A;   /* Near-black for text/dark bg    */
  --am-white:      #FFFFFF;
  --am-off-white:  #f5f8fb;
  --am-gray-100:   #E4EEF8;   /* Borders, dividers              */
  --am-gray-200:   #c2d3e8;
  --am-gray-600:   #4a6278;
  --am-text:       #21262A;   /* Body copy — dark charcoal      */
  --am-text-light: #4a5f72;
  --am-text-muted: #6d8aA0;
  --am-success:    #2e7d4f;
  --am-warning:    #d97706;
  --am-danger:     #c0392b;

  /* ── Radii & shadows ────────────────────────────────────── */
  --am-radius:     10px;
  --am-radius-lg:  16px;
  --am-shadow:     0 2px 12px rgba(27,71,117,.09);
  --am-shadow-md:  0 4px 24px rgba(27,71,117,.13);
  --am-shadow-lg:  0 8px 48px rgba(27,71,117,.17);

  /* ── Typography ─────────────────────────────────────────── */
  --am-font-head:   'Fraunces', Georgia, serif;       /* Headings   */
  --am-font-body:   'Outfit', 'Segoe UI', system-ui, sans-serif;  /* Body */
  --am-font-mono:   'DM Mono', 'Courier New', monospace;          /* Eyebrow / small caps */
}

/* =========================================================
   GOOGLE FONTS  — Fraunces · Outfit · DM Mono
   ========================================================= */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,600;1,9..144,600&family=Outfit:wght@300;400;500;600;700&family=DM+Mono:ital,wght@0,400;0,500;1,400&display=swap');

/* =========================================================
   BASE
   ========================================================= */
*, *::before, *::after { box-sizing: border-box; }
body { font-family: var(--am-font-body) !important; color: var(--am-text); -webkit-font-smoothing: antialiased; font-weight: 400; }
h1,h2,h3,h4,h5,h6,.elementor-heading-title { font-family: var(--am-font-head) !important; font-weight: 600; }
a { transition: color .2s; }

/* =========================================================
   ELEMENTOR OVERRIDES
   ========================================================= */
.elementor-button { font-family: var(--am-font-body) !important; font-weight: 600 !important; transition: all .2s !important; }

/* Buttons */
.e-btn-gold { background: var(--am-gold) !important; color: var(--am-navy) !important; border: 2px solid var(--am-gold) !important; border-radius: var(--am-radius) !important; }
.e-btn-gold:hover { background: var(--am-gold-light) !important; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(42,108,176,.25) !important; }
.e-btn-blue { background: var(--am-blue) !important; color: #fff !important; border: 2px solid var(--am-blue) !important; border-radius: var(--am-radius) !important; }
.e-btn-blue:hover { background: var(--am-blue-mid) !important; transform: translateY(-2px); }
.e-btn-navy { background: #2A6CB0 !important; color: #fff !important; border-radius: var(--am-radius) !important; }
.e-btn-outline-white { background: transparent !important; color: #fff !important; border: 2px solid rgba(255,255,255,.45) !important; border-radius: var(--am-radius) !important; }
.e-btn-outline-white:hover { background: rgba(255,255,255,.1) !important; border-color: #fff !important; }

/* Forms — global */
.elementor-form .elementor-field-group label { font-size: .875rem !important; font-weight: 600 !important; color: var(--am-gray-600) !important; margin-bottom: 6px !important; }
.elementor-form .elementor-field { border: 1.5px solid var(--am-gray-100) !important; border-radius: var(--am-radius) !important; padding: 11px 14px !important; font-size: .95rem !important; color: var(--am-text) !important; background: #fff !important; transition: border-color .2s, box-shadow .2s !important; font-family: var(--am-font-body) !important; }
.elementor-form .elementor-field:focus { border-color: var(--am-blue) !important; box-shadow: 0 0 0 3px rgba(43,94,167,.12) !important; outline: none !important; }
.elementor-form .elementor-button[type="submit"] { background: var(--am-blue) !important; color: #fff !important; border: none !important; border-radius: var(--am-radius) !important; font-weight: 700 !important; padding: 13px 28px !important; width: 100% !important; cursor: pointer !important; transition: all .2s !important; }
.elementor-form .elementor-button[type="submit"]:hover { background: var(--am-blue-mid) !important; transform: translateY(-1px) !important; }

/* =========================================================
   AUTH PAGES  (navy gradient — signup & login)
   ========================================================= */
.am-auth-page { background: linear-gradient(135deg, #1e5c9a 0%, var(--am-navy) 60%, #2A6CB0 100%) !important; min-height: 100vh !important; }
.am-auth-card { background: rgba(255,255,255,.055) !important; backdrop-filter: blur(14px) !important; -webkit-backdrop-filter: blur(14px) !important; border: 1px solid rgba(255,255,255,.13) !important; border-radius: 20px !important; padding: 40px 36px !important; box-shadow: 0 20px 60px rgba(0,0,0,.28) !important; }
.am-auth-card .elementor-form .elementor-field { background: rgba(255,255,255,.08) !important; border-color: rgba(255,255,255,.18) !important; color: #fff !important; }
.am-auth-card .elementor-form .elementor-field::placeholder { color: rgba(255,255,255,.38) !important; }
.am-auth-card .elementor-form .elementor-field:focus { border-color: var(--am-gold) !important; box-shadow: 0 0 0 3px rgba(42,108,176,.15) !important; background: rgba(255,255,255,.12) !important; }
.am-auth-card .elementor-form .elementor-field-group label { color: rgba(255,255,255,.82) !important; }
.am-auth-card .elementor-form .elementor-button[type="submit"] { background: var(--am-gold) !important; color: var(--am-navy) !important; font-weight: 700 !important; }
.am-auth-card .elementor-form .elementor-button[type="submit"]:hover { background: var(--am-gold-light) !important; box-shadow: 0 4px 16px rgba(42,108,176,.25) !important; }

/* =========================================================
   MEMBERPRESS OVERRIDES
   ========================================================= */
/* Registration / Login forms */
#mepr_signup_form, #mepr-login-form, .mepr-login-form, .mepr-signup-form {
  background: rgba(255,255,255,.055) !important;
  backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 20px !important;
  padding: 40px 36px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.28) !important;
  max-width: 520px;
  margin: 0 auto;
}
#mepr_signup_form input[type="text"],
#mepr_signup_form input[type="email"],
#mepr_signup_form input[type="password"],
#mepr_signup_form select,
#mepr_signup_form textarea,
.mepr-login-form input[type="text"],
.mepr-login-form input[type="email"],
.mepr-login-form input[type="password"] {
  width: 100% !important;
  padding: 11px 14px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  border-radius: var(--am-radius) !important;
  color: #fff !important;
  font-size: .95rem !important;
  font-family: var(--am-font-body) !important;
  box-sizing: border-box !important;
  margin-bottom: 14px !important;
  transition: border-color .2s, box-shadow .2s !important;
}
#mepr_signup_form input:focus,
.mepr-login-form input:focus { border-color: var(--am-gold) !important; box-shadow: 0 0 0 3px rgba(42,108,176,.15) !important; outline: none !important; background: rgba(255,255,255,.12) !important; }
#mepr_signup_form label,
.mepr-login-form label { display: block; font-size: .875rem !important; font-weight: 600 !important; color: rgba(255,255,255,.82) !important; margin-bottom: 6px !important; }
#mepr_signup_form .mepr-submit,
.mepr-login-form .mepr-submit,
.mepr-login-form input[type="submit"],
#mepr_signup_form input[type="submit"] {
  width: 100% !important;
  padding: 14px !important;
  background: var(--am-gold) !important;
  color: var(--am-navy) !important;
  border: none !important;
  border-radius: var(--am-radius) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: var(--am-font-body) !important;
  transition: all .2s !important;
  margin-top: 8px !important;
}
#mepr_signup_form .mepr-submit:hover,
.mepr-login-form input[type="submit"]:hover { background: var(--am-gold-light) !important; transform: translateY(-1px) !important; box-shadow: 0 4px 16px rgba(42,108,176,.25) !important; }
.mepr-login-forgot-password a, .mepr-signup-account-login a { color: var(--am-gold) !important; font-weight: 600 !important; }
.mepr-account-welcome-msg, .mepr-login-forgot-password { color: rgba(255,255,255,.55) !important; font-size: .85rem !important; }
/* MemberPress pricing pages */
.mepr-price-box { border-radius: var(--am-radius-lg) !important; border: 1.5px solid var(--am-gray-200) !important; box-shadow: var(--am-shadow) !important; overflow: hidden !important; }
.mepr-price-box .mepr-price-box-header { background: #2A6CB0 !important; color: #fff !important; padding: 24px !important; }
.mepr-price-box .mepr-purchase-button { background: var(--am-gold) !important; color: var(--am-navy) !important; border: none !important; border-radius: var(--am-radius) !important; font-weight: 700 !important; padding: 12px 24px !important; width: 100% !important; cursor: pointer !important; font-family: var(--am-font-body) !important; transition: all .2s !important; }
.mepr-price-box .mepr-purchase-button:hover { background: var(--am-gold-light) !important; transform: translateY(-1px) !important; }
/* Account page */
.mepr-account-row { background: #fff; border: 1px solid var(--am-gray-100); border-radius: var(--am-radius) !important; padding: 16px 20px !important; margin-bottom: 10px !important; }
.mepr-account-username { font-weight: 700 !important; color: #21262A !important; font-size: 1.1rem !important; }

/* =========================================================
   LEARNDASH OVERRIDES
   ========================================================= */
/* Course grid */
.ld-course-list-items .ld-item-list-item { border-radius: var(--am-radius-lg) !important; border: 1px solid var(--am-gray-100) !important; box-shadow: var(--am-shadow) !important; overflow: hidden !important; transition: transform .2s, box-shadow .2s !important; }
.ld-course-list-items .ld-item-list-item:hover { transform: translateY(-4px) !important; box-shadow: var(--am-shadow-md) !important; }
.ld-item-list-item-preview { background: var(--am-blue-pale) !important; }
.ld-item-name { font-family: var(--am-font-body) !important; font-weight: 700 !important; color: var(--am-navy) !important; font-size: .9rem !important; }
.learndash-wrapper .ld-lesson-item-section-heading { background: #2A6CB0 !important; color: #fff !important; border-radius: var(--am-radius-sm) !important; }
/* Progress bar */
.learndash-wrapper .ld-progress .ld-progress-bar .ld-progress-bar-percentage { background: var(--am-blue) !important; }
.learndash-wrapper .ld-progress .ld-progress-bar { background: var(--am-gray-100) !important; border-radius: 3px !important; height: 6px !important; }
/* Buttons */
.learndash-wrapper .ld-button,
.learndash-wrapper .btn-join,
.learndash-wrapper #btn-join { background: var(--am-blue) !important; color: #fff !important; border: none !important; border-radius: var(--am-radius) !important; font-weight: 600 !important; font-family: var(--am-font-body) !important; padding: 12px 24px !important; transition: all .2s !important; cursor: pointer !important; }
.learndash-wrapper .ld-button:hover { background: var(--am-blue-mid) !important; transform: translateY(-1px) !important; }
/* Mark complete */
.learndash-wrapper .ld-button.ld-primary-color-hover,
.learndash-wrapper input[name="mark_complete_button"] { background: var(--am-success) !important; color: #fff !important; }
/* Course single */
.learndash-wrapper .ld-course-hero { background: #2A6CB0 !important; }
.learndash-wrapper .ld-alert-warning { background: #fff3cd !important; border-color: var(--am-warning) !important; border-radius: var(--am-radius) !important; }
/* Lesson list */
.learndash-wrapper .ld-table-list-item-preview { background: var(--am-off-white) !important; border-radius: var(--am-radius-sm) !important; }
.learndash-wrapper .ld-table-list-item:hover { background: var(--am-blue-bg) !important; }
/* Quiz */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button { background: var(--am-blue) !important; color: #fff !important; border: none !important; border-radius: var(--am-radius) !important; padding: 10px 24px !important; font-family: var(--am-font-body) !important; }
/* Certificate */
.learndash-wrapper .ld-certificate { border: 2px solid var(--am-gold) !important; }

/* =========================================================
   DASHBOARD  (member area)
   ========================================================= */
.am-dashboard-banner { background: linear-gradient(135deg, #1e5c9a 0%, #2A6CB0 100%) !important; padding: 32px 0 !important; color: #fff !important; }
.am-stat-card { background: #fff; border: 1px solid var(--am-gray-100); border-radius: var(--am-radius-lg) !important; padding: 22px !important; }
.am-stat-value { font-family: var(--am-font-head) !important; font-size: 2rem !important; font-weight: 600 !important; color: #21262A !important; line-height: 1 !important; }
.am-stat-label { font-size: .78rem !important; color: var(--am-text-muted) !important; margin-top: 4px !important; }
.am-course-progress-item { background: #fff; border: 1px solid var(--am-gray-100); border-radius: var(--am-radius) !important; padding: 16px !important; margin-bottom: 10px !important; }
.am-schedule-item { background: var(--am-off-white); border-radius: var(--am-radius) !important; padding: 14px 16px !important; margin-bottom: 8px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; }
.am-quick-link { background: var(--am-off-white) !important; border: 1px solid var(--am-gray-100) !important; border-radius: var(--am-radius-lg) !important; padding: 24px !important; text-align: center !important; transition: transform .2s, background .2s !important; text-decoration: none !important; display: block !important; }
.am-quick-link:hover { background: var(--am-blue-bg) !important; transform: translateY(-2px) !important; }

/* =========================================================
   SECTION BACKGROUNDS
   ========================================================= */
.am-bg-navy    { background: #2A6CB0 !important; }
.am-bg-blue    { background: var(--am-blue) !important; }
.am-bg-gradient-navy { background: linear-gradient(135deg, #1e5c9a 0%, #2A6CB0 60%, #3278bc 100%) !important; }
.am-bg-gradient-blue { background: linear-gradient(135deg, #1e5c9a 0%, #2A6CB0 100%) !important; }
.am-bg-off-white { background: var(--am-off-white) !important; }
.am-bg-blue-bg { background: var(--am-blue-bg) !important; }
.am-bg-white   { background: #fff !important; }

/* =========================================================
   TYPOGRAPHY HELPERS
   ========================================================= */
.am-eyebrow { font-size: .75rem !important; font-weight: 400 !important; font-family: var(--am-font-mono) !important; text-transform: uppercase !important; letter-spacing: .12em !important; color: var(--am-blue) !important; display: block; margin-bottom: 10px; }
.am-eyebrow-blue { color: var(--am-blue) !important; }
.am-text-white { color: rgba(255,255,255,.85) !important; }
.am-text-muted-light { color: rgba(255,255,255,.55) !important; }
.am-heading-white .elementor-heading-title, .am-heading-white { color: #fff !important; }
.am-heading-gold  .elementor-heading-title, .am-heading-gold  { color: var(--am-gold) !important; }
.am-heading-navy  .elementor-heading-title, .am-heading-navy  { color: var(--am-navy) !important; }

/* =========================================================
   CARDS
   ========================================================= */
.am-card { background: #fff; border-radius: var(--am-radius-lg) !important; box-shadow: var(--am-shadow); }
.am-card-bordered { background: #fff; border: 1px solid var(--am-gray-100) !important; border-radius: var(--am-radius-lg) !important; transition: transform .2s, box-shadow .2s; }
.am-card-bordered:hover { transform: translateY(-3px); box-shadow: var(--am-shadow-md) !important; }
.am-card-dark { background: rgba(255,255,255,.055) !important; border: 1px solid rgba(255,255,255,.12) !important; border-radius: var(--am-radius-lg) !important; }
.am-pricing-card { background: #fff; border: 1.5px solid var(--am-gray-200) !important; border-radius: var(--am-radius-lg) !important; transition: transform .2s, box-shadow .2s; }
.am-pricing-card:hover { transform: translateY(-4px); box-shadow: var(--am-shadow-lg) !important; }
.am-pricing-card-featured { border-color: var(--am-blue) !important; box-shadow: 0 0 0 2px var(--am-blue), var(--am-shadow-md) !important; }
.am-advisor-card { background: #fff; border: 1px solid var(--am-gray-100); border-radius: var(--am-radius-lg) !important; padding: 28px !important; text-align: center; transition: transform .2s, box-shadow .2s; }
.am-advisor-card:hover { transform: translateY(-3px); box-shadow: var(--am-shadow-md) !important; }

/* =========================================================
   FOOTER
   ========================================================= */
.am-footer { background: var(--am-dark) !important; }
.am-footer a { color: rgba(255,255,255,.62) !important; font-size: .875rem !important; transition: color .2s !important; }
.am-footer a:hover { color: #fff !important; }
.am-footer h5, .am-footer .elementor-heading-title { font-size: .7rem !important; font-weight: 400 !important; text-transform: uppercase !important; letter-spacing: .12em !important; color: rgba(255,255,255,.38) !important; font-family: var(--am-font-mono) !important; margin-bottom: 16px !important; }
.am-footer-desc { font-size: .875rem; color: rgba(255,255,255,.52); line-height: 1.75; }
.am-footer-bottom { border-top: 1px solid rgba(255,255,255,.1) !important; padding-top: 20px !important; font-size: .8rem; color: rgba(255,255,255,.32); }

/* =========================================================
   FORM MESSAGE STATES (AJAX feedback)
   ========================================================= */
.am-msg { display: none; padding: 12px 16px; border-radius: var(--am-radius); font-size: .875rem; margin-bottom: 16px; }
.am-msg--success { display: block !important; background: #edfaf1; border: 1px solid #27ae60; color: #1e7e34; }
.am-msg--error   { display: block !important; background: #fdf2f1; border: 1px solid #e74c3c; color: #922b21; }

/* =========================================================
   PROGRESS BARS
   ========================================================= */
.am-progress-wrap { height: 6px; background: var(--am-gray-100); border-radius: 3px; overflow: hidden; }
.am-progress-fill { height: 100%; background: var(--am-blue); border-radius: 3px; transition: width .6s ease; }
.am-progress-fill--gold  { background: var(--am-gold); }
.am-progress-fill--green { background: var(--am-success); }

/* =========================================================
   BADGES
   ========================================================= */
.am-badge { display: inline-flex; align-items: center; padding: 3px 12px; border-radius: 20px; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.am-badge-active  { background: #d4edda; color: #1e7e34; }
.am-badge-gold    { background: rgba(42,108,176,.15); color: var(--am-gold-dark); }
.am-badge-blue    { background: var(--am-blue-pale); color: var(--am-blue); }
.am-badge-pending { background: #fff3cd; color: #856404; }
.am-badge-danger  { background: #fdf2f1; color: var(--am-danger); }

/* =========================================================
   ADMIN BAR OFFSET
   ========================================================= */
.admin-bar .elementor-sticky--active { top: 32px !important; }
@media (max-width: 782px) { .admin-bar .elementor-sticky--active { top: 46px !important; } }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 768px) {
  .am-auth-card { padding: 28px 20px !important; }
  #mepr_signup_form, #mepr-login-form, .mepr-login-form { padding: 28px 20px !important; }
}

/* =========================================================
   INSTRUCTOR SYSTEM
   ========================================================= */

/* Instructor browse page */
.am-instructor-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--am-shadow-md) !important;
}

/* Specialty filter active state */
.am-spec-btn.active {
  background: var(--am-blue) !important;
  color: #fff !important;
  border-color: var(--am-blue) !important;
}

/* Drawer */
#am-instructor-drawer.am-drawer-open {
  transform: translateX(0) !important;
}

/* Instructor auth pages — same navy gradient as student auth */
.am-instructor-auth-page {
  background: linear-gradient(135deg, #1e5c9a 0%, #2A6CB0 60%, #3278bc 100%) !important;
  min-height: 100vh !important;
}

/* Instructor dashboard banner */
.am-instructor-banner {
  background: linear-gradient(135deg, #1e5c9a 0%, #2A6CB0 55%, #3278bc 100%) !important;
}

/* Instructor stat cards */
.am-instructor-stat {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: var(--am-radius-lg) !important;
  padding: 20px !important;
  text-align: center !important;
}
.am-instructor-stat-value {
  font-family: var(--am-font-head) !important;
  font-size: 2rem !important;
  font-weight: 600 !important;
  color: #fff !important;
  line-height: 1 !important;
}
.am-instructor-stat-label {
  font-size: .75rem !important;
  color: rgba(255,255,255,.5) !important;
  margin-top: 4px !important;
}

/* Course cards in instructor view */
.am-instructor-course-card {
  background: #fff;
  border: 1px solid var(--am-gray-100);
  border-radius: var(--am-radius-lg);
  overflow: hidden;
  transition: transform .2s, box-shadow .2s;
}
.am-instructor-course-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--am-shadow-md);
}

/* Student count badge */
.am-student-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  background: var(--am-blue-bg);
  color: var(--am-blue);
  border-radius: 20px;
  font-size: .72rem;
  font-weight: 700;
}

/* Enroll button states */
.am-enroll-btn {
  display: block;
  width: 100%;
  padding: 12px;
  background: var(--am-blue);
  color: #fff;
  border: none;
  border-radius: var(--am-radius);
  font-weight: 700;
  font-size: .875rem;
  font-family: var(--am-font-body);
  cursor: pointer;
  transition: all .2s;
  text-align: center;
  text-decoration: none;
}
.am-enroll-btn:hover {
  background: var(--am-blue-mid);
  transform: translateY(-1px);
}
.am-enroll-btn.enrolled {
  background: var(--am-success);
  cursor: default;
}
.am-enroll-btn.enrolled:hover {
  transform: none;
}

/* Instructor profile in drawer */
.am-drawer-header {
  background: linear-gradient(135deg, #1e5c9a, #2A6CB0);
  padding: 28px 24px 24px;
}
.am-drawer-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(42,108,176,.2);
  border: 2px solid rgba(42,108,176,.35);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--am-gold);
  flex-shrink: 0;
}

/* =========================================================
   PAYPAL PAYMENT GATEWAY
   ========================================================= */

/* PayPal button — MemberPress renders this natively */
.mepr-payment-method-paypal .mepr-payment-method-button,
.mp_wrapper .mepr-payment-form .paypal-button-container,
.mepr-paypal-button-wrap { margin-top: 8px !important; }

/* Gateway selector tabs on signup forms */
.mepr-payment-method-tabs {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 18px !important;
  flex-wrap: wrap !important;
}
.mepr-payment-method-tab {
  flex: 1 !important;
  padding: 11px 16px !important;
  border-radius: var(--am-radius) !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.06) !important;
  color: rgba(255,255,255,.65) !important;
  font-size: .875rem !important;
  font-weight: 600 !important;
  font-family: var(--am-font-body) !important;
  cursor: pointer !important;
  text-align: center !important;
  transition: all .2s !important;
}
.mepr-payment-method-tab.active,
.mepr-payment-method-tab:hover {
  border-color: var(--am-gold) !important;
  background: rgba(42,108,176,.12) !important;
  color: #fff !important;
}
.mepr-payment-method-tab .mepr-tab-icon { font-size: 1.1rem; display: block; margin-bottom: 3px; }

/* PayPal brand colors on button */
.am-paypal-btn {
  background: #0070ba !important;
  color: #fff !important;
  border-radius: var(--am-radius) !important;
  font-weight: 700 !important;
  border: none !important;
  font-family: var(--am-font-body) !important;
  transition: background .2s !important;
}
.am-paypal-btn:hover { background: #003087 !important; }

/* "Powered by PayPal" badge */
.am-paypal-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  background: #f0f4ff;
  border: 1px solid #d0dbf0;
  border-radius: 20px;
  font-size: .72rem;
  color: #003087;
  font-weight: 600;
}

/* Security badges strip below payment buttons */
.am-payment-security {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 12px;
  flex-wrap: wrap;
}
.am-payment-security-badge {
  font-size: .7rem;
  color: rgba(255,255,255,.38);
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Pricing card — gateway badges */
.am-gateway-badges {
  display: flex;
  gap: 5px;
  margin-top: 10px;
  flex-wrap: wrap;
}
.am-gateway-badge {
  padding: 3px 10px;
  border-radius: 4px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .02em;
}
.am-gateway-badge-stripe {
  background: #635bff;
  color: #fff;
}
.am-gateway-badge-paypal {
  background: #0070ba;
  color: #fff;
}
.am-gateway-badge-cards {
  background: #f5f7fb;
  color: #4a6278;
  border: 1px solid #e4e9f2;
}
