/* ============================================================
   SAMSUNG DARK MODE PREVENTION
============================================================ */
:root {
  color-scheme: light only !important;
}

/* ============================================================
   MY LOAN UNDERWRITERS — Master Stylesheet
   Barragan Media
   Last updated: March 2026
   
   TABLE OF CONTENTS
   ─────────────────────────────────────────────────────────────
   1.  CSS Variables
   2.  Reset & Base
   3.  Typography Utilities
   4.  Buttons
   5.  Section Components (trust bar, program cards, steps, etc.)
   6.  Homepage Sections (hero, about, testimonials, lead magnet, contact)
   7.  Raven Form — Apply Page
   8.  Raven Form — Contact Page
   9.  Calculator Tabs (Resources Page)
   10. About Page Components (featured-in, about photo)
   11. Loan Programs Page (trust bar responsive)
   12. Awards Page
   13. Blog & Apply Page Utilities
   14. Responsive — 1024px
   15. Responsive — 900px
   16. Responsive — 768px
   17. Responsive — 600px
   18. Responsive — 480px
   19. Homepage Hero — Mobile Fixes (Elementor IDs)
   ─────────────────────────────────────────────────────────────
============================================================ */


/* ============================================================
   1. CSS VARIABLES
============================================================ */
:root {
  --navy:       #1B2B4B;
  --navy-deep:  #111E35;
  --gold:       #C9942A;
  --gold-light: #E8B84B;
  --gold-pale:  rgba(201,148,42,0.08);
  --cream:      #F8F6F1;
  --cream-dark: #EDE8DF;
  --white:      #FFFFFF;
  --charcoal:   #2D2D2D;
  --mid:        #6B7280;
  --light:      #E5E7EB;
}


/* ============================================================
   2. RESET & BASE
============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--cream); color: var(--charcoal); overflow-x: hidden; }


/* ============================================================
   3. TYPOGRAPHY UTILITIES
============================================================ */
.section-label {
  text-transform: uppercase; color: var(--gold);
  display: flex; align-items: center; gap: 12px;
  justify-content: center; margin-bottom: 14px;
}
.section-label::before, .section-label::after {
  content: ''; flex: 0 0 32px; height: 1.5px; background: var(--gold); opacity: 0.5;
}
.section-title {
  color: var(--navy); text-align: center; margin-bottom: 16px;
}
.section-title em { font-style: italic; color: var(--gold); }
.section-sub {
  text-align: center; color: var(--mid);
  max-width: 560px; margin: 0 auto 56px;
}
.gold-rule { width: 50px; height: 2px; background: var(--gold); margin: 0 auto 20px; }


/* ============================================================
   4. BUTTONS
============================================================ */
.btn-primary {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--gold); color: var(--white);
  padding: 15px 32px; border-radius: 8px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
  box-shadow: 0 4px 20px rgba(201,148,42,0.3);
}
.btn-primary:hover { background: var(--gold-light); transform: translateY(-2px); box-shadow: 0 8px 28px rgba(201,148,42,0.4); }

.btn-secondary {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: var(--navy);
  padding: 14px 28px; border-radius: 8px;
  border: 1.5px solid rgba(27,43,75,0.3); text-decoration: none;
  transition: border-color 0.2s, background 0.2s;
}
.btn-secondary:hover { border-color: var(--navy); background: rgba(27,43,75,0.04); }

.btn-gold-outline {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 34px; border-radius: 8px;
  border: 1.5px solid rgba(201,148,42,0.6);
  color: var(--gold); text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.btn-gold-outline:hover { background: var(--gold); color: var(--navy); }

.btn-form {
  width: 100%; padding: 15px; background: var(--gold); color: var(--white);
  border: none; border-radius: 8px; cursor: pointer;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 20px rgba(201,148,42,0.35);
}
.btn-form:hover { background: var(--gold-light); transform: translateY(-1px); }

.btn-submit {
  width: 100%; padding: 16px; background: var(--navy); color: var(--white);
  border: none; border-radius: 8px; cursor: pointer;
  transition: background 0.2s, transform 0.15s; margin-top: 4px;
}
.btn-submit:hover { background: var(--navy-deep); transform: translateY(-1px); }


/* ============================================================
   5. SECTION COMPONENTS
============================================================ */

/* ── Trust Bar ── */
.trust-bar { background: var(--navy); padding: 0; }
.trust-bar-inner {
  display: grid; grid-template-columns: repeat(4, 1fr);
  max-width: 1200px; margin: 0 auto;
}
.trust-bar-item {
  padding: 36px 24px;
  display: flex; align-items: center; gap: 18px;
  border-right: 1px solid rgba(255,255,255,0.07);
  position: relative; transition: background 0.3s;
}
.trust-bar-item:last-child { border-right: none; }
.trust-bar-item:hover { background: rgba(255,255,255,0.03); }
.trust-bar-icon {
  width: 48px; height: 48px; flex-shrink: 0;
  background: rgba(201,148,42,0.12); border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
}
.trust-bar-text .tbnum { color: var(--gold-light); margin-bottom: 4px; }
.trust-bar-text .tblabel { color: rgba(255,255,255,0.55); }

/* ── Program Cards ── */
.programs-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 24px; max-width: 1100px; margin: 0 auto;
}
.program-card {
  background: var(--white); border-radius: 16px;
  padding: 36px 32px; margin: 15px;
  position: relative; overflow: hidden;
  border: 1px solid rgba(27,43,75,0.07);
  transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s;
  cursor: default;
}
.program-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--gold), var(--gold-light));
  transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease;
}
.program-card:hover { transform: translateY(-6px); box-shadow: 0 16px 48px rgba(27,43,75,0.11); border-color: rgba(201,148,42,0.2); }
.program-card:hover::before { transform: scaleX(1); }
.program-icon {
  width: 52px; height: 52px; background: var(--gold-pale);
  border-radius: 14px; display: flex; align-items: center;
  justify-content: center; margin-bottom: 20px; transition: background 0.3s;
}
.program-card:hover .program-icon { background: rgba(201,148,42,0.15); }
.program-card h3 { color: var(--navy); margin-bottom: 10px; }
.program-card p  { color: var(--mid); margin-bottom: 20px; }
.program-link {
  text-transform: uppercase; color: var(--gold); text-decoration: none;
  display: inline-flex; align-items: center; gap: 6px; transition: gap 0.2s;
}
.program-link:hover { gap: 10px; }
.programs-cta { text-align: center; margin-top: 48px; }

/* ── Testimonial Cards ── */
.testimonials-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 24px; max-width: 1100px; margin: 0 auto;
}
.testimonial-card {
  background: var(--white); border-radius: 16px;
  padding: 36px 32px; margin: 15px; position: relative;
  border: 1px solid rgba(27,43,75,0.06);
  transition: transform 0.3s, box-shadow 0.3s;
}
.testimonial-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(27,43,75,0.09); }
.testimonial-card.featured { background: var(--navy); border-color: transparent; }
.stars { display: flex; gap: 3px; margin-bottom: 20px; }
.star { color: var(--gold); }
.testimonial-card.featured .star { color: #E8B84B; }
.testimonial-text { color: var(--charcoal); margin-bottom: 28px; font-style: italic; }
.testimonial-card.featured .testimonial-text { color: rgba(255,255,255,0.85); }
.testimonial-author {
  display: flex; align-items: center; gap: 12px;
  padding-top: 20px; border-top: 1px solid rgba(27,43,75,0.07);
}
.testimonial-card.featured .testimonial-author { border-top-color: rgba(255,255,255,0.1); }
.author-avatar {
  width: 40px; height: 40px; border-radius: 50%;
  background: var(--gold-pale); display: flex; align-items: center;
  justify-content: center; color: var(--gold); flex-shrink: 0;
}
.testimonial-card.featured .author-avatar { background: rgba(201,148,42,0.2); }
.author-name  { color: var(--navy); }
.author-detail { color: var(--mid); }
.testimonial-card.featured .author-name { color: var(--white); }
.testimonial-card.featured .author-detail { color: rgba(255,255,255,0.45); }
.testimonials-footer { text-align: center; margin-top: 48px; }
.yelp-link {
  display: inline-flex; align-items: center; gap: 8px;
  color: var(--mid); text-decoration: none; transition: color 0.2s;
}
.yelp-link:hover { color: var(--navy); }

/* ── Contact Info Block ── */
.contact-info { list-style: none; margin-bottom: 10px; }
.contact-info li {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 16px 0; border-bottom: 1px solid rgba(27,43,75,0.06);
}
.contact-info li:first-child { border-top: 1px solid rgba(27,43,75,0.06); }
.ci-icon {
  width: 36px; height: 36px; flex-shrink: 0;
  background: var(--gold-pale); border-radius: 8px;
  display: flex; align-items: center; justify-content: center; margin-top: 2px;
}
.ci-label { color: var(--mid); text-transform: uppercase; margin-bottom: 3px; }
.ci-value { color: var(--navy); }
.ci-value a { color: inherit; text-decoration: none; }
.ci-value a:hover { color: var(--gold); }
.license-line { color: var(--mid); }

/* ── Bullet Lists ── */
.lm-bullets { list-style: none; margin-bottom: 0; }
.lm-bullets li {
  color: rgba(255,255,255,0.65); padding: 6px 0;
  display: flex; align-items: center; gap: 10px;
}
.lm-bullets li::before {
  content: ''; width: 6px; height: 6px;
  border-radius: 50%; background: var(--gold); flex-shrink: 0;
}
.lm-bullets-dark { list-style: none; margin-bottom: 0; }
.lm-bullets-dark li {
  color: rgba(107,114,128,1); padding: 6px 0;
  display: flex; align-items: center; gap: 10px;
}
.lm-bullets-dark li::before {
  content: ''; width: 6px; height: 6px;
  border-radius: 50%; background: var(--gold); flex-shrink: 0;
}

/* ── Footer ── */
.footer-compliance {
  background: var(--navy-deep); padding: 24px 40px;
  display: flex; align-items: center;
  justify-content: space-between; gap: 20px; flex-wrap: wrap;
}
.footer-compliance span { color: rgba(255,255,255,0.3); }
.footer-compliance .footer-logo { color: rgba(255,255,255,0.6); }


/* ============================================================
   6. HOMEPAGE SECTIONS
============================================================ */

/* ── Loan Programs Section ── */
.loan-programs { padding: 100px 40px; background: var(--cream); }

/* ── How It Works ── */
.how-it-works { padding: 100px 40px; background: var(--navy); position: relative; overflow: hidden; }
.how-it-works::before {
  content: ''; position: absolute; top: -200px; right: -200px;
  width: 600px; height: 600px; border-radius: 50%;
  border: 1px solid rgba(201,148,42,0.08); pointer-events: none;
}
.how-it-works::after {
  content: ''; position: absolute; bottom: -150px; left: -150px;
  width: 500px; height: 500px; border-radius: 50%;
  border: 1px solid rgba(201,148,42,0.06); pointer-events: none;
}
.how-it-works .section-label { color: var(--gold); }
.how-it-works .section-title { color: var(--white); }
.how-it-works .section-sub { color: rgba(255,255,255,0.5); }
.steps-container {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 0; position: relative; z-index: 1;
}
.steps-container::before {
  content: ''; position: absolute; top: 52px;
  left: calc(16.66% + 24px); right: calc(16.66% + 24px); height: 1px;
  background: linear-gradient(90deg, rgba(201,148,42,0.4), rgba(201,148,42,0.2), rgba(201,148,42,0.4));
}
.step { padding: 0 40px; text-align: center; position: relative; }
.step-number-wrap {
  position: relative; display: inline-flex; align-items: center;
  justify-content: center; margin-bottom: 28px;
}
.step-number {
  width: 64px; height: 64px; border-radius: 50%;
  background: rgba(201,148,42,0.12); border: 1.5px solid rgba(201,148,42,0.4);
  display: flex; align-items: center; justify-content: center;
  color: var(--gold); position: relative; z-index: 1;
  transition: background 0.3s, border-color 0.3s;
}
.step:hover .step-number { background: rgba(201,148,42,0.22); border-color: var(--gold); }
.step-icon { position: absolute; top: -8px; right: -12px; }
.step h3 { color: var(--white); margin-bottom: 12px; }
.step p  { color: rgba(255,255,255,0.5); }
.steps-cta { text-align: center; margin-top: 64px; position: relative; z-index: 1; }

/* ── About Michelle ── */
.about-michelle { padding: 100px 40px; background: var(--white); overflow: hidden; }
.about-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: center;
}
.about-photo-col { position: relative; }
.about-photo-frame {
  position: relative; border-radius: 20px; overflow: hidden;
  background: linear-gradient(160deg, var(--cream) 0%, var(--cream-dark) 100%);
  aspect-ratio: 3/4; max-height: 580px;
}
.about-photo-frame img {
  width: 100%; height: 100%; object-fit: contain;
  object-position: bottom center;
  filter: drop-shadow(0 10px 30px rgba(27,43,75,0.1));
}
.about-photo-frame::before {
  content: ''; position: absolute; top: 20px; left: 20px;
  width: 60px; height: 60px;
  border-top: 3px solid var(--gold); border-left: 3px solid var(--gold);
  border-radius: 4px 0 0 0; opacity: 0.5; z-index: 2;
}
.about-photo-frame::after {
  content: ''; position: absolute; bottom: 20px; right: 20px;
  width: 60px; height: 60px;
  border-bottom: 3px solid var(--gold); border-right: 3px solid var(--gold);
  border-radius: 0 0 4px 0; opacity: 0.5; z-index: 2;
}
.years-badge {
  position: absolute; bottom: -70px; right: 40px;
  background: var(--navy); border-radius: 16px;
  padding: 20px 24px; text-align: center;
  box-shadow: 0 8px 32px rgba(27,43,75,0.25);
}
.years-badge .yb-num   { color: var(--gold); }
.years-badge .yb-label {
  text-transform: uppercase; color: rgba(255,255,255,0.6); margin-top: 4px;
}
.lrw-pill {
  position: absolute; top: 24px; right: -30px;
  background: var(--white); border-radius: 50px; padding: 10px 18px;
  display: flex; align-items: center; gap: 8px;
  box-shadow: 0 4px 20px rgba(27,43,75,0.12);
  border: 1px solid rgba(201,148,42,0.2);
}
.lrw-pill .lrw-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #10B981; flex-shrink: 0;
  box-shadow: 0 0 0 3px rgba(16,185,129,0.2);
}
.lrw-pill span { color: var(--navy); white-space: nowrap; }
.about-text-col .section-label::before { display: none; }
.about-text-col .section-label { justify-content: flex-start; }
.about-text-col .section-title { text-align: left; }
.about-lead { color: var(--charcoal); margin-bottom: 16px; }
.about-body { color: var(--mid); margin-bottom: 32px; }
.pull-quote {
  border-left: 3px solid var(--gold); padding: 16px 24px;
  background: var(--gold-pale); border-radius: 0 10px 10px 0; margin-bottom: 36px;
}
.pull-quote p { font-style: italic; color: var(--navy); }
.about-credentials { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.cred-tag {
  background: var(--cream); border: 1px solid rgba(27,43,75,0.1);
  border-radius: 6px; padding: 6px 14px; color: var(--navy);
}
.about-ctas { display: flex; gap: 14px; flex-wrap: wrap; }

/* ── Testimonials Section ── */
.testimonials { padding: 100px 40px; background: var(--cream); position: relative; overflow: hidden; }
.testimonials::before {
  content: '"'; position: absolute; top: 40px; left: 40px;
  color: var(--navy); opacity: 0.03; pointer-events: none;
}

/* ── Lead Magnet ── */
.lead-magnet { padding: 0 40px; background: var(--cream); }
.lead-magnet-inner {
  max-width: 1100px; margin: 0 auto; background: var(--navy);
  border-radius: 24px; padding: 72px 80px;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 60px; align-items: center; position: relative; overflow: hidden;
}
.lead-magnet-inner::before {
  content: ''; position: absolute; top: -80px; right: -80px;
  width: 320px; height: 320px; border-radius: 50%;
  border: 1px solid rgba(201,148,42,0.12);
}
.lead-magnet-inner::after {
  content: ''; position: absolute; bottom: -60px; left: 40%;
  width: 240px; height: 240px; border-radius: 50%;
  border: 1px solid rgba(201,148,42,0.07);
}
.lm-text { position: relative; z-index: 1; }
.lm-text .section-label { justify-content: flex-start; color: var(--gold); }
.lm-text .section-label::before { display: none; }
.lm-title    { color: var(--white); margin-bottom: 16px; }
.lm-title em { font-style: italic; color: var(--gold-light); }
.lm-desc     { color: rgba(255,255,255,0.55); margin-bottom: 24px; }
.lm-form { position: relative; z-index: 1; }
.lead-magnet .lm-form-card {
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px; padding: 36px 32px;
}
.lm-form-title { color: var(--white); margin-bottom: 8px; }
.lm-form-sub   { color: rgba(255,255,255,0.45); margin-bottom: 24px; }
.form-field { margin-bottom: 14px; }
.form-field input {
  width: 100%; padding: 13px 16px;
  background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px; color: var(--white); outline: none;
  transition: border-color 0.2s, background 0.2s;
}
.form-field input::placeholder { color: rgba(255,255,255,0.3); }
.form-field input:focus { border-color: rgba(201,148,42,0.5); background: rgba(255,255,255,0.1); }
.form-disclaimer { color: rgba(255,255,255,0.25); text-align: center; margin-top: 12px; }
/* Dark form fields — scoped to lead-magnet only */
.lead-magnet .lm-form-card .raven-field-group input,
.lead-magnet .lm-form-card .raven-field-group textarea,
.lead-magnet .lm-form-card .raven-field-group select {
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 8px !important; color: #FFFFFF !important; padding: 13px 16px !important;
}
.lead-magnet .lm-form-card .raven-field-group input::placeholder,
.lead-magnet .lm-form-card .raven-field-group textarea::placeholder {
  color: rgba(255,255,255,0.3) !important;
}
.lead-magnet .lm-form-card .raven-field-group input:focus,
.lead-magnet .lm-form-card .raven-field-group textarea:focus {
  border-color: rgba(201,148,42,0.5) !important;
  background: rgba(255,255,255,0.1) !important; outline: none !important;
}

/* ── Contact Section ── */
.contact-section { padding: 100px 40px; background: var(--white); }
.contact-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: start;
}
.contact-left .section-label { justify-content: flex-start; }
.contact-left .section-label::before { display: none; }
.contact-left .section-title { text-align: left; }
.contact-body { color: var(--mid); margin-bottom: 40px; }
.contact-form-title { color: var(--navy); margin-bottom: 6px; }
.contact-form-sub   { color: var(--mid); margin-bottom: 28px; }
.cf-field { margin-bottom: 16px; }
.cf-field label {
  display: block; text-transform: uppercase; color: var(--navy);
  opacity: 0.6; margin-bottom: 6px;
}
.cf-field input, .cf-field select, .cf-field textarea {
  width: 100%; padding: 13px 16px; background: var(--cream);
  border: 1.5px solid rgba(27,43,75,0.1); border-radius: 8px;
  color: var(--charcoal); outline: none;
  transition: border-color 0.2s, background 0.2s;
}
.cf-field input:focus, .cf-field select:focus, .cf-field textarea:focus {
  border-color: var(--gold); background: var(--white);
}
.cf-field textarea { min-height: 100px; resize: vertical; }
.cf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }


/* ============================================================
   7. RAVEN FORM — APPLY PAGE
   Scoped to .apply-main .lm-form-card
============================================================ */
.apply-main .lm-form-card {
  background: #FFFFFF !important;
  box-shadow: 0 8px 48px rgba(27,43,75,0.1) !important;
  border-radius: 16px !important; padding: 36px 32px !important;
}
.apply-main .lm-form-card .raven-field-label {
  display: block !important; text-transform: uppercase !important;
  color: var(--navy) !important; opacity: 0.65 !important; margin-bottom: 6px !important;
}
.apply-main .lm-form-card .raven-field {
  background: var(--cream) !important;
  border: 1.5px solid rgba(27,43,75,0.15) !important;
  border-radius: 8px !important; color: var(--charcoal) !important;
  padding: 12px 16px !important; width: 100% !important;
  transition: border-color 0.2s, background 0.2s !important;
  -webkit-appearance: none !important; appearance: none !important;
}
.apply-main .lm-form-card .raven-field:focus {
  border-color: var(--gold) !important; background: var(--white) !important;
  outline: none !important; box-shadow: 0 0 0 3px rgba(201,148,42,0.1) !important;
}
.apply-main .lm-form-card .raven-field::placeholder {
  color: rgba(45,45,45,0.35) !important;
}
.apply-main .lm-form-card textarea.raven-field {
  min-height: 110px !important; resize: vertical !important;
}
.apply-main .lm-form-card .raven-field-subgroup { position: relative !important; }
.apply-main .lm-form-card .raven-field-select-arrow {
  position: absolute !important; right: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important; color: var(--navy) !important;
  opacity: 0.5 !important; pointer-events: none !important; z-index: 1 !important;
}
.apply-main .lm-form-card .raven-field-group { margin-bottom: 14px !important; }
.apply-main .lm-form-card .raven-submit-button {
  width: 100% !important; background: var(--navy) !important; color: var(--white) !important;
  border: none !important; border-radius: 8px !important; padding: 18px 24px !important;
  cursor: pointer !important; transition: background 0.2s, transform 0.15s !important;
  margin-top: 8px !important; display: block !important;
}
.apply-main .lm-form-card .raven-submit-button:hover {
  background: var(--navy-deep) !important; transform: translateY(-1px) !important;
}
.apply-main .lm-form-card .raven-submit-button span { color: var(--white) !important; }


/* ============================================================
   8. RAVEN FORM — CONTACT PAGE
   Scoped to .contact-right
============================================================ */
.contact-right .raven-field {
  width: 100%; background: #F8F6F1;
  border: 1px solid rgba(27,43,75,0.15); border-radius: 6px;
  padding: 12px 16px; color: #1B2B4B;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  appearance: none; -webkit-appearance: none;
}
.contact-right .raven-field:focus {
  outline: none; border-color: #C9942A;
  box-shadow: 0 0 0 3px rgba(201,148,42,0.12);
}
.contact-right .raven-field::placeholder { color: rgba(27,43,75,0.35); }
.contact-right .raven-field-label {
  display: block; color: #1B2B4B; font-weight: 600;
  letter-spacing: 0.02em; margin-bottom: 6px;
}
.contact-right .raven-field-subgroup { position: relative; }
.contact-right .raven-field-subgroup select.raven-field { padding-right: 40px; cursor: pointer; }
.contact-right .raven-field-select-arrow {
  position: absolute; right: 14px; top: 50%;
  transform: translateY(-50%); color: #C9942A; pointer-events: none;
}
.contact-right textarea.raven-field { min-height: 140px; resize: vertical; }
.contact-right .raven-field-group { margin-bottom: 16px; }
.contact-right .raven-submit-button {
  width: 100%; background: #1B2B4B; color: #ffffff; border: none;
  border-radius: 6px; padding: 16px 32px; font-weight: 600;
  letter-spacing: 0.05em; text-transform: uppercase; cursor: pointer;
  transition: background 0.2s ease, transform 0.15s ease;
}
.contact-right .raven-submit-button:hover { background: #C9942A; transform: translateY(-1px); }
.contact-right .raven-message-success {
  background: #f0faf4; border: 1px solid #6dbb8a; color: #1a5c35;
  border-radius: 6px; padding: 14px 18px; margin-top: 12px;
}
.contact-right .raven-message-error {
  background: #fff4f4; border: 1px solid #e08080; color: #7a1f1f;
  border-radius: 6px; padding: 14px 18px; margin-top: 12px;
}


/* ============================================================
   9. CALCULATOR TABS — RESOURCES PAGE
============================================================ */
.mlu-calc-wrap { background:#fff; border:1px solid rgba(27,43,75,0.1); border-radius:12px; padding:32px; box-sizing:border-box; max-width:100%; }
.mlu-calc-heading { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:700; color:#1B2B4B; margin:0 0 4px; }
.mlu-calc-subhead { font-size:14px; color:#6B7280; margin:0 0 24px; font-weight:300; }
.mlu-calc-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; }
.mlu-sec-label { font-size:10px; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:#C9942A; margin-bottom:12px; }
.mlu-fg { margin-bottom:14px; }
.mlu-fg label { display:block; font-size:12px; font-weight:600; color:#1B2B4B; margin-bottom:5px; letter-spacing:.02em; }
.mlu-fg-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.mlu-iw { display:flex; align-items:center; background:#F8F6F1; border:1px solid rgba(27,43,75,0.15); border-radius:6px; overflow:hidden; transition:border-color .2s; }
.mlu-iw:focus-within { border-color:#C9942A; box-shadow:0 0 0 3px rgba(201,148,42,.1); }
.mlu-pre, .mlu-suf { padding:0 9px; font-size:12px; font-weight:600; color:#6B7280; background:rgba(27,43,75,.04); align-self:stretch; display:flex; align-items:center; white-space:nowrap; }
.mlu-pre { border-right:1px solid rgba(27,43,75,.1); }
.mlu-suf { border-left:1px solid rgba(27,43,75,.1); }
.mlu-iw input, .mlu-iw select { flex:1; border:none; background:transparent; padding:9px 11px; font-size:14px; color:#1B2B4B; outline:none; width:100%; box-sizing:border-box; -webkit-appearance:none; }
.mlu-iw select { cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23C9942A' stroke-width='1.5' d='M1 1l5 5 5-5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 10px center; padding-right:28px; }
.mlu-actions { display:flex; gap:8px; margin-top:8px; flex-wrap:wrap; }
.mlu-btn { background:#1B2B4B; color:#fff; border:none; border-radius:6px; padding:11px 20px; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; transition:background .2s; flex:1; }
.mlu-btn:hover { background:#C9942A; }
.mlu-rst { background:transparent; color:#6B7280; border:1px solid rgba(27,43,75,.2); border-radius:6px; padding:11px 14px; font-size:12px; cursor:pointer; transition:border-color .2s,color .2s; }
.mlu-rst:hover { border-color:#C9942A; color:#C9942A; }
.mlu-err { background:#fff4f4; border:1px solid #e08080; color:#7a1f1f; border-radius:6px; padding:9px 13px; font-size:12px; margin-top:10px; display:none; }
.mlu-results { background:#F8F6F1; border-radius:10px; padding:24px; transition:opacity .3s; }
.mlu-hi { background:#1B2B4B; border-radius:8px; padding:18px; text-align:center; margin-bottom:16px; }
.mlu-hi-label { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#C9942A; margin-bottom:4px; }
.mlu-hi-val { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:700; color:#fff; line-height:1; }
.mlu-rrow { display:flex; justify-content:space-between; align-items:center; padding:9px 0; font-size:13px; color:#1B2B4B; border-bottom:1px solid rgba(27,43,75,.07); }
.mlu-rrow span:last-child { font-weight:600; text-align:right; }
.mlu-rrow.bold { font-weight:700; }
.mlu-rrow.gold span { color:#C9942A; }
.mlu-rdiv { height:1px; background:rgba(27,43,75,.15); margin:4px 0; }
.mlu-disc { font-size:11px; color:#9CA3AF; line-height:1.6; margin-top:14px; padding-top:10px; border-top:1px solid rgba(27,43,75,.08); }
.mlu-cta { display:block; text-align:center; margin-top:14px; background:#C9942A; color:#fff; padding:11px; border-radius:6px; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; text-decoration:none; transition:background .2s; }
.mlu-cta:hover { background:#b07d20; }


/* ============================================================
   10. ABOUT PAGE COMPONENTS
============================================================ */

/* ── Featured In Widget ── */
.featured-in-wrap { margin: 48px 0 0; }
.fi-label {
  font-size: 11px; font-weight: 700; letter-spacing: 3px;
  text-transform: uppercase; color: #C9942A; margin-bottom: 16px;
}
.fi-card {
  display: flex; align-items: center; gap: 24px;
  background: #F8F6F1; border: 1px solid rgba(27,43,75,0.1);
  border-left: 4px solid #C9942A; border-radius: 0 8px 8px 0;
  padding: 22px 24px; flex-wrap: wrap;
}
.fi-logo-col { flex: 0 1 auto; min-width: 0; }
.fi-pub-name {
  font-family: 'Cormorant Garamond', serif; font-size: 1.15rem; font-weight: 700;
  color: #1B2B4B; line-height: 1.3; word-break: break-word;
}
.fi-pub-sub {
  font-size: 10px; font-weight: 700; letter-spacing: 0.08em;
  color: #6B7280; margin-top: 4px; text-transform: uppercase;
}
.fi-divider { width: 1px; height: 48px; background: rgba(27,43,75,0.15); flex-shrink: 0; }
.fi-quote-col { flex: 1; min-width: 180px; }
.fi-quote {
  font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; font-style: italic;
  color: #1B2B4B; line-height: 1.55; margin: 0 0 10px;
}
.fi-read-link {
  font-size: 11px; font-weight: 700; letter-spacing: 0.06em;
  text-transform: uppercase; color: #C9942A; text-decoration: none; transition: opacity 0.2s;
}
.fi-read-link:hover { opacity: 0.7; }


/* ============================================================
   11. LOAN PROGRAMS PAGE — Trust Bar (responsive)
============================================================ */
.lp-trust-bar {
  display: grid; grid-template-columns: repeat(4, 1fr);
  max-width: 1100px; margin: 0 auto;
}
.lp-trust-bar .trust-bar-item { border-right: 1px solid rgba(255,255,255,0.07); }
.lp-trust-bar .trust-bar-item:last-child { border-right: none; }


/* ============================================================
   12. AWARDS PAGE
============================================================ */
.award-tl-card {
  background: #FFFFFF; border-radius: 14px; padding: 32px 28px;
  border: 1px solid rgba(27,43,75,0.07);
  box-shadow: 0 4px 24px rgba(27,43,75,0.06);
  transition: transform 0.3s, box-shadow 0.3s;
}
.award-tl-card:hover { transform: translateY(-3px); box-shadow: 0 8px 32px rgba(27,43,75,0.1); }


/* ============================================================
   13. BLOG & APPLY PAGE UTILITIES
============================================================ */
.apply-hero, .blog-hero, .blog-post-hero { padding: 120px 40px 100px; }
.apply-trust-strip { padding: 32px 40px; }
.apply-main  { padding: 80px 40px; }
.apply-faq   { padding: 80px 40px; }
.blog-listing { padding: 80px 40px; }
.blog-category-bar { padding: 0 40px 32px; }
.blog-post-body { padding: 60px 40px; }


/* ============================================================
   14. RESPONSIVE — MAX 1024px
============================================================ */
@media (max-width: 1024px) {
  .awards-page-hero, .blog-hero, .apply-hero, .blog-post-hero {
    padding: 100px 40px 80px !important;
  }
}


/* ============================================================
   15. RESPONSIVE — MAX 900px
============================================================ */
@media (max-width: 900px) {
  /* Trust bars */
  .trust-bar-inner          { grid-template-columns: repeat(2, 1fr); }
  .trust-bar-item           { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
  .trust-bar-item:last-child { border-bottom: none; }

  /* Loan Programs trust bar */
  .lp-trust-bar { grid-template-columns: repeat(2, 1fr); }
  .lp-trust-bar .trust-bar-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
  .lp-trust-bar .trust-bar-item:nth-child(odd) { border-right: 1px solid rgba(255,255,255,0.07); }
  .lp-trust-bar .trust-bar-item:last-child,
  .lp-trust-bar .trust-bar-item:nth-last-child(2):nth-child(odd) { border-bottom: none; }

  /* Grids */
  .programs-grid    { grid-template-columns: repeat(2, 1fr); }
  .testimonials-grid { grid-template-columns: 1fr; }

  /* How it works */
  .steps-container         { grid-template-columns: 1fr; }
  .steps-container::before { display: none; }
  .step                    { padding: 0 20px 40px; }

  /* About */
  .about-inner       { grid-template-columns: 1fr; gap: 48px; }
  .about-photo-frame { max-height: 400px; }
  .lrw-pill          { right: 10px; }

  /* Lead magnet + contact */
  .lead-magnet-inner { grid-template-columns: 1fr; padding: 48px 32px; }
  .contact-inner     { grid-template-columns: 1fr; gap: 48px; }
  .cf-row            { grid-template-columns: 1fr; }

  /* Calculator tabs */
  .mlu-calc-wrap { padding: 20px 16px; }
  .mlu-calc-grid { grid-template-columns: 1fr; gap: 20px; }
}


/* ============================================================
   16. RESPONSIVE — MAX 768px
============================================================ */
@media (max-width: 768px) {
  /* Page heroes */
  .awards-page-hero, .blog-hero, .apply-hero, .blog-post-hero {
    padding: 80px 24px 64px !important;
  }

  /* Cards */
  .program-card    { margin: 8px 0; padding: 28px 24px; }
  .program-icon    { width: 44px; height: 44px; margin-bottom: 16px; }
  .testimonial-card { margin: 8px 0; padding: 28px 24px; }
  .testimonial-text { margin-bottom: 20px; }

  /* Awards page */
  .awards-stats [style*="display:flex"]  { flex-wrap: wrap !important; }
  .awards-stats [style*="flex:1"] {
    flex: 1 1 45% !important; min-width: 160px !important;
    border-right: none !important; border-bottom: 1px solid rgba(27,43,75,0.08) !important;
  }
  .awards-featured [style*="grid-template-columns:repeat(3"],
  .awards-featured [style*="grid-template-columns: repeat(3"] { grid-template-columns: 1fr !important; }

  /* Awards timeline */
  .awards-timeline [style*="position:absolute"][style*="left:50%"] { display: none !important; }
  .awards-timeline [style*="grid-template-columns:1fr 40px 1fr"],
  .awards-timeline [style*="grid-template-columns: 1fr 40px 1fr"] {
    display: flex !important; flex-direction: column !important;
    margin-bottom: 0 !important; padding-left: 28px !important; position: relative !important;
  }
  .awards-timeline [style*="grid-template-columns:1fr 40px 1fr"]::before,
  .awards-timeline [style*="grid-template-columns: 1fr 40px 1fr"]::before {
    content: '' !important; position: absolute !important;
    left: 7px !important; top: 0 !important; bottom: 0 !important;
    width: 2px !important;
    background: linear-gradient(to bottom, transparent, #C9942A 8%, #C9942A 92%, transparent) !important;
  }
  .awards-timeline [style*="grid-template-columns:1fr 40px 1fr"] > div:empty,
  .awards-timeline [style*="grid-template-columns: 1fr 40px 1fr"] > div:empty,
  .awards-timeline [style*="grid-template-columns:1fr 40px 1fr"] > div[style*="justify-content:center"],
  .awards-timeline [style*="grid-template-columns: 1fr 40px 1fr"] > div[style*="justify-content:center"] { display: none !important; }
  .award-tl-card {
    width: 100% !important; margin-bottom: 20px !important; padding: 22px 18px !important; position: relative !important;
  }
  .award-tl-card::before {
    content: '' !important; position: absolute !important;
    left: -24px !important; top: 28px !important;
    width: 14px !important; height: 14px !important;
    border-radius: 50% !important; background: #C9942A !important;
    border: 3px solid #fff !important; box-shadow: 0 0 0 2px #C9942A !important;
  }
  .awards-timeline [style*="border-radius:50px"] { padding: 8px 16px !important; }

  /* Blog listing */
  .blog-listing .elementor-inner-section > .elementor-container > .elementor-row { flex-direction: column !important; }
  .blog-listing [style*="position:sticky"] { position: static !important; }
  .blog-listing .elementor-col-30,
  .blog-listing [style*="position:sticky"] > div { display: flex !important; flex-wrap: wrap !important; gap: 16px !important; }
  .blog-listing [style*="position:sticky"] > div > div { flex: 1 1 280px !important; }
  .blog-category-bar [style*="display:flex"] {
    justify-content: flex-start !important; overflow-x: auto !important;
    flex-wrap: nowrap !important; padding-bottom: 8px !important;
    -webkit-overflow-scrolling: touch; scrollbar-width: none;
  }
  .blog-category-bar [style*="display:flex"]::-webkit-scrollbar { display: none; }

  /* Blog post body */
  .blog-post-body .elementor-inner-section > .elementor-container > .elementor-row { flex-direction: column !important; }
  .blog-post-body [style*="position:sticky"] { position: static !important; }
  .blog-post-body [style*="position:sticky"] > div { display: flex !important; flex-wrap: wrap !important; gap: 16px !important; }
  .blog-post-body [style*="position:sticky"] > div > div { flex: 1 1 260px !important; }

  /* Apply page */
  .apply-trust-strip [style*="display:flex"] { flex-wrap: wrap !important; justify-content: flex-start !important; gap: 16px !important; }
  .apply-trust-strip [style*="width:1px"] { display: none !important; }
  .apply-trust-strip [style*="display:flex"] > div[style*="align-items:center"] { flex: 1 1 44% !important; min-width: 160px !important; }
  .apply-main [style*="position:absolute"][style*="left:20px"] { display: none !important; }
  .apply-main .elementor-inner-section .elementor-col-58,
  .apply-main .elementor-inner-section .elementor-col-42,
  .apply-main .elementor-inner-section [data-element_type="column"] { width: 100% !important; }
  .apply-main .elementor-inner-section .elementor-row { flex-direction: column !important; }
  .apply-faq [style*="grid-template-columns:repeat(2"],
  .apply-faq [style*="grid-template-columns: repeat(2"] { grid-template-columns: 1fr !important; }

  /* About page — photo/bio stack */
  .about-photo-col, .about-text-col { width: 100% !important; max-width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
  .about-michelle .elementor-col-50,
  .about-michelle [class*="elementor-col-"] { width: 100% !important; max-width: 100% !important; }
  .about-photo-frame { max-width: 320px; margin: 0 auto 32px; }
  .about-text-col { padding-top: 0 !important; }

  /* About page — card grids (catch all inline style variants) */
  .about-programs div[style*="grid-template-columns"],
  .about-awards   div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  .about-programs .program-card,
  .about-awards   .program-card { min-width: 0 !important; width: 100% !important; box-sizing: border-box !important; }

  /* About page — featured in */
  .fi-divider  { display: none; }
  .fi-card     { gap: 14px; }
  .fi-pub-name { font-size: 1rem; }

  /* Reviews page — featured testimonials */
  .testimonials .elementor-inner-section .elementor-col-33,
  .testimonials .elementor-inner-section [data-element_type="column"] { width: 100% !important; }
  .testimonials .elementor-inner-section .elementor-row { flex-direction: column !important; }

  /* Reviews page — more reviews */
  .more-reviews .elementor-inner-section .elementor-col-33,
  .more-reviews .elementor-inner-section [data-element_type="column"] { width: 100% !important; }
  .more-reviews .elementor-inner-section .elementor-row { flex-direction: column !important; }
  .more-reviews .testimonial-card { margin: 6px 0 !important; }

  /* Reviews page — video testimonials */
  .video-testimonials [style*="grid-template-columns:repeat(3,1fr)"],
  .video-testimonials [style*="grid-template-columns: repeat(3, 1fr)"],
  .video-testimonials [style*="grid-template-columns:repeat(3, 1fr)"] { grid-template-columns: repeat(2, 1fr) !important; }

  /* Resources page — glossary + FAQ columns */
  .resources-glossary .elementor-inner-section .elementor-col-50,
  .resources-glossary .elementor-inner-section [data-element_type="column"],
  .resources-faq .elementor-inner-section .elementor-col-50,
  .resources-faq .elementor-inner-section [data-element_type="column"] { width: 100% !important; }
  .resources-glossary .elementor-inner-section .elementor-row,
  .resources-faq .elementor-inner-section .elementor-row { flex-direction: column !important; }

  /* Resources page — calculators */
  .resources-calculators [style*="grid-template-columns:repeat(3,1fr)"],
  .resources-calculators [style*="grid-template-columns: repeat(3, 1fr)"],
  .resources-calculators [style*="grid-template-columns:repeat(3, 1fr)"] { grid-template-columns: repeat(2, 1fr) !important; }

  /* Loan programs trust bar */
  .lp-trust-bar { grid-template-columns: 1fr; }
  .lp-trust-bar .trust-bar-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
  .lp-trust-bar .trust-bar-item:last-child { border-bottom: none; }
}


/* ============================================================
   17. RESPONSIVE — MAX 600px
============================================================ */
@media (max-width: 600px) {
  /* Base section padding */
  .trust-bar-inner { grid-template-columns: 1fr; }
  .programs-grid   { grid-template-columns: 1fr; }
  .loan-programs, .how-it-works, .about-michelle,
  .testimonials, .lead-magnet, .contact-section { padding: 72px 20px; }

  /* Contact form */
  .contact-right [class*="elementor-col-50"] { width: 100% !important; max-width: 100% !important; }

  /* About page — why-mlu grid */
  .why-mlu .programs-grid { grid-template-columns: 1fr !important; }
  .why-mlu .program-card  { margin: 6px 0 !important; }
  .why-mlu .program-card,
  .about-programs .program-card,
  .about-awards   .program-card { padding: 24px 20px !important; margin: 4px 0 !important; }

  /* About page — 2-col grids at tablet */
  .about-programs div[style*="grid-template-columns"],
  .about-awards   div[style*="grid-template-columns"] { grid-template-columns: repeat(2, 1fr) !important; }

  /* Reviews page */
  .rating-bar [style*="display:flex"][style*="gap:48px"] { gap: 24px !important; justify-content: space-around !important; }
  .video-testimonials [style*="grid-template-columns:repeat(3,1fr)"],
  .video-testimonials [style*="grid-template-columns: repeat(3, 1fr)"],
  .video-testimonials [style*="grid-template-columns:repeat(3, 1fr)"] { grid-template-columns: 1fr !important; }

  /* Resources page */
  .resources-guides [style*="grid-template-columns:repeat(2,1fr)"],
  .resources-guides [style*="grid-template-columns: repeat(2, 1fr)"],
  .resources-guides [style*="grid-template-columns:repeat(2, 1fr)"],
  .resources-documents [style*="grid-template-columns:repeat(2,1fr)"],
  .resources-documents [style*="grid-template-columns: repeat(2, 1fr)"],
  .resources-documents [style*="grid-template-columns:repeat(2, 1fr)"] { grid-template-columns: 1fr !important; }
  .resources-documents .program-card { padding: 22px 20px !important; }
  .resources-calculators [style*="grid-template-columns:repeat(3,1fr)"],
  .resources-calculators [style*="grid-template-columns: repeat(3, 1fr)"],
  .resources-calculators [style*="grid-template-columns:repeat(3, 1fr)"] { grid-template-columns: 1fr !important; }
  .apply-faq .program-card { padding: 22px 18px !important; }
}


/* ============================================================
   18. RESPONSIVE — MAX 480px
============================================================ */
@media (max-width: 480px) {
  /* Page heroes */
  .awards-page-hero, .blog-hero, .apply-hero, .blog-post-hero {
    padding: 64px 16px 48px !important;
  }

  /* Awards */
  .awards-stats [style*="flex:1"] { flex: 1 1 100% !important; }
  .awards-timeline [style*="border-radius:50px"] { padding: 8px 16px !important; }

  /* Blog post */
  .blog-post-body [style*="display:flex"][style*="gap:20px"] {
    flex-direction: column !important; align-items: center !important; text-align: center !important;
  }

  /* Apply page */
  .apply-trust-strip [style*="display:flex"] > div[style*="align-items:center"] {
    flex: 1 1 100% !important; flex-direction: column !important;
    align-items: center !important; text-align: center !important;
  }
  .apply-trust-strip [style*="display:flex"] > div[style*="align-items:center"] > div:first-child {
    width: 36px !important; height: 36px !important; min-width: 36px !important;
    flex-shrink: 0 !important; align-self: center !important;
  }
  .apply-trust-strip [style*="display:flex"] { justify-content: center !important; }

  /* Contact */
  .ci-icon { width: 30px; height: 30px; }
  .contact-section [style*="display:flex"][style*="gap:12px"] { flex-wrap: wrap !important; }

  /* About */
  .years-badge { bottom: -20px !important; right: 30px !important; padding: 14px 18px !important; }
  .lrw-pill    { right: 4px !important; top: 12px !important; padding: 7px 12px !important; }

  /* Cards */
  .program-card, .testimonial-card { padding: 24px 20px !important; margin: 6px 0 !important; }
  .lm-form-card { padding: 28px 20px !important; }

  /* Reviews */
  .rating-bar [style*="display:flex"][style*="gap:48px"] {
    flex-direction: column !important; align-items: center !important; gap: 28px !important;
  }
  .leave-review [style*="display:flex"][style*="gap:20px"] {
    flex-direction: column !important; align-items: center !important; gap: 14px !important;
  }
  .leave-review [style*="display:flex"][style*="gap:20px"] > a {
    width: 100% !important; justify-content: center !important;
  }

  /* Resources jump nav */
  .resources-jumpnav [style*="display:flex"][style*="gap:12px"] { gap: 8px !important; }
  .resources-jumpnav [style*="display:flex"][style*="gap:12px"] > a { padding: 8px 14px !important; }
}

/* ── Header nav — landscape mobile (768px–1024px) ── */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-144 .elementor-element.elementor-element-f6ca5f8 {
    padding: 12px 16px !important;
  }
}

/* ============================================================
   19. HOMEPAGE HERO — MOBILE FIXES (Elementor Element IDs)
   Note: These use specific Elementor data-ids. If the page
   is rebuilt these IDs may change and will need updating.
============================================================ */
@media (max-width: 767px) {

  /* Stats row: 3 across instead of stacking */
  .elementor-element-fbc7381 .elementor-column {
    width: 33.333% !important;
    max-width: 33.333% !important;
  }
  .elementor-element-fbc7381 .elementor-widget-icon-box .elementor-icon-box-wrapper {
    padding: 12px 8px !important;
  }
  .elementor-element-fbc7381 .elementor-icon-box-title       { font-size: 14px !important; }
  .elementor-element-fbc7381 .elementor-icon-box-description { font-size: 11px !important; }
  .elementor-element-fbc7381 .elementor-icon                 { margin-bottom: 6px !important; }
}

  /* Hero background blob: hide on mobile */
@media (max-width: 880px) {
  .elementor-element-987f879 { background-image: none !important; }
}