/* ============================================================
   FindPeace — Responsive Overrides for Mobile & Small Screens
   ============================================================ */

/* ---------- Tablet (max-width: 991.98px) ---------- */
@media (max-width: 991.98px) {
  .fp-about-header-flex { flex-direction: column; align-items: flex-start; gap: 16px; }
  .fp-about-title-main { font-size: 40px; }
  .fp-story-top-grid { grid-template-columns: 1fr; gap: 32px; }
  .fp-story-images-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .fp-vm-card-figma { flex-direction: column; align-items: flex-start; }
  .fp-vm-card-img { width: 100%; height: 200px; }
  .fp-journey-left-imgs { flex-direction: column; align-items: flex-start; }
  .fp-journey-img-lg, .fp-journey-img-sm { width: 100%; height: 240px; }
  .fp-journey-timeline-grid { grid-template-columns: 1fr; }
  .fp-journey-line { display: none; }
  .fp-social-grid-figma { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .fp-experts-header-flex { flex-direction: column; align-items: flex-start; gap: 20px; }
  .fp-expert-card-figma { min-width: 280px; flex: 0 0 280px; }
  .fp-about-cta-card-white { padding: 32px; }
  .fp-about-cta-img { height: 280px; }
  .fp-footer-nav-grid-3 { grid-template-columns: 1fr 1fr; gap: 32px; }
}

/* ---------- Mobile (max-width: 767.98px) ---------- */
@media (max-width: 767.98px) {
  /* Global Heading Sizes */
  .fp-h1 { font-size: 32px; }
  .fp-h2 { font-size: 24px; }
  .fp-hero-headline { font-size: 28px; }

  /* About Hero Mobile */
  .fp-about-hero-section { padding: 32px 0 40px; }
  .fp-about-title-main { font-size: 32px; margin-bottom: 12px; }
  .fp-about-subtitle-right { font-size: 14px; margin-top: 8px; }
  
  /* Stats 2x2 Grid on Mobile (with vertical divider between 2 columns) */
  .fp-about-stats-bar { padding-top: 32px; padding-bottom: 16px; }
  .fp-about-stat-col {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    margin-bottom: 16px;
  }
  .fp-about-stat-col:nth-child(odd)::after {
    display: block !important;
    right: 0;
    top: 5%;
    height: 90%;
    width: 1px;
    background: #F0F0F0;
  }
  .fp-about-stat-col:nth-child(even)::after {
    display: none !important;
  }
  .fp-about-stat-num { font-size: 28px; }
  .fp-about-stat-desc { font-size: 12px; max-width: 140px; }

  /* Our Story Mobile Layout & Horizontal Image Scroll */
  .fp-story-section-figma { padding: 40px 0; }
  .fp-story-heading-main { font-size: 26px; }
  .fp-story-sub-title { font-size: 18px; margin-bottom: 8px; }
  .fp-story-images-grid {
    display: flex !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-behavior: smooth;
    padding-bottom: 8px;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .fp-story-images-grid::-webkit-scrollbar { display: none; }
  .fp-story-img-item {
    width: 140px !important;
    height: 140px !important;
    flex: 0 0 140px !important;
    border-radius: 12px !important;
  }

  /* Vision & Mission Mobile */
  .fp-vm-section-figma { padding: 40px 0; }
  .fp-vm-card-figma { flex-direction: column; align-items: flex-start; padding: 24px; gap: 16px; }
  .fp-vm-card-img { width: 100%; height: 180px; }

  /* FindPeace Journey Mobile (Exact Figma Layout: Header -> Timeline -> Double Images at bottom) */
  .fp-journey-section-figma { padding: 40px 0; }
  .fp-journey-header-block { margin-bottom: 24px; }
  .fp-journey-timeline-block { padding-left: 0 !important; margin-bottom: 32px; }
  .fp-journey-mobile-imgs .fp-journey-left-imgs {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    gap: 12px !important;
    margin-top: 16px !important;
  }
  .fp-journey-img-lg { width: 60% !important; height: 180px !important; border-radius: 12px !important; }
  .fp-journey-img-sm { width: 35% !important; height: 120px !important; border-radius: 12px !important; }
  
  .fp-journey-timeline-grid {
    display: grid !important;
    grid-template-columns: 56px 1fr !important;
    gap: 12px !important;
    position: relative !important;
  }
  .fp-journey-line {
    display: block !important;
    position: absolute !important;
    left: 26px !important;
    top: 15px !important;
    bottom: 25px !important;
    width: 2px !important;
    background: #111111 !important;
  }
  .fp-year-badge-dark, .fp-year-badge-white {
    font-size: 12px !important;
    padding: 4px 10px !important;
  }
  .fp-journey-milestone-item {
    padding: 16px 0 !important;
    min-height: 80px !important;
  }
  .fp-journey-milestone-text {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }
  .fp-journey-milestone-thumb {
    width: 54px !important;
    height: 54px !important;
    border-radius: 8px !important;
    margin-right: 10px !important;
  }

  /* Social Media Mobile (Exact 2x3 Grid matching Figma Mobile Screenshot) */
  .fp-social-section-figma { padding: 40px 0; clear: both; }
  .fp-social-grid-figma { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
  .fp-social-card-mint {
    min-height: 180px !important;
    height: auto !important;
    padding: 16px !important;
    border-radius: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
  }
  .fp-social-img-item {
    height: 180px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
  }
  .fp-social-card-handle { font-size: 15px !important; margin-bottom: 8px !important; }
  .fp-social-card-label { font-size: 12px !important; margin-bottom: 4px !important; }
  .fp-social-btn-black, .fp-social-btn-white {
    font-size: 11px !important;
    padding: 6px 12px !important;
    border-radius: 16px !important;
    margin-top: 8px !important;
  }

  /* Specialists Mobile (Exact Figma Mobile Screenshot: Left Header + Vertical Stacked Cards 1 by 1) */
  .fp-experts-section-figma { padding: 40px 0; clear: both; }
  .fp-experts-header-flex { flex-direction: column !important; align-items: flex-start !important; gap: 12px; margin-bottom: 32px; }
  .fp-experts-header-flex .btn-fp-arrow-circle-prev,
  .fp-experts-header-flex .btn-fp-arrow-circle-next { display: none !important; }
  .fp-experts-header-flex .fp-body-1 { display: block !important; font-size: 13px !important; line-height: 1.5 !important; max-width: 100% !important; }
  
  .fp-experts-slider-track {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    overflow: visible !important;
    margin-bottom: 40px !important;
  }
  .fp-expert-card-figma {
    min-width: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    flex: 1 1 100% !important;
    margin-bottom: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }
  .fp-expert-card-img { height: 260px !important; }

  /* CTA & Footer Mobile (Clean 50/50 gradient background & zero collision) */
  .fp-about-cta-section-wrapper {
    background: linear-gradient(to bottom, #FAFAFA 50%, #DAECE7 50%) !important;
    padding: 40px 0 !important;
    margin-top: 20px !important;
    margin-bottom: 0 !important;
    clear: both !important;
  }
  .fp-about-cta-card-white {
    padding: 24px !important;
    margin: 0 auto !important;
    border-radius: 16px !important;
  }
  .fp-about-cta-img { height: 260px !important; border-radius: 12px !important; }
  .fp-newsletter-card-white { padding: 24px !important; }
  .fp-footer-nav-grid-3 { grid-template-columns: 1fr !important; gap: 24px !important; }

  /* Contact Hero Mobile (Exact Figma Mobile Screenshot: Side-by-Side double images) */
  .fp-contact-hero-figma { padding: 40px 0 48px !important; }
  .fp-contact-hero-grid { display: flex !important; flex-direction: column !important; gap: 32px !important; }
  .fp-contact-hero-title { font-size: 32px !important; line-height: 1.15 !important; margin-bottom: 12px !important; }
  .fp-contact-hero-sub { font-size: 14px !important; line-height: 1.5 !important; margin-bottom: 0 !important; }
  .fp-contact-images-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .fp-contact-img-small {
    width: 32% !important;
    height: 140px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
  }
  .fp-contact-img-large {
    width: 64% !important;
    height: 220px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
  }
}

@media (max-width: 575.98px) {
  .fp-h1 { font-size: 26px; }
  .fp-h2 { font-size: 22px; }
  .fp-hero-headline { font-size: 26px; }
  .btn-fp-dark, .btn-fp-green, .btn-fp-outline-dark, .btn-fp-white, .btn-fp-book-mint {
    width: 100%;
    justify-content: center;
  }
}
