@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@600;700&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css');

/* InverseMBA — Modern Theme Override
   Linked just before </body> so it wins the CSS cascade over
   all pagelayer inline <style> blocks in the document body. */

/* ---- CSS custom properties ---- */
:root {
  --imba-accent:       #1e3a8a;
  --imba-accent-hover: #1e40af;
  --imba-heading:      #0f172a;
  --imba-body:         #475569;
  --imba-bg-alt:       #f8fafc;
  --imba-border:       #e2e8f0;
  --imba-dark:         #0f172a;
  --imba-footer-text:  #475569;
  --imba-body-size:    17px;
}

/* ---- Base body ---- */
body.pagelayer-body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: var(--imba-body-size) !important;
  line-height: 1.7 !important;
  letter-spacing: 0 !important;
  color: var(--imba-body) !important;
}

body.pagelayer-body p {
  font-family: 'Inter', sans-serif !important;
  font-size: var(--imba-body-size) !important;
  line-height: 1.7 !important;
  color: var(--imba-body) !important;
  letter-spacing: 0 !important;
}

/* ---- Headings: Space Grotesk ---- */
body.pagelayer-body h1,
body.pagelayer-body h2,
body.pagelayer-body h3,
body.pagelayer-body h4,
body.pagelayer-body h5,
body.pagelayer-body h6,
.pagelayer-heading-holder,
.pagelayer-heading-holder * {
  font-family: 'Space Grotesk', sans-serif !important;
  color: var(--imba-heading) !important;
  letter-spacing: 0 !important;
}

body.pagelayer-body h1,
.pagelayer-heading-holder h1 {
  font-size: 60px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
}

body.pagelayer-body h2,
.pagelayer-heading-holder h2 {
  font-size: 44px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
}

body.pagelayer-body h3,
.pagelayer-heading-holder h3 {
  font-size: 32px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

body.pagelayer-body h4,
.pagelayer-heading-holder h4 {
  font-size: 24px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

/* ---- Text content ---- */
.pagelayer-text-holder,
.pagelayer-text-holder p,
.pagelayer-text-holder span {
  font-family: 'Inter', sans-serif !important;
  color: var(--imba-body) !important;
  font-size: var(--imba-body-size) !important;
  line-height: 1.7 !important;
}

/* Strip legacy <font color="..."> tag overrides and auto-link colours */
.pagelayer-text-holder font,
.pagelayer-text-holder p,
.pagelayer-text-holder span,
.pagelayer-text-holder a,
.pagelayer-list-item a,
.pagelayer-list-item span {
  color: var(--imba-body) !important;
  text-decoration: none !important;
}

/* ---- Nav: drop uppercase, switch to Inter ---- */
.pagelayer-wp_menu-ul > li > a,
.pagelayer-wp-menu-container ul li.menu-item > a {
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ---- Article cards (Astra blog listing) ---- */
.ast-article-post {
  border-radius: 12px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 4px 12px rgba(0,0,0,0.05) !important;
  overflow: hidden !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.ast-article-post:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.12), 0 8px 24px rgba(0,0,0,0.08) !important;
}

.ast-article-post .post-thumb img {
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  width: 100% !important;
}

/* ---- Buttons ---- */
.pagelayer-btn {
  border-radius: 6px !important;
  transition: background-color 0.15s ease, box-shadow 0.15s ease !important;
}

/* ---- Hero sub-headline (needs high specificity to beat body.pagelayer-body p) ---- */
body.pagelayer-body p.imba-hero-sub {
  font-family: 'Inter', sans-serif !important;
  font-size: 20px !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.6) !important;
  margin: 12px 20px 20px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

/* ---- CTA button (reused across page) ---- */
.imba-cta-btn {
  display: inline-block !important;
  background: var(--imba-accent) !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  padding: 14px 28px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  margin: 0 20px 32px !important;
  transition: background 0.2s ease, transform 0.15s ease !important;
  letter-spacing: 0 !important;
}

.imba-cta-btn:hover {
  background: var(--imba-accent-hover) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}

/* ---- Stats bar ---- */
.imba-social-proof {
  background: #fff;
  border-bottom: 1px solid var(--imba-border);
  padding: 40px 5%;
  text-align: center;
}

.imba-stats {
  display: flex;
  justify-content: center;
  gap: 64px;
  flex-wrap: wrap;
}

.imba-stat {
  text-align: center;
}

.imba-stat-num {
  display: block;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 52px;
  font-weight: 700;
  color: var(--imba-accent);
  line-height: 1;
}

.imba-stat-label {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: #64748b;
  margin-top: 8px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}

/* ---- Inline CTA sections ---- */
.imba-cta-section {
  text-align: center;
  padding: 56px 20px;
  background: var(--imba-bg-alt);
  border-top: 1px solid var(--imba-border);
  border-bottom: 1px solid var(--imba-border);
}

.imba-cta-section p {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  color: var(--imba-heading) !important;
  margin-bottom: 24px !important;
  font-weight: 500 !important;
}

.imba-cta-section .imba-cta-btn {
  margin: 0 !important;
}

/* ---- Fix: address colour ---- */
.pagelayer-address,
.pagelayer-address * {
  color: var(--imba-body) !important;
}

/* ---- Mobile ---- */
@media (max-width: 768px) {
  body.pagelayer-body h1,
  .pagelayer-heading-holder h1 {
    font-size: 44px !important;
  }
  body.pagelayer-body h2,
  .pagelayer-heading-holder h2 {
    font-size: 32px !important;
  }
  body.pagelayer-body h3,
  .pagelayer-heading-holder h3 {
    font-size: 24px !important;
  }
  body.pagelayer-body h4,
  .pagelayer-heading-holder h4 {
    font-size: 20px !important;
  }
  .imba-stats {
    gap: 40px;
  }
}

/* ---- Reveal animation-hidden elements (no JS in static build) ---- */
.pagelayer-wow {
  visibility: visible !important;
}

/* ---- Testimonials: static 2-col grid (no owl carousel JS) ---- */
.pagelayer-owl-carousel {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
}

.pagelayer-owl-carousel .pagelayer-testimonial {
  display: block !important;
}

.pagelayer-owl-nav,
.pagelayer-owl-dots {
  display: none !important;
}

@media (max-width: 768px) {
  .pagelayer-owl-carousel {
    grid-template-columns: 1fr !important;
  }
}

/* ---- Hide duplicate "InverseMBA" text next to header logo ---- */
.pagelayer-header .pagelayer-wp-title-heading {
  display: none !important;
}

/* ══════════════════════════════════════════════════════════════
   HOMEPAGE WHITESPACE (page-id-24)
   ══════════════════════════════════════════════════════════════ */

/* Hide empty white spacer row that creates gap before CTA */
body.page-id-24 .p-XRmAdLsZZdncU5Lp {
  display: none !important;
}

body.page-id-24 #primary {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.page-id-24 .entry-header.ast-no-thumbnail {
  display: none !important;
}

body.page-id-24 .ast-article-single,
body.page-id-24 .entry-content.clear {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ══════════════════════════════════════════════════════════════
   ABOUT PAGE (page-id-22)
   ══════════════════════════════════════════════════════════════ */

body.page-id-22 #primary {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.page-id-22 .entry-header.ast-no-thumbnail {
  display: none !important;
}

body.page-id-22 .ast-article-single,
body.page-id-22 .entry-content.clear {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ══════════════════════════════════════════════════════════════
   CONTACT PAGE (page-id-23)
   ══════════════════════════════════════════════════════════════ */

body.page-id-23 #primary {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.page-id-23 .entry-header.ast-no-thumbnail {
  display: none !important;
}

body.page-id-23 .ast-article-single,
body.page-id-23 .entry-content.clear {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.imba-contact-wrap {
  padding: 48px 0 56px;
  background: #fff;
}

.imba-contact-header {
  text-align: center;
  padding-bottom: 40px;
}

.imba-contact-eyebrow {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--imba-accent);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}

.imba-contact-header h2 {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 44px !important;
  font-weight: 700 !important;
  color: var(--imba-heading) !important;
  margin: 0 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
}

.imba-inner-wide {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 6%;
}

.imba-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 64px;
  align-items: start;
}

.imba-contact-intro {
  font-family: 'Inter', sans-serif !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: var(--imba-body) !important;
  margin: 0 0 28px !important;
}

.imba-contact-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 36px;
}

.imba-contact-chip {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: var(--imba-heading);
  background: var(--imba-bg-alt);
  border: 1px solid var(--imba-border);
  border-radius: 100px;
  padding: 6px 16px;
}

.imba-contact-divider {
  border: none;
  border-top: 1px solid var(--imba-border);
  margin: 0 0 28px;
}

.imba-contact-trust {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.imba-contact-trust-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: var(--imba-body);
}

.imba-contact-trust-item i {
  color: var(--imba-accent);
  font-size: 16px;
  width: 20px;
  text-align: center;
  flex-shrink: 0;
}

.imba-contact-trust-item a {
  color: var(--imba-body) !important;
  text-decoration: none !important;
  border-bottom: 1px solid var(--imba-border);
}

.imba-contact-trust-item a:hover {
  color: var(--imba-heading) !important;
  border-bottom-color: var(--imba-heading);
}

.imba-contact-form-wrap {
  background: var(--imba-bg-alt);
  border: 1px solid var(--imba-border);
  border-radius: 12px;
  padding: 28px;
}

.imba-form-row {
  margin-bottom: 14px;
}

.imba-form-label {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--imba-heading);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
}

.imba-form-input,
.imba-form-textarea {
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  color: var(--imba-heading);
  background: #fff;
  border: 1px solid var(--imba-border);
  border-radius: 8px;
  padding: 12px 16px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  outline: none;
  -webkit-appearance: none;
}

.imba-form-input:focus,
.imba-form-textarea:focus {
  border-color: var(--imba-accent);
  box-shadow: 0 0 0 3px rgba(30, 58, 138, 0.1);
}

.imba-form-textarea {
  min-height: 100px;
  resize: vertical;
}

.imba-form-submit {
  display: block;
  width: 100%;
  background: var(--imba-accent);
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 600;
  padding: 14px 28px;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  text-align: center;
  transition: background 0.2s ease, transform 0.15s ease;
  margin-top: 8px;
  letter-spacing: 0;
}

.imba-form-submit:hover {
  background: var(--imba-accent-hover);
  transform: translateY(-1px);
}

.imba-form-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.imba-form-success {
  display: none;
  background: #f0fdf4;
  border-left: 4px solid #16a34a;
  border-radius: 8px;
  padding: 20px 24px;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  color: #15803d;
  margin-top: 20px;
  line-height: 1.5;
}

.imba-form-error {
  display: none;
  background: #fef2f2;
  border-left: 4px solid var(--imba-accent);
  border-radius: 8px;
  padding: 20px 24px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #991b1b;
  margin-top: 20px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .imba-contact-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .imba-contact-header h2 {
    font-size: 32px !important;
  }
  .imba-contact-form-wrap {
    padding: 28px 20px;
  }
}
